From 1a9cc5982fd7888ce419ec305221e27870554628 Mon Sep 17 00:00:00 2001 From: Francois-Xavier Gentilhomme Date: Tue, 12 May 2015 11:58:41 +0200 Subject: [PATCH] v1.0.7 Undo/redo and error mgmt improvements --- bower.json | 2 +- dist/myscript.js | 11 ++++++----- dist/myscript.js.map | 2 +- dist/myscript.min.js | 12 +++++------- dist/myscript.min.js.map | 2 +- package.json | 2 +- src/common/inkManager.js | 3 +++ src/networking/networkInterface.js | 6 ++---- test/unit/common/inkManager.js | 12 ++++++++++++ 9 files changed, 32 insertions(+), 20 deletions(-) diff --git a/bower.json b/bower.json index 8db57ee3..827eacb1 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "myscript", - "version": "1.0.6", + "version": "1.0.7", "main": "./dist/myscript.js", "description": "MyScriptJS is a free and open-source JavaScript library providing the easiest way to use MyScript Cloud handwriting recognition in your web app", "keywords": [ diff --git a/dist/myscript.js b/dist/myscript.js index 13a34d10..7b84aae8 100644 --- a/dist/myscript.js +++ b/dist/myscript.js @@ -1,6 +1,6 @@ /* myscript - MyScriptJS is a free and open-source JavaScript library providing the easiest way to use MyScript Cloud handwriting recognition in your web app - Version: 1.0.6 + Version: 1.0.7 License: Apache-2.0 */ /** @@ -460,6 +460,9 @@ MyScript = {}; */ InkManager.prototype.startInkCapture = function (x, y, t) { if (!this.writing) { + if (this.isRedoEmpty()) { + this.clearUndoRedoStack(); + } this.currentStroke = new scope.Stroke(); this.currentStroke.addX(x); this.currentStroke.addY(y); @@ -10879,8 +10882,6 @@ MyScript = {}; if (request.readyState === 4) { if (request.status >= 200 && request.status < 300) { deferred.resolve(NetworkInterface.parse(request)); - } else { - deferred.reject(NetworkInterface.parse(request)); } } } @@ -10889,12 +10890,12 @@ MyScript = {}; if (request.status >= 200 && request.status < 300) { deferred.resolve(NetworkInterface.parse(request)); } else { - deferred.reject('Status code was ' + request.status); + deferred.reject(new Error(request.responseText)); } } function onError() { - deferred.reject('Can\'t XHR ' + JSON.stringify(url)); + deferred.reject(new Error('Can\'t XHR ' + url)); } function onProgress(event) { diff --git a/dist/myscript.js.map b/dist/myscript.js.map index 0bc5af71..b8fbb741 100644 --- a/dist/myscript.js.map +++ b/dist/myscript.js.map @@ -1 +1 @@ -{"version":3,"sources":["../src/MyScript.js","../src/common/generic/point.js","../src/common/generic/quadraticPoint.js","../src/common/generic/rectangle.js","../src/common/inkManager.js","../src/common/mathUtils.js","../src/common/abstractWSMessage.js","../src/input/generic/components/abstractComponent.js","../src/input/generic/components/stroke.js","../src/input/generic/components/characterInputComponent.js","../src/input/generic/components/characterInputComponentAlternate.js","../src/input/generic/abstractParameter.js","../src/input/generic/abstractRecognitionInput.js","../src/input/generic/abstractRecognitionData.js","../src/input/generic/recognitionLanguagesData.js","../src/input/generic/abstractStartRequestWSMessage.js","../src/input/generic/abstractContinueRequestWSMessage.js","../src/input/generic/challengeRequestWSMessage.js","../src/input/generic/initRequestWSMessage.js","../src/input/generic/resetRequestWSMessage.js","../src/input/text/components/abstractTextInputComponent.js","../src/input/text/components/charInputComponent.js","../src/input/text/components/stringInputComponent.js","../src/input/text/textInputUnit.js","../src/input/text/textParameter.js","../src/input/text/textProperties.js","../src/input/text/textRecognitionInput.js","../src/input/text/textRecognitionData.js","../src/input/text/textStartRequestWSMessage.js","../src/input/text/textContinueRequestWSMessage.js","../src/input/shape/shapeParameter.js","../src/input/shape/shapeRecognitionInput.js","../src/input/shape/shapeRecognitionData.js","../src/input/math/mathParameter.js","../src/input/math/mathRecognitionInput.js","../src/input/math/mathRecognitionData.js","../src/input/math/mathStartRequestWSMessage.js","../src/input/math/mathContinueRequestWSMessage.js","../src/input/music/components/abstractMusicInputComponent.js","../src/input/music/components/musicAccidentalInputComponent.js","../src/input/music/components/musicArpeggiateInputComponent.js","../src/input/music/components/musicBarInput.js","../src/input/music/components/musicBarInputComponent.js","../src/input/music/components/musicBeamInput.js","../src/input/music/components/musicBeamInputComponent.js","../src/input/music/components/musicClefInput.js","../src/input/music/components/musicClefInputComponent.js","../src/input/music/components/musicDecorationInput.js","../src/input/music/components/musicDecorationInputComponent.js","../src/input/music/components/musicDotsInputComponent.js","../src/input/music/components/musicHeadInputComponent.js","../src/input/music/components/musicLedgerLineInputComponent.js","../src/input/music/components/musicRestInputComponent.js","../src/input/music/components/musicStemInputComponent.js","../src/input/music/components/musicTieOrSlurInputComponent.js","../src/input/music/components/musicTimeSignatureInputComponent.js","../src/input/music/musicStaff.js","../src/input/music/musicParameter.js","../src/input/music/musicRecognitionInput.js","../src/input/music/musicRecognitionData.js","../src/input/analyzer/analyzerParameter.js","../src/input/analyzer/analyzerRecognitionInput.js","../src/input/analyzer/analyzerRecognitionData.js","../src/output/generic/abstractResult.js","../src/output/generic/abstractRecoResponseWSMessage.js","../src/output/generic/challengeResponseWSMessage.js","../src/output/generic/errorResponseWSMessage.js","../src/output/generic/initResponseWSMessage.js","../src/output/text/textInkRange.js","../src/output/text/textCandidate.js","../src/output/text/textCharCandidate.js","../src/output/text/textWordCandidate.js","../src/output/text/textResultCandidate.js","../src/output/text/textDocument.js","../src/output/text/textResult.js","../src/output/text/textSegment.js","../src/output/text/textCharSegment.js","../src/output/text/textWordSegment.js","../src/output/text/textResultSegment.js","../src/output/text/textTagItem.js","../src/output/text/textResponseWSMessage.js","../src/output/shape/abstractShapePrimitive.js","../src/output/shape/abstractDecoratedShape.js","../src/output/shape/shapeCandidate.js","../src/output/shape/shapeDocument.js","../src/output/shape/shapeEllipse.js","../src/output/shape/shapeErased.js","../src/output/shape/shapeInkRange.js","../src/output/shape/shapeLine.js","../src/output/shape/shapeNotRecognized.js","../src/output/shape/shapeRecognized.js","../src/output/shape/shapeResult.js","../src/output/shape/shapeScratchOut.js","../src/output/shape/shapeSegment.js","../src/output/math/mathNode.js","../src/output/math/mathNonTerminalNode.js","../src/output/math/mathResultElement.js","../src/output/math/mathRuleNode.js","../src/output/math/mathDocument.js","../src/output/math/mathInkRange.js","../src/output/math/mathLaTexResultElement.js","../src/output/math/mathMathMLResultElement.js","../src/output/math/mathResult.js","../src/output/math/mathScratchOut.js","../src/output/math/mathSymbolTreeResultElement.js","../src/output/math/mathTerminalNode.js","../src/output/math/mathTerminalNodeCandidate.js","../src/output/math/mathFenceRuleNode.js","../src/output/math/mathFractionRuleNode.js","../src/output/math/mathHorizontalPairRuleNode.js","../src/output/math/mathIdentityRuleNode.js","../src/output/math/mathLeftFenceRuleNode.js","../src/output/math/mathOverscriptRuleNode.js","../src/output/math/mathPreSuperscriptRuleNode.js","../src/output/math/mathSqrtRuleNode.js","../src/output/math/mathSubscriptRuleNode.js","../src/output/math/mathSubSuperscriptRuleNode.js","../src/output/math/mathSuperscriptRuleNode.js","../src/output/math/mathUnderOverscriptRuleNode.js","../src/output/math/mathUnderscriptRuleNode.js","../src/output/math/mathVerticalPairRuleNode.js","../src/output/math/mathExponentiableNonTerminalNode.js","../src/output/math/mathExpressionNonTerminalNode.js","../src/output/math/mathSqrtNonTerminalNode.js","../src/output/math/mathVectorNonTerminalNode.js","../src/output/math/mathSystemNonTerminalNode.js","../src/output/math/mathTermNonTerminalNode.js","../src/output/math/mathResponseWSMessage.js","../src/output/music/musicElement.js","../src/output/music/musicResultElement.js","../src/output/music/musicAccidental.js","../src/output/music/musicAnnotation.js","../src/output/music/musicArpeggiate.js","../src/output/music/musicBar.js","../src/output/music/musicBeam.js","../src/output/music/musicChord.js","../src/output/music/musicClef.js","../src/output/music/musicDecoration.js","../src/output/music/musicDocument.js","../src/output/music/musicDots.js","../src/output/music/musicHead.js","../src/output/music/musicInputRange.js","../src/output/music/musicKeySignature.js","../src/output/music/musicKeySignatureData.js","../src/output/music/musicLedgerLine.js","../src/output/music/musicNote.js","../src/output/music/musicPart.js","../src/output/music/musicPitchData.js","../src/output/music/musicRest.js","../src/output/music/musicResult.js","../src/output/music/musicScore.js","../src/output/music/musicScoreTreeResultElement.js","../src/output/music/musicScratchOut.js","../src/output/music/musicSlur.js","../src/output/music/musicStem.js","../src/output/music/musicTie.js","../src/output/music/musicTimeModificationData.js","../src/output/music/musicTimeSignature.js","../src/output/music/musicTupletBracket.js","../src/output/music/musicTuplet.js","../src/output/music/musicXMLResultElement.js","../src/output/analyzer/analyzerElement.js","../src/output/analyzer/analyzerCell.js","../src/output/analyzer/analyzerCellData.js","../src/output/analyzer/analyzerDocument.js","../src/output/analyzer/analyzerElementReference.js","../src/output/analyzer/analyzerGroup.js","../src/output/analyzer/analyzerInkRange.js","../src/output/analyzer/analyzerLine.js","../src/output/analyzer/analyzerLineData.js","../src/output/analyzer/analyzerRecognizedStroke.js","../src/output/analyzer/analyzerResult.js","../src/output/analyzer/analyzerStrokeType.js","../src/output/analyzer/analyzerTable.js","../src/output/analyzer/analyzerTableData.js","../src/output/analyzer/analyzerTextLine.js","../src/output/analyzer/analyzerTextLineData.js","../src/output/analyzer/analyzerUnderline.js","../src/output/analyzer/analyzerUnderlineData.js","../src/networking/networkInterface.js","../src/recognition/abstractRecognizer.js","../src/recognition/abstractWSRecognizer.js","../src/recognition/textRecognizer.js","../src/recognition/textWSRecognizer.js","../src/recognition/shapeRecognizer.js","../src/recognition/mathRecognizer.js","../src/recognition/mathWSRecognizer.js","../src/recognition/musicRecognizer.js","../src/recognition/analyzerRecognizer.js","../src/rendering/renderingParameters.js","../src/rendering/abstractRenderer.js","../src/rendering/textRenderer.js","../src/rendering/shapeRenderer.js","../src/rendering/mathRenderer.js","../src/rendering/musicRenderer.js","../src/rendering/analyzerRenderer.js"],"names":[],"mappings":"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C,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG;AAChlC,gBAAgB,KAAK,CAAC;AACtB,YAAY,IAAI,CAAC,CAAC,CAAC,EAAE;AACrB,gBAAgB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG;AACv/C,gBAAgB,KAAK,CAAC;AACtB,YAAY,IAAI,CAAC,CAAC,CAAC,EAAE;AACrB,gBAAgB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG;AACxyC,gBAAgB,KAAK,CAAC;AACtB,YAAY,OAAO,CAAC;AACpB,gBAAgB,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG;AAC7D,QAAQ,CAAC;AACT;AACA,QAAQ,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG;AACnC,QAAQ,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACvC,YAAY,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;AACxE,YAAY,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE;AAC/D,YAAY,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,cAAc,GAAG,QAAQ,GAAG,CAAC,IAAI,CAAC,cAAc,GAAG,SAAS,IAAI;AACzK,QAAQ,EAAE;AACV,QAAQ,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AAC3B,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU;AACtB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,OAAO;AACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc;AAC7B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,6BAA6B,CAAC,CAAC,UAAU;AACxD,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;AAC3F,QAAQ,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,GAAG;AAC3C,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI;AAChB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,OAAO;AACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ;AACvB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,uBAAuB,CAAC,CAAC,IAAI;AAC5C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;AAC/E,QAAQ,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,GAAG;AAC3C,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI;AAChB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,OAAO;AACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ;AACvB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,uBAAuB,CAAC,CAAC,IAAI;AAC5C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;AAC/E,QAAQ,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,GAAG;AAC3C,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU;AACtB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,OAAO;AACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc;AAC7B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,6BAA6B,CAAC,CAAC,UAAU;AACxD,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;AAC3F,QAAQ,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,GAAG;AAC3C,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI;AAChB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,OAAO;AACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ;AACvB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,uBAAuB,CAAC,CAAC,IAAI;AAC5C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;AAC/E,QAAQ,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,GAAG;AAC3C,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI;AAChB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,OAAO;AACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ;AACvB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,uBAAuB,CAAC,CAAC,IAAI;AAC5C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;AAC/E,QAAQ,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,GAAG;AAC3C,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS;AACrB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,OAAO;AACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa;AAC5B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,4BAA4B,CAAC,CAAC,SAAS;AACtD,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;AACzF,QAAQ,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,GAAG;AAC3C,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,aAAa;AACzB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,OAAO;AACf,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB;AAChC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,gCAAgC,CAAC,CAAC,aAAa;AAC9D,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;AACjG,QAAQ,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,GAAG;AAC3C,IAAI,EAAE;AACN;AACA,IAAI,EAAE,CAAC,MAAM;AACb,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC;AACxC,GAAG,QAAQ,E;ACrVX,CAAC,GAAG,CAAC,MAAM,EAAE;AACb;AACA,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACnB,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM;AACzG,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB;AAC9B,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB;AAChC,KAAK,CAAC,CAAC,CAAC,WAAW;AACnB,KAAK,EAAE;AACP,IAAI,QAAQ,CAAC,gBAAgB,EAAE,CAAC,CAAC;AACjC,QAAQ,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE;AAC1C,IAAI,CAAC;AACL;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,WAAW,CAAC,QAAQ;AAC3B,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,gBAAgB,GAAG;AAC9D;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,WAAW,CAAC,QAAQ;AAC3B,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,gBAAgB,CAAC;AAC9D;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM;AACpD,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,qBAAqB;AACpC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,CAAC,UAAU;AAC9C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,gBAAgB,CAAC,CAAC,iBAAiB;AAClD,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AACtH,QAAQ,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,iBAAiB,CAAC,SAAS,GAAG,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AACxF,QAAQ,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,iBAAiB,CAAC,SAAS,GAAG,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AACxF,QAAQ,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,iBAAiB,CAAC,YAAY,GAAG,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AAC9F,EAAE,QAAQ,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,iBAAiB,CAAC,SAAS,GAAG,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,WAAW;AAChH,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK;AACjB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU;AACzB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,CAAC,UAAU;AAC9C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,GAAG,CAAC,MAAM;AACtC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAChG,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/B,YAAY,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,oBAAoB,GAAG;AAChF,YAAY,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAC7B,gBAAgB,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAC,oBAAoB,GAAG;AACtE,YAAY,CAAC;AACb,YAAY,EAAE,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;AACpC,gBAAgB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC;AACrD,oBAAoB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AAChF,gBAAgB,CAAC;AACjB,YAAY,CAAC;AACb,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC;AACjD,gBAAgB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AAC5E,YAAY,CAAC;AACb,QAAQ,CAAC;AACT,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI;AACzB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa;AAC5B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,CAAC,UAAU;AAC9C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,gBAAgB,GAAG,CAAC,SAAS;AAC5C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AACtG;AACA,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;AAClC,YAAY,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE;AACxC,YAAY,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,GAAG;AAC1C,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACvB,gBAAgB,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,oBAAoB,GAAG;AACpF,gBAAgB,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AACjC,oBAAoB,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAC,oBAAoB,GAAG;AAC1E,gBAAgB,CAAC;AACjB,gBAAgB,EAAE,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;AACxC,oBAAoB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,GAAG,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AACnF,gBAAgB,CAAC;AACjB;AACA,gBAAgB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,eAAe,GAAG,cAAc,GAAG,oBAAoB,GAAG,QAAQ,GAAG;AACzG,gBAAgB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,oBAAoB,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,cAAc,GAAG,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AAC1J;AACA,gBAAgB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,GAAG;AAC7D,gBAAgB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;AAC3C,oBAAoB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AACjL,gBAAgB,CAAC;AACjB,YAAY,CAAC;AACb,QAAQ,CAAC;AACT,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ;AAC5B,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ;AACvB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW;AACrC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI;AAC3B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,iBAAiB;AACxC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,UAAU;AACjC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ;AAC/B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AACtI;AACA,QAAQ,OAAO,CAAC,IAAI,GAAG;AACvB,QAAQ,GAAG,CAAC,CAAC;AACb,YAAY,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAC7B,gBAAgB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,GAAG;AAC1D,gBAAgB,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,GAAG;AAC5D,gBAAgB,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,GAAG;AAC5D,gBAAgB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,GAAG;AAChE,gBAAgB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,GAAG;AACtG,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC;AACpB,gBAAgB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,QAAQ,GAAG;AACpE,gBAAgB,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,QAAQ,GAAG;AACtE,gBAAgB,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,QAAQ,GAAG;AACtE,gBAAgB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,QAAQ,GAAG;AAC1E,gBAAgB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,aAAa,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG;AACrH,YAAY,CAAC;AACb,YAAY,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;AACrF;AACA,YAAY,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,QAAQ,IAAI;AACzF;AACA,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;AACnB,YAAY,OAAO,CAAC,OAAO,GAAG;AAC9B,QAAQ,CAAC;AACT,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS;AACrB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa;AAC5B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW;AACrC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,iBAAiB,CAAC,CAAC,SAAS;AAC3C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI;AAC3B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,UAAU;AACjC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AACnI,QAAQ,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,eAAe,GAAG;AACpD,QAAQ,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,GAAG,iBAAiB,GAAG;AACrE,QAAQ,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,GAAG,gBAAgB,GAAG;AACnE;AACA,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AACzB,YAAY,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,GAAG;AAClG,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;AAChB,YAAY,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,aAAa,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,GAAG;AACjH,QAAQ,CAAC;AACT;AACA,QAAQ,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG;AACjF,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC;AAC/C;AACA,QAAQ,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG;AAC7F,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC;AACxC,QAAQ,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE;AAC9C,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE;AAC9C,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;AACzC,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AACxC,YAAY,EAAE;AACd,QAAQ,GAAG,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AACjC,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM;AAClB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU;AACzB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,CAAC,UAAU;AAC9C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,GAAG,CAAC,MAAM;AACtC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;AACtH,QAAQ,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,GAAG;AAC3C,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;AAClB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ;AACvB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI;AACjC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAChF,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;AAC7B,YAAY,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AACvG,QAAQ,CAAC;AACT,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;AAClB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ;AACvB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI;AACjC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAChF,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;AAC7B,YAAY,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,GAAG,cAAc,GAAG,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AACrF,QAAQ,CAAC;AACT,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM;AACtB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU;AACzB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,CAAC,UAAU;AAC9C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,GAAG,CAAC,MAAM;AACrC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAChG;AACA,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/B,YAAY,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE;AACpC,YAAY,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,oBAAoB,GAAG;AAC3D;AACA,YAAY,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AAC5B,gBAAgB,EAAE,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;AACjE,oBAAoB,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AAC7E,gBAAgB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC;AAC3E,oBAAoB,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,YAAY,GAAG,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AACpH,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC;AACxB,oBAAoB,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,GAAG;AACvD,gBAAgB,CAAC;AACjB,YAAY,CAAC;AACb,QAAQ,CAAC;AACT,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK;AACrD,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,mBAAmB;AAClC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,eAAe;AAC/C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AACtG;AACA,QAAQ,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,aAAa,GAAG;AACzD;AACA,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;AACnC,YAAY,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AACxE,QAAQ,CAAC;AACT,QAAQ,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,oBAAoB,GAAG;AAC5E,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AACzB,YAAY,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAC,oBAAoB,GAAG;AAClE,QAAQ,CAAC;AACT,QAAQ,EAAE,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAChC,YAAY,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG;AACnC;AACA,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;AACvC,gBAAgB,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI;AAC1C,gBAAgB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,IAAI;AAChF,YAAY,CAAC;AACb,YAAY,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK;AAChD,YAAY,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,aAAa,EAAE;AAC9E,YAAY,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AAClE,QAAQ,CAAC;AACT,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK;AACzD,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,sBAAsB;AACrC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,CAAC,UAAU;AAC9C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,gBAAgB,GAAG,CAAC,SAAS;AAC5C,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,kBAAkB,CAAC,CAAC,kBAAkB;AACrD,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AACnI,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;AAClC,YAAY,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG;AAChF,YAAY,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AACpE,QAAQ,CAAC;AACT;AACA,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS;AAC3B,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,kBAAkB;AACjC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,sBAAsB,CAAC,CAAC,SAAS;AAChD,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAC/F,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;AACtD,YAAY,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AAClE,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;AAC1D,YAAY,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AAC/D,QAAQ,CAAC;AACT,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI;AACtB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa;AAC5B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACnC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAC1F;AACA,QAAQ,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,aAAa,GAAG,CAAC,SAAS,CAAC,YAAY,GAAG,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AACxG,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;AAChG,YAAY,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,aAAa,GAAG,CAAC,SAAS,CAAC,oBAAoB,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AACvH,QAAQ,CAAC;AACT,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;AAC5F,YAAY,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,YAAY,GAAG,CAAC,SAAS,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AACpH,QAAQ,CAAC;AACT,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO;AACrC,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc;AAC7B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW;AACjC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS;AAChC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS;AAChC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW;AAClC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,UAAU;AACjC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,UAAU;AACjC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,GAAG;AACzB,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AACxJ;AACA,QAAQ,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY;AACjE;AACA,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;AACvC,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;AACvC,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACpB,QAAQ,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACpB,QAAQ,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;AACxB,QAAQ,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;AACxB,QAAQ,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;AACxB,QAAQ,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;AACxB;AACA,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE;AAC7D;AACA,QAAQ,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG;AAClC;AACA,QAAQ,OAAO,CAAC,IAAI,GAAG;AACvB,QAAQ,GAAG,CAAC,CAAC;AACb,YAAY,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAC7B,gBAAgB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,GAAG;AAC1D,gBAAgB,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,GAAG;AAC5D,gBAAgB,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,GAAG;AAC5D,gBAAgB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,GAAG;AAChE,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC;AACpB,gBAAgB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,QAAQ,GAAG;AACpE,gBAAgB,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,QAAQ,GAAG;AACtE,gBAAgB,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,QAAQ,GAAG;AACtE,gBAAgB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,QAAQ,GAAG;AAC1E,YAAY,CAAC;AACb;AACA,YAAY,OAAO,CAAC,SAAS,GAAG;AAChC;AACA,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAC1C;AACA,gBAAgB,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM;AAC9F,gBAAgB,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE;AACjG;AACA,gBAAgB,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE;AAC/C,gBAAgB,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE;AAC/C;AACA,gBAAgB,EAAE,CAAC,OAAO,CAAC,KAAK;AAChC,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AACtE,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AACtE,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9B,oBAAoB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;AACzC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC;AACxB,oBAAoB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;AACzC,gBAAgB,CAAC;AACjB;AACA,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACzC,oBAAoB,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;AACxD,gBAAgB,CAAC;AACjB,YAAY,CAAC;AACb;AACA,YAAY,OAAO,CAAC,MAAM,GAAG;AAC7B;AACA,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;AACnB,YAAY,OAAO,CAAC,OAAO,GAAG;AAC9B,QAAQ,CAAC;AACT;AACA,QAAQ,MAAM,CAAC,gBAAgB,CAAC;AAChC,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO;AACzB,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB;AAC/B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,YAAY;AACzC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO;AAC9B,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChD,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAChG;AACA,QAAQ,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;AACzC,YAAY,YAAY,CAAC,SAAS,GAAG;AACrC,YAAY,YAAY,CAAC,YAAY,GAAG;AACxC,YAAY,YAAY,CAAC,YAAY,GAAG;AACxC,YAAY,YAAY,CAAC,cAAc,GAAG;AAC1C,YAAY,YAAY,CAAC,aAAa,GAAG;AACzC,YAAY,YAAY,CAAC,aAAa,GAAG;AACzC,YAAY,OAAO,CAAC,CAAC,UAAU,EAAE;AACjC;AACA,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,kBAAkB,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;AACtG,YAAY,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,oBAAoB,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AAC1G,QAAQ,CAAC;AACT,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,gBAAgB,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;AAClG,YAAY,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE;AACxG,QAAQ,CAAC;AACT,IAAI,EAAE;AACN;AACA,IAAI,GAAG;AACP,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS;AACxC,KAAK,CAAC;AACN,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,uBAAuB;AACtC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,sBAAsB,CAAC,CAAC,SAAS;AAChD,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACrC,KAAK,EAAE;AACP,IAAI,gBAAgB,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AAC/E,QAAQ,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7B,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;AACtD,YAAY,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,GAAG,CAAC,SAAS,CAAC,YAAY,GAAG,CAAC,SAAS,CAAC,YAAY,GAAG,CAAC,SAAS,CAAC,cAAc,GAAG,CAAC,SAAS,CAAC,aAAa,GAAG,CAAC,SAAS,CAAC,aAAa,IAAI;AACvN,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;AAC1D,YAAY,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,aAAa,GAAG,CAAC,SAAS,CAAC,YAAY,IAAI;AACzG,QAAQ,CAAC;AACT,QAAQ,MAAM,CAAC,SAAS,CAAC;AACzB,IAAI,EAAE;AACN;AACA,IAAI,EAAE,CAAC,MAAM;AACb,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC;AAC9C,GAAG,QAAQ","file":"myscript.js","sourcesContent":["/**\n * MyScript javascript library\n *\n * @module MyScript\n * @requires Q\n * @requires CryptoJS\n */\n/*global MyScript:true */\nMyScript = {};","'use strict';\n\n(function (scope) {\n /**\n * Point\n *\n * @class Point\n * @param {Object} [obj]\n * @constructor\n */\n function Point(obj) {\n if (obj) {\n this.x = obj.x;\n this.y = obj.y;\n }\n }\n\n /**\n * Get x\n *\n * @method getX\n * @returns {Number}\n */\n Point.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Set x\n *\n * @method setX\n * @param {Number} x\n */\n Point.prototype.setX = function (x) {\n this.x = x;\n };\n\n /**\n * Get y\n *\n * @method getY\n * @returns {Number}\n */\n Point.prototype.getY = function () {\n return this.y;\n };\n\n /**\n * Set y\n *\n * @method setY\n * @param {Number} y\n */\n Point.prototype.setY = function (y) {\n this.y = y;\n };\n\n // Export\n scope.Point = Point;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Complex Point object used for quadratic calculation\n *\n * @class QuadraticPoint\n * @param {Object} [obj]\n * @constructor\n */\n function QuadraticPoint(obj) {\n scope.Point.call(this, obj);\n this.pressure = 0.5;\n this.distance = 0.0;\n this.length = 0.0;\n this.ux = 0.0;\n this.uy = 0.0;\n this.x1 = 0.0;\n this.x2 = 0.0;\n this.y1 = 0.0;\n this.y2 = 0.0;\n }\n\n /**\n * Inheritance property\n */\n QuadraticPoint.prototype = new scope.Point();\n\n /**\n * Constructor property\n */\n QuadraticPoint.prototype.constructor = QuadraticPoint;\n\n /**\n * Get pressure\n *\n * @method getPressure\n * @returns {Number}\n */\n QuadraticPoint.prototype.getPressure = function () {\n return this.pressure;\n };\n\n /**\n * Set pressure\n *\n * @method setPressure\n * @param {Number} pressure\n */\n QuadraticPoint.prototype.setPressure = function (pressure) {\n this.pressure = pressure;\n };\n\n /**\n * Get distance\n *\n * @method getDistance\n * @returns {Number}\n */\n QuadraticPoint.prototype.getDistance = function () {\n return this.distance;\n };\n\n /**\n * Set distance\n *\n * @method setDistance\n * @param {Number} distance\n */\n QuadraticPoint.prototype.setDistance = function (distance) {\n this.distance = distance;\n };\n\n /**\n * Get length\n *\n * @method getLength\n * @returns {Number}\n */\n QuadraticPoint.prototype.getLength = function () {\n return this.length;\n };\n\n /**\n * Set length\n *\n * @method setLength\n * @param {Number} length\n */\n QuadraticPoint.prototype.setLength = function (length) {\n this.length = length;\n };\n\n /**\n * Get ux\n *\n * @method getUx\n * @returns {Number}\n */\n QuadraticPoint.prototype.getUx = function () {\n return this.ux;\n };\n\n /**\n * Set ux\n *\n * @method setUx\n * @param {Number} ux\n */\n QuadraticPoint.prototype.setUx = function (ux) {\n this.ux = ux;\n };\n\n /**\n * Get uy\n *\n * @method getUy\n * @returns {Number}\n */\n QuadraticPoint.prototype.getUy = function () {\n return this.uy;\n };\n\n /**\n * Set uy\n *\n * @method setUy\n * @param {Number} uy\n */\n QuadraticPoint.prototype.setUy = function (uy) {\n this.uy = uy;\n };\n\n /**\n * Get x1\n *\n * @method getX1\n * @returns {Number}\n */\n QuadraticPoint.prototype.getX1 = function () {\n return this.x1;\n };\n\n /**\n * Set x1\n *\n * @method setX1\n * @param {Number} x1\n */\n QuadraticPoint.prototype.setX1 = function (x1) {\n this.x1 = x1;\n };\n\n /**\n * Get x2\n *\n * @method getX2\n * @returns {Number}\n */\n QuadraticPoint.prototype.getX2 = function () {\n return this.x2;\n };\n\n /**\n * Set x2\n *\n * @method setX2\n * @param {Number} x2\n */\n QuadraticPoint.prototype.setX2 = function (x2) {\n this.x2 = x2;\n };\n\n /**\n * Get y1\n *\n * @method getY1\n * @returns {Number}\n */\n QuadraticPoint.prototype.getY1 = function () {\n return this.y1;\n };\n\n /**\n * Set y2\n *\n * @method setY1\n * @param {Number} y1\n */\n QuadraticPoint.prototype.setY1 = function (y1) {\n this.y1 = y1;\n };\n\n /**\n * Get y2\n *\n * @method getY2\n * @returns {Number}\n */\n QuadraticPoint.prototype.getY2 = function () {\n return this.y2;\n };\n\n /**\n * Set y2\n *\n * @method setY2\n * @param {Number} y2\n */\n QuadraticPoint.prototype.setY2 = function (y2) {\n this.y2 = y2;\n };\n\n // Export\n scope.QuadraticPoint = QuadraticPoint;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Rectangle\n *\n * @class Rectangle\n * @param {Object} [obj]\n * @constructor\n */\n function Rectangle(obj) {\n if (obj) {\n this.x = obj.x;\n this.y = obj.y;\n this.width = obj.width;\n this.height = obj.height;\n }\n }\n\n /**\n * Get top-left x\n *\n * @method getX\n * @returns {Number}\n */\n Rectangle.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Set top-left x\n *\n * @method setX\n * @param {Number} x\n */\n Rectangle.prototype.setX = function (x) {\n this.x = x;\n };\n\n /**\n * Get top-left y\n *\n * @method getY\n * @returns {Number}\n */\n Rectangle.prototype.getY = function () {\n return this.y;\n };\n\n /**\n * Set top-left y\n *\n * @method setY\n * @param {Number} y\n */\n Rectangle.prototype.setY = function (y) {\n this.y = y;\n };\n\n /**\n * Get top-left point\n *\n * @method getTopLeftPoint\n * @returns {Point}\n */\n Rectangle.prototype.getTopLeftPoint = function () {\n var point = new scope.Point();\n point.setX(this.x);\n point.setY(this.y);\n return point;\n };\n\n /**\n * Set top-left point\n *\n * @method setTopLeftPoint\n * @param {Point} topLeftPoint\n */\n Rectangle.prototype.setTopLeftPoint = function (topLeftPoint) {\n this.x = topLeftPoint.getX();\n this.y = topLeftPoint.getY();\n };\n\n /**\n * Get width\n *\n * @method getWidth\n * @returns {Number}\n */\n Rectangle.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Set width\n *\n * @method setWidth\n * @param {Number} width\n */\n Rectangle.prototype.setWidth = function (width) {\n this.width = width;\n };\n\n /**\n * Get height\n *\n * @method getHeight\n * @returns {Number}\n */\n Rectangle.prototype.getHeight = function () {\n return this.height;\n };\n\n /**\n * Set height\n *\n * @method setHeight\n * @returns {Number} height\n */\n Rectangle.prototype.setHeight = function (height) {\n this.height = height;\n };\n\n // Export\n scope.Rectangle = Rectangle;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * The InkManager class that can use to store writing strokes and manage the undo/redo/clear system\n *\n * @class InkManager\n * @constructor\n */\n function InkManager() {\n this.writing = false;\n this.strokes = [];\n this.currentStroke = null;\n this.undoRedoStack = [];\n }\n\n /**\n * Is Wrinting a stoke\n *\n * @method isWriting\n * @returns {Boolean}\n */\n InkManager.prototype.isWriting = function () {\n return this.writing;\n };\n\n /**\n * Get the last current Stroke write\n *\n * @method getCurrentStroke\n * @returns {Stroke}\n */\n InkManager.prototype.getCurrentStroke = function () {\n return this.currentStroke;\n };\n\n /**\n * Start ink capture\n *\n * @method startInkCapture\n * @param {Number} x abscissa coordinate\n * @param {Number} y ordinate coordinate\n * @param {Number} [t] event timestamp\n */\n InkManager.prototype.startInkCapture = function (x, y, t) {\n if (!this.writing) {\n this.currentStroke = new scope.Stroke();\n this.currentStroke.addX(x);\n this.currentStroke.addY(y);\n this.currentStroke.addT(t);\n this.writing = true;\n } else {\n throw new Error('Stroke capture already running');\n }\n };\n\n /**\n * Continue ink capture\n *\n * @method continueInkCapture\n * @param {Number} x abscissa coordinate\n * @param {Number} y ordinate coordinate\n * @param {Number} [t] event timestamp\n */\n InkManager.prototype.continueInkCapture = function (x, y, t) {\n if (this.writing) {\n this.currentStroke.addX(x);\n this.currentStroke.addY(y);\n this.currentStroke.addT(t);\n } else {\n throw new Error('Missing startInkCapture');\n }\n };\n\n /**\n * End ink capture\n *\n * @method endInkCapture\n */\n InkManager.prototype.endInkCapture = function () {\n if (this.writing) {\n this.strokes.push(this.currentStroke);\n this.writing = false;\n } else {\n throw new Error('Missing startInkCapture');\n }\n };\n\n /**\n * Clear the strokes list\n *\n * @method clear\n */\n InkManager.prototype.clear = function () {\n this.writing = false;\n this.strokes = [];\n this.currentStroke = null;\n this.undoRedoStack = [];\n };\n\n /**\n * Is The Strokes list is empty\n *\n * @method isEmpty\n * @returns {Boolean}\n */\n InkManager.prototype.isEmpty = function () {\n return this.strokes.length === 0;\n };\n\n /**\n * Is the Undo/Redo Stack empty\n *\n * @method isRedoEmpty\n * @returns {Boolean}\n */\n InkManager.prototype.isRedoEmpty = function () {\n return this.undoRedoStack.length === 0;\n };\n\n /**\n * Make an undo\n *\n * @method undo\n */\n InkManager.prototype.undo = function () {\n if (!this.isEmpty()) {\n this.undoRedoStack.push(this.strokes[this.strokes.length - 1]);\n this.strokes.pop();\n }\n };\n\n /**\n * Make a redo\n *\n * @method redo\n */\n InkManager.prototype.redo = function () {\n if (!this.isRedoEmpty()) {\n this.strokes.push(this.undoRedoStack[this.undoRedoStack.length - 1]);\n this.undoRedoStack.pop();\n }\n };\n\n /**\n * Get the strokes list\n *\n * @method getStokes\n * @returns {Stroke[]}\n */\n InkManager.prototype.getStrokes = function () {\n return this.strokes;\n };\n\n /**\n * Get the Undo/Redo Stack\n *\n * @method getUndoRedoStack\n * @returns {Stroke[]}\n */\n InkManager.prototype.getUndoRedoStack = function () {\n return this.undoRedoStack;\n };\n\n /**\n * Clear the Undo/Redo Stack\n *\n * @method clearUndoRedoStack\n */\n InkManager.prototype.clearUndoRedoStack = function () {\n this.undoRedoStack = [];\n };\n\n /**\n * Copy the strokes values from index on an other list of strokes\n *\n * @method copy\n * @param {Stroke[]} strokes List of strokes\n * @param {Number} index Position to start the copy\n */\n InkManager.prototype.copy = function (strokes, index) {\n for (index; index < this.strokes.length; index++) {\n strokes.push(this.strokes[index]);\n }\n };\n\n // Export\n scope.InkManager = InkManager;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * The mathUtil class is use to calculate lines\n *\n * @class MathUtil\n * @constructor\n */\n function MathUtils() {\n }\n\n /**\n * This method is use to calculate the size of the rectangle that contains an ellipse arc.\n *\n * @method getEllipseArcRect\n * @param {Point} center\n * @param {Number} maxRadius\n * @param {Number} minRadius\n * @param {Number} orientation\n * @param {Number} startAngle\n * @param {Number} sweepAngle\n * @returns {Rectangle}\n */\n MathUtils.getEllipseArcRect = function (center, maxRadius, minRadius, orientation, startAngle, sweepAngle) {\n\n var angleStep = 0.02, // angle delta between interpolated points on the arc, in radian\n angle, // angle\n alpha, // angle\n z1,\n z2,\n z3,\n z4,\n cosAlpha,\n sinAlpha,\n n,\n xList,\n yList,\n i,\n x,\n y,\n xMin,\n xMax,\n yMin,\n yMax,\n sortFloat = function (a, b) {\n return a - b;\n };\n\n z1 = z2 = Math.cos(orientation);\n z3 = z4 = Math.sin(orientation);\n z1 *= maxRadius;\n z2 *= minRadius;\n z3 *= maxRadius;\n z4 *= minRadius;\n\n n = Math.abs(sweepAngle) / angleStep;\n\n xList = [];\n yList = [];\n\n for (i = 0; i <= n; i++) {\n\n angle = startAngle + (i / n) * sweepAngle;\n alpha = Math.atan2(Math.sin(angle) / minRadius, Math.cos(angle) / maxRadius);\n\n cosAlpha = Math.cos(alpha);\n sinAlpha = Math.sin(alpha);\n\n // current point\n x = center.x + z1 * cosAlpha - z4 * sinAlpha;\n y = center.y + z2 * sinAlpha + z3 * cosAlpha;\n\n xList.push(x);\n yList.push(y);\n }\n\n xList.sort(sortFloat);\n yList.sort(sortFloat);\n\n xMin = xList[0];\n xMax = xList[xList.length - 1];\n yMin = yList[0];\n yMax = yList[yList.length - 1];\n\n return new scope.Rectangle({x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin});\n };\n\n /**\n * This method is use to calculate the size of the rectangle that contains a line.\n *\n * @method getLineRect\n * @param {Point} firstPoint\n * @param {Point} lastPoint\n * @returns {Rectangle}\n */\n MathUtils.getLineRect = function (firstPoint, lastPoint) {\n\n var xFirst = firstPoint.x,\n xLast = lastPoint.x,\n xMin = Math.min(xFirst, xLast),\n xMax = Math.max(xFirst, xLast),\n\n yFirst = firstPoint.y,\n yLast = lastPoint.y,\n yMin = Math.min(yFirst, yLast),\n yMax = Math.max(yFirst, yLast);\n\n return new scope.Rectangle({x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin});\n };\n\n /**\n * This method is use to calculate the size of the rectangle that contains bounding boxes.\n *\n * @method getBoundingRect\n * @param {Rectangle[]} boundingBoxes List of bounding box\n * @returns {Rectangle}\n */\n MathUtils.getBoundingRect = function (boundingBoxes) {\n\n var xList = [],\n yList = [];\n\n for (var i in boundingBoxes) {\n var rectangle = boundingBoxes[i];\n xList.push(rectangle.getX());\n xList.push(rectangle.getX() + rectangle.getWidth());\n yList.push(rectangle.getY());\n yList.push(rectangle.getY() + rectangle.getHeight());\n }\n\n var xMin = Math.min.apply(Math, xList);\n var xMax = Math.max.apply(Math, xList);\n var yMin = Math.min.apply(Math, yList);\n var yMax = Math.max.apply(Math, yList);\n\n return new scope.Rectangle({x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin});\n };\n\n // Export\n scope.MathUtils = MathUtils;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract WebSocket recognition message\n *\n * @class AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractWSMessage(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get the message type\n *\n * @method getType\n * @returns {String}\n */\n AbstractWSMessage.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.AbstractWSMessage = AbstractWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent an abstract input component\n *\n * @class AbstractComponent\n * @constructor\n */\n function AbstractComponent() {\n }\n\n /**\n * Get the type of the input component\n *\n * @method getType\n * @returns {String}\n */\n AbstractComponent.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Set the type of the input component\n *\n * @method setType\n * @param {String} type\n */\n AbstractComponent.prototype.setType = function (type) {\n if (typeof type !== 'string') {\n throw new Error('Invalid param type');\n }\n this.type = type;\n };\n\n // Export\n scope.AbstractComponent = AbstractComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent a simple stroke input component\n *\n * @class Stroke\n * @extends AbstractComponent\n * @constructor\n */\n function Stroke() {\n this.type = 'stroke';\n this.x = [];\n this.y = [];\n this.t = [];\n }\n\n /**\n * Inheritance property\n */\n Stroke.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n Stroke.prototype.constructor = Stroke;\n\n /**\n * Get the list of x coordinates\n *\n * @method getX\n * @returns {Number[]}\n */\n Stroke.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Set the list of x coordinates\n *\n * @method setX\n * @param {Number[]} x\n */\n Stroke.prototype.setX = function (x) {\n this.x = x;\n };\n\n /**\n * Add a x to the list of x coordinates\n *\n * @method addX\n * @param {Number} x\n */\n Stroke.prototype.addX = function (x) {\n if ((x !== null) && (x !== undefined)) {\n this.x.push(x);\n }\n };\n\n /**\n * Get the list of y coordinates\n *\n * @method getY\n * @returns {Number[]}\n */\n Stroke.prototype.getY = function () {\n return this.y;\n };\n\n /**\n * Set the list of y coordinates\n *\n * @method setY\n * @param {Number[]} y\n */\n Stroke.prototype.setY = function (y) {\n this.y = y;\n };\n\n /**\n * Add a y to the list of y coordinates\n *\n * @method addY\n * @param {Number} y\n */\n Stroke.prototype.addY = function (y) {\n if ((y !== null) && (y !== undefined)) {\n this.y.push(y);\n }\n };\n\n /**\n * Get the list of timestamps\n *\n * @method getT\n * @returns {Number[]}\n */\n Stroke.prototype.getT = function () {\n return this.t;\n };\n\n /**\n * Set the list of timestamps\n *\n * @method setT\n * @param {Number[]} t\n */\n Stroke.prototype.setT = function (t) {\n this.t = t;\n };\n\n /**\n * Add a timestamp to the list\n *\n * @method addT\n * @param {Number} t\n */\n Stroke.prototype.addT = function (t) {\n if ((t !== null) && (t !== undefined)) {\n this.t.push(t);\n }\n };\n\n /**\n * Get the number of points for this stroke\n *\n * @method getLength\n * @returns {Number}\n */\n Stroke.prototype.getLength = function () {\n return this.x.length;\n };\n\n\n /**\n * Get the boundingBox\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n Stroke.prototype.getBoundingBox = function () {\n var boundingBox = new scope.Rectangle();\n boundingBox.setX(Math.min.apply(Math, this.getX()));\n boundingBox.setY(Math.min.apply(Math, this.getY()));\n boundingBox.setWidth(Math.max.apply(Math, this.getX()) - boundingBox.getX());\n boundingBox.setHeight(Math.max.apply(Math, this.getY()) - boundingBox.getY());\n return boundingBox;\n };\n\n // Export\n scope.Stroke = Stroke;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Char input component\n *\n * @class CharacterInputComponent\n * @extends AbstractComponent\n * @constructor\n */\n function CharacterInputComponent() {\n this.type = 'inputCharacter';\n this.alternates = [];\n }\n\n /**\n * Inheritance property\n */\n CharacterInputComponent.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n CharacterInputComponent.prototype.constructor = CharacterInputComponent;\n\n /**\n * Get character input alternates\n *\n * @method getAlternates\n * @returns {CharacterInputComponentAlternate[]}\n */\n CharacterInputComponent.prototype.getAlternates = function () {\n return this.alternates;\n };\n\n /**\n * Set character input alternates\n *\n * @method setAlternates\n * @param {CharacterInputComponentAlternate[]} alternates\n */\n CharacterInputComponent.prototype.setAlternates = function (alternates) {\n this.alternates = alternates;\n };\n\n /**\n * Add a character input alternate\n *\n * @method addAlternate\n * @param {CharacterInputComponent} alternate\n */\n CharacterInputComponent.prototype.addAlternate = function (alternate) {\n this.alternates.push(alternate);\n };\n\n /**\n * Get input component bounding-box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n CharacterInputComponent.prototype.getBoundingBox = function () {\n return this.boundingBox;\n };\n\n /**\n * Set input component bounding-box\n *\n * @method setBoundingBox\n * @param {Rectangle} boundingBox\n */\n CharacterInputComponent.prototype.setBoundingBox = function (boundingBox) {\n this.boundingBox = boundingBox;\n };\n\n // Export\n scope.CharacterInputComponent = CharacterInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Character input component alternate\n *\n * @class CharacterInputComponentAlternate\n * @constructor\n */\n function CharacterInputComponentAlternate(alternate, probability) {\n this.alternate = alternate;\n this.probability = probability;\n }\n\n /**\n * Get alternate\n *\n * @method getAlternate\n * @returns {String}\n */\n CharacterInputComponentAlternate.prototype.getAlternate = function () {\n return this.alternate;\n };\n\n /**\n * Set alternate\n *\n * @method setAlternate\n * @param {String} alternate\n */\n CharacterInputComponentAlternate.prototype.setAlternate = function (alternate) {\n this.alternate = alternate;\n };\n\n /**\n * Get probability\n *\n * @method getProbability\n * @returns {Number}\n */\n CharacterInputComponentAlternate.prototype.getProbability = function () {\n return this.probability;\n };\n\n /**\n * Set probability\n *\n * @method setProbability\n * @param {Number} probability\n */\n CharacterInputComponentAlternate.prototype.setProbability = function (probability) {\n this.probability = probability;\n };\n\n // Export\n scope.CharacterInputComponentAlternate = CharacterInputComponentAlternate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract parameters used for recognition\n *\n * @class AbstractParameter\n * @constructor\n */\n function AbstractParameter() {\n }\n\n // Export\n scope.AbstractParameter = AbstractParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstraction of recognizer input\n *\n * @class AbstractRecognitionInput\n * @constructor\n */\n function AbstractRecognitionInput() {\n }\n\n // Export\n scope.AbstractRecognitionInput = AbstractRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract input recognition data\n *\n * @class AbstractRecognitionData\n * @constructor\n */\n function AbstractRecognitionData() {\n }\n\n /**\n * Get the application key\n *\n * @method getApplicationKey\n * @returns {String}\n */\n AbstractRecognitionData.prototype.getApplicationKey = function () {\n return this.applicationKey;\n };\n\n /**\n * Set the application key\n *\n * @method setApplicationKey\n * @param {String} applicationKey\n */\n AbstractRecognitionData.prototype.setApplicationKey = function (applicationKey) {\n this.applicationKey = applicationKey;\n };\n\n /**\n * Get the instanceId\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractRecognitionData.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n /**\n * Set the instanceId\n *\n * @method setInstanceId\n * @param {String} instanceId\n */\n AbstractRecognitionData.prototype.setInstanceId = function (instanceId) {\n this.instanceId = instanceId;\n };\n\n /**\n * @returns {string}\n */\n AbstractRecognitionData.prototype.getHmac = function () {\n return this.hmac;\n };\n\n /**\n * @param {string} hmac\n */\n AbstractRecognitionData.prototype.setHmac = function (hmac) {\n this.hmac = hmac;\n };\n\n // Export\n scope.AbstractRecognitionData = AbstractRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * List of languages recognition input\n *\n * @class RecognitionLanguagesData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function RecognitionLanguagesData() {\n }\n\n /**\n * Inheritance property\n */\n RecognitionLanguagesData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n RecognitionLanguagesData.prototype.constructor = RecognitionLanguagesData;\n\n /**\n * Get the recognition input mode\n *\n * @method getInputMode\n * @returns {String} inputMode\n */\n RecognitionLanguagesData.prototype.getInputMode = function () {\n return this.inputMode;\n };\n\n /**\n * Set the recognition input mode\n *\n * @method setInputMode\n * @param {String} inputMode\n */\n RecognitionLanguagesData.prototype.setInputMode = function (inputMode) {\n this.inputMode = inputMode;\n };\n\n // Export\n scope.RecognitionLanguagesData = RecognitionLanguagesData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket start math recognition message\n *\n * @class AbstractStartRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractStartRequestWSMessage(obj) {\n this.type = 'start';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n AbstractStartRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n AbstractStartRequestWSMessage.prototype.constructor = AbstractStartRequestWSMessage;\n\n // Export\n scope.AbstractStartRequestWSMessage = AbstractStartRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket continue math recognition message\n *\n * @class AbstractContinueRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractContinueRequestWSMessage(obj) {\n this.type = 'continue';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n AbstractContinueRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n AbstractContinueRequestWSMessage.prototype.constructor = AbstractContinueRequestWSMessage;\n\n /**\n * Get instanceId\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractContinueRequestWSMessage.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n /**\n * Set instanceId\n *\n * @method setInstanceId\n * @param {String} instanceId\n */\n AbstractContinueRequestWSMessage.prototype.setInstanceId = function (instanceId) {\n this.instanceId = instanceId;\n };\n\n // Export\n scope.AbstractContinueRequestWSMessage = AbstractContinueRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class ChallengeRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ChallengeRequestWSMessage(obj) {\n this.type = 'hmac';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ChallengeRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ChallengeRequestWSMessage.prototype.constructor = ChallengeRequestWSMessage;\n\n /**\n * Get the challenge\n *\n * @method getChallenge\n * @returns {String}\n */\n ChallengeRequestWSMessage.prototype.getChallenge = function () {\n return this.challenge;\n };\n\n /**\n * Set the challenge\n *\n * @method setChallenge\n * @param {String} challenge\n */\n ChallengeRequestWSMessage.prototype.setChallenge = function (challenge) {\n this.challenge = challenge;\n };\n\n /**\n * Get the application key\n *\n * @method getApplicationKey\n * @returns {String}\n */\n ChallengeRequestWSMessage.prototype.getApplicationKey = function () {\n return this.applicationKey;\n };\n\n /**\n * Set the application key\n *\n * @method setApplicationKey\n * @param {String} applicationKey\n */\n ChallengeRequestWSMessage.prototype.setApplicationKey = function (applicationKey) {\n this.applicationKey = applicationKey;\n };\n\n /**\n * Get HMAC signature\n *\n * @method getHmacSignature\n * @returns {String}\n */\n ChallengeRequestWSMessage.prototype.getHmacSignature = function () {\n return this.hmac;\n };\n\n /**\n * Set HMAC signature\n *\n * @method setHmacSignature\n * @param {String} hmac\n */\n ChallengeRequestWSMessage.prototype.setHmacSignature = function (hmac) {\n this.hmac = hmac;\n };\n\n // Export\n scope.ChallengeRequestWSMessage = ChallengeRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class InitRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function InitRequestWSMessage(obj) {\n this.type = 'applicationKey';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n InitRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n InitRequestWSMessage.prototype.constructor = InitRequestWSMessage;\n\n /**\n * Get the application key\n *\n * @method getApplicationKey\n * @returns {String}\n */\n InitRequestWSMessage.prototype.getApplicationKey = function () {\n return this.applicationKey;\n };\n\n /**\n * Set the application key\n *\n * @method setApplicationKey\n * @param {String} applicationKey\n */\n InitRequestWSMessage.prototype.setApplicationKey = function (applicationKey) {\n this.applicationKey = applicationKey;\n };\n\n // Export\n scope.InitRequestWSMessage = InitRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class ResetRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ResetRequestWSMessage(obj) {\n this.type = 'reset';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ResetRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ResetRequestWSMessage.prototype.constructor = ResetRequestWSMessage;\n\n // Export\n scope.ResetRequestWSMessage = ResetRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract text input component\n *\n * @class AbstractTextInputComponent\n * @extends AbstractComponent\n * @constructor\n */\n function AbstractTextInputComponent() {\n }\n\n /**\n * Inheritance property\n */\n AbstractTextInputComponent.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n AbstractTextInputComponent.prototype.constructor = AbstractTextInputComponent;\n\n /**\n * Get input component bounding-box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AbstractTextInputComponent.prototype.getBoundingBox = function () {\n return this.boundingBox;\n };\n\n /**\n * Set input component bounding-box\n *\n * @method setBoundingBox\n * @param {Rectangle} boundingBox\n */\n AbstractTextInputComponent.prototype.setBoundingBox = function (boundingBox) {\n this.boundingBox = boundingBox;\n };\n\n // Export\n scope.AbstractTextInputComponent = AbstractTextInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Char input component\n *\n * @class CharInputComponent\n * @extends AbstractTextInputComponent\n * @constructor\n */\n function CharInputComponent() {\n this.type = 'char';\n }\n\n /**\n * Inheritance property\n */\n CharInputComponent.prototype = new scope.AbstractTextInputComponent();\n\n /**\n * Constructor property\n */\n CharInputComponent.prototype.constructor = CharInputComponent;\n\n /**\n * Get character\n *\n * @method getCharacter\n * @returns {String}\n */\n CharInputComponent.prototype.getCharacter = function () {\n return this.character;\n };\n\n /**\n * Set character\n *\n * @method setCharacter\n * @param {String} character\n */\n CharInputComponent.prototype.setCharacter = function (character) {\n this.character = character;\n };\n\n // Export\n scope.CharInputComponent = CharInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * String input component\n *\n * @class StringInputComponent\n * @extends AbstractTextInputComponent\n * @constructor\n */\n function StringInputComponent() {\n this.type = 'string';\n }\n\n /**\n * Inheritance property\n */\n StringInputComponent.prototype = new scope.AbstractTextInputComponent();\n\n /**\n * Constructor property\n */\n StringInputComponent.prototype.constructor = StringInputComponent;\n\n /**\n * Get string\n *\n * @method getString\n * @returns {String}\n */\n StringInputComponent.prototype.getString = function () {\n return this.string;\n };\n\n /**\n * Set string\n *\n * @method setString\n * @param {String} string\n */\n StringInputComponent.prototype.setString = function (string) {\n this.string = string;\n };\n\n // Export\n scope.StringInputComponent = StringInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Input unit used for text recognition\n *\n * @class TextInputUnit\n * @constructor\n */\n function TextInputUnit() {\n this.textInputType = 'MULTI_LINE_TEXT';\n this.components = [];\n }\n\n /**\n * Get the input type\n *\n * @method getInputType\n * @returns {String}\n */\n TextInputUnit.prototype.getInputType = function () {\n return this.textInputType;\n };\n\n /**\n * Set the input type\n *\n * @method setInputType\n * @returns {String} inputType\n */\n TextInputUnit.prototype.setInputType = function (inputType) {\n this.textInputType = inputType;\n };\n\n /**\n * Get components for this input unit\n *\n * @method getComponents\n * @param {TextInkRange} [inkRange]\n * @returns {AbstractComponent[]}\n */\n TextInputUnit.prototype.getComponents = function (inkRange) {\n if (inkRange && (inkRange instanceof scope.TextInkRange)) {\n return this.components.slice(inkRange.getStartComponent(), inkRange.getEndComponent() + 1);\n }\n return this.components;\n };\n\n /**\n * Set components for this input unit\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n TextInputUnit.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.TextInputUnit = TextInputUnit;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for text recognition\n *\n * @class TextParameter\n * @extends AbstractParameter\n * @constructor\n */\n function TextParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n TextParameter.prototype.constructor = TextParameter;\n\n /**\n * Get recognition language\n *\n * @method getLanguage\n * @returns {String}\n */\n TextParameter.prototype.getLanguage = function () {\n return this.language;\n };\n\n /**\n * Set recognition language\n *\n * @method getLanguage\n * @param {String} language\n */\n TextParameter.prototype.setLanguage = function (language) {\n this.language = language;\n };\n\n /**\n * Get input mode\n *\n * @method getInputMode\n * @returns {String}\n */\n TextParameter.prototype.getInputMode = function () {\n return this.textInputMode;\n };\n\n /**\n * Set input mode\n *\n * @method setInputMode\n * @param {String} inputMode\n */\n TextParameter.prototype.setInputMode = function (inputMode) {\n this.textInputMode = inputMode;\n };\n\n /**\n * Get content types\n *\n * @method getContentTypes\n * @returns {Array}\n */\n TextParameter.prototype.getContentTypes = function () {\n return this.contentTypes;\n };\n\n /**\n * Set content types\n *\n * @method setContentTypes\n * @param {Array} contentTypes\n */\n TextParameter.prototype.setContentTypes = function (contentTypes) {\n this.contentTypes = contentTypes;\n };\n\n /**\n * Get SK\n *\n * @method getSubsetKnowledges\n * @returns {Array}\n */\n TextParameter.prototype.getSubsetKnowledges = function () {\n return this.subsetKnowledges;\n };\n\n /**\n * Set SK\n *\n * @method setSubsetKnowledges\n * @param {Array} subsetKnowledges\n */\n TextParameter.prototype.setSubsetKnowledges = function (subsetKnowledges) {\n this.subsetKnowledges = subsetKnowledges;\n };\n\n /**\n * Get user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n TextParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n TextParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get user LK words\n *\n * @method getUserLkWords\n * @returns {Array}\n */\n TextParameter.prototype.getUserLkWords = function () {\n return this.userLkWords;\n };\n\n /**\n * Set user LK words\n *\n * @method setUserLkWords\n * @param {Array} userLkWords\n */\n TextParameter.prototype.setUserLkWords = function (userLkWords) {\n this.userLkWords = userLkWords;\n };\n\n /**\n * Get result detail (e.g. TEXT, WORD ...)\n *\n * @method getResultDetail\n * @returns {String}\n */\n TextParameter.prototype.getResultDetail = function () {\n return this.resultDetail;\n };\n\n /**\n * Set result detail (e.g. TEXT, WORD ...)\n *\n * @method setResultDetail\n * @param {String} resultDetail\n */\n TextParameter.prototype.setResultDetail = function (resultDetail) {\n this.resultDetail = resultDetail;\n };\n\n /**\n * Get text properties\n *\n * @method getTextProperties\n * @returns {TextProperties}\n */\n TextParameter.prototype.getTextProperties = function () {\n return this.textProperties;\n };\n\n /**\n * Set text properties\n *\n * @method setTextProperties\n * @param {TextProperties} properties\n */\n TextParameter.prototype.setTextProperties = function (textProperties) {\n this.textProperties = textProperties;\n };\n\n // Export\n scope.TextParameter = TextParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text recognition properties\n *\n * @class TextProperties\n * @constructor\n */\n function TextProperties() {\n }\n\n /**\n * Get the number of text candidates requested\n *\n * @method getTextCandidateListSize\n * @returns {Number}\n */\n TextProperties.prototype.getTextCandidateListSize = function () {\n return this.textCandidateListSize;\n };\n\n /**\n * Set the number of text candidates requested\n *\n * @method setTextCandidateListSize\n * @param {Number} textCandidateListSize\n */\n TextProperties.prototype.setTextCandidateListSize = function (textCandidateListSize) {\n this.textCandidateListSize = textCandidateListSize;\n };\n\n /**\n * Get the number of word candidates requested\n *\n * @method getWordCandidateListSize\n * @returns {Number}\n */\n TextProperties.prototype.getWordCandidateListSize = function () {\n return this.wordCandidateListSize;\n };\n\n /**\n * Set the number of word candidates requested\n *\n * @method setWordCandidateListSize\n * @param {Number} wordCandidateListSize\n */\n TextProperties.prototype.setWordCandidateListSize = function (wordCandidateListSize) {\n this.wordCandidateListSize = wordCandidateListSize;\n };\n\n /**\n * Get the number of word prediction candidates requested\n *\n * @method getWordPredictionListSize\n * @returns {Number}\n */\n TextProperties.prototype.getWordPredictionListSize = function () {\n return this.wordPredictionListSize;\n };\n\n /**\n * Set the number of word prediction candidates requested\n *\n * @method setWordPredictionListSize\n * @param {Number} wordPredictionListSize\n */\n TextProperties.prototype.setWordPredictionListSize = function (wordPredictionListSize) {\n this.wordPredictionListSize = wordPredictionListSize;\n };\n\n /**\n * Get the number of word completion candidates requested\n *\n * @method getWordCompletionListSize\n * @returns {Number}\n */\n TextProperties.prototype.getWordCompletionListSize = function () {\n return this.wordCompletionListSize;\n };\n\n /**\n * Set the number of word completion candidates requested\n *\n * @method setWordCompletionListSize\n * @param {Number} wordCompletionListSize\n */\n TextProperties.prototype.setWordCompletionListSize = function (wordCompletionListSize) {\n this.wordCompletionListSize = wordCompletionListSize;\n };\n\n /**\n * Get the number of character candidates requested\n *\n * @method getCharacterCandidateListSize\n * @returns {Number}\n */\n TextProperties.prototype.getCharacterCandidateListSize = function () {\n return this.characterCandidateListSize;\n };\n\n /**\n * Set the number of character candidates requested\n *\n * @method setCharacterCandidateListSize\n * @param {Number} characterCandidateListSize\n */\n TextProperties.prototype.setCharacterCandidateListSize = function (characterCandidateListSize) {\n this.characterCandidateListSize = characterCandidateListSize;\n };\n\n /**\n * Get the discard case variations\n *\n * @method getDiscardCaseVariations\n * @returns {boolean}\n */\n TextProperties.prototype.getDiscardCaseVariations = function () {\n return this.discardCaseVariations;\n };\n\n /**\n * Set the discard case variations\n *\n * @method setDiscardCaseVariations\n * @param {boolean} discardCaseVariations\n */\n TextProperties.prototype.setDiscardCaseVariations = function (discardCaseVariations) {\n this.discardCaseVariations = discardCaseVariations;\n };\n\n /**\n * Get the discard accentuation variations\n *\n * @method getDiscardAccentuationVariations\n * @returns {boolean}\n */\n TextProperties.prototype.getDiscardAccentuationVariations = function () {\n return this.discardAccentuationVariations;\n };\n\n /**\n * Set the discard accentuation variations\n *\n * @method setDiscardAccentuationVariations\n * @param {boolean} discardAccentuationVariations\n */\n TextProperties.prototype.setDiscardAccentuationVariations = function (discardAccentuationVariations) {\n this.discardAccentuationVariations = discardAccentuationVariations;\n };\n\n /**\n * Get disable spatial ordering\n *\n * @method getDisableSpatialOrdering\n * @returns {Boolean}\n */\n TextProperties.prototype.getDisableSpatialOrdering = function () {\n return this.disableSpatialOrdering;\n };\n\n /**\n * Set disable spatial ordering\n *\n * @method setDisableSpatialOrdering\n * @param {Boolean} disableSpatialOrdering\n */\n TextProperties.prototype.setDisableSpatialOrdering = function (disableSpatialOrdering) {\n this.disableSpatialOrdering = disableSpatialOrdering;\n };\n\n /**\n * Get glyph distortion\n *\n * @method getGlyphDistortion\n * @returns {Number}\n */\n TextProperties.prototype.getGlyphDistortion = function () {\n return this.glyphDistortion;\n };\n\n /**\n * Set glyph distortion\n *\n * @method setGlyphDistortion\n * @param {Number} glyphDistortion\n */\n TextProperties.prototype.setGlyphDistortion = function (glyphDistortion) {\n this.glyphDistortion = glyphDistortion;\n };\n\n /**\n * Get enable out of lexicon\n *\n * @method getEnableOutOfLexicon\n * @returns {Boolean}\n */\n TextProperties.prototype.getEnableOutOfLexicon = function () {\n return this.enableOutOfLexicon;\n };\n\n /**\n * Set enable out of lexicon\n *\n * @method setEnableOutOfLexicon\n * @param {Boolean} enableOutOfLexicon\n */\n TextProperties.prototype.setEnableOutOfLexicon = function (enableOutOfLexicon) {\n this.enableOutOfLexicon = enableOutOfLexicon;\n };\n\n /**\n * Get spelling distortion\n *\n * @method getSpellingDistortion\n * @returns {Number}\n */\n TextProperties.prototype.getSpellingDistortion = function () {\n return this.spellingDistortion;\n };\n\n /**\n * Set spelling distortion\n *\n * @method setSpellingDistortion\n * @param {Number} spellingDistortion\n */\n TextProperties.prototype.setSpellingDistortion = function (spellingDistortion) {\n this.spellingDistortion = spellingDistortion;\n };\n\n // Export\n scope.TextProperties = TextProperties;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for text recognition\n *\n * @class TextRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function TextRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n TextRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n TextRecognitionInput.prototype.constructor = TextRecognitionInput;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextRecognitionInput.prototype.getParameters = function () {\n return this.textParameter;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextRecognitionInput.prototype.setParameters = function (parameters) {\n this.textParameter = parameters;\n };\n\n /**\n * Get input units\n *\n * @method getInputUnits\n * @param {TextInkRange} [inkRange]\n * @returns {TextInputUnit[]}\n */\n TextRecognitionInput.prototype.getInputUnits = function (inkRange) {\n if (inkRange && (inkRange instanceof scope.TextInkRange)) {\n return this.inputUnits.slice(inkRange.getStartUnit(), inkRange.getEndUnit() + 1);\n }\n return this.inputUnits;\n };\n\n /**\n * Set input units\n *\n * @method setInputUnits\n * @param {TextInputUnit[]} inputUnits\n */\n TextRecognitionInput.prototype.setInputUnits = function (inputUnits) {\n this.inputUnits = inputUnits;\n };\n\n // Export\n scope.TextRecognitionInput = TextRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for text input\n *\n * @class TextRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function TextRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n TextRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n TextRecognitionData.prototype.constructor = TextRecognitionData;\n\n /**\n * Get text input\n *\n * @method getTextRecognitionInput\n * @returns {TextRecognitionInput} inputMode\n */\n TextRecognitionData.prototype.getTextRecognitionInput = function () {\n return this.textInput;\n };\n\n /**\n * Set text input\n *\n * @method setTextRecognitionInput\n * @param {TextRecognitionInput} input\n */\n TextRecognitionData.prototype.setTextRecognitionInput = function (input) {\n this.textInput = JSON.stringify(input);\n };\n\n // Export\n scope.TextRecognitionData = TextRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket start text recognition message\n *\n * @class TextStartRequestWSMessage\n * @extends AbstractStartRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function TextStartRequestWSMessage(obj) {\n scope.AbstractStartRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextStartRequestWSMessage.prototype = new scope.AbstractStartRequestWSMessage();\n\n /**\n * Constructor property\n */\n TextStartRequestWSMessage.prototype.constructor = TextStartRequestWSMessage;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextStartRequestWSMessage.prototype.getParameters = function () {\n return this.textParameter;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextStartRequestWSMessage.prototype.setParameters = function (parameters) {\n this.textParameter = parameters;\n };\n\n /**\n * Get input units\n *\n * @method getInputUnits\n * @returns {TextInputUnit[]}\n */\n TextStartRequestWSMessage.prototype.getInputUnits = function () {\n return this.inputUnits;\n };\n\n /**\n * Set input units\n *\n * @method setInputUnits\n * @param {TextInputUnit[]} inputUnits\n */\n TextStartRequestWSMessage.prototype.setInputUnits = function (inputUnits) {\n this.inputUnits = inputUnits;\n };\n\n // Export\n scope.TextStartRequestWSMessage = TextStartRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket continue text recognition message\n *\n * @class TextContinueRequestWSMessage\n * @extends AbstractContinueRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function TextContinueRequestWSMessage(obj) {\n scope.AbstractContinueRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextContinueRequestWSMessage.prototype = new scope.AbstractContinueRequestWSMessage();\n\n /**\n * Constructor property\n */\n TextContinueRequestWSMessage.prototype.constructor = TextContinueRequestWSMessage;\n\n /**\n * Get input units\n *\n * @method getInputUnits\n * @returns {TextInputUnit[]}\n */\n TextContinueRequestWSMessage.prototype.getInputUnits = function () {\n return this.inputUnits;\n };\n\n /**\n * Set input units\n *\n * @method setInputUnits\n * @param {TextInputUnit[]} inputUnits\n */\n TextContinueRequestWSMessage.prototype.setInputUnits = function (inputUnits) {\n this.inputUnits = inputUnits;\n };\n\n // Export\n scope.TextContinueRequestWSMessage = TextContinueRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for shape recognition\n *\n * @class ShapeParameter\n * @extends AbstractParameter\n * @constructor\n */\n function ShapeParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ShapeParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n ShapeParameter.prototype.constructor = ShapeParameter;\n\n /**\n * Get the sensitivity of the reject detection\n *\n * @method getRejectDetectionSensitivity\n * @returns {Boolean}\n */\n ShapeParameter.prototype.getRejectDetectionSensitivity = function () {\n return this.rejectDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the reject detection\n *\n * @method setRejectDetectionSensitivity\n * @param {Boolean} rejectDetectionSensitivity\n */\n ShapeParameter.prototype.setRejectDetectionSensitivity = function (rejectDetectionSensitivity) {\n this.rejectDetectionSensitivity = rejectDetectionSensitivity;\n };\n\n /**\n * Get the beautification\n *\n * @method hasBeautification\n * @returns {Boolean}\n */\n ShapeParameter.prototype.hasBeautification = function () {\n return this.doBeautification;\n };\n\n /**\n * Set the beautification\n *\n * @method setBeautification\n * @param {Boolean} doBeautification\n */\n ShapeParameter.prototype.setBeautification = function (doBeautification) {\n this.doBeautification = doBeautification;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n ShapeParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n ShapeParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n // Export\n scope.ShapeParameter = ShapeParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for shape recognition\n *\n * @class ShapeRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function ShapeRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n ShapeRecognitionInput.prototype.constructor = ShapeRecognitionInput;\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n ShapeRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n ShapeRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n /**\n * Get the beautification\n *\n * @method getDoBeautification\n * @returns {Boolean}\n */\n ShapeRecognitionInput.prototype.getDoBeautification = function () {\n return this.doBeautification;\n };\n\n /**\n * Set the beautification\n *\n * @method setDoBeautification\n * @param {Boolean} doBeautification\n */\n ShapeRecognitionInput.prototype.setDoBeautification = function (doBeautification) {\n this.doBeautification = doBeautification;\n };\n\n /**\n * Get the sensitivity of the reject detection\n *\n * @method getRejectDetectionSensitivity\n * @returns {Number}\n */\n ShapeRecognitionInput.prototype.getRejectDetectionSensitivity = function () {\n return this.rejectDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the reject detection\n *\n * @method setRejectDetectionSensitivity\n * @param {Number} rejectDetectionSensitivity\n */\n ShapeRecognitionInput.prototype.setRejectDetectionSensitivity = function (rejectDetectionSensitivity) {\n this.rejectDetectionSensitivity = rejectDetectionSensitivity;\n };\n\n // Export\n scope.ShapeRecognitionInput = ShapeRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for shape input\n *\n * @class ShapeRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function ShapeRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n ShapeRecognitionData.prototype.constructor = ShapeRecognitionData;\n\n /**\n * Get shape input\n *\n * @method getShapeRecognitionInput\n * @returns {ShapeRecognitionInput}\n */\n ShapeRecognitionData.prototype.getShapeRecognitionInput = function () {\n return this.shapeInput;\n };\n\n /**\n * Set shape input\n *\n * @method setShapeRecognitionInput\n * @param {ShapeRecognitionInput} input\n */\n ShapeRecognitionData.prototype.setShapeRecognitionInput = function (input) {\n this.shapeInput = JSON.stringify(input);\n };\n\n // Export\n scope.ShapeRecognitionData = ShapeRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for math recognition\n *\n * @class MathParameter\n * @extends AbstractParameter\n * @constructor\n */\n function MathParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n this.resultTypes = [];\n this.userResources = [];\n }\n\n /**\n * Inheritance property\n */\n MathParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n MathParameter.prototype.constructor = MathParameter;\n\n /**\n * Get the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MathParameter.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MathParameter.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the math result result orientation to columnar operations\n *\n * @method isColumnar\n * @returns {Boolean}\n */\n MathParameter.prototype.isColumnar = function () {\n return this.columnarOperation;\n };\n\n /**\n * Set the math result orientation to columnar operations\n *\n * @method setColumnar\n * @param {Boolean} columnar\n */\n MathParameter.prototype.setColumnar = function (columnar) {\n this.columnarOperation = columnar;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MathParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MathParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MathParameter.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MathParameter.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n\n // Export\n scope.MathParameter = MathParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for math recognition\n *\n * @class MathRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function MathRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n MathRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n MathRecognitionInput.prototype.constructor = MathRecognitionInput;\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n MathRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n MathRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n /**\n * Get the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MathRecognitionInput.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MathRecognitionInput.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the math result result orientation to columnar operations\n *\n * @method isColumnar\n * @returns {Boolean}\n */\n MathRecognitionInput.prototype.isColumnar = function () {\n return this.columnarOperation;\n };\n\n /**\n * Set the math result orientation to columnar operations\n *\n * @method setColumnar\n * @param {Boolean} columnar\n */\n MathRecognitionInput.prototype.setColumnar = function (columnar) {\n this.columnarOperation = columnar;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MathRecognitionInput.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MathRecognitionInput.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MathRecognitionInput.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MathRecognitionInput.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n // Export\n scope.MathRecognitionInput = MathRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for math input\n *\n * @class MathRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function MathRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n MathRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n MathRecognitionData.prototype.constructor = MathRecognitionData;\n\n /**\n * Get math input\n *\n * @method getMathRecognitionInput\n * @returns {MathRecognitionInput}\n */\n MathRecognitionData.prototype.getMathRecognitionInput = function () {\n return this.mathInput;\n };\n\n /**\n * Set math input\n *\n * @method setMathRecognitionInput\n * @param {MathRecognitionInput} input\n */\n MathRecognitionData.prototype.setMathRecognitionInput = function (input) {\n this.mathInput = JSON.stringify(input);\n\n };\n\n // Export\n scope.MathRecognitionData = MathRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket start math recognition message\n *\n * @class MathStartRequestWSMessage\n * @extends AbstractStartRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function MathStartRequestWSMessage(obj) {\n scope.AbstractStartRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathStartRequestWSMessage.prototype = new scope.AbstractStartRequestWSMessage();\n\n /**\n * Constructor property\n */\n MathStartRequestWSMessage.prototype.constructor = MathStartRequestWSMessage;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MathParameter}\n */\n MathStartRequestWSMessage.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MathParameter} parameters\n */\n MathStartRequestWSMessage.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Get components\n *\n * @method getComponents\n * @returns {MathInputUnit[]}\n */\n MathStartRequestWSMessage.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set components\n *\n * @method setComponents\n * @param {MathInputUnit[]} components\n */\n MathStartRequestWSMessage.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.MathStartRequestWSMessage = MathStartRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket continue math recognition message\n *\n * @class MathContinueRequestWSMessage\n * @extends AbstractContinueRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function MathContinueRequestWSMessage(obj) {\n this.type = 'continue';\n scope.AbstractContinueRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathContinueRequestWSMessage.prototype = new scope.AbstractContinueRequestWSMessage();\n\n /**\n * Constructor property\n */\n MathContinueRequestWSMessage.prototype.constructor = MathContinueRequestWSMessage;\n\n /**\n * Get components\n *\n * @method getComponents\n * @returns {MathInputUnit[]}\n */\n MathContinueRequestWSMessage.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set components\n *\n * @method setComponents\n * @param {MathInputUnit[]} components\n */\n MathContinueRequestWSMessage.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.MathContinueRequestWSMessage = MathContinueRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract music input component\n *\n * @class AbstractMusicInputComponent\n * @extends AbstractComponent\n * @constructor\n */\n function AbstractMusicInputComponent() {\n }\n\n /**\n * Inheritance property\n */\n AbstractMusicInputComponent.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n AbstractMusicInputComponent.prototype.constructor = AbstractMusicInputComponent;\n\n /**\n * Get input component bounding-box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AbstractMusicInputComponent.prototype.getBoundingBox = function () {\n return this.boundingBox;\n };\n\n /**\n * Set input component bounding-box\n *\n * @method setBoundingBox\n * @param {Rectangle} boundingBox\n */\n AbstractMusicInputComponent.prototype.setBoundingBox = function (boundingBox) {\n this.boundingBox = boundingBox;\n };\n\n // Export\n scope.AbstractMusicInputComponent = AbstractMusicInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Accidental input component\n *\n * @class MusicAccidentalInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicAccidentalInputComponent() {\n this.type = 'accidental';\n }\n\n /**\n * Inheritance property\n */\n MusicAccidentalInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicAccidentalInputComponent.prototype.constructor = MusicAccidentalInputComponent;\n\n /**\n * Get accidental input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicAccidentalInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set accidental input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicAccidentalInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicAccidentalInputComponent = MusicAccidentalInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Arpeggiate input component\n *\n * @class MusicArpeggiateInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicArpeggiateInputComponent() {\n this.type = 'arpeggiate';\n }\n\n /**\n * Inheritance property\n */\n MusicArpeggiateInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicArpeggiateInputComponent.prototype.constructor = MusicArpeggiateInputComponent;\n\n /**\n * Get arpeggiate input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicArpeggiateInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set arpeggiate input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicArpeggiateInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicArpeggiateInputComponent = MusicArpeggiateInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music bar input\n *\n * @class MusicBarInput\n * @constructor\n */\n function MusicBarInput() {\n }\n\n /**\n * Get repeat direction\n *\n * @method getRepeatDirection\n * @returns {String}\n */\n MusicBarInput.prototype.getRepeatDirection = function () {\n return this.repeatDirection;\n };\n\n /**\n * Set repeat direction\n *\n * @method setRepeatDirection\n * @param {String} repeatDirection\n */\n MusicBarInput.prototype.setRepeatDirection = function (repeatDirection) {\n this.repeatDirection = repeatDirection;\n };\n\n /**\n * Get style\n *\n * @method getStyle\n * @returns {String}\n */\n MusicBarInput.prototype.getStyle = function () {\n return this.style;\n };\n\n /**\n * Set style\n *\n * @method setStyle\n * @param {String} style\n */\n MusicBarInput.prototype.setStyle = function (style) {\n this.style = style;\n };\n\n // Export\n scope.MusicBarInput = MusicBarInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Bar input component\n *\n * @class MusicBarInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicBarInputComponent() {\n this.type = 'bar';\n this.value = new scope.MusicBarInput();\n }\n\n /**\n * Inheritance property\n */\n MusicBarInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicBarInputComponent.prototype.constructor = MusicBarInputComponent;\n\n /**\n * Get bar input component value\n *\n * @method getValue\n * @returns {MusicBarInput}\n */\n MusicBarInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set bar input component value\n *\n * @method setValue\n * @param {MusicBarInput} value\n */\n MusicBarInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicBarInputComponent = MusicBarInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music beam input\n *\n * @class MusicBeamInput\n * @constructor\n */\n function MusicBeamInput() {\n }\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicBeamInput.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Set placement\n *\n * @method setPlacement\n * @param {String} placement\n */\n MusicBeamInput.prototype.setPlacement = function (placement) {\n this.placement = placement;\n };\n\n /**\n * Get slope\n *\n * @method getSlope\n * @returns {String}\n */\n MusicBeamInput.prototype.getSlope = function () {\n return this.slope;\n };\n\n /**\n * Set slope\n *\n * @method setSlope\n * @param {String} slope\n */\n MusicBeamInput.prototype.setSlope = function (slope) {\n this.slope = slope;\n };\n\n /**\n * Get left count\n *\n * @method getLeftCount\n * @returns {Number}\n */\n MusicBeamInput.prototype.getLeftCount = function () {\n return this.leftCount;\n };\n\n /**\n * Set left count\n *\n * @method setLeftCount\n * @param {Number} leftCount\n */\n MusicBeamInput.prototype.setLeftCount = function (leftCount) {\n this.leftCount = leftCount;\n };\n\n /**\n * Get right count\n *\n * @method getRightCount\n * @returns {Number}\n */\n MusicBeamInput.prototype.getRightCount = function () {\n return this.rightCount;\n };\n\n /**\n * Set right count\n *\n * @method setRightCount\n * @param {Number} rightCount\n */\n MusicBeamInput.prototype.setRightCount = function (rightCount) {\n this.rightCount = rightCount;\n };\n\n /**\n * Get gap\n *\n * @method getGap\n * @returns {Number}\n */\n MusicBeamInput.prototype.getGap = function () {\n return this.gap;\n };\n\n /**\n * Set gap\n *\n * @method setGap\n * @param {Number} gap\n */\n MusicBeamInput.prototype.setGap = function (gap) {\n this.gap = gap;\n };\n\n // Export\n scope.MusicBeamInput = MusicBeamInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Beam input component\n *\n * @class MusicBeamInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicBeamInputComponent() {\n this.type = 'beam';\n this.value = new scope.MusicBeamInput();\n }\n\n /**\n * Inheritance property\n */\n MusicBeamInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicBeamInputComponent.prototype.constructor = MusicBeamInputComponent;\n\n /**\n * Get beam input component value\n *\n * @method getValue\n * @returns {MusicBeamInput}\n */\n MusicBeamInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set beam input component value\n *\n * @method setValue\n * @param {MusicBeamInput} value\n */\n MusicBeamInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicBeamInputComponent = MusicBeamInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music clef input\n * default values: symbol='G', octave=0\n *\n * @class MusicClefInput\n * @constructor\n */\n function MusicClefInput() {\n this.symbol = 'G';\n this.octave = 0;\n }\n\n /**\n * Get y anchor\n *\n * @method getYAnchor\n * @returns {Number}\n */\n MusicClefInput.prototype.getYAnchor = function () {\n return this.yAnchor;\n };\n\n /**\n * Set y anchor\n *\n * @method setYAnchor\n * @param {Number} yAnchor\n */\n MusicClefInput.prototype.setYAnchor = function (yAnchor) {\n this.yAnchor = yAnchor;\n };\n\n /**\n * Get octave\n *\n * @method getOctave\n * @returns {Number}\n */\n MusicClefInput.prototype.getOctave = function () {\n return this.octave;\n };\n\n /**\n * Set octave\n *\n * @method setOctave\n * @param {Number} octave\n */\n MusicClefInput.prototype.setOctave = function (octave) {\n this.octave = octave;\n };\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicClefInput.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n /**\n * Set symbol\n *\n * @method setSymbol\n * @param {String} symbol\n */\n MusicClefInput.prototype.setSymbol = function (symbol) {\n this.symbol = symbol;\n };\n\n // Export\n scope.MusicClefInput = MusicClefInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Clef input component\n * default clef values: symbol='G', octave=0\n *\n * @class MusicClefInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicClefInputComponent() {\n this.type = 'clef';\n this.value = new scope.MusicClefInput();\n }\n\n /**\n * Inheritance property\n */\n MusicClefInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicClefInputComponent.prototype.constructor = MusicClefInputComponent;\n\n /**\n * Get clef input component value\n *\n * @method getValue\n * @returns {MusicClefInput}\n */\n MusicClefInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set clef input component value\n *\n * @method setValue\n * @param {MusicClefInput} value\n */\n MusicClefInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicClefInputComponent = MusicClefInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music decoration input\n *\n * @class MusicDecorationInput\n * @constructor\n */\n function MusicDecorationInput() {\n }\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicDecorationInput.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n /**\n * Set symbol\n *\n * @method setSymbol\n * @param {String} symbol\n */\n MusicDecorationInput.prototype.setSymbol = function (symbol) {\n this.symbol = symbol;\n };\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicDecorationInput.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Set placement\n *\n * @method setPlacement\n * @param {String} placement\n */\n MusicDecorationInput.prototype.setPlacement = function (placement) {\n this.placement = placement;\n };\n\n // Export\n scope.MusicDecorationInput = MusicDecorationInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Decoration input component\n *\n * @class MusicDecorationInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicDecorationInputComponent() {\n this.type = 'decoration';\n this.value = new scope.MusicDecorationInput();\n }\n\n /**\n * Inheritance property\n */\n MusicDecorationInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicDecorationInputComponent.prototype.constructor = MusicDecorationInputComponent;\n\n /**\n * Get decoration input component value\n *\n * @method getValue\n * @returns {MusicDecorationInput}\n */\n MusicDecorationInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set decoration input component value\n *\n * @method setValue\n * @param {MusicDecorationInput} value\n */\n MusicDecorationInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicDecorationInputComponent = MusicDecorationInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Dots input component\n *\n * @class MusicDotsInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicDotsInputComponent() {\n this.type = 'dots';\n }\n\n /**\n * Inheritance property\n */\n MusicDotsInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicDotsInputComponent.prototype.constructor = MusicDotsInputComponent;\n\n /**\n * Get dots input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicDotsInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set dots input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicDotsInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicDotsInputComponent = MusicDotsInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Head input component\n *\n * @class MusicHeadInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicHeadInputComponent() {\n this.type = 'head';\n }\n\n /**\n * Inheritance property\n */\n MusicHeadInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicHeadInputComponent.prototype.constructor = MusicHeadInputComponent;\n\n /**\n * Get head input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicHeadInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set head input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicHeadInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicHeadInputComponent = MusicHeadInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Ledger line input component\n *\n * @class MusicLedgerLineInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicLedgerLineInputComponent() {\n this.type = 'ledgerLine';\n }\n\n /**\n * Inheritance property\n */\n MusicLedgerLineInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicLedgerLineInputComponent.prototype.constructor = MusicLedgerLineInputComponent;\n\n // Export\n scope.MusicLedgerLineInputComponent = MusicLedgerLineInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Rest input component\n *\n * @class MusicRestInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicRestInputComponent() {\n this.type = 'rest';\n }\n\n /**\n * Inheritance property\n */\n MusicRestInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicRestInputComponent.prototype.constructor = MusicRestInputComponent;\n\n /**\n * Get rest input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicRestInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set rest input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicRestInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicRestInputComponent = MusicRestInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Stem input component\n *\n * @class MusicStemInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicStemInputComponent() {\n this.type = 'stem';\n }\n\n /**\n * Inheritance property\n */\n MusicStemInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicStemInputComponent.prototype.constructor = MusicStemInputComponent;\n\n /**\n * Get stem input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicStemInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set stem input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicStemInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicStemInputComponent = MusicStemInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Tie ro slur input component\n *\n * @class MusicTieOrSlurInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicTieOrSlurInputComponent() {\n this.type = 'tieOrSlur';\n }\n\n /**\n * Inheritance property\n */\n MusicTieOrSlurInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicTieOrSlurInputComponent.prototype.constructor = MusicTieOrSlurInputComponent;\n\n /**\n * Get tie or slur input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicTieOrSlurInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set tie or slur input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicTieOrSlurInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicTieOrSlurInputComponent = MusicTieOrSlurInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Time signature input component\n *\n * @class MusicTimeSignatureInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicTimeSignatureInputComponent() {\n this.type = 'timeSignature';\n }\n\n /**\n * Inheritance property\n */\n MusicTimeSignatureInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicTimeSignatureInputComponent.prototype.constructor = MusicTimeSignatureInputComponent;\n\n /**\n * Get time signature input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicTimeSignatureInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set time signature input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicTimeSignatureInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicTimeSignatureInputComponent = MusicTimeSignatureInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represents a staff used for music recognition\n * default values: count=5, gap=20\n *\n * @class MusicStaff\n * @constructor\n */\n function MusicStaff() {\n this.count = 5;\n this.gap = 20;\n }\n\n /**\n * Get the lines count\n *\n * @method getCount\n * @returns {Number}\n */\n MusicStaff.prototype.getCount = function () {\n return this.count;\n };\n\n /**\n * Set the lines count\n *\n * @method setCount\n * @param {Number} count\n */\n MusicStaff.prototype.setCount = function (count) {\n this.count = count;\n };\n\n /**\n * Get the spacing from the top\n *\n * @method getTop\n * @returns {Number}\n */\n MusicStaff.prototype.getTop = function () {\n return this.top;\n };\n\n /**\n * Set the spacing from the top\n *\n * @method setTop\n * @param {Number} top\n */\n MusicStaff.prototype.setTop = function (top) {\n this.top = top;\n };\n\n /**\n * Get the gap between lines\n *\n * @method getGap\n * @returns {Number}\n */\n MusicStaff.prototype.getGap = function () {\n return this.gap;\n };\n\n /**\n * Set the gap between lines\n *\n * @method setGap\n * @param {Number} gap\n */\n MusicStaff.prototype.setGap = function (gap) {\n this.gap = gap;\n };\n\n // Export\n scope.MusicStaff = MusicStaff;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for music recognition\n *\n * @class MusicParameter\n * @extends AbstractParameter\n * @constructor\n */\n function MusicParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n this.resultTypes = [];\n this.userResources = [];\n }\n\n /**\n * Inheritance property\n */\n MusicParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n MusicParameter.prototype.constructor = MusicParameter;\n\n /**\n * Get the music result types (e.g. MusicXML, ScoreTree)\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MusicParameter.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the music result types (e.g. MusicXML, ScoreTree)\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MusicParameter.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MusicParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MusicParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MusicParameter.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MusicParameter.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n\n /**\n * Get the staff\n *\n * @method getStaff\n * @returns {MusicStaff}\n */\n MusicParameter.prototype.getStaff = function () {\n return this.staff;\n };\n\n /**\n * Set the staff\n *\n * @method setStaff\n * @param {MusicStaff} staff\n */\n MusicParameter.prototype.setStaff = function (staff) {\n this.staff = staff;\n };\n\n /**\n * Get the number of divisions\n *\n * @method getDivisions\n * @returns {Number}\n */\n MusicParameter.prototype.getDivisions = function () {\n return this.divisions;\n };\n\n /**\n * Set the number of divisions\n *\n * @method setDivisions\n * @param {Number} divisions\n */\n MusicParameter.prototype.setDivisions = function (divisions) {\n this.divisions = divisions;\n };\n\n // Export\n scope.MusicParameter = MusicParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for music recognition\n *\n * @class MusicRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function MusicRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n MusicRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n MusicRecognitionInput.prototype.constructor = MusicRecognitionInput;\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n MusicRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n MusicRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n /**\n * Get the result types\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MusicRecognitionInput.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the result types\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MusicRecognitionInput.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MusicRecognitionInput.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MusicRecognitionInput.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MusicRecognitionInput.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MusicRecognitionInput.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n\n /**\n * Get the staff\n *\n * @method getStaff\n * @returns {MusicStaff}\n */\n MusicRecognitionInput.prototype.getStaff = function () {\n return this.staff;\n };\n\n /**\n * Set the staff\n *\n * @method setStaff\n * @param {MusicStaff} staff\n */\n MusicRecognitionInput.prototype.setStaff = function (staff) {\n this.staff = staff;\n };\n\n /**\n * Get the number of divisions\n *\n * @method getDivisions\n * @returns {Number}\n */\n MusicRecognitionInput.prototype.getDivisions = function () {\n return this.divisions;\n };\n\n /**\n * Set the number of divisions\n *\n * @method setDivisions\n * @param {Number} divisions\n */\n MusicRecognitionInput.prototype.setDivisions = function (divisions) {\n this.divisions = divisions;\n };\n\n // Export\n scope.MusicRecognitionInput = MusicRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for music input\n *\n * @class MusicRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function MusicRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n MusicRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n MusicRecognitionData.prototype.constructor = MusicRecognitionData;\n\n /**\n * Get music input\n *\n * @method getMusicRecognitionInput\n * @returns {MusicRecognitionInput}\n */\n MusicRecognitionData.prototype.getMusicRecognitionInput = function () {\n return this.musicInput;\n };\n\n /**\n * Set music input\n *\n * @method setMusicRecognitionInput\n * @param {MusicRecognitionInput} input\n */\n MusicRecognitionData.prototype.setMusicRecognitionInput = function (input) {\n this.musicInput = JSON.stringify(input);\n };\n\n // Export\n scope.MusicRecognitionData = MusicRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for analyzer recognition\n *\n * @class AnalyzerParameter\n * @extends AbstractParameter\n * @constructor\n */\n function AnalyzerParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n this.textParameter = new scope.TextParameter();\n this.textParameter.setLanguage('en_US');\n this.textParameter.setInputMode('CURSIVE');\n }\n\n /**\n * Inheritance property\n */\n AnalyzerParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n AnalyzerParameter.prototype.constructor = AnalyzerParameter;\n\n /**\n * Get text recognition parameters\n *\n * @method getTextParameters\n * @returns {TextParameter}\n */\n AnalyzerParameter.prototype.getTextParameters = function () {\n return this.textParameter;\n };\n\n /**\n * Set text recognition parameters\n *\n * @method setTextParameters\n * @param {TextParameter} parameters\n */\n AnalyzerParameter.prototype.setTextParameters = function (parameters) {\n this.textParameter = parameters;\n };\n\n /**\n * Get analyzer coordinate resolution\n *\n * @method getCoordinateResolution\n * @returns {Number}\n */\n AnalyzerParameter.prototype.getCoordinateResolution = function () {\n return this.coordinateResolution;\n };\n\n /**\n * Set analyzer coordinate resolution\n *\n * @method setCoordinateResolution\n * @param {Number} coordinateResolution\n */\n AnalyzerParameter.prototype.setCoordinateResolution = function (coordinateResolution) {\n this.coordinateResolution = coordinateResolution;\n };\n\n // Export\n scope.AnalyzerParameter = AnalyzerParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for analyzer recognition\n *\n * @class AnalyzerRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function AnalyzerRecognitionInput() {\n\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n AnalyzerRecognitionInput.prototype.constructor = AnalyzerRecognitionInput;\n\n /**\n * Get analyzer recognition parameters\n *\n * @method getParameters\n * @returns {AnalyzerParameter}\n */\n AnalyzerRecognitionInput.prototype.getParameters = function () {\n return this.parameter;\n };\n\n /**\n * Set analyzer recognition parameters\n *\n * @method setParameters\n * @param {AnalyzerParameter} parameters\n */\n AnalyzerRecognitionInput.prototype.setParameters = function (parameters) {\n this.parameter = parameters;\n };\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n AnalyzerRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n AnalyzerRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.AnalyzerRecognitionInput = AnalyzerRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for analyzer input\n *\n * @class AnalyzerRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function AnalyzerRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n AnalyzerRecognitionData.prototype.constructor = AnalyzerRecognitionData;\n\n /**\n * Get analyzer input\n *\n * @method getAnalyzerRecognitionInput\n * @returns {AnalyzerRecognitionInput}\n */\n AnalyzerRecognitionData.prototype.getAnalyzerRecognitionInput = function () {\n return this.analyzerInput;\n };\n\n /**\n * Set analyzer input\n *\n * @method setAnalyzerRecognitionInput\n * @param {AnalyzerRecognitionInput} input\n */\n AnalyzerRecognitionData.prototype.setAnalyzerRecognitionInput = function (input) {\n this.analyzerInput = JSON.stringify(input);\n };\n\n // Export\n scope.AnalyzerRecognitionData = AnalyzerRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract result\n *\n * @class AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function AbstractResult(obj) {\n if (obj) {\n this.instanceId = obj.instanceId;\n }\n }\n\n /**\n * Get instance id\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractResult.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n // Export\n scope.AbstractResult = AbstractResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition text result message\n *\n * @class AbstractRecoResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractRecoResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n if (obj) {\n this.instanceId = obj.instanceId;\n }\n }\n\n /**\n * Inheritance property\n */\n AbstractRecoResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n AbstractRecoResponseWSMessage.prototype.constructor = AbstractRecoResponseWSMessage;\n\n /**\n * Get instance id\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractRecoResponseWSMessage.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n // Export\n scope.AbstractRecoResponseWSMessage = AbstractRecoResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class ChallengeResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ChallengeResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n if (obj) {\n this.challenge = obj.challenge;\n }\n }\n\n /**\n * Inheritance property\n */\n ChallengeResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ChallengeResponseWSMessage.prototype.constructor = ChallengeResponseWSMessage;\n\n /**\n * Get the challenge\n *\n * @method getChallenge\n * @returns {String}\n */\n ChallengeResponseWSMessage.prototype.getChallenge = function () {\n return this.challenge;\n };\n\n // Export\n scope.ChallengeResponseWSMessage = ChallengeResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition error message\n *\n * @class ErrorResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ErrorResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n if (obj) {\n this.error = obj.error;\n }\n }\n\n /**\n * Inheritance property\n */\n ErrorResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ErrorResponseWSMessage.prototype.constructor = ErrorResponseWSMessage;\n\n /**\n * Get the error\n *\n * @method getError\n * @returns {String}\n */\n ErrorResponseWSMessage.prototype.getError = function () {\n return this.error;\n };\n\n // Export\n scope.ErrorResponseWSMessage = ErrorResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition init message\n *\n * @class InitResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function InitResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n InitResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n InitResponseWSMessage.prototype.constructor = InitResponseWSMessage;\n\n // Export\n scope.InitResponseWSMessage = InitResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text ink ranges\n *\n * @class TextInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function TextInkRange(obj) {\n if (obj) {\n var cpt = obj.split(/[:-]+/);\n this.startUnit = Number(cpt[0]);\n this.startComponent = Number(cpt[1]);\n this.startPoint = Number(cpt[2]);\n this.endUnit = Number(cpt[3]);\n this.endComponent = Number(cpt[4]);\n this.endPoint = Number(cpt[5]);\n }\n }\n\n /**\n * Get start unit\n *\n * @method getStartUnit\n * @returns {Number}\n */\n TextInkRange.prototype.getStartUnit = function () {\n return this.startUnit;\n };\n\n /**\n * Get end unit\n *\n * @method getEndUnit\n * @returns {Number}\n */\n TextInkRange.prototype.getEndUnit = function () {\n return this.endUnit;\n };\n\n /**\n * Get start component\n *\n * @method getStartComponent\n * @returns {Number}\n */\n TextInkRange.prototype.getStartComponent = function () {\n return this.startComponent;\n };\n\n /**\n * Get end component\n *\n * @method getEndComponent\n * @returns {Number}\n */\n TextInkRange.prototype.getEndComponent = function () {\n return this.endComponent;\n };\n\n /**\n * Get start point\n *\n * @method getStartPoint\n * @returns {Number}\n */\n TextInkRange.prototype.getStartPoint = function () {\n return this.startPoint;\n };\n\n /**\n * Get end point\n *\n * @method getEndPoint\n * @returns {Number}\n */\n TextInkRange.prototype.getEndPoint = function () {\n return this.endPoint;\n };\n\n // Export\n scope.TextInkRange = TextInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text candidate\n *\n * @class TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextCandidate(obj) {\n this.flags = [];\n if (obj) {\n this.label = obj.label;\n this.normalizedScore = obj.normalizedScore;\n this.spellingDistortionRatio = obj.spellingDistortionRatio;\n for (var j in obj.flags) {\n this.flags.push(obj.flags[j]);\n }\n }\n }\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n TextCandidate.prototype.getLabel = function () {\n return this.label;\n };\n\n /**\n * Get normalized score\n *\n * @method getNormalizedScore\n * @returns {Number}\n */\n TextCandidate.prototype.getNormalizedScore = function () {\n return this.normalizedScore;\n };\n\n /**\n * Get resemblance score\n *\n * @method getResemblanceScore\n * @returns {Number}\n */\n TextCandidate.prototype.getResemblanceScore = function () {\n return this.resemblanceScore;\n };\n\n /**\n * Get spelling distortion ratio\n *\n * @method getSpellingDistortionRatio\n * @returns {Number}\n */\n TextCandidate.prototype.getSpellingDistortionRatio = function () {\n return this.spellingDistortionRatio;\n };\n\n /**\n * Get flags\n *\n * @method getFlags\n * @returns {Array}\n */\n TextCandidate.prototype.getFlags = function () {\n return this.flags;\n };\n\n // Export\n scope.TextCandidate = TextCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextCharCandidate\n * @extends TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextCharCandidate(obj) {\n scope.TextCandidate.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextCharCandidate.prototype = new scope.TextCandidate();\n\n /**\n * Constructor property\n */\n TextCharCandidate.prototype.constructor = TextCharCandidate;\n\n // Export\n scope.TextCharCandidate = TextCharCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextWordCandidate\n * @extends TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextWordCandidate(obj) {\n scope.TextCandidate.call(this, obj);\n this.children = [];\n if (obj) {\n for (var i in obj.children) {\n this.children.push(new scope.TextCharSegment(obj.children[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextWordCandidate.prototype = new scope.TextCandidate();\n\n /**\n * Constructor property\n */\n TextWordCandidate.prototype.constructor = TextWordCandidate;\n\n /**\n * Get children\n *\n * @method getChildren\n * @returns {TextCharSegment[]}\n */\n TextWordCandidate.prototype.getChildren = function () {\n return this.children;\n };\n\n // Export\n scope.TextWordCandidate = TextWordCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextResultCandidate\n * @extends TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextResultCandidate(obj) {\n scope.TextCandidate.call(this, obj);\n this.children = [];\n if (obj) {\n for (var i in obj.children) {\n this.children.push(new scope.TextWordSegment(obj.children[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResultCandidate.prototype = new scope.TextCandidate();\n\n /**\n * Constructor property\n */\n TextResultCandidate.prototype.constructor = TextResultCandidate;\n\n /**\n * Get children\n *\n * @method getChildren\n * @returns {TextWordSegment[]}\n */\n TextResultCandidate.prototype.getChildren = function () {\n return this.children;\n };\n\n // Export\n scope.TextResultCandidate = TextResultCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text document\n *\n * @class TextDocument\n * @param {Object} [obj]\n * @constructor\n */\n function TextDocument(obj) {\n this.tagItems = [];\n this.wordCandidates = [];\n this.charCandidates = [];\n if (obj) {\n if (obj.textSegmentResult) {\n this.textSegmentResult = new scope.TextResultSegment(obj.textSegmentResult);\n }\n for (var i in obj.tagItems) {\n this.tagItems.push(new scope.TextTagItem(obj.tagItems[i]));\n }\n for (var j in obj.wordCandidates) {\n this.wordCandidates.push(new scope.TextWordSegment(obj.wordCandidates[j]));\n }\n for (var k in obj.charCandidates) {\n this.charCandidates.push(new scope.TextCharSegment(obj.charCandidates[k]));\n }\n }\n }\n\n /**\n * Get tag items\n *\n * @method getTagItems\n * @returns {TextTagItem[]}\n */\n TextDocument.prototype.getTagItems = function () {\n return this.tagItems;\n };\n\n /**\n * Get word segments\n *\n * @method getWordSegments\n * @returns {TextWordSegment[]}\n */\n TextDocument.prototype.getWordSegments = function () {\n return this.wordCandidates;\n };\n\n /**\n * Get word segment\n *\n * @method getWordSegment\n * @param {TextInkRange[]} inkRanges\n * @returns {TextWordSegment}\n */\n TextDocument.prototype.getWordSegment = function (inkRanges) {\n for (var i = 0; i < this.getWordSegments().length; i++) {\n if (JSON.stringify(this.getWordSegments()[i].getInkRanges()) === JSON.stringify(inkRanges)) {\n return this.getWordSegments()[i];\n }\n }\n return undefined;\n };\n\n /**\n * Get char segments\n *\n * @method getCharSegments\n * @returns {TextCharSegment[]}\n */\n TextDocument.prototype.getCharSegments = function () {\n return this.charCandidates;\n };\n\n /**\n * Get char segment\n *\n * @method getCharSegment\n * @param {TextInkRange[]} inkRanges\n * @returns {TextCharSegment}\n */\n TextDocument.prototype.getCharSegment = function (inkRanges) {\n for (var i = 0; i < this.getCharSegments().length; i++) {\n if (JSON.stringify(this.getCharSegments()[i].getInkRanges()) === JSON.stringify(inkRanges)) {\n return this.getCharSegments()[i];\n }\n }\n return undefined;\n };\n\n /**\n * Get text segment\n *\n * @method getTextSegment\n * @returns {TextResultSegment}\n */\n TextDocument.prototype.getTextSegment = function () {\n return this.textSegmentResult;\n };\n\n // Export\n scope.TextDocument = TextDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text result\n *\n * @class TextResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function TextResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n if (obj.result) {\n this.result = new scope.TextDocument(obj.result);\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n TextResult.prototype.constructor = TextResult;\n\n /**\n * Get text document\n *\n * @method getTextDocument\n * @returns {TextDocument}\n */\n TextResult.prototype.getTextDocument = function () {\n return this.result;\n };\n\n // Export\n scope.TextResult = TextResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextSegment(obj) {\n this.candidates = [];\n this.inkRanges = [];\n if (obj) {\n this.selectedCandidateIdx = obj.selectedCandidateIdx;\n if (obj.inkRanges) {\n var ranges = obj.inkRanges.split(/[\\s]+/);\n for (var j in ranges) {\n this.inkRanges.push(new scope.TextInkRange(ranges[j]));\n }\n }\n }\n }\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {TextCandidate[]}\n */\n TextSegment.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n TextSegment.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidateIdx;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {TextCandidate}\n */\n TextSegment.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidateIdx !== undefined)) {\n return this.candidates[this.selectedCandidateIdx];\n }\n return undefined;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {TextInkRange[]}\n */\n TextSegment.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.TextSegment = TextSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextCharSegment\n * @extends TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextCharSegment(obj) {\n scope.TextSegment.call(this, obj);\n if (obj) {\n for (var i in obj.candidates) {\n this.candidates.push(new scope.TextCharCandidate(obj.candidates[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextCharSegment.prototype = new scope.TextSegment();\n\n /**\n * Constructor property\n */\n TextCharSegment.prototype.constructor = TextCharSegment;\n\n // Export\n scope.TextCharSegment = TextCharSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextWordSegment\n * @extends TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextWordSegment(obj) {\n scope.TextSegment.call(this, obj);\n if (obj) {\n for (var i in obj.candidates) {\n this.candidates.push(new scope.TextWordCandidate(obj.candidates[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextWordSegment.prototype = new scope.TextSegment();\n\n /**\n * Constructor property\n */\n TextWordSegment.prototype.constructor = TextWordSegment;\n\n // Export\n scope.TextWordSegment = TextWordSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextResultSegment\n * @extends TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextResultSegment(obj) {\n scope.TextSegment.call(this, obj);\n if (obj) {\n for (var i in obj.candidates) {\n this.candidates.push(new scope.TextResultCandidate(obj.candidates[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResultSegment.prototype = new scope.TextSegment();\n\n /**\n * Constructor property\n */\n TextResultSegment.prototype.constructor = TextResultSegment;\n\n // Export\n scope.TextResultSegment = TextResultSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text tag item\n *\n * @class TextTagItem\n * @param {Object} [obj]\n * @constructor\n */\n function TextTagItem(obj) {\n this.inkRanges = [];\n if (obj) {\n this.tagType = obj.tagType;\n if (obj.inkRanges) {\n var ranges = obj.inkRanges.split(/[\\s]+/);\n for (var i in ranges) {\n this.inkRanges.push(new scope.TextInkRange(ranges[i]));\n }\n }\n }\n }\n\n /**\n * Get tag type\n *\n * @method getTagType\n * @returns {String}\n */\n TextTagItem.prototype.getTagType = function () {\n return this.tagType;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {TextInkRange[]}\n */\n TextTagItem.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.TextTagItem = TextTagItem;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition text result message\n *\n * @class TextResponseWSMessage\n * @extends AbstractRecoResponseWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function TextResponseWSMessage(obj) {\n scope.AbstractRecoResponseWSMessage.call(this, obj);\n if (obj) {\n if (obj.result) {\n this.result = new scope.TextDocument(obj.result);\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResponseWSMessage.prototype = new scope.AbstractRecoResponseWSMessage();\n\n /**\n * Constructor property\n */\n TextResponseWSMessage.prototype.constructor = TextResponseWSMessage;\n\n /**\n * Get text document\n *\n * @method getTextDocument\n * @returns {TextDocument}\n */\n TextResponseWSMessage.prototype.getTextDocument = function () {\n return this.result;\n };\n\n // Export\n scope.TextResponseWSMessage = TextResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract shape primitive\n *\n * @class AbstractShapePrimitive\n * @param {Object} [obj]\n * @constructor\n */\n function AbstractShapePrimitive(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AbstractShapePrimitive.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is line\n *\n * @method isLine\n * @returns {Boolean}\n */\n AbstractShapePrimitive.prototype.isLine = function () {\n return this.type === 'line';\n };\n\n /**\n * Is ellipse\n *\n * @method isEllipse\n * @returns {Boolean}\n */\n AbstractShapePrimitive.prototype.isEllipse = function () {\n return this.type === 'ellipse';\n };\n\n // Export\n scope.AbstractShapePrimitive = AbstractShapePrimitive;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract decorated shape\n *\n * @class AbstractDecoratedShape\n * @extends AbstractShapePrimitive\n * @param {Object} [obj]\n * @constructor\n */\n function AbstractDecoratedShape(obj) {\n scope.AbstractShapePrimitive.call(this, obj);\n if (obj) {\n this.beginDecoration = obj.beginDecoration;\n this.beginTangentAngle = obj.beginTangentAngle;\n this.endDecoration = obj.endDecoration;\n this.endTangentAngle = obj.endTangentAngle;\n }\n }\n\n /**\n * Inheritance property\n */\n AbstractDecoratedShape.prototype = new scope.AbstractShapePrimitive();\n\n /**\n * Constructor property\n */\n AbstractDecoratedShape.prototype.constructor = AbstractDecoratedShape;\n\n /**\n * Has begin decoration\n *\n * @method hasBeginDecoration\n * @returns {Boolean}\n */\n AbstractDecoratedShape.prototype.hasBeginDecoration = function () {\n return typeof this.beginDecoration !== 'undefined';\n };\n\n /**\n * Has end decoration\n *\n * @method hasEndDecoration\n * @returns {Boolean}\n */\n AbstractDecoratedShape.prototype.hasEndDecoration = function () {\n return typeof this.endDecoration !== 'undefined';\n };\n\n /**\n * Get begin decoration\n *\n * @method getBeginDecoration\n * @returns {String}\n */\n AbstractDecoratedShape.prototype.getBeginDecoration = function () {\n return this.beginDecoration;\n };\n\n /**\n * Get end decoration\n *\n * @method getEndDecoration\n * @returns {String}\n */\n AbstractDecoratedShape.prototype.getEndDecoration = function () {\n return this.endDecoration;\n };\n\n /**\n * Get begin tangent angle\n *\n * @method getBeginTangentAngle\n * @returns {Number}\n */\n AbstractDecoratedShape.prototype.getBeginTangentAngle = function () {\n return this.beginTangentAngle;\n };\n\n /**\n * Get end tangent angle\n *\n * @method getEndTangentAngle\n * @returns {Number}\n */\n AbstractDecoratedShape.prototype.getEndTangentAngle = function () {\n return this.endTangentAngle;\n };\n\n // Export\n scope.AbstractDecoratedShape = AbstractDecoratedShape;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape candidate\n *\n * @class ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeCandidate(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n ShapeCandidate.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is erased\n *\n * @method isErased\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isErased = function () {\n return this.type === 'erased';\n };\n\n /**\n * Is scratch-out\n *\n * @method isScratchOut\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isScratchOut = function () {\n return this.type === 'scratchOut';\n };\n\n /**\n * Is not recognized\n *\n * @method isNotRecognized\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isNotRecognized = function () {\n return this.type === 'notRecognized';\n };\n\n /**\n * Is recognized\n *\n * @method isRecognized\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isRecognized = function () {\n return this.type === 'recognizedShape';\n };\n\n // Export\n scope.ShapeCandidate = ShapeCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape document\n *\n * @class ShapeDocument\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeDocument(obj) {\n this.segments = [];\n if (obj) {\n for (var i in obj.segments) {\n this.segments.push(new scope.ShapeSegment(obj.segments[i]));\n }\n }\n }\n\n /**\n * Get segments\n *\n * @method getSegments\n * @returns {ShapeSegment[]}\n */\n ShapeDocument.prototype.getSegments = function () {\n return this.segments;\n };\n\n // Export\n scope.ShapeDocument = ShapeDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape ellipse\n *\n * @class ShapeEllipse\n * @extends AbstractDecoratedShape\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeEllipse(obj) {\n scope.AbstractDecoratedShape.call(this, obj);\n if (obj) {\n this.center = new scope.Point(obj.center);\n this.minRadius = obj.minRadius;\n this.maxRadius = obj.maxRadius;\n this.orientation = obj.orientation;\n this.startAngle = obj.startAngle;\n this.sweepAngle = obj.sweepAngle;\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeEllipse.prototype = new scope.AbstractDecoratedShape();\n\n /**\n * Constructor property\n */\n ShapeEllipse.prototype.constructor = ShapeEllipse;\n\n /**\n * Get center\n *\n * @method getCenter\n * @returns {Point}\n */\n ShapeEllipse.prototype.getCenter = function () {\n return this.center;\n };\n\n /**\n * Get min radius\n *\n * @method getMinRadius\n * @returns {Number}\n */\n ShapeEllipse.prototype.getMinRadius = function () {\n return this.minRadius;\n };\n\n /**\n * Get max radius\n *\n * @method getMaxRadius\n * @returns {Number}\n */\n ShapeEllipse.prototype.getMaxRadius = function () {\n return this.maxRadius;\n };\n\n /**\n * Get orientation\n *\n * @method getOrientation\n * @returns {String}\n */\n ShapeEllipse.prototype.getOrientation = function () {\n return this.orientation;\n };\n\n /**\n * Get start angle\n *\n * @method getStartAngle\n * @returns {Number}\n */\n ShapeEllipse.prototype.getStartAngle = function () {\n return this.startAngle;\n };\n\n /**\n * Get sweep angle\n *\n * @method getSweepAngle\n * @returns {Number}\n */\n ShapeEllipse.prototype.getSweepAngle = function () {\n return this.sweepAngle;\n };\n\n // Export\n scope.ShapeEllipse = ShapeEllipse;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape erased\n *\n * @class ShapeErased\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeErased(obj) {\n scope.ShapeCandidate.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ShapeErased.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeErased.prototype.constructor = ShapeErased;\n\n // Export\n scope.ShapeErased = ShapeErased;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape ink range\n *\n * @class ShapeInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeInkRange(obj) {\n if (obj) {\n this.firstStroke = obj.firstStroke;\n this.lastStroke = obj.lastStroke;\n this.firstPoint = obj.firstPoint;\n this.lastPoint = obj.lastPoint;\n }\n }\n\n /**\n * Get first stroke\n *\n * @method getFirstStroke\n * @returns {Number}\n */\n ShapeInkRange.prototype.getFirstStroke = function () {\n return this.firstStroke;\n };\n\n /**\n * Get last stroke\n *\n * @method getLastStroke\n * @returns {Number}\n */\n ShapeInkRange.prototype.getLastStroke = function () {\n return this.lastStroke;\n };\n\n /**\n * Get first point\n *\n * @method getFirstPoint\n * @returns {Point}\n */\n ShapeInkRange.prototype.getFirstPoint = function () {\n return this.firstPoint;\n };\n\n /**\n * Get last point\n *\n * @method getLastPoint\n * @returns {Point}\n */\n ShapeInkRange.prototype.getLastPoint = function () {\n return this.lastPoint;\n };\n\n // Export\n scope.ShapeInkRange = ShapeInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape line\n *\n * @class ShapeLine\n * @extends AbstractDecoratedShape\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeLine(obj) {\n scope.AbstractDecoratedShape.call(this, obj);\n if (obj) {\n this.firstPoint = new scope.Point(obj.firstPoint);\n this.lastPoint = new scope.Point(obj.lastPoint);\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeLine.prototype = new scope.AbstractDecoratedShape();\n\n /**\n * Constructor property\n */\n ShapeLine.prototype.constructor = ShapeLine;\n\n /**\n * Get first point\n *\n * @method getFirstPoint\n * @returns {Point}\n */\n ShapeLine.prototype.getFirstPoint = function () {\n return this.firstPoint;\n };\n\n /**\n * Get last point\n *\n * @method getLastPoint\n * @returns {Point}\n */\n ShapeLine.prototype.getLastPoint = function () {\n return this.lastPoint;\n };\n\n // Export\n scope.ShapeLine = ShapeLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape not recognized\n *\n * @class ShapeNotRecognized\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeNotRecognized(obj) {\n scope.ShapeCandidate.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ShapeNotRecognized.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeNotRecognized.prototype.constructor = ShapeNotRecognized;\n\n // Export\n scope.ShapeNotRecognized = ShapeNotRecognized;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape recognized\n *\n * @class ShapeRecognized\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeRecognized(obj) {\n scope.ShapeCandidate.call(this, obj);\n this.primitives = [];\n if (obj) {\n this.label = obj.label;\n this.normalizedRecognitionScore = obj.normalizedRecognitionScore;\n this.resemblanceScore = obj.resemblanceScore;\n for (var i in obj.primitives) {\n switch (obj.primitives[i].type) {\n case 'line':\n this.primitives.push(new scope.ShapeLine(obj.primitives[i]));\n break;\n case 'ellipse':\n this.primitives.push(new scope.ShapeEllipse(obj.primitives[i]));\n break;\n default:\n throw new Error('Unknown shape primitive');\n }\n }\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognized.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeRecognized.prototype.constructor = ShapeRecognized;\n\n /**\n * Get primitives\n *\n * @method getPrimitives\n * @returns {AbstractDecoratedShape[]}\n */\n ShapeRecognized.prototype.getPrimitives = function () {\n return this.primitives;\n };\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n ShapeRecognized.prototype.getLabel = function () {\n return this.label;\n };\n\n /**\n * Get normalized score\n *\n * @method getNormalizedRecognitionScore\n * @returns {Number}\n */\n ShapeRecognized.prototype.getNormalizedRecognitionScore = function () {\n return this.normalizedRecognitionScore;\n };\n\n /**\n * Get resemblance score\n *\n * @method getResemblanceScore\n * @returns {Number}\n */\n ShapeRecognized.prototype.getResemblanceScore = function () {\n return this.resemblanceScore;\n };\n\n // Export\n scope.ShapeRecognized = ShapeRecognized;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape result\n *\n * @class ShapeResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.ShapeDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n ShapeResult.prototype.constructor = ShapeResult;\n\n /**\n * Get shape document\n *\n * @method getShapeDocument\n * @returns {ShapeDocument}\n */\n ShapeResult.prototype.getShapeDocument = function () {\n return this.result;\n };\n\n // Export\n scope.ShapeResult = ShapeResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape scratch-out\n *\n * @class ShapeScratchOut\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeScratchOut(obj) {\n scope.ShapeCandidate.call(this, obj);\n this.inkRanges = [];\n if (obj) {\n for (var j in obj.inkRanges) {\n this.inkRanges.push(new scope.ShapeInkRange(obj.inkRanges[j]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeScratchOut.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeScratchOut.prototype.constructor = ShapeScratchOut;\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {ShapeInkRange[]}\n */\n ShapeScratchOut.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.ShapeScratchOut = ShapeScratchOut;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape segment\n *\n * @class ShapeSegment\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeSegment(obj) {\n this.inkRanges = [];\n this.candidates = [];\n if (obj) {\n this.elementType = obj.elementType;\n this.uniqueID = obj.uniqueID;\n this.selectedCandidateIndex = obj.selectedCandidateIndex;\n for (var i in obj.candidates) {\n switch (obj.candidates[i].type) {\n case 'erased':\n this.candidates.push(new scope.ShapeErased(obj.candidates[i]));\n break;\n case 'scratchOut':\n this.candidates.push(new scope.ShapeScratchOut(obj.candidates[i]));\n break;\n case 'recognizedShape':\n this.candidates.push(new scope.ShapeRecognized(obj.candidates[i]));\n break;\n default:\n this.candidates.push(new scope.ShapeNotRecognized(obj.candidates[i]));\n break;\n }\n }\n for (var j in obj.inkRanges) {\n this.inkRanges.push(new scope.ShapeInkRange(obj.inkRanges[j]));\n }\n }\n }\n\n /**\n * Get element type\n *\n * @method getElementType\n * @returns {String}\n */\n ShapeSegment.prototype.getElementType = function () {\n return this.elementType;\n };\n\n /**\n * Get unique id\n *\n * @method getUniqueId\n * @returns {String}\n */\n ShapeSegment.prototype.getUniqueId = function () {\n return this.uniqueID;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {ShapeInkRange[]}\n */\n ShapeSegment.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n ShapeSegment.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidateIndex;\n };\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {ShapeCandidate[]}\n */\n ShapeSegment.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {ShapeCandidate}\n */\n ShapeSegment.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidateIndex !== undefined)) {\n return this.candidates[this.selectedCandidateIndex];\n }\n return undefined;\n };\n\n // Export\n scope.ShapeSegment = ShapeSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math node\n *\n * @class MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathNode(obj) {\n if (obj) {\n this.name = obj.name;\n this.type = obj.type;\n }\n }\n\n /**\n * Get name\n *\n * @method getName\n * @returns {String}\n */\n MathNode.prototype.getName = function () {\n return this.name;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MathNode.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MathNode = MathNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math non-terminal node\n *\n * @class MathNonTerminalNode\n * @extends MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathNonTerminalNode(obj) {\n scope.MathNode.call(this, obj);\n this.candidates = [];\n if (obj) {\n this.selectedCandidate = obj.selectedCandidate;\n for (var i in obj.candidates) {\n switch (obj.candidates[i].type) {\n case 'nonTerminalNode':\n switch (obj.candidates[i].name) {\n case 'term':\n this.candidates.push(new scope.MathTermNonTerminalNode(obj.candidates[i]));\n break;\n case 'sqrtTerm':\n this.candidates.push(new scope.MathSqrtNonTerminalNode(obj.candidates[i]));\n break;\n case 'vectorTerm':\n this.candidates.push(new scope.MathVectorNonTerminalNode(obj.candidates[i]));\n break;\n case 'system':\n this.candidates.push(new scope.MathSystemNonTerminalNode(obj.candidates[i]));\n break;\n case 'exponentiable':\n this.candidates.push(new scope.MathExponentiableNonTerminalNode(obj.candidates[i]));\n break;\n case 'expression':\n this.candidates.push(new scope.MathExpressionNonTerminalNode(obj.candidates[i]));\n break;\n default:\n throw new Error('Unknown nonTerminalNode');\n }\n break;\n case 'terminalNode':\n this.candidates.push(new scope.MathTerminalNode(obj.candidates[i]));\n break;\n case 'rule':\n switch (obj.candidates[i].name) {\n case 'identity':\n this.candidates.push(new scope.MathIdentityRuleNode(obj.candidates[i]));\n break;\n case 'horizontal pair':\n this.candidates.push(new scope.MathHorizontalPairRuleNode(obj.candidates[i]));\n break;\n case 'fence':\n this.candidates.push(new scope.MathFenceRuleNode(obj.candidates[i]));\n break;\n case 'fraction':\n this.candidates.push(new scope.MathFractionRuleNode(obj.candidates[i]));\n break;\n case 'sqrt':\n this.candidates.push(new scope.MathSqrtRuleNode(obj.candidates[i]));\n break;\n case 'subscript':\n this.candidates.push(new scope.MathSubscriptRuleNode(obj.candidates[i]));\n break;\n case 'superscript':\n this.candidates.push(new scope.MathSuperscriptRuleNode(obj.candidates[i]));\n break;\n case 'subsuperscript':\n this.candidates.push(new scope.MathSubSuperscriptRuleNode(obj.candidates[i]));\n break;\n case 'underscript':\n this.candidates.push(new scope.MathUnderscriptRuleNode(obj.candidates[i]));\n break;\n case 'overscript':\n this.candidates.push(new scope.MathOverscriptRuleNode(obj.candidates[i]));\n break;\n case 'underoverscript':\n this.candidates.push(new scope.MathUnderOverscriptRuleNode(obj.candidates[i]));\n break;\n case 'presuperscript':\n this.candidates.push(new scope.MathPreSuperscriptRuleNode(obj.candidates[i]));\n break;\n case 'vertical pair':\n this.candidates.push(new scope.MathVerticalPairRuleNode(obj.candidates[i]));\n break;\n case 'left fence':\n this.candidates.push(new scope.MathLeftFenceRuleNode(obj.candidates[i]));\n break;\n default:\n throw new Error('Unknown ruleNode');\n }\n break;\n default:\n throw new Error('Unknown math node type');\n }\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MathNonTerminalNode.prototype = new scope.MathNode();\n\n /**\n * Constructor property\n */\n MathNonTerminalNode.prototype.constructor = MathNonTerminalNode;\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {MathNode[]}\n */\n MathNonTerminalNode.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n MathNonTerminalNode.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidate;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {MathNode}\n */\n MathNonTerminalNode.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidate !== undefined)) {\n return this.candidates[this.selectedCandidate];\n }\n return undefined;\n };\n\n /**\n * Get bounding box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n MathNonTerminalNode.prototype.getBoundingBox = function () {\n return this.getSelectedCandidate() ? this.getSelectedCandidate().getBoundingBox() : undefined;\n };\n\n // Export\n scope.MathNonTerminalNode = MathNonTerminalNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract math result\n *\n * @class MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathResultElement(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MathResultElement.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is LaTeX result\n *\n * @method isLatex\n * @returns {Boolean}\n */\n MathResultElement.prototype.isLaTex = function () {\n return this.type === 'LATEX';\n };\n\n /**\n * Is MathML result\n *\n * @method isMathMl\n * @returns {Boolean}\n */\n MathResultElement.prototype.isMathMl = function () {\n return this.type === 'MATHML';\n };\n\n /**\n * Is SymbolTree result\n *\n * @method isSymbolTree\n * @returns {Boolean}\n */\n MathResultElement.prototype.isSymbolTree = function () {\n return this.type === 'SYMBOLTREE';\n };\n\n // Export\n scope.MathResultElement = MathResultElement;\n})(MyScript);","(function (scope) {\n 'use strict';\n /**\n * Math rule node\n *\n * @class MathRuleNode\n * @extends MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathRuleNode(obj) {\n scope.MathNode.call(this, obj);\n this.children = [];\n if (obj) {\n this.name = obj.name;\n for (var i in obj.children) {\n switch (obj.children[i].type) {\n case 'nonTerminalNode':\n switch (obj.children[i].name) {\n case 'term':\n this.children.push(new scope.MathTermNonTerminalNode(obj.children[i]));\n break;\n case 'sqrtTerm':\n this.children.push(new scope.MathSqrtNonTerminalNode(obj.children[i]));\n break;\n case 'vectorTerm':\n this.children.push(new scope.MathVectorNonTerminalNode(obj.children[i]));\n break;\n case 'system':\n this.children.push(new scope.MathSystemNonTerminalNode(obj.children[i]));\n break;\n case 'exponentiable':\n this.children.push(new scope.MathExponentiableNonTerminalNode(obj.children[i]));\n break;\n case 'expression':\n this.children.push(new scope.MathExpressionNonTerminalNode(obj.children[i]));\n break;\n default:\n throw new Error('Unknown nonTerminalNode');\n }\n break;\n case 'terminalNode':\n this.children.push(new scope.MathTerminalNode(obj.children[i]));\n break;\n case 'rule':\n switch (obj.children[i].name) {\n case 'identity':\n this.children.push(new scope.MathIdentityRuleNode(obj.children[i]));\n break;\n case 'horizontal pair':\n this.children.push(new scope.MathHorizontalPairRuleNode(obj.children[i]));\n break;\n case 'fence':\n this.children.push(new scope.MathFenceRuleNode(obj.children[i]));\n break;\n case 'fraction':\n this.children.push(new scope.MathFractionRuleNode(obj.children[i]));\n break;\n case 'sqrt':\n this.children.push(new scope.MathSqrtRuleNode(obj.children[i]));\n break;\n case 'subscript':\n this.children.push(new scope.MathSubscriptRuleNode(obj.children[i]));\n break;\n case 'superscript':\n this.children.push(new scope.MathSuperscriptRuleNode(obj.children[i]));\n break;\n case 'subsuperscript':\n this.children.push(new scope.MathSubSuperscriptRuleNode(obj.children[i]));\n break;\n case 'underscript':\n this.children.push(new scope.MathUnderscriptRuleNode(obj.children[i]));\n break;\n case 'overscript':\n this.children.push(new scope.MathOverscriptRuleNode(obj.children[i]));\n break;\n case 'underoverscript':\n this.children.push(new scope.MathUnderOverscriptRuleNode(obj.children[i]));\n break;\n case 'presuperscript':\n this.children.push(new scope.MathPreSuperscriptRuleNode(obj.children[i]));\n break;\n case 'vertical pair':\n this.children.push(new scope.MathVerticalPairRuleNode(obj.children[i]));\n break;\n case 'left fence':\n this.children.push(new scope.MathLeftFenceRuleNode(obj.children[i]));\n break;\n default:\n throw new Error('Unknown ruleNode');\n }\n break;\n default:\n throw new Error('Unknown math node type');\n }\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MathRuleNode.prototype = new scope.MathNode();\n\n /**\n * Constructor property\n */\n MathRuleNode.prototype.constructor = MathRuleNode;\n\n /**\n * Get name\n *\n * @method getName\n * @returns {String}\n */\n MathRuleNode.prototype.getName = function () {\n return this.name;\n };\n\n /**\n * Get children\n *\n * @method getChildren\n * @returns {MathNode[]}\n */\n MathRuleNode.prototype.getChildren = function () {\n return this.children;\n };\n\n // Export\n scope.MathRuleNode = MathRuleNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math document\n *\n * @class MathDocument\n * @param {Object} [obj]\n * @constructor\n */\n function MathDocument(obj) {\n this.results = [];\n this.scratchOutResults = [];\n if (obj) {\n for (var i in obj.results) {\n var result = obj.results[i];\n switch (result.type) {\n case 'MATHML':\n this.results.push(new scope.MathMathMLResultElement(result));\n break;\n case 'LATEX':\n this.results.push(new scope.MathLaTexResultElement(result));\n break;\n case 'SYMBOLTREE':\n this.results.push(new scope.MathSymbolTreeResultElement(result));\n break;\n default:\n throw new Error('Unknown math result type');\n }\n }\n for (var j in obj.scratchOutResults) {\n this.scratchOutResults.push(new scope.MathScratchOut(obj.scratchOutResults[j]));\n }\n }\n }\n\n /**\n * Get result elements\n *\n * @method getResultElements\n * @returns {MathResultElement[]}\n */\n MathDocument.prototype.getResultElements = function () {\n return this.results;\n };\n\n /**\n * Get scratch-out results\n *\n * @method getScratchOutResults\n * @returns {MathScratchOut[]}\n */\n MathDocument.prototype.getScratchOutResults = function () {\n return this.scratchOutResults;\n };\n\n // Export\n scope.MathDocument = MathDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math ink range\n *\n * @class MathInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function MathInkRange(obj) {\n if (obj) {\n this.component = obj.component;\n this.firstItem = obj.firstItem;\n this.lastItem = obj.lastItem;\n }\n }\n\n /**\n * Get component\n *\n * @method getComponent\n * @returns {Number}\n */\n MathInkRange.prototype.getComponent = function () {\n return this.component;\n };\n\n /**\n * Get first item\n *\n * @method getFirstItem\n * @returns {Number}\n */\n MathInkRange.prototype.getFirstItem = function () {\n return this.firstItem;\n };\n\n /**\n * Get last item\n *\n * @method getLastItem\n * @returns {Number}\n */\n MathInkRange.prototype.getLastItem = function () {\n return this.lastItem;\n };\n\n // Export\n scope.MathInkRange = MathInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * LaTex result element\n *\n * @class MathLaTexResultElement\n * @extends MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathLaTexResultElement(obj) {\n scope.MathResultElement.call(this, obj);\n if (obj) {\n this.value = obj.value;\n }\n }\n\n /**\n * Inheritance property\n */\n MathLaTexResultElement.prototype = new scope.MathResultElement();\n\n /**\n * Constructor property\n */\n MathLaTexResultElement.prototype.constructor = MathLaTexResultElement;\n\n /**\n * Get value\n *\n * @method getValue\n * @returns {String}\n */\n MathLaTexResultElement.prototype.getValue = function () {\n return this.value;\n };\n\n // Export\n scope.MathLaTexResultElement = MathLaTexResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * MathML result element\n *\n * @class MathMathMLResultElement\n * @extends MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathMathMLResultElement(obj) {\n scope.MathResultElement.call(this, obj);\n if (obj) {\n this.value = obj.value;\n }\n }\n\n /**\n * Inheritance property\n */\n MathMathMLResultElement.prototype = new scope.MathResultElement();\n\n /**\n * Constructor property\n */\n MathMathMLResultElement.prototype.constructor = MathMathMLResultElement;\n\n /**\n * Get value\n *\n * @method getValue\n * @returns {String}\n */\n MathMathMLResultElement.prototype.getValue = function () {\n return this.value;\n };\n\n // Export\n scope.MathMathMLResultElement = MathMathMLResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math result\n *\n * @class MathResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function MathResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.MathDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n MathResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n MathResult.prototype.constructor = MathResult;\n\n /**\n * Get math document\n *\n * @method getMathDocument\n * @returns {MathDocument}\n */\n MathResult.prototype.getMathDocument = function () {\n return this.result;\n };\n\n // Export\n scope.MathResult = MathResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math scratch-out\n *\n * @class MathScratchOut\n * @param {Object} [obj]\n * @constructor\n */\n function MathScratchOut(obj) {\n this.inkRanges = [];\n this.erasedInkRanges = [];\n if (obj) {\n for (var i in obj.inkRanges) {\n this.inkRanges.push(new scope.MathInkRange(obj.inkRanges[i]));\n }\n for (var j in obj.erasedInkRanges) {\n this.erasedInkRanges.push(new scope.MathInkRange(obj.erasedInkRanges[j]));\n }\n }\n }\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {MathInkRange[]}\n */\n MathScratchOut.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get erased ink ranges\n *\n * @method getErasedInkRanges\n * @returns {MathInkRange[]}\n */\n MathScratchOut.prototype.getErasedInkRanges = function () {\n return this.erasedInkRanges;\n };\n\n // Export\n scope.MathScratchOut = MathScratchOut;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math symbol tree\n *\n * @class MathSymbolTreeResultElement\n * @extends MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathSymbolTreeResultElement(obj) {\n scope.MathResultElement.call(this, obj);\n if (obj) {\n switch (obj.root.type) {\n case 'nonTerminalNode':\n switch (obj.root.name) {\n case 'term':\n this.root = new scope.MathTermNonTerminalNode(obj.root);\n break;\n case 'sqrtTerm':\n this.root = new scope.MathSqrtNonTerminalNode(obj.root);\n break;\n case 'vectorTerm':\n this.root = new scope.MathVectorNonTerminalNode(obj.root);\n break;\n case 'system':\n this.root = new scope.MathSystemNonTerminalNode(obj.root);\n break;\n case 'exponentiable':\n this.root = new scope.MathExponentiableNonTerminalNode(obj.root);\n break;\n case 'expression':\n this.root = new scope.MathExpressionNonTerminalNode(obj.root);\n break;\n default:\n throw new Error('Unknown nonTerminalNode');\n }\n break;\n case 'terminalNode':\n this.root = new scope.MathTerminalNode(obj.root);\n break;\n case 'rule':\n switch (obj.root.name) {\n case 'identity':\n this.root = new scope.MathIdentityRuleNode(obj.root);\n break;\n case 'horizontal pair':\n this.root = new scope.MathHorizontalPairRuleNode(obj.root);\n break;\n case 'fence':\n this.root = new scope.MathFenceRuleNode(obj.root);\n break;\n case 'fraction':\n this.root = new scope.MathFractionRuleNode(obj.root);\n break;\n case 'sqrt':\n this.root = new scope.MathSqrtRuleNode(obj.root);\n break;\n case 'subscript':\n this.root = new scope.MathSubscriptRuleNode(obj.root);\n break;\n case 'superscript':\n this.root = new scope.MathSuperscriptRuleNode(obj.root);\n break;\n case 'subsuperscript':\n this.root = new scope.MathSubSuperscriptRuleNode(obj.root);\n break;\n case 'underscript':\n this.root = new scope.MathUnderscriptRuleNode(obj.root);\n break;\n case 'overscript':\n this.root = new scope.MathOverscriptRuleNode(obj.root);\n break;\n case 'underoverscript':\n this.root = new scope.MathUnderOverscriptRuleNode(obj.root);\n break;\n case 'presuperscript':\n this.root = new scope.MathPreSuperscriptRuleNode(obj.root);\n break;\n case 'vertical pair':\n this.root = new scope.MathVerticalPairRuleNode(obj.root);\n break;\n case 'left fence':\n this.root = new scope.MathLeftFenceRuleNode(obj.root);\n break;\n default:\n throw new Error('Unknown ruleNode');\n }\n break;\n default:\n throw new Error('Unknown math node type');\n }\n this.value = JSON.stringify(obj.root, null, ' ');\n }\n }\n\n /**\n * Inheritance property\n */\n MathSymbolTreeResultElement.prototype = new scope.MathResultElement();\n\n /**\n * Constructor property\n */\n MathSymbolTreeResultElement.prototype.constructor = MathSymbolTreeResultElement;\n\n /**\n * Get tree root\n *\n * @method getRoot\n * @returns {MathNode}\n */\n MathSymbolTreeResultElement.prototype.getRoot = function () {\n return this.root;\n };\n\n // Export\n scope.MathSymbolTreeResultElement = MathSymbolTreeResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math terminal node\n *\n * @class MathTerminalNode\n * @extends MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathTerminalNode(obj) {\n scope.MathNode.call(this, obj);\n this.candidates = [];\n this.inkRanges = [];\n if (obj) {\n this.selectedCandidate = obj.selectedCandidate;\n for (var i in obj.candidates) {\n this.candidates.push(new scope.MathTerminalNodeCandidate(obj.candidates[i]));\n }\n for (var j in obj.inkRanges) {\n this.inkRanges.push(new scope.MathInkRange(obj.inkRanges[j]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MathTerminalNode.prototype = new scope.MathNode();\n\n /**\n * Constructor property\n */\n MathTerminalNode.prototype.constructor = MathTerminalNode;\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {MathTerminalNodeCandidate[]}\n */\n MathTerminalNode.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {MathInkRange[]}\n */\n MathTerminalNode.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n MathTerminalNode.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidate;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {MathNode}\n */\n MathTerminalNode.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidate !== undefined)) {\n return this.candidates[this.selectedCandidate];\n }\n return undefined;\n };\n\n // Export\n scope.MathTerminalNode = MathTerminalNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math terminal node candidate\n *\n * @class MathTerminalNodeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function MathTerminalNodeCandidate(obj) {\n if (obj) {\n this.label = obj.label;\n this.normalizedRecognitionScore = obj.normalizedRecognitionScore;\n }\n }\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n MathTerminalNodeCandidate.prototype.getLabel = function () {\n return this.label;\n };\n\n /**\n * Get score\n *\n * @method getNormalizedRecognitionScore\n * @returns {Number}\n */\n MathTerminalNodeCandidate.prototype.getNormalizedRecognitionScore = function () {\n return this.normalizedRecognitionScore;\n };\n\n // Export\n scope.MathTerminalNodeCandidate = MathTerminalNodeCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math fence rule node\n *\n * @class MathFenceRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathFenceRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathFenceRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathFenceRuleNode.prototype.constructor = MathFenceRuleNode;\n\n // Export\n scope.MathFenceRuleNode = MathFenceRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math fraction rule node\n *\n * @class MathFractionRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathFractionRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathFractionRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathFractionRuleNode.prototype.constructor = MathFractionRuleNode;\n\n // Export\n scope.MathFractionRuleNode = MathFractionRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math horizontal pair rule node\n *\n * @class MathHorizontalPairRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathHorizontalPairRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathHorizontalPairRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathHorizontalPairRuleNode.prototype.constructor = MathHorizontalPairRuleNode;\n\n // Export\n scope.MathHorizontalPairRuleNode = MathHorizontalPairRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math identity rule node\n *\n * @class MathIdentityRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathIdentityRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathIdentityRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathIdentityRuleNode.prototype.constructor = MathIdentityRuleNode;\n\n // Export\n scope.MathIdentityRuleNode = MathIdentityRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math rule node\n *\n * @class MathLeftFenceRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathLeftFenceRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathLeftFenceRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathLeftFenceRuleNode.prototype.constructor = MathLeftFenceRuleNode;\n\n // Export\n scope.MathLeftFenceRuleNode = MathLeftFenceRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math overscript rule node\n *\n * @class MathOverscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathOverscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathOverscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathOverscriptRuleNode.prototype.constructor = MathOverscriptRuleNode;\n\n // Export\n scope.MathOverscriptRuleNode = MathOverscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math pre-superscript rule node\n *\n * @class MathPreSuperscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathPreSuperscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathPreSuperscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathPreSuperscriptRuleNode.prototype.constructor = MathPreSuperscriptRuleNode;\n\n // Export\n scope.MathPreSuperscriptRuleNode = MathPreSuperscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math sqrt rule node\n *\n * @class MathSqrtRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSqrtRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSqrtRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSqrtRuleNode.prototype.constructor = MathSqrtRuleNode;\n\n // Export\n scope.MathSqrtRuleNode = MathSqrtRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math subscript rule node\n *\n * @class MathSubscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSubscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSubscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSubscriptRuleNode.prototype.constructor = MathSubscriptRuleNode;\n\n // Export\n scope.MathSubscriptRuleNode = MathSubscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math sub-superscript rule node\n *\n * @class MathSubSuperscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSubSuperscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSubSuperscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSubSuperscriptRuleNode.prototype.constructor = MathSubSuperscriptRuleNode;\n\n // Export\n scope.MathSubSuperscriptRuleNode = MathSubSuperscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math superscript rule node\n *\n * @class MathSuperscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSuperscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSuperscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSuperscriptRuleNode.prototype.constructor = MathSuperscriptRuleNode;\n\n // Export\n scope.MathSuperscriptRuleNode = MathSuperscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math under-overscript rule node\n *\n * @class MathUnderOverscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathUnderOverscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathUnderOverscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathUnderOverscriptRuleNode.prototype.constructor = MathUnderOverscriptRuleNode;\n\n // Export\n scope.MathUnderOverscriptRuleNode = MathUnderOverscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math underscript rule node\n *\n * @class MathUnderscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathUnderscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathUnderscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathUnderscriptRuleNode.prototype.constructor = MathUnderscriptRuleNode;\n\n // Export\n scope.MathUnderscriptRuleNode = MathUnderscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math vertical pair rule node\n *\n * @class MathVerticalPairRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathVerticalPairRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathVerticalPairRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathVerticalPairRuleNode.prototype.constructor = MathVerticalPairRuleNode;\n\n // Export\n scope.MathVerticalPairRuleNode = MathVerticalPairRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math exponentiable non-terminal node\n *\n * @class MathExponentiableNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathExponentiableNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathExponentiableNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathExponentiableNonTerminalNode.prototype.constructor = MathExponentiableNonTerminalNode;\n\n // Export\n scope.MathExponentiableNonTerminalNode = MathExponentiableNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math expression non-terminal node\n *\n * @class MathExpressionNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathExpressionNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathExpressionNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathExpressionNonTerminalNode.prototype.constructor = MathExpressionNonTerminalNode;\n\n // Export\n scope.MathExpressionNonTerminalNode = MathExpressionNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathSqrtNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSqrtNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSqrtNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathSqrtNonTerminalNode.prototype.constructor = MathSqrtNonTerminalNode;\n\n // Export\n scope.MathSqrtNonTerminalNode = MathSqrtNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathVectorNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathVectorNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathVectorNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathVectorNonTerminalNode.prototype.constructor = MathVectorNonTerminalNode;\n\n // Export\n scope.MathVectorNonTerminalNode = MathVectorNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathSystemNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSystemNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSystemNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathSystemNonTerminalNode.prototype.constructor = MathSystemNonTerminalNode;\n\n // Export\n scope.MathSystemNonTerminalNode = MathSystemNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathTermNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathTermNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathTermNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathTermNonTerminalNode.prototype.constructor = MathTermNonTerminalNode;\n\n // Export\n scope.MathTermNonTerminalNode = MathTermNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition math result message\n *\n * @class MathResponseWSMessage\n * @extends AbstractRecoResponseWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function MathResponseWSMessage(obj) {\n scope.AbstractRecoResponseWSMessage.call(this, obj);\n if (obj) {\n this.result = new scope.MathDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n MathResponseWSMessage.prototype = new scope.AbstractRecoResponseWSMessage();\n\n /**\n * Constructor property\n */\n MathResponseWSMessage.prototype.constructor = MathResponseWSMessage;\n\n /**\n * Get math document\n *\n * @method getMathDocument\n * @returns {MathDocument}\n */\n MathResponseWSMessage.prototype.getMathDocument = function () {\n return this.result;\n };\n\n // Export\n scope.MathResponseWSMessage = MathResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract music element\n *\n * @class MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicElement(obj) {\n this.inputRanges = [];\n if (obj) {\n this.elementType = obj.elementType;\n this.inputRanges = obj.inputRanges;\n }\n }\n\n /**\n * Get element type\n *\n * @method getElementType\n * @returns {String}\n */\n MusicElement.prototype.getElementType = function () {\n return this.elementType;\n };\n\n /**\n * Get input ranges\n *\n * @method getInputRanges\n * @returns {MusicInputRange[]}\n */\n MusicElement.prototype.getInputRanges = function () {\n return this.inputRanges;\n };\n\n // Export\n scope.MusicElement = MusicElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract music result element\n *\n * @class MusicResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicResultElement(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicResultElement.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is MusicXML\n *\n * @method isMusicXML\n * @returns {Boolean}\n */\n MusicResultElement.prototype.isMusicXML = function () {\n return this.type === 'MUSICXML';\n };\n\n /**\n * Is ScoreTree\n *\n * @method isScoreTree\n * @returns {Boolean}\n */\n MusicResultElement.prototype.isScoreTree = function () {\n return this.type === 'SCORETREE';\n };\n\n // Export\n scope.MusicResultElement = MusicResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music accidental\n *\n * @class MusicAccidental\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicAccidental(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicAccidental.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicAccidental.prototype.constructor = MusicAccidental;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicAccidental.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicAccidental = MusicAccidental;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music annotation\n *\n * @class MusicAnnotation\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicAnnotation(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.label = obj.label;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicAnnotation.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicAnnotation.prototype.constructor = MusicAnnotation;\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n MusicAnnotation.prototype.getLabel = function () {\n return this.label;\n };\n\n // Export\n scope.MusicAnnotation = MusicAnnotation;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music arpeggiate\n *\n * @class MusicArpeggiate\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicArpeggiate(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicArpeggiate.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicArpeggiate.prototype.constructor = MusicArpeggiate;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicArpeggiate.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicArpeggiate = MusicArpeggiate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music bar\n *\n * @class MusicBar\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicBar(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n if (obj) {\n this.repeatDirection = obj.repeatDirection;\n this.style = obj.style;\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicBar.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicBar.prototype.constructor = MusicBar;\n\n /**\n * Get repeat direction\n *\n * @method getRepeatDirection\n * @returns {String}\n */\n MusicBar.prototype.getRepeatDirection = function () {\n return this.repeatDirection;\n };\n\n /**\n * Get style\n *\n * @method getStyle\n * @returns {String}\n */\n MusicBar.prototype.getStyle = function () {\n return this.style;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicBar.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n // Export\n scope.MusicBar = MusicBar;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music beam\n *\n * @class MusicBeam\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicBeam(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.placement = obj.placement;\n this.leftCount = obj.leftCount;\n this.rightCount = obj.rightCount;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicBeam.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicBeam.prototype.constructor = MusicBeam;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicBeam.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Get left count\n *\n * @method getLeftCount\n * @returns {Number}\n */\n MusicBeam.prototype.getLeftCount = function () {\n return this.leftCount;\n };\n\n /**\n * Get right count\n *\n * @method getRightCount\n * @returns {Number}\n */\n MusicBeam.prototype.getRightCount = function () {\n return this.rightCount;\n };\n\n // Export\n scope.MusicBeam = MusicBeam;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music chord\n *\n * @class MusicChord\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicChord(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n this.notes = [];\n this.beamTypes = [];\n this.ledgerLines = [];\n this.startSlurs = [];\n this.stopSlurs = [];\n if (obj) {\n this.duration = obj.duration;\n this.arpeggiate = new scope.MusicArpeggiate(obj.arpeggiate);\n this.startBeam = new scope.MusicBeam(obj.startBeam);\n this.stopBeam = new scope.MusicBeam(obj.stopBeam);\n this.stem = new scope.MusicStem(obj.stem);\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n for (var j in obj.notes) {\n this.notes.push(new scope.MusicNote(obj.notes[j]));\n }\n for (var k in obj.beamTypes) {\n this.beamTypes.push(obj.beamTypes[k]);\n }\n for (var l in obj.ledgerLines) {\n this.ledgerLines.push(new scope.MusicLedgerLine(obj.ledgerLines[l]));\n }\n for (var m in obj.startSlurs) {\n this.startSlurs.push(new scope.MusicSlur(obj.startSlurs[m]));\n }\n for (var n in obj.stopSlurs) {\n this.stopSlurs.push(new scope.MusicSlur(obj.stopSlurs[n]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicChord.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicChord.prototype.constructor = MusicChord;\n\n /**\n * Get duration\n *\n * @method getDuration\n * @returns {Number}\n */\n MusicChord.prototype.getDuration = function () {\n return this.duration;\n };\n\n /**\n * Get arpeggiate\n *\n * @method getArpeggiate\n * @returns {MusicArpeggiate}\n */\n MusicChord.prototype.getArpeggiate = function () {\n return this.arpeggiate;\n };\n\n /**\n * Get start beam\n *\n * @method getStartBeam\n * @returns {MusicBeam}\n */\n MusicChord.prototype.getStartBeam = function () {\n return this.startBeam;\n };\n\n /**\n * Get stop beam\n *\n * @method getStopBeam\n * @returns {MusicBeam}\n */\n MusicChord.prototype.getStopBeam = function () {\n return this.stopBeam;\n };\n\n /**\n * Get stem\n *\n * @method getStem\n * @returns {MusicStem}\n */\n MusicChord.prototype.getStem = function () {\n return this.stem;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicChord.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n /**\n * Get notes\n *\n * @method getNotes\n * @returns {MusicNote[]}\n */\n MusicChord.prototype.getNotes = function () {\n return this.notes;\n };\n\n /**\n * Get beam types\n *\n * @method getBeamTypes\n * @returns {Array}\n */\n MusicChord.prototype.getBeamTypes = function () {\n return this.beamTypes;\n };\n\n /**\n * Get ledger lines\n *\n * @method getLedgerLines\n * @returns {MusicLedgerLine[]}\n */\n MusicChord.prototype.getLedgerLines = function () {\n return this.ledgerLines;\n };\n\n /**\n * Get start slurs\n *\n * @method getStartSlurs\n * @returns {MusicSlur[]}\n */\n MusicChord.prototype.getStartSlurs = function () {\n return this.startSlurs;\n };\n\n /**\n * Get stop slurs\n *\n * @method getStopSlurs\n * @returns {MusicSlur[]}\n */\n MusicChord.prototype.getStopSlurs = function () {\n return this.stopSlurs;\n };\n\n // Export\n scope.MusicChord = MusicChord;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music clef\n *\n * @class MusicClef\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicClef(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.line = obj.line;\n this.octave = obj.octave;\n this.symbol = obj.symbol;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicClef.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicClef.prototype.constructor = MusicClef;\n\n /**\n * Get line\n *\n * @method getLine\n * @returns {Number}\n */\n MusicClef.prototype.getLine = function () {\n return this.line;\n };\n\n /**\n * Get octave\n *\n * @method getOctave\n * @returns {Number}\n */\n MusicClef.prototype.getOctave = function () {\n return this.octave;\n };\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicClef.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n // Export\n scope.MusicClef = MusicClef;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music decoration\n *\n * @class MusicDecoration\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicDecoration(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.symbol = obj.symbol;\n this.placement = obj.placement;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicDecoration.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicDecoration.prototype.constructor = MusicDecoration;\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicDecoration.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicDecoration.prototype.getPlacement = function () {\n return this.placement;\n };\n\n // Export\n scope.MusicDecoration = MusicDecoration;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music document\n *\n * @class MusicDocument\n * @param {Object} [obj]\n * @constructor\n */\n function MusicDocument(obj) {\n this.results = [];\n this.scratchOutResults = [];\n if (obj) {\n for (var i in obj.results) {\n switch (obj.results[i].type) {\n case 'MUSICXML':\n this.results.push(new scope.MusicXMLResultElement(obj.results[i]));\n break;\n default:\n this.results.push(new scope.MusicScoreTreeResultElement(obj.results[i]));\n break;\n }\n }\n for (var j in obj.scratchOutResults) {\n this.scratchOutResults.push(new scope.MusicScratchOut(obj.scratchOutResults[j]));\n }\n }\n }\n\n /**\n * Get result elements\n *\n * @method getResultElements\n * @returns {MusicResultElement[]}\n */\n MusicDocument.prototype.getResultElements = function () {\n return this.results;\n };\n\n /**\n * Get scratch-out results\n *\n * @method getScratchOutResults\n * @returns {MusicScratchOut[]}\n */\n MusicDocument.prototype.getScratchOutResults = function () {\n return this.scratchOutResults;\n };\n\n // Export\n scope.MusicDocument = MusicDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music dots\n *\n * @class MusicDots\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicDots(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.count = obj.count;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicDots.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicDots.prototype.constructor = MusicDots;\n\n /**\n * Get dots counts\n *\n * @method getCount\n * @returns {Number}\n */\n MusicDots.prototype.getCount = function () {\n return this.count;\n };\n\n // Export\n scope.MusicDots = MusicDots;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music head\n *\n * @class MusicHead\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicHead(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicHead.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicHead.prototype.constructor = MusicHead;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicHead.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicHead = MusicHead;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music input range\n *\n * @class MusicInputRange\n * @param {Object} [obj]\n * @constructor\n */\n function MusicInputRange(obj) {\n if (obj) {\n this.component = obj.component;\n this.firstItem = obj.firstItem;\n this.lastItem = obj.lastItem;\n }\n }\n\n /**\n * Get component\n *\n * @method getComponent\n * @returns {Number}\n */\n MusicInputRange.prototype.getComponent = function () {\n return this.component;\n };\n\n /**\n * Get first item\n *\n * @method getFirstItem\n * @returns {Number}\n */\n MusicInputRange.prototype.getFirstItem = function () {\n return this.firstItem;\n };\n\n /**\n * Get last item\n *\n * @method getLastItem\n * @returns {Number}\n */\n MusicInputRange.prototype.getLastItem = function () {\n return this.lastItem;\n };\n\n // Export\n scope.MusicInputRange = MusicInputRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music key signature\n *\n * @class MusicKeySignature\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicKeySignature(obj) {\n scope.MusicElement.call(this, obj);\n this.accidentals = [];\n if (obj) {\n this.signature = new scope.MusicKeySignatureData(obj.signature);\n for (var i in obj.accidentals) {\n this.accidentals.push(new scope.MusicAccidental(obj.accidentals[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicKeySignature.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicKeySignature.prototype.constructor = MusicKeySignature;\n\n /**\n * Get signature\n *\n * @method getSignature\n * @returns {MusicKeySignatureData}\n */\n MusicKeySignature.prototype.getSignature = function () {\n return this.signature;\n };\n\n /**\n * Get accidentals\n *\n * @method getAccidentals\n * @returns {MusicAccidental[]}\n */\n MusicKeySignature.prototype.getAccidentals = function () {\n return this.accidentals;\n };\n\n // Export\n scope.MusicKeySignature = MusicKeySignature;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music key signature data\n *\n * @class MusicKeySignatureData\n * @param {Object} [obj]\n * @constructor\n */\n function MusicKeySignatureData(obj) {\n if (obj) {\n this.fifths = obj.fifths;\n this.cancel = obj.cancel;\n }\n }\n\n /**\n * Get fifths\n *\n * @method getFifths\n * @returns {Number}\n */\n MusicKeySignatureData.prototype.getFifths = function () {\n return this.fifths;\n };\n\n /**\n * Get cancel\n *\n * @method getCancel\n * @returns {Number}\n */\n MusicKeySignatureData.prototype.getCancel = function () {\n return this.cancel;\n };\n\n // Export\n scope.MusicKeySignatureData = MusicKeySignatureData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music ledger line\n *\n * @class MusicLedgerLine\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicLedgerLine(obj) {\n scope.MusicElement.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MusicLedgerLine.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicLedgerLine.prototype.constructor = MusicLedgerLine;\n\n // Export\n scope.MusicLedgerLine = MusicLedgerLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music note\n *\n * @class MusicNote\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicNote(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n this.beamTypes = [];\n this.ledgerLines = [];\n this.startSlurs = [];\n this.stopSlurs = [];\n if (obj) {\n this.accidental = new scope.MusicAccidental(obj.accidental);\n this.dots = new scope.MusicDots(obj.dots);\n this.duration = obj.duration;\n this.head = new scope.MusicHead(obj.head);\n this.line = obj.line;\n this.pitch = new scope.MusicPitchData(obj.pitch);\n this.startBeam = new scope.MusicBeam(obj.startBeam);\n this.stopBeam = new scope.MusicBeam(obj.stopBeam);\n this.stem = new scope.MusicStem(obj.stem);\n this.startTie = new scope.MusicTie(obj.startTie);\n this.stopTie = new scope.MusicTie(obj.stopTie);\n this.startTuplet = new scope.MusicTuplet(obj.startTuplet);\n this.stopTuplet = new scope.MusicTuplet(obj.stopTuplet);\n this.timeModification = new scope.MusicTimeModificationData(obj.timeModification);\n this.type = obj.type;\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n for (var j in obj.beamTypes) {\n this.beamTypes.push(obj.beamTypes[j]);\n }\n for (var k in obj.ledgerLines) {\n this.ledgerLines.push(new scope.MusicLedgerLine(obj.ledgerLines[k]));\n }\n for (var l in obj.startSlurs) {\n this.startSlurs.push(new scope.MusicSlur(obj.startSlurs[l]));\n }\n for (var m in obj.stopSlurs) {\n this.stopSlurs.push(new scope.MusicSlur(obj.stopSlurs[m]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicNote.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicNote.prototype.constructor = MusicNote;\n\n /**\n * Get accidental\n *\n * @method getAccidental\n * @returns {MusicAccidental}\n */\n MusicNote.prototype.getAccidental = function () {\n return this.accidental;\n };\n\n /**\n * Get dots\n *\n * @method getDots\n * @returns {MusicDots}\n */\n MusicNote.prototype.getDots = function () {\n return this.dots;\n };\n\n /**\n * Get duration\n *\n * @method getDuration\n * @returns {Number}\n */\n MusicNote.prototype.getDuration = function () {\n return this.duration;\n };\n\n /**\n * Get head\n *\n * @method getHead\n * @returns {MusicHead}\n */\n MusicNote.prototype.getHead = function () {\n return this.head;\n };\n\n /**\n * Get line\n *\n * @method getLine\n * @returns {Number}\n */\n MusicNote.prototype.getLine = function () {\n return this.line;\n };\n\n /**\n * Get pitch\n *\n * @method getPitch\n * @returns {MusicPitchData}\n */\n MusicNote.prototype.getPitch = function () {\n return this.pitch;\n };\n\n /**\n * Get start beam\n *\n * @method getStartBeam\n * @returns {MusicBeam}\n */\n MusicNote.prototype.getStartBeam = function () {\n return this.startBeam;\n };\n\n /**\n * Get stop beam\n *\n * @method getStopBeam\n * @returns {MusicBeam}\n */\n MusicNote.prototype.getStopBeam = function () {\n return this.stopBeam;\n };\n\n /**\n * Get stem\n *\n * @method getStem\n * @returns {MusicStem}\n */\n MusicNote.prototype.getStem = function () {\n return this.stem;\n };\n\n /**\n * Get start tie\n *\n * @method getStartTie\n * @returns {MusicTie}\n */\n MusicNote.prototype.getStartTie = function () {\n return this.startTie;\n };\n\n /**\n * Get stop tie\n *\n * @method getStopTie\n * @returns {MusicTie}\n */\n MusicNote.prototype.getStopTie = function () {\n return this.stopTie;\n };\n\n /**\n * Get start tuplet\n *\n * @method getStartTuplet\n * @returns {MusicTuplet}\n */\n MusicNote.prototype.getStartTuplet = function () {\n return this.startTuplet;\n };\n\n /**\n * Get stop tuplet\n *\n * @method getStopTuplet\n * @returns {MusicTuplet}\n */\n MusicNote.prototype.getStopTuplet = function () {\n return this.stopTuplet;\n };\n\n /**\n * Get time modification\n *\n * @method getTimeModification\n * @returns {MusicTimeModificationData}\n */\n MusicNote.prototype.getTimeModification = function () {\n return this.timeModification;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicNote.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicNote.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n /**\n * Get beam types\n *\n * @method getBeamTypes\n * @returns {Array}\n */\n MusicNote.prototype.getBeamTypes = function () {\n return this.beamTypes;\n };\n\n /**\n * Get ledger lines\n *\n * @method getLedgerLines\n * @returns {MusicLedgerLine[]}\n */\n MusicNote.prototype.getLedgerLines = function () {\n return this.ledgerLines;\n };\n\n /**\n * Get start slurs\n *\n * @method getStartSlurs\n * @returns {MusicSlur[]}\n */\n MusicNote.prototype.getStartSlurs = function () {\n return this.startSlurs;\n };\n\n /**\n * Get stop slurs\n *\n * @method getStopSlurs\n * @returns {MusicSlur[]}\n */\n MusicNote.prototype.getStopSlurs = function () {\n return this.stopSlurs;\n };\n\n // Export\n scope.MusicNote = MusicNote;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music part\n *\n * @class MusicPart\n * @param {Object} [obj]\n * @constructor\n */\n function MusicPart(obj) {\n this.elements = [];\n if (obj) {\n for (var i in obj.elements) {\n switch (obj.elements[i].elementType) {\n case 'accidental':\n this.elements.push(new scope.MusicAccidental(obj.elements[i]));\n break;\n case 'annotation':\n this.elements.push(new scope.MusicAnnotation(obj.elements[i]));\n break;\n case 'arpeggiate':\n this.elements.push(new scope.MusicArpeggiate(obj.elements[i]));\n break;\n case 'bar':\n this.elements.push(new scope.MusicBar(obj.elements[i]));\n break;\n case 'beam':\n this.elements.push(new scope.MusicBeam(obj.elements[i]));\n break;\n case 'chord':\n this.elements.push(new scope.MusicChord(obj.elements[i]));\n break;\n case 'clef':\n this.elements.push(new scope.MusicClef(obj.elements[i]));\n break;\n case 'decoration':\n this.elements.push(new scope.MusicDecoration(obj.elements[i]));\n break;\n case 'dots':\n this.elements.push(new scope.MusicDots(obj.elements[i]));\n break;\n case 'head':\n this.elements.push(new scope.MusicHead(obj.elements[i]));\n break;\n case 'keySignature':\n this.elements.push(new scope.MusicKeySignature(obj.elements[i]));\n break;\n case 'ledgerLine':\n this.elements.push(new scope.MusicLedgerLine(obj.elements[i]));\n break;\n case 'note':\n this.elements.push(new scope.MusicNote(obj.elements[i]));\n break;\n case 'rest':\n this.elements.push(new scope.MusicRest(obj.elements[i]));\n break;\n case 'slur':\n this.elements.push(new scope.MusicSlur(obj.elements[i]));\n break;\n case 'stem':\n this.elements.push(new scope.MusicStem(obj.elements[i]));\n break;\n case 'tie':\n this.elements.push(new scope.MusicTie(obj.elements[i]));\n break;\n case 'timeSignature':\n this.elements.push(new scope.MusicTimeSignature(obj.elements[i]));\n break;\n case 'tuplet':\n this.elements.push(new scope.MusicTuplet(obj.elements[i]));\n break;\n case 'tupletBracket':\n this.elements.push(new scope.MusicTupletBracket(obj.elements[i]));\n break;\n default:\n throw new Error('Unknown music element');\n }\n }\n }\n }\n\n /**\n * Get elements\n *\n * @method getElements\n * @returns {MusicElement[]}\n */\n MusicPart.prototype.getElements = function () {\n return this.elements;\n };\n\n // Export\n scope.MusicPart = MusicPart;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music pitch data\n *\n * @class MusicPitchData\n * @param {Object} [obj]\n * @constructor\n */\n function MusicPitchData(obj) {\n if (obj) {\n this.alteration = obj.alteration;\n this.octave = obj.octave;\n this.step = obj.step;\n }\n }\n\n /**\n * Get alteration\n *\n * @method getAlteration\n * @returns {Number}\n */\n MusicPitchData.prototype.getAlteration = function () {\n return this.alteration;\n };\n\n /**\n * Get octave\n *\n * @method getOctave\n * @returns {Number}\n */\n MusicPitchData.prototype.getOctave = function () {\n return this.octave;\n };\n\n /**\n * Get step\n *\n * @method getStep\n * @returns {String}\n */\n MusicPitchData.prototype.getStep = function () {\n return this.step;\n };\n\n // Export\n scope.MusicPitchData = MusicPitchData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music rest\n *\n * @class MusicRest\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicRest(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n this.startSlurs = [];\n this.stopSlurs = [];\n if (obj) {\n this.type = obj.type;\n this.dots = new scope.MusicDots(obj.dots);\n this.startTuplet = new scope.MusicTuplet(obj.startTuplet);\n this.stopTuplet = new scope.MusicTuplet(obj.stopTuplet);\n this.timeModification = new scope.MusicTimeModificationData(obj.timeModification);\n this.duration = obj.duration;\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n for (var l in obj.startSlurs) {\n this.startSlurs.push(new scope.MusicSlur(obj.startSlurs[l]));\n }\n for (var m in obj.stopSlurs) {\n this.stopSlurs.push(new scope.MusicSlur(obj.stopSlurs[m]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicRest.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicRest.prototype.constructor = MusicRest;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicRest.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get dots\n *\n * @method getDots\n * @returns {MusicDots}\n */\n MusicRest.prototype.getDots = function () {\n return this.dots;\n };\n\n /**\n * Get start tuplet\n *\n * @method getStartTuplet\n * @returns {MusicTuplet}\n */\n MusicRest.prototype.getStartTuplet = function () {\n return this.startTuplet;\n };\n\n /**\n * Get stop tuplet\n *\n * @method getStopTuplet\n * @returns {MusicTuplet}\n */\n MusicRest.prototype.getStopTuplet = function () {\n return this.stopTuplet;\n };\n\n /**\n * Get time modification\n *\n * @method getTimeModification\n * @returns {MusicTimeModificationData}\n */\n MusicRest.prototype.getTimeModification = function () {\n return this.timeModification;\n };\n\n /**\n * Get duration\n *\n * @method getDuration\n * @returns {Number}\n */\n MusicRest.prototype.getDuration = function () {\n return this.duration;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicRest.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n /**\n * Get start slurs\n *\n * @method getStartSlurs\n * @returns {MusicSlur[]}\n */\n MusicRest.prototype.getStartSlurs = function () {\n return this.startSlurs;\n };\n\n /**\n * Get stop slurs\n *\n * @method getStopSlurs\n * @returns {MusicSlur[]}\n */\n MusicRest.prototype.getStopSlurs = function () {\n return this.stopSlurs;\n };\n\n // Export\n scope.MusicRest = MusicRest;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music result\n *\n * @class MusicResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function MusicResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.MusicDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n MusicResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n MusicResult.prototype.constructor = MusicResult;\n\n /**\n * Get music document\n *\n * @method getMusicDocument\n * @returns {MusicDocument}\n */\n MusicResult.prototype.getMusicDocument = function () {\n return this.result;\n };\n\n // Export\n scope.MusicResult = MusicResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music score\n *\n * @class MusicScore\n * @param {Object} [obj]\n * @constructor\n */\n function MusicScore(obj) {\n this.parts = [];\n if (obj) {\n for (var i in obj.parts) {\n this.parts.push(new scope.MusicPart(obj.parts[i]));\n }\n }\n }\n\n /**\n * Get parts\n *\n * @method getParts\n * @returns {MusicPart[]}\n */\n MusicScore.prototype.getParts = function () {\n return this.parts;\n };\n\n // Export\n scope.MusicScore = MusicScore;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music score tree\n *\n * @class MusicScoreTreeResultElement\n * @extends MusicResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicScoreTreeResultElement(obj) {\n scope.MusicResultElement.call(this, obj);\n if (obj) {\n this.score = new scope.MusicScore(obj.score);\n }\n }\n\n /**\n * Inheritance property\n */\n MusicScoreTreeResultElement.prototype = new scope.MusicResultElement();\n\n /**\n * Constructor property\n */\n MusicScoreTreeResultElement.prototype.constructor = MusicScoreTreeResultElement;\n\n /**\n * Get score\n *\n * @method getScore\n * @returns {MusicScore}\n */\n MusicScoreTreeResultElement.prototype.getScore = function () {\n return this.score;\n };\n\n // Export\n scope.MusicScoreTreeResultElement = MusicScoreTreeResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music scratch-out\n *\n * @class MusicScratchOut\n * @param {Object} [obj]\n * @constructor\n */\n function MusicScratchOut(obj) {\n this.inputRanges = [];\n this.erasedInputRanges = [];\n if (obj) {\n for (var i in obj.inputRanges) {\n this.inputRanges.push(new scope.MusicInputRange(obj.inputRanges[i]));\n }\n for (var j in obj.erasedInputRanges) {\n this.erasedInputRanges.push(new scope.MusicInputRange(obj.erasedInputRanges[j]));\n }\n }\n }\n\n /**\n * Get input ranges\n *\n * @method getInputRanges\n * @returns {MusicInputRange[]}\n */\n MusicScratchOut.prototype.getInputRanges = function () {\n return this.inputRanges;\n };\n\n /**\n * Get erased input ranges\n *\n * @method getErasedInputRanges\n * @returns {MusicInputRange[]}\n */\n MusicScratchOut.prototype.getErasedInputRanges = function () {\n return this.erasedInputRanges;\n };\n\n // Export\n scope.MusicScratchOut = MusicScratchOut;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music slur\n *\n * @class MusicSlur\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicSlur(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.placement = obj.placement;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicSlur.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicSlur.prototype.constructor = MusicSlur;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicSlur.prototype.getPlacement = function () {\n return this.placement;\n };\n\n // Export\n scope.MusicSlur = MusicSlur;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music stem\n *\n * @class MusicStem\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicStem(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicStem.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicStem.prototype.constructor = MusicStem;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicStem.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicStem = MusicStem;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music tie\n *\n * @class MusicTie\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTie(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.placement = obj.placement;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTie.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTie.prototype.constructor = MusicTie;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicTie.prototype.getPlacement = function () {\n return this.placement;\n };\n\n // Export\n scope.MusicTie = MusicTie;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music time modification data\n *\n * @class MusicTimeModificationData\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTimeModificationData(obj) {\n if (obj) {\n this.actual = obj.actual;\n this.dots = obj.dots;\n this.normal = obj.normal;\n this.type = obj.type;\n }\n }\n\n /**\n * Get actual\n *\n * @method getActual\n * @returns {Number}\n */\n MusicTimeModificationData.prototype.getActual = function () {\n return this.actual;\n };\n\n /**\n * Get dots\n *\n * @method getDots\n * @returns {Number}\n */\n MusicTimeModificationData.prototype.getDots = function () {\n return this.dots;\n };\n\n /**\n * Get normal\n *\n * @method getNormal\n * @returns {Number}\n */\n MusicTimeModificationData.prototype.getNormal = function () {\n return this.normal;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicTimeModificationData.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicTimeModificationData = MusicTimeModificationData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music time signature\n *\n * @class MusicTimeSignature\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTimeSignature(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.top = new scope.MusicAnnotation(obj.top);\n this.bottom = new scope.MusicAnnotation(obj.bottom);\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTimeSignature.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTimeSignature.prototype.constructor = MusicTimeSignature;\n\n /**\n * Get top\n *\n * @method getTop\n * @returns {MusicAnnotation}\n */\n MusicTimeSignature.prototype.getTop = function () {\n return this.top;\n };\n\n /**\n * Get bottom\n *\n * @method getBottom\n * @returns {MusicAnnotation}\n */\n MusicTimeSignature.prototype.getBottom = function () {\n return this.bottom;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicTimeSignature.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicTimeSignature = MusicTimeSignature;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music tuplet bracket\n *\n * @class MusicTupletBracket\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTupletBracket(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTupletBracket.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTupletBracket.prototype.constructor = MusicTupletBracket;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicTupletBracket.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicTupletBracket = MusicTupletBracket;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music tuplet\n *\n * @class MusicTuplet\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTuplet(obj) {\n scope.MusicElement.call(this, obj);\n this.brackets = [];\n if (obj) {\n this.placement = obj.placement;\n this.number = new scope.MusicAnnotation(obj.number);\n for (var i in obj.brackets) {\n this.brackets.push(new scope.MusicTupletBracket(obj.brackets[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTuplet.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTuplet.prototype.constructor = MusicTuplet;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicTuplet.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Get number\n *\n * @method getNumber\n * @returns {MusicAnnotation}\n */\n MusicTuplet.prototype.getNumber = function () {\n return this.number;\n };\n\n /**\n * Get brackets\n *\n * @method getBrackets\n * @returns {Array}\n */\n MusicTuplet.prototype.getBrackets = function () {\n return this.brackets;\n };\n\n // Export\n scope.MusicTuplet = MusicTuplet;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * MusicXML result\n *\n * @class MusicXMLResultElement\n * @extends MusicResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicXMLResultElement(obj) {\n scope.MusicResultElement.call(this, obj);\n if (obj) {\n this.value = obj.value;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicXMLResultElement.prototype = new scope.MusicResultElement();\n\n /**\n * Constructor property\n */\n MusicXMLResultElement.prototype.constructor = MusicXMLResultElement;\n\n /**\n * Get value\n *\n * @method getValue\n * @returns {String}\n */\n MusicXMLResultElement.prototype.getValue = function () {\n return this.value;\n };\n\n // Export\n scope.MusicXMLResultElement = MusicXMLResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer element\n *\n * @class AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerElement(obj) {\n if (obj) {\n this.elementType = obj.elementType;\n }\n }\n\n /**\n * Get element type\n *\n * @method getElementType\n * @returns {String}\n */\n AnalyzerElement.prototype.getElementType = function () {\n return this.elementType;\n };\n\n // Export\n scope.AnalyzerElement = AnalyzerElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer table cell\n *\n * @class AnalyzerCell\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerCell(obj) {\n scope.AnalyzerElement.call(this, obj);\n if (obj) {\n this.data = new scope.AnalyzerCellData(obj.data);\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerCell.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerCell.prototype.constructor = AnalyzerCell;\n\n /**\n * Get analyzer cell data\n *\n * @method getData\n * @returns {AnalyzerCellData}\n */\n AnalyzerCell.prototype.getData = function () {\n return this.data;\n };\n\n // Export\n scope.AnalyzerCell = AnalyzerCell;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer cell data\n *\n * @class AnalyzerCellData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerCellData(obj) {\n if (obj) {\n this.firstColumn = obj.firstColumn;\n this.lastColumn = obj.lastColumn;\n this.firstRow = obj.firstRow;\n this.lastRow = obj.lastRow;\n this.height = obj.height;\n this.width = obj.width;\n this.orientation = obj.orientation;\n this.topLeftPoint = new scope.Point(obj.topLeftPoint);\n this.topBorder = obj.topBorder;\n this.bottomBorder = obj.bottomBorder;\n this.leftBorder = obj.leftBorder;\n this.rightBorder = obj.rightBorder;\n }\n }\n\n /**\n * Get first column\n *\n * @method getFirstColumn\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getFirstColumn = function () {\n return this.firstColumn;\n };\n\n /**\n * Get last column\n *\n * @method getLastColumn\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getLastColumn = function () {\n return this.lastColumn;\n };\n\n /**\n * Get first row\n *\n * @method getFirstRow\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getFirstRow = function () {\n return this.firstRow;\n };\n\n /**\n * Get last row\n *\n * @method getLastRow\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getLastRow = function () {\n return this.lastRow;\n };\n\n /**\n * Get height\n *\n * @method getHeight\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getHeight = function () {\n return this.height;\n };\n\n /**\n * Get width\n *\n * @method getWidth\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Get orientation\n *\n * @method getOrientation\n * @returns {String}\n */\n AnalyzerCellData.prototype.getOrientation = function () {\n return this.orientation;\n };\n\n /**\n * Get top-left point\n *\n * @method getTopLeftPoint\n * @returns {Point}\n */\n AnalyzerCellData.prototype.getTopLeftPoint = function () {\n return this.topLeftPoint;\n };\n\n /**\n * Has top border\n *\n * @method hasTopBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasTopBorder = function () {\n return this.topBorder;\n };\n\n /**\n * Has bottom border\n *\n * @method hasBottomBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasBottomBorder = function () {\n return this.bottomBorder;\n };\n\n /**\n * Has left border\n *\n * @method hasLeftBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasLeftBorder = function () {\n return this.leftBorder;\n };\n\n /**\n * Has right border\n *\n * @method hasRightBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasRightBorder = function () {\n return this.rightBorder;\n };\n\n /**\n * Get bounding box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AnalyzerCellData.prototype.getBoundingBox = function () {\n var rectangle = new scope.Rectangle();\n rectangle.setTopLeftPoint(this.getTopLeftPoint());\n rectangle.setWidth(this.getWidth());\n rectangle.setHeight(this.getHeight());\n return rectangle;\n };\n\n // Export\n scope.AnalyzerCellData = AnalyzerCellData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer document\n *\n * @class AnalyzerDocument\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerDocument(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.textLines = [];\n this.shapes = [];\n this.tables = [];\n this.groups = [];\n if (obj) {\n for (var i in obj.textLines) {\n this.textLines.push(new scope.AnalyzerTextLine(obj.textLines[i]));\n }\n for (var j in obj.shapes) {\n this.shapes.push(new scope.ShapeSegment(obj.shapes[j]));\n }\n for (var k in obj.tables) {\n this.tables.push(new scope.AnalyzerTable(obj.tables[k]));\n }\n for (var l in obj.groups) {\n this.groups.push(new scope.AnalyzerGroup(obj.groups[l]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerDocument.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerDocument.prototype.constructor = AnalyzerDocument;\n\n /**\n * Get text lines\n *\n * @method getTextLines\n * @returns {AnalyzerTextLine[]}\n */\n AnalyzerDocument.prototype.getTextLines = function () {\n return this.textLines;\n };\n\n /**\n * Get shapes\n *\n * @method getShapes\n * @returns {ShapeSegment[]}\n */\n AnalyzerDocument.prototype.getShapes = function () {\n return this.shapes;\n };\n\n /**\n * Get tables\n *\n * @method getTables\n * @returns {AnalyzerTable[]}\n */\n AnalyzerDocument.prototype.getTables = function () {\n return this.tables;\n };\n\n /**\n * Get groups\n *\n * @method getGroups\n * @returns {AnalyzerGroup[]}\n */\n AnalyzerDocument.prototype.getGroups = function () {\n return this.groups;\n };\n\n // Export\n scope.AnalyzerDocument = AnalyzerDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer element reference\n *\n * @class AnalyzerElementReference\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerElementReference(obj) {\n if (obj) {\n this.uniqueID = obj.uniqueID;\n this.type = obj.type;\n }\n }\n\n /**\n * Get unique id\n *\n * @method getUniqueId\n * @returns {String}\n */\n AnalyzerElementReference.prototype.getUniqueId = function () {\n return this.uniqueID;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerElementReference.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.AnalyzerElementReference = AnalyzerElementReference;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer group\n *\n * @class AnalyzerGroup\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerGroup(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.elementReferences = [];\n if (obj) {\n this.type = obj.type;\n this.uniqueID = obj.uniqueID;\n for (var i in obj.elementReferences) {\n this.elementReferences.push(new scope.AnalyzerElementReference(obj.elementReferences[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerGroup.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerGroup.prototype.constructor = AnalyzerGroup;\n\n /**\n * Get element references\n *\n * @method getElementReferences\n * @returns {AnalyzerElementReference[]}\n */\n AnalyzerGroup.prototype.getElementReferences = function () {\n return this.elementReferences;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerGroup.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get unique Id\n *\n * @method getUniqueId\n * @returns {String}\n */\n AnalyzerGroup.prototype.getUniqueId = function () {\n return this.uniqueID;\n };\n\n // Export\n scope.AnalyzerGroup = AnalyzerGroup;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer ink range\n *\n * @class AnalyzerInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerInkRange(obj) {\n if (obj) {\n this.firstPoint = new scope.Point(obj.firstPoint);\n this.lastPoint = new scope.Point(obj.lastPoint);\n this.stroke = new scope.AnalyzerRecognizedStroke(obj.stroke);\n }\n }\n\n /**\n * Get first point\n *\n * @method getFirstPoint\n * @returns {Point}\n */\n AnalyzerInkRange.prototype.getFirstPoint = function () {\n return this.firstPoint;\n };\n\n /**\n * Get last point\n *\n * @method getLastPoint\n * @returns {Point}\n */\n AnalyzerInkRange.prototype.getLastPoint = function () {\n return this.lastPoint;\n };\n\n /**\n * Get stroke\n *\n * @method getStroke\n * @returns {null|*}\n */\n AnalyzerInkRange.prototype.getStroke = function () {\n return this.stroke;\n };\n\n // Export\n scope.AnalyzerInkRange = AnalyzerInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer line\n *\n * @class AnalyzerLine\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerLine(obj) {\n scope.AnalyzerElement.call(this, obj);\n if (obj) {\n this.data = new scope.AnalyzerLineData(obj.data);\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerLine.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerLine.prototype.constructor = AnalyzerLine;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerLineData}\n */\n AnalyzerLine.prototype.getData = function () {\n return this.data;\n };\n\n // Export\n scope.AnalyzerLine = AnalyzerLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer line data\n *\n * @class AnalyzerLineData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerLineData(obj) {\n if (obj) {\n this.p1 = new scope.Point(obj.p1);\n this.p2 = new scope.Point(obj.p2);\n }\n }\n\n /**\n * Get p1\n *\n * @method getP1\n * @returns {Point}\n */\n AnalyzerLineData.prototype.getP1 = function () {\n return this.p1;\n };\n\n /**\n * Get p2\n *\n * @method getP2\n * @returns {Point}\n */\n AnalyzerLineData.prototype.getP2 = function () {\n return this.p2;\n };\n\n // Export\n scope.AnalyzerLineData = AnalyzerLineData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * AnalyzerRecognizedStroke\n *\n * @class AnalyzerRecognizedStroke\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerRecognizedStroke(obj) {\n if (obj) {\n this.type = obj.type;\n this.x = obj.x;\n this.y = obj.y;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerRecognizedStroke.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get x\n *\n * @method getX\n * @returns {Number[]}\n */\n AnalyzerRecognizedStroke.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Get y\n *\n * @method getY\n * @returns {Number[]}\n */\n AnalyzerRecognizedStroke.prototype.getY = function () {\n return this.y;\n };\n\n // Export\n scope.AnalyzerRecognizedStroke = AnalyzerRecognizedStroke;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer result\n *\n * @class AnalyzerResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.AnalyzerDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n AnalyzerResult.prototype.constructor = AnalyzerResult;\n\n /**\n * Get analyzer document\n *\n * @method getAnalyzerDocument\n * @returns {AnalyzerDocument}\n */\n AnalyzerResult.prototype.getAnalyzerDocument = function () {\n return this.result;\n };\n\n // Export\n scope.AnalyzerResult = AnalyzerResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer stroke type\n *\n * @class AnalyzerStrokeType\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerStrokeType(obj) {\n if (obj) {\n this.inkRange = new scope.AnalyzerInkRange(obj.inkRange);\n this.type = obj.type;\n }\n }\n\n /**\n * Get ink range\n *\n * @method getInkRange\n * @returns {AnalyzerInkRange}\n */\n AnalyzerStrokeType.prototype.getInkRange = function () {\n return this.inkRange;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerStrokeType.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.AnalyzerStrokeType = AnalyzerStrokeType;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer table\n *\n * @class AnalyzerTable\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTable(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.lines = [];\n this.cells = [];\n this.inkRanges = [];\n if (obj) {\n this.data = new scope.AnalyzerTableData(obj.data);\n for (var i in obj.lines) {\n this.lines.push(new scope.AnalyzerLine(obj.lines[i]));\n }\n for (var j in obj.cells) {\n this.cells.push(new scope.AnalyzerCell(obj.cells[j]));\n }\n for (var k in obj.inkRanges) {\n this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[k]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerTable.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerTable.prototype.constructor = AnalyzerTable;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerTableData}\n */\n AnalyzerTable.prototype.getData = function () {\n return this.data;\n };\n\n /**\n * Get lines\n *\n * @method getLines\n * @returns {AnalyzerLine[]}\n */\n AnalyzerTable.prototype.getLines = function () {\n return this.lines;\n };\n\n /**\n * Get cells\n *\n * @method getCells\n * @returns {AnalyzerCell[]}\n */\n AnalyzerTable.prototype.getCells = function () {\n return this.cells;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {AnalyzerInkRange[]}\n */\n AnalyzerTable.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.AnalyzerTable = AnalyzerTable;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer table data\n *\n * @class AnalyzerTableData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTableData(obj) {\n if (obj) {\n this.columnCount = obj.columnCount;\n this.rowCount = obj.rowCount;\n }\n }\n\n /**\n * Get column count\n *\n * @method getColumnCount\n * @returns {Number}\n */\n AnalyzerTableData.prototype.getColumnCount = function () {\n return this.columnCount;\n };\n\n /**\n * Get row count\n *\n * @method getRowCount\n * @returns {Number}\n */\n AnalyzerTableData.prototype.getRowCount = function () {\n return this.rowCount;\n };\n\n // Export\n scope.AnalyzerTableData = AnalyzerTableData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer text line\n *\n * @class AnalyzerTextLine\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTextLine(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.inkRanges = [];\n this.underlineList = [];\n if (obj) {\n this.data = new scope.AnalyzerTextLineData(obj.data);\n this.result = new scope.TextDocument(obj.result);\n for (var i in obj.inkRanges) {\n this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[i]));\n }\n for (var j in obj.underlineList) {\n this.underlineList.push(new scope.AnalyzerUnderline(obj.underlineList[j]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerTextLine.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerTextLine.prototype.constructor = AnalyzerTextLine;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerTextLineData}\n */\n AnalyzerTextLine.prototype.getData = function () {\n return this.data;\n };\n\n /**\n * Get text document\n *\n * @method getTextDocument\n * @returns {TextDocument}\n */\n AnalyzerTextLine.prototype.getTextDocument = function () {\n return this.result;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {AnalyzerInkRange[]}\n */\n AnalyzerTextLine.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get underline list\n *\n * @method getUnderlineList\n * @returns {AnalyzerUnderline[]}\n */\n AnalyzerTextLine.prototype.getUnderlineList = function () {\n return this.underlineList;\n };\n\n // Export\n scope.AnalyzerTextLine = AnalyzerTextLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer text line data\n *\n * @class AnalyzerTextLineData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTextLineData(obj) {\n if (obj) {\n this.baselinePos = obj.baselinePos;\n this.toMidline = obj.toMidline;\n this.orientation = obj.orientation;\n this.topLeftPoint = new scope.Point(obj.topLeftPoint);\n this.textHeight = obj.textHeight;\n this.justificationType = obj.justificationType;\n this.height = obj.height;\n this.width = obj.width;\n }\n }\n\n /**\n * Get baseline position\n *\n * @method getBaselinePos\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getBaselinePos = function () {\n return this.baselinePos;\n };\n\n /**\n * Get to midline\n *\n * @method getToMidline\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getToMidline = function () {\n return this.toMidline;\n };\n\n /**\n * Get orientation\n *\n * @method getOrientation\n * @returns {String}\n */\n AnalyzerTextLineData.prototype.getOrientation = function () {\n return this.orientation;\n };\n\n /**\n * Get top-left point\n *\n * @method getTopLeftPoint\n * @returns {Point}\n */\n AnalyzerTextLineData.prototype.getTopLeftPoint = function () {\n return this.topLeftPoint;\n };\n\n /**\n * Get text height\n *\n * @method getTextHeight\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getTextHeight = function () {\n return this.textHeight;\n };\n\n /**\n * Get justification type\n *\n * @method getJustificationType\n * @returns {String}\n */\n AnalyzerTextLineData.prototype.getJustificationType = function () {\n return this.justificationType;\n };\n\n /**\n * Get height\n *\n * @method getHeight\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getHeight = function () {\n return this.height;\n };\n\n /**\n * Get width\n *\n * @method getWidth\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Get bounding box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AnalyzerTextLineData.prototype.getBoundingBox = function () {\n var rectangle = new scope.Rectangle();\n if (this.getTopLeftPoint() || this.getWidth() || this.getHeight()) {\n rectangle.setTopLeftPoint(this.getTopLeftPoint());\n rectangle.setWidth(this.getWidth());\n rectangle.setHeight(this.getHeight());\n }\n return rectangle;\n };\n\n // Export\n scope.AnalyzerTextLineData = AnalyzerTextLineData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer underline\n *\n * @class AnalyzerUnderline\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerUnderline(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.inkRanges = [];\n if (obj) {\n this.data = new scope.AnalyzerUnderlineData(obj.data);\n for (var i in obj.inkRanges) {\n this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerUnderline.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerUnderline.prototype.constructor = AnalyzerUnderline;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerUnderlineData}\n */\n AnalyzerUnderline.prototype.getData = function () {\n return this.data;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {AnalyzerInkRange[]}\n */\n AnalyzerUnderline.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.AnalyzerUnderline = AnalyzerUnderline;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer underline data\n *\n * @class AnalyzerUnderlineData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerUnderlineData(obj) {\n if (obj) {\n this.firstCharacter = obj.firstCharacter;\n this.lastCharacter = obj.lastCharacter;\n }\n }\n\n /**\n * Get first character\n *\n * @method getFirstCharacter\n * @returns {Number}\n */\n AnalyzerUnderlineData.prototype.getFirstCharacter = function () {\n return this.firstCharacter;\n };\n\n /**\n * Get last character\n *\n * @method getLastCharacter\n * @returns {Number}\n */\n AnalyzerUnderlineData.prototype.getLastCharacter = function () {\n return this.lastCharacter;\n };\n\n // Export\n scope.AnalyzerUnderlineData = AnalyzerUnderlineData;\n})(MyScript);","'use strict';\n\n(function (scope, Q) {\n /**\n * Network interface\n *\n * @class NetworkInterface\n * @constructor\n */\n function NetworkInterface() {\n }\n\n /**\n * Parse JSON String to Object\n *\n * @method parse\n * @param {Object} req\n * @returns {Object}\n */\n NetworkInterface.parse = function (req) {\n var result;\n try {\n result = JSON.parse(req.responseText);\n } catch (e) {\n result = req.responseText;\n }\n return result;\n };\n\n /**\n * Transform object data request to a list of parameters\n *\n * @method transformRequest\n * @param {Object} [obj]\n * @returns {String}\n */\n NetworkInterface.transformRequest = function (obj) {\n var str = [];\n for (var p in obj) {\n if ((typeof obj[p] !== 'undefined') &&\n (typeof obj[p] !== 'function')) {\n str.push(encodeURIComponent(p) + '=' + encodeURIComponent(obj[p]));\n }\n }\n return str.join('&');\n };\n\n /**\n * Send request to the network and return a promise\n *\n * @method xhr\n * @param {String} type\n * @param {String} url\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.xhr = function (type, url, data) {\n\n var deferred = Q.defer();\n\n function onStateChange() {\n if (request.readyState === 4) {\n if (request.status >= 200 && request.status < 300) {\n deferred.resolve(NetworkInterface.parse(request));\n } else {\n deferred.reject(NetworkInterface.parse(request));\n }\n }\n }\n\n function onLoad() {\n if (request.status >= 200 && request.status < 300) {\n deferred.resolve(NetworkInterface.parse(request));\n } else {\n deferred.reject('Status code was ' + request.status);\n }\n }\n\n function onError() {\n deferred.reject('Can\\'t XHR ' + JSON.stringify(url));\n }\n\n function onProgress(event) {\n deferred.notify(event.loaded / event.total);\n }\n\n var request = new XMLHttpRequest();\n request.open(type, url, true);\n request.setRequestHeader('Accept', 'application/json');\n request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');\n request.onload = onLoad;\n request.onerror = onError;\n request.onprogress = onProgress;\n request.onreadystatechange = onStateChange;\n request.send(NetworkInterface.transformRequest(data));\n\n return deferred.promise;\n };\n\n /**\n * Get request\n *\n * @method get\n * @param {String} src\n * @param {Object} params\n * @returns {Promise}\n */\n NetworkInterface.prototype.get = function (src, params) {\n if (params) {\n src += '?' + NetworkInterface.transformRequest(params);\n }\n return this.xhr('GET', src).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n /**\n * Put request\n *\n * @method put\n * @param {String} src\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.put = function (url, data) {\n return this.xhr('PUT', url, data).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n /**\n * Post request\n *\n * @method post\n * @param {String} src\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.post = function (url, data) {\n return this.xhr('POST', url, data).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n /**\n * Delete request\n *\n * @method delete\n * @param {String} src\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.delete = function (url, data) {\n return this.xhr('DELETE', url, data).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n // Export\n scope.NetworkInterface = NetworkInterface;\n})(MyScript, Q);\n","'use strict';\n\n(function (scope, CryptoJS) {\n /**\n * Abstract recognizer interface\n *\n * @class AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function AbstractRecognizer(host) {\n this.host = 'cloud.myscript.com';\n if (host) {\n this.host = host;\n }\n this.http = new scope.NetworkInterface();\n }\n\n /**\n * Get the recognition languages available for an application and a specific inputMode\n *\n * @method getAvailableLanguageList\n * @param {String} applicationKey\n * @param {String} inputMode\n * @returns {Promise}\n */\n AbstractRecognizer.prototype.getAvailableLanguageList = function (applicationKey, inputMode) {\n var data = new scope.RecognitionLanguagesData();\n data.setApplicationKey(applicationKey);\n data.setInputMode(inputMode);\n\n return this.http.get('//' + this.host + '/api/v3.0/recognition/rest/text/languages.json', data).then(\n function success(response) {\n return response.result;\n },\n function error(response) {\n return response;\n }\n );\n };\n\n /**\n * Compute HMAC signature for server authentication\n *\n * @method computeHmac\n * @param {String} applicationKey\n * @param {String} data\n * @param {String} hmacKey\n */\n AbstractRecognizer.prototype.computeHmac = function (applicationKey, data, hmacKey) {\n var jsonInput = (typeof data === 'object') ? JSON.stringify(data) : data;\n return CryptoJS.HmacSHA512(jsonInput, applicationKey + hmacKey).toString(CryptoJS.enc.Hex);\n };\n // Export\n scope.AbstractRecognizer = AbstractRecognizer;\n})(MyScript, CryptoJS);","'use strict';\n\n(function (scope) {\n /**\n * Abstract WebSocket recognizer interface\n *\n * @class AbstractWSRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function AbstractWSRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n }\n\n /**\n * Inheritance property\n */\n AbstractWSRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n AbstractWSRecognizer.prototype.constructor = AbstractWSRecognizer;\n\n AbstractWSRecognizer.prototype.getMessageCallback = function () {\n return this.messageCallback;\n };\n\n AbstractWSRecognizer.prototype.setMessageCallback = function (callback) {\n this.messageCallback = callback;\n };\n\n AbstractWSRecognizer.prototype.getOpenCallback = function () {\n return this.openCallback;\n };\n\n AbstractWSRecognizer.prototype.setOpenCallback = function (callback) {\n this.openCallback = callback;\n };\n\n AbstractWSRecognizer.prototype.getCloseCallback = function () {\n return this.closeCallback;\n };\n\n AbstractWSRecognizer.prototype.setCloseCallback = function (callback) {\n this.closeCallback = callback;\n };\n\n AbstractWSRecognizer.prototype.getErrorCallback = function () {\n return this.errorCallback;\n };\n\n AbstractWSRecognizer.prototype.setErrorCallback = function (callback) {\n this.errorCallback = callback;\n };\n\n /**\n * Get the current state of the connection\n *\n * @method getState\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.getState = function () {\n var deferred = Q.defer();\n if (!this.socket) {\n deferred.reject(new Error('Can\\'t find WebSocket'));\n } else {\n deferred.resolve(this.socket.readyState);\n }\n return deferred.promise;\n };\n\n /**\n * Close the socket\n *\n * @method close\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.close = function () {\n var deferred = Q.defer();\n if (!this.socket) {\n deferred.reject(new Error('Can\\'t find WebSocket'));\n } else {\n deferred.resolve(this.socket.close());\n }\n return deferred.promise;\n };\n\n /**\n * Send a message\n *\n * @method sendMessage\n * @param {AbstractWSMessage} message\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.sendMessage = function (message) {\n var deferred = Q.defer();\n if (!this.socket) {\n deferred.reject(new Error('Can\\'t find WebSocket'));\n } else {\n deferred.resolve(this.socket.send(JSON.stringify(message)));\n }\n return deferred.promise;\n };\n\n /**\n * Initialize the WebSocket\n *\n * @method initWSRecognition\n * @param {String} applicationKey\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.initWSRecognition = function (applicationKey) {\n var message = new scope.InitRequestWSMessage();\n message.setApplicationKey(applicationKey);\n return this.sendMessage(message);\n };\n\n /**\n * Authenticate the WebSocket client end with a handshake of HMAC signature\n *\n * @method takeUpHmacChallenge\n * @param {String} applicationKey\n * @param {String} challenge\n * @param {String} hmacKey\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.takeUpHmacChallenge = function (applicationKey, challenge, hmacKey) {\n var message = new scope.ChallengeRequestWSMessage();\n message.setApplicationKey(applicationKey);\n message.setChallenge(challenge);\n message.setHmacSignature(this.computeHmac(applicationKey, challenge, hmacKey));\n return this.sendMessage(message);\n };\n\n /**\n * Reset the WebSocket recognition session\n *\n * @method resetWSRecognition\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.resetWSRecognition = function () {\n var message = new scope.ResetRequestWSMessage();\n return this.sendMessage(message);\n };\n\n // Export\n scope.AbstractWSRecognizer = AbstractWSRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text recognizer interface\n *\n * @class TextRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function TextRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.TextParameter();\n this.parameters.setLanguage('en_US');\n this.parameters.setInputMode('CURSIVE');\n }\n\n /**\n * Inheritance property\n */\n TextRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n TextRecognizer.prototype.constructor = TextRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do text recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {TextParameter} parameters\n * @param {String} instanceId\n * @param {TextInputUnit[]} inputUnits\n * @param {String} hmacKey\n * @returns {Promise}\n */\n TextRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, inputUnits, hmacKey, parameters) {\n\n var input = new scope.TextRecognitionInput();\n if (parameters) {\n input.setParameters(parameters);\n } else {\n input.setParameters(this.parameters);\n }\n input.setInputUnits(inputUnits);\n\n var data = new scope.TextRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setTextRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/text/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.TextResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.TextRecognizer = TextRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text WebSocket recognizer interface\n *\n * @class TextWSRecognizer\n * @extends AbstractWSRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function TextWSRecognizer(host) {\n scope.AbstractWSRecognizer.call(this, host);\n this.parameters = new scope.TextParameter();\n this.parameters.setLanguage('en_US');\n this.parameters.setInputMode('CURSIVE');\n\n this.socket = new WebSocket('ws://' + this.host + '/api/v3.0/recognition/ws/text');\n var self = this;\n this.socket.onopen = function (message) {\n console.log('WebSocket opened');\n if (self.openCallback) {\n self.openCallback(message);\n }\n };\n this.socket.onmessage = function (message) {\n var data = JSON.parse(message.data);\n console.log('WebSocket message received');\n switch (data.type) {\n case 'init':\n data = new scope.InitResponseWSMessage(data);\n break;\n case 'error':\n data = new scope.ErrorResponseWSMessage(data);\n break;\n case 'hmacChallenge':\n data = new scope.ChallengeResponseWSMessage(data);\n break;\n default:\n data = new scope.TextResponseWSMessage(data);\n break;\n }\n if (self.messageCallback) {\n self.messageCallback(data);\n }\n };\n this.socket.onerror = function (message) {\n console.log('WebSocket error received');\n if (self.errorCallback) {\n self.errorCallback(message);\n }\n };\n this.socket.onclose = function (message) {\n console.log('WebSocket opened');\n if (self.closeCallback) {\n self.closeCallback(message);\n }\n };\n }\n\n /**\n * Inheritance property\n */\n TextWSRecognizer.prototype = new scope.AbstractWSRecognizer();\n\n /**\n * Constructor property\n */\n TextWSRecognizer.prototype.constructor = TextWSRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextWSRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextWSRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Start the WebSocket session\n *\n * @method startWSRecognition\n * @param {TextInputUnit[]} inputUnits\n * @param {TextParameter} [parameters]\n * @returns {Promise}\n */\n TextWSRecognizer.prototype.startWSRecognition = function (inputUnits, parameters) {\n var message = new scope.TextStartRequestWSMessage();\n if (parameters) {\n message.setParameters(parameters);\n } else {\n message.setParameters(this.getParameters());\n }\n message.setInputUnits(inputUnits);\n return this.sendMessage(message);\n };\n\n /**\n * Continue the recognition\n *\n * @method continueWSRecognition\n * @param {TextInputUnit[]} inputUnits\n * @param {String} instanceId\n * @returns {Promise}\n */\n TextWSRecognizer.prototype.continueWSRecognition = function (inputUnits, instanceId) {\n var message = new scope.TextContinueRequestWSMessage();\n message.setInputUnits(inputUnits);\n message.setInstanceId(instanceId);\n return this.sendMessage(message);\n };\n\n /**\n * Do text WebSocket recognition\n *\n * @method doWSRecognition\n * @param {String} instanceId\n * @param {TextInputUnit[]} inputUnits\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n TextWSRecognizer.prototype.doWSRecognition = function (instanceId, inputUnits, parameters) {\n if (!instanceId) {\n return this.startWSRecognition(inputUnits, parameters);\n } else {\n return this.continueWSRecognition(inputUnits, instanceId);\n }\n };\n\n // Export\n scope.TextWSRecognizer = TextWSRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape recognizer interface\n *\n * @class ShapeRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function ShapeRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.ShapeParameter();\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n ShapeRecognizer.prototype.constructor = ShapeRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {ShapeParameter}\n */\n ShapeRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {ShapeParameter} parameters\n */\n ShapeRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do shape recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {ShapeParameter} [parameters]\n * @returns {Promise}\n */\n ShapeRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n\n var input = new scope.ShapeRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setDoBeautification(parameters.hasBeautification());\n input.setRejectDetectionSensitivity(parameters.getRejectDetectionSensitivity());\n } else {\n input.setDoBeautification(this.getParameters().hasBeautification());\n input.setRejectDetectionSensitivity(this.getParameters().getRejectDetectionSensitivity());\n }\n\n var data = new scope.ShapeRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setShapeRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/shape/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.ShapeResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n /**\n * Clear shape recognition session\n *\n * @method clearShapeRecognitionSession\n * @param {String} applicationKey\n * @param {String} instanceId\n * @returns {Promise}\n */\n ShapeRecognizer.prototype.clearShapeRecognitionSession = function (applicationKey, instanceId) {\n\n var data = {\n instanceSessionId: instanceId\n };\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/shape/clearSessionId.json', data).then(\n function success(response) {\n return response;\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.ShapeRecognizer = ShapeRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math recognizer interface\n *\n * @class MathRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function MathRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.MathParameter();\n }\n\n /**\n * Inheritance property\n */\n MathRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n MathRecognizer.prototype.constructor = MathRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MathParameter}\n */\n MathRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MathParameter} parameters\n */\n MathRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do math recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n MathRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n var input = new scope.MathRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setResultTypes(parameters.getResultTypes());\n input.setColumnar(parameters.isColumnar());\n input.setScratchOutDetectionSensitivity(parameters.getScratchOutDetectionSensitivity());\n input.setUserResources(parameters.getUserResources());\n } else {\n input.setResultTypes(this.getParameters().getResultTypes());\n input.setColumnar(this.getParameters().isColumnar());\n input.setScratchOutDetectionSensitivity(this.getParameters().getScratchOutDetectionSensitivity());\n input.setUserResources(this.getParameters().getUserResources());\n }\n\n var data = new scope.MathRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setMathRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/math/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.MathResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.MathRecognizer = MathRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math WebSocket recognizer interface\n *\n * @class MathWSRecognizer\n * @extends AbstractWSRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function MathWSRecognizer(host) {\n scope.AbstractWSRecognizer.call(this, host);\n this.parameters = new scope.MathParameter();\n\n this.socket = new WebSocket('ws://' + this.host + '/api/v3.0/recognition/ws/math');\n var self = this;\n this.socket.onopen = function (message) {\n console.log('WebSocket opened');\n if (self.openCallback) {\n self.openCallback(message);\n }\n };\n this.socket.onmessage = function (message) {\n var data = JSON.parse(message.data);\n console.log('WebSocket message received');\n switch (data.type) {\n case 'init':\n data = new scope.InitResponseWSMessage(data);\n break;\n case 'error':\n data = new scope.ErrorResponseWSMessage(data);\n break;\n case 'hmacChallenge':\n data = new scope.ChallengeResponseWSMessage(data);\n break;\n default:\n data = new scope.MathResponseWSMessage(data);\n break;\n }\n if (self.messageCallback) {\n self.messageCallback(data);\n }\n };\n this.socket.onerror = function (message) {\n console.log('WebSocket error received');\n if (self.errorCallback) {\n self.errorCallback(message);\n }\n };\n this.socket.onclose = function (message) {\n console.log('WebSocket opened');\n if (self.closeCallback) {\n self.closeCallback(message);\n }\n };\n }\n\n /**\n * Inheritance property\n */\n MathWSRecognizer.prototype = new scope.AbstractWSRecognizer();\n\n /**\n * Constructor property\n */\n MathWSRecognizer.prototype.constructor = MathWSRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MathParameter}\n */\n MathWSRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MathParameter} parameters\n */\n MathWSRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Start the WebSocket session\n *\n * @method startWSRecognition\n * @param {AbstractComponent[]} components\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n MathWSRecognizer.prototype.startWSRecognition = function (components, parameters) {\n var message = new scope.MathStartRequestWSMessage();\n if (parameters) {\n message.setParameters(parameters);\n } else {\n message.setParameters(this.getParameters());\n }\n message.setComponents(components);\n return this.sendMessage(message);\n };\n\n /**\n * Continue the recognition\n *\n * @method continueWSRecognition\n * @param {AbstractComponent[]} components\n * @param {String} instanceId\n * @returns {Promise}\n */\n MathWSRecognizer.prototype.continueWSRecognition = function (components, instanceId) {\n var message = new scope.MathContinueRequestWSMessage();\n message.setComponents(components);\n message.setInstanceId(instanceId);\n return this.sendMessage(message);\n };\n\n /**\n * Do math WebSocket recognition\n *\n * @method doWSRecognition\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n MathWSRecognizer.prototype.doWSRecognition = function (instanceId, components, parameters) {\n if (!instanceId) {\n return this.startWSRecognition(components, parameters);\n } else {\n return this.continueWSRecognition(components, instanceId);\n }\n };\n\n // Export\n scope.MathWSRecognizer = MathWSRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music recognizer interface\n *\n * @class MusicRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function MusicRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.MusicParameter();\n }\n\n /**\n * Inheritance property\n */\n MusicRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n MusicRecognizer.prototype.constructor = MusicRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MusicParameter}\n */\n MusicRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MusicParameter} parameters\n */\n MusicRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do music recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {MusicParameter} [parameters]\n * @returns {Promise}\n */\n MusicRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n\n var input = new scope.MusicRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setStaff(parameters.getStaff());\n input.setDivisions(parameters.getDivisions());\n input.setResultTypes(parameters.getResultTypes());\n input.setScratchOutDetectionSensitivity(parameters.getScratchOutDetectionSensitivity());\n input.setUserResources(parameters.getUserResources());\n } else {\n input.setStaff(this.getParameters().getStaff());\n input.setDivisions(this.getParameters().getDivisions());\n input.setResultTypes(this.getParameters().getResultTypes());\n input.setScratchOutDetectionSensitivity(this.getParameters().getScratchOutDetectionSensitivity());\n input.setUserResources(this.getParameters().getUserResources());\n }\n\n var data = new scope.MusicRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setMusicRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/music/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.MusicResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.MusicRecognizer = MusicRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer recognizer interface\n *\n * @class AnalyzerRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function AnalyzerRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.AnalyzerParameter();\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n AnalyzerRecognizer.prototype.constructor = AnalyzerRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {AnalyzerParameter}\n */\n AnalyzerRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {AnalyzerParameter} parameters\n */\n AnalyzerRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do analyzer recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {AnalyzerParameter} [parameters]\n * @returns {Promise}\n */\n AnalyzerRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n\n var input = new scope.AnalyzerRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setParameters(parameters);\n } else {\n input.setParameters(this.getParameters());\n }\n\n var data = new scope.AnalyzerRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setAnalyzerRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/analyzer/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.AnalyzerResult(response);\n },\n function error(response) {\n return response;\n }\n );\n };\n\n // Export\n scope.AnalyzerRecognizer = AnalyzerRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for both input and output canvas draw. Default values:\n * color: 'black';\n * rectColor: 'rgba(0, 0, 0, 0.2)';\n * font: 'Times New Roman';\n * decoration: '';\n * width: 4;\n * pressureType: 'SIMULATED';\n * alpha: '1.0';\n * doFadeOutLoop: false;\n * showBoundingBoxes: false;\n *\n * @class RenderingParameters\n * @constructor\n */\n function RenderingParameters() {\n this.color = 'black';\n this.rectColor = 'rgba(0, 0, 0, 0.2)';\n this.font = 'Times New Roman';\n this.decoration = '';\n this.width = 4;\n this.pressureType = 'SIMULATED';\n this.alpha = '1.0';\n this.doFadeOutLoop = false;\n this.showBoundingBoxes = false;\n }\n\n /**\n * Get the color renderer parameter\n *\n * @method getColor\n * @returns {String} The color of the ink\n */\n RenderingParameters.prototype.getColor = function () {\n return this.color;\n };\n\n /**\n * Set the color renderer parameter\n *\n * @method setColor\n * @param {String} color\n */\n RenderingParameters.prototype.setColor = function (color) {\n this.color = color;\n };\n\n /**\n * Get the rect renderer parameter\n *\n * @method getRectColor\n * @returns {String} the rectangle color\n */\n RenderingParameters.prototype.getRectColor = function () {\n return this.rectColor;\n };\n\n /**\n * Set the rect renderer parameter\n *\n * @method setRectColor\n * @param {String} rectColor\n */\n RenderingParameters.prototype.setRectColor = function (rectColor) {\n this.rectColor = rectColor;\n };\n\n /**\n * Get the font renderer parameter\n *\n * @method getFont\n * @returns {String} The font\n */\n RenderingParameters.prototype.getFont = function () {\n return this.font;\n };\n\n /**\n * Set the font renderer parameter\n *\n * @method setFont\n * @param {String} font\n */\n RenderingParameters.prototype.setFont = function (font) {\n this.font = font;\n };\n\n /**\n * Get the decoration renderer parameter\n *\n * @method getDecoration\n * @returns {String} The decoration\n */\n RenderingParameters.prototype.getDecoration = function () {\n return this.decoration;\n };\n\n /**\n * Set the decoration renderer parameter\n *\n * @method setDecoration\n * @param {String} decoration\n */\n RenderingParameters.prototype.setDecoration = function (decoration) {\n this.decoration = decoration;\n };\n\n /**\n * Get the width renderer parameter\n *\n * @method getWidth\n * @returns {Number} The ink width\n */\n RenderingParameters.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Set the width renderer parameter\n *\n * @method setWidth\n * @param {Number} width\n */\n RenderingParameters.prototype.setWidth = function (width) {\n this.width = width;\n };\n\n /**\n * Get the pressure renderer parameter\n *\n * @method getPressureType\n * @returns {String} The pressure type\n */\n RenderingParameters.prototype.getPressureType = function () {\n return this.pressureType;\n };\n\n /**\n * Set the pressure renderer parameter\n *\n * @method setPressureType\n * @param {String} pressureType\n */\n RenderingParameters.prototype.setPressureType = function (pressureType) {\n this.pressureType = pressureType;\n };\n\n /**\n * Get the alpha renderer parameter\n *\n * @method getAlpha\n * @returns {String} The alpha\n */\n RenderingParameters.prototype.getAlpha = function () {\n return this.alpha;\n };\n\n /**\n * Set the alpha renderer parameter\n *\n * @method setAlpha\n * @param {String} alpha\n */\n RenderingParameters.prototype.setAlpha = function (alpha) {\n this.alpha = alpha;\n };\n\n /**\n * Get fade out ink fore HTML5 canvas\n *\n * @method getDoFadeOutLoop\n * @returns {Boolean}\n */\n RenderingParameters.prototype.getDoFadeOutLoop = function () {\n return this.doFadeOutLoop;\n };\n\n /**\n * Set fade out ink fore HTML5 canvas\n *\n * @method setDoFadeOutLoop\n * @param {Boolean} doFadeOutLoop\n */\n RenderingParameters.prototype.setDoFadeOutLoop = function (doFadeOutLoop) {\n this.doFadeOutLoop = doFadeOutLoop;\n };\n\n /**\n * This property is use to show or not show the bounding box\n *\n * @method getShowBoundingBoxes\n * @returns {Boolean}\n */\n RenderingParameters.prototype.getShowBoundingBoxes = function () {\n return this.showBoundingBoxes;\n };\n\n /**\n * Set the show state of bounding box\n *\n * @method setShowBoundingBoxes\n * @param {Boolean} showBoundingBoxes\n */\n RenderingParameters.prototype.setShowBoundingBoxes = function (showBoundingBoxes) {\n this.showBoundingBoxes = showBoundingBoxes;\n };\n\n // Export\n scope.RenderingParameters = RenderingParameters;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Abstract Renderer. It's used to calculate the ink rendering in HTML5 canvas\n *\n * @class AbstractRenderer\n * @constructor\n */\n function AbstractRenderer() {\n this.points = [];\n this.drawing = false;\n this.parameters = new scope.RenderingParameters();\n }\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {RenderingParameters}\n */\n AbstractRenderer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {RenderingParameters} parameters\n */\n AbstractRenderer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Draw recognition result on HTML5 canvas.\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {Object} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw input components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n this.drawStroke(component, context, parameters);\n } else if (component instanceof scope.CharacterInputComponent) {\n this.drawCharacter(component, context, parameters);\n }\n }\n };\n\n /**\n * Record the beginning of drawing\n *\n * @method drawStart\n * @param {Number} x\n * @param {Number} y\n */\n AbstractRenderer.prototype.drawStart = function (x, y) {\n this.points.length = 0;\n this.drawing = true;\n this.points.push({\n x: x,\n y: y,\n pressure: 0.5,\n distance: 0.0,\n length: 0.0,\n ux: 0.0,\n uy: 0.0,\n x1: 0.0,\n x2: 0.0,\n y1: 0.0,\n y2: 0.0\n });\n };\n\n /**\n * Record the drawing\n *\n * @method drawContinue\n * @param {Number} x\n * @param {Number} y\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawContinue = function (x, y, context, parameters) {\n if (this.drawing) {\n var point = {\n x: x,\n y: y,\n pressure: 0.5,\n distance: 0.0,\n length: 0.0,\n ux: 0.0,\n uy: 0.0,\n x1: 0.0,\n x2: 0.0,\n y1: 0.0,\n y2: 0.0\n };\n this.points.push(point);\n\n if (this.points.length > 1) {\n var previous = this.points[this.points.length - 2];\n\n if (this.points.length === 2) {\n this.drawQuadratricStart(previous, point, context, parameters);\n } else {\n var third = this.points[this.points.length - 3];\n this.drawQuadratricContinue(third, previous, point, context, parameters);\n }\n\n }\n }\n };\n\n /**\n * Stop record of drawing\n *\n * @method drawEnd\n * @param {Number} x\n * @param {Number} y\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawEnd = function (x, y, context, parameters) {\n if (this.drawing) {\n if (this.points.length === 1) {\n this.drawPoint({\n x: x,\n y: y,\n pressure: 0.5,\n distance: 0.0,\n length: 0.0,\n ux: 0.0,\n uy: 0.0,\n x1: 0.0,\n x2: 0.0,\n y1: 0.0,\n y2: 0.0\n }, context, parameters);\n } else if (this.points.length > 1) {\n var lastPoint = this.points[this.points.length - 1];\n var point = this.points[this.points.length - 2];\n this.drawQuadratricEnd(point, lastPoint, context, parameters);\n }\n this.drawing = false;\n }\n };\n\n /**\n * Clear the context's canvas content to erase drawing strokes\n *\n * @method clear\n * @param {Object} context\n */\n AbstractRenderer.prototype.clear = function (context) {\n context.clearRect(0, 0, context.canvas.width, context.canvas.height);\n };\n\n /**\n * Draw guidelines on the HTML5 canvas\n *\n * @method drawGuidelines\n * @param {Number} horizontalSpacing\n * @param {Number} verticalSpacing\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawGuidelines = function (horizontalSpacing, verticalSpacing, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.clearRect(0, 0, context.canvas.clientWidth, context.canvas.clientHeight);\n\n if (verticalSpacing) {\n for (var y = verticalSpacing; y < context.canvas.clientHeight - verticalSpacing; y += verticalSpacing) {\n context.beginPath();\n context.moveTo(horizontalSpacing, y);\n context.lineTo(context.canvas.clientWidth - horizontalSpacing, y);\n context.stroke();\n }\n }\n if (horizontalSpacing) {\n for (var x = horizontalSpacing; x < context.canvas.clientWidth - horizontalSpacing; x += horizontalSpacing) {\n context.beginPath();\n context.moveTo(x, verticalSpacing);\n context.lineTo(x, context.canvas.clientHeight - verticalSpacing);\n context.stroke();\n }\n }\n } finally {\n context.restore();\n }\n };\n\n /**\n * Trace line on context\n *\n * @method drawLineByCoordinates\n * @param {Number} lX\n * @param {Number} lY\n * @param {Number} cX\n * @param {Number} cY\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawLineByCoordinates = function (lX, lY, cX, cY, context, parameters) {\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n // line from\n context.moveTo(lX, lY);\n // to\n context.lineTo(cX, cY);\n // draw it\n context.stroke();\n } finally {\n context.restore();\n }\n };\n\n /**\n * Draw a line on context\n *\n * @method drawLineByPoints\n * @param {QuadraticPoint} firstPoint\n * @param {QuadraticPoint} lastPoint\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawLineByPoints = function (firstPoint, lastPoint, context, parameters) {\n this.drawLineByCoordinates(firstPoint.x, firstPoint.y, lastPoint.x, lastPoint.y, context, parameters);\n };\n\n /**\n * Draw a rectangle on context\n *\n * @method drawRectangle\n * @param {Rectangle} rectangle\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawRectangle = function (rectangle, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getRectColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getRectColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.fillRect(rectangle.getX(), rectangle.getY(), rectangle.getWidth(), rectangle.getHeight());\n\n } finally {\n context.restore();\n }\n };\n\n /**\n * Draw strokes on context\n *\n * @method drawStrokes\n * @param {Stroke[]} strokes\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawStrokes = function (strokes, context, parameters) {\n for (var i in strokes) {\n this.drawStroke(strokes[i], context, parameters);\n }\n };\n\n /**\n * Draw a stroke on context\n *\n * @method drawStroke\n * @param {Stroke} stroke\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawStroke = function (stroke, context, parameters) {\n var strokePoints = [];\n for (var j = 0; j < stroke.getLength(); j++) {\n strokePoints.push(new scope.QuadraticPoint({\n x: stroke.getX()[j],\n y: stroke.getY()[j]\n }));\n }\n if (stroke.getLength() === 1) {\n this.drawPoint(strokePoints[0], context, parameters);\n } else {\n for (var k = 0; k < stroke.getLength(); k++) {\n if (k === 0) {\n var p1 = strokePoints[0];\n var p2 = strokePoints[1];\n this.drawQuadratricStart(p1, p2, context, parameters);\n } else if (k < stroke.getLength() - 1) {\n var p3 = strokePoints[k - 1];\n var p4 = strokePoints[k];\n var p5 = strokePoints[k + 1];\n this.drawQuadratricContinue(p3, p4, p5, context, parameters);\n } else if (k > 1) {\n var p6 = strokePoints[k - 1];\n var p7 = strokePoints[k];\n this.drawQuadratricEnd(p6, p7, context, parameters);\n }\n }\n }\n };\n\n /**\n * Draw character\n *\n * @private\n * @method drawCharacter\n * @param {CharacterInputComponent} character\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawCharacter = function (character, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw point on context\n *\n * @method drawPoint\n * @param {QuadraticPoint} point\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawPoint = function (point, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n\n context.beginPath();\n context.arc(point.x, point.y, 0.5 * parameters.getWidth(), 0, 2 * Math.PI);\n context.fill();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n\n context.beginPath();\n context.arc(point.x, point.y, 0.5 * this.parameters.getWidth(), 0, 2 * Math.PI);\n context.fill();\n }\n } finally {\n context.restore();\n }\n\n };\n\n /**\n * Draw an arrow head on context\n *\n * @method drawArrowHead\n * @param {QuadraticPoint} headPoint\n * @param {Number} angle\n * @param {Number} length\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawArrowHead = function (headPoint, angle, length, context, parameters) {\n\n var alpha = phi(angle + Math.PI - (Math.PI / 8)),\n beta = phi(angle - Math.PI + (Math.PI / 8));\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.moveTo(headPoint.x, headPoint.y);\n context.beginPath();\n context.lineTo(headPoint.x + (length * Math.cos(alpha)), headPoint.y + (length * Math.sin(alpha)));\n context.lineTo(headPoint.x + (length * Math.cos(beta)), headPoint.y + (length * Math.sin(beta)));\n context.lineTo(headPoint.x, headPoint.y);\n context.fill();\n\n } finally {\n context.restore();\n }\n\n };\n\n /**\n * Get Strokes from inkRange\n *\n * @method extractStroke\n * @param {Stroke[]} strokes\n * @param {Object} inkRange\n * @result {Stroke[]} List of strokes from inkRange\n */\n AbstractRenderer.prototype.extractStroke = function (strokes, inkRange) {\n var result = [],\n firstPointIndex = Math.floor(inkRange.getFirstPoint()),\n lastPointIndex = Math.ceil(inkRange.getLastPoint());\n\n for (var strokeIndex = inkRange.getFirstStroke(); strokeIndex <= inkRange.getLastStroke(); strokeIndex++) {\n var currentStroke = strokes[strokeIndex];\n var currentStrokePointCount = currentStroke.x.length;\n\n var newStroke = new scope.Stroke(), x = [], y = [];\n\n for (var pointIndex = firstPointIndex; (strokeIndex === inkRange.getLastStroke() && pointIndex <= lastPointIndex && pointIndex < currentStrokePointCount) || (strokeIndex !== inkRange.getLastStroke() && pointIndex < currentStrokePointCount); pointIndex++) {\n x.push(currentStroke.x[pointIndex]);\n y.push(currentStroke.y[pointIndex]);\n }\n\n newStroke.setX(x);\n newStroke.setY(y);\n result.push(newStroke);\n }\n return result;\n };\n\n /**\n * Draw a quadratic stroke on context\n *\n * @private\n * @method drawQuadratricStart\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawQuadratricStart = function (p1, p2, context, parameters) {\n\n if (parameters) {\n computePoint(null, p1, true, false, parameters.getPressureType(), parameters.getWidth());\n } else {\n computePoint(null, p1, true, false, this.parameters.getPressureType(), this.parameters.getWidth());\n }\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n strokeFirstSegment(p1, p2, context);\n context.fill();\n } finally {\n context.restore();\n }\n\n };\n\n /**\n * Continue to draw a quadratic stroke on context\n *\n * @private\n * @method drawQuadratricContinue\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {QuadraticPoint} p3\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawQuadratricContinue = function (p1, p2, p3, context, parameters) {\n\n if (parameters) {\n computePoint(p2, p3, false, false, parameters.getPressureType(), parameters.getWidth());\n } else {\n computePoint(p2, p3, false, false, this.parameters.getPressureType(), this.parameters.getWidth());\n }\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n strokeSegment(p1, p2, p3, context);\n context.fill();\n } finally {\n context.restore();\n }\n };\n\n /**\n * Stop to draw a quadratic stroke\n *\n * @private\n * @method drawQuadratricEnd\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawQuadratricEnd = function (p1, p2, context, parameters) {\n\n if (parameters) {\n computePoint(p1, p2, false, true, parameters.getPressureType(), parameters.getWidth());\n } else {\n computePoint(p1, p2, false, true, this.parameters.getPressureType(), this.parameters.getWidth());\n }\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n strokeLastSegment(p1, p2, context);\n context.fill();\n } finally {\n context.restore();\n }\n };\n\n /**\n * Render the first stroke segment.\n *\n * @private\n * @method strokeFirstSegment\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n */\n var strokeFirstSegment = function (p1, p2, context) {\n // compute start points\n var x11 = p1.x1,\n y11 = p1.y1,\n x12 = p1.x2,\n y12 = p1.y2,\n // compute end points\n x21 = 0.5 * p1.x1 + p2.x1,\n y21 = 0.5 * p1.y1 + p2.y1,\n x22 = 0.5 * p1.x2 + p2.x2,\n y22 = 0.5 * p1.y2 + p2.y2;\n\n // stroke segment\n context.moveTo(x11, y11);\n context.lineTo(x21, y21);\n context.lineTo(x22, y22);\n context.lineTo(x12, y12);\n context.lineTo(x11, y11);\n };\n\n /**\n * Render a stroke segment\n *\n * @private\n * @method strokeSegment\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {QuadraticPoint} p3\n * @param {Object} context\n */\n var strokeSegment = function (p1, p2, p3, context) {\n // compute start points\n var x11 = 0.5 * (p1.x1 + p2.x1),\n y11 = 0.5 * (p1.y1 + p2.y1),\n x12 = 0.5 * (p1.x2 + p2.x2),\n y12 = 0.5 * (p1.y2 + p2.y2),\n // compute end points\n x21 = 0.5 * (p2.x1 + p3.x1),\n y21 = 0.5 * (p2.y1 + p3.y1),\n x22 = 0.5 * (p2.x2 + p3.x2),\n y22 = 0.5 * (p2.y2 + p3.y2);\n // stroke segment\n context.moveTo(x11, y11);\n context.quadraticCurveTo(p2.x1, p2.y1, x21, y21);\n context.lineTo(x22, y22);\n context.quadraticCurveTo(p2.x2, p2.y2, x12, y12);\n context.lineTo(x11, y11);\n };\n\n /**\n * Render the last stroke segment\n *\n * @private\n * @method strokeLastSegment\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n */\n var strokeLastSegment = function (p1, p2, context) {\n // compute start points\n var x11 = 0.5 * (p1.x1 + p2.x1),\n y11 = 0.5 * (p1.y1 + p2.y1),\n x12 = 0.5 * (p1.x2 + p2.x2),\n y12 = 0.5 * (p1.y2 + p2.y2),\n // compute end points\n x21 = p2.x1,\n y21 = p2.y1,\n x22 = p2.x2,\n y22 = p2.y2;\n // stroke segment\n context.moveTo(x11, y11);\n context.lineTo(x21, y21);\n context.lineTo(x22, y22);\n context.lineTo(x12, y12);\n context.lineTo(x11, y11);\n };\n\n /**\n * Clamp an angle into the range [-PI, +PI]\n *\n * @private\n * @method phi\n * @param {Number} angle\n * @returns {Number}\n */\n var phi = function (angle) {\n angle = ((angle + Math.PI) % (Math.PI * 2)) - Math.PI;\n if (angle < -Math.PI) {\n angle += Math.PI * 2;\n }\n return angle;\n };\n\n /**\n * Compute all necessary point parameters to draw quadratics\n *\n * @private\n * @method computePoint\n * @param {QuadraticPoint} previous\n * @param {QuadraticPoint} point\n * @param {Boolean} isFirst\n * @param {Boolean} isLast\n * @param {String} pressureType\n * @param {Number} penWidth\n */\n var computePoint = function (previous, point, isFirst, isLast, pressureType, penWidth) {\n\n // compute distance from previous point\n if (previous !== null) {\n computeDistance(previous, point);\n var strokeLength = previous.length + point.distance;\n point.length = strokeLength;\n }\n // compute pressure\n switch (pressureType) {\n case 'SIMULATED':\n computePressure(point, point.distance, point.length);\n break;\n case 'CONSTANT':\n point.pressure = 1.0;\n break;\n case 'REAL':\n // keep the current pressure\n break;\n default:\n throw new Error('Unknown pressure type');\n }\n computeLastControls(point, penWidth);\n // compute control points\n if (previous !== null && !isLast) {\n if (isFirst) {\n computeFirstControls(previous, point, penWidth);\n }\n if (isLast) {\n computeLastControls(point, penWidth);\n } else {\n computeControls(previous, point, penWidth);\n }\n }\n };\n\n /**\n * Compute distance and unit vector from the previous point.\n *\n * @private\n * @method computeDistance\n * @param {QuadraticPoint} previous\n * @param {QuadraticPoint} point\n */\n var computeDistance = function (previous, point) {\n var dx = point.x - previous.x,\n dy = point.y - previous.y,\n d = Math.sqrt(dx * dx + dy * dy);\n\n if (d !== 0) {\n point.distance = d;\n point.ux = dx / d;\n point.uy = dy / d;\n }\n };\n\n /**\n * Compute simulated pressure of given point.\n *\n * @private\n * @method computePressure\n * @param {QuadraticPoint} point\n * @param {Number} distance\n * @param {Number} length\n */\n var computePressure = function (point, distance, length) {\n var k, pressure;\n if (distance < 10) {\n k = 0.2 + Math.pow(0.1 * distance, 0.4);\n } else if (distance > length - 10) {\n k = 0.2 + Math.pow(0.1 * (length - distance), 0.4);\n } else {\n k = 1.0;\n }\n\n pressure = k * Math.max(0.1, 1.0 - 0.1 * Math.sqrt(point.distance));\n if (isNaN(parseFloat(pressure))) {\n pressure = 0.5;\n }\n point.pressure = pressure;\n };\n\n /**\n * Compute control points of the first point.\n *\n * @private\n * @method computeFirstControls\n * @param {QuadraticPoint} first First point of the list to be computed\n * @param {QuadraticPoint} next Next point\n * @param {Number} penWidth Pen width\n */\n var computeFirstControls = function (first, next, penWidth) {\n var r = 0.5 * penWidth * first.pressure,\n nx = -r * next.uy,\n ny = r * next.ux;\n\n first.x1 = first.x + nx;\n first.y1 = first.y + ny;\n first.x2 = first.x - nx;\n first.y1 = first.y - ny;\n };\n\n /**\n * Compute control points between two points.\n *\n * @private\n * @method computeControls\n * @param {QuadraticPoint} point Point to be computed\n * @param {QuadraticPoint} next Next point\n * @param {Number} penWidth Pen width\n */\n var computeControls = function (point, next, penWidth) {\n var ux = point.ux + next.ux,\n uy = point.uy + next.uy,\n u = Math.sqrt(ux * ux + uy * uy);\n\n if (u !== 0) {\n // compute control points\n var r = 0.5 * penWidth * point.pressure;\n var nx = -r * uy / u;\n var ny = r * ux / u;\n point.x1 = point.x + nx;\n point.y1 = point.y + ny;\n point.x2 = point.x - nx;\n point.y2 = point.y - ny;\n } else {\n // collapse control points\n point.x1 = point.x;\n point.y1 = point.y;\n point.x2 = point.x;\n point.y2 = point.y;\n }\n };\n\n /**\n * Compute control points of the last point.\n *\n * @private\n * @method computeLastControls\n * @param {QuadraticPoint} last Last point to be computed\n * @param {Number} penWidth Pen width\n */\n var computeLastControls = function (last, penWidth) {\n var r = 0.5 * penWidth * last.pressure,\n nx = -r * last.uy,\n ny = r * last.ux;\n\n last.x1 = last.x + nx;\n last.y1 = last.y + ny;\n last.x2 = last.x - nx;\n last.y2 = last.y - ny;\n };\n\n // Export\n scope.AbstractRenderer = AbstractRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Text Renderer. It's used to calculate the text ink rendering in HTML5 canvas\n *\n * @class TextRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function TextRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n TextRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n TextRenderer.prototype.constructor = TextRenderer;\n\n /**\n * Draw text recognition result on HTML5 canvas. Scratch out results are use to redraw HTML5 Canvas\n *\n * @method drawRecognitionResult\n * @param {TextInputUnit[]} inputUnits\n * @param {TextDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n TextRenderer.prototype.drawRecognitionResult = function (inputUnits, recognitionResult, context, parameters) {\n this.drawInputUnits(inputUnits, context, parameters);\n };\n\n /**\n * Draw input units\n *\n * @method drawInputUnits\n * @param {TextInputUnit[]} inputUnits\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n TextRenderer.prototype.drawInputUnits = function (inputUnits, context, parameters) {\n for (var i in inputUnits) {\n this.drawComponents(inputUnits[i].getComponents(), context, parameters);\n }\n };\n\n /**\n * Draw components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n TextRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n scope.AbstractRenderer.prototype.drawStroke.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharacterInputComponent) {\n scope.AbstractRenderer.prototype.drawCharacter.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharInputComponent) {\n drawChar(component, context, parameters);\n } else if (component instanceof scope.StringInputComponent) {\n drawString(component, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n };\n\n /**\n * Draw char\n *\n * @private\n * @method drawChar\n * @param {CharInputComponent} char\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawChar = function (char, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw string\n *\n * @private\n * @method drawString\n * @param {StringInputComponent} string\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawString = function (string, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n // Export\n scope.TextRenderer = TextRenderer;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Represent the Shape Renderer. It's used to calculate the shape ink rendering in HTML5 canvas\n *\n * @class ShapeRenderer\n * @constructor\n */\n function ShapeRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n ShapeRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n ShapeRenderer.prototype.constructor = ShapeRenderer;\n\n /**\n * Draw shape recognition result on HTML5 canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {ShapeDocument} recognitionResult\n * @param {RenderingParameters} parameters\n * @param {Object} context\n */\n ShapeRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, parameters, context) {\n this.drawShapes(components, recognitionResult.getSegments(), parameters, context);\n };\n\n /**\n * Draw components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n scope.AbstractRenderer.prototype.drawStroke.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharacterInputComponent) {\n scope.AbstractRenderer.prototype.drawCharacter.call(this, component, context, parameters); // super\n } else if (component instanceof scope.ShapeEllipse) {\n this.drawShapeEllipse(component, context, parameters);\n } else if (component instanceof scope.ShapeLine) {\n this.drawShapeLine(component, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n };\n\n /**\n * Draw the shapes\n *\n * @method drawShapes\n * @param {AbstractComponent[]} components\n * @param {ShapeSegment[]} shapes\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapes = function (components, shapes, context, parameters) {\n\n for (var i in shapes) {\n var segment = shapes[i];\n var candidate = segment.getSelectedCandidate();\n\n if (candidate) {\n if (candidate instanceof scope.ShapeRecognized) {\n this.drawShapeRecognized(candidate, context, parameters);\n } else if (candidate instanceof scope.ShapeNotRecognized) {\n this.drawShapeNotRecognized(components, segment.getInkRanges(), candidate, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n }\n };\n\n /**\n * This method allow you to draw recognized shape\n *\n * @method drawShapeRecognized\n * @param {ShapeRecognized} shapeRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeRecognized = function (shapeRecognized, context, parameters) {\n\n var primitives = shapeRecognized.getPrimitives();\n\n for (var i in primitives) {\n this.drawShapePrimitive(primitives[i], context, parameters);\n }\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n var rectangleList = [];\n\n for (var j in primitives) {\n // Primitive bounding rect\n rectangleList.push(this.getPrimitiveBoundingBox(primitives[j]));\n }\n // Bounding rect of the entire shape\n var boundingRect = scope.MathUtils.getBoundingRect(rectangleList);\n this.drawRectangle(boundingRect, context, parameters);\n }\n };\n\n /**\n * This method allow you to draw not recognized shape\n *\n * @method drawShapeNotRecognized\n * @param {AbstractComponent[]} components\n * @param {ShapeInkRange[]} inkRanges\n * @param {ShapeNotRecognized} shapeNotRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeNotRecognized = function (components, inkRanges, shapeNotRecognized, context, parameters) {\n for (var i in inkRanges) {\n var extractedStrokes = this.extractStroke(components, inkRanges[i]);\n this.drawStrokes(extractedStrokes, context, parameters);\n }\n\n };\n\n /**\n * Draw shape primitive\n *\n * @method drawShapePrimitive\n * @param {AbstractShapePrimitive} primitive\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapePrimitive = function (primitive, context, parameters) {\n if (primitive instanceof scope.ShapeEllipse) {\n this.drawShapeEllipse(primitive, context, parameters);\n } else if (primitive instanceof scope.ShapeLine) {\n this.drawShapeLine(primitive, context, parameters);\n }\n };\n\n /**\n * Draw shape line\n *\n * @method drawShapeLine\n * @param {ShapeLine} shapeLine\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeLine = function (shapeLine, context, parameters) {\n\n this.drawLineByPoints(shapeLine.getFirstPoint(), shapeLine.getLastPoint(), context, parameters);\n\n if (shapeLine.hasBeginDecoration() && shapeLine.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getFirstPoint(), shapeLine.getBeginTangentAngle(), 12.0, context, parameters);\n }\n\n if (shapeLine.hasEndDecoration() && shapeLine.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getLastPoint(), shapeLine.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Draw an ellipse arc on context\n *\n * @method drawEllipseArc\n * @param {Point} centerPoint\n * @param {Number} maxRadius\n * @param {Number} minRadius\n * @param {String} orientation\n * @param {Number} startAngle\n * @param {Number} sweepAngle\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n * @returns {Point[]}\n */\n ShapeRenderer.prototype.drawEllipseArc = function (centerPoint, maxRadius, minRadius, orientation, startAngle, sweepAngle, context, parameters) {\n\n var angleStep = 0.02; // angle delta between interpolated\n\n var z1 = Math.cos(orientation);\n var z3 = Math.sin(orientation);\n var z2 = z1;\n var z4 = z3;\n z1 *= maxRadius;\n z2 *= minRadius;\n z3 *= maxRadius;\n z4 *= minRadius;\n\n var n = Math.floor(Math.abs(sweepAngle) / angleStep);\n\n var boundariesPoints = [];\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n\n for (var i = 0; i <= n; i++) {\n\n var angle = startAngle + (i / n) * sweepAngle; // points on the arc, in radian\n var alpha = Math.atan2(Math.sin(angle) / minRadius, Math.cos(angle) / maxRadius);\n\n var cosAlpha = Math.cos(alpha);\n var sinAlpha = Math.sin(alpha);\n\n // current point\n var x = centerPoint.x + z1 * cosAlpha - z4 * sinAlpha;\n var y = centerPoint.y + z2 * sinAlpha + z3 * cosAlpha;\n if (i === 0) {\n context.moveTo(x, y);\n } else {\n context.lineTo(x, y);\n }\n\n if (i === 0 || i === n) {\n boundariesPoints.push({x: x, y: y});\n }\n }\n\n context.stroke();\n\n } finally {\n context.restore();\n }\n\n return boundariesPoints;\n };\n\n /**\n * Draw shape ellipse\n *\n * @method drawShapeEllipse\n * @param {ShapeEllipse} shapeEllipse\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeEllipse = function (shapeEllipse, context, parameters) {\n\n var points = this.drawEllipseArc(\n shapeEllipse.getCenter(),\n shapeEllipse.getMaxRadius(),\n shapeEllipse.getMinRadius(),\n shapeEllipse.getOrientation(),\n shapeEllipse.getStartAngle(),\n shapeEllipse.getSweepAngle(),\n context, parameters);\n\n if (shapeEllipse.hasBeginDecoration() && shapeEllipse.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[0], shapeEllipse.getBeginTangentAngle(), 12.0, context, parameters);\n }\n\n if (shapeEllipse.hasEndDecoration() && shapeEllipse.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[1], shapeEllipse.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Get the bounding box of primitive\n *\n * @method getPrimitiveBoundingBox\n * @param {AbstractShapePrimitive} primitive\n * @returns {Object} the bounding box\n */\n ShapeRenderer.prototype.getPrimitiveBoundingBox = function (primitive) {\n var rectangle = null;\n if (primitive instanceof scope.ShapeEllipse) {\n rectangle = scope.MathUtils.getEllipseArcRect(primitive.getCenter(), primitive.getMaxRadius(), primitive.getMinRadius(), primitive.getOrientation(), primitive.getStartAngle(), primitive.getSweepAngle());\n } else if (primitive instanceof scope.ShapeLine) {\n rectangle = scope.MathUtils.getLineRect(primitive.getFirstPoint(), primitive.getLastPoint());\n }\n return rectangle;\n };\n\n // Export\n scope.ShapeRenderer = ShapeRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Math Renderer. It's used to calculate the math ink rendering in HTML5 canvas\n *\n * @class MathRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function MathRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n MathRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n MathRenderer.prototype.constructor = MathRenderer;\n\n /**\n * Draw math recognition result on HTML5 canvas. Scratch out results are use to redraw HTML5 Canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {MathDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MathRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) {\n var notScratchOutComponents = this.removeScratchOut(components, recognitionResult.getScratchOutResults());\n this.drawComponents(notScratchOutComponents, context, parameters);\n };\n\n /**\n * Remove scratch out from input components\n *\n * @param {AbstractComponent[]} components\n * @param {MathScratchOut[]} scratchOutResults\n * @returns {AbstractComponent[]} notScratchOutComponents\n */\n MathRenderer.prototype.removeScratchOut = function (components, scratchOutResults) {\n if (!scratchOutResults || scratchOutResults.length === 0) {\n return components;\n }\n\n var cloneComponents = components.slice(0);\n var componentsToRemove = [];\n\n for (var k in scratchOutResults) {\n if (scratchOutResults[k].getErasedInkRanges()) {\n for (var n in scratchOutResults[k].getErasedInkRanges()) {\n componentsToRemove.push(scratchOutResults[k].getErasedInkRanges()[n].getComponent());\n }\n for (var p in scratchOutResults[k].getInkRanges()) {\n componentsToRemove.push(scratchOutResults[k].getInkRanges()[p].getComponent());\n }\n }\n }\n\n componentsToRemove.sort(function (a, b) {\n return b - a;\n });\n\n for (var z in componentsToRemove) {\n cloneComponents.splice(componentsToRemove[z], 1);\n }\n return cloneComponents;\n };\n\n // Export\n scope.MathRenderer = MathRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Music Renderer. It's used to calculate the music ink rendering in HTML5 canvas\n *\n * @class MusicRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function MusicRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n MusicRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n MusicRenderer.prototype.constructor = MusicRenderer;\n\n /**\n * Draw music recognition result on HTML5 canvas. Scratch out results are use to redraw HTML5 Canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {MusicDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MusicRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) {\n var notScratchOutComponents = this.removeScratchOut(components, recognitionResult.getScratchOutResults());\n this.drawComponents(notScratchOutComponents, context, parameters);\n };\n\n /**\n * Remove scratch out from input components\n *\n * @param {AbstractComponent[]} components\n * @param {MusicScratchOut[]} scratchOutResults\n * @returns {AbstractComponent[]} notScratchOutComponents\n */\n MusicRenderer.prototype.removeScratchOut = function (components, scratchOutResults) {\n if (!scratchOutResults || scratchOutResults.length === 0) {\n return components;\n }\n\n var cloneComponents = components.slice(0);\n var componentsToRemove = [];\n\n for (var k in scratchOutResults) {\n if (scratchOutResults[k].getErasedInputRanges()) {\n for (var n in scratchOutResults[k].getErasedInputRanges()) {\n componentsToRemove.push(scratchOutResults[k].getErasedInputRanges()[n].getComponent());\n }\n for (var p in scratchOutResults[k].getInputRanges()) {\n componentsToRemove.push(scratchOutResults[k].getInputRanges()[p].getComponent());\n }\n }\n }\n\n componentsToRemove.sort(function (a, b) {\n return b - a;\n });\n\n for (var z in componentsToRemove) {\n cloneComponents.splice(componentsToRemove[z], 1);\n }\n return cloneComponents;\n };\n\n /**\n * Draw staff on the HTML5 canvas\n *\n * @method staffDrawing\n * @param {MusicStaff} staff\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MusicRenderer.prototype.drawStaff = function (staff, context, parameters) { // jshint ignore:line\n\n var staffHeight = staff.getTop() + ((staff.getCount() - 1) * staff.getGap());\n// var staves = Math.floor(context.canvas.clientHeight / staff.height);\n var staves = 1;\n\n context.beginPath();\n\n // Drawing horizontal staff lines\n for (var i = 0; i < staves; i++) {\n var offset = staffHeight * i;\n for (var j = 0; j < staff.getCount(); j++) {\n context.moveTo(0, (staff.getTop() + offset) + j * staff.getGap());\n context.lineTo(context.canvas.clientWidth, (staff.getTop() + offset) + j * staff.getGap());\n }\n }\n\n context.stroke();\n };\n\n /**\n * Draw components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MusicRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n scope.AbstractRenderer.prototype.drawStroke.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharacterInputComponent) {\n scope.AbstractRenderer.prototype.drawCharacter.call(this, component, context, parameters); // super\n } else if (component instanceof scope.MusicAccidentalInputComponent) {\n drawAccidental(component, context, parameters);\n } else if (component instanceof scope.MusicArpeggiateInputComponent) {\n drawArpeggiate(component, context, parameters);\n } else if (component instanceof scope.MusicBarInputComponent) {\n drawBar(component, context, parameters);\n } else if (component instanceof scope.MusicBeamInputComponent) {\n drawBeam(component, context, parameters);\n } else if (component instanceof scope.MusicClefInputComponent) {\n drawClef(component, context, parameters);\n } else if (component instanceof scope.MusicDecorationInputComponent) {\n drawDecoration(component, context, parameters);\n } else if (component instanceof scope.MusicDotsInputComponent) {\n drawDots(component, context, parameters);\n } else if (component instanceof scope.MusicHeadInputComponent) {\n drawHead(component, context, parameters);\n } else if (component instanceof scope.MusicLedgerLineInputComponent) {\n drawLedgerLine(component, context, parameters);\n } else if (component instanceof scope.MusicRestInputComponent) {\n drawRest(component, context, parameters);\n } else if (component instanceof scope.MusicStemInputComponent) {\n drawStem(component, context, parameters);\n } else if (component instanceof scope.MusicTieOrSlurInputComponent) {\n drawTieOrSlur(component, context, parameters);\n } else if (component instanceof scope.MusicTimeSignatureInputComponent) {\n drawTimeSignature(component, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n };\n\n /**\n * Draw accidental\n *\n * @private\n * @method drawAccidental\n * @param {MusicAccidentalInputComponent} accidental\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawAccidental = function (accidental, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw arpeggiate\n *\n * @private\n * @method drawArpeggiate\n * @param {MusicArpeggiateInputComponent} arpeggiate\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawArpeggiate = function (arpeggiate, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw bar\n *\n * @private\n * @method drawBar\n * @param {MusicBarInputComponent} bar\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawBar = function (bar, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw beam\n *\n * @private\n * @method drawBeam\n * @param {MusicBeamInputComponent} beam\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawBeam = function (beam, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw clef\n *\n * @private\n * @method drawClef\n * @param {MusicClefInputComponent} clef\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawClef = function (clef, context, parameters) { // jshint ignore:line\n var src = 'data:image/svg+xml,';\n switch (clef.getValue().getSymbol()) {\n case 'F':\n src = src + '';\n break;\n case 'C':\n src = src + '';\n break;\n case 'G':\n src = src + '';\n break;\n default:\n throw new Error('Unknown music clef symbol');\n }\n\n var imageObj = new Image();\n imageObj.onload = function () {\n var ratio = clef.getBoundingBox().getHeight() / this.height;\n clef.getBoundingBox().setWidth(this.width * ratio);\n context.drawImage(imageObj, clef.getBoundingBox().getX(), clef.getBoundingBox().getY(), clef.getBoundingBox().getWidth(), clef.getBoundingBox().getHeight());\n };\n imageObj.src = src;\n };\n\n /**\n * Draw decoration\n *\n * @private\n * @method drawDecoration\n * @param {MusicDecorationInputComponent} decoration\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawDecoration = function (decoration, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw dots\n *\n * @private\n * @method drawDots\n * @param {MusicDotsInputComponent} dots\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawDots = function (dots, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw head\n *\n * @private\n * @method drawHead\n * @param {MusicHeadInputComponent} head\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawHead = function (head, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw ledgerLine\n *\n * @private\n * @method drawLedgerLine\n * @param {MusicLedgerLineInputComponent} ledgerLine\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawLedgerLine = function (ledgerLine, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw rest\n *\n * @private\n * @method drawRest\n * @param {MusicRestInputComponent} rest\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawRest = function (rest, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw stem\n *\n * @private\n * @method drawStem\n * @param {MusicStemInputComponent} stem\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawStem = function (stem, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw tieOrSlur\n *\n * @private\n * @method drawTieOrSlur\n * @param {MusicTieOrSlurInputComponent} tieOrSlur\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawTieOrSlur = function (tieOrSlur, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw timeSignature\n *\n * @private\n * @method drawTimeSignature\n * @param {MusicTimeSignatureInputComponent} timeSignature\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawTimeSignature = function (timeSignature, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n // Export\n scope.MusicRenderer = MusicRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Analyzer Renderer. It's used to calculate the analyzer ink rendering in HTML5 canvas\n *\n * @class AnalyzerRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function AnalyzerRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n AnalyzerRenderer.prototype.constructor = AnalyzerRenderer;\n\n /**\n * Draw shape recognition result on HTML5 canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {AnalyzerDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) {\n this.drawShapes(components, recognitionResult.getShapes(), context, parameters);\n this.drawTables(components, recognitionResult.getTables(), context, parameters);\n this.drawTextLines(components, recognitionResult.getTextLines(), context, parameters);\n// this.drawGroups(strokes, recognitionResult.getGroups(), context, parameters); // TODO: not implemented\n };\n\n /**\n * Draw table\n *\n * @method drawTables\n * @param {AbstractComponent[]} components\n * @param {AnalyzerTable[]} tables\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawTables = function (components, tables, context, parameters) {\n for (var i in tables) {\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n for (var j in tables[i].getCells()) {\n this.drawCell(tables[i].getCells()[j], context, parameters);\n }\n }\n for (var k in tables[i].getLines()) {\n this.drawLine(tables[i].getLines()[k], context, parameters);\n }\n }\n };\n\n /**\n * Draw the text line\n *\n * @method drawTextLines\n * @param {AbstractComponent[]} components\n * @param {AnalyzerTextLine[]} textLines\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawTextLines = function (components, textLines, context, parameters) {\n\n for (var i in textLines) {\n var textLine = textLines[i];\n var data = textLine.getData();\n if (data) {\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n this.drawRectangle(data.getBoundingBox(), context, parameters);\n }\n\n var text = textLine.getTextDocument().getTextSegment().getSelectedCandidate().getLabel();\n this.drawText(data.getBoundingBox(), text, data.getJustificationType(), data.getTextHeight(), data.getBaselinePos(), context, parameters);\n\n var underlines = textLine.getUnderlineList();\n for (var j in underlines) {\n this.drawUnderline(data.getBoundingBox(), underlines[j], text, data.getTextHeight(), data.getBaselinePos() + data.getTextHeight() / 10, context, parameters);\n }\n }\n }\n };\n\n /**\n * Draw text on analyser\n *\n * @method drawText\n * @param {Rectangle} boundingBox\n * @param {String} text\n * @param {String} justificationType\n * @param {Number} textHeight\n * @param {Number} baseline\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawText = function (boundingBox, text, justificationType, textHeight, baseline, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n context.font = parameters.getDecoration() + textHeight + 'px ' + parameters.getFont();\n } else {\n context.fillStyle = this.getParameters().getColor();\n context.strokeStyle = this.getParameters().getColor();\n context.globalAlpha = this.getParameters().getAlpha();\n context.lineWidth = 0.5 * this.getParameters().getWidth();\n context.font = this.getParameters().getDecoration() + textHeight + 'px ' + this.parameters.getFont();\n }\n context.textAlign = (justificationType === 'CENTER') ? 'center' : 'left';\n\n context.fillText(text, boundingBox.getX(), baseline, boundingBox.getWidth());\n\n } finally {\n context.restore();\n }\n };\n\n /**\n * Draw Underline\n *\n * @method drawUnderline\n * @param {Rectangle} boundingBox\n * @param {AnalyzerUnderline} underline\n * @param {String} text\n * @param {Number} textHeight\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawUnderline = function (boundingBox, underline, text, textHeight, baseline, context, parameters) {\n var topLeft = boundingBox.getTopLeftPoint();\n var firstCharacter = underline.getData().getFirstCharacter();\n var lastCharacter = underline.getData().getLastCharacter();\n\n if (parameters) {\n context.font = parameters.getDecoration() + textHeight + 'px ' + parameters.getFont();\n } else {\n context.font = this.getParameters().getDecoration() + textHeight + 'px ' + this.parameters.getFont();\n }\n\n var textMetrics = context.measureText(text.substring(0, firstCharacter));\n var x1 = topLeft.x + textMetrics.width;\n\n textMetrics = context.measureText(text.substring(firstCharacter, lastCharacter + 1));\n var x2 = x1 + textMetrics.width;\n this.drawLine(new scope.AnalyzerLine({\n data: new scope.AnalyzerLineData({\n p1: {x: x1, y: baseline},\n p2: {x: x2, y: baseline}\n })\n }), context, parameters);\n };\n\n /**\n * Draw Groups\n *\n * @method drawGroups\n * @param {AbstractComponent[]} components\n * @param {AnalyzerGroup[]} groups\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawGroups = function (components, groups, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw a line\n *\n * @method drawLine\n * @param {AnalyzerLine} line\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawLine = function (line, context, parameters) {\n if (line.getData()) {\n this.drawLineByPoints(line.getData().getP1(), line.getData().getP2(), context, parameters);\n }\n };\n\n /**\n * Draw a cell\n *\n * @method drawCell\n * @param {AnalyzerCell} cell\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawCell = function (cell, context, parameters) {\n if (cell.getData()) {\n this.drawRectangle(cell.getData().getBoundingBox(), context, parameters);\n }\n };\n\n /**\n * Draw the shapes\n *\n * @method drawShapes\n * @param {AbstractComponent[]} components\n * @param {ShapeSegment[]} shapes\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapes = function (components, shapes, context, parameters) {\n\n for (var i in shapes) {\n var segment = shapes[i];\n var candidate = segment.getSelectedCandidate();\n\n if (candidate) {\n if (candidate instanceof scope.ShapeRecognized) {\n this.drawShapeRecognized(candidate, context, parameters);\n } else if (candidate instanceof scope.ShapeNotRecognized) {\n this.drawShapeNotRecognized(components, segment.getInkRanges(), candidate, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n }\n };\n\n /**\n * This method allow you to draw recognized shape\n *\n * @method drawShapeRecognized\n * @param {ShapeRecognized} shapeRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeRecognized = function (shapeRecognized, context, parameters) {\n\n var primitives = shapeRecognized.getPrimitives();\n\n for (var i in primitives) {\n this.drawShapePrimitive(primitives[i], context, parameters);\n }\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n var rectangleList = [];\n\n for (var j in primitives) {\n // Primitive bounding rect\n rectangleList.push(this.getPrimitiveBoundingBox(primitives[j]));\n }\n // Bounding rect of the entire shape\n var boundingRect = scope.MathUtils.getBoundingRect(rectangleList);\n this.drawRectangle(boundingRect, context, parameters);\n }\n };\n\n /**\n * This method allow you to draw not recognized shape\n *\n * @method drawShapeNotRecognized\n * @param {AbstractComponent[]} components\n * @param {AnalyzerInkRange[]} inkRanges\n * @param {ShapeNotRecognized} shapeNotRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeNotRecognized = function (components, inkRanges, shapeNotRecognized, context, parameters) {\n for (var i in inkRanges) {\n var extractedStrokes = this.extractStroke(components, inkRanges[i]);\n this.drawStrokes(extractedStrokes, context, parameters);\n }\n\n };\n\n /**\n * Draw shape primitive\n *\n * @method drawShapePrimitive\n * @param {AbstractShapePrimitive} primitive\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapePrimitive = function (primitive, context, parameters) {\n if (primitive instanceof scope.ShapeEllipse) {\n this.drawShapeEllipse(primitive, context, parameters);\n } else if (primitive instanceof scope.ShapeLine) {\n this.drawShapeLine(primitive, context, parameters);\n }\n };\n\n /**\n * Draw shape line\n *\n * @method drawShapeLine\n * @param {ShapeLine} shapeLine\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeLine = function (shapeLine, context, parameters) {\n\n this.drawLineByPoints(shapeLine.getFirstPoint(), shapeLine.getLastPoint(), context, parameters);\n if (shapeLine.hasBeginDecoration() && shapeLine.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getFirstPoint(), shapeLine.getBeginTangentAngle(), 12.0, context, parameters);\n }\n if (shapeLine.hasEndDecoration() && shapeLine.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getLastPoint(), shapeLine.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Draw an ellipse arc on context\n *\n * @method drawEllipseArc\n * @param {Point} centerPoint\n * @param {Number} maxRadius\n * @param {Number} minRadius\n * @param {String} orientation\n * @param {Number} startAngle\n * @param {Number} sweepAngle\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n * @returns {Point[]}\n */\n AnalyzerRenderer.prototype.drawEllipseArc = function (centerPoint, maxRadius, minRadius, orientation, startAngle, sweepAngle, context, parameters) {\n\n var angleStep = 0.02; // angle delta between interpolated\n\n var z1 = Math.cos(orientation);\n var z3 = Math.sin(orientation);\n var z2 = z1;\n var z4 = z3;\n z1 *= maxRadius;\n z2 *= minRadius;\n z3 *= maxRadius;\n z4 *= minRadius;\n\n var n = Math.floor(Math.abs(sweepAngle) / angleStep);\n\n var boundariesPoints = [];\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.getParameters().getColor();\n context.strokeStyle = this.getParameters().getColor();\n context.globalAlpha = this.getParameters().getAlpha();\n context.lineWidth = 0.5 * this.getParameters().getWidth();\n }\n\n context.beginPath();\n\n for (var i = 0; i <= n; i++) {\n\n var angle = startAngle + (i / n) * sweepAngle; // points on the arc, in radian\n var alpha = Math.atan2(Math.sin(angle) / minRadius, Math.cos(angle) / maxRadius);\n\n var cosAlpha = Math.cos(alpha);\n var sinAlpha = Math.sin(alpha);\n\n // current point\n var x = centerPoint.x + z1 * cosAlpha - z4 * sinAlpha;\n var y = centerPoint.y + z2 * sinAlpha + z3 * cosAlpha;\n if (i === 0) {\n context.moveTo(x, y);\n } else {\n context.lineTo(x, y);\n }\n\n if (i === 0 || i === n) {\n boundariesPoints.push({x: x, y: y});\n }\n }\n\n context.stroke();\n\n } finally {\n context.restore();\n }\n\n return boundariesPoints;\n };\n\n /**\n * Draw shape ellipse\n *\n * @method drawShapeEllipse\n * @param {ShapeEllipse} shapeEllipse\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeEllipse = function (shapeEllipse, context, parameters) {\n\n var points = this.drawEllipseArc(\n shapeEllipse.getCenter(),\n shapeEllipse.getMaxRadius(),\n shapeEllipse.getMinRadius(),\n shapeEllipse.getOrientation(),\n shapeEllipse.getStartAngle(),\n shapeEllipse.getSweepAngle(),\n context, parameters);\n\n if (shapeEllipse.hasBeginDecoration() && shapeEllipse.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[0], shapeEllipse.getBeginTangentAngle(), 12.0, context, parameters);\n }\n if (shapeEllipse.hasEndDecoration() && shapeEllipse.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[1], shapeEllipse.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Get the bounding box of primitive\n *\n * @method getPrimitiveBoundingBox\n * @param {AbstractShapePrimitive} primitive\n * @returns {Rectangle} rectangle\n */\n AnalyzerRenderer.prototype.getPrimitiveBoundingBox = function (primitive) {\n var rectangle = null;\n if (primitive instanceof scope.ShapeEllipse) {\n rectangle = scope.MathUtils.getEllipseArcRect(primitive.getCenter(), primitive.getMaxRadius(), primitive.getMinRadius(), primitive.getOrientation(), primitive.getStartAngle(), primitive.getSweepAngle());\n } else if (primitive instanceof scope.ShapeLine) {\n rectangle = scope.MathUtils.getLineRect(primitive.getFirstPoint(), primitive.getLastPoint());\n }\n return rectangle;\n };\n\n // Export\n scope.AnalyzerRenderer = AnalyzerRenderer;\n})(MyScript);"]} \ No newline at end of file +{"version":3,"sources":["../src/MyScript.js","../src/common/generic/point.js","../src/common/generic/quadraticPoint.js","../src/common/generic/rectangle.js","../src/common/inkManager.js","../src/common/mathUtils.js","../src/common/abstractWSMessage.js","../src/input/generic/components/abstractComponent.js","../src/input/generic/components/stroke.js","../src/input/generic/components/characterInputComponent.js","../src/input/generic/components/characterInputComponentAlternate.js","../src/input/generic/abstractParameter.js","../src/input/generic/abstractRecognitionInput.js","../src/input/generic/abstractRecognitionData.js","../src/input/generic/recognitionLanguagesData.js","../src/input/generic/abstractStartRequestWSMessage.js","../src/input/generic/abstractContinueRequestWSMessage.js","../src/input/generic/challengeRequestWSMessage.js","../src/input/generic/initRequestWSMessage.js","../src/input/generic/resetRequestWSMessage.js","../src/input/text/components/abstractTextInputComponent.js","../src/input/text/components/charInputComponent.js","../src/input/text/components/stringInputComponent.js","../src/input/text/textInputUnit.js","../src/input/text/textParameter.js","../src/input/text/textProperties.js","../src/input/text/textRecognitionInput.js","../src/input/text/textRecognitionData.js","../src/input/text/textStartRequestWSMessage.js","../src/input/text/textContinueRequestWSMessage.js","../src/input/shape/shapeParameter.js","../src/input/shape/shapeRecognitionInput.js","../src/input/shape/shapeRecognitionData.js","../src/input/math/mathParameter.js","../src/input/math/mathRecognitionInput.js","../src/input/math/mathRecognitionData.js","../src/input/math/mathStartRequestWSMessage.js","../src/input/math/mathContinueRequestWSMessage.js","../src/input/music/components/abstractMusicInputComponent.js","../src/input/music/components/musicAccidentalInputComponent.js","../src/input/music/components/musicArpeggiateInputComponent.js","../src/input/music/components/musicBarInput.js","../src/input/music/components/musicBarInputComponent.js","../src/input/music/components/musicBeamInput.js","../src/input/music/components/musicBeamInputComponent.js","../src/input/music/components/musicClefInput.js","../src/input/music/components/musicClefInputComponent.js","../src/input/music/components/musicDecorationInput.js","../src/input/music/components/musicDecorationInputComponent.js","../src/input/music/components/musicDotsInputComponent.js","../src/input/music/components/musicHeadInputComponent.js","../src/input/music/components/musicLedgerLineInputComponent.js","../src/input/music/components/musicRestInputComponent.js","../src/input/music/components/musicStemInputComponent.js","../src/input/music/components/musicTieOrSlurInputComponent.js","../src/input/music/components/musicTimeSignatureInputComponent.js","../src/input/music/musicStaff.js","../src/input/music/musicParameter.js","../src/input/music/musicRecognitionInput.js","../src/input/music/musicRecognitionData.js","../src/input/analyzer/analyzerParameter.js","../src/input/analyzer/analyzerRecognitionInput.js","../src/input/analyzer/analyzerRecognitionData.js","../src/output/generic/abstractResult.js","../src/output/generic/abstractRecoResponseWSMessage.js","../src/output/generic/challengeResponseWSMessage.js","../src/output/generic/errorResponseWSMessage.js","../src/output/generic/initResponseWSMessage.js","../src/output/text/textInkRange.js","../src/output/text/textCandidate.js","../src/output/text/textCharCandidate.js","../src/output/text/textWordCandidate.js","../src/output/text/textResultCandidate.js","../src/output/text/textDocument.js","../src/output/text/textResult.js","../src/output/text/textSegment.js","../src/output/text/textCharSegment.js","../src/output/text/textWordSegment.js","../src/output/text/textResultSegment.js","../src/output/text/textTagItem.js","../src/output/text/textResponseWSMessage.js","../src/output/shape/abstractShapePrimitive.js","../src/output/shape/abstractDecoratedShape.js","../src/output/shape/shapeCandidate.js","../src/output/shape/shapeDocument.js","../src/output/shape/shapeEllipse.js","../src/output/shape/shapeErased.js","../src/output/shape/shapeInkRange.js","../src/output/shape/shapeLine.js","../src/output/shape/shapeNotRecognized.js","../src/output/shape/shapeRecognized.js","../src/output/shape/shapeResult.js","../src/output/shape/shapeScratchOut.js","../src/output/shape/shapeSegment.js","../src/output/math/mathNode.js","../src/output/math/mathNonTerminalNode.js","../src/output/math/mathResultElement.js","../src/output/math/mathRuleNode.js","../src/output/math/mathDocument.js","../src/output/math/mathInkRange.js","../src/output/math/mathLaTexResultElement.js","../src/output/math/mathMathMLResultElement.js","../src/output/math/mathResult.js","../src/output/math/mathScratchOut.js","../src/output/math/mathSymbolTreeResultElement.js","../src/output/math/mathTerminalNode.js","../src/output/math/mathTerminalNodeCandidate.js","../src/output/math/mathFenceRuleNode.js","../src/output/math/mathFractionRuleNode.js","../src/output/math/mathHorizontalPairRuleNode.js","../src/output/math/mathIdentityRuleNode.js","../src/output/math/mathLeftFenceRuleNode.js","../src/output/math/mathOverscriptRuleNode.js","../src/output/math/mathPreSuperscriptRuleNode.js","../src/output/math/mathSqrtRuleNode.js","../src/output/math/mathSubscriptRuleNode.js","../src/output/math/mathSubSuperscriptRuleNode.js","../src/output/math/mathSuperscriptRuleNode.js","../src/output/math/mathUnderOverscriptRuleNode.js","../src/output/math/mathUnderscriptRuleNode.js","../src/output/math/mathVerticalPairRuleNode.js","../src/output/math/mathExponentiableNonTerminalNode.js","../src/output/math/mathExpressionNonTerminalNode.js","../src/output/math/mathSqrtNonTerminalNode.js","../src/output/math/mathVectorNonTerminalNode.js","../src/output/math/mathSystemNonTerminalNode.js","../src/output/math/mathTermNonTerminalNode.js","../src/output/math/mathResponseWSMessage.js","../src/output/music/musicElement.js","../src/output/music/musicResultElement.js","../src/output/music/musicAccidental.js","../src/output/music/musicAnnotation.js","../src/output/music/musicArpeggiate.js","../src/output/music/musicBar.js","../src/output/music/musicBeam.js","../src/output/music/musicChord.js","../src/output/music/musicClef.js","../src/output/music/musicDecoration.js","../src/output/music/musicDocument.js","../src/output/music/musicDots.js","../src/output/music/musicHead.js","../src/output/music/musicInputRange.js","../src/output/music/musicKeySignature.js","../src/output/music/musicKeySignatureData.js","../src/output/music/musicLedgerLine.js","../src/output/music/musicNote.js","../src/output/music/musicPart.js","../src/output/music/musicPitchData.js","../src/output/music/musicRest.js","../src/output/music/musicResult.js","../src/output/music/musicScore.js","../src/output/music/musicScoreTreeResultElement.js","../src/output/music/musicScratchOut.js","../src/output/music/musicSlur.js","../src/output/music/musicStem.js","../src/output/music/musicTie.js","../src/output/music/musicTimeModificationData.js","../src/output/music/musicTimeSignature.js","../src/output/music/musicTupletBracket.js","../src/output/music/musicTuplet.js","../src/output/music/musicXMLResultElement.js","../src/output/analyzer/analyzerElement.js","../src/output/analyzer/analyzerCell.js","../src/output/analyzer/analyzerCellData.js","../src/output/analyzer/analyzerDocument.js","../src/output/analyzer/analyzerElementReference.js","../src/output/analyzer/analyzerGroup.js","../src/output/analyzer/analyzerInkRange.js","../src/output/analyzer/analyzerLine.js","../src/output/analyzer/analyzerLineData.js","../src/output/analyzer/analyzerRecognizedStroke.js","../src/output/analyzer/analyzerResult.js","../src/output/analyzer/analyzerStrokeType.js","../src/output/analyzer/analyzerTable.js","../src/output/analyzer/analyzerTableData.js","../src/output/analyzer/analyzerTextLine.js","../src/output/analyzer/analyzerTextLineData.js","../src/output/analyzer/analyzerUnderline.js","../src/output/analyzer/analyzerUnderlineData.js","../src/networking/networkInterface.js","../src/recognition/abstractRecognizer.js","../src/recognition/abstractWSRecognizer.js","../src/recognition/textRecognizer.js","../src/recognition/textWSRecognizer.js","../src/recognition/shapeRecognizer.js","../src/recognition/mathRecognizer.js","../src/recognition/mathWSRecognizer.js","../src/recognition/musicRecognizer.js","../src/recognition/analyzerRecognizer.js","../src/rendering/renderingParameters.js","../src/rendering/abstractRenderer.js","../src/rendering/textRenderer.js","../src/rendering/shapeRenderer.js","../src/rendering/mathRenderer.js","../src/rendering/musicRenderer.js","../src/rendering/analyzerRenderer.js"],"names":[],"mappings":"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EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG;AAChlC,gBAAgB,KAAK,CAAC;AACtB,YAAY,IAAI,CAAC,CAAC,CAAC,EAAE;AACrB,gBAAgB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG;AACv/C,gBAAgB,KAAK,CAAC;AACtB,YAAY,IAAI,CAAC,CAAC,CAAC,EAAE;AACrB,gBAAgB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG;AACxyC,gBAAgB,KAAK,CAAC;AACtB,YAAY,OAAO,CAAC;AACpB,gBAAgB,KAAK,CAAC,GAAG,CAAC,KAAK,E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","file":"myscript.js","sourcesContent":["/**\n * MyScript javascript library\n *\n * @module MyScript\n * @requires Q\n * @requires CryptoJS\n */\n/*global MyScript:true */\nMyScript = {};","'use strict';\n\n(function (scope) {\n /**\n * Point\n *\n * @class Point\n * @param {Object} [obj]\n * @constructor\n */\n function Point(obj) {\n if (obj) {\n this.x = obj.x;\n this.y = obj.y;\n }\n }\n\n /**\n * Get x\n *\n * @method getX\n * @returns {Number}\n */\n Point.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Set x\n *\n * @method setX\n * @param {Number} x\n */\n Point.prototype.setX = function (x) {\n this.x = x;\n };\n\n /**\n * Get y\n *\n * @method getY\n * @returns {Number}\n */\n Point.prototype.getY = function () {\n return this.y;\n };\n\n /**\n * Set y\n *\n * @method setY\n * @param {Number} y\n */\n Point.prototype.setY = function (y) {\n this.y = y;\n };\n\n // Export\n scope.Point = Point;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Complex Point object used for quadratic calculation\n *\n * @class QuadraticPoint\n * @param {Object} [obj]\n * @constructor\n */\n function QuadraticPoint(obj) {\n scope.Point.call(this, obj);\n this.pressure = 0.5;\n this.distance = 0.0;\n this.length = 0.0;\n this.ux = 0.0;\n this.uy = 0.0;\n this.x1 = 0.0;\n this.x2 = 0.0;\n this.y1 = 0.0;\n this.y2 = 0.0;\n }\n\n /**\n * Inheritance property\n */\n QuadraticPoint.prototype = new scope.Point();\n\n /**\n * Constructor property\n */\n QuadraticPoint.prototype.constructor = QuadraticPoint;\n\n /**\n * Get pressure\n *\n * @method getPressure\n * @returns {Number}\n */\n QuadraticPoint.prototype.getPressure = function () {\n return this.pressure;\n };\n\n /**\n * Set pressure\n *\n * @method setPressure\n * @param {Number} pressure\n */\n QuadraticPoint.prototype.setPressure = function (pressure) {\n this.pressure = pressure;\n };\n\n /**\n * Get distance\n *\n * @method getDistance\n * @returns {Number}\n */\n QuadraticPoint.prototype.getDistance = function () {\n return this.distance;\n };\n\n /**\n * Set distance\n *\n * @method setDistance\n * @param {Number} distance\n */\n QuadraticPoint.prototype.setDistance = function (distance) {\n this.distance = distance;\n };\n\n /**\n * Get length\n *\n * @method getLength\n * @returns {Number}\n */\n QuadraticPoint.prototype.getLength = function () {\n return this.length;\n };\n\n /**\n * Set length\n *\n * @method setLength\n * @param {Number} length\n */\n QuadraticPoint.prototype.setLength = function (length) {\n this.length = length;\n };\n\n /**\n * Get ux\n *\n * @method getUx\n * @returns {Number}\n */\n QuadraticPoint.prototype.getUx = function () {\n return this.ux;\n };\n\n /**\n * Set ux\n *\n * @method setUx\n * @param {Number} ux\n */\n QuadraticPoint.prototype.setUx = function (ux) {\n this.ux = ux;\n };\n\n /**\n * Get uy\n *\n * @method getUy\n * @returns {Number}\n */\n QuadraticPoint.prototype.getUy = function () {\n return this.uy;\n };\n\n /**\n * Set uy\n *\n * @method setUy\n * @param {Number} uy\n */\n QuadraticPoint.prototype.setUy = function (uy) {\n this.uy = uy;\n };\n\n /**\n * Get x1\n *\n * @method getX1\n * @returns {Number}\n */\n QuadraticPoint.prototype.getX1 = function () {\n return this.x1;\n };\n\n /**\n * Set x1\n *\n * @method setX1\n * @param {Number} x1\n */\n QuadraticPoint.prototype.setX1 = function (x1) {\n this.x1 = x1;\n };\n\n /**\n * Get x2\n *\n * @method getX2\n * @returns {Number}\n */\n QuadraticPoint.prototype.getX2 = function () {\n return this.x2;\n };\n\n /**\n * Set x2\n *\n * @method setX2\n * @param {Number} x2\n */\n QuadraticPoint.prototype.setX2 = function (x2) {\n this.x2 = x2;\n };\n\n /**\n * Get y1\n *\n * @method getY1\n * @returns {Number}\n */\n QuadraticPoint.prototype.getY1 = function () {\n return this.y1;\n };\n\n /**\n * Set y2\n *\n * @method setY1\n * @param {Number} y1\n */\n QuadraticPoint.prototype.setY1 = function (y1) {\n this.y1 = y1;\n };\n\n /**\n * Get y2\n *\n * @method getY2\n * @returns {Number}\n */\n QuadraticPoint.prototype.getY2 = function () {\n return this.y2;\n };\n\n /**\n * Set y2\n *\n * @method setY2\n * @param {Number} y2\n */\n QuadraticPoint.prototype.setY2 = function (y2) {\n this.y2 = y2;\n };\n\n // Export\n scope.QuadraticPoint = QuadraticPoint;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Rectangle\n *\n * @class Rectangle\n * @param {Object} [obj]\n * @constructor\n */\n function Rectangle(obj) {\n if (obj) {\n this.x = obj.x;\n this.y = obj.y;\n this.width = obj.width;\n this.height = obj.height;\n }\n }\n\n /**\n * Get top-left x\n *\n * @method getX\n * @returns {Number}\n */\n Rectangle.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Set top-left x\n *\n * @method setX\n * @param {Number} x\n */\n Rectangle.prototype.setX = function (x) {\n this.x = x;\n };\n\n /**\n * Get top-left y\n *\n * @method getY\n * @returns {Number}\n */\n Rectangle.prototype.getY = function () {\n return this.y;\n };\n\n /**\n * Set top-left y\n *\n * @method setY\n * @param {Number} y\n */\n Rectangle.prototype.setY = function (y) {\n this.y = y;\n };\n\n /**\n * Get top-left point\n *\n * @method getTopLeftPoint\n * @returns {Point}\n */\n Rectangle.prototype.getTopLeftPoint = function () {\n var point = new scope.Point();\n point.setX(this.x);\n point.setY(this.y);\n return point;\n };\n\n /**\n * Set top-left point\n *\n * @method setTopLeftPoint\n * @param {Point} topLeftPoint\n */\n Rectangle.prototype.setTopLeftPoint = function (topLeftPoint) {\n this.x = topLeftPoint.getX();\n this.y = topLeftPoint.getY();\n };\n\n /**\n * Get width\n *\n * @method getWidth\n * @returns {Number}\n */\n Rectangle.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Set width\n *\n * @method setWidth\n * @param {Number} width\n */\n Rectangle.prototype.setWidth = function (width) {\n this.width = width;\n };\n\n /**\n * Get height\n *\n * @method getHeight\n * @returns {Number}\n */\n Rectangle.prototype.getHeight = function () {\n return this.height;\n };\n\n /**\n * Set height\n *\n * @method setHeight\n * @returns {Number} height\n */\n Rectangle.prototype.setHeight = function (height) {\n this.height = height;\n };\n\n // Export\n scope.Rectangle = Rectangle;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * The InkManager class that can use to store writing strokes and manage the undo/redo/clear system\n *\n * @class InkManager\n * @constructor\n */\n function InkManager() {\n this.writing = false;\n this.strokes = [];\n this.currentStroke = null;\n this.undoRedoStack = [];\n }\n\n /**\n * Is Wrinting a stoke\n *\n * @method isWriting\n * @returns {Boolean}\n */\n InkManager.prototype.isWriting = function () {\n return this.writing;\n };\n\n /**\n * Get the last current Stroke write\n *\n * @method getCurrentStroke\n * @returns {Stroke}\n */\n InkManager.prototype.getCurrentStroke = function () {\n return this.currentStroke;\n };\n\n /**\n * Start ink capture\n *\n * @method startInkCapture\n * @param {Number} x abscissa coordinate\n * @param {Number} y ordinate coordinate\n * @param {Number} [t] event timestamp\n */\n InkManager.prototype.startInkCapture = function (x, y, t) {\n if (!this.writing) {\n if (this.isRedoEmpty()) {\n this.clearUndoRedoStack();\n }\n this.currentStroke = new scope.Stroke();\n this.currentStroke.addX(x);\n this.currentStroke.addY(y);\n this.currentStroke.addT(t);\n this.writing = true;\n } else {\n throw new Error('Stroke capture already running');\n }\n };\n\n /**\n * Continue ink capture\n *\n * @method continueInkCapture\n * @param {Number} x abscissa coordinate\n * @param {Number} y ordinate coordinate\n * @param {Number} [t] event timestamp\n */\n InkManager.prototype.continueInkCapture = function (x, y, t) {\n if (this.writing) {\n this.currentStroke.addX(x);\n this.currentStroke.addY(y);\n this.currentStroke.addT(t);\n } else {\n throw new Error('Missing startInkCapture');\n }\n };\n\n /**\n * End ink capture\n *\n * @method endInkCapture\n */\n InkManager.prototype.endInkCapture = function () {\n if (this.writing) {\n this.strokes.push(this.currentStroke);\n this.writing = false;\n } else {\n throw new Error('Missing startInkCapture');\n }\n };\n\n /**\n * Clear the strokes list\n *\n * @method clear\n */\n InkManager.prototype.clear = function () {\n this.writing = false;\n this.strokes = [];\n this.currentStroke = null;\n this.undoRedoStack = [];\n };\n\n /**\n * Is The Strokes list is empty\n *\n * @method isEmpty\n * @returns {Boolean}\n */\n InkManager.prototype.isEmpty = function () {\n return this.strokes.length === 0;\n };\n\n /**\n * Is the Undo/Redo Stack empty\n *\n * @method isRedoEmpty\n * @returns {Boolean}\n */\n InkManager.prototype.isRedoEmpty = function () {\n return this.undoRedoStack.length === 0;\n };\n\n /**\n * Make an undo\n *\n * @method undo\n */\n InkManager.prototype.undo = function () {\n if (!this.isEmpty()) {\n this.undoRedoStack.push(this.strokes[this.strokes.length - 1]);\n this.strokes.pop();\n }\n };\n\n /**\n * Make a redo\n *\n * @method redo\n */\n InkManager.prototype.redo = function () {\n if (!this.isRedoEmpty()) {\n this.strokes.push(this.undoRedoStack[this.undoRedoStack.length - 1]);\n this.undoRedoStack.pop();\n }\n };\n\n /**\n * Get the strokes list\n *\n * @method getStokes\n * @returns {Stroke[]}\n */\n InkManager.prototype.getStrokes = function () {\n return this.strokes;\n };\n\n /**\n * Get the Undo/Redo Stack\n *\n * @method getUndoRedoStack\n * @returns {Stroke[]}\n */\n InkManager.prototype.getUndoRedoStack = function () {\n return this.undoRedoStack;\n };\n\n /**\n * Clear the Undo/Redo Stack\n *\n * @method clearUndoRedoStack\n */\n InkManager.prototype.clearUndoRedoStack = function () {\n this.undoRedoStack = [];\n };\n\n /**\n * Copy the strokes values from index on an other list of strokes\n *\n * @method copy\n * @param {Stroke[]} strokes List of strokes\n * @param {Number} index Position to start the copy\n */\n InkManager.prototype.copy = function (strokes, index) {\n for (index; index < this.strokes.length; index++) {\n strokes.push(this.strokes[index]);\n }\n };\n\n // Export\n scope.InkManager = InkManager;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * The mathUtil class is use to calculate lines\n *\n * @class MathUtil\n * @constructor\n */\n function MathUtils() {\n }\n\n /**\n * This method is use to calculate the size of the rectangle that contains an ellipse arc.\n *\n * @method getEllipseArcRect\n * @param {Point} center\n * @param {Number} maxRadius\n * @param {Number} minRadius\n * @param {Number} orientation\n * @param {Number} startAngle\n * @param {Number} sweepAngle\n * @returns {Rectangle}\n */\n MathUtils.getEllipseArcRect = function (center, maxRadius, minRadius, orientation, startAngle, sweepAngle) {\n\n var angleStep = 0.02, // angle delta between interpolated points on the arc, in radian\n angle, // angle\n alpha, // angle\n z1,\n z2,\n z3,\n z4,\n cosAlpha,\n sinAlpha,\n n,\n xList,\n yList,\n i,\n x,\n y,\n xMin,\n xMax,\n yMin,\n yMax,\n sortFloat = function (a, b) {\n return a - b;\n };\n\n z1 = z2 = Math.cos(orientation);\n z3 = z4 = Math.sin(orientation);\n z1 *= maxRadius;\n z2 *= minRadius;\n z3 *= maxRadius;\n z4 *= minRadius;\n\n n = Math.abs(sweepAngle) / angleStep;\n\n xList = [];\n yList = [];\n\n for (i = 0; i <= n; i++) {\n\n angle = startAngle + (i / n) * sweepAngle;\n alpha = Math.atan2(Math.sin(angle) / minRadius, Math.cos(angle) / maxRadius);\n\n cosAlpha = Math.cos(alpha);\n sinAlpha = Math.sin(alpha);\n\n // current point\n x = center.x + z1 * cosAlpha - z4 * sinAlpha;\n y = center.y + z2 * sinAlpha + z3 * cosAlpha;\n\n xList.push(x);\n yList.push(y);\n }\n\n xList.sort(sortFloat);\n yList.sort(sortFloat);\n\n xMin = xList[0];\n xMax = xList[xList.length - 1];\n yMin = yList[0];\n yMax = yList[yList.length - 1];\n\n return new scope.Rectangle({x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin});\n };\n\n /**\n * This method is use to calculate the size of the rectangle that contains a line.\n *\n * @method getLineRect\n * @param {Point} firstPoint\n * @param {Point} lastPoint\n * @returns {Rectangle}\n */\n MathUtils.getLineRect = function (firstPoint, lastPoint) {\n\n var xFirst = firstPoint.x,\n xLast = lastPoint.x,\n xMin = Math.min(xFirst, xLast),\n xMax = Math.max(xFirst, xLast),\n\n yFirst = firstPoint.y,\n yLast = lastPoint.y,\n yMin = Math.min(yFirst, yLast),\n yMax = Math.max(yFirst, yLast);\n\n return new scope.Rectangle({x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin});\n };\n\n /**\n * This method is use to calculate the size of the rectangle that contains bounding boxes.\n *\n * @method getBoundingRect\n * @param {Rectangle[]} boundingBoxes List of bounding box\n * @returns {Rectangle}\n */\n MathUtils.getBoundingRect = function (boundingBoxes) {\n\n var xList = [],\n yList = [];\n\n for (var i in boundingBoxes) {\n var rectangle = boundingBoxes[i];\n xList.push(rectangle.getX());\n xList.push(rectangle.getX() + rectangle.getWidth());\n yList.push(rectangle.getY());\n yList.push(rectangle.getY() + rectangle.getHeight());\n }\n\n var xMin = Math.min.apply(Math, xList);\n var xMax = Math.max.apply(Math, xList);\n var yMin = Math.min.apply(Math, yList);\n var yMax = Math.max.apply(Math, yList);\n\n return new scope.Rectangle({x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin});\n };\n\n // Export\n scope.MathUtils = MathUtils;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract WebSocket recognition message\n *\n * @class AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractWSMessage(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get the message type\n *\n * @method getType\n * @returns {String}\n */\n AbstractWSMessage.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.AbstractWSMessage = AbstractWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent an abstract input component\n *\n * @class AbstractComponent\n * @constructor\n */\n function AbstractComponent() {\n }\n\n /**\n * Get the type of the input component\n *\n * @method getType\n * @returns {String}\n */\n AbstractComponent.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Set the type of the input component\n *\n * @method setType\n * @param {String} type\n */\n AbstractComponent.prototype.setType = function (type) {\n if (typeof type !== 'string') {\n throw new Error('Invalid param type');\n }\n this.type = type;\n };\n\n // Export\n scope.AbstractComponent = AbstractComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent a simple stroke input component\n *\n * @class Stroke\n * @extends AbstractComponent\n * @constructor\n */\n function Stroke() {\n this.type = 'stroke';\n this.x = [];\n this.y = [];\n this.t = [];\n }\n\n /**\n * Inheritance property\n */\n Stroke.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n Stroke.prototype.constructor = Stroke;\n\n /**\n * Get the list of x coordinates\n *\n * @method getX\n * @returns {Number[]}\n */\n Stroke.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Set the list of x coordinates\n *\n * @method setX\n * @param {Number[]} x\n */\n Stroke.prototype.setX = function (x) {\n this.x = x;\n };\n\n /**\n * Add a x to the list of x coordinates\n *\n * @method addX\n * @param {Number} x\n */\n Stroke.prototype.addX = function (x) {\n if ((x !== null) && (x !== undefined)) {\n this.x.push(x);\n }\n };\n\n /**\n * Get the list of y coordinates\n *\n * @method getY\n * @returns {Number[]}\n */\n Stroke.prototype.getY = function () {\n return this.y;\n };\n\n /**\n * Set the list of y coordinates\n *\n * @method setY\n * @param {Number[]} y\n */\n Stroke.prototype.setY = function (y) {\n this.y = y;\n };\n\n /**\n * Add a y to the list of y coordinates\n *\n * @method addY\n * @param {Number} y\n */\n Stroke.prototype.addY = function (y) {\n if ((y !== null) && (y !== undefined)) {\n this.y.push(y);\n }\n };\n\n /**\n * Get the list of timestamps\n *\n * @method getT\n * @returns {Number[]}\n */\n Stroke.prototype.getT = function () {\n return this.t;\n };\n\n /**\n * Set the list of timestamps\n *\n * @method setT\n * @param {Number[]} t\n */\n Stroke.prototype.setT = function (t) {\n this.t = t;\n };\n\n /**\n * Add a timestamp to the list\n *\n * @method addT\n * @param {Number} t\n */\n Stroke.prototype.addT = function (t) {\n if ((t !== null) && (t !== undefined)) {\n this.t.push(t);\n }\n };\n\n /**\n * Get the number of points for this stroke\n *\n * @method getLength\n * @returns {Number}\n */\n Stroke.prototype.getLength = function () {\n return this.x.length;\n };\n\n\n /**\n * Get the boundingBox\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n Stroke.prototype.getBoundingBox = function () {\n var boundingBox = new scope.Rectangle();\n boundingBox.setX(Math.min.apply(Math, this.getX()));\n boundingBox.setY(Math.min.apply(Math, this.getY()));\n boundingBox.setWidth(Math.max.apply(Math, this.getX()) - boundingBox.getX());\n boundingBox.setHeight(Math.max.apply(Math, this.getY()) - boundingBox.getY());\n return boundingBox;\n };\n\n // Export\n scope.Stroke = Stroke;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Char input component\n *\n * @class CharacterInputComponent\n * @extends AbstractComponent\n * @constructor\n */\n function CharacterInputComponent() {\n this.type = 'inputCharacter';\n this.alternates = [];\n }\n\n /**\n * Inheritance property\n */\n CharacterInputComponent.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n CharacterInputComponent.prototype.constructor = CharacterInputComponent;\n\n /**\n * Get character input alternates\n *\n * @method getAlternates\n * @returns {CharacterInputComponentAlternate[]}\n */\n CharacterInputComponent.prototype.getAlternates = function () {\n return this.alternates;\n };\n\n /**\n * Set character input alternates\n *\n * @method setAlternates\n * @param {CharacterInputComponentAlternate[]} alternates\n */\n CharacterInputComponent.prototype.setAlternates = function (alternates) {\n this.alternates = alternates;\n };\n\n /**\n * Add a character input alternate\n *\n * @method addAlternate\n * @param {CharacterInputComponent} alternate\n */\n CharacterInputComponent.prototype.addAlternate = function (alternate) {\n this.alternates.push(alternate);\n };\n\n /**\n * Get input component bounding-box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n CharacterInputComponent.prototype.getBoundingBox = function () {\n return this.boundingBox;\n };\n\n /**\n * Set input component bounding-box\n *\n * @method setBoundingBox\n * @param {Rectangle} boundingBox\n */\n CharacterInputComponent.prototype.setBoundingBox = function (boundingBox) {\n this.boundingBox = boundingBox;\n };\n\n // Export\n scope.CharacterInputComponent = CharacterInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Character input component alternate\n *\n * @class CharacterInputComponentAlternate\n * @constructor\n */\n function CharacterInputComponentAlternate(alternate, probability) {\n this.alternate = alternate;\n this.probability = probability;\n }\n\n /**\n * Get alternate\n *\n * @method getAlternate\n * @returns {String}\n */\n CharacterInputComponentAlternate.prototype.getAlternate = function () {\n return this.alternate;\n };\n\n /**\n * Set alternate\n *\n * @method setAlternate\n * @param {String} alternate\n */\n CharacterInputComponentAlternate.prototype.setAlternate = function (alternate) {\n this.alternate = alternate;\n };\n\n /**\n * Get probability\n *\n * @method getProbability\n * @returns {Number}\n */\n CharacterInputComponentAlternate.prototype.getProbability = function () {\n return this.probability;\n };\n\n /**\n * Set probability\n *\n * @method setProbability\n * @param {Number} probability\n */\n CharacterInputComponentAlternate.prototype.setProbability = function (probability) {\n this.probability = probability;\n };\n\n // Export\n scope.CharacterInputComponentAlternate = CharacterInputComponentAlternate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract parameters used for recognition\n *\n * @class AbstractParameter\n * @constructor\n */\n function AbstractParameter() {\n }\n\n // Export\n scope.AbstractParameter = AbstractParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstraction of recognizer input\n *\n * @class AbstractRecognitionInput\n * @constructor\n */\n function AbstractRecognitionInput() {\n }\n\n // Export\n scope.AbstractRecognitionInput = AbstractRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract input recognition data\n *\n * @class AbstractRecognitionData\n * @constructor\n */\n function AbstractRecognitionData() {\n }\n\n /**\n * Get the application key\n *\n * @method getApplicationKey\n * @returns {String}\n */\n AbstractRecognitionData.prototype.getApplicationKey = function () {\n return this.applicationKey;\n };\n\n /**\n * Set the application key\n *\n * @method setApplicationKey\n * @param {String} applicationKey\n */\n AbstractRecognitionData.prototype.setApplicationKey = function (applicationKey) {\n this.applicationKey = applicationKey;\n };\n\n /**\n * Get the instanceId\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractRecognitionData.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n /**\n * Set the instanceId\n *\n * @method setInstanceId\n * @param {String} instanceId\n */\n AbstractRecognitionData.prototype.setInstanceId = function (instanceId) {\n this.instanceId = instanceId;\n };\n\n /**\n * @returns {string}\n */\n AbstractRecognitionData.prototype.getHmac = function () {\n return this.hmac;\n };\n\n /**\n * @param {string} hmac\n */\n AbstractRecognitionData.prototype.setHmac = function (hmac) {\n this.hmac = hmac;\n };\n\n // Export\n scope.AbstractRecognitionData = AbstractRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * List of languages recognition input\n *\n * @class RecognitionLanguagesData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function RecognitionLanguagesData() {\n }\n\n /**\n * Inheritance property\n */\n RecognitionLanguagesData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n RecognitionLanguagesData.prototype.constructor = RecognitionLanguagesData;\n\n /**\n * Get the recognition input mode\n *\n * @method getInputMode\n * @returns {String} inputMode\n */\n RecognitionLanguagesData.prototype.getInputMode = function () {\n return this.inputMode;\n };\n\n /**\n * Set the recognition input mode\n *\n * @method setInputMode\n * @param {String} inputMode\n */\n RecognitionLanguagesData.prototype.setInputMode = function (inputMode) {\n this.inputMode = inputMode;\n };\n\n // Export\n scope.RecognitionLanguagesData = RecognitionLanguagesData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket start math recognition message\n *\n * @class AbstractStartRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractStartRequestWSMessage(obj) {\n this.type = 'start';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n AbstractStartRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n AbstractStartRequestWSMessage.prototype.constructor = AbstractStartRequestWSMessage;\n\n // Export\n scope.AbstractStartRequestWSMessage = AbstractStartRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket continue math recognition message\n *\n * @class AbstractContinueRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractContinueRequestWSMessage(obj) {\n this.type = 'continue';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n AbstractContinueRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n AbstractContinueRequestWSMessage.prototype.constructor = AbstractContinueRequestWSMessage;\n\n /**\n * Get instanceId\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractContinueRequestWSMessage.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n /**\n * Set instanceId\n *\n * @method setInstanceId\n * @param {String} instanceId\n */\n AbstractContinueRequestWSMessage.prototype.setInstanceId = function (instanceId) {\n this.instanceId = instanceId;\n };\n\n // Export\n scope.AbstractContinueRequestWSMessage = AbstractContinueRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class ChallengeRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ChallengeRequestWSMessage(obj) {\n this.type = 'hmac';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ChallengeRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ChallengeRequestWSMessage.prototype.constructor = ChallengeRequestWSMessage;\n\n /**\n * Get the challenge\n *\n * @method getChallenge\n * @returns {String}\n */\n ChallengeRequestWSMessage.prototype.getChallenge = function () {\n return this.challenge;\n };\n\n /**\n * Set the challenge\n *\n * @method setChallenge\n * @param {String} challenge\n */\n ChallengeRequestWSMessage.prototype.setChallenge = function (challenge) {\n this.challenge = challenge;\n };\n\n /**\n * Get the application key\n *\n * @method getApplicationKey\n * @returns {String}\n */\n ChallengeRequestWSMessage.prototype.getApplicationKey = function () {\n return this.applicationKey;\n };\n\n /**\n * Set the application key\n *\n * @method setApplicationKey\n * @param {String} applicationKey\n */\n ChallengeRequestWSMessage.prototype.setApplicationKey = function (applicationKey) {\n this.applicationKey = applicationKey;\n };\n\n /**\n * Get HMAC signature\n *\n * @method getHmacSignature\n * @returns {String}\n */\n ChallengeRequestWSMessage.prototype.getHmacSignature = function () {\n return this.hmac;\n };\n\n /**\n * Set HMAC signature\n *\n * @method setHmacSignature\n * @param {String} hmac\n */\n ChallengeRequestWSMessage.prototype.setHmacSignature = function (hmac) {\n this.hmac = hmac;\n };\n\n // Export\n scope.ChallengeRequestWSMessage = ChallengeRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class InitRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function InitRequestWSMessage(obj) {\n this.type = 'applicationKey';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n InitRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n InitRequestWSMessage.prototype.constructor = InitRequestWSMessage;\n\n /**\n * Get the application key\n *\n * @method getApplicationKey\n * @returns {String}\n */\n InitRequestWSMessage.prototype.getApplicationKey = function () {\n return this.applicationKey;\n };\n\n /**\n * Set the application key\n *\n * @method setApplicationKey\n * @param {String} applicationKey\n */\n InitRequestWSMessage.prototype.setApplicationKey = function (applicationKey) {\n this.applicationKey = applicationKey;\n };\n\n // Export\n scope.InitRequestWSMessage = InitRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class ResetRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ResetRequestWSMessage(obj) {\n this.type = 'reset';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ResetRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ResetRequestWSMessage.prototype.constructor = ResetRequestWSMessage;\n\n // Export\n scope.ResetRequestWSMessage = ResetRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract text input component\n *\n * @class AbstractTextInputComponent\n * @extends AbstractComponent\n * @constructor\n */\n function AbstractTextInputComponent() {\n }\n\n /**\n * Inheritance property\n */\n AbstractTextInputComponent.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n AbstractTextInputComponent.prototype.constructor = AbstractTextInputComponent;\n\n /**\n * Get input component bounding-box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AbstractTextInputComponent.prototype.getBoundingBox = function () {\n return this.boundingBox;\n };\n\n /**\n * Set input component bounding-box\n *\n * @method setBoundingBox\n * @param {Rectangle} boundingBox\n */\n AbstractTextInputComponent.prototype.setBoundingBox = function (boundingBox) {\n this.boundingBox = boundingBox;\n };\n\n // Export\n scope.AbstractTextInputComponent = AbstractTextInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Char input component\n *\n * @class CharInputComponent\n * @extends AbstractTextInputComponent\n * @constructor\n */\n function CharInputComponent() {\n this.type = 'char';\n }\n\n /**\n * Inheritance property\n */\n CharInputComponent.prototype = new scope.AbstractTextInputComponent();\n\n /**\n * Constructor property\n */\n CharInputComponent.prototype.constructor = CharInputComponent;\n\n /**\n * Get character\n *\n * @method getCharacter\n * @returns {String}\n */\n CharInputComponent.prototype.getCharacter = function () {\n return this.character;\n };\n\n /**\n * Set character\n *\n * @method setCharacter\n * @param {String} character\n */\n CharInputComponent.prototype.setCharacter = function (character) {\n this.character = character;\n };\n\n // Export\n scope.CharInputComponent = CharInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * String input component\n *\n * @class StringInputComponent\n * @extends AbstractTextInputComponent\n * @constructor\n */\n function StringInputComponent() {\n this.type = 'string';\n }\n\n /**\n * Inheritance property\n */\n StringInputComponent.prototype = new scope.AbstractTextInputComponent();\n\n /**\n * Constructor property\n */\n StringInputComponent.prototype.constructor = StringInputComponent;\n\n /**\n * Get string\n *\n * @method getString\n * @returns {String}\n */\n StringInputComponent.prototype.getString = function () {\n return this.string;\n };\n\n /**\n * Set string\n *\n * @method setString\n * @param {String} string\n */\n StringInputComponent.prototype.setString = function (string) {\n this.string = string;\n };\n\n // Export\n scope.StringInputComponent = StringInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Input unit used for text recognition\n *\n * @class TextInputUnit\n * @constructor\n */\n function TextInputUnit() {\n this.textInputType = 'MULTI_LINE_TEXT';\n this.components = [];\n }\n\n /**\n * Get the input type\n *\n * @method getInputType\n * @returns {String}\n */\n TextInputUnit.prototype.getInputType = function () {\n return this.textInputType;\n };\n\n /**\n * Set the input type\n *\n * @method setInputType\n * @returns {String} inputType\n */\n TextInputUnit.prototype.setInputType = function (inputType) {\n this.textInputType = inputType;\n };\n\n /**\n * Get components for this input unit\n *\n * @method getComponents\n * @param {TextInkRange} [inkRange]\n * @returns {AbstractComponent[]}\n */\n TextInputUnit.prototype.getComponents = function (inkRange) {\n if (inkRange && (inkRange instanceof scope.TextInkRange)) {\n return this.components.slice(inkRange.getStartComponent(), inkRange.getEndComponent() + 1);\n }\n return this.components;\n };\n\n /**\n * Set components for this input unit\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n TextInputUnit.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.TextInputUnit = TextInputUnit;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for text recognition\n *\n * @class TextParameter\n * @extends AbstractParameter\n * @constructor\n */\n function TextParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n TextParameter.prototype.constructor = TextParameter;\n\n /**\n * Get recognition language\n *\n * @method getLanguage\n * @returns {String}\n */\n TextParameter.prototype.getLanguage = function () {\n return this.language;\n };\n\n /**\n * Set recognition language\n *\n * @method getLanguage\n * @param {String} language\n */\n TextParameter.prototype.setLanguage = function (language) {\n this.language = language;\n };\n\n /**\n * Get input mode\n *\n * @method getInputMode\n * @returns {String}\n */\n TextParameter.prototype.getInputMode = function () {\n return this.textInputMode;\n };\n\n /**\n * Set input mode\n *\n * @method setInputMode\n * @param {String} inputMode\n */\n TextParameter.prototype.setInputMode = function (inputMode) {\n this.textInputMode = inputMode;\n };\n\n /**\n * Get content types\n *\n * @method getContentTypes\n * @returns {Array}\n */\n TextParameter.prototype.getContentTypes = function () {\n return this.contentTypes;\n };\n\n /**\n * Set content types\n *\n * @method setContentTypes\n * @param {Array} contentTypes\n */\n TextParameter.prototype.setContentTypes = function (contentTypes) {\n this.contentTypes = contentTypes;\n };\n\n /**\n * Get SK\n *\n * @method getSubsetKnowledges\n * @returns {Array}\n */\n TextParameter.prototype.getSubsetKnowledges = function () {\n return this.subsetKnowledges;\n };\n\n /**\n * Set SK\n *\n * @method setSubsetKnowledges\n * @param {Array} subsetKnowledges\n */\n TextParameter.prototype.setSubsetKnowledges = function (subsetKnowledges) {\n this.subsetKnowledges = subsetKnowledges;\n };\n\n /**\n * Get user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n TextParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n TextParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get user LK words\n *\n * @method getUserLkWords\n * @returns {Array}\n */\n TextParameter.prototype.getUserLkWords = function () {\n return this.userLkWords;\n };\n\n /**\n * Set user LK words\n *\n * @method setUserLkWords\n * @param {Array} userLkWords\n */\n TextParameter.prototype.setUserLkWords = function (userLkWords) {\n this.userLkWords = userLkWords;\n };\n\n /**\n * Get result detail (e.g. TEXT, WORD ...)\n *\n * @method getResultDetail\n * @returns {String}\n */\n TextParameter.prototype.getResultDetail = function () {\n return this.resultDetail;\n };\n\n /**\n * Set result detail (e.g. TEXT, WORD ...)\n *\n * @method setResultDetail\n * @param {String} resultDetail\n */\n TextParameter.prototype.setResultDetail = function (resultDetail) {\n this.resultDetail = resultDetail;\n };\n\n /**\n * Get text properties\n *\n * @method getTextProperties\n * @returns {TextProperties}\n */\n TextParameter.prototype.getTextProperties = function () {\n return this.textProperties;\n };\n\n /**\n * Set text properties\n *\n * @method setTextProperties\n * @param {TextProperties} properties\n */\n TextParameter.prototype.setTextProperties = function (textProperties) {\n this.textProperties = textProperties;\n };\n\n // Export\n scope.TextParameter = TextParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text recognition properties\n *\n * @class TextProperties\n * @constructor\n */\n function TextProperties() {\n }\n\n /**\n * Get the number of text candidates requested\n *\n * @method getTextCandidateListSize\n * @returns {Number}\n */\n TextProperties.prototype.getTextCandidateListSize = function () {\n return this.textCandidateListSize;\n };\n\n /**\n * Set the number of text candidates requested\n *\n * @method setTextCandidateListSize\n * @param {Number} textCandidateListSize\n */\n TextProperties.prototype.setTextCandidateListSize = function (textCandidateListSize) {\n this.textCandidateListSize = textCandidateListSize;\n };\n\n /**\n * Get the number of word candidates requested\n *\n * @method getWordCandidateListSize\n * @returns {Number}\n */\n TextProperties.prototype.getWordCandidateListSize = function () {\n return this.wordCandidateListSize;\n };\n\n /**\n * Set the number of word candidates requested\n *\n * @method setWordCandidateListSize\n * @param {Number} wordCandidateListSize\n */\n TextProperties.prototype.setWordCandidateListSize = function (wordCandidateListSize) {\n this.wordCandidateListSize = wordCandidateListSize;\n };\n\n /**\n * Get the number of word prediction candidates requested\n *\n * @method getWordPredictionListSize\n * @returns {Number}\n */\n TextProperties.prototype.getWordPredictionListSize = function () {\n return this.wordPredictionListSize;\n };\n\n /**\n * Set the number of word prediction candidates requested\n *\n * @method setWordPredictionListSize\n * @param {Number} wordPredictionListSize\n */\n TextProperties.prototype.setWordPredictionListSize = function (wordPredictionListSize) {\n this.wordPredictionListSize = wordPredictionListSize;\n };\n\n /**\n * Get the number of word completion candidates requested\n *\n * @method getWordCompletionListSize\n * @returns {Number}\n */\n TextProperties.prototype.getWordCompletionListSize = function () {\n return this.wordCompletionListSize;\n };\n\n /**\n * Set the number of word completion candidates requested\n *\n * @method setWordCompletionListSize\n * @param {Number} wordCompletionListSize\n */\n TextProperties.prototype.setWordCompletionListSize = function (wordCompletionListSize) {\n this.wordCompletionListSize = wordCompletionListSize;\n };\n\n /**\n * Get the number of character candidates requested\n *\n * @method getCharacterCandidateListSize\n * @returns {Number}\n */\n TextProperties.prototype.getCharacterCandidateListSize = function () {\n return this.characterCandidateListSize;\n };\n\n /**\n * Set the number of character candidates requested\n *\n * @method setCharacterCandidateListSize\n * @param {Number} characterCandidateListSize\n */\n TextProperties.prototype.setCharacterCandidateListSize = function (characterCandidateListSize) {\n this.characterCandidateListSize = characterCandidateListSize;\n };\n\n /**\n * Get the discard case variations\n *\n * @method getDiscardCaseVariations\n * @returns {boolean}\n */\n TextProperties.prototype.getDiscardCaseVariations = function () {\n return this.discardCaseVariations;\n };\n\n /**\n * Set the discard case variations\n *\n * @method setDiscardCaseVariations\n * @param {boolean} discardCaseVariations\n */\n TextProperties.prototype.setDiscardCaseVariations = function (discardCaseVariations) {\n this.discardCaseVariations = discardCaseVariations;\n };\n\n /**\n * Get the discard accentuation variations\n *\n * @method getDiscardAccentuationVariations\n * @returns {boolean}\n */\n TextProperties.prototype.getDiscardAccentuationVariations = function () {\n return this.discardAccentuationVariations;\n };\n\n /**\n * Set the discard accentuation variations\n *\n * @method setDiscardAccentuationVariations\n * @param {boolean} discardAccentuationVariations\n */\n TextProperties.prototype.setDiscardAccentuationVariations = function (discardAccentuationVariations) {\n this.discardAccentuationVariations = discardAccentuationVariations;\n };\n\n /**\n * Get disable spatial ordering\n *\n * @method getDisableSpatialOrdering\n * @returns {Boolean}\n */\n TextProperties.prototype.getDisableSpatialOrdering = function () {\n return this.disableSpatialOrdering;\n };\n\n /**\n * Set disable spatial ordering\n *\n * @method setDisableSpatialOrdering\n * @param {Boolean} disableSpatialOrdering\n */\n TextProperties.prototype.setDisableSpatialOrdering = function (disableSpatialOrdering) {\n this.disableSpatialOrdering = disableSpatialOrdering;\n };\n\n /**\n * Get glyph distortion\n *\n * @method getGlyphDistortion\n * @returns {Number}\n */\n TextProperties.prototype.getGlyphDistortion = function () {\n return this.glyphDistortion;\n };\n\n /**\n * Set glyph distortion\n *\n * @method setGlyphDistortion\n * @param {Number} glyphDistortion\n */\n TextProperties.prototype.setGlyphDistortion = function (glyphDistortion) {\n this.glyphDistortion = glyphDistortion;\n };\n\n /**\n * Get enable out of lexicon\n *\n * @method getEnableOutOfLexicon\n * @returns {Boolean}\n */\n TextProperties.prototype.getEnableOutOfLexicon = function () {\n return this.enableOutOfLexicon;\n };\n\n /**\n * Set enable out of lexicon\n *\n * @method setEnableOutOfLexicon\n * @param {Boolean} enableOutOfLexicon\n */\n TextProperties.prototype.setEnableOutOfLexicon = function (enableOutOfLexicon) {\n this.enableOutOfLexicon = enableOutOfLexicon;\n };\n\n /**\n * Get spelling distortion\n *\n * @method getSpellingDistortion\n * @returns {Number}\n */\n TextProperties.prototype.getSpellingDistortion = function () {\n return this.spellingDistortion;\n };\n\n /**\n * Set spelling distortion\n *\n * @method setSpellingDistortion\n * @param {Number} spellingDistortion\n */\n TextProperties.prototype.setSpellingDistortion = function (spellingDistortion) {\n this.spellingDistortion = spellingDistortion;\n };\n\n // Export\n scope.TextProperties = TextProperties;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for text recognition\n *\n * @class TextRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function TextRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n TextRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n TextRecognitionInput.prototype.constructor = TextRecognitionInput;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextRecognitionInput.prototype.getParameters = function () {\n return this.textParameter;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextRecognitionInput.prototype.setParameters = function (parameters) {\n this.textParameter = parameters;\n };\n\n /**\n * Get input units\n *\n * @method getInputUnits\n * @param {TextInkRange} [inkRange]\n * @returns {TextInputUnit[]}\n */\n TextRecognitionInput.prototype.getInputUnits = function (inkRange) {\n if (inkRange && (inkRange instanceof scope.TextInkRange)) {\n return this.inputUnits.slice(inkRange.getStartUnit(), inkRange.getEndUnit() + 1);\n }\n return this.inputUnits;\n };\n\n /**\n * Set input units\n *\n * @method setInputUnits\n * @param {TextInputUnit[]} inputUnits\n */\n TextRecognitionInput.prototype.setInputUnits = function (inputUnits) {\n this.inputUnits = inputUnits;\n };\n\n // Export\n scope.TextRecognitionInput = TextRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for text input\n *\n * @class TextRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function TextRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n TextRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n TextRecognitionData.prototype.constructor = TextRecognitionData;\n\n /**\n * Get text input\n *\n * @method getTextRecognitionInput\n * @returns {TextRecognitionInput} inputMode\n */\n TextRecognitionData.prototype.getTextRecognitionInput = function () {\n return this.textInput;\n };\n\n /**\n * Set text input\n *\n * @method setTextRecognitionInput\n * @param {TextRecognitionInput} input\n */\n TextRecognitionData.prototype.setTextRecognitionInput = function (input) {\n this.textInput = JSON.stringify(input);\n };\n\n // Export\n scope.TextRecognitionData = TextRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket start text recognition message\n *\n * @class TextStartRequestWSMessage\n * @extends AbstractStartRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function TextStartRequestWSMessage(obj) {\n scope.AbstractStartRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextStartRequestWSMessage.prototype = new scope.AbstractStartRequestWSMessage();\n\n /**\n * Constructor property\n */\n TextStartRequestWSMessage.prototype.constructor = TextStartRequestWSMessage;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextStartRequestWSMessage.prototype.getParameters = function () {\n return this.textParameter;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextStartRequestWSMessage.prototype.setParameters = function (parameters) {\n this.textParameter = parameters;\n };\n\n /**\n * Get input units\n *\n * @method getInputUnits\n * @returns {TextInputUnit[]}\n */\n TextStartRequestWSMessage.prototype.getInputUnits = function () {\n return this.inputUnits;\n };\n\n /**\n * Set input units\n *\n * @method setInputUnits\n * @param {TextInputUnit[]} inputUnits\n */\n TextStartRequestWSMessage.prototype.setInputUnits = function (inputUnits) {\n this.inputUnits = inputUnits;\n };\n\n // Export\n scope.TextStartRequestWSMessage = TextStartRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket continue text recognition message\n *\n * @class TextContinueRequestWSMessage\n * @extends AbstractContinueRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function TextContinueRequestWSMessage(obj) {\n scope.AbstractContinueRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextContinueRequestWSMessage.prototype = new scope.AbstractContinueRequestWSMessage();\n\n /**\n * Constructor property\n */\n TextContinueRequestWSMessage.prototype.constructor = TextContinueRequestWSMessage;\n\n /**\n * Get input units\n *\n * @method getInputUnits\n * @returns {TextInputUnit[]}\n */\n TextContinueRequestWSMessage.prototype.getInputUnits = function () {\n return this.inputUnits;\n };\n\n /**\n * Set input units\n *\n * @method setInputUnits\n * @param {TextInputUnit[]} inputUnits\n */\n TextContinueRequestWSMessage.prototype.setInputUnits = function (inputUnits) {\n this.inputUnits = inputUnits;\n };\n\n // Export\n scope.TextContinueRequestWSMessage = TextContinueRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for shape recognition\n *\n * @class ShapeParameter\n * @extends AbstractParameter\n * @constructor\n */\n function ShapeParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ShapeParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n ShapeParameter.prototype.constructor = ShapeParameter;\n\n /**\n * Get the sensitivity of the reject detection\n *\n * @method getRejectDetectionSensitivity\n * @returns {Boolean}\n */\n ShapeParameter.prototype.getRejectDetectionSensitivity = function () {\n return this.rejectDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the reject detection\n *\n * @method setRejectDetectionSensitivity\n * @param {Boolean} rejectDetectionSensitivity\n */\n ShapeParameter.prototype.setRejectDetectionSensitivity = function (rejectDetectionSensitivity) {\n this.rejectDetectionSensitivity = rejectDetectionSensitivity;\n };\n\n /**\n * Get the beautification\n *\n * @method hasBeautification\n * @returns {Boolean}\n */\n ShapeParameter.prototype.hasBeautification = function () {\n return this.doBeautification;\n };\n\n /**\n * Set the beautification\n *\n * @method setBeautification\n * @param {Boolean} doBeautification\n */\n ShapeParameter.prototype.setBeautification = function (doBeautification) {\n this.doBeautification = doBeautification;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n ShapeParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n ShapeParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n // Export\n scope.ShapeParameter = ShapeParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for shape recognition\n *\n * @class ShapeRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function ShapeRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n ShapeRecognitionInput.prototype.constructor = ShapeRecognitionInput;\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n ShapeRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n ShapeRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n /**\n * Get the beautification\n *\n * @method getDoBeautification\n * @returns {Boolean}\n */\n ShapeRecognitionInput.prototype.getDoBeautification = function () {\n return this.doBeautification;\n };\n\n /**\n * Set the beautification\n *\n * @method setDoBeautification\n * @param {Boolean} doBeautification\n */\n ShapeRecognitionInput.prototype.setDoBeautification = function (doBeautification) {\n this.doBeautification = doBeautification;\n };\n\n /**\n * Get the sensitivity of the reject detection\n *\n * @method getRejectDetectionSensitivity\n * @returns {Number}\n */\n ShapeRecognitionInput.prototype.getRejectDetectionSensitivity = function () {\n return this.rejectDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the reject detection\n *\n * @method setRejectDetectionSensitivity\n * @param {Number} rejectDetectionSensitivity\n */\n ShapeRecognitionInput.prototype.setRejectDetectionSensitivity = function (rejectDetectionSensitivity) {\n this.rejectDetectionSensitivity = rejectDetectionSensitivity;\n };\n\n // Export\n scope.ShapeRecognitionInput = ShapeRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for shape input\n *\n * @class ShapeRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function ShapeRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n ShapeRecognitionData.prototype.constructor = ShapeRecognitionData;\n\n /**\n * Get shape input\n *\n * @method getShapeRecognitionInput\n * @returns {ShapeRecognitionInput}\n */\n ShapeRecognitionData.prototype.getShapeRecognitionInput = function () {\n return this.shapeInput;\n };\n\n /**\n * Set shape input\n *\n * @method setShapeRecognitionInput\n * @param {ShapeRecognitionInput} input\n */\n ShapeRecognitionData.prototype.setShapeRecognitionInput = function (input) {\n this.shapeInput = JSON.stringify(input);\n };\n\n // Export\n scope.ShapeRecognitionData = ShapeRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for math recognition\n *\n * @class MathParameter\n * @extends AbstractParameter\n * @constructor\n */\n function MathParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n this.resultTypes = [];\n this.userResources = [];\n }\n\n /**\n * Inheritance property\n */\n MathParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n MathParameter.prototype.constructor = MathParameter;\n\n /**\n * Get the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MathParameter.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MathParameter.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the math result result orientation to columnar operations\n *\n * @method isColumnar\n * @returns {Boolean}\n */\n MathParameter.prototype.isColumnar = function () {\n return this.columnarOperation;\n };\n\n /**\n * Set the math result orientation to columnar operations\n *\n * @method setColumnar\n * @param {Boolean} columnar\n */\n MathParameter.prototype.setColumnar = function (columnar) {\n this.columnarOperation = columnar;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MathParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MathParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MathParameter.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MathParameter.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n\n // Export\n scope.MathParameter = MathParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for math recognition\n *\n * @class MathRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function MathRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n MathRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n MathRecognitionInput.prototype.constructor = MathRecognitionInput;\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n MathRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n MathRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n /**\n * Get the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MathRecognitionInput.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MathRecognitionInput.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the math result result orientation to columnar operations\n *\n * @method isColumnar\n * @returns {Boolean}\n */\n MathRecognitionInput.prototype.isColumnar = function () {\n return this.columnarOperation;\n };\n\n /**\n * Set the math result orientation to columnar operations\n *\n * @method setColumnar\n * @param {Boolean} columnar\n */\n MathRecognitionInput.prototype.setColumnar = function (columnar) {\n this.columnarOperation = columnar;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MathRecognitionInput.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MathRecognitionInput.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MathRecognitionInput.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MathRecognitionInput.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n // Export\n scope.MathRecognitionInput = MathRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for math input\n *\n * @class MathRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function MathRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n MathRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n MathRecognitionData.prototype.constructor = MathRecognitionData;\n\n /**\n * Get math input\n *\n * @method getMathRecognitionInput\n * @returns {MathRecognitionInput}\n */\n MathRecognitionData.prototype.getMathRecognitionInput = function () {\n return this.mathInput;\n };\n\n /**\n * Set math input\n *\n * @method setMathRecognitionInput\n * @param {MathRecognitionInput} input\n */\n MathRecognitionData.prototype.setMathRecognitionInput = function (input) {\n this.mathInput = JSON.stringify(input);\n\n };\n\n // Export\n scope.MathRecognitionData = MathRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket start math recognition message\n *\n * @class MathStartRequestWSMessage\n * @extends AbstractStartRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function MathStartRequestWSMessage(obj) {\n scope.AbstractStartRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathStartRequestWSMessage.prototype = new scope.AbstractStartRequestWSMessage();\n\n /**\n * Constructor property\n */\n MathStartRequestWSMessage.prototype.constructor = MathStartRequestWSMessage;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MathParameter}\n */\n MathStartRequestWSMessage.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MathParameter} parameters\n */\n MathStartRequestWSMessage.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Get components\n *\n * @method getComponents\n * @returns {MathInputUnit[]}\n */\n MathStartRequestWSMessage.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set components\n *\n * @method setComponents\n * @param {MathInputUnit[]} components\n */\n MathStartRequestWSMessage.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.MathStartRequestWSMessage = MathStartRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket continue math recognition message\n *\n * @class MathContinueRequestWSMessage\n * @extends AbstractContinueRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function MathContinueRequestWSMessage(obj) {\n this.type = 'continue';\n scope.AbstractContinueRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathContinueRequestWSMessage.prototype = new scope.AbstractContinueRequestWSMessage();\n\n /**\n * Constructor property\n */\n MathContinueRequestWSMessage.prototype.constructor = MathContinueRequestWSMessage;\n\n /**\n * Get components\n *\n * @method getComponents\n * @returns {MathInputUnit[]}\n */\n MathContinueRequestWSMessage.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set components\n *\n * @method setComponents\n * @param {MathInputUnit[]} components\n */\n MathContinueRequestWSMessage.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.MathContinueRequestWSMessage = MathContinueRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract music input component\n *\n * @class AbstractMusicInputComponent\n * @extends AbstractComponent\n * @constructor\n */\n function AbstractMusicInputComponent() {\n }\n\n /**\n * Inheritance property\n */\n AbstractMusicInputComponent.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n AbstractMusicInputComponent.prototype.constructor = AbstractMusicInputComponent;\n\n /**\n * Get input component bounding-box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AbstractMusicInputComponent.prototype.getBoundingBox = function () {\n return this.boundingBox;\n };\n\n /**\n * Set input component bounding-box\n *\n * @method setBoundingBox\n * @param {Rectangle} boundingBox\n */\n AbstractMusicInputComponent.prototype.setBoundingBox = function (boundingBox) {\n this.boundingBox = boundingBox;\n };\n\n // Export\n scope.AbstractMusicInputComponent = AbstractMusicInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Accidental input component\n *\n * @class MusicAccidentalInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicAccidentalInputComponent() {\n this.type = 'accidental';\n }\n\n /**\n * Inheritance property\n */\n MusicAccidentalInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicAccidentalInputComponent.prototype.constructor = MusicAccidentalInputComponent;\n\n /**\n * Get accidental input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicAccidentalInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set accidental input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicAccidentalInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicAccidentalInputComponent = MusicAccidentalInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Arpeggiate input component\n *\n * @class MusicArpeggiateInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicArpeggiateInputComponent() {\n this.type = 'arpeggiate';\n }\n\n /**\n * Inheritance property\n */\n MusicArpeggiateInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicArpeggiateInputComponent.prototype.constructor = MusicArpeggiateInputComponent;\n\n /**\n * Get arpeggiate input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicArpeggiateInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set arpeggiate input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicArpeggiateInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicArpeggiateInputComponent = MusicArpeggiateInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music bar input\n *\n * @class MusicBarInput\n * @constructor\n */\n function MusicBarInput() {\n }\n\n /**\n * Get repeat direction\n *\n * @method getRepeatDirection\n * @returns {String}\n */\n MusicBarInput.prototype.getRepeatDirection = function () {\n return this.repeatDirection;\n };\n\n /**\n * Set repeat direction\n *\n * @method setRepeatDirection\n * @param {String} repeatDirection\n */\n MusicBarInput.prototype.setRepeatDirection = function (repeatDirection) {\n this.repeatDirection = repeatDirection;\n };\n\n /**\n * Get style\n *\n * @method getStyle\n * @returns {String}\n */\n MusicBarInput.prototype.getStyle = function () {\n return this.style;\n };\n\n /**\n * Set style\n *\n * @method setStyle\n * @param {String} style\n */\n MusicBarInput.prototype.setStyle = function (style) {\n this.style = style;\n };\n\n // Export\n scope.MusicBarInput = MusicBarInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Bar input component\n *\n * @class MusicBarInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicBarInputComponent() {\n this.type = 'bar';\n this.value = new scope.MusicBarInput();\n }\n\n /**\n * Inheritance property\n */\n MusicBarInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicBarInputComponent.prototype.constructor = MusicBarInputComponent;\n\n /**\n * Get bar input component value\n *\n * @method getValue\n * @returns {MusicBarInput}\n */\n MusicBarInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set bar input component value\n *\n * @method setValue\n * @param {MusicBarInput} value\n */\n MusicBarInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicBarInputComponent = MusicBarInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music beam input\n *\n * @class MusicBeamInput\n * @constructor\n */\n function MusicBeamInput() {\n }\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicBeamInput.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Set placement\n *\n * @method setPlacement\n * @param {String} placement\n */\n MusicBeamInput.prototype.setPlacement = function (placement) {\n this.placement = placement;\n };\n\n /**\n * Get slope\n *\n * @method getSlope\n * @returns {String}\n */\n MusicBeamInput.prototype.getSlope = function () {\n return this.slope;\n };\n\n /**\n * Set slope\n *\n * @method setSlope\n * @param {String} slope\n */\n MusicBeamInput.prototype.setSlope = function (slope) {\n this.slope = slope;\n };\n\n /**\n * Get left count\n *\n * @method getLeftCount\n * @returns {Number}\n */\n MusicBeamInput.prototype.getLeftCount = function () {\n return this.leftCount;\n };\n\n /**\n * Set left count\n *\n * @method setLeftCount\n * @param {Number} leftCount\n */\n MusicBeamInput.prototype.setLeftCount = function (leftCount) {\n this.leftCount = leftCount;\n };\n\n /**\n * Get right count\n *\n * @method getRightCount\n * @returns {Number}\n */\n MusicBeamInput.prototype.getRightCount = function () {\n return this.rightCount;\n };\n\n /**\n * Set right count\n *\n * @method setRightCount\n * @param {Number} rightCount\n */\n MusicBeamInput.prototype.setRightCount = function (rightCount) {\n this.rightCount = rightCount;\n };\n\n /**\n * Get gap\n *\n * @method getGap\n * @returns {Number}\n */\n MusicBeamInput.prototype.getGap = function () {\n return this.gap;\n };\n\n /**\n * Set gap\n *\n * @method setGap\n * @param {Number} gap\n */\n MusicBeamInput.prototype.setGap = function (gap) {\n this.gap = gap;\n };\n\n // Export\n scope.MusicBeamInput = MusicBeamInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Beam input component\n *\n * @class MusicBeamInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicBeamInputComponent() {\n this.type = 'beam';\n this.value = new scope.MusicBeamInput();\n }\n\n /**\n * Inheritance property\n */\n MusicBeamInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicBeamInputComponent.prototype.constructor = MusicBeamInputComponent;\n\n /**\n * Get beam input component value\n *\n * @method getValue\n * @returns {MusicBeamInput}\n */\n MusicBeamInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set beam input component value\n *\n * @method setValue\n * @param {MusicBeamInput} value\n */\n MusicBeamInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicBeamInputComponent = MusicBeamInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music clef input\n * default values: symbol='G', octave=0\n *\n * @class MusicClefInput\n * @constructor\n */\n function MusicClefInput() {\n this.symbol = 'G';\n this.octave = 0;\n }\n\n /**\n * Get y anchor\n *\n * @method getYAnchor\n * @returns {Number}\n */\n MusicClefInput.prototype.getYAnchor = function () {\n return this.yAnchor;\n };\n\n /**\n * Set y anchor\n *\n * @method setYAnchor\n * @param {Number} yAnchor\n */\n MusicClefInput.prototype.setYAnchor = function (yAnchor) {\n this.yAnchor = yAnchor;\n };\n\n /**\n * Get octave\n *\n * @method getOctave\n * @returns {Number}\n */\n MusicClefInput.prototype.getOctave = function () {\n return this.octave;\n };\n\n /**\n * Set octave\n *\n * @method setOctave\n * @param {Number} octave\n */\n MusicClefInput.prototype.setOctave = function (octave) {\n this.octave = octave;\n };\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicClefInput.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n /**\n * Set symbol\n *\n * @method setSymbol\n * @param {String} symbol\n */\n MusicClefInput.prototype.setSymbol = function (symbol) {\n this.symbol = symbol;\n };\n\n // Export\n scope.MusicClefInput = MusicClefInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Clef input component\n * default clef values: symbol='G', octave=0\n *\n * @class MusicClefInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicClefInputComponent() {\n this.type = 'clef';\n this.value = new scope.MusicClefInput();\n }\n\n /**\n * Inheritance property\n */\n MusicClefInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicClefInputComponent.prototype.constructor = MusicClefInputComponent;\n\n /**\n * Get clef input component value\n *\n * @method getValue\n * @returns {MusicClefInput}\n */\n MusicClefInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set clef input component value\n *\n * @method setValue\n * @param {MusicClefInput} value\n */\n MusicClefInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicClefInputComponent = MusicClefInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music decoration input\n *\n * @class MusicDecorationInput\n * @constructor\n */\n function MusicDecorationInput() {\n }\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicDecorationInput.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n /**\n * Set symbol\n *\n * @method setSymbol\n * @param {String} symbol\n */\n MusicDecorationInput.prototype.setSymbol = function (symbol) {\n this.symbol = symbol;\n };\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicDecorationInput.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Set placement\n *\n * @method setPlacement\n * @param {String} placement\n */\n MusicDecorationInput.prototype.setPlacement = function (placement) {\n this.placement = placement;\n };\n\n // Export\n scope.MusicDecorationInput = MusicDecorationInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Decoration input component\n *\n * @class MusicDecorationInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicDecorationInputComponent() {\n this.type = 'decoration';\n this.value = new scope.MusicDecorationInput();\n }\n\n /**\n * Inheritance property\n */\n MusicDecorationInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicDecorationInputComponent.prototype.constructor = MusicDecorationInputComponent;\n\n /**\n * Get decoration input component value\n *\n * @method getValue\n * @returns {MusicDecorationInput}\n */\n MusicDecorationInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set decoration input component value\n *\n * @method setValue\n * @param {MusicDecorationInput} value\n */\n MusicDecorationInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicDecorationInputComponent = MusicDecorationInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Dots input component\n *\n * @class MusicDotsInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicDotsInputComponent() {\n this.type = 'dots';\n }\n\n /**\n * Inheritance property\n */\n MusicDotsInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicDotsInputComponent.prototype.constructor = MusicDotsInputComponent;\n\n /**\n * Get dots input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicDotsInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set dots input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicDotsInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicDotsInputComponent = MusicDotsInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Head input component\n *\n * @class MusicHeadInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicHeadInputComponent() {\n this.type = 'head';\n }\n\n /**\n * Inheritance property\n */\n MusicHeadInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicHeadInputComponent.prototype.constructor = MusicHeadInputComponent;\n\n /**\n * Get head input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicHeadInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set head input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicHeadInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicHeadInputComponent = MusicHeadInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Ledger line input component\n *\n * @class MusicLedgerLineInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicLedgerLineInputComponent() {\n this.type = 'ledgerLine';\n }\n\n /**\n * Inheritance property\n */\n MusicLedgerLineInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicLedgerLineInputComponent.prototype.constructor = MusicLedgerLineInputComponent;\n\n // Export\n scope.MusicLedgerLineInputComponent = MusicLedgerLineInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Rest input component\n *\n * @class MusicRestInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicRestInputComponent() {\n this.type = 'rest';\n }\n\n /**\n * Inheritance property\n */\n MusicRestInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicRestInputComponent.prototype.constructor = MusicRestInputComponent;\n\n /**\n * Get rest input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicRestInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set rest input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicRestInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicRestInputComponent = MusicRestInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Stem input component\n *\n * @class MusicStemInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicStemInputComponent() {\n this.type = 'stem';\n }\n\n /**\n * Inheritance property\n */\n MusicStemInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicStemInputComponent.prototype.constructor = MusicStemInputComponent;\n\n /**\n * Get stem input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicStemInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set stem input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicStemInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicStemInputComponent = MusicStemInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Tie ro slur input component\n *\n * @class MusicTieOrSlurInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicTieOrSlurInputComponent() {\n this.type = 'tieOrSlur';\n }\n\n /**\n * Inheritance property\n */\n MusicTieOrSlurInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicTieOrSlurInputComponent.prototype.constructor = MusicTieOrSlurInputComponent;\n\n /**\n * Get tie or slur input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicTieOrSlurInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set tie or slur input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicTieOrSlurInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicTieOrSlurInputComponent = MusicTieOrSlurInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Time signature input component\n *\n * @class MusicTimeSignatureInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicTimeSignatureInputComponent() {\n this.type = 'timeSignature';\n }\n\n /**\n * Inheritance property\n */\n MusicTimeSignatureInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicTimeSignatureInputComponent.prototype.constructor = MusicTimeSignatureInputComponent;\n\n /**\n * Get time signature input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicTimeSignatureInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set time signature input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicTimeSignatureInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicTimeSignatureInputComponent = MusicTimeSignatureInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represents a staff used for music recognition\n * default values: count=5, gap=20\n *\n * @class MusicStaff\n * @constructor\n */\n function MusicStaff() {\n this.count = 5;\n this.gap = 20;\n }\n\n /**\n * Get the lines count\n *\n * @method getCount\n * @returns {Number}\n */\n MusicStaff.prototype.getCount = function () {\n return this.count;\n };\n\n /**\n * Set the lines count\n *\n * @method setCount\n * @param {Number} count\n */\n MusicStaff.prototype.setCount = function (count) {\n this.count = count;\n };\n\n /**\n * Get the spacing from the top\n *\n * @method getTop\n * @returns {Number}\n */\n MusicStaff.prototype.getTop = function () {\n return this.top;\n };\n\n /**\n * Set the spacing from the top\n *\n * @method setTop\n * @param {Number} top\n */\n MusicStaff.prototype.setTop = function (top) {\n this.top = top;\n };\n\n /**\n * Get the gap between lines\n *\n * @method getGap\n * @returns {Number}\n */\n MusicStaff.prototype.getGap = function () {\n return this.gap;\n };\n\n /**\n * Set the gap between lines\n *\n * @method setGap\n * @param {Number} gap\n */\n MusicStaff.prototype.setGap = function (gap) {\n this.gap = gap;\n };\n\n // Export\n scope.MusicStaff = MusicStaff;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for music recognition\n *\n * @class MusicParameter\n * @extends AbstractParameter\n * @constructor\n */\n function MusicParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n this.resultTypes = [];\n this.userResources = [];\n }\n\n /**\n * Inheritance property\n */\n MusicParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n MusicParameter.prototype.constructor = MusicParameter;\n\n /**\n * Get the music result types (e.g. MusicXML, ScoreTree)\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MusicParameter.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the music result types (e.g. MusicXML, ScoreTree)\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MusicParameter.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MusicParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MusicParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MusicParameter.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MusicParameter.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n\n /**\n * Get the staff\n *\n * @method getStaff\n * @returns {MusicStaff}\n */\n MusicParameter.prototype.getStaff = function () {\n return this.staff;\n };\n\n /**\n * Set the staff\n *\n * @method setStaff\n * @param {MusicStaff} staff\n */\n MusicParameter.prototype.setStaff = function (staff) {\n this.staff = staff;\n };\n\n /**\n * Get the number of divisions\n *\n * @method getDivisions\n * @returns {Number}\n */\n MusicParameter.prototype.getDivisions = function () {\n return this.divisions;\n };\n\n /**\n * Set the number of divisions\n *\n * @method setDivisions\n * @param {Number} divisions\n */\n MusicParameter.prototype.setDivisions = function (divisions) {\n this.divisions = divisions;\n };\n\n // Export\n scope.MusicParameter = MusicParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for music recognition\n *\n * @class MusicRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function MusicRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n MusicRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n MusicRecognitionInput.prototype.constructor = MusicRecognitionInput;\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n MusicRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n MusicRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n /**\n * Get the result types\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MusicRecognitionInput.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the result types\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MusicRecognitionInput.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MusicRecognitionInput.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MusicRecognitionInput.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MusicRecognitionInput.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MusicRecognitionInput.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n\n /**\n * Get the staff\n *\n * @method getStaff\n * @returns {MusicStaff}\n */\n MusicRecognitionInput.prototype.getStaff = function () {\n return this.staff;\n };\n\n /**\n * Set the staff\n *\n * @method setStaff\n * @param {MusicStaff} staff\n */\n MusicRecognitionInput.prototype.setStaff = function (staff) {\n this.staff = staff;\n };\n\n /**\n * Get the number of divisions\n *\n * @method getDivisions\n * @returns {Number}\n */\n MusicRecognitionInput.prototype.getDivisions = function () {\n return this.divisions;\n };\n\n /**\n * Set the number of divisions\n *\n * @method setDivisions\n * @param {Number} divisions\n */\n MusicRecognitionInput.prototype.setDivisions = function (divisions) {\n this.divisions = divisions;\n };\n\n // Export\n scope.MusicRecognitionInput = MusicRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for music input\n *\n * @class MusicRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function MusicRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n MusicRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n MusicRecognitionData.prototype.constructor = MusicRecognitionData;\n\n /**\n * Get music input\n *\n * @method getMusicRecognitionInput\n * @returns {MusicRecognitionInput}\n */\n MusicRecognitionData.prototype.getMusicRecognitionInput = function () {\n return this.musicInput;\n };\n\n /**\n * Set music input\n *\n * @method setMusicRecognitionInput\n * @param {MusicRecognitionInput} input\n */\n MusicRecognitionData.prototype.setMusicRecognitionInput = function (input) {\n this.musicInput = JSON.stringify(input);\n };\n\n // Export\n scope.MusicRecognitionData = MusicRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for analyzer recognition\n *\n * @class AnalyzerParameter\n * @extends AbstractParameter\n * @constructor\n */\n function AnalyzerParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n this.textParameter = new scope.TextParameter();\n this.textParameter.setLanguage('en_US');\n this.textParameter.setInputMode('CURSIVE');\n }\n\n /**\n * Inheritance property\n */\n AnalyzerParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n AnalyzerParameter.prototype.constructor = AnalyzerParameter;\n\n /**\n * Get text recognition parameters\n *\n * @method getTextParameters\n * @returns {TextParameter}\n */\n AnalyzerParameter.prototype.getTextParameters = function () {\n return this.textParameter;\n };\n\n /**\n * Set text recognition parameters\n *\n * @method setTextParameters\n * @param {TextParameter} parameters\n */\n AnalyzerParameter.prototype.setTextParameters = function (parameters) {\n this.textParameter = parameters;\n };\n\n /**\n * Get analyzer coordinate resolution\n *\n * @method getCoordinateResolution\n * @returns {Number}\n */\n AnalyzerParameter.prototype.getCoordinateResolution = function () {\n return this.coordinateResolution;\n };\n\n /**\n * Set analyzer coordinate resolution\n *\n * @method setCoordinateResolution\n * @param {Number} coordinateResolution\n */\n AnalyzerParameter.prototype.setCoordinateResolution = function (coordinateResolution) {\n this.coordinateResolution = coordinateResolution;\n };\n\n // Export\n scope.AnalyzerParameter = AnalyzerParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for analyzer recognition\n *\n * @class AnalyzerRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function AnalyzerRecognitionInput() {\n\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n AnalyzerRecognitionInput.prototype.constructor = AnalyzerRecognitionInput;\n\n /**\n * Get analyzer recognition parameters\n *\n * @method getParameters\n * @returns {AnalyzerParameter}\n */\n AnalyzerRecognitionInput.prototype.getParameters = function () {\n return this.parameter;\n };\n\n /**\n * Set analyzer recognition parameters\n *\n * @method setParameters\n * @param {AnalyzerParameter} parameters\n */\n AnalyzerRecognitionInput.prototype.setParameters = function (parameters) {\n this.parameter = parameters;\n };\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n AnalyzerRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n AnalyzerRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.AnalyzerRecognitionInput = AnalyzerRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for analyzer input\n *\n * @class AnalyzerRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function AnalyzerRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n AnalyzerRecognitionData.prototype.constructor = AnalyzerRecognitionData;\n\n /**\n * Get analyzer input\n *\n * @method getAnalyzerRecognitionInput\n * @returns {AnalyzerRecognitionInput}\n */\n AnalyzerRecognitionData.prototype.getAnalyzerRecognitionInput = function () {\n return this.analyzerInput;\n };\n\n /**\n * Set analyzer input\n *\n * @method setAnalyzerRecognitionInput\n * @param {AnalyzerRecognitionInput} input\n */\n AnalyzerRecognitionData.prototype.setAnalyzerRecognitionInput = function (input) {\n this.analyzerInput = JSON.stringify(input);\n };\n\n // Export\n scope.AnalyzerRecognitionData = AnalyzerRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract result\n *\n * @class AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function AbstractResult(obj) {\n if (obj) {\n this.instanceId = obj.instanceId;\n }\n }\n\n /**\n * Get instance id\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractResult.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n // Export\n scope.AbstractResult = AbstractResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition text result message\n *\n * @class AbstractRecoResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractRecoResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n if (obj) {\n this.instanceId = obj.instanceId;\n }\n }\n\n /**\n * Inheritance property\n */\n AbstractRecoResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n AbstractRecoResponseWSMessage.prototype.constructor = AbstractRecoResponseWSMessage;\n\n /**\n * Get instance id\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractRecoResponseWSMessage.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n // Export\n scope.AbstractRecoResponseWSMessage = AbstractRecoResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class ChallengeResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ChallengeResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n if (obj) {\n this.challenge = obj.challenge;\n }\n }\n\n /**\n * Inheritance property\n */\n ChallengeResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ChallengeResponseWSMessage.prototype.constructor = ChallengeResponseWSMessage;\n\n /**\n * Get the challenge\n *\n * @method getChallenge\n * @returns {String}\n */\n ChallengeResponseWSMessage.prototype.getChallenge = function () {\n return this.challenge;\n };\n\n // Export\n scope.ChallengeResponseWSMessage = ChallengeResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition error message\n *\n * @class ErrorResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ErrorResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n if (obj) {\n this.error = obj.error;\n }\n }\n\n /**\n * Inheritance property\n */\n ErrorResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ErrorResponseWSMessage.prototype.constructor = ErrorResponseWSMessage;\n\n /**\n * Get the error\n *\n * @method getError\n * @returns {String}\n */\n ErrorResponseWSMessage.prototype.getError = function () {\n return this.error;\n };\n\n // Export\n scope.ErrorResponseWSMessage = ErrorResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition init message\n *\n * @class InitResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function InitResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n InitResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n InitResponseWSMessage.prototype.constructor = InitResponseWSMessage;\n\n // Export\n scope.InitResponseWSMessage = InitResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text ink ranges\n *\n * @class TextInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function TextInkRange(obj) {\n if (obj) {\n var cpt = obj.split(/[:-]+/);\n this.startUnit = Number(cpt[0]);\n this.startComponent = Number(cpt[1]);\n this.startPoint = Number(cpt[2]);\n this.endUnit = Number(cpt[3]);\n this.endComponent = Number(cpt[4]);\n this.endPoint = Number(cpt[5]);\n }\n }\n\n /**\n * Get start unit\n *\n * @method getStartUnit\n * @returns {Number}\n */\n TextInkRange.prototype.getStartUnit = function () {\n return this.startUnit;\n };\n\n /**\n * Get end unit\n *\n * @method getEndUnit\n * @returns {Number}\n */\n TextInkRange.prototype.getEndUnit = function () {\n return this.endUnit;\n };\n\n /**\n * Get start component\n *\n * @method getStartComponent\n * @returns {Number}\n */\n TextInkRange.prototype.getStartComponent = function () {\n return this.startComponent;\n };\n\n /**\n * Get end component\n *\n * @method getEndComponent\n * @returns {Number}\n */\n TextInkRange.prototype.getEndComponent = function () {\n return this.endComponent;\n };\n\n /**\n * Get start point\n *\n * @method getStartPoint\n * @returns {Number}\n */\n TextInkRange.prototype.getStartPoint = function () {\n return this.startPoint;\n };\n\n /**\n * Get end point\n *\n * @method getEndPoint\n * @returns {Number}\n */\n TextInkRange.prototype.getEndPoint = function () {\n return this.endPoint;\n };\n\n // Export\n scope.TextInkRange = TextInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text candidate\n *\n * @class TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextCandidate(obj) {\n this.flags = [];\n if (obj) {\n this.label = obj.label;\n this.normalizedScore = obj.normalizedScore;\n this.spellingDistortionRatio = obj.spellingDistortionRatio;\n for (var j in obj.flags) {\n this.flags.push(obj.flags[j]);\n }\n }\n }\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n TextCandidate.prototype.getLabel = function () {\n return this.label;\n };\n\n /**\n * Get normalized score\n *\n * @method getNormalizedScore\n * @returns {Number}\n */\n TextCandidate.prototype.getNormalizedScore = function () {\n return this.normalizedScore;\n };\n\n /**\n * Get resemblance score\n *\n * @method getResemblanceScore\n * @returns {Number}\n */\n TextCandidate.prototype.getResemblanceScore = function () {\n return this.resemblanceScore;\n };\n\n /**\n * Get spelling distortion ratio\n *\n * @method getSpellingDistortionRatio\n * @returns {Number}\n */\n TextCandidate.prototype.getSpellingDistortionRatio = function () {\n return this.spellingDistortionRatio;\n };\n\n /**\n * Get flags\n *\n * @method getFlags\n * @returns {Array}\n */\n TextCandidate.prototype.getFlags = function () {\n return this.flags;\n };\n\n // Export\n scope.TextCandidate = TextCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextCharCandidate\n * @extends TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextCharCandidate(obj) {\n scope.TextCandidate.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextCharCandidate.prototype = new scope.TextCandidate();\n\n /**\n * Constructor property\n */\n TextCharCandidate.prototype.constructor = TextCharCandidate;\n\n // Export\n scope.TextCharCandidate = TextCharCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextWordCandidate\n * @extends TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextWordCandidate(obj) {\n scope.TextCandidate.call(this, obj);\n this.children = [];\n if (obj) {\n for (var i in obj.children) {\n this.children.push(new scope.TextCharSegment(obj.children[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextWordCandidate.prototype = new scope.TextCandidate();\n\n /**\n * Constructor property\n */\n TextWordCandidate.prototype.constructor = TextWordCandidate;\n\n /**\n * Get children\n *\n * @method getChildren\n * @returns {TextCharSegment[]}\n */\n TextWordCandidate.prototype.getChildren = function () {\n return this.children;\n };\n\n // Export\n scope.TextWordCandidate = TextWordCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextResultCandidate\n * @extends TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextResultCandidate(obj) {\n scope.TextCandidate.call(this, obj);\n this.children = [];\n if (obj) {\n for (var i in obj.children) {\n this.children.push(new scope.TextWordSegment(obj.children[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResultCandidate.prototype = new scope.TextCandidate();\n\n /**\n * Constructor property\n */\n TextResultCandidate.prototype.constructor = TextResultCandidate;\n\n /**\n * Get children\n *\n * @method getChildren\n * @returns {TextWordSegment[]}\n */\n TextResultCandidate.prototype.getChildren = function () {\n return this.children;\n };\n\n // Export\n scope.TextResultCandidate = TextResultCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text document\n *\n * @class TextDocument\n * @param {Object} [obj]\n * @constructor\n */\n function TextDocument(obj) {\n this.tagItems = [];\n this.wordCandidates = [];\n this.charCandidates = [];\n if (obj) {\n if (obj.textSegmentResult) {\n this.textSegmentResult = new scope.TextResultSegment(obj.textSegmentResult);\n }\n for (var i in obj.tagItems) {\n this.tagItems.push(new scope.TextTagItem(obj.tagItems[i]));\n }\n for (var j in obj.wordCandidates) {\n this.wordCandidates.push(new scope.TextWordSegment(obj.wordCandidates[j]));\n }\n for (var k in obj.charCandidates) {\n this.charCandidates.push(new scope.TextCharSegment(obj.charCandidates[k]));\n }\n }\n }\n\n /**\n * Get tag items\n *\n * @method getTagItems\n * @returns {TextTagItem[]}\n */\n TextDocument.prototype.getTagItems = function () {\n return this.tagItems;\n };\n\n /**\n * Get word segments\n *\n * @method getWordSegments\n * @returns {TextWordSegment[]}\n */\n TextDocument.prototype.getWordSegments = function () {\n return this.wordCandidates;\n };\n\n /**\n * Get word segment\n *\n * @method getWordSegment\n * @param {TextInkRange[]} inkRanges\n * @returns {TextWordSegment}\n */\n TextDocument.prototype.getWordSegment = function (inkRanges) {\n for (var i = 0; i < this.getWordSegments().length; i++) {\n if (JSON.stringify(this.getWordSegments()[i].getInkRanges()) === JSON.stringify(inkRanges)) {\n return this.getWordSegments()[i];\n }\n }\n return undefined;\n };\n\n /**\n * Get char segments\n *\n * @method getCharSegments\n * @returns {TextCharSegment[]}\n */\n TextDocument.prototype.getCharSegments = function () {\n return this.charCandidates;\n };\n\n /**\n * Get char segment\n *\n * @method getCharSegment\n * @param {TextInkRange[]} inkRanges\n * @returns {TextCharSegment}\n */\n TextDocument.prototype.getCharSegment = function (inkRanges) {\n for (var i = 0; i < this.getCharSegments().length; i++) {\n if (JSON.stringify(this.getCharSegments()[i].getInkRanges()) === JSON.stringify(inkRanges)) {\n return this.getCharSegments()[i];\n }\n }\n return undefined;\n };\n\n /**\n * Get text segment\n *\n * @method getTextSegment\n * @returns {TextResultSegment}\n */\n TextDocument.prototype.getTextSegment = function () {\n return this.textSegmentResult;\n };\n\n // Export\n scope.TextDocument = TextDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text result\n *\n * @class TextResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function TextResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n if (obj.result) {\n this.result = new scope.TextDocument(obj.result);\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n TextResult.prototype.constructor = TextResult;\n\n /**\n * Get text document\n *\n * @method getTextDocument\n * @returns {TextDocument}\n */\n TextResult.prototype.getTextDocument = function () {\n return this.result;\n };\n\n // Export\n scope.TextResult = TextResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextSegment(obj) {\n this.candidates = [];\n this.inkRanges = [];\n if (obj) {\n this.selectedCandidateIdx = obj.selectedCandidateIdx;\n if (obj.inkRanges) {\n var ranges = obj.inkRanges.split(/[\\s]+/);\n for (var j in ranges) {\n this.inkRanges.push(new scope.TextInkRange(ranges[j]));\n }\n }\n }\n }\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {TextCandidate[]}\n */\n TextSegment.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n TextSegment.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidateIdx;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {TextCandidate}\n */\n TextSegment.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidateIdx !== undefined)) {\n return this.candidates[this.selectedCandidateIdx];\n }\n return undefined;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {TextInkRange[]}\n */\n TextSegment.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.TextSegment = TextSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextCharSegment\n * @extends TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextCharSegment(obj) {\n scope.TextSegment.call(this, obj);\n if (obj) {\n for (var i in obj.candidates) {\n this.candidates.push(new scope.TextCharCandidate(obj.candidates[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextCharSegment.prototype = new scope.TextSegment();\n\n /**\n * Constructor property\n */\n TextCharSegment.prototype.constructor = TextCharSegment;\n\n // Export\n scope.TextCharSegment = TextCharSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextWordSegment\n * @extends TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextWordSegment(obj) {\n scope.TextSegment.call(this, obj);\n if (obj) {\n for (var i in obj.candidates) {\n this.candidates.push(new scope.TextWordCandidate(obj.candidates[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextWordSegment.prototype = new scope.TextSegment();\n\n /**\n * Constructor property\n */\n TextWordSegment.prototype.constructor = TextWordSegment;\n\n // Export\n scope.TextWordSegment = TextWordSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextResultSegment\n * @extends TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextResultSegment(obj) {\n scope.TextSegment.call(this, obj);\n if (obj) {\n for (var i in obj.candidates) {\n this.candidates.push(new scope.TextResultCandidate(obj.candidates[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResultSegment.prototype = new scope.TextSegment();\n\n /**\n * Constructor property\n */\n TextResultSegment.prototype.constructor = TextResultSegment;\n\n // Export\n scope.TextResultSegment = TextResultSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text tag item\n *\n * @class TextTagItem\n * @param {Object} [obj]\n * @constructor\n */\n function TextTagItem(obj) {\n this.inkRanges = [];\n if (obj) {\n this.tagType = obj.tagType;\n if (obj.inkRanges) {\n var ranges = obj.inkRanges.split(/[\\s]+/);\n for (var i in ranges) {\n this.inkRanges.push(new scope.TextInkRange(ranges[i]));\n }\n }\n }\n }\n\n /**\n * Get tag type\n *\n * @method getTagType\n * @returns {String}\n */\n TextTagItem.prototype.getTagType = function () {\n return this.tagType;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {TextInkRange[]}\n */\n TextTagItem.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.TextTagItem = TextTagItem;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition text result message\n *\n * @class TextResponseWSMessage\n * @extends AbstractRecoResponseWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function TextResponseWSMessage(obj) {\n scope.AbstractRecoResponseWSMessage.call(this, obj);\n if (obj) {\n if (obj.result) {\n this.result = new scope.TextDocument(obj.result);\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResponseWSMessage.prototype = new scope.AbstractRecoResponseWSMessage();\n\n /**\n * Constructor property\n */\n TextResponseWSMessage.prototype.constructor = TextResponseWSMessage;\n\n /**\n * Get text document\n *\n * @method getTextDocument\n * @returns {TextDocument}\n */\n TextResponseWSMessage.prototype.getTextDocument = function () {\n return this.result;\n };\n\n // Export\n scope.TextResponseWSMessage = TextResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract shape primitive\n *\n * @class AbstractShapePrimitive\n * @param {Object} [obj]\n * @constructor\n */\n function AbstractShapePrimitive(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AbstractShapePrimitive.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is line\n *\n * @method isLine\n * @returns {Boolean}\n */\n AbstractShapePrimitive.prototype.isLine = function () {\n return this.type === 'line';\n };\n\n /**\n * Is ellipse\n *\n * @method isEllipse\n * @returns {Boolean}\n */\n AbstractShapePrimitive.prototype.isEllipse = function () {\n return this.type === 'ellipse';\n };\n\n // Export\n scope.AbstractShapePrimitive = AbstractShapePrimitive;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract decorated shape\n *\n * @class AbstractDecoratedShape\n * @extends AbstractShapePrimitive\n * @param {Object} [obj]\n * @constructor\n */\n function AbstractDecoratedShape(obj) {\n scope.AbstractShapePrimitive.call(this, obj);\n if (obj) {\n this.beginDecoration = obj.beginDecoration;\n this.beginTangentAngle = obj.beginTangentAngle;\n this.endDecoration = obj.endDecoration;\n this.endTangentAngle = obj.endTangentAngle;\n }\n }\n\n /**\n * Inheritance property\n */\n AbstractDecoratedShape.prototype = new scope.AbstractShapePrimitive();\n\n /**\n * Constructor property\n */\n AbstractDecoratedShape.prototype.constructor = AbstractDecoratedShape;\n\n /**\n * Has begin decoration\n *\n * @method hasBeginDecoration\n * @returns {Boolean}\n */\n AbstractDecoratedShape.prototype.hasBeginDecoration = function () {\n return typeof this.beginDecoration !== 'undefined';\n };\n\n /**\n * Has end decoration\n *\n * @method hasEndDecoration\n * @returns {Boolean}\n */\n AbstractDecoratedShape.prototype.hasEndDecoration = function () {\n return typeof this.endDecoration !== 'undefined';\n };\n\n /**\n * Get begin decoration\n *\n * @method getBeginDecoration\n * @returns {String}\n */\n AbstractDecoratedShape.prototype.getBeginDecoration = function () {\n return this.beginDecoration;\n };\n\n /**\n * Get end decoration\n *\n * @method getEndDecoration\n * @returns {String}\n */\n AbstractDecoratedShape.prototype.getEndDecoration = function () {\n return this.endDecoration;\n };\n\n /**\n * Get begin tangent angle\n *\n * @method getBeginTangentAngle\n * @returns {Number}\n */\n AbstractDecoratedShape.prototype.getBeginTangentAngle = function () {\n return this.beginTangentAngle;\n };\n\n /**\n * Get end tangent angle\n *\n * @method getEndTangentAngle\n * @returns {Number}\n */\n AbstractDecoratedShape.prototype.getEndTangentAngle = function () {\n return this.endTangentAngle;\n };\n\n // Export\n scope.AbstractDecoratedShape = AbstractDecoratedShape;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape candidate\n *\n * @class ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeCandidate(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n ShapeCandidate.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is erased\n *\n * @method isErased\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isErased = function () {\n return this.type === 'erased';\n };\n\n /**\n * Is scratch-out\n *\n * @method isScratchOut\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isScratchOut = function () {\n return this.type === 'scratchOut';\n };\n\n /**\n * Is not recognized\n *\n * @method isNotRecognized\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isNotRecognized = function () {\n return this.type === 'notRecognized';\n };\n\n /**\n * Is recognized\n *\n * @method isRecognized\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isRecognized = function () {\n return this.type === 'recognizedShape';\n };\n\n // Export\n scope.ShapeCandidate = ShapeCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape document\n *\n * @class ShapeDocument\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeDocument(obj) {\n this.segments = [];\n if (obj) {\n for (var i in obj.segments) {\n this.segments.push(new scope.ShapeSegment(obj.segments[i]));\n }\n }\n }\n\n /**\n * Get segments\n *\n * @method getSegments\n * @returns {ShapeSegment[]}\n */\n ShapeDocument.prototype.getSegments = function () {\n return this.segments;\n };\n\n // Export\n scope.ShapeDocument = ShapeDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape ellipse\n *\n * @class ShapeEllipse\n * @extends AbstractDecoratedShape\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeEllipse(obj) {\n scope.AbstractDecoratedShape.call(this, obj);\n if (obj) {\n this.center = new scope.Point(obj.center);\n this.minRadius = obj.minRadius;\n this.maxRadius = obj.maxRadius;\n this.orientation = obj.orientation;\n this.startAngle = obj.startAngle;\n this.sweepAngle = obj.sweepAngle;\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeEllipse.prototype = new scope.AbstractDecoratedShape();\n\n /**\n * Constructor property\n */\n ShapeEllipse.prototype.constructor = ShapeEllipse;\n\n /**\n * Get center\n *\n * @method getCenter\n * @returns {Point}\n */\n ShapeEllipse.prototype.getCenter = function () {\n return this.center;\n };\n\n /**\n * Get min radius\n *\n * @method getMinRadius\n * @returns {Number}\n */\n ShapeEllipse.prototype.getMinRadius = function () {\n return this.minRadius;\n };\n\n /**\n * Get max radius\n *\n * @method getMaxRadius\n * @returns {Number}\n */\n ShapeEllipse.prototype.getMaxRadius = function () {\n return this.maxRadius;\n };\n\n /**\n * Get orientation\n *\n * @method getOrientation\n * @returns {String}\n */\n ShapeEllipse.prototype.getOrientation = function () {\n return this.orientation;\n };\n\n /**\n * Get start angle\n *\n * @method getStartAngle\n * @returns {Number}\n */\n ShapeEllipse.prototype.getStartAngle = function () {\n return this.startAngle;\n };\n\n /**\n * Get sweep angle\n *\n * @method getSweepAngle\n * @returns {Number}\n */\n ShapeEllipse.prototype.getSweepAngle = function () {\n return this.sweepAngle;\n };\n\n // Export\n scope.ShapeEllipse = ShapeEllipse;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape erased\n *\n * @class ShapeErased\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeErased(obj) {\n scope.ShapeCandidate.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ShapeErased.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeErased.prototype.constructor = ShapeErased;\n\n // Export\n scope.ShapeErased = ShapeErased;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape ink range\n *\n * @class ShapeInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeInkRange(obj) {\n if (obj) {\n this.firstStroke = obj.firstStroke;\n this.lastStroke = obj.lastStroke;\n this.firstPoint = obj.firstPoint;\n this.lastPoint = obj.lastPoint;\n }\n }\n\n /**\n * Get first stroke\n *\n * @method getFirstStroke\n * @returns {Number}\n */\n ShapeInkRange.prototype.getFirstStroke = function () {\n return this.firstStroke;\n };\n\n /**\n * Get last stroke\n *\n * @method getLastStroke\n * @returns {Number}\n */\n ShapeInkRange.prototype.getLastStroke = function () {\n return this.lastStroke;\n };\n\n /**\n * Get first point\n *\n * @method getFirstPoint\n * @returns {Point}\n */\n ShapeInkRange.prototype.getFirstPoint = function () {\n return this.firstPoint;\n };\n\n /**\n * Get last point\n *\n * @method getLastPoint\n * @returns {Point}\n */\n ShapeInkRange.prototype.getLastPoint = function () {\n return this.lastPoint;\n };\n\n // Export\n scope.ShapeInkRange = ShapeInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape line\n *\n * @class ShapeLine\n * @extends AbstractDecoratedShape\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeLine(obj) {\n scope.AbstractDecoratedShape.call(this, obj);\n if (obj) {\n this.firstPoint = new scope.Point(obj.firstPoint);\n this.lastPoint = new scope.Point(obj.lastPoint);\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeLine.prototype = new scope.AbstractDecoratedShape();\n\n /**\n * Constructor property\n */\n ShapeLine.prototype.constructor = ShapeLine;\n\n /**\n * Get first point\n *\n * @method getFirstPoint\n * @returns {Point}\n */\n ShapeLine.prototype.getFirstPoint = function () {\n return this.firstPoint;\n };\n\n /**\n * Get last point\n *\n * @method getLastPoint\n * @returns {Point}\n */\n ShapeLine.prototype.getLastPoint = function () {\n return this.lastPoint;\n };\n\n // Export\n scope.ShapeLine = ShapeLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape not recognized\n *\n * @class ShapeNotRecognized\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeNotRecognized(obj) {\n scope.ShapeCandidate.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ShapeNotRecognized.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeNotRecognized.prototype.constructor = ShapeNotRecognized;\n\n // Export\n scope.ShapeNotRecognized = ShapeNotRecognized;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape recognized\n *\n * @class ShapeRecognized\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeRecognized(obj) {\n scope.ShapeCandidate.call(this, obj);\n this.primitives = [];\n if (obj) {\n this.label = obj.label;\n this.normalizedRecognitionScore = obj.normalizedRecognitionScore;\n this.resemblanceScore = obj.resemblanceScore;\n for (var i in obj.primitives) {\n switch (obj.primitives[i].type) {\n case 'line':\n this.primitives.push(new scope.ShapeLine(obj.primitives[i]));\n break;\n case 'ellipse':\n this.primitives.push(new scope.ShapeEllipse(obj.primitives[i]));\n break;\n default:\n throw new Error('Unknown shape primitive');\n }\n }\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognized.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeRecognized.prototype.constructor = ShapeRecognized;\n\n /**\n * Get primitives\n *\n * @method getPrimitives\n * @returns {AbstractDecoratedShape[]}\n */\n ShapeRecognized.prototype.getPrimitives = function () {\n return this.primitives;\n };\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n ShapeRecognized.prototype.getLabel = function () {\n return this.label;\n };\n\n /**\n * Get normalized score\n *\n * @method getNormalizedRecognitionScore\n * @returns {Number}\n */\n ShapeRecognized.prototype.getNormalizedRecognitionScore = function () {\n return this.normalizedRecognitionScore;\n };\n\n /**\n * Get resemblance score\n *\n * @method getResemblanceScore\n * @returns {Number}\n */\n ShapeRecognized.prototype.getResemblanceScore = function () {\n return this.resemblanceScore;\n };\n\n // Export\n scope.ShapeRecognized = ShapeRecognized;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape result\n *\n * @class ShapeResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.ShapeDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n ShapeResult.prototype.constructor = ShapeResult;\n\n /**\n * Get shape document\n *\n * @method getShapeDocument\n * @returns {ShapeDocument}\n */\n ShapeResult.prototype.getShapeDocument = function () {\n return this.result;\n };\n\n // Export\n scope.ShapeResult = ShapeResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape scratch-out\n *\n * @class ShapeScratchOut\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeScratchOut(obj) {\n scope.ShapeCandidate.call(this, obj);\n this.inkRanges = [];\n if (obj) {\n for (var j in obj.inkRanges) {\n this.inkRanges.push(new scope.ShapeInkRange(obj.inkRanges[j]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeScratchOut.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeScratchOut.prototype.constructor = ShapeScratchOut;\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {ShapeInkRange[]}\n */\n ShapeScratchOut.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.ShapeScratchOut = ShapeScratchOut;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape segment\n *\n * @class ShapeSegment\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeSegment(obj) {\n this.inkRanges = [];\n this.candidates = [];\n if (obj) {\n this.elementType = obj.elementType;\n this.uniqueID = obj.uniqueID;\n this.selectedCandidateIndex = obj.selectedCandidateIndex;\n for (var i in obj.candidates) {\n switch (obj.candidates[i].type) {\n case 'erased':\n this.candidates.push(new scope.ShapeErased(obj.candidates[i]));\n break;\n case 'scratchOut':\n this.candidates.push(new scope.ShapeScratchOut(obj.candidates[i]));\n break;\n case 'recognizedShape':\n this.candidates.push(new scope.ShapeRecognized(obj.candidates[i]));\n break;\n default:\n this.candidates.push(new scope.ShapeNotRecognized(obj.candidates[i]));\n break;\n }\n }\n for (var j in obj.inkRanges) {\n this.inkRanges.push(new scope.ShapeInkRange(obj.inkRanges[j]));\n }\n }\n }\n\n /**\n * Get element type\n *\n * @method getElementType\n * @returns {String}\n */\n ShapeSegment.prototype.getElementType = function () {\n return this.elementType;\n };\n\n /**\n * Get unique id\n *\n * @method getUniqueId\n * @returns {String}\n */\n ShapeSegment.prototype.getUniqueId = function () {\n return this.uniqueID;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {ShapeInkRange[]}\n */\n ShapeSegment.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n ShapeSegment.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidateIndex;\n };\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {ShapeCandidate[]}\n */\n ShapeSegment.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {ShapeCandidate}\n */\n ShapeSegment.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidateIndex !== undefined)) {\n return this.candidates[this.selectedCandidateIndex];\n }\n return undefined;\n };\n\n // Export\n scope.ShapeSegment = ShapeSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math node\n *\n * @class MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathNode(obj) {\n if (obj) {\n this.name = obj.name;\n this.type = obj.type;\n }\n }\n\n /**\n * Get name\n *\n * @method getName\n * @returns {String}\n */\n MathNode.prototype.getName = function () {\n return this.name;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MathNode.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MathNode = MathNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math non-terminal node\n *\n * @class MathNonTerminalNode\n * @extends MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathNonTerminalNode(obj) {\n scope.MathNode.call(this, obj);\n this.candidates = [];\n if (obj) {\n this.selectedCandidate = obj.selectedCandidate;\n for (var i in obj.candidates) {\n switch (obj.candidates[i].type) {\n case 'nonTerminalNode':\n switch (obj.candidates[i].name) {\n case 'term':\n this.candidates.push(new scope.MathTermNonTerminalNode(obj.candidates[i]));\n break;\n case 'sqrtTerm':\n this.candidates.push(new scope.MathSqrtNonTerminalNode(obj.candidates[i]));\n break;\n case 'vectorTerm':\n this.candidates.push(new scope.MathVectorNonTerminalNode(obj.candidates[i]));\n break;\n case 'system':\n this.candidates.push(new scope.MathSystemNonTerminalNode(obj.candidates[i]));\n break;\n case 'exponentiable':\n this.candidates.push(new scope.MathExponentiableNonTerminalNode(obj.candidates[i]));\n break;\n case 'expression':\n this.candidates.push(new scope.MathExpressionNonTerminalNode(obj.candidates[i]));\n break;\n default:\n throw new Error('Unknown nonTerminalNode');\n }\n break;\n case 'terminalNode':\n this.candidates.push(new scope.MathTerminalNode(obj.candidates[i]));\n break;\n case 'rule':\n switch (obj.candidates[i].name) {\n case 'identity':\n this.candidates.push(new scope.MathIdentityRuleNode(obj.candidates[i]));\n break;\n case 'horizontal pair':\n this.candidates.push(new scope.MathHorizontalPairRuleNode(obj.candidates[i]));\n break;\n case 'fence':\n this.candidates.push(new scope.MathFenceRuleNode(obj.candidates[i]));\n break;\n case 'fraction':\n this.candidates.push(new scope.MathFractionRuleNode(obj.candidates[i]));\n break;\n case 'sqrt':\n this.candidates.push(new scope.MathSqrtRuleNode(obj.candidates[i]));\n break;\n case 'subscript':\n this.candidates.push(new scope.MathSubscriptRuleNode(obj.candidates[i]));\n break;\n case 'superscript':\n this.candidates.push(new scope.MathSuperscriptRuleNode(obj.candidates[i]));\n break;\n case 'subsuperscript':\n this.candidates.push(new scope.MathSubSuperscriptRuleNode(obj.candidates[i]));\n break;\n case 'underscript':\n this.candidates.push(new scope.MathUnderscriptRuleNode(obj.candidates[i]));\n break;\n case 'overscript':\n this.candidates.push(new scope.MathOverscriptRuleNode(obj.candidates[i]));\n break;\n case 'underoverscript':\n this.candidates.push(new scope.MathUnderOverscriptRuleNode(obj.candidates[i]));\n break;\n case 'presuperscript':\n this.candidates.push(new scope.MathPreSuperscriptRuleNode(obj.candidates[i]));\n break;\n case 'vertical pair':\n this.candidates.push(new scope.MathVerticalPairRuleNode(obj.candidates[i]));\n break;\n case 'left fence':\n this.candidates.push(new scope.MathLeftFenceRuleNode(obj.candidates[i]));\n break;\n default:\n throw new Error('Unknown ruleNode');\n }\n break;\n default:\n throw new Error('Unknown math node type');\n }\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MathNonTerminalNode.prototype = new scope.MathNode();\n\n /**\n * Constructor property\n */\n MathNonTerminalNode.prototype.constructor = MathNonTerminalNode;\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {MathNode[]}\n */\n MathNonTerminalNode.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n MathNonTerminalNode.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidate;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {MathNode}\n */\n MathNonTerminalNode.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidate !== undefined)) {\n return this.candidates[this.selectedCandidate];\n }\n return undefined;\n };\n\n /**\n * Get bounding box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n MathNonTerminalNode.prototype.getBoundingBox = function () {\n return this.getSelectedCandidate() ? this.getSelectedCandidate().getBoundingBox() : undefined;\n };\n\n // Export\n scope.MathNonTerminalNode = MathNonTerminalNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract math result\n *\n * @class MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathResultElement(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MathResultElement.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is LaTeX result\n *\n * @method isLatex\n * @returns {Boolean}\n */\n MathResultElement.prototype.isLaTex = function () {\n return this.type === 'LATEX';\n };\n\n /**\n * Is MathML result\n *\n * @method isMathMl\n * @returns {Boolean}\n */\n MathResultElement.prototype.isMathMl = function () {\n return this.type === 'MATHML';\n };\n\n /**\n * Is SymbolTree result\n *\n * @method isSymbolTree\n * @returns {Boolean}\n */\n MathResultElement.prototype.isSymbolTree = function () {\n return this.type === 'SYMBOLTREE';\n };\n\n // Export\n scope.MathResultElement = MathResultElement;\n})(MyScript);","(function (scope) {\n 'use strict';\n /**\n * Math rule node\n *\n * @class MathRuleNode\n * @extends MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathRuleNode(obj) {\n scope.MathNode.call(this, obj);\n this.children = [];\n if (obj) {\n this.name = obj.name;\n for (var i in obj.children) {\n switch (obj.children[i].type) {\n case 'nonTerminalNode':\n switch (obj.children[i].name) {\n case 'term':\n this.children.push(new scope.MathTermNonTerminalNode(obj.children[i]));\n break;\n case 'sqrtTerm':\n this.children.push(new scope.MathSqrtNonTerminalNode(obj.children[i]));\n break;\n case 'vectorTerm':\n this.children.push(new scope.MathVectorNonTerminalNode(obj.children[i]));\n break;\n case 'system':\n this.children.push(new scope.MathSystemNonTerminalNode(obj.children[i]));\n break;\n case 'exponentiable':\n this.children.push(new scope.MathExponentiableNonTerminalNode(obj.children[i]));\n break;\n case 'expression':\n this.children.push(new scope.MathExpressionNonTerminalNode(obj.children[i]));\n break;\n default:\n throw new Error('Unknown nonTerminalNode');\n }\n break;\n case 'terminalNode':\n this.children.push(new scope.MathTerminalNode(obj.children[i]));\n break;\n case 'rule':\n switch (obj.children[i].name) {\n case 'identity':\n this.children.push(new scope.MathIdentityRuleNode(obj.children[i]));\n break;\n case 'horizontal pair':\n this.children.push(new scope.MathHorizontalPairRuleNode(obj.children[i]));\n break;\n case 'fence':\n this.children.push(new scope.MathFenceRuleNode(obj.children[i]));\n break;\n case 'fraction':\n this.children.push(new scope.MathFractionRuleNode(obj.children[i]));\n break;\n case 'sqrt':\n this.children.push(new scope.MathSqrtRuleNode(obj.children[i]));\n break;\n case 'subscript':\n this.children.push(new scope.MathSubscriptRuleNode(obj.children[i]));\n break;\n case 'superscript':\n this.children.push(new scope.MathSuperscriptRuleNode(obj.children[i]));\n break;\n case 'subsuperscript':\n this.children.push(new scope.MathSubSuperscriptRuleNode(obj.children[i]));\n break;\n case 'underscript':\n this.children.push(new scope.MathUnderscriptRuleNode(obj.children[i]));\n break;\n case 'overscript':\n this.children.push(new scope.MathOverscriptRuleNode(obj.children[i]));\n break;\n case 'underoverscript':\n this.children.push(new scope.MathUnderOverscriptRuleNode(obj.children[i]));\n break;\n case 'presuperscript':\n this.children.push(new scope.MathPreSuperscriptRuleNode(obj.children[i]));\n break;\n case 'vertical pair':\n this.children.push(new scope.MathVerticalPairRuleNode(obj.children[i]));\n break;\n case 'left fence':\n this.children.push(new scope.MathLeftFenceRuleNode(obj.children[i]));\n break;\n default:\n throw new Error('Unknown ruleNode');\n }\n break;\n default:\n throw new Error('Unknown math node type');\n }\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MathRuleNode.prototype = new scope.MathNode();\n\n /**\n * Constructor property\n */\n MathRuleNode.prototype.constructor = MathRuleNode;\n\n /**\n * Get name\n *\n * @method getName\n * @returns {String}\n */\n MathRuleNode.prototype.getName = function () {\n return this.name;\n };\n\n /**\n * Get children\n *\n * @method getChildren\n * @returns {MathNode[]}\n */\n MathRuleNode.prototype.getChildren = function () {\n return this.children;\n };\n\n // Export\n scope.MathRuleNode = MathRuleNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math document\n *\n * @class MathDocument\n * @param {Object} [obj]\n * @constructor\n */\n function MathDocument(obj) {\n this.results = [];\n this.scratchOutResults = [];\n if (obj) {\n for (var i in obj.results) {\n var result = obj.results[i];\n switch (result.type) {\n case 'MATHML':\n this.results.push(new scope.MathMathMLResultElement(result));\n break;\n case 'LATEX':\n this.results.push(new scope.MathLaTexResultElement(result));\n break;\n case 'SYMBOLTREE':\n this.results.push(new scope.MathSymbolTreeResultElement(result));\n break;\n default:\n throw new Error('Unknown math result type');\n }\n }\n for (var j in obj.scratchOutResults) {\n this.scratchOutResults.push(new scope.MathScratchOut(obj.scratchOutResults[j]));\n }\n }\n }\n\n /**\n * Get result elements\n *\n * @method getResultElements\n * @returns {MathResultElement[]}\n */\n MathDocument.prototype.getResultElements = function () {\n return this.results;\n };\n\n /**\n * Get scratch-out results\n *\n * @method getScratchOutResults\n * @returns {MathScratchOut[]}\n */\n MathDocument.prototype.getScratchOutResults = function () {\n return this.scratchOutResults;\n };\n\n // Export\n scope.MathDocument = MathDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math ink range\n *\n * @class MathInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function MathInkRange(obj) {\n if (obj) {\n this.component = obj.component;\n this.firstItem = obj.firstItem;\n this.lastItem = obj.lastItem;\n }\n }\n\n /**\n * Get component\n *\n * @method getComponent\n * @returns {Number}\n */\n MathInkRange.prototype.getComponent = function () {\n return this.component;\n };\n\n /**\n * Get first item\n *\n * @method getFirstItem\n * @returns {Number}\n */\n MathInkRange.prototype.getFirstItem = function () {\n return this.firstItem;\n };\n\n /**\n * Get last item\n *\n * @method getLastItem\n * @returns {Number}\n */\n MathInkRange.prototype.getLastItem = function () {\n return this.lastItem;\n };\n\n // Export\n scope.MathInkRange = MathInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * LaTex result element\n *\n * @class MathLaTexResultElement\n * @extends MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathLaTexResultElement(obj) {\n scope.MathResultElement.call(this, obj);\n if (obj) {\n this.value = obj.value;\n }\n }\n\n /**\n * Inheritance property\n */\n MathLaTexResultElement.prototype = new scope.MathResultElement();\n\n /**\n * Constructor property\n */\n MathLaTexResultElement.prototype.constructor = MathLaTexResultElement;\n\n /**\n * Get value\n *\n * @method getValue\n * @returns {String}\n */\n MathLaTexResultElement.prototype.getValue = function () {\n return this.value;\n };\n\n // Export\n scope.MathLaTexResultElement = MathLaTexResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * MathML result element\n *\n * @class MathMathMLResultElement\n * @extends MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathMathMLResultElement(obj) {\n scope.MathResultElement.call(this, obj);\n if (obj) {\n this.value = obj.value;\n }\n }\n\n /**\n * Inheritance property\n */\n MathMathMLResultElement.prototype = new scope.MathResultElement();\n\n /**\n * Constructor property\n */\n MathMathMLResultElement.prototype.constructor = MathMathMLResultElement;\n\n /**\n * Get value\n *\n * @method getValue\n * @returns {String}\n */\n MathMathMLResultElement.prototype.getValue = function () {\n return this.value;\n };\n\n // Export\n scope.MathMathMLResultElement = MathMathMLResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math result\n *\n * @class MathResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function MathResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.MathDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n MathResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n MathResult.prototype.constructor = MathResult;\n\n /**\n * Get math document\n *\n * @method getMathDocument\n * @returns {MathDocument}\n */\n MathResult.prototype.getMathDocument = function () {\n return this.result;\n };\n\n // Export\n scope.MathResult = MathResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math scratch-out\n *\n * @class MathScratchOut\n * @param {Object} [obj]\n * @constructor\n */\n function MathScratchOut(obj) {\n this.inkRanges = [];\n this.erasedInkRanges = [];\n if (obj) {\n for (var i in obj.inkRanges) {\n this.inkRanges.push(new scope.MathInkRange(obj.inkRanges[i]));\n }\n for (var j in obj.erasedInkRanges) {\n this.erasedInkRanges.push(new scope.MathInkRange(obj.erasedInkRanges[j]));\n }\n }\n }\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {MathInkRange[]}\n */\n MathScratchOut.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get erased ink ranges\n *\n * @method getErasedInkRanges\n * @returns {MathInkRange[]}\n */\n MathScratchOut.prototype.getErasedInkRanges = function () {\n return this.erasedInkRanges;\n };\n\n // Export\n scope.MathScratchOut = MathScratchOut;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math symbol tree\n *\n * @class MathSymbolTreeResultElement\n * @extends MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathSymbolTreeResultElement(obj) {\n scope.MathResultElement.call(this, obj);\n if (obj) {\n switch (obj.root.type) {\n case 'nonTerminalNode':\n switch (obj.root.name) {\n case 'term':\n this.root = new scope.MathTermNonTerminalNode(obj.root);\n break;\n case 'sqrtTerm':\n this.root = new scope.MathSqrtNonTerminalNode(obj.root);\n break;\n case 'vectorTerm':\n this.root = new scope.MathVectorNonTerminalNode(obj.root);\n break;\n case 'system':\n this.root = new scope.MathSystemNonTerminalNode(obj.root);\n break;\n case 'exponentiable':\n this.root = new scope.MathExponentiableNonTerminalNode(obj.root);\n break;\n case 'expression':\n this.root = new scope.MathExpressionNonTerminalNode(obj.root);\n break;\n default:\n throw new Error('Unknown nonTerminalNode');\n }\n break;\n case 'terminalNode':\n this.root = new scope.MathTerminalNode(obj.root);\n break;\n case 'rule':\n switch (obj.root.name) {\n case 'identity':\n this.root = new scope.MathIdentityRuleNode(obj.root);\n break;\n case 'horizontal pair':\n this.root = new scope.MathHorizontalPairRuleNode(obj.root);\n break;\n case 'fence':\n this.root = new scope.MathFenceRuleNode(obj.root);\n break;\n case 'fraction':\n this.root = new scope.MathFractionRuleNode(obj.root);\n break;\n case 'sqrt':\n this.root = new scope.MathSqrtRuleNode(obj.root);\n break;\n case 'subscript':\n this.root = new scope.MathSubscriptRuleNode(obj.root);\n break;\n case 'superscript':\n this.root = new scope.MathSuperscriptRuleNode(obj.root);\n break;\n case 'subsuperscript':\n this.root = new scope.MathSubSuperscriptRuleNode(obj.root);\n break;\n case 'underscript':\n this.root = new scope.MathUnderscriptRuleNode(obj.root);\n break;\n case 'overscript':\n this.root = new scope.MathOverscriptRuleNode(obj.root);\n break;\n case 'underoverscript':\n this.root = new scope.MathUnderOverscriptRuleNode(obj.root);\n break;\n case 'presuperscript':\n this.root = new scope.MathPreSuperscriptRuleNode(obj.root);\n break;\n case 'vertical pair':\n this.root = new scope.MathVerticalPairRuleNode(obj.root);\n break;\n case 'left fence':\n this.root = new scope.MathLeftFenceRuleNode(obj.root);\n break;\n default:\n throw new Error('Unknown ruleNode');\n }\n break;\n default:\n throw new Error('Unknown math node type');\n }\n this.value = JSON.stringify(obj.root, null, ' ');\n }\n }\n\n /**\n * Inheritance property\n */\n MathSymbolTreeResultElement.prototype = new scope.MathResultElement();\n\n /**\n * Constructor property\n */\n MathSymbolTreeResultElement.prototype.constructor = MathSymbolTreeResultElement;\n\n /**\n * Get tree root\n *\n * @method getRoot\n * @returns {MathNode}\n */\n MathSymbolTreeResultElement.prototype.getRoot = function () {\n return this.root;\n };\n\n // Export\n scope.MathSymbolTreeResultElement = MathSymbolTreeResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math terminal node\n *\n * @class MathTerminalNode\n * @extends MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathTerminalNode(obj) {\n scope.MathNode.call(this, obj);\n this.candidates = [];\n this.inkRanges = [];\n if (obj) {\n this.selectedCandidate = obj.selectedCandidate;\n for (var i in obj.candidates) {\n this.candidates.push(new scope.MathTerminalNodeCandidate(obj.candidates[i]));\n }\n for (var j in obj.inkRanges) {\n this.inkRanges.push(new scope.MathInkRange(obj.inkRanges[j]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MathTerminalNode.prototype = new scope.MathNode();\n\n /**\n * Constructor property\n */\n MathTerminalNode.prototype.constructor = MathTerminalNode;\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {MathTerminalNodeCandidate[]}\n */\n MathTerminalNode.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {MathInkRange[]}\n */\n MathTerminalNode.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n MathTerminalNode.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidate;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {MathNode}\n */\n MathTerminalNode.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidate !== undefined)) {\n return this.candidates[this.selectedCandidate];\n }\n return undefined;\n };\n\n // Export\n scope.MathTerminalNode = MathTerminalNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math terminal node candidate\n *\n * @class MathTerminalNodeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function MathTerminalNodeCandidate(obj) {\n if (obj) {\n this.label = obj.label;\n this.normalizedRecognitionScore = obj.normalizedRecognitionScore;\n }\n }\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n MathTerminalNodeCandidate.prototype.getLabel = function () {\n return this.label;\n };\n\n /**\n * Get score\n *\n * @method getNormalizedRecognitionScore\n * @returns {Number}\n */\n MathTerminalNodeCandidate.prototype.getNormalizedRecognitionScore = function () {\n return this.normalizedRecognitionScore;\n };\n\n // Export\n scope.MathTerminalNodeCandidate = MathTerminalNodeCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math fence rule node\n *\n * @class MathFenceRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathFenceRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathFenceRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathFenceRuleNode.prototype.constructor = MathFenceRuleNode;\n\n // Export\n scope.MathFenceRuleNode = MathFenceRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math fraction rule node\n *\n * @class MathFractionRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathFractionRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathFractionRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathFractionRuleNode.prototype.constructor = MathFractionRuleNode;\n\n // Export\n scope.MathFractionRuleNode = MathFractionRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math horizontal pair rule node\n *\n * @class MathHorizontalPairRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathHorizontalPairRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathHorizontalPairRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathHorizontalPairRuleNode.prototype.constructor = MathHorizontalPairRuleNode;\n\n // Export\n scope.MathHorizontalPairRuleNode = MathHorizontalPairRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math identity rule node\n *\n * @class MathIdentityRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathIdentityRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathIdentityRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathIdentityRuleNode.prototype.constructor = MathIdentityRuleNode;\n\n // Export\n scope.MathIdentityRuleNode = MathIdentityRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math rule node\n *\n * @class MathLeftFenceRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathLeftFenceRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathLeftFenceRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathLeftFenceRuleNode.prototype.constructor = MathLeftFenceRuleNode;\n\n // Export\n scope.MathLeftFenceRuleNode = MathLeftFenceRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math overscript rule node\n *\n * @class MathOverscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathOverscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathOverscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathOverscriptRuleNode.prototype.constructor = MathOverscriptRuleNode;\n\n // Export\n scope.MathOverscriptRuleNode = MathOverscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math pre-superscript rule node\n *\n * @class MathPreSuperscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathPreSuperscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathPreSuperscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathPreSuperscriptRuleNode.prototype.constructor = MathPreSuperscriptRuleNode;\n\n // Export\n scope.MathPreSuperscriptRuleNode = MathPreSuperscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math sqrt rule node\n *\n * @class MathSqrtRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSqrtRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSqrtRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSqrtRuleNode.prototype.constructor = MathSqrtRuleNode;\n\n // Export\n scope.MathSqrtRuleNode = MathSqrtRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math subscript rule node\n *\n * @class MathSubscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSubscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSubscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSubscriptRuleNode.prototype.constructor = MathSubscriptRuleNode;\n\n // Export\n scope.MathSubscriptRuleNode = MathSubscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math sub-superscript rule node\n *\n * @class MathSubSuperscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSubSuperscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSubSuperscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSubSuperscriptRuleNode.prototype.constructor = MathSubSuperscriptRuleNode;\n\n // Export\n scope.MathSubSuperscriptRuleNode = MathSubSuperscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math superscript rule node\n *\n * @class MathSuperscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSuperscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSuperscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSuperscriptRuleNode.prototype.constructor = MathSuperscriptRuleNode;\n\n // Export\n scope.MathSuperscriptRuleNode = MathSuperscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math under-overscript rule node\n *\n * @class MathUnderOverscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathUnderOverscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathUnderOverscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathUnderOverscriptRuleNode.prototype.constructor = MathUnderOverscriptRuleNode;\n\n // Export\n scope.MathUnderOverscriptRuleNode = MathUnderOverscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math underscript rule node\n *\n * @class MathUnderscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathUnderscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathUnderscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathUnderscriptRuleNode.prototype.constructor = MathUnderscriptRuleNode;\n\n // Export\n scope.MathUnderscriptRuleNode = MathUnderscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math vertical pair rule node\n *\n * @class MathVerticalPairRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathVerticalPairRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathVerticalPairRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathVerticalPairRuleNode.prototype.constructor = MathVerticalPairRuleNode;\n\n // Export\n scope.MathVerticalPairRuleNode = MathVerticalPairRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math exponentiable non-terminal node\n *\n * @class MathExponentiableNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathExponentiableNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathExponentiableNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathExponentiableNonTerminalNode.prototype.constructor = MathExponentiableNonTerminalNode;\n\n // Export\n scope.MathExponentiableNonTerminalNode = MathExponentiableNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math expression non-terminal node\n *\n * @class MathExpressionNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathExpressionNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathExpressionNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathExpressionNonTerminalNode.prototype.constructor = MathExpressionNonTerminalNode;\n\n // Export\n scope.MathExpressionNonTerminalNode = MathExpressionNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathSqrtNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSqrtNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSqrtNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathSqrtNonTerminalNode.prototype.constructor = MathSqrtNonTerminalNode;\n\n // Export\n scope.MathSqrtNonTerminalNode = MathSqrtNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathVectorNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathVectorNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathVectorNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathVectorNonTerminalNode.prototype.constructor = MathVectorNonTerminalNode;\n\n // Export\n scope.MathVectorNonTerminalNode = MathVectorNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathSystemNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSystemNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSystemNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathSystemNonTerminalNode.prototype.constructor = MathSystemNonTerminalNode;\n\n // Export\n scope.MathSystemNonTerminalNode = MathSystemNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathTermNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathTermNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathTermNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathTermNonTerminalNode.prototype.constructor = MathTermNonTerminalNode;\n\n // Export\n scope.MathTermNonTerminalNode = MathTermNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition math result message\n *\n * @class MathResponseWSMessage\n * @extends AbstractRecoResponseWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function MathResponseWSMessage(obj) {\n scope.AbstractRecoResponseWSMessage.call(this, obj);\n if (obj) {\n this.result = new scope.MathDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n MathResponseWSMessage.prototype = new scope.AbstractRecoResponseWSMessage();\n\n /**\n * Constructor property\n */\n MathResponseWSMessage.prototype.constructor = MathResponseWSMessage;\n\n /**\n * Get math document\n *\n * @method getMathDocument\n * @returns {MathDocument}\n */\n MathResponseWSMessage.prototype.getMathDocument = function () {\n return this.result;\n };\n\n // Export\n scope.MathResponseWSMessage = MathResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract music element\n *\n * @class MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicElement(obj) {\n this.inputRanges = [];\n if (obj) {\n this.elementType = obj.elementType;\n this.inputRanges = obj.inputRanges;\n }\n }\n\n /**\n * Get element type\n *\n * @method getElementType\n * @returns {String}\n */\n MusicElement.prototype.getElementType = function () {\n return this.elementType;\n };\n\n /**\n * Get input ranges\n *\n * @method getInputRanges\n * @returns {MusicInputRange[]}\n */\n MusicElement.prototype.getInputRanges = function () {\n return this.inputRanges;\n };\n\n // Export\n scope.MusicElement = MusicElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract music result element\n *\n * @class MusicResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicResultElement(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicResultElement.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is MusicXML\n *\n * @method isMusicXML\n * @returns {Boolean}\n */\n MusicResultElement.prototype.isMusicXML = function () {\n return this.type === 'MUSICXML';\n };\n\n /**\n * Is ScoreTree\n *\n * @method isScoreTree\n * @returns {Boolean}\n */\n MusicResultElement.prototype.isScoreTree = function () {\n return this.type === 'SCORETREE';\n };\n\n // Export\n scope.MusicResultElement = MusicResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music accidental\n *\n * @class MusicAccidental\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicAccidental(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicAccidental.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicAccidental.prototype.constructor = MusicAccidental;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicAccidental.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicAccidental = MusicAccidental;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music annotation\n *\n * @class MusicAnnotation\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicAnnotation(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.label = obj.label;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicAnnotation.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicAnnotation.prototype.constructor = MusicAnnotation;\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n MusicAnnotation.prototype.getLabel = function () {\n return this.label;\n };\n\n // Export\n scope.MusicAnnotation = MusicAnnotation;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music arpeggiate\n *\n * @class MusicArpeggiate\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicArpeggiate(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicArpeggiate.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicArpeggiate.prototype.constructor = MusicArpeggiate;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicArpeggiate.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicArpeggiate = MusicArpeggiate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music bar\n *\n * @class MusicBar\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicBar(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n if (obj) {\n this.repeatDirection = obj.repeatDirection;\n this.style = obj.style;\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicBar.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicBar.prototype.constructor = MusicBar;\n\n /**\n * Get repeat direction\n *\n * @method getRepeatDirection\n * @returns {String}\n */\n MusicBar.prototype.getRepeatDirection = function () {\n return this.repeatDirection;\n };\n\n /**\n * Get style\n *\n * @method getStyle\n * @returns {String}\n */\n MusicBar.prototype.getStyle = function () {\n return this.style;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicBar.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n // Export\n scope.MusicBar = MusicBar;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music beam\n *\n * @class MusicBeam\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicBeam(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.placement = obj.placement;\n this.leftCount = obj.leftCount;\n this.rightCount = obj.rightCount;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicBeam.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicBeam.prototype.constructor = MusicBeam;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicBeam.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Get left count\n *\n * @method getLeftCount\n * @returns {Number}\n */\n MusicBeam.prototype.getLeftCount = function () {\n return this.leftCount;\n };\n\n /**\n * Get right count\n *\n * @method getRightCount\n * @returns {Number}\n */\n MusicBeam.prototype.getRightCount = function () {\n return this.rightCount;\n };\n\n // Export\n scope.MusicBeam = MusicBeam;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music chord\n *\n * @class MusicChord\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicChord(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n this.notes = [];\n this.beamTypes = [];\n this.ledgerLines = [];\n this.startSlurs = [];\n this.stopSlurs = [];\n if (obj) {\n this.duration = obj.duration;\n this.arpeggiate = new scope.MusicArpeggiate(obj.arpeggiate);\n this.startBeam = new scope.MusicBeam(obj.startBeam);\n this.stopBeam = new scope.MusicBeam(obj.stopBeam);\n this.stem = new scope.MusicStem(obj.stem);\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n for (var j in obj.notes) {\n this.notes.push(new scope.MusicNote(obj.notes[j]));\n }\n for (var k in obj.beamTypes) {\n this.beamTypes.push(obj.beamTypes[k]);\n }\n for (var l in obj.ledgerLines) {\n this.ledgerLines.push(new scope.MusicLedgerLine(obj.ledgerLines[l]));\n }\n for (var m in obj.startSlurs) {\n this.startSlurs.push(new scope.MusicSlur(obj.startSlurs[m]));\n }\n for (var n in obj.stopSlurs) {\n this.stopSlurs.push(new scope.MusicSlur(obj.stopSlurs[n]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicChord.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicChord.prototype.constructor = MusicChord;\n\n /**\n * Get duration\n *\n * @method getDuration\n * @returns {Number}\n */\n MusicChord.prototype.getDuration = function () {\n return this.duration;\n };\n\n /**\n * Get arpeggiate\n *\n * @method getArpeggiate\n * @returns {MusicArpeggiate}\n */\n MusicChord.prototype.getArpeggiate = function () {\n return this.arpeggiate;\n };\n\n /**\n * Get start beam\n *\n * @method getStartBeam\n * @returns {MusicBeam}\n */\n MusicChord.prototype.getStartBeam = function () {\n return this.startBeam;\n };\n\n /**\n * Get stop beam\n *\n * @method getStopBeam\n * @returns {MusicBeam}\n */\n MusicChord.prototype.getStopBeam = function () {\n return this.stopBeam;\n };\n\n /**\n * Get stem\n *\n * @method getStem\n * @returns {MusicStem}\n */\n MusicChord.prototype.getStem = function () {\n return this.stem;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicChord.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n /**\n * Get notes\n *\n * @method getNotes\n * @returns {MusicNote[]}\n */\n MusicChord.prototype.getNotes = function () {\n return this.notes;\n };\n\n /**\n * Get beam types\n *\n * @method getBeamTypes\n * @returns {Array}\n */\n MusicChord.prototype.getBeamTypes = function () {\n return this.beamTypes;\n };\n\n /**\n * Get ledger lines\n *\n * @method getLedgerLines\n * @returns {MusicLedgerLine[]}\n */\n MusicChord.prototype.getLedgerLines = function () {\n return this.ledgerLines;\n };\n\n /**\n * Get start slurs\n *\n * @method getStartSlurs\n * @returns {MusicSlur[]}\n */\n MusicChord.prototype.getStartSlurs = function () {\n return this.startSlurs;\n };\n\n /**\n * Get stop slurs\n *\n * @method getStopSlurs\n * @returns {MusicSlur[]}\n */\n MusicChord.prototype.getStopSlurs = function () {\n return this.stopSlurs;\n };\n\n // Export\n scope.MusicChord = MusicChord;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music clef\n *\n * @class MusicClef\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicClef(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.line = obj.line;\n this.octave = obj.octave;\n this.symbol = obj.symbol;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicClef.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicClef.prototype.constructor = MusicClef;\n\n /**\n * Get line\n *\n * @method getLine\n * @returns {Number}\n */\n MusicClef.prototype.getLine = function () {\n return this.line;\n };\n\n /**\n * Get octave\n *\n * @method getOctave\n * @returns {Number}\n */\n MusicClef.prototype.getOctave = function () {\n return this.octave;\n };\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicClef.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n // Export\n scope.MusicClef = MusicClef;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music decoration\n *\n * @class MusicDecoration\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicDecoration(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.symbol = obj.symbol;\n this.placement = obj.placement;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicDecoration.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicDecoration.prototype.constructor = MusicDecoration;\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicDecoration.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicDecoration.prototype.getPlacement = function () {\n return this.placement;\n };\n\n // Export\n scope.MusicDecoration = MusicDecoration;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music document\n *\n * @class MusicDocument\n * @param {Object} [obj]\n * @constructor\n */\n function MusicDocument(obj) {\n this.results = [];\n this.scratchOutResults = [];\n if (obj) {\n for (var i in obj.results) {\n switch (obj.results[i].type) {\n case 'MUSICXML':\n this.results.push(new scope.MusicXMLResultElement(obj.results[i]));\n break;\n default:\n this.results.push(new scope.MusicScoreTreeResultElement(obj.results[i]));\n break;\n }\n }\n for (var j in obj.scratchOutResults) {\n this.scratchOutResults.push(new scope.MusicScratchOut(obj.scratchOutResults[j]));\n }\n }\n }\n\n /**\n * Get result elements\n *\n * @method getResultElements\n * @returns {MusicResultElement[]}\n */\n MusicDocument.prototype.getResultElements = function () {\n return this.results;\n };\n\n /**\n * Get scratch-out results\n *\n * @method getScratchOutResults\n * @returns {MusicScratchOut[]}\n */\n MusicDocument.prototype.getScratchOutResults = function () {\n return this.scratchOutResults;\n };\n\n // Export\n scope.MusicDocument = MusicDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music dots\n *\n * @class MusicDots\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicDots(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.count = obj.count;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicDots.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicDots.prototype.constructor = MusicDots;\n\n /**\n * Get dots counts\n *\n * @method getCount\n * @returns {Number}\n */\n MusicDots.prototype.getCount = function () {\n return this.count;\n };\n\n // Export\n scope.MusicDots = MusicDots;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music head\n *\n * @class MusicHead\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicHead(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicHead.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicHead.prototype.constructor = MusicHead;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicHead.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicHead = MusicHead;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music input range\n *\n * @class MusicInputRange\n * @param {Object} [obj]\n * @constructor\n */\n function MusicInputRange(obj) {\n if (obj) {\n this.component = obj.component;\n this.firstItem = obj.firstItem;\n this.lastItem = obj.lastItem;\n }\n }\n\n /**\n * Get component\n *\n * @method getComponent\n * @returns {Number}\n */\n MusicInputRange.prototype.getComponent = function () {\n return this.component;\n };\n\n /**\n * Get first item\n *\n * @method getFirstItem\n * @returns {Number}\n */\n MusicInputRange.prototype.getFirstItem = function () {\n return this.firstItem;\n };\n\n /**\n * Get last item\n *\n * @method getLastItem\n * @returns {Number}\n */\n MusicInputRange.prototype.getLastItem = function () {\n return this.lastItem;\n };\n\n // Export\n scope.MusicInputRange = MusicInputRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music key signature\n *\n * @class MusicKeySignature\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicKeySignature(obj) {\n scope.MusicElement.call(this, obj);\n this.accidentals = [];\n if (obj) {\n this.signature = new scope.MusicKeySignatureData(obj.signature);\n for (var i in obj.accidentals) {\n this.accidentals.push(new scope.MusicAccidental(obj.accidentals[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicKeySignature.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicKeySignature.prototype.constructor = MusicKeySignature;\n\n /**\n * Get signature\n *\n * @method getSignature\n * @returns {MusicKeySignatureData}\n */\n MusicKeySignature.prototype.getSignature = function () {\n return this.signature;\n };\n\n /**\n * Get accidentals\n *\n * @method getAccidentals\n * @returns {MusicAccidental[]}\n */\n MusicKeySignature.prototype.getAccidentals = function () {\n return this.accidentals;\n };\n\n // Export\n scope.MusicKeySignature = MusicKeySignature;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music key signature data\n *\n * @class MusicKeySignatureData\n * @param {Object} [obj]\n * @constructor\n */\n function MusicKeySignatureData(obj) {\n if (obj) {\n this.fifths = obj.fifths;\n this.cancel = obj.cancel;\n }\n }\n\n /**\n * Get fifths\n *\n * @method getFifths\n * @returns {Number}\n */\n MusicKeySignatureData.prototype.getFifths = function () {\n return this.fifths;\n };\n\n /**\n * Get cancel\n *\n * @method getCancel\n * @returns {Number}\n */\n MusicKeySignatureData.prototype.getCancel = function () {\n return this.cancel;\n };\n\n // Export\n scope.MusicKeySignatureData = MusicKeySignatureData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music ledger line\n *\n * @class MusicLedgerLine\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicLedgerLine(obj) {\n scope.MusicElement.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MusicLedgerLine.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicLedgerLine.prototype.constructor = MusicLedgerLine;\n\n // Export\n scope.MusicLedgerLine = MusicLedgerLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music note\n *\n * @class MusicNote\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicNote(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n this.beamTypes = [];\n this.ledgerLines = [];\n this.startSlurs = [];\n this.stopSlurs = [];\n if (obj) {\n this.accidental = new scope.MusicAccidental(obj.accidental);\n this.dots = new scope.MusicDots(obj.dots);\n this.duration = obj.duration;\n this.head = new scope.MusicHead(obj.head);\n this.line = obj.line;\n this.pitch = new scope.MusicPitchData(obj.pitch);\n this.startBeam = new scope.MusicBeam(obj.startBeam);\n this.stopBeam = new scope.MusicBeam(obj.stopBeam);\n this.stem = new scope.MusicStem(obj.stem);\n this.startTie = new scope.MusicTie(obj.startTie);\n this.stopTie = new scope.MusicTie(obj.stopTie);\n this.startTuplet = new scope.MusicTuplet(obj.startTuplet);\n this.stopTuplet = new scope.MusicTuplet(obj.stopTuplet);\n this.timeModification = new scope.MusicTimeModificationData(obj.timeModification);\n this.type = obj.type;\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n for (var j in obj.beamTypes) {\n this.beamTypes.push(obj.beamTypes[j]);\n }\n for (var k in obj.ledgerLines) {\n this.ledgerLines.push(new scope.MusicLedgerLine(obj.ledgerLines[k]));\n }\n for (var l in obj.startSlurs) {\n this.startSlurs.push(new scope.MusicSlur(obj.startSlurs[l]));\n }\n for (var m in obj.stopSlurs) {\n this.stopSlurs.push(new scope.MusicSlur(obj.stopSlurs[m]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicNote.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicNote.prototype.constructor = MusicNote;\n\n /**\n * Get accidental\n *\n * @method getAccidental\n * @returns {MusicAccidental}\n */\n MusicNote.prototype.getAccidental = function () {\n return this.accidental;\n };\n\n /**\n * Get dots\n *\n * @method getDots\n * @returns {MusicDots}\n */\n MusicNote.prototype.getDots = function () {\n return this.dots;\n };\n\n /**\n * Get duration\n *\n * @method getDuration\n * @returns {Number}\n */\n MusicNote.prototype.getDuration = function () {\n return this.duration;\n };\n\n /**\n * Get head\n *\n * @method getHead\n * @returns {MusicHead}\n */\n MusicNote.prototype.getHead = function () {\n return this.head;\n };\n\n /**\n * Get line\n *\n * @method getLine\n * @returns {Number}\n */\n MusicNote.prototype.getLine = function () {\n return this.line;\n };\n\n /**\n * Get pitch\n *\n * @method getPitch\n * @returns {MusicPitchData}\n */\n MusicNote.prototype.getPitch = function () {\n return this.pitch;\n };\n\n /**\n * Get start beam\n *\n * @method getStartBeam\n * @returns {MusicBeam}\n */\n MusicNote.prototype.getStartBeam = function () {\n return this.startBeam;\n };\n\n /**\n * Get stop beam\n *\n * @method getStopBeam\n * @returns {MusicBeam}\n */\n MusicNote.prototype.getStopBeam = function () {\n return this.stopBeam;\n };\n\n /**\n * Get stem\n *\n * @method getStem\n * @returns {MusicStem}\n */\n MusicNote.prototype.getStem = function () {\n return this.stem;\n };\n\n /**\n * Get start tie\n *\n * @method getStartTie\n * @returns {MusicTie}\n */\n MusicNote.prototype.getStartTie = function () {\n return this.startTie;\n };\n\n /**\n * Get stop tie\n *\n * @method getStopTie\n * @returns {MusicTie}\n */\n MusicNote.prototype.getStopTie = function () {\n return this.stopTie;\n };\n\n /**\n * Get start tuplet\n *\n * @method getStartTuplet\n * @returns {MusicTuplet}\n */\n MusicNote.prototype.getStartTuplet = function () {\n return this.startTuplet;\n };\n\n /**\n * Get stop tuplet\n *\n * @method getStopTuplet\n * @returns {MusicTuplet}\n */\n MusicNote.prototype.getStopTuplet = function () {\n return this.stopTuplet;\n };\n\n /**\n * Get time modification\n *\n * @method getTimeModification\n * @returns {MusicTimeModificationData}\n */\n MusicNote.prototype.getTimeModification = function () {\n return this.timeModification;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicNote.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicNote.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n /**\n * Get beam types\n *\n * @method getBeamTypes\n * @returns {Array}\n */\n MusicNote.prototype.getBeamTypes = function () {\n return this.beamTypes;\n };\n\n /**\n * Get ledger lines\n *\n * @method getLedgerLines\n * @returns {MusicLedgerLine[]}\n */\n MusicNote.prototype.getLedgerLines = function () {\n return this.ledgerLines;\n };\n\n /**\n * Get start slurs\n *\n * @method getStartSlurs\n * @returns {MusicSlur[]}\n */\n MusicNote.prototype.getStartSlurs = function () {\n return this.startSlurs;\n };\n\n /**\n * Get stop slurs\n *\n * @method getStopSlurs\n * @returns {MusicSlur[]}\n */\n MusicNote.prototype.getStopSlurs = function () {\n return this.stopSlurs;\n };\n\n // Export\n scope.MusicNote = MusicNote;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music part\n *\n * @class MusicPart\n * @param {Object} [obj]\n * @constructor\n */\n function MusicPart(obj) {\n this.elements = [];\n if (obj) {\n for (var i in obj.elements) {\n switch (obj.elements[i].elementType) {\n case 'accidental':\n this.elements.push(new scope.MusicAccidental(obj.elements[i]));\n break;\n case 'annotation':\n this.elements.push(new scope.MusicAnnotation(obj.elements[i]));\n break;\n case 'arpeggiate':\n this.elements.push(new scope.MusicArpeggiate(obj.elements[i]));\n break;\n case 'bar':\n this.elements.push(new scope.MusicBar(obj.elements[i]));\n break;\n case 'beam':\n this.elements.push(new scope.MusicBeam(obj.elements[i]));\n break;\n case 'chord':\n this.elements.push(new scope.MusicChord(obj.elements[i]));\n break;\n case 'clef':\n this.elements.push(new scope.MusicClef(obj.elements[i]));\n break;\n case 'decoration':\n this.elements.push(new scope.MusicDecoration(obj.elements[i]));\n break;\n case 'dots':\n this.elements.push(new scope.MusicDots(obj.elements[i]));\n break;\n case 'head':\n this.elements.push(new scope.MusicHead(obj.elements[i]));\n break;\n case 'keySignature':\n this.elements.push(new scope.MusicKeySignature(obj.elements[i]));\n break;\n case 'ledgerLine':\n this.elements.push(new scope.MusicLedgerLine(obj.elements[i]));\n break;\n case 'note':\n this.elements.push(new scope.MusicNote(obj.elements[i]));\n break;\n case 'rest':\n this.elements.push(new scope.MusicRest(obj.elements[i]));\n break;\n case 'slur':\n this.elements.push(new scope.MusicSlur(obj.elements[i]));\n break;\n case 'stem':\n this.elements.push(new scope.MusicStem(obj.elements[i]));\n break;\n case 'tie':\n this.elements.push(new scope.MusicTie(obj.elements[i]));\n break;\n case 'timeSignature':\n this.elements.push(new scope.MusicTimeSignature(obj.elements[i]));\n break;\n case 'tuplet':\n this.elements.push(new scope.MusicTuplet(obj.elements[i]));\n break;\n case 'tupletBracket':\n this.elements.push(new scope.MusicTupletBracket(obj.elements[i]));\n break;\n default:\n throw new Error('Unknown music element');\n }\n }\n }\n }\n\n /**\n * Get elements\n *\n * @method getElements\n * @returns {MusicElement[]}\n */\n MusicPart.prototype.getElements = function () {\n return this.elements;\n };\n\n // Export\n scope.MusicPart = MusicPart;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music pitch data\n *\n * @class MusicPitchData\n * @param {Object} [obj]\n * @constructor\n */\n function MusicPitchData(obj) {\n if (obj) {\n this.alteration = obj.alteration;\n this.octave = obj.octave;\n this.step = obj.step;\n }\n }\n\n /**\n * Get alteration\n *\n * @method getAlteration\n * @returns {Number}\n */\n MusicPitchData.prototype.getAlteration = function () {\n return this.alteration;\n };\n\n /**\n * Get octave\n *\n * @method getOctave\n * @returns {Number}\n */\n MusicPitchData.prototype.getOctave = function () {\n return this.octave;\n };\n\n /**\n * Get step\n *\n * @method getStep\n * @returns {String}\n */\n MusicPitchData.prototype.getStep = function () {\n return this.step;\n };\n\n // Export\n scope.MusicPitchData = MusicPitchData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music rest\n *\n * @class MusicRest\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicRest(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n this.startSlurs = [];\n this.stopSlurs = [];\n if (obj) {\n this.type = obj.type;\n this.dots = new scope.MusicDots(obj.dots);\n this.startTuplet = new scope.MusicTuplet(obj.startTuplet);\n this.stopTuplet = new scope.MusicTuplet(obj.stopTuplet);\n this.timeModification = new scope.MusicTimeModificationData(obj.timeModification);\n this.duration = obj.duration;\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n for (var l in obj.startSlurs) {\n this.startSlurs.push(new scope.MusicSlur(obj.startSlurs[l]));\n }\n for (var m in obj.stopSlurs) {\n this.stopSlurs.push(new scope.MusicSlur(obj.stopSlurs[m]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicRest.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicRest.prototype.constructor = MusicRest;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicRest.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get dots\n *\n * @method getDots\n * @returns {MusicDots}\n */\n MusicRest.prototype.getDots = function () {\n return this.dots;\n };\n\n /**\n * Get start tuplet\n *\n * @method getStartTuplet\n * @returns {MusicTuplet}\n */\n MusicRest.prototype.getStartTuplet = function () {\n return this.startTuplet;\n };\n\n /**\n * Get stop tuplet\n *\n * @method getStopTuplet\n * @returns {MusicTuplet}\n */\n MusicRest.prototype.getStopTuplet = function () {\n return this.stopTuplet;\n };\n\n /**\n * Get time modification\n *\n * @method getTimeModification\n * @returns {MusicTimeModificationData}\n */\n MusicRest.prototype.getTimeModification = function () {\n return this.timeModification;\n };\n\n /**\n * Get duration\n *\n * @method getDuration\n * @returns {Number}\n */\n MusicRest.prototype.getDuration = function () {\n return this.duration;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicRest.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n /**\n * Get start slurs\n *\n * @method getStartSlurs\n * @returns {MusicSlur[]}\n */\n MusicRest.prototype.getStartSlurs = function () {\n return this.startSlurs;\n };\n\n /**\n * Get stop slurs\n *\n * @method getStopSlurs\n * @returns {MusicSlur[]}\n */\n MusicRest.prototype.getStopSlurs = function () {\n return this.stopSlurs;\n };\n\n // Export\n scope.MusicRest = MusicRest;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music result\n *\n * @class MusicResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function MusicResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.MusicDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n MusicResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n MusicResult.prototype.constructor = MusicResult;\n\n /**\n * Get music document\n *\n * @method getMusicDocument\n * @returns {MusicDocument}\n */\n MusicResult.prototype.getMusicDocument = function () {\n return this.result;\n };\n\n // Export\n scope.MusicResult = MusicResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music score\n *\n * @class MusicScore\n * @param {Object} [obj]\n * @constructor\n */\n function MusicScore(obj) {\n this.parts = [];\n if (obj) {\n for (var i in obj.parts) {\n this.parts.push(new scope.MusicPart(obj.parts[i]));\n }\n }\n }\n\n /**\n * Get parts\n *\n * @method getParts\n * @returns {MusicPart[]}\n */\n MusicScore.prototype.getParts = function () {\n return this.parts;\n };\n\n // Export\n scope.MusicScore = MusicScore;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music score tree\n *\n * @class MusicScoreTreeResultElement\n * @extends MusicResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicScoreTreeResultElement(obj) {\n scope.MusicResultElement.call(this, obj);\n if (obj) {\n this.score = new scope.MusicScore(obj.score);\n }\n }\n\n /**\n * Inheritance property\n */\n MusicScoreTreeResultElement.prototype = new scope.MusicResultElement();\n\n /**\n * Constructor property\n */\n MusicScoreTreeResultElement.prototype.constructor = MusicScoreTreeResultElement;\n\n /**\n * Get score\n *\n * @method getScore\n * @returns {MusicScore}\n */\n MusicScoreTreeResultElement.prototype.getScore = function () {\n return this.score;\n };\n\n // Export\n scope.MusicScoreTreeResultElement = MusicScoreTreeResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music scratch-out\n *\n * @class MusicScratchOut\n * @param {Object} [obj]\n * @constructor\n */\n function MusicScratchOut(obj) {\n this.inputRanges = [];\n this.erasedInputRanges = [];\n if (obj) {\n for (var i in obj.inputRanges) {\n this.inputRanges.push(new scope.MusicInputRange(obj.inputRanges[i]));\n }\n for (var j in obj.erasedInputRanges) {\n this.erasedInputRanges.push(new scope.MusicInputRange(obj.erasedInputRanges[j]));\n }\n }\n }\n\n /**\n * Get input ranges\n *\n * @method getInputRanges\n * @returns {MusicInputRange[]}\n */\n MusicScratchOut.prototype.getInputRanges = function () {\n return this.inputRanges;\n };\n\n /**\n * Get erased input ranges\n *\n * @method getErasedInputRanges\n * @returns {MusicInputRange[]}\n */\n MusicScratchOut.prototype.getErasedInputRanges = function () {\n return this.erasedInputRanges;\n };\n\n // Export\n scope.MusicScratchOut = MusicScratchOut;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music slur\n *\n * @class MusicSlur\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicSlur(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.placement = obj.placement;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicSlur.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicSlur.prototype.constructor = MusicSlur;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicSlur.prototype.getPlacement = function () {\n return this.placement;\n };\n\n // Export\n scope.MusicSlur = MusicSlur;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music stem\n *\n * @class MusicStem\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicStem(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicStem.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicStem.prototype.constructor = MusicStem;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicStem.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicStem = MusicStem;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music tie\n *\n * @class MusicTie\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTie(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.placement = obj.placement;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTie.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTie.prototype.constructor = MusicTie;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicTie.prototype.getPlacement = function () {\n return this.placement;\n };\n\n // Export\n scope.MusicTie = MusicTie;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music time modification data\n *\n * @class MusicTimeModificationData\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTimeModificationData(obj) {\n if (obj) {\n this.actual = obj.actual;\n this.dots = obj.dots;\n this.normal = obj.normal;\n this.type = obj.type;\n }\n }\n\n /**\n * Get actual\n *\n * @method getActual\n * @returns {Number}\n */\n MusicTimeModificationData.prototype.getActual = function () {\n return this.actual;\n };\n\n /**\n * Get dots\n *\n * @method getDots\n * @returns {Number}\n */\n MusicTimeModificationData.prototype.getDots = function () {\n return this.dots;\n };\n\n /**\n * Get normal\n *\n * @method getNormal\n * @returns {Number}\n */\n MusicTimeModificationData.prototype.getNormal = function () {\n return this.normal;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicTimeModificationData.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicTimeModificationData = MusicTimeModificationData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music time signature\n *\n * @class MusicTimeSignature\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTimeSignature(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.top = new scope.MusicAnnotation(obj.top);\n this.bottom = new scope.MusicAnnotation(obj.bottom);\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTimeSignature.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTimeSignature.prototype.constructor = MusicTimeSignature;\n\n /**\n * Get top\n *\n * @method getTop\n * @returns {MusicAnnotation}\n */\n MusicTimeSignature.prototype.getTop = function () {\n return this.top;\n };\n\n /**\n * Get bottom\n *\n * @method getBottom\n * @returns {MusicAnnotation}\n */\n MusicTimeSignature.prototype.getBottom = function () {\n return this.bottom;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicTimeSignature.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicTimeSignature = MusicTimeSignature;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music tuplet bracket\n *\n * @class MusicTupletBracket\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTupletBracket(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTupletBracket.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTupletBracket.prototype.constructor = MusicTupletBracket;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicTupletBracket.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicTupletBracket = MusicTupletBracket;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music tuplet\n *\n * @class MusicTuplet\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTuplet(obj) {\n scope.MusicElement.call(this, obj);\n this.brackets = [];\n if (obj) {\n this.placement = obj.placement;\n this.number = new scope.MusicAnnotation(obj.number);\n for (var i in obj.brackets) {\n this.brackets.push(new scope.MusicTupletBracket(obj.brackets[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTuplet.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTuplet.prototype.constructor = MusicTuplet;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicTuplet.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Get number\n *\n * @method getNumber\n * @returns {MusicAnnotation}\n */\n MusicTuplet.prototype.getNumber = function () {\n return this.number;\n };\n\n /**\n * Get brackets\n *\n * @method getBrackets\n * @returns {Array}\n */\n MusicTuplet.prototype.getBrackets = function () {\n return this.brackets;\n };\n\n // Export\n scope.MusicTuplet = MusicTuplet;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * MusicXML result\n *\n * @class MusicXMLResultElement\n * @extends MusicResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicXMLResultElement(obj) {\n scope.MusicResultElement.call(this, obj);\n if (obj) {\n this.value = obj.value;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicXMLResultElement.prototype = new scope.MusicResultElement();\n\n /**\n * Constructor property\n */\n MusicXMLResultElement.prototype.constructor = MusicXMLResultElement;\n\n /**\n * Get value\n *\n * @method getValue\n * @returns {String}\n */\n MusicXMLResultElement.prototype.getValue = function () {\n return this.value;\n };\n\n // Export\n scope.MusicXMLResultElement = MusicXMLResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer element\n *\n * @class AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerElement(obj) {\n if (obj) {\n this.elementType = obj.elementType;\n }\n }\n\n /**\n * Get element type\n *\n * @method getElementType\n * @returns {String}\n */\n AnalyzerElement.prototype.getElementType = function () {\n return this.elementType;\n };\n\n // Export\n scope.AnalyzerElement = AnalyzerElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer table cell\n *\n * @class AnalyzerCell\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerCell(obj) {\n scope.AnalyzerElement.call(this, obj);\n if (obj) {\n this.data = new scope.AnalyzerCellData(obj.data);\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerCell.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerCell.prototype.constructor = AnalyzerCell;\n\n /**\n * Get analyzer cell data\n *\n * @method getData\n * @returns {AnalyzerCellData}\n */\n AnalyzerCell.prototype.getData = function () {\n return this.data;\n };\n\n // Export\n scope.AnalyzerCell = AnalyzerCell;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer cell data\n *\n * @class AnalyzerCellData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerCellData(obj) {\n if (obj) {\n this.firstColumn = obj.firstColumn;\n this.lastColumn = obj.lastColumn;\n this.firstRow = obj.firstRow;\n this.lastRow = obj.lastRow;\n this.height = obj.height;\n this.width = obj.width;\n this.orientation = obj.orientation;\n this.topLeftPoint = new scope.Point(obj.topLeftPoint);\n this.topBorder = obj.topBorder;\n this.bottomBorder = obj.bottomBorder;\n this.leftBorder = obj.leftBorder;\n this.rightBorder = obj.rightBorder;\n }\n }\n\n /**\n * Get first column\n *\n * @method getFirstColumn\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getFirstColumn = function () {\n return this.firstColumn;\n };\n\n /**\n * Get last column\n *\n * @method getLastColumn\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getLastColumn = function () {\n return this.lastColumn;\n };\n\n /**\n * Get first row\n *\n * @method getFirstRow\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getFirstRow = function () {\n return this.firstRow;\n };\n\n /**\n * Get last row\n *\n * @method getLastRow\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getLastRow = function () {\n return this.lastRow;\n };\n\n /**\n * Get height\n *\n * @method getHeight\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getHeight = function () {\n return this.height;\n };\n\n /**\n * Get width\n *\n * @method getWidth\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Get orientation\n *\n * @method getOrientation\n * @returns {String}\n */\n AnalyzerCellData.prototype.getOrientation = function () {\n return this.orientation;\n };\n\n /**\n * Get top-left point\n *\n * @method getTopLeftPoint\n * @returns {Point}\n */\n AnalyzerCellData.prototype.getTopLeftPoint = function () {\n return this.topLeftPoint;\n };\n\n /**\n * Has top border\n *\n * @method hasTopBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasTopBorder = function () {\n return this.topBorder;\n };\n\n /**\n * Has bottom border\n *\n * @method hasBottomBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasBottomBorder = function () {\n return this.bottomBorder;\n };\n\n /**\n * Has left border\n *\n * @method hasLeftBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasLeftBorder = function () {\n return this.leftBorder;\n };\n\n /**\n * Has right border\n *\n * @method hasRightBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasRightBorder = function () {\n return this.rightBorder;\n };\n\n /**\n * Get bounding box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AnalyzerCellData.prototype.getBoundingBox = function () {\n var rectangle = new scope.Rectangle();\n rectangle.setTopLeftPoint(this.getTopLeftPoint());\n rectangle.setWidth(this.getWidth());\n rectangle.setHeight(this.getHeight());\n return rectangle;\n };\n\n // Export\n scope.AnalyzerCellData = AnalyzerCellData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer document\n *\n * @class AnalyzerDocument\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerDocument(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.textLines = [];\n this.shapes = [];\n this.tables = [];\n this.groups = [];\n if (obj) {\n for (var i in obj.textLines) {\n this.textLines.push(new scope.AnalyzerTextLine(obj.textLines[i]));\n }\n for (var j in obj.shapes) {\n this.shapes.push(new scope.ShapeSegment(obj.shapes[j]));\n }\n for (var k in obj.tables) {\n this.tables.push(new scope.AnalyzerTable(obj.tables[k]));\n }\n for (var l in obj.groups) {\n this.groups.push(new scope.AnalyzerGroup(obj.groups[l]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerDocument.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerDocument.prototype.constructor = AnalyzerDocument;\n\n /**\n * Get text lines\n *\n * @method getTextLines\n * @returns {AnalyzerTextLine[]}\n */\n AnalyzerDocument.prototype.getTextLines = function () {\n return this.textLines;\n };\n\n /**\n * Get shapes\n *\n * @method getShapes\n * @returns {ShapeSegment[]}\n */\n AnalyzerDocument.prototype.getShapes = function () {\n return this.shapes;\n };\n\n /**\n * Get tables\n *\n * @method getTables\n * @returns {AnalyzerTable[]}\n */\n AnalyzerDocument.prototype.getTables = function () {\n return this.tables;\n };\n\n /**\n * Get groups\n *\n * @method getGroups\n * @returns {AnalyzerGroup[]}\n */\n AnalyzerDocument.prototype.getGroups = function () {\n return this.groups;\n };\n\n // Export\n scope.AnalyzerDocument = AnalyzerDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer element reference\n *\n * @class AnalyzerElementReference\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerElementReference(obj) {\n if (obj) {\n this.uniqueID = obj.uniqueID;\n this.type = obj.type;\n }\n }\n\n /**\n * Get unique id\n *\n * @method getUniqueId\n * @returns {String}\n */\n AnalyzerElementReference.prototype.getUniqueId = function () {\n return this.uniqueID;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerElementReference.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.AnalyzerElementReference = AnalyzerElementReference;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer group\n *\n * @class AnalyzerGroup\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerGroup(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.elementReferences = [];\n if (obj) {\n this.type = obj.type;\n this.uniqueID = obj.uniqueID;\n for (var i in obj.elementReferences) {\n this.elementReferences.push(new scope.AnalyzerElementReference(obj.elementReferences[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerGroup.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerGroup.prototype.constructor = AnalyzerGroup;\n\n /**\n * Get element references\n *\n * @method getElementReferences\n * @returns {AnalyzerElementReference[]}\n */\n AnalyzerGroup.prototype.getElementReferences = function () {\n return this.elementReferences;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerGroup.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get unique Id\n *\n * @method getUniqueId\n * @returns {String}\n */\n AnalyzerGroup.prototype.getUniqueId = function () {\n return this.uniqueID;\n };\n\n // Export\n scope.AnalyzerGroup = AnalyzerGroup;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer ink range\n *\n * @class AnalyzerInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerInkRange(obj) {\n if (obj) {\n this.firstPoint = new scope.Point(obj.firstPoint);\n this.lastPoint = new scope.Point(obj.lastPoint);\n this.stroke = new scope.AnalyzerRecognizedStroke(obj.stroke);\n }\n }\n\n /**\n * Get first point\n *\n * @method getFirstPoint\n * @returns {Point}\n */\n AnalyzerInkRange.prototype.getFirstPoint = function () {\n return this.firstPoint;\n };\n\n /**\n * Get last point\n *\n * @method getLastPoint\n * @returns {Point}\n */\n AnalyzerInkRange.prototype.getLastPoint = function () {\n return this.lastPoint;\n };\n\n /**\n * Get stroke\n *\n * @method getStroke\n * @returns {null|*}\n */\n AnalyzerInkRange.prototype.getStroke = function () {\n return this.stroke;\n };\n\n // Export\n scope.AnalyzerInkRange = AnalyzerInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer line\n *\n * @class AnalyzerLine\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerLine(obj) {\n scope.AnalyzerElement.call(this, obj);\n if (obj) {\n this.data = new scope.AnalyzerLineData(obj.data);\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerLine.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerLine.prototype.constructor = AnalyzerLine;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerLineData}\n */\n AnalyzerLine.prototype.getData = function () {\n return this.data;\n };\n\n // Export\n scope.AnalyzerLine = AnalyzerLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer line data\n *\n * @class AnalyzerLineData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerLineData(obj) {\n if (obj) {\n this.p1 = new scope.Point(obj.p1);\n this.p2 = new scope.Point(obj.p2);\n }\n }\n\n /**\n * Get p1\n *\n * @method getP1\n * @returns {Point}\n */\n AnalyzerLineData.prototype.getP1 = function () {\n return this.p1;\n };\n\n /**\n * Get p2\n *\n * @method getP2\n * @returns {Point}\n */\n AnalyzerLineData.prototype.getP2 = function () {\n return this.p2;\n };\n\n // Export\n scope.AnalyzerLineData = AnalyzerLineData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * AnalyzerRecognizedStroke\n *\n * @class AnalyzerRecognizedStroke\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerRecognizedStroke(obj) {\n if (obj) {\n this.type = obj.type;\n this.x = obj.x;\n this.y = obj.y;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerRecognizedStroke.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get x\n *\n * @method getX\n * @returns {Number[]}\n */\n AnalyzerRecognizedStroke.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Get y\n *\n * @method getY\n * @returns {Number[]}\n */\n AnalyzerRecognizedStroke.prototype.getY = function () {\n return this.y;\n };\n\n // Export\n scope.AnalyzerRecognizedStroke = AnalyzerRecognizedStroke;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer result\n *\n * @class AnalyzerResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.AnalyzerDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n AnalyzerResult.prototype.constructor = AnalyzerResult;\n\n /**\n * Get analyzer document\n *\n * @method getAnalyzerDocument\n * @returns {AnalyzerDocument}\n */\n AnalyzerResult.prototype.getAnalyzerDocument = function () {\n return this.result;\n };\n\n // Export\n scope.AnalyzerResult = AnalyzerResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer stroke type\n *\n * @class AnalyzerStrokeType\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerStrokeType(obj) {\n if (obj) {\n this.inkRange = new scope.AnalyzerInkRange(obj.inkRange);\n this.type = obj.type;\n }\n }\n\n /**\n * Get ink range\n *\n * @method getInkRange\n * @returns {AnalyzerInkRange}\n */\n AnalyzerStrokeType.prototype.getInkRange = function () {\n return this.inkRange;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerStrokeType.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.AnalyzerStrokeType = AnalyzerStrokeType;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer table\n *\n * @class AnalyzerTable\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTable(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.lines = [];\n this.cells = [];\n this.inkRanges = [];\n if (obj) {\n this.data = new scope.AnalyzerTableData(obj.data);\n for (var i in obj.lines) {\n this.lines.push(new scope.AnalyzerLine(obj.lines[i]));\n }\n for (var j in obj.cells) {\n this.cells.push(new scope.AnalyzerCell(obj.cells[j]));\n }\n for (var k in obj.inkRanges) {\n this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[k]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerTable.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerTable.prototype.constructor = AnalyzerTable;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerTableData}\n */\n AnalyzerTable.prototype.getData = function () {\n return this.data;\n };\n\n /**\n * Get lines\n *\n * @method getLines\n * @returns {AnalyzerLine[]}\n */\n AnalyzerTable.prototype.getLines = function () {\n return this.lines;\n };\n\n /**\n * Get cells\n *\n * @method getCells\n * @returns {AnalyzerCell[]}\n */\n AnalyzerTable.prototype.getCells = function () {\n return this.cells;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {AnalyzerInkRange[]}\n */\n AnalyzerTable.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.AnalyzerTable = AnalyzerTable;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer table data\n *\n * @class AnalyzerTableData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTableData(obj) {\n if (obj) {\n this.columnCount = obj.columnCount;\n this.rowCount = obj.rowCount;\n }\n }\n\n /**\n * Get column count\n *\n * @method getColumnCount\n * @returns {Number}\n */\n AnalyzerTableData.prototype.getColumnCount = function () {\n return this.columnCount;\n };\n\n /**\n * Get row count\n *\n * @method getRowCount\n * @returns {Number}\n */\n AnalyzerTableData.prototype.getRowCount = function () {\n return this.rowCount;\n };\n\n // Export\n scope.AnalyzerTableData = AnalyzerTableData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer text line\n *\n * @class AnalyzerTextLine\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTextLine(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.inkRanges = [];\n this.underlineList = [];\n if (obj) {\n this.data = new scope.AnalyzerTextLineData(obj.data);\n this.result = new scope.TextDocument(obj.result);\n for (var i in obj.inkRanges) {\n this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[i]));\n }\n for (var j in obj.underlineList) {\n this.underlineList.push(new scope.AnalyzerUnderline(obj.underlineList[j]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerTextLine.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerTextLine.prototype.constructor = AnalyzerTextLine;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerTextLineData}\n */\n AnalyzerTextLine.prototype.getData = function () {\n return this.data;\n };\n\n /**\n * Get text document\n *\n * @method getTextDocument\n * @returns {TextDocument}\n */\n AnalyzerTextLine.prototype.getTextDocument = function () {\n return this.result;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {AnalyzerInkRange[]}\n */\n AnalyzerTextLine.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get underline list\n *\n * @method getUnderlineList\n * @returns {AnalyzerUnderline[]}\n */\n AnalyzerTextLine.prototype.getUnderlineList = function () {\n return this.underlineList;\n };\n\n // Export\n scope.AnalyzerTextLine = AnalyzerTextLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer text line data\n *\n * @class AnalyzerTextLineData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTextLineData(obj) {\n if (obj) {\n this.baselinePos = obj.baselinePos;\n this.toMidline = obj.toMidline;\n this.orientation = obj.orientation;\n this.topLeftPoint = new scope.Point(obj.topLeftPoint);\n this.textHeight = obj.textHeight;\n this.justificationType = obj.justificationType;\n this.height = obj.height;\n this.width = obj.width;\n }\n }\n\n /**\n * Get baseline position\n *\n * @method getBaselinePos\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getBaselinePos = function () {\n return this.baselinePos;\n };\n\n /**\n * Get to midline\n *\n * @method getToMidline\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getToMidline = function () {\n return this.toMidline;\n };\n\n /**\n * Get orientation\n *\n * @method getOrientation\n * @returns {String}\n */\n AnalyzerTextLineData.prototype.getOrientation = function () {\n return this.orientation;\n };\n\n /**\n * Get top-left point\n *\n * @method getTopLeftPoint\n * @returns {Point}\n */\n AnalyzerTextLineData.prototype.getTopLeftPoint = function () {\n return this.topLeftPoint;\n };\n\n /**\n * Get text height\n *\n * @method getTextHeight\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getTextHeight = function () {\n return this.textHeight;\n };\n\n /**\n * Get justification type\n *\n * @method getJustificationType\n * @returns {String}\n */\n AnalyzerTextLineData.prototype.getJustificationType = function () {\n return this.justificationType;\n };\n\n /**\n * Get height\n *\n * @method getHeight\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getHeight = function () {\n return this.height;\n };\n\n /**\n * Get width\n *\n * @method getWidth\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Get bounding box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AnalyzerTextLineData.prototype.getBoundingBox = function () {\n var rectangle = new scope.Rectangle();\n if (this.getTopLeftPoint() || this.getWidth() || this.getHeight()) {\n rectangle.setTopLeftPoint(this.getTopLeftPoint());\n rectangle.setWidth(this.getWidth());\n rectangle.setHeight(this.getHeight());\n }\n return rectangle;\n };\n\n // Export\n scope.AnalyzerTextLineData = AnalyzerTextLineData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer underline\n *\n * @class AnalyzerUnderline\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerUnderline(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.inkRanges = [];\n if (obj) {\n this.data = new scope.AnalyzerUnderlineData(obj.data);\n for (var i in obj.inkRanges) {\n this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerUnderline.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerUnderline.prototype.constructor = AnalyzerUnderline;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerUnderlineData}\n */\n AnalyzerUnderline.prototype.getData = function () {\n return this.data;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {AnalyzerInkRange[]}\n */\n AnalyzerUnderline.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.AnalyzerUnderline = AnalyzerUnderline;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer underline data\n *\n * @class AnalyzerUnderlineData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerUnderlineData(obj) {\n if (obj) {\n this.firstCharacter = obj.firstCharacter;\n this.lastCharacter = obj.lastCharacter;\n }\n }\n\n /**\n * Get first character\n *\n * @method getFirstCharacter\n * @returns {Number}\n */\n AnalyzerUnderlineData.prototype.getFirstCharacter = function () {\n return this.firstCharacter;\n };\n\n /**\n * Get last character\n *\n * @method getLastCharacter\n * @returns {Number}\n */\n AnalyzerUnderlineData.prototype.getLastCharacter = function () {\n return this.lastCharacter;\n };\n\n // Export\n scope.AnalyzerUnderlineData = AnalyzerUnderlineData;\n})(MyScript);","'use strict';\n\n(function (scope, Q) {\n /**\n * Network interface\n *\n * @class NetworkInterface\n * @constructor\n */\n function NetworkInterface() {\n }\n\n /**\n * Parse JSON String to Object\n *\n * @method parse\n * @param {Object} req\n * @returns {Object}\n */\n NetworkInterface.parse = function (req) {\n var result;\n try {\n result = JSON.parse(req.responseText);\n } catch (e) {\n result = req.responseText;\n }\n return result;\n };\n\n /**\n * Transform object data request to a list of parameters\n *\n * @method transformRequest\n * @param {Object} [obj]\n * @returns {String}\n */\n NetworkInterface.transformRequest = function (obj) {\n var str = [];\n for (var p in obj) {\n if ((typeof obj[p] !== 'undefined') &&\n (typeof obj[p] !== 'function')) {\n str.push(encodeURIComponent(p) + '=' + encodeURIComponent(obj[p]));\n }\n }\n return str.join('&');\n };\n\n /**\n * Send request to the network and return a promise\n *\n * @method xhr\n * @param {String} type\n * @param {String} url\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.xhr = function (type, url, data) {\n\n var deferred = Q.defer();\n\n function onStateChange() {\n if (request.readyState === 4) {\n if (request.status >= 200 && request.status < 300) {\n deferred.resolve(NetworkInterface.parse(request));\n }\n }\n }\n\n function onLoad() {\n if (request.status >= 200 && request.status < 300) {\n deferred.resolve(NetworkInterface.parse(request));\n } else {\n deferred.reject(new Error(request.responseText));\n }\n }\n\n function onError() {\n deferred.reject(new Error('Can\\'t XHR ' + url));\n }\n\n function onProgress(event) {\n deferred.notify(event.loaded / event.total);\n }\n\n var request = new XMLHttpRequest();\n request.open(type, url, true);\n request.setRequestHeader('Accept', 'application/json');\n request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');\n request.onload = onLoad;\n request.onerror = onError;\n request.onprogress = onProgress;\n request.onreadystatechange = onStateChange;\n request.send(NetworkInterface.transformRequest(data));\n\n return deferred.promise;\n };\n\n /**\n * Get request\n *\n * @method get\n * @param {String} src\n * @param {Object} params\n * @returns {Promise}\n */\n NetworkInterface.prototype.get = function (src, params) {\n if (params) {\n src += '?' + NetworkInterface.transformRequest(params);\n }\n return this.xhr('GET', src).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n /**\n * Put request\n *\n * @method put\n * @param {String} src\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.put = function (url, data) {\n return this.xhr('PUT', url, data).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n /**\n * Post request\n *\n * @method post\n * @param {String} src\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.post = function (url, data) {\n return this.xhr('POST', url, data).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n /**\n * Delete request\n *\n * @method delete\n * @param {String} src\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.delete = function (url, data) {\n return this.xhr('DELETE', url, data).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n // Export\n scope.NetworkInterface = NetworkInterface;\n})(MyScript, Q);\n","'use strict';\n\n(function (scope, CryptoJS) {\n /**\n * Abstract recognizer interface\n *\n * @class AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function AbstractRecognizer(host) {\n this.host = 'cloud.myscript.com';\n if (host) {\n this.host = host;\n }\n this.http = new scope.NetworkInterface();\n }\n\n /**\n * Get the recognition languages available for an application and a specific inputMode\n *\n * @method getAvailableLanguageList\n * @param {String} applicationKey\n * @param {String} inputMode\n * @returns {Promise}\n */\n AbstractRecognizer.prototype.getAvailableLanguageList = function (applicationKey, inputMode) {\n var data = new scope.RecognitionLanguagesData();\n data.setApplicationKey(applicationKey);\n data.setInputMode(inputMode);\n\n return this.http.get('//' + this.host + '/api/v3.0/recognition/rest/text/languages.json', data).then(\n function success(response) {\n return response.result;\n },\n function error(response) {\n return response;\n }\n );\n };\n\n /**\n * Compute HMAC signature for server authentication\n *\n * @method computeHmac\n * @param {String} applicationKey\n * @param {String} data\n * @param {String} hmacKey\n */\n AbstractRecognizer.prototype.computeHmac = function (applicationKey, data, hmacKey) {\n var jsonInput = (typeof data === 'object') ? JSON.stringify(data) : data;\n return CryptoJS.HmacSHA512(jsonInput, applicationKey + hmacKey).toString(CryptoJS.enc.Hex);\n };\n // Export\n scope.AbstractRecognizer = AbstractRecognizer;\n})(MyScript, CryptoJS);","'use strict';\n\n(function (scope) {\n /**\n * Abstract WebSocket recognizer interface\n *\n * @class AbstractWSRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function AbstractWSRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n }\n\n /**\n * Inheritance property\n */\n AbstractWSRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n AbstractWSRecognizer.prototype.constructor = AbstractWSRecognizer;\n\n AbstractWSRecognizer.prototype.getMessageCallback = function () {\n return this.messageCallback;\n };\n\n AbstractWSRecognizer.prototype.setMessageCallback = function (callback) {\n this.messageCallback = callback;\n };\n\n AbstractWSRecognizer.prototype.getOpenCallback = function () {\n return this.openCallback;\n };\n\n AbstractWSRecognizer.prototype.setOpenCallback = function (callback) {\n this.openCallback = callback;\n };\n\n AbstractWSRecognizer.prototype.getCloseCallback = function () {\n return this.closeCallback;\n };\n\n AbstractWSRecognizer.prototype.setCloseCallback = function (callback) {\n this.closeCallback = callback;\n };\n\n AbstractWSRecognizer.prototype.getErrorCallback = function () {\n return this.errorCallback;\n };\n\n AbstractWSRecognizer.prototype.setErrorCallback = function (callback) {\n this.errorCallback = callback;\n };\n\n /**\n * Get the current state of the connection\n *\n * @method getState\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.getState = function () {\n var deferred = Q.defer();\n if (!this.socket) {\n deferred.reject(new Error('Can\\'t find WebSocket'));\n } else {\n deferred.resolve(this.socket.readyState);\n }\n return deferred.promise;\n };\n\n /**\n * Close the socket\n *\n * @method close\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.close = function () {\n var deferred = Q.defer();\n if (!this.socket) {\n deferred.reject(new Error('Can\\'t find WebSocket'));\n } else {\n deferred.resolve(this.socket.close());\n }\n return deferred.promise;\n };\n\n /**\n * Send a message\n *\n * @method sendMessage\n * @param {AbstractWSMessage} message\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.sendMessage = function (message) {\n var deferred = Q.defer();\n if (!this.socket) {\n deferred.reject(new Error('Can\\'t find WebSocket'));\n } else {\n deferred.resolve(this.socket.send(JSON.stringify(message)));\n }\n return deferred.promise;\n };\n\n /**\n * Initialize the WebSocket\n *\n * @method initWSRecognition\n * @param {String} applicationKey\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.initWSRecognition = function (applicationKey) {\n var message = new scope.InitRequestWSMessage();\n message.setApplicationKey(applicationKey);\n return this.sendMessage(message);\n };\n\n /**\n * Authenticate the WebSocket client end with a handshake of HMAC signature\n *\n * @method takeUpHmacChallenge\n * @param {String} applicationKey\n * @param {String} challenge\n * @param {String} hmacKey\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.takeUpHmacChallenge = function (applicationKey, challenge, hmacKey) {\n var message = new scope.ChallengeRequestWSMessage();\n message.setApplicationKey(applicationKey);\n message.setChallenge(challenge);\n message.setHmacSignature(this.computeHmac(applicationKey, challenge, hmacKey));\n return this.sendMessage(message);\n };\n\n /**\n * Reset the WebSocket recognition session\n *\n * @method resetWSRecognition\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.resetWSRecognition = function () {\n var message = new scope.ResetRequestWSMessage();\n return this.sendMessage(message);\n };\n\n // Export\n scope.AbstractWSRecognizer = AbstractWSRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text recognizer interface\n *\n * @class TextRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function TextRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.TextParameter();\n this.parameters.setLanguage('en_US');\n this.parameters.setInputMode('CURSIVE');\n }\n\n /**\n * Inheritance property\n */\n TextRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n TextRecognizer.prototype.constructor = TextRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do text recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {TextParameter} parameters\n * @param {String} instanceId\n * @param {TextInputUnit[]} inputUnits\n * @param {String} hmacKey\n * @returns {Promise}\n */\n TextRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, inputUnits, hmacKey, parameters) {\n\n var input = new scope.TextRecognitionInput();\n if (parameters) {\n input.setParameters(parameters);\n } else {\n input.setParameters(this.parameters);\n }\n input.setInputUnits(inputUnits);\n\n var data = new scope.TextRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setTextRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/text/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.TextResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.TextRecognizer = TextRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text WebSocket recognizer interface\n *\n * @class TextWSRecognizer\n * @extends AbstractWSRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function TextWSRecognizer(host) {\n scope.AbstractWSRecognizer.call(this, host);\n this.parameters = new scope.TextParameter();\n this.parameters.setLanguage('en_US');\n this.parameters.setInputMode('CURSIVE');\n\n this.socket = new WebSocket('ws://' + this.host + '/api/v3.0/recognition/ws/text');\n var self = this;\n this.socket.onopen = function (message) {\n console.log('WebSocket opened');\n if (self.openCallback) {\n self.openCallback(message);\n }\n };\n this.socket.onmessage = function (message) {\n var data = JSON.parse(message.data);\n console.log('WebSocket message received');\n switch (data.type) {\n case 'init':\n data = new scope.InitResponseWSMessage(data);\n break;\n case 'error':\n data = new scope.ErrorResponseWSMessage(data);\n break;\n case 'hmacChallenge':\n data = new scope.ChallengeResponseWSMessage(data);\n break;\n default:\n data = new scope.TextResponseWSMessage(data);\n break;\n }\n if (self.messageCallback) {\n self.messageCallback(data);\n }\n };\n this.socket.onerror = function (message) {\n console.log('WebSocket error received');\n if (self.errorCallback) {\n self.errorCallback(message);\n }\n };\n this.socket.onclose = function (message) {\n console.log('WebSocket opened');\n if (self.closeCallback) {\n self.closeCallback(message);\n }\n };\n }\n\n /**\n * Inheritance property\n */\n TextWSRecognizer.prototype = new scope.AbstractWSRecognizer();\n\n /**\n * Constructor property\n */\n TextWSRecognizer.prototype.constructor = TextWSRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextWSRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextWSRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Start the WebSocket session\n *\n * @method startWSRecognition\n * @param {TextInputUnit[]} inputUnits\n * @param {TextParameter} [parameters]\n * @returns {Promise}\n */\n TextWSRecognizer.prototype.startWSRecognition = function (inputUnits, parameters) {\n var message = new scope.TextStartRequestWSMessage();\n if (parameters) {\n message.setParameters(parameters);\n } else {\n message.setParameters(this.getParameters());\n }\n message.setInputUnits(inputUnits);\n return this.sendMessage(message);\n };\n\n /**\n * Continue the recognition\n *\n * @method continueWSRecognition\n * @param {TextInputUnit[]} inputUnits\n * @param {String} instanceId\n * @returns {Promise}\n */\n TextWSRecognizer.prototype.continueWSRecognition = function (inputUnits, instanceId) {\n var message = new scope.TextContinueRequestWSMessage();\n message.setInputUnits(inputUnits);\n message.setInstanceId(instanceId);\n return this.sendMessage(message);\n };\n\n /**\n * Do text WebSocket recognition\n *\n * @method doWSRecognition\n * @param {String} instanceId\n * @param {TextInputUnit[]} inputUnits\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n TextWSRecognizer.prototype.doWSRecognition = function (instanceId, inputUnits, parameters) {\n if (!instanceId) {\n return this.startWSRecognition(inputUnits, parameters);\n } else {\n return this.continueWSRecognition(inputUnits, instanceId);\n }\n };\n\n // Export\n scope.TextWSRecognizer = TextWSRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape recognizer interface\n *\n * @class ShapeRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function ShapeRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.ShapeParameter();\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n ShapeRecognizer.prototype.constructor = ShapeRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {ShapeParameter}\n */\n ShapeRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {ShapeParameter} parameters\n */\n ShapeRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do shape recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {ShapeParameter} [parameters]\n * @returns {Promise}\n */\n ShapeRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n\n var input = new scope.ShapeRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setDoBeautification(parameters.hasBeautification());\n input.setRejectDetectionSensitivity(parameters.getRejectDetectionSensitivity());\n } else {\n input.setDoBeautification(this.getParameters().hasBeautification());\n input.setRejectDetectionSensitivity(this.getParameters().getRejectDetectionSensitivity());\n }\n\n var data = new scope.ShapeRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setShapeRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/shape/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.ShapeResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n /**\n * Clear shape recognition session\n *\n * @method clearShapeRecognitionSession\n * @param {String} applicationKey\n * @param {String} instanceId\n * @returns {Promise}\n */\n ShapeRecognizer.prototype.clearShapeRecognitionSession = function (applicationKey, instanceId) {\n\n var data = {\n instanceSessionId: instanceId\n };\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/shape/clearSessionId.json', data).then(\n function success(response) {\n return response;\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.ShapeRecognizer = ShapeRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math recognizer interface\n *\n * @class MathRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function MathRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.MathParameter();\n }\n\n /**\n * Inheritance property\n */\n MathRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n MathRecognizer.prototype.constructor = MathRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MathParameter}\n */\n MathRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MathParameter} parameters\n */\n MathRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do math recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n MathRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n var input = new scope.MathRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setResultTypes(parameters.getResultTypes());\n input.setColumnar(parameters.isColumnar());\n input.setScratchOutDetectionSensitivity(parameters.getScratchOutDetectionSensitivity());\n input.setUserResources(parameters.getUserResources());\n } else {\n input.setResultTypes(this.getParameters().getResultTypes());\n input.setColumnar(this.getParameters().isColumnar());\n input.setScratchOutDetectionSensitivity(this.getParameters().getScratchOutDetectionSensitivity());\n input.setUserResources(this.getParameters().getUserResources());\n }\n\n var data = new scope.MathRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setMathRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/math/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.MathResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.MathRecognizer = MathRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math WebSocket recognizer interface\n *\n * @class MathWSRecognizer\n * @extends AbstractWSRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function MathWSRecognizer(host) {\n scope.AbstractWSRecognizer.call(this, host);\n this.parameters = new scope.MathParameter();\n\n this.socket = new WebSocket('ws://' + this.host + '/api/v3.0/recognition/ws/math');\n var self = this;\n this.socket.onopen = function (message) {\n console.log('WebSocket opened');\n if (self.openCallback) {\n self.openCallback(message);\n }\n };\n this.socket.onmessage = function (message) {\n var data = JSON.parse(message.data);\n console.log('WebSocket message received');\n switch (data.type) {\n case 'init':\n data = new scope.InitResponseWSMessage(data);\n break;\n case 'error':\n data = new scope.ErrorResponseWSMessage(data);\n break;\n case 'hmacChallenge':\n data = new scope.ChallengeResponseWSMessage(data);\n break;\n default:\n data = new scope.MathResponseWSMessage(data);\n break;\n }\n if (self.messageCallback) {\n self.messageCallback(data);\n }\n };\n this.socket.onerror = function (message) {\n console.log('WebSocket error received');\n if (self.errorCallback) {\n self.errorCallback(message);\n }\n };\n this.socket.onclose = function (message) {\n console.log('WebSocket opened');\n if (self.closeCallback) {\n self.closeCallback(message);\n }\n };\n }\n\n /**\n * Inheritance property\n */\n MathWSRecognizer.prototype = new scope.AbstractWSRecognizer();\n\n /**\n * Constructor property\n */\n MathWSRecognizer.prototype.constructor = MathWSRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MathParameter}\n */\n MathWSRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MathParameter} parameters\n */\n MathWSRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Start the WebSocket session\n *\n * @method startWSRecognition\n * @param {AbstractComponent[]} components\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n MathWSRecognizer.prototype.startWSRecognition = function (components, parameters) {\n var message = new scope.MathStartRequestWSMessage();\n if (parameters) {\n message.setParameters(parameters);\n } else {\n message.setParameters(this.getParameters());\n }\n message.setComponents(components);\n return this.sendMessage(message);\n };\n\n /**\n * Continue the recognition\n *\n * @method continueWSRecognition\n * @param {AbstractComponent[]} components\n * @param {String} instanceId\n * @returns {Promise}\n */\n MathWSRecognizer.prototype.continueWSRecognition = function (components, instanceId) {\n var message = new scope.MathContinueRequestWSMessage();\n message.setComponents(components);\n message.setInstanceId(instanceId);\n return this.sendMessage(message);\n };\n\n /**\n * Do math WebSocket recognition\n *\n * @method doWSRecognition\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n MathWSRecognizer.prototype.doWSRecognition = function (instanceId, components, parameters) {\n if (!instanceId) {\n return this.startWSRecognition(components, parameters);\n } else {\n return this.continueWSRecognition(components, instanceId);\n }\n };\n\n // Export\n scope.MathWSRecognizer = MathWSRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music recognizer interface\n *\n * @class MusicRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function MusicRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.MusicParameter();\n }\n\n /**\n * Inheritance property\n */\n MusicRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n MusicRecognizer.prototype.constructor = MusicRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MusicParameter}\n */\n MusicRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MusicParameter} parameters\n */\n MusicRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do music recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {MusicParameter} [parameters]\n * @returns {Promise}\n */\n MusicRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n\n var input = new scope.MusicRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setStaff(parameters.getStaff());\n input.setDivisions(parameters.getDivisions());\n input.setResultTypes(parameters.getResultTypes());\n input.setScratchOutDetectionSensitivity(parameters.getScratchOutDetectionSensitivity());\n input.setUserResources(parameters.getUserResources());\n } else {\n input.setStaff(this.getParameters().getStaff());\n input.setDivisions(this.getParameters().getDivisions());\n input.setResultTypes(this.getParameters().getResultTypes());\n input.setScratchOutDetectionSensitivity(this.getParameters().getScratchOutDetectionSensitivity());\n input.setUserResources(this.getParameters().getUserResources());\n }\n\n var data = new scope.MusicRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setMusicRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/music/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.MusicResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.MusicRecognizer = MusicRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer recognizer interface\n *\n * @class AnalyzerRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function AnalyzerRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.AnalyzerParameter();\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n AnalyzerRecognizer.prototype.constructor = AnalyzerRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {AnalyzerParameter}\n */\n AnalyzerRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {AnalyzerParameter} parameters\n */\n AnalyzerRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do analyzer recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {AnalyzerParameter} [parameters]\n * @returns {Promise}\n */\n AnalyzerRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n\n var input = new scope.AnalyzerRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setParameters(parameters);\n } else {\n input.setParameters(this.getParameters());\n }\n\n var data = new scope.AnalyzerRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setAnalyzerRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/analyzer/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.AnalyzerResult(response);\n },\n function error(response) {\n return response;\n }\n );\n };\n\n // Export\n scope.AnalyzerRecognizer = AnalyzerRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for both input and output canvas draw. Default values:\n * color: 'black';\n * rectColor: 'rgba(0, 0, 0, 0.2)';\n * font: 'Times New Roman';\n * decoration: '';\n * width: 4;\n * pressureType: 'SIMULATED';\n * alpha: '1.0';\n * doFadeOutLoop: false;\n * showBoundingBoxes: false;\n *\n * @class RenderingParameters\n * @constructor\n */\n function RenderingParameters() {\n this.color = 'black';\n this.rectColor = 'rgba(0, 0, 0, 0.2)';\n this.font = 'Times New Roman';\n this.decoration = '';\n this.width = 4;\n this.pressureType = 'SIMULATED';\n this.alpha = '1.0';\n this.doFadeOutLoop = false;\n this.showBoundingBoxes = false;\n }\n\n /**\n * Get the color renderer parameter\n *\n * @method getColor\n * @returns {String} The color of the ink\n */\n RenderingParameters.prototype.getColor = function () {\n return this.color;\n };\n\n /**\n * Set the color renderer parameter\n *\n * @method setColor\n * @param {String} color\n */\n RenderingParameters.prototype.setColor = function (color) {\n this.color = color;\n };\n\n /**\n * Get the rect renderer parameter\n *\n * @method getRectColor\n * @returns {String} the rectangle color\n */\n RenderingParameters.prototype.getRectColor = function () {\n return this.rectColor;\n };\n\n /**\n * Set the rect renderer parameter\n *\n * @method setRectColor\n * @param {String} rectColor\n */\n RenderingParameters.prototype.setRectColor = function (rectColor) {\n this.rectColor = rectColor;\n };\n\n /**\n * Get the font renderer parameter\n *\n * @method getFont\n * @returns {String} The font\n */\n RenderingParameters.prototype.getFont = function () {\n return this.font;\n };\n\n /**\n * Set the font renderer parameter\n *\n * @method setFont\n * @param {String} font\n */\n RenderingParameters.prototype.setFont = function (font) {\n this.font = font;\n };\n\n /**\n * Get the decoration renderer parameter\n *\n * @method getDecoration\n * @returns {String} The decoration\n */\n RenderingParameters.prototype.getDecoration = function () {\n return this.decoration;\n };\n\n /**\n * Set the decoration renderer parameter\n *\n * @method setDecoration\n * @param {String} decoration\n */\n RenderingParameters.prototype.setDecoration = function (decoration) {\n this.decoration = decoration;\n };\n\n /**\n * Get the width renderer parameter\n *\n * @method getWidth\n * @returns {Number} The ink width\n */\n RenderingParameters.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Set the width renderer parameter\n *\n * @method setWidth\n * @param {Number} width\n */\n RenderingParameters.prototype.setWidth = function (width) {\n this.width = width;\n };\n\n /**\n * Get the pressure renderer parameter\n *\n * @method getPressureType\n * @returns {String} The pressure type\n */\n RenderingParameters.prototype.getPressureType = function () {\n return this.pressureType;\n };\n\n /**\n * Set the pressure renderer parameter\n *\n * @method setPressureType\n * @param {String} pressureType\n */\n RenderingParameters.prototype.setPressureType = function (pressureType) {\n this.pressureType = pressureType;\n };\n\n /**\n * Get the alpha renderer parameter\n *\n * @method getAlpha\n * @returns {String} The alpha\n */\n RenderingParameters.prototype.getAlpha = function () {\n return this.alpha;\n };\n\n /**\n * Set the alpha renderer parameter\n *\n * @method setAlpha\n * @param {String} alpha\n */\n RenderingParameters.prototype.setAlpha = function (alpha) {\n this.alpha = alpha;\n };\n\n /**\n * Get fade out ink fore HTML5 canvas\n *\n * @method getDoFadeOutLoop\n * @returns {Boolean}\n */\n RenderingParameters.prototype.getDoFadeOutLoop = function () {\n return this.doFadeOutLoop;\n };\n\n /**\n * Set fade out ink fore HTML5 canvas\n *\n * @method setDoFadeOutLoop\n * @param {Boolean} doFadeOutLoop\n */\n RenderingParameters.prototype.setDoFadeOutLoop = function (doFadeOutLoop) {\n this.doFadeOutLoop = doFadeOutLoop;\n };\n\n /**\n * This property is use to show or not show the bounding box\n *\n * @method getShowBoundingBoxes\n * @returns {Boolean}\n */\n RenderingParameters.prototype.getShowBoundingBoxes = function () {\n return this.showBoundingBoxes;\n };\n\n /**\n * Set the show state of bounding box\n *\n * @method setShowBoundingBoxes\n * @param {Boolean} showBoundingBoxes\n */\n RenderingParameters.prototype.setShowBoundingBoxes = function (showBoundingBoxes) {\n this.showBoundingBoxes = showBoundingBoxes;\n };\n\n // Export\n scope.RenderingParameters = RenderingParameters;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Abstract Renderer. It's used to calculate the ink rendering in HTML5 canvas\n *\n * @class AbstractRenderer\n * @constructor\n */\n function AbstractRenderer() {\n this.points = [];\n this.drawing = false;\n this.parameters = new scope.RenderingParameters();\n }\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {RenderingParameters}\n */\n AbstractRenderer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {RenderingParameters} parameters\n */\n AbstractRenderer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Draw recognition result on HTML5 canvas.\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {Object} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw input components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n this.drawStroke(component, context, parameters);\n } else if (component instanceof scope.CharacterInputComponent) {\n this.drawCharacter(component, context, parameters);\n }\n }\n };\n\n /**\n * Record the beginning of drawing\n *\n * @method drawStart\n * @param {Number} x\n * @param {Number} y\n */\n AbstractRenderer.prototype.drawStart = function (x, y) {\n this.points.length = 0;\n this.drawing = true;\n this.points.push({\n x: x,\n y: y,\n pressure: 0.5,\n distance: 0.0,\n length: 0.0,\n ux: 0.0,\n uy: 0.0,\n x1: 0.0,\n x2: 0.0,\n y1: 0.0,\n y2: 0.0\n });\n };\n\n /**\n * Record the drawing\n *\n * @method drawContinue\n * @param {Number} x\n * @param {Number} y\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawContinue = function (x, y, context, parameters) {\n if (this.drawing) {\n var point = {\n x: x,\n y: y,\n pressure: 0.5,\n distance: 0.0,\n length: 0.0,\n ux: 0.0,\n uy: 0.0,\n x1: 0.0,\n x2: 0.0,\n y1: 0.0,\n y2: 0.0\n };\n this.points.push(point);\n\n if (this.points.length > 1) {\n var previous = this.points[this.points.length - 2];\n\n if (this.points.length === 2) {\n this.drawQuadratricStart(previous, point, context, parameters);\n } else {\n var third = this.points[this.points.length - 3];\n this.drawQuadratricContinue(third, previous, point, context, parameters);\n }\n\n }\n }\n };\n\n /**\n * Stop record of drawing\n *\n * @method drawEnd\n * @param {Number} x\n * @param {Number} y\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawEnd = function (x, y, context, parameters) {\n if (this.drawing) {\n if (this.points.length === 1) {\n this.drawPoint({\n x: x,\n y: y,\n pressure: 0.5,\n distance: 0.0,\n length: 0.0,\n ux: 0.0,\n uy: 0.0,\n x1: 0.0,\n x2: 0.0,\n y1: 0.0,\n y2: 0.0\n }, context, parameters);\n } else if (this.points.length > 1) {\n var lastPoint = this.points[this.points.length - 1];\n var point = this.points[this.points.length - 2];\n this.drawQuadratricEnd(point, lastPoint, context, parameters);\n }\n this.drawing = false;\n }\n };\n\n /**\n * Clear the context's canvas content to erase drawing strokes\n *\n * @method clear\n * @param {Object} context\n */\n AbstractRenderer.prototype.clear = function (context) {\n context.clearRect(0, 0, context.canvas.width, context.canvas.height);\n };\n\n /**\n * Draw guidelines on the HTML5 canvas\n *\n * @method drawGuidelines\n * @param {Number} horizontalSpacing\n * @param {Number} verticalSpacing\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawGuidelines = function (horizontalSpacing, verticalSpacing, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.clearRect(0, 0, context.canvas.clientWidth, context.canvas.clientHeight);\n\n if (verticalSpacing) {\n for (var y = verticalSpacing; y < context.canvas.clientHeight - verticalSpacing; y += verticalSpacing) {\n context.beginPath();\n context.moveTo(horizontalSpacing, y);\n context.lineTo(context.canvas.clientWidth - horizontalSpacing, y);\n context.stroke();\n }\n }\n if (horizontalSpacing) {\n for (var x = horizontalSpacing; x < context.canvas.clientWidth - horizontalSpacing; x += horizontalSpacing) {\n context.beginPath();\n context.moveTo(x, verticalSpacing);\n context.lineTo(x, context.canvas.clientHeight - verticalSpacing);\n context.stroke();\n }\n }\n } finally {\n context.restore();\n }\n };\n\n /**\n * Trace line on context\n *\n * @method drawLineByCoordinates\n * @param {Number} lX\n * @param {Number} lY\n * @param {Number} cX\n * @param {Number} cY\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawLineByCoordinates = function (lX, lY, cX, cY, context, parameters) {\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n // line from\n context.moveTo(lX, lY);\n // to\n context.lineTo(cX, cY);\n // draw it\n context.stroke();\n } finally {\n context.restore();\n }\n };\n\n /**\n * Draw a line on context\n *\n * @method drawLineByPoints\n * @param {QuadraticPoint} firstPoint\n * @param {QuadraticPoint} lastPoint\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawLineByPoints = function (firstPoint, lastPoint, context, parameters) {\n this.drawLineByCoordinates(firstPoint.x, firstPoint.y, lastPoint.x, lastPoint.y, context, parameters);\n };\n\n /**\n * Draw a rectangle on context\n *\n * @method drawRectangle\n * @param {Rectangle} rectangle\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawRectangle = function (rectangle, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getRectColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getRectColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.fillRect(rectangle.getX(), rectangle.getY(), rectangle.getWidth(), rectangle.getHeight());\n\n } finally {\n context.restore();\n }\n };\n\n /**\n * Draw strokes on context\n *\n * @method drawStrokes\n * @param {Stroke[]} strokes\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawStrokes = function (strokes, context, parameters) {\n for (var i in strokes) {\n this.drawStroke(strokes[i], context, parameters);\n }\n };\n\n /**\n * Draw a stroke on context\n *\n * @method drawStroke\n * @param {Stroke} stroke\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawStroke = function (stroke, context, parameters) {\n var strokePoints = [];\n for (var j = 0; j < stroke.getLength(); j++) {\n strokePoints.push(new scope.QuadraticPoint({\n x: stroke.getX()[j],\n y: stroke.getY()[j]\n }));\n }\n if (stroke.getLength() === 1) {\n this.drawPoint(strokePoints[0], context, parameters);\n } else {\n for (var k = 0; k < stroke.getLength(); k++) {\n if (k === 0) {\n var p1 = strokePoints[0];\n var p2 = strokePoints[1];\n this.drawQuadratricStart(p1, p2, context, parameters);\n } else if (k < stroke.getLength() - 1) {\n var p3 = strokePoints[k - 1];\n var p4 = strokePoints[k];\n var p5 = strokePoints[k + 1];\n this.drawQuadratricContinue(p3, p4, p5, context, parameters);\n } else if (k > 1) {\n var p6 = strokePoints[k - 1];\n var p7 = strokePoints[k];\n this.drawQuadratricEnd(p6, p7, context, parameters);\n }\n }\n }\n };\n\n /**\n * Draw character\n *\n * @private\n * @method drawCharacter\n * @param {CharacterInputComponent} character\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawCharacter = function (character, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw point on context\n *\n * @method drawPoint\n * @param {QuadraticPoint} point\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawPoint = function (point, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n\n context.beginPath();\n context.arc(point.x, point.y, 0.5 * parameters.getWidth(), 0, 2 * Math.PI);\n context.fill();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n\n context.beginPath();\n context.arc(point.x, point.y, 0.5 * this.parameters.getWidth(), 0, 2 * Math.PI);\n context.fill();\n }\n } finally {\n context.restore();\n }\n\n };\n\n /**\n * Draw an arrow head on context\n *\n * @method drawArrowHead\n * @param {QuadraticPoint} headPoint\n * @param {Number} angle\n * @param {Number} length\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawArrowHead = function (headPoint, angle, length, context, parameters) {\n\n var alpha = phi(angle + Math.PI - (Math.PI / 8)),\n beta = phi(angle - Math.PI + (Math.PI / 8));\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.moveTo(headPoint.x, headPoint.y);\n context.beginPath();\n context.lineTo(headPoint.x + (length * Math.cos(alpha)), headPoint.y + (length * Math.sin(alpha)));\n context.lineTo(headPoint.x + (length * Math.cos(beta)), headPoint.y + (length * Math.sin(beta)));\n context.lineTo(headPoint.x, headPoint.y);\n context.fill();\n\n } finally {\n context.restore();\n }\n\n };\n\n /**\n * Get Strokes from inkRange\n *\n * @method extractStroke\n * @param {Stroke[]} strokes\n * @param {Object} inkRange\n * @result {Stroke[]} List of strokes from inkRange\n */\n AbstractRenderer.prototype.extractStroke = function (strokes, inkRange) {\n var result = [],\n firstPointIndex = Math.floor(inkRange.getFirstPoint()),\n lastPointIndex = Math.ceil(inkRange.getLastPoint());\n\n for (var strokeIndex = inkRange.getFirstStroke(); strokeIndex <= inkRange.getLastStroke(); strokeIndex++) {\n var currentStroke = strokes[strokeIndex];\n var currentStrokePointCount = currentStroke.x.length;\n\n var newStroke = new scope.Stroke(), x = [], y = [];\n\n for (var pointIndex = firstPointIndex; (strokeIndex === inkRange.getLastStroke() && pointIndex <= lastPointIndex && pointIndex < currentStrokePointCount) || (strokeIndex !== inkRange.getLastStroke() && pointIndex < currentStrokePointCount); pointIndex++) {\n x.push(currentStroke.x[pointIndex]);\n y.push(currentStroke.y[pointIndex]);\n }\n\n newStroke.setX(x);\n newStroke.setY(y);\n result.push(newStroke);\n }\n return result;\n };\n\n /**\n * Draw a quadratic stroke on context\n *\n * @private\n * @method drawQuadratricStart\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawQuadratricStart = function (p1, p2, context, parameters) {\n\n if (parameters) {\n computePoint(null, p1, true, false, parameters.getPressureType(), parameters.getWidth());\n } else {\n computePoint(null, p1, true, false, this.parameters.getPressureType(), this.parameters.getWidth());\n }\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n strokeFirstSegment(p1, p2, context);\n context.fill();\n } finally {\n context.restore();\n }\n\n };\n\n /**\n * Continue to draw a quadratic stroke on context\n *\n * @private\n * @method drawQuadratricContinue\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {QuadraticPoint} p3\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawQuadratricContinue = function (p1, p2, p3, context, parameters) {\n\n if (parameters) {\n computePoint(p2, p3, false, false, parameters.getPressureType(), parameters.getWidth());\n } else {\n computePoint(p2, p3, false, false, this.parameters.getPressureType(), this.parameters.getWidth());\n }\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n strokeSegment(p1, p2, p3, context);\n context.fill();\n } finally {\n context.restore();\n }\n };\n\n /**\n * Stop to draw a quadratic stroke\n *\n * @private\n * @method drawQuadratricEnd\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawQuadratricEnd = function (p1, p2, context, parameters) {\n\n if (parameters) {\n computePoint(p1, p2, false, true, parameters.getPressureType(), parameters.getWidth());\n } else {\n computePoint(p1, p2, false, true, this.parameters.getPressureType(), this.parameters.getWidth());\n }\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n strokeLastSegment(p1, p2, context);\n context.fill();\n } finally {\n context.restore();\n }\n };\n\n /**\n * Render the first stroke segment.\n *\n * @private\n * @method strokeFirstSegment\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n */\n var strokeFirstSegment = function (p1, p2, context) {\n // compute start points\n var x11 = p1.x1,\n y11 = p1.y1,\n x12 = p1.x2,\n y12 = p1.y2,\n // compute end points\n x21 = 0.5 * p1.x1 + p2.x1,\n y21 = 0.5 * p1.y1 + p2.y1,\n x22 = 0.5 * p1.x2 + p2.x2,\n y22 = 0.5 * p1.y2 + p2.y2;\n\n // stroke segment\n context.moveTo(x11, y11);\n context.lineTo(x21, y21);\n context.lineTo(x22, y22);\n context.lineTo(x12, y12);\n context.lineTo(x11, y11);\n };\n\n /**\n * Render a stroke segment\n *\n * @private\n * @method strokeSegment\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {QuadraticPoint} p3\n * @param {Object} context\n */\n var strokeSegment = function (p1, p2, p3, context) {\n // compute start points\n var x11 = 0.5 * (p1.x1 + p2.x1),\n y11 = 0.5 * (p1.y1 + p2.y1),\n x12 = 0.5 * (p1.x2 + p2.x2),\n y12 = 0.5 * (p1.y2 + p2.y2),\n // compute end points\n x21 = 0.5 * (p2.x1 + p3.x1),\n y21 = 0.5 * (p2.y1 + p3.y1),\n x22 = 0.5 * (p2.x2 + p3.x2),\n y22 = 0.5 * (p2.y2 + p3.y2);\n // stroke segment\n context.moveTo(x11, y11);\n context.quadraticCurveTo(p2.x1, p2.y1, x21, y21);\n context.lineTo(x22, y22);\n context.quadraticCurveTo(p2.x2, p2.y2, x12, y12);\n context.lineTo(x11, y11);\n };\n\n /**\n * Render the last stroke segment\n *\n * @private\n * @method strokeLastSegment\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n */\n var strokeLastSegment = function (p1, p2, context) {\n // compute start points\n var x11 = 0.5 * (p1.x1 + p2.x1),\n y11 = 0.5 * (p1.y1 + p2.y1),\n x12 = 0.5 * (p1.x2 + p2.x2),\n y12 = 0.5 * (p1.y2 + p2.y2),\n // compute end points\n x21 = p2.x1,\n y21 = p2.y1,\n x22 = p2.x2,\n y22 = p2.y2;\n // stroke segment\n context.moveTo(x11, y11);\n context.lineTo(x21, y21);\n context.lineTo(x22, y22);\n context.lineTo(x12, y12);\n context.lineTo(x11, y11);\n };\n\n /**\n * Clamp an angle into the range [-PI, +PI]\n *\n * @private\n * @method phi\n * @param {Number} angle\n * @returns {Number}\n */\n var phi = function (angle) {\n angle = ((angle + Math.PI) % (Math.PI * 2)) - Math.PI;\n if (angle < -Math.PI) {\n angle += Math.PI * 2;\n }\n return angle;\n };\n\n /**\n * Compute all necessary point parameters to draw quadratics\n *\n * @private\n * @method computePoint\n * @param {QuadraticPoint} previous\n * @param {QuadraticPoint} point\n * @param {Boolean} isFirst\n * @param {Boolean} isLast\n * @param {String} pressureType\n * @param {Number} penWidth\n */\n var computePoint = function (previous, point, isFirst, isLast, pressureType, penWidth) {\n\n // compute distance from previous point\n if (previous !== null) {\n computeDistance(previous, point);\n var strokeLength = previous.length + point.distance;\n point.length = strokeLength;\n }\n // compute pressure\n switch (pressureType) {\n case 'SIMULATED':\n computePressure(point, point.distance, point.length);\n break;\n case 'CONSTANT':\n point.pressure = 1.0;\n break;\n case 'REAL':\n // keep the current pressure\n break;\n default:\n throw new Error('Unknown pressure type');\n }\n computeLastControls(point, penWidth);\n // compute control points\n if (previous !== null && !isLast) {\n if (isFirst) {\n computeFirstControls(previous, point, penWidth);\n }\n if (isLast) {\n computeLastControls(point, penWidth);\n } else {\n computeControls(previous, point, penWidth);\n }\n }\n };\n\n /**\n * Compute distance and unit vector from the previous point.\n *\n * @private\n * @method computeDistance\n * @param {QuadraticPoint} previous\n * @param {QuadraticPoint} point\n */\n var computeDistance = function (previous, point) {\n var dx = point.x - previous.x,\n dy = point.y - previous.y,\n d = Math.sqrt(dx * dx + dy * dy);\n\n if (d !== 0) {\n point.distance = d;\n point.ux = dx / d;\n point.uy = dy / d;\n }\n };\n\n /**\n * Compute simulated pressure of given point.\n *\n * @private\n * @method computePressure\n * @param {QuadraticPoint} point\n * @param {Number} distance\n * @param {Number} length\n */\n var computePressure = function (point, distance, length) {\n var k, pressure;\n if (distance < 10) {\n k = 0.2 + Math.pow(0.1 * distance, 0.4);\n } else if (distance > length - 10) {\n k = 0.2 + Math.pow(0.1 * (length - distance), 0.4);\n } else {\n k = 1.0;\n }\n\n pressure = k * Math.max(0.1, 1.0 - 0.1 * Math.sqrt(point.distance));\n if (isNaN(parseFloat(pressure))) {\n pressure = 0.5;\n }\n point.pressure = pressure;\n };\n\n /**\n * Compute control points of the first point.\n *\n * @private\n * @method computeFirstControls\n * @param {QuadraticPoint} first First point of the list to be computed\n * @param {QuadraticPoint} next Next point\n * @param {Number} penWidth Pen width\n */\n var computeFirstControls = function (first, next, penWidth) {\n var r = 0.5 * penWidth * first.pressure,\n nx = -r * next.uy,\n ny = r * next.ux;\n\n first.x1 = first.x + nx;\n first.y1 = first.y + ny;\n first.x2 = first.x - nx;\n first.y1 = first.y - ny;\n };\n\n /**\n * Compute control points between two points.\n *\n * @private\n * @method computeControls\n * @param {QuadraticPoint} point Point to be computed\n * @param {QuadraticPoint} next Next point\n * @param {Number} penWidth Pen width\n */\n var computeControls = function (point, next, penWidth) {\n var ux = point.ux + next.ux,\n uy = point.uy + next.uy,\n u = Math.sqrt(ux * ux + uy * uy);\n\n if (u !== 0) {\n // compute control points\n var r = 0.5 * penWidth * point.pressure;\n var nx = -r * uy / u;\n var ny = r * ux / u;\n point.x1 = point.x + nx;\n point.y1 = point.y + ny;\n point.x2 = point.x - nx;\n point.y2 = point.y - ny;\n } else {\n // collapse control points\n point.x1 = point.x;\n point.y1 = point.y;\n point.x2 = point.x;\n point.y2 = point.y;\n }\n };\n\n /**\n * Compute control points of the last point.\n *\n * @private\n * @method computeLastControls\n * @param {QuadraticPoint} last Last point to be computed\n * @param {Number} penWidth Pen width\n */\n var computeLastControls = function (last, penWidth) {\n var r = 0.5 * penWidth * last.pressure,\n nx = -r * last.uy,\n ny = r * last.ux;\n\n last.x1 = last.x + nx;\n last.y1 = last.y + ny;\n last.x2 = last.x - nx;\n last.y2 = last.y - ny;\n };\n\n // Export\n scope.AbstractRenderer = AbstractRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Text Renderer. It's used to calculate the text ink rendering in HTML5 canvas\n *\n * @class TextRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function TextRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n TextRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n TextRenderer.prototype.constructor = TextRenderer;\n\n /**\n * Draw text recognition result on HTML5 canvas. Scratch out results are use to redraw HTML5 Canvas\n *\n * @method drawRecognitionResult\n * @param {TextInputUnit[]} inputUnits\n * @param {TextDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n TextRenderer.prototype.drawRecognitionResult = function (inputUnits, recognitionResult, context, parameters) {\n this.drawInputUnits(inputUnits, context, parameters);\n };\n\n /**\n * Draw input units\n *\n * @method drawInputUnits\n * @param {TextInputUnit[]} inputUnits\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n TextRenderer.prototype.drawInputUnits = function (inputUnits, context, parameters) {\n for (var i in inputUnits) {\n this.drawComponents(inputUnits[i].getComponents(), context, parameters);\n }\n };\n\n /**\n * Draw components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n TextRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n scope.AbstractRenderer.prototype.drawStroke.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharacterInputComponent) {\n scope.AbstractRenderer.prototype.drawCharacter.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharInputComponent) {\n drawChar(component, context, parameters);\n } else if (component instanceof scope.StringInputComponent) {\n drawString(component, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n };\n\n /**\n * Draw char\n *\n * @private\n * @method drawChar\n * @param {CharInputComponent} char\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawChar = function (char, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw string\n *\n * @private\n * @method drawString\n * @param {StringInputComponent} string\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawString = function (string, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n // Export\n scope.TextRenderer = TextRenderer;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Represent the Shape Renderer. It's used to calculate the shape ink rendering in HTML5 canvas\n *\n * @class ShapeRenderer\n * @constructor\n */\n function ShapeRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n ShapeRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n ShapeRenderer.prototype.constructor = ShapeRenderer;\n\n /**\n * Draw shape recognition result on HTML5 canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {ShapeDocument} recognitionResult\n * @param {RenderingParameters} parameters\n * @param {Object} context\n */\n ShapeRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, parameters, context) {\n this.drawShapes(components, recognitionResult.getSegments(), parameters, context);\n };\n\n /**\n * Draw components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n scope.AbstractRenderer.prototype.drawStroke.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharacterInputComponent) {\n scope.AbstractRenderer.prototype.drawCharacter.call(this, component, context, parameters); // super\n } else if (component instanceof scope.ShapeEllipse) {\n this.drawShapeEllipse(component, context, parameters);\n } else if (component instanceof scope.ShapeLine) {\n this.drawShapeLine(component, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n };\n\n /**\n * Draw the shapes\n *\n * @method drawShapes\n * @param {AbstractComponent[]} components\n * @param {ShapeSegment[]} shapes\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapes = function (components, shapes, context, parameters) {\n\n for (var i in shapes) {\n var segment = shapes[i];\n var candidate = segment.getSelectedCandidate();\n\n if (candidate) {\n if (candidate instanceof scope.ShapeRecognized) {\n this.drawShapeRecognized(candidate, context, parameters);\n } else if (candidate instanceof scope.ShapeNotRecognized) {\n this.drawShapeNotRecognized(components, segment.getInkRanges(), candidate, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n }\n };\n\n /**\n * This method allow you to draw recognized shape\n *\n * @method drawShapeRecognized\n * @param {ShapeRecognized} shapeRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeRecognized = function (shapeRecognized, context, parameters) {\n\n var primitives = shapeRecognized.getPrimitives();\n\n for (var i in primitives) {\n this.drawShapePrimitive(primitives[i], context, parameters);\n }\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n var rectangleList = [];\n\n for (var j in primitives) {\n // Primitive bounding rect\n rectangleList.push(this.getPrimitiveBoundingBox(primitives[j]));\n }\n // Bounding rect of the entire shape\n var boundingRect = scope.MathUtils.getBoundingRect(rectangleList);\n this.drawRectangle(boundingRect, context, parameters);\n }\n };\n\n /**\n * This method allow you to draw not recognized shape\n *\n * @method drawShapeNotRecognized\n * @param {AbstractComponent[]} components\n * @param {ShapeInkRange[]} inkRanges\n * @param {ShapeNotRecognized} shapeNotRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeNotRecognized = function (components, inkRanges, shapeNotRecognized, context, parameters) {\n for (var i in inkRanges) {\n var extractedStrokes = this.extractStroke(components, inkRanges[i]);\n this.drawStrokes(extractedStrokes, context, parameters);\n }\n\n };\n\n /**\n * Draw shape primitive\n *\n * @method drawShapePrimitive\n * @param {AbstractShapePrimitive} primitive\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapePrimitive = function (primitive, context, parameters) {\n if (primitive instanceof scope.ShapeEllipse) {\n this.drawShapeEllipse(primitive, context, parameters);\n } else if (primitive instanceof scope.ShapeLine) {\n this.drawShapeLine(primitive, context, parameters);\n }\n };\n\n /**\n * Draw shape line\n *\n * @method drawShapeLine\n * @param {ShapeLine} shapeLine\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeLine = function (shapeLine, context, parameters) {\n\n this.drawLineByPoints(shapeLine.getFirstPoint(), shapeLine.getLastPoint(), context, parameters);\n\n if (shapeLine.hasBeginDecoration() && shapeLine.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getFirstPoint(), shapeLine.getBeginTangentAngle(), 12.0, context, parameters);\n }\n\n if (shapeLine.hasEndDecoration() && shapeLine.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getLastPoint(), shapeLine.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Draw an ellipse arc on context\n *\n * @method drawEllipseArc\n * @param {Point} centerPoint\n * @param {Number} maxRadius\n * @param {Number} minRadius\n * @param {String} orientation\n * @param {Number} startAngle\n * @param {Number} sweepAngle\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n * @returns {Point[]}\n */\n ShapeRenderer.prototype.drawEllipseArc = function (centerPoint, maxRadius, minRadius, orientation, startAngle, sweepAngle, context, parameters) {\n\n var angleStep = 0.02; // angle delta between interpolated\n\n var z1 = Math.cos(orientation);\n var z3 = Math.sin(orientation);\n var z2 = z1;\n var z4 = z3;\n z1 *= maxRadius;\n z2 *= minRadius;\n z3 *= maxRadius;\n z4 *= minRadius;\n\n var n = Math.floor(Math.abs(sweepAngle) / angleStep);\n\n var boundariesPoints = [];\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n\n for (var i = 0; i <= n; i++) {\n\n var angle = startAngle + (i / n) * sweepAngle; // points on the arc, in radian\n var alpha = Math.atan2(Math.sin(angle) / minRadius, Math.cos(angle) / maxRadius);\n\n var cosAlpha = Math.cos(alpha);\n var sinAlpha = Math.sin(alpha);\n\n // current point\n var x = centerPoint.x + z1 * cosAlpha - z4 * sinAlpha;\n var y = centerPoint.y + z2 * sinAlpha + z3 * cosAlpha;\n if (i === 0) {\n context.moveTo(x, y);\n } else {\n context.lineTo(x, y);\n }\n\n if (i === 0 || i === n) {\n boundariesPoints.push({x: x, y: y});\n }\n }\n\n context.stroke();\n\n } finally {\n context.restore();\n }\n\n return boundariesPoints;\n };\n\n /**\n * Draw shape ellipse\n *\n * @method drawShapeEllipse\n * @param {ShapeEllipse} shapeEllipse\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeEllipse = function (shapeEllipse, context, parameters) {\n\n var points = this.drawEllipseArc(\n shapeEllipse.getCenter(),\n shapeEllipse.getMaxRadius(),\n shapeEllipse.getMinRadius(),\n shapeEllipse.getOrientation(),\n shapeEllipse.getStartAngle(),\n shapeEllipse.getSweepAngle(),\n context, parameters);\n\n if (shapeEllipse.hasBeginDecoration() && shapeEllipse.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[0], shapeEllipse.getBeginTangentAngle(), 12.0, context, parameters);\n }\n\n if (shapeEllipse.hasEndDecoration() && shapeEllipse.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[1], shapeEllipse.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Get the bounding box of primitive\n *\n * @method getPrimitiveBoundingBox\n * @param {AbstractShapePrimitive} primitive\n * @returns {Object} the bounding box\n */\n ShapeRenderer.prototype.getPrimitiveBoundingBox = function (primitive) {\n var rectangle = null;\n if (primitive instanceof scope.ShapeEllipse) {\n rectangle = scope.MathUtils.getEllipseArcRect(primitive.getCenter(), primitive.getMaxRadius(), primitive.getMinRadius(), primitive.getOrientation(), primitive.getStartAngle(), primitive.getSweepAngle());\n } else if (primitive instanceof scope.ShapeLine) {\n rectangle = scope.MathUtils.getLineRect(primitive.getFirstPoint(), primitive.getLastPoint());\n }\n return rectangle;\n };\n\n // Export\n scope.ShapeRenderer = ShapeRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Math Renderer. It's used to calculate the math ink rendering in HTML5 canvas\n *\n * @class MathRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function MathRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n MathRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n MathRenderer.prototype.constructor = MathRenderer;\n\n /**\n * Draw math recognition result on HTML5 canvas. Scratch out results are use to redraw HTML5 Canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {MathDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MathRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) {\n var notScratchOutComponents = this.removeScratchOut(components, recognitionResult.getScratchOutResults());\n this.drawComponents(notScratchOutComponents, context, parameters);\n };\n\n /**\n * Remove scratch out from input components\n *\n * @param {AbstractComponent[]} components\n * @param {MathScratchOut[]} scratchOutResults\n * @returns {AbstractComponent[]} notScratchOutComponents\n */\n MathRenderer.prototype.removeScratchOut = function (components, scratchOutResults) {\n if (!scratchOutResults || scratchOutResults.length === 0) {\n return components;\n }\n\n var cloneComponents = components.slice(0);\n var componentsToRemove = [];\n\n for (var k in scratchOutResults) {\n if (scratchOutResults[k].getErasedInkRanges()) {\n for (var n in scratchOutResults[k].getErasedInkRanges()) {\n componentsToRemove.push(scratchOutResults[k].getErasedInkRanges()[n].getComponent());\n }\n for (var p in scratchOutResults[k].getInkRanges()) {\n componentsToRemove.push(scratchOutResults[k].getInkRanges()[p].getComponent());\n }\n }\n }\n\n componentsToRemove.sort(function (a, b) {\n return b - a;\n });\n\n for (var z in componentsToRemove) {\n cloneComponents.splice(componentsToRemove[z], 1);\n }\n return cloneComponents;\n };\n\n // Export\n scope.MathRenderer = MathRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Music Renderer. It's used to calculate the music ink rendering in HTML5 canvas\n *\n * @class MusicRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function MusicRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n MusicRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n MusicRenderer.prototype.constructor = MusicRenderer;\n\n /**\n * Draw music recognition result on HTML5 canvas. Scratch out results are use to redraw HTML5 Canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {MusicDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MusicRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) {\n var notScratchOutComponents = this.removeScratchOut(components, recognitionResult.getScratchOutResults());\n this.drawComponents(notScratchOutComponents, context, parameters);\n };\n\n /**\n * Remove scratch out from input components\n *\n * @param {AbstractComponent[]} components\n * @param {MusicScratchOut[]} scratchOutResults\n * @returns {AbstractComponent[]} notScratchOutComponents\n */\n MusicRenderer.prototype.removeScratchOut = function (components, scratchOutResults) {\n if (!scratchOutResults || scratchOutResults.length === 0) {\n return components;\n }\n\n var cloneComponents = components.slice(0);\n var componentsToRemove = [];\n\n for (var k in scratchOutResults) {\n if (scratchOutResults[k].getErasedInputRanges()) {\n for (var n in scratchOutResults[k].getErasedInputRanges()) {\n componentsToRemove.push(scratchOutResults[k].getErasedInputRanges()[n].getComponent());\n }\n for (var p in scratchOutResults[k].getInputRanges()) {\n componentsToRemove.push(scratchOutResults[k].getInputRanges()[p].getComponent());\n }\n }\n }\n\n componentsToRemove.sort(function (a, b) {\n return b - a;\n });\n\n for (var z in componentsToRemove) {\n cloneComponents.splice(componentsToRemove[z], 1);\n }\n return cloneComponents;\n };\n\n /**\n * Draw staff on the HTML5 canvas\n *\n * @method staffDrawing\n * @param {MusicStaff} staff\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MusicRenderer.prototype.drawStaff = function (staff, context, parameters) { // jshint ignore:line\n\n var staffHeight = staff.getTop() + ((staff.getCount() - 1) * staff.getGap());\n// var staves = Math.floor(context.canvas.clientHeight / staff.height);\n var staves = 1;\n\n context.beginPath();\n\n // Drawing horizontal staff lines\n for (var i = 0; i < staves; i++) {\n var offset = staffHeight * i;\n for (var j = 0; j < staff.getCount(); j++) {\n context.moveTo(0, (staff.getTop() + offset) + j * staff.getGap());\n context.lineTo(context.canvas.clientWidth, (staff.getTop() + offset) + j * staff.getGap());\n }\n }\n\n context.stroke();\n };\n\n /**\n * Draw components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MusicRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n scope.AbstractRenderer.prototype.drawStroke.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharacterInputComponent) {\n scope.AbstractRenderer.prototype.drawCharacter.call(this, component, context, parameters); // super\n } else if (component instanceof scope.MusicAccidentalInputComponent) {\n drawAccidental(component, context, parameters);\n } else if (component instanceof scope.MusicArpeggiateInputComponent) {\n drawArpeggiate(component, context, parameters);\n } else if (component instanceof scope.MusicBarInputComponent) {\n drawBar(component, context, parameters);\n } else if (component instanceof scope.MusicBeamInputComponent) {\n drawBeam(component, context, parameters);\n } else if (component instanceof scope.MusicClefInputComponent) {\n drawClef(component, context, parameters);\n } else if (component instanceof scope.MusicDecorationInputComponent) {\n drawDecoration(component, context, parameters);\n } else if (component instanceof scope.MusicDotsInputComponent) {\n drawDots(component, context, parameters);\n } else if (component instanceof scope.MusicHeadInputComponent) {\n drawHead(component, context, parameters);\n } else if (component instanceof scope.MusicLedgerLineInputComponent) {\n drawLedgerLine(component, context, parameters);\n } else if (component instanceof scope.MusicRestInputComponent) {\n drawRest(component, context, parameters);\n } else if (component instanceof scope.MusicStemInputComponent) {\n drawStem(component, context, parameters);\n } else if (component instanceof scope.MusicTieOrSlurInputComponent) {\n drawTieOrSlur(component, context, parameters);\n } else if (component instanceof scope.MusicTimeSignatureInputComponent) {\n drawTimeSignature(component, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n };\n\n /**\n * Draw accidental\n *\n * @private\n * @method drawAccidental\n * @param {MusicAccidentalInputComponent} accidental\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawAccidental = function (accidental, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw arpeggiate\n *\n * @private\n * @method drawArpeggiate\n * @param {MusicArpeggiateInputComponent} arpeggiate\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawArpeggiate = function (arpeggiate, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw bar\n *\n * @private\n * @method drawBar\n * @param {MusicBarInputComponent} bar\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawBar = function (bar, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw beam\n *\n * @private\n * @method drawBeam\n * @param {MusicBeamInputComponent} beam\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawBeam = function (beam, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw clef\n *\n * @private\n * @method drawClef\n * @param {MusicClefInputComponent} clef\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawClef = function (clef, context, parameters) { // jshint ignore:line\n var src = 'data:image/svg+xml,';\n switch (clef.getValue().getSymbol()) {\n case 'F':\n src = src + '';\n break;\n case 'C':\n src = src + '';\n break;\n case 'G':\n src = src + '';\n break;\n default:\n throw new Error('Unknown music clef symbol');\n }\n\n var imageObj = new Image();\n imageObj.onload = function () {\n var ratio = clef.getBoundingBox().getHeight() / this.height;\n clef.getBoundingBox().setWidth(this.width * ratio);\n context.drawImage(imageObj, clef.getBoundingBox().getX(), clef.getBoundingBox().getY(), clef.getBoundingBox().getWidth(), clef.getBoundingBox().getHeight());\n };\n imageObj.src = src;\n };\n\n /**\n * Draw decoration\n *\n * @private\n * @method drawDecoration\n * @param {MusicDecorationInputComponent} decoration\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawDecoration = function (decoration, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw dots\n *\n * @private\n * @method drawDots\n * @param {MusicDotsInputComponent} dots\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawDots = function (dots, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw head\n *\n * @private\n * @method drawHead\n * @param {MusicHeadInputComponent} head\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawHead = function (head, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw ledgerLine\n *\n * @private\n * @method drawLedgerLine\n * @param {MusicLedgerLineInputComponent} ledgerLine\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawLedgerLine = function (ledgerLine, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw rest\n *\n * @private\n * @method drawRest\n * @param {MusicRestInputComponent} rest\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawRest = function (rest, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw stem\n *\n * @private\n * @method drawStem\n * @param {MusicStemInputComponent} stem\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawStem = function (stem, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw tieOrSlur\n *\n * @private\n * @method drawTieOrSlur\n * @param {MusicTieOrSlurInputComponent} tieOrSlur\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawTieOrSlur = function (tieOrSlur, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw timeSignature\n *\n * @private\n * @method drawTimeSignature\n * @param {MusicTimeSignatureInputComponent} timeSignature\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawTimeSignature = function (timeSignature, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n // Export\n scope.MusicRenderer = MusicRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Analyzer Renderer. It's used to calculate the analyzer ink rendering in HTML5 canvas\n *\n * @class AnalyzerRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function AnalyzerRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n AnalyzerRenderer.prototype.constructor = AnalyzerRenderer;\n\n /**\n * Draw shape recognition result on HTML5 canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {AnalyzerDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) {\n this.drawShapes(components, recognitionResult.getShapes(), context, parameters);\n this.drawTables(components, recognitionResult.getTables(), context, parameters);\n this.drawTextLines(components, recognitionResult.getTextLines(), context, parameters);\n// this.drawGroups(strokes, recognitionResult.getGroups(), context, parameters); // TODO: not implemented\n };\n\n /**\n * Draw table\n *\n * @method drawTables\n * @param {AbstractComponent[]} components\n * @param {AnalyzerTable[]} tables\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawTables = function (components, tables, context, parameters) {\n for (var i in tables) {\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n for (var j in tables[i].getCells()) {\n this.drawCell(tables[i].getCells()[j], context, parameters);\n }\n }\n for (var k in tables[i].getLines()) {\n this.drawLine(tables[i].getLines()[k], context, parameters);\n }\n }\n };\n\n /**\n * Draw the text line\n *\n * @method drawTextLines\n * @param {AbstractComponent[]} components\n * @param {AnalyzerTextLine[]} textLines\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawTextLines = function (components, textLines, context, parameters) {\n\n for (var i in textLines) {\n var textLine = textLines[i];\n var data = textLine.getData();\n if (data) {\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n this.drawRectangle(data.getBoundingBox(), context, parameters);\n }\n\n var text = textLine.getTextDocument().getTextSegment().getSelectedCandidate().getLabel();\n this.drawText(data.getBoundingBox(), text, data.getJustificationType(), data.getTextHeight(), data.getBaselinePos(), context, parameters);\n\n var underlines = textLine.getUnderlineList();\n for (var j in underlines) {\n this.drawUnderline(data.getBoundingBox(), underlines[j], text, data.getTextHeight(), data.getBaselinePos() + data.getTextHeight() / 10, context, parameters);\n }\n }\n }\n };\n\n /**\n * Draw text on analyser\n *\n * @method drawText\n * @param {Rectangle} boundingBox\n * @param {String} text\n * @param {String} justificationType\n * @param {Number} textHeight\n * @param {Number} baseline\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawText = function (boundingBox, text, justificationType, textHeight, baseline, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n context.font = parameters.getDecoration() + textHeight + 'px ' + parameters.getFont();\n } else {\n context.fillStyle = this.getParameters().getColor();\n context.strokeStyle = this.getParameters().getColor();\n context.globalAlpha = this.getParameters().getAlpha();\n context.lineWidth = 0.5 * this.getParameters().getWidth();\n context.font = this.getParameters().getDecoration() + textHeight + 'px ' + this.parameters.getFont();\n }\n context.textAlign = (justificationType === 'CENTER') ? 'center' : 'left';\n\n context.fillText(text, boundingBox.getX(), baseline, boundingBox.getWidth());\n\n } finally {\n context.restore();\n }\n };\n\n /**\n * Draw Underline\n *\n * @method drawUnderline\n * @param {Rectangle} boundingBox\n * @param {AnalyzerUnderline} underline\n * @param {String} text\n * @param {Number} textHeight\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawUnderline = function (boundingBox, underline, text, textHeight, baseline, context, parameters) {\n var topLeft = boundingBox.getTopLeftPoint();\n var firstCharacter = underline.getData().getFirstCharacter();\n var lastCharacter = underline.getData().getLastCharacter();\n\n if (parameters) {\n context.font = parameters.getDecoration() + textHeight + 'px ' + parameters.getFont();\n } else {\n context.font = this.getParameters().getDecoration() + textHeight + 'px ' + this.parameters.getFont();\n }\n\n var textMetrics = context.measureText(text.substring(0, firstCharacter));\n var x1 = topLeft.x + textMetrics.width;\n\n textMetrics = context.measureText(text.substring(firstCharacter, lastCharacter + 1));\n var x2 = x1 + textMetrics.width;\n this.drawLine(new scope.AnalyzerLine({\n data: new scope.AnalyzerLineData({\n p1: {x: x1, y: baseline},\n p2: {x: x2, y: baseline}\n })\n }), context, parameters);\n };\n\n /**\n * Draw Groups\n *\n * @method drawGroups\n * @param {AbstractComponent[]} components\n * @param {AnalyzerGroup[]} groups\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawGroups = function (components, groups, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw a line\n *\n * @method drawLine\n * @param {AnalyzerLine} line\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawLine = function (line, context, parameters) {\n if (line.getData()) {\n this.drawLineByPoints(line.getData().getP1(), line.getData().getP2(), context, parameters);\n }\n };\n\n /**\n * Draw a cell\n *\n * @method drawCell\n * @param {AnalyzerCell} cell\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawCell = function (cell, context, parameters) {\n if (cell.getData()) {\n this.drawRectangle(cell.getData().getBoundingBox(), context, parameters);\n }\n };\n\n /**\n * Draw the shapes\n *\n * @method drawShapes\n * @param {AbstractComponent[]} components\n * @param {ShapeSegment[]} shapes\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapes = function (components, shapes, context, parameters) {\n\n for (var i in shapes) {\n var segment = shapes[i];\n var candidate = segment.getSelectedCandidate();\n\n if (candidate) {\n if (candidate instanceof scope.ShapeRecognized) {\n this.drawShapeRecognized(candidate, context, parameters);\n } else if (candidate instanceof scope.ShapeNotRecognized) {\n this.drawShapeNotRecognized(components, segment.getInkRanges(), candidate, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n }\n };\n\n /**\n * This method allow you to draw recognized shape\n *\n * @method drawShapeRecognized\n * @param {ShapeRecognized} shapeRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeRecognized = function (shapeRecognized, context, parameters) {\n\n var primitives = shapeRecognized.getPrimitives();\n\n for (var i in primitives) {\n this.drawShapePrimitive(primitives[i], context, parameters);\n }\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n var rectangleList = [];\n\n for (var j in primitives) {\n // Primitive bounding rect\n rectangleList.push(this.getPrimitiveBoundingBox(primitives[j]));\n }\n // Bounding rect of the entire shape\n var boundingRect = scope.MathUtils.getBoundingRect(rectangleList);\n this.drawRectangle(boundingRect, context, parameters);\n }\n };\n\n /**\n * This method allow you to draw not recognized shape\n *\n * @method drawShapeNotRecognized\n * @param {AbstractComponent[]} components\n * @param {AnalyzerInkRange[]} inkRanges\n * @param {ShapeNotRecognized} shapeNotRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeNotRecognized = function (components, inkRanges, shapeNotRecognized, context, parameters) {\n for (var i in inkRanges) {\n var extractedStrokes = this.extractStroke(components, inkRanges[i]);\n this.drawStrokes(extractedStrokes, context, parameters);\n }\n\n };\n\n /**\n * Draw shape primitive\n *\n * @method drawShapePrimitive\n * @param {AbstractShapePrimitive} primitive\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapePrimitive = function (primitive, context, parameters) {\n if (primitive instanceof scope.ShapeEllipse) {\n this.drawShapeEllipse(primitive, context, parameters);\n } else if (primitive instanceof scope.ShapeLine) {\n this.drawShapeLine(primitive, context, parameters);\n }\n };\n\n /**\n * Draw shape line\n *\n * @method drawShapeLine\n * @param {ShapeLine} shapeLine\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeLine = function (shapeLine, context, parameters) {\n\n this.drawLineByPoints(shapeLine.getFirstPoint(), shapeLine.getLastPoint(), context, parameters);\n if (shapeLine.hasBeginDecoration() && shapeLine.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getFirstPoint(), shapeLine.getBeginTangentAngle(), 12.0, context, parameters);\n }\n if (shapeLine.hasEndDecoration() && shapeLine.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getLastPoint(), shapeLine.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Draw an ellipse arc on context\n *\n * @method drawEllipseArc\n * @param {Point} centerPoint\n * @param {Number} maxRadius\n * @param {Number} minRadius\n * @param {String} orientation\n * @param {Number} startAngle\n * @param {Number} sweepAngle\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n * @returns {Point[]}\n */\n AnalyzerRenderer.prototype.drawEllipseArc = function (centerPoint, maxRadius, minRadius, orientation, startAngle, sweepAngle, context, parameters) {\n\n var angleStep = 0.02; // angle delta between interpolated\n\n var z1 = Math.cos(orientation);\n var z3 = Math.sin(orientation);\n var z2 = z1;\n var z4 = z3;\n z1 *= maxRadius;\n z2 *= minRadius;\n z3 *= maxRadius;\n z4 *= minRadius;\n\n var n = Math.floor(Math.abs(sweepAngle) / angleStep);\n\n var boundariesPoints = [];\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.getParameters().getColor();\n context.strokeStyle = this.getParameters().getColor();\n context.globalAlpha = this.getParameters().getAlpha();\n context.lineWidth = 0.5 * this.getParameters().getWidth();\n }\n\n context.beginPath();\n\n for (var i = 0; i <= n; i++) {\n\n var angle = startAngle + (i / n) * sweepAngle; // points on the arc, in radian\n var alpha = Math.atan2(Math.sin(angle) / minRadius, Math.cos(angle) / maxRadius);\n\n var cosAlpha = Math.cos(alpha);\n var sinAlpha = Math.sin(alpha);\n\n // current point\n var x = centerPoint.x + z1 * cosAlpha - z4 * sinAlpha;\n var y = centerPoint.y + z2 * sinAlpha + z3 * cosAlpha;\n if (i === 0) {\n context.moveTo(x, y);\n } else {\n context.lineTo(x, y);\n }\n\n if (i === 0 || i === n) {\n boundariesPoints.push({x: x, y: y});\n }\n }\n\n context.stroke();\n\n } finally {\n context.restore();\n }\n\n return boundariesPoints;\n };\n\n /**\n * Draw shape ellipse\n *\n * @method drawShapeEllipse\n * @param {ShapeEllipse} shapeEllipse\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeEllipse = function (shapeEllipse, context, parameters) {\n\n var points = this.drawEllipseArc(\n shapeEllipse.getCenter(),\n shapeEllipse.getMaxRadius(),\n shapeEllipse.getMinRadius(),\n shapeEllipse.getOrientation(),\n shapeEllipse.getStartAngle(),\n shapeEllipse.getSweepAngle(),\n context, parameters);\n\n if (shapeEllipse.hasBeginDecoration() && shapeEllipse.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[0], shapeEllipse.getBeginTangentAngle(), 12.0, context, parameters);\n }\n if (shapeEllipse.hasEndDecoration() && shapeEllipse.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[1], shapeEllipse.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Get the bounding box of primitive\n *\n * @method getPrimitiveBoundingBox\n * @param {AbstractShapePrimitive} primitive\n * @returns {Rectangle} rectangle\n */\n AnalyzerRenderer.prototype.getPrimitiveBoundingBox = function (primitive) {\n var rectangle = null;\n if (primitive instanceof scope.ShapeEllipse) {\n rectangle = scope.MathUtils.getEllipseArcRect(primitive.getCenter(), primitive.getMaxRadius(), primitive.getMinRadius(), primitive.getOrientation(), primitive.getStartAngle(), primitive.getSweepAngle());\n } else if (primitive instanceof scope.ShapeLine) {\n rectangle = scope.MathUtils.getLineRect(primitive.getFirstPoint(), primitive.getLastPoint());\n }\n return rectangle;\n };\n\n // Export\n scope.AnalyzerRenderer = AnalyzerRenderer;\n})(MyScript);"]} \ No newline at end of file diff --git a/dist/myscript.min.js b/dist/myscript.min.js index 3ab1ea8b..f66d60f4 100644 --- a/dist/myscript.min.js +++ b/dist/myscript.min.js @@ -1,14 +1,12 @@ /* myscript - MyScriptJS is a free and open-source JavaScript library providing the easiest way to use MyScript Cloud handwriting recognition in your web app - Version: 1.0.6 + Version: 1.0.7 License: Apache-2.0 */ -MyScript={},function(scope){function Point(obj){obj&&(this.x=obj.x,this.y=obj.y)}Point.prototype.getX=function(){return this.x},Point.prototype.setX=function(x){this.x=x},Point.prototype.getY=function(){return this.y},Point.prototype.setY=function(y){this.y=y},scope.Point=Point}(MyScript),function(scope){function QuadraticPoint(obj){scope.Point.call(this,obj),this.pressure=.5,this.distance=0,this.length=0,this.ux=0,this.uy=0,this.x1=0,this.x2=0,this.y1=0,this.y2=0}QuadraticPoint.prototype=new scope.Point,QuadraticPoint.prototype.constructor=QuadraticPoint,QuadraticPoint.prototype.getPressure=function(){return this.pressure},QuadraticPoint.prototype.setPressure=function(pressure){this.pressure=pressure},QuadraticPoint.prototype.getDistance=function(){return this.distance},QuadraticPoint.prototype.setDistance=function(distance){this.distance=distance},QuadraticPoint.prototype.getLength=function(){return this.length},QuadraticPoint.prototype.setLength=function(length){this.length=length},QuadraticPoint.prototype.getUx=function(){return this.ux},QuadraticPoint.prototype.setUx=function(ux){this.ux=ux},QuadraticPoint.prototype.getUy=function(){return this.uy},QuadraticPoint.prototype.setUy=function(uy){this.uy=uy},QuadraticPoint.prototype.getX1=function(){return this.x1},QuadraticPoint.prototype.setX1=function(x1){this.x1=x1},QuadraticPoint.prototype.getX2=function(){return this.x2},QuadraticPoint.prototype.setX2=function(x2){this.x2=x2},QuadraticPoint.prototype.getY1=function(){return this.y1},QuadraticPoint.prototype.setY1=function(y1){this.y1=y1},QuadraticPoint.prototype.getY2=function(){return this.y2},QuadraticPoint.prototype.setY2=function(y2){this.y2=y2},scope.QuadraticPoint=QuadraticPoint}(MyScript),function(scope){function Rectangle(obj){obj&&(this.x=obj.x,this.y=obj.y,this.width=obj.width,this.height=obj.height)}Rectangle.prototype.getX=function(){return this.x},Rectangle.prototype.setX=function(x){this.x=x},Rectangle.prototype.getY=function(){return this.y},Rectangle.prototype.setY=function(y){this.y=y},Rectangle.prototype.getTopLeftPoint=function(){var point=new scope.Point;return point.setX(this.x),point.setY(this.y),point},Rectangle.prototype.setTopLeftPoint=function(topLeftPoint){this.x=topLeftPoint.getX(),this.y=topLeftPoint.getY()},Rectangle.prototype.getWidth=function(){return this.width},Rectangle.prototype.setWidth=function(width){this.width=width},Rectangle.prototype.getHeight=function(){return this.height},Rectangle.prototype.setHeight=function(height){this.height=height},scope.Rectangle=Rectangle}(MyScript),function(scope){function InkManager(){this.writing=!1,this.strokes=[],this.currentStroke=null,this.undoRedoStack=[]}InkManager.prototype.isWriting=function(){return this.writing},InkManager.prototype.getCurrentStroke=function(){return this.currentStroke},InkManager.prototype.startInkCapture=function(x,y,t){if(this.writing)throw new Error("Stroke capture already running");this.currentStroke=new scope.Stroke,this.currentStroke.addX(x),this.currentStroke.addY(y),this.currentStroke.addT(t),this.writing=!0},InkManager.prototype.continueInkCapture=function(x,y,t){if(!this.writing)throw new Error("Missing startInkCapture");this.currentStroke.addX(x),this.currentStroke.addY(y),this.currentStroke.addT(t)},InkManager.prototype.endInkCapture=function(){if(!this.writing)throw new Error("Missing startInkCapture");this.strokes.push(this.currentStroke),this.writing=!1},InkManager.prototype.clear=function(){this.writing=!1,this.strokes=[],this.currentStroke=null,this.undoRedoStack=[]},InkManager.prototype.isEmpty=function(){return 0===this.strokes.length},InkManager.prototype.isRedoEmpty=function(){return 0===this.undoRedoStack.length},InkManager.prototype.undo=function(){this.isEmpty()||(this.undoRedoStack.push(this.strokes[this.strokes.length-1]),this.strokes.pop())},InkManager.prototype.redo=function(){this.isRedoEmpty()||(this.strokes.push(this.undoRedoStack[this.undoRedoStack.length-1]),this.undoRedoStack.pop())},InkManager.prototype.getStrokes=function(){return this.strokes},InkManager.prototype.getUndoRedoStack=function(){return this.undoRedoStack},InkManager.prototype.clearUndoRedoStack=function(){this.undoRedoStack=[]},InkManager.prototype.copy=function(strokes,index){for(index;index=i;i++)angle=startAngle+i/n*sweepAngle,alpha=Math.atan2(Math.sin(angle)/minRadius,Math.cos(angle)/maxRadius),cosAlpha=Math.cos(alpha),sinAlpha=Math.sin(alpha),x=center.x+z1*cosAlpha-z4*sinAlpha,y=center.y+z2*sinAlpha+z3*cosAlpha,xList.push(x),yList.push(y);return xList.sort(sortFloat),yList.sort(sortFloat),xMin=xList[0],xMax=xList[xList.length-1],yMin=yList[0],yMax=yList[yList.length-1],new scope.Rectangle({x:xMin,y:yMin,width:xMax-xMin,height:yMax-yMin})},MathUtils.getLineRect=function(firstPoint,lastPoint){var xFirst=firstPoint.x,xLast=lastPoint.x,xMin=Math.min(xFirst,xLast),xMax=Math.max(xFirst,xLast),yFirst=firstPoint.y,yLast=lastPoint.y,yMin=Math.min(yFirst,yLast),yMax=Math.max(yFirst,yLast);return new scope.Rectangle({x:xMin,y:yMin,width:xMax-xMin,height:yMax-yMin})},MathUtils.getBoundingRect=function(boundingBoxes){var xList=[],yList=[];for(var i in boundingBoxes){var rectangle=boundingBoxes[i];xList.push(rectangle.getX()),xList.push(rectangle.getX()+rectangle.getWidth()),yList.push(rectangle.getY()),yList.push(rectangle.getY()+rectangle.getHeight())}var xMin=Math.min.apply(Math,xList),xMax=Math.max.apply(Math,xList),yMin=Math.min.apply(Math,yList),yMax=Math.max.apply(Math,yList);return new scope.Rectangle({x:xMin,y:yMin,width:xMax-xMin,height:yMax-yMin})},scope.MathUtils=MathUtils}(MyScript),function(scope){function AbstractWSMessage(obj){obj&&(this.type=obj.type)}AbstractWSMessage.prototype.getType=function(){return this.type},scope.AbstractWSMessage=AbstractWSMessage}(MyScript),function(scope){function AbstractComponent(){}AbstractComponent.prototype.getType=function(){return this.type},AbstractComponent.prototype.setType=function(type){if("string"!=typeof type)throw new Error("Invalid param type");this.type=type},scope.AbstractComponent=AbstractComponent}(MyScript),function(scope){function Stroke(){this.type="stroke",this.x=[],this.y=[],this.t=[]}Stroke.prototype=new scope.AbstractComponent,Stroke.prototype.constructor=Stroke,Stroke.prototype.getX=function(){return this.x},Stroke.prototype.setX=function(x){this.x=x},Stroke.prototype.addX=function(x){null!==x&&void 0!==x&&this.x.push(x)},Stroke.prototype.getY=function(){return this.y},Stroke.prototype.setY=function(y){this.y=y},Stroke.prototype.addY=function(y){null!==y&&void 0!==y&&this.y.push(y)},Stroke.prototype.getT=function(){return this.t},Stroke.prototype.setT=function(t){this.t=t},Stroke.prototype.addT=function(t){null!==t&&void 0!==t&&this.t.push(t)},Stroke.prototype.getLength=function(){return this.x.length},Stroke.prototype.getBoundingBox=function(){var boundingBox=new scope.Rectangle;return boundingBox.setX(Math.min.apply(Math,this.getX())),boundingBox.setY(Math.min.apply(Math,this.getY())),boundingBox.setWidth(Math.max.apply(Math,this.getX())-boundingBox.getX()),boundingBox.setHeight(Math.max.apply(Math,this.getY())-boundingBox.getY()),boundingBox},scope.Stroke=Stroke}(MyScript),function(scope){function CharacterInputComponent(){this.type="inputCharacter",this.alternates=[]}CharacterInputComponent.prototype=new scope.AbstractComponent,CharacterInputComponent.prototype.constructor=CharacterInputComponent,CharacterInputComponent.prototype.getAlternates=function(){return this.alternates},CharacterInputComponent.prototype.setAlternates=function(alternates){this.alternates=alternates},CharacterInputComponent.prototype.addAlternate=function(alternate){this.alternates.push(alternate)},CharacterInputComponent.prototype.getBoundingBox=function(){return this.boundingBox},CharacterInputComponent.prototype.setBoundingBox=function(boundingBox){this.boundingBox=boundingBox},scope.CharacterInputComponent=CharacterInputComponent}(MyScript),function(scope){function CharacterInputComponentAlternate(alternate,probability){this.alternate=alternate,this.probability=probability}CharacterInputComponentAlternate.prototype.getAlternate=function(){return this.alternate},CharacterInputComponentAlternate.prototype.setAlternate=function(alternate){this.alternate=alternate},CharacterInputComponentAlternate.prototype.getProbability=function(){return this.probability},CharacterInputComponentAlternate.prototype.setProbability=function(probability){this.probability=probability},scope.CharacterInputComponentAlternate=CharacterInputComponentAlternate}(MyScript),function(scope){function AbstractParameter(){}scope.AbstractParameter=AbstractParameter}(MyScript),function(scope){function AbstractRecognitionInput(){}scope.AbstractRecognitionInput=AbstractRecognitionInput}(MyScript),function(scope){function AbstractRecognitionData(){}AbstractRecognitionData.prototype.getApplicationKey=function(){return this.applicationKey},AbstractRecognitionData.prototype.setApplicationKey=function(applicationKey){this.applicationKey=applicationKey},AbstractRecognitionData.prototype.getInstanceId=function(){return this.instanceId},AbstractRecognitionData.prototype.setInstanceId=function(instanceId){this.instanceId=instanceId},AbstractRecognitionData.prototype.getHmac=function(){return this.hmac},AbstractRecognitionData.prototype.setHmac=function(hmac){this.hmac=hmac},scope.AbstractRecognitionData=AbstractRecognitionData}(MyScript),function(scope){function RecognitionLanguagesData(){}RecognitionLanguagesData.prototype=new scope.AbstractRecognitionData,RecognitionLanguagesData.prototype.constructor=RecognitionLanguagesData,RecognitionLanguagesData.prototype.getInputMode=function(){return this.inputMode},RecognitionLanguagesData.prototype.setInputMode=function(inputMode){this.inputMode=inputMode},scope.RecognitionLanguagesData=RecognitionLanguagesData}(MyScript),function(scope){function AbstractStartRequestWSMessage(obj){this.type="start",scope.AbstractWSMessage.call(this,obj)}AbstractStartRequestWSMessage.prototype=new scope.AbstractWSMessage,AbstractStartRequestWSMessage.prototype.constructor=AbstractStartRequestWSMessage,scope.AbstractStartRequestWSMessage=AbstractStartRequestWSMessage}(MyScript),function(scope){function AbstractContinueRequestWSMessage(obj){this.type="continue",scope.AbstractWSMessage.call(this,obj)}AbstractContinueRequestWSMessage.prototype=new scope.AbstractWSMessage,AbstractContinueRequestWSMessage.prototype.constructor=AbstractContinueRequestWSMessage,AbstractContinueRequestWSMessage.prototype.getInstanceId=function(){return this.instanceId},AbstractContinueRequestWSMessage.prototype.setInstanceId=function(instanceId){this.instanceId=instanceId},scope.AbstractContinueRequestWSMessage=AbstractContinueRequestWSMessage}(MyScript),function(scope){function ChallengeRequestWSMessage(obj){this.type="hmac",scope.AbstractWSMessage.call(this,obj)}ChallengeRequestWSMessage.prototype=new scope.AbstractWSMessage,ChallengeRequestWSMessage.prototype.constructor=ChallengeRequestWSMessage,ChallengeRequestWSMessage.prototype.getChallenge=function(){return this.challenge},ChallengeRequestWSMessage.prototype.setChallenge=function(challenge){this.challenge=challenge},ChallengeRequestWSMessage.prototype.getApplicationKey=function(){return this.applicationKey},ChallengeRequestWSMessage.prototype.setApplicationKey=function(applicationKey){this.applicationKey=applicationKey},ChallengeRequestWSMessage.prototype.getHmacSignature=function(){return this.hmac},ChallengeRequestWSMessage.prototype.setHmacSignature=function(hmac){this.hmac=hmac},scope.ChallengeRequestWSMessage=ChallengeRequestWSMessage}(MyScript),function(scope){function InitRequestWSMessage(obj){this.type="applicationKey",scope.AbstractWSMessage.call(this,obj)}InitRequestWSMessage.prototype=new scope.AbstractWSMessage,InitRequestWSMessage.prototype.constructor=InitRequestWSMessage,InitRequestWSMessage.prototype.getApplicationKey=function(){return this.applicationKey},InitRequestWSMessage.prototype.setApplicationKey=function(applicationKey){this.applicationKey=applicationKey},scope.InitRequestWSMessage=InitRequestWSMessage}(MyScript),function(scope){function ResetRequestWSMessage(obj){this.type="reset",scope.AbstractWSMessage.call(this,obj)}ResetRequestWSMessage.prototype=new scope.AbstractWSMessage,ResetRequestWSMessage.prototype.constructor=ResetRequestWSMessage,scope.ResetRequestWSMessage=ResetRequestWSMessage}(MyScript),function(scope){function AbstractTextInputComponent(){}AbstractTextInputComponent.prototype=new scope.AbstractComponent,AbstractTextInputComponent.prototype.constructor=AbstractTextInputComponent,AbstractTextInputComponent.prototype.getBoundingBox=function(){return this.boundingBox},AbstractTextInputComponent.prototype.setBoundingBox=function(boundingBox){this.boundingBox=boundingBox},scope.AbstractTextInputComponent=AbstractTextInputComponent}(MyScript),function(scope){function CharInputComponent(){this.type="char"}CharInputComponent.prototype=new scope.AbstractTextInputComponent,CharInputComponent.prototype.constructor=CharInputComponent,CharInputComponent.prototype.getCharacter=function(){return this.character},CharInputComponent.prototype.setCharacter=function(character){this.character=character},scope.CharInputComponent=CharInputComponent}(MyScript),function(scope){function StringInputComponent(){this.type="string"}StringInputComponent.prototype=new scope.AbstractTextInputComponent,StringInputComponent.prototype.constructor=StringInputComponent,StringInputComponent.prototype.getString=function(){return this.string},StringInputComponent.prototype.setString=function(string){this.string=string},scope.StringInputComponent=StringInputComponent}(MyScript),function(scope){function TextInputUnit(){this.textInputType="MULTI_LINE_TEXT",this.components=[]}TextInputUnit.prototype.getInputType=function(){return this.textInputType},TextInputUnit.prototype.setInputType=function(inputType){this.textInputType=inputType},TextInputUnit.prototype.getComponents=function(inkRange){return inkRange&&inkRange instanceof scope.TextInkRange?this.components.slice(inkRange.getStartComponent(),inkRange.getEndComponent()+1):this.components},TextInputUnit.prototype.setComponents=function(components){this.components=components},scope.TextInputUnit=TextInputUnit}(MyScript),function(scope){function TextParameter(obj){scope.AbstractParameter.call(this,obj)}TextParameter.prototype=new scope.AbstractParameter,TextParameter.prototype.constructor=TextParameter,TextParameter.prototype.getLanguage=function(){return this.language},TextParameter.prototype.setLanguage=function(language){this.language=language},TextParameter.prototype.getInputMode=function(){return this.textInputMode},TextParameter.prototype.setInputMode=function(inputMode){this.textInputMode=inputMode},TextParameter.prototype.getContentTypes=function(){return this.contentTypes},TextParameter.prototype.setContentTypes=function(contentTypes){this.contentTypes=contentTypes},TextParameter.prototype.getSubsetKnowledges=function(){return this.subsetKnowledges},TextParameter.prototype.setSubsetKnowledges=function(subsetKnowledges){this.subsetKnowledges=subsetKnowledges},TextParameter.prototype.getUserResources=function(){return this.userResources},TextParameter.prototype.setUserResources=function(userResources){this.userResources=userResources},TextParameter.prototype.getUserLkWords=function(){return this.userLkWords},TextParameter.prototype.setUserLkWords=function(userLkWords){this.userLkWords=userLkWords},TextParameter.prototype.getResultDetail=function(){return this.resultDetail},TextParameter.prototype.setResultDetail=function(resultDetail){this.resultDetail=resultDetail},TextParameter.prototype.getTextProperties=function(){return this.textProperties},TextParameter.prototype.setTextProperties=function(textProperties){this.textProperties=textProperties},scope.TextParameter=TextParameter}(MyScript),function(scope){function TextProperties(){}TextProperties.prototype.getTextCandidateListSize=function(){return this.textCandidateListSize},TextProperties.prototype.setTextCandidateListSize=function(textCandidateListSize){this.textCandidateListSize=textCandidateListSize},TextProperties.prototype.getWordCandidateListSize=function(){return this.wordCandidateListSize},TextProperties.prototype.setWordCandidateListSize=function(wordCandidateListSize){this.wordCandidateListSize=wordCandidateListSize},TextProperties.prototype.getWordPredictionListSize=function(){return this.wordPredictionListSize},TextProperties.prototype.setWordPredictionListSize=function(wordPredictionListSize){this.wordPredictionListSize=wordPredictionListSize},TextProperties.prototype.getWordCompletionListSize=function(){return this.wordCompletionListSize},TextProperties.prototype.setWordCompletionListSize=function(wordCompletionListSize){this.wordCompletionListSize=wordCompletionListSize},TextProperties.prototype.getCharacterCandidateListSize=function(){return this.characterCandidateListSize},TextProperties.prototype.setCharacterCandidateListSize=function(characterCandidateListSize){this.characterCandidateListSize=characterCandidateListSize},TextProperties.prototype.getDiscardCaseVariations=function(){return this.discardCaseVariations},TextProperties.prototype.setDiscardCaseVariations=function(discardCaseVariations){this.discardCaseVariations=discardCaseVariations},TextProperties.prototype.getDiscardAccentuationVariations=function(){return this.discardAccentuationVariations},TextProperties.prototype.setDiscardAccentuationVariations=function(discardAccentuationVariations){this.discardAccentuationVariations=discardAccentuationVariations},TextProperties.prototype.getDisableSpatialOrdering=function(){return this.disableSpatialOrdering},TextProperties.prototype.setDisableSpatialOrdering=function(disableSpatialOrdering){this.disableSpatialOrdering=disableSpatialOrdering},TextProperties.prototype.getGlyphDistortion=function(){return this.glyphDistortion},TextProperties.prototype.setGlyphDistortion=function(glyphDistortion){this.glyphDistortion=glyphDistortion},TextProperties.prototype.getEnableOutOfLexicon=function(){return this.enableOutOfLexicon},TextProperties.prototype.setEnableOutOfLexicon=function(enableOutOfLexicon){this.enableOutOfLexicon=enableOutOfLexicon},TextProperties.prototype.getSpellingDistortion=function(){return this.spellingDistortion},TextProperties.prototype.setSpellingDistortion=function(spellingDistortion){this.spellingDistortion=spellingDistortion},scope.TextProperties=TextProperties}(MyScript),function(scope){function TextRecognitionInput(){}TextRecognitionInput.prototype=new scope.AbstractRecognitionInput,TextRecognitionInput.prototype.constructor=TextRecognitionInput,TextRecognitionInput.prototype.getParameters=function(){return this.textParameter},TextRecognitionInput.prototype.setParameters=function(parameters){this.textParameter=parameters},TextRecognitionInput.prototype.getInputUnits=function(inkRange){return inkRange&&inkRange instanceof scope.TextInkRange?this.inputUnits.slice(inkRange.getStartUnit(),inkRange.getEndUnit()+1):this.inputUnits},TextRecognitionInput.prototype.setInputUnits=function(inputUnits){this.inputUnits=inputUnits},scope.TextRecognitionInput=TextRecognitionInput}(MyScript),function(scope){function TextRecognitionData(){}TextRecognitionData.prototype=new scope.AbstractRecognitionData,TextRecognitionData.prototype.constructor=TextRecognitionData,TextRecognitionData.prototype.getTextRecognitionInput=function(){return this.textInput},TextRecognitionData.prototype.setTextRecognitionInput=function(input){this.textInput=JSON.stringify(input)},scope.TextRecognitionData=TextRecognitionData}(MyScript),function(scope){function TextStartRequestWSMessage(obj){scope.AbstractStartRequestWSMessage.call(this,obj)}TextStartRequestWSMessage.prototype=new scope.AbstractStartRequestWSMessage,TextStartRequestWSMessage.prototype.constructor=TextStartRequestWSMessage,TextStartRequestWSMessage.prototype.getParameters=function(){return this.textParameter},TextStartRequestWSMessage.prototype.setParameters=function(parameters){this.textParameter=parameters},TextStartRequestWSMessage.prototype.getInputUnits=function(){return this.inputUnits},TextStartRequestWSMessage.prototype.setInputUnits=function(inputUnits){this.inputUnits=inputUnits},scope.TextStartRequestWSMessage=TextStartRequestWSMessage}(MyScript),function(scope){function TextContinueRequestWSMessage(obj){scope.AbstractContinueRequestWSMessage.call(this,obj)}TextContinueRequestWSMessage.prototype=new scope.AbstractContinueRequestWSMessage,TextContinueRequestWSMessage.prototype.constructor=TextContinueRequestWSMessage,TextContinueRequestWSMessage.prototype.getInputUnits=function(){return this.inputUnits},TextContinueRequestWSMessage.prototype.setInputUnits=function(inputUnits){this.inputUnits=inputUnits},scope.TextContinueRequestWSMessage=TextContinueRequestWSMessage}(MyScript),function(scope){function ShapeParameter(obj){scope.AbstractParameter.call(this,obj)}ShapeParameter.prototype=new scope.AbstractParameter,ShapeParameter.prototype.constructor=ShapeParameter,ShapeParameter.prototype.getRejectDetectionSensitivity=function(){return this.rejectDetectionSensitivity},ShapeParameter.prototype.setRejectDetectionSensitivity=function(rejectDetectionSensitivity){this.rejectDetectionSensitivity=rejectDetectionSensitivity},ShapeParameter.prototype.hasBeautification=function(){return this.doBeautification},ShapeParameter.prototype.setBeautification=function(doBeautification){this.doBeautification=doBeautification},ShapeParameter.prototype.getUserResources=function(){return this.userResources},ShapeParameter.prototype.setUserResources=function(userResources){this.userResources=userResources},scope.ShapeParameter=ShapeParameter}(MyScript),function(scope){function ShapeRecognitionInput(){}ShapeRecognitionInput.prototype=new scope.AbstractRecognitionInput,ShapeRecognitionInput.prototype.constructor=ShapeRecognitionInput,ShapeRecognitionInput.prototype.getComponents=function(){return this.components},ShapeRecognitionInput.prototype.setComponents=function(components){this.components=components},ShapeRecognitionInput.prototype.getDoBeautification=function(){return this.doBeautification},ShapeRecognitionInput.prototype.setDoBeautification=function(doBeautification){this.doBeautification=doBeautification},ShapeRecognitionInput.prototype.getRejectDetectionSensitivity=function(){return this.rejectDetectionSensitivity},ShapeRecognitionInput.prototype.setRejectDetectionSensitivity=function(rejectDetectionSensitivity){this.rejectDetectionSensitivity=rejectDetectionSensitivity},scope.ShapeRecognitionInput=ShapeRecognitionInput}(MyScript),function(scope){function ShapeRecognitionData(){}ShapeRecognitionData.prototype=new scope.AbstractRecognitionData,ShapeRecognitionData.prototype.constructor=ShapeRecognitionData,ShapeRecognitionData.prototype.getShapeRecognitionInput=function(){return this.shapeInput},ShapeRecognitionData.prototype.setShapeRecognitionInput=function(input){this.shapeInput=JSON.stringify(input)},scope.ShapeRecognitionData=ShapeRecognitionData}(MyScript),function(scope){function MathParameter(obj){scope.AbstractParameter.call(this,obj),this.resultTypes=[],this.userResources=[]}MathParameter.prototype=new scope.AbstractParameter,MathParameter.prototype.constructor=MathParameter,MathParameter.prototype.getResultTypes=function(){return this.resultTypes},MathParameter.prototype.setResultTypes=function(resultTypes){this.resultTypes=resultTypes},MathParameter.prototype.isColumnar=function(){return this.columnarOperation},MathParameter.prototype.setColumnar=function(columnar){this.columnarOperation=columnar},MathParameter.prototype.getUserResources=function(){return this.userResources},MathParameter.prototype.setUserResources=function(userResources){this.userResources=userResources},MathParameter.prototype.getScratchOutDetectionSensitivity=function(){return this.scratchOutDetectionSensitivity},MathParameter.prototype.setScratchOutDetectionSensitivity=function(scratchOutDetectionSensitivity){this.scratchOutDetectionSensitivity=scratchOutDetectionSensitivity},scope.MathParameter=MathParameter}(MyScript),function(scope){function MathRecognitionInput(){}MathRecognitionInput.prototype=new scope.AbstractRecognitionInput,MathRecognitionInput.prototype.constructor=MathRecognitionInput,MathRecognitionInput.prototype.getComponents=function(){return this.components},MathRecognitionInput.prototype.setComponents=function(components){this.components=components},MathRecognitionInput.prototype.getResultTypes=function(){return this.resultTypes},MathRecognitionInput.prototype.setResultTypes=function(resultTypes){this.resultTypes=resultTypes},MathRecognitionInput.prototype.isColumnar=function(){return this.columnarOperation},MathRecognitionInput.prototype.setColumnar=function(columnar){this.columnarOperation=columnar},MathRecognitionInput.prototype.getUserResources=function(){return this.userResources},MathRecognitionInput.prototype.setUserResources=function(userResources){this.userResources=userResources},MathRecognitionInput.prototype.getScratchOutDetectionSensitivity=function(){return this.scratchOutDetectionSensitivity},MathRecognitionInput.prototype.setScratchOutDetectionSensitivity=function(scratchOutDetectionSensitivity){this.scratchOutDetectionSensitivity=scratchOutDetectionSensitivity},scope.MathRecognitionInput=MathRecognitionInput}(MyScript),function(scope){function MathRecognitionData(){}MathRecognitionData.prototype=new scope.AbstractRecognitionData,MathRecognitionData.prototype.constructor=MathRecognitionData,MathRecognitionData.prototype.getMathRecognitionInput=function(){return this.mathInput},MathRecognitionData.prototype.setMathRecognitionInput=function(input){this.mathInput=JSON.stringify(input)},scope.MathRecognitionData=MathRecognitionData}(MyScript),function(scope){function MathStartRequestWSMessage(obj){scope.AbstractStartRequestWSMessage.call(this,obj)}MathStartRequestWSMessage.prototype=new scope.AbstractStartRequestWSMessage,MathStartRequestWSMessage.prototype.constructor=MathStartRequestWSMessage,MathStartRequestWSMessage.prototype.getParameters=function(){return this.parameters},MathStartRequestWSMessage.prototype.setParameters=function(parameters){this.parameters=parameters},MathStartRequestWSMessage.prototype.getComponents=function(){return this.components},MathStartRequestWSMessage.prototype.setComponents=function(components){this.components=components},scope.MathStartRequestWSMessage=MathStartRequestWSMessage}(MyScript),function(scope){function MathContinueRequestWSMessage(obj){this.type="continue",scope.AbstractContinueRequestWSMessage.call(this,obj)}MathContinueRequestWSMessage.prototype=new scope.AbstractContinueRequestWSMessage,MathContinueRequestWSMessage.prototype.constructor=MathContinueRequestWSMessage,MathContinueRequestWSMessage.prototype.getComponents=function(){return this.components},MathContinueRequestWSMessage.prototype.setComponents=function(components){this.components=components},scope.MathContinueRequestWSMessage=MathContinueRequestWSMessage}(MyScript),function(scope){function AbstractMusicInputComponent(){}AbstractMusicInputComponent.prototype=new scope.AbstractComponent,AbstractMusicInputComponent.prototype.constructor=AbstractMusicInputComponent,AbstractMusicInputComponent.prototype.getBoundingBox=function(){return this.boundingBox},AbstractMusicInputComponent.prototype.setBoundingBox=function(boundingBox){this.boundingBox=boundingBox},scope.AbstractMusicInputComponent=AbstractMusicInputComponent}(MyScript),function(scope){function MusicAccidentalInputComponent(){this.type="accidental"}MusicAccidentalInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicAccidentalInputComponent.prototype.constructor=MusicAccidentalInputComponent,MusicAccidentalInputComponent.prototype.getValue=function(){return this.value},MusicAccidentalInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicAccidentalInputComponent=MusicAccidentalInputComponent}(MyScript),function(scope){function MusicArpeggiateInputComponent(){this.type="arpeggiate"}MusicArpeggiateInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicArpeggiateInputComponent.prototype.constructor=MusicArpeggiateInputComponent,MusicArpeggiateInputComponent.prototype.getValue=function(){return this.value},MusicArpeggiateInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicArpeggiateInputComponent=MusicArpeggiateInputComponent}(MyScript),function(scope){function MusicBarInput(){}MusicBarInput.prototype.getRepeatDirection=function(){return this.repeatDirection},MusicBarInput.prototype.setRepeatDirection=function(repeatDirection){this.repeatDirection=repeatDirection},MusicBarInput.prototype.getStyle=function(){return this.style},MusicBarInput.prototype.setStyle=function(style){this.style=style},scope.MusicBarInput=MusicBarInput}(MyScript),function(scope){function MusicBarInputComponent(){this.type="bar",this.value=new scope.MusicBarInput}MusicBarInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicBarInputComponent.prototype.constructor=MusicBarInputComponent,MusicBarInputComponent.prototype.getValue=function(){return this.value},MusicBarInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicBarInputComponent=MusicBarInputComponent}(MyScript),function(scope){function MusicBeamInput(){}MusicBeamInput.prototype.getPlacement=function(){return this.placement},MusicBeamInput.prototype.setPlacement=function(placement){this.placement=placement},MusicBeamInput.prototype.getSlope=function(){return this.slope},MusicBeamInput.prototype.setSlope=function(slope){this.slope=slope},MusicBeamInput.prototype.getLeftCount=function(){return this.leftCount},MusicBeamInput.prototype.setLeftCount=function(leftCount){this.leftCount=leftCount},MusicBeamInput.prototype.getRightCount=function(){return this.rightCount},MusicBeamInput.prototype.setRightCount=function(rightCount){this.rightCount=rightCount},MusicBeamInput.prototype.getGap=function(){return this.gap},MusicBeamInput.prototype.setGap=function(gap){this.gap=gap},scope.MusicBeamInput=MusicBeamInput}(MyScript),function(scope){function MusicBeamInputComponent(){this.type="beam",this.value=new scope.MusicBeamInput}MusicBeamInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicBeamInputComponent.prototype.constructor=MusicBeamInputComponent,MusicBeamInputComponent.prototype.getValue=function(){return this.value},MusicBeamInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicBeamInputComponent=MusicBeamInputComponent}(MyScript),function(scope){function MusicClefInput(){this.symbol="G",this.octave=0}MusicClefInput.prototype.getYAnchor=function(){return this.yAnchor},MusicClefInput.prototype.setYAnchor=function(yAnchor){this.yAnchor=yAnchor},MusicClefInput.prototype.getOctave=function(){return this.octave},MusicClefInput.prototype.setOctave=function(octave){this.octave=octave},MusicClefInput.prototype.getSymbol=function(){return this.symbol},MusicClefInput.prototype.setSymbol=function(symbol){this.symbol=symbol},scope.MusicClefInput=MusicClefInput}(MyScript),function(scope){function MusicClefInputComponent(){this.type="clef",this.value=new scope.MusicClefInput}MusicClefInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicClefInputComponent.prototype.constructor=MusicClefInputComponent, +MyScript={},function(scope){function Point(obj){obj&&(this.x=obj.x,this.y=obj.y)}Point.prototype.getX=function(){return this.x},Point.prototype.setX=function(x){this.x=x},Point.prototype.getY=function(){return this.y},Point.prototype.setY=function(y){this.y=y},scope.Point=Point}(MyScript),function(scope){function QuadraticPoint(obj){scope.Point.call(this,obj),this.pressure=.5,this.distance=0,this.length=0,this.ux=0,this.uy=0,this.x1=0,this.x2=0,this.y1=0,this.y2=0}QuadraticPoint.prototype=new scope.Point,QuadraticPoint.prototype.constructor=QuadraticPoint,QuadraticPoint.prototype.getPressure=function(){return this.pressure},QuadraticPoint.prototype.setPressure=function(pressure){this.pressure=pressure},QuadraticPoint.prototype.getDistance=function(){return this.distance},QuadraticPoint.prototype.setDistance=function(distance){this.distance=distance},QuadraticPoint.prototype.getLength=function(){return this.length},QuadraticPoint.prototype.setLength=function(length){this.length=length},QuadraticPoint.prototype.getUx=function(){return this.ux},QuadraticPoint.prototype.setUx=function(ux){this.ux=ux},QuadraticPoint.prototype.getUy=function(){return this.uy},QuadraticPoint.prototype.setUy=function(uy){this.uy=uy},QuadraticPoint.prototype.getX1=function(){return this.x1},QuadraticPoint.prototype.setX1=function(x1){this.x1=x1},QuadraticPoint.prototype.getX2=function(){return this.x2},QuadraticPoint.prototype.setX2=function(x2){this.x2=x2},QuadraticPoint.prototype.getY1=function(){return this.y1},QuadraticPoint.prototype.setY1=function(y1){this.y1=y1},QuadraticPoint.prototype.getY2=function(){return this.y2},QuadraticPoint.prototype.setY2=function(y2){this.y2=y2},scope.QuadraticPoint=QuadraticPoint}(MyScript),function(scope){function Rectangle(obj){obj&&(this.x=obj.x,this.y=obj.y,this.width=obj.width,this.height=obj.height)}Rectangle.prototype.getX=function(){return this.x},Rectangle.prototype.setX=function(x){this.x=x},Rectangle.prototype.getY=function(){return this.y},Rectangle.prototype.setY=function(y){this.y=y},Rectangle.prototype.getTopLeftPoint=function(){var point=new scope.Point;return point.setX(this.x),point.setY(this.y),point},Rectangle.prototype.setTopLeftPoint=function(topLeftPoint){this.x=topLeftPoint.getX(),this.y=topLeftPoint.getY()},Rectangle.prototype.getWidth=function(){return this.width},Rectangle.prototype.setWidth=function(width){this.width=width},Rectangle.prototype.getHeight=function(){return this.height},Rectangle.prototype.setHeight=function(height){this.height=height},scope.Rectangle=Rectangle}(MyScript),function(scope){function InkManager(){this.writing=!1,this.strokes=[],this.currentStroke=null,this.undoRedoStack=[]}InkManager.prototype.isWriting=function(){return this.writing},InkManager.prototype.getCurrentStroke=function(){return this.currentStroke},InkManager.prototype.startInkCapture=function(x,y,t){if(this.writing)throw new Error("Stroke capture already running");this.isRedoEmpty()&&this.clearUndoRedoStack(),this.currentStroke=new scope.Stroke,this.currentStroke.addX(x),this.currentStroke.addY(y),this.currentStroke.addT(t),this.writing=!0},InkManager.prototype.continueInkCapture=function(x,y,t){if(!this.writing)throw new Error("Missing startInkCapture");this.currentStroke.addX(x),this.currentStroke.addY(y),this.currentStroke.addT(t)},InkManager.prototype.endInkCapture=function(){if(!this.writing)throw new Error("Missing startInkCapture");this.strokes.push(this.currentStroke),this.writing=!1},InkManager.prototype.clear=function(){this.writing=!1,this.strokes=[],this.currentStroke=null,this.undoRedoStack=[]},InkManager.prototype.isEmpty=function(){return 0===this.strokes.length},InkManager.prototype.isRedoEmpty=function(){return 0===this.undoRedoStack.length},InkManager.prototype.undo=function(){this.isEmpty()||(this.undoRedoStack.push(this.strokes[this.strokes.length-1]),this.strokes.pop())},InkManager.prototype.redo=function(){this.isRedoEmpty()||(this.strokes.push(this.undoRedoStack[this.undoRedoStack.length-1]),this.undoRedoStack.pop())},InkManager.prototype.getStrokes=function(){return this.strokes},InkManager.prototype.getUndoRedoStack=function(){return this.undoRedoStack},InkManager.prototype.clearUndoRedoStack=function(){this.undoRedoStack=[]},InkManager.prototype.copy=function(strokes,index){for(index;index=i;i++)angle=startAngle+i/n*sweepAngle,alpha=Math.atan2(Math.sin(angle)/minRadius,Math.cos(angle)/maxRadius),cosAlpha=Math.cos(alpha),sinAlpha=Math.sin(alpha),x=center.x+z1*cosAlpha-z4*sinAlpha,y=center.y+z2*sinAlpha+z3*cosAlpha,xList.push(x),yList.push(y);return xList.sort(sortFloat),yList.sort(sortFloat),xMin=xList[0],xMax=xList[xList.length-1],yMin=yList[0],yMax=yList[yList.length-1],new scope.Rectangle({x:xMin,y:yMin,width:xMax-xMin,height:yMax-yMin})},MathUtils.getLineRect=function(firstPoint,lastPoint){var xFirst=firstPoint.x,xLast=lastPoint.x,xMin=Math.min(xFirst,xLast),xMax=Math.max(xFirst,xLast),yFirst=firstPoint.y,yLast=lastPoint.y,yMin=Math.min(yFirst,yLast),yMax=Math.max(yFirst,yLast);return new scope.Rectangle({x:xMin,y:yMin,width:xMax-xMin,height:yMax-yMin})},MathUtils.getBoundingRect=function(boundingBoxes){var xList=[],yList=[];for(var i in boundingBoxes){var rectangle=boundingBoxes[i];xList.push(rectangle.getX()),xList.push(rectangle.getX()+rectangle.getWidth()),yList.push(rectangle.getY()),yList.push(rectangle.getY()+rectangle.getHeight())}var xMin=Math.min.apply(Math,xList),xMax=Math.max.apply(Math,xList),yMin=Math.min.apply(Math,yList),yMax=Math.max.apply(Math,yList);return new scope.Rectangle({x:xMin,y:yMin,width:xMax-xMin,height:yMax-yMin})},scope.MathUtils=MathUtils}(MyScript),function(scope){function AbstractWSMessage(obj){obj&&(this.type=obj.type)}AbstractWSMessage.prototype.getType=function(){return this.type},scope.AbstractWSMessage=AbstractWSMessage}(MyScript),function(scope){function AbstractComponent(){}AbstractComponent.prototype.getType=function(){return this.type},AbstractComponent.prototype.setType=function(type){if("string"!=typeof type)throw new Error("Invalid param type");this.type=type},scope.AbstractComponent=AbstractComponent}(MyScript),function(scope){function Stroke(){this.type="stroke",this.x=[],this.y=[],this.t=[]}Stroke.prototype=new scope.AbstractComponent,Stroke.prototype.constructor=Stroke,Stroke.prototype.getX=function(){return this.x},Stroke.prototype.setX=function(x){this.x=x},Stroke.prototype.addX=function(x){null!==x&&void 0!==x&&this.x.push(x)},Stroke.prototype.getY=function(){return this.y},Stroke.prototype.setY=function(y){this.y=y},Stroke.prototype.addY=function(y){null!==y&&void 0!==y&&this.y.push(y)},Stroke.prototype.getT=function(){return this.t},Stroke.prototype.setT=function(t){this.t=t},Stroke.prototype.addT=function(t){null!==t&&void 0!==t&&this.t.push(t)},Stroke.prototype.getLength=function(){return this.x.length},Stroke.prototype.getBoundingBox=function(){var boundingBox=new scope.Rectangle;return boundingBox.setX(Math.min.apply(Math,this.getX())),boundingBox.setY(Math.min.apply(Math,this.getY())),boundingBox.setWidth(Math.max.apply(Math,this.getX())-boundingBox.getX()),boundingBox.setHeight(Math.max.apply(Math,this.getY())-boundingBox.getY()),boundingBox},scope.Stroke=Stroke}(MyScript),function(scope){function CharacterInputComponent(){this.type="inputCharacter",this.alternates=[]}CharacterInputComponent.prototype=new scope.AbstractComponent,CharacterInputComponent.prototype.constructor=CharacterInputComponent,CharacterInputComponent.prototype.getAlternates=function(){return this.alternates},CharacterInputComponent.prototype.setAlternates=function(alternates){this.alternates=alternates},CharacterInputComponent.prototype.addAlternate=function(alternate){this.alternates.push(alternate)},CharacterInputComponent.prototype.getBoundingBox=function(){return this.boundingBox},CharacterInputComponent.prototype.setBoundingBox=function(boundingBox){this.boundingBox=boundingBox},scope.CharacterInputComponent=CharacterInputComponent}(MyScript),function(scope){function CharacterInputComponentAlternate(alternate,probability){this.alternate=alternate,this.probability=probability}CharacterInputComponentAlternate.prototype.getAlternate=function(){return this.alternate},CharacterInputComponentAlternate.prototype.setAlternate=function(alternate){this.alternate=alternate},CharacterInputComponentAlternate.prototype.getProbability=function(){return this.probability},CharacterInputComponentAlternate.prototype.setProbability=function(probability){this.probability=probability},scope.CharacterInputComponentAlternate=CharacterInputComponentAlternate}(MyScript),function(scope){function AbstractParameter(){}scope.AbstractParameter=AbstractParameter}(MyScript),function(scope){function AbstractRecognitionInput(){}scope.AbstractRecognitionInput=AbstractRecognitionInput}(MyScript),function(scope){function AbstractRecognitionData(){}AbstractRecognitionData.prototype.getApplicationKey=function(){return this.applicationKey},AbstractRecognitionData.prototype.setApplicationKey=function(applicationKey){this.applicationKey=applicationKey},AbstractRecognitionData.prototype.getInstanceId=function(){return this.instanceId},AbstractRecognitionData.prototype.setInstanceId=function(instanceId){this.instanceId=instanceId},AbstractRecognitionData.prototype.getHmac=function(){return this.hmac},AbstractRecognitionData.prototype.setHmac=function(hmac){this.hmac=hmac},scope.AbstractRecognitionData=AbstractRecognitionData}(MyScript),function(scope){function RecognitionLanguagesData(){}RecognitionLanguagesData.prototype=new scope.AbstractRecognitionData,RecognitionLanguagesData.prototype.constructor=RecognitionLanguagesData,RecognitionLanguagesData.prototype.getInputMode=function(){return this.inputMode},RecognitionLanguagesData.prototype.setInputMode=function(inputMode){this.inputMode=inputMode},scope.RecognitionLanguagesData=RecognitionLanguagesData}(MyScript),function(scope){function AbstractStartRequestWSMessage(obj){this.type="start",scope.AbstractWSMessage.call(this,obj)}AbstractStartRequestWSMessage.prototype=new scope.AbstractWSMessage,AbstractStartRequestWSMessage.prototype.constructor=AbstractStartRequestWSMessage,scope.AbstractStartRequestWSMessage=AbstractStartRequestWSMessage}(MyScript),function(scope){function AbstractContinueRequestWSMessage(obj){this.type="continue",scope.AbstractWSMessage.call(this,obj)}AbstractContinueRequestWSMessage.prototype=new scope.AbstractWSMessage,AbstractContinueRequestWSMessage.prototype.constructor=AbstractContinueRequestWSMessage,AbstractContinueRequestWSMessage.prototype.getInstanceId=function(){return this.instanceId},AbstractContinueRequestWSMessage.prototype.setInstanceId=function(instanceId){this.instanceId=instanceId},scope.AbstractContinueRequestWSMessage=AbstractContinueRequestWSMessage}(MyScript),function(scope){function ChallengeRequestWSMessage(obj){this.type="hmac",scope.AbstractWSMessage.call(this,obj)}ChallengeRequestWSMessage.prototype=new scope.AbstractWSMessage,ChallengeRequestWSMessage.prototype.constructor=ChallengeRequestWSMessage,ChallengeRequestWSMessage.prototype.getChallenge=function(){return this.challenge},ChallengeRequestWSMessage.prototype.setChallenge=function(challenge){this.challenge=challenge},ChallengeRequestWSMessage.prototype.getApplicationKey=function(){return this.applicationKey},ChallengeRequestWSMessage.prototype.setApplicationKey=function(applicationKey){this.applicationKey=applicationKey},ChallengeRequestWSMessage.prototype.getHmacSignature=function(){return this.hmac},ChallengeRequestWSMessage.prototype.setHmacSignature=function(hmac){this.hmac=hmac},scope.ChallengeRequestWSMessage=ChallengeRequestWSMessage}(MyScript),function(scope){function InitRequestWSMessage(obj){this.type="applicationKey",scope.AbstractWSMessage.call(this,obj)}InitRequestWSMessage.prototype=new scope.AbstractWSMessage,InitRequestWSMessage.prototype.constructor=InitRequestWSMessage,InitRequestWSMessage.prototype.getApplicationKey=function(){return this.applicationKey},InitRequestWSMessage.prototype.setApplicationKey=function(applicationKey){this.applicationKey=applicationKey},scope.InitRequestWSMessage=InitRequestWSMessage}(MyScript),function(scope){function ResetRequestWSMessage(obj){this.type="reset",scope.AbstractWSMessage.call(this,obj)}ResetRequestWSMessage.prototype=new scope.AbstractWSMessage,ResetRequestWSMessage.prototype.constructor=ResetRequestWSMessage,scope.ResetRequestWSMessage=ResetRequestWSMessage}(MyScript),function(scope){function AbstractTextInputComponent(){}AbstractTextInputComponent.prototype=new scope.AbstractComponent,AbstractTextInputComponent.prototype.constructor=AbstractTextInputComponent,AbstractTextInputComponent.prototype.getBoundingBox=function(){return this.boundingBox},AbstractTextInputComponent.prototype.setBoundingBox=function(boundingBox){this.boundingBox=boundingBox},scope.AbstractTextInputComponent=AbstractTextInputComponent}(MyScript),function(scope){function CharInputComponent(){this.type="char"}CharInputComponent.prototype=new scope.AbstractTextInputComponent,CharInputComponent.prototype.constructor=CharInputComponent,CharInputComponent.prototype.getCharacter=function(){return this.character},CharInputComponent.prototype.setCharacter=function(character){this.character=character},scope.CharInputComponent=CharInputComponent}(MyScript),function(scope){function StringInputComponent(){this.type="string"}StringInputComponent.prototype=new scope.AbstractTextInputComponent,StringInputComponent.prototype.constructor=StringInputComponent,StringInputComponent.prototype.getString=function(){return this.string},StringInputComponent.prototype.setString=function(string){this.string=string},scope.StringInputComponent=StringInputComponent}(MyScript),function(scope){function TextInputUnit(){this.textInputType="MULTI_LINE_TEXT",this.components=[]}TextInputUnit.prototype.getInputType=function(){return this.textInputType},TextInputUnit.prototype.setInputType=function(inputType){this.textInputType=inputType},TextInputUnit.prototype.getComponents=function(inkRange){return inkRange&&inkRange instanceof scope.TextInkRange?this.components.slice(inkRange.getStartComponent(),inkRange.getEndComponent()+1):this.components},TextInputUnit.prototype.setComponents=function(components){this.components=components},scope.TextInputUnit=TextInputUnit}(MyScript),function(scope){function TextParameter(obj){scope.AbstractParameter.call(this,obj)}TextParameter.prototype=new scope.AbstractParameter,TextParameter.prototype.constructor=TextParameter,TextParameter.prototype.getLanguage=function(){return this.language},TextParameter.prototype.setLanguage=function(language){this.language=language},TextParameter.prototype.getInputMode=function(){return this.textInputMode},TextParameter.prototype.setInputMode=function(inputMode){this.textInputMode=inputMode},TextParameter.prototype.getContentTypes=function(){return this.contentTypes},TextParameter.prototype.setContentTypes=function(contentTypes){this.contentTypes=contentTypes},TextParameter.prototype.getSubsetKnowledges=function(){return this.subsetKnowledges},TextParameter.prototype.setSubsetKnowledges=function(subsetKnowledges){this.subsetKnowledges=subsetKnowledges},TextParameter.prototype.getUserResources=function(){return this.userResources},TextParameter.prototype.setUserResources=function(userResources){this.userResources=userResources},TextParameter.prototype.getUserLkWords=function(){return this.userLkWords},TextParameter.prototype.setUserLkWords=function(userLkWords){this.userLkWords=userLkWords},TextParameter.prototype.getResultDetail=function(){return this.resultDetail},TextParameter.prototype.setResultDetail=function(resultDetail){this.resultDetail=resultDetail},TextParameter.prototype.getTextProperties=function(){return this.textProperties},TextParameter.prototype.setTextProperties=function(textProperties){this.textProperties=textProperties},scope.TextParameter=TextParameter}(MyScript),function(scope){function TextProperties(){}TextProperties.prototype.getTextCandidateListSize=function(){return this.textCandidateListSize},TextProperties.prototype.setTextCandidateListSize=function(textCandidateListSize){this.textCandidateListSize=textCandidateListSize},TextProperties.prototype.getWordCandidateListSize=function(){return this.wordCandidateListSize},TextProperties.prototype.setWordCandidateListSize=function(wordCandidateListSize){this.wordCandidateListSize=wordCandidateListSize},TextProperties.prototype.getWordPredictionListSize=function(){return this.wordPredictionListSize},TextProperties.prototype.setWordPredictionListSize=function(wordPredictionListSize){this.wordPredictionListSize=wordPredictionListSize},TextProperties.prototype.getWordCompletionListSize=function(){return this.wordCompletionListSize},TextProperties.prototype.setWordCompletionListSize=function(wordCompletionListSize){this.wordCompletionListSize=wordCompletionListSize},TextProperties.prototype.getCharacterCandidateListSize=function(){return this.characterCandidateListSize},TextProperties.prototype.setCharacterCandidateListSize=function(characterCandidateListSize){this.characterCandidateListSize=characterCandidateListSize},TextProperties.prototype.getDiscardCaseVariations=function(){return this.discardCaseVariations},TextProperties.prototype.setDiscardCaseVariations=function(discardCaseVariations){this.discardCaseVariations=discardCaseVariations},TextProperties.prototype.getDiscardAccentuationVariations=function(){return this.discardAccentuationVariations},TextProperties.prototype.setDiscardAccentuationVariations=function(discardAccentuationVariations){this.discardAccentuationVariations=discardAccentuationVariations},TextProperties.prototype.getDisableSpatialOrdering=function(){return this.disableSpatialOrdering},TextProperties.prototype.setDisableSpatialOrdering=function(disableSpatialOrdering){this.disableSpatialOrdering=disableSpatialOrdering},TextProperties.prototype.getGlyphDistortion=function(){return this.glyphDistortion},TextProperties.prototype.setGlyphDistortion=function(glyphDistortion){this.glyphDistortion=glyphDistortion},TextProperties.prototype.getEnableOutOfLexicon=function(){return this.enableOutOfLexicon},TextProperties.prototype.setEnableOutOfLexicon=function(enableOutOfLexicon){this.enableOutOfLexicon=enableOutOfLexicon},TextProperties.prototype.getSpellingDistortion=function(){return this.spellingDistortion},TextProperties.prototype.setSpellingDistortion=function(spellingDistortion){this.spellingDistortion=spellingDistortion},scope.TextProperties=TextProperties}(MyScript),function(scope){function TextRecognitionInput(){}TextRecognitionInput.prototype=new scope.AbstractRecognitionInput,TextRecognitionInput.prototype.constructor=TextRecognitionInput,TextRecognitionInput.prototype.getParameters=function(){return this.textParameter},TextRecognitionInput.prototype.setParameters=function(parameters){this.textParameter=parameters},TextRecognitionInput.prototype.getInputUnits=function(inkRange){return inkRange&&inkRange instanceof scope.TextInkRange?this.inputUnits.slice(inkRange.getStartUnit(),inkRange.getEndUnit()+1):this.inputUnits},TextRecognitionInput.prototype.setInputUnits=function(inputUnits){this.inputUnits=inputUnits},scope.TextRecognitionInput=TextRecognitionInput}(MyScript),function(scope){function TextRecognitionData(){}TextRecognitionData.prototype=new scope.AbstractRecognitionData,TextRecognitionData.prototype.constructor=TextRecognitionData,TextRecognitionData.prototype.getTextRecognitionInput=function(){return this.textInput},TextRecognitionData.prototype.setTextRecognitionInput=function(input){this.textInput=JSON.stringify(input)},scope.TextRecognitionData=TextRecognitionData}(MyScript),function(scope){function TextStartRequestWSMessage(obj){scope.AbstractStartRequestWSMessage.call(this,obj)}TextStartRequestWSMessage.prototype=new scope.AbstractStartRequestWSMessage,TextStartRequestWSMessage.prototype.constructor=TextStartRequestWSMessage,TextStartRequestWSMessage.prototype.getParameters=function(){return this.textParameter},TextStartRequestWSMessage.prototype.setParameters=function(parameters){this.textParameter=parameters},TextStartRequestWSMessage.prototype.getInputUnits=function(){return this.inputUnits},TextStartRequestWSMessage.prototype.setInputUnits=function(inputUnits){this.inputUnits=inputUnits},scope.TextStartRequestWSMessage=TextStartRequestWSMessage}(MyScript),function(scope){function TextContinueRequestWSMessage(obj){scope.AbstractContinueRequestWSMessage.call(this,obj)}TextContinueRequestWSMessage.prototype=new scope.AbstractContinueRequestWSMessage,TextContinueRequestWSMessage.prototype.constructor=TextContinueRequestWSMessage,TextContinueRequestWSMessage.prototype.getInputUnits=function(){return this.inputUnits},TextContinueRequestWSMessage.prototype.setInputUnits=function(inputUnits){this.inputUnits=inputUnits},scope.TextContinueRequestWSMessage=TextContinueRequestWSMessage}(MyScript),function(scope){function ShapeParameter(obj){scope.AbstractParameter.call(this,obj)}ShapeParameter.prototype=new scope.AbstractParameter,ShapeParameter.prototype.constructor=ShapeParameter,ShapeParameter.prototype.getRejectDetectionSensitivity=function(){return this.rejectDetectionSensitivity},ShapeParameter.prototype.setRejectDetectionSensitivity=function(rejectDetectionSensitivity){this.rejectDetectionSensitivity=rejectDetectionSensitivity},ShapeParameter.prototype.hasBeautification=function(){return this.doBeautification},ShapeParameter.prototype.setBeautification=function(doBeautification){this.doBeautification=doBeautification},ShapeParameter.prototype.getUserResources=function(){return this.userResources},ShapeParameter.prototype.setUserResources=function(userResources){this.userResources=userResources},scope.ShapeParameter=ShapeParameter}(MyScript),function(scope){function ShapeRecognitionInput(){}ShapeRecognitionInput.prototype=new scope.AbstractRecognitionInput,ShapeRecognitionInput.prototype.constructor=ShapeRecognitionInput,ShapeRecognitionInput.prototype.getComponents=function(){return this.components},ShapeRecognitionInput.prototype.setComponents=function(components){this.components=components},ShapeRecognitionInput.prototype.getDoBeautification=function(){return this.doBeautification},ShapeRecognitionInput.prototype.setDoBeautification=function(doBeautification){this.doBeautification=doBeautification},ShapeRecognitionInput.prototype.getRejectDetectionSensitivity=function(){return this.rejectDetectionSensitivity},ShapeRecognitionInput.prototype.setRejectDetectionSensitivity=function(rejectDetectionSensitivity){this.rejectDetectionSensitivity=rejectDetectionSensitivity},scope.ShapeRecognitionInput=ShapeRecognitionInput}(MyScript),function(scope){function ShapeRecognitionData(){}ShapeRecognitionData.prototype=new scope.AbstractRecognitionData,ShapeRecognitionData.prototype.constructor=ShapeRecognitionData,ShapeRecognitionData.prototype.getShapeRecognitionInput=function(){return this.shapeInput},ShapeRecognitionData.prototype.setShapeRecognitionInput=function(input){this.shapeInput=JSON.stringify(input)},scope.ShapeRecognitionData=ShapeRecognitionData}(MyScript),function(scope){function MathParameter(obj){scope.AbstractParameter.call(this,obj),this.resultTypes=[],this.userResources=[]}MathParameter.prototype=new scope.AbstractParameter,MathParameter.prototype.constructor=MathParameter,MathParameter.prototype.getResultTypes=function(){return this.resultTypes},MathParameter.prototype.setResultTypes=function(resultTypes){this.resultTypes=resultTypes},MathParameter.prototype.isColumnar=function(){return this.columnarOperation},MathParameter.prototype.setColumnar=function(columnar){this.columnarOperation=columnar},MathParameter.prototype.getUserResources=function(){return this.userResources},MathParameter.prototype.setUserResources=function(userResources){this.userResources=userResources},MathParameter.prototype.getScratchOutDetectionSensitivity=function(){return this.scratchOutDetectionSensitivity},MathParameter.prototype.setScratchOutDetectionSensitivity=function(scratchOutDetectionSensitivity){this.scratchOutDetectionSensitivity=scratchOutDetectionSensitivity},scope.MathParameter=MathParameter}(MyScript),function(scope){function MathRecognitionInput(){}MathRecognitionInput.prototype=new scope.AbstractRecognitionInput,MathRecognitionInput.prototype.constructor=MathRecognitionInput,MathRecognitionInput.prototype.getComponents=function(){return this.components},MathRecognitionInput.prototype.setComponents=function(components){this.components=components},MathRecognitionInput.prototype.getResultTypes=function(){return this.resultTypes},MathRecognitionInput.prototype.setResultTypes=function(resultTypes){this.resultTypes=resultTypes},MathRecognitionInput.prototype.isColumnar=function(){return this.columnarOperation},MathRecognitionInput.prototype.setColumnar=function(columnar){this.columnarOperation=columnar},MathRecognitionInput.prototype.getUserResources=function(){return this.userResources},MathRecognitionInput.prototype.setUserResources=function(userResources){this.userResources=userResources},MathRecognitionInput.prototype.getScratchOutDetectionSensitivity=function(){return this.scratchOutDetectionSensitivity},MathRecognitionInput.prototype.setScratchOutDetectionSensitivity=function(scratchOutDetectionSensitivity){this.scratchOutDetectionSensitivity=scratchOutDetectionSensitivity},scope.MathRecognitionInput=MathRecognitionInput}(MyScript),function(scope){function MathRecognitionData(){}MathRecognitionData.prototype=new scope.AbstractRecognitionData,MathRecognitionData.prototype.constructor=MathRecognitionData,MathRecognitionData.prototype.getMathRecognitionInput=function(){return this.mathInput},MathRecognitionData.prototype.setMathRecognitionInput=function(input){this.mathInput=JSON.stringify(input)},scope.MathRecognitionData=MathRecognitionData}(MyScript),function(scope){function MathStartRequestWSMessage(obj){scope.AbstractStartRequestWSMessage.call(this,obj)}MathStartRequestWSMessage.prototype=new scope.AbstractStartRequestWSMessage,MathStartRequestWSMessage.prototype.constructor=MathStartRequestWSMessage,MathStartRequestWSMessage.prototype.getParameters=function(){return this.parameters},MathStartRequestWSMessage.prototype.setParameters=function(parameters){this.parameters=parameters},MathStartRequestWSMessage.prototype.getComponents=function(){return this.components},MathStartRequestWSMessage.prototype.setComponents=function(components){this.components=components},scope.MathStartRequestWSMessage=MathStartRequestWSMessage}(MyScript),function(scope){function MathContinueRequestWSMessage(obj){this.type="continue",scope.AbstractContinueRequestWSMessage.call(this,obj)}MathContinueRequestWSMessage.prototype=new scope.AbstractContinueRequestWSMessage,MathContinueRequestWSMessage.prototype.constructor=MathContinueRequestWSMessage,MathContinueRequestWSMessage.prototype.getComponents=function(){return this.components},MathContinueRequestWSMessage.prototype.setComponents=function(components){this.components=components},scope.MathContinueRequestWSMessage=MathContinueRequestWSMessage}(MyScript),function(scope){function AbstractMusicInputComponent(){}AbstractMusicInputComponent.prototype=new scope.AbstractComponent,AbstractMusicInputComponent.prototype.constructor=AbstractMusicInputComponent,AbstractMusicInputComponent.prototype.getBoundingBox=function(){return this.boundingBox},AbstractMusicInputComponent.prototype.setBoundingBox=function(boundingBox){this.boundingBox=boundingBox},scope.AbstractMusicInputComponent=AbstractMusicInputComponent}(MyScript),function(scope){function MusicAccidentalInputComponent(){this.type="accidental"}MusicAccidentalInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicAccidentalInputComponent.prototype.constructor=MusicAccidentalInputComponent,MusicAccidentalInputComponent.prototype.getValue=function(){return this.value},MusicAccidentalInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicAccidentalInputComponent=MusicAccidentalInputComponent}(MyScript),function(scope){function MusicArpeggiateInputComponent(){this.type="arpeggiate"}MusicArpeggiateInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicArpeggiateInputComponent.prototype.constructor=MusicArpeggiateInputComponent,MusicArpeggiateInputComponent.prototype.getValue=function(){return this.value},MusicArpeggiateInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicArpeggiateInputComponent=MusicArpeggiateInputComponent}(MyScript),function(scope){function MusicBarInput(){}MusicBarInput.prototype.getRepeatDirection=function(){return this.repeatDirection},MusicBarInput.prototype.setRepeatDirection=function(repeatDirection){this.repeatDirection=repeatDirection},MusicBarInput.prototype.getStyle=function(){return this.style},MusicBarInput.prototype.setStyle=function(style){this.style=style},scope.MusicBarInput=MusicBarInput}(MyScript),function(scope){function MusicBarInputComponent(){this.type="bar",this.value=new scope.MusicBarInput}MusicBarInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicBarInputComponent.prototype.constructor=MusicBarInputComponent,MusicBarInputComponent.prototype.getValue=function(){return this.value},MusicBarInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicBarInputComponent=MusicBarInputComponent}(MyScript),function(scope){function MusicBeamInput(){}MusicBeamInput.prototype.getPlacement=function(){return this.placement},MusicBeamInput.prototype.setPlacement=function(placement){this.placement=placement},MusicBeamInput.prototype.getSlope=function(){return this.slope},MusicBeamInput.prototype.setSlope=function(slope){this.slope=slope},MusicBeamInput.prototype.getLeftCount=function(){return this.leftCount},MusicBeamInput.prototype.setLeftCount=function(leftCount){this.leftCount=leftCount},MusicBeamInput.prototype.getRightCount=function(){return this.rightCount},MusicBeamInput.prototype.setRightCount=function(rightCount){this.rightCount=rightCount},MusicBeamInput.prototype.getGap=function(){return this.gap},MusicBeamInput.prototype.setGap=function(gap){this.gap=gap},scope.MusicBeamInput=MusicBeamInput}(MyScript),function(scope){function MusicBeamInputComponent(){this.type="beam",this.value=new scope.MusicBeamInput}MusicBeamInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicBeamInputComponent.prototype.constructor=MusicBeamInputComponent,MusicBeamInputComponent.prototype.getValue=function(){return this.value},MusicBeamInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicBeamInputComponent=MusicBeamInputComponent}(MyScript),function(scope){function MusicClefInput(){this.symbol="G",this.octave=0}MusicClefInput.prototype.getYAnchor=function(){return this.yAnchor},MusicClefInput.prototype.setYAnchor=function(yAnchor){this.yAnchor=yAnchor},MusicClefInput.prototype.getOctave=function(){return this.octave},MusicClefInput.prototype.setOctave=function(octave){this.octave=octave},MusicClefInput.prototype.getSymbol=function(){return this.symbol},MusicClefInput.prototype.setSymbol=function(symbol){this.symbol=symbol},scope.MusicClefInput=MusicClefInput}(MyScript),function(scope){function MusicClefInputComponent(){this.type="clef",this.value=new scope.MusicClefInput}MusicClefInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicClefInputComponent.prototype.constructor=MusicClefInputComponent, MusicClefInputComponent.prototype.getValue=function(){return this.value},MusicClefInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicClefInputComponent=MusicClefInputComponent}(MyScript),function(scope){function MusicDecorationInput(){}MusicDecorationInput.prototype.getSymbol=function(){return this.symbol},MusicDecorationInput.prototype.setSymbol=function(symbol){this.symbol=symbol},MusicDecorationInput.prototype.getPlacement=function(){return this.placement},MusicDecorationInput.prototype.setPlacement=function(placement){this.placement=placement},scope.MusicDecorationInput=MusicDecorationInput}(MyScript),function(scope){function MusicDecorationInputComponent(){this.type="decoration",this.value=new scope.MusicDecorationInput}MusicDecorationInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicDecorationInputComponent.prototype.constructor=MusicDecorationInputComponent,MusicDecorationInputComponent.prototype.getValue=function(){return this.value},MusicDecorationInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicDecorationInputComponent=MusicDecorationInputComponent}(MyScript),function(scope){function MusicDotsInputComponent(){this.type="dots"}MusicDotsInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicDotsInputComponent.prototype.constructor=MusicDotsInputComponent,MusicDotsInputComponent.prototype.getValue=function(){return this.value},MusicDotsInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicDotsInputComponent=MusicDotsInputComponent}(MyScript),function(scope){function MusicHeadInputComponent(){this.type="head"}MusicHeadInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicHeadInputComponent.prototype.constructor=MusicHeadInputComponent,MusicHeadInputComponent.prototype.getValue=function(){return this.value},MusicHeadInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicHeadInputComponent=MusicHeadInputComponent}(MyScript),function(scope){function MusicLedgerLineInputComponent(){this.type="ledgerLine"}MusicLedgerLineInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicLedgerLineInputComponent.prototype.constructor=MusicLedgerLineInputComponent,scope.MusicLedgerLineInputComponent=MusicLedgerLineInputComponent}(MyScript),function(scope){function MusicRestInputComponent(){this.type="rest"}MusicRestInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicRestInputComponent.prototype.constructor=MusicRestInputComponent,MusicRestInputComponent.prototype.getValue=function(){return this.value},MusicRestInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicRestInputComponent=MusicRestInputComponent}(MyScript),function(scope){function MusicStemInputComponent(){this.type="stem"}MusicStemInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicStemInputComponent.prototype.constructor=MusicStemInputComponent,MusicStemInputComponent.prototype.getValue=function(){return this.value},MusicStemInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicStemInputComponent=MusicStemInputComponent}(MyScript),function(scope){function MusicTieOrSlurInputComponent(){this.type="tieOrSlur"}MusicTieOrSlurInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicTieOrSlurInputComponent.prototype.constructor=MusicTieOrSlurInputComponent,MusicTieOrSlurInputComponent.prototype.getValue=function(){return this.value},MusicTieOrSlurInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicTieOrSlurInputComponent=MusicTieOrSlurInputComponent}(MyScript),function(scope){function MusicTimeSignatureInputComponent(){this.type="timeSignature"}MusicTimeSignatureInputComponent.prototype=new scope.AbstractMusicInputComponent,MusicTimeSignatureInputComponent.prototype.constructor=MusicTimeSignatureInputComponent,MusicTimeSignatureInputComponent.prototype.getValue=function(){return this.value},MusicTimeSignatureInputComponent.prototype.setValue=function(value){this.value=value},scope.MusicTimeSignatureInputComponent=MusicTimeSignatureInputComponent}(MyScript),function(scope){function MusicStaff(){this.count=5,this.gap=20}MusicStaff.prototype.getCount=function(){return this.count},MusicStaff.prototype.setCount=function(count){this.count=count},MusicStaff.prototype.getTop=function(){return this.top},MusicStaff.prototype.setTop=function(top){this.top=top},MusicStaff.prototype.getGap=function(){return this.gap},MusicStaff.prototype.setGap=function(gap){this.gap=gap},scope.MusicStaff=MusicStaff}(MyScript),function(scope){function MusicParameter(obj){scope.AbstractParameter.call(this,obj),this.resultTypes=[],this.userResources=[]}MusicParameter.prototype=new scope.AbstractParameter,MusicParameter.prototype.constructor=MusicParameter,MusicParameter.prototype.getResultTypes=function(){return this.resultTypes},MusicParameter.prototype.setResultTypes=function(resultTypes){this.resultTypes=resultTypes},MusicParameter.prototype.getUserResources=function(){return this.userResources},MusicParameter.prototype.setUserResources=function(userResources){this.userResources=userResources},MusicParameter.prototype.getScratchOutDetectionSensitivity=function(){return this.scratchOutDetectionSensitivity},MusicParameter.prototype.setScratchOutDetectionSensitivity=function(scratchOutDetectionSensitivity){this.scratchOutDetectionSensitivity=scratchOutDetectionSensitivity},MusicParameter.prototype.getStaff=function(){return this.staff},MusicParameter.prototype.setStaff=function(staff){this.staff=staff},MusicParameter.prototype.getDivisions=function(){return this.divisions},MusicParameter.prototype.setDivisions=function(divisions){this.divisions=divisions},scope.MusicParameter=MusicParameter}(MyScript),function(scope){function MusicRecognitionInput(){}MusicRecognitionInput.prototype=new scope.AbstractRecognitionInput,MusicRecognitionInput.prototype.constructor=MusicRecognitionInput,MusicRecognitionInput.prototype.getComponents=function(){return this.components},MusicRecognitionInput.prototype.setComponents=function(components){this.components=components},MusicRecognitionInput.prototype.getResultTypes=function(){return this.resultTypes},MusicRecognitionInput.prototype.setResultTypes=function(resultTypes){this.resultTypes=resultTypes},MusicRecognitionInput.prototype.getUserResources=function(){return this.userResources},MusicRecognitionInput.prototype.setUserResources=function(userResources){this.userResources=userResources},MusicRecognitionInput.prototype.getScratchOutDetectionSensitivity=function(){return this.scratchOutDetectionSensitivity},MusicRecognitionInput.prototype.setScratchOutDetectionSensitivity=function(scratchOutDetectionSensitivity){this.scratchOutDetectionSensitivity=scratchOutDetectionSensitivity},MusicRecognitionInput.prototype.getStaff=function(){return this.staff},MusicRecognitionInput.prototype.setStaff=function(staff){this.staff=staff},MusicRecognitionInput.prototype.getDivisions=function(){return this.divisions},MusicRecognitionInput.prototype.setDivisions=function(divisions){this.divisions=divisions},scope.MusicRecognitionInput=MusicRecognitionInput}(MyScript),function(scope){function MusicRecognitionData(){}MusicRecognitionData.prototype=new scope.AbstractRecognitionData,MusicRecognitionData.prototype.constructor=MusicRecognitionData,MusicRecognitionData.prototype.getMusicRecognitionInput=function(){return this.musicInput},MusicRecognitionData.prototype.setMusicRecognitionInput=function(input){this.musicInput=JSON.stringify(input)},scope.MusicRecognitionData=MusicRecognitionData}(MyScript),function(scope){function AnalyzerParameter(obj){scope.AbstractParameter.call(this,obj),this.textParameter=new scope.TextParameter,this.textParameter.setLanguage("en_US"),this.textParameter.setInputMode("CURSIVE")}AnalyzerParameter.prototype=new scope.AbstractParameter,AnalyzerParameter.prototype.constructor=AnalyzerParameter,AnalyzerParameter.prototype.getTextParameters=function(){return this.textParameter},AnalyzerParameter.prototype.setTextParameters=function(parameters){this.textParameter=parameters},AnalyzerParameter.prototype.getCoordinateResolution=function(){return this.coordinateResolution},AnalyzerParameter.prototype.setCoordinateResolution=function(coordinateResolution){this.coordinateResolution=coordinateResolution},scope.AnalyzerParameter=AnalyzerParameter}(MyScript),function(scope){function AnalyzerRecognitionInput(){}AnalyzerRecognitionInput.prototype=new scope.AbstractRecognitionInput,AnalyzerRecognitionInput.prototype.constructor=AnalyzerRecognitionInput,AnalyzerRecognitionInput.prototype.getParameters=function(){return this.parameter},AnalyzerRecognitionInput.prototype.setParameters=function(parameters){this.parameter=parameters},AnalyzerRecognitionInput.prototype.getComponents=function(){return this.components},AnalyzerRecognitionInput.prototype.setComponents=function(components){this.components=components},scope.AnalyzerRecognitionInput=AnalyzerRecognitionInput}(MyScript),function(scope){function AnalyzerRecognitionData(){}AnalyzerRecognitionData.prototype=new scope.AbstractRecognitionData,AnalyzerRecognitionData.prototype.constructor=AnalyzerRecognitionData,AnalyzerRecognitionData.prototype.getAnalyzerRecognitionInput=function(){return this.analyzerInput},AnalyzerRecognitionData.prototype.setAnalyzerRecognitionInput=function(input){this.analyzerInput=JSON.stringify(input)},scope.AnalyzerRecognitionData=AnalyzerRecognitionData}(MyScript),function(scope){function AbstractResult(obj){obj&&(this.instanceId=obj.instanceId)}AbstractResult.prototype.getInstanceId=function(){return this.instanceId},scope.AbstractResult=AbstractResult}(MyScript),function(scope){function AbstractRecoResponseWSMessage(obj){scope.AbstractWSMessage.call(this,obj),obj&&(this.instanceId=obj.instanceId)}AbstractRecoResponseWSMessage.prototype=new scope.AbstractWSMessage,AbstractRecoResponseWSMessage.prototype.constructor=AbstractRecoResponseWSMessage,AbstractRecoResponseWSMessage.prototype.getInstanceId=function(){return this.instanceId},scope.AbstractRecoResponseWSMessage=AbstractRecoResponseWSMessage}(MyScript),function(scope){function ChallengeResponseWSMessage(obj){scope.AbstractWSMessage.call(this,obj),obj&&(this.challenge=obj.challenge)}ChallengeResponseWSMessage.prototype=new scope.AbstractWSMessage,ChallengeResponseWSMessage.prototype.constructor=ChallengeResponseWSMessage,ChallengeResponseWSMessage.prototype.getChallenge=function(){return this.challenge},scope.ChallengeResponseWSMessage=ChallengeResponseWSMessage}(MyScript),function(scope){function ErrorResponseWSMessage(obj){scope.AbstractWSMessage.call(this,obj),obj&&(this.error=obj.error)}ErrorResponseWSMessage.prototype=new scope.AbstractWSMessage,ErrorResponseWSMessage.prototype.constructor=ErrorResponseWSMessage,ErrorResponseWSMessage.prototype.getError=function(){return this.error},scope.ErrorResponseWSMessage=ErrorResponseWSMessage}(MyScript),function(scope){function InitResponseWSMessage(obj){scope.AbstractWSMessage.call(this,obj)}InitResponseWSMessage.prototype=new scope.AbstractWSMessage,InitResponseWSMessage.prototype.constructor=InitResponseWSMessage,scope.InitResponseWSMessage=InitResponseWSMessage}(MyScript),function(scope){function TextInkRange(obj){if(obj){var cpt=obj.split(/[:-]+/);this.startUnit=Number(cpt[0]),this.startComponent=Number(cpt[1]),this.startPoint=Number(cpt[2]),this.endUnit=Number(cpt[3]),this.endComponent=Number(cpt[4]),this.endPoint=Number(cpt[5])}}TextInkRange.prototype.getStartUnit=function(){return this.startUnit},TextInkRange.prototype.getEndUnit=function(){return this.endUnit},TextInkRange.prototype.getStartComponent=function(){return this.startComponent},TextInkRange.prototype.getEndComponent=function(){return this.endComponent},TextInkRange.prototype.getStartPoint=function(){return this.startPoint},TextInkRange.prototype.getEndPoint=function(){return this.endPoint},scope.TextInkRange=TextInkRange}(MyScript),function(scope){function TextCandidate(obj){if(this.flags=[],obj){this.label=obj.label,this.normalizedScore=obj.normalizedScore,this.spellingDistortionRatio=obj.spellingDistortionRatio;for(var j in obj.flags)this.flags.push(obj.flags[j])}}TextCandidate.prototype.getLabel=function(){return this.label},TextCandidate.prototype.getNormalizedScore=function(){return this.normalizedScore},TextCandidate.prototype.getResemblanceScore=function(){return this.resemblanceScore},TextCandidate.prototype.getSpellingDistortionRatio=function(){return this.spellingDistortionRatio},TextCandidate.prototype.getFlags=function(){return this.flags},scope.TextCandidate=TextCandidate}(MyScript),function(scope){function TextCharCandidate(obj){scope.TextCandidate.call(this,obj)}TextCharCandidate.prototype=new scope.TextCandidate,TextCharCandidate.prototype.constructor=TextCharCandidate,scope.TextCharCandidate=TextCharCandidate}(MyScript),function(scope){function TextWordCandidate(obj){if(scope.TextCandidate.call(this,obj),this.children=[],obj)for(var i in obj.children)this.children.push(new scope.TextCharSegment(obj.children[i]))}TextWordCandidate.prototype=new scope.TextCandidate,TextWordCandidate.prototype.constructor=TextWordCandidate,TextWordCandidate.prototype.getChildren=function(){return this.children},scope.TextWordCandidate=TextWordCandidate}(MyScript),function(scope){function TextResultCandidate(obj){if(scope.TextCandidate.call(this,obj),this.children=[],obj)for(var i in obj.children)this.children.push(new scope.TextWordSegment(obj.children[i]))}TextResultCandidate.prototype=new scope.TextCandidate,TextResultCandidate.prototype.constructor=TextResultCandidate,TextResultCandidate.prototype.getChildren=function(){return this.children},scope.TextResultCandidate=TextResultCandidate}(MyScript),function(scope){function TextDocument(obj){if(this.tagItems=[],this.wordCandidates=[],this.charCandidates=[],obj){obj.textSegmentResult&&(this.textSegmentResult=new scope.TextResultSegment(obj.textSegmentResult));for(var i in obj.tagItems)this.tagItems.push(new scope.TextTagItem(obj.tagItems[i]));for(var j in obj.wordCandidates)this.wordCandidates.push(new scope.TextWordSegment(obj.wordCandidates[j]));for(var k in obj.charCandidates)this.charCandidates.push(new scope.TextCharSegment(obj.charCandidates[k]))}}TextDocument.prototype.getTagItems=function(){return this.tagItems},TextDocument.prototype.getWordSegments=function(){return this.wordCandidates},TextDocument.prototype.getWordSegment=function(inkRanges){for(var i=0;i=200&&request.status<300?deferred.resolve(NetworkInterface.parse(request)):deferred.reject(NetworkInterface.parse(request)))}function onLoad(){request.status>=200&&request.status<300?deferred.resolve(NetworkInterface.parse(request)):deferred.reject("Status code was "+request.status)}function onError(){deferred.reject("Can't XHR "+JSON.stringify(url))}function onProgress(event){deferred.notify(event.loaded/event.total)}var deferred=Q.defer(),request=new XMLHttpRequest;return request.open(type,url,!0),request.setRequestHeader("Accept","application/json"),request.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8"),request.onload=onLoad,request.onerror=onError,request.onprogress=onProgress,request.onreadystatechange=onStateChange,request.send(NetworkInterface.transformRequest(data)),deferred.promise},NetworkInterface.prototype.get=function(src,params){return params&&(src+="?"+NetworkInterface.transformRequest(params)),this.xhr("GET",src).then(function(response){return response},function(response){throw response})},NetworkInterface.prototype.put=function(url,data){return this.xhr("PUT",url,data).then(function(response){return response},function(response){throw response})},NetworkInterface.prototype.post=function(url,data){return this.xhr("POST",url,data).then(function(response){return response},function(response){throw response})},NetworkInterface.prototype["delete"]=function(url,data){return this.xhr("DELETE",url,data).then(function(response){return response},function(response){throw response})},scope.NetworkInterface=NetworkInterface}(MyScript,Q),function(scope,CryptoJS){function AbstractRecognizer(host){this.host="cloud.myscript.com",host&&(this.host=host),this.http=new scope.NetworkInterface}AbstractRecognizer.prototype.getAvailableLanguageList=function(applicationKey,inputMode){var data=new scope.RecognitionLanguagesData;return data.setApplicationKey(applicationKey),data.setInputMode(inputMode),this.http.get("//"+this.host+"/api/v3.0/recognition/rest/text/languages.json",data).then(function(response){return response.result},function(response){return response})},AbstractRecognizer.prototype.computeHmac=function(applicationKey,data,hmacKey){var jsonInput="object"==typeof data?JSON.stringify(data):data;return CryptoJS.HmacSHA512(jsonInput,applicationKey+hmacKey).toString(CryptoJS.enc.Hex)},scope.AbstractRecognizer=AbstractRecognizer}(MyScript,CryptoJS),function(scope){function AbstractWSRecognizer(host){scope.AbstractRecognizer.call(this,host)}AbstractWSRecognizer.prototype=new scope.AbstractRecognizer,AbstractWSRecognizer.prototype.constructor=AbstractWSRecognizer,AbstractWSRecognizer.prototype.getMessageCallback=function(){return this.messageCallback},AbstractWSRecognizer.prototype.setMessageCallback=function(callback){this.messageCallback=callback},AbstractWSRecognizer.prototype.getOpenCallback=function(){return this.openCallback},AbstractWSRecognizer.prototype.setOpenCallback=function(callback){this.openCallback=callback},AbstractWSRecognizer.prototype.getCloseCallback=function(){return this.closeCallback},AbstractWSRecognizer.prototype.setCloseCallback=function(callback){this.closeCallback=callback},AbstractWSRecognizer.prototype.getErrorCallback=function(){return this.errorCallback},AbstractWSRecognizer.prototype.setErrorCallback=function(callback){this.errorCallback=callback},AbstractWSRecognizer.prototype.getState=function(){var deferred=Q.defer();return this.socket?deferred.resolve(this.socket.readyState):deferred.reject(new Error("Can't find WebSocket")),deferred.promise},AbstractWSRecognizer.prototype.close=function(){var deferred=Q.defer();return this.socket?deferred.resolve(this.socket.close()):deferred.reject(new Error("Can't find WebSocket")),deferred.promise},AbstractWSRecognizer.prototype.sendMessage=function(message){var deferred=Q.defer();return this.socket?deferred.resolve(this.socket.send(JSON.stringify(message))):deferred.reject(new Error("Can't find WebSocket")),deferred.promise},AbstractWSRecognizer.prototype.initWSRecognition=function(applicationKey){var message=new scope.InitRequestWSMessage;return message.setApplicationKey(applicationKey),this.sendMessage(message)},AbstractWSRecognizer.prototype.takeUpHmacChallenge=function(applicationKey,challenge,hmacKey){var message=new scope.ChallengeRequestWSMessage;return message.setApplicationKey(applicationKey),message.setChallenge(challenge),message.setHmacSignature(this.computeHmac(applicationKey,challenge,hmacKey)),this.sendMessage(message)},AbstractWSRecognizer.prototype.resetWSRecognition=function(){var message=new scope.ResetRequestWSMessage;return this.sendMessage(message)},scope.AbstractWSRecognizer=AbstractWSRecognizer}(MyScript),function(scope){function TextRecognizer(host){scope.AbstractRecognizer.call(this,host),this.parameters=new scope.TextParameter,this.parameters.setLanguage("en_US"),this.parameters.setInputMode("CURSIVE")}TextRecognizer.prototype=new scope.AbstractRecognizer,TextRecognizer.prototype.constructor=TextRecognizer,TextRecognizer.prototype.getParameters=function(){return this.parameters},TextRecognizer.prototype.setParameters=function(parameters){this.parameters=parameters},TextRecognizer.prototype.doSimpleRecognition=function(applicationKey,instanceId,inputUnits,hmacKey,parameters){var input=new scope.TextRecognitionInput;input.setParameters(parameters?parameters:this.parameters),input.setInputUnits(inputUnits);var data=new scope.TextRecognitionData;return data.setApplicationKey(applicationKey),data.setTextRecognitionInput(input),data.setInstanceId(instanceId),data.setHmac(this.computeHmac(applicationKey,input,hmacKey)),this.http.post("//"+this.host+"/api/v3.0/recognition/rest/text/doSimpleRecognition.json",data).then(function(response){return new scope.TextResult(response)},function(response){throw response})},scope.TextRecognizer=TextRecognizer}(MyScript),function(scope){function TextWSRecognizer(host){scope.AbstractWSRecognizer.call(this,host),this.parameters=new scope.TextParameter,this.parameters.setLanguage("en_US"),this.parameters.setInputMode("CURSIVE"),this.socket=new WebSocket("ws://"+this.host+"/api/v3.0/recognition/ws/text");var self=this;this.socket.onopen=function(message){console.log("WebSocket opened"),self.openCallback&&self.openCallback(message)},this.socket.onmessage=function(message){var data=JSON.parse(message.data);switch(console.log("WebSocket message received"),data.type){case"init":data=new scope.InitResponseWSMessage(data);break;case"error":data=new scope.ErrorResponseWSMessage(data);break;case"hmacChallenge":data=new scope.ChallengeResponseWSMessage(data);break;default:data=new scope.TextResponseWSMessage(data)}self.messageCallback&&self.messageCallback(data)},this.socket.onerror=function(message){console.log("WebSocket error received"),self.errorCallback&&self.errorCallback(message)},this.socket.onclose=function(message){console.log("WebSocket opened"),self.closeCallback&&self.closeCallback(message)}}TextWSRecognizer.prototype=new scope.AbstractWSRecognizer,TextWSRecognizer.prototype.constructor=TextWSRecognizer,TextWSRecognizer.prototype.getParameters=function(){return this.parameters},TextWSRecognizer.prototype.setParameters=function(parameters){this.parameters=parameters},TextWSRecognizer.prototype.startWSRecognition=function(inputUnits,parameters){var message=new scope.TextStartRequestWSMessage;return message.setParameters(parameters?parameters:this.getParameters()),message.setInputUnits(inputUnits),this.sendMessage(message)},TextWSRecognizer.prototype.continueWSRecognition=function(inputUnits,instanceId){var message=new scope.TextContinueRequestWSMessage;return message.setInputUnits(inputUnits),message.setInstanceId(instanceId),this.sendMessage(message)},TextWSRecognizer.prototype.doWSRecognition=function(instanceId,inputUnits,parameters){return instanceId?this.continueWSRecognition(inputUnits,instanceId):this.startWSRecognition(inputUnits,parameters)},scope.TextWSRecognizer=TextWSRecognizer}(MyScript),function(scope){function ShapeRecognizer(host){scope.AbstractRecognizer.call(this,host),this.parameters=new scope.ShapeParameter}ShapeRecognizer.prototype=new scope.AbstractRecognizer,ShapeRecognizer.prototype.constructor=ShapeRecognizer,ShapeRecognizer.prototype.getParameters=function(){return this.parameters},ShapeRecognizer.prototype.setParameters=function(parameters){this.parameters=parameters},ShapeRecognizer.prototype.doSimpleRecognition=function(applicationKey,instanceId,components,hmacKey,parameters){var input=new scope.ShapeRecognitionInput;input.setComponents(components),parameters?(input.setDoBeautification(parameters.hasBeautification()),input.setRejectDetectionSensitivity(parameters.getRejectDetectionSensitivity())):(input.setDoBeautification(this.getParameters().hasBeautification()),input.setRejectDetectionSensitivity(this.getParameters().getRejectDetectionSensitivity()));var data=new scope.ShapeRecognitionData;return data.setApplicationKey(applicationKey),data.setShapeRecognitionInput(input),data.setInstanceId(instanceId),data.setHmac(this.computeHmac(applicationKey,input,hmacKey)),this.http.post("//"+this.host+"/api/v3.0/recognition/rest/shape/doSimpleRecognition.json",data).then(function(response){return new scope.ShapeResult(response)},function(response){throw response})},ShapeRecognizer.prototype.clearShapeRecognitionSession=function(applicationKey,instanceId){var data={instanceSessionId:instanceId};return this.http.post("//"+this.host+"/api/v3.0/recognition/rest/shape/clearSessionId.json",data).then(function(response){return response},function(response){throw response})},scope.ShapeRecognizer=ShapeRecognizer}(MyScript),function(scope){function MathRecognizer(host){scope.AbstractRecognizer.call(this,host),this.parameters=new scope.MathParameter}MathRecognizer.prototype=new scope.AbstractRecognizer,MathRecognizer.prototype.constructor=MathRecognizer,MathRecognizer.prototype.getParameters=function(){return this.parameters},MathRecognizer.prototype.setParameters=function(parameters){this.parameters=parameters},MathRecognizer.prototype.doSimpleRecognition=function(applicationKey,instanceId,components,hmacKey,parameters){var input=new scope.MathRecognitionInput;input.setComponents(components),parameters?(input.setResultTypes(parameters.getResultTypes()),input.setColumnar(parameters.isColumnar()),input.setScratchOutDetectionSensitivity(parameters.getScratchOutDetectionSensitivity()),input.setUserResources(parameters.getUserResources())):(input.setResultTypes(this.getParameters().getResultTypes()),input.setColumnar(this.getParameters().isColumnar()),input.setScratchOutDetectionSensitivity(this.getParameters().getScratchOutDetectionSensitivity()),input.setUserResources(this.getParameters().getUserResources()));var data=new scope.MathRecognitionData;return data.setApplicationKey(applicationKey),data.setMathRecognitionInput(input),data.setInstanceId(instanceId),data.setHmac(this.computeHmac(applicationKey,input,hmacKey)),this.http.post("//"+this.host+"/api/v3.0/recognition/rest/math/doSimpleRecognition.json",data).then(function(response){return new scope.MathResult(response)},function(response){throw response})},scope.MathRecognizer=MathRecognizer}(MyScript),function(scope){function MathWSRecognizer(host){scope.AbstractWSRecognizer.call(this,host),this.parameters=new scope.MathParameter,this.socket=new WebSocket("ws://"+this.host+"/api/v3.0/recognition/ws/math");var self=this;this.socket.onopen=function(message){console.log("WebSocket opened"),self.openCallback&&self.openCallback(message)},this.socket.onmessage=function(message){var data=JSON.parse(message.data);switch(console.log("WebSocket message received"),data.type){case"init":data=new scope.InitResponseWSMessage(data);break;case"error":data=new scope.ErrorResponseWSMessage(data);break;case"hmacChallenge":data=new scope.ChallengeResponseWSMessage(data);break;default:data=new scope.MathResponseWSMessage(data)}self.messageCallback&&self.messageCallback(data)},this.socket.onerror=function(message){console.log("WebSocket error received"),self.errorCallback&&self.errorCallback(message)},this.socket.onclose=function(message){console.log("WebSocket opened"),self.closeCallback&&self.closeCallback(message)}}MathWSRecognizer.prototype=new scope.AbstractWSRecognizer,MathWSRecognizer.prototype.constructor=MathWSRecognizer,MathWSRecognizer.prototype.getParameters=function(){return this.parameters},MathWSRecognizer.prototype.setParameters=function(parameters){this.parameters=parameters},MathWSRecognizer.prototype.startWSRecognition=function(components,parameters){var message=new scope.MathStartRequestWSMessage;return message.setParameters(parameters?parameters:this.getParameters()),message.setComponents(components),this.sendMessage(message)},MathWSRecognizer.prototype.continueWSRecognition=function(components,instanceId){var message=new scope.MathContinueRequestWSMessage;return message.setComponents(components),message.setInstanceId(instanceId),this.sendMessage(message)},MathWSRecognizer.prototype.doWSRecognition=function(instanceId,components,parameters){return instanceId?this.continueWSRecognition(components,instanceId):this.startWSRecognition(components,parameters)},scope.MathWSRecognizer=MathWSRecognizer}(MyScript),function(scope){function MusicRecognizer(host){scope.AbstractRecognizer.call(this,host),this.parameters=new scope.MusicParameter}MusicRecognizer.prototype=new scope.AbstractRecognizer,MusicRecognizer.prototype.constructor=MusicRecognizer,MusicRecognizer.prototype.getParameters=function(){return this.parameters},MusicRecognizer.prototype.setParameters=function(parameters){this.parameters=parameters},MusicRecognizer.prototype.doSimpleRecognition=function(applicationKey,instanceId,components,hmacKey,parameters){var input=new scope.MusicRecognitionInput;input.setComponents(components),parameters?(input.setStaff(parameters.getStaff()),input.setDivisions(parameters.getDivisions()),input.setResultTypes(parameters.getResultTypes()),input.setScratchOutDetectionSensitivity(parameters.getScratchOutDetectionSensitivity()),input.setUserResources(parameters.getUserResources())):(input.setStaff(this.getParameters().getStaff()),input.setDivisions(this.getParameters().getDivisions()),input.setResultTypes(this.getParameters().getResultTypes()),input.setScratchOutDetectionSensitivity(this.getParameters().getScratchOutDetectionSensitivity()),input.setUserResources(this.getParameters().getUserResources()));var data=new scope.MusicRecognitionData;return data.setApplicationKey(applicationKey),data.setMusicRecognitionInput(input),data.setInstanceId(instanceId),data.setHmac(this.computeHmac(applicationKey,input,hmacKey)),this.http.post("//"+this.host+"/api/v3.0/recognition/rest/music/doSimpleRecognition.json",data).then(function(response){return new scope.MusicResult(response)},function(response){throw response})},scope.MusicRecognizer=MusicRecognizer}(MyScript),function(scope){function AnalyzerRecognizer(host){scope.AbstractRecognizer.call(this,host),this.parameters=new scope.AnalyzerParameter}AnalyzerRecognizer.prototype=new scope.AbstractRecognizer,AnalyzerRecognizer.prototype.constructor=AnalyzerRecognizer,AnalyzerRecognizer.prototype.getParameters=function(){return this.parameters},AnalyzerRecognizer.prototype.setParameters=function(parameters){this.parameters=parameters},AnalyzerRecognizer.prototype.doSimpleRecognition=function(applicationKey,instanceId,components,hmacKey,parameters){var input=new scope.AnalyzerRecognitionInput;input.setComponents(components),input.setParameters(parameters?parameters:this.getParameters());var data=new scope.AnalyzerRecognitionData;return data.setApplicationKey(applicationKey),data.setAnalyzerRecognitionInput(input),data.setInstanceId(instanceId),data.setHmac(this.computeHmac(applicationKey,input,hmacKey)),this.http.post("//"+this.host+"/api/v3.0/recognition/rest/analyzer/doSimpleRecognition.json",data).then(function(response){return new scope.AnalyzerResult(response)},function(response){return response})},scope.AnalyzerRecognizer=AnalyzerRecognizer}(MyScript),function(scope){function RenderingParameters(){this.color="black",this.rectColor="rgba(0, 0, 0, 0.2)",this.font="Times New Roman",this.decoration="",this.width=4,this.pressureType="SIMULATED",this.alpha="1.0",this.doFadeOutLoop=!1,this.showBoundingBoxes=!1}RenderingParameters.prototype.getColor=function(){return this.color},RenderingParameters.prototype.setColor=function(color){this.color=color},RenderingParameters.prototype.getRectColor=function(){return this.rectColor},RenderingParameters.prototype.setRectColor=function(rectColor){this.rectColor=rectColor},RenderingParameters.prototype.getFont=function(){return this.font},RenderingParameters.prototype.setFont=function(font){this.font=font},RenderingParameters.prototype.getDecoration=function(){return this.decoration},RenderingParameters.prototype.setDecoration=function(decoration){this.decoration=decoration},RenderingParameters.prototype.getWidth=function(){return this.width},RenderingParameters.prototype.setWidth=function(width){this.width=width},RenderingParameters.prototype.getPressureType=function(){return this.pressureType},RenderingParameters.prototype.setPressureType=function(pressureType){this.pressureType=pressureType},RenderingParameters.prototype.getAlpha=function(){return this.alpha},RenderingParameters.prototype.setAlpha=function(alpha){this.alpha=alpha},RenderingParameters.prototype.getDoFadeOutLoop=function(){return this.doFadeOutLoop},RenderingParameters.prototype.setDoFadeOutLoop=function(doFadeOutLoop){this.doFadeOutLoop=doFadeOutLoop},RenderingParameters.prototype.getShowBoundingBoxes=function(){return this.showBoundingBoxes},RenderingParameters.prototype.setShowBoundingBoxes=function(showBoundingBoxes){this.showBoundingBoxes=showBoundingBoxes},scope.RenderingParameters=RenderingParameters}(MyScript),function(scope){function AbstractRenderer(){this.points=[],this.drawing=!1,this.parameters=new scope.RenderingParameters}AbstractRenderer.prototype.getParameters=function(){return this.parameters},AbstractRenderer.prototype.setParameters=function(parameters){this.parameters=parameters},AbstractRenderer.prototype.drawRecognitionResult=function(components,recognitionResult,context,parameters){throw new Error("not implemented")},AbstractRenderer.prototype.drawComponents=function(components,context,parameters){for(var i in components){var component=components[i];component instanceof scope.Stroke?this.drawStroke(component,context,parameters):component instanceof scope.CharacterInputComponent&&this.drawCharacter(component,context,parameters)}},AbstractRenderer.prototype.drawStart=function(x,y){this.points.length=0,this.drawing=!0,this.points.push({x:x,y:y,pressure:.5,distance:0,length:0,ux:0,uy:0,x1:0,x2:0,y1:0,y2:0})},AbstractRenderer.prototype.drawContinue=function(x,y,context,parameters){if(this.drawing){var point={x:x,y:y,pressure:.5,distance:0,length:0,ux:0,uy:0,x1:0,x2:0,y1:0,y2:0};if(this.points.push(point),this.points.length>1){var previous=this.points[this.points.length-2];if(2===this.points.length)this.drawQuadratricStart(previous,point,context,parameters);else{var third=this.points[this.points.length-3];this.drawQuadratricContinue(third,previous,point,context,parameters)}}}},AbstractRenderer.prototype.drawEnd=function(x,y,context,parameters){if(this.drawing){if(1===this.points.length)this.drawPoint({x:x,y:y,pressure:.5,distance:0,length:0,ux:0,uy:0,x1:0,x2:0,y1:0,y2:0},context,parameters);else if(this.points.length>1){var lastPoint=this.points[this.points.length-1],point=this.points[this.points.length-2];this.drawQuadratricEnd(point,lastPoint,context,parameters)}this.drawing=!1}},AbstractRenderer.prototype.clear=function(context){context.clearRect(0,0,context.canvas.width,context.canvas.height)},AbstractRenderer.prototype.drawGuidelines=function(horizontalSpacing,verticalSpacing,context,parameters){context.save();try{if(parameters?(context.fillStyle=parameters.getColor(),context.strokeStyle=parameters.getColor(),context.lineWidth=.5*parameters.getWidth()):(context.fillStyle=this.parameters.getColor(),context.strokeStyle=this.parameters.getColor(),context.lineWidth=.5*this.parameters.getWidth()),context.clearRect(0,0,context.canvas.clientWidth,context.canvas.clientHeight),verticalSpacing)for(var y=verticalSpacing;y1){var p6=strokePoints[k-1],p7=strokePoints[k];this.drawQuadratricEnd(p6,p7,context,parameters)}},AbstractRenderer.prototype.drawCharacter=function(character,context,parameters){throw new Error("not implemented")},AbstractRenderer.prototype.drawPoint=function(point,context,parameters){context.save();try{parameters?(context.fillStyle=parameters.getColor(),context.strokeStyle=parameters.getColor(),context.globalAlpha=parameters.getAlpha(),context.lineWidth=.5*parameters.getWidth(),context.beginPath(),context.arc(point.x,point.y,.5*parameters.getWidth(),0,2*Math.PI),context.fill()):(context.fillStyle=this.parameters.getColor(),context.strokeStyle=this.parameters.getColor(),context.globalAlpha=this.parameters.getAlpha(),context.lineWidth=.5*this.parameters.getWidth(),context.beginPath(),context.arc(point.x,point.y,.5*this.parameters.getWidth(),0,2*Math.PI),context.fill())}finally{context.restore()}},AbstractRenderer.prototype.drawArrowHead=function(headPoint,angle,length,context,parameters){var alpha=phi(angle+Math.PI-Math.PI/8),beta=phi(angle-Math.PI+Math.PI/8);context.save();try{parameters?(context.fillStyle=parameters.getColor(),context.strokeStyle=parameters.getColor(),context.globalAlpha=parameters.getAlpha(),context.lineWidth=.5*parameters.getWidth()):(context.fillStyle=this.parameters.getColor(),context.strokeStyle=this.parameters.getColor(),context.globalAlpha=this.parameters.getAlpha(),context.lineWidth=.5*this.parameters.getWidth()),context.moveTo(headPoint.x,headPoint.y),context.beginPath(),context.lineTo(headPoint.x+length*Math.cos(alpha),headPoint.y+length*Math.sin(alpha)),context.lineTo(headPoint.x+length*Math.cos(beta),headPoint.y+length*Math.sin(beta)),context.lineTo(headPoint.x,headPoint.y),context.fill()}finally{context.restore()}},AbstractRenderer.prototype.extractStroke=function(strokes,inkRange){for(var result=[],firstPointIndex=Math.floor(inkRange.getFirstPoint()),lastPointIndex=Math.ceil(inkRange.getLastPoint()),strokeIndex=inkRange.getFirstStroke();strokeIndex<=inkRange.getLastStroke();strokeIndex++){for(var currentStroke=strokes[strokeIndex],currentStrokePointCount=currentStroke.x.length,newStroke=new scope.Stroke,x=[],y=[],pointIndex=firstPointIndex;strokeIndex===inkRange.getLastStroke()&&lastPointIndex>=pointIndex&¤tStrokePointCount>pointIndex||strokeIndex!==inkRange.getLastStroke()&¤tStrokePointCount>pointIndex;pointIndex++)x.push(currentStroke.x[pointIndex]),y.push(currentStroke.y[pointIndex]);newStroke.setX(x),newStroke.setY(y),result.push(newStroke)}return result},AbstractRenderer.prototype.drawQuadratricStart=function(p1,p2,context,parameters){parameters?computePoint(null,p1,!0,!1,parameters.getPressureType(),parameters.getWidth()):computePoint(null,p1,!0,!1,this.parameters.getPressureType(),this.parameters.getWidth()),context.save();try{parameters?(context.fillStyle=parameters.getColor(),context.strokeStyle=parameters.getColor(),context.globalAlpha=parameters.getAlpha(),context.lineWidth=.5*parameters.getWidth()):(context.fillStyle=this.parameters.getColor(),context.strokeStyle=this.parameters.getColor(),context.globalAlpha=this.parameters.getAlpha(),context.lineWidth=.5*this.parameters.getWidth()),context.beginPath(),strokeFirstSegment(p1,p2,context),context.fill()}finally{context.restore()}},AbstractRenderer.prototype.drawQuadratricContinue=function(p1,p2,p3,context,parameters){parameters?computePoint(p2,p3,!1,!1,parameters.getPressureType(),parameters.getWidth()):computePoint(p2,p3,!1,!1,this.parameters.getPressureType(),this.parameters.getWidth()),context.save();try{parameters?(context.fillStyle=parameters.getColor(),context.strokeStyle=parameters.getColor(),context.globalAlpha=parameters.getAlpha(),context.lineWidth=.5*parameters.getWidth()):(context.fillStyle=this.parameters.getColor(),context.strokeStyle=this.parameters.getColor(),context.globalAlpha=this.parameters.getAlpha(),context.lineWidth=.5*this.parameters.getWidth()),context.beginPath(),strokeSegment(p1,p2,p3,context),context.fill()}finally{context.restore()}},AbstractRenderer.prototype.drawQuadratricEnd=function(p1,p2,context,parameters){parameters?computePoint(p1,p2,!1,!0,parameters.getPressureType(),parameters.getWidth()):computePoint(p1,p2,!1,!0,this.parameters.getPressureType(),this.parameters.getWidth()),context.save();try{parameters?(context.fillStyle=parameters.getColor(),context.strokeStyle=parameters.getColor(),context.globalAlpha=parameters.getAlpha(),context.lineWidth=.5*parameters.getWidth()):(context.fillStyle=this.parameters.getColor(),context.strokeStyle=this.parameters.getColor(),context.globalAlpha=this.parameters.getAlpha(),context.lineWidth=.5*this.parameters.getWidth()),context.beginPath(),strokeLastSegment(p1,p2,context),context.fill()}finally{context.restore()}};var strokeFirstSegment=function(p1,p2,context){var x11=p1.x1,y11=p1.y1,x12=p1.x2,y12=p1.y2,x21=.5*p1.x1+p2.x1,y21=.5*p1.y1+p2.y1,x22=.5*p1.x2+p2.x2,y22=.5*p1.y2+p2.y2;context.moveTo(x11,y11),context.lineTo(x21,y21),context.lineTo(x22,y22),context.lineTo(x12,y12),context.lineTo(x11,y11)},strokeSegment=function(p1,p2,p3,context){var x11=.5*(p1.x1+p2.x1),y11=.5*(p1.y1+p2.y1),x12=.5*(p1.x2+p2.x2),y12=.5*(p1.y2+p2.y2),x21=.5*(p2.x1+p3.x1),y21=.5*(p2.y1+p3.y1),x22=.5*(p2.x2+p3.x2),y22=.5*(p2.y2+p3.y2);context.moveTo(x11,y11),context.quadraticCurveTo(p2.x1,p2.y1,x21,y21),context.lineTo(x22,y22),context.quadraticCurveTo(p2.x2,p2.y2,x12,y12),context.lineTo(x11,y11)},strokeLastSegment=function(p1,p2,context){var x11=.5*(p1.x1+p2.x1),y11=.5*(p1.y1+p2.y1),x12=.5*(p1.x2+p2.x2),y12=.5*(p1.y2+p2.y2),x21=p2.x1,y21=p2.y1,x22=p2.x2,y22=p2.y2;context.moveTo(x11,y11),context.lineTo(x21,y21),context.lineTo(x22,y22),context.lineTo(x12,y12),context.lineTo(x11,y11)},phi=function(angle){return angle=(angle+Math.PI)%(2*Math.PI)-Math.PI,angle<-Math.PI&&(angle+=2*Math.PI),angle},computePoint=function(previous,point,isFirst,isLast,pressureType,penWidth){if(null!==previous){computeDistance(previous,point);var strokeLength=previous.length+point.distance;point.length=strokeLength}switch(pressureType){case"SIMULATED":computePressure(point,point.distance,point.length);break;case"CONSTANT":point.pressure=1;break;case"REAL":break;default:throw new Error("Unknown pressure type")}computeLastControls(point,penWidth),null===previous||isLast||(isFirst&&computeFirstControls(previous,point,penWidth),isLast?computeLastControls(point,penWidth):computeControls(previous,point,penWidth))},computeDistance=function(previous,point){var dx=point.x-previous.x,dy=point.y-previous.y,d=Math.sqrt(dx*dx+dy*dy);0!==d&&(point.distance=d,point.ux=dx/d,point.uy=dy/d)},computePressure=function(point,distance,length){var k,pressure;k=10>distance?.2+Math.pow(.1*distance,.4):distance>length-10?.2+Math.pow(.1*(length-distance),.4):1,pressure=k*Math.max(.1,1-.1*Math.sqrt(point.distance)),isNaN(parseFloat(pressure))&&(pressure=.5),point.pressure=pressure},computeFirstControls=function(first,next,penWidth){var r=.5*penWidth*first.pressure,nx=-r*next.uy,ny=r*next.ux;first.x1=first.x+nx,first.y1=first.y+ny,first.x2=first.x-nx,first.y1=first.y-ny},computeControls=function(point,next,penWidth){var ux=point.ux+next.ux,uy=point.uy+next.uy,u=Math.sqrt(ux*ux+uy*uy);if(0!==u){var r=.5*penWidth*point.pressure,nx=-r*uy/u,ny=r*ux/u;point.x1=point.x+nx,point.y1=point.y+ny,point.x2=point.x-nx,point.y2=point.y-ny}else point.x1=point.x,point.y1=point.y,point.x2=point.x,point.y2=point.y},computeLastControls=function(last,penWidth){var r=.5*penWidth*last.pressure,nx=-r*last.uy,ny=r*last.ux;last.x1=last.x+nx,last.y1=last.y+ny,last.x2=last.x-nx,last.y2=last.y-ny};scope.AbstractRenderer=AbstractRenderer}(MyScript),function(scope){function TextRenderer(){scope.AbstractRenderer.call(this)}TextRenderer.prototype=new scope.AbstractRenderer,TextRenderer.prototype.constructor=TextRenderer,TextRenderer.prototype.drawRecognitionResult=function(inputUnits,recognitionResult,context,parameters){this.drawInputUnits(inputUnits,context,parameters)},TextRenderer.prototype.drawInputUnits=function(inputUnits,context,parameters){for(var i in inputUnits)this.drawComponents(inputUnits[i].getComponents(),context,parameters)},TextRenderer.prototype.drawComponents=function(components,context,parameters){for(var i in components){var component=components[i];if(component instanceof scope.Stroke)scope.AbstractRenderer.prototype.drawStroke.call(this,component,context,parameters);else if(component instanceof scope.CharacterInputComponent)scope.AbstractRenderer.prototype.drawCharacter.call(this,component,context,parameters);else if(component instanceof scope.CharInputComponent)drawChar(component,context,parameters);else{if(!(component instanceof scope.StringInputComponent))throw new Error("not implemented");drawString(component,context,parameters)}}};var drawChar=function(char,context,parameters){throw new Error("not implemented")},drawString=function(string,context,parameters){throw new Error("not implemented")};scope.TextRenderer=TextRenderer}(MyScript),function(scope){function ShapeRenderer(){scope.AbstractRenderer.call(this)}ShapeRenderer.prototype=new scope.AbstractRenderer,ShapeRenderer.prototype.constructor=ShapeRenderer,ShapeRenderer.prototype.drawRecognitionResult=function(components,recognitionResult,parameters,context){this.drawShapes(components,recognitionResult.getSegments(),parameters,context)},ShapeRenderer.prototype.drawComponents=function(components,context,parameters){for(var i in components){var component=components[i];if(component instanceof scope.Stroke)scope.AbstractRenderer.prototype.drawStroke.call(this,component,context,parameters);else if(component instanceof scope.CharacterInputComponent)scope.AbstractRenderer.prototype.drawCharacter.call(this,component,context,parameters);else if(component instanceof scope.ShapeEllipse)this.drawShapeEllipse(component,context,parameters);else{if(!(component instanceof scope.ShapeLine))throw new Error("not implemented");this.drawShapeLine(component,context,parameters)}}},ShapeRenderer.prototype.drawShapes=function(components,shapes,context,parameters){for(var i in shapes){var segment=shapes[i],candidate=segment.getSelectedCandidate();if(candidate)if(candidate instanceof scope.ShapeRecognized)this.drawShapeRecognized(candidate,context,parameters);else{if(!(candidate instanceof scope.ShapeNotRecognized))throw new Error("not implemented");this.drawShapeNotRecognized(components,segment.getInkRanges(),candidate,context,parameters)}}},ShapeRenderer.prototype.drawShapeRecognized=function(shapeRecognized,context,parameters){var primitives=shapeRecognized.getPrimitives();for(var i in primitives)this.drawShapePrimitive(primitives[i],context,parameters);var showBoundingBoxes=this.getParameters().getShowBoundingBoxes();if(parameters&&(showBoundingBoxes=parameters.getShowBoundingBoxes()),showBoundingBoxes){var rectangleList=[];for(var j in primitives)rectangleList.push(this.getPrimitiveBoundingBox(primitives[j]));var boundingRect=scope.MathUtils.getBoundingRect(rectangleList);this.drawRectangle(boundingRect,context,parameters)}},ShapeRenderer.prototype.drawShapeNotRecognized=function(components,inkRanges,shapeNotRecognized,context,parameters){for(var i in inkRanges){var extractedStrokes=this.extractStroke(components,inkRanges[i]);this.drawStrokes(extractedStrokes,context,parameters)}},ShapeRenderer.prototype.drawShapePrimitive=function(primitive,context,parameters){primitive instanceof scope.ShapeEllipse?this.drawShapeEllipse(primitive,context,parameters):primitive instanceof scope.ShapeLine&&this.drawShapeLine(primitive,context,parameters)},ShapeRenderer.prototype.drawShapeLine=function(shapeLine,context,parameters){this.drawLineByPoints(shapeLine.getFirstPoint(),shapeLine.getLastPoint(),context,parameters),shapeLine.hasBeginDecoration()&&"ARROW_HEAD"===shapeLine.getBeginDecoration()&&this.drawArrowHead(shapeLine.getFirstPoint(),shapeLine.getBeginTangentAngle(),12,context,parameters),shapeLine.hasEndDecoration()&&"ARROW_HEAD"===shapeLine.getEndDecoration()&&this.drawArrowHead(shapeLine.getLastPoint(),shapeLine.getEndTangentAngle(),12,context,parameters)},ShapeRenderer.prototype.drawEllipseArc=function(centerPoint,maxRadius,minRadius,orientation,startAngle,sweepAngle,context,parameters){var angleStep=.02,z1=Math.cos(orientation),z3=Math.sin(orientation),z2=z1,z4=z3;z1*=maxRadius,z2*=minRadius,z3*=maxRadius,z4*=minRadius;var n=Math.floor(Math.abs(sweepAngle)/angleStep),boundariesPoints=[];context.save();try{parameters?(context.fillStyle=parameters.getColor(),context.strokeStyle=parameters.getColor(),context.globalAlpha=parameters.getAlpha(),context.lineWidth=.5*parameters.getWidth()):(context.fillStyle=this.parameters.getColor(),context.strokeStyle=this.parameters.getColor(),context.globalAlpha=this.parameters.getAlpha(),context.lineWidth=.5*this.parameters.getWidth()),context.beginPath();for(var i=0;n>=i;i++){var angle=startAngle+i/n*sweepAngle,alpha=Math.atan2(Math.sin(angle)/minRadius,Math.cos(angle)/maxRadius),cosAlpha=Math.cos(alpha),sinAlpha=Math.sin(alpha),x=centerPoint.x+z1*cosAlpha-z4*sinAlpha,y=centerPoint.y+z2*sinAlpha+z3*cosAlpha;0===i?context.moveTo(x,y):context.lineTo(x,y),(0===i||i===n)&&boundariesPoints.push({x:x,y:y})}context.stroke()}finally{context.restore()}return boundariesPoints},ShapeRenderer.prototype.drawShapeEllipse=function(shapeEllipse,context,parameters){var points=this.drawEllipseArc(shapeEllipse.getCenter(),shapeEllipse.getMaxRadius(),shapeEllipse.getMinRadius(),shapeEllipse.getOrientation(),shapeEllipse.getStartAngle(),shapeEllipse.getSweepAngle(),context,parameters);shapeEllipse.hasBeginDecoration()&&"ARROW_HEAD"===shapeEllipse.getBeginDecoration()&&this.drawArrowHead(points[0],shapeEllipse.getBeginTangentAngle(),12,context,parameters),shapeEllipse.hasEndDecoration()&&"ARROW_HEAD"===shapeEllipse.getEndDecoration()&&this.drawArrowHead(points[1],shapeEllipse.getEndTangentAngle(),12,context,parameters)},ShapeRenderer.prototype.getPrimitiveBoundingBox=function(primitive){var rectangle=null;return primitive instanceof scope.ShapeEllipse?rectangle=scope.MathUtils.getEllipseArcRect(primitive.getCenter(),primitive.getMaxRadius(),primitive.getMinRadius(),primitive.getOrientation(),primitive.getStartAngle(),primitive.getSweepAngle()):primitive instanceof scope.ShapeLine&&(rectangle=scope.MathUtils.getLineRect(primitive.getFirstPoint(),primitive.getLastPoint())),rectangle},scope.ShapeRenderer=ShapeRenderer}(MyScript),function(scope){function MathRenderer(){scope.AbstractRenderer.call(this)}MathRenderer.prototype=new scope.AbstractRenderer,MathRenderer.prototype.constructor=MathRenderer,MathRenderer.prototype.drawRecognitionResult=function(components,recognitionResult,context,parameters){var notScratchOutComponents=this.removeScratchOut(components,recognitionResult.getScratchOutResults());this.drawComponents(notScratchOutComponents,context,parameters)},MathRenderer.prototype.removeScratchOut=function(components,scratchOutResults){if(!scratchOutResults||0===scratchOutResults.length)return components;var cloneComponents=components.slice(0),componentsToRemove=[];for(var k in scratchOutResults)if(scratchOutResults[k].getErasedInkRanges()){for(var n in scratchOutResults[k].getErasedInkRanges())componentsToRemove.push(scratchOutResults[k].getErasedInkRanges()[n].getComponent());for(var p in scratchOutResults[k].getInkRanges())componentsToRemove.push(scratchOutResults[k].getInkRanges()[p].getComponent())}componentsToRemove.sort(function(a,b){return b-a});for(var z in componentsToRemove)cloneComponents.splice(componentsToRemove[z],1);return cloneComponents},scope.MathRenderer=MathRenderer}(MyScript),function(scope){function MusicRenderer(){scope.AbstractRenderer.call(this)}MusicRenderer.prototype=new scope.AbstractRenderer,MusicRenderer.prototype.constructor=MusicRenderer,MusicRenderer.prototype.drawRecognitionResult=function(components,recognitionResult,context,parameters){var notScratchOutComponents=this.removeScratchOut(components,recognitionResult.getScratchOutResults());this.drawComponents(notScratchOutComponents,context,parameters)},MusicRenderer.prototype.removeScratchOut=function(components,scratchOutResults){if(!scratchOutResults||0===scratchOutResults.length)return components;var cloneComponents=components.slice(0),componentsToRemove=[];for(var k in scratchOutResults)if(scratchOutResults[k].getErasedInputRanges()){for(var n in scratchOutResults[k].getErasedInputRanges())componentsToRemove.push(scratchOutResults[k].getErasedInputRanges()[n].getComponent());for(var p in scratchOutResults[k].getInputRanges())componentsToRemove.push(scratchOutResults[k].getInputRanges()[p].getComponent())}componentsToRemove.sort(function(a,b){return b-a});for(var z in componentsToRemove)cloneComponents.splice(componentsToRemove[z],1);return cloneComponents},MusicRenderer.prototype.drawStaff=function(staff,context,parameters){var staffHeight=staff.getTop()+(staff.getCount()-1)*staff.getGap(),staves=1;context.beginPath();for(var i=0;staves>i;i++)for(var offset=staffHeight*i,j=0;j=i;i++){var angle=startAngle+i/n*sweepAngle,alpha=Math.atan2(Math.sin(angle)/minRadius,Math.cos(angle)/maxRadius),cosAlpha=Math.cos(alpha),sinAlpha=Math.sin(alpha),x=centerPoint.x+z1*cosAlpha-z4*sinAlpha,y=centerPoint.y+z2*sinAlpha+z3*cosAlpha;0===i?context.moveTo(x,y):context.lineTo(x,y),(0===i||i===n)&&boundariesPoints.push({x:x,y:y})}context.stroke()}finally{context.restore()}return boundariesPoints},AnalyzerRenderer.prototype.drawShapeEllipse=function(shapeEllipse,context,parameters){var points=this.drawEllipseArc(shapeEllipse.getCenter(),shapeEllipse.getMaxRadius(),shapeEllipse.getMinRadius(),shapeEllipse.getOrientation(),shapeEllipse.getStartAngle(),shapeEllipse.getSweepAngle(),context,parameters);shapeEllipse.hasBeginDecoration()&&"ARROW_HEAD"===shapeEllipse.getBeginDecoration()&&this.drawArrowHead(points[0],shapeEllipse.getBeginTangentAngle(),12,context,parameters),shapeEllipse.hasEndDecoration()&&"ARROW_HEAD"===shapeEllipse.getEndDecoration()&&this.drawArrowHead(points[1],shapeEllipse.getEndTangentAngle(),12,context,parameters)},AnalyzerRenderer.prototype.getPrimitiveBoundingBox=function(primitive){var rectangle=null;return primitive instanceof scope.ShapeEllipse?rectangle=scope.MathUtils.getEllipseArcRect(primitive.getCenter(),primitive.getMaxRadius(),primitive.getMinRadius(),primitive.getOrientation(),primitive.getStartAngle(),primitive.getSweepAngle()):primitive instanceof scope.ShapeLine&&(rectangle=scope.MathUtils.getLineRect(primitive.getFirstPoint(),primitive.getLastPoint())),rectangle},scope.AnalyzerRenderer=AnalyzerRenderer}(MyScript); +}(MyScript),function(scope){function AnalyzerElement(obj){obj&&(this.elementType=obj.elementType)}AnalyzerElement.prototype.getElementType=function(){return this.elementType},scope.AnalyzerElement=AnalyzerElement}(MyScript),function(scope){function AnalyzerCell(obj){scope.AnalyzerElement.call(this,obj),obj&&(this.data=new scope.AnalyzerCellData(obj.data))}AnalyzerCell.prototype=new scope.AnalyzerElement,AnalyzerCell.prototype.constructor=AnalyzerCell,AnalyzerCell.prototype.getData=function(){return this.data},scope.AnalyzerCell=AnalyzerCell}(MyScript),function(scope){function AnalyzerCellData(obj){obj&&(this.firstColumn=obj.firstColumn,this.lastColumn=obj.lastColumn,this.firstRow=obj.firstRow,this.lastRow=obj.lastRow,this.height=obj.height,this.width=obj.width,this.orientation=obj.orientation,this.topLeftPoint=new scope.Point(obj.topLeftPoint),this.topBorder=obj.topBorder,this.bottomBorder=obj.bottomBorder,this.leftBorder=obj.leftBorder,this.rightBorder=obj.rightBorder)}AnalyzerCellData.prototype.getFirstColumn=function(){return this.firstColumn},AnalyzerCellData.prototype.getLastColumn=function(){return this.lastColumn},AnalyzerCellData.prototype.getFirstRow=function(){return this.firstRow},AnalyzerCellData.prototype.getLastRow=function(){return this.lastRow},AnalyzerCellData.prototype.getHeight=function(){return this.height},AnalyzerCellData.prototype.getWidth=function(){return this.width},AnalyzerCellData.prototype.getOrientation=function(){return this.orientation},AnalyzerCellData.prototype.getTopLeftPoint=function(){return this.topLeftPoint},AnalyzerCellData.prototype.hasTopBorder=function(){return this.topBorder},AnalyzerCellData.prototype.hasBottomBorder=function(){return this.bottomBorder},AnalyzerCellData.prototype.hasLeftBorder=function(){return this.leftBorder},AnalyzerCellData.prototype.hasRightBorder=function(){return this.rightBorder},AnalyzerCellData.prototype.getBoundingBox=function(){var rectangle=new scope.Rectangle;return rectangle.setTopLeftPoint(this.getTopLeftPoint()),rectangle.setWidth(this.getWidth()),rectangle.setHeight(this.getHeight()),rectangle},scope.AnalyzerCellData=AnalyzerCellData}(MyScript),function(scope){function AnalyzerDocument(obj){if(scope.AnalyzerElement.call(this,obj),this.textLines=[],this.shapes=[],this.tables=[],this.groups=[],obj){for(var i in obj.textLines)this.textLines.push(new scope.AnalyzerTextLine(obj.textLines[i]));for(var j in obj.shapes)this.shapes.push(new scope.ShapeSegment(obj.shapes[j]));for(var k in obj.tables)this.tables.push(new scope.AnalyzerTable(obj.tables[k]));for(var l in obj.groups)this.groups.push(new scope.AnalyzerGroup(obj.groups[l]))}}AnalyzerDocument.prototype=new scope.AnalyzerElement,AnalyzerDocument.prototype.constructor=AnalyzerDocument,AnalyzerDocument.prototype.getTextLines=function(){return this.textLines},AnalyzerDocument.prototype.getShapes=function(){return this.shapes},AnalyzerDocument.prototype.getTables=function(){return this.tables},AnalyzerDocument.prototype.getGroups=function(){return this.groups},scope.AnalyzerDocument=AnalyzerDocument}(MyScript),function(scope){function AnalyzerElementReference(obj){obj&&(this.uniqueID=obj.uniqueID,this.type=obj.type)}AnalyzerElementReference.prototype.getUniqueId=function(){return this.uniqueID},AnalyzerElementReference.prototype.getType=function(){return this.type},scope.AnalyzerElementReference=AnalyzerElementReference}(MyScript),function(scope){function AnalyzerGroup(obj){if(scope.AnalyzerElement.call(this,obj),this.elementReferences=[],obj){this.type=obj.type,this.uniqueID=obj.uniqueID;for(var i in obj.elementReferences)this.elementReferences.push(new scope.AnalyzerElementReference(obj.elementReferences[i]))}}AnalyzerGroup.prototype=new scope.AnalyzerElement,AnalyzerGroup.prototype.constructor=AnalyzerGroup,AnalyzerGroup.prototype.getElementReferences=function(){return this.elementReferences},AnalyzerGroup.prototype.getType=function(){return this.type},AnalyzerGroup.prototype.getUniqueId=function(){return this.uniqueID},scope.AnalyzerGroup=AnalyzerGroup}(MyScript),function(scope){function AnalyzerInkRange(obj){obj&&(this.firstPoint=new scope.Point(obj.firstPoint),this.lastPoint=new scope.Point(obj.lastPoint),this.stroke=new scope.AnalyzerRecognizedStroke(obj.stroke))}AnalyzerInkRange.prototype.getFirstPoint=function(){return this.firstPoint},AnalyzerInkRange.prototype.getLastPoint=function(){return this.lastPoint},AnalyzerInkRange.prototype.getStroke=function(){return this.stroke},scope.AnalyzerInkRange=AnalyzerInkRange}(MyScript),function(scope){function AnalyzerLine(obj){scope.AnalyzerElement.call(this,obj),obj&&(this.data=new scope.AnalyzerLineData(obj.data))}AnalyzerLine.prototype=new scope.AnalyzerElement,AnalyzerLine.prototype.constructor=AnalyzerLine,AnalyzerLine.prototype.getData=function(){return this.data},scope.AnalyzerLine=AnalyzerLine}(MyScript),function(scope){function AnalyzerLineData(obj){obj&&(this.p1=new scope.Point(obj.p1),this.p2=new scope.Point(obj.p2))}AnalyzerLineData.prototype.getP1=function(){return this.p1},AnalyzerLineData.prototype.getP2=function(){return this.p2},scope.AnalyzerLineData=AnalyzerLineData}(MyScript),function(scope){function AnalyzerRecognizedStroke(obj){obj&&(this.type=obj.type,this.x=obj.x,this.y=obj.y)}AnalyzerRecognizedStroke.prototype.getType=function(){return this.type},AnalyzerRecognizedStroke.prototype.getX=function(){return this.x},AnalyzerRecognizedStroke.prototype.getY=function(){return this.y},scope.AnalyzerRecognizedStroke=AnalyzerRecognizedStroke}(MyScript),function(scope){function AnalyzerResult(obj){scope.AbstractResult.call(this,obj),obj&&(this.result=new scope.AnalyzerDocument(obj.result))}AnalyzerResult.prototype=new scope.AbstractResult,AnalyzerResult.prototype.constructor=AnalyzerResult,AnalyzerResult.prototype.getAnalyzerDocument=function(){return this.result},scope.AnalyzerResult=AnalyzerResult}(MyScript),function(scope){function AnalyzerStrokeType(obj){obj&&(this.inkRange=new scope.AnalyzerInkRange(obj.inkRange),this.type=obj.type)}AnalyzerStrokeType.prototype.getInkRange=function(){return this.inkRange},AnalyzerStrokeType.prototype.getType=function(){return this.type},scope.AnalyzerStrokeType=AnalyzerStrokeType}(MyScript),function(scope){function AnalyzerTable(obj){if(scope.AnalyzerElement.call(this,obj),this.lines=[],this.cells=[],this.inkRanges=[],obj){this.data=new scope.AnalyzerTableData(obj.data);for(var i in obj.lines)this.lines.push(new scope.AnalyzerLine(obj.lines[i]));for(var j in obj.cells)this.cells.push(new scope.AnalyzerCell(obj.cells[j]));for(var k in obj.inkRanges)this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[k]))}}AnalyzerTable.prototype=new scope.AnalyzerElement,AnalyzerTable.prototype.constructor=AnalyzerTable,AnalyzerTable.prototype.getData=function(){return this.data},AnalyzerTable.prototype.getLines=function(){return this.lines},AnalyzerTable.prototype.getCells=function(){return this.cells},AnalyzerTable.prototype.getInkRanges=function(){return this.inkRanges},scope.AnalyzerTable=AnalyzerTable}(MyScript),function(scope){function AnalyzerTableData(obj){obj&&(this.columnCount=obj.columnCount,this.rowCount=obj.rowCount)}AnalyzerTableData.prototype.getColumnCount=function(){return this.columnCount},AnalyzerTableData.prototype.getRowCount=function(){return this.rowCount},scope.AnalyzerTableData=AnalyzerTableData}(MyScript),function(scope){function AnalyzerTextLine(obj){if(scope.AnalyzerElement.call(this,obj),this.inkRanges=[],this.underlineList=[],obj){this.data=new scope.AnalyzerTextLineData(obj.data),this.result=new scope.TextDocument(obj.result);for(var i in obj.inkRanges)this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[i]));for(var j in obj.underlineList)this.underlineList.push(new scope.AnalyzerUnderline(obj.underlineList[j]))}}AnalyzerTextLine.prototype=new scope.AnalyzerElement,AnalyzerTextLine.prototype.constructor=AnalyzerTextLine,AnalyzerTextLine.prototype.getData=function(){return this.data},AnalyzerTextLine.prototype.getTextDocument=function(){return this.result},AnalyzerTextLine.prototype.getInkRanges=function(){return this.inkRanges},AnalyzerTextLine.prototype.getUnderlineList=function(){return this.underlineList},scope.AnalyzerTextLine=AnalyzerTextLine}(MyScript),function(scope){function AnalyzerTextLineData(obj){obj&&(this.baselinePos=obj.baselinePos,this.toMidline=obj.toMidline,this.orientation=obj.orientation,this.topLeftPoint=new scope.Point(obj.topLeftPoint),this.textHeight=obj.textHeight,this.justificationType=obj.justificationType,this.height=obj.height,this.width=obj.width)}AnalyzerTextLineData.prototype.getBaselinePos=function(){return this.baselinePos},AnalyzerTextLineData.prototype.getToMidline=function(){return this.toMidline},AnalyzerTextLineData.prototype.getOrientation=function(){return this.orientation},AnalyzerTextLineData.prototype.getTopLeftPoint=function(){return this.topLeftPoint},AnalyzerTextLineData.prototype.getTextHeight=function(){return this.textHeight},AnalyzerTextLineData.prototype.getJustificationType=function(){return this.justificationType},AnalyzerTextLineData.prototype.getHeight=function(){return this.height},AnalyzerTextLineData.prototype.getWidth=function(){return this.width},AnalyzerTextLineData.prototype.getBoundingBox=function(){var rectangle=new scope.Rectangle;return(this.getTopLeftPoint()||this.getWidth()||this.getHeight())&&(rectangle.setTopLeftPoint(this.getTopLeftPoint()),rectangle.setWidth(this.getWidth()),rectangle.setHeight(this.getHeight())),rectangle},scope.AnalyzerTextLineData=AnalyzerTextLineData}(MyScript),function(scope){function AnalyzerUnderline(obj){if(scope.AnalyzerElement.call(this,obj),this.inkRanges=[],obj){this.data=new scope.AnalyzerUnderlineData(obj.data);for(var i in obj.inkRanges)this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[i]))}}AnalyzerUnderline.prototype=new scope.AnalyzerElement,AnalyzerUnderline.prototype.constructor=AnalyzerUnderline,AnalyzerUnderline.prototype.getData=function(){return this.data},AnalyzerUnderline.prototype.getInkRanges=function(){return this.inkRanges},scope.AnalyzerUnderline=AnalyzerUnderline}(MyScript),function(scope){function AnalyzerUnderlineData(obj){obj&&(this.firstCharacter=obj.firstCharacter,this.lastCharacter=obj.lastCharacter)}AnalyzerUnderlineData.prototype.getFirstCharacter=function(){return this.firstCharacter},AnalyzerUnderlineData.prototype.getLastCharacter=function(){return this.lastCharacter},scope.AnalyzerUnderlineData=AnalyzerUnderlineData}(MyScript),function(scope,Q){function NetworkInterface(){}NetworkInterface.parse=function(req){var result;try{result=JSON.parse(req.responseText)}catch(e){result=req.responseText}return result},NetworkInterface.transformRequest=function(obj){var str=[];for(var p in obj)"undefined"!=typeof obj[p]&&"function"!=typeof obj[p]&&str.push(encodeURIComponent(p)+"="+encodeURIComponent(obj[p]));return str.join("&")},NetworkInterface.prototype.xhr=function(type,url,data){function onStateChange(){4===request.readyState&&request.status>=200&&request.status<300&&deferred.resolve(NetworkInterface.parse(request))}function onLoad(){request.status>=200&&request.status<300?deferred.resolve(NetworkInterface.parse(request)):deferred.reject(new Error(request.responseText))}function onError(){deferred.reject(new Error("Can't XHR "+url))}function onProgress(event){deferred.notify(event.loaded/event.total)}var deferred=Q.defer(),request=new XMLHttpRequest;return request.open(type,url,!0),request.setRequestHeader("Accept","application/json"),request.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8"),request.onload=onLoad,request.onerror=onError,request.onprogress=onProgress,request.onreadystatechange=onStateChange,request.send(NetworkInterface.transformRequest(data)),deferred.promise},NetworkInterface.prototype.get=function(src,params){return params&&(src+="?"+NetworkInterface.transformRequest(params)),this.xhr("GET",src).then(function(response){return response},function(response){throw response})},NetworkInterface.prototype.put=function(url,data){return this.xhr("PUT",url,data).then(function(response){return response},function(response){throw response})},NetworkInterface.prototype.post=function(url,data){return this.xhr("POST",url,data).then(function(response){return response},function(response){throw response})},NetworkInterface.prototype["delete"]=function(url,data){return this.xhr("DELETE",url,data).then(function(response){return response},function(response){throw response})},scope.NetworkInterface=NetworkInterface}(MyScript,Q),function(scope,CryptoJS){function AbstractRecognizer(host){this.host="cloud.myscript.com",host&&(this.host=host),this.http=new scope.NetworkInterface}AbstractRecognizer.prototype.getAvailableLanguageList=function(applicationKey,inputMode){var data=new scope.RecognitionLanguagesData;return data.setApplicationKey(applicationKey),data.setInputMode(inputMode),this.http.get("//"+this.host+"/api/v3.0/recognition/rest/text/languages.json",data).then(function(response){return response.result},function(response){return response})},AbstractRecognizer.prototype.computeHmac=function(applicationKey,data,hmacKey){var jsonInput="object"==typeof data?JSON.stringify(data):data;return CryptoJS.HmacSHA512(jsonInput,applicationKey+hmacKey).toString(CryptoJS.enc.Hex)},scope.AbstractRecognizer=AbstractRecognizer}(MyScript,CryptoJS),function(scope){function AbstractWSRecognizer(host){scope.AbstractRecognizer.call(this,host)}AbstractWSRecognizer.prototype=new scope.AbstractRecognizer,AbstractWSRecognizer.prototype.constructor=AbstractWSRecognizer,AbstractWSRecognizer.prototype.getMessageCallback=function(){return this.messageCallback},AbstractWSRecognizer.prototype.setMessageCallback=function(callback){this.messageCallback=callback},AbstractWSRecognizer.prototype.getOpenCallback=function(){return this.openCallback},AbstractWSRecognizer.prototype.setOpenCallback=function(callback){this.openCallback=callback},AbstractWSRecognizer.prototype.getCloseCallback=function(){return this.closeCallback},AbstractWSRecognizer.prototype.setCloseCallback=function(callback){this.closeCallback=callback},AbstractWSRecognizer.prototype.getErrorCallback=function(){return this.errorCallback},AbstractWSRecognizer.prototype.setErrorCallback=function(callback){this.errorCallback=callback},AbstractWSRecognizer.prototype.getState=function(){var deferred=Q.defer();return this.socket?deferred.resolve(this.socket.readyState):deferred.reject(new Error("Can't find WebSocket")),deferred.promise},AbstractWSRecognizer.prototype.close=function(){var deferred=Q.defer();return this.socket?deferred.resolve(this.socket.close()):deferred.reject(new Error("Can't find WebSocket")),deferred.promise},AbstractWSRecognizer.prototype.sendMessage=function(message){var deferred=Q.defer();return this.socket?deferred.resolve(this.socket.send(JSON.stringify(message))):deferred.reject(new Error("Can't find WebSocket")),deferred.promise},AbstractWSRecognizer.prototype.initWSRecognition=function(applicationKey){var message=new scope.InitRequestWSMessage;return message.setApplicationKey(applicationKey),this.sendMessage(message)},AbstractWSRecognizer.prototype.takeUpHmacChallenge=function(applicationKey,challenge,hmacKey){var message=new scope.ChallengeRequestWSMessage;return message.setApplicationKey(applicationKey),message.setChallenge(challenge),message.setHmacSignature(this.computeHmac(applicationKey,challenge,hmacKey)),this.sendMessage(message)},AbstractWSRecognizer.prototype.resetWSRecognition=function(){var message=new scope.ResetRequestWSMessage;return this.sendMessage(message)},scope.AbstractWSRecognizer=AbstractWSRecognizer}(MyScript),function(scope){function TextRecognizer(host){scope.AbstractRecognizer.call(this,host),this.parameters=new scope.TextParameter,this.parameters.setLanguage("en_US"),this.parameters.setInputMode("CURSIVE")}TextRecognizer.prototype=new scope.AbstractRecognizer,TextRecognizer.prototype.constructor=TextRecognizer,TextRecognizer.prototype.getParameters=function(){return this.parameters},TextRecognizer.prototype.setParameters=function(parameters){this.parameters=parameters},TextRecognizer.prototype.doSimpleRecognition=function(applicationKey,instanceId,inputUnits,hmacKey,parameters){var input=new scope.TextRecognitionInput;input.setParameters(parameters?parameters:this.parameters),input.setInputUnits(inputUnits);var data=new scope.TextRecognitionData;return data.setApplicationKey(applicationKey),data.setTextRecognitionInput(input),data.setInstanceId(instanceId),data.setHmac(this.computeHmac(applicationKey,input,hmacKey)),this.http.post("//"+this.host+"/api/v3.0/recognition/rest/text/doSimpleRecognition.json",data).then(function(response){return new scope.TextResult(response)},function(response){throw response})},scope.TextRecognizer=TextRecognizer}(MyScript),function(scope){function TextWSRecognizer(host){scope.AbstractWSRecognizer.call(this,host),this.parameters=new scope.TextParameter,this.parameters.setLanguage("en_US"),this.parameters.setInputMode("CURSIVE"),this.socket=new WebSocket("ws://"+this.host+"/api/v3.0/recognition/ws/text");var self=this;this.socket.onopen=function(message){console.log("WebSocket opened"),self.openCallback&&self.openCallback(message)},this.socket.onmessage=function(message){var data=JSON.parse(message.data);switch(console.log("WebSocket message received"),data.type){case"init":data=new scope.InitResponseWSMessage(data);break;case"error":data=new scope.ErrorResponseWSMessage(data);break;case"hmacChallenge":data=new scope.ChallengeResponseWSMessage(data);break;default:data=new scope.TextResponseWSMessage(data)}self.messageCallback&&self.messageCallback(data)},this.socket.onerror=function(message){console.log("WebSocket error received"),self.errorCallback&&self.errorCallback(message)},this.socket.onclose=function(message){console.log("WebSocket opened"),self.closeCallback&&self.closeCallback(message)}}TextWSRecognizer.prototype=new scope.AbstractWSRecognizer,TextWSRecognizer.prototype.constructor=TextWSRecognizer,TextWSRecognizer.prototype.getParameters=function(){return this.parameters},TextWSRecognizer.prototype.setParameters=function(parameters){this.parameters=parameters},TextWSRecognizer.prototype.startWSRecognition=function(inputUnits,parameters){var message=new scope.TextStartRequestWSMessage;return message.setParameters(parameters?parameters:this.getParameters()),message.setInputUnits(inputUnits),this.sendMessage(message)},TextWSRecognizer.prototype.continueWSRecognition=function(inputUnits,instanceId){var message=new scope.TextContinueRequestWSMessage;return message.setInputUnits(inputUnits),message.setInstanceId(instanceId),this.sendMessage(message)},TextWSRecognizer.prototype.doWSRecognition=function(instanceId,inputUnits,parameters){return instanceId?this.continueWSRecognition(inputUnits,instanceId):this.startWSRecognition(inputUnits,parameters)},scope.TextWSRecognizer=TextWSRecognizer}(MyScript),function(scope){function ShapeRecognizer(host){scope.AbstractRecognizer.call(this,host),this.parameters=new scope.ShapeParameter}ShapeRecognizer.prototype=new scope.AbstractRecognizer,ShapeRecognizer.prototype.constructor=ShapeRecognizer,ShapeRecognizer.prototype.getParameters=function(){return this.parameters},ShapeRecognizer.prototype.setParameters=function(parameters){this.parameters=parameters},ShapeRecognizer.prototype.doSimpleRecognition=function(applicationKey,instanceId,components,hmacKey,parameters){var input=new scope.ShapeRecognitionInput;input.setComponents(components),parameters?(input.setDoBeautification(parameters.hasBeautification()),input.setRejectDetectionSensitivity(parameters.getRejectDetectionSensitivity())):(input.setDoBeautification(this.getParameters().hasBeautification()),input.setRejectDetectionSensitivity(this.getParameters().getRejectDetectionSensitivity()));var data=new scope.ShapeRecognitionData;return data.setApplicationKey(applicationKey),data.setShapeRecognitionInput(input),data.setInstanceId(instanceId),data.setHmac(this.computeHmac(applicationKey,input,hmacKey)),this.http.post("//"+this.host+"/api/v3.0/recognition/rest/shape/doSimpleRecognition.json",data).then(function(response){return new scope.ShapeResult(response)},function(response){throw response})},ShapeRecognizer.prototype.clearShapeRecognitionSession=function(applicationKey,instanceId){var data={instanceSessionId:instanceId};return this.http.post("//"+this.host+"/api/v3.0/recognition/rest/shape/clearSessionId.json",data).then(function(response){return response},function(response){throw response})},scope.ShapeRecognizer=ShapeRecognizer}(MyScript),function(scope){function MathRecognizer(host){scope.AbstractRecognizer.call(this,host),this.parameters=new scope.MathParameter}MathRecognizer.prototype=new scope.AbstractRecognizer,MathRecognizer.prototype.constructor=MathRecognizer,MathRecognizer.prototype.getParameters=function(){return this.parameters},MathRecognizer.prototype.setParameters=function(parameters){this.parameters=parameters},MathRecognizer.prototype.doSimpleRecognition=function(applicationKey,instanceId,components,hmacKey,parameters){var input=new scope.MathRecognitionInput;input.setComponents(components),parameters?(input.setResultTypes(parameters.getResultTypes()),input.setColumnar(parameters.isColumnar()),input.setScratchOutDetectionSensitivity(parameters.getScratchOutDetectionSensitivity()),input.setUserResources(parameters.getUserResources())):(input.setResultTypes(this.getParameters().getResultTypes()),input.setColumnar(this.getParameters().isColumnar()),input.setScratchOutDetectionSensitivity(this.getParameters().getScratchOutDetectionSensitivity()),input.setUserResources(this.getParameters().getUserResources()));var data=new scope.MathRecognitionData;return data.setApplicationKey(applicationKey),data.setMathRecognitionInput(input),data.setInstanceId(instanceId),data.setHmac(this.computeHmac(applicationKey,input,hmacKey)),this.http.post("//"+this.host+"/api/v3.0/recognition/rest/math/doSimpleRecognition.json",data).then(function(response){return new scope.MathResult(response)},function(response){throw response})},scope.MathRecognizer=MathRecognizer}(MyScript),function(scope){function MathWSRecognizer(host){scope.AbstractWSRecognizer.call(this,host),this.parameters=new scope.MathParameter,this.socket=new WebSocket("ws://"+this.host+"/api/v3.0/recognition/ws/math");var self=this;this.socket.onopen=function(message){console.log("WebSocket opened"),self.openCallback&&self.openCallback(message)},this.socket.onmessage=function(message){var data=JSON.parse(message.data);switch(console.log("WebSocket message received"),data.type){case"init":data=new scope.InitResponseWSMessage(data);break;case"error":data=new scope.ErrorResponseWSMessage(data);break;case"hmacChallenge":data=new scope.ChallengeResponseWSMessage(data);break;default:data=new scope.MathResponseWSMessage(data)}self.messageCallback&&self.messageCallback(data)},this.socket.onerror=function(message){console.log("WebSocket error received"),self.errorCallback&&self.errorCallback(message)},this.socket.onclose=function(message){console.log("WebSocket opened"),self.closeCallback&&self.closeCallback(message)}}MathWSRecognizer.prototype=new scope.AbstractWSRecognizer,MathWSRecognizer.prototype.constructor=MathWSRecognizer,MathWSRecognizer.prototype.getParameters=function(){return this.parameters},MathWSRecognizer.prototype.setParameters=function(parameters){this.parameters=parameters},MathWSRecognizer.prototype.startWSRecognition=function(components,parameters){var message=new scope.MathStartRequestWSMessage;return message.setParameters(parameters?parameters:this.getParameters()),message.setComponents(components),this.sendMessage(message)},MathWSRecognizer.prototype.continueWSRecognition=function(components,instanceId){var message=new scope.MathContinueRequestWSMessage;return message.setComponents(components),message.setInstanceId(instanceId),this.sendMessage(message)},MathWSRecognizer.prototype.doWSRecognition=function(instanceId,components,parameters){return instanceId?this.continueWSRecognition(components,instanceId):this.startWSRecognition(components,parameters)},scope.MathWSRecognizer=MathWSRecognizer}(MyScript),function(scope){function MusicRecognizer(host){scope.AbstractRecognizer.call(this,host),this.parameters=new scope.MusicParameter}MusicRecognizer.prototype=new scope.AbstractRecognizer,MusicRecognizer.prototype.constructor=MusicRecognizer,MusicRecognizer.prototype.getParameters=function(){return this.parameters},MusicRecognizer.prototype.setParameters=function(parameters){this.parameters=parameters},MusicRecognizer.prototype.doSimpleRecognition=function(applicationKey,instanceId,components,hmacKey,parameters){var input=new scope.MusicRecognitionInput;input.setComponents(components),parameters?(input.setStaff(parameters.getStaff()),input.setDivisions(parameters.getDivisions()),input.setResultTypes(parameters.getResultTypes()),input.setScratchOutDetectionSensitivity(parameters.getScratchOutDetectionSensitivity()),input.setUserResources(parameters.getUserResources())):(input.setStaff(this.getParameters().getStaff()),input.setDivisions(this.getParameters().getDivisions()),input.setResultTypes(this.getParameters().getResultTypes()),input.setScratchOutDetectionSensitivity(this.getParameters().getScratchOutDetectionSensitivity()),input.setUserResources(this.getParameters().getUserResources()));var data=new scope.MusicRecognitionData;return data.setApplicationKey(applicationKey),data.setMusicRecognitionInput(input),data.setInstanceId(instanceId),data.setHmac(this.computeHmac(applicationKey,input,hmacKey)),this.http.post("//"+this.host+"/api/v3.0/recognition/rest/music/doSimpleRecognition.json",data).then(function(response){return new scope.MusicResult(response)},function(response){throw response})},scope.MusicRecognizer=MusicRecognizer}(MyScript),function(scope){function AnalyzerRecognizer(host){scope.AbstractRecognizer.call(this,host),this.parameters=new scope.AnalyzerParameter}AnalyzerRecognizer.prototype=new scope.AbstractRecognizer,AnalyzerRecognizer.prototype.constructor=AnalyzerRecognizer,AnalyzerRecognizer.prototype.getParameters=function(){return this.parameters},AnalyzerRecognizer.prototype.setParameters=function(parameters){this.parameters=parameters},AnalyzerRecognizer.prototype.doSimpleRecognition=function(applicationKey,instanceId,components,hmacKey,parameters){var input=new scope.AnalyzerRecognitionInput;input.setComponents(components),input.setParameters(parameters?parameters:this.getParameters());var data=new scope.AnalyzerRecognitionData;return data.setApplicationKey(applicationKey),data.setAnalyzerRecognitionInput(input),data.setInstanceId(instanceId),data.setHmac(this.computeHmac(applicationKey,input,hmacKey)),this.http.post("//"+this.host+"/api/v3.0/recognition/rest/analyzer/doSimpleRecognition.json",data).then(function(response){return new scope.AnalyzerResult(response)},function(response){return response})},scope.AnalyzerRecognizer=AnalyzerRecognizer}(MyScript),function(scope){function RenderingParameters(){this.color="black",this.rectColor="rgba(0, 0, 0, 0.2)",this.font="Times New Roman",this.decoration="",this.width=4,this.pressureType="SIMULATED",this.alpha="1.0",this.doFadeOutLoop=!1,this.showBoundingBoxes=!1}RenderingParameters.prototype.getColor=function(){return this.color},RenderingParameters.prototype.setColor=function(color){this.color=color},RenderingParameters.prototype.getRectColor=function(){return this.rectColor},RenderingParameters.prototype.setRectColor=function(rectColor){this.rectColor=rectColor},RenderingParameters.prototype.getFont=function(){return this.font},RenderingParameters.prototype.setFont=function(font){this.font=font},RenderingParameters.prototype.getDecoration=function(){return this.decoration},RenderingParameters.prototype.setDecoration=function(decoration){this.decoration=decoration},RenderingParameters.prototype.getWidth=function(){return this.width},RenderingParameters.prototype.setWidth=function(width){this.width=width},RenderingParameters.prototype.getPressureType=function(){return this.pressureType},RenderingParameters.prototype.setPressureType=function(pressureType){this.pressureType=pressureType},RenderingParameters.prototype.getAlpha=function(){return this.alpha},RenderingParameters.prototype.setAlpha=function(alpha){this.alpha=alpha},RenderingParameters.prototype.getDoFadeOutLoop=function(){return this.doFadeOutLoop},RenderingParameters.prototype.setDoFadeOutLoop=function(doFadeOutLoop){this.doFadeOutLoop=doFadeOutLoop},RenderingParameters.prototype.getShowBoundingBoxes=function(){return this.showBoundingBoxes},RenderingParameters.prototype.setShowBoundingBoxes=function(showBoundingBoxes){this.showBoundingBoxes=showBoundingBoxes},scope.RenderingParameters=RenderingParameters}(MyScript),function(scope){function AbstractRenderer(){this.points=[],this.drawing=!1,this.parameters=new scope.RenderingParameters}AbstractRenderer.prototype.getParameters=function(){return this.parameters},AbstractRenderer.prototype.setParameters=function(parameters){this.parameters=parameters},AbstractRenderer.prototype.drawRecognitionResult=function(components,recognitionResult,context,parameters){throw new Error("not implemented")},AbstractRenderer.prototype.drawComponents=function(components,context,parameters){for(var i in components){var component=components[i];component instanceof scope.Stroke?this.drawStroke(component,context,parameters):component instanceof scope.CharacterInputComponent&&this.drawCharacter(component,context,parameters)}},AbstractRenderer.prototype.drawStart=function(x,y){this.points.length=0,this.drawing=!0,this.points.push({x:x,y:y,pressure:.5,distance:0,length:0,ux:0,uy:0,x1:0,x2:0,y1:0,y2:0})},AbstractRenderer.prototype.drawContinue=function(x,y,context,parameters){if(this.drawing){var point={x:x,y:y,pressure:.5,distance:0,length:0,ux:0,uy:0,x1:0,x2:0,y1:0,y2:0};if(this.points.push(point),this.points.length>1){var previous=this.points[this.points.length-2];if(2===this.points.length)this.drawQuadratricStart(previous,point,context,parameters);else{var third=this.points[this.points.length-3];this.drawQuadratricContinue(third,previous,point,context,parameters)}}}},AbstractRenderer.prototype.drawEnd=function(x,y,context,parameters){if(this.drawing){if(1===this.points.length)this.drawPoint({x:x,y:y,pressure:.5,distance:0,length:0,ux:0,uy:0,x1:0,x2:0,y1:0,y2:0},context,parameters);else if(this.points.length>1){var lastPoint=this.points[this.points.length-1],point=this.points[this.points.length-2];this.drawQuadratricEnd(point,lastPoint,context,parameters)}this.drawing=!1}},AbstractRenderer.prototype.clear=function(context){context.clearRect(0,0,context.canvas.width,context.canvas.height)},AbstractRenderer.prototype.drawGuidelines=function(horizontalSpacing,verticalSpacing,context,parameters){context.save();try{if(parameters?(context.fillStyle=parameters.getColor(),context.strokeStyle=parameters.getColor(),context.lineWidth=.5*parameters.getWidth()):(context.fillStyle=this.parameters.getColor(),context.strokeStyle=this.parameters.getColor(),context.lineWidth=.5*this.parameters.getWidth()),context.clearRect(0,0,context.canvas.clientWidth,context.canvas.clientHeight),verticalSpacing)for(var y=verticalSpacing;y1){var p6=strokePoints[k-1],p7=strokePoints[k];this.drawQuadratricEnd(p6,p7,context,parameters)}},AbstractRenderer.prototype.drawCharacter=function(character,context,parameters){throw new Error("not implemented")},AbstractRenderer.prototype.drawPoint=function(point,context,parameters){context.save();try{parameters?(context.fillStyle=parameters.getColor(),context.strokeStyle=parameters.getColor(),context.globalAlpha=parameters.getAlpha(),context.lineWidth=.5*parameters.getWidth(),context.beginPath(),context.arc(point.x,point.y,.5*parameters.getWidth(),0,2*Math.PI),context.fill()):(context.fillStyle=this.parameters.getColor(),context.strokeStyle=this.parameters.getColor(),context.globalAlpha=this.parameters.getAlpha(),context.lineWidth=.5*this.parameters.getWidth(),context.beginPath(),context.arc(point.x,point.y,.5*this.parameters.getWidth(),0,2*Math.PI),context.fill())}finally{context.restore()}},AbstractRenderer.prototype.drawArrowHead=function(headPoint,angle,length,context,parameters){var alpha=phi(angle+Math.PI-Math.PI/8),beta=phi(angle-Math.PI+Math.PI/8);context.save();try{parameters?(context.fillStyle=parameters.getColor(),context.strokeStyle=parameters.getColor(),context.globalAlpha=parameters.getAlpha(),context.lineWidth=.5*parameters.getWidth()):(context.fillStyle=this.parameters.getColor(),context.strokeStyle=this.parameters.getColor(),context.globalAlpha=this.parameters.getAlpha(),context.lineWidth=.5*this.parameters.getWidth()),context.moveTo(headPoint.x,headPoint.y),context.beginPath(),context.lineTo(headPoint.x+length*Math.cos(alpha),headPoint.y+length*Math.sin(alpha)),context.lineTo(headPoint.x+length*Math.cos(beta),headPoint.y+length*Math.sin(beta)),context.lineTo(headPoint.x,headPoint.y),context.fill()}finally{context.restore()}},AbstractRenderer.prototype.extractStroke=function(strokes,inkRange){for(var result=[],firstPointIndex=Math.floor(inkRange.getFirstPoint()),lastPointIndex=Math.ceil(inkRange.getLastPoint()),strokeIndex=inkRange.getFirstStroke();strokeIndex<=inkRange.getLastStroke();strokeIndex++){for(var currentStroke=strokes[strokeIndex],currentStrokePointCount=currentStroke.x.length,newStroke=new scope.Stroke,x=[],y=[],pointIndex=firstPointIndex;strokeIndex===inkRange.getLastStroke()&&lastPointIndex>=pointIndex&¤tStrokePointCount>pointIndex||strokeIndex!==inkRange.getLastStroke()&¤tStrokePointCount>pointIndex;pointIndex++)x.push(currentStroke.x[pointIndex]),y.push(currentStroke.y[pointIndex]);newStroke.setX(x),newStroke.setY(y),result.push(newStroke)}return result},AbstractRenderer.prototype.drawQuadratricStart=function(p1,p2,context,parameters){parameters?computePoint(null,p1,!0,!1,parameters.getPressureType(),parameters.getWidth()):computePoint(null,p1,!0,!1,this.parameters.getPressureType(),this.parameters.getWidth()),context.save();try{parameters?(context.fillStyle=parameters.getColor(),context.strokeStyle=parameters.getColor(),context.globalAlpha=parameters.getAlpha(),context.lineWidth=.5*parameters.getWidth()):(context.fillStyle=this.parameters.getColor(),context.strokeStyle=this.parameters.getColor(),context.globalAlpha=this.parameters.getAlpha(),context.lineWidth=.5*this.parameters.getWidth()),context.beginPath(),strokeFirstSegment(p1,p2,context),context.fill()}finally{context.restore()}},AbstractRenderer.prototype.drawQuadratricContinue=function(p1,p2,p3,context,parameters){parameters?computePoint(p2,p3,!1,!1,parameters.getPressureType(),parameters.getWidth()):computePoint(p2,p3,!1,!1,this.parameters.getPressureType(),this.parameters.getWidth()),context.save();try{parameters?(context.fillStyle=parameters.getColor(),context.strokeStyle=parameters.getColor(),context.globalAlpha=parameters.getAlpha(),context.lineWidth=.5*parameters.getWidth()):(context.fillStyle=this.parameters.getColor(),context.strokeStyle=this.parameters.getColor(),context.globalAlpha=this.parameters.getAlpha(),context.lineWidth=.5*this.parameters.getWidth()),context.beginPath(),strokeSegment(p1,p2,p3,context),context.fill()}finally{context.restore()}},AbstractRenderer.prototype.drawQuadratricEnd=function(p1,p2,context,parameters){parameters?computePoint(p1,p2,!1,!0,parameters.getPressureType(),parameters.getWidth()):computePoint(p1,p2,!1,!0,this.parameters.getPressureType(),this.parameters.getWidth()),context.save();try{parameters?(context.fillStyle=parameters.getColor(),context.strokeStyle=parameters.getColor(),context.globalAlpha=parameters.getAlpha(),context.lineWidth=.5*parameters.getWidth()):(context.fillStyle=this.parameters.getColor(),context.strokeStyle=this.parameters.getColor(),context.globalAlpha=this.parameters.getAlpha(),context.lineWidth=.5*this.parameters.getWidth()),context.beginPath(),strokeLastSegment(p1,p2,context),context.fill()}finally{context.restore()}};var strokeFirstSegment=function(p1,p2,context){var x11=p1.x1,y11=p1.y1,x12=p1.x2,y12=p1.y2,x21=.5*p1.x1+p2.x1,y21=.5*p1.y1+p2.y1,x22=.5*p1.x2+p2.x2,y22=.5*p1.y2+p2.y2;context.moveTo(x11,y11),context.lineTo(x21,y21),context.lineTo(x22,y22),context.lineTo(x12,y12),context.lineTo(x11,y11)},strokeSegment=function(p1,p2,p3,context){var x11=.5*(p1.x1+p2.x1),y11=.5*(p1.y1+p2.y1),x12=.5*(p1.x2+p2.x2),y12=.5*(p1.y2+p2.y2),x21=.5*(p2.x1+p3.x1),y21=.5*(p2.y1+p3.y1),x22=.5*(p2.x2+p3.x2),y22=.5*(p2.y2+p3.y2);context.moveTo(x11,y11),context.quadraticCurveTo(p2.x1,p2.y1,x21,y21),context.lineTo(x22,y22),context.quadraticCurveTo(p2.x2,p2.y2,x12,y12),context.lineTo(x11,y11)},strokeLastSegment=function(p1,p2,context){var x11=.5*(p1.x1+p2.x1),y11=.5*(p1.y1+p2.y1),x12=.5*(p1.x2+p2.x2),y12=.5*(p1.y2+p2.y2),x21=p2.x1,y21=p2.y1,x22=p2.x2,y22=p2.y2;context.moveTo(x11,y11),context.lineTo(x21,y21),context.lineTo(x22,y22),context.lineTo(x12,y12),context.lineTo(x11,y11)},phi=function(angle){return angle=(angle+Math.PI)%(2*Math.PI)-Math.PI,angle<-Math.PI&&(angle+=2*Math.PI),angle},computePoint=function(previous,point,isFirst,isLast,pressureType,penWidth){if(null!==previous){computeDistance(previous,point);var strokeLength=previous.length+point.distance;point.length=strokeLength}switch(pressureType){case"SIMULATED":computePressure(point,point.distance,point.length);break;case"CONSTANT":point.pressure=1;break;case"REAL":break;default:throw new Error("Unknown pressure type")}computeLastControls(point,penWidth),null===previous||isLast||(isFirst&&computeFirstControls(previous,point,penWidth),isLast?computeLastControls(point,penWidth):computeControls(previous,point,penWidth))},computeDistance=function(previous,point){var dx=point.x-previous.x,dy=point.y-previous.y,d=Math.sqrt(dx*dx+dy*dy);0!==d&&(point.distance=d,point.ux=dx/d,point.uy=dy/d)},computePressure=function(point,distance,length){var k,pressure;k=10>distance?.2+Math.pow(.1*distance,.4):distance>length-10?.2+Math.pow(.1*(length-distance),.4):1,pressure=k*Math.max(.1,1-.1*Math.sqrt(point.distance)),isNaN(parseFloat(pressure))&&(pressure=.5),point.pressure=pressure},computeFirstControls=function(first,next,penWidth){var r=.5*penWidth*first.pressure,nx=-r*next.uy,ny=r*next.ux;first.x1=first.x+nx,first.y1=first.y+ny,first.x2=first.x-nx,first.y1=first.y-ny},computeControls=function(point,next,penWidth){var ux=point.ux+next.ux,uy=point.uy+next.uy,u=Math.sqrt(ux*ux+uy*uy);if(0!==u){var r=.5*penWidth*point.pressure,nx=-r*uy/u,ny=r*ux/u;point.x1=point.x+nx,point.y1=point.y+ny,point.x2=point.x-nx,point.y2=point.y-ny}else point.x1=point.x,point.y1=point.y,point.x2=point.x,point.y2=point.y},computeLastControls=function(last,penWidth){var r=.5*penWidth*last.pressure,nx=-r*last.uy,ny=r*last.ux;last.x1=last.x+nx,last.y1=last.y+ny,last.x2=last.x-nx,last.y2=last.y-ny};scope.AbstractRenderer=AbstractRenderer}(MyScript),function(scope){function TextRenderer(){scope.AbstractRenderer.call(this)}TextRenderer.prototype=new scope.AbstractRenderer,TextRenderer.prototype.constructor=TextRenderer,TextRenderer.prototype.drawRecognitionResult=function(inputUnits,recognitionResult,context,parameters){this.drawInputUnits(inputUnits,context,parameters)},TextRenderer.prototype.drawInputUnits=function(inputUnits,context,parameters){for(var i in inputUnits)this.drawComponents(inputUnits[i].getComponents(),context,parameters)},TextRenderer.prototype.drawComponents=function(components,context,parameters){for(var i in components){var component=components[i];if(component instanceof scope.Stroke)scope.AbstractRenderer.prototype.drawStroke.call(this,component,context,parameters);else if(component instanceof scope.CharacterInputComponent)scope.AbstractRenderer.prototype.drawCharacter.call(this,component,context,parameters);else if(component instanceof scope.CharInputComponent)drawChar(component,context,parameters);else{if(!(component instanceof scope.StringInputComponent))throw new Error("not implemented");drawString(component,context,parameters)}}};var drawChar=function(char,context,parameters){throw new Error("not implemented")},drawString=function(string,context,parameters){throw new Error("not implemented")};scope.TextRenderer=TextRenderer}(MyScript),function(scope){function ShapeRenderer(){scope.AbstractRenderer.call(this)}ShapeRenderer.prototype=new scope.AbstractRenderer,ShapeRenderer.prototype.constructor=ShapeRenderer,ShapeRenderer.prototype.drawRecognitionResult=function(components,recognitionResult,parameters,context){this.drawShapes(components,recognitionResult.getSegments(),parameters,context)},ShapeRenderer.prototype.drawComponents=function(components,context,parameters){for(var i in components){var component=components[i];if(component instanceof scope.Stroke)scope.AbstractRenderer.prototype.drawStroke.call(this,component,context,parameters);else if(component instanceof scope.CharacterInputComponent)scope.AbstractRenderer.prototype.drawCharacter.call(this,component,context,parameters);else if(component instanceof scope.ShapeEllipse)this.drawShapeEllipse(component,context,parameters);else{if(!(component instanceof scope.ShapeLine))throw new Error("not implemented");this.drawShapeLine(component,context,parameters)}}},ShapeRenderer.prototype.drawShapes=function(components,shapes,context,parameters){for(var i in shapes){var segment=shapes[i],candidate=segment.getSelectedCandidate();if(candidate)if(candidate instanceof scope.ShapeRecognized)this.drawShapeRecognized(candidate,context,parameters);else{if(!(candidate instanceof scope.ShapeNotRecognized))throw new Error("not implemented");this.drawShapeNotRecognized(components,segment.getInkRanges(),candidate,context,parameters)}}},ShapeRenderer.prototype.drawShapeRecognized=function(shapeRecognized,context,parameters){var primitives=shapeRecognized.getPrimitives();for(var i in primitives)this.drawShapePrimitive(primitives[i],context,parameters);var showBoundingBoxes=this.getParameters().getShowBoundingBoxes();if(parameters&&(showBoundingBoxes=parameters.getShowBoundingBoxes()),showBoundingBoxes){var rectangleList=[];for(var j in primitives)rectangleList.push(this.getPrimitiveBoundingBox(primitives[j]));var boundingRect=scope.MathUtils.getBoundingRect(rectangleList);this.drawRectangle(boundingRect,context,parameters)}},ShapeRenderer.prototype.drawShapeNotRecognized=function(components,inkRanges,shapeNotRecognized,context,parameters){for(var i in inkRanges){var extractedStrokes=this.extractStroke(components,inkRanges[i]);this.drawStrokes(extractedStrokes,context,parameters)}},ShapeRenderer.prototype.drawShapePrimitive=function(primitive,context,parameters){primitive instanceof scope.ShapeEllipse?this.drawShapeEllipse(primitive,context,parameters):primitive instanceof scope.ShapeLine&&this.drawShapeLine(primitive,context,parameters)},ShapeRenderer.prototype.drawShapeLine=function(shapeLine,context,parameters){this.drawLineByPoints(shapeLine.getFirstPoint(),shapeLine.getLastPoint(),context,parameters),shapeLine.hasBeginDecoration()&&"ARROW_HEAD"===shapeLine.getBeginDecoration()&&this.drawArrowHead(shapeLine.getFirstPoint(),shapeLine.getBeginTangentAngle(),12,context,parameters),shapeLine.hasEndDecoration()&&"ARROW_HEAD"===shapeLine.getEndDecoration()&&this.drawArrowHead(shapeLine.getLastPoint(),shapeLine.getEndTangentAngle(),12,context,parameters)},ShapeRenderer.prototype.drawEllipseArc=function(centerPoint,maxRadius,minRadius,orientation,startAngle,sweepAngle,context,parameters){var angleStep=.02,z1=Math.cos(orientation),z3=Math.sin(orientation),z2=z1,z4=z3;z1*=maxRadius,z2*=minRadius,z3*=maxRadius,z4*=minRadius;var n=Math.floor(Math.abs(sweepAngle)/angleStep),boundariesPoints=[];context.save();try{parameters?(context.fillStyle=parameters.getColor(),context.strokeStyle=parameters.getColor(),context.globalAlpha=parameters.getAlpha(),context.lineWidth=.5*parameters.getWidth()):(context.fillStyle=this.parameters.getColor(),context.strokeStyle=this.parameters.getColor(),context.globalAlpha=this.parameters.getAlpha(),context.lineWidth=.5*this.parameters.getWidth()),context.beginPath();for(var i=0;n>=i;i++){var angle=startAngle+i/n*sweepAngle,alpha=Math.atan2(Math.sin(angle)/minRadius,Math.cos(angle)/maxRadius),cosAlpha=Math.cos(alpha),sinAlpha=Math.sin(alpha),x=centerPoint.x+z1*cosAlpha-z4*sinAlpha,y=centerPoint.y+z2*sinAlpha+z3*cosAlpha;0===i?context.moveTo(x,y):context.lineTo(x,y),(0===i||i===n)&&boundariesPoints.push({x:x,y:y})}context.stroke()}finally{context.restore()}return boundariesPoints},ShapeRenderer.prototype.drawShapeEllipse=function(shapeEllipse,context,parameters){var points=this.drawEllipseArc(shapeEllipse.getCenter(),shapeEllipse.getMaxRadius(),shapeEllipse.getMinRadius(),shapeEllipse.getOrientation(),shapeEllipse.getStartAngle(),shapeEllipse.getSweepAngle(),context,parameters);shapeEllipse.hasBeginDecoration()&&"ARROW_HEAD"===shapeEllipse.getBeginDecoration()&&this.drawArrowHead(points[0],shapeEllipse.getBeginTangentAngle(),12,context,parameters),shapeEllipse.hasEndDecoration()&&"ARROW_HEAD"===shapeEllipse.getEndDecoration()&&this.drawArrowHead(points[1],shapeEllipse.getEndTangentAngle(),12,context,parameters)},ShapeRenderer.prototype.getPrimitiveBoundingBox=function(primitive){var rectangle=null;return primitive instanceof scope.ShapeEllipse?rectangle=scope.MathUtils.getEllipseArcRect(primitive.getCenter(),primitive.getMaxRadius(),primitive.getMinRadius(),primitive.getOrientation(),primitive.getStartAngle(),primitive.getSweepAngle()):primitive instanceof scope.ShapeLine&&(rectangle=scope.MathUtils.getLineRect(primitive.getFirstPoint(),primitive.getLastPoint())),rectangle},scope.ShapeRenderer=ShapeRenderer}(MyScript),function(scope){function MathRenderer(){scope.AbstractRenderer.call(this)}MathRenderer.prototype=new scope.AbstractRenderer,MathRenderer.prototype.constructor=MathRenderer,MathRenderer.prototype.drawRecognitionResult=function(components,recognitionResult,context,parameters){var notScratchOutComponents=this.removeScratchOut(components,recognitionResult.getScratchOutResults());this.drawComponents(notScratchOutComponents,context,parameters)},MathRenderer.prototype.removeScratchOut=function(components,scratchOutResults){if(!scratchOutResults||0===scratchOutResults.length)return components;var cloneComponents=components.slice(0),componentsToRemove=[];for(var k in scratchOutResults)if(scratchOutResults[k].getErasedInkRanges()){for(var n in scratchOutResults[k].getErasedInkRanges())componentsToRemove.push(scratchOutResults[k].getErasedInkRanges()[n].getComponent());for(var p in scratchOutResults[k].getInkRanges())componentsToRemove.push(scratchOutResults[k].getInkRanges()[p].getComponent())}componentsToRemove.sort(function(a,b){return b-a});for(var z in componentsToRemove)cloneComponents.splice(componentsToRemove[z],1);return cloneComponents},scope.MathRenderer=MathRenderer}(MyScript),function(scope){function MusicRenderer(){scope.AbstractRenderer.call(this)}MusicRenderer.prototype=new scope.AbstractRenderer,MusicRenderer.prototype.constructor=MusicRenderer,MusicRenderer.prototype.drawRecognitionResult=function(components,recognitionResult,context,parameters){var notScratchOutComponents=this.removeScratchOut(components,recognitionResult.getScratchOutResults());this.drawComponents(notScratchOutComponents,context,parameters)},MusicRenderer.prototype.removeScratchOut=function(components,scratchOutResults){if(!scratchOutResults||0===scratchOutResults.length)return components;var cloneComponents=components.slice(0),componentsToRemove=[];for(var k in scratchOutResults)if(scratchOutResults[k].getErasedInputRanges()){for(var n in scratchOutResults[k].getErasedInputRanges())componentsToRemove.push(scratchOutResults[k].getErasedInputRanges()[n].getComponent());for(var p in scratchOutResults[k].getInputRanges())componentsToRemove.push(scratchOutResults[k].getInputRanges()[p].getComponent())}componentsToRemove.sort(function(a,b){return b-a});for(var z in componentsToRemove)cloneComponents.splice(componentsToRemove[z],1);return cloneComponents},MusicRenderer.prototype.drawStaff=function(staff,context,parameters){var staffHeight=staff.getTop()+(staff.getCount()-1)*staff.getGap(),staves=1;context.beginPath();for(var i=0;staves>i;i++)for(var offset=staffHeight*i,j=0;j=i;i++){var angle=startAngle+i/n*sweepAngle,alpha=Math.atan2(Math.sin(angle)/minRadius,Math.cos(angle)/maxRadius),cosAlpha=Math.cos(alpha),sinAlpha=Math.sin(alpha),x=centerPoint.x+z1*cosAlpha-z4*sinAlpha,y=centerPoint.y+z2*sinAlpha+z3*cosAlpha;0===i?context.moveTo(x,y):context.lineTo(x,y),(0===i||i===n)&&boundariesPoints.push({x:x,y:y})}context.stroke()}finally{context.restore()}return boundariesPoints},AnalyzerRenderer.prototype.drawShapeEllipse=function(shapeEllipse,context,parameters){var points=this.drawEllipseArc(shapeEllipse.getCenter(),shapeEllipse.getMaxRadius(),shapeEllipse.getMinRadius(),shapeEllipse.getOrientation(),shapeEllipse.getStartAngle(),shapeEllipse.getSweepAngle(),context,parameters);shapeEllipse.hasBeginDecoration()&&"ARROW_HEAD"===shapeEllipse.getBeginDecoration()&&this.drawArrowHead(points[0],shapeEllipse.getBeginTangentAngle(),12,context,parameters),shapeEllipse.hasEndDecoration()&&"ARROW_HEAD"===shapeEllipse.getEndDecoration()&&this.drawArrowHead(points[1],shapeEllipse.getEndTangentAngle(),12,context,parameters)},AnalyzerRenderer.prototype.getPrimitiveBoundingBox=function(primitive){var rectangle=null;return primitive instanceof scope.ShapeEllipse?rectangle=scope.MathUtils.getEllipseArcRect(primitive.getCenter(),primitive.getMaxRadius(),primitive.getMinRadius(),primitive.getOrientation(),primitive.getStartAngle(),primitive.getSweepAngle()):primitive instanceof scope.ShapeLine&&(rectangle=scope.MathUtils.getLineRect(primitive.getFirstPoint(),primitive.getLastPoint())),rectangle},scope.AnalyzerRenderer=AnalyzerRenderer}(MyScript); //# sourceMappingURL=myscript.min.js.map \ No newline at end of file diff --git a/dist/myscript.min.js.map b/dist/myscript.min.js.map index b6d01b62..f5f9827c 100644 --- a/dist/myscript.min.js.map +++ b/dist/myscript.min.js.map @@ -1 +1 @@ -{"version":3,"file":"myscript.js","sources":["../src/MyScript.js","../src/common/generic/point.js","../src/common/generic/quadraticPoint.js","../src/common/generic/rectangle.js","../src/common/inkManager.js","../src/common/mathUtils.js","../src/common/abstractWSMessage.js","../src/input/generic/components/abstractComponent.js","../src/input/generic/components/stroke.js","../src/input/generic/components/characterInputComponent.js","../src/input/generic/components/characterInputComponentAlternate.js","../src/input/generic/abstractParameter.js","../src/input/generic/abstractRecognitionInput.js","../src/input/generic/abstractRecognitionData.js","../src/input/generic/recognitionLanguagesData.js","../src/input/generic/abstractStartRequestWSMessage.js","../src/input/generic/abstractContinueRequestWSMessage.js","../src/input/generic/challengeRequestWSMessage.js","../src/input/generic/initRequestWSMessage.js","../src/input/generic/resetRequestWSMessage.js","../src/input/text/components/abstractTextInputComponent.js","../src/input/text/components/charInputComponent.js","../src/input/text/components/stringInputComponent.js","../src/input/text/textInputUnit.js","../src/input/text/textParameter.js","../src/input/text/textProperties.js","../src/input/text/textRecognitionInput.js","../src/input/text/textRecognitionData.js","../src/input/text/textStartRequestWSMessage.js","../src/input/text/textContinueRequestWSMessage.js","../src/input/shape/shapeParameter.js","../src/input/shape/shapeRecognitionInput.js","../src/input/shape/shapeRecognitionData.js","../src/input/math/mathParameter.js","../src/input/math/mathRecognitionInput.js","../src/input/math/mathRecognitionData.js","../src/input/math/mathStartRequestWSMessage.js","../src/input/math/mathContinueRequestWSMessage.js","../src/input/music/components/abstractMusicInputComponent.js","../src/input/music/components/musicAccidentalInputComponent.js","../src/input/music/components/musicArpeggiateInputComponent.js","../src/input/music/components/musicBarInput.js","../src/input/music/components/musicBarInputComponent.js","../src/input/music/components/musicBeamInput.js","../src/input/music/components/musicBeamInputComponent.js","../src/input/music/components/musicClefInput.js","../src/input/music/components/musicClefInputComponent.js","../src/input/music/components/musicDecorationInput.js","../src/input/music/components/musicDecorationInputComponent.js","../src/input/music/components/musicDotsInputComponent.js","../src/input/music/components/musicHeadInputComponent.js","../src/input/music/components/musicLedgerLineInputComponent.js","../src/input/music/components/musicRestInputComponent.js","../src/input/music/components/musicStemInputComponent.js","../src/input/music/components/musicTieOrSlurInputComponent.js","../src/input/music/components/musicTimeSignatureInputComponent.js","../src/input/music/musicStaff.js","../src/input/music/musicParameter.js","../src/input/music/musicRecognitionInput.js","../src/input/music/musicRecognitionData.js","../src/input/analyzer/analyzerParameter.js","../src/input/analyzer/analyzerRecognitionInput.js","../src/input/analyzer/analyzerRecognitionData.js","../src/output/generic/abstractResult.js","../src/output/generic/abstractRecoResponseWSMessage.js","../src/output/generic/challengeResponseWSMessage.js","../src/output/generic/errorResponseWSMessage.js","../src/output/generic/initResponseWSMessage.js","../src/output/text/textInkRange.js","../src/output/text/textCandidate.js","../src/output/text/textCharCandidate.js","../src/output/text/textWordCandidate.js","../src/output/text/textResultCandidate.js","../src/output/text/textDocument.js","../src/output/text/textResult.js","../src/output/text/textSegment.js","../src/output/text/textCharSegment.js","../src/output/text/textWordSegment.js","../src/output/text/textResultSegment.js","../src/output/text/textTagItem.js","../src/output/text/textResponseWSMessage.js","../src/output/shape/abstractShapePrimitive.js","../src/output/shape/abstractDecoratedShape.js","../src/output/shape/shapeCandidate.js","../src/output/shape/shapeDocument.js","../src/output/shape/shapeEllipse.js","../src/output/shape/shapeErased.js","../src/output/shape/shapeInkRange.js","../src/output/shape/shapeLine.js","../src/output/shape/shapeNotRecognized.js","../src/output/shape/shapeRecognized.js","../src/output/shape/shapeResult.js","../src/output/shape/shapeScratchOut.js","../src/output/shape/shapeSegment.js","../src/output/math/mathNode.js","../src/output/math/mathNonTerminalNode.js","../src/output/math/mathResultElement.js","../src/output/math/mathRuleNode.js","../src/output/math/mathDocument.js","../src/output/math/mathInkRange.js","../src/output/math/mathLaTexResultElement.js","../src/output/math/mathMathMLResultElement.js","../src/output/math/mathResult.js","../src/output/math/mathScratchOut.js","../src/output/math/mathSymbolTreeResultElement.js","../src/output/math/mathTerminalNode.js","../src/output/math/mathTerminalNodeCandidate.js","../src/output/math/mathFenceRuleNode.js","../src/output/math/mathFractionRuleNode.js","../src/output/math/mathHorizontalPairRuleNode.js","../src/output/math/mathIdentityRuleNode.js","../src/output/math/mathLeftFenceRuleNode.js","../src/output/math/mathOverscriptRuleNode.js","../src/output/math/mathPreSuperscriptRuleNode.js","../src/output/math/mathSqrtRuleNode.js","../src/output/math/mathSubscriptRuleNode.js","../src/output/math/mathSubSuperscriptRuleNode.js","../src/output/math/mathSuperscriptRuleNode.js","../src/output/math/mathUnderOverscriptRuleNode.js","../src/output/math/mathUnderscriptRuleNode.js","../src/output/math/mathVerticalPairRuleNode.js","../src/output/math/mathExponentiableNonTerminalNode.js","../src/output/math/mathExpressionNonTerminalNode.js","../src/output/math/mathSqrtNonTerminalNode.js","../src/output/math/mathVectorNonTerminalNode.js","../src/output/math/mathSystemNonTerminalNode.js","../src/output/math/mathTermNonTerminalNode.js","../src/output/math/mathResponseWSMessage.js","../src/output/music/musicElement.js","../src/output/music/musicResultElement.js","../src/output/music/musicAccidental.js","../src/output/music/musicAnnotation.js","../src/output/music/musicArpeggiate.js","../src/output/music/musicBar.js","../src/output/music/musicBeam.js","../src/output/music/musicChord.js","../src/output/music/musicClef.js","../src/output/music/musicDecoration.js","../src/output/music/musicDocument.js","../src/output/music/musicDots.js","../src/output/music/musicHead.js","../src/output/music/musicInputRange.js","../src/output/music/musicKeySignature.js","../src/output/music/musicKeySignatureData.js","../src/output/music/musicLedgerLine.js","../src/output/music/musicNote.js","../src/output/music/musicPart.js","../src/output/music/musicPitchData.js","../src/output/music/musicRest.js","../src/output/music/musicResult.js","../src/output/music/musicScore.js","../src/output/music/musicScoreTreeResultElement.js","../src/output/music/musicScratchOut.js","../src/output/music/musicSlur.js","../src/output/music/musicStem.js","../src/output/music/musicTie.js","../src/output/music/musicTimeModificationData.js","../src/output/music/musicTimeSignature.js","../src/output/music/musicTupletBracket.js","../src/output/music/musicTuplet.js","../src/output/music/musicXMLResultElement.js","../src/output/analyzer/analyzerElement.js","../src/output/analyzer/analyzerCell.js","../src/output/analyzer/analyzerCellData.js","../src/output/analyzer/analyzerDocument.js","../src/output/analyzer/analyzerElementReference.js","../src/output/analyzer/analyzerGroup.js","../src/output/analyzer/analyzerInkRange.js","../src/output/analyzer/analyzerLine.js","../src/output/analyzer/analyzerLineData.js","../src/output/analyzer/analyzerRecognizedStroke.js","../src/output/analyzer/analyzerResult.js","../src/output/analyzer/analyzerStrokeType.js","../src/output/analyzer/analyzerTable.js","../src/output/analyzer/analyzerTableData.js","../src/output/analyzer/analyzerTextLine.js","../src/output/analyzer/analyzerTextLineData.js","../src/output/analyzer/analyzerUnderline.js","../src/output/analyzer/analyzerUnderlineData.js","../src/networking/networkInterface.js","../src/recognition/abstractRecognizer.js","../src/recognition/abstractWSRecognizer.js","../src/recognition/textRecognizer.js","../src/recognition/textWSRecognizer.js","../src/recognition/shapeRecognizer.js","../src/recognition/mathRecognizer.js","../src/recognition/mathWSRecognizer.js","../src/recognition/musicRecognizer.js","../src/recognition/analyzerRecognizer.js","../src/rendering/renderingParameters.js","../src/rendering/abstractRenderer.js","../src/rendering/textRenderer.js","../src/rendering/shapeRenderer.js","../src/rendering/mathRenderer.js","../src/rendering/musicRenderer.js","../src/rendering/analyzerRenderer.js"],"names":["MyScript","scope","Point","obj","this","x","y","prototype","getX","setX","getY","setY","QuadraticPoint","call","pressure","distance","length","ux","uy","x1","x2","y1","y2","constructor","getPressure","setPressure","getDistance","setDistance","getLength","setLength","getUx","setUx","getUy","setUy","getX1","setX1","getX2","setX2","getY1","setY1","getY2","setY2","Rectangle","width","height","getTopLeftPoint","point","setTopLeftPoint","topLeftPoint","getWidth","setWidth","getHeight","setHeight","InkManager","writing","strokes","currentStroke","undoRedoStack","isWriting","getCurrentStroke","startInkCapture","t","Error","Stroke","addX","addY","addT","continueInkCapture","endInkCapture","push","clear","isEmpty","isRedoEmpty","undo","pop","redo","getStrokes","getUndoRedoStack","clearUndoRedoStack","copy","index","MathUtils","getEllipseArcRect","center","maxRadius","minRadius","orientation","startAngle","sweepAngle","angle","alpha","z1","z2","z3","z4","cosAlpha","sinAlpha","n","xList","yList","i","xMin","xMax","yMin","yMax","angleStep","sortFloat","a","b","Math","cos","sin","abs","atan2","sort","getLineRect","firstPoint","lastPoint","xFirst","xLast","min","max","yFirst","yLast","getBoundingRect","boundingBoxes","rectangle","apply","AbstractWSMessage","type","getType","AbstractComponent","setType","undefined","getT","setT","getBoundingBox","boundingBox","CharacterInputComponent","alternates","getAlternates","setAlternates","addAlternate","alternate","setBoundingBox","CharacterInputComponentAlternate","probability","getAlternate","setAlternate","getProbability","setProbability","AbstractParameter","AbstractRecognitionInput","AbstractRecognitionData","getApplicationKey","applicationKey","setApplicationKey","getInstanceId","instanceId","setInstanceId","getHmac","hmac","setHmac","RecognitionLanguagesData","getInputMode","inputMode","setInputMode","AbstractStartRequestWSMessage","AbstractContinueRequestWSMessage","ChallengeRequestWSMessage","getChallenge","challenge","setChallenge","getHmacSignature","setHmacSignature","InitRequestWSMessage","ResetRequestWSMessage","AbstractTextInputComponent","CharInputComponent","getCharacter","character","setCharacter","StringInputComponent","getString","string","setString","TextInputUnit","textInputType","components","getInputType","setInputType","inputType","getComponents","inkRange","TextInkRange","slice","getStartComponent","getEndComponent","setComponents","TextParameter","getLanguage","language","setLanguage","textInputMode","getContentTypes","contentTypes","setContentTypes","getSubsetKnowledges","subsetKnowledges","setSubsetKnowledges","getUserResources","userResources","setUserResources","getUserLkWords","userLkWords","setUserLkWords","getResultDetail","resultDetail","setResultDetail","getTextProperties","textProperties","setTextProperties","TextProperties","getTextCandidateListSize","textCandidateListSize","setTextCandidateListSize","getWordCandidateListSize","wordCandidateListSize","setWordCandidateListSize","getWordPredictionListSize","wordPredictionListSize","setWordPredictionListSize","getWordCompletionListSize","wordCompletionListSize","setWordCompletionListSize","getCharacterCandidateListSize","characterCandidateListSize","setCharacterCandidateListSize","getDiscardCaseVariations","discardCaseVariations","setDiscardCaseVariations","getDiscardAccentuationVariations","discardAccentuationVariations","setDiscardAccentuationVariations","getDisableSpatialOrdering","disableSpatialOrdering","setDisableSpatialOrdering","getGlyphDistortion","glyphDistortion","setGlyphDistortion","getEnableOutOfLexicon","enableOutOfLexicon","setEnableOutOfLexicon","getSpellingDistortion","spellingDistortion","setSpellingDistortion","TextRecognitionInput","getParameters","textParameter","setParameters","parameters","getInputUnits","inputUnits","getStartUnit","getEndUnit","setInputUnits","TextRecognitionData","getTextRecognitionInput","textInput","setTextRecognitionInput","input","JSON","stringify","TextStartRequestWSMessage","TextContinueRequestWSMessage","ShapeParameter","getRejectDetectionSensitivity","rejectDetectionSensitivity","setRejectDetectionSensitivity","hasBeautification","doBeautification","setBeautification","ShapeRecognitionInput","getDoBeautification","setDoBeautification","ShapeRecognitionData","getShapeRecognitionInput","shapeInput","setShapeRecognitionInput","MathParameter","resultTypes","getResultTypes","setResultTypes","isColumnar","columnarOperation","setColumnar","columnar","getScratchOutDetectionSensitivity","scratchOutDetectionSensitivity","setScratchOutDetectionSensitivity","MathRecognitionInput","MathRecognitionData","getMathRecognitionInput","mathInput","setMathRecognitionInput","MathStartRequestWSMessage","MathContinueRequestWSMessage","AbstractMusicInputComponent","MusicAccidentalInputComponent","getValue","value","setValue","MusicArpeggiateInputComponent","MusicBarInput","getRepeatDirection","repeatDirection","setRepeatDirection","getStyle","style","setStyle","MusicBarInputComponent","MusicBeamInput","getPlacement","placement","setPlacement","getSlope","slope","setSlope","getLeftCount","leftCount","setLeftCount","getRightCount","rightCount","setRightCount","getGap","gap","setGap","MusicBeamInputComponent","MusicClefInput","symbol","octave","getYAnchor","yAnchor","setYAnchor","getOctave","setOctave","getSymbol","setSymbol","MusicClefInputComponent","MusicDecorationInput","MusicDecorationInputComponent","MusicDotsInputComponent","MusicHeadInputComponent","MusicLedgerLineInputComponent","MusicRestInputComponent","MusicStemInputComponent","MusicTieOrSlurInputComponent","MusicTimeSignatureInputComponent","MusicStaff","count","getCount","setCount","getTop","top","setTop","MusicParameter","getStaff","staff","setStaff","getDivisions","divisions","setDivisions","MusicRecognitionInput","MusicRecognitionData","getMusicRecognitionInput","musicInput","setMusicRecognitionInput","AnalyzerParameter","getTextParameters","setTextParameters","getCoordinateResolution","coordinateResolution","setCoordinateResolution","AnalyzerRecognitionInput","parameter","AnalyzerRecognitionData","getAnalyzerRecognitionInput","analyzerInput","setAnalyzerRecognitionInput","AbstractResult","AbstractRecoResponseWSMessage","ChallengeResponseWSMessage","ErrorResponseWSMessage","error","getError","InitResponseWSMessage","cpt","split","startUnit","Number","startComponent","startPoint","endUnit","endComponent","endPoint","getStartPoint","getEndPoint","TextCandidate","flags","label","normalizedScore","spellingDistortionRatio","j","getLabel","getNormalizedScore","getResemblanceScore","resemblanceScore","getSpellingDistortionRatio","getFlags","TextCharCandidate","TextWordCandidate","children","TextCharSegment","getChildren","TextResultCandidate","TextWordSegment","TextDocument","tagItems","wordCandidates","charCandidates","textSegmentResult","TextResultSegment","TextTagItem","k","getTagItems","getWordSegments","getWordSegment","inkRanges","getInkRanges","getCharSegments","getCharSegment","getTextSegment","TextResult","result","getTextDocument","TextSegment","candidates","selectedCandidateIdx","ranges","getCandidates","getSelectedCandidateIdx","getSelectedCandidate","tagType","getTagType","TextResponseWSMessage","AbstractShapePrimitive","isLine","isEllipse","AbstractDecoratedShape","beginDecoration","beginTangentAngle","endDecoration","endTangentAngle","hasBeginDecoration","hasEndDecoration","getBeginDecoration","getEndDecoration","getBeginTangentAngle","getEndTangentAngle","ShapeCandidate","isErased","isScratchOut","isNotRecognized","isRecognized","ShapeDocument","segments","ShapeSegment","getSegments","ShapeEllipse","getCenter","getMinRadius","getMaxRadius","getOrientation","getStartAngle","getSweepAngle","ShapeErased","ShapeInkRange","firstStroke","lastStroke","getFirstStroke","getLastStroke","getFirstPoint","getLastPoint","ShapeLine","ShapeNotRecognized","ShapeRecognized","primitives","normalizedRecognitionScore","getPrimitives","getNormalizedRecognitionScore","ShapeResult","getShapeDocument","ShapeScratchOut","elementType","uniqueID","selectedCandidateIndex","getElementType","getUniqueId","MathNode","name","getName","MathNonTerminalNode","selectedCandidate","MathTermNonTerminalNode","MathSqrtNonTerminalNode","MathVectorNonTerminalNode","MathSystemNonTerminalNode","MathExponentiableNonTerminalNode","MathExpressionNonTerminalNode","MathTerminalNode","MathIdentityRuleNode","MathHorizontalPairRuleNode","MathFenceRuleNode","MathFractionRuleNode","MathSqrtRuleNode","MathSubscriptRuleNode","MathSuperscriptRuleNode","MathSubSuperscriptRuleNode","MathUnderscriptRuleNode","MathOverscriptRuleNode","MathUnderOverscriptRuleNode","MathPreSuperscriptRuleNode","MathVerticalPairRuleNode","MathLeftFenceRuleNode","MathResultElement","isLaTex","isMathMl","isSymbolTree","MathRuleNode","MathDocument","results","scratchOutResults","MathMathMLResultElement","MathLaTexResultElement","MathSymbolTreeResultElement","MathScratchOut","getResultElements","getScratchOutResults","MathInkRange","component","firstItem","lastItem","getComponent","getFirstItem","getLastItem","MathResult","getMathDocument","erasedInkRanges","getErasedInkRanges","root","getRoot","MathTerminalNodeCandidate","MathResponseWSMessage","MusicElement","inputRanges","getInputRanges","MusicResultElement","isMusicXML","isScoreTree","MusicAccidental","MusicAnnotation","MusicArpeggiate","MusicBar","decorations","MusicDecoration","getDecorations","MusicBeam","MusicChord","notes","beamTypes","ledgerLines","startSlurs","stopSlurs","duration","arpeggiate","startBeam","stopBeam","stem","MusicStem","MusicNote","l","MusicLedgerLine","m","MusicSlur","getDuration","getArpeggiate","getStartBeam","getStopBeam","getStem","getNotes","getBeamTypes","getLedgerLines","getStartSlurs","getStopSlurs","MusicClef","line","getLine","MusicDocument","MusicXMLResultElement","MusicScoreTreeResultElement","MusicScratchOut","MusicDots","MusicHead","MusicInputRange","MusicKeySignature","accidentals","signature","MusicKeySignatureData","getSignature","getAccidentals","fifths","cancel","getFifths","getCancel","accidental","dots","head","pitch","MusicPitchData","startTie","MusicTie","stopTie","startTuplet","MusicTuplet","stopTuplet","timeModification","MusicTimeModificationData","getAccidental","getDots","getHead","getPitch","getStartTie","getStopTie","getStartTuplet","getStopTuplet","getTimeModification","MusicPart","elements","MusicRest","MusicTimeSignature","MusicTupletBracket","getElements","alteration","step","getAlteration","getStep","MusicResult","getMusicDocument","MusicScore","parts","getParts","score","getScore","erasedInputRanges","getErasedInputRanges","actual","normal","getActual","getNormal","bottom","getBottom","brackets","number","getNumber","getBrackets","AnalyzerElement","AnalyzerCell","data","AnalyzerCellData","getData","firstColumn","lastColumn","firstRow","lastRow","topBorder","bottomBorder","leftBorder","rightBorder","getFirstColumn","getLastColumn","getFirstRow","getLastRow","hasTopBorder","hasBottomBorder","hasLeftBorder","hasRightBorder","AnalyzerDocument","textLines","shapes","tables","groups","AnalyzerTextLine","AnalyzerTable","AnalyzerGroup","getTextLines","getShapes","getTables","getGroups","AnalyzerElementReference","elementReferences","getElementReferences","AnalyzerInkRange","stroke","AnalyzerRecognizedStroke","getStroke","AnalyzerLine","AnalyzerLineData","p1","p2","getP1","getP2","AnalyzerResult","getAnalyzerDocument","AnalyzerStrokeType","getInkRange","lines","cells","AnalyzerTableData","getLines","getCells","columnCount","rowCount","getColumnCount","getRowCount","underlineList","AnalyzerTextLineData","AnalyzerUnderline","getUnderlineList","baselinePos","toMidline","textHeight","justificationType","getBaselinePos","getToMidline","getTextHeight","getJustificationType","AnalyzerUnderlineData","firstCharacter","lastCharacter","getFirstCharacter","getLastCharacter","Q","NetworkInterface","parse","req","responseText","e","transformRequest","str","p","encodeURIComponent","join","xhr","url","onStateChange","request","readyState","status","deferred","resolve","reject","onLoad","onError","onProgress","event","notify","loaded","total","defer","XMLHttpRequest","open","setRequestHeader","onload","onerror","onprogress","onreadystatechange","send","promise","get","src","params","then","response","put","post","CryptoJS","AbstractRecognizer","host","http","getAvailableLanguageList","computeHmac","hmacKey","jsonInput","HmacSHA512","toString","enc","Hex","AbstractWSRecognizer","getMessageCallback","messageCallback","setMessageCallback","callback","getOpenCallback","openCallback","setOpenCallback","getCloseCallback","closeCallback","setCloseCallback","getErrorCallback","errorCallback","setErrorCallback","getState","socket","close","sendMessage","message","initWSRecognition","takeUpHmacChallenge","resetWSRecognition","TextRecognizer","doSimpleRecognition","TextWSRecognizer","WebSocket","self","onopen","console","log","onmessage","onclose","startWSRecognition","continueWSRecognition","doWSRecognition","ShapeRecognizer","clearShapeRecognitionSession","instanceSessionId","MathRecognizer","MathWSRecognizer","MusicRecognizer","AnalyzerRecognizer","RenderingParameters","color","rectColor","font","decoration","pressureType","doFadeOutLoop","showBoundingBoxes","getColor","setColor","getRectColor","setRectColor","getFont","setFont","getDecoration","setDecoration","getPressureType","setPressureType","getAlpha","setAlpha","getDoFadeOutLoop","setDoFadeOutLoop","getShowBoundingBoxes","setShowBoundingBoxes","AbstractRenderer","points","drawing","drawRecognitionResult","recognitionResult","context","drawComponents","drawStroke","drawCharacter","drawStart","drawContinue","previous","drawQuadratricStart","third","drawQuadratricContinue","drawEnd","drawPoint","drawQuadratricEnd","clearRect","canvas","drawGuidelines","horizontalSpacing","verticalSpacing","save","fillStyle","strokeStyle","lineWidth","clientWidth","clientHeight","beginPath","moveTo","lineTo","restore","drawLineByCoordinates","lX","lY","cX","cY","globalAlpha","drawLineByPoints","drawRectangle","fillRect","drawStrokes","strokePoints","p3","p4","p5","p6","p7","arc","PI","fill","drawArrowHead","headPoint","phi","beta","extractStroke","firstPointIndex","floor","lastPointIndex","ceil","strokeIndex","currentStrokePointCount","newStroke","pointIndex","computePoint","strokeFirstSegment","strokeSegment","strokeLastSegment","x11","y11","x12","y12","x21","y21","x22","y22","quadraticCurveTo","isFirst","isLast","penWidth","computeDistance","strokeLength","computePressure","computeLastControls","computeFirstControls","computeControls","dx","dy","d","sqrt","pow","isNaN","parseFloat","first","next","r","nx","ny","u","last","TextRenderer","drawInputUnits","drawChar","drawString","char","ShapeRenderer","drawShapes","drawShapeEllipse","drawShapeLine","segment","candidate","drawShapeRecognized","drawShapeNotRecognized","shapeRecognized","drawShapePrimitive","rectangleList","getPrimitiveBoundingBox","boundingRect","shapeNotRecognized","extractedStrokes","primitive","shapeLine","drawEllipseArc","centerPoint","boundariesPoints","shapeEllipse","MathRenderer","notScratchOutComponents","removeScratchOut","cloneComponents","componentsToRemove","z","splice","MusicRenderer","drawStaff","staffHeight","staves","offset","drawAccidental","drawArpeggiate","drawBar","drawBeam","drawClef","drawDecoration","drawDots","drawHead","drawLedgerLine","drawRest","drawStem","drawTieOrSlur","drawTimeSignature","bar","beam","clef","imageObj","Image","ratio","drawImage","ledgerLine","rest","tieOrSlur","timeSignature","AnalyzerRenderer","drawTables","drawTextLines","drawCell","drawLine","textLine","text","drawText","underlines","drawUnderline","baseline","textAlign","fillText","underline","topLeft","textMetrics","measureText","substring","drawGroups","cell"],"mappings":"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C,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG;AAChlC,gBAAgB,KAAK,CAAC;AACtB,YAAY,IAAI,CAAC,CAAC,CAAC,EAAE;AACrB,gBAAgB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG;AACv/C,gBAAgB,KAAK,CAAC;AACtB,YAAY,IAAI,CAAC,CAAC,CAAC,EAAE;AACrB,gBAAgB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CA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","sourcesContent":["/**\n * MyScript javascript library\n *\n * @module MyScript\n * @requires Q\n * @requires CryptoJS\n */\n/*global MyScript:true */\nMyScript = {};","'use strict';\n\n(function (scope) {\n /**\n * Point\n *\n * @class Point\n * @param {Object} [obj]\n * @constructor\n */\n function Point(obj) {\n if (obj) {\n this.x = obj.x;\n this.y = obj.y;\n }\n }\n\n /**\n * Get x\n *\n * @method getX\n * @returns {Number}\n */\n Point.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Set x\n *\n * @method setX\n * @param {Number} x\n */\n Point.prototype.setX = function (x) {\n this.x = x;\n };\n\n /**\n * Get y\n *\n * @method getY\n * @returns {Number}\n */\n Point.prototype.getY = function () {\n return this.y;\n };\n\n /**\n * Set y\n *\n * @method setY\n * @param {Number} y\n */\n Point.prototype.setY = function (y) {\n this.y = y;\n };\n\n // Export\n scope.Point = Point;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Complex Point object used for quadratic calculation\n *\n * @class QuadraticPoint\n * @param {Object} [obj]\n * @constructor\n */\n function QuadraticPoint(obj) {\n scope.Point.call(this, obj);\n this.pressure = 0.5;\n this.distance = 0.0;\n this.length = 0.0;\n this.ux = 0.0;\n this.uy = 0.0;\n this.x1 = 0.0;\n this.x2 = 0.0;\n this.y1 = 0.0;\n this.y2 = 0.0;\n }\n\n /**\n * Inheritance property\n */\n QuadraticPoint.prototype = new scope.Point();\n\n /**\n * Constructor property\n */\n QuadraticPoint.prototype.constructor = QuadraticPoint;\n\n /**\n * Get pressure\n *\n * @method getPressure\n * @returns {Number}\n */\n QuadraticPoint.prototype.getPressure = function () {\n return this.pressure;\n };\n\n /**\n * Set pressure\n *\n * @method setPressure\n * @param {Number} pressure\n */\n QuadraticPoint.prototype.setPressure = function (pressure) {\n this.pressure = pressure;\n };\n\n /**\n * Get distance\n *\n * @method getDistance\n * @returns {Number}\n */\n QuadraticPoint.prototype.getDistance = function () {\n return this.distance;\n };\n\n /**\n * Set distance\n *\n * @method setDistance\n * @param {Number} distance\n */\n QuadraticPoint.prototype.setDistance = function (distance) {\n this.distance = distance;\n };\n\n /**\n * Get length\n *\n * @method getLength\n * @returns {Number}\n */\n QuadraticPoint.prototype.getLength = function () {\n return this.length;\n };\n\n /**\n * Set length\n *\n * @method setLength\n * @param {Number} length\n */\n QuadraticPoint.prototype.setLength = function (length) {\n this.length = length;\n };\n\n /**\n * Get ux\n *\n * @method getUx\n * @returns {Number}\n */\n QuadraticPoint.prototype.getUx = function () {\n return this.ux;\n };\n\n /**\n * Set ux\n *\n * @method setUx\n * @param {Number} ux\n */\n QuadraticPoint.prototype.setUx = function (ux) {\n this.ux = ux;\n };\n\n /**\n * Get uy\n *\n * @method getUy\n * @returns {Number}\n */\n QuadraticPoint.prototype.getUy = function () {\n return this.uy;\n };\n\n /**\n * Set uy\n *\n * @method setUy\n * @param {Number} uy\n */\n QuadraticPoint.prototype.setUy = function (uy) {\n this.uy = uy;\n };\n\n /**\n * Get x1\n *\n * @method getX1\n * @returns {Number}\n */\n QuadraticPoint.prototype.getX1 = function () {\n return this.x1;\n };\n\n /**\n * Set x1\n *\n * @method setX1\n * @param {Number} x1\n */\n QuadraticPoint.prototype.setX1 = function (x1) {\n this.x1 = x1;\n };\n\n /**\n * Get x2\n *\n * @method getX2\n * @returns {Number}\n */\n QuadraticPoint.prototype.getX2 = function () {\n return this.x2;\n };\n\n /**\n * Set x2\n *\n * @method setX2\n * @param {Number} x2\n */\n QuadraticPoint.prototype.setX2 = function (x2) {\n this.x2 = x2;\n };\n\n /**\n * Get y1\n *\n * @method getY1\n * @returns {Number}\n */\n QuadraticPoint.prototype.getY1 = function () {\n return this.y1;\n };\n\n /**\n * Set y2\n *\n * @method setY1\n * @param {Number} y1\n */\n QuadraticPoint.prototype.setY1 = function (y1) {\n this.y1 = y1;\n };\n\n /**\n * Get y2\n *\n * @method getY2\n * @returns {Number}\n */\n QuadraticPoint.prototype.getY2 = function () {\n return this.y2;\n };\n\n /**\n * Set y2\n *\n * @method setY2\n * @param {Number} y2\n */\n QuadraticPoint.prototype.setY2 = function (y2) {\n this.y2 = y2;\n };\n\n // Export\n scope.QuadraticPoint = QuadraticPoint;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Rectangle\n *\n * @class Rectangle\n * @param {Object} [obj]\n * @constructor\n */\n function Rectangle(obj) {\n if (obj) {\n this.x = obj.x;\n this.y = obj.y;\n this.width = obj.width;\n this.height = obj.height;\n }\n }\n\n /**\n * Get top-left x\n *\n * @method getX\n * @returns {Number}\n */\n Rectangle.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Set top-left x\n *\n * @method setX\n * @param {Number} x\n */\n Rectangle.prototype.setX = function (x) {\n this.x = x;\n };\n\n /**\n * Get top-left y\n *\n * @method getY\n * @returns {Number}\n */\n Rectangle.prototype.getY = function () {\n return this.y;\n };\n\n /**\n * Set top-left y\n *\n * @method setY\n * @param {Number} y\n */\n Rectangle.prototype.setY = function (y) {\n this.y = y;\n };\n\n /**\n * Get top-left point\n *\n * @method getTopLeftPoint\n * @returns {Point}\n */\n Rectangle.prototype.getTopLeftPoint = function () {\n var point = new scope.Point();\n point.setX(this.x);\n point.setY(this.y);\n return point;\n };\n\n /**\n * Set top-left point\n *\n * @method setTopLeftPoint\n * @param {Point} topLeftPoint\n */\n Rectangle.prototype.setTopLeftPoint = function (topLeftPoint) {\n this.x = topLeftPoint.getX();\n this.y = topLeftPoint.getY();\n };\n\n /**\n * Get width\n *\n * @method getWidth\n * @returns {Number}\n */\n Rectangle.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Set width\n *\n * @method setWidth\n * @param {Number} width\n */\n Rectangle.prototype.setWidth = function (width) {\n this.width = width;\n };\n\n /**\n * Get height\n *\n * @method getHeight\n * @returns {Number}\n */\n Rectangle.prototype.getHeight = function () {\n return this.height;\n };\n\n /**\n * Set height\n *\n * @method setHeight\n * @returns {Number} height\n */\n Rectangle.prototype.setHeight = function (height) {\n this.height = height;\n };\n\n // Export\n scope.Rectangle = Rectangle;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * The InkManager class that can use to store writing strokes and manage the undo/redo/clear system\n *\n * @class InkManager\n * @constructor\n */\n function InkManager() {\n this.writing = false;\n this.strokes = [];\n this.currentStroke = null;\n this.undoRedoStack = [];\n }\n\n /**\n * Is Wrinting a stoke\n *\n * @method isWriting\n * @returns {Boolean}\n */\n InkManager.prototype.isWriting = function () {\n return this.writing;\n };\n\n /**\n * Get the last current Stroke write\n *\n * @method getCurrentStroke\n * @returns {Stroke}\n */\n InkManager.prototype.getCurrentStroke = function () {\n return this.currentStroke;\n };\n\n /**\n * Start ink capture\n *\n * @method startInkCapture\n * @param {Number} x abscissa coordinate\n * @param {Number} y ordinate coordinate\n * @param {Number} [t] event timestamp\n */\n InkManager.prototype.startInkCapture = function (x, y, t) {\n if (!this.writing) {\n this.currentStroke = new scope.Stroke();\n this.currentStroke.addX(x);\n this.currentStroke.addY(y);\n this.currentStroke.addT(t);\n this.writing = true;\n } else {\n throw new Error('Stroke capture already running');\n }\n };\n\n /**\n * Continue ink capture\n *\n * @method continueInkCapture\n * @param {Number} x abscissa coordinate\n * @param {Number} y ordinate coordinate\n * @param {Number} [t] event timestamp\n */\n InkManager.prototype.continueInkCapture = function (x, y, t) {\n if (this.writing) {\n this.currentStroke.addX(x);\n this.currentStroke.addY(y);\n this.currentStroke.addT(t);\n } else {\n throw new Error('Missing startInkCapture');\n }\n };\n\n /**\n * End ink capture\n *\n * @method endInkCapture\n */\n InkManager.prototype.endInkCapture = function () {\n if (this.writing) {\n this.strokes.push(this.currentStroke);\n this.writing = false;\n } else {\n throw new Error('Missing startInkCapture');\n }\n };\n\n /**\n * Clear the strokes list\n *\n * @method clear\n */\n InkManager.prototype.clear = function () {\n this.writing = false;\n this.strokes = [];\n this.currentStroke = null;\n this.undoRedoStack = [];\n };\n\n /**\n * Is The Strokes list is empty\n *\n * @method isEmpty\n * @returns {Boolean}\n */\n InkManager.prototype.isEmpty = function () {\n return this.strokes.length === 0;\n };\n\n /**\n * Is the Undo/Redo Stack empty\n *\n * @method isRedoEmpty\n * @returns {Boolean}\n */\n InkManager.prototype.isRedoEmpty = function () {\n return this.undoRedoStack.length === 0;\n };\n\n /**\n * Make an undo\n *\n * @method undo\n */\n InkManager.prototype.undo = function () {\n if (!this.isEmpty()) {\n this.undoRedoStack.push(this.strokes[this.strokes.length - 1]);\n this.strokes.pop();\n }\n };\n\n /**\n * Make a redo\n *\n * @method redo\n */\n InkManager.prototype.redo = function () {\n if (!this.isRedoEmpty()) {\n this.strokes.push(this.undoRedoStack[this.undoRedoStack.length - 1]);\n this.undoRedoStack.pop();\n }\n };\n\n /**\n * Get the strokes list\n *\n * @method getStokes\n * @returns {Stroke[]}\n */\n InkManager.prototype.getStrokes = function () {\n return this.strokes;\n };\n\n /**\n * Get the Undo/Redo Stack\n *\n * @method getUndoRedoStack\n * @returns {Stroke[]}\n */\n InkManager.prototype.getUndoRedoStack = function () {\n return this.undoRedoStack;\n };\n\n /**\n * Clear the Undo/Redo Stack\n *\n * @method clearUndoRedoStack\n */\n InkManager.prototype.clearUndoRedoStack = function () {\n this.undoRedoStack = [];\n };\n\n /**\n * Copy the strokes values from index on an other list of strokes\n *\n * @method copy\n * @param {Stroke[]} strokes List of strokes\n * @param {Number} index Position to start the copy\n */\n InkManager.prototype.copy = function (strokes, index) {\n for (index; index < this.strokes.length; index++) {\n strokes.push(this.strokes[index]);\n }\n };\n\n // Export\n scope.InkManager = InkManager;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * The mathUtil class is use to calculate lines\n *\n * @class MathUtil\n * @constructor\n */\n function MathUtils() {\n }\n\n /**\n * This method is use to calculate the size of the rectangle that contains an ellipse arc.\n *\n * @method getEllipseArcRect\n * @param {Point} center\n * @param {Number} maxRadius\n * @param {Number} minRadius\n * @param {Number} orientation\n * @param {Number} startAngle\n * @param {Number} sweepAngle\n * @returns {Rectangle}\n */\n MathUtils.getEllipseArcRect = function (center, maxRadius, minRadius, orientation, startAngle, sweepAngle) {\n\n var angleStep = 0.02, // angle delta between interpolated points on the arc, in radian\n angle, // angle\n alpha, // angle\n z1,\n z2,\n z3,\n z4,\n cosAlpha,\n sinAlpha,\n n,\n xList,\n yList,\n i,\n x,\n y,\n xMin,\n xMax,\n yMin,\n yMax,\n sortFloat = function (a, b) {\n return a - b;\n };\n\n z1 = z2 = Math.cos(orientation);\n z3 = z4 = Math.sin(orientation);\n z1 *= maxRadius;\n z2 *= minRadius;\n z3 *= maxRadius;\n z4 *= minRadius;\n\n n = Math.abs(sweepAngle) / angleStep;\n\n xList = [];\n yList = [];\n\n for (i = 0; i <= n; i++) {\n\n angle = startAngle + (i / n) * sweepAngle;\n alpha = Math.atan2(Math.sin(angle) / minRadius, Math.cos(angle) / maxRadius);\n\n cosAlpha = Math.cos(alpha);\n sinAlpha = Math.sin(alpha);\n\n // current point\n x = center.x + z1 * cosAlpha - z4 * sinAlpha;\n y = center.y + z2 * sinAlpha + z3 * cosAlpha;\n\n xList.push(x);\n yList.push(y);\n }\n\n xList.sort(sortFloat);\n yList.sort(sortFloat);\n\n xMin = xList[0];\n xMax = xList[xList.length - 1];\n yMin = yList[0];\n yMax = yList[yList.length - 1];\n\n return new scope.Rectangle({x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin});\n };\n\n /**\n * This method is use to calculate the size of the rectangle that contains a line.\n *\n * @method getLineRect\n * @param {Point} firstPoint\n * @param {Point} lastPoint\n * @returns {Rectangle}\n */\n MathUtils.getLineRect = function (firstPoint, lastPoint) {\n\n var xFirst = firstPoint.x,\n xLast = lastPoint.x,\n xMin = Math.min(xFirst, xLast),\n xMax = Math.max(xFirst, xLast),\n\n yFirst = firstPoint.y,\n yLast = lastPoint.y,\n yMin = Math.min(yFirst, yLast),\n yMax = Math.max(yFirst, yLast);\n\n return new scope.Rectangle({x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin});\n };\n\n /**\n * This method is use to calculate the size of the rectangle that contains bounding boxes.\n *\n * @method getBoundingRect\n * @param {Rectangle[]} boundingBoxes List of bounding box\n * @returns {Rectangle}\n */\n MathUtils.getBoundingRect = function (boundingBoxes) {\n\n var xList = [],\n yList = [];\n\n for (var i in boundingBoxes) {\n var rectangle = boundingBoxes[i];\n xList.push(rectangle.getX());\n xList.push(rectangle.getX() + rectangle.getWidth());\n yList.push(rectangle.getY());\n yList.push(rectangle.getY() + rectangle.getHeight());\n }\n\n var xMin = Math.min.apply(Math, xList);\n var xMax = Math.max.apply(Math, xList);\n var yMin = Math.min.apply(Math, yList);\n var yMax = Math.max.apply(Math, yList);\n\n return new scope.Rectangle({x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin});\n };\n\n // Export\n scope.MathUtils = MathUtils;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract WebSocket recognition message\n *\n * @class AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractWSMessage(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get the message type\n *\n * @method getType\n * @returns {String}\n */\n AbstractWSMessage.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.AbstractWSMessage = AbstractWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent an abstract input component\n *\n * @class AbstractComponent\n * @constructor\n */\n function AbstractComponent() {\n }\n\n /**\n * Get the type of the input component\n *\n * @method getType\n * @returns {String}\n */\n AbstractComponent.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Set the type of the input component\n *\n * @method setType\n * @param {String} type\n */\n AbstractComponent.prototype.setType = function (type) {\n if (typeof type !== 'string') {\n throw new Error('Invalid param type');\n }\n this.type = type;\n };\n\n // Export\n scope.AbstractComponent = AbstractComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent a simple stroke input component\n *\n * @class Stroke\n * @extends AbstractComponent\n * @constructor\n */\n function Stroke() {\n this.type = 'stroke';\n this.x = [];\n this.y = [];\n this.t = [];\n }\n\n /**\n * Inheritance property\n */\n Stroke.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n Stroke.prototype.constructor = Stroke;\n\n /**\n * Get the list of x coordinates\n *\n * @method getX\n * @returns {Number[]}\n */\n Stroke.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Set the list of x coordinates\n *\n * @method setX\n * @param {Number[]} x\n */\n Stroke.prototype.setX = function (x) {\n this.x = x;\n };\n\n /**\n * Add a x to the list of x coordinates\n *\n * @method addX\n * @param {Number} x\n */\n Stroke.prototype.addX = function (x) {\n if ((x !== null) && (x !== undefined)) {\n this.x.push(x);\n }\n };\n\n /**\n * Get the list of y coordinates\n *\n * @method getY\n * @returns {Number[]}\n */\n Stroke.prototype.getY = function () {\n return this.y;\n };\n\n /**\n * Set the list of y coordinates\n *\n * @method setY\n * @param {Number[]} y\n */\n Stroke.prototype.setY = function (y) {\n this.y = y;\n };\n\n /**\n * Add a y to the list of y coordinates\n *\n * @method addY\n * @param {Number} y\n */\n Stroke.prototype.addY = function (y) {\n if ((y !== null) && (y !== undefined)) {\n this.y.push(y);\n }\n };\n\n /**\n * Get the list of timestamps\n *\n * @method getT\n * @returns {Number[]}\n */\n Stroke.prototype.getT = function () {\n return this.t;\n };\n\n /**\n * Set the list of timestamps\n *\n * @method setT\n * @param {Number[]} t\n */\n Stroke.prototype.setT = function (t) {\n this.t = t;\n };\n\n /**\n * Add a timestamp to the list\n *\n * @method addT\n * @param {Number} t\n */\n Stroke.prototype.addT = function (t) {\n if ((t !== null) && (t !== undefined)) {\n this.t.push(t);\n }\n };\n\n /**\n * Get the number of points for this stroke\n *\n * @method getLength\n * @returns {Number}\n */\n Stroke.prototype.getLength = function () {\n return this.x.length;\n };\n\n\n /**\n * Get the boundingBox\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n Stroke.prototype.getBoundingBox = function () {\n var boundingBox = new scope.Rectangle();\n boundingBox.setX(Math.min.apply(Math, this.getX()));\n boundingBox.setY(Math.min.apply(Math, this.getY()));\n boundingBox.setWidth(Math.max.apply(Math, this.getX()) - boundingBox.getX());\n boundingBox.setHeight(Math.max.apply(Math, this.getY()) - boundingBox.getY());\n return boundingBox;\n };\n\n // Export\n scope.Stroke = Stroke;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Char input component\n *\n * @class CharacterInputComponent\n * @extends AbstractComponent\n * @constructor\n */\n function CharacterInputComponent() {\n this.type = 'inputCharacter';\n this.alternates = [];\n }\n\n /**\n * Inheritance property\n */\n CharacterInputComponent.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n CharacterInputComponent.prototype.constructor = CharacterInputComponent;\n\n /**\n * Get character input alternates\n *\n * @method getAlternates\n * @returns {CharacterInputComponentAlternate[]}\n */\n CharacterInputComponent.prototype.getAlternates = function () {\n return this.alternates;\n };\n\n /**\n * Set character input alternates\n *\n * @method setAlternates\n * @param {CharacterInputComponentAlternate[]} alternates\n */\n CharacterInputComponent.prototype.setAlternates = function (alternates) {\n this.alternates = alternates;\n };\n\n /**\n * Add a character input alternate\n *\n * @method addAlternate\n * @param {CharacterInputComponent} alternate\n */\n CharacterInputComponent.prototype.addAlternate = function (alternate) {\n this.alternates.push(alternate);\n };\n\n /**\n * Get input component bounding-box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n CharacterInputComponent.prototype.getBoundingBox = function () {\n return this.boundingBox;\n };\n\n /**\n * Set input component bounding-box\n *\n * @method setBoundingBox\n * @param {Rectangle} boundingBox\n */\n CharacterInputComponent.prototype.setBoundingBox = function (boundingBox) {\n this.boundingBox = boundingBox;\n };\n\n // Export\n scope.CharacterInputComponent = CharacterInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Character input component alternate\n *\n * @class CharacterInputComponentAlternate\n * @constructor\n */\n function CharacterInputComponentAlternate(alternate, probability) {\n this.alternate = alternate;\n this.probability = probability;\n }\n\n /**\n * Get alternate\n *\n * @method getAlternate\n * @returns {String}\n */\n CharacterInputComponentAlternate.prototype.getAlternate = function () {\n return this.alternate;\n };\n\n /**\n * Set alternate\n *\n * @method setAlternate\n * @param {String} alternate\n */\n CharacterInputComponentAlternate.prototype.setAlternate = function (alternate) {\n this.alternate = alternate;\n };\n\n /**\n * Get probability\n *\n * @method getProbability\n * @returns {Number}\n */\n CharacterInputComponentAlternate.prototype.getProbability = function () {\n return this.probability;\n };\n\n /**\n * Set probability\n *\n * @method setProbability\n * @param {Number} probability\n */\n CharacterInputComponentAlternate.prototype.setProbability = function (probability) {\n this.probability = probability;\n };\n\n // Export\n scope.CharacterInputComponentAlternate = CharacterInputComponentAlternate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract parameters used for recognition\n *\n * @class AbstractParameter\n * @constructor\n */\n function AbstractParameter() {\n }\n\n // Export\n scope.AbstractParameter = AbstractParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstraction of recognizer input\n *\n * @class AbstractRecognitionInput\n * @constructor\n */\n function AbstractRecognitionInput() {\n }\n\n // Export\n scope.AbstractRecognitionInput = AbstractRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract input recognition data\n *\n * @class AbstractRecognitionData\n * @constructor\n */\n function AbstractRecognitionData() {\n }\n\n /**\n * Get the application key\n *\n * @method getApplicationKey\n * @returns {String}\n */\n AbstractRecognitionData.prototype.getApplicationKey = function () {\n return this.applicationKey;\n };\n\n /**\n * Set the application key\n *\n * @method setApplicationKey\n * @param {String} applicationKey\n */\n AbstractRecognitionData.prototype.setApplicationKey = function (applicationKey) {\n this.applicationKey = applicationKey;\n };\n\n /**\n * Get the instanceId\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractRecognitionData.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n /**\n * Set the instanceId\n *\n * @method setInstanceId\n * @param {String} instanceId\n */\n AbstractRecognitionData.prototype.setInstanceId = function (instanceId) {\n this.instanceId = instanceId;\n };\n\n /**\n * @returns {string}\n */\n AbstractRecognitionData.prototype.getHmac = function () {\n return this.hmac;\n };\n\n /**\n * @param {string} hmac\n */\n AbstractRecognitionData.prototype.setHmac = function (hmac) {\n this.hmac = hmac;\n };\n\n // Export\n scope.AbstractRecognitionData = AbstractRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * List of languages recognition input\n *\n * @class RecognitionLanguagesData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function RecognitionLanguagesData() {\n }\n\n /**\n * Inheritance property\n */\n RecognitionLanguagesData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n RecognitionLanguagesData.prototype.constructor = RecognitionLanguagesData;\n\n /**\n * Get the recognition input mode\n *\n * @method getInputMode\n * @returns {String} inputMode\n */\n RecognitionLanguagesData.prototype.getInputMode = function () {\n return this.inputMode;\n };\n\n /**\n * Set the recognition input mode\n *\n * @method setInputMode\n * @param {String} inputMode\n */\n RecognitionLanguagesData.prototype.setInputMode = function (inputMode) {\n this.inputMode = inputMode;\n };\n\n // Export\n scope.RecognitionLanguagesData = RecognitionLanguagesData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket start math recognition message\n *\n * @class AbstractStartRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractStartRequestWSMessage(obj) {\n this.type = 'start';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n AbstractStartRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n AbstractStartRequestWSMessage.prototype.constructor = AbstractStartRequestWSMessage;\n\n // Export\n scope.AbstractStartRequestWSMessage = AbstractStartRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket continue math recognition message\n *\n * @class AbstractContinueRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractContinueRequestWSMessage(obj) {\n this.type = 'continue';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n AbstractContinueRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n AbstractContinueRequestWSMessage.prototype.constructor = AbstractContinueRequestWSMessage;\n\n /**\n * Get instanceId\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractContinueRequestWSMessage.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n /**\n * Set instanceId\n *\n * @method setInstanceId\n * @param {String} instanceId\n */\n AbstractContinueRequestWSMessage.prototype.setInstanceId = function (instanceId) {\n this.instanceId = instanceId;\n };\n\n // Export\n scope.AbstractContinueRequestWSMessage = AbstractContinueRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class ChallengeRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ChallengeRequestWSMessage(obj) {\n this.type = 'hmac';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ChallengeRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ChallengeRequestWSMessage.prototype.constructor = ChallengeRequestWSMessage;\n\n /**\n * Get the challenge\n *\n * @method getChallenge\n * @returns {String}\n */\n ChallengeRequestWSMessage.prototype.getChallenge = function () {\n return this.challenge;\n };\n\n /**\n * Set the challenge\n *\n * @method setChallenge\n * @param {String} challenge\n */\n ChallengeRequestWSMessage.prototype.setChallenge = function (challenge) {\n this.challenge = challenge;\n };\n\n /**\n * Get the application key\n *\n * @method getApplicationKey\n * @returns {String}\n */\n ChallengeRequestWSMessage.prototype.getApplicationKey = function () {\n return this.applicationKey;\n };\n\n /**\n * Set the application key\n *\n * @method setApplicationKey\n * @param {String} applicationKey\n */\n ChallengeRequestWSMessage.prototype.setApplicationKey = function (applicationKey) {\n this.applicationKey = applicationKey;\n };\n\n /**\n * Get HMAC signature\n *\n * @method getHmacSignature\n * @returns {String}\n */\n ChallengeRequestWSMessage.prototype.getHmacSignature = function () {\n return this.hmac;\n };\n\n /**\n * Set HMAC signature\n *\n * @method setHmacSignature\n * @param {String} hmac\n */\n ChallengeRequestWSMessage.prototype.setHmacSignature = function (hmac) {\n this.hmac = hmac;\n };\n\n // Export\n scope.ChallengeRequestWSMessage = ChallengeRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class InitRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function InitRequestWSMessage(obj) {\n this.type = 'applicationKey';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n InitRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n InitRequestWSMessage.prototype.constructor = InitRequestWSMessage;\n\n /**\n * Get the application key\n *\n * @method getApplicationKey\n * @returns {String}\n */\n InitRequestWSMessage.prototype.getApplicationKey = function () {\n return this.applicationKey;\n };\n\n /**\n * Set the application key\n *\n * @method setApplicationKey\n * @param {String} applicationKey\n */\n InitRequestWSMessage.prototype.setApplicationKey = function (applicationKey) {\n this.applicationKey = applicationKey;\n };\n\n // Export\n scope.InitRequestWSMessage = InitRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class ResetRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ResetRequestWSMessage(obj) {\n this.type = 'reset';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ResetRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ResetRequestWSMessage.prototype.constructor = ResetRequestWSMessage;\n\n // Export\n scope.ResetRequestWSMessage = ResetRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract text input component\n *\n * @class AbstractTextInputComponent\n * @extends AbstractComponent\n * @constructor\n */\n function AbstractTextInputComponent() {\n }\n\n /**\n * Inheritance property\n */\n AbstractTextInputComponent.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n AbstractTextInputComponent.prototype.constructor = AbstractTextInputComponent;\n\n /**\n * Get input component bounding-box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AbstractTextInputComponent.prototype.getBoundingBox = function () {\n return this.boundingBox;\n };\n\n /**\n * Set input component bounding-box\n *\n * @method setBoundingBox\n * @param {Rectangle} boundingBox\n */\n AbstractTextInputComponent.prototype.setBoundingBox = function (boundingBox) {\n this.boundingBox = boundingBox;\n };\n\n // Export\n scope.AbstractTextInputComponent = AbstractTextInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Char input component\n *\n * @class CharInputComponent\n * @extends AbstractTextInputComponent\n * @constructor\n */\n function CharInputComponent() {\n this.type = 'char';\n }\n\n /**\n * Inheritance property\n */\n CharInputComponent.prototype = new scope.AbstractTextInputComponent();\n\n /**\n * Constructor property\n */\n CharInputComponent.prototype.constructor = CharInputComponent;\n\n /**\n * Get character\n *\n * @method getCharacter\n * @returns {String}\n */\n CharInputComponent.prototype.getCharacter = function () {\n return this.character;\n };\n\n /**\n * Set character\n *\n * @method setCharacter\n * @param {String} character\n */\n CharInputComponent.prototype.setCharacter = function (character) {\n this.character = character;\n };\n\n // Export\n scope.CharInputComponent = CharInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * String input component\n *\n * @class StringInputComponent\n * @extends AbstractTextInputComponent\n * @constructor\n */\n function StringInputComponent() {\n this.type = 'string';\n }\n\n /**\n * Inheritance property\n */\n StringInputComponent.prototype = new scope.AbstractTextInputComponent();\n\n /**\n * Constructor property\n */\n StringInputComponent.prototype.constructor = StringInputComponent;\n\n /**\n * Get string\n *\n * @method getString\n * @returns {String}\n */\n StringInputComponent.prototype.getString = function () {\n return this.string;\n };\n\n /**\n * Set string\n *\n * @method setString\n * @param {String} string\n */\n StringInputComponent.prototype.setString = function (string) {\n this.string = string;\n };\n\n // Export\n scope.StringInputComponent = StringInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Input unit used for text recognition\n *\n * @class TextInputUnit\n * @constructor\n */\n function TextInputUnit() {\n this.textInputType = 'MULTI_LINE_TEXT';\n this.components = [];\n }\n\n /**\n * Get the input type\n *\n * @method getInputType\n * @returns {String}\n */\n TextInputUnit.prototype.getInputType = function () {\n return this.textInputType;\n };\n\n /**\n * Set the input type\n *\n * @method setInputType\n * @returns {String} inputType\n */\n TextInputUnit.prototype.setInputType = function (inputType) {\n this.textInputType = inputType;\n };\n\n /**\n * Get components for this input unit\n *\n * @method getComponents\n * @param {TextInkRange} [inkRange]\n * @returns {AbstractComponent[]}\n */\n TextInputUnit.prototype.getComponents = function (inkRange) {\n if (inkRange && (inkRange instanceof scope.TextInkRange)) {\n return this.components.slice(inkRange.getStartComponent(), inkRange.getEndComponent() + 1);\n }\n return this.components;\n };\n\n /**\n * Set components for this input unit\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n TextInputUnit.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.TextInputUnit = TextInputUnit;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for text recognition\n *\n * @class TextParameter\n * @extends AbstractParameter\n * @constructor\n */\n function TextParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n TextParameter.prototype.constructor = TextParameter;\n\n /**\n * Get recognition language\n *\n * @method getLanguage\n * @returns {String}\n */\n TextParameter.prototype.getLanguage = function () {\n return this.language;\n };\n\n /**\n * Set recognition language\n *\n * @method getLanguage\n * @param {String} language\n */\n TextParameter.prototype.setLanguage = function (language) {\n this.language = language;\n };\n\n /**\n * Get input mode\n *\n * @method getInputMode\n * @returns {String}\n */\n TextParameter.prototype.getInputMode = function () {\n return this.textInputMode;\n };\n\n /**\n * Set input mode\n *\n * @method setInputMode\n * @param {String} inputMode\n */\n TextParameter.prototype.setInputMode = function (inputMode) {\n this.textInputMode = inputMode;\n };\n\n /**\n * Get content types\n *\n * @method getContentTypes\n * @returns {Array}\n */\n TextParameter.prototype.getContentTypes = function () {\n return this.contentTypes;\n };\n\n /**\n * Set content types\n *\n * @method setContentTypes\n * @param {Array} contentTypes\n */\n TextParameter.prototype.setContentTypes = function (contentTypes) {\n this.contentTypes = contentTypes;\n };\n\n /**\n * Get SK\n *\n * @method getSubsetKnowledges\n * @returns {Array}\n */\n TextParameter.prototype.getSubsetKnowledges = function () {\n return this.subsetKnowledges;\n };\n\n /**\n * Set SK\n *\n * @method setSubsetKnowledges\n * @param {Array} subsetKnowledges\n */\n TextParameter.prototype.setSubsetKnowledges = function (subsetKnowledges) {\n this.subsetKnowledges = subsetKnowledges;\n };\n\n /**\n * Get user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n TextParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n TextParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get user LK words\n *\n * @method getUserLkWords\n * @returns {Array}\n */\n TextParameter.prototype.getUserLkWords = function () {\n return this.userLkWords;\n };\n\n /**\n * Set user LK words\n *\n * @method setUserLkWords\n * @param {Array} userLkWords\n */\n TextParameter.prototype.setUserLkWords = function (userLkWords) {\n this.userLkWords = userLkWords;\n };\n\n /**\n * Get result detail (e.g. TEXT, WORD ...)\n *\n * @method getResultDetail\n * @returns {String}\n */\n TextParameter.prototype.getResultDetail = function () {\n return this.resultDetail;\n };\n\n /**\n * Set result detail (e.g. TEXT, WORD ...)\n *\n * @method setResultDetail\n * @param {String} resultDetail\n */\n TextParameter.prototype.setResultDetail = function (resultDetail) {\n this.resultDetail = resultDetail;\n };\n\n /**\n * Get text properties\n *\n * @method getTextProperties\n * @returns {TextProperties}\n */\n TextParameter.prototype.getTextProperties = function () {\n return this.textProperties;\n };\n\n /**\n * Set text properties\n *\n * @method setTextProperties\n * @param {TextProperties} properties\n */\n TextParameter.prototype.setTextProperties = function (textProperties) {\n this.textProperties = textProperties;\n };\n\n // Export\n scope.TextParameter = TextParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text recognition properties\n *\n * @class TextProperties\n * @constructor\n */\n function TextProperties() {\n }\n\n /**\n * Get the number of text candidates requested\n *\n * @method getTextCandidateListSize\n * @returns {Number}\n */\n TextProperties.prototype.getTextCandidateListSize = function () {\n return this.textCandidateListSize;\n };\n\n /**\n * Set the number of text candidates requested\n *\n * @method setTextCandidateListSize\n * @param {Number} textCandidateListSize\n */\n TextProperties.prototype.setTextCandidateListSize = function (textCandidateListSize) {\n this.textCandidateListSize = textCandidateListSize;\n };\n\n /**\n * Get the number of word candidates requested\n *\n * @method getWordCandidateListSize\n * @returns {Number}\n */\n TextProperties.prototype.getWordCandidateListSize = function () {\n return this.wordCandidateListSize;\n };\n\n /**\n * Set the number of word candidates requested\n *\n * @method setWordCandidateListSize\n * @param {Number} wordCandidateListSize\n */\n TextProperties.prototype.setWordCandidateListSize = function (wordCandidateListSize) {\n this.wordCandidateListSize = wordCandidateListSize;\n };\n\n /**\n * Get the number of word prediction candidates requested\n *\n * @method getWordPredictionListSize\n * @returns {Number}\n */\n TextProperties.prototype.getWordPredictionListSize = function () {\n return this.wordPredictionListSize;\n };\n\n /**\n * Set the number of word prediction candidates requested\n *\n * @method setWordPredictionListSize\n * @param {Number} wordPredictionListSize\n */\n TextProperties.prototype.setWordPredictionListSize = function (wordPredictionListSize) {\n this.wordPredictionListSize = wordPredictionListSize;\n };\n\n /**\n * Get the number of word completion candidates requested\n *\n * @method getWordCompletionListSize\n * @returns {Number}\n */\n TextProperties.prototype.getWordCompletionListSize = function () {\n return this.wordCompletionListSize;\n };\n\n /**\n * Set the number of word completion candidates requested\n *\n * @method setWordCompletionListSize\n * @param {Number} wordCompletionListSize\n */\n TextProperties.prototype.setWordCompletionListSize = function (wordCompletionListSize) {\n this.wordCompletionListSize = wordCompletionListSize;\n };\n\n /**\n * Get the number of character candidates requested\n *\n * @method getCharacterCandidateListSize\n * @returns {Number}\n */\n TextProperties.prototype.getCharacterCandidateListSize = function () {\n return this.characterCandidateListSize;\n };\n\n /**\n * Set the number of character candidates requested\n *\n * @method setCharacterCandidateListSize\n * @param {Number} characterCandidateListSize\n */\n TextProperties.prototype.setCharacterCandidateListSize = function (characterCandidateListSize) {\n this.characterCandidateListSize = characterCandidateListSize;\n };\n\n /**\n * Get the discard case variations\n *\n * @method getDiscardCaseVariations\n * @returns {boolean}\n */\n TextProperties.prototype.getDiscardCaseVariations = function () {\n return this.discardCaseVariations;\n };\n\n /**\n * Set the discard case variations\n *\n * @method setDiscardCaseVariations\n * @param {boolean} discardCaseVariations\n */\n TextProperties.prototype.setDiscardCaseVariations = function (discardCaseVariations) {\n this.discardCaseVariations = discardCaseVariations;\n };\n\n /**\n * Get the discard accentuation variations\n *\n * @method getDiscardAccentuationVariations\n * @returns {boolean}\n */\n TextProperties.prototype.getDiscardAccentuationVariations = function () {\n return this.discardAccentuationVariations;\n };\n\n /**\n * Set the discard accentuation variations\n *\n * @method setDiscardAccentuationVariations\n * @param {boolean} discardAccentuationVariations\n */\n TextProperties.prototype.setDiscardAccentuationVariations = function (discardAccentuationVariations) {\n this.discardAccentuationVariations = discardAccentuationVariations;\n };\n\n /**\n * Get disable spatial ordering\n *\n * @method getDisableSpatialOrdering\n * @returns {Boolean}\n */\n TextProperties.prototype.getDisableSpatialOrdering = function () {\n return this.disableSpatialOrdering;\n };\n\n /**\n * Set disable spatial ordering\n *\n * @method setDisableSpatialOrdering\n * @param {Boolean} disableSpatialOrdering\n */\n TextProperties.prototype.setDisableSpatialOrdering = function (disableSpatialOrdering) {\n this.disableSpatialOrdering = disableSpatialOrdering;\n };\n\n /**\n * Get glyph distortion\n *\n * @method getGlyphDistortion\n * @returns {Number}\n */\n TextProperties.prototype.getGlyphDistortion = function () {\n return this.glyphDistortion;\n };\n\n /**\n * Set glyph distortion\n *\n * @method setGlyphDistortion\n * @param {Number} glyphDistortion\n */\n TextProperties.prototype.setGlyphDistortion = function (glyphDistortion) {\n this.glyphDistortion = glyphDistortion;\n };\n\n /**\n * Get enable out of lexicon\n *\n * @method getEnableOutOfLexicon\n * @returns {Boolean}\n */\n TextProperties.prototype.getEnableOutOfLexicon = function () {\n return this.enableOutOfLexicon;\n };\n\n /**\n * Set enable out of lexicon\n *\n * @method setEnableOutOfLexicon\n * @param {Boolean} enableOutOfLexicon\n */\n TextProperties.prototype.setEnableOutOfLexicon = function (enableOutOfLexicon) {\n this.enableOutOfLexicon = enableOutOfLexicon;\n };\n\n /**\n * Get spelling distortion\n *\n * @method getSpellingDistortion\n * @returns {Number}\n */\n TextProperties.prototype.getSpellingDistortion = function () {\n return this.spellingDistortion;\n };\n\n /**\n * Set spelling distortion\n *\n * @method setSpellingDistortion\n * @param {Number} spellingDistortion\n */\n TextProperties.prototype.setSpellingDistortion = function (spellingDistortion) {\n this.spellingDistortion = spellingDistortion;\n };\n\n // Export\n scope.TextProperties = TextProperties;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for text recognition\n *\n * @class TextRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function TextRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n TextRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n TextRecognitionInput.prototype.constructor = TextRecognitionInput;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextRecognitionInput.prototype.getParameters = function () {\n return this.textParameter;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextRecognitionInput.prototype.setParameters = function (parameters) {\n this.textParameter = parameters;\n };\n\n /**\n * Get input units\n *\n * @method getInputUnits\n * @param {TextInkRange} [inkRange]\n * @returns {TextInputUnit[]}\n */\n TextRecognitionInput.prototype.getInputUnits = function (inkRange) {\n if (inkRange && (inkRange instanceof scope.TextInkRange)) {\n return this.inputUnits.slice(inkRange.getStartUnit(), inkRange.getEndUnit() + 1);\n }\n return this.inputUnits;\n };\n\n /**\n * Set input units\n *\n * @method setInputUnits\n * @param {TextInputUnit[]} inputUnits\n */\n TextRecognitionInput.prototype.setInputUnits = function (inputUnits) {\n this.inputUnits = inputUnits;\n };\n\n // Export\n scope.TextRecognitionInput = TextRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for text input\n *\n * @class TextRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function TextRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n TextRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n TextRecognitionData.prototype.constructor = TextRecognitionData;\n\n /**\n * Get text input\n *\n * @method getTextRecognitionInput\n * @returns {TextRecognitionInput} inputMode\n */\n TextRecognitionData.prototype.getTextRecognitionInput = function () {\n return this.textInput;\n };\n\n /**\n * Set text input\n *\n * @method setTextRecognitionInput\n * @param {TextRecognitionInput} input\n */\n TextRecognitionData.prototype.setTextRecognitionInput = function (input) {\n this.textInput = JSON.stringify(input);\n };\n\n // Export\n scope.TextRecognitionData = TextRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket start text recognition message\n *\n * @class TextStartRequestWSMessage\n * @extends AbstractStartRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function TextStartRequestWSMessage(obj) {\n scope.AbstractStartRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextStartRequestWSMessage.prototype = new scope.AbstractStartRequestWSMessage();\n\n /**\n * Constructor property\n */\n TextStartRequestWSMessage.prototype.constructor = TextStartRequestWSMessage;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextStartRequestWSMessage.prototype.getParameters = function () {\n return this.textParameter;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextStartRequestWSMessage.prototype.setParameters = function (parameters) {\n this.textParameter = parameters;\n };\n\n /**\n * Get input units\n *\n * @method getInputUnits\n * @returns {TextInputUnit[]}\n */\n TextStartRequestWSMessage.prototype.getInputUnits = function () {\n return this.inputUnits;\n };\n\n /**\n * Set input units\n *\n * @method setInputUnits\n * @param {TextInputUnit[]} inputUnits\n */\n TextStartRequestWSMessage.prototype.setInputUnits = function (inputUnits) {\n this.inputUnits = inputUnits;\n };\n\n // Export\n scope.TextStartRequestWSMessage = TextStartRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket continue text recognition message\n *\n * @class TextContinueRequestWSMessage\n * @extends AbstractContinueRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function TextContinueRequestWSMessage(obj) {\n scope.AbstractContinueRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextContinueRequestWSMessage.prototype = new scope.AbstractContinueRequestWSMessage();\n\n /**\n * Constructor property\n */\n TextContinueRequestWSMessage.prototype.constructor = TextContinueRequestWSMessage;\n\n /**\n * Get input units\n *\n * @method getInputUnits\n * @returns {TextInputUnit[]}\n */\n TextContinueRequestWSMessage.prototype.getInputUnits = function () {\n return this.inputUnits;\n };\n\n /**\n * Set input units\n *\n * @method setInputUnits\n * @param {TextInputUnit[]} inputUnits\n */\n TextContinueRequestWSMessage.prototype.setInputUnits = function (inputUnits) {\n this.inputUnits = inputUnits;\n };\n\n // Export\n scope.TextContinueRequestWSMessage = TextContinueRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for shape recognition\n *\n * @class ShapeParameter\n * @extends AbstractParameter\n * @constructor\n */\n function ShapeParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ShapeParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n ShapeParameter.prototype.constructor = ShapeParameter;\n\n /**\n * Get the sensitivity of the reject detection\n *\n * @method getRejectDetectionSensitivity\n * @returns {Boolean}\n */\n ShapeParameter.prototype.getRejectDetectionSensitivity = function () {\n return this.rejectDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the reject detection\n *\n * @method setRejectDetectionSensitivity\n * @param {Boolean} rejectDetectionSensitivity\n */\n ShapeParameter.prototype.setRejectDetectionSensitivity = function (rejectDetectionSensitivity) {\n this.rejectDetectionSensitivity = rejectDetectionSensitivity;\n };\n\n /**\n * Get the beautification\n *\n * @method hasBeautification\n * @returns {Boolean}\n */\n ShapeParameter.prototype.hasBeautification = function () {\n return this.doBeautification;\n };\n\n /**\n * Set the beautification\n *\n * @method setBeautification\n * @param {Boolean} doBeautification\n */\n ShapeParameter.prototype.setBeautification = function (doBeautification) {\n this.doBeautification = doBeautification;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n ShapeParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n ShapeParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n // Export\n scope.ShapeParameter = ShapeParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for shape recognition\n *\n * @class ShapeRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function ShapeRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n ShapeRecognitionInput.prototype.constructor = ShapeRecognitionInput;\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n ShapeRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n ShapeRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n /**\n * Get the beautification\n *\n * @method getDoBeautification\n * @returns {Boolean}\n */\n ShapeRecognitionInput.prototype.getDoBeautification = function () {\n return this.doBeautification;\n };\n\n /**\n * Set the beautification\n *\n * @method setDoBeautification\n * @param {Boolean} doBeautification\n */\n ShapeRecognitionInput.prototype.setDoBeautification = function (doBeautification) {\n this.doBeautification = doBeautification;\n };\n\n /**\n * Get the sensitivity of the reject detection\n *\n * @method getRejectDetectionSensitivity\n * @returns {Number}\n */\n ShapeRecognitionInput.prototype.getRejectDetectionSensitivity = function () {\n return this.rejectDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the reject detection\n *\n * @method setRejectDetectionSensitivity\n * @param {Number} rejectDetectionSensitivity\n */\n ShapeRecognitionInput.prototype.setRejectDetectionSensitivity = function (rejectDetectionSensitivity) {\n this.rejectDetectionSensitivity = rejectDetectionSensitivity;\n };\n\n // Export\n scope.ShapeRecognitionInput = ShapeRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for shape input\n *\n * @class ShapeRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function ShapeRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n ShapeRecognitionData.prototype.constructor = ShapeRecognitionData;\n\n /**\n * Get shape input\n *\n * @method getShapeRecognitionInput\n * @returns {ShapeRecognitionInput}\n */\n ShapeRecognitionData.prototype.getShapeRecognitionInput = function () {\n return this.shapeInput;\n };\n\n /**\n * Set shape input\n *\n * @method setShapeRecognitionInput\n * @param {ShapeRecognitionInput} input\n */\n ShapeRecognitionData.prototype.setShapeRecognitionInput = function (input) {\n this.shapeInput = JSON.stringify(input);\n };\n\n // Export\n scope.ShapeRecognitionData = ShapeRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for math recognition\n *\n * @class MathParameter\n * @extends AbstractParameter\n * @constructor\n */\n function MathParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n this.resultTypes = [];\n this.userResources = [];\n }\n\n /**\n * Inheritance property\n */\n MathParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n MathParameter.prototype.constructor = MathParameter;\n\n /**\n * Get the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MathParameter.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MathParameter.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the math result result orientation to columnar operations\n *\n * @method isColumnar\n * @returns {Boolean}\n */\n MathParameter.prototype.isColumnar = function () {\n return this.columnarOperation;\n };\n\n /**\n * Set the math result orientation to columnar operations\n *\n * @method setColumnar\n * @param {Boolean} columnar\n */\n MathParameter.prototype.setColumnar = function (columnar) {\n this.columnarOperation = columnar;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MathParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MathParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MathParameter.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MathParameter.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n\n // Export\n scope.MathParameter = MathParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for math recognition\n *\n * @class MathRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function MathRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n MathRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n MathRecognitionInput.prototype.constructor = MathRecognitionInput;\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n MathRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n MathRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n /**\n * Get the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MathRecognitionInput.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MathRecognitionInput.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the math result result orientation to columnar operations\n *\n * @method isColumnar\n * @returns {Boolean}\n */\n MathRecognitionInput.prototype.isColumnar = function () {\n return this.columnarOperation;\n };\n\n /**\n * Set the math result orientation to columnar operations\n *\n * @method setColumnar\n * @param {Boolean} columnar\n */\n MathRecognitionInput.prototype.setColumnar = function (columnar) {\n this.columnarOperation = columnar;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MathRecognitionInput.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MathRecognitionInput.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MathRecognitionInput.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MathRecognitionInput.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n // Export\n scope.MathRecognitionInput = MathRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for math input\n *\n * @class MathRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function MathRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n MathRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n MathRecognitionData.prototype.constructor = MathRecognitionData;\n\n /**\n * Get math input\n *\n * @method getMathRecognitionInput\n * @returns {MathRecognitionInput}\n */\n MathRecognitionData.prototype.getMathRecognitionInput = function () {\n return this.mathInput;\n };\n\n /**\n * Set math input\n *\n * @method setMathRecognitionInput\n * @param {MathRecognitionInput} input\n */\n MathRecognitionData.prototype.setMathRecognitionInput = function (input) {\n this.mathInput = JSON.stringify(input);\n\n };\n\n // Export\n scope.MathRecognitionData = MathRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket start math recognition message\n *\n * @class MathStartRequestWSMessage\n * @extends AbstractStartRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function MathStartRequestWSMessage(obj) {\n scope.AbstractStartRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathStartRequestWSMessage.prototype = new scope.AbstractStartRequestWSMessage();\n\n /**\n * Constructor property\n */\n MathStartRequestWSMessage.prototype.constructor = MathStartRequestWSMessage;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MathParameter}\n */\n MathStartRequestWSMessage.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MathParameter} parameters\n */\n MathStartRequestWSMessage.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Get components\n *\n * @method getComponents\n * @returns {MathInputUnit[]}\n */\n MathStartRequestWSMessage.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set components\n *\n * @method setComponents\n * @param {MathInputUnit[]} components\n */\n MathStartRequestWSMessage.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.MathStartRequestWSMessage = MathStartRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket continue math recognition message\n *\n * @class MathContinueRequestWSMessage\n * @extends AbstractContinueRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function MathContinueRequestWSMessage(obj) {\n this.type = 'continue';\n scope.AbstractContinueRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathContinueRequestWSMessage.prototype = new scope.AbstractContinueRequestWSMessage();\n\n /**\n * Constructor property\n */\n MathContinueRequestWSMessage.prototype.constructor = MathContinueRequestWSMessage;\n\n /**\n * Get components\n *\n * @method getComponents\n * @returns {MathInputUnit[]}\n */\n MathContinueRequestWSMessage.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set components\n *\n * @method setComponents\n * @param {MathInputUnit[]} components\n */\n MathContinueRequestWSMessage.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.MathContinueRequestWSMessage = MathContinueRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract music input component\n *\n * @class AbstractMusicInputComponent\n * @extends AbstractComponent\n * @constructor\n */\n function AbstractMusicInputComponent() {\n }\n\n /**\n * Inheritance property\n */\n AbstractMusicInputComponent.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n AbstractMusicInputComponent.prototype.constructor = AbstractMusicInputComponent;\n\n /**\n * Get input component bounding-box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AbstractMusicInputComponent.prototype.getBoundingBox = function () {\n return this.boundingBox;\n };\n\n /**\n * Set input component bounding-box\n *\n * @method setBoundingBox\n * @param {Rectangle} boundingBox\n */\n AbstractMusicInputComponent.prototype.setBoundingBox = function (boundingBox) {\n this.boundingBox = boundingBox;\n };\n\n // Export\n scope.AbstractMusicInputComponent = AbstractMusicInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Accidental input component\n *\n * @class MusicAccidentalInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicAccidentalInputComponent() {\n this.type = 'accidental';\n }\n\n /**\n * Inheritance property\n */\n MusicAccidentalInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicAccidentalInputComponent.prototype.constructor = MusicAccidentalInputComponent;\n\n /**\n * Get accidental input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicAccidentalInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set accidental input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicAccidentalInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicAccidentalInputComponent = MusicAccidentalInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Arpeggiate input component\n *\n * @class MusicArpeggiateInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicArpeggiateInputComponent() {\n this.type = 'arpeggiate';\n }\n\n /**\n * Inheritance property\n */\n MusicArpeggiateInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicArpeggiateInputComponent.prototype.constructor = MusicArpeggiateInputComponent;\n\n /**\n * Get arpeggiate input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicArpeggiateInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set arpeggiate input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicArpeggiateInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicArpeggiateInputComponent = MusicArpeggiateInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music bar input\n *\n * @class MusicBarInput\n * @constructor\n */\n function MusicBarInput() {\n }\n\n /**\n * Get repeat direction\n *\n * @method getRepeatDirection\n * @returns {String}\n */\n MusicBarInput.prototype.getRepeatDirection = function () {\n return this.repeatDirection;\n };\n\n /**\n * Set repeat direction\n *\n * @method setRepeatDirection\n * @param {String} repeatDirection\n */\n MusicBarInput.prototype.setRepeatDirection = function (repeatDirection) {\n this.repeatDirection = repeatDirection;\n };\n\n /**\n * Get style\n *\n * @method getStyle\n * @returns {String}\n */\n MusicBarInput.prototype.getStyle = function () {\n return this.style;\n };\n\n /**\n * Set style\n *\n * @method setStyle\n * @param {String} style\n */\n MusicBarInput.prototype.setStyle = function (style) {\n this.style = style;\n };\n\n // Export\n scope.MusicBarInput = MusicBarInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Bar input component\n *\n * @class MusicBarInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicBarInputComponent() {\n this.type = 'bar';\n this.value = new scope.MusicBarInput();\n }\n\n /**\n * Inheritance property\n */\n MusicBarInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicBarInputComponent.prototype.constructor = MusicBarInputComponent;\n\n /**\n * Get bar input component value\n *\n * @method getValue\n * @returns {MusicBarInput}\n */\n MusicBarInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set bar input component value\n *\n * @method setValue\n * @param {MusicBarInput} value\n */\n MusicBarInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicBarInputComponent = MusicBarInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music beam input\n *\n * @class MusicBeamInput\n * @constructor\n */\n function MusicBeamInput() {\n }\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicBeamInput.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Set placement\n *\n * @method setPlacement\n * @param {String} placement\n */\n MusicBeamInput.prototype.setPlacement = function (placement) {\n this.placement = placement;\n };\n\n /**\n * Get slope\n *\n * @method getSlope\n * @returns {String}\n */\n MusicBeamInput.prototype.getSlope = function () {\n return this.slope;\n };\n\n /**\n * Set slope\n *\n * @method setSlope\n * @param {String} slope\n */\n MusicBeamInput.prototype.setSlope = function (slope) {\n this.slope = slope;\n };\n\n /**\n * Get left count\n *\n * @method getLeftCount\n * @returns {Number}\n */\n MusicBeamInput.prototype.getLeftCount = function () {\n return this.leftCount;\n };\n\n /**\n * Set left count\n *\n * @method setLeftCount\n * @param {Number} leftCount\n */\n MusicBeamInput.prototype.setLeftCount = function (leftCount) {\n this.leftCount = leftCount;\n };\n\n /**\n * Get right count\n *\n * @method getRightCount\n * @returns {Number}\n */\n MusicBeamInput.prototype.getRightCount = function () {\n return this.rightCount;\n };\n\n /**\n * Set right count\n *\n * @method setRightCount\n * @param {Number} rightCount\n */\n MusicBeamInput.prototype.setRightCount = function (rightCount) {\n this.rightCount = rightCount;\n };\n\n /**\n * Get gap\n *\n * @method getGap\n * @returns {Number}\n */\n MusicBeamInput.prototype.getGap = function () {\n return this.gap;\n };\n\n /**\n * Set gap\n *\n * @method setGap\n * @param {Number} gap\n */\n MusicBeamInput.prototype.setGap = function (gap) {\n this.gap = gap;\n };\n\n // Export\n scope.MusicBeamInput = MusicBeamInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Beam input component\n *\n * @class MusicBeamInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicBeamInputComponent() {\n this.type = 'beam';\n this.value = new scope.MusicBeamInput();\n }\n\n /**\n * Inheritance property\n */\n MusicBeamInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicBeamInputComponent.prototype.constructor = MusicBeamInputComponent;\n\n /**\n * Get beam input component value\n *\n * @method getValue\n * @returns {MusicBeamInput}\n */\n MusicBeamInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set beam input component value\n *\n * @method setValue\n * @param {MusicBeamInput} value\n */\n MusicBeamInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicBeamInputComponent = MusicBeamInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music clef input\n * default values: symbol='G', octave=0\n *\n * @class MusicClefInput\n * @constructor\n */\n function MusicClefInput() {\n this.symbol = 'G';\n this.octave = 0;\n }\n\n /**\n * Get y anchor\n *\n * @method getYAnchor\n * @returns {Number}\n */\n MusicClefInput.prototype.getYAnchor = function () {\n return this.yAnchor;\n };\n\n /**\n * Set y anchor\n *\n * @method setYAnchor\n * @param {Number} yAnchor\n */\n MusicClefInput.prototype.setYAnchor = function (yAnchor) {\n this.yAnchor = yAnchor;\n };\n\n /**\n * Get octave\n *\n * @method getOctave\n * @returns {Number}\n */\n MusicClefInput.prototype.getOctave = function () {\n return this.octave;\n };\n\n /**\n * Set octave\n *\n * @method setOctave\n * @param {Number} octave\n */\n MusicClefInput.prototype.setOctave = function (octave) {\n this.octave = octave;\n };\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicClefInput.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n /**\n * Set symbol\n *\n * @method setSymbol\n * @param {String} symbol\n */\n MusicClefInput.prototype.setSymbol = function (symbol) {\n this.symbol = symbol;\n };\n\n // Export\n scope.MusicClefInput = MusicClefInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Clef input component\n * default clef values: symbol='G', octave=0\n *\n * @class MusicClefInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicClefInputComponent() {\n this.type = 'clef';\n this.value = new scope.MusicClefInput();\n }\n\n /**\n * Inheritance property\n */\n MusicClefInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicClefInputComponent.prototype.constructor = MusicClefInputComponent;\n\n /**\n * Get clef input component value\n *\n * @method getValue\n * @returns {MusicClefInput}\n */\n MusicClefInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set clef input component value\n *\n * @method setValue\n * @param {MusicClefInput} value\n */\n MusicClefInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicClefInputComponent = MusicClefInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music decoration input\n *\n * @class MusicDecorationInput\n * @constructor\n */\n function MusicDecorationInput() {\n }\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicDecorationInput.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n /**\n * Set symbol\n *\n * @method setSymbol\n * @param {String} symbol\n */\n MusicDecorationInput.prototype.setSymbol = function (symbol) {\n this.symbol = symbol;\n };\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicDecorationInput.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Set placement\n *\n * @method setPlacement\n * @param {String} placement\n */\n MusicDecorationInput.prototype.setPlacement = function (placement) {\n this.placement = placement;\n };\n\n // Export\n scope.MusicDecorationInput = MusicDecorationInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Decoration input component\n *\n * @class MusicDecorationInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicDecorationInputComponent() {\n this.type = 'decoration';\n this.value = new scope.MusicDecorationInput();\n }\n\n /**\n * Inheritance property\n */\n MusicDecorationInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicDecorationInputComponent.prototype.constructor = MusicDecorationInputComponent;\n\n /**\n * Get decoration input component value\n *\n * @method getValue\n * @returns {MusicDecorationInput}\n */\n MusicDecorationInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set decoration input component value\n *\n * @method setValue\n * @param {MusicDecorationInput} value\n */\n MusicDecorationInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicDecorationInputComponent = MusicDecorationInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Dots input component\n *\n * @class MusicDotsInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicDotsInputComponent() {\n this.type = 'dots';\n }\n\n /**\n * Inheritance property\n */\n MusicDotsInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicDotsInputComponent.prototype.constructor = MusicDotsInputComponent;\n\n /**\n * Get dots input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicDotsInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set dots input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicDotsInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicDotsInputComponent = MusicDotsInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Head input component\n *\n * @class MusicHeadInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicHeadInputComponent() {\n this.type = 'head';\n }\n\n /**\n * Inheritance property\n */\n MusicHeadInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicHeadInputComponent.prototype.constructor = MusicHeadInputComponent;\n\n /**\n * Get head input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicHeadInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set head input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicHeadInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicHeadInputComponent = MusicHeadInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Ledger line input component\n *\n * @class MusicLedgerLineInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicLedgerLineInputComponent() {\n this.type = 'ledgerLine';\n }\n\n /**\n * Inheritance property\n */\n MusicLedgerLineInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicLedgerLineInputComponent.prototype.constructor = MusicLedgerLineInputComponent;\n\n // Export\n scope.MusicLedgerLineInputComponent = MusicLedgerLineInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Rest input component\n *\n * @class MusicRestInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicRestInputComponent() {\n this.type = 'rest';\n }\n\n /**\n * Inheritance property\n */\n MusicRestInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicRestInputComponent.prototype.constructor = MusicRestInputComponent;\n\n /**\n * Get rest input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicRestInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set rest input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicRestInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicRestInputComponent = MusicRestInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Stem input component\n *\n * @class MusicStemInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicStemInputComponent() {\n this.type = 'stem';\n }\n\n /**\n * Inheritance property\n */\n MusicStemInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicStemInputComponent.prototype.constructor = MusicStemInputComponent;\n\n /**\n * Get stem input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicStemInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set stem input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicStemInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicStemInputComponent = MusicStemInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Tie ro slur input component\n *\n * @class MusicTieOrSlurInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicTieOrSlurInputComponent() {\n this.type = 'tieOrSlur';\n }\n\n /**\n * Inheritance property\n */\n MusicTieOrSlurInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicTieOrSlurInputComponent.prototype.constructor = MusicTieOrSlurInputComponent;\n\n /**\n * Get tie or slur input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicTieOrSlurInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set tie or slur input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicTieOrSlurInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicTieOrSlurInputComponent = MusicTieOrSlurInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Time signature input component\n *\n * @class MusicTimeSignatureInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicTimeSignatureInputComponent() {\n this.type = 'timeSignature';\n }\n\n /**\n * Inheritance property\n */\n MusicTimeSignatureInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicTimeSignatureInputComponent.prototype.constructor = MusicTimeSignatureInputComponent;\n\n /**\n * Get time signature input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicTimeSignatureInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set time signature input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicTimeSignatureInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicTimeSignatureInputComponent = MusicTimeSignatureInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represents a staff used for music recognition\n * default values: count=5, gap=20\n *\n * @class MusicStaff\n * @constructor\n */\n function MusicStaff() {\n this.count = 5;\n this.gap = 20;\n }\n\n /**\n * Get the lines count\n *\n * @method getCount\n * @returns {Number}\n */\n MusicStaff.prototype.getCount = function () {\n return this.count;\n };\n\n /**\n * Set the lines count\n *\n * @method setCount\n * @param {Number} count\n */\n MusicStaff.prototype.setCount = function (count) {\n this.count = count;\n };\n\n /**\n * Get the spacing from the top\n *\n * @method getTop\n * @returns {Number}\n */\n MusicStaff.prototype.getTop = function () {\n return this.top;\n };\n\n /**\n * Set the spacing from the top\n *\n * @method setTop\n * @param {Number} top\n */\n MusicStaff.prototype.setTop = function (top) {\n this.top = top;\n };\n\n /**\n * Get the gap between lines\n *\n * @method getGap\n * @returns {Number}\n */\n MusicStaff.prototype.getGap = function () {\n return this.gap;\n };\n\n /**\n * Set the gap between lines\n *\n * @method setGap\n * @param {Number} gap\n */\n MusicStaff.prototype.setGap = function (gap) {\n this.gap = gap;\n };\n\n // Export\n scope.MusicStaff = MusicStaff;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for music recognition\n *\n * @class MusicParameter\n * @extends AbstractParameter\n * @constructor\n */\n function MusicParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n this.resultTypes = [];\n this.userResources = [];\n }\n\n /**\n * Inheritance property\n */\n MusicParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n MusicParameter.prototype.constructor = MusicParameter;\n\n /**\n * Get the music result types (e.g. MusicXML, ScoreTree)\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MusicParameter.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the music result types (e.g. MusicXML, ScoreTree)\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MusicParameter.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MusicParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MusicParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MusicParameter.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MusicParameter.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n\n /**\n * Get the staff\n *\n * @method getStaff\n * @returns {MusicStaff}\n */\n MusicParameter.prototype.getStaff = function () {\n return this.staff;\n };\n\n /**\n * Set the staff\n *\n * @method setStaff\n * @param {MusicStaff} staff\n */\n MusicParameter.prototype.setStaff = function (staff) {\n this.staff = staff;\n };\n\n /**\n * Get the number of divisions\n *\n * @method getDivisions\n * @returns {Number}\n */\n MusicParameter.prototype.getDivisions = function () {\n return this.divisions;\n };\n\n /**\n * Set the number of divisions\n *\n * @method setDivisions\n * @param {Number} divisions\n */\n MusicParameter.prototype.setDivisions = function (divisions) {\n this.divisions = divisions;\n };\n\n // Export\n scope.MusicParameter = MusicParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for music recognition\n *\n * @class MusicRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function MusicRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n MusicRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n MusicRecognitionInput.prototype.constructor = MusicRecognitionInput;\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n MusicRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n MusicRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n /**\n * Get the result types\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MusicRecognitionInput.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the result types\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MusicRecognitionInput.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MusicRecognitionInput.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MusicRecognitionInput.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MusicRecognitionInput.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MusicRecognitionInput.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n\n /**\n * Get the staff\n *\n * @method getStaff\n * @returns {MusicStaff}\n */\n MusicRecognitionInput.prototype.getStaff = function () {\n return this.staff;\n };\n\n /**\n * Set the staff\n *\n * @method setStaff\n * @param {MusicStaff} staff\n */\n MusicRecognitionInput.prototype.setStaff = function (staff) {\n this.staff = staff;\n };\n\n /**\n * Get the number of divisions\n *\n * @method getDivisions\n * @returns {Number}\n */\n MusicRecognitionInput.prototype.getDivisions = function () {\n return this.divisions;\n };\n\n /**\n * Set the number of divisions\n *\n * @method setDivisions\n * @param {Number} divisions\n */\n MusicRecognitionInput.prototype.setDivisions = function (divisions) {\n this.divisions = divisions;\n };\n\n // Export\n scope.MusicRecognitionInput = MusicRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for music input\n *\n * @class MusicRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function MusicRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n MusicRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n MusicRecognitionData.prototype.constructor = MusicRecognitionData;\n\n /**\n * Get music input\n *\n * @method getMusicRecognitionInput\n * @returns {MusicRecognitionInput}\n */\n MusicRecognitionData.prototype.getMusicRecognitionInput = function () {\n return this.musicInput;\n };\n\n /**\n * Set music input\n *\n * @method setMusicRecognitionInput\n * @param {MusicRecognitionInput} input\n */\n MusicRecognitionData.prototype.setMusicRecognitionInput = function (input) {\n this.musicInput = JSON.stringify(input);\n };\n\n // Export\n scope.MusicRecognitionData = MusicRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for analyzer recognition\n *\n * @class AnalyzerParameter\n * @extends AbstractParameter\n * @constructor\n */\n function AnalyzerParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n this.textParameter = new scope.TextParameter();\n this.textParameter.setLanguage('en_US');\n this.textParameter.setInputMode('CURSIVE');\n }\n\n /**\n * Inheritance property\n */\n AnalyzerParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n AnalyzerParameter.prototype.constructor = AnalyzerParameter;\n\n /**\n * Get text recognition parameters\n *\n * @method getTextParameters\n * @returns {TextParameter}\n */\n AnalyzerParameter.prototype.getTextParameters = function () {\n return this.textParameter;\n };\n\n /**\n * Set text recognition parameters\n *\n * @method setTextParameters\n * @param {TextParameter} parameters\n */\n AnalyzerParameter.prototype.setTextParameters = function (parameters) {\n this.textParameter = parameters;\n };\n\n /**\n * Get analyzer coordinate resolution\n *\n * @method getCoordinateResolution\n * @returns {Number}\n */\n AnalyzerParameter.prototype.getCoordinateResolution = function () {\n return this.coordinateResolution;\n };\n\n /**\n * Set analyzer coordinate resolution\n *\n * @method setCoordinateResolution\n * @param {Number} coordinateResolution\n */\n AnalyzerParameter.prototype.setCoordinateResolution = function (coordinateResolution) {\n this.coordinateResolution = coordinateResolution;\n };\n\n // Export\n scope.AnalyzerParameter = AnalyzerParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for analyzer recognition\n *\n * @class AnalyzerRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function AnalyzerRecognitionInput() {\n\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n AnalyzerRecognitionInput.prototype.constructor = AnalyzerRecognitionInput;\n\n /**\n * Get analyzer recognition parameters\n *\n * @method getParameters\n * @returns {AnalyzerParameter}\n */\n AnalyzerRecognitionInput.prototype.getParameters = function () {\n return this.parameter;\n };\n\n /**\n * Set analyzer recognition parameters\n *\n * @method setParameters\n * @param {AnalyzerParameter} parameters\n */\n AnalyzerRecognitionInput.prototype.setParameters = function (parameters) {\n this.parameter = parameters;\n };\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n AnalyzerRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n AnalyzerRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.AnalyzerRecognitionInput = AnalyzerRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for analyzer input\n *\n * @class AnalyzerRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function AnalyzerRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n AnalyzerRecognitionData.prototype.constructor = AnalyzerRecognitionData;\n\n /**\n * Get analyzer input\n *\n * @method getAnalyzerRecognitionInput\n * @returns {AnalyzerRecognitionInput}\n */\n AnalyzerRecognitionData.prototype.getAnalyzerRecognitionInput = function () {\n return this.analyzerInput;\n };\n\n /**\n * Set analyzer input\n *\n * @method setAnalyzerRecognitionInput\n * @param {AnalyzerRecognitionInput} input\n */\n AnalyzerRecognitionData.prototype.setAnalyzerRecognitionInput = function (input) {\n this.analyzerInput = JSON.stringify(input);\n };\n\n // Export\n scope.AnalyzerRecognitionData = AnalyzerRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract result\n *\n * @class AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function AbstractResult(obj) {\n if (obj) {\n this.instanceId = obj.instanceId;\n }\n }\n\n /**\n * Get instance id\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractResult.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n // Export\n scope.AbstractResult = AbstractResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition text result message\n *\n * @class AbstractRecoResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractRecoResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n if (obj) {\n this.instanceId = obj.instanceId;\n }\n }\n\n /**\n * Inheritance property\n */\n AbstractRecoResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n AbstractRecoResponseWSMessage.prototype.constructor = AbstractRecoResponseWSMessage;\n\n /**\n * Get instance id\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractRecoResponseWSMessage.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n // Export\n scope.AbstractRecoResponseWSMessage = AbstractRecoResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class ChallengeResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ChallengeResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n if (obj) {\n this.challenge = obj.challenge;\n }\n }\n\n /**\n * Inheritance property\n */\n ChallengeResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ChallengeResponseWSMessage.prototype.constructor = ChallengeResponseWSMessage;\n\n /**\n * Get the challenge\n *\n * @method getChallenge\n * @returns {String}\n */\n ChallengeResponseWSMessage.prototype.getChallenge = function () {\n return this.challenge;\n };\n\n // Export\n scope.ChallengeResponseWSMessage = ChallengeResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition error message\n *\n * @class ErrorResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ErrorResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n if (obj) {\n this.error = obj.error;\n }\n }\n\n /**\n * Inheritance property\n */\n ErrorResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ErrorResponseWSMessage.prototype.constructor = ErrorResponseWSMessage;\n\n /**\n * Get the error\n *\n * @method getError\n * @returns {String}\n */\n ErrorResponseWSMessage.prototype.getError = function () {\n return this.error;\n };\n\n // Export\n scope.ErrorResponseWSMessage = ErrorResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition init message\n *\n * @class InitResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function InitResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n InitResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n InitResponseWSMessage.prototype.constructor = InitResponseWSMessage;\n\n // Export\n scope.InitResponseWSMessage = InitResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text ink ranges\n *\n * @class TextInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function TextInkRange(obj) {\n if (obj) {\n var cpt = obj.split(/[:-]+/);\n this.startUnit = Number(cpt[0]);\n this.startComponent = Number(cpt[1]);\n this.startPoint = Number(cpt[2]);\n this.endUnit = Number(cpt[3]);\n this.endComponent = Number(cpt[4]);\n this.endPoint = Number(cpt[5]);\n }\n }\n\n /**\n * Get start unit\n *\n * @method getStartUnit\n * @returns {Number}\n */\n TextInkRange.prototype.getStartUnit = function () {\n return this.startUnit;\n };\n\n /**\n * Get end unit\n *\n * @method getEndUnit\n * @returns {Number}\n */\n TextInkRange.prototype.getEndUnit = function () {\n return this.endUnit;\n };\n\n /**\n * Get start component\n *\n * @method getStartComponent\n * @returns {Number}\n */\n TextInkRange.prototype.getStartComponent = function () {\n return this.startComponent;\n };\n\n /**\n * Get end component\n *\n * @method getEndComponent\n * @returns {Number}\n */\n TextInkRange.prototype.getEndComponent = function () {\n return this.endComponent;\n };\n\n /**\n * Get start point\n *\n * @method getStartPoint\n * @returns {Number}\n */\n TextInkRange.prototype.getStartPoint = function () {\n return this.startPoint;\n };\n\n /**\n * Get end point\n *\n * @method getEndPoint\n * @returns {Number}\n */\n TextInkRange.prototype.getEndPoint = function () {\n return this.endPoint;\n };\n\n // Export\n scope.TextInkRange = TextInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text candidate\n *\n * @class TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextCandidate(obj) {\n this.flags = [];\n if (obj) {\n this.label = obj.label;\n this.normalizedScore = obj.normalizedScore;\n this.spellingDistortionRatio = obj.spellingDistortionRatio;\n for (var j in obj.flags) {\n this.flags.push(obj.flags[j]);\n }\n }\n }\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n TextCandidate.prototype.getLabel = function () {\n return this.label;\n };\n\n /**\n * Get normalized score\n *\n * @method getNormalizedScore\n * @returns {Number}\n */\n TextCandidate.prototype.getNormalizedScore = function () {\n return this.normalizedScore;\n };\n\n /**\n * Get resemblance score\n *\n * @method getResemblanceScore\n * @returns {Number}\n */\n TextCandidate.prototype.getResemblanceScore = function () {\n return this.resemblanceScore;\n };\n\n /**\n * Get spelling distortion ratio\n *\n * @method getSpellingDistortionRatio\n * @returns {Number}\n */\n TextCandidate.prototype.getSpellingDistortionRatio = function () {\n return this.spellingDistortionRatio;\n };\n\n /**\n * Get flags\n *\n * @method getFlags\n * @returns {Array}\n */\n TextCandidate.prototype.getFlags = function () {\n return this.flags;\n };\n\n // Export\n scope.TextCandidate = TextCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextCharCandidate\n * @extends TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextCharCandidate(obj) {\n scope.TextCandidate.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextCharCandidate.prototype = new scope.TextCandidate();\n\n /**\n * Constructor property\n */\n TextCharCandidate.prototype.constructor = TextCharCandidate;\n\n // Export\n scope.TextCharCandidate = TextCharCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextWordCandidate\n * @extends TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextWordCandidate(obj) {\n scope.TextCandidate.call(this, obj);\n this.children = [];\n if (obj) {\n for (var i in obj.children) {\n this.children.push(new scope.TextCharSegment(obj.children[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextWordCandidate.prototype = new scope.TextCandidate();\n\n /**\n * Constructor property\n */\n TextWordCandidate.prototype.constructor = TextWordCandidate;\n\n /**\n * Get children\n *\n * @method getChildren\n * @returns {TextCharSegment[]}\n */\n TextWordCandidate.prototype.getChildren = function () {\n return this.children;\n };\n\n // Export\n scope.TextWordCandidate = TextWordCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextResultCandidate\n * @extends TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextResultCandidate(obj) {\n scope.TextCandidate.call(this, obj);\n this.children = [];\n if (obj) {\n for (var i in obj.children) {\n this.children.push(new scope.TextWordSegment(obj.children[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResultCandidate.prototype = new scope.TextCandidate();\n\n /**\n * Constructor property\n */\n TextResultCandidate.prototype.constructor = TextResultCandidate;\n\n /**\n * Get children\n *\n * @method getChildren\n * @returns {TextWordSegment[]}\n */\n TextResultCandidate.prototype.getChildren = function () {\n return this.children;\n };\n\n // Export\n scope.TextResultCandidate = TextResultCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text document\n *\n * @class TextDocument\n * @param {Object} [obj]\n * @constructor\n */\n function TextDocument(obj) {\n this.tagItems = [];\n this.wordCandidates = [];\n this.charCandidates = [];\n if (obj) {\n if (obj.textSegmentResult) {\n this.textSegmentResult = new scope.TextResultSegment(obj.textSegmentResult);\n }\n for (var i in obj.tagItems) {\n this.tagItems.push(new scope.TextTagItem(obj.tagItems[i]));\n }\n for (var j in obj.wordCandidates) {\n this.wordCandidates.push(new scope.TextWordSegment(obj.wordCandidates[j]));\n }\n for (var k in obj.charCandidates) {\n this.charCandidates.push(new scope.TextCharSegment(obj.charCandidates[k]));\n }\n }\n }\n\n /**\n * Get tag items\n *\n * @method getTagItems\n * @returns {TextTagItem[]}\n */\n TextDocument.prototype.getTagItems = function () {\n return this.tagItems;\n };\n\n /**\n * Get word segments\n *\n * @method getWordSegments\n * @returns {TextWordSegment[]}\n */\n TextDocument.prototype.getWordSegments = function () {\n return this.wordCandidates;\n };\n\n /**\n * Get word segment\n *\n * @method getWordSegment\n * @param {TextInkRange[]} inkRanges\n * @returns {TextWordSegment}\n */\n TextDocument.prototype.getWordSegment = function (inkRanges) {\n for (var i = 0; i < this.getWordSegments().length; i++) {\n if (JSON.stringify(this.getWordSegments()[i].getInkRanges()) === JSON.stringify(inkRanges)) {\n return this.getWordSegments()[i];\n }\n }\n return undefined;\n };\n\n /**\n * Get char segments\n *\n * @method getCharSegments\n * @returns {TextCharSegment[]}\n */\n TextDocument.prototype.getCharSegments = function () {\n return this.charCandidates;\n };\n\n /**\n * Get char segment\n *\n * @method getCharSegment\n * @param {TextInkRange[]} inkRanges\n * @returns {TextCharSegment}\n */\n TextDocument.prototype.getCharSegment = function (inkRanges) {\n for (var i = 0; i < this.getCharSegments().length; i++) {\n if (JSON.stringify(this.getCharSegments()[i].getInkRanges()) === JSON.stringify(inkRanges)) {\n return this.getCharSegments()[i];\n }\n }\n return undefined;\n };\n\n /**\n * Get text segment\n *\n * @method getTextSegment\n * @returns {TextResultSegment}\n */\n TextDocument.prototype.getTextSegment = function () {\n return this.textSegmentResult;\n };\n\n // Export\n scope.TextDocument = TextDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text result\n *\n * @class TextResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function TextResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n if (obj.result) {\n this.result = new scope.TextDocument(obj.result);\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n TextResult.prototype.constructor = TextResult;\n\n /**\n * Get text document\n *\n * @method getTextDocument\n * @returns {TextDocument}\n */\n TextResult.prototype.getTextDocument = function () {\n return this.result;\n };\n\n // Export\n scope.TextResult = TextResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextSegment(obj) {\n this.candidates = [];\n this.inkRanges = [];\n if (obj) {\n this.selectedCandidateIdx = obj.selectedCandidateIdx;\n if (obj.inkRanges) {\n var ranges = obj.inkRanges.split(/[\\s]+/);\n for (var j in ranges) {\n this.inkRanges.push(new scope.TextInkRange(ranges[j]));\n }\n }\n }\n }\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {TextCandidate[]}\n */\n TextSegment.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n TextSegment.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidateIdx;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {TextCandidate}\n */\n TextSegment.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidateIdx !== undefined)) {\n return this.candidates[this.selectedCandidateIdx];\n }\n return undefined;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {TextInkRange[]}\n */\n TextSegment.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.TextSegment = TextSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextCharSegment\n * @extends TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextCharSegment(obj) {\n scope.TextSegment.call(this, obj);\n if (obj) {\n for (var i in obj.candidates) {\n this.candidates.push(new scope.TextCharCandidate(obj.candidates[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextCharSegment.prototype = new scope.TextSegment();\n\n /**\n * Constructor property\n */\n TextCharSegment.prototype.constructor = TextCharSegment;\n\n // Export\n scope.TextCharSegment = TextCharSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextWordSegment\n * @extends TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextWordSegment(obj) {\n scope.TextSegment.call(this, obj);\n if (obj) {\n for (var i in obj.candidates) {\n this.candidates.push(new scope.TextWordCandidate(obj.candidates[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextWordSegment.prototype = new scope.TextSegment();\n\n /**\n * Constructor property\n */\n TextWordSegment.prototype.constructor = TextWordSegment;\n\n // Export\n scope.TextWordSegment = TextWordSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextResultSegment\n * @extends TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextResultSegment(obj) {\n scope.TextSegment.call(this, obj);\n if (obj) {\n for (var i in obj.candidates) {\n this.candidates.push(new scope.TextResultCandidate(obj.candidates[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResultSegment.prototype = new scope.TextSegment();\n\n /**\n * Constructor property\n */\n TextResultSegment.prototype.constructor = TextResultSegment;\n\n // Export\n scope.TextResultSegment = TextResultSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text tag item\n *\n * @class TextTagItem\n * @param {Object} [obj]\n * @constructor\n */\n function TextTagItem(obj) {\n this.inkRanges = [];\n if (obj) {\n this.tagType = obj.tagType;\n if (obj.inkRanges) {\n var ranges = obj.inkRanges.split(/[\\s]+/);\n for (var i in ranges) {\n this.inkRanges.push(new scope.TextInkRange(ranges[i]));\n }\n }\n }\n }\n\n /**\n * Get tag type\n *\n * @method getTagType\n * @returns {String}\n */\n TextTagItem.prototype.getTagType = function () {\n return this.tagType;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {TextInkRange[]}\n */\n TextTagItem.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.TextTagItem = TextTagItem;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition text result message\n *\n * @class TextResponseWSMessage\n * @extends AbstractRecoResponseWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function TextResponseWSMessage(obj) {\n scope.AbstractRecoResponseWSMessage.call(this, obj);\n if (obj) {\n if (obj.result) {\n this.result = new scope.TextDocument(obj.result);\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResponseWSMessage.prototype = new scope.AbstractRecoResponseWSMessage();\n\n /**\n * Constructor property\n */\n TextResponseWSMessage.prototype.constructor = TextResponseWSMessage;\n\n /**\n * Get text document\n *\n * @method getTextDocument\n * @returns {TextDocument}\n */\n TextResponseWSMessage.prototype.getTextDocument = function () {\n return this.result;\n };\n\n // Export\n scope.TextResponseWSMessage = TextResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract shape primitive\n *\n * @class AbstractShapePrimitive\n * @param {Object} [obj]\n * @constructor\n */\n function AbstractShapePrimitive(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AbstractShapePrimitive.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is line\n *\n * @method isLine\n * @returns {Boolean}\n */\n AbstractShapePrimitive.prototype.isLine = function () {\n return this.type === 'line';\n };\n\n /**\n * Is ellipse\n *\n * @method isEllipse\n * @returns {Boolean}\n */\n AbstractShapePrimitive.prototype.isEllipse = function () {\n return this.type === 'ellipse';\n };\n\n // Export\n scope.AbstractShapePrimitive = AbstractShapePrimitive;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract decorated shape\n *\n * @class AbstractDecoratedShape\n * @extends AbstractShapePrimitive\n * @param {Object} [obj]\n * @constructor\n */\n function AbstractDecoratedShape(obj) {\n scope.AbstractShapePrimitive.call(this, obj);\n if (obj) {\n this.beginDecoration = obj.beginDecoration;\n this.beginTangentAngle = obj.beginTangentAngle;\n this.endDecoration = obj.endDecoration;\n this.endTangentAngle = obj.endTangentAngle;\n }\n }\n\n /**\n * Inheritance property\n */\n AbstractDecoratedShape.prototype = new scope.AbstractShapePrimitive();\n\n /**\n * Constructor property\n */\n AbstractDecoratedShape.prototype.constructor = AbstractDecoratedShape;\n\n /**\n * Has begin decoration\n *\n * @method hasBeginDecoration\n * @returns {Boolean}\n */\n AbstractDecoratedShape.prototype.hasBeginDecoration = function () {\n return typeof this.beginDecoration !== 'undefined';\n };\n\n /**\n * Has end decoration\n *\n * @method hasEndDecoration\n * @returns {Boolean}\n */\n AbstractDecoratedShape.prototype.hasEndDecoration = function () {\n return typeof this.endDecoration !== 'undefined';\n };\n\n /**\n * Get begin decoration\n *\n * @method getBeginDecoration\n * @returns {String}\n */\n AbstractDecoratedShape.prototype.getBeginDecoration = function () {\n return this.beginDecoration;\n };\n\n /**\n * Get end decoration\n *\n * @method getEndDecoration\n * @returns {String}\n */\n AbstractDecoratedShape.prototype.getEndDecoration = function () {\n return this.endDecoration;\n };\n\n /**\n * Get begin tangent angle\n *\n * @method getBeginTangentAngle\n * @returns {Number}\n */\n AbstractDecoratedShape.prototype.getBeginTangentAngle = function () {\n return this.beginTangentAngle;\n };\n\n /**\n * Get end tangent angle\n *\n * @method getEndTangentAngle\n * @returns {Number}\n */\n AbstractDecoratedShape.prototype.getEndTangentAngle = function () {\n return this.endTangentAngle;\n };\n\n // Export\n scope.AbstractDecoratedShape = AbstractDecoratedShape;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape candidate\n *\n * @class ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeCandidate(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n ShapeCandidate.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is erased\n *\n * @method isErased\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isErased = function () {\n return this.type === 'erased';\n };\n\n /**\n * Is scratch-out\n *\n * @method isScratchOut\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isScratchOut = function () {\n return this.type === 'scratchOut';\n };\n\n /**\n * Is not recognized\n *\n * @method isNotRecognized\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isNotRecognized = function () {\n return this.type === 'notRecognized';\n };\n\n /**\n * Is recognized\n *\n * @method isRecognized\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isRecognized = function () {\n return this.type === 'recognizedShape';\n };\n\n // Export\n scope.ShapeCandidate = ShapeCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape document\n *\n * @class ShapeDocument\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeDocument(obj) {\n this.segments = [];\n if (obj) {\n for (var i in obj.segments) {\n this.segments.push(new scope.ShapeSegment(obj.segments[i]));\n }\n }\n }\n\n /**\n * Get segments\n *\n * @method getSegments\n * @returns {ShapeSegment[]}\n */\n ShapeDocument.prototype.getSegments = function () {\n return this.segments;\n };\n\n // Export\n scope.ShapeDocument = ShapeDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape ellipse\n *\n * @class ShapeEllipse\n * @extends AbstractDecoratedShape\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeEllipse(obj) {\n scope.AbstractDecoratedShape.call(this, obj);\n if (obj) {\n this.center = new scope.Point(obj.center);\n this.minRadius = obj.minRadius;\n this.maxRadius = obj.maxRadius;\n this.orientation = obj.orientation;\n this.startAngle = obj.startAngle;\n this.sweepAngle = obj.sweepAngle;\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeEllipse.prototype = new scope.AbstractDecoratedShape();\n\n /**\n * Constructor property\n */\n ShapeEllipse.prototype.constructor = ShapeEllipse;\n\n /**\n * Get center\n *\n * @method getCenter\n * @returns {Point}\n */\n ShapeEllipse.prototype.getCenter = function () {\n return this.center;\n };\n\n /**\n * Get min radius\n *\n * @method getMinRadius\n * @returns {Number}\n */\n ShapeEllipse.prototype.getMinRadius = function () {\n return this.minRadius;\n };\n\n /**\n * Get max radius\n *\n * @method getMaxRadius\n * @returns {Number}\n */\n ShapeEllipse.prototype.getMaxRadius = function () {\n return this.maxRadius;\n };\n\n /**\n * Get orientation\n *\n * @method getOrientation\n * @returns {String}\n */\n ShapeEllipse.prototype.getOrientation = function () {\n return this.orientation;\n };\n\n /**\n * Get start angle\n *\n * @method getStartAngle\n * @returns {Number}\n */\n ShapeEllipse.prototype.getStartAngle = function () {\n return this.startAngle;\n };\n\n /**\n * Get sweep angle\n *\n * @method getSweepAngle\n * @returns {Number}\n */\n ShapeEllipse.prototype.getSweepAngle = function () {\n return this.sweepAngle;\n };\n\n // Export\n scope.ShapeEllipse = ShapeEllipse;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape erased\n *\n * @class ShapeErased\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeErased(obj) {\n scope.ShapeCandidate.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ShapeErased.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeErased.prototype.constructor = ShapeErased;\n\n // Export\n scope.ShapeErased = ShapeErased;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape ink range\n *\n * @class ShapeInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeInkRange(obj) {\n if (obj) {\n this.firstStroke = obj.firstStroke;\n this.lastStroke = obj.lastStroke;\n this.firstPoint = obj.firstPoint;\n this.lastPoint = obj.lastPoint;\n }\n }\n\n /**\n * Get first stroke\n *\n * @method getFirstStroke\n * @returns {Number}\n */\n ShapeInkRange.prototype.getFirstStroke = function () {\n return this.firstStroke;\n };\n\n /**\n * Get last stroke\n *\n * @method getLastStroke\n * @returns {Number}\n */\n ShapeInkRange.prototype.getLastStroke = function () {\n return this.lastStroke;\n };\n\n /**\n * Get first point\n *\n * @method getFirstPoint\n * @returns {Point}\n */\n ShapeInkRange.prototype.getFirstPoint = function () {\n return this.firstPoint;\n };\n\n /**\n * Get last point\n *\n * @method getLastPoint\n * @returns {Point}\n */\n ShapeInkRange.prototype.getLastPoint = function () {\n return this.lastPoint;\n };\n\n // Export\n scope.ShapeInkRange = ShapeInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape line\n *\n * @class ShapeLine\n * @extends AbstractDecoratedShape\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeLine(obj) {\n scope.AbstractDecoratedShape.call(this, obj);\n if (obj) {\n this.firstPoint = new scope.Point(obj.firstPoint);\n this.lastPoint = new scope.Point(obj.lastPoint);\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeLine.prototype = new scope.AbstractDecoratedShape();\n\n /**\n * Constructor property\n */\n ShapeLine.prototype.constructor = ShapeLine;\n\n /**\n * Get first point\n *\n * @method getFirstPoint\n * @returns {Point}\n */\n ShapeLine.prototype.getFirstPoint = function () {\n return this.firstPoint;\n };\n\n /**\n * Get last point\n *\n * @method getLastPoint\n * @returns {Point}\n */\n ShapeLine.prototype.getLastPoint = function () {\n return this.lastPoint;\n };\n\n // Export\n scope.ShapeLine = ShapeLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape not recognized\n *\n * @class ShapeNotRecognized\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeNotRecognized(obj) {\n scope.ShapeCandidate.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ShapeNotRecognized.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeNotRecognized.prototype.constructor = ShapeNotRecognized;\n\n // Export\n scope.ShapeNotRecognized = ShapeNotRecognized;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape recognized\n *\n * @class ShapeRecognized\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeRecognized(obj) {\n scope.ShapeCandidate.call(this, obj);\n this.primitives = [];\n if (obj) {\n this.label = obj.label;\n this.normalizedRecognitionScore = obj.normalizedRecognitionScore;\n this.resemblanceScore = obj.resemblanceScore;\n for (var i in obj.primitives) {\n switch (obj.primitives[i].type) {\n case 'line':\n this.primitives.push(new scope.ShapeLine(obj.primitives[i]));\n break;\n case 'ellipse':\n this.primitives.push(new scope.ShapeEllipse(obj.primitives[i]));\n break;\n default:\n throw new Error('Unknown shape primitive');\n }\n }\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognized.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeRecognized.prototype.constructor = ShapeRecognized;\n\n /**\n * Get primitives\n *\n * @method getPrimitives\n * @returns {AbstractDecoratedShape[]}\n */\n ShapeRecognized.prototype.getPrimitives = function () {\n return this.primitives;\n };\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n ShapeRecognized.prototype.getLabel = function () {\n return this.label;\n };\n\n /**\n * Get normalized score\n *\n * @method getNormalizedRecognitionScore\n * @returns {Number}\n */\n ShapeRecognized.prototype.getNormalizedRecognitionScore = function () {\n return this.normalizedRecognitionScore;\n };\n\n /**\n * Get resemblance score\n *\n * @method getResemblanceScore\n * @returns {Number}\n */\n ShapeRecognized.prototype.getResemblanceScore = function () {\n return this.resemblanceScore;\n };\n\n // Export\n scope.ShapeRecognized = ShapeRecognized;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape result\n *\n * @class ShapeResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.ShapeDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n ShapeResult.prototype.constructor = ShapeResult;\n\n /**\n * Get shape document\n *\n * @method getShapeDocument\n * @returns {ShapeDocument}\n */\n ShapeResult.prototype.getShapeDocument = function () {\n return this.result;\n };\n\n // Export\n scope.ShapeResult = ShapeResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape scratch-out\n *\n * @class ShapeScratchOut\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeScratchOut(obj) {\n scope.ShapeCandidate.call(this, obj);\n this.inkRanges = [];\n if (obj) {\n for (var j in obj.inkRanges) {\n this.inkRanges.push(new scope.ShapeInkRange(obj.inkRanges[j]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeScratchOut.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeScratchOut.prototype.constructor = ShapeScratchOut;\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {ShapeInkRange[]}\n */\n ShapeScratchOut.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.ShapeScratchOut = ShapeScratchOut;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape segment\n *\n * @class ShapeSegment\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeSegment(obj) {\n this.inkRanges = [];\n this.candidates = [];\n if (obj) {\n this.elementType = obj.elementType;\n this.uniqueID = obj.uniqueID;\n this.selectedCandidateIndex = obj.selectedCandidateIndex;\n for (var i in obj.candidates) {\n switch (obj.candidates[i].type) {\n case 'erased':\n this.candidates.push(new scope.ShapeErased(obj.candidates[i]));\n break;\n case 'scratchOut':\n this.candidates.push(new scope.ShapeScratchOut(obj.candidates[i]));\n break;\n case 'recognizedShape':\n this.candidates.push(new scope.ShapeRecognized(obj.candidates[i]));\n break;\n default:\n this.candidates.push(new scope.ShapeNotRecognized(obj.candidates[i]));\n break;\n }\n }\n for (var j in obj.inkRanges) {\n this.inkRanges.push(new scope.ShapeInkRange(obj.inkRanges[j]));\n }\n }\n }\n\n /**\n * Get element type\n *\n * @method getElementType\n * @returns {String}\n */\n ShapeSegment.prototype.getElementType = function () {\n return this.elementType;\n };\n\n /**\n * Get unique id\n *\n * @method getUniqueId\n * @returns {String}\n */\n ShapeSegment.prototype.getUniqueId = function () {\n return this.uniqueID;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {ShapeInkRange[]}\n */\n ShapeSegment.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n ShapeSegment.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidateIndex;\n };\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {ShapeCandidate[]}\n */\n ShapeSegment.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {ShapeCandidate}\n */\n ShapeSegment.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidateIndex !== undefined)) {\n return this.candidates[this.selectedCandidateIndex];\n }\n return undefined;\n };\n\n // Export\n scope.ShapeSegment = ShapeSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math node\n *\n * @class MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathNode(obj) {\n if (obj) {\n this.name = obj.name;\n this.type = obj.type;\n }\n }\n\n /**\n * Get name\n *\n * @method getName\n * @returns {String}\n */\n MathNode.prototype.getName = function () {\n return this.name;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MathNode.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MathNode = MathNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math non-terminal node\n *\n * @class MathNonTerminalNode\n * @extends MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathNonTerminalNode(obj) {\n scope.MathNode.call(this, obj);\n this.candidates = [];\n if (obj) {\n this.selectedCandidate = obj.selectedCandidate;\n for (var i in obj.candidates) {\n switch (obj.candidates[i].type) {\n case 'nonTerminalNode':\n switch (obj.candidates[i].name) {\n case 'term':\n this.candidates.push(new scope.MathTermNonTerminalNode(obj.candidates[i]));\n break;\n case 'sqrtTerm':\n this.candidates.push(new scope.MathSqrtNonTerminalNode(obj.candidates[i]));\n break;\n case 'vectorTerm':\n this.candidates.push(new scope.MathVectorNonTerminalNode(obj.candidates[i]));\n break;\n case 'system':\n this.candidates.push(new scope.MathSystemNonTerminalNode(obj.candidates[i]));\n break;\n case 'exponentiable':\n this.candidates.push(new scope.MathExponentiableNonTerminalNode(obj.candidates[i]));\n break;\n case 'expression':\n this.candidates.push(new scope.MathExpressionNonTerminalNode(obj.candidates[i]));\n break;\n default:\n throw new Error('Unknown nonTerminalNode');\n }\n break;\n case 'terminalNode':\n this.candidates.push(new scope.MathTerminalNode(obj.candidates[i]));\n break;\n case 'rule':\n switch (obj.candidates[i].name) {\n case 'identity':\n this.candidates.push(new scope.MathIdentityRuleNode(obj.candidates[i]));\n break;\n case 'horizontal pair':\n this.candidates.push(new scope.MathHorizontalPairRuleNode(obj.candidates[i]));\n break;\n case 'fence':\n this.candidates.push(new scope.MathFenceRuleNode(obj.candidates[i]));\n break;\n case 'fraction':\n this.candidates.push(new scope.MathFractionRuleNode(obj.candidates[i]));\n break;\n case 'sqrt':\n this.candidates.push(new scope.MathSqrtRuleNode(obj.candidates[i]));\n break;\n case 'subscript':\n this.candidates.push(new scope.MathSubscriptRuleNode(obj.candidates[i]));\n break;\n case 'superscript':\n this.candidates.push(new scope.MathSuperscriptRuleNode(obj.candidates[i]));\n break;\n case 'subsuperscript':\n this.candidates.push(new scope.MathSubSuperscriptRuleNode(obj.candidates[i]));\n break;\n case 'underscript':\n this.candidates.push(new scope.MathUnderscriptRuleNode(obj.candidates[i]));\n break;\n case 'overscript':\n this.candidates.push(new scope.MathOverscriptRuleNode(obj.candidates[i]));\n break;\n case 'underoverscript':\n this.candidates.push(new scope.MathUnderOverscriptRuleNode(obj.candidates[i]));\n break;\n case 'presuperscript':\n this.candidates.push(new scope.MathPreSuperscriptRuleNode(obj.candidates[i]));\n break;\n case 'vertical pair':\n this.candidates.push(new scope.MathVerticalPairRuleNode(obj.candidates[i]));\n break;\n case 'left fence':\n this.candidates.push(new scope.MathLeftFenceRuleNode(obj.candidates[i]));\n break;\n default:\n throw new Error('Unknown ruleNode');\n }\n break;\n default:\n throw new Error('Unknown math node type');\n }\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MathNonTerminalNode.prototype = new scope.MathNode();\n\n /**\n * Constructor property\n */\n MathNonTerminalNode.prototype.constructor = MathNonTerminalNode;\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {MathNode[]}\n */\n MathNonTerminalNode.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n MathNonTerminalNode.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidate;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {MathNode}\n */\n MathNonTerminalNode.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidate !== undefined)) {\n return this.candidates[this.selectedCandidate];\n }\n return undefined;\n };\n\n /**\n * Get bounding box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n MathNonTerminalNode.prototype.getBoundingBox = function () {\n return this.getSelectedCandidate() ? this.getSelectedCandidate().getBoundingBox() : undefined;\n };\n\n // Export\n scope.MathNonTerminalNode = MathNonTerminalNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract math result\n *\n * @class MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathResultElement(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MathResultElement.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is LaTeX result\n *\n * @method isLatex\n * @returns {Boolean}\n */\n MathResultElement.prototype.isLaTex = function () {\n return this.type === 'LATEX';\n };\n\n /**\n * Is MathML result\n *\n * @method isMathMl\n * @returns {Boolean}\n */\n MathResultElement.prototype.isMathMl = function () {\n return this.type === 'MATHML';\n };\n\n /**\n * Is SymbolTree result\n *\n * @method isSymbolTree\n * @returns {Boolean}\n */\n MathResultElement.prototype.isSymbolTree = function () {\n return this.type === 'SYMBOLTREE';\n };\n\n // Export\n scope.MathResultElement = MathResultElement;\n})(MyScript);","(function (scope) {\n 'use strict';\n /**\n * Math rule node\n *\n * @class MathRuleNode\n * @extends MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathRuleNode(obj) {\n scope.MathNode.call(this, obj);\n this.children = [];\n if (obj) {\n this.name = obj.name;\n for (var i in obj.children) {\n switch (obj.children[i].type) {\n case 'nonTerminalNode':\n switch (obj.children[i].name) {\n case 'term':\n this.children.push(new scope.MathTermNonTerminalNode(obj.children[i]));\n break;\n case 'sqrtTerm':\n this.children.push(new scope.MathSqrtNonTerminalNode(obj.children[i]));\n break;\n case 'vectorTerm':\n this.children.push(new scope.MathVectorNonTerminalNode(obj.children[i]));\n break;\n case 'system':\n this.children.push(new scope.MathSystemNonTerminalNode(obj.children[i]));\n break;\n case 'exponentiable':\n this.children.push(new scope.MathExponentiableNonTerminalNode(obj.children[i]));\n break;\n case 'expression':\n this.children.push(new scope.MathExpressionNonTerminalNode(obj.children[i]));\n break;\n default:\n throw new Error('Unknown nonTerminalNode');\n }\n break;\n case 'terminalNode':\n this.children.push(new scope.MathTerminalNode(obj.children[i]));\n break;\n case 'rule':\n switch (obj.children[i].name) {\n case 'identity':\n this.children.push(new scope.MathIdentityRuleNode(obj.children[i]));\n break;\n case 'horizontal pair':\n this.children.push(new scope.MathHorizontalPairRuleNode(obj.children[i]));\n break;\n case 'fence':\n this.children.push(new scope.MathFenceRuleNode(obj.children[i]));\n break;\n case 'fraction':\n this.children.push(new scope.MathFractionRuleNode(obj.children[i]));\n break;\n case 'sqrt':\n this.children.push(new scope.MathSqrtRuleNode(obj.children[i]));\n break;\n case 'subscript':\n this.children.push(new scope.MathSubscriptRuleNode(obj.children[i]));\n break;\n case 'superscript':\n this.children.push(new scope.MathSuperscriptRuleNode(obj.children[i]));\n break;\n case 'subsuperscript':\n this.children.push(new scope.MathSubSuperscriptRuleNode(obj.children[i]));\n break;\n case 'underscript':\n this.children.push(new scope.MathUnderscriptRuleNode(obj.children[i]));\n break;\n case 'overscript':\n this.children.push(new scope.MathOverscriptRuleNode(obj.children[i]));\n break;\n case 'underoverscript':\n this.children.push(new scope.MathUnderOverscriptRuleNode(obj.children[i]));\n break;\n case 'presuperscript':\n this.children.push(new scope.MathPreSuperscriptRuleNode(obj.children[i]));\n break;\n case 'vertical pair':\n this.children.push(new scope.MathVerticalPairRuleNode(obj.children[i]));\n break;\n case 'left fence':\n this.children.push(new scope.MathLeftFenceRuleNode(obj.children[i]));\n break;\n default:\n throw new Error('Unknown ruleNode');\n }\n break;\n default:\n throw new Error('Unknown math node type');\n }\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MathRuleNode.prototype = new scope.MathNode();\n\n /**\n * Constructor property\n */\n MathRuleNode.prototype.constructor = MathRuleNode;\n\n /**\n * Get name\n *\n * @method getName\n * @returns {String}\n */\n MathRuleNode.prototype.getName = function () {\n return this.name;\n };\n\n /**\n * Get children\n *\n * @method getChildren\n * @returns {MathNode[]}\n */\n MathRuleNode.prototype.getChildren = function () {\n return this.children;\n };\n\n // Export\n scope.MathRuleNode = MathRuleNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math document\n *\n * @class MathDocument\n * @param {Object} [obj]\n * @constructor\n */\n function MathDocument(obj) {\n this.results = [];\n this.scratchOutResults = [];\n if (obj) {\n for (var i in obj.results) {\n var result = obj.results[i];\n switch (result.type) {\n case 'MATHML':\n this.results.push(new scope.MathMathMLResultElement(result));\n break;\n case 'LATEX':\n this.results.push(new scope.MathLaTexResultElement(result));\n break;\n case 'SYMBOLTREE':\n this.results.push(new scope.MathSymbolTreeResultElement(result));\n break;\n default:\n throw new Error('Unknown math result type');\n }\n }\n for (var j in obj.scratchOutResults) {\n this.scratchOutResults.push(new scope.MathScratchOut(obj.scratchOutResults[j]));\n }\n }\n }\n\n /**\n * Get result elements\n *\n * @method getResultElements\n * @returns {MathResultElement[]}\n */\n MathDocument.prototype.getResultElements = function () {\n return this.results;\n };\n\n /**\n * Get scratch-out results\n *\n * @method getScratchOutResults\n * @returns {MathScratchOut[]}\n */\n MathDocument.prototype.getScratchOutResults = function () {\n return this.scratchOutResults;\n };\n\n // Export\n scope.MathDocument = MathDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math ink range\n *\n * @class MathInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function MathInkRange(obj) {\n if (obj) {\n this.component = obj.component;\n this.firstItem = obj.firstItem;\n this.lastItem = obj.lastItem;\n }\n }\n\n /**\n * Get component\n *\n * @method getComponent\n * @returns {Number}\n */\n MathInkRange.prototype.getComponent = function () {\n return this.component;\n };\n\n /**\n * Get first item\n *\n * @method getFirstItem\n * @returns {Number}\n */\n MathInkRange.prototype.getFirstItem = function () {\n return this.firstItem;\n };\n\n /**\n * Get last item\n *\n * @method getLastItem\n * @returns {Number}\n */\n MathInkRange.prototype.getLastItem = function () {\n return this.lastItem;\n };\n\n // Export\n scope.MathInkRange = MathInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * LaTex result element\n *\n * @class MathLaTexResultElement\n * @extends MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathLaTexResultElement(obj) {\n scope.MathResultElement.call(this, obj);\n if (obj) {\n this.value = obj.value;\n }\n }\n\n /**\n * Inheritance property\n */\n MathLaTexResultElement.prototype = new scope.MathResultElement();\n\n /**\n * Constructor property\n */\n MathLaTexResultElement.prototype.constructor = MathLaTexResultElement;\n\n /**\n * Get value\n *\n * @method getValue\n * @returns {String}\n */\n MathLaTexResultElement.prototype.getValue = function () {\n return this.value;\n };\n\n // Export\n scope.MathLaTexResultElement = MathLaTexResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * MathML result element\n *\n * @class MathMathMLResultElement\n * @extends MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathMathMLResultElement(obj) {\n scope.MathResultElement.call(this, obj);\n if (obj) {\n this.value = obj.value;\n }\n }\n\n /**\n * Inheritance property\n */\n MathMathMLResultElement.prototype = new scope.MathResultElement();\n\n /**\n * Constructor property\n */\n MathMathMLResultElement.prototype.constructor = MathMathMLResultElement;\n\n /**\n * Get value\n *\n * @method getValue\n * @returns {String}\n */\n MathMathMLResultElement.prototype.getValue = function () {\n return this.value;\n };\n\n // Export\n scope.MathMathMLResultElement = MathMathMLResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math result\n *\n * @class MathResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function MathResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.MathDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n MathResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n MathResult.prototype.constructor = MathResult;\n\n /**\n * Get math document\n *\n * @method getMathDocument\n * @returns {MathDocument}\n */\n MathResult.prototype.getMathDocument = function () {\n return this.result;\n };\n\n // Export\n scope.MathResult = MathResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math scratch-out\n *\n * @class MathScratchOut\n * @param {Object} [obj]\n * @constructor\n */\n function MathScratchOut(obj) {\n this.inkRanges = [];\n this.erasedInkRanges = [];\n if (obj) {\n for (var i in obj.inkRanges) {\n this.inkRanges.push(new scope.MathInkRange(obj.inkRanges[i]));\n }\n for (var j in obj.erasedInkRanges) {\n this.erasedInkRanges.push(new scope.MathInkRange(obj.erasedInkRanges[j]));\n }\n }\n }\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {MathInkRange[]}\n */\n MathScratchOut.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get erased ink ranges\n *\n * @method getErasedInkRanges\n * @returns {MathInkRange[]}\n */\n MathScratchOut.prototype.getErasedInkRanges = function () {\n return this.erasedInkRanges;\n };\n\n // Export\n scope.MathScratchOut = MathScratchOut;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math symbol tree\n *\n * @class MathSymbolTreeResultElement\n * @extends MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathSymbolTreeResultElement(obj) {\n scope.MathResultElement.call(this, obj);\n if (obj) {\n switch (obj.root.type) {\n case 'nonTerminalNode':\n switch (obj.root.name) {\n case 'term':\n this.root = new scope.MathTermNonTerminalNode(obj.root);\n break;\n case 'sqrtTerm':\n this.root = new scope.MathSqrtNonTerminalNode(obj.root);\n break;\n case 'vectorTerm':\n this.root = new scope.MathVectorNonTerminalNode(obj.root);\n break;\n case 'system':\n this.root = new scope.MathSystemNonTerminalNode(obj.root);\n break;\n case 'exponentiable':\n this.root = new scope.MathExponentiableNonTerminalNode(obj.root);\n break;\n case 'expression':\n this.root = new scope.MathExpressionNonTerminalNode(obj.root);\n break;\n default:\n throw new Error('Unknown nonTerminalNode');\n }\n break;\n case 'terminalNode':\n this.root = new scope.MathTerminalNode(obj.root);\n break;\n case 'rule':\n switch (obj.root.name) {\n case 'identity':\n this.root = new scope.MathIdentityRuleNode(obj.root);\n break;\n case 'horizontal pair':\n this.root = new scope.MathHorizontalPairRuleNode(obj.root);\n break;\n case 'fence':\n this.root = new scope.MathFenceRuleNode(obj.root);\n break;\n case 'fraction':\n this.root = new scope.MathFractionRuleNode(obj.root);\n break;\n case 'sqrt':\n this.root = new scope.MathSqrtRuleNode(obj.root);\n break;\n case 'subscript':\n this.root = new scope.MathSubscriptRuleNode(obj.root);\n break;\n case 'superscript':\n this.root = new scope.MathSuperscriptRuleNode(obj.root);\n break;\n case 'subsuperscript':\n this.root = new scope.MathSubSuperscriptRuleNode(obj.root);\n break;\n case 'underscript':\n this.root = new scope.MathUnderscriptRuleNode(obj.root);\n break;\n case 'overscript':\n this.root = new scope.MathOverscriptRuleNode(obj.root);\n break;\n case 'underoverscript':\n this.root = new scope.MathUnderOverscriptRuleNode(obj.root);\n break;\n case 'presuperscript':\n this.root = new scope.MathPreSuperscriptRuleNode(obj.root);\n break;\n case 'vertical pair':\n this.root = new scope.MathVerticalPairRuleNode(obj.root);\n break;\n case 'left fence':\n this.root = new scope.MathLeftFenceRuleNode(obj.root);\n break;\n default:\n throw new Error('Unknown ruleNode');\n }\n break;\n default:\n throw new Error('Unknown math node type');\n }\n this.value = JSON.stringify(obj.root, null, ' ');\n }\n }\n\n /**\n * Inheritance property\n */\n MathSymbolTreeResultElement.prototype = new scope.MathResultElement();\n\n /**\n * Constructor property\n */\n MathSymbolTreeResultElement.prototype.constructor = MathSymbolTreeResultElement;\n\n /**\n * Get tree root\n *\n * @method getRoot\n * @returns {MathNode}\n */\n MathSymbolTreeResultElement.prototype.getRoot = function () {\n return this.root;\n };\n\n // Export\n scope.MathSymbolTreeResultElement = MathSymbolTreeResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math terminal node\n *\n * @class MathTerminalNode\n * @extends MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathTerminalNode(obj) {\n scope.MathNode.call(this, obj);\n this.candidates = [];\n this.inkRanges = [];\n if (obj) {\n this.selectedCandidate = obj.selectedCandidate;\n for (var i in obj.candidates) {\n this.candidates.push(new scope.MathTerminalNodeCandidate(obj.candidates[i]));\n }\n for (var j in obj.inkRanges) {\n this.inkRanges.push(new scope.MathInkRange(obj.inkRanges[j]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MathTerminalNode.prototype = new scope.MathNode();\n\n /**\n * Constructor property\n */\n MathTerminalNode.prototype.constructor = MathTerminalNode;\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {MathTerminalNodeCandidate[]}\n */\n MathTerminalNode.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {MathInkRange[]}\n */\n MathTerminalNode.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n MathTerminalNode.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidate;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {MathNode}\n */\n MathTerminalNode.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidate !== undefined)) {\n return this.candidates[this.selectedCandidate];\n }\n return undefined;\n };\n\n // Export\n scope.MathTerminalNode = MathTerminalNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math terminal node candidate\n *\n * @class MathTerminalNodeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function MathTerminalNodeCandidate(obj) {\n if (obj) {\n this.label = obj.label;\n this.normalizedRecognitionScore = obj.normalizedRecognitionScore;\n }\n }\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n MathTerminalNodeCandidate.prototype.getLabel = function () {\n return this.label;\n };\n\n /**\n * Get score\n *\n * @method getNormalizedRecognitionScore\n * @returns {Number}\n */\n MathTerminalNodeCandidate.prototype.getNormalizedRecognitionScore = function () {\n return this.normalizedRecognitionScore;\n };\n\n // Export\n scope.MathTerminalNodeCandidate = MathTerminalNodeCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math fence rule node\n *\n * @class MathFenceRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathFenceRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathFenceRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathFenceRuleNode.prototype.constructor = MathFenceRuleNode;\n\n // Export\n scope.MathFenceRuleNode = MathFenceRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math fraction rule node\n *\n * @class MathFractionRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathFractionRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathFractionRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathFractionRuleNode.prototype.constructor = MathFractionRuleNode;\n\n // Export\n scope.MathFractionRuleNode = MathFractionRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math horizontal pair rule node\n *\n * @class MathHorizontalPairRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathHorizontalPairRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathHorizontalPairRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathHorizontalPairRuleNode.prototype.constructor = MathHorizontalPairRuleNode;\n\n // Export\n scope.MathHorizontalPairRuleNode = MathHorizontalPairRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math identity rule node\n *\n * @class MathIdentityRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathIdentityRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathIdentityRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathIdentityRuleNode.prototype.constructor = MathIdentityRuleNode;\n\n // Export\n scope.MathIdentityRuleNode = MathIdentityRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math rule node\n *\n * @class MathLeftFenceRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathLeftFenceRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathLeftFenceRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathLeftFenceRuleNode.prototype.constructor = MathLeftFenceRuleNode;\n\n // Export\n scope.MathLeftFenceRuleNode = MathLeftFenceRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math overscript rule node\n *\n * @class MathOverscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathOverscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathOverscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathOverscriptRuleNode.prototype.constructor = MathOverscriptRuleNode;\n\n // Export\n scope.MathOverscriptRuleNode = MathOverscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math pre-superscript rule node\n *\n * @class MathPreSuperscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathPreSuperscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathPreSuperscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathPreSuperscriptRuleNode.prototype.constructor = MathPreSuperscriptRuleNode;\n\n // Export\n scope.MathPreSuperscriptRuleNode = MathPreSuperscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math sqrt rule node\n *\n * @class MathSqrtRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSqrtRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSqrtRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSqrtRuleNode.prototype.constructor = MathSqrtRuleNode;\n\n // Export\n scope.MathSqrtRuleNode = MathSqrtRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math subscript rule node\n *\n * @class MathSubscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSubscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSubscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSubscriptRuleNode.prototype.constructor = MathSubscriptRuleNode;\n\n // Export\n scope.MathSubscriptRuleNode = MathSubscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math sub-superscript rule node\n *\n * @class MathSubSuperscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSubSuperscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSubSuperscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSubSuperscriptRuleNode.prototype.constructor = MathSubSuperscriptRuleNode;\n\n // Export\n scope.MathSubSuperscriptRuleNode = MathSubSuperscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math superscript rule node\n *\n * @class MathSuperscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSuperscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSuperscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSuperscriptRuleNode.prototype.constructor = MathSuperscriptRuleNode;\n\n // Export\n scope.MathSuperscriptRuleNode = MathSuperscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math under-overscript rule node\n *\n * @class MathUnderOverscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathUnderOverscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathUnderOverscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathUnderOverscriptRuleNode.prototype.constructor = MathUnderOverscriptRuleNode;\n\n // Export\n scope.MathUnderOverscriptRuleNode = MathUnderOverscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math underscript rule node\n *\n * @class MathUnderscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathUnderscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathUnderscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathUnderscriptRuleNode.prototype.constructor = MathUnderscriptRuleNode;\n\n // Export\n scope.MathUnderscriptRuleNode = MathUnderscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math vertical pair rule node\n *\n * @class MathVerticalPairRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathVerticalPairRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathVerticalPairRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathVerticalPairRuleNode.prototype.constructor = MathVerticalPairRuleNode;\n\n // Export\n scope.MathVerticalPairRuleNode = MathVerticalPairRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math exponentiable non-terminal node\n *\n * @class MathExponentiableNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathExponentiableNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathExponentiableNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathExponentiableNonTerminalNode.prototype.constructor = MathExponentiableNonTerminalNode;\n\n // Export\n scope.MathExponentiableNonTerminalNode = MathExponentiableNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math expression non-terminal node\n *\n * @class MathExpressionNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathExpressionNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathExpressionNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathExpressionNonTerminalNode.prototype.constructor = MathExpressionNonTerminalNode;\n\n // Export\n scope.MathExpressionNonTerminalNode = MathExpressionNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathSqrtNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSqrtNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSqrtNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathSqrtNonTerminalNode.prototype.constructor = MathSqrtNonTerminalNode;\n\n // Export\n scope.MathSqrtNonTerminalNode = MathSqrtNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathVectorNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathVectorNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathVectorNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathVectorNonTerminalNode.prototype.constructor = MathVectorNonTerminalNode;\n\n // Export\n scope.MathVectorNonTerminalNode = MathVectorNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathSystemNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSystemNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSystemNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathSystemNonTerminalNode.prototype.constructor = MathSystemNonTerminalNode;\n\n // Export\n scope.MathSystemNonTerminalNode = MathSystemNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathTermNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathTermNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathTermNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathTermNonTerminalNode.prototype.constructor = MathTermNonTerminalNode;\n\n // Export\n scope.MathTermNonTerminalNode = MathTermNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition math result message\n *\n * @class MathResponseWSMessage\n * @extends AbstractRecoResponseWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function MathResponseWSMessage(obj) {\n scope.AbstractRecoResponseWSMessage.call(this, obj);\n if (obj) {\n this.result = new scope.MathDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n MathResponseWSMessage.prototype = new scope.AbstractRecoResponseWSMessage();\n\n /**\n * Constructor property\n */\n MathResponseWSMessage.prototype.constructor = MathResponseWSMessage;\n\n /**\n * Get math document\n *\n * @method getMathDocument\n * @returns {MathDocument}\n */\n MathResponseWSMessage.prototype.getMathDocument = function () {\n return this.result;\n };\n\n // Export\n scope.MathResponseWSMessage = MathResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract music element\n *\n * @class MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicElement(obj) {\n this.inputRanges = [];\n if (obj) {\n this.elementType = obj.elementType;\n this.inputRanges = obj.inputRanges;\n }\n }\n\n /**\n * Get element type\n *\n * @method getElementType\n * @returns {String}\n */\n MusicElement.prototype.getElementType = function () {\n return this.elementType;\n };\n\n /**\n * Get input ranges\n *\n * @method getInputRanges\n * @returns {MusicInputRange[]}\n */\n MusicElement.prototype.getInputRanges = function () {\n return this.inputRanges;\n };\n\n // Export\n scope.MusicElement = MusicElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract music result element\n *\n * @class MusicResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicResultElement(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicResultElement.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is MusicXML\n *\n * @method isMusicXML\n * @returns {Boolean}\n */\n MusicResultElement.prototype.isMusicXML = function () {\n return this.type === 'MUSICXML';\n };\n\n /**\n * Is ScoreTree\n *\n * @method isScoreTree\n * @returns {Boolean}\n */\n MusicResultElement.prototype.isScoreTree = function () {\n return this.type === 'SCORETREE';\n };\n\n // Export\n scope.MusicResultElement = MusicResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music accidental\n *\n * @class MusicAccidental\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicAccidental(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicAccidental.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicAccidental.prototype.constructor = MusicAccidental;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicAccidental.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicAccidental = MusicAccidental;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music annotation\n *\n * @class MusicAnnotation\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicAnnotation(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.label = obj.label;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicAnnotation.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicAnnotation.prototype.constructor = MusicAnnotation;\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n MusicAnnotation.prototype.getLabel = function () {\n return this.label;\n };\n\n // Export\n scope.MusicAnnotation = MusicAnnotation;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music arpeggiate\n *\n * @class MusicArpeggiate\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicArpeggiate(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicArpeggiate.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicArpeggiate.prototype.constructor = MusicArpeggiate;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicArpeggiate.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicArpeggiate = MusicArpeggiate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music bar\n *\n * @class MusicBar\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicBar(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n if (obj) {\n this.repeatDirection = obj.repeatDirection;\n this.style = obj.style;\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicBar.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicBar.prototype.constructor = MusicBar;\n\n /**\n * Get repeat direction\n *\n * @method getRepeatDirection\n * @returns {String}\n */\n MusicBar.prototype.getRepeatDirection = function () {\n return this.repeatDirection;\n };\n\n /**\n * Get style\n *\n * @method getStyle\n * @returns {String}\n */\n MusicBar.prototype.getStyle = function () {\n return this.style;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicBar.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n // Export\n scope.MusicBar = MusicBar;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music beam\n *\n * @class MusicBeam\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicBeam(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.placement = obj.placement;\n this.leftCount = obj.leftCount;\n this.rightCount = obj.rightCount;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicBeam.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicBeam.prototype.constructor = MusicBeam;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicBeam.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Get left count\n *\n * @method getLeftCount\n * @returns {Number}\n */\n MusicBeam.prototype.getLeftCount = function () {\n return this.leftCount;\n };\n\n /**\n * Get right count\n *\n * @method getRightCount\n * @returns {Number}\n */\n MusicBeam.prototype.getRightCount = function () {\n return this.rightCount;\n };\n\n // Export\n scope.MusicBeam = MusicBeam;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music chord\n *\n * @class MusicChord\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicChord(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n this.notes = [];\n this.beamTypes = [];\n this.ledgerLines = [];\n this.startSlurs = [];\n this.stopSlurs = [];\n if (obj) {\n this.duration = obj.duration;\n this.arpeggiate = new scope.MusicArpeggiate(obj.arpeggiate);\n this.startBeam = new scope.MusicBeam(obj.startBeam);\n this.stopBeam = new scope.MusicBeam(obj.stopBeam);\n this.stem = new scope.MusicStem(obj.stem);\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n for (var j in obj.notes) {\n this.notes.push(new scope.MusicNote(obj.notes[j]));\n }\n for (var k in obj.beamTypes) {\n this.beamTypes.push(obj.beamTypes[k]);\n }\n for (var l in obj.ledgerLines) {\n this.ledgerLines.push(new scope.MusicLedgerLine(obj.ledgerLines[l]));\n }\n for (var m in obj.startSlurs) {\n this.startSlurs.push(new scope.MusicSlur(obj.startSlurs[m]));\n }\n for (var n in obj.stopSlurs) {\n this.stopSlurs.push(new scope.MusicSlur(obj.stopSlurs[n]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicChord.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicChord.prototype.constructor = MusicChord;\n\n /**\n * Get duration\n *\n * @method getDuration\n * @returns {Number}\n */\n MusicChord.prototype.getDuration = function () {\n return this.duration;\n };\n\n /**\n * Get arpeggiate\n *\n * @method getArpeggiate\n * @returns {MusicArpeggiate}\n */\n MusicChord.prototype.getArpeggiate = function () {\n return this.arpeggiate;\n };\n\n /**\n * Get start beam\n *\n * @method getStartBeam\n * @returns {MusicBeam}\n */\n MusicChord.prototype.getStartBeam = function () {\n return this.startBeam;\n };\n\n /**\n * Get stop beam\n *\n * @method getStopBeam\n * @returns {MusicBeam}\n */\n MusicChord.prototype.getStopBeam = function () {\n return this.stopBeam;\n };\n\n /**\n * Get stem\n *\n * @method getStem\n * @returns {MusicStem}\n */\n MusicChord.prototype.getStem = function () {\n return this.stem;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicChord.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n /**\n * Get notes\n *\n * @method getNotes\n * @returns {MusicNote[]}\n */\n MusicChord.prototype.getNotes = function () {\n return this.notes;\n };\n\n /**\n * Get beam types\n *\n * @method getBeamTypes\n * @returns {Array}\n */\n MusicChord.prototype.getBeamTypes = function () {\n return this.beamTypes;\n };\n\n /**\n * Get ledger lines\n *\n * @method getLedgerLines\n * @returns {MusicLedgerLine[]}\n */\n MusicChord.prototype.getLedgerLines = function () {\n return this.ledgerLines;\n };\n\n /**\n * Get start slurs\n *\n * @method getStartSlurs\n * @returns {MusicSlur[]}\n */\n MusicChord.prototype.getStartSlurs = function () {\n return this.startSlurs;\n };\n\n /**\n * Get stop slurs\n *\n * @method getStopSlurs\n * @returns {MusicSlur[]}\n */\n MusicChord.prototype.getStopSlurs = function () {\n return this.stopSlurs;\n };\n\n // Export\n scope.MusicChord = MusicChord;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music clef\n *\n * @class MusicClef\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicClef(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.line = obj.line;\n this.octave = obj.octave;\n this.symbol = obj.symbol;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicClef.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicClef.prototype.constructor = MusicClef;\n\n /**\n * Get line\n *\n * @method getLine\n * @returns {Number}\n */\n MusicClef.prototype.getLine = function () {\n return this.line;\n };\n\n /**\n * Get octave\n *\n * @method getOctave\n * @returns {Number}\n */\n MusicClef.prototype.getOctave = function () {\n return this.octave;\n };\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicClef.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n // Export\n scope.MusicClef = MusicClef;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music decoration\n *\n * @class MusicDecoration\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicDecoration(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.symbol = obj.symbol;\n this.placement = obj.placement;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicDecoration.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicDecoration.prototype.constructor = MusicDecoration;\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicDecoration.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicDecoration.prototype.getPlacement = function () {\n return this.placement;\n };\n\n // Export\n scope.MusicDecoration = MusicDecoration;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music document\n *\n * @class MusicDocument\n * @param {Object} [obj]\n * @constructor\n */\n function MusicDocument(obj) {\n this.results = [];\n this.scratchOutResults = [];\n if (obj) {\n for (var i in obj.results) {\n switch (obj.results[i].type) {\n case 'MUSICXML':\n this.results.push(new scope.MusicXMLResultElement(obj.results[i]));\n break;\n default:\n this.results.push(new scope.MusicScoreTreeResultElement(obj.results[i]));\n break;\n }\n }\n for (var j in obj.scratchOutResults) {\n this.scratchOutResults.push(new scope.MusicScratchOut(obj.scratchOutResults[j]));\n }\n }\n }\n\n /**\n * Get result elements\n *\n * @method getResultElements\n * @returns {MusicResultElement[]}\n */\n MusicDocument.prototype.getResultElements = function () {\n return this.results;\n };\n\n /**\n * Get scratch-out results\n *\n * @method getScratchOutResults\n * @returns {MusicScratchOut[]}\n */\n MusicDocument.prototype.getScratchOutResults = function () {\n return this.scratchOutResults;\n };\n\n // Export\n scope.MusicDocument = MusicDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music dots\n *\n * @class MusicDots\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicDots(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.count = obj.count;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicDots.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicDots.prototype.constructor = MusicDots;\n\n /**\n * Get dots counts\n *\n * @method getCount\n * @returns {Number}\n */\n MusicDots.prototype.getCount = function () {\n return this.count;\n };\n\n // Export\n scope.MusicDots = MusicDots;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music head\n *\n * @class MusicHead\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicHead(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicHead.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicHead.prototype.constructor = MusicHead;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicHead.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicHead = MusicHead;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music input range\n *\n * @class MusicInputRange\n * @param {Object} [obj]\n * @constructor\n */\n function MusicInputRange(obj) {\n if (obj) {\n this.component = obj.component;\n this.firstItem = obj.firstItem;\n this.lastItem = obj.lastItem;\n }\n }\n\n /**\n * Get component\n *\n * @method getComponent\n * @returns {Number}\n */\n MusicInputRange.prototype.getComponent = function () {\n return this.component;\n };\n\n /**\n * Get first item\n *\n * @method getFirstItem\n * @returns {Number}\n */\n MusicInputRange.prototype.getFirstItem = function () {\n return this.firstItem;\n };\n\n /**\n * Get last item\n *\n * @method getLastItem\n * @returns {Number}\n */\n MusicInputRange.prototype.getLastItem = function () {\n return this.lastItem;\n };\n\n // Export\n scope.MusicInputRange = MusicInputRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music key signature\n *\n * @class MusicKeySignature\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicKeySignature(obj) {\n scope.MusicElement.call(this, obj);\n this.accidentals = [];\n if (obj) {\n this.signature = new scope.MusicKeySignatureData(obj.signature);\n for (var i in obj.accidentals) {\n this.accidentals.push(new scope.MusicAccidental(obj.accidentals[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicKeySignature.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicKeySignature.prototype.constructor = MusicKeySignature;\n\n /**\n * Get signature\n *\n * @method getSignature\n * @returns {MusicKeySignatureData}\n */\n MusicKeySignature.prototype.getSignature = function () {\n return this.signature;\n };\n\n /**\n * Get accidentals\n *\n * @method getAccidentals\n * @returns {MusicAccidental[]}\n */\n MusicKeySignature.prototype.getAccidentals = function () {\n return this.accidentals;\n };\n\n // Export\n scope.MusicKeySignature = MusicKeySignature;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music key signature data\n *\n * @class MusicKeySignatureData\n * @param {Object} [obj]\n * @constructor\n */\n function MusicKeySignatureData(obj) {\n if (obj) {\n this.fifths = obj.fifths;\n this.cancel = obj.cancel;\n }\n }\n\n /**\n * Get fifths\n *\n * @method getFifths\n * @returns {Number}\n */\n MusicKeySignatureData.prototype.getFifths = function () {\n return this.fifths;\n };\n\n /**\n * Get cancel\n *\n * @method getCancel\n * @returns {Number}\n */\n MusicKeySignatureData.prototype.getCancel = function () {\n return this.cancel;\n };\n\n // Export\n scope.MusicKeySignatureData = MusicKeySignatureData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music ledger line\n *\n * @class MusicLedgerLine\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicLedgerLine(obj) {\n scope.MusicElement.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MusicLedgerLine.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicLedgerLine.prototype.constructor = MusicLedgerLine;\n\n // Export\n scope.MusicLedgerLine = MusicLedgerLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music note\n *\n * @class MusicNote\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicNote(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n this.beamTypes = [];\n this.ledgerLines = [];\n this.startSlurs = [];\n this.stopSlurs = [];\n if (obj) {\n this.accidental = new scope.MusicAccidental(obj.accidental);\n this.dots = new scope.MusicDots(obj.dots);\n this.duration = obj.duration;\n this.head = new scope.MusicHead(obj.head);\n this.line = obj.line;\n this.pitch = new scope.MusicPitchData(obj.pitch);\n this.startBeam = new scope.MusicBeam(obj.startBeam);\n this.stopBeam = new scope.MusicBeam(obj.stopBeam);\n this.stem = new scope.MusicStem(obj.stem);\n this.startTie = new scope.MusicTie(obj.startTie);\n this.stopTie = new scope.MusicTie(obj.stopTie);\n this.startTuplet = new scope.MusicTuplet(obj.startTuplet);\n this.stopTuplet = new scope.MusicTuplet(obj.stopTuplet);\n this.timeModification = new scope.MusicTimeModificationData(obj.timeModification);\n this.type = obj.type;\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n for (var j in obj.beamTypes) {\n this.beamTypes.push(obj.beamTypes[j]);\n }\n for (var k in obj.ledgerLines) {\n this.ledgerLines.push(new scope.MusicLedgerLine(obj.ledgerLines[k]));\n }\n for (var l in obj.startSlurs) {\n this.startSlurs.push(new scope.MusicSlur(obj.startSlurs[l]));\n }\n for (var m in obj.stopSlurs) {\n this.stopSlurs.push(new scope.MusicSlur(obj.stopSlurs[m]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicNote.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicNote.prototype.constructor = MusicNote;\n\n /**\n * Get accidental\n *\n * @method getAccidental\n * @returns {MusicAccidental}\n */\n MusicNote.prototype.getAccidental = function () {\n return this.accidental;\n };\n\n /**\n * Get dots\n *\n * @method getDots\n * @returns {MusicDots}\n */\n MusicNote.prototype.getDots = function () {\n return this.dots;\n };\n\n /**\n * Get duration\n *\n * @method getDuration\n * @returns {Number}\n */\n MusicNote.prototype.getDuration = function () {\n return this.duration;\n };\n\n /**\n * Get head\n *\n * @method getHead\n * @returns {MusicHead}\n */\n MusicNote.prototype.getHead = function () {\n return this.head;\n };\n\n /**\n * Get line\n *\n * @method getLine\n * @returns {Number}\n */\n MusicNote.prototype.getLine = function () {\n return this.line;\n };\n\n /**\n * Get pitch\n *\n * @method getPitch\n * @returns {MusicPitchData}\n */\n MusicNote.prototype.getPitch = function () {\n return this.pitch;\n };\n\n /**\n * Get start beam\n *\n * @method getStartBeam\n * @returns {MusicBeam}\n */\n MusicNote.prototype.getStartBeam = function () {\n return this.startBeam;\n };\n\n /**\n * Get stop beam\n *\n * @method getStopBeam\n * @returns {MusicBeam}\n */\n MusicNote.prototype.getStopBeam = function () {\n return this.stopBeam;\n };\n\n /**\n * Get stem\n *\n * @method getStem\n * @returns {MusicStem}\n */\n MusicNote.prototype.getStem = function () {\n return this.stem;\n };\n\n /**\n * Get start tie\n *\n * @method getStartTie\n * @returns {MusicTie}\n */\n MusicNote.prototype.getStartTie = function () {\n return this.startTie;\n };\n\n /**\n * Get stop tie\n *\n * @method getStopTie\n * @returns {MusicTie}\n */\n MusicNote.prototype.getStopTie = function () {\n return this.stopTie;\n };\n\n /**\n * Get start tuplet\n *\n * @method getStartTuplet\n * @returns {MusicTuplet}\n */\n MusicNote.prototype.getStartTuplet = function () {\n return this.startTuplet;\n };\n\n /**\n * Get stop tuplet\n *\n * @method getStopTuplet\n * @returns {MusicTuplet}\n */\n MusicNote.prototype.getStopTuplet = function () {\n return this.stopTuplet;\n };\n\n /**\n * Get time modification\n *\n * @method getTimeModification\n * @returns {MusicTimeModificationData}\n */\n MusicNote.prototype.getTimeModification = function () {\n return this.timeModification;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicNote.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicNote.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n /**\n * Get beam types\n *\n * @method getBeamTypes\n * @returns {Array}\n */\n MusicNote.prototype.getBeamTypes = function () {\n return this.beamTypes;\n };\n\n /**\n * Get ledger lines\n *\n * @method getLedgerLines\n * @returns {MusicLedgerLine[]}\n */\n MusicNote.prototype.getLedgerLines = function () {\n return this.ledgerLines;\n };\n\n /**\n * Get start slurs\n *\n * @method getStartSlurs\n * @returns {MusicSlur[]}\n */\n MusicNote.prototype.getStartSlurs = function () {\n return this.startSlurs;\n };\n\n /**\n * Get stop slurs\n *\n * @method getStopSlurs\n * @returns {MusicSlur[]}\n */\n MusicNote.prototype.getStopSlurs = function () {\n return this.stopSlurs;\n };\n\n // Export\n scope.MusicNote = MusicNote;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music part\n *\n * @class MusicPart\n * @param {Object} [obj]\n * @constructor\n */\n function MusicPart(obj) {\n this.elements = [];\n if (obj) {\n for (var i in obj.elements) {\n switch (obj.elements[i].elementType) {\n case 'accidental':\n this.elements.push(new scope.MusicAccidental(obj.elements[i]));\n break;\n case 'annotation':\n this.elements.push(new scope.MusicAnnotation(obj.elements[i]));\n break;\n case 'arpeggiate':\n this.elements.push(new scope.MusicArpeggiate(obj.elements[i]));\n break;\n case 'bar':\n this.elements.push(new scope.MusicBar(obj.elements[i]));\n break;\n case 'beam':\n this.elements.push(new scope.MusicBeam(obj.elements[i]));\n break;\n case 'chord':\n this.elements.push(new scope.MusicChord(obj.elements[i]));\n break;\n case 'clef':\n this.elements.push(new scope.MusicClef(obj.elements[i]));\n break;\n case 'decoration':\n this.elements.push(new scope.MusicDecoration(obj.elements[i]));\n break;\n case 'dots':\n this.elements.push(new scope.MusicDots(obj.elements[i]));\n break;\n case 'head':\n this.elements.push(new scope.MusicHead(obj.elements[i]));\n break;\n case 'keySignature':\n this.elements.push(new scope.MusicKeySignature(obj.elements[i]));\n break;\n case 'ledgerLine':\n this.elements.push(new scope.MusicLedgerLine(obj.elements[i]));\n break;\n case 'note':\n this.elements.push(new scope.MusicNote(obj.elements[i]));\n break;\n case 'rest':\n this.elements.push(new scope.MusicRest(obj.elements[i]));\n break;\n case 'slur':\n this.elements.push(new scope.MusicSlur(obj.elements[i]));\n break;\n case 'stem':\n this.elements.push(new scope.MusicStem(obj.elements[i]));\n break;\n case 'tie':\n this.elements.push(new scope.MusicTie(obj.elements[i]));\n break;\n case 'timeSignature':\n this.elements.push(new scope.MusicTimeSignature(obj.elements[i]));\n break;\n case 'tuplet':\n this.elements.push(new scope.MusicTuplet(obj.elements[i]));\n break;\n case 'tupletBracket':\n this.elements.push(new scope.MusicTupletBracket(obj.elements[i]));\n break;\n default:\n throw new Error('Unknown music element');\n }\n }\n }\n }\n\n /**\n * Get elements\n *\n * @method getElements\n * @returns {MusicElement[]}\n */\n MusicPart.prototype.getElements = function () {\n return this.elements;\n };\n\n // Export\n scope.MusicPart = MusicPart;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music pitch data\n *\n * @class MusicPitchData\n * @param {Object} [obj]\n * @constructor\n */\n function MusicPitchData(obj) {\n if (obj) {\n this.alteration = obj.alteration;\n this.octave = obj.octave;\n this.step = obj.step;\n }\n }\n\n /**\n * Get alteration\n *\n * @method getAlteration\n * @returns {Number}\n */\n MusicPitchData.prototype.getAlteration = function () {\n return this.alteration;\n };\n\n /**\n * Get octave\n *\n * @method getOctave\n * @returns {Number}\n */\n MusicPitchData.prototype.getOctave = function () {\n return this.octave;\n };\n\n /**\n * Get step\n *\n * @method getStep\n * @returns {String}\n */\n MusicPitchData.prototype.getStep = function () {\n return this.step;\n };\n\n // Export\n scope.MusicPitchData = MusicPitchData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music rest\n *\n * @class MusicRest\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicRest(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n this.startSlurs = [];\n this.stopSlurs = [];\n if (obj) {\n this.type = obj.type;\n this.dots = new scope.MusicDots(obj.dots);\n this.startTuplet = new scope.MusicTuplet(obj.startTuplet);\n this.stopTuplet = new scope.MusicTuplet(obj.stopTuplet);\n this.timeModification = new scope.MusicTimeModificationData(obj.timeModification);\n this.duration = obj.duration;\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n for (var l in obj.startSlurs) {\n this.startSlurs.push(new scope.MusicSlur(obj.startSlurs[l]));\n }\n for (var m in obj.stopSlurs) {\n this.stopSlurs.push(new scope.MusicSlur(obj.stopSlurs[m]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicRest.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicRest.prototype.constructor = MusicRest;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicRest.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get dots\n *\n * @method getDots\n * @returns {MusicDots}\n */\n MusicRest.prototype.getDots = function () {\n return this.dots;\n };\n\n /**\n * Get start tuplet\n *\n * @method getStartTuplet\n * @returns {MusicTuplet}\n */\n MusicRest.prototype.getStartTuplet = function () {\n return this.startTuplet;\n };\n\n /**\n * Get stop tuplet\n *\n * @method getStopTuplet\n * @returns {MusicTuplet}\n */\n MusicRest.prototype.getStopTuplet = function () {\n return this.stopTuplet;\n };\n\n /**\n * Get time modification\n *\n * @method getTimeModification\n * @returns {MusicTimeModificationData}\n */\n MusicRest.prototype.getTimeModification = function () {\n return this.timeModification;\n };\n\n /**\n * Get duration\n *\n * @method getDuration\n * @returns {Number}\n */\n MusicRest.prototype.getDuration = function () {\n return this.duration;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicRest.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n /**\n * Get start slurs\n *\n * @method getStartSlurs\n * @returns {MusicSlur[]}\n */\n MusicRest.prototype.getStartSlurs = function () {\n return this.startSlurs;\n };\n\n /**\n * Get stop slurs\n *\n * @method getStopSlurs\n * @returns {MusicSlur[]}\n */\n MusicRest.prototype.getStopSlurs = function () {\n return this.stopSlurs;\n };\n\n // Export\n scope.MusicRest = MusicRest;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music result\n *\n * @class MusicResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function MusicResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.MusicDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n MusicResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n MusicResult.prototype.constructor = MusicResult;\n\n /**\n * Get music document\n *\n * @method getMusicDocument\n * @returns {MusicDocument}\n */\n MusicResult.prototype.getMusicDocument = function () {\n return this.result;\n };\n\n // Export\n scope.MusicResult = MusicResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music score\n *\n * @class MusicScore\n * @param {Object} [obj]\n * @constructor\n */\n function MusicScore(obj) {\n this.parts = [];\n if (obj) {\n for (var i in obj.parts) {\n this.parts.push(new scope.MusicPart(obj.parts[i]));\n }\n }\n }\n\n /**\n * Get parts\n *\n * @method getParts\n * @returns {MusicPart[]}\n */\n MusicScore.prototype.getParts = function () {\n return this.parts;\n };\n\n // Export\n scope.MusicScore = MusicScore;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music score tree\n *\n * @class MusicScoreTreeResultElement\n * @extends MusicResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicScoreTreeResultElement(obj) {\n scope.MusicResultElement.call(this, obj);\n if (obj) {\n this.score = new scope.MusicScore(obj.score);\n }\n }\n\n /**\n * Inheritance property\n */\n MusicScoreTreeResultElement.prototype = new scope.MusicResultElement();\n\n /**\n * Constructor property\n */\n MusicScoreTreeResultElement.prototype.constructor = MusicScoreTreeResultElement;\n\n /**\n * Get score\n *\n * @method getScore\n * @returns {MusicScore}\n */\n MusicScoreTreeResultElement.prototype.getScore = function () {\n return this.score;\n };\n\n // Export\n scope.MusicScoreTreeResultElement = MusicScoreTreeResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music scratch-out\n *\n * @class MusicScratchOut\n * @param {Object} [obj]\n * @constructor\n */\n function MusicScratchOut(obj) {\n this.inputRanges = [];\n this.erasedInputRanges = [];\n if (obj) {\n for (var i in obj.inputRanges) {\n this.inputRanges.push(new scope.MusicInputRange(obj.inputRanges[i]));\n }\n for (var j in obj.erasedInputRanges) {\n this.erasedInputRanges.push(new scope.MusicInputRange(obj.erasedInputRanges[j]));\n }\n }\n }\n\n /**\n * Get input ranges\n *\n * @method getInputRanges\n * @returns {MusicInputRange[]}\n */\n MusicScratchOut.prototype.getInputRanges = function () {\n return this.inputRanges;\n };\n\n /**\n * Get erased input ranges\n *\n * @method getErasedInputRanges\n * @returns {MusicInputRange[]}\n */\n MusicScratchOut.prototype.getErasedInputRanges = function () {\n return this.erasedInputRanges;\n };\n\n // Export\n scope.MusicScratchOut = MusicScratchOut;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music slur\n *\n * @class MusicSlur\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicSlur(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.placement = obj.placement;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicSlur.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicSlur.prototype.constructor = MusicSlur;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicSlur.prototype.getPlacement = function () {\n return this.placement;\n };\n\n // Export\n scope.MusicSlur = MusicSlur;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music stem\n *\n * @class MusicStem\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicStem(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicStem.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicStem.prototype.constructor = MusicStem;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicStem.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicStem = MusicStem;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music tie\n *\n * @class MusicTie\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTie(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.placement = obj.placement;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTie.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTie.prototype.constructor = MusicTie;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicTie.prototype.getPlacement = function () {\n return this.placement;\n };\n\n // Export\n scope.MusicTie = MusicTie;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music time modification data\n *\n * @class MusicTimeModificationData\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTimeModificationData(obj) {\n if (obj) {\n this.actual = obj.actual;\n this.dots = obj.dots;\n this.normal = obj.normal;\n this.type = obj.type;\n }\n }\n\n /**\n * Get actual\n *\n * @method getActual\n * @returns {Number}\n */\n MusicTimeModificationData.prototype.getActual = function () {\n return this.actual;\n };\n\n /**\n * Get dots\n *\n * @method getDots\n * @returns {Number}\n */\n MusicTimeModificationData.prototype.getDots = function () {\n return this.dots;\n };\n\n /**\n * Get normal\n *\n * @method getNormal\n * @returns {Number}\n */\n MusicTimeModificationData.prototype.getNormal = function () {\n return this.normal;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicTimeModificationData.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicTimeModificationData = MusicTimeModificationData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music time signature\n *\n * @class MusicTimeSignature\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTimeSignature(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.top = new scope.MusicAnnotation(obj.top);\n this.bottom = new scope.MusicAnnotation(obj.bottom);\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTimeSignature.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTimeSignature.prototype.constructor = MusicTimeSignature;\n\n /**\n * Get top\n *\n * @method getTop\n * @returns {MusicAnnotation}\n */\n MusicTimeSignature.prototype.getTop = function () {\n return this.top;\n };\n\n /**\n * Get bottom\n *\n * @method getBottom\n * @returns {MusicAnnotation}\n */\n MusicTimeSignature.prototype.getBottom = function () {\n return this.bottom;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicTimeSignature.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicTimeSignature = MusicTimeSignature;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music tuplet bracket\n *\n * @class MusicTupletBracket\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTupletBracket(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTupletBracket.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTupletBracket.prototype.constructor = MusicTupletBracket;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicTupletBracket.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicTupletBracket = MusicTupletBracket;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music tuplet\n *\n * @class MusicTuplet\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTuplet(obj) {\n scope.MusicElement.call(this, obj);\n this.brackets = [];\n if (obj) {\n this.placement = obj.placement;\n this.number = new scope.MusicAnnotation(obj.number);\n for (var i in obj.brackets) {\n this.brackets.push(new scope.MusicTupletBracket(obj.brackets[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTuplet.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTuplet.prototype.constructor = MusicTuplet;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicTuplet.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Get number\n *\n * @method getNumber\n * @returns {MusicAnnotation}\n */\n MusicTuplet.prototype.getNumber = function () {\n return this.number;\n };\n\n /**\n * Get brackets\n *\n * @method getBrackets\n * @returns {Array}\n */\n MusicTuplet.prototype.getBrackets = function () {\n return this.brackets;\n };\n\n // Export\n scope.MusicTuplet = MusicTuplet;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * MusicXML result\n *\n * @class MusicXMLResultElement\n * @extends MusicResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicXMLResultElement(obj) {\n scope.MusicResultElement.call(this, obj);\n if (obj) {\n this.value = obj.value;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicXMLResultElement.prototype = new scope.MusicResultElement();\n\n /**\n * Constructor property\n */\n MusicXMLResultElement.prototype.constructor = MusicXMLResultElement;\n\n /**\n * Get value\n *\n * @method getValue\n * @returns {String}\n */\n MusicXMLResultElement.prototype.getValue = function () {\n return this.value;\n };\n\n // Export\n scope.MusicXMLResultElement = MusicXMLResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer element\n *\n * @class AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerElement(obj) {\n if (obj) {\n this.elementType = obj.elementType;\n }\n }\n\n /**\n * Get element type\n *\n * @method getElementType\n * @returns {String}\n */\n AnalyzerElement.prototype.getElementType = function () {\n return this.elementType;\n };\n\n // Export\n scope.AnalyzerElement = AnalyzerElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer table cell\n *\n * @class AnalyzerCell\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerCell(obj) {\n scope.AnalyzerElement.call(this, obj);\n if (obj) {\n this.data = new scope.AnalyzerCellData(obj.data);\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerCell.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerCell.prototype.constructor = AnalyzerCell;\n\n /**\n * Get analyzer cell data\n *\n * @method getData\n * @returns {AnalyzerCellData}\n */\n AnalyzerCell.prototype.getData = function () {\n return this.data;\n };\n\n // Export\n scope.AnalyzerCell = AnalyzerCell;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer cell data\n *\n * @class AnalyzerCellData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerCellData(obj) {\n if (obj) {\n this.firstColumn = obj.firstColumn;\n this.lastColumn = obj.lastColumn;\n this.firstRow = obj.firstRow;\n this.lastRow = obj.lastRow;\n this.height = obj.height;\n this.width = obj.width;\n this.orientation = obj.orientation;\n this.topLeftPoint = new scope.Point(obj.topLeftPoint);\n this.topBorder = obj.topBorder;\n this.bottomBorder = obj.bottomBorder;\n this.leftBorder = obj.leftBorder;\n this.rightBorder = obj.rightBorder;\n }\n }\n\n /**\n * Get first column\n *\n * @method getFirstColumn\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getFirstColumn = function () {\n return this.firstColumn;\n };\n\n /**\n * Get last column\n *\n * @method getLastColumn\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getLastColumn = function () {\n return this.lastColumn;\n };\n\n /**\n * Get first row\n *\n * @method getFirstRow\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getFirstRow = function () {\n return this.firstRow;\n };\n\n /**\n * Get last row\n *\n * @method getLastRow\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getLastRow = function () {\n return this.lastRow;\n };\n\n /**\n * Get height\n *\n * @method getHeight\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getHeight = function () {\n return this.height;\n };\n\n /**\n * Get width\n *\n * @method getWidth\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Get orientation\n *\n * @method getOrientation\n * @returns {String}\n */\n AnalyzerCellData.prototype.getOrientation = function () {\n return this.orientation;\n };\n\n /**\n * Get top-left point\n *\n * @method getTopLeftPoint\n * @returns {Point}\n */\n AnalyzerCellData.prototype.getTopLeftPoint = function () {\n return this.topLeftPoint;\n };\n\n /**\n * Has top border\n *\n * @method hasTopBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasTopBorder = function () {\n return this.topBorder;\n };\n\n /**\n * Has bottom border\n *\n * @method hasBottomBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasBottomBorder = function () {\n return this.bottomBorder;\n };\n\n /**\n * Has left border\n *\n * @method hasLeftBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasLeftBorder = function () {\n return this.leftBorder;\n };\n\n /**\n * Has right border\n *\n * @method hasRightBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasRightBorder = function () {\n return this.rightBorder;\n };\n\n /**\n * Get bounding box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AnalyzerCellData.prototype.getBoundingBox = function () {\n var rectangle = new scope.Rectangle();\n rectangle.setTopLeftPoint(this.getTopLeftPoint());\n rectangle.setWidth(this.getWidth());\n rectangle.setHeight(this.getHeight());\n return rectangle;\n };\n\n // Export\n scope.AnalyzerCellData = AnalyzerCellData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer document\n *\n * @class AnalyzerDocument\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerDocument(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.textLines = [];\n this.shapes = [];\n this.tables = [];\n this.groups = [];\n if (obj) {\n for (var i in obj.textLines) {\n this.textLines.push(new scope.AnalyzerTextLine(obj.textLines[i]));\n }\n for (var j in obj.shapes) {\n this.shapes.push(new scope.ShapeSegment(obj.shapes[j]));\n }\n for (var k in obj.tables) {\n this.tables.push(new scope.AnalyzerTable(obj.tables[k]));\n }\n for (var l in obj.groups) {\n this.groups.push(new scope.AnalyzerGroup(obj.groups[l]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerDocument.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerDocument.prototype.constructor = AnalyzerDocument;\n\n /**\n * Get text lines\n *\n * @method getTextLines\n * @returns {AnalyzerTextLine[]}\n */\n AnalyzerDocument.prototype.getTextLines = function () {\n return this.textLines;\n };\n\n /**\n * Get shapes\n *\n * @method getShapes\n * @returns {ShapeSegment[]}\n */\n AnalyzerDocument.prototype.getShapes = function () {\n return this.shapes;\n };\n\n /**\n * Get tables\n *\n * @method getTables\n * @returns {AnalyzerTable[]}\n */\n AnalyzerDocument.prototype.getTables = function () {\n return this.tables;\n };\n\n /**\n * Get groups\n *\n * @method getGroups\n * @returns {AnalyzerGroup[]}\n */\n AnalyzerDocument.prototype.getGroups = function () {\n return this.groups;\n };\n\n // Export\n scope.AnalyzerDocument = AnalyzerDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer element reference\n *\n * @class AnalyzerElementReference\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerElementReference(obj) {\n if (obj) {\n this.uniqueID = obj.uniqueID;\n this.type = obj.type;\n }\n }\n\n /**\n * Get unique id\n *\n * @method getUniqueId\n * @returns {String}\n */\n AnalyzerElementReference.prototype.getUniqueId = function () {\n return this.uniqueID;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerElementReference.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.AnalyzerElementReference = AnalyzerElementReference;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer group\n *\n * @class AnalyzerGroup\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerGroup(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.elementReferences = [];\n if (obj) {\n this.type = obj.type;\n this.uniqueID = obj.uniqueID;\n for (var i in obj.elementReferences) {\n this.elementReferences.push(new scope.AnalyzerElementReference(obj.elementReferences[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerGroup.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerGroup.prototype.constructor = AnalyzerGroup;\n\n /**\n * Get element references\n *\n * @method getElementReferences\n * @returns {AnalyzerElementReference[]}\n */\n AnalyzerGroup.prototype.getElementReferences = function () {\n return this.elementReferences;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerGroup.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get unique Id\n *\n * @method getUniqueId\n * @returns {String}\n */\n AnalyzerGroup.prototype.getUniqueId = function () {\n return this.uniqueID;\n };\n\n // Export\n scope.AnalyzerGroup = AnalyzerGroup;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer ink range\n *\n * @class AnalyzerInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerInkRange(obj) {\n if (obj) {\n this.firstPoint = new scope.Point(obj.firstPoint);\n this.lastPoint = new scope.Point(obj.lastPoint);\n this.stroke = new scope.AnalyzerRecognizedStroke(obj.stroke);\n }\n }\n\n /**\n * Get first point\n *\n * @method getFirstPoint\n * @returns {Point}\n */\n AnalyzerInkRange.prototype.getFirstPoint = function () {\n return this.firstPoint;\n };\n\n /**\n * Get last point\n *\n * @method getLastPoint\n * @returns {Point}\n */\n AnalyzerInkRange.prototype.getLastPoint = function () {\n return this.lastPoint;\n };\n\n /**\n * Get stroke\n *\n * @method getStroke\n * @returns {null|*}\n */\n AnalyzerInkRange.prototype.getStroke = function () {\n return this.stroke;\n };\n\n // Export\n scope.AnalyzerInkRange = AnalyzerInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer line\n *\n * @class AnalyzerLine\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerLine(obj) {\n scope.AnalyzerElement.call(this, obj);\n if (obj) {\n this.data = new scope.AnalyzerLineData(obj.data);\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerLine.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerLine.prototype.constructor = AnalyzerLine;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerLineData}\n */\n AnalyzerLine.prototype.getData = function () {\n return this.data;\n };\n\n // Export\n scope.AnalyzerLine = AnalyzerLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer line data\n *\n * @class AnalyzerLineData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerLineData(obj) {\n if (obj) {\n this.p1 = new scope.Point(obj.p1);\n this.p2 = new scope.Point(obj.p2);\n }\n }\n\n /**\n * Get p1\n *\n * @method getP1\n * @returns {Point}\n */\n AnalyzerLineData.prototype.getP1 = function () {\n return this.p1;\n };\n\n /**\n * Get p2\n *\n * @method getP2\n * @returns {Point}\n */\n AnalyzerLineData.prototype.getP2 = function () {\n return this.p2;\n };\n\n // Export\n scope.AnalyzerLineData = AnalyzerLineData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * AnalyzerRecognizedStroke\n *\n * @class AnalyzerRecognizedStroke\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerRecognizedStroke(obj) {\n if (obj) {\n this.type = obj.type;\n this.x = obj.x;\n this.y = obj.y;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerRecognizedStroke.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get x\n *\n * @method getX\n * @returns {Number[]}\n */\n AnalyzerRecognizedStroke.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Get y\n *\n * @method getY\n * @returns {Number[]}\n */\n AnalyzerRecognizedStroke.prototype.getY = function () {\n return this.y;\n };\n\n // Export\n scope.AnalyzerRecognizedStroke = AnalyzerRecognizedStroke;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer result\n *\n * @class AnalyzerResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.AnalyzerDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n AnalyzerResult.prototype.constructor = AnalyzerResult;\n\n /**\n * Get analyzer document\n *\n * @method getAnalyzerDocument\n * @returns {AnalyzerDocument}\n */\n AnalyzerResult.prototype.getAnalyzerDocument = function () {\n return this.result;\n };\n\n // Export\n scope.AnalyzerResult = AnalyzerResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer stroke type\n *\n * @class AnalyzerStrokeType\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerStrokeType(obj) {\n if (obj) {\n this.inkRange = new scope.AnalyzerInkRange(obj.inkRange);\n this.type = obj.type;\n }\n }\n\n /**\n * Get ink range\n *\n * @method getInkRange\n * @returns {AnalyzerInkRange}\n */\n AnalyzerStrokeType.prototype.getInkRange = function () {\n return this.inkRange;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerStrokeType.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.AnalyzerStrokeType = AnalyzerStrokeType;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer table\n *\n * @class AnalyzerTable\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTable(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.lines = [];\n this.cells = [];\n this.inkRanges = [];\n if (obj) {\n this.data = new scope.AnalyzerTableData(obj.data);\n for (var i in obj.lines) {\n this.lines.push(new scope.AnalyzerLine(obj.lines[i]));\n }\n for (var j in obj.cells) {\n this.cells.push(new scope.AnalyzerCell(obj.cells[j]));\n }\n for (var k in obj.inkRanges) {\n this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[k]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerTable.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerTable.prototype.constructor = AnalyzerTable;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerTableData}\n */\n AnalyzerTable.prototype.getData = function () {\n return this.data;\n };\n\n /**\n * Get lines\n *\n * @method getLines\n * @returns {AnalyzerLine[]}\n */\n AnalyzerTable.prototype.getLines = function () {\n return this.lines;\n };\n\n /**\n * Get cells\n *\n * @method getCells\n * @returns {AnalyzerCell[]}\n */\n AnalyzerTable.prototype.getCells = function () {\n return this.cells;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {AnalyzerInkRange[]}\n */\n AnalyzerTable.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.AnalyzerTable = AnalyzerTable;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer table data\n *\n * @class AnalyzerTableData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTableData(obj) {\n if (obj) {\n this.columnCount = obj.columnCount;\n this.rowCount = obj.rowCount;\n }\n }\n\n /**\n * Get column count\n *\n * @method getColumnCount\n * @returns {Number}\n */\n AnalyzerTableData.prototype.getColumnCount = function () {\n return this.columnCount;\n };\n\n /**\n * Get row count\n *\n * @method getRowCount\n * @returns {Number}\n */\n AnalyzerTableData.prototype.getRowCount = function () {\n return this.rowCount;\n };\n\n // Export\n scope.AnalyzerTableData = AnalyzerTableData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer text line\n *\n * @class AnalyzerTextLine\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTextLine(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.inkRanges = [];\n this.underlineList = [];\n if (obj) {\n this.data = new scope.AnalyzerTextLineData(obj.data);\n this.result = new scope.TextDocument(obj.result);\n for (var i in obj.inkRanges) {\n this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[i]));\n }\n for (var j in obj.underlineList) {\n this.underlineList.push(new scope.AnalyzerUnderline(obj.underlineList[j]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerTextLine.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerTextLine.prototype.constructor = AnalyzerTextLine;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerTextLineData}\n */\n AnalyzerTextLine.prototype.getData = function () {\n return this.data;\n };\n\n /**\n * Get text document\n *\n * @method getTextDocument\n * @returns {TextDocument}\n */\n AnalyzerTextLine.prototype.getTextDocument = function () {\n return this.result;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {AnalyzerInkRange[]}\n */\n AnalyzerTextLine.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get underline list\n *\n * @method getUnderlineList\n * @returns {AnalyzerUnderline[]}\n */\n AnalyzerTextLine.prototype.getUnderlineList = function () {\n return this.underlineList;\n };\n\n // Export\n scope.AnalyzerTextLine = AnalyzerTextLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer text line data\n *\n * @class AnalyzerTextLineData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTextLineData(obj) {\n if (obj) {\n this.baselinePos = obj.baselinePos;\n this.toMidline = obj.toMidline;\n this.orientation = obj.orientation;\n this.topLeftPoint = new scope.Point(obj.topLeftPoint);\n this.textHeight = obj.textHeight;\n this.justificationType = obj.justificationType;\n this.height = obj.height;\n this.width = obj.width;\n }\n }\n\n /**\n * Get baseline position\n *\n * @method getBaselinePos\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getBaselinePos = function () {\n return this.baselinePos;\n };\n\n /**\n * Get to midline\n *\n * @method getToMidline\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getToMidline = function () {\n return this.toMidline;\n };\n\n /**\n * Get orientation\n *\n * @method getOrientation\n * @returns {String}\n */\n AnalyzerTextLineData.prototype.getOrientation = function () {\n return this.orientation;\n };\n\n /**\n * Get top-left point\n *\n * @method getTopLeftPoint\n * @returns {Point}\n */\n AnalyzerTextLineData.prototype.getTopLeftPoint = function () {\n return this.topLeftPoint;\n };\n\n /**\n * Get text height\n *\n * @method getTextHeight\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getTextHeight = function () {\n return this.textHeight;\n };\n\n /**\n * Get justification type\n *\n * @method getJustificationType\n * @returns {String}\n */\n AnalyzerTextLineData.prototype.getJustificationType = function () {\n return this.justificationType;\n };\n\n /**\n * Get height\n *\n * @method getHeight\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getHeight = function () {\n return this.height;\n };\n\n /**\n * Get width\n *\n * @method getWidth\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Get bounding box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AnalyzerTextLineData.prototype.getBoundingBox = function () {\n var rectangle = new scope.Rectangle();\n if (this.getTopLeftPoint() || this.getWidth() || this.getHeight()) {\n rectangle.setTopLeftPoint(this.getTopLeftPoint());\n rectangle.setWidth(this.getWidth());\n rectangle.setHeight(this.getHeight());\n }\n return rectangle;\n };\n\n // Export\n scope.AnalyzerTextLineData = AnalyzerTextLineData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer underline\n *\n * @class AnalyzerUnderline\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerUnderline(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.inkRanges = [];\n if (obj) {\n this.data = new scope.AnalyzerUnderlineData(obj.data);\n for (var i in obj.inkRanges) {\n this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerUnderline.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerUnderline.prototype.constructor = AnalyzerUnderline;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerUnderlineData}\n */\n AnalyzerUnderline.prototype.getData = function () {\n return this.data;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {AnalyzerInkRange[]}\n */\n AnalyzerUnderline.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.AnalyzerUnderline = AnalyzerUnderline;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer underline data\n *\n * @class AnalyzerUnderlineData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerUnderlineData(obj) {\n if (obj) {\n this.firstCharacter = obj.firstCharacter;\n this.lastCharacter = obj.lastCharacter;\n }\n }\n\n /**\n * Get first character\n *\n * @method getFirstCharacter\n * @returns {Number}\n */\n AnalyzerUnderlineData.prototype.getFirstCharacter = function () {\n return this.firstCharacter;\n };\n\n /**\n * Get last character\n *\n * @method getLastCharacter\n * @returns {Number}\n */\n AnalyzerUnderlineData.prototype.getLastCharacter = function () {\n return this.lastCharacter;\n };\n\n // Export\n scope.AnalyzerUnderlineData = AnalyzerUnderlineData;\n})(MyScript);","'use strict';\n\n(function (scope, Q) {\n /**\n * Network interface\n *\n * @class NetworkInterface\n * @constructor\n */\n function NetworkInterface() {\n }\n\n /**\n * Parse JSON String to Object\n *\n * @method parse\n * @param {Object} req\n * @returns {Object}\n */\n NetworkInterface.parse = function (req) {\n var result;\n try {\n result = JSON.parse(req.responseText);\n } catch (e) {\n result = req.responseText;\n }\n return result;\n };\n\n /**\n * Transform object data request to a list of parameters\n *\n * @method transformRequest\n * @param {Object} [obj]\n * @returns {String}\n */\n NetworkInterface.transformRequest = function (obj) {\n var str = [];\n for (var p in obj) {\n if ((typeof obj[p] !== 'undefined') &&\n (typeof obj[p] !== 'function')) {\n str.push(encodeURIComponent(p) + '=' + encodeURIComponent(obj[p]));\n }\n }\n return str.join('&');\n };\n\n /**\n * Send request to the network and return a promise\n *\n * @method xhr\n * @param {String} type\n * @param {String} url\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.xhr = function (type, url, data) {\n\n var deferred = Q.defer();\n\n function onStateChange() {\n if (request.readyState === 4) {\n if (request.status >= 200 && request.status < 300) {\n deferred.resolve(NetworkInterface.parse(request));\n } else {\n deferred.reject(NetworkInterface.parse(request));\n }\n }\n }\n\n function onLoad() {\n if (request.status >= 200 && request.status < 300) {\n deferred.resolve(NetworkInterface.parse(request));\n } else {\n deferred.reject('Status code was ' + request.status);\n }\n }\n\n function onError() {\n deferred.reject('Can\\'t XHR ' + JSON.stringify(url));\n }\n\n function onProgress(event) {\n deferred.notify(event.loaded / event.total);\n }\n\n var request = new XMLHttpRequest();\n request.open(type, url, true);\n request.setRequestHeader('Accept', 'application/json');\n request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');\n request.onload = onLoad;\n request.onerror = onError;\n request.onprogress = onProgress;\n request.onreadystatechange = onStateChange;\n request.send(NetworkInterface.transformRequest(data));\n\n return deferred.promise;\n };\n\n /**\n * Get request\n *\n * @method get\n * @param {String} src\n * @param {Object} params\n * @returns {Promise}\n */\n NetworkInterface.prototype.get = function (src, params) {\n if (params) {\n src += '?' + NetworkInterface.transformRequest(params);\n }\n return this.xhr('GET', src).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n /**\n * Put request\n *\n * @method put\n * @param {String} src\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.put = function (url, data) {\n return this.xhr('PUT', url, data).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n /**\n * Post request\n *\n * @method post\n * @param {String} src\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.post = function (url, data) {\n return this.xhr('POST', url, data).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n /**\n * Delete request\n *\n * @method delete\n * @param {String} src\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.delete = function (url, data) {\n return this.xhr('DELETE', url, data).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n // Export\n scope.NetworkInterface = NetworkInterface;\n})(MyScript, Q);\n","'use strict';\n\n(function (scope, CryptoJS) {\n /**\n * Abstract recognizer interface\n *\n * @class AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function AbstractRecognizer(host) {\n this.host = 'cloud.myscript.com';\n if (host) {\n this.host = host;\n }\n this.http = new scope.NetworkInterface();\n }\n\n /**\n * Get the recognition languages available for an application and a specific inputMode\n *\n * @method getAvailableLanguageList\n * @param {String} applicationKey\n * @param {String} inputMode\n * @returns {Promise}\n */\n AbstractRecognizer.prototype.getAvailableLanguageList = function (applicationKey, inputMode) {\n var data = new scope.RecognitionLanguagesData();\n data.setApplicationKey(applicationKey);\n data.setInputMode(inputMode);\n\n return this.http.get('//' + this.host + '/api/v3.0/recognition/rest/text/languages.json', data).then(\n function success(response) {\n return response.result;\n },\n function error(response) {\n return response;\n }\n );\n };\n\n /**\n * Compute HMAC signature for server authentication\n *\n * @method computeHmac\n * @param {String} applicationKey\n * @param {String} data\n * @param {String} hmacKey\n */\n AbstractRecognizer.prototype.computeHmac = function (applicationKey, data, hmacKey) {\n var jsonInput = (typeof data === 'object') ? JSON.stringify(data) : data;\n return CryptoJS.HmacSHA512(jsonInput, applicationKey + hmacKey).toString(CryptoJS.enc.Hex);\n };\n // Export\n scope.AbstractRecognizer = AbstractRecognizer;\n})(MyScript, CryptoJS);","'use strict';\n\n(function (scope) {\n /**\n * Abstract WebSocket recognizer interface\n *\n * @class AbstractWSRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function AbstractWSRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n }\n\n /**\n * Inheritance property\n */\n AbstractWSRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n AbstractWSRecognizer.prototype.constructor = AbstractWSRecognizer;\n\n AbstractWSRecognizer.prototype.getMessageCallback = function () {\n return this.messageCallback;\n };\n\n AbstractWSRecognizer.prototype.setMessageCallback = function (callback) {\n this.messageCallback = callback;\n };\n\n AbstractWSRecognizer.prototype.getOpenCallback = function () {\n return this.openCallback;\n };\n\n AbstractWSRecognizer.prototype.setOpenCallback = function (callback) {\n this.openCallback = callback;\n };\n\n AbstractWSRecognizer.prototype.getCloseCallback = function () {\n return this.closeCallback;\n };\n\n AbstractWSRecognizer.prototype.setCloseCallback = function (callback) {\n this.closeCallback = callback;\n };\n\n AbstractWSRecognizer.prototype.getErrorCallback = function () {\n return this.errorCallback;\n };\n\n AbstractWSRecognizer.prototype.setErrorCallback = function (callback) {\n this.errorCallback = callback;\n };\n\n /**\n * Get the current state of the connection\n *\n * @method getState\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.getState = function () {\n var deferred = Q.defer();\n if (!this.socket) {\n deferred.reject(new Error('Can\\'t find WebSocket'));\n } else {\n deferred.resolve(this.socket.readyState);\n }\n return deferred.promise;\n };\n\n /**\n * Close the socket\n *\n * @method close\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.close = function () {\n var deferred = Q.defer();\n if (!this.socket) {\n deferred.reject(new Error('Can\\'t find WebSocket'));\n } else {\n deferred.resolve(this.socket.close());\n }\n return deferred.promise;\n };\n\n /**\n * Send a message\n *\n * @method sendMessage\n * @param {AbstractWSMessage} message\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.sendMessage = function (message) {\n var deferred = Q.defer();\n if (!this.socket) {\n deferred.reject(new Error('Can\\'t find WebSocket'));\n } else {\n deferred.resolve(this.socket.send(JSON.stringify(message)));\n }\n return deferred.promise;\n };\n\n /**\n * Initialize the WebSocket\n *\n * @method initWSRecognition\n * @param {String} applicationKey\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.initWSRecognition = function (applicationKey) {\n var message = new scope.InitRequestWSMessage();\n message.setApplicationKey(applicationKey);\n return this.sendMessage(message);\n };\n\n /**\n * Authenticate the WebSocket client end with a handshake of HMAC signature\n *\n * @method takeUpHmacChallenge\n * @param {String} applicationKey\n * @param {String} challenge\n * @param {String} hmacKey\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.takeUpHmacChallenge = function (applicationKey, challenge, hmacKey) {\n var message = new scope.ChallengeRequestWSMessage();\n message.setApplicationKey(applicationKey);\n message.setChallenge(challenge);\n message.setHmacSignature(this.computeHmac(applicationKey, challenge, hmacKey));\n return this.sendMessage(message);\n };\n\n /**\n * Reset the WebSocket recognition session\n *\n * @method resetWSRecognition\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.resetWSRecognition = function () {\n var message = new scope.ResetRequestWSMessage();\n return this.sendMessage(message);\n };\n\n // Export\n scope.AbstractWSRecognizer = AbstractWSRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text recognizer interface\n *\n * @class TextRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function TextRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.TextParameter();\n this.parameters.setLanguage('en_US');\n this.parameters.setInputMode('CURSIVE');\n }\n\n /**\n * Inheritance property\n */\n TextRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n TextRecognizer.prototype.constructor = TextRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do text recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {TextParameter} parameters\n * @param {String} instanceId\n * @param {TextInputUnit[]} inputUnits\n * @param {String} hmacKey\n * @returns {Promise}\n */\n TextRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, inputUnits, hmacKey, parameters) {\n\n var input = new scope.TextRecognitionInput();\n if (parameters) {\n input.setParameters(parameters);\n } else {\n input.setParameters(this.parameters);\n }\n input.setInputUnits(inputUnits);\n\n var data = new scope.TextRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setTextRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/text/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.TextResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.TextRecognizer = TextRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text WebSocket recognizer interface\n *\n * @class TextWSRecognizer\n * @extends AbstractWSRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function TextWSRecognizer(host) {\n scope.AbstractWSRecognizer.call(this, host);\n this.parameters = new scope.TextParameter();\n this.parameters.setLanguage('en_US');\n this.parameters.setInputMode('CURSIVE');\n\n this.socket = new WebSocket('ws://' + this.host + '/api/v3.0/recognition/ws/text');\n var self = this;\n this.socket.onopen = function (message) {\n console.log('WebSocket opened');\n if (self.openCallback) {\n self.openCallback(message);\n }\n };\n this.socket.onmessage = function (message) {\n var data = JSON.parse(message.data);\n console.log('WebSocket message received');\n switch (data.type) {\n case 'init':\n data = new scope.InitResponseWSMessage(data);\n break;\n case 'error':\n data = new scope.ErrorResponseWSMessage(data);\n break;\n case 'hmacChallenge':\n data = new scope.ChallengeResponseWSMessage(data);\n break;\n default:\n data = new scope.TextResponseWSMessage(data);\n break;\n }\n if (self.messageCallback) {\n self.messageCallback(data);\n }\n };\n this.socket.onerror = function (message) {\n console.log('WebSocket error received');\n if (self.errorCallback) {\n self.errorCallback(message);\n }\n };\n this.socket.onclose = function (message) {\n console.log('WebSocket opened');\n if (self.closeCallback) {\n self.closeCallback(message);\n }\n };\n }\n\n /**\n * Inheritance property\n */\n TextWSRecognizer.prototype = new scope.AbstractWSRecognizer();\n\n /**\n * Constructor property\n */\n TextWSRecognizer.prototype.constructor = TextWSRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextWSRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextWSRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Start the WebSocket session\n *\n * @method startWSRecognition\n * @param {TextInputUnit[]} inputUnits\n * @param {TextParameter} [parameters]\n * @returns {Promise}\n */\n TextWSRecognizer.prototype.startWSRecognition = function (inputUnits, parameters) {\n var message = new scope.TextStartRequestWSMessage();\n if (parameters) {\n message.setParameters(parameters);\n } else {\n message.setParameters(this.getParameters());\n }\n message.setInputUnits(inputUnits);\n return this.sendMessage(message);\n };\n\n /**\n * Continue the recognition\n *\n * @method continueWSRecognition\n * @param {TextInputUnit[]} inputUnits\n * @param {String} instanceId\n * @returns {Promise}\n */\n TextWSRecognizer.prototype.continueWSRecognition = function (inputUnits, instanceId) {\n var message = new scope.TextContinueRequestWSMessage();\n message.setInputUnits(inputUnits);\n message.setInstanceId(instanceId);\n return this.sendMessage(message);\n };\n\n /**\n * Do text WebSocket recognition\n *\n * @method doWSRecognition\n * @param {String} instanceId\n * @param {TextInputUnit[]} inputUnits\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n TextWSRecognizer.prototype.doWSRecognition = function (instanceId, inputUnits, parameters) {\n if (!instanceId) {\n return this.startWSRecognition(inputUnits, parameters);\n } else {\n return this.continueWSRecognition(inputUnits, instanceId);\n }\n };\n\n // Export\n scope.TextWSRecognizer = TextWSRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape recognizer interface\n *\n * @class ShapeRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function ShapeRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.ShapeParameter();\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n ShapeRecognizer.prototype.constructor = ShapeRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {ShapeParameter}\n */\n ShapeRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {ShapeParameter} parameters\n */\n ShapeRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do shape recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {ShapeParameter} [parameters]\n * @returns {Promise}\n */\n ShapeRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n\n var input = new scope.ShapeRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setDoBeautification(parameters.hasBeautification());\n input.setRejectDetectionSensitivity(parameters.getRejectDetectionSensitivity());\n } else {\n input.setDoBeautification(this.getParameters().hasBeautification());\n input.setRejectDetectionSensitivity(this.getParameters().getRejectDetectionSensitivity());\n }\n\n var data = new scope.ShapeRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setShapeRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/shape/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.ShapeResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n /**\n * Clear shape recognition session\n *\n * @method clearShapeRecognitionSession\n * @param {String} applicationKey\n * @param {String} instanceId\n * @returns {Promise}\n */\n ShapeRecognizer.prototype.clearShapeRecognitionSession = function (applicationKey, instanceId) {\n\n var data = {\n instanceSessionId: instanceId\n };\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/shape/clearSessionId.json', data).then(\n function success(response) {\n return response;\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.ShapeRecognizer = ShapeRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math recognizer interface\n *\n * @class MathRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function MathRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.MathParameter();\n }\n\n /**\n * Inheritance property\n */\n MathRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n MathRecognizer.prototype.constructor = MathRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MathParameter}\n */\n MathRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MathParameter} parameters\n */\n MathRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do math recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n MathRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n var input = new scope.MathRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setResultTypes(parameters.getResultTypes());\n input.setColumnar(parameters.isColumnar());\n input.setScratchOutDetectionSensitivity(parameters.getScratchOutDetectionSensitivity());\n input.setUserResources(parameters.getUserResources());\n } else {\n input.setResultTypes(this.getParameters().getResultTypes());\n input.setColumnar(this.getParameters().isColumnar());\n input.setScratchOutDetectionSensitivity(this.getParameters().getScratchOutDetectionSensitivity());\n input.setUserResources(this.getParameters().getUserResources());\n }\n\n var data = new scope.MathRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setMathRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/math/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.MathResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.MathRecognizer = MathRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math WebSocket recognizer interface\n *\n * @class MathWSRecognizer\n * @extends AbstractWSRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function MathWSRecognizer(host) {\n scope.AbstractWSRecognizer.call(this, host);\n this.parameters = new scope.MathParameter();\n\n this.socket = new WebSocket('ws://' + this.host + '/api/v3.0/recognition/ws/math');\n var self = this;\n this.socket.onopen = function (message) {\n console.log('WebSocket opened');\n if (self.openCallback) {\n self.openCallback(message);\n }\n };\n this.socket.onmessage = function (message) {\n var data = JSON.parse(message.data);\n console.log('WebSocket message received');\n switch (data.type) {\n case 'init':\n data = new scope.InitResponseWSMessage(data);\n break;\n case 'error':\n data = new scope.ErrorResponseWSMessage(data);\n break;\n case 'hmacChallenge':\n data = new scope.ChallengeResponseWSMessage(data);\n break;\n default:\n data = new scope.MathResponseWSMessage(data);\n break;\n }\n if (self.messageCallback) {\n self.messageCallback(data);\n }\n };\n this.socket.onerror = function (message) {\n console.log('WebSocket error received');\n if (self.errorCallback) {\n self.errorCallback(message);\n }\n };\n this.socket.onclose = function (message) {\n console.log('WebSocket opened');\n if (self.closeCallback) {\n self.closeCallback(message);\n }\n };\n }\n\n /**\n * Inheritance property\n */\n MathWSRecognizer.prototype = new scope.AbstractWSRecognizer();\n\n /**\n * Constructor property\n */\n MathWSRecognizer.prototype.constructor = MathWSRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MathParameter}\n */\n MathWSRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MathParameter} parameters\n */\n MathWSRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Start the WebSocket session\n *\n * @method startWSRecognition\n * @param {AbstractComponent[]} components\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n MathWSRecognizer.prototype.startWSRecognition = function (components, parameters) {\n var message = new scope.MathStartRequestWSMessage();\n if (parameters) {\n message.setParameters(parameters);\n } else {\n message.setParameters(this.getParameters());\n }\n message.setComponents(components);\n return this.sendMessage(message);\n };\n\n /**\n * Continue the recognition\n *\n * @method continueWSRecognition\n * @param {AbstractComponent[]} components\n * @param {String} instanceId\n * @returns {Promise}\n */\n MathWSRecognizer.prototype.continueWSRecognition = function (components, instanceId) {\n var message = new scope.MathContinueRequestWSMessage();\n message.setComponents(components);\n message.setInstanceId(instanceId);\n return this.sendMessage(message);\n };\n\n /**\n * Do math WebSocket recognition\n *\n * @method doWSRecognition\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n MathWSRecognizer.prototype.doWSRecognition = function (instanceId, components, parameters) {\n if (!instanceId) {\n return this.startWSRecognition(components, parameters);\n } else {\n return this.continueWSRecognition(components, instanceId);\n }\n };\n\n // Export\n scope.MathWSRecognizer = MathWSRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music recognizer interface\n *\n * @class MusicRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function MusicRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.MusicParameter();\n }\n\n /**\n * Inheritance property\n */\n MusicRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n MusicRecognizer.prototype.constructor = MusicRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MusicParameter}\n */\n MusicRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MusicParameter} parameters\n */\n MusicRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do music recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {MusicParameter} [parameters]\n * @returns {Promise}\n */\n MusicRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n\n var input = new scope.MusicRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setStaff(parameters.getStaff());\n input.setDivisions(parameters.getDivisions());\n input.setResultTypes(parameters.getResultTypes());\n input.setScratchOutDetectionSensitivity(parameters.getScratchOutDetectionSensitivity());\n input.setUserResources(parameters.getUserResources());\n } else {\n input.setStaff(this.getParameters().getStaff());\n input.setDivisions(this.getParameters().getDivisions());\n input.setResultTypes(this.getParameters().getResultTypes());\n input.setScratchOutDetectionSensitivity(this.getParameters().getScratchOutDetectionSensitivity());\n input.setUserResources(this.getParameters().getUserResources());\n }\n\n var data = new scope.MusicRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setMusicRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/music/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.MusicResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.MusicRecognizer = MusicRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer recognizer interface\n *\n * @class AnalyzerRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function AnalyzerRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.AnalyzerParameter();\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n AnalyzerRecognizer.prototype.constructor = AnalyzerRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {AnalyzerParameter}\n */\n AnalyzerRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {AnalyzerParameter} parameters\n */\n AnalyzerRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do analyzer recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {AnalyzerParameter} [parameters]\n * @returns {Promise}\n */\n AnalyzerRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n\n var input = new scope.AnalyzerRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setParameters(parameters);\n } else {\n input.setParameters(this.getParameters());\n }\n\n var data = new scope.AnalyzerRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setAnalyzerRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/analyzer/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.AnalyzerResult(response);\n },\n function error(response) {\n return response;\n }\n );\n };\n\n // Export\n scope.AnalyzerRecognizer = AnalyzerRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for both input and output canvas draw. Default values:\n * color: 'black';\n * rectColor: 'rgba(0, 0, 0, 0.2)';\n * font: 'Times New Roman';\n * decoration: '';\n * width: 4;\n * pressureType: 'SIMULATED';\n * alpha: '1.0';\n * doFadeOutLoop: false;\n * showBoundingBoxes: false;\n *\n * @class RenderingParameters\n * @constructor\n */\n function RenderingParameters() {\n this.color = 'black';\n this.rectColor = 'rgba(0, 0, 0, 0.2)';\n this.font = 'Times New Roman';\n this.decoration = '';\n this.width = 4;\n this.pressureType = 'SIMULATED';\n this.alpha = '1.0';\n this.doFadeOutLoop = false;\n this.showBoundingBoxes = false;\n }\n\n /**\n * Get the color renderer parameter\n *\n * @method getColor\n * @returns {String} The color of the ink\n */\n RenderingParameters.prototype.getColor = function () {\n return this.color;\n };\n\n /**\n * Set the color renderer parameter\n *\n * @method setColor\n * @param {String} color\n */\n RenderingParameters.prototype.setColor = function (color) {\n this.color = color;\n };\n\n /**\n * Get the rect renderer parameter\n *\n * @method getRectColor\n * @returns {String} the rectangle color\n */\n RenderingParameters.prototype.getRectColor = function () {\n return this.rectColor;\n };\n\n /**\n * Set the rect renderer parameter\n *\n * @method setRectColor\n * @param {String} rectColor\n */\n RenderingParameters.prototype.setRectColor = function (rectColor) {\n this.rectColor = rectColor;\n };\n\n /**\n * Get the font renderer parameter\n *\n * @method getFont\n * @returns {String} The font\n */\n RenderingParameters.prototype.getFont = function () {\n return this.font;\n };\n\n /**\n * Set the font renderer parameter\n *\n * @method setFont\n * @param {String} font\n */\n RenderingParameters.prototype.setFont = function (font) {\n this.font = font;\n };\n\n /**\n * Get the decoration renderer parameter\n *\n * @method getDecoration\n * @returns {String} The decoration\n */\n RenderingParameters.prototype.getDecoration = function () {\n return this.decoration;\n };\n\n /**\n * Set the decoration renderer parameter\n *\n * @method setDecoration\n * @param {String} decoration\n */\n RenderingParameters.prototype.setDecoration = function (decoration) {\n this.decoration = decoration;\n };\n\n /**\n * Get the width renderer parameter\n *\n * @method getWidth\n * @returns {Number} The ink width\n */\n RenderingParameters.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Set the width renderer parameter\n *\n * @method setWidth\n * @param {Number} width\n */\n RenderingParameters.prototype.setWidth = function (width) {\n this.width = width;\n };\n\n /**\n * Get the pressure renderer parameter\n *\n * @method getPressureType\n * @returns {String} The pressure type\n */\n RenderingParameters.prototype.getPressureType = function () {\n return this.pressureType;\n };\n\n /**\n * Set the pressure renderer parameter\n *\n * @method setPressureType\n * @param {String} pressureType\n */\n RenderingParameters.prototype.setPressureType = function (pressureType) {\n this.pressureType = pressureType;\n };\n\n /**\n * Get the alpha renderer parameter\n *\n * @method getAlpha\n * @returns {String} The alpha\n */\n RenderingParameters.prototype.getAlpha = function () {\n return this.alpha;\n };\n\n /**\n * Set the alpha renderer parameter\n *\n * @method setAlpha\n * @param {String} alpha\n */\n RenderingParameters.prototype.setAlpha = function (alpha) {\n this.alpha = alpha;\n };\n\n /**\n * Get fade out ink fore HTML5 canvas\n *\n * @method getDoFadeOutLoop\n * @returns {Boolean}\n */\n RenderingParameters.prototype.getDoFadeOutLoop = function () {\n return this.doFadeOutLoop;\n };\n\n /**\n * Set fade out ink fore HTML5 canvas\n *\n * @method setDoFadeOutLoop\n * @param {Boolean} doFadeOutLoop\n */\n RenderingParameters.prototype.setDoFadeOutLoop = function (doFadeOutLoop) {\n this.doFadeOutLoop = doFadeOutLoop;\n };\n\n /**\n * This property is use to show or not show the bounding box\n *\n * @method getShowBoundingBoxes\n * @returns {Boolean}\n */\n RenderingParameters.prototype.getShowBoundingBoxes = function () {\n return this.showBoundingBoxes;\n };\n\n /**\n * Set the show state of bounding box\n *\n * @method setShowBoundingBoxes\n * @param {Boolean} showBoundingBoxes\n */\n RenderingParameters.prototype.setShowBoundingBoxes = function (showBoundingBoxes) {\n this.showBoundingBoxes = showBoundingBoxes;\n };\n\n // Export\n scope.RenderingParameters = RenderingParameters;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Abstract Renderer. It's used to calculate the ink rendering in HTML5 canvas\n *\n * @class AbstractRenderer\n * @constructor\n */\n function AbstractRenderer() {\n this.points = [];\n this.drawing = false;\n this.parameters = new scope.RenderingParameters();\n }\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {RenderingParameters}\n */\n AbstractRenderer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {RenderingParameters} parameters\n */\n AbstractRenderer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Draw recognition result on HTML5 canvas.\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {Object} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw input components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n this.drawStroke(component, context, parameters);\n } else if (component instanceof scope.CharacterInputComponent) {\n this.drawCharacter(component, context, parameters);\n }\n }\n };\n\n /**\n * Record the beginning of drawing\n *\n * @method drawStart\n * @param {Number} x\n * @param {Number} y\n */\n AbstractRenderer.prototype.drawStart = function (x, y) {\n this.points.length = 0;\n this.drawing = true;\n this.points.push({\n x: x,\n y: y,\n pressure: 0.5,\n distance: 0.0,\n length: 0.0,\n ux: 0.0,\n uy: 0.0,\n x1: 0.0,\n x2: 0.0,\n y1: 0.0,\n y2: 0.0\n });\n };\n\n /**\n * Record the drawing\n *\n * @method drawContinue\n * @param {Number} x\n * @param {Number} y\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawContinue = function (x, y, context, parameters) {\n if (this.drawing) {\n var point = {\n x: x,\n y: y,\n pressure: 0.5,\n distance: 0.0,\n length: 0.0,\n ux: 0.0,\n uy: 0.0,\n x1: 0.0,\n x2: 0.0,\n y1: 0.0,\n y2: 0.0\n };\n this.points.push(point);\n\n if (this.points.length > 1) {\n var previous = this.points[this.points.length - 2];\n\n if (this.points.length === 2) {\n this.drawQuadratricStart(previous, point, context, parameters);\n } else {\n var third = this.points[this.points.length - 3];\n this.drawQuadratricContinue(third, previous, point, context, parameters);\n }\n\n }\n }\n };\n\n /**\n * Stop record of drawing\n *\n * @method drawEnd\n * @param {Number} x\n * @param {Number} y\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawEnd = function (x, y, context, parameters) {\n if (this.drawing) {\n if (this.points.length === 1) {\n this.drawPoint({\n x: x,\n y: y,\n pressure: 0.5,\n distance: 0.0,\n length: 0.0,\n ux: 0.0,\n uy: 0.0,\n x1: 0.0,\n x2: 0.0,\n y1: 0.0,\n y2: 0.0\n }, context, parameters);\n } else if (this.points.length > 1) {\n var lastPoint = this.points[this.points.length - 1];\n var point = this.points[this.points.length - 2];\n this.drawQuadratricEnd(point, lastPoint, context, parameters);\n }\n this.drawing = false;\n }\n };\n\n /**\n * Clear the context's canvas content to erase drawing strokes\n *\n * @method clear\n * @param {Object} context\n */\n AbstractRenderer.prototype.clear = function (context) {\n context.clearRect(0, 0, context.canvas.width, context.canvas.height);\n };\n\n /**\n * Draw guidelines on the HTML5 canvas\n *\n * @method drawGuidelines\n * @param {Number} horizontalSpacing\n * @param {Number} verticalSpacing\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawGuidelines = function (horizontalSpacing, verticalSpacing, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.clearRect(0, 0, context.canvas.clientWidth, context.canvas.clientHeight);\n\n if (verticalSpacing) {\n for (var y = verticalSpacing; y < context.canvas.clientHeight - verticalSpacing; y += verticalSpacing) {\n context.beginPath();\n context.moveTo(horizontalSpacing, y);\n context.lineTo(context.canvas.clientWidth - horizontalSpacing, y);\n context.stroke();\n }\n }\n if (horizontalSpacing) {\n for (var x = horizontalSpacing; x < context.canvas.clientWidth - horizontalSpacing; x += horizontalSpacing) {\n context.beginPath();\n context.moveTo(x, verticalSpacing);\n context.lineTo(x, context.canvas.clientHeight - verticalSpacing);\n context.stroke();\n }\n }\n } finally {\n context.restore();\n }\n };\n\n /**\n * Trace line on context\n *\n * @method drawLineByCoordinates\n * @param {Number} lX\n * @param {Number} lY\n * @param {Number} cX\n * @param {Number} cY\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawLineByCoordinates = function (lX, lY, cX, cY, context, parameters) {\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n // line from\n context.moveTo(lX, lY);\n // to\n context.lineTo(cX, cY);\n // draw it\n context.stroke();\n } finally {\n context.restore();\n }\n };\n\n /**\n * Draw a line on context\n *\n * @method drawLineByPoints\n * @param {QuadraticPoint} firstPoint\n * @param {QuadraticPoint} lastPoint\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawLineByPoints = function (firstPoint, lastPoint, context, parameters) {\n this.drawLineByCoordinates(firstPoint.x, firstPoint.y, lastPoint.x, lastPoint.y, context, parameters);\n };\n\n /**\n * Draw a rectangle on context\n *\n * @method drawRectangle\n * @param {Rectangle} rectangle\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawRectangle = function (rectangle, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getRectColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getRectColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.fillRect(rectangle.getX(), rectangle.getY(), rectangle.getWidth(), rectangle.getHeight());\n\n } finally {\n context.restore();\n }\n };\n\n /**\n * Draw strokes on context\n *\n * @method drawStrokes\n * @param {Stroke[]} strokes\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawStrokes = function (strokes, context, parameters) {\n for (var i in strokes) {\n this.drawStroke(strokes[i], context, parameters);\n }\n };\n\n /**\n * Draw a stroke on context\n *\n * @method drawStroke\n * @param {Stroke} stroke\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawStroke = function (stroke, context, parameters) {\n var strokePoints = [];\n for (var j = 0; j < stroke.getLength(); j++) {\n strokePoints.push(new scope.QuadraticPoint({\n x: stroke.getX()[j],\n y: stroke.getY()[j]\n }));\n }\n if (stroke.getLength() === 1) {\n this.drawPoint(strokePoints[0], context, parameters);\n } else {\n for (var k = 0; k < stroke.getLength(); k++) {\n if (k === 0) {\n var p1 = strokePoints[0];\n var p2 = strokePoints[1];\n this.drawQuadratricStart(p1, p2, context, parameters);\n } else if (k < stroke.getLength() - 1) {\n var p3 = strokePoints[k - 1];\n var p4 = strokePoints[k];\n var p5 = strokePoints[k + 1];\n this.drawQuadratricContinue(p3, p4, p5, context, parameters);\n } else if (k > 1) {\n var p6 = strokePoints[k - 1];\n var p7 = strokePoints[k];\n this.drawQuadratricEnd(p6, p7, context, parameters);\n }\n }\n }\n };\n\n /**\n * Draw character\n *\n * @private\n * @method drawCharacter\n * @param {CharacterInputComponent} character\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawCharacter = function (character, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw point on context\n *\n * @method drawPoint\n * @param {QuadraticPoint} point\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawPoint = function (point, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n\n context.beginPath();\n context.arc(point.x, point.y, 0.5 * parameters.getWidth(), 0, 2 * Math.PI);\n context.fill();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n\n context.beginPath();\n context.arc(point.x, point.y, 0.5 * this.parameters.getWidth(), 0, 2 * Math.PI);\n context.fill();\n }\n } finally {\n context.restore();\n }\n\n };\n\n /**\n * Draw an arrow head on context\n *\n * @method drawArrowHead\n * @param {QuadraticPoint} headPoint\n * @param {Number} angle\n * @param {Number} length\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawArrowHead = function (headPoint, angle, length, context, parameters) {\n\n var alpha = phi(angle + Math.PI - (Math.PI / 8)),\n beta = phi(angle - Math.PI + (Math.PI / 8));\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.moveTo(headPoint.x, headPoint.y);\n context.beginPath();\n context.lineTo(headPoint.x + (length * Math.cos(alpha)), headPoint.y + (length * Math.sin(alpha)));\n context.lineTo(headPoint.x + (length * Math.cos(beta)), headPoint.y + (length * Math.sin(beta)));\n context.lineTo(headPoint.x, headPoint.y);\n context.fill();\n\n } finally {\n context.restore();\n }\n\n };\n\n /**\n * Get Strokes from inkRange\n *\n * @method extractStroke\n * @param {Stroke[]} strokes\n * @param {Object} inkRange\n * @result {Stroke[]} List of strokes from inkRange\n */\n AbstractRenderer.prototype.extractStroke = function (strokes, inkRange) {\n var result = [],\n firstPointIndex = Math.floor(inkRange.getFirstPoint()),\n lastPointIndex = Math.ceil(inkRange.getLastPoint());\n\n for (var strokeIndex = inkRange.getFirstStroke(); strokeIndex <= inkRange.getLastStroke(); strokeIndex++) {\n var currentStroke = strokes[strokeIndex];\n var currentStrokePointCount = currentStroke.x.length;\n\n var newStroke = new scope.Stroke(), x = [], y = [];\n\n for (var pointIndex = firstPointIndex; (strokeIndex === inkRange.getLastStroke() && pointIndex <= lastPointIndex && pointIndex < currentStrokePointCount) || (strokeIndex !== inkRange.getLastStroke() && pointIndex < currentStrokePointCount); pointIndex++) {\n x.push(currentStroke.x[pointIndex]);\n y.push(currentStroke.y[pointIndex]);\n }\n\n newStroke.setX(x);\n newStroke.setY(y);\n result.push(newStroke);\n }\n return result;\n };\n\n /**\n * Draw a quadratic stroke on context\n *\n * @private\n * @method drawQuadratricStart\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawQuadratricStart = function (p1, p2, context, parameters) {\n\n if (parameters) {\n computePoint(null, p1, true, false, parameters.getPressureType(), parameters.getWidth());\n } else {\n computePoint(null, p1, true, false, this.parameters.getPressureType(), this.parameters.getWidth());\n }\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n strokeFirstSegment(p1, p2, context);\n context.fill();\n } finally {\n context.restore();\n }\n\n };\n\n /**\n * Continue to draw a quadratic stroke on context\n *\n * @private\n * @method drawQuadratricContinue\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {QuadraticPoint} p3\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawQuadratricContinue = function (p1, p2, p3, context, parameters) {\n\n if (parameters) {\n computePoint(p2, p3, false, false, parameters.getPressureType(), parameters.getWidth());\n } else {\n computePoint(p2, p3, false, false, this.parameters.getPressureType(), this.parameters.getWidth());\n }\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n strokeSegment(p1, p2, p3, context);\n context.fill();\n } finally {\n context.restore();\n }\n };\n\n /**\n * Stop to draw a quadratic stroke\n *\n * @private\n * @method drawQuadratricEnd\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawQuadratricEnd = function (p1, p2, context, parameters) {\n\n if (parameters) {\n computePoint(p1, p2, false, true, parameters.getPressureType(), parameters.getWidth());\n } else {\n computePoint(p1, p2, false, true, this.parameters.getPressureType(), this.parameters.getWidth());\n }\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n strokeLastSegment(p1, p2, context);\n context.fill();\n } finally {\n context.restore();\n }\n };\n\n /**\n * Render the first stroke segment.\n *\n * @private\n * @method strokeFirstSegment\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n */\n var strokeFirstSegment = function (p1, p2, context) {\n // compute start points\n var x11 = p1.x1,\n y11 = p1.y1,\n x12 = p1.x2,\n y12 = p1.y2,\n // compute end points\n x21 = 0.5 * p1.x1 + p2.x1,\n y21 = 0.5 * p1.y1 + p2.y1,\n x22 = 0.5 * p1.x2 + p2.x2,\n y22 = 0.5 * p1.y2 + p2.y2;\n\n // stroke segment\n context.moveTo(x11, y11);\n context.lineTo(x21, y21);\n context.lineTo(x22, y22);\n context.lineTo(x12, y12);\n context.lineTo(x11, y11);\n };\n\n /**\n * Render a stroke segment\n *\n * @private\n * @method strokeSegment\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {QuadraticPoint} p3\n * @param {Object} context\n */\n var strokeSegment = function (p1, p2, p3, context) {\n // compute start points\n var x11 = 0.5 * (p1.x1 + p2.x1),\n y11 = 0.5 * (p1.y1 + p2.y1),\n x12 = 0.5 * (p1.x2 + p2.x2),\n y12 = 0.5 * (p1.y2 + p2.y2),\n // compute end points\n x21 = 0.5 * (p2.x1 + p3.x1),\n y21 = 0.5 * (p2.y1 + p3.y1),\n x22 = 0.5 * (p2.x2 + p3.x2),\n y22 = 0.5 * (p2.y2 + p3.y2);\n // stroke segment\n context.moveTo(x11, y11);\n context.quadraticCurveTo(p2.x1, p2.y1, x21, y21);\n context.lineTo(x22, y22);\n context.quadraticCurveTo(p2.x2, p2.y2, x12, y12);\n context.lineTo(x11, y11);\n };\n\n /**\n * Render the last stroke segment\n *\n * @private\n * @method strokeLastSegment\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n */\n var strokeLastSegment = function (p1, p2, context) {\n // compute start points\n var x11 = 0.5 * (p1.x1 + p2.x1),\n y11 = 0.5 * (p1.y1 + p2.y1),\n x12 = 0.5 * (p1.x2 + p2.x2),\n y12 = 0.5 * (p1.y2 + p2.y2),\n // compute end points\n x21 = p2.x1,\n y21 = p2.y1,\n x22 = p2.x2,\n y22 = p2.y2;\n // stroke segment\n context.moveTo(x11, y11);\n context.lineTo(x21, y21);\n context.lineTo(x22, y22);\n context.lineTo(x12, y12);\n context.lineTo(x11, y11);\n };\n\n /**\n * Clamp an angle into the range [-PI, +PI]\n *\n * @private\n * @method phi\n * @param {Number} angle\n * @returns {Number}\n */\n var phi = function (angle) {\n angle = ((angle + Math.PI) % (Math.PI * 2)) - Math.PI;\n if (angle < -Math.PI) {\n angle += Math.PI * 2;\n }\n return angle;\n };\n\n /**\n * Compute all necessary point parameters to draw quadratics\n *\n * @private\n * @method computePoint\n * @param {QuadraticPoint} previous\n * @param {QuadraticPoint} point\n * @param {Boolean} isFirst\n * @param {Boolean} isLast\n * @param {String} pressureType\n * @param {Number} penWidth\n */\n var computePoint = function (previous, point, isFirst, isLast, pressureType, penWidth) {\n\n // compute distance from previous point\n if (previous !== null) {\n computeDistance(previous, point);\n var strokeLength = previous.length + point.distance;\n point.length = strokeLength;\n }\n // compute pressure\n switch (pressureType) {\n case 'SIMULATED':\n computePressure(point, point.distance, point.length);\n break;\n case 'CONSTANT':\n point.pressure = 1.0;\n break;\n case 'REAL':\n // keep the current pressure\n break;\n default:\n throw new Error('Unknown pressure type');\n }\n computeLastControls(point, penWidth);\n // compute control points\n if (previous !== null && !isLast) {\n if (isFirst) {\n computeFirstControls(previous, point, penWidth);\n }\n if (isLast) {\n computeLastControls(point, penWidth);\n } else {\n computeControls(previous, point, penWidth);\n }\n }\n };\n\n /**\n * Compute distance and unit vector from the previous point.\n *\n * @private\n * @method computeDistance\n * @param {QuadraticPoint} previous\n * @param {QuadraticPoint} point\n */\n var computeDistance = function (previous, point) {\n var dx = point.x - previous.x,\n dy = point.y - previous.y,\n d = Math.sqrt(dx * dx + dy * dy);\n\n if (d !== 0) {\n point.distance = d;\n point.ux = dx / d;\n point.uy = dy / d;\n }\n };\n\n /**\n * Compute simulated pressure of given point.\n *\n * @private\n * @method computePressure\n * @param {QuadraticPoint} point\n * @param {Number} distance\n * @param {Number} length\n */\n var computePressure = function (point, distance, length) {\n var k, pressure;\n if (distance < 10) {\n k = 0.2 + Math.pow(0.1 * distance, 0.4);\n } else if (distance > length - 10) {\n k = 0.2 + Math.pow(0.1 * (length - distance), 0.4);\n } else {\n k = 1.0;\n }\n\n pressure = k * Math.max(0.1, 1.0 - 0.1 * Math.sqrt(point.distance));\n if (isNaN(parseFloat(pressure))) {\n pressure = 0.5;\n }\n point.pressure = pressure;\n };\n\n /**\n * Compute control points of the first point.\n *\n * @private\n * @method computeFirstControls\n * @param {QuadraticPoint} first First point of the list to be computed\n * @param {QuadraticPoint} next Next point\n * @param {Number} penWidth Pen width\n */\n var computeFirstControls = function (first, next, penWidth) {\n var r = 0.5 * penWidth * first.pressure,\n nx = -r * next.uy,\n ny = r * next.ux;\n\n first.x1 = first.x + nx;\n first.y1 = first.y + ny;\n first.x2 = first.x - nx;\n first.y1 = first.y - ny;\n };\n\n /**\n * Compute control points between two points.\n *\n * @private\n * @method computeControls\n * @param {QuadraticPoint} point Point to be computed\n * @param {QuadraticPoint} next Next point\n * @param {Number} penWidth Pen width\n */\n var computeControls = function (point, next, penWidth) {\n var ux = point.ux + next.ux,\n uy = point.uy + next.uy,\n u = Math.sqrt(ux * ux + uy * uy);\n\n if (u !== 0) {\n // compute control points\n var r = 0.5 * penWidth * point.pressure;\n var nx = -r * uy / u;\n var ny = r * ux / u;\n point.x1 = point.x + nx;\n point.y1 = point.y + ny;\n point.x2 = point.x - nx;\n point.y2 = point.y - ny;\n } else {\n // collapse control points\n point.x1 = point.x;\n point.y1 = point.y;\n point.x2 = point.x;\n point.y2 = point.y;\n }\n };\n\n /**\n * Compute control points of the last point.\n *\n * @private\n * @method computeLastControls\n * @param {QuadraticPoint} last Last point to be computed\n * @param {Number} penWidth Pen width\n */\n var computeLastControls = function (last, penWidth) {\n var r = 0.5 * penWidth * last.pressure,\n nx = -r * last.uy,\n ny = r * last.ux;\n\n last.x1 = last.x + nx;\n last.y1 = last.y + ny;\n last.x2 = last.x - nx;\n last.y2 = last.y - ny;\n };\n\n // Export\n scope.AbstractRenderer = AbstractRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Text Renderer. It's used to calculate the text ink rendering in HTML5 canvas\n *\n * @class TextRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function TextRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n TextRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n TextRenderer.prototype.constructor = TextRenderer;\n\n /**\n * Draw text recognition result on HTML5 canvas. Scratch out results are use to redraw HTML5 Canvas\n *\n * @method drawRecognitionResult\n * @param {TextInputUnit[]} inputUnits\n * @param {TextDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n TextRenderer.prototype.drawRecognitionResult = function (inputUnits, recognitionResult, context, parameters) {\n this.drawInputUnits(inputUnits, context, parameters);\n };\n\n /**\n * Draw input units\n *\n * @method drawInputUnits\n * @param {TextInputUnit[]} inputUnits\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n TextRenderer.prototype.drawInputUnits = function (inputUnits, context, parameters) {\n for (var i in inputUnits) {\n this.drawComponents(inputUnits[i].getComponents(), context, parameters);\n }\n };\n\n /**\n * Draw components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n TextRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n scope.AbstractRenderer.prototype.drawStroke.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharacterInputComponent) {\n scope.AbstractRenderer.prototype.drawCharacter.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharInputComponent) {\n drawChar(component, context, parameters);\n } else if (component instanceof scope.StringInputComponent) {\n drawString(component, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n };\n\n /**\n * Draw char\n *\n * @private\n * @method drawChar\n * @param {CharInputComponent} char\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawChar = function (char, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw string\n *\n * @private\n * @method drawString\n * @param {StringInputComponent} string\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawString = function (string, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n // Export\n scope.TextRenderer = TextRenderer;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Represent the Shape Renderer. It's used to calculate the shape ink rendering in HTML5 canvas\n *\n * @class ShapeRenderer\n * @constructor\n */\n function ShapeRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n ShapeRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n ShapeRenderer.prototype.constructor = ShapeRenderer;\n\n /**\n * Draw shape recognition result on HTML5 canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {ShapeDocument} recognitionResult\n * @param {RenderingParameters} parameters\n * @param {Object} context\n */\n ShapeRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, parameters, context) {\n this.drawShapes(components, recognitionResult.getSegments(), parameters, context);\n };\n\n /**\n * Draw components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n scope.AbstractRenderer.prototype.drawStroke.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharacterInputComponent) {\n scope.AbstractRenderer.prototype.drawCharacter.call(this, component, context, parameters); // super\n } else if (component instanceof scope.ShapeEllipse) {\n this.drawShapeEllipse(component, context, parameters);\n } else if (component instanceof scope.ShapeLine) {\n this.drawShapeLine(component, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n };\n\n /**\n * Draw the shapes\n *\n * @method drawShapes\n * @param {AbstractComponent[]} components\n * @param {ShapeSegment[]} shapes\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapes = function (components, shapes, context, parameters) {\n\n for (var i in shapes) {\n var segment = shapes[i];\n var candidate = segment.getSelectedCandidate();\n\n if (candidate) {\n if (candidate instanceof scope.ShapeRecognized) {\n this.drawShapeRecognized(candidate, context, parameters);\n } else if (candidate instanceof scope.ShapeNotRecognized) {\n this.drawShapeNotRecognized(components, segment.getInkRanges(), candidate, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n }\n };\n\n /**\n * This method allow you to draw recognized shape\n *\n * @method drawShapeRecognized\n * @param {ShapeRecognized} shapeRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeRecognized = function (shapeRecognized, context, parameters) {\n\n var primitives = shapeRecognized.getPrimitives();\n\n for (var i in primitives) {\n this.drawShapePrimitive(primitives[i], context, parameters);\n }\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n var rectangleList = [];\n\n for (var j in primitives) {\n // Primitive bounding rect\n rectangleList.push(this.getPrimitiveBoundingBox(primitives[j]));\n }\n // Bounding rect of the entire shape\n var boundingRect = scope.MathUtils.getBoundingRect(rectangleList);\n this.drawRectangle(boundingRect, context, parameters);\n }\n };\n\n /**\n * This method allow you to draw not recognized shape\n *\n * @method drawShapeNotRecognized\n * @param {AbstractComponent[]} components\n * @param {ShapeInkRange[]} inkRanges\n * @param {ShapeNotRecognized} shapeNotRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeNotRecognized = function (components, inkRanges, shapeNotRecognized, context, parameters) {\n for (var i in inkRanges) {\n var extractedStrokes = this.extractStroke(components, inkRanges[i]);\n this.drawStrokes(extractedStrokes, context, parameters);\n }\n\n };\n\n /**\n * Draw shape primitive\n *\n * @method drawShapePrimitive\n * @param {AbstractShapePrimitive} primitive\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapePrimitive = function (primitive, context, parameters) {\n if (primitive instanceof scope.ShapeEllipse) {\n this.drawShapeEllipse(primitive, context, parameters);\n } else if (primitive instanceof scope.ShapeLine) {\n this.drawShapeLine(primitive, context, parameters);\n }\n };\n\n /**\n * Draw shape line\n *\n * @method drawShapeLine\n * @param {ShapeLine} shapeLine\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeLine = function (shapeLine, context, parameters) {\n\n this.drawLineByPoints(shapeLine.getFirstPoint(), shapeLine.getLastPoint(), context, parameters);\n\n if (shapeLine.hasBeginDecoration() && shapeLine.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getFirstPoint(), shapeLine.getBeginTangentAngle(), 12.0, context, parameters);\n }\n\n if (shapeLine.hasEndDecoration() && shapeLine.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getLastPoint(), shapeLine.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Draw an ellipse arc on context\n *\n * @method drawEllipseArc\n * @param {Point} centerPoint\n * @param {Number} maxRadius\n * @param {Number} minRadius\n * @param {String} orientation\n * @param {Number} startAngle\n * @param {Number} sweepAngle\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n * @returns {Point[]}\n */\n ShapeRenderer.prototype.drawEllipseArc = function (centerPoint, maxRadius, minRadius, orientation, startAngle, sweepAngle, context, parameters) {\n\n var angleStep = 0.02; // angle delta between interpolated\n\n var z1 = Math.cos(orientation);\n var z3 = Math.sin(orientation);\n var z2 = z1;\n var z4 = z3;\n z1 *= maxRadius;\n z2 *= minRadius;\n z3 *= maxRadius;\n z4 *= minRadius;\n\n var n = Math.floor(Math.abs(sweepAngle) / angleStep);\n\n var boundariesPoints = [];\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n\n for (var i = 0; i <= n; i++) {\n\n var angle = startAngle + (i / n) * sweepAngle; // points on the arc, in radian\n var alpha = Math.atan2(Math.sin(angle) / minRadius, Math.cos(angle) / maxRadius);\n\n var cosAlpha = Math.cos(alpha);\n var sinAlpha = Math.sin(alpha);\n\n // current point\n var x = centerPoint.x + z1 * cosAlpha - z4 * sinAlpha;\n var y = centerPoint.y + z2 * sinAlpha + z3 * cosAlpha;\n if (i === 0) {\n context.moveTo(x, y);\n } else {\n context.lineTo(x, y);\n }\n\n if (i === 0 || i === n) {\n boundariesPoints.push({x: x, y: y});\n }\n }\n\n context.stroke();\n\n } finally {\n context.restore();\n }\n\n return boundariesPoints;\n };\n\n /**\n * Draw shape ellipse\n *\n * @method drawShapeEllipse\n * @param {ShapeEllipse} shapeEllipse\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeEllipse = function (shapeEllipse, context, parameters) {\n\n var points = this.drawEllipseArc(\n shapeEllipse.getCenter(),\n shapeEllipse.getMaxRadius(),\n shapeEllipse.getMinRadius(),\n shapeEllipse.getOrientation(),\n shapeEllipse.getStartAngle(),\n shapeEllipse.getSweepAngle(),\n context, parameters);\n\n if (shapeEllipse.hasBeginDecoration() && shapeEllipse.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[0], shapeEllipse.getBeginTangentAngle(), 12.0, context, parameters);\n }\n\n if (shapeEllipse.hasEndDecoration() && shapeEllipse.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[1], shapeEllipse.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Get the bounding box of primitive\n *\n * @method getPrimitiveBoundingBox\n * @param {AbstractShapePrimitive} primitive\n * @returns {Object} the bounding box\n */\n ShapeRenderer.prototype.getPrimitiveBoundingBox = function (primitive) {\n var rectangle = null;\n if (primitive instanceof scope.ShapeEllipse) {\n rectangle = scope.MathUtils.getEllipseArcRect(primitive.getCenter(), primitive.getMaxRadius(), primitive.getMinRadius(), primitive.getOrientation(), primitive.getStartAngle(), primitive.getSweepAngle());\n } else if (primitive instanceof scope.ShapeLine) {\n rectangle = scope.MathUtils.getLineRect(primitive.getFirstPoint(), primitive.getLastPoint());\n }\n return rectangle;\n };\n\n // Export\n scope.ShapeRenderer = ShapeRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Math Renderer. It's used to calculate the math ink rendering in HTML5 canvas\n *\n * @class MathRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function MathRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n MathRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n MathRenderer.prototype.constructor = MathRenderer;\n\n /**\n * Draw math recognition result on HTML5 canvas. Scratch out results are use to redraw HTML5 Canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {MathDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MathRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) {\n var notScratchOutComponents = this.removeScratchOut(components, recognitionResult.getScratchOutResults());\n this.drawComponents(notScratchOutComponents, context, parameters);\n };\n\n /**\n * Remove scratch out from input components\n *\n * @param {AbstractComponent[]} components\n * @param {MathScratchOut[]} scratchOutResults\n * @returns {AbstractComponent[]} notScratchOutComponents\n */\n MathRenderer.prototype.removeScratchOut = function (components, scratchOutResults) {\n if (!scratchOutResults || scratchOutResults.length === 0) {\n return components;\n }\n\n var cloneComponents = components.slice(0);\n var componentsToRemove = [];\n\n for (var k in scratchOutResults) {\n if (scratchOutResults[k].getErasedInkRanges()) {\n for (var n in scratchOutResults[k].getErasedInkRanges()) {\n componentsToRemove.push(scratchOutResults[k].getErasedInkRanges()[n].getComponent());\n }\n for (var p in scratchOutResults[k].getInkRanges()) {\n componentsToRemove.push(scratchOutResults[k].getInkRanges()[p].getComponent());\n }\n }\n }\n\n componentsToRemove.sort(function (a, b) {\n return b - a;\n });\n\n for (var z in componentsToRemove) {\n cloneComponents.splice(componentsToRemove[z], 1);\n }\n return cloneComponents;\n };\n\n // Export\n scope.MathRenderer = MathRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Music Renderer. It's used to calculate the music ink rendering in HTML5 canvas\n *\n * @class MusicRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function MusicRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n MusicRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n MusicRenderer.prototype.constructor = MusicRenderer;\n\n /**\n * Draw music recognition result on HTML5 canvas. Scratch out results are use to redraw HTML5 Canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {MusicDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MusicRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) {\n var notScratchOutComponents = this.removeScratchOut(components, recognitionResult.getScratchOutResults());\n this.drawComponents(notScratchOutComponents, context, parameters);\n };\n\n /**\n * Remove scratch out from input components\n *\n * @param {AbstractComponent[]} components\n * @param {MusicScratchOut[]} scratchOutResults\n * @returns {AbstractComponent[]} notScratchOutComponents\n */\n MusicRenderer.prototype.removeScratchOut = function (components, scratchOutResults) {\n if (!scratchOutResults || scratchOutResults.length === 0) {\n return components;\n }\n\n var cloneComponents = components.slice(0);\n var componentsToRemove = [];\n\n for (var k in scratchOutResults) {\n if (scratchOutResults[k].getErasedInputRanges()) {\n for (var n in scratchOutResults[k].getErasedInputRanges()) {\n componentsToRemove.push(scratchOutResults[k].getErasedInputRanges()[n].getComponent());\n }\n for (var p in scratchOutResults[k].getInputRanges()) {\n componentsToRemove.push(scratchOutResults[k].getInputRanges()[p].getComponent());\n }\n }\n }\n\n componentsToRemove.sort(function (a, b) {\n return b - a;\n });\n\n for (var z in componentsToRemove) {\n cloneComponents.splice(componentsToRemove[z], 1);\n }\n return cloneComponents;\n };\n\n /**\n * Draw staff on the HTML5 canvas\n *\n * @method staffDrawing\n * @param {MusicStaff} staff\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MusicRenderer.prototype.drawStaff = function (staff, context, parameters) { // jshint ignore:line\n\n var staffHeight = staff.getTop() + ((staff.getCount() - 1) * staff.getGap());\n// var staves = Math.floor(context.canvas.clientHeight / staff.height);\n var staves = 1;\n\n context.beginPath();\n\n // Drawing horizontal staff lines\n for (var i = 0; i < staves; i++) {\n var offset = staffHeight * i;\n for (var j = 0; j < staff.getCount(); j++) {\n context.moveTo(0, (staff.getTop() + offset) + j * staff.getGap());\n context.lineTo(context.canvas.clientWidth, (staff.getTop() + offset) + j * staff.getGap());\n }\n }\n\n context.stroke();\n };\n\n /**\n * Draw components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MusicRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n scope.AbstractRenderer.prototype.drawStroke.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharacterInputComponent) {\n scope.AbstractRenderer.prototype.drawCharacter.call(this, component, context, parameters); // super\n } else if (component instanceof scope.MusicAccidentalInputComponent) {\n drawAccidental(component, context, parameters);\n } else if (component instanceof scope.MusicArpeggiateInputComponent) {\n drawArpeggiate(component, context, parameters);\n } else if (component instanceof scope.MusicBarInputComponent) {\n drawBar(component, context, parameters);\n } else if (component instanceof scope.MusicBeamInputComponent) {\n drawBeam(component, context, parameters);\n } else if (component instanceof scope.MusicClefInputComponent) {\n drawClef(component, context, parameters);\n } else if (component instanceof scope.MusicDecorationInputComponent) {\n drawDecoration(component, context, parameters);\n } else if (component instanceof scope.MusicDotsInputComponent) {\n drawDots(component, context, parameters);\n } else if (component instanceof scope.MusicHeadInputComponent) {\n drawHead(component, context, parameters);\n } else if (component instanceof scope.MusicLedgerLineInputComponent) {\n drawLedgerLine(component, context, parameters);\n } else if (component instanceof scope.MusicRestInputComponent) {\n drawRest(component, context, parameters);\n } else if (component instanceof scope.MusicStemInputComponent) {\n drawStem(component, context, parameters);\n } else if (component instanceof scope.MusicTieOrSlurInputComponent) {\n drawTieOrSlur(component, context, parameters);\n } else if (component instanceof scope.MusicTimeSignatureInputComponent) {\n drawTimeSignature(component, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n };\n\n /**\n * Draw accidental\n *\n * @private\n * @method drawAccidental\n * @param {MusicAccidentalInputComponent} accidental\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawAccidental = function (accidental, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw arpeggiate\n *\n * @private\n * @method drawArpeggiate\n * @param {MusicArpeggiateInputComponent} arpeggiate\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawArpeggiate = function (arpeggiate, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw bar\n *\n * @private\n * @method drawBar\n * @param {MusicBarInputComponent} bar\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawBar = function (bar, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw beam\n *\n * @private\n * @method drawBeam\n * @param {MusicBeamInputComponent} beam\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawBeam = function (beam, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw clef\n *\n * @private\n * @method drawClef\n * @param {MusicClefInputComponent} clef\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawClef = function (clef, context, parameters) { // jshint ignore:line\n var src = 'data:image/svg+xml,';\n switch (clef.getValue().getSymbol()) {\n case 'F':\n src = src + '';\n break;\n case 'C':\n src = src + '';\n break;\n case 'G':\n src = src + '';\n break;\n default:\n throw new Error('Unknown music clef symbol');\n }\n\n var imageObj = new Image();\n imageObj.onload = function () {\n var ratio = clef.getBoundingBox().getHeight() / this.height;\n clef.getBoundingBox().setWidth(this.width * ratio);\n context.drawImage(imageObj, clef.getBoundingBox().getX(), clef.getBoundingBox().getY(), clef.getBoundingBox().getWidth(), clef.getBoundingBox().getHeight());\n };\n imageObj.src = src;\n };\n\n /**\n * Draw decoration\n *\n * @private\n * @method drawDecoration\n * @param {MusicDecorationInputComponent} decoration\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawDecoration = function (decoration, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw dots\n *\n * @private\n * @method drawDots\n * @param {MusicDotsInputComponent} dots\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawDots = function (dots, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw head\n *\n * @private\n * @method drawHead\n * @param {MusicHeadInputComponent} head\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawHead = function (head, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw ledgerLine\n *\n * @private\n * @method drawLedgerLine\n * @param {MusicLedgerLineInputComponent} ledgerLine\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawLedgerLine = function (ledgerLine, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw rest\n *\n * @private\n * @method drawRest\n * @param {MusicRestInputComponent} rest\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawRest = function (rest, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw stem\n *\n * @private\n * @method drawStem\n * @param {MusicStemInputComponent} stem\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawStem = function (stem, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw tieOrSlur\n *\n * @private\n * @method drawTieOrSlur\n * @param {MusicTieOrSlurInputComponent} tieOrSlur\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawTieOrSlur = function (tieOrSlur, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw timeSignature\n *\n * @private\n * @method drawTimeSignature\n * @param {MusicTimeSignatureInputComponent} timeSignature\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawTimeSignature = function (timeSignature, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n // Export\n scope.MusicRenderer = MusicRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Analyzer Renderer. It's used to calculate the analyzer ink rendering in HTML5 canvas\n *\n * @class AnalyzerRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function AnalyzerRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n AnalyzerRenderer.prototype.constructor = AnalyzerRenderer;\n\n /**\n * Draw shape recognition result on HTML5 canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {AnalyzerDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) {\n this.drawShapes(components, recognitionResult.getShapes(), context, parameters);\n this.drawTables(components, recognitionResult.getTables(), context, parameters);\n this.drawTextLines(components, recognitionResult.getTextLines(), context, parameters);\n// this.drawGroups(strokes, recognitionResult.getGroups(), context, parameters); // TODO: not implemented\n };\n\n /**\n * Draw table\n *\n * @method drawTables\n * @param {AbstractComponent[]} components\n * @param {AnalyzerTable[]} tables\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawTables = function (components, tables, context, parameters) {\n for (var i in tables) {\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n for (var j in tables[i].getCells()) {\n this.drawCell(tables[i].getCells()[j], context, parameters);\n }\n }\n for (var k in tables[i].getLines()) {\n this.drawLine(tables[i].getLines()[k], context, parameters);\n }\n }\n };\n\n /**\n * Draw the text line\n *\n * @method drawTextLines\n * @param {AbstractComponent[]} components\n * @param {AnalyzerTextLine[]} textLines\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawTextLines = function (components, textLines, context, parameters) {\n\n for (var i in textLines) {\n var textLine = textLines[i];\n var data = textLine.getData();\n if (data) {\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n this.drawRectangle(data.getBoundingBox(), context, parameters);\n }\n\n var text = textLine.getTextDocument().getTextSegment().getSelectedCandidate().getLabel();\n this.drawText(data.getBoundingBox(), text, data.getJustificationType(), data.getTextHeight(), data.getBaselinePos(), context, parameters);\n\n var underlines = textLine.getUnderlineList();\n for (var j in underlines) {\n this.drawUnderline(data.getBoundingBox(), underlines[j], text, data.getTextHeight(), data.getBaselinePos() + data.getTextHeight() / 10, context, parameters);\n }\n }\n }\n };\n\n /**\n * Draw text on analyser\n *\n * @method drawText\n * @param {Rectangle} boundingBox\n * @param {String} text\n * @param {String} justificationType\n * @param {Number} textHeight\n * @param {Number} baseline\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawText = function (boundingBox, text, justificationType, textHeight, baseline, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n context.font = parameters.getDecoration() + textHeight + 'px ' + parameters.getFont();\n } else {\n context.fillStyle = this.getParameters().getColor();\n context.strokeStyle = this.getParameters().getColor();\n context.globalAlpha = this.getParameters().getAlpha();\n context.lineWidth = 0.5 * this.getParameters().getWidth();\n context.font = this.getParameters().getDecoration() + textHeight + 'px ' + this.parameters.getFont();\n }\n context.textAlign = (justificationType === 'CENTER') ? 'center' : 'left';\n\n context.fillText(text, boundingBox.getX(), baseline, boundingBox.getWidth());\n\n } finally {\n context.restore();\n }\n };\n\n /**\n * Draw Underline\n *\n * @method drawUnderline\n * @param {Rectangle} boundingBox\n * @param {AnalyzerUnderline} underline\n * @param {String} text\n * @param {Number} textHeight\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawUnderline = function (boundingBox, underline, text, textHeight, baseline, context, parameters) {\n var topLeft = boundingBox.getTopLeftPoint();\n var firstCharacter = underline.getData().getFirstCharacter();\n var lastCharacter = underline.getData().getLastCharacter();\n\n if (parameters) {\n context.font = parameters.getDecoration() + textHeight + 'px ' + parameters.getFont();\n } else {\n context.font = this.getParameters().getDecoration() + textHeight + 'px ' + this.parameters.getFont();\n }\n\n var textMetrics = context.measureText(text.substring(0, firstCharacter));\n var x1 = topLeft.x + textMetrics.width;\n\n textMetrics = context.measureText(text.substring(firstCharacter, lastCharacter + 1));\n var x2 = x1 + textMetrics.width;\n this.drawLine(new scope.AnalyzerLine({\n data: new scope.AnalyzerLineData({\n p1: {x: x1, y: baseline},\n p2: {x: x2, y: baseline}\n })\n }), context, parameters);\n };\n\n /**\n * Draw Groups\n *\n * @method drawGroups\n * @param {AbstractComponent[]} components\n * @param {AnalyzerGroup[]} groups\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawGroups = function (components, groups, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw a line\n *\n * @method drawLine\n * @param {AnalyzerLine} line\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawLine = function (line, context, parameters) {\n if (line.getData()) {\n this.drawLineByPoints(line.getData().getP1(), line.getData().getP2(), context, parameters);\n }\n };\n\n /**\n * Draw a cell\n *\n * @method drawCell\n * @param {AnalyzerCell} cell\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawCell = function (cell, context, parameters) {\n if (cell.getData()) {\n this.drawRectangle(cell.getData().getBoundingBox(), context, parameters);\n }\n };\n\n /**\n * Draw the shapes\n *\n * @method drawShapes\n * @param {AbstractComponent[]} components\n * @param {ShapeSegment[]} shapes\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapes = function (components, shapes, context, parameters) {\n\n for (var i in shapes) {\n var segment = shapes[i];\n var candidate = segment.getSelectedCandidate();\n\n if (candidate) {\n if (candidate instanceof scope.ShapeRecognized) {\n this.drawShapeRecognized(candidate, context, parameters);\n } else if (candidate instanceof scope.ShapeNotRecognized) {\n this.drawShapeNotRecognized(components, segment.getInkRanges(), candidate, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n }\n };\n\n /**\n * This method allow you to draw recognized shape\n *\n * @method drawShapeRecognized\n * @param {ShapeRecognized} shapeRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeRecognized = function (shapeRecognized, context, parameters) {\n\n var primitives = shapeRecognized.getPrimitives();\n\n for (var i in primitives) {\n this.drawShapePrimitive(primitives[i], context, parameters);\n }\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n var rectangleList = [];\n\n for (var j in primitives) {\n // Primitive bounding rect\n rectangleList.push(this.getPrimitiveBoundingBox(primitives[j]));\n }\n // Bounding rect of the entire shape\n var boundingRect = scope.MathUtils.getBoundingRect(rectangleList);\n this.drawRectangle(boundingRect, context, parameters);\n }\n };\n\n /**\n * This method allow you to draw not recognized shape\n *\n * @method drawShapeNotRecognized\n * @param {AbstractComponent[]} components\n * @param {AnalyzerInkRange[]} inkRanges\n * @param {ShapeNotRecognized} shapeNotRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeNotRecognized = function (components, inkRanges, shapeNotRecognized, context, parameters) {\n for (var i in inkRanges) {\n var extractedStrokes = this.extractStroke(components, inkRanges[i]);\n this.drawStrokes(extractedStrokes, context, parameters);\n }\n\n };\n\n /**\n * Draw shape primitive\n *\n * @method drawShapePrimitive\n * @param {AbstractShapePrimitive} primitive\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapePrimitive = function (primitive, context, parameters) {\n if (primitive instanceof scope.ShapeEllipse) {\n this.drawShapeEllipse(primitive, context, parameters);\n } else if (primitive instanceof scope.ShapeLine) {\n this.drawShapeLine(primitive, context, parameters);\n }\n };\n\n /**\n * Draw shape line\n *\n * @method drawShapeLine\n * @param {ShapeLine} shapeLine\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeLine = function (shapeLine, context, parameters) {\n\n this.drawLineByPoints(shapeLine.getFirstPoint(), shapeLine.getLastPoint(), context, parameters);\n if (shapeLine.hasBeginDecoration() && shapeLine.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getFirstPoint(), shapeLine.getBeginTangentAngle(), 12.0, context, parameters);\n }\n if (shapeLine.hasEndDecoration() && shapeLine.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getLastPoint(), shapeLine.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Draw an ellipse arc on context\n *\n * @method drawEllipseArc\n * @param {Point} centerPoint\n * @param {Number} maxRadius\n * @param {Number} minRadius\n * @param {String} orientation\n * @param {Number} startAngle\n * @param {Number} sweepAngle\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n * @returns {Point[]}\n */\n AnalyzerRenderer.prototype.drawEllipseArc = function (centerPoint, maxRadius, minRadius, orientation, startAngle, sweepAngle, context, parameters) {\n\n var angleStep = 0.02; // angle delta between interpolated\n\n var z1 = Math.cos(orientation);\n var z3 = Math.sin(orientation);\n var z2 = z1;\n var z4 = z3;\n z1 *= maxRadius;\n z2 *= minRadius;\n z3 *= maxRadius;\n z4 *= minRadius;\n\n var n = Math.floor(Math.abs(sweepAngle) / angleStep);\n\n var boundariesPoints = [];\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.getParameters().getColor();\n context.strokeStyle = this.getParameters().getColor();\n context.globalAlpha = this.getParameters().getAlpha();\n context.lineWidth = 0.5 * this.getParameters().getWidth();\n }\n\n context.beginPath();\n\n for (var i = 0; i <= n; i++) {\n\n var angle = startAngle + (i / n) * sweepAngle; // points on the arc, in radian\n var alpha = Math.atan2(Math.sin(angle) / minRadius, Math.cos(angle) / maxRadius);\n\n var cosAlpha = Math.cos(alpha);\n var sinAlpha = Math.sin(alpha);\n\n // current point\n var x = centerPoint.x + z1 * cosAlpha - z4 * sinAlpha;\n var y = centerPoint.y + z2 * sinAlpha + z3 * cosAlpha;\n if (i === 0) {\n context.moveTo(x, y);\n } else {\n context.lineTo(x, y);\n }\n\n if (i === 0 || i === n) {\n boundariesPoints.push({x: x, y: y});\n }\n }\n\n context.stroke();\n\n } finally {\n context.restore();\n }\n\n return boundariesPoints;\n };\n\n /**\n * Draw shape ellipse\n *\n * @method drawShapeEllipse\n * @param {ShapeEllipse} shapeEllipse\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeEllipse = function (shapeEllipse, context, parameters) {\n\n var points = this.drawEllipseArc(\n shapeEllipse.getCenter(),\n shapeEllipse.getMaxRadius(),\n shapeEllipse.getMinRadius(),\n shapeEllipse.getOrientation(),\n shapeEllipse.getStartAngle(),\n shapeEllipse.getSweepAngle(),\n context, parameters);\n\n if (shapeEllipse.hasBeginDecoration() && shapeEllipse.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[0], shapeEllipse.getBeginTangentAngle(), 12.0, context, parameters);\n }\n if (shapeEllipse.hasEndDecoration() && shapeEllipse.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[1], shapeEllipse.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Get the bounding box of primitive\n *\n * @method getPrimitiveBoundingBox\n * @param {AbstractShapePrimitive} primitive\n * @returns {Rectangle} rectangle\n */\n AnalyzerRenderer.prototype.getPrimitiveBoundingBox = function (primitive) {\n var rectangle = null;\n if (primitive instanceof scope.ShapeEllipse) {\n rectangle = scope.MathUtils.getEllipseArcRect(primitive.getCenter(), primitive.getMaxRadius(), primitive.getMinRadius(), primitive.getOrientation(), primitive.getStartAngle(), primitive.getSweepAngle());\n } else if (primitive instanceof scope.ShapeLine) {\n rectangle = scope.MathUtils.getLineRect(primitive.getFirstPoint(), primitive.getLastPoint());\n }\n return rectangle;\n };\n\n // Export\n scope.AnalyzerRenderer = AnalyzerRenderer;\n})(MyScript);"]} \ No newline at end of file +{"version":3,"file":"myscript.js","sources":["../src/MyScript.js","../src/common/generic/point.js","../src/common/generic/quadraticPoint.js","../src/common/generic/rectangle.js","../src/common/inkManager.js","../src/common/mathUtils.js","../src/common/abstractWSMessage.js","../src/input/generic/components/abstractComponent.js","../src/input/generic/components/stroke.js","../src/input/generic/components/characterInputComponent.js","../src/input/generic/components/characterInputComponentAlternate.js","../src/input/generic/abstractParameter.js","../src/input/generic/abstractRecognitionInput.js","../src/input/generic/abstractRecognitionData.js","../src/input/generic/recognitionLanguagesData.js","../src/input/generic/abstractStartRequestWSMessage.js","../src/input/generic/abstractContinueRequestWSMessage.js","../src/input/generic/challengeRequestWSMessage.js","../src/input/generic/initRequestWSMessage.js","../src/input/generic/resetRequestWSMessage.js","../src/input/text/components/abstractTextInputComponent.js","../src/input/text/components/charInputComponent.js","../src/input/text/components/stringInputComponent.js","../src/input/text/textInputUnit.js","../src/input/text/textParameter.js","../src/input/text/textProperties.js","../src/input/text/textRecognitionInput.js","../src/input/text/textRecognitionData.js","../src/input/text/textStartRequestWSMessage.js","../src/input/text/textContinueRequestWSMessage.js","../src/input/shape/shapeParameter.js","../src/input/shape/shapeRecognitionInput.js","../src/input/shape/shapeRecognitionData.js","../src/input/math/mathParameter.js","../src/input/math/mathRecognitionInput.js","../src/input/math/mathRecognitionData.js","../src/input/math/mathStartRequestWSMessage.js","../src/input/math/mathContinueRequestWSMessage.js","../src/input/music/components/abstractMusicInputComponent.js","../src/input/music/components/musicAccidentalInputComponent.js","../src/input/music/components/musicArpeggiateInputComponent.js","../src/input/music/components/musicBarInput.js","../src/input/music/components/musicBarInputComponent.js","../src/input/music/components/musicBeamInput.js","../src/input/music/components/musicBeamInputComponent.js","../src/input/music/components/musicClefInput.js","../src/input/music/components/musicClefInputComponent.js","../src/input/music/components/musicDecorationInput.js","../src/input/music/components/musicDecorationInputComponent.js","../src/input/music/components/musicDotsInputComponent.js","../src/input/music/components/musicHeadInputComponent.js","../src/input/music/components/musicLedgerLineInputComponent.js","../src/input/music/components/musicRestInputComponent.js","../src/input/music/components/musicStemInputComponent.js","../src/input/music/components/musicTieOrSlurInputComponent.js","../src/input/music/components/musicTimeSignatureInputComponent.js","../src/input/music/musicStaff.js","../src/input/music/musicParameter.js","../src/input/music/musicRecognitionInput.js","../src/input/music/musicRecognitionData.js","../src/input/analyzer/analyzerParameter.js","../src/input/analyzer/analyzerRecognitionInput.js","../src/input/analyzer/analyzerRecognitionData.js","../src/output/generic/abstractResult.js","../src/output/generic/abstractRecoResponseWSMessage.js","../src/output/generic/challengeResponseWSMessage.js","../src/output/generic/errorResponseWSMessage.js","../src/output/generic/initResponseWSMessage.js","../src/output/text/textInkRange.js","../src/output/text/textCandidate.js","../src/output/text/textCharCandidate.js","../src/output/text/textWordCandidate.js","../src/output/text/textResultCandidate.js","../src/output/text/textDocument.js","../src/output/text/textResult.js","../src/output/text/textSegment.js","../src/output/text/textCharSegment.js","../src/output/text/textWordSegment.js","../src/output/text/textResultSegment.js","../src/output/text/textTagItem.js","../src/output/text/textResponseWSMessage.js","../src/output/shape/abstractShapePrimitive.js","../src/output/shape/abstractDecoratedShape.js","../src/output/shape/shapeCandidate.js","../src/output/shape/shapeDocument.js","../src/output/shape/shapeEllipse.js","../src/output/shape/shapeErased.js","../src/output/shape/shapeInkRange.js","../src/output/shape/shapeLine.js","../src/output/shape/shapeNotRecognized.js","../src/output/shape/shapeRecognized.js","../src/output/shape/shapeResult.js","../src/output/shape/shapeScratchOut.js","../src/output/shape/shapeSegment.js","../src/output/math/mathNode.js","../src/output/math/mathNonTerminalNode.js","../src/output/math/mathResultElement.js","../src/output/math/mathRuleNode.js","../src/output/math/mathDocument.js","../src/output/math/mathInkRange.js","../src/output/math/mathLaTexResultElement.js","../src/output/math/mathMathMLResultElement.js","../src/output/math/mathResult.js","../src/output/math/mathScratchOut.js","../src/output/math/mathSymbolTreeResultElement.js","../src/output/math/mathTerminalNode.js","../src/output/math/mathTerminalNodeCandidate.js","../src/output/math/mathFenceRuleNode.js","../src/output/math/mathFractionRuleNode.js","../src/output/math/mathHorizontalPairRuleNode.js","../src/output/math/mathIdentityRuleNode.js","../src/output/math/mathLeftFenceRuleNode.js","../src/output/math/mathOverscriptRuleNode.js","../src/output/math/mathPreSuperscriptRuleNode.js","../src/output/math/mathSqrtRuleNode.js","../src/output/math/mathSubscriptRuleNode.js","../src/output/math/mathSubSuperscriptRuleNode.js","../src/output/math/mathSuperscriptRuleNode.js","../src/output/math/mathUnderOverscriptRuleNode.js","../src/output/math/mathUnderscriptRuleNode.js","../src/output/math/mathVerticalPairRuleNode.js","../src/output/math/mathExponentiableNonTerminalNode.js","../src/output/math/mathExpressionNonTerminalNode.js","../src/output/math/mathSqrtNonTerminalNode.js","../src/output/math/mathVectorNonTerminalNode.js","../src/output/math/mathSystemNonTerminalNode.js","../src/output/math/mathTermNonTerminalNode.js","../src/output/math/mathResponseWSMessage.js","../src/output/music/musicElement.js","../src/output/music/musicResultElement.js","../src/output/music/musicAccidental.js","../src/output/music/musicAnnotation.js","../src/output/music/musicArpeggiate.js","../src/output/music/musicBar.js","../src/output/music/musicBeam.js","../src/output/music/musicChord.js","../src/output/music/musicClef.js","../src/output/music/musicDecoration.js","../src/output/music/musicDocument.js","../src/output/music/musicDots.js","../src/output/music/musicHead.js","../src/output/music/musicInputRange.js","../src/output/music/musicKeySignature.js","../src/output/music/musicKeySignatureData.js","../src/output/music/musicLedgerLine.js","../src/output/music/musicNote.js","../src/output/music/musicPart.js","../src/output/music/musicPitchData.js","../src/output/music/musicRest.js","../src/output/music/musicResult.js","../src/output/music/musicScore.js","../src/output/music/musicScoreTreeResultElement.js","../src/output/music/musicScratchOut.js","../src/output/music/musicSlur.js","../src/output/music/musicStem.js","../src/output/music/musicTie.js","../src/output/music/musicTimeModificationData.js","../src/output/music/musicTimeSignature.js","../src/output/music/musicTupletBracket.js","../src/output/music/musicTuplet.js","../src/output/music/musicXMLResultElement.js","../src/output/analyzer/analyzerElement.js","../src/output/analyzer/analyzerCell.js","../src/output/analyzer/analyzerCellData.js","../src/output/analyzer/analyzerDocument.js","../src/output/analyzer/analyzerElementReference.js","../src/output/analyzer/analyzerGroup.js","../src/output/analyzer/analyzerInkRange.js","../src/output/analyzer/analyzerLine.js","../src/output/analyzer/analyzerLineData.js","../src/output/analyzer/analyzerRecognizedStroke.js","../src/output/analyzer/analyzerResult.js","../src/output/analyzer/analyzerStrokeType.js","../src/output/analyzer/analyzerTable.js","../src/output/analyzer/analyzerTableData.js","../src/output/analyzer/analyzerTextLine.js","../src/output/analyzer/analyzerTextLineData.js","../src/output/analyzer/analyzerUnderline.js","../src/output/analyzer/analyzerUnderlineData.js","../src/networking/networkInterface.js","../src/recognition/abstractRecognizer.js","../src/recognition/abstractWSRecognizer.js","../src/recognition/textRecognizer.js","../src/recognition/textWSRecognizer.js","../src/recognition/shapeRecognizer.js","../src/recognition/mathRecognizer.js","../src/recognition/mathWSRecognizer.js","../src/recognition/musicRecognizer.js","../src/recognition/analyzerRecognizer.js","../src/rendering/renderingParameters.js","../src/rendering/abstractRenderer.js","../src/rendering/textRenderer.js","../src/rendering/shapeRenderer.js","../src/rendering/mathRenderer.js","../src/rendering/musicRenderer.js","../src/rendering/analyzerRenderer.js"],"names":["MyScript","scope","Point","obj","this","x","y","prototype","getX","setX","getY","setY","QuadraticPoint","call","pressure","distance","length","ux","uy","x1","x2","y1","y2","constructor","getPressure","setPressure","getDistance","setDistance","getLength","setLength","getUx","setUx","getUy","setUy","getX1","setX1","getX2","setX2","getY1","setY1","getY2","setY2","Rectangle","width","height","getTopLeftPoint","point","setTopLeftPoint","topLeftPoint","getWidth","setWidth","getHeight","setHeight","InkManager","writing","strokes","currentStroke","undoRedoStack","isWriting","getCurrentStroke","startInkCapture","t","Error","isRedoEmpty","clearUndoRedoStack","Stroke","addX","addY","addT","continueInkCapture","endInkCapture","push","clear","isEmpty","undo","pop","redo","getStrokes","getUndoRedoStack","copy","index","MathUtils","getEllipseArcRect","center","maxRadius","minRadius","orientation","startAngle","sweepAngle","angle","alpha","z1","z2","z3","z4","cosAlpha","sinAlpha","n","xList","yList","i","xMin","xMax","yMin","yMax","angleStep","sortFloat","a","b","Math","cos","sin","abs","atan2","sort","getLineRect","firstPoint","lastPoint","xFirst","xLast","min","max","yFirst","yLast","getBoundingRect","boundingBoxes","rectangle","apply","AbstractWSMessage","type","getType","AbstractComponent","setType","undefined","getT","setT","getBoundingBox","boundingBox","CharacterInputComponent","alternates","getAlternates","setAlternates","addAlternate","alternate","setBoundingBox","CharacterInputComponentAlternate","probability","getAlternate","setAlternate","getProbability","setProbability","AbstractParameter","AbstractRecognitionInput","AbstractRecognitionData","getApplicationKey","applicationKey","setApplicationKey","getInstanceId","instanceId","setInstanceId","getHmac","hmac","setHmac","RecognitionLanguagesData","getInputMode","inputMode","setInputMode","AbstractStartRequestWSMessage","AbstractContinueRequestWSMessage","ChallengeRequestWSMessage","getChallenge","challenge","setChallenge","getHmacSignature","setHmacSignature","InitRequestWSMessage","ResetRequestWSMessage","AbstractTextInputComponent","CharInputComponent","getCharacter","character","setCharacter","StringInputComponent","getString","string","setString","TextInputUnit","textInputType","components","getInputType","setInputType","inputType","getComponents","inkRange","TextInkRange","slice","getStartComponent","getEndComponent","setComponents","TextParameter","getLanguage","language","setLanguage","textInputMode","getContentTypes","contentTypes","setContentTypes","getSubsetKnowledges","subsetKnowledges","setSubsetKnowledges","getUserResources","userResources","setUserResources","getUserLkWords","userLkWords","setUserLkWords","getResultDetail","resultDetail","setResultDetail","getTextProperties","textProperties","setTextProperties","TextProperties","getTextCandidateListSize","textCandidateListSize","setTextCandidateListSize","getWordCandidateListSize","wordCandidateListSize","setWordCandidateListSize","getWordPredictionListSize","wordPredictionListSize","setWordPredictionListSize","getWordCompletionListSize","wordCompletionListSize","setWordCompletionListSize","getCharacterCandidateListSize","characterCandidateListSize","setCharacterCandidateListSize","getDiscardCaseVariations","discardCaseVariations","setDiscardCaseVariations","getDiscardAccentuationVariations","discardAccentuationVariations","setDiscardAccentuationVariations","getDisableSpatialOrdering","disableSpatialOrdering","setDisableSpatialOrdering","getGlyphDistortion","glyphDistortion","setGlyphDistortion","getEnableOutOfLexicon","enableOutOfLexicon","setEnableOutOfLexicon","getSpellingDistortion","spellingDistortion","setSpellingDistortion","TextRecognitionInput","getParameters","textParameter","setParameters","parameters","getInputUnits","inputUnits","getStartUnit","getEndUnit","setInputUnits","TextRecognitionData","getTextRecognitionInput","textInput","setTextRecognitionInput","input","JSON","stringify","TextStartRequestWSMessage","TextContinueRequestWSMessage","ShapeParameter","getRejectDetectionSensitivity","rejectDetectionSensitivity","setRejectDetectionSensitivity","hasBeautification","doBeautification","setBeautification","ShapeRecognitionInput","getDoBeautification","setDoBeautification","ShapeRecognitionData","getShapeRecognitionInput","shapeInput","setShapeRecognitionInput","MathParameter","resultTypes","getResultTypes","setResultTypes","isColumnar","columnarOperation","setColumnar","columnar","getScratchOutDetectionSensitivity","scratchOutDetectionSensitivity","setScratchOutDetectionSensitivity","MathRecognitionInput","MathRecognitionData","getMathRecognitionInput","mathInput","setMathRecognitionInput","MathStartRequestWSMessage","MathContinueRequestWSMessage","AbstractMusicInputComponent","MusicAccidentalInputComponent","getValue","value","setValue","MusicArpeggiateInputComponent","MusicBarInput","getRepeatDirection","repeatDirection","setRepeatDirection","getStyle","style","setStyle","MusicBarInputComponent","MusicBeamInput","getPlacement","placement","setPlacement","getSlope","slope","setSlope","getLeftCount","leftCount","setLeftCount","getRightCount","rightCount","setRightCount","getGap","gap","setGap","MusicBeamInputComponent","MusicClefInput","symbol","octave","getYAnchor","yAnchor","setYAnchor","getOctave","setOctave","getSymbol","setSymbol","MusicClefInputComponent","MusicDecorationInput","MusicDecorationInputComponent","MusicDotsInputComponent","MusicHeadInputComponent","MusicLedgerLineInputComponent","MusicRestInputComponent","MusicStemInputComponent","MusicTieOrSlurInputComponent","MusicTimeSignatureInputComponent","MusicStaff","count","getCount","setCount","getTop","top","setTop","MusicParameter","getStaff","staff","setStaff","getDivisions","divisions","setDivisions","MusicRecognitionInput","MusicRecognitionData","getMusicRecognitionInput","musicInput","setMusicRecognitionInput","AnalyzerParameter","getTextParameters","setTextParameters","getCoordinateResolution","coordinateResolution","setCoordinateResolution","AnalyzerRecognitionInput","parameter","AnalyzerRecognitionData","getAnalyzerRecognitionInput","analyzerInput","setAnalyzerRecognitionInput","AbstractResult","AbstractRecoResponseWSMessage","ChallengeResponseWSMessage","ErrorResponseWSMessage","error","getError","InitResponseWSMessage","cpt","split","startUnit","Number","startComponent","startPoint","endUnit","endComponent","endPoint","getStartPoint","getEndPoint","TextCandidate","flags","label","normalizedScore","spellingDistortionRatio","j","getLabel","getNormalizedScore","getResemblanceScore","resemblanceScore","getSpellingDistortionRatio","getFlags","TextCharCandidate","TextWordCandidate","children","TextCharSegment","getChildren","TextResultCandidate","TextWordSegment","TextDocument","tagItems","wordCandidates","charCandidates","textSegmentResult","TextResultSegment","TextTagItem","k","getTagItems","getWordSegments","getWordSegment","inkRanges","getInkRanges","getCharSegments","getCharSegment","getTextSegment","TextResult","result","getTextDocument","TextSegment","candidates","selectedCandidateIdx","ranges","getCandidates","getSelectedCandidateIdx","getSelectedCandidate","tagType","getTagType","TextResponseWSMessage","AbstractShapePrimitive","isLine","isEllipse","AbstractDecoratedShape","beginDecoration","beginTangentAngle","endDecoration","endTangentAngle","hasBeginDecoration","hasEndDecoration","getBeginDecoration","getEndDecoration","getBeginTangentAngle","getEndTangentAngle","ShapeCandidate","isErased","isScratchOut","isNotRecognized","isRecognized","ShapeDocument","segments","ShapeSegment","getSegments","ShapeEllipse","getCenter","getMinRadius","getMaxRadius","getOrientation","getStartAngle","getSweepAngle","ShapeErased","ShapeInkRange","firstStroke","lastStroke","getFirstStroke","getLastStroke","getFirstPoint","getLastPoint","ShapeLine","ShapeNotRecognized","ShapeRecognized","primitives","normalizedRecognitionScore","getPrimitives","getNormalizedRecognitionScore","ShapeResult","getShapeDocument","ShapeScratchOut","elementType","uniqueID","selectedCandidateIndex","getElementType","getUniqueId","MathNode","name","getName","MathNonTerminalNode","selectedCandidate","MathTermNonTerminalNode","MathSqrtNonTerminalNode","MathVectorNonTerminalNode","MathSystemNonTerminalNode","MathExponentiableNonTerminalNode","MathExpressionNonTerminalNode","MathTerminalNode","MathIdentityRuleNode","MathHorizontalPairRuleNode","MathFenceRuleNode","MathFractionRuleNode","MathSqrtRuleNode","MathSubscriptRuleNode","MathSuperscriptRuleNode","MathSubSuperscriptRuleNode","MathUnderscriptRuleNode","MathOverscriptRuleNode","MathUnderOverscriptRuleNode","MathPreSuperscriptRuleNode","MathVerticalPairRuleNode","MathLeftFenceRuleNode","MathResultElement","isLaTex","isMathMl","isSymbolTree","MathRuleNode","MathDocument","results","scratchOutResults","MathMathMLResultElement","MathLaTexResultElement","MathSymbolTreeResultElement","MathScratchOut","getResultElements","getScratchOutResults","MathInkRange","component","firstItem","lastItem","getComponent","getFirstItem","getLastItem","MathResult","getMathDocument","erasedInkRanges","getErasedInkRanges","root","getRoot","MathTerminalNodeCandidate","MathResponseWSMessage","MusicElement","inputRanges","getInputRanges","MusicResultElement","isMusicXML","isScoreTree","MusicAccidental","MusicAnnotation","MusicArpeggiate","MusicBar","decorations","MusicDecoration","getDecorations","MusicBeam","MusicChord","notes","beamTypes","ledgerLines","startSlurs","stopSlurs","duration","arpeggiate","startBeam","stopBeam","stem","MusicStem","MusicNote","l","MusicLedgerLine","m","MusicSlur","getDuration","getArpeggiate","getStartBeam","getStopBeam","getStem","getNotes","getBeamTypes","getLedgerLines","getStartSlurs","getStopSlurs","MusicClef","line","getLine","MusicDocument","MusicXMLResultElement","MusicScoreTreeResultElement","MusicScratchOut","MusicDots","MusicHead","MusicInputRange","MusicKeySignature","accidentals","signature","MusicKeySignatureData","getSignature","getAccidentals","fifths","cancel","getFifths","getCancel","accidental","dots","head","pitch","MusicPitchData","startTie","MusicTie","stopTie","startTuplet","MusicTuplet","stopTuplet","timeModification","MusicTimeModificationData","getAccidental","getDots","getHead","getPitch","getStartTie","getStopTie","getStartTuplet","getStopTuplet","getTimeModification","MusicPart","elements","MusicRest","MusicTimeSignature","MusicTupletBracket","getElements","alteration","step","getAlteration","getStep","MusicResult","getMusicDocument","MusicScore","parts","getParts","score","getScore","erasedInputRanges","getErasedInputRanges","actual","normal","getActual","getNormal","bottom","getBottom","brackets","number","getNumber","getBrackets","AnalyzerElement","AnalyzerCell","data","AnalyzerCellData","getData","firstColumn","lastColumn","firstRow","lastRow","topBorder","bottomBorder","leftBorder","rightBorder","getFirstColumn","getLastColumn","getFirstRow","getLastRow","hasTopBorder","hasBottomBorder","hasLeftBorder","hasRightBorder","AnalyzerDocument","textLines","shapes","tables","groups","AnalyzerTextLine","AnalyzerTable","AnalyzerGroup","getTextLines","getShapes","getTables","getGroups","AnalyzerElementReference","elementReferences","getElementReferences","AnalyzerInkRange","stroke","AnalyzerRecognizedStroke","getStroke","AnalyzerLine","AnalyzerLineData","p1","p2","getP1","getP2","AnalyzerResult","getAnalyzerDocument","AnalyzerStrokeType","getInkRange","lines","cells","AnalyzerTableData","getLines","getCells","columnCount","rowCount","getColumnCount","getRowCount","underlineList","AnalyzerTextLineData","AnalyzerUnderline","getUnderlineList","baselinePos","toMidline","textHeight","justificationType","getBaselinePos","getToMidline","getTextHeight","getJustificationType","AnalyzerUnderlineData","firstCharacter","lastCharacter","getFirstCharacter","getLastCharacter","Q","NetworkInterface","parse","req","responseText","e","transformRequest","str","p","encodeURIComponent","join","xhr","url","onStateChange","request","readyState","status","deferred","resolve","onLoad","reject","onError","onProgress","event","notify","loaded","total","defer","XMLHttpRequest","open","setRequestHeader","onload","onerror","onprogress","onreadystatechange","send","promise","get","src","params","then","response","put","post","CryptoJS","AbstractRecognizer","host","http","getAvailableLanguageList","computeHmac","hmacKey","jsonInput","HmacSHA512","toString","enc","Hex","AbstractWSRecognizer","getMessageCallback","messageCallback","setMessageCallback","callback","getOpenCallback","openCallback","setOpenCallback","getCloseCallback","closeCallback","setCloseCallback","getErrorCallback","errorCallback","setErrorCallback","getState","socket","close","sendMessage","message","initWSRecognition","takeUpHmacChallenge","resetWSRecognition","TextRecognizer","doSimpleRecognition","TextWSRecognizer","WebSocket","self","onopen","console","log","onmessage","onclose","startWSRecognition","continueWSRecognition","doWSRecognition","ShapeRecognizer","clearShapeRecognitionSession","instanceSessionId","MathRecognizer","MathWSRecognizer","MusicRecognizer","AnalyzerRecognizer","RenderingParameters","color","rectColor","font","decoration","pressureType","doFadeOutLoop","showBoundingBoxes","getColor","setColor","getRectColor","setRectColor","getFont","setFont","getDecoration","setDecoration","getPressureType","setPressureType","getAlpha","setAlpha","getDoFadeOutLoop","setDoFadeOutLoop","getShowBoundingBoxes","setShowBoundingBoxes","AbstractRenderer","points","drawing","drawRecognitionResult","recognitionResult","context","drawComponents","drawStroke","drawCharacter","drawStart","drawContinue","previous","drawQuadratricStart","third","drawQuadratricContinue","drawEnd","drawPoint","drawQuadratricEnd","clearRect","canvas","drawGuidelines","horizontalSpacing","verticalSpacing","save","fillStyle","strokeStyle","lineWidth","clientWidth","clientHeight","beginPath","moveTo","lineTo","restore","drawLineByCoordinates","lX","lY","cX","cY","globalAlpha","drawLineByPoints","drawRectangle","fillRect","drawStrokes","strokePoints","p3","p4","p5","p6","p7","arc","PI","fill","drawArrowHead","headPoint","phi","beta","extractStroke","firstPointIndex","floor","lastPointIndex","ceil","strokeIndex","currentStrokePointCount","newStroke","pointIndex","computePoint","strokeFirstSegment","strokeSegment","strokeLastSegment","x11","y11","x12","y12","x21","y21","x22","y22","quadraticCurveTo","isFirst","isLast","penWidth","computeDistance","strokeLength","computePressure","computeLastControls","computeFirstControls","computeControls","dx","dy","d","sqrt","pow","isNaN","parseFloat","first","next","r","nx","ny","u","last","TextRenderer","drawInputUnits","drawChar","drawString","char","ShapeRenderer","drawShapes","drawShapeEllipse","drawShapeLine","segment","candidate","drawShapeRecognized","drawShapeNotRecognized","shapeRecognized","drawShapePrimitive","rectangleList","getPrimitiveBoundingBox","boundingRect","shapeNotRecognized","extractedStrokes","primitive","shapeLine","drawEllipseArc","centerPoint","boundariesPoints","shapeEllipse","MathRenderer","notScratchOutComponents","removeScratchOut","cloneComponents","componentsToRemove","z","splice","MusicRenderer","drawStaff","staffHeight","staves","offset","drawAccidental","drawArpeggiate","drawBar","drawBeam","drawClef","drawDecoration","drawDots","drawHead","drawLedgerLine","drawRest","drawStem","drawTieOrSlur","drawTimeSignature","bar","beam","clef","imageObj","Image","ratio","drawImage","ledgerLine","rest","tieOrSlur","timeSignature","AnalyzerRenderer","drawTables","drawTextLines","drawCell","drawLine","textLine","text","drawText","underlines","drawUnderline","baseline","textAlign","fillText","underline","topLeft","textMetrics","measureText","substring","drawGroups","cell"],"mappings":"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AAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG;AAChlC,gBAAgB,KAAK,CAAC;AACtB,YAAY,IAAI,CAAC,CAAC,CAAC,EAAE;AACrB,gBAAgB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG;AACv/C,gBAAgB,KAAK,CAAC;AACtB,YAAY,IAAI,CAAC,CAAC,CAAC,EAAE;AACrB,gBAAgB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,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","sourcesContent":["/**\n * MyScript javascript library\n *\n * @module MyScript\n * @requires Q\n * @requires CryptoJS\n */\n/*global MyScript:true */\nMyScript = {};","'use strict';\n\n(function (scope) {\n /**\n * Point\n *\n * @class Point\n * @param {Object} [obj]\n * @constructor\n */\n function Point(obj) {\n if (obj) {\n this.x = obj.x;\n this.y = obj.y;\n }\n }\n\n /**\n * Get x\n *\n * @method getX\n * @returns {Number}\n */\n Point.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Set x\n *\n * @method setX\n * @param {Number} x\n */\n Point.prototype.setX = function (x) {\n this.x = x;\n };\n\n /**\n * Get y\n *\n * @method getY\n * @returns {Number}\n */\n Point.prototype.getY = function () {\n return this.y;\n };\n\n /**\n * Set y\n *\n * @method setY\n * @param {Number} y\n */\n Point.prototype.setY = function (y) {\n this.y = y;\n };\n\n // Export\n scope.Point = Point;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Complex Point object used for quadratic calculation\n *\n * @class QuadraticPoint\n * @param {Object} [obj]\n * @constructor\n */\n function QuadraticPoint(obj) {\n scope.Point.call(this, obj);\n this.pressure = 0.5;\n this.distance = 0.0;\n this.length = 0.0;\n this.ux = 0.0;\n this.uy = 0.0;\n this.x1 = 0.0;\n this.x2 = 0.0;\n this.y1 = 0.0;\n this.y2 = 0.0;\n }\n\n /**\n * Inheritance property\n */\n QuadraticPoint.prototype = new scope.Point();\n\n /**\n * Constructor property\n */\n QuadraticPoint.prototype.constructor = QuadraticPoint;\n\n /**\n * Get pressure\n *\n * @method getPressure\n * @returns {Number}\n */\n QuadraticPoint.prototype.getPressure = function () {\n return this.pressure;\n };\n\n /**\n * Set pressure\n *\n * @method setPressure\n * @param {Number} pressure\n */\n QuadraticPoint.prototype.setPressure = function (pressure) {\n this.pressure = pressure;\n };\n\n /**\n * Get distance\n *\n * @method getDistance\n * @returns {Number}\n */\n QuadraticPoint.prototype.getDistance = function () {\n return this.distance;\n };\n\n /**\n * Set distance\n *\n * @method setDistance\n * @param {Number} distance\n */\n QuadraticPoint.prototype.setDistance = function (distance) {\n this.distance = distance;\n };\n\n /**\n * Get length\n *\n * @method getLength\n * @returns {Number}\n */\n QuadraticPoint.prototype.getLength = function () {\n return this.length;\n };\n\n /**\n * Set length\n *\n * @method setLength\n * @param {Number} length\n */\n QuadraticPoint.prototype.setLength = function (length) {\n this.length = length;\n };\n\n /**\n * Get ux\n *\n * @method getUx\n * @returns {Number}\n */\n QuadraticPoint.prototype.getUx = function () {\n return this.ux;\n };\n\n /**\n * Set ux\n *\n * @method setUx\n * @param {Number} ux\n */\n QuadraticPoint.prototype.setUx = function (ux) {\n this.ux = ux;\n };\n\n /**\n * Get uy\n *\n * @method getUy\n * @returns {Number}\n */\n QuadraticPoint.prototype.getUy = function () {\n return this.uy;\n };\n\n /**\n * Set uy\n *\n * @method setUy\n * @param {Number} uy\n */\n QuadraticPoint.prototype.setUy = function (uy) {\n this.uy = uy;\n };\n\n /**\n * Get x1\n *\n * @method getX1\n * @returns {Number}\n */\n QuadraticPoint.prototype.getX1 = function () {\n return this.x1;\n };\n\n /**\n * Set x1\n *\n * @method setX1\n * @param {Number} x1\n */\n QuadraticPoint.prototype.setX1 = function (x1) {\n this.x1 = x1;\n };\n\n /**\n * Get x2\n *\n * @method getX2\n * @returns {Number}\n */\n QuadraticPoint.prototype.getX2 = function () {\n return this.x2;\n };\n\n /**\n * Set x2\n *\n * @method setX2\n * @param {Number} x2\n */\n QuadraticPoint.prototype.setX2 = function (x2) {\n this.x2 = x2;\n };\n\n /**\n * Get y1\n *\n * @method getY1\n * @returns {Number}\n */\n QuadraticPoint.prototype.getY1 = function () {\n return this.y1;\n };\n\n /**\n * Set y2\n *\n * @method setY1\n * @param {Number} y1\n */\n QuadraticPoint.prototype.setY1 = function (y1) {\n this.y1 = y1;\n };\n\n /**\n * Get y2\n *\n * @method getY2\n * @returns {Number}\n */\n QuadraticPoint.prototype.getY2 = function () {\n return this.y2;\n };\n\n /**\n * Set y2\n *\n * @method setY2\n * @param {Number} y2\n */\n QuadraticPoint.prototype.setY2 = function (y2) {\n this.y2 = y2;\n };\n\n // Export\n scope.QuadraticPoint = QuadraticPoint;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Rectangle\n *\n * @class Rectangle\n * @param {Object} [obj]\n * @constructor\n */\n function Rectangle(obj) {\n if (obj) {\n this.x = obj.x;\n this.y = obj.y;\n this.width = obj.width;\n this.height = obj.height;\n }\n }\n\n /**\n * Get top-left x\n *\n * @method getX\n * @returns {Number}\n */\n Rectangle.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Set top-left x\n *\n * @method setX\n * @param {Number} x\n */\n Rectangle.prototype.setX = function (x) {\n this.x = x;\n };\n\n /**\n * Get top-left y\n *\n * @method getY\n * @returns {Number}\n */\n Rectangle.prototype.getY = function () {\n return this.y;\n };\n\n /**\n * Set top-left y\n *\n * @method setY\n * @param {Number} y\n */\n Rectangle.prototype.setY = function (y) {\n this.y = y;\n };\n\n /**\n * Get top-left point\n *\n * @method getTopLeftPoint\n * @returns {Point}\n */\n Rectangle.prototype.getTopLeftPoint = function () {\n var point = new scope.Point();\n point.setX(this.x);\n point.setY(this.y);\n return point;\n };\n\n /**\n * Set top-left point\n *\n * @method setTopLeftPoint\n * @param {Point} topLeftPoint\n */\n Rectangle.prototype.setTopLeftPoint = function (topLeftPoint) {\n this.x = topLeftPoint.getX();\n this.y = topLeftPoint.getY();\n };\n\n /**\n * Get width\n *\n * @method getWidth\n * @returns {Number}\n */\n Rectangle.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Set width\n *\n * @method setWidth\n * @param {Number} width\n */\n Rectangle.prototype.setWidth = function (width) {\n this.width = width;\n };\n\n /**\n * Get height\n *\n * @method getHeight\n * @returns {Number}\n */\n Rectangle.prototype.getHeight = function () {\n return this.height;\n };\n\n /**\n * Set height\n *\n * @method setHeight\n * @returns {Number} height\n */\n Rectangle.prototype.setHeight = function (height) {\n this.height = height;\n };\n\n // Export\n scope.Rectangle = Rectangle;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * The InkManager class that can use to store writing strokes and manage the undo/redo/clear system\n *\n * @class InkManager\n * @constructor\n */\n function InkManager() {\n this.writing = false;\n this.strokes = [];\n this.currentStroke = null;\n this.undoRedoStack = [];\n }\n\n /**\n * Is Wrinting a stoke\n *\n * @method isWriting\n * @returns {Boolean}\n */\n InkManager.prototype.isWriting = function () {\n return this.writing;\n };\n\n /**\n * Get the last current Stroke write\n *\n * @method getCurrentStroke\n * @returns {Stroke}\n */\n InkManager.prototype.getCurrentStroke = function () {\n return this.currentStroke;\n };\n\n /**\n * Start ink capture\n *\n * @method startInkCapture\n * @param {Number} x abscissa coordinate\n * @param {Number} y ordinate coordinate\n * @param {Number} [t] event timestamp\n */\n InkManager.prototype.startInkCapture = function (x, y, t) {\n if (!this.writing) {\n if (this.isRedoEmpty()) {\n this.clearUndoRedoStack();\n }\n this.currentStroke = new scope.Stroke();\n this.currentStroke.addX(x);\n this.currentStroke.addY(y);\n this.currentStroke.addT(t);\n this.writing = true;\n } else {\n throw new Error('Stroke capture already running');\n }\n };\n\n /**\n * Continue ink capture\n *\n * @method continueInkCapture\n * @param {Number} x abscissa coordinate\n * @param {Number} y ordinate coordinate\n * @param {Number} [t] event timestamp\n */\n InkManager.prototype.continueInkCapture = function (x, y, t) {\n if (this.writing) {\n this.currentStroke.addX(x);\n this.currentStroke.addY(y);\n this.currentStroke.addT(t);\n } else {\n throw new Error('Missing startInkCapture');\n }\n };\n\n /**\n * End ink capture\n *\n * @method endInkCapture\n */\n InkManager.prototype.endInkCapture = function () {\n if (this.writing) {\n this.strokes.push(this.currentStroke);\n this.writing = false;\n } else {\n throw new Error('Missing startInkCapture');\n }\n };\n\n /**\n * Clear the strokes list\n *\n * @method clear\n */\n InkManager.prototype.clear = function () {\n this.writing = false;\n this.strokes = [];\n this.currentStroke = null;\n this.undoRedoStack = [];\n };\n\n /**\n * Is The Strokes list is empty\n *\n * @method isEmpty\n * @returns {Boolean}\n */\n InkManager.prototype.isEmpty = function () {\n return this.strokes.length === 0;\n };\n\n /**\n * Is the Undo/Redo Stack empty\n *\n * @method isRedoEmpty\n * @returns {Boolean}\n */\n InkManager.prototype.isRedoEmpty = function () {\n return this.undoRedoStack.length === 0;\n };\n\n /**\n * Make an undo\n *\n * @method undo\n */\n InkManager.prototype.undo = function () {\n if (!this.isEmpty()) {\n this.undoRedoStack.push(this.strokes[this.strokes.length - 1]);\n this.strokes.pop();\n }\n };\n\n /**\n * Make a redo\n *\n * @method redo\n */\n InkManager.prototype.redo = function () {\n if (!this.isRedoEmpty()) {\n this.strokes.push(this.undoRedoStack[this.undoRedoStack.length - 1]);\n this.undoRedoStack.pop();\n }\n };\n\n /**\n * Get the strokes list\n *\n * @method getStokes\n * @returns {Stroke[]}\n */\n InkManager.prototype.getStrokes = function () {\n return this.strokes;\n };\n\n /**\n * Get the Undo/Redo Stack\n *\n * @method getUndoRedoStack\n * @returns {Stroke[]}\n */\n InkManager.prototype.getUndoRedoStack = function () {\n return this.undoRedoStack;\n };\n\n /**\n * Clear the Undo/Redo Stack\n *\n * @method clearUndoRedoStack\n */\n InkManager.prototype.clearUndoRedoStack = function () {\n this.undoRedoStack = [];\n };\n\n /**\n * Copy the strokes values from index on an other list of strokes\n *\n * @method copy\n * @param {Stroke[]} strokes List of strokes\n * @param {Number} index Position to start the copy\n */\n InkManager.prototype.copy = function (strokes, index) {\n for (index; index < this.strokes.length; index++) {\n strokes.push(this.strokes[index]);\n }\n };\n\n // Export\n scope.InkManager = InkManager;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * The mathUtil class is use to calculate lines\n *\n * @class MathUtil\n * @constructor\n */\n function MathUtils() {\n }\n\n /**\n * This method is use to calculate the size of the rectangle that contains an ellipse arc.\n *\n * @method getEllipseArcRect\n * @param {Point} center\n * @param {Number} maxRadius\n * @param {Number} minRadius\n * @param {Number} orientation\n * @param {Number} startAngle\n * @param {Number} sweepAngle\n * @returns {Rectangle}\n */\n MathUtils.getEllipseArcRect = function (center, maxRadius, minRadius, orientation, startAngle, sweepAngle) {\n\n var angleStep = 0.02, // angle delta between interpolated points on the arc, in radian\n angle, // angle\n alpha, // angle\n z1,\n z2,\n z3,\n z4,\n cosAlpha,\n sinAlpha,\n n,\n xList,\n yList,\n i,\n x,\n y,\n xMin,\n xMax,\n yMin,\n yMax,\n sortFloat = function (a, b) {\n return a - b;\n };\n\n z1 = z2 = Math.cos(orientation);\n z3 = z4 = Math.sin(orientation);\n z1 *= maxRadius;\n z2 *= minRadius;\n z3 *= maxRadius;\n z4 *= minRadius;\n\n n = Math.abs(sweepAngle) / angleStep;\n\n xList = [];\n yList = [];\n\n for (i = 0; i <= n; i++) {\n\n angle = startAngle + (i / n) * sweepAngle;\n alpha = Math.atan2(Math.sin(angle) / minRadius, Math.cos(angle) / maxRadius);\n\n cosAlpha = Math.cos(alpha);\n sinAlpha = Math.sin(alpha);\n\n // current point\n x = center.x + z1 * cosAlpha - z4 * sinAlpha;\n y = center.y + z2 * sinAlpha + z3 * cosAlpha;\n\n xList.push(x);\n yList.push(y);\n }\n\n xList.sort(sortFloat);\n yList.sort(sortFloat);\n\n xMin = xList[0];\n xMax = xList[xList.length - 1];\n yMin = yList[0];\n yMax = yList[yList.length - 1];\n\n return new scope.Rectangle({x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin});\n };\n\n /**\n * This method is use to calculate the size of the rectangle that contains a line.\n *\n * @method getLineRect\n * @param {Point} firstPoint\n * @param {Point} lastPoint\n * @returns {Rectangle}\n */\n MathUtils.getLineRect = function (firstPoint, lastPoint) {\n\n var xFirst = firstPoint.x,\n xLast = lastPoint.x,\n xMin = Math.min(xFirst, xLast),\n xMax = Math.max(xFirst, xLast),\n\n yFirst = firstPoint.y,\n yLast = lastPoint.y,\n yMin = Math.min(yFirst, yLast),\n yMax = Math.max(yFirst, yLast);\n\n return new scope.Rectangle({x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin});\n };\n\n /**\n * This method is use to calculate the size of the rectangle that contains bounding boxes.\n *\n * @method getBoundingRect\n * @param {Rectangle[]} boundingBoxes List of bounding box\n * @returns {Rectangle}\n */\n MathUtils.getBoundingRect = function (boundingBoxes) {\n\n var xList = [],\n yList = [];\n\n for (var i in boundingBoxes) {\n var rectangle = boundingBoxes[i];\n xList.push(rectangle.getX());\n xList.push(rectangle.getX() + rectangle.getWidth());\n yList.push(rectangle.getY());\n yList.push(rectangle.getY() + rectangle.getHeight());\n }\n\n var xMin = Math.min.apply(Math, xList);\n var xMax = Math.max.apply(Math, xList);\n var yMin = Math.min.apply(Math, yList);\n var yMax = Math.max.apply(Math, yList);\n\n return new scope.Rectangle({x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin});\n };\n\n // Export\n scope.MathUtils = MathUtils;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract WebSocket recognition message\n *\n * @class AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractWSMessage(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get the message type\n *\n * @method getType\n * @returns {String}\n */\n AbstractWSMessage.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.AbstractWSMessage = AbstractWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent an abstract input component\n *\n * @class AbstractComponent\n * @constructor\n */\n function AbstractComponent() {\n }\n\n /**\n * Get the type of the input component\n *\n * @method getType\n * @returns {String}\n */\n AbstractComponent.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Set the type of the input component\n *\n * @method setType\n * @param {String} type\n */\n AbstractComponent.prototype.setType = function (type) {\n if (typeof type !== 'string') {\n throw new Error('Invalid param type');\n }\n this.type = type;\n };\n\n // Export\n scope.AbstractComponent = AbstractComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent a simple stroke input component\n *\n * @class Stroke\n * @extends AbstractComponent\n * @constructor\n */\n function Stroke() {\n this.type = 'stroke';\n this.x = [];\n this.y = [];\n this.t = [];\n }\n\n /**\n * Inheritance property\n */\n Stroke.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n Stroke.prototype.constructor = Stroke;\n\n /**\n * Get the list of x coordinates\n *\n * @method getX\n * @returns {Number[]}\n */\n Stroke.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Set the list of x coordinates\n *\n * @method setX\n * @param {Number[]} x\n */\n Stroke.prototype.setX = function (x) {\n this.x = x;\n };\n\n /**\n * Add a x to the list of x coordinates\n *\n * @method addX\n * @param {Number} x\n */\n Stroke.prototype.addX = function (x) {\n if ((x !== null) && (x !== undefined)) {\n this.x.push(x);\n }\n };\n\n /**\n * Get the list of y coordinates\n *\n * @method getY\n * @returns {Number[]}\n */\n Stroke.prototype.getY = function () {\n return this.y;\n };\n\n /**\n * Set the list of y coordinates\n *\n * @method setY\n * @param {Number[]} y\n */\n Stroke.prototype.setY = function (y) {\n this.y = y;\n };\n\n /**\n * Add a y to the list of y coordinates\n *\n * @method addY\n * @param {Number} y\n */\n Stroke.prototype.addY = function (y) {\n if ((y !== null) && (y !== undefined)) {\n this.y.push(y);\n }\n };\n\n /**\n * Get the list of timestamps\n *\n * @method getT\n * @returns {Number[]}\n */\n Stroke.prototype.getT = function () {\n return this.t;\n };\n\n /**\n * Set the list of timestamps\n *\n * @method setT\n * @param {Number[]} t\n */\n Stroke.prototype.setT = function (t) {\n this.t = t;\n };\n\n /**\n * Add a timestamp to the list\n *\n * @method addT\n * @param {Number} t\n */\n Stroke.prototype.addT = function (t) {\n if ((t !== null) && (t !== undefined)) {\n this.t.push(t);\n }\n };\n\n /**\n * Get the number of points for this stroke\n *\n * @method getLength\n * @returns {Number}\n */\n Stroke.prototype.getLength = function () {\n return this.x.length;\n };\n\n\n /**\n * Get the boundingBox\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n Stroke.prototype.getBoundingBox = function () {\n var boundingBox = new scope.Rectangle();\n boundingBox.setX(Math.min.apply(Math, this.getX()));\n boundingBox.setY(Math.min.apply(Math, this.getY()));\n boundingBox.setWidth(Math.max.apply(Math, this.getX()) - boundingBox.getX());\n boundingBox.setHeight(Math.max.apply(Math, this.getY()) - boundingBox.getY());\n return boundingBox;\n };\n\n // Export\n scope.Stroke = Stroke;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Char input component\n *\n * @class CharacterInputComponent\n * @extends AbstractComponent\n * @constructor\n */\n function CharacterInputComponent() {\n this.type = 'inputCharacter';\n this.alternates = [];\n }\n\n /**\n * Inheritance property\n */\n CharacterInputComponent.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n CharacterInputComponent.prototype.constructor = CharacterInputComponent;\n\n /**\n * Get character input alternates\n *\n * @method getAlternates\n * @returns {CharacterInputComponentAlternate[]}\n */\n CharacterInputComponent.prototype.getAlternates = function () {\n return this.alternates;\n };\n\n /**\n * Set character input alternates\n *\n * @method setAlternates\n * @param {CharacterInputComponentAlternate[]} alternates\n */\n CharacterInputComponent.prototype.setAlternates = function (alternates) {\n this.alternates = alternates;\n };\n\n /**\n * Add a character input alternate\n *\n * @method addAlternate\n * @param {CharacterInputComponent} alternate\n */\n CharacterInputComponent.prototype.addAlternate = function (alternate) {\n this.alternates.push(alternate);\n };\n\n /**\n * Get input component bounding-box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n CharacterInputComponent.prototype.getBoundingBox = function () {\n return this.boundingBox;\n };\n\n /**\n * Set input component bounding-box\n *\n * @method setBoundingBox\n * @param {Rectangle} boundingBox\n */\n CharacterInputComponent.prototype.setBoundingBox = function (boundingBox) {\n this.boundingBox = boundingBox;\n };\n\n // Export\n scope.CharacterInputComponent = CharacterInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Character input component alternate\n *\n * @class CharacterInputComponentAlternate\n * @constructor\n */\n function CharacterInputComponentAlternate(alternate, probability) {\n this.alternate = alternate;\n this.probability = probability;\n }\n\n /**\n * Get alternate\n *\n * @method getAlternate\n * @returns {String}\n */\n CharacterInputComponentAlternate.prototype.getAlternate = function () {\n return this.alternate;\n };\n\n /**\n * Set alternate\n *\n * @method setAlternate\n * @param {String} alternate\n */\n CharacterInputComponentAlternate.prototype.setAlternate = function (alternate) {\n this.alternate = alternate;\n };\n\n /**\n * Get probability\n *\n * @method getProbability\n * @returns {Number}\n */\n CharacterInputComponentAlternate.prototype.getProbability = function () {\n return this.probability;\n };\n\n /**\n * Set probability\n *\n * @method setProbability\n * @param {Number} probability\n */\n CharacterInputComponentAlternate.prototype.setProbability = function (probability) {\n this.probability = probability;\n };\n\n // Export\n scope.CharacterInputComponentAlternate = CharacterInputComponentAlternate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract parameters used for recognition\n *\n * @class AbstractParameter\n * @constructor\n */\n function AbstractParameter() {\n }\n\n // Export\n scope.AbstractParameter = AbstractParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstraction of recognizer input\n *\n * @class AbstractRecognitionInput\n * @constructor\n */\n function AbstractRecognitionInput() {\n }\n\n // Export\n scope.AbstractRecognitionInput = AbstractRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract input recognition data\n *\n * @class AbstractRecognitionData\n * @constructor\n */\n function AbstractRecognitionData() {\n }\n\n /**\n * Get the application key\n *\n * @method getApplicationKey\n * @returns {String}\n */\n AbstractRecognitionData.prototype.getApplicationKey = function () {\n return this.applicationKey;\n };\n\n /**\n * Set the application key\n *\n * @method setApplicationKey\n * @param {String} applicationKey\n */\n AbstractRecognitionData.prototype.setApplicationKey = function (applicationKey) {\n this.applicationKey = applicationKey;\n };\n\n /**\n * Get the instanceId\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractRecognitionData.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n /**\n * Set the instanceId\n *\n * @method setInstanceId\n * @param {String} instanceId\n */\n AbstractRecognitionData.prototype.setInstanceId = function (instanceId) {\n this.instanceId = instanceId;\n };\n\n /**\n * @returns {string}\n */\n AbstractRecognitionData.prototype.getHmac = function () {\n return this.hmac;\n };\n\n /**\n * @param {string} hmac\n */\n AbstractRecognitionData.prototype.setHmac = function (hmac) {\n this.hmac = hmac;\n };\n\n // Export\n scope.AbstractRecognitionData = AbstractRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * List of languages recognition input\n *\n * @class RecognitionLanguagesData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function RecognitionLanguagesData() {\n }\n\n /**\n * Inheritance property\n */\n RecognitionLanguagesData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n RecognitionLanguagesData.prototype.constructor = RecognitionLanguagesData;\n\n /**\n * Get the recognition input mode\n *\n * @method getInputMode\n * @returns {String} inputMode\n */\n RecognitionLanguagesData.prototype.getInputMode = function () {\n return this.inputMode;\n };\n\n /**\n * Set the recognition input mode\n *\n * @method setInputMode\n * @param {String} inputMode\n */\n RecognitionLanguagesData.prototype.setInputMode = function (inputMode) {\n this.inputMode = inputMode;\n };\n\n // Export\n scope.RecognitionLanguagesData = RecognitionLanguagesData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket start math recognition message\n *\n * @class AbstractStartRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractStartRequestWSMessage(obj) {\n this.type = 'start';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n AbstractStartRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n AbstractStartRequestWSMessage.prototype.constructor = AbstractStartRequestWSMessage;\n\n // Export\n scope.AbstractStartRequestWSMessage = AbstractStartRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket continue math recognition message\n *\n * @class AbstractContinueRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractContinueRequestWSMessage(obj) {\n this.type = 'continue';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n AbstractContinueRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n AbstractContinueRequestWSMessage.prototype.constructor = AbstractContinueRequestWSMessage;\n\n /**\n * Get instanceId\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractContinueRequestWSMessage.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n /**\n * Set instanceId\n *\n * @method setInstanceId\n * @param {String} instanceId\n */\n AbstractContinueRequestWSMessage.prototype.setInstanceId = function (instanceId) {\n this.instanceId = instanceId;\n };\n\n // Export\n scope.AbstractContinueRequestWSMessage = AbstractContinueRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class ChallengeRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ChallengeRequestWSMessage(obj) {\n this.type = 'hmac';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ChallengeRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ChallengeRequestWSMessage.prototype.constructor = ChallengeRequestWSMessage;\n\n /**\n * Get the challenge\n *\n * @method getChallenge\n * @returns {String}\n */\n ChallengeRequestWSMessage.prototype.getChallenge = function () {\n return this.challenge;\n };\n\n /**\n * Set the challenge\n *\n * @method setChallenge\n * @param {String} challenge\n */\n ChallengeRequestWSMessage.prototype.setChallenge = function (challenge) {\n this.challenge = challenge;\n };\n\n /**\n * Get the application key\n *\n * @method getApplicationKey\n * @returns {String}\n */\n ChallengeRequestWSMessage.prototype.getApplicationKey = function () {\n return this.applicationKey;\n };\n\n /**\n * Set the application key\n *\n * @method setApplicationKey\n * @param {String} applicationKey\n */\n ChallengeRequestWSMessage.prototype.setApplicationKey = function (applicationKey) {\n this.applicationKey = applicationKey;\n };\n\n /**\n * Get HMAC signature\n *\n * @method getHmacSignature\n * @returns {String}\n */\n ChallengeRequestWSMessage.prototype.getHmacSignature = function () {\n return this.hmac;\n };\n\n /**\n * Set HMAC signature\n *\n * @method setHmacSignature\n * @param {String} hmac\n */\n ChallengeRequestWSMessage.prototype.setHmacSignature = function (hmac) {\n this.hmac = hmac;\n };\n\n // Export\n scope.ChallengeRequestWSMessage = ChallengeRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class InitRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function InitRequestWSMessage(obj) {\n this.type = 'applicationKey';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n InitRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n InitRequestWSMessage.prototype.constructor = InitRequestWSMessage;\n\n /**\n * Get the application key\n *\n * @method getApplicationKey\n * @returns {String}\n */\n InitRequestWSMessage.prototype.getApplicationKey = function () {\n return this.applicationKey;\n };\n\n /**\n * Set the application key\n *\n * @method setApplicationKey\n * @param {String} applicationKey\n */\n InitRequestWSMessage.prototype.setApplicationKey = function (applicationKey) {\n this.applicationKey = applicationKey;\n };\n\n // Export\n scope.InitRequestWSMessage = InitRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class ResetRequestWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ResetRequestWSMessage(obj) {\n this.type = 'reset';\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ResetRequestWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ResetRequestWSMessage.prototype.constructor = ResetRequestWSMessage;\n\n // Export\n scope.ResetRequestWSMessage = ResetRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract text input component\n *\n * @class AbstractTextInputComponent\n * @extends AbstractComponent\n * @constructor\n */\n function AbstractTextInputComponent() {\n }\n\n /**\n * Inheritance property\n */\n AbstractTextInputComponent.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n AbstractTextInputComponent.prototype.constructor = AbstractTextInputComponent;\n\n /**\n * Get input component bounding-box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AbstractTextInputComponent.prototype.getBoundingBox = function () {\n return this.boundingBox;\n };\n\n /**\n * Set input component bounding-box\n *\n * @method setBoundingBox\n * @param {Rectangle} boundingBox\n */\n AbstractTextInputComponent.prototype.setBoundingBox = function (boundingBox) {\n this.boundingBox = boundingBox;\n };\n\n // Export\n scope.AbstractTextInputComponent = AbstractTextInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Char input component\n *\n * @class CharInputComponent\n * @extends AbstractTextInputComponent\n * @constructor\n */\n function CharInputComponent() {\n this.type = 'char';\n }\n\n /**\n * Inheritance property\n */\n CharInputComponent.prototype = new scope.AbstractTextInputComponent();\n\n /**\n * Constructor property\n */\n CharInputComponent.prototype.constructor = CharInputComponent;\n\n /**\n * Get character\n *\n * @method getCharacter\n * @returns {String}\n */\n CharInputComponent.prototype.getCharacter = function () {\n return this.character;\n };\n\n /**\n * Set character\n *\n * @method setCharacter\n * @param {String} character\n */\n CharInputComponent.prototype.setCharacter = function (character) {\n this.character = character;\n };\n\n // Export\n scope.CharInputComponent = CharInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * String input component\n *\n * @class StringInputComponent\n * @extends AbstractTextInputComponent\n * @constructor\n */\n function StringInputComponent() {\n this.type = 'string';\n }\n\n /**\n * Inheritance property\n */\n StringInputComponent.prototype = new scope.AbstractTextInputComponent();\n\n /**\n * Constructor property\n */\n StringInputComponent.prototype.constructor = StringInputComponent;\n\n /**\n * Get string\n *\n * @method getString\n * @returns {String}\n */\n StringInputComponent.prototype.getString = function () {\n return this.string;\n };\n\n /**\n * Set string\n *\n * @method setString\n * @param {String} string\n */\n StringInputComponent.prototype.setString = function (string) {\n this.string = string;\n };\n\n // Export\n scope.StringInputComponent = StringInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Input unit used for text recognition\n *\n * @class TextInputUnit\n * @constructor\n */\n function TextInputUnit() {\n this.textInputType = 'MULTI_LINE_TEXT';\n this.components = [];\n }\n\n /**\n * Get the input type\n *\n * @method getInputType\n * @returns {String}\n */\n TextInputUnit.prototype.getInputType = function () {\n return this.textInputType;\n };\n\n /**\n * Set the input type\n *\n * @method setInputType\n * @returns {String} inputType\n */\n TextInputUnit.prototype.setInputType = function (inputType) {\n this.textInputType = inputType;\n };\n\n /**\n * Get components for this input unit\n *\n * @method getComponents\n * @param {TextInkRange} [inkRange]\n * @returns {AbstractComponent[]}\n */\n TextInputUnit.prototype.getComponents = function (inkRange) {\n if (inkRange && (inkRange instanceof scope.TextInkRange)) {\n return this.components.slice(inkRange.getStartComponent(), inkRange.getEndComponent() + 1);\n }\n return this.components;\n };\n\n /**\n * Set components for this input unit\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n TextInputUnit.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.TextInputUnit = TextInputUnit;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for text recognition\n *\n * @class TextParameter\n * @extends AbstractParameter\n * @constructor\n */\n function TextParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n TextParameter.prototype.constructor = TextParameter;\n\n /**\n * Get recognition language\n *\n * @method getLanguage\n * @returns {String}\n */\n TextParameter.prototype.getLanguage = function () {\n return this.language;\n };\n\n /**\n * Set recognition language\n *\n * @method getLanguage\n * @param {String} language\n */\n TextParameter.prototype.setLanguage = function (language) {\n this.language = language;\n };\n\n /**\n * Get input mode\n *\n * @method getInputMode\n * @returns {String}\n */\n TextParameter.prototype.getInputMode = function () {\n return this.textInputMode;\n };\n\n /**\n * Set input mode\n *\n * @method setInputMode\n * @param {String} inputMode\n */\n TextParameter.prototype.setInputMode = function (inputMode) {\n this.textInputMode = inputMode;\n };\n\n /**\n * Get content types\n *\n * @method getContentTypes\n * @returns {Array}\n */\n TextParameter.prototype.getContentTypes = function () {\n return this.contentTypes;\n };\n\n /**\n * Set content types\n *\n * @method setContentTypes\n * @param {Array} contentTypes\n */\n TextParameter.prototype.setContentTypes = function (contentTypes) {\n this.contentTypes = contentTypes;\n };\n\n /**\n * Get SK\n *\n * @method getSubsetKnowledges\n * @returns {Array}\n */\n TextParameter.prototype.getSubsetKnowledges = function () {\n return this.subsetKnowledges;\n };\n\n /**\n * Set SK\n *\n * @method setSubsetKnowledges\n * @param {Array} subsetKnowledges\n */\n TextParameter.prototype.setSubsetKnowledges = function (subsetKnowledges) {\n this.subsetKnowledges = subsetKnowledges;\n };\n\n /**\n * Get user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n TextParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n TextParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get user LK words\n *\n * @method getUserLkWords\n * @returns {Array}\n */\n TextParameter.prototype.getUserLkWords = function () {\n return this.userLkWords;\n };\n\n /**\n * Set user LK words\n *\n * @method setUserLkWords\n * @param {Array} userLkWords\n */\n TextParameter.prototype.setUserLkWords = function (userLkWords) {\n this.userLkWords = userLkWords;\n };\n\n /**\n * Get result detail (e.g. TEXT, WORD ...)\n *\n * @method getResultDetail\n * @returns {String}\n */\n TextParameter.prototype.getResultDetail = function () {\n return this.resultDetail;\n };\n\n /**\n * Set result detail (e.g. TEXT, WORD ...)\n *\n * @method setResultDetail\n * @param {String} resultDetail\n */\n TextParameter.prototype.setResultDetail = function (resultDetail) {\n this.resultDetail = resultDetail;\n };\n\n /**\n * Get text properties\n *\n * @method getTextProperties\n * @returns {TextProperties}\n */\n TextParameter.prototype.getTextProperties = function () {\n return this.textProperties;\n };\n\n /**\n * Set text properties\n *\n * @method setTextProperties\n * @param {TextProperties} properties\n */\n TextParameter.prototype.setTextProperties = function (textProperties) {\n this.textProperties = textProperties;\n };\n\n // Export\n scope.TextParameter = TextParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text recognition properties\n *\n * @class TextProperties\n * @constructor\n */\n function TextProperties() {\n }\n\n /**\n * Get the number of text candidates requested\n *\n * @method getTextCandidateListSize\n * @returns {Number}\n */\n TextProperties.prototype.getTextCandidateListSize = function () {\n return this.textCandidateListSize;\n };\n\n /**\n * Set the number of text candidates requested\n *\n * @method setTextCandidateListSize\n * @param {Number} textCandidateListSize\n */\n TextProperties.prototype.setTextCandidateListSize = function (textCandidateListSize) {\n this.textCandidateListSize = textCandidateListSize;\n };\n\n /**\n * Get the number of word candidates requested\n *\n * @method getWordCandidateListSize\n * @returns {Number}\n */\n TextProperties.prototype.getWordCandidateListSize = function () {\n return this.wordCandidateListSize;\n };\n\n /**\n * Set the number of word candidates requested\n *\n * @method setWordCandidateListSize\n * @param {Number} wordCandidateListSize\n */\n TextProperties.prototype.setWordCandidateListSize = function (wordCandidateListSize) {\n this.wordCandidateListSize = wordCandidateListSize;\n };\n\n /**\n * Get the number of word prediction candidates requested\n *\n * @method getWordPredictionListSize\n * @returns {Number}\n */\n TextProperties.prototype.getWordPredictionListSize = function () {\n return this.wordPredictionListSize;\n };\n\n /**\n * Set the number of word prediction candidates requested\n *\n * @method setWordPredictionListSize\n * @param {Number} wordPredictionListSize\n */\n TextProperties.prototype.setWordPredictionListSize = function (wordPredictionListSize) {\n this.wordPredictionListSize = wordPredictionListSize;\n };\n\n /**\n * Get the number of word completion candidates requested\n *\n * @method getWordCompletionListSize\n * @returns {Number}\n */\n TextProperties.prototype.getWordCompletionListSize = function () {\n return this.wordCompletionListSize;\n };\n\n /**\n * Set the number of word completion candidates requested\n *\n * @method setWordCompletionListSize\n * @param {Number} wordCompletionListSize\n */\n TextProperties.prototype.setWordCompletionListSize = function (wordCompletionListSize) {\n this.wordCompletionListSize = wordCompletionListSize;\n };\n\n /**\n * Get the number of character candidates requested\n *\n * @method getCharacterCandidateListSize\n * @returns {Number}\n */\n TextProperties.prototype.getCharacterCandidateListSize = function () {\n return this.characterCandidateListSize;\n };\n\n /**\n * Set the number of character candidates requested\n *\n * @method setCharacterCandidateListSize\n * @param {Number} characterCandidateListSize\n */\n TextProperties.prototype.setCharacterCandidateListSize = function (characterCandidateListSize) {\n this.characterCandidateListSize = characterCandidateListSize;\n };\n\n /**\n * Get the discard case variations\n *\n * @method getDiscardCaseVariations\n * @returns {boolean}\n */\n TextProperties.prototype.getDiscardCaseVariations = function () {\n return this.discardCaseVariations;\n };\n\n /**\n * Set the discard case variations\n *\n * @method setDiscardCaseVariations\n * @param {boolean} discardCaseVariations\n */\n TextProperties.prototype.setDiscardCaseVariations = function (discardCaseVariations) {\n this.discardCaseVariations = discardCaseVariations;\n };\n\n /**\n * Get the discard accentuation variations\n *\n * @method getDiscardAccentuationVariations\n * @returns {boolean}\n */\n TextProperties.prototype.getDiscardAccentuationVariations = function () {\n return this.discardAccentuationVariations;\n };\n\n /**\n * Set the discard accentuation variations\n *\n * @method setDiscardAccentuationVariations\n * @param {boolean} discardAccentuationVariations\n */\n TextProperties.prototype.setDiscardAccentuationVariations = function (discardAccentuationVariations) {\n this.discardAccentuationVariations = discardAccentuationVariations;\n };\n\n /**\n * Get disable spatial ordering\n *\n * @method getDisableSpatialOrdering\n * @returns {Boolean}\n */\n TextProperties.prototype.getDisableSpatialOrdering = function () {\n return this.disableSpatialOrdering;\n };\n\n /**\n * Set disable spatial ordering\n *\n * @method setDisableSpatialOrdering\n * @param {Boolean} disableSpatialOrdering\n */\n TextProperties.prototype.setDisableSpatialOrdering = function (disableSpatialOrdering) {\n this.disableSpatialOrdering = disableSpatialOrdering;\n };\n\n /**\n * Get glyph distortion\n *\n * @method getGlyphDistortion\n * @returns {Number}\n */\n TextProperties.prototype.getGlyphDistortion = function () {\n return this.glyphDistortion;\n };\n\n /**\n * Set glyph distortion\n *\n * @method setGlyphDistortion\n * @param {Number} glyphDistortion\n */\n TextProperties.prototype.setGlyphDistortion = function (glyphDistortion) {\n this.glyphDistortion = glyphDistortion;\n };\n\n /**\n * Get enable out of lexicon\n *\n * @method getEnableOutOfLexicon\n * @returns {Boolean}\n */\n TextProperties.prototype.getEnableOutOfLexicon = function () {\n return this.enableOutOfLexicon;\n };\n\n /**\n * Set enable out of lexicon\n *\n * @method setEnableOutOfLexicon\n * @param {Boolean} enableOutOfLexicon\n */\n TextProperties.prototype.setEnableOutOfLexicon = function (enableOutOfLexicon) {\n this.enableOutOfLexicon = enableOutOfLexicon;\n };\n\n /**\n * Get spelling distortion\n *\n * @method getSpellingDistortion\n * @returns {Number}\n */\n TextProperties.prototype.getSpellingDistortion = function () {\n return this.spellingDistortion;\n };\n\n /**\n * Set spelling distortion\n *\n * @method setSpellingDistortion\n * @param {Number} spellingDistortion\n */\n TextProperties.prototype.setSpellingDistortion = function (spellingDistortion) {\n this.spellingDistortion = spellingDistortion;\n };\n\n // Export\n scope.TextProperties = TextProperties;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for text recognition\n *\n * @class TextRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function TextRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n TextRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n TextRecognitionInput.prototype.constructor = TextRecognitionInput;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextRecognitionInput.prototype.getParameters = function () {\n return this.textParameter;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextRecognitionInput.prototype.setParameters = function (parameters) {\n this.textParameter = parameters;\n };\n\n /**\n * Get input units\n *\n * @method getInputUnits\n * @param {TextInkRange} [inkRange]\n * @returns {TextInputUnit[]}\n */\n TextRecognitionInput.prototype.getInputUnits = function (inkRange) {\n if (inkRange && (inkRange instanceof scope.TextInkRange)) {\n return this.inputUnits.slice(inkRange.getStartUnit(), inkRange.getEndUnit() + 1);\n }\n return this.inputUnits;\n };\n\n /**\n * Set input units\n *\n * @method setInputUnits\n * @param {TextInputUnit[]} inputUnits\n */\n TextRecognitionInput.prototype.setInputUnits = function (inputUnits) {\n this.inputUnits = inputUnits;\n };\n\n // Export\n scope.TextRecognitionInput = TextRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for text input\n *\n * @class TextRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function TextRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n TextRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n TextRecognitionData.prototype.constructor = TextRecognitionData;\n\n /**\n * Get text input\n *\n * @method getTextRecognitionInput\n * @returns {TextRecognitionInput} inputMode\n */\n TextRecognitionData.prototype.getTextRecognitionInput = function () {\n return this.textInput;\n };\n\n /**\n * Set text input\n *\n * @method setTextRecognitionInput\n * @param {TextRecognitionInput} input\n */\n TextRecognitionData.prototype.setTextRecognitionInput = function (input) {\n this.textInput = JSON.stringify(input);\n };\n\n // Export\n scope.TextRecognitionData = TextRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket start text recognition message\n *\n * @class TextStartRequestWSMessage\n * @extends AbstractStartRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function TextStartRequestWSMessage(obj) {\n scope.AbstractStartRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextStartRequestWSMessage.prototype = new scope.AbstractStartRequestWSMessage();\n\n /**\n * Constructor property\n */\n TextStartRequestWSMessage.prototype.constructor = TextStartRequestWSMessage;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextStartRequestWSMessage.prototype.getParameters = function () {\n return this.textParameter;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextStartRequestWSMessage.prototype.setParameters = function (parameters) {\n this.textParameter = parameters;\n };\n\n /**\n * Get input units\n *\n * @method getInputUnits\n * @returns {TextInputUnit[]}\n */\n TextStartRequestWSMessage.prototype.getInputUnits = function () {\n return this.inputUnits;\n };\n\n /**\n * Set input units\n *\n * @method setInputUnits\n * @param {TextInputUnit[]} inputUnits\n */\n TextStartRequestWSMessage.prototype.setInputUnits = function (inputUnits) {\n this.inputUnits = inputUnits;\n };\n\n // Export\n scope.TextStartRequestWSMessage = TextStartRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket continue text recognition message\n *\n * @class TextContinueRequestWSMessage\n * @extends AbstractContinueRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function TextContinueRequestWSMessage(obj) {\n scope.AbstractContinueRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextContinueRequestWSMessage.prototype = new scope.AbstractContinueRequestWSMessage();\n\n /**\n * Constructor property\n */\n TextContinueRequestWSMessage.prototype.constructor = TextContinueRequestWSMessage;\n\n /**\n * Get input units\n *\n * @method getInputUnits\n * @returns {TextInputUnit[]}\n */\n TextContinueRequestWSMessage.prototype.getInputUnits = function () {\n return this.inputUnits;\n };\n\n /**\n * Set input units\n *\n * @method setInputUnits\n * @param {TextInputUnit[]} inputUnits\n */\n TextContinueRequestWSMessage.prototype.setInputUnits = function (inputUnits) {\n this.inputUnits = inputUnits;\n };\n\n // Export\n scope.TextContinueRequestWSMessage = TextContinueRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for shape recognition\n *\n * @class ShapeParameter\n * @extends AbstractParameter\n * @constructor\n */\n function ShapeParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ShapeParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n ShapeParameter.prototype.constructor = ShapeParameter;\n\n /**\n * Get the sensitivity of the reject detection\n *\n * @method getRejectDetectionSensitivity\n * @returns {Boolean}\n */\n ShapeParameter.prototype.getRejectDetectionSensitivity = function () {\n return this.rejectDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the reject detection\n *\n * @method setRejectDetectionSensitivity\n * @param {Boolean} rejectDetectionSensitivity\n */\n ShapeParameter.prototype.setRejectDetectionSensitivity = function (rejectDetectionSensitivity) {\n this.rejectDetectionSensitivity = rejectDetectionSensitivity;\n };\n\n /**\n * Get the beautification\n *\n * @method hasBeautification\n * @returns {Boolean}\n */\n ShapeParameter.prototype.hasBeautification = function () {\n return this.doBeautification;\n };\n\n /**\n * Set the beautification\n *\n * @method setBeautification\n * @param {Boolean} doBeautification\n */\n ShapeParameter.prototype.setBeautification = function (doBeautification) {\n this.doBeautification = doBeautification;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n ShapeParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n ShapeParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n // Export\n scope.ShapeParameter = ShapeParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for shape recognition\n *\n * @class ShapeRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function ShapeRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n ShapeRecognitionInput.prototype.constructor = ShapeRecognitionInput;\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n ShapeRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n ShapeRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n /**\n * Get the beautification\n *\n * @method getDoBeautification\n * @returns {Boolean}\n */\n ShapeRecognitionInput.prototype.getDoBeautification = function () {\n return this.doBeautification;\n };\n\n /**\n * Set the beautification\n *\n * @method setDoBeautification\n * @param {Boolean} doBeautification\n */\n ShapeRecognitionInput.prototype.setDoBeautification = function (doBeautification) {\n this.doBeautification = doBeautification;\n };\n\n /**\n * Get the sensitivity of the reject detection\n *\n * @method getRejectDetectionSensitivity\n * @returns {Number}\n */\n ShapeRecognitionInput.prototype.getRejectDetectionSensitivity = function () {\n return this.rejectDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the reject detection\n *\n * @method setRejectDetectionSensitivity\n * @param {Number} rejectDetectionSensitivity\n */\n ShapeRecognitionInput.prototype.setRejectDetectionSensitivity = function (rejectDetectionSensitivity) {\n this.rejectDetectionSensitivity = rejectDetectionSensitivity;\n };\n\n // Export\n scope.ShapeRecognitionInput = ShapeRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for shape input\n *\n * @class ShapeRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function ShapeRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n ShapeRecognitionData.prototype.constructor = ShapeRecognitionData;\n\n /**\n * Get shape input\n *\n * @method getShapeRecognitionInput\n * @returns {ShapeRecognitionInput}\n */\n ShapeRecognitionData.prototype.getShapeRecognitionInput = function () {\n return this.shapeInput;\n };\n\n /**\n * Set shape input\n *\n * @method setShapeRecognitionInput\n * @param {ShapeRecognitionInput} input\n */\n ShapeRecognitionData.prototype.setShapeRecognitionInput = function (input) {\n this.shapeInput = JSON.stringify(input);\n };\n\n // Export\n scope.ShapeRecognitionData = ShapeRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for math recognition\n *\n * @class MathParameter\n * @extends AbstractParameter\n * @constructor\n */\n function MathParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n this.resultTypes = [];\n this.userResources = [];\n }\n\n /**\n * Inheritance property\n */\n MathParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n MathParameter.prototype.constructor = MathParameter;\n\n /**\n * Get the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MathParameter.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MathParameter.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the math result result orientation to columnar operations\n *\n * @method isColumnar\n * @returns {Boolean}\n */\n MathParameter.prototype.isColumnar = function () {\n return this.columnarOperation;\n };\n\n /**\n * Set the math result orientation to columnar operations\n *\n * @method setColumnar\n * @param {Boolean} columnar\n */\n MathParameter.prototype.setColumnar = function (columnar) {\n this.columnarOperation = columnar;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MathParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MathParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MathParameter.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MathParameter.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n\n // Export\n scope.MathParameter = MathParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for math recognition\n *\n * @class MathRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function MathRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n MathRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n MathRecognitionInput.prototype.constructor = MathRecognitionInput;\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n MathRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n MathRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n /**\n * Get the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MathRecognitionInput.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the math result types (e.g. LaTex, MathML, SymbolTree)\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MathRecognitionInput.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the math result result orientation to columnar operations\n *\n * @method isColumnar\n * @returns {Boolean}\n */\n MathRecognitionInput.prototype.isColumnar = function () {\n return this.columnarOperation;\n };\n\n /**\n * Set the math result orientation to columnar operations\n *\n * @method setColumnar\n * @param {Boolean} columnar\n */\n MathRecognitionInput.prototype.setColumnar = function (columnar) {\n this.columnarOperation = columnar;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MathRecognitionInput.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MathRecognitionInput.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MathRecognitionInput.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MathRecognitionInput.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n // Export\n scope.MathRecognitionInput = MathRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for math input\n *\n * @class MathRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function MathRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n MathRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n MathRecognitionData.prototype.constructor = MathRecognitionData;\n\n /**\n * Get math input\n *\n * @method getMathRecognitionInput\n * @returns {MathRecognitionInput}\n */\n MathRecognitionData.prototype.getMathRecognitionInput = function () {\n return this.mathInput;\n };\n\n /**\n * Set math input\n *\n * @method setMathRecognitionInput\n * @param {MathRecognitionInput} input\n */\n MathRecognitionData.prototype.setMathRecognitionInput = function (input) {\n this.mathInput = JSON.stringify(input);\n\n };\n\n // Export\n scope.MathRecognitionData = MathRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket start math recognition message\n *\n * @class MathStartRequestWSMessage\n * @extends AbstractStartRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function MathStartRequestWSMessage(obj) {\n scope.AbstractStartRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathStartRequestWSMessage.prototype = new scope.AbstractStartRequestWSMessage();\n\n /**\n * Constructor property\n */\n MathStartRequestWSMessage.prototype.constructor = MathStartRequestWSMessage;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MathParameter}\n */\n MathStartRequestWSMessage.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MathParameter} parameters\n */\n MathStartRequestWSMessage.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Get components\n *\n * @method getComponents\n * @returns {MathInputUnit[]}\n */\n MathStartRequestWSMessage.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set components\n *\n * @method setComponents\n * @param {MathInputUnit[]} components\n */\n MathStartRequestWSMessage.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.MathStartRequestWSMessage = MathStartRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket continue math recognition message\n *\n * @class MathContinueRequestWSMessage\n * @extends AbstractContinueRequestWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function MathContinueRequestWSMessage(obj) {\n this.type = 'continue';\n scope.AbstractContinueRequestWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathContinueRequestWSMessage.prototype = new scope.AbstractContinueRequestWSMessage();\n\n /**\n * Constructor property\n */\n MathContinueRequestWSMessage.prototype.constructor = MathContinueRequestWSMessage;\n\n /**\n * Get components\n *\n * @method getComponents\n * @returns {MathInputUnit[]}\n */\n MathContinueRequestWSMessage.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set components\n *\n * @method setComponents\n * @param {MathInputUnit[]} components\n */\n MathContinueRequestWSMessage.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.MathContinueRequestWSMessage = MathContinueRequestWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract music input component\n *\n * @class AbstractMusicInputComponent\n * @extends AbstractComponent\n * @constructor\n */\n function AbstractMusicInputComponent() {\n }\n\n /**\n * Inheritance property\n */\n AbstractMusicInputComponent.prototype = new scope.AbstractComponent();\n\n /**\n * Constructor property\n */\n AbstractMusicInputComponent.prototype.constructor = AbstractMusicInputComponent;\n\n /**\n * Get input component bounding-box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AbstractMusicInputComponent.prototype.getBoundingBox = function () {\n return this.boundingBox;\n };\n\n /**\n * Set input component bounding-box\n *\n * @method setBoundingBox\n * @param {Rectangle} boundingBox\n */\n AbstractMusicInputComponent.prototype.setBoundingBox = function (boundingBox) {\n this.boundingBox = boundingBox;\n };\n\n // Export\n scope.AbstractMusicInputComponent = AbstractMusicInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Accidental input component\n *\n * @class MusicAccidentalInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicAccidentalInputComponent() {\n this.type = 'accidental';\n }\n\n /**\n * Inheritance property\n */\n MusicAccidentalInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicAccidentalInputComponent.prototype.constructor = MusicAccidentalInputComponent;\n\n /**\n * Get accidental input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicAccidentalInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set accidental input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicAccidentalInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicAccidentalInputComponent = MusicAccidentalInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Arpeggiate input component\n *\n * @class MusicArpeggiateInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicArpeggiateInputComponent() {\n this.type = 'arpeggiate';\n }\n\n /**\n * Inheritance property\n */\n MusicArpeggiateInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicArpeggiateInputComponent.prototype.constructor = MusicArpeggiateInputComponent;\n\n /**\n * Get arpeggiate input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicArpeggiateInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set arpeggiate input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicArpeggiateInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicArpeggiateInputComponent = MusicArpeggiateInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music bar input\n *\n * @class MusicBarInput\n * @constructor\n */\n function MusicBarInput() {\n }\n\n /**\n * Get repeat direction\n *\n * @method getRepeatDirection\n * @returns {String}\n */\n MusicBarInput.prototype.getRepeatDirection = function () {\n return this.repeatDirection;\n };\n\n /**\n * Set repeat direction\n *\n * @method setRepeatDirection\n * @param {String} repeatDirection\n */\n MusicBarInput.prototype.setRepeatDirection = function (repeatDirection) {\n this.repeatDirection = repeatDirection;\n };\n\n /**\n * Get style\n *\n * @method getStyle\n * @returns {String}\n */\n MusicBarInput.prototype.getStyle = function () {\n return this.style;\n };\n\n /**\n * Set style\n *\n * @method setStyle\n * @param {String} style\n */\n MusicBarInput.prototype.setStyle = function (style) {\n this.style = style;\n };\n\n // Export\n scope.MusicBarInput = MusicBarInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Bar input component\n *\n * @class MusicBarInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicBarInputComponent() {\n this.type = 'bar';\n this.value = new scope.MusicBarInput();\n }\n\n /**\n * Inheritance property\n */\n MusicBarInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicBarInputComponent.prototype.constructor = MusicBarInputComponent;\n\n /**\n * Get bar input component value\n *\n * @method getValue\n * @returns {MusicBarInput}\n */\n MusicBarInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set bar input component value\n *\n * @method setValue\n * @param {MusicBarInput} value\n */\n MusicBarInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicBarInputComponent = MusicBarInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music beam input\n *\n * @class MusicBeamInput\n * @constructor\n */\n function MusicBeamInput() {\n }\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicBeamInput.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Set placement\n *\n * @method setPlacement\n * @param {String} placement\n */\n MusicBeamInput.prototype.setPlacement = function (placement) {\n this.placement = placement;\n };\n\n /**\n * Get slope\n *\n * @method getSlope\n * @returns {String}\n */\n MusicBeamInput.prototype.getSlope = function () {\n return this.slope;\n };\n\n /**\n * Set slope\n *\n * @method setSlope\n * @param {String} slope\n */\n MusicBeamInput.prototype.setSlope = function (slope) {\n this.slope = slope;\n };\n\n /**\n * Get left count\n *\n * @method getLeftCount\n * @returns {Number}\n */\n MusicBeamInput.prototype.getLeftCount = function () {\n return this.leftCount;\n };\n\n /**\n * Set left count\n *\n * @method setLeftCount\n * @param {Number} leftCount\n */\n MusicBeamInput.prototype.setLeftCount = function (leftCount) {\n this.leftCount = leftCount;\n };\n\n /**\n * Get right count\n *\n * @method getRightCount\n * @returns {Number}\n */\n MusicBeamInput.prototype.getRightCount = function () {\n return this.rightCount;\n };\n\n /**\n * Set right count\n *\n * @method setRightCount\n * @param {Number} rightCount\n */\n MusicBeamInput.prototype.setRightCount = function (rightCount) {\n this.rightCount = rightCount;\n };\n\n /**\n * Get gap\n *\n * @method getGap\n * @returns {Number}\n */\n MusicBeamInput.prototype.getGap = function () {\n return this.gap;\n };\n\n /**\n * Set gap\n *\n * @method setGap\n * @param {Number} gap\n */\n MusicBeamInput.prototype.setGap = function (gap) {\n this.gap = gap;\n };\n\n // Export\n scope.MusicBeamInput = MusicBeamInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Beam input component\n *\n * @class MusicBeamInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicBeamInputComponent() {\n this.type = 'beam';\n this.value = new scope.MusicBeamInput();\n }\n\n /**\n * Inheritance property\n */\n MusicBeamInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicBeamInputComponent.prototype.constructor = MusicBeamInputComponent;\n\n /**\n * Get beam input component value\n *\n * @method getValue\n * @returns {MusicBeamInput}\n */\n MusicBeamInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set beam input component value\n *\n * @method setValue\n * @param {MusicBeamInput} value\n */\n MusicBeamInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicBeamInputComponent = MusicBeamInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music clef input\n * default values: symbol='G', octave=0\n *\n * @class MusicClefInput\n * @constructor\n */\n function MusicClefInput() {\n this.symbol = 'G';\n this.octave = 0;\n }\n\n /**\n * Get y anchor\n *\n * @method getYAnchor\n * @returns {Number}\n */\n MusicClefInput.prototype.getYAnchor = function () {\n return this.yAnchor;\n };\n\n /**\n * Set y anchor\n *\n * @method setYAnchor\n * @param {Number} yAnchor\n */\n MusicClefInput.prototype.setYAnchor = function (yAnchor) {\n this.yAnchor = yAnchor;\n };\n\n /**\n * Get octave\n *\n * @method getOctave\n * @returns {Number}\n */\n MusicClefInput.prototype.getOctave = function () {\n return this.octave;\n };\n\n /**\n * Set octave\n *\n * @method setOctave\n * @param {Number} octave\n */\n MusicClefInput.prototype.setOctave = function (octave) {\n this.octave = octave;\n };\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicClefInput.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n /**\n * Set symbol\n *\n * @method setSymbol\n * @param {String} symbol\n */\n MusicClefInput.prototype.setSymbol = function (symbol) {\n this.symbol = symbol;\n };\n\n // Export\n scope.MusicClefInput = MusicClefInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Clef input component\n * default clef values: symbol='G', octave=0\n *\n * @class MusicClefInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicClefInputComponent() {\n this.type = 'clef';\n this.value = new scope.MusicClefInput();\n }\n\n /**\n * Inheritance property\n */\n MusicClefInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicClefInputComponent.prototype.constructor = MusicClefInputComponent;\n\n /**\n * Get clef input component value\n *\n * @method getValue\n * @returns {MusicClefInput}\n */\n MusicClefInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set clef input component value\n *\n * @method setValue\n * @param {MusicClefInput} value\n */\n MusicClefInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicClefInputComponent = MusicClefInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music decoration input\n *\n * @class MusicDecorationInput\n * @constructor\n */\n function MusicDecorationInput() {\n }\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicDecorationInput.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n /**\n * Set symbol\n *\n * @method setSymbol\n * @param {String} symbol\n */\n MusicDecorationInput.prototype.setSymbol = function (symbol) {\n this.symbol = symbol;\n };\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicDecorationInput.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Set placement\n *\n * @method setPlacement\n * @param {String} placement\n */\n MusicDecorationInput.prototype.setPlacement = function (placement) {\n this.placement = placement;\n };\n\n // Export\n scope.MusicDecorationInput = MusicDecorationInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Decoration input component\n *\n * @class MusicDecorationInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicDecorationInputComponent() {\n this.type = 'decoration';\n this.value = new scope.MusicDecorationInput();\n }\n\n /**\n * Inheritance property\n */\n MusicDecorationInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicDecorationInputComponent.prototype.constructor = MusicDecorationInputComponent;\n\n /**\n * Get decoration input component value\n *\n * @method getValue\n * @returns {MusicDecorationInput}\n */\n MusicDecorationInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set decoration input component value\n *\n * @method setValue\n * @param {MusicDecorationInput} value\n */\n MusicDecorationInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicDecorationInputComponent = MusicDecorationInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Dots input component\n *\n * @class MusicDotsInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicDotsInputComponent() {\n this.type = 'dots';\n }\n\n /**\n * Inheritance property\n */\n MusicDotsInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicDotsInputComponent.prototype.constructor = MusicDotsInputComponent;\n\n /**\n * Get dots input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicDotsInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set dots input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicDotsInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicDotsInputComponent = MusicDotsInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Head input component\n *\n * @class MusicHeadInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicHeadInputComponent() {\n this.type = 'head';\n }\n\n /**\n * Inheritance property\n */\n MusicHeadInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicHeadInputComponent.prototype.constructor = MusicHeadInputComponent;\n\n /**\n * Get head input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicHeadInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set head input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicHeadInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicHeadInputComponent = MusicHeadInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Ledger line input component\n *\n * @class MusicLedgerLineInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicLedgerLineInputComponent() {\n this.type = 'ledgerLine';\n }\n\n /**\n * Inheritance property\n */\n MusicLedgerLineInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicLedgerLineInputComponent.prototype.constructor = MusicLedgerLineInputComponent;\n\n // Export\n scope.MusicLedgerLineInputComponent = MusicLedgerLineInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Rest input component\n *\n * @class MusicRestInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicRestInputComponent() {\n this.type = 'rest';\n }\n\n /**\n * Inheritance property\n */\n MusicRestInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicRestInputComponent.prototype.constructor = MusicRestInputComponent;\n\n /**\n * Get rest input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicRestInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set rest input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicRestInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicRestInputComponent = MusicRestInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Stem input component\n *\n * @class MusicStemInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicStemInputComponent() {\n this.type = 'stem';\n }\n\n /**\n * Inheritance property\n */\n MusicStemInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicStemInputComponent.prototype.constructor = MusicStemInputComponent;\n\n /**\n * Get stem input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicStemInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set stem input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicStemInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicStemInputComponent = MusicStemInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Tie ro slur input component\n *\n * @class MusicTieOrSlurInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicTieOrSlurInputComponent() {\n this.type = 'tieOrSlur';\n }\n\n /**\n * Inheritance property\n */\n MusicTieOrSlurInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicTieOrSlurInputComponent.prototype.constructor = MusicTieOrSlurInputComponent;\n\n /**\n * Get tie or slur input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicTieOrSlurInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set tie or slur input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicTieOrSlurInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicTieOrSlurInputComponent = MusicTieOrSlurInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Time signature input component\n *\n * @class MusicTimeSignatureInputComponent\n * @extends AbstractMusicInputComponent\n * @constructor\n */\n function MusicTimeSignatureInputComponent() {\n this.type = 'timeSignature';\n }\n\n /**\n * Inheritance property\n */\n MusicTimeSignatureInputComponent.prototype = new scope.AbstractMusicInputComponent();\n\n /**\n * Constructor property\n */\n MusicTimeSignatureInputComponent.prototype.constructor = MusicTimeSignatureInputComponent;\n\n /**\n * Get time signature input component value\n *\n * @method getValue\n * @returns {String}\n */\n MusicTimeSignatureInputComponent.prototype.getValue = function () {\n return this.value;\n };\n\n /**\n * Set time signature input component value\n *\n * @method setValue\n * @param {String} value\n */\n MusicTimeSignatureInputComponent.prototype.setValue = function (value) {\n this.value = value;\n };\n\n // Export\n scope.MusicTimeSignatureInputComponent = MusicTimeSignatureInputComponent;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represents a staff used for music recognition\n * default values: count=5, gap=20\n *\n * @class MusicStaff\n * @constructor\n */\n function MusicStaff() {\n this.count = 5;\n this.gap = 20;\n }\n\n /**\n * Get the lines count\n *\n * @method getCount\n * @returns {Number}\n */\n MusicStaff.prototype.getCount = function () {\n return this.count;\n };\n\n /**\n * Set the lines count\n *\n * @method setCount\n * @param {Number} count\n */\n MusicStaff.prototype.setCount = function (count) {\n this.count = count;\n };\n\n /**\n * Get the spacing from the top\n *\n * @method getTop\n * @returns {Number}\n */\n MusicStaff.prototype.getTop = function () {\n return this.top;\n };\n\n /**\n * Set the spacing from the top\n *\n * @method setTop\n * @param {Number} top\n */\n MusicStaff.prototype.setTop = function (top) {\n this.top = top;\n };\n\n /**\n * Get the gap between lines\n *\n * @method getGap\n * @returns {Number}\n */\n MusicStaff.prototype.getGap = function () {\n return this.gap;\n };\n\n /**\n * Set the gap between lines\n *\n * @method setGap\n * @param {Number} gap\n */\n MusicStaff.prototype.setGap = function (gap) {\n this.gap = gap;\n };\n\n // Export\n scope.MusicStaff = MusicStaff;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for music recognition\n *\n * @class MusicParameter\n * @extends AbstractParameter\n * @constructor\n */\n function MusicParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n this.resultTypes = [];\n this.userResources = [];\n }\n\n /**\n * Inheritance property\n */\n MusicParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n MusicParameter.prototype.constructor = MusicParameter;\n\n /**\n * Get the music result types (e.g. MusicXML, ScoreTree)\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MusicParameter.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the music result types (e.g. MusicXML, ScoreTree)\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MusicParameter.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MusicParameter.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MusicParameter.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MusicParameter.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MusicParameter.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n\n /**\n * Get the staff\n *\n * @method getStaff\n * @returns {MusicStaff}\n */\n MusicParameter.prototype.getStaff = function () {\n return this.staff;\n };\n\n /**\n * Set the staff\n *\n * @method setStaff\n * @param {MusicStaff} staff\n */\n MusicParameter.prototype.setStaff = function (staff) {\n this.staff = staff;\n };\n\n /**\n * Get the number of divisions\n *\n * @method getDivisions\n * @returns {Number}\n */\n MusicParameter.prototype.getDivisions = function () {\n return this.divisions;\n };\n\n /**\n * Set the number of divisions\n *\n * @method setDivisions\n * @param {Number} divisions\n */\n MusicParameter.prototype.setDivisions = function (divisions) {\n this.divisions = divisions;\n };\n\n // Export\n scope.MusicParameter = MusicParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for music recognition\n *\n * @class MusicRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function MusicRecognitionInput() {\n }\n\n /**\n * Inheritance property\n */\n MusicRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n MusicRecognitionInput.prototype.constructor = MusicRecognitionInput;\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n MusicRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n MusicRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n /**\n * Get the result types\n *\n * @method getResultTypes\n * @returns {Array}\n */\n MusicRecognitionInput.prototype.getResultTypes = function () {\n return this.resultTypes;\n };\n\n /**\n * Set the result types\n *\n * @method setResultTypes\n * @param {Array} resultTypes\n */\n MusicRecognitionInput.prototype.setResultTypes = function (resultTypes) {\n this.resultTypes = resultTypes;\n };\n\n /**\n * Get the user resources\n *\n * @method getUserResources\n * @returns {Array}\n */\n MusicRecognitionInput.prototype.getUserResources = function () {\n return this.userResources;\n };\n\n /**\n * Set the user resources\n *\n * @method setUserResources\n * @param {Array} userResources\n */\n MusicRecognitionInput.prototype.setUserResources = function (userResources) {\n this.userResources = userResources;\n };\n\n /**\n * Get the sensitivity of the scratch-out detection\n *\n * @method getScratchOutDetectionSensitivity\n * @returns {Number}\n */\n MusicRecognitionInput.prototype.getScratchOutDetectionSensitivity = function () {\n return this.scratchOutDetectionSensitivity;\n };\n\n /**\n * Set the sensitivity of the scratch-out detection\n *\n * @method setScratchOutDetectionSensitivity\n * @param {Number} scratchOutDetectionSensitivity\n */\n MusicRecognitionInput.prototype.setScratchOutDetectionSensitivity = function (scratchOutDetectionSensitivity) {\n this.scratchOutDetectionSensitivity = scratchOutDetectionSensitivity;\n };\n\n /**\n * Get the staff\n *\n * @method getStaff\n * @returns {MusicStaff}\n */\n MusicRecognitionInput.prototype.getStaff = function () {\n return this.staff;\n };\n\n /**\n * Set the staff\n *\n * @method setStaff\n * @param {MusicStaff} staff\n */\n MusicRecognitionInput.prototype.setStaff = function (staff) {\n this.staff = staff;\n };\n\n /**\n * Get the number of divisions\n *\n * @method getDivisions\n * @returns {Number}\n */\n MusicRecognitionInput.prototype.getDivisions = function () {\n return this.divisions;\n };\n\n /**\n * Set the number of divisions\n *\n * @method setDivisions\n * @param {Number} divisions\n */\n MusicRecognitionInput.prototype.setDivisions = function (divisions) {\n this.divisions = divisions;\n };\n\n // Export\n scope.MusicRecognitionInput = MusicRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for music input\n *\n * @class MusicRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function MusicRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n MusicRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n MusicRecognitionData.prototype.constructor = MusicRecognitionData;\n\n /**\n * Get music input\n *\n * @method getMusicRecognitionInput\n * @returns {MusicRecognitionInput}\n */\n MusicRecognitionData.prototype.getMusicRecognitionInput = function () {\n return this.musicInput;\n };\n\n /**\n * Set music input\n *\n * @method setMusicRecognitionInput\n * @param {MusicRecognitionInput} input\n */\n MusicRecognitionData.prototype.setMusicRecognitionInput = function (input) {\n this.musicInput = JSON.stringify(input);\n };\n\n // Export\n scope.MusicRecognitionData = MusicRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for analyzer recognition\n *\n * @class AnalyzerParameter\n * @extends AbstractParameter\n * @constructor\n */\n function AnalyzerParameter(obj) {\n scope.AbstractParameter.call(this, obj);\n this.textParameter = new scope.TextParameter();\n this.textParameter.setLanguage('en_US');\n this.textParameter.setInputMode('CURSIVE');\n }\n\n /**\n * Inheritance property\n */\n AnalyzerParameter.prototype = new scope.AbstractParameter();\n\n /**\n * Constructor property\n */\n AnalyzerParameter.prototype.constructor = AnalyzerParameter;\n\n /**\n * Get text recognition parameters\n *\n * @method getTextParameters\n * @returns {TextParameter}\n */\n AnalyzerParameter.prototype.getTextParameters = function () {\n return this.textParameter;\n };\n\n /**\n * Set text recognition parameters\n *\n * @method setTextParameters\n * @param {TextParameter} parameters\n */\n AnalyzerParameter.prototype.setTextParameters = function (parameters) {\n this.textParameter = parameters;\n };\n\n /**\n * Get analyzer coordinate resolution\n *\n * @method getCoordinateResolution\n * @returns {Number}\n */\n AnalyzerParameter.prototype.getCoordinateResolution = function () {\n return this.coordinateResolution;\n };\n\n /**\n * Set analyzer coordinate resolution\n *\n * @method setCoordinateResolution\n * @param {Number} coordinateResolution\n */\n AnalyzerParameter.prototype.setCoordinateResolution = function (coordinateResolution) {\n this.coordinateResolution = coordinateResolution;\n };\n\n // Export\n scope.AnalyzerParameter = AnalyzerParameter;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition input object for analyzer recognition\n *\n * @class AnalyzerRecognitionInput\n * @extends AbstractRecognitionInput\n * @constructor\n */\n function AnalyzerRecognitionInput() {\n\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRecognitionInput.prototype = new scope.AbstractRecognitionInput();\n\n /**\n * Constructor property\n */\n AnalyzerRecognitionInput.prototype.constructor = AnalyzerRecognitionInput;\n\n /**\n * Get analyzer recognition parameters\n *\n * @method getParameters\n * @returns {AnalyzerParameter}\n */\n AnalyzerRecognitionInput.prototype.getParameters = function () {\n return this.parameter;\n };\n\n /**\n * Set analyzer recognition parameters\n *\n * @method setParameters\n * @param {AnalyzerParameter} parameters\n */\n AnalyzerRecognitionInput.prototype.setParameters = function (parameters) {\n this.parameter = parameters;\n };\n\n /**\n * Get input components\n *\n * @method getComponents\n * @returns {AbstractComponent[]}\n */\n AnalyzerRecognitionInput.prototype.getComponents = function () {\n return this.components;\n };\n\n /**\n * Set input components\n *\n * @method setComponents\n * @param {AbstractComponent[]} components\n */\n AnalyzerRecognitionInput.prototype.setComponents = function (components) {\n this.components = components;\n };\n\n // Export\n scope.AnalyzerRecognitionInput = AnalyzerRecognitionInput;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Recognition data for analyzer input\n *\n * @class AnalyzerRecognitionData\n * @extends AbstractRecognitionData\n * @constructor\n */\n function AnalyzerRecognitionData() {\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRecognitionData.prototype = new scope.AbstractRecognitionData();\n\n /**\n * Constructor property\n */\n AnalyzerRecognitionData.prototype.constructor = AnalyzerRecognitionData;\n\n /**\n * Get analyzer input\n *\n * @method getAnalyzerRecognitionInput\n * @returns {AnalyzerRecognitionInput}\n */\n AnalyzerRecognitionData.prototype.getAnalyzerRecognitionInput = function () {\n return this.analyzerInput;\n };\n\n /**\n * Set analyzer input\n *\n * @method setAnalyzerRecognitionInput\n * @param {AnalyzerRecognitionInput} input\n */\n AnalyzerRecognitionData.prototype.setAnalyzerRecognitionInput = function (input) {\n this.analyzerInput = JSON.stringify(input);\n };\n\n // Export\n scope.AnalyzerRecognitionData = AnalyzerRecognitionData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract result\n *\n * @class AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function AbstractResult(obj) {\n if (obj) {\n this.instanceId = obj.instanceId;\n }\n }\n\n /**\n * Get instance id\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractResult.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n // Export\n scope.AbstractResult = AbstractResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition text result message\n *\n * @class AbstractRecoResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function AbstractRecoResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n if (obj) {\n this.instanceId = obj.instanceId;\n }\n }\n\n /**\n * Inheritance property\n */\n AbstractRecoResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n AbstractRecoResponseWSMessage.prototype.constructor = AbstractRecoResponseWSMessage;\n\n /**\n * Get instance id\n *\n * @method getInstanceId\n * @returns {String}\n */\n AbstractRecoResponseWSMessage.prototype.getInstanceId = function () {\n return this.instanceId;\n };\n\n // Export\n scope.AbstractRecoResponseWSMessage = AbstractRecoResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition hmac challenge message\n *\n * @class ChallengeResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ChallengeResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n if (obj) {\n this.challenge = obj.challenge;\n }\n }\n\n /**\n * Inheritance property\n */\n ChallengeResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ChallengeResponseWSMessage.prototype.constructor = ChallengeResponseWSMessage;\n\n /**\n * Get the challenge\n *\n * @method getChallenge\n * @returns {String}\n */\n ChallengeResponseWSMessage.prototype.getChallenge = function () {\n return this.challenge;\n };\n\n // Export\n scope.ChallengeResponseWSMessage = ChallengeResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition error message\n *\n * @class ErrorResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function ErrorResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n if (obj) {\n this.error = obj.error;\n }\n }\n\n /**\n * Inheritance property\n */\n ErrorResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n ErrorResponseWSMessage.prototype.constructor = ErrorResponseWSMessage;\n\n /**\n * Get the error\n *\n * @method getError\n * @returns {String}\n */\n ErrorResponseWSMessage.prototype.getError = function () {\n return this.error;\n };\n\n // Export\n scope.ErrorResponseWSMessage = ErrorResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition init message\n *\n * @class InitResponseWSMessage\n * @extends AbstractWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function InitResponseWSMessage(obj) {\n scope.AbstractWSMessage.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n InitResponseWSMessage.prototype = new scope.AbstractWSMessage();\n\n /**\n * Constructor property\n */\n InitResponseWSMessage.prototype.constructor = InitResponseWSMessage;\n\n // Export\n scope.InitResponseWSMessage = InitResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text ink ranges\n *\n * @class TextInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function TextInkRange(obj) {\n if (obj) {\n var cpt = obj.split(/[:-]+/);\n this.startUnit = Number(cpt[0]);\n this.startComponent = Number(cpt[1]);\n this.startPoint = Number(cpt[2]);\n this.endUnit = Number(cpt[3]);\n this.endComponent = Number(cpt[4]);\n this.endPoint = Number(cpt[5]);\n }\n }\n\n /**\n * Get start unit\n *\n * @method getStartUnit\n * @returns {Number}\n */\n TextInkRange.prototype.getStartUnit = function () {\n return this.startUnit;\n };\n\n /**\n * Get end unit\n *\n * @method getEndUnit\n * @returns {Number}\n */\n TextInkRange.prototype.getEndUnit = function () {\n return this.endUnit;\n };\n\n /**\n * Get start component\n *\n * @method getStartComponent\n * @returns {Number}\n */\n TextInkRange.prototype.getStartComponent = function () {\n return this.startComponent;\n };\n\n /**\n * Get end component\n *\n * @method getEndComponent\n * @returns {Number}\n */\n TextInkRange.prototype.getEndComponent = function () {\n return this.endComponent;\n };\n\n /**\n * Get start point\n *\n * @method getStartPoint\n * @returns {Number}\n */\n TextInkRange.prototype.getStartPoint = function () {\n return this.startPoint;\n };\n\n /**\n * Get end point\n *\n * @method getEndPoint\n * @returns {Number}\n */\n TextInkRange.prototype.getEndPoint = function () {\n return this.endPoint;\n };\n\n // Export\n scope.TextInkRange = TextInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text candidate\n *\n * @class TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextCandidate(obj) {\n this.flags = [];\n if (obj) {\n this.label = obj.label;\n this.normalizedScore = obj.normalizedScore;\n this.spellingDistortionRatio = obj.spellingDistortionRatio;\n for (var j in obj.flags) {\n this.flags.push(obj.flags[j]);\n }\n }\n }\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n TextCandidate.prototype.getLabel = function () {\n return this.label;\n };\n\n /**\n * Get normalized score\n *\n * @method getNormalizedScore\n * @returns {Number}\n */\n TextCandidate.prototype.getNormalizedScore = function () {\n return this.normalizedScore;\n };\n\n /**\n * Get resemblance score\n *\n * @method getResemblanceScore\n * @returns {Number}\n */\n TextCandidate.prototype.getResemblanceScore = function () {\n return this.resemblanceScore;\n };\n\n /**\n * Get spelling distortion ratio\n *\n * @method getSpellingDistortionRatio\n * @returns {Number}\n */\n TextCandidate.prototype.getSpellingDistortionRatio = function () {\n return this.spellingDistortionRatio;\n };\n\n /**\n * Get flags\n *\n * @method getFlags\n * @returns {Array}\n */\n TextCandidate.prototype.getFlags = function () {\n return this.flags;\n };\n\n // Export\n scope.TextCandidate = TextCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextCharCandidate\n * @extends TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextCharCandidate(obj) {\n scope.TextCandidate.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n TextCharCandidate.prototype = new scope.TextCandidate();\n\n /**\n * Constructor property\n */\n TextCharCandidate.prototype.constructor = TextCharCandidate;\n\n // Export\n scope.TextCharCandidate = TextCharCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextWordCandidate\n * @extends TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextWordCandidate(obj) {\n scope.TextCandidate.call(this, obj);\n this.children = [];\n if (obj) {\n for (var i in obj.children) {\n this.children.push(new scope.TextCharSegment(obj.children[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextWordCandidate.prototype = new scope.TextCandidate();\n\n /**\n * Constructor property\n */\n TextWordCandidate.prototype.constructor = TextWordCandidate;\n\n /**\n * Get children\n *\n * @method getChildren\n * @returns {TextCharSegment[]}\n */\n TextWordCandidate.prototype.getChildren = function () {\n return this.children;\n };\n\n // Export\n scope.TextWordCandidate = TextWordCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextResultCandidate\n * @extends TextCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function TextResultCandidate(obj) {\n scope.TextCandidate.call(this, obj);\n this.children = [];\n if (obj) {\n for (var i in obj.children) {\n this.children.push(new scope.TextWordSegment(obj.children[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResultCandidate.prototype = new scope.TextCandidate();\n\n /**\n * Constructor property\n */\n TextResultCandidate.prototype.constructor = TextResultCandidate;\n\n /**\n * Get children\n *\n * @method getChildren\n * @returns {TextWordSegment[]}\n */\n TextResultCandidate.prototype.getChildren = function () {\n return this.children;\n };\n\n // Export\n scope.TextResultCandidate = TextResultCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text document\n *\n * @class TextDocument\n * @param {Object} [obj]\n * @constructor\n */\n function TextDocument(obj) {\n this.tagItems = [];\n this.wordCandidates = [];\n this.charCandidates = [];\n if (obj) {\n if (obj.textSegmentResult) {\n this.textSegmentResult = new scope.TextResultSegment(obj.textSegmentResult);\n }\n for (var i in obj.tagItems) {\n this.tagItems.push(new scope.TextTagItem(obj.tagItems[i]));\n }\n for (var j in obj.wordCandidates) {\n this.wordCandidates.push(new scope.TextWordSegment(obj.wordCandidates[j]));\n }\n for (var k in obj.charCandidates) {\n this.charCandidates.push(new scope.TextCharSegment(obj.charCandidates[k]));\n }\n }\n }\n\n /**\n * Get tag items\n *\n * @method getTagItems\n * @returns {TextTagItem[]}\n */\n TextDocument.prototype.getTagItems = function () {\n return this.tagItems;\n };\n\n /**\n * Get word segments\n *\n * @method getWordSegments\n * @returns {TextWordSegment[]}\n */\n TextDocument.prototype.getWordSegments = function () {\n return this.wordCandidates;\n };\n\n /**\n * Get word segment\n *\n * @method getWordSegment\n * @param {TextInkRange[]} inkRanges\n * @returns {TextWordSegment}\n */\n TextDocument.prototype.getWordSegment = function (inkRanges) {\n for (var i = 0; i < this.getWordSegments().length; i++) {\n if (JSON.stringify(this.getWordSegments()[i].getInkRanges()) === JSON.stringify(inkRanges)) {\n return this.getWordSegments()[i];\n }\n }\n return undefined;\n };\n\n /**\n * Get char segments\n *\n * @method getCharSegments\n * @returns {TextCharSegment[]}\n */\n TextDocument.prototype.getCharSegments = function () {\n return this.charCandidates;\n };\n\n /**\n * Get char segment\n *\n * @method getCharSegment\n * @param {TextInkRange[]} inkRanges\n * @returns {TextCharSegment}\n */\n TextDocument.prototype.getCharSegment = function (inkRanges) {\n for (var i = 0; i < this.getCharSegments().length; i++) {\n if (JSON.stringify(this.getCharSegments()[i].getInkRanges()) === JSON.stringify(inkRanges)) {\n return this.getCharSegments()[i];\n }\n }\n return undefined;\n };\n\n /**\n * Get text segment\n *\n * @method getTextSegment\n * @returns {TextResultSegment}\n */\n TextDocument.prototype.getTextSegment = function () {\n return this.textSegmentResult;\n };\n\n // Export\n scope.TextDocument = TextDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text result\n *\n * @class TextResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function TextResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n if (obj.result) {\n this.result = new scope.TextDocument(obj.result);\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n TextResult.prototype.constructor = TextResult;\n\n /**\n * Get text document\n *\n * @method getTextDocument\n * @returns {TextDocument}\n */\n TextResult.prototype.getTextDocument = function () {\n return this.result;\n };\n\n // Export\n scope.TextResult = TextResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextSegment(obj) {\n this.candidates = [];\n this.inkRanges = [];\n if (obj) {\n this.selectedCandidateIdx = obj.selectedCandidateIdx;\n if (obj.inkRanges) {\n var ranges = obj.inkRanges.split(/[\\s]+/);\n for (var j in ranges) {\n this.inkRanges.push(new scope.TextInkRange(ranges[j]));\n }\n }\n }\n }\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {TextCandidate[]}\n */\n TextSegment.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n TextSegment.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidateIdx;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {TextCandidate}\n */\n TextSegment.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidateIdx !== undefined)) {\n return this.candidates[this.selectedCandidateIdx];\n }\n return undefined;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {TextInkRange[]}\n */\n TextSegment.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.TextSegment = TextSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextCharSegment\n * @extends TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextCharSegment(obj) {\n scope.TextSegment.call(this, obj);\n if (obj) {\n for (var i in obj.candidates) {\n this.candidates.push(new scope.TextCharCandidate(obj.candidates[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextCharSegment.prototype = new scope.TextSegment();\n\n /**\n * Constructor property\n */\n TextCharSegment.prototype.constructor = TextCharSegment;\n\n // Export\n scope.TextCharSegment = TextCharSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextWordSegment\n * @extends TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextWordSegment(obj) {\n scope.TextSegment.call(this, obj);\n if (obj) {\n for (var i in obj.candidates) {\n this.candidates.push(new scope.TextWordCandidate(obj.candidates[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextWordSegment.prototype = new scope.TextSegment();\n\n /**\n * Constructor property\n */\n TextWordSegment.prototype.constructor = TextWordSegment;\n\n // Export\n scope.TextWordSegment = TextWordSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text segment\n *\n * @class TextResultSegment\n * @extends TextSegment\n * @param {Object} [obj]\n * @constructor\n */\n function TextResultSegment(obj) {\n scope.TextSegment.call(this, obj);\n if (obj) {\n for (var i in obj.candidates) {\n this.candidates.push(new scope.TextResultCandidate(obj.candidates[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResultSegment.prototype = new scope.TextSegment();\n\n /**\n * Constructor property\n */\n TextResultSegment.prototype.constructor = TextResultSegment;\n\n // Export\n scope.TextResultSegment = TextResultSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text tag item\n *\n * @class TextTagItem\n * @param {Object} [obj]\n * @constructor\n */\n function TextTagItem(obj) {\n this.inkRanges = [];\n if (obj) {\n this.tagType = obj.tagType;\n if (obj.inkRanges) {\n var ranges = obj.inkRanges.split(/[\\s]+/);\n for (var i in ranges) {\n this.inkRanges.push(new scope.TextInkRange(ranges[i]));\n }\n }\n }\n }\n\n /**\n * Get tag type\n *\n * @method getTagType\n * @returns {String}\n */\n TextTagItem.prototype.getTagType = function () {\n return this.tagType;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {TextInkRange[]}\n */\n TextTagItem.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.TextTagItem = TextTagItem;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition text result message\n *\n * @class TextResponseWSMessage\n * @extends AbstractRecoResponseWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function TextResponseWSMessage(obj) {\n scope.AbstractRecoResponseWSMessage.call(this, obj);\n if (obj) {\n if (obj.result) {\n this.result = new scope.TextDocument(obj.result);\n }\n }\n }\n\n /**\n * Inheritance property\n */\n TextResponseWSMessage.prototype = new scope.AbstractRecoResponseWSMessage();\n\n /**\n * Constructor property\n */\n TextResponseWSMessage.prototype.constructor = TextResponseWSMessage;\n\n /**\n * Get text document\n *\n * @method getTextDocument\n * @returns {TextDocument}\n */\n TextResponseWSMessage.prototype.getTextDocument = function () {\n return this.result;\n };\n\n // Export\n scope.TextResponseWSMessage = TextResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract shape primitive\n *\n * @class AbstractShapePrimitive\n * @param {Object} [obj]\n * @constructor\n */\n function AbstractShapePrimitive(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AbstractShapePrimitive.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is line\n *\n * @method isLine\n * @returns {Boolean}\n */\n AbstractShapePrimitive.prototype.isLine = function () {\n return this.type === 'line';\n };\n\n /**\n * Is ellipse\n *\n * @method isEllipse\n * @returns {Boolean}\n */\n AbstractShapePrimitive.prototype.isEllipse = function () {\n return this.type === 'ellipse';\n };\n\n // Export\n scope.AbstractShapePrimitive = AbstractShapePrimitive;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract decorated shape\n *\n * @class AbstractDecoratedShape\n * @extends AbstractShapePrimitive\n * @param {Object} [obj]\n * @constructor\n */\n function AbstractDecoratedShape(obj) {\n scope.AbstractShapePrimitive.call(this, obj);\n if (obj) {\n this.beginDecoration = obj.beginDecoration;\n this.beginTangentAngle = obj.beginTangentAngle;\n this.endDecoration = obj.endDecoration;\n this.endTangentAngle = obj.endTangentAngle;\n }\n }\n\n /**\n * Inheritance property\n */\n AbstractDecoratedShape.prototype = new scope.AbstractShapePrimitive();\n\n /**\n * Constructor property\n */\n AbstractDecoratedShape.prototype.constructor = AbstractDecoratedShape;\n\n /**\n * Has begin decoration\n *\n * @method hasBeginDecoration\n * @returns {Boolean}\n */\n AbstractDecoratedShape.prototype.hasBeginDecoration = function () {\n return typeof this.beginDecoration !== 'undefined';\n };\n\n /**\n * Has end decoration\n *\n * @method hasEndDecoration\n * @returns {Boolean}\n */\n AbstractDecoratedShape.prototype.hasEndDecoration = function () {\n return typeof this.endDecoration !== 'undefined';\n };\n\n /**\n * Get begin decoration\n *\n * @method getBeginDecoration\n * @returns {String}\n */\n AbstractDecoratedShape.prototype.getBeginDecoration = function () {\n return this.beginDecoration;\n };\n\n /**\n * Get end decoration\n *\n * @method getEndDecoration\n * @returns {String}\n */\n AbstractDecoratedShape.prototype.getEndDecoration = function () {\n return this.endDecoration;\n };\n\n /**\n * Get begin tangent angle\n *\n * @method getBeginTangentAngle\n * @returns {Number}\n */\n AbstractDecoratedShape.prototype.getBeginTangentAngle = function () {\n return this.beginTangentAngle;\n };\n\n /**\n * Get end tangent angle\n *\n * @method getEndTangentAngle\n * @returns {Number}\n */\n AbstractDecoratedShape.prototype.getEndTangentAngle = function () {\n return this.endTangentAngle;\n };\n\n // Export\n scope.AbstractDecoratedShape = AbstractDecoratedShape;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape candidate\n *\n * @class ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeCandidate(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n ShapeCandidate.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is erased\n *\n * @method isErased\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isErased = function () {\n return this.type === 'erased';\n };\n\n /**\n * Is scratch-out\n *\n * @method isScratchOut\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isScratchOut = function () {\n return this.type === 'scratchOut';\n };\n\n /**\n * Is not recognized\n *\n * @method isNotRecognized\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isNotRecognized = function () {\n return this.type === 'notRecognized';\n };\n\n /**\n * Is recognized\n *\n * @method isRecognized\n * @returns {Boolean}\n */\n ShapeCandidate.prototype.isRecognized = function () {\n return this.type === 'recognizedShape';\n };\n\n // Export\n scope.ShapeCandidate = ShapeCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape document\n *\n * @class ShapeDocument\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeDocument(obj) {\n this.segments = [];\n if (obj) {\n for (var i in obj.segments) {\n this.segments.push(new scope.ShapeSegment(obj.segments[i]));\n }\n }\n }\n\n /**\n * Get segments\n *\n * @method getSegments\n * @returns {ShapeSegment[]}\n */\n ShapeDocument.prototype.getSegments = function () {\n return this.segments;\n };\n\n // Export\n scope.ShapeDocument = ShapeDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape ellipse\n *\n * @class ShapeEllipse\n * @extends AbstractDecoratedShape\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeEllipse(obj) {\n scope.AbstractDecoratedShape.call(this, obj);\n if (obj) {\n this.center = new scope.Point(obj.center);\n this.minRadius = obj.minRadius;\n this.maxRadius = obj.maxRadius;\n this.orientation = obj.orientation;\n this.startAngle = obj.startAngle;\n this.sweepAngle = obj.sweepAngle;\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeEllipse.prototype = new scope.AbstractDecoratedShape();\n\n /**\n * Constructor property\n */\n ShapeEllipse.prototype.constructor = ShapeEllipse;\n\n /**\n * Get center\n *\n * @method getCenter\n * @returns {Point}\n */\n ShapeEllipse.prototype.getCenter = function () {\n return this.center;\n };\n\n /**\n * Get min radius\n *\n * @method getMinRadius\n * @returns {Number}\n */\n ShapeEllipse.prototype.getMinRadius = function () {\n return this.minRadius;\n };\n\n /**\n * Get max radius\n *\n * @method getMaxRadius\n * @returns {Number}\n */\n ShapeEllipse.prototype.getMaxRadius = function () {\n return this.maxRadius;\n };\n\n /**\n * Get orientation\n *\n * @method getOrientation\n * @returns {String}\n */\n ShapeEllipse.prototype.getOrientation = function () {\n return this.orientation;\n };\n\n /**\n * Get start angle\n *\n * @method getStartAngle\n * @returns {Number}\n */\n ShapeEllipse.prototype.getStartAngle = function () {\n return this.startAngle;\n };\n\n /**\n * Get sweep angle\n *\n * @method getSweepAngle\n * @returns {Number}\n */\n ShapeEllipse.prototype.getSweepAngle = function () {\n return this.sweepAngle;\n };\n\n // Export\n scope.ShapeEllipse = ShapeEllipse;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape erased\n *\n * @class ShapeErased\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeErased(obj) {\n scope.ShapeCandidate.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ShapeErased.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeErased.prototype.constructor = ShapeErased;\n\n // Export\n scope.ShapeErased = ShapeErased;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape ink range\n *\n * @class ShapeInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeInkRange(obj) {\n if (obj) {\n this.firstStroke = obj.firstStroke;\n this.lastStroke = obj.lastStroke;\n this.firstPoint = obj.firstPoint;\n this.lastPoint = obj.lastPoint;\n }\n }\n\n /**\n * Get first stroke\n *\n * @method getFirstStroke\n * @returns {Number}\n */\n ShapeInkRange.prototype.getFirstStroke = function () {\n return this.firstStroke;\n };\n\n /**\n * Get last stroke\n *\n * @method getLastStroke\n * @returns {Number}\n */\n ShapeInkRange.prototype.getLastStroke = function () {\n return this.lastStroke;\n };\n\n /**\n * Get first point\n *\n * @method getFirstPoint\n * @returns {Point}\n */\n ShapeInkRange.prototype.getFirstPoint = function () {\n return this.firstPoint;\n };\n\n /**\n * Get last point\n *\n * @method getLastPoint\n * @returns {Point}\n */\n ShapeInkRange.prototype.getLastPoint = function () {\n return this.lastPoint;\n };\n\n // Export\n scope.ShapeInkRange = ShapeInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape line\n *\n * @class ShapeLine\n * @extends AbstractDecoratedShape\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeLine(obj) {\n scope.AbstractDecoratedShape.call(this, obj);\n if (obj) {\n this.firstPoint = new scope.Point(obj.firstPoint);\n this.lastPoint = new scope.Point(obj.lastPoint);\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeLine.prototype = new scope.AbstractDecoratedShape();\n\n /**\n * Constructor property\n */\n ShapeLine.prototype.constructor = ShapeLine;\n\n /**\n * Get first point\n *\n * @method getFirstPoint\n * @returns {Point}\n */\n ShapeLine.prototype.getFirstPoint = function () {\n return this.firstPoint;\n };\n\n /**\n * Get last point\n *\n * @method getLastPoint\n * @returns {Point}\n */\n ShapeLine.prototype.getLastPoint = function () {\n return this.lastPoint;\n };\n\n // Export\n scope.ShapeLine = ShapeLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape not recognized\n *\n * @class ShapeNotRecognized\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeNotRecognized(obj) {\n scope.ShapeCandidate.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n ShapeNotRecognized.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeNotRecognized.prototype.constructor = ShapeNotRecognized;\n\n // Export\n scope.ShapeNotRecognized = ShapeNotRecognized;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape recognized\n *\n * @class ShapeRecognized\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeRecognized(obj) {\n scope.ShapeCandidate.call(this, obj);\n this.primitives = [];\n if (obj) {\n this.label = obj.label;\n this.normalizedRecognitionScore = obj.normalizedRecognitionScore;\n this.resemblanceScore = obj.resemblanceScore;\n for (var i in obj.primitives) {\n switch (obj.primitives[i].type) {\n case 'line':\n this.primitives.push(new scope.ShapeLine(obj.primitives[i]));\n break;\n case 'ellipse':\n this.primitives.push(new scope.ShapeEllipse(obj.primitives[i]));\n break;\n default:\n throw new Error('Unknown shape primitive');\n }\n }\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognized.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeRecognized.prototype.constructor = ShapeRecognized;\n\n /**\n * Get primitives\n *\n * @method getPrimitives\n * @returns {AbstractDecoratedShape[]}\n */\n ShapeRecognized.prototype.getPrimitives = function () {\n return this.primitives;\n };\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n ShapeRecognized.prototype.getLabel = function () {\n return this.label;\n };\n\n /**\n * Get normalized score\n *\n * @method getNormalizedRecognitionScore\n * @returns {Number}\n */\n ShapeRecognized.prototype.getNormalizedRecognitionScore = function () {\n return this.normalizedRecognitionScore;\n };\n\n /**\n * Get resemblance score\n *\n * @method getResemblanceScore\n * @returns {Number}\n */\n ShapeRecognized.prototype.getResemblanceScore = function () {\n return this.resemblanceScore;\n };\n\n // Export\n scope.ShapeRecognized = ShapeRecognized;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape result\n *\n * @class ShapeResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.ShapeDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n ShapeResult.prototype.constructor = ShapeResult;\n\n /**\n * Get shape document\n *\n * @method getShapeDocument\n * @returns {ShapeDocument}\n */\n ShapeResult.prototype.getShapeDocument = function () {\n return this.result;\n };\n\n // Export\n scope.ShapeResult = ShapeResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape scratch-out\n *\n * @class ShapeScratchOut\n * @extends ShapeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeScratchOut(obj) {\n scope.ShapeCandidate.call(this, obj);\n this.inkRanges = [];\n if (obj) {\n for (var j in obj.inkRanges) {\n this.inkRanges.push(new scope.ShapeInkRange(obj.inkRanges[j]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n ShapeScratchOut.prototype = new scope.ShapeCandidate();\n\n /**\n * Constructor property\n */\n ShapeScratchOut.prototype.constructor = ShapeScratchOut;\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {ShapeInkRange[]}\n */\n ShapeScratchOut.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.ShapeScratchOut = ShapeScratchOut;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape segment\n *\n * @class ShapeSegment\n * @param {Object} [obj]\n * @constructor\n */\n function ShapeSegment(obj) {\n this.inkRanges = [];\n this.candidates = [];\n if (obj) {\n this.elementType = obj.elementType;\n this.uniqueID = obj.uniqueID;\n this.selectedCandidateIndex = obj.selectedCandidateIndex;\n for (var i in obj.candidates) {\n switch (obj.candidates[i].type) {\n case 'erased':\n this.candidates.push(new scope.ShapeErased(obj.candidates[i]));\n break;\n case 'scratchOut':\n this.candidates.push(new scope.ShapeScratchOut(obj.candidates[i]));\n break;\n case 'recognizedShape':\n this.candidates.push(new scope.ShapeRecognized(obj.candidates[i]));\n break;\n default:\n this.candidates.push(new scope.ShapeNotRecognized(obj.candidates[i]));\n break;\n }\n }\n for (var j in obj.inkRanges) {\n this.inkRanges.push(new scope.ShapeInkRange(obj.inkRanges[j]));\n }\n }\n }\n\n /**\n * Get element type\n *\n * @method getElementType\n * @returns {String}\n */\n ShapeSegment.prototype.getElementType = function () {\n return this.elementType;\n };\n\n /**\n * Get unique id\n *\n * @method getUniqueId\n * @returns {String}\n */\n ShapeSegment.prototype.getUniqueId = function () {\n return this.uniqueID;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {ShapeInkRange[]}\n */\n ShapeSegment.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n ShapeSegment.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidateIndex;\n };\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {ShapeCandidate[]}\n */\n ShapeSegment.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {ShapeCandidate}\n */\n ShapeSegment.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidateIndex !== undefined)) {\n return this.candidates[this.selectedCandidateIndex];\n }\n return undefined;\n };\n\n // Export\n scope.ShapeSegment = ShapeSegment;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math node\n *\n * @class MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathNode(obj) {\n if (obj) {\n this.name = obj.name;\n this.type = obj.type;\n }\n }\n\n /**\n * Get name\n *\n * @method getName\n * @returns {String}\n */\n MathNode.prototype.getName = function () {\n return this.name;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MathNode.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MathNode = MathNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math non-terminal node\n *\n * @class MathNonTerminalNode\n * @extends MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathNonTerminalNode(obj) {\n scope.MathNode.call(this, obj);\n this.candidates = [];\n if (obj) {\n this.selectedCandidate = obj.selectedCandidate;\n for (var i in obj.candidates) {\n switch (obj.candidates[i].type) {\n case 'nonTerminalNode':\n switch (obj.candidates[i].name) {\n case 'term':\n this.candidates.push(new scope.MathTermNonTerminalNode(obj.candidates[i]));\n break;\n case 'sqrtTerm':\n this.candidates.push(new scope.MathSqrtNonTerminalNode(obj.candidates[i]));\n break;\n case 'vectorTerm':\n this.candidates.push(new scope.MathVectorNonTerminalNode(obj.candidates[i]));\n break;\n case 'system':\n this.candidates.push(new scope.MathSystemNonTerminalNode(obj.candidates[i]));\n break;\n case 'exponentiable':\n this.candidates.push(new scope.MathExponentiableNonTerminalNode(obj.candidates[i]));\n break;\n case 'expression':\n this.candidates.push(new scope.MathExpressionNonTerminalNode(obj.candidates[i]));\n break;\n default:\n throw new Error('Unknown nonTerminalNode');\n }\n break;\n case 'terminalNode':\n this.candidates.push(new scope.MathTerminalNode(obj.candidates[i]));\n break;\n case 'rule':\n switch (obj.candidates[i].name) {\n case 'identity':\n this.candidates.push(new scope.MathIdentityRuleNode(obj.candidates[i]));\n break;\n case 'horizontal pair':\n this.candidates.push(new scope.MathHorizontalPairRuleNode(obj.candidates[i]));\n break;\n case 'fence':\n this.candidates.push(new scope.MathFenceRuleNode(obj.candidates[i]));\n break;\n case 'fraction':\n this.candidates.push(new scope.MathFractionRuleNode(obj.candidates[i]));\n break;\n case 'sqrt':\n this.candidates.push(new scope.MathSqrtRuleNode(obj.candidates[i]));\n break;\n case 'subscript':\n this.candidates.push(new scope.MathSubscriptRuleNode(obj.candidates[i]));\n break;\n case 'superscript':\n this.candidates.push(new scope.MathSuperscriptRuleNode(obj.candidates[i]));\n break;\n case 'subsuperscript':\n this.candidates.push(new scope.MathSubSuperscriptRuleNode(obj.candidates[i]));\n break;\n case 'underscript':\n this.candidates.push(new scope.MathUnderscriptRuleNode(obj.candidates[i]));\n break;\n case 'overscript':\n this.candidates.push(new scope.MathOverscriptRuleNode(obj.candidates[i]));\n break;\n case 'underoverscript':\n this.candidates.push(new scope.MathUnderOverscriptRuleNode(obj.candidates[i]));\n break;\n case 'presuperscript':\n this.candidates.push(new scope.MathPreSuperscriptRuleNode(obj.candidates[i]));\n break;\n case 'vertical pair':\n this.candidates.push(new scope.MathVerticalPairRuleNode(obj.candidates[i]));\n break;\n case 'left fence':\n this.candidates.push(new scope.MathLeftFenceRuleNode(obj.candidates[i]));\n break;\n default:\n throw new Error('Unknown ruleNode');\n }\n break;\n default:\n throw new Error('Unknown math node type');\n }\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MathNonTerminalNode.prototype = new scope.MathNode();\n\n /**\n * Constructor property\n */\n MathNonTerminalNode.prototype.constructor = MathNonTerminalNode;\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {MathNode[]}\n */\n MathNonTerminalNode.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n MathNonTerminalNode.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidate;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {MathNode}\n */\n MathNonTerminalNode.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidate !== undefined)) {\n return this.candidates[this.selectedCandidate];\n }\n return undefined;\n };\n\n /**\n * Get bounding box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n MathNonTerminalNode.prototype.getBoundingBox = function () {\n return this.getSelectedCandidate() ? this.getSelectedCandidate().getBoundingBox() : undefined;\n };\n\n // Export\n scope.MathNonTerminalNode = MathNonTerminalNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract math result\n *\n * @class MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathResultElement(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MathResultElement.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is LaTeX result\n *\n * @method isLatex\n * @returns {Boolean}\n */\n MathResultElement.prototype.isLaTex = function () {\n return this.type === 'LATEX';\n };\n\n /**\n * Is MathML result\n *\n * @method isMathMl\n * @returns {Boolean}\n */\n MathResultElement.prototype.isMathMl = function () {\n return this.type === 'MATHML';\n };\n\n /**\n * Is SymbolTree result\n *\n * @method isSymbolTree\n * @returns {Boolean}\n */\n MathResultElement.prototype.isSymbolTree = function () {\n return this.type === 'SYMBOLTREE';\n };\n\n // Export\n scope.MathResultElement = MathResultElement;\n})(MyScript);","(function (scope) {\n 'use strict';\n /**\n * Math rule node\n *\n * @class MathRuleNode\n * @extends MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathRuleNode(obj) {\n scope.MathNode.call(this, obj);\n this.children = [];\n if (obj) {\n this.name = obj.name;\n for (var i in obj.children) {\n switch (obj.children[i].type) {\n case 'nonTerminalNode':\n switch (obj.children[i].name) {\n case 'term':\n this.children.push(new scope.MathTermNonTerminalNode(obj.children[i]));\n break;\n case 'sqrtTerm':\n this.children.push(new scope.MathSqrtNonTerminalNode(obj.children[i]));\n break;\n case 'vectorTerm':\n this.children.push(new scope.MathVectorNonTerminalNode(obj.children[i]));\n break;\n case 'system':\n this.children.push(new scope.MathSystemNonTerminalNode(obj.children[i]));\n break;\n case 'exponentiable':\n this.children.push(new scope.MathExponentiableNonTerminalNode(obj.children[i]));\n break;\n case 'expression':\n this.children.push(new scope.MathExpressionNonTerminalNode(obj.children[i]));\n break;\n default:\n throw new Error('Unknown nonTerminalNode');\n }\n break;\n case 'terminalNode':\n this.children.push(new scope.MathTerminalNode(obj.children[i]));\n break;\n case 'rule':\n switch (obj.children[i].name) {\n case 'identity':\n this.children.push(new scope.MathIdentityRuleNode(obj.children[i]));\n break;\n case 'horizontal pair':\n this.children.push(new scope.MathHorizontalPairRuleNode(obj.children[i]));\n break;\n case 'fence':\n this.children.push(new scope.MathFenceRuleNode(obj.children[i]));\n break;\n case 'fraction':\n this.children.push(new scope.MathFractionRuleNode(obj.children[i]));\n break;\n case 'sqrt':\n this.children.push(new scope.MathSqrtRuleNode(obj.children[i]));\n break;\n case 'subscript':\n this.children.push(new scope.MathSubscriptRuleNode(obj.children[i]));\n break;\n case 'superscript':\n this.children.push(new scope.MathSuperscriptRuleNode(obj.children[i]));\n break;\n case 'subsuperscript':\n this.children.push(new scope.MathSubSuperscriptRuleNode(obj.children[i]));\n break;\n case 'underscript':\n this.children.push(new scope.MathUnderscriptRuleNode(obj.children[i]));\n break;\n case 'overscript':\n this.children.push(new scope.MathOverscriptRuleNode(obj.children[i]));\n break;\n case 'underoverscript':\n this.children.push(new scope.MathUnderOverscriptRuleNode(obj.children[i]));\n break;\n case 'presuperscript':\n this.children.push(new scope.MathPreSuperscriptRuleNode(obj.children[i]));\n break;\n case 'vertical pair':\n this.children.push(new scope.MathVerticalPairRuleNode(obj.children[i]));\n break;\n case 'left fence':\n this.children.push(new scope.MathLeftFenceRuleNode(obj.children[i]));\n break;\n default:\n throw new Error('Unknown ruleNode');\n }\n break;\n default:\n throw new Error('Unknown math node type');\n }\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MathRuleNode.prototype = new scope.MathNode();\n\n /**\n * Constructor property\n */\n MathRuleNode.prototype.constructor = MathRuleNode;\n\n /**\n * Get name\n *\n * @method getName\n * @returns {String}\n */\n MathRuleNode.prototype.getName = function () {\n return this.name;\n };\n\n /**\n * Get children\n *\n * @method getChildren\n * @returns {MathNode[]}\n */\n MathRuleNode.prototype.getChildren = function () {\n return this.children;\n };\n\n // Export\n scope.MathRuleNode = MathRuleNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math document\n *\n * @class MathDocument\n * @param {Object} [obj]\n * @constructor\n */\n function MathDocument(obj) {\n this.results = [];\n this.scratchOutResults = [];\n if (obj) {\n for (var i in obj.results) {\n var result = obj.results[i];\n switch (result.type) {\n case 'MATHML':\n this.results.push(new scope.MathMathMLResultElement(result));\n break;\n case 'LATEX':\n this.results.push(new scope.MathLaTexResultElement(result));\n break;\n case 'SYMBOLTREE':\n this.results.push(new scope.MathSymbolTreeResultElement(result));\n break;\n default:\n throw new Error('Unknown math result type');\n }\n }\n for (var j in obj.scratchOutResults) {\n this.scratchOutResults.push(new scope.MathScratchOut(obj.scratchOutResults[j]));\n }\n }\n }\n\n /**\n * Get result elements\n *\n * @method getResultElements\n * @returns {MathResultElement[]}\n */\n MathDocument.prototype.getResultElements = function () {\n return this.results;\n };\n\n /**\n * Get scratch-out results\n *\n * @method getScratchOutResults\n * @returns {MathScratchOut[]}\n */\n MathDocument.prototype.getScratchOutResults = function () {\n return this.scratchOutResults;\n };\n\n // Export\n scope.MathDocument = MathDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math ink range\n *\n * @class MathInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function MathInkRange(obj) {\n if (obj) {\n this.component = obj.component;\n this.firstItem = obj.firstItem;\n this.lastItem = obj.lastItem;\n }\n }\n\n /**\n * Get component\n *\n * @method getComponent\n * @returns {Number}\n */\n MathInkRange.prototype.getComponent = function () {\n return this.component;\n };\n\n /**\n * Get first item\n *\n * @method getFirstItem\n * @returns {Number}\n */\n MathInkRange.prototype.getFirstItem = function () {\n return this.firstItem;\n };\n\n /**\n * Get last item\n *\n * @method getLastItem\n * @returns {Number}\n */\n MathInkRange.prototype.getLastItem = function () {\n return this.lastItem;\n };\n\n // Export\n scope.MathInkRange = MathInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * LaTex result element\n *\n * @class MathLaTexResultElement\n * @extends MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathLaTexResultElement(obj) {\n scope.MathResultElement.call(this, obj);\n if (obj) {\n this.value = obj.value;\n }\n }\n\n /**\n * Inheritance property\n */\n MathLaTexResultElement.prototype = new scope.MathResultElement();\n\n /**\n * Constructor property\n */\n MathLaTexResultElement.prototype.constructor = MathLaTexResultElement;\n\n /**\n * Get value\n *\n * @method getValue\n * @returns {String}\n */\n MathLaTexResultElement.prototype.getValue = function () {\n return this.value;\n };\n\n // Export\n scope.MathLaTexResultElement = MathLaTexResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * MathML result element\n *\n * @class MathMathMLResultElement\n * @extends MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathMathMLResultElement(obj) {\n scope.MathResultElement.call(this, obj);\n if (obj) {\n this.value = obj.value;\n }\n }\n\n /**\n * Inheritance property\n */\n MathMathMLResultElement.prototype = new scope.MathResultElement();\n\n /**\n * Constructor property\n */\n MathMathMLResultElement.prototype.constructor = MathMathMLResultElement;\n\n /**\n * Get value\n *\n * @method getValue\n * @returns {String}\n */\n MathMathMLResultElement.prototype.getValue = function () {\n return this.value;\n };\n\n // Export\n scope.MathMathMLResultElement = MathMathMLResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math result\n *\n * @class MathResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function MathResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.MathDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n MathResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n MathResult.prototype.constructor = MathResult;\n\n /**\n * Get math document\n *\n * @method getMathDocument\n * @returns {MathDocument}\n */\n MathResult.prototype.getMathDocument = function () {\n return this.result;\n };\n\n // Export\n scope.MathResult = MathResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math scratch-out\n *\n * @class MathScratchOut\n * @param {Object} [obj]\n * @constructor\n */\n function MathScratchOut(obj) {\n this.inkRanges = [];\n this.erasedInkRanges = [];\n if (obj) {\n for (var i in obj.inkRanges) {\n this.inkRanges.push(new scope.MathInkRange(obj.inkRanges[i]));\n }\n for (var j in obj.erasedInkRanges) {\n this.erasedInkRanges.push(new scope.MathInkRange(obj.erasedInkRanges[j]));\n }\n }\n }\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {MathInkRange[]}\n */\n MathScratchOut.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get erased ink ranges\n *\n * @method getErasedInkRanges\n * @returns {MathInkRange[]}\n */\n MathScratchOut.prototype.getErasedInkRanges = function () {\n return this.erasedInkRanges;\n };\n\n // Export\n scope.MathScratchOut = MathScratchOut;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math symbol tree\n *\n * @class MathSymbolTreeResultElement\n * @extends MathResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MathSymbolTreeResultElement(obj) {\n scope.MathResultElement.call(this, obj);\n if (obj) {\n switch (obj.root.type) {\n case 'nonTerminalNode':\n switch (obj.root.name) {\n case 'term':\n this.root = new scope.MathTermNonTerminalNode(obj.root);\n break;\n case 'sqrtTerm':\n this.root = new scope.MathSqrtNonTerminalNode(obj.root);\n break;\n case 'vectorTerm':\n this.root = new scope.MathVectorNonTerminalNode(obj.root);\n break;\n case 'system':\n this.root = new scope.MathSystemNonTerminalNode(obj.root);\n break;\n case 'exponentiable':\n this.root = new scope.MathExponentiableNonTerminalNode(obj.root);\n break;\n case 'expression':\n this.root = new scope.MathExpressionNonTerminalNode(obj.root);\n break;\n default:\n throw new Error('Unknown nonTerminalNode');\n }\n break;\n case 'terminalNode':\n this.root = new scope.MathTerminalNode(obj.root);\n break;\n case 'rule':\n switch (obj.root.name) {\n case 'identity':\n this.root = new scope.MathIdentityRuleNode(obj.root);\n break;\n case 'horizontal pair':\n this.root = new scope.MathHorizontalPairRuleNode(obj.root);\n break;\n case 'fence':\n this.root = new scope.MathFenceRuleNode(obj.root);\n break;\n case 'fraction':\n this.root = new scope.MathFractionRuleNode(obj.root);\n break;\n case 'sqrt':\n this.root = new scope.MathSqrtRuleNode(obj.root);\n break;\n case 'subscript':\n this.root = new scope.MathSubscriptRuleNode(obj.root);\n break;\n case 'superscript':\n this.root = new scope.MathSuperscriptRuleNode(obj.root);\n break;\n case 'subsuperscript':\n this.root = new scope.MathSubSuperscriptRuleNode(obj.root);\n break;\n case 'underscript':\n this.root = new scope.MathUnderscriptRuleNode(obj.root);\n break;\n case 'overscript':\n this.root = new scope.MathOverscriptRuleNode(obj.root);\n break;\n case 'underoverscript':\n this.root = new scope.MathUnderOverscriptRuleNode(obj.root);\n break;\n case 'presuperscript':\n this.root = new scope.MathPreSuperscriptRuleNode(obj.root);\n break;\n case 'vertical pair':\n this.root = new scope.MathVerticalPairRuleNode(obj.root);\n break;\n case 'left fence':\n this.root = new scope.MathLeftFenceRuleNode(obj.root);\n break;\n default:\n throw new Error('Unknown ruleNode');\n }\n break;\n default:\n throw new Error('Unknown math node type');\n }\n this.value = JSON.stringify(obj.root, null, ' ');\n }\n }\n\n /**\n * Inheritance property\n */\n MathSymbolTreeResultElement.prototype = new scope.MathResultElement();\n\n /**\n * Constructor property\n */\n MathSymbolTreeResultElement.prototype.constructor = MathSymbolTreeResultElement;\n\n /**\n * Get tree root\n *\n * @method getRoot\n * @returns {MathNode}\n */\n MathSymbolTreeResultElement.prototype.getRoot = function () {\n return this.root;\n };\n\n // Export\n scope.MathSymbolTreeResultElement = MathSymbolTreeResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math terminal node\n *\n * @class MathTerminalNode\n * @extends MathNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathTerminalNode(obj) {\n scope.MathNode.call(this, obj);\n this.candidates = [];\n this.inkRanges = [];\n if (obj) {\n this.selectedCandidate = obj.selectedCandidate;\n for (var i in obj.candidates) {\n this.candidates.push(new scope.MathTerminalNodeCandidate(obj.candidates[i]));\n }\n for (var j in obj.inkRanges) {\n this.inkRanges.push(new scope.MathInkRange(obj.inkRanges[j]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MathTerminalNode.prototype = new scope.MathNode();\n\n /**\n * Constructor property\n */\n MathTerminalNode.prototype.constructor = MathTerminalNode;\n\n /**\n * Get candidates\n *\n * @method getCandidates\n * @returns {MathTerminalNodeCandidate[]}\n */\n MathTerminalNode.prototype.getCandidates = function () {\n return this.candidates;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {MathInkRange[]}\n */\n MathTerminalNode.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get selected candidate index\n *\n * @method getSelectedCandidateIdx\n * @returns {Number}\n */\n MathTerminalNode.prototype.getSelectedCandidateIdx = function () {\n return this.selectedCandidate;\n };\n\n /**\n * Get selected candidate\n *\n * @method getSelectedCandidate\n * @returns {MathNode}\n */\n MathTerminalNode.prototype.getSelectedCandidate = function () {\n if (this.candidates && (this.selectedCandidate !== undefined)) {\n return this.candidates[this.selectedCandidate];\n }\n return undefined;\n };\n\n // Export\n scope.MathTerminalNode = MathTerminalNode;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math terminal node candidate\n *\n * @class MathTerminalNodeCandidate\n * @param {Object} [obj]\n * @constructor\n */\n function MathTerminalNodeCandidate(obj) {\n if (obj) {\n this.label = obj.label;\n this.normalizedRecognitionScore = obj.normalizedRecognitionScore;\n }\n }\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n MathTerminalNodeCandidate.prototype.getLabel = function () {\n return this.label;\n };\n\n /**\n * Get score\n *\n * @method getNormalizedRecognitionScore\n * @returns {Number}\n */\n MathTerminalNodeCandidate.prototype.getNormalizedRecognitionScore = function () {\n return this.normalizedRecognitionScore;\n };\n\n // Export\n scope.MathTerminalNodeCandidate = MathTerminalNodeCandidate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math fence rule node\n *\n * @class MathFenceRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathFenceRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathFenceRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathFenceRuleNode.prototype.constructor = MathFenceRuleNode;\n\n // Export\n scope.MathFenceRuleNode = MathFenceRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math fraction rule node\n *\n * @class MathFractionRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathFractionRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathFractionRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathFractionRuleNode.prototype.constructor = MathFractionRuleNode;\n\n // Export\n scope.MathFractionRuleNode = MathFractionRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math horizontal pair rule node\n *\n * @class MathHorizontalPairRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathHorizontalPairRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathHorizontalPairRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathHorizontalPairRuleNode.prototype.constructor = MathHorizontalPairRuleNode;\n\n // Export\n scope.MathHorizontalPairRuleNode = MathHorizontalPairRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math identity rule node\n *\n * @class MathIdentityRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathIdentityRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathIdentityRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathIdentityRuleNode.prototype.constructor = MathIdentityRuleNode;\n\n // Export\n scope.MathIdentityRuleNode = MathIdentityRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math rule node\n *\n * @class MathLeftFenceRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathLeftFenceRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathLeftFenceRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathLeftFenceRuleNode.prototype.constructor = MathLeftFenceRuleNode;\n\n // Export\n scope.MathLeftFenceRuleNode = MathLeftFenceRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math overscript rule node\n *\n * @class MathOverscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathOverscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathOverscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathOverscriptRuleNode.prototype.constructor = MathOverscriptRuleNode;\n\n // Export\n scope.MathOverscriptRuleNode = MathOverscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math pre-superscript rule node\n *\n * @class MathPreSuperscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathPreSuperscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathPreSuperscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathPreSuperscriptRuleNode.prototype.constructor = MathPreSuperscriptRuleNode;\n\n // Export\n scope.MathPreSuperscriptRuleNode = MathPreSuperscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math sqrt rule node\n *\n * @class MathSqrtRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSqrtRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSqrtRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSqrtRuleNode.prototype.constructor = MathSqrtRuleNode;\n\n // Export\n scope.MathSqrtRuleNode = MathSqrtRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math subscript rule node\n *\n * @class MathSubscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSubscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSubscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSubscriptRuleNode.prototype.constructor = MathSubscriptRuleNode;\n\n // Export\n scope.MathSubscriptRuleNode = MathSubscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math sub-superscript rule node\n *\n * @class MathSubSuperscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSubSuperscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSubSuperscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSubSuperscriptRuleNode.prototype.constructor = MathSubSuperscriptRuleNode;\n\n // Export\n scope.MathSubSuperscriptRuleNode = MathSubSuperscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math superscript rule node\n *\n * @class MathSuperscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSuperscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSuperscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathSuperscriptRuleNode.prototype.constructor = MathSuperscriptRuleNode;\n\n // Export\n scope.MathSuperscriptRuleNode = MathSuperscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math under-overscript rule node\n *\n * @class MathUnderOverscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathUnderOverscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathUnderOverscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathUnderOverscriptRuleNode.prototype.constructor = MathUnderOverscriptRuleNode;\n\n // Export\n scope.MathUnderOverscriptRuleNode = MathUnderOverscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math underscript rule node\n *\n * @class MathUnderscriptRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathUnderscriptRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathUnderscriptRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathUnderscriptRuleNode.prototype.constructor = MathUnderscriptRuleNode;\n\n // Export\n scope.MathUnderscriptRuleNode = MathUnderscriptRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math vertical pair rule node\n *\n * @class MathVerticalPairRuleNode\n * @extends MathRuleNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathVerticalPairRuleNode(obj) {\n scope.MathRuleNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathVerticalPairRuleNode.prototype = new scope.MathRuleNode();\n\n /**\n * Constructor property\n */\n MathVerticalPairRuleNode.prototype.constructor = MathVerticalPairRuleNode;\n\n // Export\n scope.MathVerticalPairRuleNode = MathVerticalPairRuleNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math exponentiable non-terminal node\n *\n * @class MathExponentiableNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathExponentiableNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathExponentiableNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathExponentiableNonTerminalNode.prototype.constructor = MathExponentiableNonTerminalNode;\n\n // Export\n scope.MathExponentiableNonTerminalNode = MathExponentiableNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math expression non-terminal node\n *\n * @class MathExpressionNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathExpressionNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathExpressionNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathExpressionNonTerminalNode.prototype.constructor = MathExpressionNonTerminalNode;\n\n // Export\n scope.MathExpressionNonTerminalNode = MathExpressionNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathSqrtNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSqrtNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSqrtNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathSqrtNonTerminalNode.prototype.constructor = MathSqrtNonTerminalNode;\n\n // Export\n scope.MathSqrtNonTerminalNode = MathSqrtNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathVectorNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathVectorNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathVectorNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathVectorNonTerminalNode.prototype.constructor = MathVectorNonTerminalNode;\n\n // Export\n scope.MathVectorNonTerminalNode = MathVectorNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathSystemNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathSystemNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathSystemNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathSystemNonTerminalNode.prototype.constructor = MathSystemNonTerminalNode;\n\n // Export\n scope.MathSystemNonTerminalNode = MathSystemNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Math term non-terminal node\n *\n * @class MathTermNonTerminalNode\n * @extends MathNonTerminalNode\n * @param {Object} [obj]\n * @constructor\n */\n function MathTermNonTerminalNode(obj) {\n scope.MathNonTerminalNode.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MathTermNonTerminalNode.prototype = new scope.MathNonTerminalNode();\n\n /**\n * Constructor property\n */\n MathTermNonTerminalNode.prototype.constructor = MathTermNonTerminalNode;\n\n // Export\n scope.MathTermNonTerminalNode = MathTermNonTerminalNode;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * WebSocket recognition math result message\n *\n * @class MathResponseWSMessage\n * @extends AbstractRecoResponseWSMessage\n * @param {Object} [obj] Recognition WebSocket message\n * @constructor\n */\n function MathResponseWSMessage(obj) {\n scope.AbstractRecoResponseWSMessage.call(this, obj);\n if (obj) {\n this.result = new scope.MathDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n MathResponseWSMessage.prototype = new scope.AbstractRecoResponseWSMessage();\n\n /**\n * Constructor property\n */\n MathResponseWSMessage.prototype.constructor = MathResponseWSMessage;\n\n /**\n * Get math document\n *\n * @method getMathDocument\n * @returns {MathDocument}\n */\n MathResponseWSMessage.prototype.getMathDocument = function () {\n return this.result;\n };\n\n // Export\n scope.MathResponseWSMessage = MathResponseWSMessage;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract music element\n *\n * @class MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicElement(obj) {\n this.inputRanges = [];\n if (obj) {\n this.elementType = obj.elementType;\n this.inputRanges = obj.inputRanges;\n }\n }\n\n /**\n * Get element type\n *\n * @method getElementType\n * @returns {String}\n */\n MusicElement.prototype.getElementType = function () {\n return this.elementType;\n };\n\n /**\n * Get input ranges\n *\n * @method getInputRanges\n * @returns {MusicInputRange[]}\n */\n MusicElement.prototype.getInputRanges = function () {\n return this.inputRanges;\n };\n\n // Export\n scope.MusicElement = MusicElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Abstract music result element\n *\n * @class MusicResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicResultElement(obj) {\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicResultElement.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Is MusicXML\n *\n * @method isMusicXML\n * @returns {Boolean}\n */\n MusicResultElement.prototype.isMusicXML = function () {\n return this.type === 'MUSICXML';\n };\n\n /**\n * Is ScoreTree\n *\n * @method isScoreTree\n * @returns {Boolean}\n */\n MusicResultElement.prototype.isScoreTree = function () {\n return this.type === 'SCORETREE';\n };\n\n // Export\n scope.MusicResultElement = MusicResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music accidental\n *\n * @class MusicAccidental\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicAccidental(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicAccidental.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicAccidental.prototype.constructor = MusicAccidental;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicAccidental.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicAccidental = MusicAccidental;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music annotation\n *\n * @class MusicAnnotation\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicAnnotation(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.label = obj.label;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicAnnotation.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicAnnotation.prototype.constructor = MusicAnnotation;\n\n /**\n * Get label\n *\n * @method getLabel\n * @returns {String}\n */\n MusicAnnotation.prototype.getLabel = function () {\n return this.label;\n };\n\n // Export\n scope.MusicAnnotation = MusicAnnotation;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music arpeggiate\n *\n * @class MusicArpeggiate\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicArpeggiate(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicArpeggiate.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicArpeggiate.prototype.constructor = MusicArpeggiate;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicArpeggiate.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicArpeggiate = MusicArpeggiate;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music bar\n *\n * @class MusicBar\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicBar(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n if (obj) {\n this.repeatDirection = obj.repeatDirection;\n this.style = obj.style;\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicBar.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicBar.prototype.constructor = MusicBar;\n\n /**\n * Get repeat direction\n *\n * @method getRepeatDirection\n * @returns {String}\n */\n MusicBar.prototype.getRepeatDirection = function () {\n return this.repeatDirection;\n };\n\n /**\n * Get style\n *\n * @method getStyle\n * @returns {String}\n */\n MusicBar.prototype.getStyle = function () {\n return this.style;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicBar.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n // Export\n scope.MusicBar = MusicBar;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music beam\n *\n * @class MusicBeam\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicBeam(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.placement = obj.placement;\n this.leftCount = obj.leftCount;\n this.rightCount = obj.rightCount;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicBeam.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicBeam.prototype.constructor = MusicBeam;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicBeam.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Get left count\n *\n * @method getLeftCount\n * @returns {Number}\n */\n MusicBeam.prototype.getLeftCount = function () {\n return this.leftCount;\n };\n\n /**\n * Get right count\n *\n * @method getRightCount\n * @returns {Number}\n */\n MusicBeam.prototype.getRightCount = function () {\n return this.rightCount;\n };\n\n // Export\n scope.MusicBeam = MusicBeam;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music chord\n *\n * @class MusicChord\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicChord(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n this.notes = [];\n this.beamTypes = [];\n this.ledgerLines = [];\n this.startSlurs = [];\n this.stopSlurs = [];\n if (obj) {\n this.duration = obj.duration;\n this.arpeggiate = new scope.MusicArpeggiate(obj.arpeggiate);\n this.startBeam = new scope.MusicBeam(obj.startBeam);\n this.stopBeam = new scope.MusicBeam(obj.stopBeam);\n this.stem = new scope.MusicStem(obj.stem);\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n for (var j in obj.notes) {\n this.notes.push(new scope.MusicNote(obj.notes[j]));\n }\n for (var k in obj.beamTypes) {\n this.beamTypes.push(obj.beamTypes[k]);\n }\n for (var l in obj.ledgerLines) {\n this.ledgerLines.push(new scope.MusicLedgerLine(obj.ledgerLines[l]));\n }\n for (var m in obj.startSlurs) {\n this.startSlurs.push(new scope.MusicSlur(obj.startSlurs[m]));\n }\n for (var n in obj.stopSlurs) {\n this.stopSlurs.push(new scope.MusicSlur(obj.stopSlurs[n]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicChord.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicChord.prototype.constructor = MusicChord;\n\n /**\n * Get duration\n *\n * @method getDuration\n * @returns {Number}\n */\n MusicChord.prototype.getDuration = function () {\n return this.duration;\n };\n\n /**\n * Get arpeggiate\n *\n * @method getArpeggiate\n * @returns {MusicArpeggiate}\n */\n MusicChord.prototype.getArpeggiate = function () {\n return this.arpeggiate;\n };\n\n /**\n * Get start beam\n *\n * @method getStartBeam\n * @returns {MusicBeam}\n */\n MusicChord.prototype.getStartBeam = function () {\n return this.startBeam;\n };\n\n /**\n * Get stop beam\n *\n * @method getStopBeam\n * @returns {MusicBeam}\n */\n MusicChord.prototype.getStopBeam = function () {\n return this.stopBeam;\n };\n\n /**\n * Get stem\n *\n * @method getStem\n * @returns {MusicStem}\n */\n MusicChord.prototype.getStem = function () {\n return this.stem;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicChord.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n /**\n * Get notes\n *\n * @method getNotes\n * @returns {MusicNote[]}\n */\n MusicChord.prototype.getNotes = function () {\n return this.notes;\n };\n\n /**\n * Get beam types\n *\n * @method getBeamTypes\n * @returns {Array}\n */\n MusicChord.prototype.getBeamTypes = function () {\n return this.beamTypes;\n };\n\n /**\n * Get ledger lines\n *\n * @method getLedgerLines\n * @returns {MusicLedgerLine[]}\n */\n MusicChord.prototype.getLedgerLines = function () {\n return this.ledgerLines;\n };\n\n /**\n * Get start slurs\n *\n * @method getStartSlurs\n * @returns {MusicSlur[]}\n */\n MusicChord.prototype.getStartSlurs = function () {\n return this.startSlurs;\n };\n\n /**\n * Get stop slurs\n *\n * @method getStopSlurs\n * @returns {MusicSlur[]}\n */\n MusicChord.prototype.getStopSlurs = function () {\n return this.stopSlurs;\n };\n\n // Export\n scope.MusicChord = MusicChord;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music clef\n *\n * @class MusicClef\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicClef(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.line = obj.line;\n this.octave = obj.octave;\n this.symbol = obj.symbol;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicClef.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicClef.prototype.constructor = MusicClef;\n\n /**\n * Get line\n *\n * @method getLine\n * @returns {Number}\n */\n MusicClef.prototype.getLine = function () {\n return this.line;\n };\n\n /**\n * Get octave\n *\n * @method getOctave\n * @returns {Number}\n */\n MusicClef.prototype.getOctave = function () {\n return this.octave;\n };\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicClef.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n // Export\n scope.MusicClef = MusicClef;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music decoration\n *\n * @class MusicDecoration\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicDecoration(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.symbol = obj.symbol;\n this.placement = obj.placement;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicDecoration.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicDecoration.prototype.constructor = MusicDecoration;\n\n /**\n * Get symbol\n *\n * @method getSymbol\n * @returns {String}\n */\n MusicDecoration.prototype.getSymbol = function () {\n return this.symbol;\n };\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicDecoration.prototype.getPlacement = function () {\n return this.placement;\n };\n\n // Export\n scope.MusicDecoration = MusicDecoration;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music document\n *\n * @class MusicDocument\n * @param {Object} [obj]\n * @constructor\n */\n function MusicDocument(obj) {\n this.results = [];\n this.scratchOutResults = [];\n if (obj) {\n for (var i in obj.results) {\n switch (obj.results[i].type) {\n case 'MUSICXML':\n this.results.push(new scope.MusicXMLResultElement(obj.results[i]));\n break;\n default:\n this.results.push(new scope.MusicScoreTreeResultElement(obj.results[i]));\n break;\n }\n }\n for (var j in obj.scratchOutResults) {\n this.scratchOutResults.push(new scope.MusicScratchOut(obj.scratchOutResults[j]));\n }\n }\n }\n\n /**\n * Get result elements\n *\n * @method getResultElements\n * @returns {MusicResultElement[]}\n */\n MusicDocument.prototype.getResultElements = function () {\n return this.results;\n };\n\n /**\n * Get scratch-out results\n *\n * @method getScratchOutResults\n * @returns {MusicScratchOut[]}\n */\n MusicDocument.prototype.getScratchOutResults = function () {\n return this.scratchOutResults;\n };\n\n // Export\n scope.MusicDocument = MusicDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music dots\n *\n * @class MusicDots\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicDots(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.count = obj.count;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicDots.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicDots.prototype.constructor = MusicDots;\n\n /**\n * Get dots counts\n *\n * @method getCount\n * @returns {Number}\n */\n MusicDots.prototype.getCount = function () {\n return this.count;\n };\n\n // Export\n scope.MusicDots = MusicDots;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music head\n *\n * @class MusicHead\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicHead(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicHead.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicHead.prototype.constructor = MusicHead;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicHead.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicHead = MusicHead;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music input range\n *\n * @class MusicInputRange\n * @param {Object} [obj]\n * @constructor\n */\n function MusicInputRange(obj) {\n if (obj) {\n this.component = obj.component;\n this.firstItem = obj.firstItem;\n this.lastItem = obj.lastItem;\n }\n }\n\n /**\n * Get component\n *\n * @method getComponent\n * @returns {Number}\n */\n MusicInputRange.prototype.getComponent = function () {\n return this.component;\n };\n\n /**\n * Get first item\n *\n * @method getFirstItem\n * @returns {Number}\n */\n MusicInputRange.prototype.getFirstItem = function () {\n return this.firstItem;\n };\n\n /**\n * Get last item\n *\n * @method getLastItem\n * @returns {Number}\n */\n MusicInputRange.prototype.getLastItem = function () {\n return this.lastItem;\n };\n\n // Export\n scope.MusicInputRange = MusicInputRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music key signature\n *\n * @class MusicKeySignature\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicKeySignature(obj) {\n scope.MusicElement.call(this, obj);\n this.accidentals = [];\n if (obj) {\n this.signature = new scope.MusicKeySignatureData(obj.signature);\n for (var i in obj.accidentals) {\n this.accidentals.push(new scope.MusicAccidental(obj.accidentals[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicKeySignature.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicKeySignature.prototype.constructor = MusicKeySignature;\n\n /**\n * Get signature\n *\n * @method getSignature\n * @returns {MusicKeySignatureData}\n */\n MusicKeySignature.prototype.getSignature = function () {\n return this.signature;\n };\n\n /**\n * Get accidentals\n *\n * @method getAccidentals\n * @returns {MusicAccidental[]}\n */\n MusicKeySignature.prototype.getAccidentals = function () {\n return this.accidentals;\n };\n\n // Export\n scope.MusicKeySignature = MusicKeySignature;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music key signature data\n *\n * @class MusicKeySignatureData\n * @param {Object} [obj]\n * @constructor\n */\n function MusicKeySignatureData(obj) {\n if (obj) {\n this.fifths = obj.fifths;\n this.cancel = obj.cancel;\n }\n }\n\n /**\n * Get fifths\n *\n * @method getFifths\n * @returns {Number}\n */\n MusicKeySignatureData.prototype.getFifths = function () {\n return this.fifths;\n };\n\n /**\n * Get cancel\n *\n * @method getCancel\n * @returns {Number}\n */\n MusicKeySignatureData.prototype.getCancel = function () {\n return this.cancel;\n };\n\n // Export\n scope.MusicKeySignatureData = MusicKeySignatureData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music ledger line\n *\n * @class MusicLedgerLine\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicLedgerLine(obj) {\n scope.MusicElement.call(this, obj);\n }\n\n /**\n * Inheritance property\n */\n MusicLedgerLine.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicLedgerLine.prototype.constructor = MusicLedgerLine;\n\n // Export\n scope.MusicLedgerLine = MusicLedgerLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music note\n *\n * @class MusicNote\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicNote(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n this.beamTypes = [];\n this.ledgerLines = [];\n this.startSlurs = [];\n this.stopSlurs = [];\n if (obj) {\n this.accidental = new scope.MusicAccidental(obj.accidental);\n this.dots = new scope.MusicDots(obj.dots);\n this.duration = obj.duration;\n this.head = new scope.MusicHead(obj.head);\n this.line = obj.line;\n this.pitch = new scope.MusicPitchData(obj.pitch);\n this.startBeam = new scope.MusicBeam(obj.startBeam);\n this.stopBeam = new scope.MusicBeam(obj.stopBeam);\n this.stem = new scope.MusicStem(obj.stem);\n this.startTie = new scope.MusicTie(obj.startTie);\n this.stopTie = new scope.MusicTie(obj.stopTie);\n this.startTuplet = new scope.MusicTuplet(obj.startTuplet);\n this.stopTuplet = new scope.MusicTuplet(obj.stopTuplet);\n this.timeModification = new scope.MusicTimeModificationData(obj.timeModification);\n this.type = obj.type;\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n for (var j in obj.beamTypes) {\n this.beamTypes.push(obj.beamTypes[j]);\n }\n for (var k in obj.ledgerLines) {\n this.ledgerLines.push(new scope.MusicLedgerLine(obj.ledgerLines[k]));\n }\n for (var l in obj.startSlurs) {\n this.startSlurs.push(new scope.MusicSlur(obj.startSlurs[l]));\n }\n for (var m in obj.stopSlurs) {\n this.stopSlurs.push(new scope.MusicSlur(obj.stopSlurs[m]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicNote.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicNote.prototype.constructor = MusicNote;\n\n /**\n * Get accidental\n *\n * @method getAccidental\n * @returns {MusicAccidental}\n */\n MusicNote.prototype.getAccidental = function () {\n return this.accidental;\n };\n\n /**\n * Get dots\n *\n * @method getDots\n * @returns {MusicDots}\n */\n MusicNote.prototype.getDots = function () {\n return this.dots;\n };\n\n /**\n * Get duration\n *\n * @method getDuration\n * @returns {Number}\n */\n MusicNote.prototype.getDuration = function () {\n return this.duration;\n };\n\n /**\n * Get head\n *\n * @method getHead\n * @returns {MusicHead}\n */\n MusicNote.prototype.getHead = function () {\n return this.head;\n };\n\n /**\n * Get line\n *\n * @method getLine\n * @returns {Number}\n */\n MusicNote.prototype.getLine = function () {\n return this.line;\n };\n\n /**\n * Get pitch\n *\n * @method getPitch\n * @returns {MusicPitchData}\n */\n MusicNote.prototype.getPitch = function () {\n return this.pitch;\n };\n\n /**\n * Get start beam\n *\n * @method getStartBeam\n * @returns {MusicBeam}\n */\n MusicNote.prototype.getStartBeam = function () {\n return this.startBeam;\n };\n\n /**\n * Get stop beam\n *\n * @method getStopBeam\n * @returns {MusicBeam}\n */\n MusicNote.prototype.getStopBeam = function () {\n return this.stopBeam;\n };\n\n /**\n * Get stem\n *\n * @method getStem\n * @returns {MusicStem}\n */\n MusicNote.prototype.getStem = function () {\n return this.stem;\n };\n\n /**\n * Get start tie\n *\n * @method getStartTie\n * @returns {MusicTie}\n */\n MusicNote.prototype.getStartTie = function () {\n return this.startTie;\n };\n\n /**\n * Get stop tie\n *\n * @method getStopTie\n * @returns {MusicTie}\n */\n MusicNote.prototype.getStopTie = function () {\n return this.stopTie;\n };\n\n /**\n * Get start tuplet\n *\n * @method getStartTuplet\n * @returns {MusicTuplet}\n */\n MusicNote.prototype.getStartTuplet = function () {\n return this.startTuplet;\n };\n\n /**\n * Get stop tuplet\n *\n * @method getStopTuplet\n * @returns {MusicTuplet}\n */\n MusicNote.prototype.getStopTuplet = function () {\n return this.stopTuplet;\n };\n\n /**\n * Get time modification\n *\n * @method getTimeModification\n * @returns {MusicTimeModificationData}\n */\n MusicNote.prototype.getTimeModification = function () {\n return this.timeModification;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicNote.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicNote.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n /**\n * Get beam types\n *\n * @method getBeamTypes\n * @returns {Array}\n */\n MusicNote.prototype.getBeamTypes = function () {\n return this.beamTypes;\n };\n\n /**\n * Get ledger lines\n *\n * @method getLedgerLines\n * @returns {MusicLedgerLine[]}\n */\n MusicNote.prototype.getLedgerLines = function () {\n return this.ledgerLines;\n };\n\n /**\n * Get start slurs\n *\n * @method getStartSlurs\n * @returns {MusicSlur[]}\n */\n MusicNote.prototype.getStartSlurs = function () {\n return this.startSlurs;\n };\n\n /**\n * Get stop slurs\n *\n * @method getStopSlurs\n * @returns {MusicSlur[]}\n */\n MusicNote.prototype.getStopSlurs = function () {\n return this.stopSlurs;\n };\n\n // Export\n scope.MusicNote = MusicNote;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music part\n *\n * @class MusicPart\n * @param {Object} [obj]\n * @constructor\n */\n function MusicPart(obj) {\n this.elements = [];\n if (obj) {\n for (var i in obj.elements) {\n switch (obj.elements[i].elementType) {\n case 'accidental':\n this.elements.push(new scope.MusicAccidental(obj.elements[i]));\n break;\n case 'annotation':\n this.elements.push(new scope.MusicAnnotation(obj.elements[i]));\n break;\n case 'arpeggiate':\n this.elements.push(new scope.MusicArpeggiate(obj.elements[i]));\n break;\n case 'bar':\n this.elements.push(new scope.MusicBar(obj.elements[i]));\n break;\n case 'beam':\n this.elements.push(new scope.MusicBeam(obj.elements[i]));\n break;\n case 'chord':\n this.elements.push(new scope.MusicChord(obj.elements[i]));\n break;\n case 'clef':\n this.elements.push(new scope.MusicClef(obj.elements[i]));\n break;\n case 'decoration':\n this.elements.push(new scope.MusicDecoration(obj.elements[i]));\n break;\n case 'dots':\n this.elements.push(new scope.MusicDots(obj.elements[i]));\n break;\n case 'head':\n this.elements.push(new scope.MusicHead(obj.elements[i]));\n break;\n case 'keySignature':\n this.elements.push(new scope.MusicKeySignature(obj.elements[i]));\n break;\n case 'ledgerLine':\n this.elements.push(new scope.MusicLedgerLine(obj.elements[i]));\n break;\n case 'note':\n this.elements.push(new scope.MusicNote(obj.elements[i]));\n break;\n case 'rest':\n this.elements.push(new scope.MusicRest(obj.elements[i]));\n break;\n case 'slur':\n this.elements.push(new scope.MusicSlur(obj.elements[i]));\n break;\n case 'stem':\n this.elements.push(new scope.MusicStem(obj.elements[i]));\n break;\n case 'tie':\n this.elements.push(new scope.MusicTie(obj.elements[i]));\n break;\n case 'timeSignature':\n this.elements.push(new scope.MusicTimeSignature(obj.elements[i]));\n break;\n case 'tuplet':\n this.elements.push(new scope.MusicTuplet(obj.elements[i]));\n break;\n case 'tupletBracket':\n this.elements.push(new scope.MusicTupletBracket(obj.elements[i]));\n break;\n default:\n throw new Error('Unknown music element');\n }\n }\n }\n }\n\n /**\n * Get elements\n *\n * @method getElements\n * @returns {MusicElement[]}\n */\n MusicPart.prototype.getElements = function () {\n return this.elements;\n };\n\n // Export\n scope.MusicPart = MusicPart;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music pitch data\n *\n * @class MusicPitchData\n * @param {Object} [obj]\n * @constructor\n */\n function MusicPitchData(obj) {\n if (obj) {\n this.alteration = obj.alteration;\n this.octave = obj.octave;\n this.step = obj.step;\n }\n }\n\n /**\n * Get alteration\n *\n * @method getAlteration\n * @returns {Number}\n */\n MusicPitchData.prototype.getAlteration = function () {\n return this.alteration;\n };\n\n /**\n * Get octave\n *\n * @method getOctave\n * @returns {Number}\n */\n MusicPitchData.prototype.getOctave = function () {\n return this.octave;\n };\n\n /**\n * Get step\n *\n * @method getStep\n * @returns {String}\n */\n MusicPitchData.prototype.getStep = function () {\n return this.step;\n };\n\n // Export\n scope.MusicPitchData = MusicPitchData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music rest\n *\n * @class MusicRest\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicRest(obj) {\n scope.MusicElement.call(this, obj);\n this.decorations = [];\n this.startSlurs = [];\n this.stopSlurs = [];\n if (obj) {\n this.type = obj.type;\n this.dots = new scope.MusicDots(obj.dots);\n this.startTuplet = new scope.MusicTuplet(obj.startTuplet);\n this.stopTuplet = new scope.MusicTuplet(obj.stopTuplet);\n this.timeModification = new scope.MusicTimeModificationData(obj.timeModification);\n this.duration = obj.duration;\n for (var i in obj.decorations) {\n this.decorations.push(new scope.MusicDecoration(obj.decorations[i]));\n }\n for (var l in obj.startSlurs) {\n this.startSlurs.push(new scope.MusicSlur(obj.startSlurs[l]));\n }\n for (var m in obj.stopSlurs) {\n this.stopSlurs.push(new scope.MusicSlur(obj.stopSlurs[m]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicRest.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicRest.prototype.constructor = MusicRest;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicRest.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get dots\n *\n * @method getDots\n * @returns {MusicDots}\n */\n MusicRest.prototype.getDots = function () {\n return this.dots;\n };\n\n /**\n * Get start tuplet\n *\n * @method getStartTuplet\n * @returns {MusicTuplet}\n */\n MusicRest.prototype.getStartTuplet = function () {\n return this.startTuplet;\n };\n\n /**\n * Get stop tuplet\n *\n * @method getStopTuplet\n * @returns {MusicTuplet}\n */\n MusicRest.prototype.getStopTuplet = function () {\n return this.stopTuplet;\n };\n\n /**\n * Get time modification\n *\n * @method getTimeModification\n * @returns {MusicTimeModificationData}\n */\n MusicRest.prototype.getTimeModification = function () {\n return this.timeModification;\n };\n\n /**\n * Get duration\n *\n * @method getDuration\n * @returns {Number}\n */\n MusicRest.prototype.getDuration = function () {\n return this.duration;\n };\n\n /**\n * Get decorations\n *\n * @method getDecorations\n * @returns {MusicDecoration[]}\n */\n MusicRest.prototype.getDecorations = function () {\n return this.decorations;\n };\n\n /**\n * Get start slurs\n *\n * @method getStartSlurs\n * @returns {MusicSlur[]}\n */\n MusicRest.prototype.getStartSlurs = function () {\n return this.startSlurs;\n };\n\n /**\n * Get stop slurs\n *\n * @method getStopSlurs\n * @returns {MusicSlur[]}\n */\n MusicRest.prototype.getStopSlurs = function () {\n return this.stopSlurs;\n };\n\n // Export\n scope.MusicRest = MusicRest;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music result\n *\n * @class MusicResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function MusicResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.MusicDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n MusicResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n MusicResult.prototype.constructor = MusicResult;\n\n /**\n * Get music document\n *\n * @method getMusicDocument\n * @returns {MusicDocument}\n */\n MusicResult.prototype.getMusicDocument = function () {\n return this.result;\n };\n\n // Export\n scope.MusicResult = MusicResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music score\n *\n * @class MusicScore\n * @param {Object} [obj]\n * @constructor\n */\n function MusicScore(obj) {\n this.parts = [];\n if (obj) {\n for (var i in obj.parts) {\n this.parts.push(new scope.MusicPart(obj.parts[i]));\n }\n }\n }\n\n /**\n * Get parts\n *\n * @method getParts\n * @returns {MusicPart[]}\n */\n MusicScore.prototype.getParts = function () {\n return this.parts;\n };\n\n // Export\n scope.MusicScore = MusicScore;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music score tree\n *\n * @class MusicScoreTreeResultElement\n * @extends MusicResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicScoreTreeResultElement(obj) {\n scope.MusicResultElement.call(this, obj);\n if (obj) {\n this.score = new scope.MusicScore(obj.score);\n }\n }\n\n /**\n * Inheritance property\n */\n MusicScoreTreeResultElement.prototype = new scope.MusicResultElement();\n\n /**\n * Constructor property\n */\n MusicScoreTreeResultElement.prototype.constructor = MusicScoreTreeResultElement;\n\n /**\n * Get score\n *\n * @method getScore\n * @returns {MusicScore}\n */\n MusicScoreTreeResultElement.prototype.getScore = function () {\n return this.score;\n };\n\n // Export\n scope.MusicScoreTreeResultElement = MusicScoreTreeResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music scratch-out\n *\n * @class MusicScratchOut\n * @param {Object} [obj]\n * @constructor\n */\n function MusicScratchOut(obj) {\n this.inputRanges = [];\n this.erasedInputRanges = [];\n if (obj) {\n for (var i in obj.inputRanges) {\n this.inputRanges.push(new scope.MusicInputRange(obj.inputRanges[i]));\n }\n for (var j in obj.erasedInputRanges) {\n this.erasedInputRanges.push(new scope.MusicInputRange(obj.erasedInputRanges[j]));\n }\n }\n }\n\n /**\n * Get input ranges\n *\n * @method getInputRanges\n * @returns {MusicInputRange[]}\n */\n MusicScratchOut.prototype.getInputRanges = function () {\n return this.inputRanges;\n };\n\n /**\n * Get erased input ranges\n *\n * @method getErasedInputRanges\n * @returns {MusicInputRange[]}\n */\n MusicScratchOut.prototype.getErasedInputRanges = function () {\n return this.erasedInputRanges;\n };\n\n // Export\n scope.MusicScratchOut = MusicScratchOut;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music slur\n *\n * @class MusicSlur\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicSlur(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.placement = obj.placement;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicSlur.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicSlur.prototype.constructor = MusicSlur;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicSlur.prototype.getPlacement = function () {\n return this.placement;\n };\n\n // Export\n scope.MusicSlur = MusicSlur;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music stem\n *\n * @class MusicStem\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicStem(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicStem.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicStem.prototype.constructor = MusicStem;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicStem.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicStem = MusicStem;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music tie\n *\n * @class MusicTie\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTie(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.placement = obj.placement;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTie.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTie.prototype.constructor = MusicTie;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicTie.prototype.getPlacement = function () {\n return this.placement;\n };\n\n // Export\n scope.MusicTie = MusicTie;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music time modification data\n *\n * @class MusicTimeModificationData\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTimeModificationData(obj) {\n if (obj) {\n this.actual = obj.actual;\n this.dots = obj.dots;\n this.normal = obj.normal;\n this.type = obj.type;\n }\n }\n\n /**\n * Get actual\n *\n * @method getActual\n * @returns {Number}\n */\n MusicTimeModificationData.prototype.getActual = function () {\n return this.actual;\n };\n\n /**\n * Get dots\n *\n * @method getDots\n * @returns {Number}\n */\n MusicTimeModificationData.prototype.getDots = function () {\n return this.dots;\n };\n\n /**\n * Get normal\n *\n * @method getNormal\n * @returns {Number}\n */\n MusicTimeModificationData.prototype.getNormal = function () {\n return this.normal;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicTimeModificationData.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicTimeModificationData = MusicTimeModificationData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music time signature\n *\n * @class MusicTimeSignature\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTimeSignature(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.top = new scope.MusicAnnotation(obj.top);\n this.bottom = new scope.MusicAnnotation(obj.bottom);\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTimeSignature.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTimeSignature.prototype.constructor = MusicTimeSignature;\n\n /**\n * Get top\n *\n * @method getTop\n * @returns {MusicAnnotation}\n */\n MusicTimeSignature.prototype.getTop = function () {\n return this.top;\n };\n\n /**\n * Get bottom\n *\n * @method getBottom\n * @returns {MusicAnnotation}\n */\n MusicTimeSignature.prototype.getBottom = function () {\n return this.bottom;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicTimeSignature.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicTimeSignature = MusicTimeSignature;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music tuplet bracket\n *\n * @class MusicTupletBracket\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTupletBracket(obj) {\n scope.MusicElement.call(this, obj);\n if (obj) {\n this.type = obj.type;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTupletBracket.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTupletBracket.prototype.constructor = MusicTupletBracket;\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n MusicTupletBracket.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.MusicTupletBracket = MusicTupletBracket;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music tuplet\n *\n * @class MusicTuplet\n * @extends MusicElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicTuplet(obj) {\n scope.MusicElement.call(this, obj);\n this.brackets = [];\n if (obj) {\n this.placement = obj.placement;\n this.number = new scope.MusicAnnotation(obj.number);\n for (var i in obj.brackets) {\n this.brackets.push(new scope.MusicTupletBracket(obj.brackets[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n MusicTuplet.prototype = new scope.MusicElement();\n\n /**\n * Constructor property\n */\n MusicTuplet.prototype.constructor = MusicTuplet;\n\n /**\n * Get placement\n *\n * @method getPlacement\n * @returns {String}\n */\n MusicTuplet.prototype.getPlacement = function () {\n return this.placement;\n };\n\n /**\n * Get number\n *\n * @method getNumber\n * @returns {MusicAnnotation}\n */\n MusicTuplet.prototype.getNumber = function () {\n return this.number;\n };\n\n /**\n * Get brackets\n *\n * @method getBrackets\n * @returns {Array}\n */\n MusicTuplet.prototype.getBrackets = function () {\n return this.brackets;\n };\n\n // Export\n scope.MusicTuplet = MusicTuplet;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * MusicXML result\n *\n * @class MusicXMLResultElement\n * @extends MusicResultElement\n * @param {Object} [obj]\n * @constructor\n */\n function MusicXMLResultElement(obj) {\n scope.MusicResultElement.call(this, obj);\n if (obj) {\n this.value = obj.value;\n }\n }\n\n /**\n * Inheritance property\n */\n MusicXMLResultElement.prototype = new scope.MusicResultElement();\n\n /**\n * Constructor property\n */\n MusicXMLResultElement.prototype.constructor = MusicXMLResultElement;\n\n /**\n * Get value\n *\n * @method getValue\n * @returns {String}\n */\n MusicXMLResultElement.prototype.getValue = function () {\n return this.value;\n };\n\n // Export\n scope.MusicXMLResultElement = MusicXMLResultElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer element\n *\n * @class AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerElement(obj) {\n if (obj) {\n this.elementType = obj.elementType;\n }\n }\n\n /**\n * Get element type\n *\n * @method getElementType\n * @returns {String}\n */\n AnalyzerElement.prototype.getElementType = function () {\n return this.elementType;\n };\n\n // Export\n scope.AnalyzerElement = AnalyzerElement;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer table cell\n *\n * @class AnalyzerCell\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerCell(obj) {\n scope.AnalyzerElement.call(this, obj);\n if (obj) {\n this.data = new scope.AnalyzerCellData(obj.data);\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerCell.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerCell.prototype.constructor = AnalyzerCell;\n\n /**\n * Get analyzer cell data\n *\n * @method getData\n * @returns {AnalyzerCellData}\n */\n AnalyzerCell.prototype.getData = function () {\n return this.data;\n };\n\n // Export\n scope.AnalyzerCell = AnalyzerCell;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer cell data\n *\n * @class AnalyzerCellData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerCellData(obj) {\n if (obj) {\n this.firstColumn = obj.firstColumn;\n this.lastColumn = obj.lastColumn;\n this.firstRow = obj.firstRow;\n this.lastRow = obj.lastRow;\n this.height = obj.height;\n this.width = obj.width;\n this.orientation = obj.orientation;\n this.topLeftPoint = new scope.Point(obj.topLeftPoint);\n this.topBorder = obj.topBorder;\n this.bottomBorder = obj.bottomBorder;\n this.leftBorder = obj.leftBorder;\n this.rightBorder = obj.rightBorder;\n }\n }\n\n /**\n * Get first column\n *\n * @method getFirstColumn\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getFirstColumn = function () {\n return this.firstColumn;\n };\n\n /**\n * Get last column\n *\n * @method getLastColumn\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getLastColumn = function () {\n return this.lastColumn;\n };\n\n /**\n * Get first row\n *\n * @method getFirstRow\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getFirstRow = function () {\n return this.firstRow;\n };\n\n /**\n * Get last row\n *\n * @method getLastRow\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getLastRow = function () {\n return this.lastRow;\n };\n\n /**\n * Get height\n *\n * @method getHeight\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getHeight = function () {\n return this.height;\n };\n\n /**\n * Get width\n *\n * @method getWidth\n * @returns {Number}\n */\n AnalyzerCellData.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Get orientation\n *\n * @method getOrientation\n * @returns {String}\n */\n AnalyzerCellData.prototype.getOrientation = function () {\n return this.orientation;\n };\n\n /**\n * Get top-left point\n *\n * @method getTopLeftPoint\n * @returns {Point}\n */\n AnalyzerCellData.prototype.getTopLeftPoint = function () {\n return this.topLeftPoint;\n };\n\n /**\n * Has top border\n *\n * @method hasTopBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasTopBorder = function () {\n return this.topBorder;\n };\n\n /**\n * Has bottom border\n *\n * @method hasBottomBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasBottomBorder = function () {\n return this.bottomBorder;\n };\n\n /**\n * Has left border\n *\n * @method hasLeftBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasLeftBorder = function () {\n return this.leftBorder;\n };\n\n /**\n * Has right border\n *\n * @method hasRightBorder\n * @returns {Boolean}\n */\n AnalyzerCellData.prototype.hasRightBorder = function () {\n return this.rightBorder;\n };\n\n /**\n * Get bounding box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AnalyzerCellData.prototype.getBoundingBox = function () {\n var rectangle = new scope.Rectangle();\n rectangle.setTopLeftPoint(this.getTopLeftPoint());\n rectangle.setWidth(this.getWidth());\n rectangle.setHeight(this.getHeight());\n return rectangle;\n };\n\n // Export\n scope.AnalyzerCellData = AnalyzerCellData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer document\n *\n * @class AnalyzerDocument\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerDocument(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.textLines = [];\n this.shapes = [];\n this.tables = [];\n this.groups = [];\n if (obj) {\n for (var i in obj.textLines) {\n this.textLines.push(new scope.AnalyzerTextLine(obj.textLines[i]));\n }\n for (var j in obj.shapes) {\n this.shapes.push(new scope.ShapeSegment(obj.shapes[j]));\n }\n for (var k in obj.tables) {\n this.tables.push(new scope.AnalyzerTable(obj.tables[k]));\n }\n for (var l in obj.groups) {\n this.groups.push(new scope.AnalyzerGroup(obj.groups[l]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerDocument.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerDocument.prototype.constructor = AnalyzerDocument;\n\n /**\n * Get text lines\n *\n * @method getTextLines\n * @returns {AnalyzerTextLine[]}\n */\n AnalyzerDocument.prototype.getTextLines = function () {\n return this.textLines;\n };\n\n /**\n * Get shapes\n *\n * @method getShapes\n * @returns {ShapeSegment[]}\n */\n AnalyzerDocument.prototype.getShapes = function () {\n return this.shapes;\n };\n\n /**\n * Get tables\n *\n * @method getTables\n * @returns {AnalyzerTable[]}\n */\n AnalyzerDocument.prototype.getTables = function () {\n return this.tables;\n };\n\n /**\n * Get groups\n *\n * @method getGroups\n * @returns {AnalyzerGroup[]}\n */\n AnalyzerDocument.prototype.getGroups = function () {\n return this.groups;\n };\n\n // Export\n scope.AnalyzerDocument = AnalyzerDocument;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer element reference\n *\n * @class AnalyzerElementReference\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerElementReference(obj) {\n if (obj) {\n this.uniqueID = obj.uniqueID;\n this.type = obj.type;\n }\n }\n\n /**\n * Get unique id\n *\n * @method getUniqueId\n * @returns {String}\n */\n AnalyzerElementReference.prototype.getUniqueId = function () {\n return this.uniqueID;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerElementReference.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.AnalyzerElementReference = AnalyzerElementReference;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer group\n *\n * @class AnalyzerGroup\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerGroup(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.elementReferences = [];\n if (obj) {\n this.type = obj.type;\n this.uniqueID = obj.uniqueID;\n for (var i in obj.elementReferences) {\n this.elementReferences.push(new scope.AnalyzerElementReference(obj.elementReferences[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerGroup.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerGroup.prototype.constructor = AnalyzerGroup;\n\n /**\n * Get element references\n *\n * @method getElementReferences\n * @returns {AnalyzerElementReference[]}\n */\n AnalyzerGroup.prototype.getElementReferences = function () {\n return this.elementReferences;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerGroup.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get unique Id\n *\n * @method getUniqueId\n * @returns {String}\n */\n AnalyzerGroup.prototype.getUniqueId = function () {\n return this.uniqueID;\n };\n\n // Export\n scope.AnalyzerGroup = AnalyzerGroup;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer ink range\n *\n * @class AnalyzerInkRange\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerInkRange(obj) {\n if (obj) {\n this.firstPoint = new scope.Point(obj.firstPoint);\n this.lastPoint = new scope.Point(obj.lastPoint);\n this.stroke = new scope.AnalyzerRecognizedStroke(obj.stroke);\n }\n }\n\n /**\n * Get first point\n *\n * @method getFirstPoint\n * @returns {Point}\n */\n AnalyzerInkRange.prototype.getFirstPoint = function () {\n return this.firstPoint;\n };\n\n /**\n * Get last point\n *\n * @method getLastPoint\n * @returns {Point}\n */\n AnalyzerInkRange.prototype.getLastPoint = function () {\n return this.lastPoint;\n };\n\n /**\n * Get stroke\n *\n * @method getStroke\n * @returns {null|*}\n */\n AnalyzerInkRange.prototype.getStroke = function () {\n return this.stroke;\n };\n\n // Export\n scope.AnalyzerInkRange = AnalyzerInkRange;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer line\n *\n * @class AnalyzerLine\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerLine(obj) {\n scope.AnalyzerElement.call(this, obj);\n if (obj) {\n this.data = new scope.AnalyzerLineData(obj.data);\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerLine.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerLine.prototype.constructor = AnalyzerLine;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerLineData}\n */\n AnalyzerLine.prototype.getData = function () {\n return this.data;\n };\n\n // Export\n scope.AnalyzerLine = AnalyzerLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer line data\n *\n * @class AnalyzerLineData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerLineData(obj) {\n if (obj) {\n this.p1 = new scope.Point(obj.p1);\n this.p2 = new scope.Point(obj.p2);\n }\n }\n\n /**\n * Get p1\n *\n * @method getP1\n * @returns {Point}\n */\n AnalyzerLineData.prototype.getP1 = function () {\n return this.p1;\n };\n\n /**\n * Get p2\n *\n * @method getP2\n * @returns {Point}\n */\n AnalyzerLineData.prototype.getP2 = function () {\n return this.p2;\n };\n\n // Export\n scope.AnalyzerLineData = AnalyzerLineData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * AnalyzerRecognizedStroke\n *\n * @class AnalyzerRecognizedStroke\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerRecognizedStroke(obj) {\n if (obj) {\n this.type = obj.type;\n this.x = obj.x;\n this.y = obj.y;\n }\n }\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerRecognizedStroke.prototype.getType = function () {\n return this.type;\n };\n\n /**\n * Get x\n *\n * @method getX\n * @returns {Number[]}\n */\n AnalyzerRecognizedStroke.prototype.getX = function () {\n return this.x;\n };\n\n /**\n * Get y\n *\n * @method getY\n * @returns {Number[]}\n */\n AnalyzerRecognizedStroke.prototype.getY = function () {\n return this.y;\n };\n\n // Export\n scope.AnalyzerRecognizedStroke = AnalyzerRecognizedStroke;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer result\n *\n * @class AnalyzerResult\n * @extends AbstractResult\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerResult(obj) {\n scope.AbstractResult.call(this, obj);\n if (obj) {\n this.result = new scope.AnalyzerDocument(obj.result);\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerResult.prototype = new scope.AbstractResult();\n\n /**\n * Constructor property\n */\n AnalyzerResult.prototype.constructor = AnalyzerResult;\n\n /**\n * Get analyzer document\n *\n * @method getAnalyzerDocument\n * @returns {AnalyzerDocument}\n */\n AnalyzerResult.prototype.getAnalyzerDocument = function () {\n return this.result;\n };\n\n // Export\n scope.AnalyzerResult = AnalyzerResult;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer stroke type\n *\n * @class AnalyzerStrokeType\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerStrokeType(obj) {\n if (obj) {\n this.inkRange = new scope.AnalyzerInkRange(obj.inkRange);\n this.type = obj.type;\n }\n }\n\n /**\n * Get ink range\n *\n * @method getInkRange\n * @returns {AnalyzerInkRange}\n */\n AnalyzerStrokeType.prototype.getInkRange = function () {\n return this.inkRange;\n };\n\n /**\n * Get type\n *\n * @method getType\n * @returns {String}\n */\n AnalyzerStrokeType.prototype.getType = function () {\n return this.type;\n };\n\n // Export\n scope.AnalyzerStrokeType = AnalyzerStrokeType;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer table\n *\n * @class AnalyzerTable\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTable(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.lines = [];\n this.cells = [];\n this.inkRanges = [];\n if (obj) {\n this.data = new scope.AnalyzerTableData(obj.data);\n for (var i in obj.lines) {\n this.lines.push(new scope.AnalyzerLine(obj.lines[i]));\n }\n for (var j in obj.cells) {\n this.cells.push(new scope.AnalyzerCell(obj.cells[j]));\n }\n for (var k in obj.inkRanges) {\n this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[k]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerTable.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerTable.prototype.constructor = AnalyzerTable;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerTableData}\n */\n AnalyzerTable.prototype.getData = function () {\n return this.data;\n };\n\n /**\n * Get lines\n *\n * @method getLines\n * @returns {AnalyzerLine[]}\n */\n AnalyzerTable.prototype.getLines = function () {\n return this.lines;\n };\n\n /**\n * Get cells\n *\n * @method getCells\n * @returns {AnalyzerCell[]}\n */\n AnalyzerTable.prototype.getCells = function () {\n return this.cells;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {AnalyzerInkRange[]}\n */\n AnalyzerTable.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.AnalyzerTable = AnalyzerTable;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer table data\n *\n * @class AnalyzerTableData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTableData(obj) {\n if (obj) {\n this.columnCount = obj.columnCount;\n this.rowCount = obj.rowCount;\n }\n }\n\n /**\n * Get column count\n *\n * @method getColumnCount\n * @returns {Number}\n */\n AnalyzerTableData.prototype.getColumnCount = function () {\n return this.columnCount;\n };\n\n /**\n * Get row count\n *\n * @method getRowCount\n * @returns {Number}\n */\n AnalyzerTableData.prototype.getRowCount = function () {\n return this.rowCount;\n };\n\n // Export\n scope.AnalyzerTableData = AnalyzerTableData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer text line\n *\n * @class AnalyzerTextLine\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTextLine(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.inkRanges = [];\n this.underlineList = [];\n if (obj) {\n this.data = new scope.AnalyzerTextLineData(obj.data);\n this.result = new scope.TextDocument(obj.result);\n for (var i in obj.inkRanges) {\n this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[i]));\n }\n for (var j in obj.underlineList) {\n this.underlineList.push(new scope.AnalyzerUnderline(obj.underlineList[j]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerTextLine.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerTextLine.prototype.constructor = AnalyzerTextLine;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerTextLineData}\n */\n AnalyzerTextLine.prototype.getData = function () {\n return this.data;\n };\n\n /**\n * Get text document\n *\n * @method getTextDocument\n * @returns {TextDocument}\n */\n AnalyzerTextLine.prototype.getTextDocument = function () {\n return this.result;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {AnalyzerInkRange[]}\n */\n AnalyzerTextLine.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n /**\n * Get underline list\n *\n * @method getUnderlineList\n * @returns {AnalyzerUnderline[]}\n */\n AnalyzerTextLine.prototype.getUnderlineList = function () {\n return this.underlineList;\n };\n\n // Export\n scope.AnalyzerTextLine = AnalyzerTextLine;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer text line data\n *\n * @class AnalyzerTextLineData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerTextLineData(obj) {\n if (obj) {\n this.baselinePos = obj.baselinePos;\n this.toMidline = obj.toMidline;\n this.orientation = obj.orientation;\n this.topLeftPoint = new scope.Point(obj.topLeftPoint);\n this.textHeight = obj.textHeight;\n this.justificationType = obj.justificationType;\n this.height = obj.height;\n this.width = obj.width;\n }\n }\n\n /**\n * Get baseline position\n *\n * @method getBaselinePos\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getBaselinePos = function () {\n return this.baselinePos;\n };\n\n /**\n * Get to midline\n *\n * @method getToMidline\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getToMidline = function () {\n return this.toMidline;\n };\n\n /**\n * Get orientation\n *\n * @method getOrientation\n * @returns {String}\n */\n AnalyzerTextLineData.prototype.getOrientation = function () {\n return this.orientation;\n };\n\n /**\n * Get top-left point\n *\n * @method getTopLeftPoint\n * @returns {Point}\n */\n AnalyzerTextLineData.prototype.getTopLeftPoint = function () {\n return this.topLeftPoint;\n };\n\n /**\n * Get text height\n *\n * @method getTextHeight\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getTextHeight = function () {\n return this.textHeight;\n };\n\n /**\n * Get justification type\n *\n * @method getJustificationType\n * @returns {String}\n */\n AnalyzerTextLineData.prototype.getJustificationType = function () {\n return this.justificationType;\n };\n\n /**\n * Get height\n *\n * @method getHeight\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getHeight = function () {\n return this.height;\n };\n\n /**\n * Get width\n *\n * @method getWidth\n * @returns {Number}\n */\n AnalyzerTextLineData.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Get bounding box\n *\n * @method getBoundingBox\n * @returns {Rectangle}\n */\n AnalyzerTextLineData.prototype.getBoundingBox = function () {\n var rectangle = new scope.Rectangle();\n if (this.getTopLeftPoint() || this.getWidth() || this.getHeight()) {\n rectangle.setTopLeftPoint(this.getTopLeftPoint());\n rectangle.setWidth(this.getWidth());\n rectangle.setHeight(this.getHeight());\n }\n return rectangle;\n };\n\n // Export\n scope.AnalyzerTextLineData = AnalyzerTextLineData;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer underline\n *\n * @class AnalyzerUnderline\n * @extends AnalyzerElement\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerUnderline(obj) {\n scope.AnalyzerElement.call(this, obj);\n this.inkRanges = [];\n if (obj) {\n this.data = new scope.AnalyzerUnderlineData(obj.data);\n for (var i in obj.inkRanges) {\n this.inkRanges.push(new scope.AnalyzerInkRange(obj.inkRanges[i]));\n }\n }\n }\n\n /**\n * Inheritance property\n */\n AnalyzerUnderline.prototype = new scope.AnalyzerElement();\n\n /**\n * Constructor property\n */\n AnalyzerUnderline.prototype.constructor = AnalyzerUnderline;\n\n /**\n * Get data\n *\n * @method getData\n * @returns {AnalyzerUnderlineData}\n */\n AnalyzerUnderline.prototype.getData = function () {\n return this.data;\n };\n\n /**\n * Get ink ranges\n *\n * @method getInkRanges\n * @returns {AnalyzerInkRange[]}\n */\n AnalyzerUnderline.prototype.getInkRanges = function () {\n return this.inkRanges;\n };\n\n // Export\n scope.AnalyzerUnderline = AnalyzerUnderline;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer underline data\n *\n * @class AnalyzerUnderlineData\n * @param {Object} [obj]\n * @constructor\n */\n function AnalyzerUnderlineData(obj) {\n if (obj) {\n this.firstCharacter = obj.firstCharacter;\n this.lastCharacter = obj.lastCharacter;\n }\n }\n\n /**\n * Get first character\n *\n * @method getFirstCharacter\n * @returns {Number}\n */\n AnalyzerUnderlineData.prototype.getFirstCharacter = function () {\n return this.firstCharacter;\n };\n\n /**\n * Get last character\n *\n * @method getLastCharacter\n * @returns {Number}\n */\n AnalyzerUnderlineData.prototype.getLastCharacter = function () {\n return this.lastCharacter;\n };\n\n // Export\n scope.AnalyzerUnderlineData = AnalyzerUnderlineData;\n})(MyScript);","'use strict';\n\n(function (scope, Q) {\n /**\n * Network interface\n *\n * @class NetworkInterface\n * @constructor\n */\n function NetworkInterface() {\n }\n\n /**\n * Parse JSON String to Object\n *\n * @method parse\n * @param {Object} req\n * @returns {Object}\n */\n NetworkInterface.parse = function (req) {\n var result;\n try {\n result = JSON.parse(req.responseText);\n } catch (e) {\n result = req.responseText;\n }\n return result;\n };\n\n /**\n * Transform object data request to a list of parameters\n *\n * @method transformRequest\n * @param {Object} [obj]\n * @returns {String}\n */\n NetworkInterface.transformRequest = function (obj) {\n var str = [];\n for (var p in obj) {\n if ((typeof obj[p] !== 'undefined') &&\n (typeof obj[p] !== 'function')) {\n str.push(encodeURIComponent(p) + '=' + encodeURIComponent(obj[p]));\n }\n }\n return str.join('&');\n };\n\n /**\n * Send request to the network and return a promise\n *\n * @method xhr\n * @param {String} type\n * @param {String} url\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.xhr = function (type, url, data) {\n\n var deferred = Q.defer();\n\n function onStateChange() {\n if (request.readyState === 4) {\n if (request.status >= 200 && request.status < 300) {\n deferred.resolve(NetworkInterface.parse(request));\n }\n }\n }\n\n function onLoad() {\n if (request.status >= 200 && request.status < 300) {\n deferred.resolve(NetworkInterface.parse(request));\n } else {\n deferred.reject(new Error(request.responseText));\n }\n }\n\n function onError() {\n deferred.reject(new Error('Can\\'t XHR ' + url));\n }\n\n function onProgress(event) {\n deferred.notify(event.loaded / event.total);\n }\n\n var request = new XMLHttpRequest();\n request.open(type, url, true);\n request.setRequestHeader('Accept', 'application/json');\n request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');\n request.onload = onLoad;\n request.onerror = onError;\n request.onprogress = onProgress;\n request.onreadystatechange = onStateChange;\n request.send(NetworkInterface.transformRequest(data));\n\n return deferred.promise;\n };\n\n /**\n * Get request\n *\n * @method get\n * @param {String} src\n * @param {Object} params\n * @returns {Promise}\n */\n NetworkInterface.prototype.get = function (src, params) {\n if (params) {\n src += '?' + NetworkInterface.transformRequest(params);\n }\n return this.xhr('GET', src).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n /**\n * Put request\n *\n * @method put\n * @param {String} src\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.put = function (url, data) {\n return this.xhr('PUT', url, data).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n /**\n * Post request\n *\n * @method post\n * @param {String} src\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.post = function (url, data) {\n return this.xhr('POST', url, data).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n /**\n * Delete request\n *\n * @method delete\n * @param {String} src\n * @param {Object} data\n * @returns {Promise}\n */\n NetworkInterface.prototype.delete = function (url, data) {\n return this.xhr('DELETE', url, data).then(\n function success(response) {\n return response;\n }, function error(response) {\n throw response;\n });\n };\n\n // Export\n scope.NetworkInterface = NetworkInterface;\n})(MyScript, Q);\n","'use strict';\n\n(function (scope, CryptoJS) {\n /**\n * Abstract recognizer interface\n *\n * @class AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function AbstractRecognizer(host) {\n this.host = 'cloud.myscript.com';\n if (host) {\n this.host = host;\n }\n this.http = new scope.NetworkInterface();\n }\n\n /**\n * Get the recognition languages available for an application and a specific inputMode\n *\n * @method getAvailableLanguageList\n * @param {String} applicationKey\n * @param {String} inputMode\n * @returns {Promise}\n */\n AbstractRecognizer.prototype.getAvailableLanguageList = function (applicationKey, inputMode) {\n var data = new scope.RecognitionLanguagesData();\n data.setApplicationKey(applicationKey);\n data.setInputMode(inputMode);\n\n return this.http.get('//' + this.host + '/api/v3.0/recognition/rest/text/languages.json', data).then(\n function success(response) {\n return response.result;\n },\n function error(response) {\n return response;\n }\n );\n };\n\n /**\n * Compute HMAC signature for server authentication\n *\n * @method computeHmac\n * @param {String} applicationKey\n * @param {String} data\n * @param {String} hmacKey\n */\n AbstractRecognizer.prototype.computeHmac = function (applicationKey, data, hmacKey) {\n var jsonInput = (typeof data === 'object') ? JSON.stringify(data) : data;\n return CryptoJS.HmacSHA512(jsonInput, applicationKey + hmacKey).toString(CryptoJS.enc.Hex);\n };\n // Export\n scope.AbstractRecognizer = AbstractRecognizer;\n})(MyScript, CryptoJS);","'use strict';\n\n(function (scope) {\n /**\n * Abstract WebSocket recognizer interface\n *\n * @class AbstractWSRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function AbstractWSRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n }\n\n /**\n * Inheritance property\n */\n AbstractWSRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n AbstractWSRecognizer.prototype.constructor = AbstractWSRecognizer;\n\n AbstractWSRecognizer.prototype.getMessageCallback = function () {\n return this.messageCallback;\n };\n\n AbstractWSRecognizer.prototype.setMessageCallback = function (callback) {\n this.messageCallback = callback;\n };\n\n AbstractWSRecognizer.prototype.getOpenCallback = function () {\n return this.openCallback;\n };\n\n AbstractWSRecognizer.prototype.setOpenCallback = function (callback) {\n this.openCallback = callback;\n };\n\n AbstractWSRecognizer.prototype.getCloseCallback = function () {\n return this.closeCallback;\n };\n\n AbstractWSRecognizer.prototype.setCloseCallback = function (callback) {\n this.closeCallback = callback;\n };\n\n AbstractWSRecognizer.prototype.getErrorCallback = function () {\n return this.errorCallback;\n };\n\n AbstractWSRecognizer.prototype.setErrorCallback = function (callback) {\n this.errorCallback = callback;\n };\n\n /**\n * Get the current state of the connection\n *\n * @method getState\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.getState = function () {\n var deferred = Q.defer();\n if (!this.socket) {\n deferred.reject(new Error('Can\\'t find WebSocket'));\n } else {\n deferred.resolve(this.socket.readyState);\n }\n return deferred.promise;\n };\n\n /**\n * Close the socket\n *\n * @method close\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.close = function () {\n var deferred = Q.defer();\n if (!this.socket) {\n deferred.reject(new Error('Can\\'t find WebSocket'));\n } else {\n deferred.resolve(this.socket.close());\n }\n return deferred.promise;\n };\n\n /**\n * Send a message\n *\n * @method sendMessage\n * @param {AbstractWSMessage} message\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.sendMessage = function (message) {\n var deferred = Q.defer();\n if (!this.socket) {\n deferred.reject(new Error('Can\\'t find WebSocket'));\n } else {\n deferred.resolve(this.socket.send(JSON.stringify(message)));\n }\n return deferred.promise;\n };\n\n /**\n * Initialize the WebSocket\n *\n * @method initWSRecognition\n * @param {String} applicationKey\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.initWSRecognition = function (applicationKey) {\n var message = new scope.InitRequestWSMessage();\n message.setApplicationKey(applicationKey);\n return this.sendMessage(message);\n };\n\n /**\n * Authenticate the WebSocket client end with a handshake of HMAC signature\n *\n * @method takeUpHmacChallenge\n * @param {String} applicationKey\n * @param {String} challenge\n * @param {String} hmacKey\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.takeUpHmacChallenge = function (applicationKey, challenge, hmacKey) {\n var message = new scope.ChallengeRequestWSMessage();\n message.setApplicationKey(applicationKey);\n message.setChallenge(challenge);\n message.setHmacSignature(this.computeHmac(applicationKey, challenge, hmacKey));\n return this.sendMessage(message);\n };\n\n /**\n * Reset the WebSocket recognition session\n *\n * @method resetWSRecognition\n * @returns {Promise}\n */\n AbstractWSRecognizer.prototype.resetWSRecognition = function () {\n var message = new scope.ResetRequestWSMessage();\n return this.sendMessage(message);\n };\n\n // Export\n scope.AbstractWSRecognizer = AbstractWSRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text recognizer interface\n *\n * @class TextRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function TextRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.TextParameter();\n this.parameters.setLanguage('en_US');\n this.parameters.setInputMode('CURSIVE');\n }\n\n /**\n * Inheritance property\n */\n TextRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n TextRecognizer.prototype.constructor = TextRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do text recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {TextParameter} parameters\n * @param {String} instanceId\n * @param {TextInputUnit[]} inputUnits\n * @param {String} hmacKey\n * @returns {Promise}\n */\n TextRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, inputUnits, hmacKey, parameters) {\n\n var input = new scope.TextRecognitionInput();\n if (parameters) {\n input.setParameters(parameters);\n } else {\n input.setParameters(this.parameters);\n }\n input.setInputUnits(inputUnits);\n\n var data = new scope.TextRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setTextRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/text/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.TextResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.TextRecognizer = TextRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Text WebSocket recognizer interface\n *\n * @class TextWSRecognizer\n * @extends AbstractWSRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function TextWSRecognizer(host) {\n scope.AbstractWSRecognizer.call(this, host);\n this.parameters = new scope.TextParameter();\n this.parameters.setLanguage('en_US');\n this.parameters.setInputMode('CURSIVE');\n\n this.socket = new WebSocket('ws://' + this.host + '/api/v3.0/recognition/ws/text');\n var self = this;\n this.socket.onopen = function (message) {\n console.log('WebSocket opened');\n if (self.openCallback) {\n self.openCallback(message);\n }\n };\n this.socket.onmessage = function (message) {\n var data = JSON.parse(message.data);\n console.log('WebSocket message received');\n switch (data.type) {\n case 'init':\n data = new scope.InitResponseWSMessage(data);\n break;\n case 'error':\n data = new scope.ErrorResponseWSMessage(data);\n break;\n case 'hmacChallenge':\n data = new scope.ChallengeResponseWSMessage(data);\n break;\n default:\n data = new scope.TextResponseWSMessage(data);\n break;\n }\n if (self.messageCallback) {\n self.messageCallback(data);\n }\n };\n this.socket.onerror = function (message) {\n console.log('WebSocket error received');\n if (self.errorCallback) {\n self.errorCallback(message);\n }\n };\n this.socket.onclose = function (message) {\n console.log('WebSocket opened');\n if (self.closeCallback) {\n self.closeCallback(message);\n }\n };\n }\n\n /**\n * Inheritance property\n */\n TextWSRecognizer.prototype = new scope.AbstractWSRecognizer();\n\n /**\n * Constructor property\n */\n TextWSRecognizer.prototype.constructor = TextWSRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {TextParameter}\n */\n TextWSRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {TextParameter} parameters\n */\n TextWSRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Start the WebSocket session\n *\n * @method startWSRecognition\n * @param {TextInputUnit[]} inputUnits\n * @param {TextParameter} [parameters]\n * @returns {Promise}\n */\n TextWSRecognizer.prototype.startWSRecognition = function (inputUnits, parameters) {\n var message = new scope.TextStartRequestWSMessage();\n if (parameters) {\n message.setParameters(parameters);\n } else {\n message.setParameters(this.getParameters());\n }\n message.setInputUnits(inputUnits);\n return this.sendMessage(message);\n };\n\n /**\n * Continue the recognition\n *\n * @method continueWSRecognition\n * @param {TextInputUnit[]} inputUnits\n * @param {String} instanceId\n * @returns {Promise}\n */\n TextWSRecognizer.prototype.continueWSRecognition = function (inputUnits, instanceId) {\n var message = new scope.TextContinueRequestWSMessage();\n message.setInputUnits(inputUnits);\n message.setInstanceId(instanceId);\n return this.sendMessage(message);\n };\n\n /**\n * Do text WebSocket recognition\n *\n * @method doWSRecognition\n * @param {String} instanceId\n * @param {TextInputUnit[]} inputUnits\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n TextWSRecognizer.prototype.doWSRecognition = function (instanceId, inputUnits, parameters) {\n if (!instanceId) {\n return this.startWSRecognition(inputUnits, parameters);\n } else {\n return this.continueWSRecognition(inputUnits, instanceId);\n }\n };\n\n // Export\n scope.TextWSRecognizer = TextWSRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Shape recognizer interface\n *\n * @class ShapeRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function ShapeRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.ShapeParameter();\n }\n\n /**\n * Inheritance property\n */\n ShapeRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n ShapeRecognizer.prototype.constructor = ShapeRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {ShapeParameter}\n */\n ShapeRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {ShapeParameter} parameters\n */\n ShapeRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do shape recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {ShapeParameter} [parameters]\n * @returns {Promise}\n */\n ShapeRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n\n var input = new scope.ShapeRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setDoBeautification(parameters.hasBeautification());\n input.setRejectDetectionSensitivity(parameters.getRejectDetectionSensitivity());\n } else {\n input.setDoBeautification(this.getParameters().hasBeautification());\n input.setRejectDetectionSensitivity(this.getParameters().getRejectDetectionSensitivity());\n }\n\n var data = new scope.ShapeRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setShapeRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/shape/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.ShapeResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n /**\n * Clear shape recognition session\n *\n * @method clearShapeRecognitionSession\n * @param {String} applicationKey\n * @param {String} instanceId\n * @returns {Promise}\n */\n ShapeRecognizer.prototype.clearShapeRecognitionSession = function (applicationKey, instanceId) {\n\n var data = {\n instanceSessionId: instanceId\n };\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/shape/clearSessionId.json', data).then(\n function success(response) {\n return response;\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.ShapeRecognizer = ShapeRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math recognizer interface\n *\n * @class MathRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function MathRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.MathParameter();\n }\n\n /**\n * Inheritance property\n */\n MathRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n MathRecognizer.prototype.constructor = MathRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MathParameter}\n */\n MathRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MathParameter} parameters\n */\n MathRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do math recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n MathRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n var input = new scope.MathRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setResultTypes(parameters.getResultTypes());\n input.setColumnar(parameters.isColumnar());\n input.setScratchOutDetectionSensitivity(parameters.getScratchOutDetectionSensitivity());\n input.setUserResources(parameters.getUserResources());\n } else {\n input.setResultTypes(this.getParameters().getResultTypes());\n input.setColumnar(this.getParameters().isColumnar());\n input.setScratchOutDetectionSensitivity(this.getParameters().getScratchOutDetectionSensitivity());\n input.setUserResources(this.getParameters().getUserResources());\n }\n\n var data = new scope.MathRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setMathRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/math/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.MathResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.MathRecognizer = MathRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Math WebSocket recognizer interface\n *\n * @class MathWSRecognizer\n * @extends AbstractWSRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function MathWSRecognizer(host) {\n scope.AbstractWSRecognizer.call(this, host);\n this.parameters = new scope.MathParameter();\n\n this.socket = new WebSocket('ws://' + this.host + '/api/v3.0/recognition/ws/math');\n var self = this;\n this.socket.onopen = function (message) {\n console.log('WebSocket opened');\n if (self.openCallback) {\n self.openCallback(message);\n }\n };\n this.socket.onmessage = function (message) {\n var data = JSON.parse(message.data);\n console.log('WebSocket message received');\n switch (data.type) {\n case 'init':\n data = new scope.InitResponseWSMessage(data);\n break;\n case 'error':\n data = new scope.ErrorResponseWSMessage(data);\n break;\n case 'hmacChallenge':\n data = new scope.ChallengeResponseWSMessage(data);\n break;\n default:\n data = new scope.MathResponseWSMessage(data);\n break;\n }\n if (self.messageCallback) {\n self.messageCallback(data);\n }\n };\n this.socket.onerror = function (message) {\n console.log('WebSocket error received');\n if (self.errorCallback) {\n self.errorCallback(message);\n }\n };\n this.socket.onclose = function (message) {\n console.log('WebSocket opened');\n if (self.closeCallback) {\n self.closeCallback(message);\n }\n };\n }\n\n /**\n * Inheritance property\n */\n MathWSRecognizer.prototype = new scope.AbstractWSRecognizer();\n\n /**\n * Constructor property\n */\n MathWSRecognizer.prototype.constructor = MathWSRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MathParameter}\n */\n MathWSRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MathParameter} parameters\n */\n MathWSRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Start the WebSocket session\n *\n * @method startWSRecognition\n * @param {AbstractComponent[]} components\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n MathWSRecognizer.prototype.startWSRecognition = function (components, parameters) {\n var message = new scope.MathStartRequestWSMessage();\n if (parameters) {\n message.setParameters(parameters);\n } else {\n message.setParameters(this.getParameters());\n }\n message.setComponents(components);\n return this.sendMessage(message);\n };\n\n /**\n * Continue the recognition\n *\n * @method continueWSRecognition\n * @param {AbstractComponent[]} components\n * @param {String} instanceId\n * @returns {Promise}\n */\n MathWSRecognizer.prototype.continueWSRecognition = function (components, instanceId) {\n var message = new scope.MathContinueRequestWSMessage();\n message.setComponents(components);\n message.setInstanceId(instanceId);\n return this.sendMessage(message);\n };\n\n /**\n * Do math WebSocket recognition\n *\n * @method doWSRecognition\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {MathParameter} [parameters]\n * @returns {Promise}\n */\n MathWSRecognizer.prototype.doWSRecognition = function (instanceId, components, parameters) {\n if (!instanceId) {\n return this.startWSRecognition(components, parameters);\n } else {\n return this.continueWSRecognition(components, instanceId);\n }\n };\n\n // Export\n scope.MathWSRecognizer = MathWSRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Music recognizer interface\n *\n * @class MusicRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function MusicRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.MusicParameter();\n }\n\n /**\n * Inheritance property\n */\n MusicRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n MusicRecognizer.prototype.constructor = MusicRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {MusicParameter}\n */\n MusicRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {MusicParameter} parameters\n */\n MusicRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do music recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {MusicParameter} [parameters]\n * @returns {Promise}\n */\n MusicRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n\n var input = new scope.MusicRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setStaff(parameters.getStaff());\n input.setDivisions(parameters.getDivisions());\n input.setResultTypes(parameters.getResultTypes());\n input.setScratchOutDetectionSensitivity(parameters.getScratchOutDetectionSensitivity());\n input.setUserResources(parameters.getUserResources());\n } else {\n input.setStaff(this.getParameters().getStaff());\n input.setDivisions(this.getParameters().getDivisions());\n input.setResultTypes(this.getParameters().getResultTypes());\n input.setScratchOutDetectionSensitivity(this.getParameters().getScratchOutDetectionSensitivity());\n input.setUserResources(this.getParameters().getUserResources());\n }\n\n var data = new scope.MusicRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setMusicRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/music/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.MusicResult(response);\n },\n function error(response) {\n throw response;\n }\n );\n };\n\n // Export\n scope.MusicRecognizer = MusicRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Analyzer recognizer interface\n *\n * @class AnalyzerRecognizer\n * @extends AbstractRecognizer\n * @param {String} [host='cloud.myscript.com'] Recognition service host\n * @constructor\n */\n function AnalyzerRecognizer(host) {\n scope.AbstractRecognizer.call(this, host);\n this.parameters = new scope.AnalyzerParameter();\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRecognizer.prototype = new scope.AbstractRecognizer();\n\n /**\n * Constructor property\n */\n AnalyzerRecognizer.prototype.constructor = AnalyzerRecognizer;\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {AnalyzerParameter}\n */\n AnalyzerRecognizer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {AnalyzerParameter} parameters\n */\n AnalyzerRecognizer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Do analyzer recognition\n *\n * @method doSimpleRecognition\n * @param {String} applicationKey\n * @param {String} instanceId\n * @param {AbstractComponent[]} components\n * @param {String} hmacKey\n * @param {AnalyzerParameter} [parameters]\n * @returns {Promise}\n */\n AnalyzerRecognizer.prototype.doSimpleRecognition = function (applicationKey, instanceId, components, hmacKey, parameters) {\n\n var input = new scope.AnalyzerRecognitionInput();\n input.setComponents(components);\n if (parameters) {\n input.setParameters(parameters);\n } else {\n input.setParameters(this.getParameters());\n }\n\n var data = new scope.AnalyzerRecognitionData();\n data.setApplicationKey(applicationKey);\n data.setAnalyzerRecognitionInput(input);\n data.setInstanceId(instanceId);\n data.setHmac(this.computeHmac(applicationKey, input, hmacKey));\n\n return this.http.post('//' + this.host + '/api/v3.0/recognition/rest/analyzer/doSimpleRecognition.json', data).then(\n function success(response) {\n return new scope.AnalyzerResult(response);\n },\n function error(response) {\n return response;\n }\n );\n };\n\n // Export\n scope.AnalyzerRecognizer = AnalyzerRecognizer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Parameters used for both input and output canvas draw. Default values:\n * color: 'black';\n * rectColor: 'rgba(0, 0, 0, 0.2)';\n * font: 'Times New Roman';\n * decoration: '';\n * width: 4;\n * pressureType: 'SIMULATED';\n * alpha: '1.0';\n * doFadeOutLoop: false;\n * showBoundingBoxes: false;\n *\n * @class RenderingParameters\n * @constructor\n */\n function RenderingParameters() {\n this.color = 'black';\n this.rectColor = 'rgba(0, 0, 0, 0.2)';\n this.font = 'Times New Roman';\n this.decoration = '';\n this.width = 4;\n this.pressureType = 'SIMULATED';\n this.alpha = '1.0';\n this.doFadeOutLoop = false;\n this.showBoundingBoxes = false;\n }\n\n /**\n * Get the color renderer parameter\n *\n * @method getColor\n * @returns {String} The color of the ink\n */\n RenderingParameters.prototype.getColor = function () {\n return this.color;\n };\n\n /**\n * Set the color renderer parameter\n *\n * @method setColor\n * @param {String} color\n */\n RenderingParameters.prototype.setColor = function (color) {\n this.color = color;\n };\n\n /**\n * Get the rect renderer parameter\n *\n * @method getRectColor\n * @returns {String} the rectangle color\n */\n RenderingParameters.prototype.getRectColor = function () {\n return this.rectColor;\n };\n\n /**\n * Set the rect renderer parameter\n *\n * @method setRectColor\n * @param {String} rectColor\n */\n RenderingParameters.prototype.setRectColor = function (rectColor) {\n this.rectColor = rectColor;\n };\n\n /**\n * Get the font renderer parameter\n *\n * @method getFont\n * @returns {String} The font\n */\n RenderingParameters.prototype.getFont = function () {\n return this.font;\n };\n\n /**\n * Set the font renderer parameter\n *\n * @method setFont\n * @param {String} font\n */\n RenderingParameters.prototype.setFont = function (font) {\n this.font = font;\n };\n\n /**\n * Get the decoration renderer parameter\n *\n * @method getDecoration\n * @returns {String} The decoration\n */\n RenderingParameters.prototype.getDecoration = function () {\n return this.decoration;\n };\n\n /**\n * Set the decoration renderer parameter\n *\n * @method setDecoration\n * @param {String} decoration\n */\n RenderingParameters.prototype.setDecoration = function (decoration) {\n this.decoration = decoration;\n };\n\n /**\n * Get the width renderer parameter\n *\n * @method getWidth\n * @returns {Number} The ink width\n */\n RenderingParameters.prototype.getWidth = function () {\n return this.width;\n };\n\n /**\n * Set the width renderer parameter\n *\n * @method setWidth\n * @param {Number} width\n */\n RenderingParameters.prototype.setWidth = function (width) {\n this.width = width;\n };\n\n /**\n * Get the pressure renderer parameter\n *\n * @method getPressureType\n * @returns {String} The pressure type\n */\n RenderingParameters.prototype.getPressureType = function () {\n return this.pressureType;\n };\n\n /**\n * Set the pressure renderer parameter\n *\n * @method setPressureType\n * @param {String} pressureType\n */\n RenderingParameters.prototype.setPressureType = function (pressureType) {\n this.pressureType = pressureType;\n };\n\n /**\n * Get the alpha renderer parameter\n *\n * @method getAlpha\n * @returns {String} The alpha\n */\n RenderingParameters.prototype.getAlpha = function () {\n return this.alpha;\n };\n\n /**\n * Set the alpha renderer parameter\n *\n * @method setAlpha\n * @param {String} alpha\n */\n RenderingParameters.prototype.setAlpha = function (alpha) {\n this.alpha = alpha;\n };\n\n /**\n * Get fade out ink fore HTML5 canvas\n *\n * @method getDoFadeOutLoop\n * @returns {Boolean}\n */\n RenderingParameters.prototype.getDoFadeOutLoop = function () {\n return this.doFadeOutLoop;\n };\n\n /**\n * Set fade out ink fore HTML5 canvas\n *\n * @method setDoFadeOutLoop\n * @param {Boolean} doFadeOutLoop\n */\n RenderingParameters.prototype.setDoFadeOutLoop = function (doFadeOutLoop) {\n this.doFadeOutLoop = doFadeOutLoop;\n };\n\n /**\n * This property is use to show or not show the bounding box\n *\n * @method getShowBoundingBoxes\n * @returns {Boolean}\n */\n RenderingParameters.prototype.getShowBoundingBoxes = function () {\n return this.showBoundingBoxes;\n };\n\n /**\n * Set the show state of bounding box\n *\n * @method setShowBoundingBoxes\n * @param {Boolean} showBoundingBoxes\n */\n RenderingParameters.prototype.setShowBoundingBoxes = function (showBoundingBoxes) {\n this.showBoundingBoxes = showBoundingBoxes;\n };\n\n // Export\n scope.RenderingParameters = RenderingParameters;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Abstract Renderer. It's used to calculate the ink rendering in HTML5 canvas\n *\n * @class AbstractRenderer\n * @constructor\n */\n function AbstractRenderer() {\n this.points = [];\n this.drawing = false;\n this.parameters = new scope.RenderingParameters();\n }\n\n /**\n * Get parameters\n *\n * @method getParameters\n * @returns {RenderingParameters}\n */\n AbstractRenderer.prototype.getParameters = function () {\n return this.parameters;\n };\n\n /**\n * Set parameters\n *\n * @method setParameters\n * @param {RenderingParameters} parameters\n */\n AbstractRenderer.prototype.setParameters = function (parameters) {\n this.parameters = parameters;\n };\n\n /**\n * Draw recognition result on HTML5 canvas.\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {Object} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw input components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n this.drawStroke(component, context, parameters);\n } else if (component instanceof scope.CharacterInputComponent) {\n this.drawCharacter(component, context, parameters);\n }\n }\n };\n\n /**\n * Record the beginning of drawing\n *\n * @method drawStart\n * @param {Number} x\n * @param {Number} y\n */\n AbstractRenderer.prototype.drawStart = function (x, y) {\n this.points.length = 0;\n this.drawing = true;\n this.points.push({\n x: x,\n y: y,\n pressure: 0.5,\n distance: 0.0,\n length: 0.0,\n ux: 0.0,\n uy: 0.0,\n x1: 0.0,\n x2: 0.0,\n y1: 0.0,\n y2: 0.0\n });\n };\n\n /**\n * Record the drawing\n *\n * @method drawContinue\n * @param {Number} x\n * @param {Number} y\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawContinue = function (x, y, context, parameters) {\n if (this.drawing) {\n var point = {\n x: x,\n y: y,\n pressure: 0.5,\n distance: 0.0,\n length: 0.0,\n ux: 0.0,\n uy: 0.0,\n x1: 0.0,\n x2: 0.0,\n y1: 0.0,\n y2: 0.0\n };\n this.points.push(point);\n\n if (this.points.length > 1) {\n var previous = this.points[this.points.length - 2];\n\n if (this.points.length === 2) {\n this.drawQuadratricStart(previous, point, context, parameters);\n } else {\n var third = this.points[this.points.length - 3];\n this.drawQuadratricContinue(third, previous, point, context, parameters);\n }\n\n }\n }\n };\n\n /**\n * Stop record of drawing\n *\n * @method drawEnd\n * @param {Number} x\n * @param {Number} y\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawEnd = function (x, y, context, parameters) {\n if (this.drawing) {\n if (this.points.length === 1) {\n this.drawPoint({\n x: x,\n y: y,\n pressure: 0.5,\n distance: 0.0,\n length: 0.0,\n ux: 0.0,\n uy: 0.0,\n x1: 0.0,\n x2: 0.0,\n y1: 0.0,\n y2: 0.0\n }, context, parameters);\n } else if (this.points.length > 1) {\n var lastPoint = this.points[this.points.length - 1];\n var point = this.points[this.points.length - 2];\n this.drawQuadratricEnd(point, lastPoint, context, parameters);\n }\n this.drawing = false;\n }\n };\n\n /**\n * Clear the context's canvas content to erase drawing strokes\n *\n * @method clear\n * @param {Object} context\n */\n AbstractRenderer.prototype.clear = function (context) {\n context.clearRect(0, 0, context.canvas.width, context.canvas.height);\n };\n\n /**\n * Draw guidelines on the HTML5 canvas\n *\n * @method drawGuidelines\n * @param {Number} horizontalSpacing\n * @param {Number} verticalSpacing\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawGuidelines = function (horizontalSpacing, verticalSpacing, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.clearRect(0, 0, context.canvas.clientWidth, context.canvas.clientHeight);\n\n if (verticalSpacing) {\n for (var y = verticalSpacing; y < context.canvas.clientHeight - verticalSpacing; y += verticalSpacing) {\n context.beginPath();\n context.moveTo(horizontalSpacing, y);\n context.lineTo(context.canvas.clientWidth - horizontalSpacing, y);\n context.stroke();\n }\n }\n if (horizontalSpacing) {\n for (var x = horizontalSpacing; x < context.canvas.clientWidth - horizontalSpacing; x += horizontalSpacing) {\n context.beginPath();\n context.moveTo(x, verticalSpacing);\n context.lineTo(x, context.canvas.clientHeight - verticalSpacing);\n context.stroke();\n }\n }\n } finally {\n context.restore();\n }\n };\n\n /**\n * Trace line on context\n *\n * @method drawLineByCoordinates\n * @param {Number} lX\n * @param {Number} lY\n * @param {Number} cX\n * @param {Number} cY\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawLineByCoordinates = function (lX, lY, cX, cY, context, parameters) {\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n // line from\n context.moveTo(lX, lY);\n // to\n context.lineTo(cX, cY);\n // draw it\n context.stroke();\n } finally {\n context.restore();\n }\n };\n\n /**\n * Draw a line on context\n *\n * @method drawLineByPoints\n * @param {QuadraticPoint} firstPoint\n * @param {QuadraticPoint} lastPoint\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawLineByPoints = function (firstPoint, lastPoint, context, parameters) {\n this.drawLineByCoordinates(firstPoint.x, firstPoint.y, lastPoint.x, lastPoint.y, context, parameters);\n };\n\n /**\n * Draw a rectangle on context\n *\n * @method drawRectangle\n * @param {Rectangle} rectangle\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawRectangle = function (rectangle, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getRectColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getRectColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.fillRect(rectangle.getX(), rectangle.getY(), rectangle.getWidth(), rectangle.getHeight());\n\n } finally {\n context.restore();\n }\n };\n\n /**\n * Draw strokes on context\n *\n * @method drawStrokes\n * @param {Stroke[]} strokes\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawStrokes = function (strokes, context, parameters) {\n for (var i in strokes) {\n this.drawStroke(strokes[i], context, parameters);\n }\n };\n\n /**\n * Draw a stroke on context\n *\n * @method drawStroke\n * @param {Stroke} stroke\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawStroke = function (stroke, context, parameters) {\n var strokePoints = [];\n for (var j = 0; j < stroke.getLength(); j++) {\n strokePoints.push(new scope.QuadraticPoint({\n x: stroke.getX()[j],\n y: stroke.getY()[j]\n }));\n }\n if (stroke.getLength() === 1) {\n this.drawPoint(strokePoints[0], context, parameters);\n } else {\n for (var k = 0; k < stroke.getLength(); k++) {\n if (k === 0) {\n var p1 = strokePoints[0];\n var p2 = strokePoints[1];\n this.drawQuadratricStart(p1, p2, context, parameters);\n } else if (k < stroke.getLength() - 1) {\n var p3 = strokePoints[k - 1];\n var p4 = strokePoints[k];\n var p5 = strokePoints[k + 1];\n this.drawQuadratricContinue(p3, p4, p5, context, parameters);\n } else if (k > 1) {\n var p6 = strokePoints[k - 1];\n var p7 = strokePoints[k];\n this.drawQuadratricEnd(p6, p7, context, parameters);\n }\n }\n }\n };\n\n /**\n * Draw character\n *\n * @private\n * @method drawCharacter\n * @param {CharacterInputComponent} character\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawCharacter = function (character, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw point on context\n *\n * @method drawPoint\n * @param {QuadraticPoint} point\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawPoint = function (point, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n\n context.beginPath();\n context.arc(point.x, point.y, 0.5 * parameters.getWidth(), 0, 2 * Math.PI);\n context.fill();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n\n context.beginPath();\n context.arc(point.x, point.y, 0.5 * this.parameters.getWidth(), 0, 2 * Math.PI);\n context.fill();\n }\n } finally {\n context.restore();\n }\n\n };\n\n /**\n * Draw an arrow head on context\n *\n * @method drawArrowHead\n * @param {QuadraticPoint} headPoint\n * @param {Number} angle\n * @param {Number} length\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawArrowHead = function (headPoint, angle, length, context, parameters) {\n\n var alpha = phi(angle + Math.PI - (Math.PI / 8)),\n beta = phi(angle - Math.PI + (Math.PI / 8));\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.moveTo(headPoint.x, headPoint.y);\n context.beginPath();\n context.lineTo(headPoint.x + (length * Math.cos(alpha)), headPoint.y + (length * Math.sin(alpha)));\n context.lineTo(headPoint.x + (length * Math.cos(beta)), headPoint.y + (length * Math.sin(beta)));\n context.lineTo(headPoint.x, headPoint.y);\n context.fill();\n\n } finally {\n context.restore();\n }\n\n };\n\n /**\n * Get Strokes from inkRange\n *\n * @method extractStroke\n * @param {Stroke[]} strokes\n * @param {Object} inkRange\n * @result {Stroke[]} List of strokes from inkRange\n */\n AbstractRenderer.prototype.extractStroke = function (strokes, inkRange) {\n var result = [],\n firstPointIndex = Math.floor(inkRange.getFirstPoint()),\n lastPointIndex = Math.ceil(inkRange.getLastPoint());\n\n for (var strokeIndex = inkRange.getFirstStroke(); strokeIndex <= inkRange.getLastStroke(); strokeIndex++) {\n var currentStroke = strokes[strokeIndex];\n var currentStrokePointCount = currentStroke.x.length;\n\n var newStroke = new scope.Stroke(), x = [], y = [];\n\n for (var pointIndex = firstPointIndex; (strokeIndex === inkRange.getLastStroke() && pointIndex <= lastPointIndex && pointIndex < currentStrokePointCount) || (strokeIndex !== inkRange.getLastStroke() && pointIndex < currentStrokePointCount); pointIndex++) {\n x.push(currentStroke.x[pointIndex]);\n y.push(currentStroke.y[pointIndex]);\n }\n\n newStroke.setX(x);\n newStroke.setY(y);\n result.push(newStroke);\n }\n return result;\n };\n\n /**\n * Draw a quadratic stroke on context\n *\n * @private\n * @method drawQuadratricStart\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawQuadratricStart = function (p1, p2, context, parameters) {\n\n if (parameters) {\n computePoint(null, p1, true, false, parameters.getPressureType(), parameters.getWidth());\n } else {\n computePoint(null, p1, true, false, this.parameters.getPressureType(), this.parameters.getWidth());\n }\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n strokeFirstSegment(p1, p2, context);\n context.fill();\n } finally {\n context.restore();\n }\n\n };\n\n /**\n * Continue to draw a quadratic stroke on context\n *\n * @private\n * @method drawQuadratricContinue\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {QuadraticPoint} p3\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawQuadratricContinue = function (p1, p2, p3, context, parameters) {\n\n if (parameters) {\n computePoint(p2, p3, false, false, parameters.getPressureType(), parameters.getWidth());\n } else {\n computePoint(p2, p3, false, false, this.parameters.getPressureType(), this.parameters.getWidth());\n }\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n strokeSegment(p1, p2, p3, context);\n context.fill();\n } finally {\n context.restore();\n }\n };\n\n /**\n * Stop to draw a quadratic stroke\n *\n * @private\n * @method drawQuadratricEnd\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AbstractRenderer.prototype.drawQuadratricEnd = function (p1, p2, context, parameters) {\n\n if (parameters) {\n computePoint(p1, p2, false, true, parameters.getPressureType(), parameters.getWidth());\n } else {\n computePoint(p1, p2, false, true, this.parameters.getPressureType(), this.parameters.getWidth());\n }\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n strokeLastSegment(p1, p2, context);\n context.fill();\n } finally {\n context.restore();\n }\n };\n\n /**\n * Render the first stroke segment.\n *\n * @private\n * @method strokeFirstSegment\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n */\n var strokeFirstSegment = function (p1, p2, context) {\n // compute start points\n var x11 = p1.x1,\n y11 = p1.y1,\n x12 = p1.x2,\n y12 = p1.y2,\n // compute end points\n x21 = 0.5 * p1.x1 + p2.x1,\n y21 = 0.5 * p1.y1 + p2.y1,\n x22 = 0.5 * p1.x2 + p2.x2,\n y22 = 0.5 * p1.y2 + p2.y2;\n\n // stroke segment\n context.moveTo(x11, y11);\n context.lineTo(x21, y21);\n context.lineTo(x22, y22);\n context.lineTo(x12, y12);\n context.lineTo(x11, y11);\n };\n\n /**\n * Render a stroke segment\n *\n * @private\n * @method strokeSegment\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {QuadraticPoint} p3\n * @param {Object} context\n */\n var strokeSegment = function (p1, p2, p3, context) {\n // compute start points\n var x11 = 0.5 * (p1.x1 + p2.x1),\n y11 = 0.5 * (p1.y1 + p2.y1),\n x12 = 0.5 * (p1.x2 + p2.x2),\n y12 = 0.5 * (p1.y2 + p2.y2),\n // compute end points\n x21 = 0.5 * (p2.x1 + p3.x1),\n y21 = 0.5 * (p2.y1 + p3.y1),\n x22 = 0.5 * (p2.x2 + p3.x2),\n y22 = 0.5 * (p2.y2 + p3.y2);\n // stroke segment\n context.moveTo(x11, y11);\n context.quadraticCurveTo(p2.x1, p2.y1, x21, y21);\n context.lineTo(x22, y22);\n context.quadraticCurveTo(p2.x2, p2.y2, x12, y12);\n context.lineTo(x11, y11);\n };\n\n /**\n * Render the last stroke segment\n *\n * @private\n * @method strokeLastSegment\n * @param {QuadraticPoint} p1\n * @param {QuadraticPoint} p2\n * @param {Object} context\n */\n var strokeLastSegment = function (p1, p2, context) {\n // compute start points\n var x11 = 0.5 * (p1.x1 + p2.x1),\n y11 = 0.5 * (p1.y1 + p2.y1),\n x12 = 0.5 * (p1.x2 + p2.x2),\n y12 = 0.5 * (p1.y2 + p2.y2),\n // compute end points\n x21 = p2.x1,\n y21 = p2.y1,\n x22 = p2.x2,\n y22 = p2.y2;\n // stroke segment\n context.moveTo(x11, y11);\n context.lineTo(x21, y21);\n context.lineTo(x22, y22);\n context.lineTo(x12, y12);\n context.lineTo(x11, y11);\n };\n\n /**\n * Clamp an angle into the range [-PI, +PI]\n *\n * @private\n * @method phi\n * @param {Number} angle\n * @returns {Number}\n */\n var phi = function (angle) {\n angle = ((angle + Math.PI) % (Math.PI * 2)) - Math.PI;\n if (angle < -Math.PI) {\n angle += Math.PI * 2;\n }\n return angle;\n };\n\n /**\n * Compute all necessary point parameters to draw quadratics\n *\n * @private\n * @method computePoint\n * @param {QuadraticPoint} previous\n * @param {QuadraticPoint} point\n * @param {Boolean} isFirst\n * @param {Boolean} isLast\n * @param {String} pressureType\n * @param {Number} penWidth\n */\n var computePoint = function (previous, point, isFirst, isLast, pressureType, penWidth) {\n\n // compute distance from previous point\n if (previous !== null) {\n computeDistance(previous, point);\n var strokeLength = previous.length + point.distance;\n point.length = strokeLength;\n }\n // compute pressure\n switch (pressureType) {\n case 'SIMULATED':\n computePressure(point, point.distance, point.length);\n break;\n case 'CONSTANT':\n point.pressure = 1.0;\n break;\n case 'REAL':\n // keep the current pressure\n break;\n default:\n throw new Error('Unknown pressure type');\n }\n computeLastControls(point, penWidth);\n // compute control points\n if (previous !== null && !isLast) {\n if (isFirst) {\n computeFirstControls(previous, point, penWidth);\n }\n if (isLast) {\n computeLastControls(point, penWidth);\n } else {\n computeControls(previous, point, penWidth);\n }\n }\n };\n\n /**\n * Compute distance and unit vector from the previous point.\n *\n * @private\n * @method computeDistance\n * @param {QuadraticPoint} previous\n * @param {QuadraticPoint} point\n */\n var computeDistance = function (previous, point) {\n var dx = point.x - previous.x,\n dy = point.y - previous.y,\n d = Math.sqrt(dx * dx + dy * dy);\n\n if (d !== 0) {\n point.distance = d;\n point.ux = dx / d;\n point.uy = dy / d;\n }\n };\n\n /**\n * Compute simulated pressure of given point.\n *\n * @private\n * @method computePressure\n * @param {QuadraticPoint} point\n * @param {Number} distance\n * @param {Number} length\n */\n var computePressure = function (point, distance, length) {\n var k, pressure;\n if (distance < 10) {\n k = 0.2 + Math.pow(0.1 * distance, 0.4);\n } else if (distance > length - 10) {\n k = 0.2 + Math.pow(0.1 * (length - distance), 0.4);\n } else {\n k = 1.0;\n }\n\n pressure = k * Math.max(0.1, 1.0 - 0.1 * Math.sqrt(point.distance));\n if (isNaN(parseFloat(pressure))) {\n pressure = 0.5;\n }\n point.pressure = pressure;\n };\n\n /**\n * Compute control points of the first point.\n *\n * @private\n * @method computeFirstControls\n * @param {QuadraticPoint} first First point of the list to be computed\n * @param {QuadraticPoint} next Next point\n * @param {Number} penWidth Pen width\n */\n var computeFirstControls = function (first, next, penWidth) {\n var r = 0.5 * penWidth * first.pressure,\n nx = -r * next.uy,\n ny = r * next.ux;\n\n first.x1 = first.x + nx;\n first.y1 = first.y + ny;\n first.x2 = first.x - nx;\n first.y1 = first.y - ny;\n };\n\n /**\n * Compute control points between two points.\n *\n * @private\n * @method computeControls\n * @param {QuadraticPoint} point Point to be computed\n * @param {QuadraticPoint} next Next point\n * @param {Number} penWidth Pen width\n */\n var computeControls = function (point, next, penWidth) {\n var ux = point.ux + next.ux,\n uy = point.uy + next.uy,\n u = Math.sqrt(ux * ux + uy * uy);\n\n if (u !== 0) {\n // compute control points\n var r = 0.5 * penWidth * point.pressure;\n var nx = -r * uy / u;\n var ny = r * ux / u;\n point.x1 = point.x + nx;\n point.y1 = point.y + ny;\n point.x2 = point.x - nx;\n point.y2 = point.y - ny;\n } else {\n // collapse control points\n point.x1 = point.x;\n point.y1 = point.y;\n point.x2 = point.x;\n point.y2 = point.y;\n }\n };\n\n /**\n * Compute control points of the last point.\n *\n * @private\n * @method computeLastControls\n * @param {QuadraticPoint} last Last point to be computed\n * @param {Number} penWidth Pen width\n */\n var computeLastControls = function (last, penWidth) {\n var r = 0.5 * penWidth * last.pressure,\n nx = -r * last.uy,\n ny = r * last.ux;\n\n last.x1 = last.x + nx;\n last.y1 = last.y + ny;\n last.x2 = last.x - nx;\n last.y2 = last.y - ny;\n };\n\n // Export\n scope.AbstractRenderer = AbstractRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Text Renderer. It's used to calculate the text ink rendering in HTML5 canvas\n *\n * @class TextRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function TextRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n TextRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n TextRenderer.prototype.constructor = TextRenderer;\n\n /**\n * Draw text recognition result on HTML5 canvas. Scratch out results are use to redraw HTML5 Canvas\n *\n * @method drawRecognitionResult\n * @param {TextInputUnit[]} inputUnits\n * @param {TextDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n TextRenderer.prototype.drawRecognitionResult = function (inputUnits, recognitionResult, context, parameters) {\n this.drawInputUnits(inputUnits, context, parameters);\n };\n\n /**\n * Draw input units\n *\n * @method drawInputUnits\n * @param {TextInputUnit[]} inputUnits\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n TextRenderer.prototype.drawInputUnits = function (inputUnits, context, parameters) {\n for (var i in inputUnits) {\n this.drawComponents(inputUnits[i].getComponents(), context, parameters);\n }\n };\n\n /**\n * Draw components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n TextRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n scope.AbstractRenderer.prototype.drawStroke.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharacterInputComponent) {\n scope.AbstractRenderer.prototype.drawCharacter.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharInputComponent) {\n drawChar(component, context, parameters);\n } else if (component instanceof scope.StringInputComponent) {\n drawString(component, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n };\n\n /**\n * Draw char\n *\n * @private\n * @method drawChar\n * @param {CharInputComponent} char\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawChar = function (char, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw string\n *\n * @private\n * @method drawString\n * @param {StringInputComponent} string\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawString = function (string, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n // Export\n scope.TextRenderer = TextRenderer;\n})(MyScript);\n","'use strict';\n\n(function (scope) {\n /**\n * Represent the Shape Renderer. It's used to calculate the shape ink rendering in HTML5 canvas\n *\n * @class ShapeRenderer\n * @constructor\n */\n function ShapeRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n ShapeRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n ShapeRenderer.prototype.constructor = ShapeRenderer;\n\n /**\n * Draw shape recognition result on HTML5 canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {ShapeDocument} recognitionResult\n * @param {RenderingParameters} parameters\n * @param {Object} context\n */\n ShapeRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, parameters, context) {\n this.drawShapes(components, recognitionResult.getSegments(), parameters, context);\n };\n\n /**\n * Draw components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n scope.AbstractRenderer.prototype.drawStroke.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharacterInputComponent) {\n scope.AbstractRenderer.prototype.drawCharacter.call(this, component, context, parameters); // super\n } else if (component instanceof scope.ShapeEllipse) {\n this.drawShapeEllipse(component, context, parameters);\n } else if (component instanceof scope.ShapeLine) {\n this.drawShapeLine(component, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n };\n\n /**\n * Draw the shapes\n *\n * @method drawShapes\n * @param {AbstractComponent[]} components\n * @param {ShapeSegment[]} shapes\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapes = function (components, shapes, context, parameters) {\n\n for (var i in shapes) {\n var segment = shapes[i];\n var candidate = segment.getSelectedCandidate();\n\n if (candidate) {\n if (candidate instanceof scope.ShapeRecognized) {\n this.drawShapeRecognized(candidate, context, parameters);\n } else if (candidate instanceof scope.ShapeNotRecognized) {\n this.drawShapeNotRecognized(components, segment.getInkRanges(), candidate, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n }\n };\n\n /**\n * This method allow you to draw recognized shape\n *\n * @method drawShapeRecognized\n * @param {ShapeRecognized} shapeRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeRecognized = function (shapeRecognized, context, parameters) {\n\n var primitives = shapeRecognized.getPrimitives();\n\n for (var i in primitives) {\n this.drawShapePrimitive(primitives[i], context, parameters);\n }\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n var rectangleList = [];\n\n for (var j in primitives) {\n // Primitive bounding rect\n rectangleList.push(this.getPrimitiveBoundingBox(primitives[j]));\n }\n // Bounding rect of the entire shape\n var boundingRect = scope.MathUtils.getBoundingRect(rectangleList);\n this.drawRectangle(boundingRect, context, parameters);\n }\n };\n\n /**\n * This method allow you to draw not recognized shape\n *\n * @method drawShapeNotRecognized\n * @param {AbstractComponent[]} components\n * @param {ShapeInkRange[]} inkRanges\n * @param {ShapeNotRecognized} shapeNotRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeNotRecognized = function (components, inkRanges, shapeNotRecognized, context, parameters) {\n for (var i in inkRanges) {\n var extractedStrokes = this.extractStroke(components, inkRanges[i]);\n this.drawStrokes(extractedStrokes, context, parameters);\n }\n\n };\n\n /**\n * Draw shape primitive\n *\n * @method drawShapePrimitive\n * @param {AbstractShapePrimitive} primitive\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapePrimitive = function (primitive, context, parameters) {\n if (primitive instanceof scope.ShapeEllipse) {\n this.drawShapeEllipse(primitive, context, parameters);\n } else if (primitive instanceof scope.ShapeLine) {\n this.drawShapeLine(primitive, context, parameters);\n }\n };\n\n /**\n * Draw shape line\n *\n * @method drawShapeLine\n * @param {ShapeLine} shapeLine\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeLine = function (shapeLine, context, parameters) {\n\n this.drawLineByPoints(shapeLine.getFirstPoint(), shapeLine.getLastPoint(), context, parameters);\n\n if (shapeLine.hasBeginDecoration() && shapeLine.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getFirstPoint(), shapeLine.getBeginTangentAngle(), 12.0, context, parameters);\n }\n\n if (shapeLine.hasEndDecoration() && shapeLine.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getLastPoint(), shapeLine.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Draw an ellipse arc on context\n *\n * @method drawEllipseArc\n * @param {Point} centerPoint\n * @param {Number} maxRadius\n * @param {Number} minRadius\n * @param {String} orientation\n * @param {Number} startAngle\n * @param {Number} sweepAngle\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n * @returns {Point[]}\n */\n ShapeRenderer.prototype.drawEllipseArc = function (centerPoint, maxRadius, minRadius, orientation, startAngle, sweepAngle, context, parameters) {\n\n var angleStep = 0.02; // angle delta between interpolated\n\n var z1 = Math.cos(orientation);\n var z3 = Math.sin(orientation);\n var z2 = z1;\n var z4 = z3;\n z1 *= maxRadius;\n z2 *= minRadius;\n z3 *= maxRadius;\n z4 *= minRadius;\n\n var n = Math.floor(Math.abs(sweepAngle) / angleStep);\n\n var boundariesPoints = [];\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.parameters.getColor();\n context.strokeStyle = this.parameters.getColor();\n context.globalAlpha = this.parameters.getAlpha();\n context.lineWidth = 0.5 * this.parameters.getWidth();\n }\n\n context.beginPath();\n\n for (var i = 0; i <= n; i++) {\n\n var angle = startAngle + (i / n) * sweepAngle; // points on the arc, in radian\n var alpha = Math.atan2(Math.sin(angle) / minRadius, Math.cos(angle) / maxRadius);\n\n var cosAlpha = Math.cos(alpha);\n var sinAlpha = Math.sin(alpha);\n\n // current point\n var x = centerPoint.x + z1 * cosAlpha - z4 * sinAlpha;\n var y = centerPoint.y + z2 * sinAlpha + z3 * cosAlpha;\n if (i === 0) {\n context.moveTo(x, y);\n } else {\n context.lineTo(x, y);\n }\n\n if (i === 0 || i === n) {\n boundariesPoints.push({x: x, y: y});\n }\n }\n\n context.stroke();\n\n } finally {\n context.restore();\n }\n\n return boundariesPoints;\n };\n\n /**\n * Draw shape ellipse\n *\n * @method drawShapeEllipse\n * @param {ShapeEllipse} shapeEllipse\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n ShapeRenderer.prototype.drawShapeEllipse = function (shapeEllipse, context, parameters) {\n\n var points = this.drawEllipseArc(\n shapeEllipse.getCenter(),\n shapeEllipse.getMaxRadius(),\n shapeEllipse.getMinRadius(),\n shapeEllipse.getOrientation(),\n shapeEllipse.getStartAngle(),\n shapeEllipse.getSweepAngle(),\n context, parameters);\n\n if (shapeEllipse.hasBeginDecoration() && shapeEllipse.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[0], shapeEllipse.getBeginTangentAngle(), 12.0, context, parameters);\n }\n\n if (shapeEllipse.hasEndDecoration() && shapeEllipse.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[1], shapeEllipse.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Get the bounding box of primitive\n *\n * @method getPrimitiveBoundingBox\n * @param {AbstractShapePrimitive} primitive\n * @returns {Object} the bounding box\n */\n ShapeRenderer.prototype.getPrimitiveBoundingBox = function (primitive) {\n var rectangle = null;\n if (primitive instanceof scope.ShapeEllipse) {\n rectangle = scope.MathUtils.getEllipseArcRect(primitive.getCenter(), primitive.getMaxRadius(), primitive.getMinRadius(), primitive.getOrientation(), primitive.getStartAngle(), primitive.getSweepAngle());\n } else if (primitive instanceof scope.ShapeLine) {\n rectangle = scope.MathUtils.getLineRect(primitive.getFirstPoint(), primitive.getLastPoint());\n }\n return rectangle;\n };\n\n // Export\n scope.ShapeRenderer = ShapeRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Math Renderer. It's used to calculate the math ink rendering in HTML5 canvas\n *\n * @class MathRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function MathRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n MathRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n MathRenderer.prototype.constructor = MathRenderer;\n\n /**\n * Draw math recognition result on HTML5 canvas. Scratch out results are use to redraw HTML5 Canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {MathDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MathRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) {\n var notScratchOutComponents = this.removeScratchOut(components, recognitionResult.getScratchOutResults());\n this.drawComponents(notScratchOutComponents, context, parameters);\n };\n\n /**\n * Remove scratch out from input components\n *\n * @param {AbstractComponent[]} components\n * @param {MathScratchOut[]} scratchOutResults\n * @returns {AbstractComponent[]} notScratchOutComponents\n */\n MathRenderer.prototype.removeScratchOut = function (components, scratchOutResults) {\n if (!scratchOutResults || scratchOutResults.length === 0) {\n return components;\n }\n\n var cloneComponents = components.slice(0);\n var componentsToRemove = [];\n\n for (var k in scratchOutResults) {\n if (scratchOutResults[k].getErasedInkRanges()) {\n for (var n in scratchOutResults[k].getErasedInkRanges()) {\n componentsToRemove.push(scratchOutResults[k].getErasedInkRanges()[n].getComponent());\n }\n for (var p in scratchOutResults[k].getInkRanges()) {\n componentsToRemove.push(scratchOutResults[k].getInkRanges()[p].getComponent());\n }\n }\n }\n\n componentsToRemove.sort(function (a, b) {\n return b - a;\n });\n\n for (var z in componentsToRemove) {\n cloneComponents.splice(componentsToRemove[z], 1);\n }\n return cloneComponents;\n };\n\n // Export\n scope.MathRenderer = MathRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Music Renderer. It's used to calculate the music ink rendering in HTML5 canvas\n *\n * @class MusicRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function MusicRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n MusicRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n MusicRenderer.prototype.constructor = MusicRenderer;\n\n /**\n * Draw music recognition result on HTML5 canvas. Scratch out results are use to redraw HTML5 Canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {MusicDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MusicRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) {\n var notScratchOutComponents = this.removeScratchOut(components, recognitionResult.getScratchOutResults());\n this.drawComponents(notScratchOutComponents, context, parameters);\n };\n\n /**\n * Remove scratch out from input components\n *\n * @param {AbstractComponent[]} components\n * @param {MusicScratchOut[]} scratchOutResults\n * @returns {AbstractComponent[]} notScratchOutComponents\n */\n MusicRenderer.prototype.removeScratchOut = function (components, scratchOutResults) {\n if (!scratchOutResults || scratchOutResults.length === 0) {\n return components;\n }\n\n var cloneComponents = components.slice(0);\n var componentsToRemove = [];\n\n for (var k in scratchOutResults) {\n if (scratchOutResults[k].getErasedInputRanges()) {\n for (var n in scratchOutResults[k].getErasedInputRanges()) {\n componentsToRemove.push(scratchOutResults[k].getErasedInputRanges()[n].getComponent());\n }\n for (var p in scratchOutResults[k].getInputRanges()) {\n componentsToRemove.push(scratchOutResults[k].getInputRanges()[p].getComponent());\n }\n }\n }\n\n componentsToRemove.sort(function (a, b) {\n return b - a;\n });\n\n for (var z in componentsToRemove) {\n cloneComponents.splice(componentsToRemove[z], 1);\n }\n return cloneComponents;\n };\n\n /**\n * Draw staff on the HTML5 canvas\n *\n * @method staffDrawing\n * @param {MusicStaff} staff\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MusicRenderer.prototype.drawStaff = function (staff, context, parameters) { // jshint ignore:line\n\n var staffHeight = staff.getTop() + ((staff.getCount() - 1) * staff.getGap());\n// var staves = Math.floor(context.canvas.clientHeight / staff.height);\n var staves = 1;\n\n context.beginPath();\n\n // Drawing horizontal staff lines\n for (var i = 0; i < staves; i++) {\n var offset = staffHeight * i;\n for (var j = 0; j < staff.getCount(); j++) {\n context.moveTo(0, (staff.getTop() + offset) + j * staff.getGap());\n context.lineTo(context.canvas.clientWidth, (staff.getTop() + offset) + j * staff.getGap());\n }\n }\n\n context.stroke();\n };\n\n /**\n * Draw components\n *\n * @method drawComponents\n * @param {AbstractComponent[]} components\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n MusicRenderer.prototype.drawComponents = function (components, context, parameters) {\n for (var i in components) {\n var component = components[i];\n if (component instanceof scope.Stroke) {\n scope.AbstractRenderer.prototype.drawStroke.call(this, component, context, parameters); // super\n } else if (component instanceof scope.CharacterInputComponent) {\n scope.AbstractRenderer.prototype.drawCharacter.call(this, component, context, parameters); // super\n } else if (component instanceof scope.MusicAccidentalInputComponent) {\n drawAccidental(component, context, parameters);\n } else if (component instanceof scope.MusicArpeggiateInputComponent) {\n drawArpeggiate(component, context, parameters);\n } else if (component instanceof scope.MusicBarInputComponent) {\n drawBar(component, context, parameters);\n } else if (component instanceof scope.MusicBeamInputComponent) {\n drawBeam(component, context, parameters);\n } else if (component instanceof scope.MusicClefInputComponent) {\n drawClef(component, context, parameters);\n } else if (component instanceof scope.MusicDecorationInputComponent) {\n drawDecoration(component, context, parameters);\n } else if (component instanceof scope.MusicDotsInputComponent) {\n drawDots(component, context, parameters);\n } else if (component instanceof scope.MusicHeadInputComponent) {\n drawHead(component, context, parameters);\n } else if (component instanceof scope.MusicLedgerLineInputComponent) {\n drawLedgerLine(component, context, parameters);\n } else if (component instanceof scope.MusicRestInputComponent) {\n drawRest(component, context, parameters);\n } else if (component instanceof scope.MusicStemInputComponent) {\n drawStem(component, context, parameters);\n } else if (component instanceof scope.MusicTieOrSlurInputComponent) {\n drawTieOrSlur(component, context, parameters);\n } else if (component instanceof scope.MusicTimeSignatureInputComponent) {\n drawTimeSignature(component, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n };\n\n /**\n * Draw accidental\n *\n * @private\n * @method drawAccidental\n * @param {MusicAccidentalInputComponent} accidental\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawAccidental = function (accidental, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw arpeggiate\n *\n * @private\n * @method drawArpeggiate\n * @param {MusicArpeggiateInputComponent} arpeggiate\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawArpeggiate = function (arpeggiate, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw bar\n *\n * @private\n * @method drawBar\n * @param {MusicBarInputComponent} bar\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawBar = function (bar, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw beam\n *\n * @private\n * @method drawBeam\n * @param {MusicBeamInputComponent} beam\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawBeam = function (beam, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw clef\n *\n * @private\n * @method drawClef\n * @param {MusicClefInputComponent} clef\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawClef = function (clef, context, parameters) { // jshint ignore:line\n var src = 'data:image/svg+xml,';\n switch (clef.getValue().getSymbol()) {\n case 'F':\n src = src + '';\n break;\n case 'C':\n src = src + '';\n break;\n case 'G':\n src = src + '';\n break;\n default:\n throw new Error('Unknown music clef symbol');\n }\n\n var imageObj = new Image();\n imageObj.onload = function () {\n var ratio = clef.getBoundingBox().getHeight() / this.height;\n clef.getBoundingBox().setWidth(this.width * ratio);\n context.drawImage(imageObj, clef.getBoundingBox().getX(), clef.getBoundingBox().getY(), clef.getBoundingBox().getWidth(), clef.getBoundingBox().getHeight());\n };\n imageObj.src = src;\n };\n\n /**\n * Draw decoration\n *\n * @private\n * @method drawDecoration\n * @param {MusicDecorationInputComponent} decoration\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawDecoration = function (decoration, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw dots\n *\n * @private\n * @method drawDots\n * @param {MusicDotsInputComponent} dots\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawDots = function (dots, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw head\n *\n * @private\n * @method drawHead\n * @param {MusicHeadInputComponent} head\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawHead = function (head, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw ledgerLine\n *\n * @private\n * @method drawLedgerLine\n * @param {MusicLedgerLineInputComponent} ledgerLine\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawLedgerLine = function (ledgerLine, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw rest\n *\n * @private\n * @method drawRest\n * @param {MusicRestInputComponent} rest\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawRest = function (rest, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw stem\n *\n * @private\n * @method drawStem\n * @param {MusicStemInputComponent} stem\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawStem = function (stem, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw tieOrSlur\n *\n * @private\n * @method drawTieOrSlur\n * @param {MusicTieOrSlurInputComponent} tieOrSlur\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawTieOrSlur = function (tieOrSlur, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw timeSignature\n *\n * @private\n * @method drawTimeSignature\n * @param {MusicTimeSignatureInputComponent} timeSignature\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n var drawTimeSignature = function (timeSignature, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n // Export\n scope.MusicRenderer = MusicRenderer;\n})(MyScript);","'use strict';\n\n(function (scope) {\n /**\n * Represent the Analyzer Renderer. It's used to calculate the analyzer ink rendering in HTML5 canvas\n *\n * @class AnalyzerRenderer\n * @extends AbstractRenderer\n * @constructor\n */\n function AnalyzerRenderer() {\n scope.AbstractRenderer.call(this);\n }\n\n /**\n * Inheritance property\n */\n AnalyzerRenderer.prototype = new scope.AbstractRenderer();\n\n /**\n * Constructor property\n */\n AnalyzerRenderer.prototype.constructor = AnalyzerRenderer;\n\n /**\n * Draw shape recognition result on HTML5 canvas\n *\n * @method drawRecognitionResult\n * @param {AbstractComponent[]} components\n * @param {AnalyzerDocument} recognitionResult\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawRecognitionResult = function (components, recognitionResult, context, parameters) {\n this.drawShapes(components, recognitionResult.getShapes(), context, parameters);\n this.drawTables(components, recognitionResult.getTables(), context, parameters);\n this.drawTextLines(components, recognitionResult.getTextLines(), context, parameters);\n// this.drawGroups(strokes, recognitionResult.getGroups(), context, parameters); // TODO: not implemented\n };\n\n /**\n * Draw table\n *\n * @method drawTables\n * @param {AbstractComponent[]} components\n * @param {AnalyzerTable[]} tables\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawTables = function (components, tables, context, parameters) {\n for (var i in tables) {\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n for (var j in tables[i].getCells()) {\n this.drawCell(tables[i].getCells()[j], context, parameters);\n }\n }\n for (var k in tables[i].getLines()) {\n this.drawLine(tables[i].getLines()[k], context, parameters);\n }\n }\n };\n\n /**\n * Draw the text line\n *\n * @method drawTextLines\n * @param {AbstractComponent[]} components\n * @param {AnalyzerTextLine[]} textLines\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawTextLines = function (components, textLines, context, parameters) {\n\n for (var i in textLines) {\n var textLine = textLines[i];\n var data = textLine.getData();\n if (data) {\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n this.drawRectangle(data.getBoundingBox(), context, parameters);\n }\n\n var text = textLine.getTextDocument().getTextSegment().getSelectedCandidate().getLabel();\n this.drawText(data.getBoundingBox(), text, data.getJustificationType(), data.getTextHeight(), data.getBaselinePos(), context, parameters);\n\n var underlines = textLine.getUnderlineList();\n for (var j in underlines) {\n this.drawUnderline(data.getBoundingBox(), underlines[j], text, data.getTextHeight(), data.getBaselinePos() + data.getTextHeight() / 10, context, parameters);\n }\n }\n }\n };\n\n /**\n * Draw text on analyser\n *\n * @method drawText\n * @param {Rectangle} boundingBox\n * @param {String} text\n * @param {String} justificationType\n * @param {Number} textHeight\n * @param {Number} baseline\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawText = function (boundingBox, text, justificationType, textHeight, baseline, context, parameters) {\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n context.font = parameters.getDecoration() + textHeight + 'px ' + parameters.getFont();\n } else {\n context.fillStyle = this.getParameters().getColor();\n context.strokeStyle = this.getParameters().getColor();\n context.globalAlpha = this.getParameters().getAlpha();\n context.lineWidth = 0.5 * this.getParameters().getWidth();\n context.font = this.getParameters().getDecoration() + textHeight + 'px ' + this.parameters.getFont();\n }\n context.textAlign = (justificationType === 'CENTER') ? 'center' : 'left';\n\n context.fillText(text, boundingBox.getX(), baseline, boundingBox.getWidth());\n\n } finally {\n context.restore();\n }\n };\n\n /**\n * Draw Underline\n *\n * @method drawUnderline\n * @param {Rectangle} boundingBox\n * @param {AnalyzerUnderline} underline\n * @param {String} text\n * @param {Number} textHeight\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawUnderline = function (boundingBox, underline, text, textHeight, baseline, context, parameters) {\n var topLeft = boundingBox.getTopLeftPoint();\n var firstCharacter = underline.getData().getFirstCharacter();\n var lastCharacter = underline.getData().getLastCharacter();\n\n if (parameters) {\n context.font = parameters.getDecoration() + textHeight + 'px ' + parameters.getFont();\n } else {\n context.font = this.getParameters().getDecoration() + textHeight + 'px ' + this.parameters.getFont();\n }\n\n var textMetrics = context.measureText(text.substring(0, firstCharacter));\n var x1 = topLeft.x + textMetrics.width;\n\n textMetrics = context.measureText(text.substring(firstCharacter, lastCharacter + 1));\n var x2 = x1 + textMetrics.width;\n this.drawLine(new scope.AnalyzerLine({\n data: new scope.AnalyzerLineData({\n p1: {x: x1, y: baseline},\n p2: {x: x2, y: baseline}\n })\n }), context, parameters);\n };\n\n /**\n * Draw Groups\n *\n * @method drawGroups\n * @param {AbstractComponent[]} components\n * @param {AnalyzerGroup[]} groups\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawGroups = function (components, groups, context, parameters) { // jshint ignore:line\n throw new Error('not implemented');\n };\n\n /**\n * Draw a line\n *\n * @method drawLine\n * @param {AnalyzerLine} line\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawLine = function (line, context, parameters) {\n if (line.getData()) {\n this.drawLineByPoints(line.getData().getP1(), line.getData().getP2(), context, parameters);\n }\n };\n\n /**\n * Draw a cell\n *\n * @method drawCell\n * @param {AnalyzerCell} cell\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawCell = function (cell, context, parameters) {\n if (cell.getData()) {\n this.drawRectangle(cell.getData().getBoundingBox(), context, parameters);\n }\n };\n\n /**\n * Draw the shapes\n *\n * @method drawShapes\n * @param {AbstractComponent[]} components\n * @param {ShapeSegment[]} shapes\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapes = function (components, shapes, context, parameters) {\n\n for (var i in shapes) {\n var segment = shapes[i];\n var candidate = segment.getSelectedCandidate();\n\n if (candidate) {\n if (candidate instanceof scope.ShapeRecognized) {\n this.drawShapeRecognized(candidate, context, parameters);\n } else if (candidate instanceof scope.ShapeNotRecognized) {\n this.drawShapeNotRecognized(components, segment.getInkRanges(), candidate, context, parameters);\n } else {\n throw new Error('not implemented');\n }\n }\n }\n };\n\n /**\n * This method allow you to draw recognized shape\n *\n * @method drawShapeRecognized\n * @param {ShapeRecognized} shapeRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeRecognized = function (shapeRecognized, context, parameters) {\n\n var primitives = shapeRecognized.getPrimitives();\n\n for (var i in primitives) {\n this.drawShapePrimitive(primitives[i], context, parameters);\n }\n var showBoundingBoxes = this.getParameters().getShowBoundingBoxes();\n if (parameters) {\n showBoundingBoxes = parameters.getShowBoundingBoxes();\n }\n if (showBoundingBoxes) {\n var rectangleList = [];\n\n for (var j in primitives) {\n // Primitive bounding rect\n rectangleList.push(this.getPrimitiveBoundingBox(primitives[j]));\n }\n // Bounding rect of the entire shape\n var boundingRect = scope.MathUtils.getBoundingRect(rectangleList);\n this.drawRectangle(boundingRect, context, parameters);\n }\n };\n\n /**\n * This method allow you to draw not recognized shape\n *\n * @method drawShapeNotRecognized\n * @param {AbstractComponent[]} components\n * @param {AnalyzerInkRange[]} inkRanges\n * @param {ShapeNotRecognized} shapeNotRecognized\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeNotRecognized = function (components, inkRanges, shapeNotRecognized, context, parameters) {\n for (var i in inkRanges) {\n var extractedStrokes = this.extractStroke(components, inkRanges[i]);\n this.drawStrokes(extractedStrokes, context, parameters);\n }\n\n };\n\n /**\n * Draw shape primitive\n *\n * @method drawShapePrimitive\n * @param {AbstractShapePrimitive} primitive\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapePrimitive = function (primitive, context, parameters) {\n if (primitive instanceof scope.ShapeEllipse) {\n this.drawShapeEllipse(primitive, context, parameters);\n } else if (primitive instanceof scope.ShapeLine) {\n this.drawShapeLine(primitive, context, parameters);\n }\n };\n\n /**\n * Draw shape line\n *\n * @method drawShapeLine\n * @param {ShapeLine} shapeLine\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeLine = function (shapeLine, context, parameters) {\n\n this.drawLineByPoints(shapeLine.getFirstPoint(), shapeLine.getLastPoint(), context, parameters);\n if (shapeLine.hasBeginDecoration() && shapeLine.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getFirstPoint(), shapeLine.getBeginTangentAngle(), 12.0, context, parameters);\n }\n if (shapeLine.hasEndDecoration() && shapeLine.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(shapeLine.getLastPoint(), shapeLine.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Draw an ellipse arc on context\n *\n * @method drawEllipseArc\n * @param {Point} centerPoint\n * @param {Number} maxRadius\n * @param {Number} minRadius\n * @param {String} orientation\n * @param {Number} startAngle\n * @param {Number} sweepAngle\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n * @returns {Point[]}\n */\n AnalyzerRenderer.prototype.drawEllipseArc = function (centerPoint, maxRadius, minRadius, orientation, startAngle, sweepAngle, context, parameters) {\n\n var angleStep = 0.02; // angle delta between interpolated\n\n var z1 = Math.cos(orientation);\n var z3 = Math.sin(orientation);\n var z2 = z1;\n var z4 = z3;\n z1 *= maxRadius;\n z2 *= minRadius;\n z3 *= maxRadius;\n z4 *= minRadius;\n\n var n = Math.floor(Math.abs(sweepAngle) / angleStep);\n\n var boundariesPoints = [];\n\n context.save();\n try {\n if (parameters) {\n context.fillStyle = parameters.getColor();\n context.strokeStyle = parameters.getColor();\n context.globalAlpha = parameters.getAlpha();\n context.lineWidth = 0.5 * parameters.getWidth();\n } else {\n context.fillStyle = this.getParameters().getColor();\n context.strokeStyle = this.getParameters().getColor();\n context.globalAlpha = this.getParameters().getAlpha();\n context.lineWidth = 0.5 * this.getParameters().getWidth();\n }\n\n context.beginPath();\n\n for (var i = 0; i <= n; i++) {\n\n var angle = startAngle + (i / n) * sweepAngle; // points on the arc, in radian\n var alpha = Math.atan2(Math.sin(angle) / minRadius, Math.cos(angle) / maxRadius);\n\n var cosAlpha = Math.cos(alpha);\n var sinAlpha = Math.sin(alpha);\n\n // current point\n var x = centerPoint.x + z1 * cosAlpha - z4 * sinAlpha;\n var y = centerPoint.y + z2 * sinAlpha + z3 * cosAlpha;\n if (i === 0) {\n context.moveTo(x, y);\n } else {\n context.lineTo(x, y);\n }\n\n if (i === 0 || i === n) {\n boundariesPoints.push({x: x, y: y});\n }\n }\n\n context.stroke();\n\n } finally {\n context.restore();\n }\n\n return boundariesPoints;\n };\n\n /**\n * Draw shape ellipse\n *\n * @method drawShapeEllipse\n * @param {ShapeEllipse} shapeEllipse\n * @param {Object} context\n * @param {RenderingParameters} [parameters]\n */\n AnalyzerRenderer.prototype.drawShapeEllipse = function (shapeEllipse, context, parameters) {\n\n var points = this.drawEllipseArc(\n shapeEllipse.getCenter(),\n shapeEllipse.getMaxRadius(),\n shapeEllipse.getMinRadius(),\n shapeEllipse.getOrientation(),\n shapeEllipse.getStartAngle(),\n shapeEllipse.getSweepAngle(),\n context, parameters);\n\n if (shapeEllipse.hasBeginDecoration() && shapeEllipse.getBeginDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[0], shapeEllipse.getBeginTangentAngle(), 12.0, context, parameters);\n }\n if (shapeEllipse.hasEndDecoration() && shapeEllipse.getEndDecoration() === 'ARROW_HEAD') {\n this.drawArrowHead(points[1], shapeEllipse.getEndTangentAngle(), 12.0, context, parameters);\n }\n };\n\n /**\n * Get the bounding box of primitive\n *\n * @method getPrimitiveBoundingBox\n * @param {AbstractShapePrimitive} primitive\n * @returns {Rectangle} rectangle\n */\n AnalyzerRenderer.prototype.getPrimitiveBoundingBox = function (primitive) {\n var rectangle = null;\n if (primitive instanceof scope.ShapeEllipse) {\n rectangle = scope.MathUtils.getEllipseArcRect(primitive.getCenter(), primitive.getMaxRadius(), primitive.getMinRadius(), primitive.getOrientation(), primitive.getStartAngle(), primitive.getSweepAngle());\n } else if (primitive instanceof scope.ShapeLine) {\n rectangle = scope.MathUtils.getLineRect(primitive.getFirstPoint(), primitive.getLastPoint());\n }\n return rectangle;\n };\n\n // Export\n scope.AnalyzerRenderer = AnalyzerRenderer;\n})(MyScript);"]} \ No newline at end of file diff --git a/package.json b/package.json index 2ad6faa6..f37061f4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "myscript", - "version": "1.0.6", + "version": "1.0.7", "main": "./dist/myscript.js", "description": "MyScriptJS is a free and open-source JavaScript library providing the easiest way to use MyScript Cloud handwriting recognition in your web app", "keywords": [ diff --git a/src/common/inkManager.js b/src/common/inkManager.js index 67bdeaf2..3ba22095 100644 --- a/src/common/inkManager.js +++ b/src/common/inkManager.js @@ -44,6 +44,9 @@ */ InkManager.prototype.startInkCapture = function (x, y, t) { if (!this.writing) { + if (this.isRedoEmpty()) { + this.clearUndoRedoStack(); + } this.currentStroke = new scope.Stroke(); this.currentStroke.addX(x); this.currentStroke.addY(y); diff --git a/src/networking/networkInterface.js b/src/networking/networkInterface.js index 9aa5e656..6d730cdf 100644 --- a/src/networking/networkInterface.js +++ b/src/networking/networkInterface.js @@ -62,8 +62,6 @@ if (request.readyState === 4) { if (request.status >= 200 && request.status < 300) { deferred.resolve(NetworkInterface.parse(request)); - } else { - deferred.reject(NetworkInterface.parse(request)); } } } @@ -72,12 +70,12 @@ if (request.status >= 200 && request.status < 300) { deferred.resolve(NetworkInterface.parse(request)); } else { - deferred.reject('Status code was ' + request.status); + deferred.reject(new Error(request.responseText)); } } function onError() { - deferred.reject('Can\'t XHR ' + JSON.stringify(url)); + deferred.reject(new Error('Can\'t XHR ' + url)); } function onProgress(event) { diff --git a/test/unit/common/inkManager.js b/test/unit/common/inkManager.js index 03c55e99..1ed3e44e 100644 --- a/test/unit/common/inkManager.js +++ b/test/unit/common/inkManager.js @@ -145,6 +145,17 @@ describe('MyScriptJS: common/inkManager.js', function () { expect(inkManager.getUndoRedoStack()[inkManager.getUndoRedoStack().length - 1]).to.deep.equal(stroke); }); + it('Test undo/redo stack', function () { + inkManager.redo(); + + inkManager.startInkCapture(50, 2); + inkManager.continueInkCapture(60, 8); + inkManager.endInkCapture(); + + expect(inkManager.getStrokes().length).to.equal(2); + expect(inkManager.getUndoRedoStack().length).to.equal(0); + }); + it('InkManager clear Undo/redo Stack', function () { inkManager.clearUndoRedoStack(); @@ -153,6 +164,7 @@ describe('MyScriptJS: common/inkManager.js', function () { }); it('InkManager copy', function () { + inkManager.clear(); var copyStrokes = []; // add one stroke inkManager.startInkCapture(50, 2);