diff --git a/bower.json b/bower.json index 068522b8..65c26536 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "stackedit", - "version": "4.3.8", + "version": "4.3.9", "description": "StackEdit is a free, open-source Markdown editor based on PageDown, the Markdown library used by Stack Overflow and the other Stack Exchange sites.", "dependencies": { "bootstrap": "3.0.3", @@ -29,7 +29,7 @@ "jsondiffpatch": "https://github.com/benweet/jsondiffpatch.git#fb9dddf7cd076d8ec89d376c0e9de9223e9888f9", "hammerjs": "~1.0.10", "raphael": "~2.1.2", - "js-sequence-diagrams": "https://github.com/benweet/js-sequence-diagrams.git#d60c973aa0ff148dc588c7ceee0b41e59dff3f9f", + "js-sequence-diagrams": "https://github.com/benweet/js-sequence-diagrams.git#c59e2e39d9185e9291f37b73fc596eba5ed33650", "flowchart": "https://github.com/adrai/flowchart.js.git#751717d3db6437def9a5f8b1cb73e8bb81b5833a", "monetizejs": "~0.2.0", "MathJax": "~2.4.0", diff --git a/package.json b/package.json index d263a027..a41d3b79 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "stackedit", - "version": "4.3.8", + "version": "4.3.9", "private": true, "description": "StackEdit is a free, open-source Markdown editor based on PageDown, the Markdown library used by Stack Overflow and the other Stack Exchange sites.", "main": "res/main.js", @@ -22,7 +22,7 @@ "gulp": "^3.8.7", "gulp-requirejs": "^0.1.3", "gulp-jshint": "^1.8.4", - "gulp-uglify": "^1.0.0", + "gulp-uglify": "^1.1.0", "gulp-less": "^1.3.5", "bower-requirejs": "^1.1.0", "gulp-inject": "git://github.com/benweet/gulp-inject.git#8bd702d143a578e3b44290d82612ab808ee17281", diff --git a/public/cache.manifest b/public/cache.manifest index ad690542..6e2fd262 100644 --- a/public/cache.manifest +++ b/public/cache.manifest @@ -1,5 +1,5 @@ CACHE MANIFEST -#Date Wed Dec 17 2014 00:31:18 GMT+0000 (GMT) +#Date Sat Jan 31 2015 11:39:11 GMT+0000 (GMT) CACHE: . @@ -144,6 +144,8 @@ res/bower-libs/MathJax/jax/output/HTML-CSS/autoload/mmultiscripts.js?rev=2.4-bet res/bower-libs/MathJax/jax/output/HTML-CSS/autoload/ms.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/autoload/mtable.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/autoload/multiline.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/fontdata-extra.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/fontdata.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/Arrows.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/BBBold.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/BoxDrawing.js?rev=2.4-beta-2 @@ -164,18 +166,6 @@ res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/MiscTechnical.j res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/PUA.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/SpacingModLetters.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/AMS/Regular/SuppMathOperators.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Greek/Bold/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Greek/BoldItalic/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Greek/Italic/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Greek/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Bold/BasicLatin.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Bold/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Bold/Other.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Bold/PUA.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Regular/BasicLatin.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Regular/Other.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Regular/PUA.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Caligraphic/Bold/Main.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Caligraphic/Regular/Main.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/Arrows.js?rev=2.4-beta-2 @@ -195,16 +185,31 @@ res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/MiscTechnical.js? res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/SpacingModLetters.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/SuppMathOperators.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Bold/SupplementalArrowsA.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/CombDiacritMarks.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/GeometricShapes.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/MiscSymbols.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/SpacingModLetters.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Italic/CombDiacritMarks.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Italic/GeneralPunctuation.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Italic/Latin1Supplement.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Italic/LetterlikeSymbols.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Italic/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/CombDiacritMarks.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/GeometricShapes.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/MiscSymbols.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Main/Regular/SpacingModLetters.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Bold/BasicLatin.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Bold/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Bold/Other.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Bold/PUA.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Regular/BasicLatin.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Regular/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Regular/Other.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Fraktur/Regular/PUA.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Greek/Bold/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Greek/BoldItalic/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Greek/Italic/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Math/BoldItalic/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Greek/Regular/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Math/Italic/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Size1/Regular/Main.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Bold/BasicLatin.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Bold/CombDiacritMarks.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Bold/Main.js?rev=2.4-beta-2 @@ -217,16 +222,13 @@ res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Regular/BasicLati res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Regular/CombDiacritMarks.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Regular/Main.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/SansSerif/Regular/Other.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Math/BoldItalic/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Math/Italic/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Size2/Regular/Main.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Size3/Regular/Main.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Size4/Regular/Main.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Typewriter/Regular/BasicLatin.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Typewriter/Regular/CombDiacritMarks.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Typewriter/Regular/Main.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Typewriter/Regular/Other.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Size2/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Size1/Regular/Main.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Script/Regular/BasicLatin.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Script/Regular/Main.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/Script/Regular/Other.js?rev=2.4-beta-2 @@ -234,8 +236,12 @@ res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/WinIE6/Regular/AMS.js?rev=2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/WinIE6/Regular/Bold.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/WinIE6/Regular/Main.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/WinChrome/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/fontdata-extra.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/TeX/fontdata.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeTwoSym/Bold/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeTwoSym/Regular/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeTwoSym/Regular/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeThreeSym/Bold/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeThreeSym/Regular/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeThreeSym/Regular/Main.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/fontdata-1.0.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/fontdata-beta.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/fontdata-extra.js?rev=2.4-beta-2 @@ -276,6 +282,46 @@ res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/PhoneticExten res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/SpacingModLetters.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/SuperAndSubscripts.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Bold/SuppMathOperators.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsD/Bold/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsD/Regular/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsD/Regular/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsSm/Bold/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsSm/Regular/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsSm/Regular/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpD/Bold/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpD/Regular/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpD/Regular/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUp/Bold/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUp/Regular/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUp/Regular/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFiveSym/Regular/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFiveSym/Regular/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFourSym/Bold/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFourSym/Regular/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFourSym/Regular/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Bold/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Bold/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Bold/PrivateUse.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/BoldItalic/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/BoldItalic/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/BoldItalic/PrivateUse.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Italic/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Italic/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Italic/PrivateUse.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Regular/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Regular/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Regular/PrivateUse.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpSm/Bold/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpSm/Regular/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpSm/Regular/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeOneSym/Bold/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeOneSym/Bold/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeOneSym/Regular/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeOneSym/Regular/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/Variants/Bold/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/Variants/Bold/Main.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/Variants/Regular/All.js?rev=2.4-beta-2 +res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/Variants/Regular/Main.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/AlphaPresentForms.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/BasicLatin.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/BoldItalic/BoxDrawing.js?rev=2.4-beta-2 @@ -323,9 +369,6 @@ res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/MathSSItali res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/MathScript.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/SpacingModLetters.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Italic/ij.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsD/Regular/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsD/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsD/Bold/All.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/AlphaPresentForms.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/Arrows.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/BBBold.js?rev=2.4-beta-2 @@ -383,49 +426,6 @@ res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/SuppMathOp res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/SupplementalArrowsA.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/SupplementalArrowsB.js?rev=2.4-beta-2 res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/General/Regular/ij.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUp/Regular/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUp/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpD/Bold/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpD/Regular/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpD/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpSm/Bold/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpSm/Regular/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUpSm/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Bold/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Bold/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Bold/PrivateUse.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/BoldItalic/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/BoldItalic/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/BoldItalic/PrivateUse.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Italic/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Italic/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Italic/PrivateUse.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Regular/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/NonUnicode/Regular/PrivateUse.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsSm/Bold/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsSm/Regular/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsSm/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeThreeSym/Bold/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeThreeSym/Regular/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeThreeSym/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeTwoSym/Bold/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeTwoSym/Regular/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeTwoSym/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/IntegralsUp/Bold/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/Variants/Bold/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/Variants/Bold/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/Variants/Regular/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/Variants/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeOneSym/Bold/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeOneSym/Bold/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeOneSym/Regular/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeOneSym/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFiveSym/Regular/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFiveSym/Regular/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFourSym/Bold/Main.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFourSym/Regular/All.js?rev=2.4-beta-2 -res/bower-libs/MathJax/jax/output/HTML-CSS/fonts/STIX/SizeFourSym/Regular/Main.js?rev=2.4-beta-2 # end_inject_mathjax diff --git a/public/res-min/main.js b/public/res-min/main.js index f0e8a046..c3a3da3e 100644 --- a/public/res-min/main.js +++ b/public/res-min/main.js @@ -91,7 +91,7 @@ function diff_match_patch() { } function v(e, t) { var n = t.nodeName.toLowerCase(); - "input" === n && Ft.test(e.type) ? t.checked = e.checked : ("input" === n || "textarea" === n) && (t.defaultValue = e.defaultValue); + "input" === n && Ot.test(e.type) ? t.checked = e.checked : ("input" === n || "textarea" === n) && (t.defaultValue = e.defaultValue); } function b(e, t) { if (t in e) return t; @@ -251,7 +251,7 @@ function diff_match_patch() { return t ? s.resolveWith(e, [ c, t ]) : s.rejectWith(e, [ c, t ]), this; } }), u = c.props; - for (F(u, c.opts.specialEasing); a > o; o++) if (i = An[o].call(c, e, u, c.opts)) return i; + for (O(u, c.opts.specialEasing); a > o; o++) if (i = An[o].call(c, e, u, c.opts)) return i; return ot.map(u, R, c), ot.isFunction(c.opts.start) && c.opts.start.call(e, c), ot.fx.timer(ot.extend(l, { elem: e, @@ -259,7 +259,7 @@ function diff_match_patch() { queue: c.opts.queue })), c.progress(c.opts.progress).done(c.opts.done, c.opts.complete).fail(c.opts.fail).always(c.opts.always); } - function F(e, t) { + function O(e, t) { var n, i, r, o, a; for (n in e) if (i = ot.camelCase(n), r = t[i], o = e[n], ot.isArray(o) && (r = o[1], o = e[n] = o[0]), n !== i && (e[i] = o, delete e[n]), a = ot.cssHooks[i], a && "expand" in a) { @@ -267,7 +267,7 @@ function diff_match_patch() { for (n in o) n in e || (e[n] = o[n], t[n] = r); } else t[i] = r; } - function O(e, n, i) { + function F(e, n, i) { var r, o, a, s, l, c, u = this, d = {}, p = e.style, h = e.nodeType && y(e), f = gt.get(e, "fxshow"); i.queue || (l = ot._queueHooks(e, "fx"), null == l.unqueued && (l.unqueued = 0, c = l.empty.fire, l.empty.fire = function() { @@ -739,7 +739,7 @@ function diff_match_patch() { } return I(e, c)(i, t, !R, n, ht.test(e)), n; } - var S, C, _, k, E, T, I, D, N, M, L, A, R, P, F, O, B, j = "sizzle" + -new Date(), $ = e.document, q = 0, G = 0, H = i(), U = i(), z = i(), V = !1, W = function(e, t) { + var S, C, _, k, E, T, I, D, N, M, L, A, R, P, O, F, B, j = "sizzle" + -new Date(), $ = e.document, q = 0, G = 0, H = i(), U = i(), z = i(), V = !1, W = function(e, t) { return e === t ? (V = !0, 0) : 0; }, X = typeof t, Q = 1 << 31, Y = {}.hasOwnProperty, K = [], J = K.pop, Z = K.push, et = K.push, tt = K.slice, nt = K.indexOf || function(e) { for (var t = 0, n = this.length; n > t; t++) if (this[t] === e) return t; @@ -813,7 +813,7 @@ function diff_match_patch() { return o; }, k.find.CLASS = C.getElementsByClassName && function(e, t) { return typeof t.getElementsByClassName !== X && R ? t.getElementsByClassName(e) : void 0; - }, F = [], P = [], (C.qsa = bt.test(t.querySelectorAll)) && (o(function(e) { + }, O = [], P = [], (C.qsa = bt.test(t.querySelectorAll)) && (o(function(e) { e.innerHTML = "", e.querySelectorAll("[selected]").length || P.push("\\[" + rt + "*(?:value|" + it + ")"), e.querySelectorAll(":checked").length || P.push(":checked"); }), o(function(e) { @@ -821,9 +821,9 @@ function diff_match_patch() { n.setAttribute("type", "hidden"), e.appendChild(n).setAttribute("t", ""), e.querySelectorAll("[t^='']").length && P.push("[*^$]=" + rt + "*(?:''|\"\")"), e.querySelectorAll(":enabled").length || P.push(":enabled", ":disabled"), e.querySelectorAll("*,:x"), P.push(",.*:"); - })), (C.matchesSelector = bt.test(O = A.webkitMatchesSelector || A.mozMatchesSelector || A.oMatchesSelector || A.msMatchesSelector)) && o(function(e) { - C.disconnectedMatch = O.call(e, "div"), O.call(e, "[s!='']:x"), F.push("!=", ct); - }), P = P.length && new RegExp(P.join("|")), F = F.length && new RegExp(F.join("|")), + })), (C.matchesSelector = bt.test(F = A.webkitMatchesSelector || A.mozMatchesSelector || A.oMatchesSelector || A.msMatchesSelector)) && o(function(e) { + C.disconnectedMatch = F.call(e, "div"), F.call(e, "[s!='']:x"), O.push("!=", ct); + }), P = P.length && new RegExp(P.join("|")), O = O.length && new RegExp(O.join("|")), B = bt.test(A.contains) || A.compareDocumentPosition ? function(e, t) { var n = 9 === e.nodeType ? e.documentElement : e, i = t && t.parentNode; return e === i || !(!i || 1 !== i.nodeType || !(n.contains ? n.contains(i) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(i))); @@ -847,8 +847,8 @@ function diff_match_patch() { }, n.matches = function(e, t) { return n(e, null, null, t); }, n.matchesSelector = function(e, t) { - if ((e.ownerDocument || e) !== L && M(e), t = t.replace(ft, "='$1']"), !(!C.matchesSelector || !R || F && F.test(t) || P && P.test(t))) try { - var i = O.call(e, t); + if ((e.ownerDocument || e) !== L && M(e), t = t.replace(ft, "='$1']"), !(!C.matchesSelector || !R || O && O.test(t) || P && P.test(t))) try { + var i = F.call(e, t); if (i || C.disconnectedMatch || e.document && 11 !== e.document.nodeType) return i; } catch (r) {} return n(t, L, null, [ e ]).length > 0; @@ -1890,7 +1890,7 @@ function diff_match_patch() { return n; } }); - var Lt = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, At = /<([\w:]+)/, Rt = /<|&#?\w+;/, Pt = /<(?:script|style|link)/i, Ft = /^(?:checkbox|radio)$/i, Ot = /checked\s*(?:[^=]|=\s*.checked.)/i, Bt = /^$|\/(?:java|ecma)script/i, jt = /^true\/(.*)/, $t = /^\s*\s*$/g, qt = { + var Lt = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, At = /<([\w:]+)/, Rt = /<|&#?\w+;/, Pt = /<(?:script|style|link)/i, Ot = /^(?:checkbox|radio)$/i, Ft = /checked\s*(?:[^=]|=\s*.checked.)/i, Bt = /^$|\/(?:java|ecma)script/i, jt = /^true\/(.*)/, $t = /^\s*\s*$/g, qt = { option: [ 1, "" ], thead: [ 1, "", "
" ], col: [ 2, "", "
" ], @@ -1976,7 +1976,7 @@ function diff_match_patch() { domManip: function(e, t, n) { e = J.apply([], e); var i, r, o, a, s, l, c = 0, u = this.length, d = this, f = u - 1, m = e[0], v = ot.isFunction(m); - if (v || !(1 >= u || "string" != typeof m || ot.support.checkClone) && Ot.test(m)) return this.each(function(i) { + if (v || !(1 >= u || "string" != typeof m || ot.support.checkClone) && Ft.test(m)) return this.each(function(i) { var r = d.eq(i); v && (e[0] = m.call(this, i, r.html())), r.domManip(e, t, n); }); @@ -2204,7 +2204,7 @@ function diff_match_patch() { return e ? ot.makeArray(e) : this; }).filter(function() { var e = this.type; - return this.name && !ot(this).is(":disabled") && on.test(this.nodeName) && !rn.test(e) && (this.checked || !Ft.test(e)); + return this.name && !ot(this).is(":disabled") && on.test(this.nodeName) && !rn.test(e) && (this.checked || !Ot.test(e)); }).map(function(e, t) { var n = ot(this).val(); return null == n ? null : ot.isArray(n) ? ot.map(n, function(e) { @@ -2493,7 +2493,7 @@ function diff_match_patch() { } } : void 0; }); - var In, Dn, Nn = /^(?:toggle|show|hide)$/, Mn = new RegExp("^(?:([+-])=|)(" + at + ")([a-z%]*)$", "i"), Ln = /queueHooks$/, An = [ O ], Rn = { + var In, Dn, Nn = /^(?:toggle|show|hide)$/, Mn = new RegExp("^(?:([+-])=|)(" + at + ")([a-z%]*)$", "i"), Ln = /queueHooks$/, An = [ F ], Rn = { "*": [ function(e, t) { var n = this.createTween(e, t), i = n.cur(), r = Mn.exec(t), o = r && r[3] || (ot.cssNumber[e] ? "" : "px"), a = (ot.cssNumber[e] || "px" !== o && +i) && Mn.exec(ot.css(n.elem, e)), s = 1, l = 20; if (a && a[3] !== o) { @@ -3008,10 +3008,10 @@ function diff_match_patch() { }, e.DOMException = _; }), rangy.createModule("DomRange", function(e) { function t(e, t) { - return 3 != e.nodeType && (O.isAncestorOf(e, t.startContainer, !0) || O.isAncestorOf(e, t.endContainer, !0)); + return 3 != e.nodeType && (F.isAncestorOf(e, t.startContainer, !0) || F.isAncestorOf(e, t.endContainer, !0)); } function n(e) { - return O.getDocument(e.startContainer); + return F.getDocument(e.startContainer); } function i(e, t, n) { var i = e._listeners[t]; @@ -3021,14 +3021,14 @@ function diff_match_patch() { }); } function r(e) { - return new B(e.parentNode, O.getNodeIndex(e)); + return new B(e.parentNode, F.getNodeIndex(e)); } function o(e) { - return new B(e.parentNode, O.getNodeIndex(e) + 1); + return new B(e.parentNode, F.getNodeIndex(e) + 1); } function a(e, t, n) { var i = 11 == e.nodeType ? e.firstChild : e; - return O.isCharacterDataNode(t) ? n == t.length ? O.insertAfter(e, t) : t.parentNode.insertBefore(e, 0 == n ? t : O.splitDataNode(t, n)) : n >= t.childNodes.length ? t.appendChild(e) : t.insertBefore(e, t.childNodes[n]), + return F.isCharacterDataNode(t) ? n == t.length ? F.insertAfter(e, t) : t.parentNode.insertBefore(e, 0 == n ? t : F.splitDataNode(t, n)) : n >= t.childNodes.length ? t.appendChild(e) : t.insertBefore(e, t.childNodes[n]), i; } function s(e) { @@ -3047,7 +3047,7 @@ function diff_match_patch() { for (var o, a; o = e.next(); ) if (e.isPartiallySelectedSubtree()) { if (t(o) === !1) return void (n.stop = !0); if (a = e.getSubtreeIterator(), l(a, t, n), a.detach(!0), n.stop) return; - } else for (i = O.createIterator(o); r = i.next(); ) if (t(r) === !1) return void (n.stop = !0); + } else for (i = F.createIterator(o); r = i.next(); ) if (t(r) === !1) return void (n.stop = !0); } function c(e) { for (var t; e.next(); ) e.isPartiallySelectedSubtree() ? (t = e.getSubtreeIterator(), @@ -3071,15 +3071,15 @@ function diff_match_patch() { } function p(e) { var t = "undefined" == typeof e.getName ? "Range" : e.getName(); - return "[" + t + "(" + O.inspectNode(e.startContainer) + ":" + e.startOffset + ", " + O.inspectNode(e.endContainer) + ":" + e.endOffset + ")]"; + return "[" + t + "(" + F.inspectNode(e.startContainer) + ":" + e.startOffset + ", " + F.inspectNode(e.endContainer) + ":" + e.endOffset + ")]"; } function h(e, t) { if (this.range = e, this.clonePartiallySelectedTextNodes = t, !e.collapsed) { this.sc = e.startContainer, this.so = e.startOffset, this.ec = e.endContainer, this.eo = e.endOffset; var n = e.commonAncestorContainer; - this.sc === this.ec && O.isCharacterDataNode(this.sc) ? (this.isSingleCharacterDataNode = !0, - this._first = this._last = this._next = this.sc) : (this._first = this._next = this.sc !== n || O.isCharacterDataNode(this.sc) ? O.getClosestAncestorIn(this.sc, n, !0) : this.sc.childNodes[this.so], - this._last = this.ec !== n || O.isCharacterDataNode(this.ec) ? O.getClosestAncestorIn(this.ec, n, !0) : this.ec.childNodes[this.eo - 1]); + this.sc === this.ec && F.isCharacterDataNode(this.sc) ? (this.isSingleCharacterDataNode = !0, + this._first = this._last = this._next = this.sc) : (this._first = this._next = this.sc !== n || F.isCharacterDataNode(this.sc) ? F.getClosestAncestorIn(this.sc, n, !0) : this.sc.childNodes[this.so], + this._last = this.ec !== n || F.isCharacterDataNode(this.ec) ? F.getClosestAncestorIn(this.ec, n, !0) : this.ec.childNodes[this.eo - 1]); } } function f(e) { @@ -3091,7 +3091,7 @@ function diff_match_patch() { function g(e) { return function(t, n) { for (var i, r = n ? t : t.parentNode; r; ) { - if (i = r.nodeType, O.arrayContains(e, i)) return r; + if (i = r.nodeType, F.arrayContains(e, i)) return r; r = r.parentNode; } return null; @@ -3104,10 +3104,10 @@ function diff_match_patch() { if (!e.startContainer) throw new j("INVALID_STATE_ERR"); } function y(e, t) { - if (!O.arrayContains(t, e.nodeType)) throw new f("INVALID_NODE_TYPE_ERR"); + if (!F.arrayContains(t, e.nodeType)) throw new f("INVALID_NODE_TYPE_ERR"); } function x(e, t) { - if (0 > t || t > (O.isCharacterDataNode(e) ? e.length : e.childNodes.length)) throw new j("INDEX_SIZE_ERR"); + if (0 > t || t > (F.isCharacterDataNode(e) ? e.length : e.childNodes.length)) throw new j("INDEX_SIZE_ERR"); } function w(e, t) { if (V(e, !0) !== V(t, !0)) throw new j("WRONG_DOCUMENT_ERR"); @@ -3119,10 +3119,10 @@ function diff_match_patch() { if (!e) throw new j(t); } function _(e) { - return !O.arrayContains(q, e.nodeType) && !V(e, !0); + return !F.arrayContains(q, e.nodeType) && !V(e, !0); } function k(e, t) { - return t <= (O.isCharacterDataNode(e) ? e.length : e.childNodes.length); + return t <= (F.isCharacterDataNode(e) ? e.length : e.childNodes.length); } function E(e) { return !!e.startContainer && !!e.endContainer && !_(e.startContainer) && !_(e.endContainer) && k(e.startContainer, e.startOffset) && k(e.endContainer, e.endOffset); @@ -3142,7 +3142,7 @@ function diff_match_patch() { return function() { T(this); var n, i, r = this.startContainer, a = this.startOffset, s = this.commonAncestorContainer, c = new h(this, !0); - r !== s && (n = O.getClosestAncestorIn(r, s, !0), i = o(n), r = i.node, a = i.offset), + r !== s && (n = F.getClosestAncestorIn(r, s, !0), i = o(n), r = i.node, a = i.offset), l(c, S), c.reset(); var u = e(c); return c.detach(), t(this, r, a, r, a), u; @@ -3158,12 +3158,12 @@ function diff_match_patch() { } function l(e, t, n) { var r = e.endContainer, o = e.endOffset; - (t !== e.startContainer || n !== e.startOffset) && ((z(t) != z(r) || 1 == O.comparePoints(t, n, r, o)) && (r = t, + (t !== e.startContainer || n !== e.startOffset) && ((z(t) != z(r) || 1 == F.comparePoints(t, n, r, o)) && (r = t, o = n), i(e, t, n, r, o)); } function d(e, t, n) { var r = e.startContainer, o = e.startOffset; - (t !== e.endContainer || n !== e.endOffset) && ((z(t) != z(r) || -1 == O.comparePoints(t, n, r, o)) && (r = t, + (t !== e.endContainer || n !== e.endOffset) && ((z(t) != z(r) || -1 == F.comparePoints(t, n, r, o)) && (r = t, o = n), i(e, r, o, t, n)); } function p(e, t, n) { @@ -3184,7 +3184,7 @@ function diff_match_patch() { T(this), e ? i(this, this.startContainer, this.startOffset, this.startContainer, this.startOffset) : i(this, this.endContainer, this.endOffset, this.endContainer, this.endOffset); }, selectNodeContents: function(e) { - b(this), v(e, !0), i(this, e, 0, e, O.getNodeLength(e)); + b(this), v(e, !0), i(this, e, 0, e, F.getNodeLength(e)); }, selectNode: function(e) { b(this), v(e, !1), y(e, $); @@ -3204,8 +3204,8 @@ function diff_match_patch() { splitBoundaries: function() { T(this); var e = this.startContainer, t = this.startOffset, n = this.endContainer, r = this.endOffset, o = e === n; - O.isCharacterDataNode(n) && r > 0 && r < n.length && O.splitDataNode(n, r), O.isCharacterDataNode(e) && t > 0 && t < e.length && (e = O.splitDataNode(e, t), - o ? (r -= t, n = e) : n == e.parentNode && r >= O.getNodeIndex(e) && r++, t = 0), + F.isCharacterDataNode(n) && r > 0 && r < n.length && F.splitDataNode(n, r), F.isCharacterDataNode(e) && t > 0 && t < e.length && (e = F.splitDataNode(e, t), + o ? (r -= t, n = e) : n == e.parentNode && r >= F.getNodeIndex(e) && r++, t = 0), i(this, e, t, n, r); }, normalizeBoundaries: function() { @@ -3220,22 +3220,22 @@ function diff_match_patch() { var a = i.length; if (t = o.length, i.insertData(0, o.data), o.parentNode.removeChild(o), e == n) r += t, n = e; else if (n == i.parentNode) { - var s = O.getNodeIndex(i); + var s = F.getNodeIndex(i); r == s ? (n = i, r = a) : r > s && r--; } } }, s = !0; - if (O.isCharacterDataNode(n)) n.length == r && o(n); else { + if (F.isCharacterDataNode(n)) n.length == r && o(n); else { if (r > 0) { var l = n.childNodes[r - 1]; - l && O.isCharacterDataNode(l) && o(l); + l && F.isCharacterDataNode(l) && o(l); } s = !this.collapsed; } if (s) { - if (O.isCharacterDataNode(e)) 0 == t && a(e); else if (t < e.childNodes.length) { + if (F.isCharacterDataNode(e)) 0 == t && a(e); else if (t < e.childNodes.length) { var c = e.childNodes[t]; - c && O.isCharacterDataNode(c) && a(c); + c && F.isCharacterDataNode(c) && a(c); } } else e = n, t = r; i(this, e, t, n, r); @@ -3247,7 +3247,7 @@ function diff_match_patch() { } function A(e) { e.collapsed = e.startContainer === e.endContainer && e.startOffset === e.endOffset, - e.commonAncestorContainer = e.collapsed ? e.startContainer : O.getCommonAncestor(e.startContainer, e.endContainer); + e.commonAncestorContainer = e.collapsed ? e.startContainer : F.getCommonAncestor(e.startContainer, e.endContainer); } function R(e, t, n, r, o) { var a = e.startContainer !== t || e.startOffset !== n, s = e.endContainer !== r || e.endOffset !== o; @@ -3261,7 +3261,7 @@ function diff_match_patch() { b(e), e.startContainer = e.startOffset = e.endContainer = e.endOffset = null, e.collapsed = e.commonAncestorContainer = null, i(e, "detach", null), e._listeners = null; } - function F(e) { + function O(e) { this.startContainer = e, this.startOffset = 0, this.endContainer = e, this.endOffset = 0, this._listeners = { boundarychange: [], @@ -3269,7 +3269,7 @@ function diff_match_patch() { }, A(this); } e.requireModules([ "DomUtil" ]); - var O = e.dom, B = O.DomPosition, j = e.DOMException; + var F = e.dom, B = F.DomPosition, j = e.DOMException; h.prototype = { _current: null, _next: null, @@ -3284,12 +3284,12 @@ function diff_match_patch() { }, next: function() { var e = this._current = this._next; - return e && (this._next = e !== this._last ? e.nextSibling : null, O.isCharacterDataNode(e) && this.clonePartiallySelectedTextNodes && (e === this.ec && (e = e.cloneNode(!0)).deleteData(this.eo, e.length - this.eo), + return e && (this._next = e !== this._last ? e.nextSibling : null, F.isCharacterDataNode(e) && this.clonePartiallySelectedTextNodes && (e === this.ec && (e = e.cloneNode(!0)).deleteData(this.eo, e.length - this.eo), this._current === this.sc && (e = e.cloneNode(!0)).deleteData(0, this.so))), e; }, remove: function() { var e, t, n = this._current; - !O.isCharacterDataNode(n) || n !== this.sc && n !== this.ec ? n.parentNode && n.parentNode.removeChild(n) : (e = n === this.sc ? this.so : 0, + !F.isCharacterDataNode(n) || n !== this.sc && n !== this.ec ? n.parentNode && n.parentNode.removeChild(n) : (e = n === this.sc ? this.so : 0, t = n === this.ec ? this.eo : n.length, e != t && n.deleteData(e, t - e)); }, isPartiallySelectedSubtree: function() { @@ -3299,9 +3299,9 @@ function diff_match_patch() { getSubtreeIterator: function() { var e; if (this.isSingleCharacterDataNode) e = this.range.cloneRange(), e.collapse(); else { - e = new F(n(this.range)); - var t = this._current, i = t, r = 0, o = t, a = O.getNodeLength(t); - O.isAncestorOf(t, this.sc, !0) && (i = this.sc, r = this.so), O.isAncestorOf(t, this.ec, !0) && (o = this.ec, + e = new O(n(this.range)); + var t = this._current, i = t, r = 0, o = t, a = F.getNodeLength(t); + F.isAncestorOf(t, this.sc, !0) && (i = this.sc, r = this.so), F.isAncestorOf(t, this.ec, !0) && (o = this.ec, a = this.eo), R(e, i, r, o, a); } return new h(e, this.clonePartiallySelectedTextNodes); @@ -3326,22 +3326,22 @@ function diff_match_patch() { this._current = this._next = this.nodes = null; } }; - var $ = [ 1, 3, 4, 5, 7, 8, 10 ], q = [ 2, 9, 11 ], G = [ 5, 6, 10, 12 ], H = [ 1, 3, 4, 5, 7, 8, 10, 11 ], U = [ 1, 3, 4, 5, 7, 8 ], z = O.getRootContainer, V = g([ 9, 11 ]), W = g(G), X = g([ 6, 10, 12 ]), Q = document.createElement("style"), Y = !1; + var $ = [ 1, 3, 4, 5, 7, 8, 10 ], q = [ 2, 9, 11 ], G = [ 5, 6, 10, 12 ], H = [ 1, 3, 4, 5, 7, 8, 10, 11 ], U = [ 1, 3, 4, 5, 7, 8 ], z = F.getRootContainer, V = g([ 9, 11 ]), W = g(G), X = g([ 6, 10, 12 ]), Q = document.createElement("style"), Y = !1; try { Q.innerHTML = "x", Y = 3 == Q.firstChild.nodeType; } catch (K) {} e.features.htmlParsingConforms = Y; var J = Y ? function(e) { - var t = this.startContainer, n = O.getDocument(t); + var t = this.startContainer, n = F.getDocument(t); if (!t) throw new j("INVALID_STATE_ERR"); var i = null; - return 1 == t.nodeType ? i = t : O.isCharacterDataNode(t) && (i = O.parentElement(t)), - i = null === i || "HTML" == i.nodeName && O.isHtmlNamespace(O.getDocument(i).documentElement) && O.isHtmlNamespace(i) ? n.createElement("body") : i.cloneNode(!1), - i.innerHTML = e, O.fragmentFromNodeChildren(i); + return 1 == t.nodeType ? i = t : F.isCharacterDataNode(t) && (i = F.parentElement(t)), + i = null === i || "HTML" == i.nodeName && F.isHtmlNamespace(F.getDocument(i).documentElement) && F.isHtmlNamespace(i) ? n.createElement("body") : i.cloneNode(!1), + i.innerHTML = e, F.fragmentFromNodeChildren(i); } : function(e) { b(this); var t = n(this), i = t.createElement("body"); - return i.innerHTML = e, O.fragmentFromNodeChildren(i); + return i.innerHTML = e, F.fragmentFromNodeChildren(i); }, Z = [ "startContainer", "startOffset", "endContainer", "endOffset", "collapsed", "commonAncestorContainer" ], et = 0, tt = 1, nt = 2, it = 3, rt = 0, ot = 1, at = 2, st = 3; I.prototype = { attachListener: function(e, t) { @@ -3351,10 +3351,10 @@ function diff_match_patch() { T(this), w(this.startContainer, t.startContainer); var n, i, r, o, a = e == it || e == et ? "start" : "end", s = e == tt || e == et ? "start" : "end"; return n = this[a + "Container"], i = this[a + "Offset"], r = t[s + "Container"], - o = t[s + "Offset"], O.comparePoints(n, i, r, o); + o = t[s + "Offset"], F.comparePoints(n, i, r, o); }, insertNode: function(e) { - if (T(this), y(e, H), S(this.startContainer), O.isAncestorOf(e, this.startContainer, !0)) throw new j("HIERARCHY_REQUEST_ERR"); + if (T(this), y(e, H), S(this.startContainer), F.isAncestorOf(e, this.startContainer, !0)) throw new j("HIERARCHY_REQUEST_ERR"); var t = a(e, this.startContainer, this.startOffset); this.setStartBefore(t); }, @@ -3362,7 +3362,7 @@ function diff_match_patch() { T(this); var e, t; if (this.collapsed) return n(this).createDocumentFragment(); - if (this.startContainer === this.endContainer && O.isCharacterDataNode(this.startContainer)) return e = this.startContainer.cloneNode(!0), + if (this.startContainer === this.endContainer && F.isCharacterDataNode(this.startContainer)) return e = this.startContainer.cloneNode(!0), e.data = e.data.slice(this.startOffset, this.endOffset), t = n(this).createDocumentFragment(), t.appendChild(e), t; var i = new h(this, !0); @@ -3381,13 +3381,13 @@ function diff_match_patch() { }, cloneRange: function() { T(this); - for (var e, t = new F(n(this)), i = Z.length; i--; ) e = Z[i], t[e] = this[e]; + for (var e, t = new O(n(this)), i = Z.length; i--; ) e = Z[i], t[e] = this[e]; return t; }, toString: function() { T(this); var e = this.startContainer; - if (e === this.endContainer && O.isCharacterDataNode(e)) return 3 == e.nodeType || 4 == e.nodeType ? e.data.slice(this.startOffset, this.endOffset) : ""; + if (e === this.endContainer && F.isCharacterDataNode(e)) return 3 == e.nodeType || 4 == e.nodeType ? e.data.slice(this.startOffset, this.endOffset) : ""; var t = [], n = new h(this, !0); return l(n, function(e) { (3 == e.nodeType || 4 == e.nodeType) && t.push(e.data); @@ -3395,13 +3395,13 @@ function diff_match_patch() { }, compareNode: function(e) { T(this); - var t = e.parentNode, n = O.getNodeIndex(e); + var t = e.parentNode, n = F.getNodeIndex(e); if (!t) throw new j("NOT_FOUND_ERR"); var i = this.comparePoint(t, n), r = this.comparePoint(t, n + 1); return 0 > i ? r > 0 ? at : rt : r > 0 ? ot : st; }, comparePoint: function(e, t) { - return T(this), C(e, "HIERARCHY_REQUEST_ERR"), w(e, this.startContainer), O.comparePoints(e, t, this.startContainer, this.startOffset) < 0 ? -1 : O.comparePoints(e, t, this.endContainer, this.endOffset) > 0 ? 1 : 0; + return T(this), C(e, "HIERARCHY_REQUEST_ERR"), w(e, this.startContainer), F.comparePoints(e, t, this.startContainer, this.startOffset) < 0 ? -1 : F.comparePoints(e, t, this.endContainer, this.endOffset) > 0 ? 1 : 0; }, createContextualFragment: J, toHtml: function() { @@ -3410,23 +3410,23 @@ function diff_match_patch() { return e.appendChild(this.cloneContents()), e.innerHTML; }, intersectsNode: function(e, t) { - if (T(this), C(e, "NOT_FOUND_ERR"), O.getDocument(e) !== n(this)) return !1; - var i = e.parentNode, r = O.getNodeIndex(e); + if (T(this), C(e, "NOT_FOUND_ERR"), F.getDocument(e) !== n(this)) return !1; + var i = e.parentNode, r = F.getNodeIndex(e); C(i, "NOT_FOUND_ERR"); - var o = O.comparePoints(i, r, this.endContainer, this.endOffset), a = O.comparePoints(i, r + 1, this.startContainer, this.startOffset); + var o = F.comparePoints(i, r, this.endContainer, this.endOffset), a = F.comparePoints(i, r + 1, this.startContainer, this.startOffset); return t ? 0 >= o && a >= 0 : 0 > o && a > 0; }, isPointInRange: function(e, t) { - return T(this), C(e, "HIERARCHY_REQUEST_ERR"), w(e, this.startContainer), O.comparePoints(e, t, this.startContainer, this.startOffset) >= 0 && O.comparePoints(e, t, this.endContainer, this.endOffset) <= 0; + return T(this), C(e, "HIERARCHY_REQUEST_ERR"), w(e, this.startContainer), F.comparePoints(e, t, this.startContainer, this.startOffset) >= 0 && F.comparePoints(e, t, this.endContainer, this.endOffset) <= 0; }, intersectsRange: function(e, t) { if (T(this), n(e) != n(this)) throw new j("WRONG_DOCUMENT_ERR"); - var i = O.comparePoints(this.startContainer, this.startOffset, e.endContainer, e.endOffset), r = O.comparePoints(this.endContainer, this.endOffset, e.startContainer, e.startOffset); + var i = F.comparePoints(this.startContainer, this.startOffset, e.endContainer, e.endOffset), r = F.comparePoints(this.endContainer, this.endOffset, e.startContainer, e.startOffset); return t ? 0 >= i && r >= 0 : 0 > i && r > 0; }, intersection: function(e) { if (this.intersectsRange(e)) { - var t = O.comparePoints(this.startContainer, this.startOffset, e.startContainer, e.startOffset), n = O.comparePoints(this.endContainer, this.endOffset, e.endContainer, e.endOffset), i = this.cloneRange(); + var t = F.comparePoints(this.startContainer, this.startOffset, e.startContainer, e.startOffset), n = F.comparePoints(this.endContainer, this.endOffset, e.endContainer, e.endOffset), i = this.cloneRange(); return -1 == t && i.setStart(e.startContainer, e.startOffset), 1 == n && i.setEnd(e.endContainer, e.endOffset), i; } @@ -3435,8 +3435,8 @@ function diff_match_patch() { union: function(e) { if (this.intersectsRange(e, !0)) { var t = this.cloneRange(); - return -1 == O.comparePoints(e.startContainer, e.startOffset, this.startContainer, this.startOffset) && t.setStart(e.startContainer, e.startOffset), - 1 == O.comparePoints(e.endContainer, e.endOffset, this.endContainer, this.endOffset) && t.setEnd(e.endContainer, e.endOffset), + return -1 == F.comparePoints(e.startContainer, e.startOffset, this.startContainer, this.startOffset) && t.setStart(e.startContainer, e.startOffset), + 1 == F.comparePoints(e.endContainer, e.endOffset, this.endContainer, this.endOffset) && t.setEnd(e.endContainer, e.endOffset), t; } throw new f("Ranges do not intersect"); @@ -3445,7 +3445,7 @@ function diff_match_patch() { return t ? this.intersectsNode(e, !1) : this.compareNode(e) == st; }, containsNodeContents: function(e) { - return this.comparePoint(e, 0) >= 0 && this.comparePoint(e, O.getNodeLength(e)) <= 0; + return this.comparePoint(e, 0) >= 0 && this.comparePoint(e, F.getNodeLength(e)) <= 0; }, containsRange: function(e) { return this.intersection(e).equals(e); @@ -3482,7 +3482,7 @@ function diff_match_patch() { return "DomRange"; }, equals: function(e) { - return F.rangesEqual(this, e); + return O.rangesEqual(this, e); }, isValid: function() { return E(this); @@ -3490,11 +3490,11 @@ function diff_match_patch() { inspect: function() { return p(this); } - }, L(F, R, P), e.rangePrototype = I.prototype, F.rangeProperties = Z, F.RangeIterator = h, - F.copyComparisonConstants = N, F.createPrototypeRange = L, F.inspect = p, F.getRangeDocument = n, - F.rangesEqual = function(e, t) { + }, L(O, R, P), e.rangePrototype = I.prototype, O.rangeProperties = Z, O.RangeIterator = h, + O.copyComparisonConstants = N, O.createPrototypeRange = L, O.inspect = p, O.getRangeDocument = n, + O.rangesEqual = function(e, t) { return e.startContainer === t.startContainer && e.startOffset === t.startOffset && e.endContainer === t.endContainer && e.endOffset === t.endOffset; - }, e.DomRange = F, e.RangeException = f; + }, e.DomRange = O, e.RangeException = f; }), rangy.createModule("WrappedRange", function(e) { function t(e) { var t = e.parentElement(), n = e.duplicate(); @@ -3741,7 +3741,7 @@ function diff_match_patch() { this.refresh(); } function m(e, t) { - for (var n, i = S.getDocument(t[0].startContainer), r = S.getBody(i).createControlRange(), o = 0; rangeCount > o; ++o) { + for (var n, i = S.getDocument(t[0].startContainer), r = S.getBody(i).createControlRange(), o = 0; o < rangeCount; ++o) { n = c(t[o]); try { r.add(n); @@ -3769,10 +3769,10 @@ function diff_match_patch() { }) : t.fail("Neither document.selection or window.getSelection() detected."), e.getNativeSelection = b; var L = b(), A = e.createNativeRange(document), R = S.getBody(document), P = C.areHostObjects(L, [ "anchorNode", "focusNode" ] && C.areHostProperties(L, [ "anchorOffset", "focusOffset" ])); e.features.selectionHasAnchorAndFocus = P; - var F = C.isHostMethod(L, "extend"); - e.features.selectionHasExtend = F; - var O = "number" == typeof L.rangeCount; - e.features.selectionHasRangeCount = O; + var O = C.isHostMethod(L, "extend"); + e.features.selectionHasExtend = O; + var F = "number" == typeof L.rangeCount; + e.features.selectionHasRangeCount = F; var B = !1, j = !0; C.areHostMethods(L, [ "addRange", "getRangeAt", "removeAllRanges" ]) && "number" == typeof L.rangeCount && e.features.implementsDomRange && !function() { var e = document.createElement("iframe"); @@ -3822,8 +3822,8 @@ function diff_match_patch() { r.collapseToPoint(n.endContainer, n.endOffset), t.nativeSelection.addRange(s(r)), t.nativeSelection.extend(n.startContainer, n.startOffset), t.refresh(); }; - H.addRange = O ? function(t, n) { - if (q && N && this.docSelection.type == I) h(this, t); else if (n && F) U(this, t); else { + H.addRange = F ? function(t, n) { + if (q && N && this.docSelection.type == I) h(this, t); else if (n && O) U(this, t); else { var i; if (B ? i = this.rangeCount : (this.removeAllRanges(), i = 0), this.nativeSelection.addRange(s(t)), this.rangeCount = this.nativeSelection.rangeCount, this.rangeCount == i + 1) { @@ -3835,7 +3835,7 @@ function diff_match_patch() { } else this.refresh(); } } : function(e, t) { - t && F ? U(this, e) : (this.nativeSelection.addRange(s(e)), this.refresh()); + t && O ? U(this, e) : (this.nativeSelection.addRange(s(e)), this.refresh()); }, H.setRanges = function(e) { if (q && e.length > 1) m(this, e); else { this.removeAllRanges(); @@ -4467,7 +4467,7 @@ function diff_match_patch() { interpolate: /<%=([\s\S]+?)%>/g, escape: /<%-([\s\S]+?)%>/g }; - var P = /(.)^/, F = { + var P = /(.)^/, O = { "'": "'", "\\": "\\", "\r": "r", @@ -4475,14 +4475,14 @@ function diff_match_patch() { " ": "t", "\u2028": "u2028", "\u2029": "u2029" - }, O = /\\|'|\r|\n|\t|\u2028|\u2029/g; + }, F = /\\|'|\r|\n|\t|\u2028|\u2029/g; C.template = function(e, t, n) { var i; n = C.defaults({}, n, C.templateSettings); var r = new RegExp([ (n.escape || P).source, (n.interpolate || P).source, (n.evaluate || P).source ].join("|") + "|$", "g"), o = 0, a = "__p+='"; e.replace(r, function(t, n, i, r, s) { - return a += e.slice(o, s).replace(O, function(e) { - return "\\" + F[e]; + return a += e.slice(o, s).replace(F, function(e) { + return "\\" + O[e]; }), n && (a += "'+\n((__t=(" + n + "))==null?'':_.escape(__t))+\n'"), i && (a += "'+\n((__t=(" + i + "))==null?'':__t)+\n'"), r && (a += "';\n" + r + "\n__p+='"), o = s + t.length, t; }), a += "';\n", n.variable || (a = "with(obj||{}){\n" + a + "}\n"), a = "var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\n" + a + "return __p;\n"; @@ -5046,7 +5046,7 @@ function diff_match_patch() { var n = u[e], i = ""; return n.bmp && !n.isBmpLast && (i = "[" + n.bmp + "]" + (n.astral ? "|" : "")), n.astral && (i += n.astral), n.isBmpLast && n.bmp && (i += (n.astral ? "|" : "") + "[" + n.bmp + "]"), - t ? "(?:(?!" + i + ")(?:[-][-]|[\x00-￿]))" : "(?:" + i + ")"; + t ? "(?:(?!" + i + ")(?:[\ud800-\udbff][\udc00-\udfff]|[\x00-\uffff]))" : "(?:" + i + ")"; } function c(e, t) { var n = t ? "a!" : "a="; @@ -5081,671 +5081,671 @@ function diff_match_patch() { }, e.addUnicodeData([ { name: "L", alias: "Letter", - bmp: "A-Za-zªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԧԱ-Ֆՙա-ևא-תװ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࢠࢢ-ࢬऄ-हऽॐक़-ॡॱ-ॷॹ-ॿঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-ళవ-హఽౘౙౠౡಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൠൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏼᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤜᥐ-ᥭᥰ-ᥴᦀ-ᦫᧁ-ᧇᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎↃↄⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⸯ々〆〱-〵〻〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿌ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚗꚠ-ꛥꜗ-ꜟꜢ-ꞈꞋ-ꞎꞐ-ꞓꞠ-Ɦꟸ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꪀ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꯀ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ", - astral: "[-------------]|[-]|[--------------]|[-]|[------]|[-]|[--]|[-]|[-]|[-]|[-]|[--]|[--]|[]|[--][-]|[--------------]|[-------------------------]|[-]" + bmp: "A-Za-z\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05d0-\u05ea\u05f0-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u08a0\u08a2-\u08ac\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0977\u0979-\u097f\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c33\u0c35-\u0c39\u0c3d\u0c58\u0c59\u0c60\u0c61\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d60\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f4\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1877\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191c\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19c1-\u19c7\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4b\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1ce9-\u1cec\u1cee-\u1cf1\u1cf5\u1cf6\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u212f-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2183\u2184\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u2e2f\u3005\u3006\u3031-\u3035\u303b\u303c\u3041-\u3096\u309d-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312d\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fcc\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua697\ua6a0-\ua6e5\ua717-\ua71f\ua722-\ua788\ua78b-\ua78e\ua790-\ua793\ua7a0-\ua7aa\ua7f8-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa80-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uabc0-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc", + astral: "\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f-\udc55\udd00-\udd15\udd20-\udd39\udd80-\uddb7\uddbe\uddbf\ude00\ude10-\ude13\ude15-\ude17\ude19-\ude33\ude60-\ude7c\udf00-\udf35\udf40-\udf55\udf60-\udf72]|\ud801[\udc00-\udc9d]|\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa\ude80-\ude9c\udea0-\uded0\udf00-\udf1e\udf30-\udf40\udf42-\udf49\udf80-\udf9d\udfa0-\udfc3\udfc8-\udfcf]|\ud81a[\udc00-\ude38]|\ud804[\udc03-\udc37\udc83-\udcaf\udcd0-\udce8\udd03-\udd26\udd83-\uddb2\uddc1-\uddc4]|\ud86e[\udc00-\udc1d]|\ud86d[\udc00-\udf34\udf40-\udfff]|\ud803[\udc00-\udc48]|\ud80d[\udc00-\udc2e]|\ud805[\ude80-\udeaa]|\ud87e[\udc00-\ude1d]|\ud81b[\udf00-\udf44\udf50\udf93-\udf9f]|\ud869[\udc00-\uded6\udf00-\udfff]|\ud82c[\udc00\udc01]|[\ud80c\ud840-\ud868\ud86a-\ud86c][\udc00-\udfff]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udec0\udec2-\udeda\udedc-\udefa\udefc-\udf14\udf16-\udf34\udf36-\udf4e\udf50-\udf6e\udf70-\udf88\udf8a-\udfa8\udfaa-\udfc2\udfc4-\udfcb]|\ud808[\udc00-\udf6e]" } ]); }(e), function(e) { if (!e.addUnicodeData) throw new ReferenceError("Unicode Base must be loaded before Unicode Blocks"); e.addUnicodeData([ { name: "InAegean_Numbers", - astral: "[-]" + astral: "\ud800[\udd00-\udd3f]" }, { name: "InAlchemical_Symbols", - astral: "[-]" + astral: "\ud83d[\udf00-\udf7f]" }, { name: "InAlphabetic_Presentation_Forms", - bmp: "ff-ﭏ" + bmp: "\ufb00-\ufb4f" }, { name: "InAncient_Greek_Musical_Notation", - astral: "[-]" + astral: "\ud834[\ude00-\ude4f]" }, { name: "InAncient_Greek_Numbers", - astral: "[-]" + astral: "\ud800[\udd40-\udd8f]" }, { name: "InAncient_Symbols", - astral: "[-]" + astral: "\ud800[\udd90-\uddcf]" }, { name: "InArabic", - bmp: "؀-ۿ" + bmp: "\u0600-\u06ff" }, { name: "InArabic_Extended_A", - bmp: "ࢠ-ࣿ" + bmp: "\u08a0-\u08ff" }, { name: "InArabic_Mathematical_Alphabetic_Symbols", - astral: "[-]" + astral: "\ud83b[\ude00-\udeff]" }, { name: "InArabic_Presentation_Forms_A", - bmp: "ﭐ-﷿" + bmp: "\ufb50-\ufdff" }, { name: "InArabic_Presentation_Forms_B", - bmp: "ﹰ-" + bmp: "\ufe70-\ufeff" }, { name: "InArabic_Supplement", - bmp: "ݐ-ݿ" + bmp: "\u0750-\u077f" }, { name: "InArmenian", - bmp: "԰-֏" + bmp: "\u0530-\u058f" }, { name: "InArrows", - bmp: "←-⇿" + bmp: "\u2190-\u21ff" }, { name: "InAvestan", - astral: "[-]" + astral: "\ud802[\udf00-\udf3f]" }, { name: "InBalinese", - bmp: "ᬀ-᭿" + bmp: "\u1b00-\u1b7f" }, { name: "InBamum", - bmp: "ꚠ-꛿" + bmp: "\ua6a0-\ua6ff" }, { name: "InBamum_Supplement", - astral: "[-]" + astral: "\ud81a[\udc00-\ude3f]" }, { name: "InBasic_Latin", bmp: "\x00-" }, { name: "InBatak", - bmp: "ᯀ-᯿" + bmp: "\u1bc0-\u1bff" }, { name: "InBengali", - bmp: "ঀ-৿" + bmp: "\u0980-\u09ff" }, { name: "InBlock_Elements", - bmp: "▀-▟" + bmp: "\u2580-\u259f" }, { name: "InBopomofo", - bmp: "㄀-ㄯ" + bmp: "\u3100-\u312f" }, { name: "InBopomofo_Extended", - bmp: "ㆠ-ㆿ" + bmp: "\u31a0-\u31bf" }, { name: "InBox_Drawing", - bmp: "─-╿" + bmp: "\u2500-\u257f" }, { name: "InBrahmi", - astral: "[-]" + astral: "\ud804[\udc00-\udc7f]" }, { name: "InBraille_Patterns", - bmp: "⠀-⣿" + bmp: "\u2800-\u28ff" }, { name: "InBuginese", - bmp: "ᨀ-᨟" + bmp: "\u1a00-\u1a1f" }, { name: "InBuhid", - bmp: "ᝀ-᝟" + bmp: "\u1740-\u175f" }, { name: "InByzantine_Musical_Symbols", - astral: "[-]" + astral: "\ud834[\udc00-\udcff]" }, { name: "InCJK_Compatibility", - bmp: "㌀-㏿" + bmp: "\u3300-\u33ff" }, { name: "InCJK_Compatibility_Forms", - bmp: "︰-﹏" + bmp: "\ufe30-\ufe4f" }, { name: "InCJK_Compatibility_Ideographs", - bmp: "豈-﫿" + bmp: "\uf900-\ufaff" }, { name: "InCJK_Compatibility_Ideographs_Supplement", - astral: "[-]" + astral: "\ud87e[\udc00-\ude1f]" }, { name: "InCJK_Radicals_Supplement", - bmp: "⺀-⻿" + bmp: "\u2e80-\u2eff" }, { name: "InCJK_Strokes", - bmp: "㇀-㇯" + bmp: "\u31c0-\u31ef" }, { name: "InCJK_Symbols_and_Punctuation", - bmp: " -〿" + bmp: "\u3000-\u303f" }, { name: "InCJK_Unified_Ideographs", - bmp: "一-鿿" + bmp: "\u4e00-\u9fff" }, { name: "InCJK_Unified_Ideographs_Extension_A", - bmp: "㐀-䶿" + bmp: "\u3400-\u4dbf" }, { name: "InCJK_Unified_Ideographs_Extension_B", - astral: "[-][-]|[-]" + astral: "[\ud840-\ud868][\udc00-\udfff]|\ud869[\udc00-\udedf]" }, { name: "InCJK_Unified_Ideographs_Extension_C", - astral: "[-]|[-][-]|[-]" + astral: "\ud86d[\udc00-\udf3f]|[\ud86a-\ud86c][\udc00-\udfff]|\ud869[\udf00-\udfff]" }, { name: "InCJK_Unified_Ideographs_Extension_D", - astral: "[-]|[-]" + astral: "\ud86d[\udf40-\udfff]|\ud86e[\udc00-\udc1f]" }, { name: "InCarian", - astral: "[-]" + astral: "\ud800[\udea0-\udedf]" }, { name: "InChakma", - astral: "[-]" + astral: "\ud804[\udd00-\udd4f]" }, { name: "InCham", - bmp: "ꨀ-꩟" + bmp: "\uaa00-\uaa5f" }, { name: "InCherokee", - bmp: "Ꭰ-᏿" + bmp: "\u13a0-\u13ff" }, { name: "InCombining_Diacritical_Marks", - bmp: "̀-ͯ" + bmp: "\u0300-\u036f" }, { name: "InCombining_Diacritical_Marks_Supplement", - bmp: "᷀-᷿" + bmp: "\u1dc0-\u1dff" }, { name: "InCombining_Diacritical_Marks_for_Symbols", - bmp: "⃐-⃿" + bmp: "\u20d0-\u20ff" }, { name: "InCombining_Half_Marks", - bmp: "︠-︯" + bmp: "\ufe20-\ufe2f" }, { name: "InCommon_Indic_Number_Forms", - bmp: "꠰-꠿" + bmp: "\ua830-\ua83f" }, { name: "InControl_Pictures", - bmp: "␀-␿" + bmp: "\u2400-\u243f" }, { name: "InCoptic", - bmp: "Ⲁ-⳿" + bmp: "\u2c80-\u2cff" }, { name: "InCounting_Rod_Numerals", - astral: "[-]" + astral: "\ud834[\udf60-\udf7f]" }, { name: "InCuneiform", - astral: "[-]" + astral: "\ud808[\udc00-\udfff]" }, { name: "InCuneiform_Numbers_and_Punctuation", - astral: "[-]" + astral: "\ud809[\udc00-\udc7f]" }, { name: "InCurrency_Symbols", - bmp: "₠-⃏" + bmp: "\u20a0-\u20cf" }, { name: "InCypriot_Syllabary", - astral: "[-]" + astral: "\ud802[\udc00-\udc3f]" }, { name: "InCyrillic", - bmp: "Ѐ-ӿ" + bmp: "\u0400-\u04ff" }, { name: "InCyrillic_Extended_A", - bmp: "ⷠ-ⷿ" + bmp: "\u2de0-\u2dff" }, { name: "InCyrillic_Extended_B", - bmp: "Ꙁ-ꚟ" + bmp: "\ua640-\ua69f" }, { name: "InCyrillic_Supplement", - bmp: "Ԁ-ԯ" + bmp: "\u0500-\u052f" }, { name: "InDeseret", - astral: "[-]" + astral: "\ud801[\udc00-\udc4f]" }, { name: "InDevanagari", - bmp: "ऀ-ॿ" + bmp: "\u0900-\u097f" }, { name: "InDevanagari_Extended", - bmp: "꣠-ꣿ" + bmp: "\ua8e0-\ua8ff" }, { name: "InDingbats", - bmp: "✀-➿" + bmp: "\u2700-\u27bf" }, { name: "InDomino_Tiles", - astral: "[-]" + astral: "\ud83c[\udc30-\udc9f]" }, { name: "InEgyptian_Hieroglyphs", - astral: "[-]|[-]" + astral: "\ud80c[\udc00-\udfff]|\ud80d[\udc00-\udc2f]" }, { name: "InEmoticons", - astral: "[-]" + astral: "\ud83d[\ude00-\ude4f]" }, { name: "InEnclosed_Alphanumeric_Supplement", - astral: "[-]" + astral: "\ud83c[\udd00-\uddff]" }, { name: "InEnclosed_Alphanumerics", - bmp: "①-⓿" + bmp: "\u2460-\u24ff" }, { name: "InEnclosed_CJK_Letters_and_Months", - bmp: "㈀-㋿" + bmp: "\u3200-\u32ff" }, { name: "InEnclosed_Ideographic_Supplement", - astral: "[-]" + astral: "\ud83c[\ude00-\udeff]" }, { name: "InEthiopic", - bmp: "ሀ-፿" + bmp: "\u1200-\u137f" }, { name: "InEthiopic_Extended", - bmp: "ⶀ-⷟" + bmp: "\u2d80-\u2ddf" }, { name: "InEthiopic_Extended_A", - bmp: "꬀-꬯" + bmp: "\uab00-\uab2f" }, { name: "InEthiopic_Supplement", - bmp: "ᎀ-᎟" + bmp: "\u1380-\u139f" }, { name: "InGeneral_Punctuation", - bmp: " -" + bmp: "\u2000-\u206f" }, { name: "InGeometric_Shapes", - bmp: "■-◿" + bmp: "\u25a0-\u25ff" }, { name: "InGeorgian", - bmp: "Ⴀ-ჿ" + bmp: "\u10a0-\u10ff" }, { name: "InGeorgian_Supplement", - bmp: "ⴀ-⴯" + bmp: "\u2d00-\u2d2f" }, { name: "InGlagolitic", - bmp: "Ⰰ-ⱟ" + bmp: "\u2c00-\u2c5f" }, { name: "InGothic", - astral: "[-]" + astral: "\ud800[\udf30-\udf4f]" }, { name: "InGreek_Extended", - bmp: "ἀ-῿" + bmp: "\u1f00-\u1fff" }, { name: "InGreek_and_Coptic", - bmp: "Ͱ-Ͽ" + bmp: "\u0370-\u03ff" }, { name: "InGujarati", - bmp: "઀-૿" + bmp: "\u0a80-\u0aff" }, { name: "InGurmukhi", - bmp: "਀-੿" + bmp: "\u0a00-\u0a7f" }, { name: "InHalfwidth_and_Fullwidth_Forms", - bmp: "＀-￯" + bmp: "\uff00-\uffef" }, { name: "InHangul_Compatibility_Jamo", - bmp: "㄰-㆏" + bmp: "\u3130-\u318f" }, { name: "InHangul_Jamo", - bmp: "ᄀ-ᇿ" + bmp: "\u1100-\u11ff" }, { name: "InHangul_Jamo_Extended_A", - bmp: "ꥠ-꥿" + bmp: "\ua960-\ua97f" }, { name: "InHangul_Jamo_Extended_B", - bmp: "ힰ-퟿" + bmp: "\ud7b0-\ud7ff" }, { name: "InHangul_Syllables", - bmp: "가-힯" + bmp: "\uac00-\ud7af" }, { name: "InHanunoo", - bmp: "ᜠ-᜿" + bmp: "\u1720-\u173f" }, { name: "InHebrew", - bmp: "֐-׿" + bmp: "\u0590-\u05ff" }, { name: "InHigh_Private_Use_Surrogates", - bmp: "-" + bmp: "\udb80-\udbff" }, { name: "InHigh_Surrogates", - bmp: "-" + bmp: "\ud800-\udb7f" }, { name: "InHiragana", - bmp: "぀-ゟ" + bmp: "\u3040-\u309f" }, { name: "InIPA_Extensions", - bmp: "ɐ-ʯ" + bmp: "\u0250-\u02af" }, { name: "InIdeographic_Description_Characters", - bmp: "⿰-⿿" + bmp: "\u2ff0-\u2fff" }, { name: "InImperial_Aramaic", - astral: "[-]" + astral: "\ud802[\udc40-\udc5f]" }, { name: "InInscriptional_Pahlavi", - astral: "[-]" + astral: "\ud802[\udf60-\udf7f]" }, { name: "InInscriptional_Parthian", - astral: "[-]" + astral: "\ud802[\udf40-\udf5f]" }, { name: "InJavanese", - bmp: "ꦀ-꧟" + bmp: "\ua980-\ua9df" }, { name: "InKaithi", - astral: "[-]" + astral: "\ud804[\udc80-\udccf]" }, { name: "InKana_Supplement", - astral: "[-]" + astral: "\ud82c[\udc00-\udcff]" }, { name: "InKanbun", - bmp: "㆐-㆟" + bmp: "\u3190-\u319f" }, { name: "InKangxi_Radicals", - bmp: "⼀-⿟" + bmp: "\u2f00-\u2fdf" }, { name: "InKannada", - bmp: "ಀ-೿" + bmp: "\u0c80-\u0cff" }, { name: "InKatakana", - bmp: "゠-ヿ" + bmp: "\u30a0-\u30ff" }, { name: "InKatakana_Phonetic_Extensions", - bmp: "ㇰ-ㇿ" + bmp: "\u31f0-\u31ff" }, { name: "InKayah_Li", - bmp: "꤀-꤯" + bmp: "\ua900-\ua92f" }, { name: "InKharoshthi", - astral: "[-]" + astral: "\ud802[\ude00-\ude5f]" }, { name: "InKhmer", - bmp: "ក-៿" + bmp: "\u1780-\u17ff" }, { name: "InKhmer_Symbols", - bmp: "᧠-᧿" + bmp: "\u19e0-\u19ff" }, { name: "InLao", - bmp: "຀-໿" + bmp: "\u0e80-\u0eff" }, { name: "InLatin_Extended_Additional", - bmp: "Ḁ-ỿ" + bmp: "\u1e00-\u1eff" }, { name: "InLatin_Extended_A", - bmp: "Ā-ſ" + bmp: "\u0100-\u017f" }, { name: "InLatin_Extended_B", - bmp: "ƀ-ɏ" + bmp: "\u0180-\u024f" }, { name: "InLatin_Extended_C", - bmp: "Ⱡ-Ɀ" + bmp: "\u2c60-\u2c7f" }, { name: "InLatin_Extended_D", - bmp: "꜠-ꟿ" + bmp: "\ua720-\ua7ff" }, { name: "InLatin_1_Supplement", - bmp: "€-ÿ" + bmp: "\x80-\xff" }, { name: "InLepcha", - bmp: "ᰀ-ᱏ" + bmp: "\u1c00-\u1c4f" }, { name: "InLetterlike_Symbols", - bmp: "℀-⅏" + bmp: "\u2100-\u214f" }, { name: "InLimbu", - bmp: "ᤀ-᥏" + bmp: "\u1900-\u194f" }, { name: "InLinear_B_Ideograms", - astral: "[-]" + astral: "\ud800[\udc80-\udcff]" }, { name: "InLinear_B_Syllabary", - astral: "[-]" + astral: "\ud800[\udc00-\udc7f]" }, { name: "InLisu", - bmp: "ꓐ-꓿" + bmp: "\ua4d0-\ua4ff" }, { name: "InLow_Surrogates", - bmp: "-" + bmp: "\udc00-\udfff" }, { name: "InLycian", - astral: "[-]" + astral: "\ud800[\ude80-\ude9f]" }, { name: "InLydian", - astral: "[-]" + astral: "\ud802[\udd20-\udd3f]" }, { name: "InMahjong_Tiles", - astral: "[-]" + astral: "\ud83c[\udc00-\udc2f]" }, { name: "InMalayalam", - bmp: "ഀ-ൿ" + bmp: "\u0d00-\u0d7f" }, { name: "InMandaic", - bmp: "ࡀ-࡟" + bmp: "\u0840-\u085f" }, { name: "InMathematical_Alphanumeric_Symbols", - astral: "[-]" + astral: "\ud835[\udc00-\udfff]" }, { name: "InMathematical_Operators", - bmp: "∀-⋿" + bmp: "\u2200-\u22ff" }, { name: "InMeetei_Mayek", - bmp: "ꯀ-꯿" + bmp: "\uabc0-\uabff" }, { name: "InMeetei_Mayek_Extensions", - bmp: "ꫠ-꫿" + bmp: "\uaae0-\uaaff" }, { name: "InMeroitic_Cursive", - astral: "[-]" + astral: "\ud802[\udda0-\uddff]" }, { name: "InMeroitic_Hieroglyphs", - astral: "[-]" + astral: "\ud802[\udd80-\udd9f]" }, { name: "InMiao", - astral: "[-]" + astral: "\ud81b[\udf00-\udf9f]" }, { name: "InMiscellaneous_Mathematical_Symbols_A", - bmp: "⟀-⟯" + bmp: "\u27c0-\u27ef" }, { name: "InMiscellaneous_Mathematical_Symbols_B", - bmp: "⦀-⧿" + bmp: "\u2980-\u29ff" }, { name: "InMiscellaneous_Symbols", - bmp: "☀-⛿" + bmp: "\u2600-\u26ff" }, { name: "InMiscellaneous_Symbols_And_Pictographs", - astral: "[-]|[-]" + astral: "\ud83d[\udc00-\uddff]|\ud83c[\udf00-\udfff]" }, { name: "InMiscellaneous_Symbols_and_Arrows", - bmp: "⬀-⯿" + bmp: "\u2b00-\u2bff" }, { name: "InMiscellaneous_Technical", - bmp: "⌀-⏿" + bmp: "\u2300-\u23ff" }, { name: "InModifier_Tone_Letters", - bmp: "꜀-ꜟ" + bmp: "\ua700-\ua71f" }, { name: "InMongolian", - bmp: "᠀-᢯" + bmp: "\u1800-\u18af" }, { name: "InMusical_Symbols", - astral: "[-]" + astral: "\ud834[\udd00-\uddff]" }, { name: "InMyanmar", - bmp: "က-႟" + bmp: "\u1000-\u109f" }, { name: "InMyanmar_Extended_A", - bmp: "ꩠ-ꩿ" + bmp: "\uaa60-\uaa7f" }, { name: "InNKo", - bmp: "߀-߿" + bmp: "\u07c0-\u07ff" }, { name: "InNew_Tai_Lue", - bmp: "ᦀ-᧟" + bmp: "\u1980-\u19df" }, { name: "InNumber_Forms", - bmp: "⅐-↏" + bmp: "\u2150-\u218f" }, { name: "InOgham", - bmp: " -᚟" + bmp: "\u1680-\u169f" }, { name: "InOl_Chiki", - bmp: "᱐-᱿" + bmp: "\u1c50-\u1c7f" }, { name: "InOld_Italic", - astral: "[-]" + astral: "\ud800[\udf00-\udf2f]" }, { name: "InOld_Persian", - astral: "[-]" + astral: "\ud800[\udfa0-\udfdf]" }, { name: "InOld_South_Arabian", - astral: "[-]" + astral: "\ud802[\ude60-\ude7f]" }, { name: "InOld_Turkic", - astral: "[-]" + astral: "\ud803[\udc00-\udc4f]" }, { name: "InOptical_Character_Recognition", - bmp: "⑀-⑟" + bmp: "\u2440-\u245f" }, { name: "InOriya", - bmp: "଀-୿" + bmp: "\u0b00-\u0b7f" }, { name: "InOsmanya", - astral: "[-]" + astral: "\ud801[\udc80-\udcaf]" }, { name: "InPhags_pa", - bmp: "ꡀ-꡿" + bmp: "\ua840-\ua87f" }, { name: "InPhaistos_Disc", - astral: "[-]" + astral: "\ud800[\uddd0-\uddff]" }, { name: "InPhoenician", - astral: "[-]" + astral: "\ud802[\udd00-\udd1f]" }, { name: "InPhonetic_Extensions", - bmp: "ᴀ-ᵿ" + bmp: "\u1d00-\u1d7f" }, { name: "InPhonetic_Extensions_Supplement", - bmp: "ᶀ-ᶿ" + bmp: "\u1d80-\u1dbf" }, { name: "InPlaying_Cards", - astral: "[-]" + astral: "\ud83c[\udca0-\udcff]" }, { name: "InPrivate_Use_Area", - bmp: "-" + bmp: "\ue000-\uf8ff" }, { name: "InRejang", - bmp: "ꤰ-꥟" + bmp: "\ua930-\ua95f" }, { name: "InRumi_Numeral_Symbols", - astral: "[-]" + astral: "\ud803[\ude60-\ude7f]" }, { name: "InRunic", - bmp: "ᚠ-᛿" + bmp: "\u16a0-\u16ff" }, { name: "InSamaritan", - bmp: "ࠀ-࠿" + bmp: "\u0800-\u083f" }, { name: "InSaurashtra", - bmp: "ꢀ-꣟" + bmp: "\ua880-\ua8df" }, { name: "InSharada", - astral: "[-]" + astral: "\ud804[\udd80-\udddf]" }, { name: "InShavian", - astral: "[-]" + astral: "\ud801[\udc50-\udc7f]" }, { name: "InSinhala", - bmp: "඀-෿" + bmp: "\u0d80-\u0dff" }, { name: "InSmall_Form_Variants", - bmp: "﹐-﹯" + bmp: "\ufe50-\ufe6f" }, { name: "InSora_Sompeng", - astral: "[-]" + astral: "\ud804[\udcd0-\udcff]" }, { name: "InSpacing_Modifier_Letters", - bmp: "ʰ-˿" + bmp: "\u02b0-\u02ff" }, { name: "InSpecials", - bmp: "￰-￿" + bmp: "\ufff0-\uffff" }, { name: "InSundanese", - bmp: "ᮀ-ᮿ" + bmp: "\u1b80-\u1bbf" }, { name: "InSundanese_Supplement", - bmp: "᳀-᳏" + bmp: "\u1cc0-\u1ccf" }, { name: "InSuperscripts_and_Subscripts", - bmp: "⁰-₟" + bmp: "\u2070-\u209f" }, { name: "InSupplemental_Arrows_A", - bmp: "⟰-⟿" + bmp: "\u27f0-\u27ff" }, { name: "InSupplemental_Arrows_B", - bmp: "⤀-⥿" + bmp: "\u2900-\u297f" }, { name: "InSupplemental_Mathematical_Operators", - bmp: "⨀-⫿" + bmp: "\u2a00-\u2aff" }, { name: "InSupplemental_Punctuation", - bmp: "⸀-⹿" + bmp: "\u2e00-\u2e7f" }, { name: "InSupplementary_Private_Use_Area_A", - astral: "[-][-]" + astral: "[\udb80-\udbbf][\udc00-\udfff]" }, { name: "InSupplementary_Private_Use_Area_B", - astral: "[-][-]" + astral: "[\udbc0-\udbff][\udc00-\udfff]" }, { name: "InSyloti_Nagri", - bmp: "ꠀ-꠯" + bmp: "\ua800-\ua82f" }, { name: "InSyriac", - bmp: "܀-ݏ" + bmp: "\u0700-\u074f" }, { name: "InTagalog", - bmp: "ᜀ-ᜟ" + bmp: "\u1700-\u171f" }, { name: "InTagbanwa", - bmp: "ᝠ-᝿" + bmp: "\u1760-\u177f" }, { name: "InTags", - astral: "[-]" + astral: "\udb40[\udc00-\udc7f]" }, { name: "InTai_Le", - bmp: "ᥐ-᥿" + bmp: "\u1950-\u197f" }, { name: "InTai_Tham", - bmp: "ᨠ-᪯" + bmp: "\u1a20-\u1aaf" }, { name: "InTai_Viet", - bmp: "ꪀ-꫟" + bmp: "\uaa80-\uaadf" }, { name: "InTai_Xuan_Jing_Symbols", - astral: "[-]" + astral: "\ud834[\udf00-\udf5f]" }, { name: "InTakri", - astral: "[-]" + astral: "\ud805[\ude80-\udecf]" }, { name: "InTamil", - bmp: "஀-௿" + bmp: "\u0b80-\u0bff" }, { name: "InTelugu", - bmp: "ఀ-౿" + bmp: "\u0c00-\u0c7f" }, { name: "InThaana", - bmp: "ހ-޿" + bmp: "\u0780-\u07bf" }, { name: "InThai", - bmp: "฀-๿" + bmp: "\u0e00-\u0e7f" }, { name: "InTibetan", - bmp: "ༀ-࿿" + bmp: "\u0f00-\u0fff" }, { name: "InTifinagh", - bmp: "ⴰ-⵿" + bmp: "\u2d30-\u2d7f" }, { name: "InTransport_And_Map_Symbols", - astral: "[-]" + astral: "\ud83d[\ude80-\udeff]" }, { name: "InUgaritic", - astral: "[-]" + astral: "\ud800[\udf80-\udf9f]" }, { name: "InUnified_Canadian_Aboriginal_Syllabics", - bmp: "᐀-ᙿ" + bmp: "\u1400-\u167f" }, { name: "InUnified_Canadian_Aboriginal_Syllabics_Extended", - bmp: "ᢰ-᣿" + bmp: "\u18b0-\u18ff" }, { name: "InVai", - bmp: "ꔀ-꘿" + bmp: "\ua500-\ua63f" }, { name: "InVariation_Selectors", - bmp: "︀-️" + bmp: "\ufe00-\ufe0f" }, { name: "InVariation_Selectors_Supplement", - astral: "[-]" + astral: "\udb40[\udd00-\uddef]" }, { name: "InVedic_Extensions", - bmp: "᳐-᳿" + bmp: "\u1cd0-\u1cff" }, { name: "InVertical_Forms", - bmp: "︐-︟" + bmp: "\ufe10-\ufe1f" }, { name: "InYi_Radicals", - bmp: "꒐-꓏" + bmp: "\ua490-\ua4cf" }, { name: "InYi_Syllables", - bmp: "ꀀ-꒏" + bmp: "\ua000-\ua48f" }, { name: "InYijing_Hexagram_Symbols", - bmp: "䷀-䷿" + bmp: "\u4dc0-\u4dff" } ]); }(e), function(e) { if (!e.addUnicodeData) throw new ReferenceError("Unicode Base must be loaded before Unicode Categories"); @@ -5753,155 +5753,155 @@ function diff_match_patch() { name: "C", alias: "Other", isBmpLast: !0, - bmp: "\x00--Ÿ­͸͹Ϳ-΃΋΍΢Ԩ-԰՗՘ՠֈ֋-֎֐׈-׏׫-ׯ׵-؅؜؝۝܎܏݋݌޲-޿߻-߿࠮࠯࠿࡜࡝࡟-࢟ࢡࢭ-ࣣࣿॸঀ঄঍঎঑঒঩঱঳-঵঺঻৅৆৉৊৏-৖৘-৛৞৤৥ৼ-਀਄਋-਎਑਒਩਱਴਷਺਻਽੃-੆੉੊੎-੐੒-੘੝੟-੥੶-઀઄઎઒઩઱઴઺઻૆૊૎૏૑-૟૤૥૲-଀଄଍଎଑଒଩଱଴଺଻୅୆୉୊୎-୕୘-୛୞୤୥୸-஁஄஋-஍஑஖-஘஛஝஠-஢஥-஧஫-஭஺-஽௃-௅௉௎௏௑-௖௘-௥௻-ఀఄ఍఑఩ఴ఺-఼౅౉౎-౔౗ౚ-౟౤౥౰-౷ಀಁ಄಍಑಩಴಺಻೅೉೎-೔೗-ೝ೟೤೥೰ೳ-ഁഄ഍഑഻഼൅൉൏-ൖ൘-ൟ൤൥൶-൸඀ඁ඄඗-඙඲඼඾඿෇-෉෋-෎෕෗෠-෱෵-฀฻-฾๜-຀຃຅ຆຉ຋ຌຎ-ຓຘຠ຤຦ຨຩຬ຺຾຿໅໇໎໏໚໛໠-໿཈཭-཰྘྽࿍࿛-࿿჆჈-჌჎჏቉቎቏቗቙቞቟኉኎኏኱኶኷኿዁዆዇዗጑጖጗፛፜፽-፿᎚-᎟Ᏽ-᏿᚝-᚟ᛱ-᛿ᜍ᜕-ᜟ᜷-᜿᝔-᝟᝭᝱᝴-᝿៞៟៪-៯៺-៿᠏᠚-᠟ᡸ-᡿᢫-᢯᣶-᣿ᤝ-᤟᤬-᤯᤼-᤿᥁-᥃᥮᥯᥵-᥿᦬-᦯᧊-᧏᧛-᧝᨜᨝᩟᩽᩾᪊-᪏᪚-᪟᪮-᫿ᭌ-᭏᭽-᭿᯴-᯻᰸-᰺᱊-᱌ᲀ-Ჿ᳈-᳏᳷-᳿ᷧ-᷻἖἗἞἟὆὇὎὏὘὚὜὞὾὿᾵῅῔῕῜῰῱῵῿​-‏‪-‮⁠-⁲⁳₏₝-₟₻-⃏⃱-⃿↊-↏⏴-⏿␧-␿⑋-⑟✀⭍-⭏⭚-⯿Ⱟⱟ⳴-⳸⴦⴨-⴬⴮⴯⵨-⵮⵱-⵾⶗-⶟⶧⶯⶷⶿⷇⷏⷗⷟⸼-⹿⺚⻴-⻿⿖-⿯⿼-⿿぀゗゘㄀-㄄ㄮ-㄰㆏ㆻ-ㆿ㇤-㇯㈟㋿䶶-䶿鿍-鿿꒍-꒏꓇-꓏꘬-꘿Ꚙ-ꚞ꛸-꛿ꞏꞔ-ꞟꞫ-ꟷ꠬-꠯꠺-꠿꡸-꡿ꣅ-꣍꣚-꣟꣼-ꣿ꥔-꥞꥽-꥿꧎꧚-꧝ꧠ-꧿꨷-꨿꩎꩏꩚꩛ꩼ-ꩿ꫃-꫚꫷-꬀꬇꬈꬏꬐꬗-꬟꬧꬯-ꮿ꯮꯯꯺-꯿힤-힯퟇-퟊퟼-﩮﩯﫚-﫿﬇-﬒﬘-﬜﬷﬽﬿﭂﭅﯂-﯒﵀-﵏﶐﶑﷈-﷯﷾﷿︚-︟︧-︯﹓﹧﹬-﹯﹵﻽-＀﾿-￁￈￉￐￑￘￙￝-￟￧￯-￾￿", - astral: "[-]|[--]|[--------]|[----------------]|[-]|[----]|[-]|[-------------]|[-]|[------]|[-]|[--]|[--]|[-]|[-------][-]|[-------]|[---------------]|[-]|[-]|[------]|[-]|[---]|[-]" + bmp: "\x00--\x9f\xad\u0378\u0379\u037f-\u0383\u038b\u038d\u03a2\u0528-\u0530\u0557\u0558\u0560\u0588\u058b-\u058e\u0590\u05c8-\u05cf\u05eb-\u05ef\u05f5-\u0605\u061c\u061d\u06dd\u070e\u070f\u074b\u074c\u07b2-\u07bf\u07fb-\u07ff\u082e\u082f\u083f\u085c\u085d\u085f-\u089f\u08a1\u08ad-\u08e3\u08ff\u0978\u0980\u0984\u098d\u098e\u0991\u0992\u09a9\u09b1\u09b3-\u09b5\u09ba\u09bb\u09c5\u09c6\u09c9\u09ca\u09cf-\u09d6\u09d8-\u09db\u09de\u09e4\u09e5\u09fc-\u0a00\u0a04\u0a0b-\u0a0e\u0a11\u0a12\u0a29\u0a31\u0a34\u0a37\u0a3a\u0a3b\u0a3d\u0a43-\u0a46\u0a49\u0a4a\u0a4e-\u0a50\u0a52-\u0a58\u0a5d\u0a5f-\u0a65\u0a76-\u0a80\u0a84\u0a8e\u0a92\u0aa9\u0ab1\u0ab4\u0aba\u0abb\u0ac6\u0aca\u0ace\u0acf\u0ad1-\u0adf\u0ae4\u0ae5\u0af2-\u0b00\u0b04\u0b0d\u0b0e\u0b11\u0b12\u0b29\u0b31\u0b34\u0b3a\u0b3b\u0b45\u0b46\u0b49\u0b4a\u0b4e-\u0b55\u0b58-\u0b5b\u0b5e\u0b64\u0b65\u0b78-\u0b81\u0b84\u0b8b-\u0b8d\u0b91\u0b96-\u0b98\u0b9b\u0b9d\u0ba0-\u0ba2\u0ba5-\u0ba7\u0bab-\u0bad\u0bba-\u0bbd\u0bc3-\u0bc5\u0bc9\u0bce\u0bcf\u0bd1-\u0bd6\u0bd8-\u0be5\u0bfb-\u0c00\u0c04\u0c0d\u0c11\u0c29\u0c34\u0c3a-\u0c3c\u0c45\u0c49\u0c4e-\u0c54\u0c57\u0c5a-\u0c5f\u0c64\u0c65\u0c70-\u0c77\u0c80\u0c81\u0c84\u0c8d\u0c91\u0ca9\u0cb4\u0cba\u0cbb\u0cc5\u0cc9\u0cce-\u0cd4\u0cd7-\u0cdd\u0cdf\u0ce4\u0ce5\u0cf0\u0cf3-\u0d01\u0d04\u0d0d\u0d11\u0d3b\u0d3c\u0d45\u0d49\u0d4f-\u0d56\u0d58-\u0d5f\u0d64\u0d65\u0d76-\u0d78\u0d80\u0d81\u0d84\u0d97-\u0d99\u0db2\u0dbc\u0dbe\u0dbf\u0dc7-\u0dc9\u0dcb-\u0dce\u0dd5\u0dd7\u0de0-\u0df1\u0df5-\u0e00\u0e3b-\u0e3e\u0e5c-\u0e80\u0e83\u0e85\u0e86\u0e89\u0e8b\u0e8c\u0e8e-\u0e93\u0e98\u0ea0\u0ea4\u0ea6\u0ea8\u0ea9\u0eac\u0eba\u0ebe\u0ebf\u0ec5\u0ec7\u0ece\u0ecf\u0eda\u0edb\u0ee0-\u0eff\u0f48\u0f6d-\u0f70\u0f98\u0fbd\u0fcd\u0fdb-\u0fff\u10c6\u10c8-\u10cc\u10ce\u10cf\u1249\u124e\u124f\u1257\u1259\u125e\u125f\u1289\u128e\u128f\u12b1\u12b6\u12b7\u12bf\u12c1\u12c6\u12c7\u12d7\u1311\u1316\u1317\u135b\u135c\u137d-\u137f\u139a-\u139f\u13f5-\u13ff\u169d-\u169f\u16f1-\u16ff\u170d\u1715-\u171f\u1737-\u173f\u1754-\u175f\u176d\u1771\u1774-\u177f\u17de\u17df\u17ea-\u17ef\u17fa-\u17ff\u180f\u181a-\u181f\u1878-\u187f\u18ab-\u18af\u18f6-\u18ff\u191d-\u191f\u192c-\u192f\u193c-\u193f\u1941-\u1943\u196e\u196f\u1975-\u197f\u19ac-\u19af\u19ca-\u19cf\u19db-\u19dd\u1a1c\u1a1d\u1a5f\u1a7d\u1a7e\u1a8a-\u1a8f\u1a9a-\u1a9f\u1aae-\u1aff\u1b4c-\u1b4f\u1b7d-\u1b7f\u1bf4-\u1bfb\u1c38-\u1c3a\u1c4a-\u1c4c\u1c80-\u1cbf\u1cc8-\u1ccf\u1cf7-\u1cff\u1de7-\u1dfb\u1f16\u1f17\u1f1e\u1f1f\u1f46\u1f47\u1f4e\u1f4f\u1f58\u1f5a\u1f5c\u1f5e\u1f7e\u1f7f\u1fb5\u1fc5\u1fd4\u1fd5\u1fdc\u1ff0\u1ff1\u1ff5\u1fff\u200b-\u200f\u202a-\u202e\u2060-\u206f\u2072\u2073\u208f\u209d-\u209f\u20bb-\u20cf\u20f1-\u20ff\u218a-\u218f\u23f4-\u23ff\u2427-\u243f\u244b-\u245f\u2700\u2b4d-\u2b4f\u2b5a-\u2bff\u2c2f\u2c5f\u2cf4-\u2cf8\u2d26\u2d28-\u2d2c\u2d2e\u2d2f\u2d68-\u2d6e\u2d71-\u2d7e\u2d97-\u2d9f\u2da7\u2daf\u2db7\u2dbf\u2dc7\u2dcf\u2dd7\u2ddf\u2e3c-\u2e7f\u2e9a\u2ef4-\u2eff\u2fd6-\u2fef\u2ffc-\u2fff\u3040\u3097\u3098\u3100-\u3104\u312e-\u3130\u318f\u31bb-\u31bf\u31e4-\u31ef\u321f\u32ff\u4db6-\u4dbf\u9fcd-\u9fff\ua48d-\ua48f\ua4c7-\ua4cf\ua62c-\ua63f\ua698-\ua69e\ua6f8-\ua6ff\ua78f\ua794-\ua79f\ua7ab-\ua7f7\ua82c-\ua82f\ua83a-\ua83f\ua878-\ua87f\ua8c5-\ua8cd\ua8da-\ua8df\ua8fc-\ua8ff\ua954-\ua95e\ua97d-\ua97f\ua9ce\ua9da-\ua9dd\ua9e0-\ua9ff\uaa37-\uaa3f\uaa4e\uaa4f\uaa5a\uaa5b\uaa7c-\uaa7f\uaac3-\uaada\uaaf7-\uab00\uab07\uab08\uab0f\uab10\uab17-\uab1f\uab27\uab2f-\uabbf\uabee\uabef\uabfa-\uabff\ud7a4-\ud7af\ud7c7-\ud7ca\ud7fc-\uf8ff\ufa6e\ufa6f\ufada-\ufaff\ufb07-\ufb12\ufb18-\ufb1c\ufb37\ufb3d\ufb3f\ufb42\ufb45\ufbc2-\ufbd2\ufd40-\ufd4f\ufd90\ufd91\ufdc8-\ufdef\ufdfe\ufdff\ufe1a-\ufe1f\ufe27-\ufe2f\ufe53\ufe67\ufe6c-\ufe6f\ufe75\ufefd-\uff00\uffbf-\uffc1\uffc8\uffc9\uffd0\uffd1\uffd8\uffd9\uffdd-\uffdf\uffe7\uffef-\ufffb\ufffe\uffff", + astral: "\ud808[\udf6f-\udfff]|\ud809[\udc63-\udc6f\udc74-\udfff]|\ud804[\udc4e-\udc51\udc70-\udc7f\udcbd\udcc2-\udccf\udce9-\udcef\udcfa-\udcff\udd35\udd44-\udd7f\uddc9-\uddcf\uddda-\udfff]|\ud802[\udc06\udc07\udc09\udc36\udc39-\udc3b\udc3d\udc3e\udc56\udc60-\udcff\udd1c-\udd1e\udd3a-\udd3e\udd40-\udd7f\uddb8-\uddbd\uddc0-\uddff\ude04\ude07-\ude0b\ude14\ude18\ude34-\ude37\ude3b-\ude3e\ude48-\ude4f\ude59-\ude5f\ude80-\udeff\udf36-\udf38\udf56\udf57\udf73-\udf77\udf80-\udfff]|\ud86d[\udf35-\udf3f]|\ud81b[\udc00-\udeff\udf45-\udf4f\udf7f-\udf8e\udfa0-\udfff]|\ud86e[\udc1e-\udfff]|\ud800[\udc0c\udc27\udc3b\udc3e\udc4e\udc4f\udc5e-\udc7f\udcfb-\udcff\udd03-\udd06\udd34-\udd36\udd8b-\udd8f\udd9c-\uddcf\uddfe-\ude7f\ude9d-\ude9f\uded1-\udeff\udf1f\udf24-\udf2f\udf4b-\udf7f\udf9e\udfc4-\udfc7\udfd6-\udfff]|\ud869[\uded7-\udeff]|\ud83b[\udc00-\uddff\ude04\ude20\ude23\ude25\ude26\ude28\ude33\ude38\ude3a\ude3c-\ude41\ude43-\ude46\ude48\ude4a\ude4c\ude50\ude53\ude55\ude56\ude58\ude5a\ude5c\ude5e\ude60\ude63\ude65\ude66\ude6b\ude73\ude78\ude7d\ude7f\ude8a\ude9c-\udea0\udea4\udeaa\udebc-\udeef\udef2-\udfff]|\ud87e[\ude1e-\udfff]|\udb40[\udc00-\udcff\uddf0-\udfff]|\ud803[\udc49-\ude5f\ude7f-\udfff]|\ud80d[\udc2f-\udfff]|[\ud806\ud807\ud80a\ud80b\ud80e-\ud819\ud81c-\ud82b\ud82d-\ud833\ud836-\ud83a\ud83e\ud83f\ud86f-\ud87d\ud87f-\udb3f\udb41-\udbff][\udc00-\udfff]|\ud83d[\udc3f\udc41\udcf8\udcfd-\udcff\udd3e\udd3f\udd44-\udd4f\udd68-\uddfa\ude41-\ude44\ude50-\ude7f\udec6-\udeff\udf74-\udfff]|\ud83c[\udc2c-\udc2f\udc94-\udc9f\udcaf\udcb0\udcbf\udcc0\udcd0\udce0-\udcff\udd0b-\udd0f\udd2f\udd6c-\udd6f\udd9b-\udde5\ude03-\ude0f\ude3b-\ude3f\ude49-\ude4f\ude52-\udeff\udf21-\udf2f\udf36\udf7d-\udf7f\udf94-\udf9f\udfc5\udfcb-\udfdf\udff1-\udfff]|\ud835[\udc55\udc9d\udca0\udca1\udca3\udca4\udca7\udca8\udcad\udcba\udcbc\udcc4\udd06\udd0b\udd0c\udd15\udd1d\udd3a\udd3f\udd45\udd47-\udd49\udd51\udea6\udea7\udfcc\udfcd]|\ud81a[\ude39-\udfff]|\ud834[\udcf6-\udcff\udd27\udd28\udd73-\udd7a\uddde-\uddff\ude46-\udeff\udf57-\udf5f\udf72-\udfff]|\ud801[\udc9e\udc9f\udcaa-\udfff]|\ud805[\udc00-\ude7f\udeb8-\udebf\udeca-\udfff]|\ud82c[\udc02-\udfff]" }, { name: "Cc", alias: "Control", - bmp: "\x00--Ÿ" + bmp: "\x00--\x9f" }, { name: "Cf", alias: "Format", - bmp: "­؀-؄۝܏​-‏‪-‮⁠-⁤--", - astral: "[-]|[-]|𑂽" + bmp: "\xad\u0600-\u0604\u06dd\u070f\u200b-\u200f\u202a-\u202e\u2060-\u2064\u206a-\u206f\ufeff\ufff9-\ufffb", + astral: "\udb40[\udc01\udc20-\udc7f]|\ud834[\udd73-\udd7a]|\ud804\udcbd" }, { name: "Cn", alias: "Unassigned", - bmp: "͸͹Ϳ-΃΋΍΢Ԩ-԰՗՘ՠֈ֋-֎֐׈-׏׫-ׯ׵-׿؅؜؝܎݋݌޲-޿߻-߿࠮࠯࠿࡜࡝࡟-࢟ࢡࢭ-ࣣࣿॸঀ঄঍঎঑঒঩঱঳-঵঺঻৅৆৉৊৏-৖৘-৛৞৤৥ৼ-਀਄਋-਎਑਒਩਱਴਷਺਻਽੃-੆੉੊੎-੐੒-੘੝੟-੥੶-઀઄઎઒઩઱઴઺઻૆૊૎૏૑-૟૤૥૲-଀଄଍଎଑଒଩଱଴଺଻୅୆୉୊୎-୕୘-୛୞୤୥୸-஁஄஋-஍஑஖-஘஛஝஠-஢஥-஧஫-஭஺-஽௃-௅௉௎௏௑-௖௘-௥௻-ఀఄ఍఑఩ఴ఺-఼౅౉౎-౔౗ౚ-౟౤౥౰-౷ಀಁ಄಍಑಩಴಺಻೅೉೎-೔೗-ೝ೟೤೥೰ೳ-ഁഄ഍഑഻഼൅൉൏-ൖ൘-ൟ൤൥൶-൸඀ඁ඄඗-඙඲඼඾඿෇-෉෋-෎෕෗෠-෱෵-฀฻-฾๜-຀຃຅ຆຉ຋ຌຎ-ຓຘຠ຤຦ຨຩຬ຺຾຿໅໇໎໏໚໛໠-໿཈཭-཰྘྽࿍࿛-࿿჆჈-჌჎჏቉቎቏቗቙቞቟኉኎኏኱኶኷኿዁዆዇዗጑጖጗፛፜፽-፿᎚-᎟Ᏽ-᏿᚝-᚟ᛱ-᛿ᜍ᜕-ᜟ᜷-᜿᝔-᝟᝭᝱᝴-᝿៞៟៪-៯៺-៿᠏᠚-᠟ᡸ-᡿᢫-᢯᣶-᣿ᤝ-᤟᤬-᤯᤼-᤿᥁-᥃᥮᥯᥵-᥿᦬-᦯᧊-᧏᧛-᧝᨜᨝᩟᩽᩾᪊-᪏᪚-᪟᪮-᫿ᭌ-᭏᭽-᭿᯴-᯻᰸-᰺᱊-᱌ᲀ-Ჿ᳈-᳏᳷-᳿ᷧ-᷻἖἗἞἟὆὇὎὏὘὚὜὞὾὿᾵῅῔῕῜῰῱῵῿⁥-⁩⁲⁳₏₝-₟₻-⃏⃱-⃿↊-↏⏴-⏿␧-␿⑋-⑟✀⭍-⭏⭚-⯿Ⱟⱟ⳴-⳸⴦⴨-⴬⴮⴯⵨-⵮⵱-⵾⶗-⶟⶧⶯⶷⶿⷇⷏⷗⷟⸼-⹿⺚⻴-⻿⿖-⿯⿼-⿿぀゗゘㄀-㄄ㄮ-㄰㆏ㆻ-ㆿ㇤-㇯㈟㋿䶶-䶿鿍-鿿꒍-꒏꓇-꓏꘬-꘿Ꚙ-ꚞ꛸-꛿ꞏꞔ-ꞟꞫ-ꟷ꠬-꠯꠺-꠿꡸-꡿ꣅ-꣍꣚-꣟꣼-ꣿ꥔-꥞꥽-꥿꧎꧚-꧝ꧠ-꧿꨷-꨿꩎꩏꩚꩛ꩼ-ꩿ꫃-꫚꫷-꬀꬇꬈꬏꬐꬗-꬟꬧꬯-ꮿ꯮꯯꯺-꯿힤-힯퟇-퟊퟼-퟿﩮﩯﫚-﫿﬇-﬒﬘-﬜﬷﬽﬿﭂﭅﯂-﯒﵀-﵏﶐﶑﷈-﷯﷾﷿︚-︟︧-︯﹓﹧﹬-﹯﹵﻽﻾＀﾿-￁￈￉￐￑￘￙￝-￟￧￯-￸￾￿", - astral: "[-]|[---]|[-----]|[----------------]|[-]|[----]|[--]|[-------------]|[-]|[--------]|[------]|[][]|[-]|[--]|[-]|[-------][-]|[-------]|[-]|[---------------]|[-]|[-]|[-]|[---]|[-]" + bmp: "\u0378\u0379\u037f-\u0383\u038b\u038d\u03a2\u0528-\u0530\u0557\u0558\u0560\u0588\u058b-\u058e\u0590\u05c8-\u05cf\u05eb-\u05ef\u05f5-\u05ff\u0605\u061c\u061d\u070e\u074b\u074c\u07b2-\u07bf\u07fb-\u07ff\u082e\u082f\u083f\u085c\u085d\u085f-\u089f\u08a1\u08ad-\u08e3\u08ff\u0978\u0980\u0984\u098d\u098e\u0991\u0992\u09a9\u09b1\u09b3-\u09b5\u09ba\u09bb\u09c5\u09c6\u09c9\u09ca\u09cf-\u09d6\u09d8-\u09db\u09de\u09e4\u09e5\u09fc-\u0a00\u0a04\u0a0b-\u0a0e\u0a11\u0a12\u0a29\u0a31\u0a34\u0a37\u0a3a\u0a3b\u0a3d\u0a43-\u0a46\u0a49\u0a4a\u0a4e-\u0a50\u0a52-\u0a58\u0a5d\u0a5f-\u0a65\u0a76-\u0a80\u0a84\u0a8e\u0a92\u0aa9\u0ab1\u0ab4\u0aba\u0abb\u0ac6\u0aca\u0ace\u0acf\u0ad1-\u0adf\u0ae4\u0ae5\u0af2-\u0b00\u0b04\u0b0d\u0b0e\u0b11\u0b12\u0b29\u0b31\u0b34\u0b3a\u0b3b\u0b45\u0b46\u0b49\u0b4a\u0b4e-\u0b55\u0b58-\u0b5b\u0b5e\u0b64\u0b65\u0b78-\u0b81\u0b84\u0b8b-\u0b8d\u0b91\u0b96-\u0b98\u0b9b\u0b9d\u0ba0-\u0ba2\u0ba5-\u0ba7\u0bab-\u0bad\u0bba-\u0bbd\u0bc3-\u0bc5\u0bc9\u0bce\u0bcf\u0bd1-\u0bd6\u0bd8-\u0be5\u0bfb-\u0c00\u0c04\u0c0d\u0c11\u0c29\u0c34\u0c3a-\u0c3c\u0c45\u0c49\u0c4e-\u0c54\u0c57\u0c5a-\u0c5f\u0c64\u0c65\u0c70-\u0c77\u0c80\u0c81\u0c84\u0c8d\u0c91\u0ca9\u0cb4\u0cba\u0cbb\u0cc5\u0cc9\u0cce-\u0cd4\u0cd7-\u0cdd\u0cdf\u0ce4\u0ce5\u0cf0\u0cf3-\u0d01\u0d04\u0d0d\u0d11\u0d3b\u0d3c\u0d45\u0d49\u0d4f-\u0d56\u0d58-\u0d5f\u0d64\u0d65\u0d76-\u0d78\u0d80\u0d81\u0d84\u0d97-\u0d99\u0db2\u0dbc\u0dbe\u0dbf\u0dc7-\u0dc9\u0dcb-\u0dce\u0dd5\u0dd7\u0de0-\u0df1\u0df5-\u0e00\u0e3b-\u0e3e\u0e5c-\u0e80\u0e83\u0e85\u0e86\u0e89\u0e8b\u0e8c\u0e8e-\u0e93\u0e98\u0ea0\u0ea4\u0ea6\u0ea8\u0ea9\u0eac\u0eba\u0ebe\u0ebf\u0ec5\u0ec7\u0ece\u0ecf\u0eda\u0edb\u0ee0-\u0eff\u0f48\u0f6d-\u0f70\u0f98\u0fbd\u0fcd\u0fdb-\u0fff\u10c6\u10c8-\u10cc\u10ce\u10cf\u1249\u124e\u124f\u1257\u1259\u125e\u125f\u1289\u128e\u128f\u12b1\u12b6\u12b7\u12bf\u12c1\u12c6\u12c7\u12d7\u1311\u1316\u1317\u135b\u135c\u137d-\u137f\u139a-\u139f\u13f5-\u13ff\u169d-\u169f\u16f1-\u16ff\u170d\u1715-\u171f\u1737-\u173f\u1754-\u175f\u176d\u1771\u1774-\u177f\u17de\u17df\u17ea-\u17ef\u17fa-\u17ff\u180f\u181a-\u181f\u1878-\u187f\u18ab-\u18af\u18f6-\u18ff\u191d-\u191f\u192c-\u192f\u193c-\u193f\u1941-\u1943\u196e\u196f\u1975-\u197f\u19ac-\u19af\u19ca-\u19cf\u19db-\u19dd\u1a1c\u1a1d\u1a5f\u1a7d\u1a7e\u1a8a-\u1a8f\u1a9a-\u1a9f\u1aae-\u1aff\u1b4c-\u1b4f\u1b7d-\u1b7f\u1bf4-\u1bfb\u1c38-\u1c3a\u1c4a-\u1c4c\u1c80-\u1cbf\u1cc8-\u1ccf\u1cf7-\u1cff\u1de7-\u1dfb\u1f16\u1f17\u1f1e\u1f1f\u1f46\u1f47\u1f4e\u1f4f\u1f58\u1f5a\u1f5c\u1f5e\u1f7e\u1f7f\u1fb5\u1fc5\u1fd4\u1fd5\u1fdc\u1ff0\u1ff1\u1ff5\u1fff\u2065-\u2069\u2072\u2073\u208f\u209d-\u209f\u20bb-\u20cf\u20f1-\u20ff\u218a-\u218f\u23f4-\u23ff\u2427-\u243f\u244b-\u245f\u2700\u2b4d-\u2b4f\u2b5a-\u2bff\u2c2f\u2c5f\u2cf4-\u2cf8\u2d26\u2d28-\u2d2c\u2d2e\u2d2f\u2d68-\u2d6e\u2d71-\u2d7e\u2d97-\u2d9f\u2da7\u2daf\u2db7\u2dbf\u2dc7\u2dcf\u2dd7\u2ddf\u2e3c-\u2e7f\u2e9a\u2ef4-\u2eff\u2fd6-\u2fef\u2ffc-\u2fff\u3040\u3097\u3098\u3100-\u3104\u312e-\u3130\u318f\u31bb-\u31bf\u31e4-\u31ef\u321f\u32ff\u4db6-\u4dbf\u9fcd-\u9fff\ua48d-\ua48f\ua4c7-\ua4cf\ua62c-\ua63f\ua698-\ua69e\ua6f8-\ua6ff\ua78f\ua794-\ua79f\ua7ab-\ua7f7\ua82c-\ua82f\ua83a-\ua83f\ua878-\ua87f\ua8c5-\ua8cd\ua8da-\ua8df\ua8fc-\ua8ff\ua954-\ua95e\ua97d-\ua97f\ua9ce\ua9da-\ua9dd\ua9e0-\ua9ff\uaa37-\uaa3f\uaa4e\uaa4f\uaa5a\uaa5b\uaa7c-\uaa7f\uaac3-\uaada\uaaf7-\uab00\uab07\uab08\uab0f\uab10\uab17-\uab1f\uab27\uab2f-\uabbf\uabee\uabef\uabfa-\uabff\ud7a4-\ud7af\ud7c7-\ud7ca\ud7fc-\ud7ff\ufa6e\ufa6f\ufada-\ufaff\ufb07-\ufb12\ufb18-\ufb1c\ufb37\ufb3d\ufb3f\ufb42\ufb45\ufbc2-\ufbd2\ufd40-\ufd4f\ufd90\ufd91\ufdc8-\ufdef\ufdfe\ufdff\ufe1a-\ufe1f\ufe27-\ufe2f\ufe53\ufe67\ufe6c-\ufe6f\ufe75\ufefd\ufefe\uff00\uffbf-\uffc1\uffc8\uffc9\uffd0\uffd1\uffd8\uffd9\uffdd-\uffdf\uffe7\uffef-\ufff8\ufffe\uffff", + astral: "\ud808[\udf6f-\udfff]|\udb40[\udc00\udc02-\udc1f\udc80-\udcff\uddf0-\udfff]|\ud834[\udcf6-\udcff\udd27\udd28\uddde-\uddff\ude46-\udeff\udf57-\udf5f\udf72-\udfff]|\ud802[\udc06\udc07\udc09\udc36\udc39-\udc3b\udc3d\udc3e\udc56\udc60-\udcff\udd1c-\udd1e\udd3a-\udd3e\udd40-\udd7f\uddb8-\uddbd\uddc0-\uddff\ude04\ude07-\ude0b\ude14\ude18\ude34-\ude37\ude3b-\ude3e\ude48-\ude4f\ude59-\ude5f\ude80-\udeff\udf36-\udf38\udf56\udf57\udf73-\udf77\udf80-\udfff]|\ud86d[\udf35-\udf3f]|\ud81b[\udc00-\udeff\udf45-\udf4f\udf7f-\udf8e\udfa0-\udfff]|\ud809[\udc63-\udc6f\udc74-\udfff]|\ud800[\udc0c\udc27\udc3b\udc3e\udc4e\udc4f\udc5e-\udc7f\udcfb-\udcff\udd03-\udd06\udd34-\udd36\udd8b-\udd8f\udd9c-\uddcf\uddfe-\ude7f\ude9d-\ude9f\uded1-\udeff\udf1f\udf24-\udf2f\udf4b-\udf7f\udf9e\udfc4-\udfc7\udfd6-\udfff]|\ud869[\uded7-\udeff]|\ud804[\udc4e-\udc51\udc70-\udc7f\udcc2-\udccf\udce9-\udcef\udcfa-\udcff\udd35\udd44-\udd7f\uddc9-\uddcf\uddda-\udfff]|\ud83b[\udc00-\uddff\ude04\ude20\ude23\ude25\ude26\ude28\ude33\ude38\ude3a\ude3c-\ude41\ude43-\ude46\ude48\ude4a\ude4c\ude50\ude53\ude55\ude56\ude58\ude5a\ude5c\ude5e\ude60\ude63\ude65\ude66\ude6b\ude73\ude78\ude7d\ude7f\ude8a\ude9c-\udea0\udea4\udeaa\udebc-\udeef\udef2-\udfff]|[\udbbf\udbff][\udffe\udfff]|\ud87e[\ude1e-\udfff]|\ud803[\udc49-\ude5f\ude7f-\udfff]|\ud80d[\udc2f-\udfff]|[\ud806\ud807\ud80a\ud80b\ud80e-\ud819\ud81c-\ud82b\ud82d-\ud833\ud836-\ud83a\ud83e\ud83f\ud86f-\ud87d\ud87f-\udb3f\udb41-\udb7f][\udc00-\udfff]|\ud83d[\udc3f\udc41\udcf8\udcfd-\udcff\udd3e\udd3f\udd44-\udd4f\udd68-\uddfa\ude41-\ude44\ude50-\ude7f\udec6-\udeff\udf74-\udfff]|\ud86e[\udc1e-\udfff]|\ud83c[\udc2c-\udc2f\udc94-\udc9f\udcaf\udcb0\udcbf\udcc0\udcd0\udce0-\udcff\udd0b-\udd0f\udd2f\udd6c-\udd6f\udd9b-\udde5\ude03-\ude0f\ude3b-\ude3f\ude49-\ude4f\ude52-\udeff\udf21-\udf2f\udf36\udf7d-\udf7f\udf94-\udf9f\udfc5\udfcb-\udfdf\udff1-\udfff]|\ud835[\udc55\udc9d\udca0\udca1\udca3\udca4\udca7\udca8\udcad\udcba\udcbc\udcc4\udd06\udd0b\udd0c\udd15\udd1d\udd3a\udd3f\udd45\udd47-\udd49\udd51\udea6\udea7\udfcc\udfcd]|\ud81a[\ude39-\udfff]|\ud801[\udc9e\udc9f\udcaa-\udfff]|\ud805[\udc00-\ude7f\udeb8-\udebf\udeca-\udfff]|\ud82c[\udc02-\udfff]" }, { name: "Co", alias: "Private_Use", - bmp: "-", - astral: "[--][-]|[][-]" + bmp: "\ue000-\uf8ff", + astral: "[\udb80-\udbbe\udbc0-\udbfe][\udc00-\udfff]|[\udbbf\udbff][\udc00-\udffd]" }, { name: "Cs", alias: "Surrogate", - bmp: "-" + bmp: "\ud800-\udfff" }, { name: "Ll", alias: "Lowercase_Letter", - bmp: "a-zµß-öø-ÿāăąćĉċčďđēĕėęěĝğġģĥħĩīĭįıijĵķĸĺļľŀłńņňʼnŋōŏőœŕŗřśŝşšţťŧũūŭůűųŵŷźżž-ƀƃƅƈƌƍƒƕƙ-ƛƞơƣƥƨƪƫƭưƴƶƹƺƽ-ƿdžljnjǎǐǒǔǖǘǚǜǝǟǡǣǥǧǩǫǭǯǰdzǵǹǻǽǿȁȃȅȇȉȋȍȏȑȓȕȗșțȝȟȡȣȥȧȩȫȭȯȱȳ-ȹȼȿɀɂɇɉɋɍɏ-ʓʕ-ʯͱͳͷͻ-ͽΐά-ώϐϑϕ-ϗϙϛϝϟϡϣϥϧϩϫϭϯ-ϳϵϸϻϼа-џѡѣѥѧѩѫѭѯѱѳѵѷѹѻѽѿҁҋҍҏґғҕҗҙқҝҟҡңҥҧҩҫҭүұҳҵҷҹһҽҿӂӄӆӈӊӌӎӏӑӓӕӗәӛӝӟӡӣӥӧөӫӭӯӱӳӵӷӹӻӽӿԁԃԅԇԉԋԍԏԑԓԕԗԙԛԝԟԡԣԥԧա-ևᴀ-ᴫᵫ-ᵷᵹ-ᶚḁḃḅḇḉḋḍḏḑḓḕḗḙḛḝḟḡḣḥḧḩḫḭḯḱḳḵḷḹḻḽḿṁṃṅṇṉṋṍṏṑṓṕṗṙṛṝṟṡṣṥṧṩṫṭṯṱṳṵṷṹṻṽṿẁẃẅẇẉẋẍẏẑẓẕ-ẝẟạảấầẩẫậắằẳẵặẹẻẽếềểễệỉịọỏốồổỗộớờởỡợụủứừửữựỳỵỷỹỻỽỿ-ἇἐ-ἕἠ-ἧἰ-ἷὀ-ὅὐ-ὗὠ-ὧὰ-ώᾀ-ᾇᾐ-ᾗᾠ-ᾧᾰ-ᾴᾶᾷιῂ-ῄῆῇῐ-ΐῖῗῠ-ῧῲ-ῴῶῷℊℎℏℓℯℴℹℼℽⅆ-ⅉⅎↄⰰ-ⱞⱡⱥⱦⱨⱪⱬⱱⱳⱴⱶ-ⱻⲁⲃⲅⲇⲉⲋⲍⲏⲑⲓⲕⲗⲙⲛⲝⲟⲡⲣⲥⲧⲩⲫⲭⲯⲱⲳⲵⲷⲹⲻⲽⲿⳁⳃⳅⳇⳉⳋⳍⳏⳑⳓⳕⳗⳙⳛⳝⳟⳡⳣⳤⳬⳮⳳⴀ-ⴥⴧⴭꙁꙃꙅꙇꙉꙋꙍꙏꙑꙓꙕꙗꙙꙛꙝꙟꙡꙣꙥꙧꙩꙫꙭꚁꚃꚅꚇꚉꚋꚍꚏꚑꚓꚕꚗꜣꜥꜧꜩꜫꜭꜯ-ꜱꜳꜵꜷꜹꜻꜽꜿꝁꝃꝅꝇꝉꝋꝍꝏꝑꝓꝕꝗꝙꝛꝝꝟꝡꝣꝥꝧꝩꝫꝭꝯꝱ-ꝸꝺꝼꝿꞁꞃꞅꞇꞌꞎꞑꞓꞡꞣꞥꞧꞩꟺff-stﬓ-ﬗa-z", - astral: "[--------------------------]|[-]" + bmp: "a-z\xb5\xdf-\xf6\xf8-\xff\u0101\u0103\u0105\u0107\u0109\u010b\u010d\u010f\u0111\u0113\u0115\u0117\u0119\u011b\u011d\u011f\u0121\u0123\u0125\u0127\u0129\u012b\u012d\u012f\u0131\u0133\u0135\u0137\u0138\u013a\u013c\u013e\u0140\u0142\u0144\u0146\u0148\u0149\u014b\u014d\u014f\u0151\u0153\u0155\u0157\u0159\u015b\u015d\u015f\u0161\u0163\u0165\u0167\u0169\u016b\u016d\u016f\u0171\u0173\u0175\u0177\u017a\u017c\u017e-\u0180\u0183\u0185\u0188\u018c\u018d\u0192\u0195\u0199-\u019b\u019e\u01a1\u01a3\u01a5\u01a8\u01aa\u01ab\u01ad\u01b0\u01b4\u01b6\u01b9\u01ba\u01bd-\u01bf\u01c6\u01c9\u01cc\u01ce\u01d0\u01d2\u01d4\u01d6\u01d8\u01da\u01dc\u01dd\u01df\u01e1\u01e3\u01e5\u01e7\u01e9\u01eb\u01ed\u01ef\u01f0\u01f3\u01f5\u01f9\u01fb\u01fd\u01ff\u0201\u0203\u0205\u0207\u0209\u020b\u020d\u020f\u0211\u0213\u0215\u0217\u0219\u021b\u021d\u021f\u0221\u0223\u0225\u0227\u0229\u022b\u022d\u022f\u0231\u0233-\u0239\u023c\u023f\u0240\u0242\u0247\u0249\u024b\u024d\u024f-\u0293\u0295-\u02af\u0371\u0373\u0377\u037b-\u037d\u0390\u03ac-\u03ce\u03d0\u03d1\u03d5-\u03d7\u03d9\u03db\u03dd\u03df\u03e1\u03e3\u03e5\u03e7\u03e9\u03eb\u03ed\u03ef-\u03f3\u03f5\u03f8\u03fb\u03fc\u0430-\u045f\u0461\u0463\u0465\u0467\u0469\u046b\u046d\u046f\u0471\u0473\u0475\u0477\u0479\u047b\u047d\u047f\u0481\u048b\u048d\u048f\u0491\u0493\u0495\u0497\u0499\u049b\u049d\u049f\u04a1\u04a3\u04a5\u04a7\u04a9\u04ab\u04ad\u04af\u04b1\u04b3\u04b5\u04b7\u04b9\u04bb\u04bd\u04bf\u04c2\u04c4\u04c6\u04c8\u04ca\u04cc\u04ce\u04cf\u04d1\u04d3\u04d5\u04d7\u04d9\u04db\u04dd\u04df\u04e1\u04e3\u04e5\u04e7\u04e9\u04eb\u04ed\u04ef\u04f1\u04f3\u04f5\u04f7\u04f9\u04fb\u04fd\u04ff\u0501\u0503\u0505\u0507\u0509\u050b\u050d\u050f\u0511\u0513\u0515\u0517\u0519\u051b\u051d\u051f\u0521\u0523\u0525\u0527\u0561-\u0587\u1d00-\u1d2b\u1d6b-\u1d77\u1d79-\u1d9a\u1e01\u1e03\u1e05\u1e07\u1e09\u1e0b\u1e0d\u1e0f\u1e11\u1e13\u1e15\u1e17\u1e19\u1e1b\u1e1d\u1e1f\u1e21\u1e23\u1e25\u1e27\u1e29\u1e2b\u1e2d\u1e2f\u1e31\u1e33\u1e35\u1e37\u1e39\u1e3b\u1e3d\u1e3f\u1e41\u1e43\u1e45\u1e47\u1e49\u1e4b\u1e4d\u1e4f\u1e51\u1e53\u1e55\u1e57\u1e59\u1e5b\u1e5d\u1e5f\u1e61\u1e63\u1e65\u1e67\u1e69\u1e6b\u1e6d\u1e6f\u1e71\u1e73\u1e75\u1e77\u1e79\u1e7b\u1e7d\u1e7f\u1e81\u1e83\u1e85\u1e87\u1e89\u1e8b\u1e8d\u1e8f\u1e91\u1e93\u1e95-\u1e9d\u1e9f\u1ea1\u1ea3\u1ea5\u1ea7\u1ea9\u1eab\u1ead\u1eaf\u1eb1\u1eb3\u1eb5\u1eb7\u1eb9\u1ebb\u1ebd\u1ebf\u1ec1\u1ec3\u1ec5\u1ec7\u1ec9\u1ecb\u1ecd\u1ecf\u1ed1\u1ed3\u1ed5\u1ed7\u1ed9\u1edb\u1edd\u1edf\u1ee1\u1ee3\u1ee5\u1ee7\u1ee9\u1eeb\u1eed\u1eef\u1ef1\u1ef3\u1ef5\u1ef7\u1ef9\u1efb\u1efd\u1eff-\u1f07\u1f10-\u1f15\u1f20-\u1f27\u1f30-\u1f37\u1f40-\u1f45\u1f50-\u1f57\u1f60-\u1f67\u1f70-\u1f7d\u1f80-\u1f87\u1f90-\u1f97\u1fa0-\u1fa7\u1fb0-\u1fb4\u1fb6\u1fb7\u1fbe\u1fc2-\u1fc4\u1fc6\u1fc7\u1fd0-\u1fd3\u1fd6\u1fd7\u1fe0-\u1fe7\u1ff2-\u1ff4\u1ff6\u1ff7\u210a\u210e\u210f\u2113\u212f\u2134\u2139\u213c\u213d\u2146-\u2149\u214e\u2184\u2c30-\u2c5e\u2c61\u2c65\u2c66\u2c68\u2c6a\u2c6c\u2c71\u2c73\u2c74\u2c76-\u2c7b\u2c81\u2c83\u2c85\u2c87\u2c89\u2c8b\u2c8d\u2c8f\u2c91\u2c93\u2c95\u2c97\u2c99\u2c9b\u2c9d\u2c9f\u2ca1\u2ca3\u2ca5\u2ca7\u2ca9\u2cab\u2cad\u2caf\u2cb1\u2cb3\u2cb5\u2cb7\u2cb9\u2cbb\u2cbd\u2cbf\u2cc1\u2cc3\u2cc5\u2cc7\u2cc9\u2ccb\u2ccd\u2ccf\u2cd1\u2cd3\u2cd5\u2cd7\u2cd9\u2cdb\u2cdd\u2cdf\u2ce1\u2ce3\u2ce4\u2cec\u2cee\u2cf3\u2d00-\u2d25\u2d27\u2d2d\ua641\ua643\ua645\ua647\ua649\ua64b\ua64d\ua64f\ua651\ua653\ua655\ua657\ua659\ua65b\ua65d\ua65f\ua661\ua663\ua665\ua667\ua669\ua66b\ua66d\ua681\ua683\ua685\ua687\ua689\ua68b\ua68d\ua68f\ua691\ua693\ua695\ua697\ua723\ua725\ua727\ua729\ua72b\ua72d\ua72f-\ua731\ua733\ua735\ua737\ua739\ua73b\ua73d\ua73f\ua741\ua743\ua745\ua747\ua749\ua74b\ua74d\ua74f\ua751\ua753\ua755\ua757\ua759\ua75b\ua75d\ua75f\ua761\ua763\ua765\ua767\ua769\ua76b\ua76d\ua76f\ua771-\ua778\ua77a\ua77c\ua77f\ua781\ua783\ua785\ua787\ua78c\ua78e\ua791\ua793\ua7a1\ua7a3\ua7a5\ua7a7\ua7a9\ua7fa\ufb00-\ufb06\ufb13-\ufb17\uff41-\uff5a", + astral: "\ud835[\udc1a-\udc33\udc4e-\udc54\udc56-\udc67\udc82-\udc9b\udcb6-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udccf\udcea-\udd03\udd1e-\udd37\udd52-\udd6b\udd86-\udd9f\uddba-\uddd3\uddee-\ude07\ude22-\ude3b\ude56-\ude6f\ude8a-\udea5\udec2-\udeda\udedc-\udee1\udefc-\udf14\udf16-\udf1b\udf36-\udf4e\udf50-\udf55\udf70-\udf88\udf8a-\udf8f\udfaa-\udfc2\udfc4-\udfc9\udfcb]|\ud801[\udc28-\udc4f]" }, { name: "Lm", alias: "Modifier_Letter", - bmp: "ʰ-ˁˆ-ˑˠ-ˤˬˮʹͺՙـۥۦߴߵߺࠚࠤࠨॱๆໆჼៗᡃᪧᱸ-ᱽᴬ-ᵪᵸᶛ-ᶿⁱⁿₐ-ₜⱼⱽⵯⸯ々〱-〵〻ゝゞー-ヾꀕꓸ-ꓽꘌꙿꜗ-ꜟꝰꞈꟸꟹꧏꩰꫝꫳꫴー゙゚", - astral: "[-]" + bmp: "\u02b0-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0374\u037a\u0559\u0640\u06e5\u06e6\u07f4\u07f5\u07fa\u081a\u0824\u0828\u0971\u0e46\u0ec6\u10fc\u17d7\u1843\u1aa7\u1c78-\u1c7d\u1d2c-\u1d6a\u1d78\u1d9b-\u1dbf\u2071\u207f\u2090-\u209c\u2c7c\u2c7d\u2d6f\u2e2f\u3005\u3031-\u3035\u303b\u309d\u309e\u30fc-\u30fe\ua015\ua4f8-\ua4fd\ua60c\ua67f\ua717-\ua71f\ua770\ua788\ua7f8\ua7f9\ua9cf\uaa70\uaadd\uaaf3\uaaf4\uff70\uff9e\uff9f", + astral: "\ud81b[\udf93-\udf9f]" }, { name: "Lo", alias: "Other_Letter", - bmp: "ªºƻǀ-ǃʔא-תװ-ײؠ-ؿف-يٮٯٱ-ۓەۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪࠀ-ࠕࡀ-ࡘࢠࢢ-ࢬऄ-हऽॐक़-ॡॲ-ॷॹ-ॿঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-ళవ-హఽౘౙౠౡಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൠൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๅກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎა-ჺჽ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏼᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៜᠠ-ᡂᡄ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤜᥐ-ᥭᥰ-ᥴᦀ-ᦫᧁ-ᧇᨀ-ᨖᨠ-ᩔᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱷᳩ-ᳬᳮ-ᳱᳵᳶℵ-ℸⴰ-ⵧⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ〆〼ぁ-ゖゟァ-ヺヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿌ꀀ-ꀔꀖ-ꒌꓐ-ꓷꔀ-ꘋꘐ-ꘟꘪꘫꙮꚠ-ꛥꟻ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩯꩱ-ꩶꩺꪀ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛꫜꫠ-ꫪꫲꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꯀ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎יִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼヲ-ッア-ンᅠ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ", - astral: "[-------------]|[--------------]|[-]|[------]|[-]|[--]|[-]|[-]|[-]|[-]|[-]|[-]|[]|[--][-]|[--------------]|[-]|[--]" + bmp: "\xaa\xba\u01bb\u01c0-\u01c3\u0294\u05d0-\u05ea\u05f0-\u05f2\u0620-\u063f\u0641-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u0800-\u0815\u0840-\u0858\u08a0\u08a2-\u08ac\u0904-\u0939\u093d\u0950\u0958-\u0961\u0972-\u0977\u0979-\u097f\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c33\u0c35-\u0c39\u0c3d\u0c58\u0c59\u0c60\u0c61\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d60\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e45\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10d0-\u10fa\u10fd-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f4\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17dc\u1820-\u1842\u1844-\u1877\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191c\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19c1-\u19c7\u1a00-\u1a16\u1a20-\u1a54\u1b05-\u1b33\u1b45-\u1b4b\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c77\u1ce9-\u1cec\u1cee-\u1cf1\u1cf5\u1cf6\u2135-\u2138\u2d30-\u2d67\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3006\u303c\u3041-\u3096\u309f\u30a1-\u30fa\u30ff\u3105-\u312d\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fcc\ua000-\ua014\ua016-\ua48c\ua4d0-\ua4f7\ua500-\ua60b\ua610-\ua61f\ua62a\ua62b\ua66e\ua6a0-\ua6e5\ua7fb-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa6f\uaa71-\uaa76\uaa7a\uaa80-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb\uaadc\uaae0-\uaaea\uaaf2\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uabc0-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff66-\uff6f\uff71-\uff9d\uffa0-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc", + astral: "\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f-\udc55\udd00-\udd15\udd20-\udd39\udd80-\uddb7\uddbe\uddbf\ude00\ude10-\ude13\ude15-\ude17\ude19-\ude33\ude60-\ude7c\udf00-\udf35\udf40-\udf55\udf60-\udf72]|\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa\ude80-\ude9c\udea0-\uded0\udf00-\udf1e\udf30-\udf40\udf42-\udf49\udf80-\udf9d\udfa0-\udfc3\udfc8-\udfcf]|\ud81a[\udc00-\ude38]|\ud804[\udc03-\udc37\udc83-\udcaf\udcd0-\udce8\udd03-\udd26\udd83-\uddb2\uddc1-\uddc4]|\ud86e[\udc00-\udc1d]|\ud86d[\udc00-\udf34\udf40-\udfff]|\ud803[\udc00-\udc48]|\ud80d[\udc00-\udc2e]|\ud805[\ude80-\udeaa]|\ud87e[\udc00-\ude1d]|\ud81b[\udf00-\udf44\udf50]|\ud801[\udc50-\udc9d]|\ud82c[\udc00\udc01]|[\ud80c\ud840-\ud868\ud86a-\ud86c][\udc00-\udfff]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]|\ud808[\udc00-\udf6e]|\ud869[\udc00-\uded6\udf00-\udfff]" }, { name: "Lt", alias: "Titlecase_Letter", - bmp: "DžLjNjDzᾈ-ᾏᾘ-ᾟᾨ-ᾯᾼῌῼ" + bmp: "\u01c5\u01c8\u01cb\u01f2\u1f88-\u1f8f\u1f98-\u1f9f\u1fa8-\u1faf\u1fbc\u1fcc\u1ffc" }, { name: "Lu", alias: "Uppercase_Letter", - bmp: "A-ZÀ-ÖØ-ÞĀĂĄĆĈĊČĎĐĒĔĖĘĚĜĞĠĢĤĦĨĪĬĮİIJĴĶĹĻĽĿŁŃŅŇŊŌŎŐŒŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽƁƂƄƆƇƉ-ƋƎ-ƑƓƔƖ-ƘƜƝƟƠƢƤƦƧƩƬƮƯƱ-ƳƵƷƸƼDŽLJNJǍǏǑǓǕǗǙǛǞǠǢǤǦǨǪǬǮDZǴǶ-ǸǺǼǾȀȂȄȆȈȊȌȎȐȒȔȖȘȚȜȞȠȢȤȦȨȪȬȮȰȲȺȻȽȾɁɃ-ɆɈɊɌɎͰͲͶΆΈ-ΊΌΎΏΑ-ΡΣ-ΫϏϒ-ϔϘϚϜϞϠϢϤϦϨϪϬϮϴϷϹϺϽ-ЯѠѢѤѦѨѪѬѮѰѲѴѶѸѺѼѾҀҊҌҎҐҒҔҖҘҚҜҞҠҢҤҦҨҪҬҮҰҲҴҶҸҺҼҾӀӁӃӅӇӉӋӍӐӒӔӖӘӚӜӞӠӢӤӦӨӪӬӮӰӲӴӶӸӺӼӾԀԂԄԆԈԊԌԎԐԒԔԖԘԚԜԞԠԢԤԦԱ-ՖႠ-ჅჇჍḀḂḄḆḈḊḌḎḐḒḔḖḘḚḜḞḠḢḤḦḨḪḬḮḰḲḴḶḸḺḼḾṀṂṄṆṈṊṌṎṐṒṔṖṘṚṜṞṠṢṤṦṨṪṬṮṰṲṴṶṸṺṼṾẀẂẄẆẈẊẌẎẐẒẔẞẠẢẤẦẨẪẬẮẰẲẴẶẸẺẼẾỀỂỄỆỈỊỌỎỐỒỔỖỘỚỜỞỠỢỤỦỨỪỬỮỰỲỴỶỸỺỼỾἈ-ἏἘ-ἝἨ-ἯἸ-ἿὈ-ὍὙὛὝὟὨ-ὯᾸ-ΆῈ-ΉῘ-ΊῨ-ῬῸ-Ώℂℇℋ-ℍℐ-ℒℕℙ-ℝℤΩℨK-ℭℰ-ℳℾℿⅅↃⰀ-ⰮⱠⱢ-ⱤⱧⱩⱫⱭ-ⱰⱲⱵⱾ-ⲀⲂⲄⲆⲈⲊⲌⲎⲐⲒⲔⲖⲘⲚⲜⲞⲠⲢⲤⲦⲨⲪⲬⲮⲰⲲⲴⲶⲸⲺⲼⲾⳀⳂⳄⳆⳈⳊⳌⳎⳐⳒⳔⳖⳘⳚⳜⳞⳠⳢⳫⳭⳲꙀꙂꙄꙆꙈꙊꙌꙎꙐꙒꙔꙖꙘꙚꙜꙞꙠꙢꙤꙦꙨꙪꙬꚀꚂꚄꚆꚈꚊꚌꚎꚐꚒꚔꚖꜢꜤꜦꜨꜪꜬꜮꜲꜴꜶꜸꜺꜼꜾꝀꝂꝄꝆꝈꝊꝌꝎꝐꝒꝔꝖꝘꝚꝜꝞꝠꝢꝤꝦꝨꝪꝬꝮꝹꝻꝽꝾꞀꞂꞄꞆꞋꞍꞐꞒꞠꞢꞤꞦꞨꞪA-Z", - astral: "[-----------------------]|[-]" + bmp: "A-Z\xc0-\xd6\xd8-\xde\u0100\u0102\u0104\u0106\u0108\u010a\u010c\u010e\u0110\u0112\u0114\u0116\u0118\u011a\u011c\u011e\u0120\u0122\u0124\u0126\u0128\u012a\u012c\u012e\u0130\u0132\u0134\u0136\u0139\u013b\u013d\u013f\u0141\u0143\u0145\u0147\u014a\u014c\u014e\u0150\u0152\u0154\u0156\u0158\u015a\u015c\u015e\u0160\u0162\u0164\u0166\u0168\u016a\u016c\u016e\u0170\u0172\u0174\u0176\u0178\u0179\u017b\u017d\u0181\u0182\u0184\u0186\u0187\u0189-\u018b\u018e-\u0191\u0193\u0194\u0196-\u0198\u019c\u019d\u019f\u01a0\u01a2\u01a4\u01a6\u01a7\u01a9\u01ac\u01ae\u01af\u01b1-\u01b3\u01b5\u01b7\u01b8\u01bc\u01c4\u01c7\u01ca\u01cd\u01cf\u01d1\u01d3\u01d5\u01d7\u01d9\u01db\u01de\u01e0\u01e2\u01e4\u01e6\u01e8\u01ea\u01ec\u01ee\u01f1\u01f4\u01f6-\u01f8\u01fa\u01fc\u01fe\u0200\u0202\u0204\u0206\u0208\u020a\u020c\u020e\u0210\u0212\u0214\u0216\u0218\u021a\u021c\u021e\u0220\u0222\u0224\u0226\u0228\u022a\u022c\u022e\u0230\u0232\u023a\u023b\u023d\u023e\u0241\u0243-\u0246\u0248\u024a\u024c\u024e\u0370\u0372\u0376\u0386\u0388-\u038a\u038c\u038e\u038f\u0391-\u03a1\u03a3-\u03ab\u03cf\u03d2-\u03d4\u03d8\u03da\u03dc\u03de\u03e0\u03e2\u03e4\u03e6\u03e8\u03ea\u03ec\u03ee\u03f4\u03f7\u03f9\u03fa\u03fd-\u042f\u0460\u0462\u0464\u0466\u0468\u046a\u046c\u046e\u0470\u0472\u0474\u0476\u0478\u047a\u047c\u047e\u0480\u048a\u048c\u048e\u0490\u0492\u0494\u0496\u0498\u049a\u049c\u049e\u04a0\u04a2\u04a4\u04a6\u04a8\u04aa\u04ac\u04ae\u04b0\u04b2\u04b4\u04b6\u04b8\u04ba\u04bc\u04be\u04c0\u04c1\u04c3\u04c5\u04c7\u04c9\u04cb\u04cd\u04d0\u04d2\u04d4\u04d6\u04d8\u04da\u04dc\u04de\u04e0\u04e2\u04e4\u04e6\u04e8\u04ea\u04ec\u04ee\u04f0\u04f2\u04f4\u04f6\u04f8\u04fa\u04fc\u04fe\u0500\u0502\u0504\u0506\u0508\u050a\u050c\u050e\u0510\u0512\u0514\u0516\u0518\u051a\u051c\u051e\u0520\u0522\u0524\u0526\u0531-\u0556\u10a0-\u10c5\u10c7\u10cd\u1e00\u1e02\u1e04\u1e06\u1e08\u1e0a\u1e0c\u1e0e\u1e10\u1e12\u1e14\u1e16\u1e18\u1e1a\u1e1c\u1e1e\u1e20\u1e22\u1e24\u1e26\u1e28\u1e2a\u1e2c\u1e2e\u1e30\u1e32\u1e34\u1e36\u1e38\u1e3a\u1e3c\u1e3e\u1e40\u1e42\u1e44\u1e46\u1e48\u1e4a\u1e4c\u1e4e\u1e50\u1e52\u1e54\u1e56\u1e58\u1e5a\u1e5c\u1e5e\u1e60\u1e62\u1e64\u1e66\u1e68\u1e6a\u1e6c\u1e6e\u1e70\u1e72\u1e74\u1e76\u1e78\u1e7a\u1e7c\u1e7e\u1e80\u1e82\u1e84\u1e86\u1e88\u1e8a\u1e8c\u1e8e\u1e90\u1e92\u1e94\u1e9e\u1ea0\u1ea2\u1ea4\u1ea6\u1ea8\u1eaa\u1eac\u1eae\u1eb0\u1eb2\u1eb4\u1eb6\u1eb8\u1eba\u1ebc\u1ebe\u1ec0\u1ec2\u1ec4\u1ec6\u1ec8\u1eca\u1ecc\u1ece\u1ed0\u1ed2\u1ed4\u1ed6\u1ed8\u1eda\u1edc\u1ede\u1ee0\u1ee2\u1ee4\u1ee6\u1ee8\u1eea\u1eec\u1eee\u1ef0\u1ef2\u1ef4\u1ef6\u1ef8\u1efa\u1efc\u1efe\u1f08-\u1f0f\u1f18-\u1f1d\u1f28-\u1f2f\u1f38-\u1f3f\u1f48-\u1f4d\u1f59\u1f5b\u1f5d\u1f5f\u1f68-\u1f6f\u1fb8-\u1fbb\u1fc8-\u1fcb\u1fd8-\u1fdb\u1fe8-\u1fec\u1ff8-\u1ffb\u2102\u2107\u210b-\u210d\u2110-\u2112\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u2130-\u2133\u213e\u213f\u2145\u2183\u2c00-\u2c2e\u2c60\u2c62-\u2c64\u2c67\u2c69\u2c6b\u2c6d-\u2c70\u2c72\u2c75\u2c7e-\u2c80\u2c82\u2c84\u2c86\u2c88\u2c8a\u2c8c\u2c8e\u2c90\u2c92\u2c94\u2c96\u2c98\u2c9a\u2c9c\u2c9e\u2ca0\u2ca2\u2ca4\u2ca6\u2ca8\u2caa\u2cac\u2cae\u2cb0\u2cb2\u2cb4\u2cb6\u2cb8\u2cba\u2cbc\u2cbe\u2cc0\u2cc2\u2cc4\u2cc6\u2cc8\u2cca\u2ccc\u2cce\u2cd0\u2cd2\u2cd4\u2cd6\u2cd8\u2cda\u2cdc\u2cde\u2ce0\u2ce2\u2ceb\u2ced\u2cf2\ua640\ua642\ua644\ua646\ua648\ua64a\ua64c\ua64e\ua650\ua652\ua654\ua656\ua658\ua65a\ua65c\ua65e\ua660\ua662\ua664\ua666\ua668\ua66a\ua66c\ua680\ua682\ua684\ua686\ua688\ua68a\ua68c\ua68e\ua690\ua692\ua694\ua696\ua722\ua724\ua726\ua728\ua72a\ua72c\ua72e\ua732\ua734\ua736\ua738\ua73a\ua73c\ua73e\ua740\ua742\ua744\ua746\ua748\ua74a\ua74c\ua74e\ua750\ua752\ua754\ua756\ua758\ua75a\ua75c\ua75e\ua760\ua762\ua764\ua766\ua768\ua76a\ua76c\ua76e\ua779\ua77b\ua77d\ua77e\ua780\ua782\ua784\ua786\ua78b\ua78d\ua790\ua792\ua7a0\ua7a2\ua7a4\ua7a6\ua7a8\ua7aa\uff21-\uff3a", + astral: "\ud835[\udc00-\udc19\udc34-\udc4d\udc68-\udc81\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb5\udcd0-\udce9\udd04\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd38\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd6c-\udd85\udda0-\uddb9\uddd4-\udded\ude08-\ude21\ude3c-\ude55\ude70-\ude89\udea8-\udec0\udee2-\udefa\udf1c-\udf34\udf56-\udf6e\udf90-\udfa8\udfca]|\ud801[\udc00-\udc27]" }, { name: "M", alias: "Mark", - bmp: "̀-ͯ҃-҉֑-ׇֽֿׁׂׅׄؐ-ًؚ-ٰٟۖ-ۜ۟-۪ۤۧۨ-ܑۭܰ-݊ަ-ް߫-߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛ࣤ-ࣾऀ-ःऺ-़ा-ॏ॑-ॗॢॣঁ-ঃ়া-ৄেৈো-্ৗৢৣਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑੰੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣଁ-ଃ଼ା-ୄେୈୋ-୍ୖୗୢୣஂா-ூெ-ைொ-்ௗఁ-ఃా-ౄె-ైొ-్ౕౖౢౣಂಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣംഃാ-ൄെ-ൈൊ-്ൗൢൣංඃ්ා-ුූෘ-ෟෲෳัิ-ฺ็-๎ັິ-ູົຼ່-ໍ༹༘༙༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏႚ-ႝ፝-፟ᜒ-᜔ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝᠋-᠍ᢩᤠ-ᤫᤰ-᤻ᦰ-ᧀᧈᧉᨗ-ᨛᩕ-ᩞ᩠-᩿᩼ᬀ-ᬄ᬴-᭄᭫-᭳ᮀ-ᮂᮡ-ᮭ᯦-᯳ᰤ-᰷᳐-᳔᳒-᳨᳭ᳲ-᳴᷀-ᷦ᷼-᷿⃐-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꙯-꙲ꙴ-꙽ꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧꢀꢁꢴ-꣄꣠-꣱ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀ꨩ-ꨶꩃꩌꩍꩻꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭ﬞ︀-️︠-︦", - astral: "[------]|[---]|[--]|[--------]|[-]|𐇽|[-]" + bmp: "\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065f\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u08e4-\u08fe\u0900-\u0903\u093a-\u093c\u093e-\u094f\u0951-\u0957\u0962\u0963\u0981-\u0983\u09bc\u09be-\u09c4\u09c7\u09c8\u09cb-\u09cd\u09d7\u09e2\u09e3\u0a01-\u0a03\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81-\u0a83\u0abc\u0abe-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ae2\u0ae3\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0c01-\u0c03\u0c3e-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c82\u0c83\u0cbc\u0cbe-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d02\u0d03\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d82\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f3e\u0f3f\u0f71-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102b-\u103e\u1056-\u1059\u105e-\u1060\u1062-\u1064\u1067-\u106d\u1071-\u1074\u1082-\u108d\u108f\u109a-\u109d\u135d-\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u192b\u1930-\u193b\u19b0-\u19c0\u19c8\u19c9\u1a17-\u1a1b\u1a55-\u1a5e\u1a60-\u1a7c\u1a7f\u1b00-\u1b04\u1b34-\u1b44\u1b6b-\u1b73\u1b80-\u1b82\u1ba1-\u1bad\u1be6-\u1bf3\u1c24-\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce8\u1ced\u1cf2-\u1cf4\u1dc0-\u1de6\u1dfc-\u1dff\u20d0-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua674-\ua67d\ua69f\ua6f0\ua6f1\ua802\ua806\ua80b\ua823-\ua827\ua880\ua881\ua8b4-\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua953\ua980-\ua983\ua9b3-\ua9c0\uaa29-\uaa36\uaa43\uaa4c\uaa4d\uaa7b\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaeb-\uaaef\uaaf5\uaaf6\uabe3-\uabea\uabec\uabed\ufb1e\ufe00-\ufe0f\ufe20-\ufe26", + astral: "\ud834[\udd65-\udd69\udd6d-\udd72\udd7b-\udd82\udd85-\udd8b\uddaa-\uddad\ude42-\ude44]|\ud802[\ude01-\ude03\ude05\ude06\ude0c-\ude0f\ude38-\ude3a\ude3f]|\ud81b[\udf51-\udf7e\udf8f-\udf92]|\ud804[\udc00-\udc02\udc38-\udc46\udc80-\udc82\udcb0-\udcba\udd00-\udd02\udd27-\udd34\udd80-\udd82\uddb3-\uddc0]|\ud805[\udeab-\udeb7]|\ud800\uddfd|\udb40[\udd00-\uddef]" }, { name: "Mc", alias: "Spacing_Mark", - bmp: "ःऻा-ीॉ-ौॎॏংঃা-ীেৈোৌৗਃਾ-ੀઃા-ીૉોૌଂଃାୀେୈୋୌୗாிுூெ-ைொ-ௌௗఁ-ఃు-ౄಂಃಾೀ-ೄೇೈೊೋೕೖംഃാ-ീെ-ൈൊ-ൌൗංඃා-ෑෘ-ෟෲෳ༾༿ཿါာေးျြၖၗၢ-ၤၧ-ၭႃႄႇ-ႌႏႚ-ႜាើ-ៅះៈᤣ-ᤦᤩ-ᤫᤰᤱᤳ-ᤸᦰ-ᧀᧈᧉᨙ-ᨛᩕᩗᩡᩣᩤᩭ-ᩲᬄᬵᬻᬽ-ᭁᭃ᭄ᮂᮡᮦᮧ᮪ᮬᮭᯧᯪ-ᯬᯮ᯲᯳ᰤ-ᰫᰴᰵ᳡ᳲᳳ〮〯ꠣꠤꠧꢀꢁꢴ-ꣃꥒ꥓ꦃꦴꦵꦺꦻꦽ-꧀ꨯꨰꨳꨴꩍꩻꫫꫮꫯꫵꯣꯤꯦꯧꯩꯪ꯬", - astral: "[-]|[--]|[]|[-]" + bmp: "\u0903\u093b\u093e-\u0940\u0949-\u094c\u094e\u094f\u0982\u0983\u09be-\u09c0\u09c7\u09c8\u09cb\u09cc\u09d7\u0a03\u0a3e-\u0a40\u0a83\u0abe-\u0ac0\u0ac9\u0acb\u0acc\u0b02\u0b03\u0b3e\u0b40\u0b47\u0b48\u0b4b\u0b4c\u0b57\u0bbe\u0bbf\u0bc1\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcc\u0bd7\u0c01-\u0c03\u0c41-\u0c44\u0c82\u0c83\u0cbe\u0cc0-\u0cc4\u0cc7\u0cc8\u0cca\u0ccb\u0cd5\u0cd6\u0d02\u0d03\u0d3e-\u0d40\u0d46-\u0d48\u0d4a-\u0d4c\u0d57\u0d82\u0d83\u0dcf-\u0dd1\u0dd8-\u0ddf\u0df2\u0df3\u0f3e\u0f3f\u0f7f\u102b\u102c\u1031\u1038\u103b\u103c\u1056\u1057\u1062-\u1064\u1067-\u106d\u1083\u1084\u1087-\u108c\u108f\u109a-\u109c\u17b6\u17be-\u17c5\u17c7\u17c8\u1923-\u1926\u1929-\u192b\u1930\u1931\u1933-\u1938\u19b0-\u19c0\u19c8\u19c9\u1a19-\u1a1b\u1a55\u1a57\u1a61\u1a63\u1a64\u1a6d-\u1a72\u1b04\u1b35\u1b3b\u1b3d-\u1b41\u1b43\u1b44\u1b82\u1ba1\u1ba6\u1ba7\u1baa\u1bac\u1bad\u1be7\u1bea-\u1bec\u1bee\u1bf2\u1bf3\u1c24-\u1c2b\u1c34\u1c35\u1ce1\u1cf2\u1cf3\u302e\u302f\ua823\ua824\ua827\ua880\ua881\ua8b4-\ua8c3\ua952\ua953\ua983\ua9b4\ua9b5\ua9ba\ua9bb\ua9bd-\ua9c0\uaa2f\uaa30\uaa33\uaa34\uaa4d\uaa7b\uaaeb\uaaee\uaaef\uaaf5\uabe3\uabe4\uabe6\uabe7\uabe9\uabea\uabec", + astral: "\ud834[\udd65\udd66\udd6d-\udd72]|\ud804[\udc00\udc02\udc82\udcb0-\udcb2\udcb7\udcb8\udd2c\udd82\uddb3-\uddb5\uddbf\uddc0]|\ud805[\udeac\udeae\udeaf\udeb6]|\ud81b[\udf51-\udf7e]" }, { name: "Me", alias: "Enclosing_Mark", - bmp: "҈҉⃝-⃠⃢-⃤꙰-꙲" + bmp: "\u0488\u0489\u20dd-\u20e0\u20e2-\u20e4\ua670-\ua672" }, { name: "Mn", alias: "Nonspacing_Mark", - bmp: "̀-ͯ҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-ٰٟۖ-ۜ۟-۪ۤۧۨ-ܑۭܰ-݊ަ-ް߫-߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛ࣤ-ࣾऀ-ंऺ़ु-ै्॑-ॗॢॣঁ়ু-ৄ্ৢৣਁਂ਼ੁੂੇੈੋ-੍ੑੰੱੵઁં઼ુ-ૅેૈ્ૢૣଁ଼ିୁ-ୄ୍ୖୢୣஂீ்ా-ీె-ైొ-్ౕౖౢౣ಼ಿೆೌ್ೢೣു-ൄ്ൢൣ්ි-ුූัิ-ฺ็-๎ັິ-ູົຼ່-ໍཱ༹༘༙༵༷-ཾྀ-྄྆྇ྍ-ྗྙ-ྼ࿆ိ-ူဲ-့္်ွှၘၙၞ-ၠၱ-ၴႂႅႆႍႝ፝-፟ᜒ-᜔ᜲ-᜴ᝒᝓᝲᝳ឴឵ិ-ួំ៉-៓៝᠋-᠍ᢩᤠ-ᤢᤧᤨᤲ᤹-᤻ᨘᨗᩖᩘ-ᩞ᩠ᩢᩥ-ᩬᩳ-᩿᩼ᬀ-ᬃ᬴ᬶ-ᬺᬼᭂ᭫-᭳ᮀᮁᮢ-ᮥᮨᮩ᯦᮫ᯨᯩᯭᯯ-ᯱᰬ-ᰳᰶ᰷᳐-᳔᳒-᳢᳠-᳨᳭᳴᷀-ᷦ᷼-᷿⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〭꙯ꙴ-꙽ꚟ꛰꛱ꠂ꠆ꠋꠥꠦ꣄꣠-꣱ꤦ-꤭ꥇ-ꥑꦀ-ꦂ꦳ꦶ-ꦹꦼꨩ-ꨮꨱꨲꨵꨶꩃꩌꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫬꫭ꫶ꯥꯨ꯭ﬞ︀-️︠-︦", - astral: "[---]|[-----]|[-]|[-]|[------]|𐇽|[-]" + bmp: "\u0300-\u036f\u0483-\u0487\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065f\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u08e4-\u08fe\u0900-\u0902\u093a\u093c\u0941-\u0948\u094d\u0951-\u0957\u0962\u0963\u0981\u09bc\u09c1-\u09c4\u09cd\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b62\u0b63\u0b82\u0bc0\u0bcd\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc6\u0ccc\u0ccd\u0ce2\u0ce3\u0d41-\u0d44\u0d4d\u0d62\u0d63\u0dca\u0dd2-\u0dd4\u0dd6\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135d-\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4\u17b5\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1bab\u1be6\u1be8\u1be9\u1bed\u1bef-\u1bf1\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1cf4\u1dc0-\u1de6\u1dfc-\u1dff\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302d\u3099\u309a\ua66f\ua674-\ua67d\ua69f\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaec\uaaed\uaaf6\uabe5\uabe8\uabed\ufb1e\ufe00-\ufe0f\ufe20-\ufe26", + astral: "\ud802[\ude01-\ude03\ude05\ude06\ude0c-\ude0f\ude38-\ude3a\ude3f]|\ud834[\udd67-\udd69\udd7b-\udd82\udd85-\udd8b\uddaa-\uddad\ude42-\ude44]|\ud81b[\udf8f-\udf92]|\ud805[\udeab\udead\udeb0-\udeb5\udeb7]|\ud804[\udc01\udc38-\udc46\udc80\udc81\udcb3-\udcb6\udcb9\udcba\udd00-\udd02\udd27-\udd2b\udd2d-\udd34\udd80\udd81\uddb6-\uddbe]|\ud800\uddfd|\udb40[\udd00-\uddef]" }, { name: "N", alias: "Number", - bmp: "0-9²³¹¼-¾٠-٩۰-۹߀-߉०-९০-৯৴-৹੦-੯૦-૯୦-୯୲-୷௦-௲౦-౯౸-౾೦-೯൦-൵๐-๙໐-໙༠-༳၀-၉႐-႙፩-፼ᛮ-ᛰ០-៩៰-៹᠐-᠙᥆-᥏᧐-᧚᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙⁰⁴-⁹₀-₉⅐-ↂↅ-↉①-⒛⓪-⓿❶-➓⳽〇〡-〩〸-〺㆒-㆕㈠-㈩㉈-㉏㉑-㉟㊀-㊉㊱-㊿꘠-꘩ꛦ-ꛯ꠰-꠵꣐-꣙꤀-꤉꧐-꧙꩐-꩙꯰-꯹0-9", - astral: "[-----]|[-]|[-]|[-]|[----]|[-]|[-]|[-]|[-]|[----]" + bmp: "0-9\xb2\xb3\xb9\xbc-\xbe\u0660-\u0669\u06f0-\u06f9\u07c0-\u07c9\u0966-\u096f\u09e6-\u09ef\u09f4-\u09f9\u0a66-\u0a6f\u0ae6-\u0aef\u0b66-\u0b6f\u0b72-\u0b77\u0be6-\u0bf2\u0c66-\u0c6f\u0c78-\u0c7e\u0ce6-\u0cef\u0d66-\u0d75\u0e50-\u0e59\u0ed0-\u0ed9\u0f20-\u0f33\u1040-\u1049\u1090-\u1099\u1369-\u137c\u16ee-\u16f0\u17e0-\u17e9\u17f0-\u17f9\u1810-\u1819\u1946-\u194f\u19d0-\u19da\u1a80-\u1a89\u1a90-\u1a99\u1b50-\u1b59\u1bb0-\u1bb9\u1c40-\u1c49\u1c50-\u1c59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249b\u24ea-\u24ff\u2776-\u2793\u2cfd\u3007\u3021-\u3029\u3038-\u303a\u3192-\u3195\u3220-\u3229\u3248-\u324f\u3251-\u325f\u3280-\u3289\u32b1-\u32bf\ua620-\ua629\ua6e6-\ua6ef\ua830-\ua835\ua8d0-\ua8d9\ua900-\ua909\ua9d0-\ua9d9\uaa50-\uaa59\uabf0-\uabf9\uff10-\uff19", + astral: "\ud802[\udc58-\udc5f\udd16-\udd1b\ude40-\ude47\ude7d\ude7e\udf58-\udf5f\udf78-\udf7f]|\ud801[\udca0-\udca9]|\ud809[\udc00-\udc62]|\ud835[\udfce-\udfff]|\ud800[\udd07-\udd33\udd40-\udd78\udd8a\udf20-\udf23\udf41\udf4a\udfd1-\udfd5]|\ud834[\udf60-\udf71]|\ud803[\ude60-\ude7e]|\ud83c[\udd00-\udd0a]|\ud805[\udec0-\udec9]|\ud804[\udc52-\udc6f\udcf0-\udcf9\udd36-\udd3f\uddd0-\uddd9]" }, { name: "Nd", alias: "Decimal_Number", - bmp: "0-9٠-٩۰-۹߀-߉०-९০-৯੦-੯૦-૯୦-୯௦-௯౦-౯೦-೯൦-൯๐-๙໐-໙༠-༩၀-၉႐-႙០-៩᠐-᠙᥆-᥏᧐-᧙᪀-᪉᪐-᪙᭐-᭙᮰-᮹᱀-᱉᱐-᱙꘠-꘩꣐-꣙꤀-꤉꧐-꧙꩐-꩙꯰-꯹0-9", - astral: "[----]|[-]|[-]|[-]" + bmp: "0-9\u0660-\u0669\u06f0-\u06f9\u07c0-\u07c9\u0966-\u096f\u09e6-\u09ef\u0a66-\u0a6f\u0ae6-\u0aef\u0b66-\u0b6f\u0be6-\u0bef\u0c66-\u0c6f\u0ce6-\u0cef\u0d66-\u0d6f\u0e50-\u0e59\u0ed0-\u0ed9\u0f20-\u0f29\u1040-\u1049\u1090-\u1099\u17e0-\u17e9\u1810-\u1819\u1946-\u194f\u19d0-\u19d9\u1a80-\u1a89\u1a90-\u1a99\u1b50-\u1b59\u1bb0-\u1bb9\u1c40-\u1c49\u1c50-\u1c59\ua620-\ua629\ua8d0-\ua8d9\ua900-\ua909\ua9d0-\ua9d9\uaa50-\uaa59\uabf0-\uabf9\uff10-\uff19", + astral: "\ud804[\udc66-\udc6f\udcf0-\udcf9\udd36-\udd3f\uddd0-\uddd9]|\ud805[\udec0-\udec9]|\ud801[\udca0-\udca9]|\ud835[\udfce-\udfff]" }, { name: "Nl", alias: "Letter_Number", - bmp: "ᛮ-ᛰⅠ-ↂↅ-ↈ〇〡-〩〸-〺ꛦ-ꛯ", - astral: "[--]|[-]" + bmp: "\u16ee-\u16f0\u2160-\u2182\u2185-\u2188\u3007\u3021-\u3029\u3038-\u303a\ua6e6-\ua6ef", + astral: "\ud800[\udd40-\udd74\udf41\udf4a\udfd1-\udfd5]|\ud809[\udc00-\udc62]" }, { name: "No", alias: "Other_Number", - bmp: "²³¹¼-¾৴-৹୲-୷௰-௲౸-౾൰-൵༪-༳፩-፼៰-៹᧚⁰⁴-⁹₀-₉⅐-⅟↉①-⒛⓪-⓿❶-➓⳽㆒-㆕㈠-㈩㉈-㉏㉑-㉟㊀-㊉㊱-㊿꠰-꠵", - astral: "[-----]|[-]|[-]|[---]|[-]|[-]" + bmp: "\xb2\xb3\xb9\xbc-\xbe\u09f4-\u09f9\u0b72-\u0b77\u0bf0-\u0bf2\u0c78-\u0c7e\u0d70-\u0d75\u0f2a-\u0f33\u1369-\u137c\u17f0-\u17f9\u19da\u2070\u2074-\u2079\u2080-\u2089\u2150-\u215f\u2189\u2460-\u249b\u24ea-\u24ff\u2776-\u2793\u2cfd\u3192-\u3195\u3220-\u3229\u3248-\u324f\u3251-\u325f\u3280-\u3289\u32b1-\u32bf\ua830-\ua835", + astral: "\ud802[\udc58-\udc5f\udd16-\udd1b\ude40-\ude47\ude7d\ude7e\udf58-\udf5f\udf78-\udf7f]|\ud834[\udf60-\udf71]|\ud803[\ude60-\ude7e]|\ud800[\udd07-\udd33\udd75-\udd78\udd8a\udf20-\udf23]|\ud83c[\udd00-\udd0a]|\ud804[\udc52-\udc65]" }, { name: "P", alias: "Punctuation", - bmp: "!-#%-\\x2A,-/:;\\x3F@\\x5B-\\x5D_\\x7B}¡§«¶·»¿;·՚-՟։֊־׀׃׆׳״؉؊،؍؛؞؟٪-٭۔܀-܍߷-߹࠰-࠾࡞।॥॰૰෴๏๚๛༄-༒༔༺-༽྅࿐-࿔࿙࿚၊-၏჻፠-፨᐀᙭᙮᚛᚜᛫-᛭᜵᜶។-៖៘-៚᠀-᠊᥄᥅᨞᨟᪠-᪦᪨-᪭᭚-᭠᯼-᯿᰻-᰿᱾᱿᳀-᳇᳓‐-‧‰-⁃⁅-⁑⁓-⁞⁽⁾₍₎〈〉❨-❵⟅⟆⟦-⟯⦃-⦘⧘-⧛⧼⧽⳹-⳼⳾⳿⵰⸀-⸮⸰-⸻、-〃〈-】〔-〟〰〽゠・꓾꓿꘍-꘏꙳꙾꛲-꛷꡴-꡷꣎꣏꣸-꣺꤮꤯꥟꧁-꧍꧞꧟꩜-꩟꫞꫟꫰꫱꯫﴾﴿︐-︙︰-﹒﹔-﹡﹣﹨﹪﹫!-#%-*,-/:;?@[-]_{}⦅-・", - astral: "[-]|[--]|[-]|[----]" + bmp: "!-#%-\\x2A,-/:;\\x3F@\\x5B-\\x5D_\\x7B}\xa1\xa7\xab\xb6\xb7\xbb\xbf\u037e\u0387\u055a-\u055f\u0589\u058a\u05be\u05c0\u05c3\u05c6\u05f3\u05f4\u0609\u060a\u060c\u060d\u061b\u061e\u061f\u066a-\u066d\u06d4\u0700-\u070d\u07f7-\u07f9\u0830-\u083e\u085e\u0964\u0965\u0970\u0af0\u0df4\u0e4f\u0e5a\u0e5b\u0f04-\u0f12\u0f14\u0f3a-\u0f3d\u0f85\u0fd0-\u0fd4\u0fd9\u0fda\u104a-\u104f\u10fb\u1360-\u1368\u1400\u166d\u166e\u169b\u169c\u16eb-\u16ed\u1735\u1736\u17d4-\u17d6\u17d8-\u17da\u1800-\u180a\u1944\u1945\u1a1e\u1a1f\u1aa0-\u1aa6\u1aa8-\u1aad\u1b5a-\u1b60\u1bfc-\u1bff\u1c3b-\u1c3f\u1c7e\u1c7f\u1cc0-\u1cc7\u1cd3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205e\u207d\u207e\u208d\u208e\u2329\u232a\u2768-\u2775\u27c5\u27c6\u27e6-\u27ef\u2983-\u2998\u29d8-\u29db\u29fc\u29fd\u2cf9-\u2cfc\u2cfe\u2cff\u2d70\u2e00-\u2e2e\u2e30-\u2e3b\u3001-\u3003\u3008-\u3011\u3014-\u301f\u3030\u303d\u30a0\u30fb\ua4fe\ua4ff\ua60d-\ua60f\ua673\ua67e\ua6f2-\ua6f7\ua874-\ua877\ua8ce\ua8cf\ua8f8-\ua8fa\ua92e\ua92f\ua95f\ua9c1-\ua9cd\ua9de\ua9df\uaa5c-\uaa5f\uaade\uaadf\uaaf0\uaaf1\uabeb\ufd3e\ufd3f\ufe10-\ufe19\ufe30-\ufe52\ufe54-\ufe61\ufe63\ufe68\ufe6a\ufe6b\uff01-\uff03\uff05-\uff0a\uff0c-\uff0f\uff1a\uff1b\uff1f\uff20\uff3b-\uff3d\uff3f\uff5b\uff5d\uff5f-\uff65", + astral: "\ud809[\udc70-\udc73]|\ud802[\udc57\udd1f\udd3f\ude50-\ude58\ude7f\udf39-\udf3f]|\ud800[\udd00-\udd02\udf9f\udfd0]|\ud804[\udc47-\udc4d\udcbb\udcbc\udcbe-\udcc1\udd40-\udd43\uddc5-\uddc8]" }, { name: "Pc", alias: "Connector_Punctuation", - bmp: "_‿⁀⁔︳︴﹍-﹏_" + bmp: "_\u203f\u2040\u2054\ufe33\ufe34\ufe4d-\ufe4f\uff3f" }, { name: "Pd", alias: "Dash_Punctuation", - bmp: "\\x2D֊־᐀᠆‐-―⸗⸚⸺⸻〜〰゠︱︲﹘﹣-" + bmp: "\\x2D\u058a\u05be\u1400\u1806\u2010-\u2015\u2e17\u2e1a\u2e3a\u2e3b\u301c\u3030\u30a0\ufe31\ufe32\ufe58\ufe63\uff0d" }, { name: "Pe", alias: "Close_Punctuation", - bmp: "\\x29\\x5D}༻༽᚜⁆⁾₎〉❩❫❭❯❱❳❵⟆⟧⟩⟫⟭⟯⦄⦆⦈⦊⦌⦎⦐⦒⦔⦖⦘⧙⧛⧽⸣⸥⸧⸩〉》」』】〕〗〙〛〞〟﴿︘︶︸︺︼︾﹀﹂﹄﹈﹚﹜﹞)]}⦆」" + bmp: "\\x29\\x5D}\u0f3b\u0f3d\u169c\u2046\u207e\u208e\u232a\u2769\u276b\u276d\u276f\u2771\u2773\u2775\u27c6\u27e7\u27e9\u27eb\u27ed\u27ef\u2984\u2986\u2988\u298a\u298c\u298e\u2990\u2992\u2994\u2996\u2998\u29d9\u29db\u29fd\u2e23\u2e25\u2e27\u2e29\u3009\u300b\u300d\u300f\u3011\u3015\u3017\u3019\u301b\u301e\u301f\ufd3f\ufe18\ufe36\ufe38\ufe3a\ufe3c\ufe3e\ufe40\ufe42\ufe44\ufe48\ufe5a\ufe5c\ufe5e\uff09\uff3d\uff5d\uff60\uff63" }, { name: "Pf", alias: "Final_Punctuation", - bmp: "»’”›⸃⸅⸊⸍⸝⸡" + bmp: "\xbb\u2019\u201d\u203a\u2e03\u2e05\u2e0a\u2e0d\u2e1d\u2e21" }, { name: "Pi", alias: "Initial_Punctuation", - bmp: "«‘‛“‟‹⸂⸄⸉⸌⸜⸠" + bmp: "\xab\u2018\u201b\u201c\u201f\u2039\u2e02\u2e04\u2e09\u2e0c\u2e1c\u2e20" }, { name: "Po", alias: "Other_Punctuation", - bmp: "!-#%-'\\x2A,\\x2E/:;\\x3F@\\x5C¡§¶·¿;·՚-՟։׀׃׆׳״؉؊،؍؛؞؟٪-٭۔܀-܍߷-߹࠰-࠾࡞।॥॰૰෴๏๚๛༄-༒༔྅࿐-࿔࿙࿚၊-၏჻፠-፨᙭᙮᛫-᛭᜵᜶។-៖៘-៚᠀-᠅᠇-᠊᥄᥅᨞᨟᪠-᪦᪨-᪭᭚-᭠᯼-᯿᰻-᰿᱾᱿᳀-᳇᳓‖‗†-‧‰-‸※-‾⁁-⁃⁇-⁑⁓⁕-⁞⳹-⳼⳾⳿⵰⸀⸁⸆-⸈⸋⸎-⸖⸘⸙⸛⸞⸟⸪-⸮⸰-⸹、-〃〽・꓾꓿꘍-꘏꙳꙾꛲-꛷꡴-꡷꣎꣏꣸-꣺꤮꤯꥟꧁-꧍꧞꧟꩜-꩟꫞꫟꫰꫱꯫︐-︖︙︰﹅﹆﹉-﹌﹐-﹒﹔-﹗﹟-﹡﹨﹪﹫!-#%-'*,./:;?@\。、・", - astral: "[-]|[--]|[-]|[----]" + bmp: "!-#%-'\\x2A,\\x2E/:;\\x3F@\\x5C\xa1\xa7\xb6\xb7\xbf\u037e\u0387\u055a-\u055f\u0589\u05c0\u05c3\u05c6\u05f3\u05f4\u0609\u060a\u060c\u060d\u061b\u061e\u061f\u066a-\u066d\u06d4\u0700-\u070d\u07f7-\u07f9\u0830-\u083e\u085e\u0964\u0965\u0970\u0af0\u0df4\u0e4f\u0e5a\u0e5b\u0f04-\u0f12\u0f14\u0f85\u0fd0-\u0fd4\u0fd9\u0fda\u104a-\u104f\u10fb\u1360-\u1368\u166d\u166e\u16eb-\u16ed\u1735\u1736\u17d4-\u17d6\u17d8-\u17da\u1800-\u1805\u1807-\u180a\u1944\u1945\u1a1e\u1a1f\u1aa0-\u1aa6\u1aa8-\u1aad\u1b5a-\u1b60\u1bfc-\u1bff\u1c3b-\u1c3f\u1c7e\u1c7f\u1cc0-\u1cc7\u1cd3\u2016\u2017\u2020-\u2027\u2030-\u2038\u203b-\u203e\u2041-\u2043\u2047-\u2051\u2053\u2055-\u205e\u2cf9-\u2cfc\u2cfe\u2cff\u2d70\u2e00\u2e01\u2e06-\u2e08\u2e0b\u2e0e-\u2e16\u2e18\u2e19\u2e1b\u2e1e\u2e1f\u2e2a-\u2e2e\u2e30-\u2e39\u3001-\u3003\u303d\u30fb\ua4fe\ua4ff\ua60d-\ua60f\ua673\ua67e\ua6f2-\ua6f7\ua874-\ua877\ua8ce\ua8cf\ua8f8-\ua8fa\ua92e\ua92f\ua95f\ua9c1-\ua9cd\ua9de\ua9df\uaa5c-\uaa5f\uaade\uaadf\uaaf0\uaaf1\uabeb\ufe10-\ufe16\ufe19\ufe30\ufe45\ufe46\ufe49-\ufe4c\ufe50-\ufe52\ufe54-\ufe57\ufe5f-\ufe61\ufe68\ufe6a\ufe6b\uff01-\uff03\uff05-\uff07\uff0a\uff0c\uff0e\uff0f\uff1a\uff1b\uff1f\uff20\uff3c\uff61\uff64\uff65", + astral: "\ud809[\udc70-\udc73]|\ud802[\udc57\udd1f\udd3f\ude50-\ude58\ude7f\udf39-\udf3f]|\ud800[\udd00-\udd02\udf9f\udfd0]|\ud804[\udc47-\udc4d\udcbb\udcbc\udcbe-\udcc1\udd40-\udd43\uddc5-\uddc8]" }, { name: "Ps", alias: "Open_Punctuation", - bmp: "\\x28\\x5B\\x7B༺༼᚛‚„⁅⁽₍〈❨❪❬❮❰❲❴⟅⟦⟨⟪⟬⟮⦃⦅⦇⦉⦋⦍⦏⦑⦓⦕⦗⧘⧚⧼⸢⸤⸦⸨〈《「『【〔〖〘〚〝﴾︗︵︷︹︻︽︿﹁﹃﹇﹙﹛﹝([{⦅「" + bmp: "\\x28\\x5B\\x7B\u0f3a\u0f3c\u169b\u201a\u201e\u2045\u207d\u208d\u2329\u2768\u276a\u276c\u276e\u2770\u2772\u2774\u27c5\u27e6\u27e8\u27ea\u27ec\u27ee\u2983\u2985\u2987\u2989\u298b\u298d\u298f\u2991\u2993\u2995\u2997\u29d8\u29da\u29fc\u2e22\u2e24\u2e26\u2e28\u3008\u300a\u300c\u300e\u3010\u3014\u3016\u3018\u301a\u301d\ufd3e\ufe17\ufe35\ufe37\ufe39\ufe3b\ufe3d\ufe3f\ufe41\ufe43\ufe47\ufe59\ufe5b\ufe5d\uff08\uff3b\uff5b\uff5f\uff62" }, { name: "S", alias: "Symbol", - bmp: "\\x24\\x2B<->\\x5E`\\x7C~¢-¦¨©¬®-±´¸×÷˂-˅˒-˟˥-˫˭˯-˿͵΄΅϶҂֏؆-؈؋؎؏۞۩۽۾߶৲৳৺৻૱୰௳-௺౿൹฿༁-༃༓༕-༗༚-༟༴༶༸྾-࿅࿇-࿌࿎࿏࿕-࿘႞႟᎐-᎙៛᥀᧞-᧿᭡-᭪᭴-᭼᾽᾿-῁῍-῏῝-῟῭-`´῾⁄⁒⁺-⁼₊-₌₠-₺℀℁℃-℆℈℉℔№-℘℞-℣℥℧℩℮℺℻⅀-⅄⅊-⅍⅏←-⌨⌫-⏳␀-␦⑀-⑊⒜-ⓩ─-⛿✁-❧➔-⟄⟇-⟥⟰-⦂⦙-⧗⧜-⧻⧾-⭌⭐-⭙⳥-⳪⺀-⺙⺛-⻳⼀-⿕⿰-⿻〄〒〓〠〶〷〾〿゛゜㆐㆑㆖-㆟㇀-㇣㈀-㈞㈪-㉇㉐㉠-㉿㊊-㊰㋀-㋾㌀-㏿䷀-䷿꒐-꓆꜀-꜖꜠꜡꞉꞊꠨-꠫꠶-꠹꩷-꩹﬩﮲-﯁﷼﷽﹢﹤-﹦﹩$+<->^`|~¢-₩│-○�", - astral: "[----------]|[]|[-------------------]|[--------]|[----]|[]" + bmp: "\\x24\\x2B<->\\x5E`\\x7C~\xa2-\xa6\xa8\xa9\xac\xae-\xb1\xb4\xb8\xd7\xf7\u02c2-\u02c5\u02d2-\u02df\u02e5-\u02eb\u02ed\u02ef-\u02ff\u0375\u0384\u0385\u03f6\u0482\u058f\u0606-\u0608\u060b\u060e\u060f\u06de\u06e9\u06fd\u06fe\u07f6\u09f2\u09f3\u09fa\u09fb\u0af1\u0b70\u0bf3-\u0bfa\u0c7f\u0d79\u0e3f\u0f01-\u0f03\u0f13\u0f15-\u0f17\u0f1a-\u0f1f\u0f34\u0f36\u0f38\u0fbe-\u0fc5\u0fc7-\u0fcc\u0fce\u0fcf\u0fd5-\u0fd8\u109e\u109f\u1390-\u1399\u17db\u1940\u19de-\u19ff\u1b61-\u1b6a\u1b74-\u1b7c\u1fbd\u1fbf-\u1fc1\u1fcd-\u1fcf\u1fdd-\u1fdf\u1fed-\u1fef\u1ffd\u1ffe\u2044\u2052\u207a-\u207c\u208a-\u208c\u20a0-\u20ba\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211e-\u2123\u2125\u2127\u2129\u212e\u213a\u213b\u2140-\u2144\u214a-\u214d\u214f\u2190-\u2328\u232b-\u23f3\u2400-\u2426\u2440-\u244a\u249c-\u24e9\u2500-\u26ff\u2701-\u2767\u2794-\u27c4\u27c7-\u27e5\u27f0-\u2982\u2999-\u29d7\u29dc-\u29fb\u29fe-\u2b4c\u2b50-\u2b59\u2ce5-\u2cea\u2e80-\u2e99\u2e9b-\u2ef3\u2f00-\u2fd5\u2ff0-\u2ffb\u3004\u3012\u3013\u3020\u3036\u3037\u303e\u303f\u309b\u309c\u3190\u3191\u3196-\u319f\u31c0-\u31e3\u3200-\u321e\u322a-\u3247\u3250\u3260-\u327f\u328a-\u32b0\u32c0-\u32fe\u3300-\u33ff\u4dc0-\u4dff\ua490-\ua4c6\ua700-\ua716\ua720\ua721\ua789\ua78a\ua828-\ua82b\ua836-\ua839\uaa77-\uaa79\ufb29\ufbb2-\ufbc1\ufdfc\ufdfd\ufe62\ufe64-\ufe66\ufe69\uff04\uff0b\uff1c-\uff1e\uff3e\uff40\uff5c\uff5e\uffe0-\uffe6\uffe8-\uffee\ufffc\ufffd", + astral: "\ud83d[\udc00-\udc3e\udc40\udc42-\udcf7\udcf9-\udcfc\udd00-\udd3d\udd40-\udd43\udd50-\udd67\uddfb-\ude40\ude45-\ude4f\ude80-\udec5\udf00-\udf73]|\ud835[\udec1\udedb\udefb\udf15\udf35\udf4f\udf6f\udf89\udfa9\udfc3]|\ud83c[\udc00-\udc2b\udc30-\udc93\udca0-\udcae\udcb1-\udcbe\udcc1-\udccf\udcd1-\udcdf\udd10-\udd2e\udd30-\udd6b\udd70-\udd9a\udde6-\ude02\ude10-\ude3a\ude40-\ude48\ude50\ude51\udf00-\udf20\udf30-\udf35\udf37-\udf7c\udf80-\udf93\udfa0-\udfc4\udfc6-\udfca\udfe0-\udff0]|\ud834[\udc00-\udcf5\udd00-\udd26\udd29-\udd64\udd6a-\udd6c\udd83\udd84\udd8c-\udda9\uddae-\udddd\ude00-\ude41\ude45\udf00-\udf56]|\ud800[\udd37-\udd3f\udd79-\udd89\udd90-\udd9b\uddd0-\uddfc]|\ud83b[\udef0\udef1]" }, { name: "Sc", alias: "Currency_Symbol", - bmp: "\\x24¢-¥֏؋৲৳৻૱௹฿៛₠-₺꠸﷼﹩$¢£¥₩" + bmp: "\\x24\xa2-\xa5\u058f\u060b\u09f2\u09f3\u09fb\u0af1\u0bf9\u0e3f\u17db\u20a0-\u20ba\ua838\ufdfc\ufe69\uff04\uffe0\uffe1\uffe5\uffe6" }, { name: "Sk", alias: "Modifier_Symbol", - bmp: "\\x5E`¨¯´¸˂-˅˒-˟˥-˫˭˯-˿͵΄΅᾽᾿-῁῍-῏῝-῟῭-`´῾゛゜꜀-꜖꜠꜡꞉꞊﮲-﯁^` ̄" + bmp: "\\x5E`\xa8\xaf\xb4\xb8\u02c2-\u02c5\u02d2-\u02df\u02e5-\u02eb\u02ed\u02ef-\u02ff\u0375\u0384\u0385\u1fbd\u1fbf-\u1fc1\u1fcd-\u1fcf\u1fdd-\u1fdf\u1fed-\u1fef\u1ffd\u1ffe\u309b\u309c\ua700-\ua716\ua720\ua721\ua789\ua78a\ufbb2-\ufbc1\uff3e\uff40\uffe3" }, { name: "Sm", alias: "Math_Symbol", - bmp: "\\x2B<->\\x7C~¬±×÷϶؆-؈⁄⁒⁺-⁼₊-₌℘⅀-⅄⅋←-↔↚↛↠↣↦↮⇎⇏⇒⇔⇴-⋿⌈-⌋⌠⌡⍼⎛-⎳⏜-⏡▷◁◸-◿♯⟀-⟄⟇-⟥⟰-⟿⤀-⦂⦙-⧗⧜-⧻⧾-⫿⬰-⭄⭇-⭌﬩﹢﹤-﹦+<->|~¬←-↓", - astral: "[]|[]" + bmp: "\\x2B<->\\x7C~\xac\xb1\xd7\xf7\u03f6\u0606-\u0608\u2044\u2052\u207a-\u207c\u208a-\u208c\u2118\u2140-\u2144\u214b\u2190-\u2194\u219a\u219b\u21a0\u21a3\u21a6\u21ae\u21ce\u21cf\u21d2\u21d4\u21f4-\u22ff\u2308-\u230b\u2320\u2321\u237c\u239b-\u23b3\u23dc-\u23e1\u25b7\u25c1\u25f8-\u25ff\u266f\u27c0-\u27c4\u27c7-\u27e5\u27f0-\u27ff\u2900-\u2982\u2999-\u29d7\u29dc-\u29fb\u29fe-\u2aff\u2b30-\u2b44\u2b47-\u2b4c\ufb29\ufe62\ufe64-\ufe66\uff0b\uff1c-\uff1e\uff5c\uff5e\uffe2\uffe9-\uffec", + astral: "\ud83b[\udef0\udef1]|\ud835[\udec1\udedb\udefb\udf15\udf35\udf4f\udf6f\udf89\udfa9\udfc3]" }, { name: "So", alias: "Other_Symbol", - bmp: "¦©®°҂؎؏۞۩۽۾߶৺୰௳-௸௺౿൹༁-༃༓༕-༗༚-༟༴༶༸྾-࿅࿇-࿌࿎࿏࿕-࿘႞႟᎐-᎙᥀᧞-᧿᭡-᭪᭴-᭼℀℁℃-℆℈℉℔№℗℞-℣℥℧℩℮℺℻⅊⅌⅍⅏↕-↙↜-↟↡↢↤↥↧-↭↯-⇍⇐⇑⇓⇕-⇳⌀-⌇⌌-⌟⌢-⌨⌫-⍻⍽-⎚⎴-⏛⏢-⏳␀-␦⑀-⑊⒜-ⓩ─-▶▸-◀◂-◷☀-♮♰-⛿✁-❧➔-➿⠀-⣿⬀-⬯⭅⭆⭐-⭙⳥-⳪⺀-⺙⺛-⻳⼀-⿕⿰-⿻〄〒〓〠〶〷〾〿㆐㆑㆖-㆟㇀-㇣㈀-㈞㈪-㉇㉐㉠-㉿㊊-㊰㋀-㋾㌀-㏿䷀-䷿꒐-꓆꠨-꠫꠶꠷꠹꩷-꩹﷽¦│■○�", - astral: "[----------]|[--------]|[-------------------]|[----]" + bmp: "\xa6\xa9\xae\xb0\u0482\u060e\u060f\u06de\u06e9\u06fd\u06fe\u07f6\u09fa\u0b70\u0bf3-\u0bf8\u0bfa\u0c7f\u0d79\u0f01-\u0f03\u0f13\u0f15-\u0f17\u0f1a-\u0f1f\u0f34\u0f36\u0f38\u0fbe-\u0fc5\u0fc7-\u0fcc\u0fce\u0fcf\u0fd5-\u0fd8\u109e\u109f\u1390-\u1399\u1940\u19de-\u19ff\u1b61-\u1b6a\u1b74-\u1b7c\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116\u2117\u211e-\u2123\u2125\u2127\u2129\u212e\u213a\u213b\u214a\u214c\u214d\u214f\u2195-\u2199\u219c-\u219f\u21a1\u21a2\u21a4\u21a5\u21a7-\u21ad\u21af-\u21cd\u21d0\u21d1\u21d3\u21d5-\u21f3\u2300-\u2307\u230c-\u231f\u2322-\u2328\u232b-\u237b\u237d-\u239a\u23b4-\u23db\u23e2-\u23f3\u2400-\u2426\u2440-\u244a\u249c-\u24e9\u2500-\u25b6\u25b8-\u25c0\u25c2-\u25f7\u2600-\u266e\u2670-\u26ff\u2701-\u2767\u2794-\u27bf\u2800-\u28ff\u2b00-\u2b2f\u2b45\u2b46\u2b50-\u2b59\u2ce5-\u2cea\u2e80-\u2e99\u2e9b-\u2ef3\u2f00-\u2fd5\u2ff0-\u2ffb\u3004\u3012\u3013\u3020\u3036\u3037\u303e\u303f\u3190\u3191\u3196-\u319f\u31c0-\u31e3\u3200-\u321e\u322a-\u3247\u3250\u3260-\u327f\u328a-\u32b0\u32c0-\u32fe\u3300-\u33ff\u4dc0-\u4dff\ua490-\ua4c6\ua828-\ua82b\ua836\ua837\ua839\uaa77-\uaa79\ufdfd\uffe4\uffe8\uffed\uffee\ufffc\ufffd", + astral: "\ud83d[\udc00-\udc3e\udc40\udc42-\udcf7\udcf9-\udcfc\udd00-\udd3d\udd40-\udd43\udd50-\udd67\uddfb-\ude40\ude45-\ude4f\ude80-\udec5\udf00-\udf73]|\ud834[\udc00-\udcf5\udd00-\udd26\udd29-\udd64\udd6a-\udd6c\udd83\udd84\udd8c-\udda9\uddae-\udddd\ude00-\ude41\ude45\udf00-\udf56]|\ud83c[\udc00-\udc2b\udc30-\udc93\udca0-\udcae\udcb1-\udcbe\udcc1-\udccf\udcd1-\udcdf\udd10-\udd2e\udd30-\udd6b\udd70-\udd9a\udde6-\ude02\ude10-\ude3a\ude40-\ude48\ude50\ude51\udf00-\udf20\udf30-\udf35\udf37-\udf7c\udf80-\udf93\udfa0-\udfc4\udfc6-\udfca\udfe0-\udff0]|\ud800[\udd37-\udd3f\udd79-\udd89\udd90-\udd9b\uddd0-\uddfc]" }, { name: "Z", alias: "Separator", - bmp: "   ᠎ - \u2028\u2029   " + bmp: " \xa0\u1680\u180e\u2000-\u200a\u2028\u2029\u202f\u205f\u3000" }, { name: "Zl", alias: "Line_Separator", @@ -5913,7 +5913,7 @@ function diff_match_patch() { }, { name: "Zs", alias: "Space_Separator", - bmp: "   ᠎ -    " + bmp: " \xa0\u1680\u180e\u2000-\u200a\u202f\u205f\u3000" } ]); }(e), function(e) { if (!e.addUnicodeData) throw new ReferenceError("Unicode Base must be loaded before Unicode Properties"); @@ -5922,352 +5922,352 @@ function diff_match_patch() { bmp: "\x00-" }, { name: "Alphabetic", - bmp: "A-Za-zªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͅͰ-ʹͶͷͺ-ͽΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԧԱ-Ֆՙա-ևְ-ׇֽֿׁׂׅׄא-תװ-ײؐ-ؚؠ-ٗٙ-ٟٮ-ۓە-ۜۡ-ۭۨ-ۯۺ-ۼۿܐ-ܿݍ-ޱߊ-ߪߴߵߺࠀ-ࠗࠚ-ࠬࡀ-ࡘࢠࢢ-ࢬࣤ-ࣰࣩ-ࣾऀ-ऻऽ-ौॎ-ॐॕ-ॣॱ-ॷॹ-ॿঁ-ঃঅ-ঌএঐও-নপ-রলশ-হঽ-ৄেৈোৌৎৗড়ঢ়য়-ৣৰৱਁ-ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਾ-ੂੇੈੋੌੑਖ਼-ੜਫ਼ੰ-ੵઁ-ઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽ-ૅે-ૉોૌૐૠ-ૣଁ-ଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽ-ୄେୈୋୌୖୗଡ଼ଢ଼ୟ-ୣୱஂஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹா-ூெ-ைொ-ௌௐௗఁ-ఃఅ-ఌఎ-ఐఒ-నప-ళవ-హఽ-ౄె-ైొ-ౌౕౖౘౙౠ-ౣಂಃಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽ-ೄೆ-ೈೊ-ೌೕೖೞೠ-ೣೱೲംഃഅ-ഌഎ-ഐഒ-ഺഽ-ൄെ-ൈൊ-ൌൎൗൠ-ൣൺ-ൿංඃඅ-ඖක-නඳ-රලව-ෆා-ුූෘ-ෟෲෳก-ฺเ-ๆํກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ູົ-ຽເ-ໄໆໍໜ-ໟༀཀ-ཇཉ-ཬཱ-ཱྀྈ-ྗྙ-ྼက-ံးျ-ဿၐ-ၢၥ-ၨၮ-ႆႎႜႝႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚ፟ᎀ-ᎏᎠ-Ᏼᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛰᜀ-ᜌᜎ-ᜓᜠ-ᜳᝀ-ᝓᝠ-ᝬᝮ-ᝰᝲᝳក-ឳា-ៈៗៜᠠ-ᡷᢀ-ᢪᢰ-ᣵᤀ-ᤜᤠ-ᤫᤰ-ᤸᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨛᨠ-ᩞᩡ-ᩴᪧᬀ-ᬳᬵ-ᭃᭅ-ᭋᮀ-ᮩᮬ-ᮯᮺ-ᯥᯧ-ᯱᰀ-ᰵᱍ-ᱏᱚ-ᱽᳩ-ᳬᳮ-ᳳᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⒶ-ⓩⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞⷠ-ⷿⸯ々-〇〡-〩〱-〵〸-〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿌ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙴ-ꙻꙿ-ꚗꚟ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꞎꞐ-ꞓꞠ-Ɦꟸ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠧꡀ-ꡳꢀ-ꣃꣲ-ꣷꣻꤊ-ꤪꤰ-ꥒꥠ-ꥼꦀ-ꦲꦴ-ꦿꧏꨀ-ꨶꩀ-ꩍꩠ-ꩶꩺꪀ-ꪾꫀꫂꫛ-ꫝꫠ-ꫯꫲ-ꫵꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꯀ-ꯪ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ", - astral: "[-]|[-]|[-]|[-]|[------]|[--][-]|[-]|[--]|[-]|[-]|[--------------]|[---------------]|[---]|[-------------------------]|[--------------]|[--]|[]|[-]|[-]" + bmp: "A-Za-z\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0345\u0370-\u0374\u0376\u0377\u037a-\u037d\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05b0-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u05d0-\u05ea\u05f0-\u05f2\u0610-\u061a\u0620-\u0657\u0659-\u065f\u066e-\u06d3\u06d5-\u06dc\u06e1-\u06e8\u06ed-\u06ef\u06fa-\u06fc\u06ff\u0710-\u073f\u074d-\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0817\u081a-\u082c\u0840-\u0858\u08a0\u08a2-\u08ac\u08e4-\u08e9\u08f0-\u08fe\u0900-\u093b\u093d-\u094c\u094e-\u0950\u0955-\u0963\u0971-\u0977\u0979-\u097f\u0981-\u0983\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd-\u09c4\u09c7\u09c8\u09cb\u09cc\u09ce\u09d7\u09dc\u09dd\u09df-\u09e3\u09f0\u09f1\u0a01-\u0a03\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a3e-\u0a42\u0a47\u0a48\u0a4b\u0a4c\u0a51\u0a59-\u0a5c\u0a5e\u0a70-\u0a75\u0a81-\u0a83\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd-\u0ac5\u0ac7-\u0ac9\u0acb\u0acc\u0ad0\u0ae0-\u0ae3\u0b01-\u0b03\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d-\u0b44\u0b47\u0b48\u0b4b\u0b4c\u0b56\u0b57\u0b5c\u0b5d\u0b5f-\u0b63\u0b71\u0b82\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcc\u0bd0\u0bd7\u0c01-\u0c03\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c33\u0c35-\u0c39\u0c3d-\u0c44\u0c46-\u0c48\u0c4a-\u0c4c\u0c55\u0c56\u0c58\u0c59\u0c60-\u0c63\u0c82\u0c83\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccc\u0cd5\u0cd6\u0cde\u0ce0-\u0ce3\u0cf1\u0cf2\u0d02\u0d03\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d-\u0d44\u0d46-\u0d48\u0d4a-\u0d4c\u0d4e\u0d57\u0d60-\u0d63\u0d7a-\u0d7f\u0d82\u0d83\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0df2\u0df3\u0e01-\u0e3a\u0e40-\u0e46\u0e4d\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb9\u0ebb-\u0ebd\u0ec0-\u0ec4\u0ec6\u0ecd\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f71-\u0f81\u0f88-\u0f97\u0f99-\u0fbc\u1000-\u1036\u1038\u103b-\u103f\u1050-\u1062\u1065-\u1068\u106e-\u1086\u108e\u109c\u109d\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u135f\u1380-\u138f\u13a0-\u13f4\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f0\u1700-\u170c\u170e-\u1713\u1720-\u1733\u1740-\u1753\u1760-\u176c\u176e-\u1770\u1772\u1773\u1780-\u17b3\u17b6-\u17c8\u17d7\u17dc\u1820-\u1877\u1880-\u18aa\u18b0-\u18f5\u1900-\u191c\u1920-\u192b\u1930-\u1938\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u1a00-\u1a1b\u1a20-\u1a5e\u1a61-\u1a74\u1aa7\u1b00-\u1b33\u1b35-\u1b43\u1b45-\u1b4b\u1b80-\u1ba9\u1bac-\u1baf\u1bba-\u1be5\u1be7-\u1bf1\u1c00-\u1c35\u1c4d-\u1c4f\u1c5a-\u1c7d\u1ce9-\u1cec\u1cee-\u1cf3\u1cf5\u1cf6\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u212f-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u24b6-\u24e9\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u2de0-\u2dff\u2e2f\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309d-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312d\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fcc\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua674-\ua67b\ua67f-\ua697\ua69f-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua78e\ua790-\ua793\ua7a0-\ua7aa\ua7f8-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua827\ua840-\ua873\ua880-\ua8c3\ua8f2-\ua8f7\ua8fb\ua90a-\ua92a\ua930-\ua952\ua960-\ua97c\ua980-\ua9b2\ua9b4-\ua9bf\ua9cf\uaa00-\uaa36\uaa40-\uaa4d\uaa60-\uaa76\uaa7a\uaa80-\uaabe\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaef\uaaf2-\uaaf5\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uabc0-\uabea\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc", + astral: "\ud803[\udc00-\udc48]|\ud801[\udc00-\udc9d]|\ud809[\udc00-\udc62]|\ud81a[\udc00-\ude38]|\ud804[\udc00-\udc45\udc82-\udcb8\udcd0-\udce8\udd00-\udd32\udd80-\uddbf\uddc1-\uddc4]|[\ud80c\ud840-\ud868\ud86a-\ud86c][\udc00-\udfff]|\ud86e[\udc00-\udc1d]|\ud86d[\udc00-\udf34\udf40-\udfff]|\ud80d[\udc00-\udc2e]|\ud87e[\udc00-\ude1d]|\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f-\udc55\udd00-\udd15\udd20-\udd39\udd80-\uddb7\uddbe\uddbf\ude00-\ude03\ude05\ude06\ude0c-\ude13\ude15-\ude17\ude19-\ude33\ude60-\ude7c\udf00-\udf35\udf40-\udf55\udf60-\udf72]|\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa\udd40-\udd74\ude80-\ude9c\udea0-\uded0\udf00-\udf1e\udf30-\udf4a\udf80-\udf9d\udfa0-\udfc3\udfc8-\udfcf\udfd1-\udfd5]|\ud81b[\udf00-\udf44\udf50-\udf7e\udf93-\udf9f]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udec0\udec2-\udeda\udedc-\udefa\udefc-\udf14\udf16-\udf34\udf36-\udf4e\udf50-\udf6e\udf70-\udf88\udf8a-\udfa8\udfaa-\udfc2\udfc4-\udfcb]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb]|\ud869[\udc00-\uded6\udf00-\udfff]|\ud82c[\udc00\udc01]|\ud808[\udc00-\udf6e]|\ud805[\ude80-\udeb5]" }, { name: "Any", isBmpLast: !0, - bmp: "\x00-￿", - astral: "[-][-]" + bmp: "\x00-\uffff", + astral: "[\ud800-\udbff][\udc00-\udfff]" }, { name: "Assigned", inverseOf: "Cn" }, { name: "Default_Ignorable_Code_Point", - bmp: "­͏ᅟᅠ឴឵᠋-᠍​-‏‪-‮⁠-ㅤ︀-️ᅠ￰-￸", - astral: "[-][-]|[-]" + bmp: "\xad\u034f\u115f\u1160\u17b4\u17b5\u180b-\u180d\u200b-\u200f\u202a-\u202e\u2060-\u206f\u3164\ufe00-\ufe0f\ufeff\uffa0\ufff0-\ufff8", + astral: "[\udb40-\udb43][\udc00-\udfff]|\ud834[\udd73-\udd7a]" }, { name: "Lowercase", - bmp: "a-zªµºß-öø-ÿāăąćĉċčďđēĕėęěĝğġģĥħĩīĭįıijĵķĸĺļľŀłńņňʼnŋōŏőœŕŗřśŝşšţťŧũūŭůűųŵŷźżž-ƀƃƅƈƌƍƒƕƙ-ƛƞơƣƥƨƪƫƭưƴƶƹƺƽ-ƿdžljnjǎǐǒǔǖǘǚǜǝǟǡǣǥǧǩǫǭǯǰdzǵǹǻǽǿȁȃȅȇȉȋȍȏȑȓȕȗșțȝȟȡȣȥȧȩȫȭȯȱȳ-ȹȼȿɀɂɇɉɋɍɏ-ʓʕ-ʸˀˁˠ-ˤͅͱͳͷͺ-ͽΐά-ώϐϑϕ-ϗϙϛϝϟϡϣϥϧϩϫϭϯ-ϳϵϸϻϼа-џѡѣѥѧѩѫѭѯѱѳѵѷѹѻѽѿҁҋҍҏґғҕҗҙқҝҟҡңҥҧҩҫҭүұҳҵҷҹһҽҿӂӄӆӈӊӌӎӏӑӓӕӗәӛӝӟӡӣӥӧөӫӭӯӱӳӵӷӹӻӽӿԁԃԅԇԉԋԍԏԑԓԕԗԙԛԝԟԡԣԥԧա-ևᴀ-ᶿḁḃḅḇḉḋḍḏḑḓḕḗḙḛḝḟḡḣḥḧḩḫḭḯḱḳḵḷḹḻḽḿṁṃṅṇṉṋṍṏṑṓṕṗṙṛṝṟṡṣṥṧṩṫṭṯṱṳṵṷṹṻṽṿẁẃẅẇẉẋẍẏẑẓẕ-ẝẟạảấầẩẫậắằẳẵặẹẻẽếềểễệỉịọỏốồổỗộớờởỡợụủứừửữựỳỵỷỹỻỽỿ-ἇἐ-ἕἠ-ἧἰ-ἷὀ-ὅὐ-ὗὠ-ὧὰ-ώᾀ-ᾇᾐ-ᾗᾠ-ᾧᾰ-ᾴᾶᾷιῂ-ῄῆῇῐ-ΐῖῗῠ-ῧῲ-ῴῶῷⁱⁿₐ-ₜℊℎℏℓℯℴℹℼℽⅆ-ⅉⅎⅰ-ⅿↄⓐ-ⓩⰰ-ⱞⱡⱥⱦⱨⱪⱬⱱⱳⱴⱶ-ⱽⲁⲃⲅⲇⲉⲋⲍⲏⲑⲓⲕⲗⲙⲛⲝⲟⲡⲣⲥⲧⲩⲫⲭⲯⲱⲳⲵⲷⲹⲻⲽⲿⳁⳃⳅⳇⳉⳋⳍⳏⳑⳓⳕⳗⳙⳛⳝⳟⳡⳣⳤⳬⳮⳳⴀ-ⴥⴧⴭꙁꙃꙅꙇꙉꙋꙍꙏꙑꙓꙕꙗꙙꙛꙝꙟꙡꙣꙥꙧꙩꙫꙭꚁꚃꚅꚇꚉꚋꚍꚏꚑꚓꚕꚗꜣꜥꜧꜩꜫꜭꜯ-ꜱꜳꜵꜷꜹꜻꜽꜿꝁꝃꝅꝇꝉꝋꝍꝏꝑꝓꝕꝗꝙꝛꝝꝟꝡꝣꝥꝧꝩꝫꝭꝯ-ꝸꝺꝼꝿꞁꞃꞅꞇꞌꞎꞑꞓꞡꞣꞥꞧꞩꟸ-ꟺff-stﬓ-ﬗa-z", - astral: "[--------------------------]|[-]" + bmp: "a-z\xaa\xb5\xba\xdf-\xf6\xf8-\xff\u0101\u0103\u0105\u0107\u0109\u010b\u010d\u010f\u0111\u0113\u0115\u0117\u0119\u011b\u011d\u011f\u0121\u0123\u0125\u0127\u0129\u012b\u012d\u012f\u0131\u0133\u0135\u0137\u0138\u013a\u013c\u013e\u0140\u0142\u0144\u0146\u0148\u0149\u014b\u014d\u014f\u0151\u0153\u0155\u0157\u0159\u015b\u015d\u015f\u0161\u0163\u0165\u0167\u0169\u016b\u016d\u016f\u0171\u0173\u0175\u0177\u017a\u017c\u017e-\u0180\u0183\u0185\u0188\u018c\u018d\u0192\u0195\u0199-\u019b\u019e\u01a1\u01a3\u01a5\u01a8\u01aa\u01ab\u01ad\u01b0\u01b4\u01b6\u01b9\u01ba\u01bd-\u01bf\u01c6\u01c9\u01cc\u01ce\u01d0\u01d2\u01d4\u01d6\u01d8\u01da\u01dc\u01dd\u01df\u01e1\u01e3\u01e5\u01e7\u01e9\u01eb\u01ed\u01ef\u01f0\u01f3\u01f5\u01f9\u01fb\u01fd\u01ff\u0201\u0203\u0205\u0207\u0209\u020b\u020d\u020f\u0211\u0213\u0215\u0217\u0219\u021b\u021d\u021f\u0221\u0223\u0225\u0227\u0229\u022b\u022d\u022f\u0231\u0233-\u0239\u023c\u023f\u0240\u0242\u0247\u0249\u024b\u024d\u024f-\u0293\u0295-\u02b8\u02c0\u02c1\u02e0-\u02e4\u0345\u0371\u0373\u0377\u037a-\u037d\u0390\u03ac-\u03ce\u03d0\u03d1\u03d5-\u03d7\u03d9\u03db\u03dd\u03df\u03e1\u03e3\u03e5\u03e7\u03e9\u03eb\u03ed\u03ef-\u03f3\u03f5\u03f8\u03fb\u03fc\u0430-\u045f\u0461\u0463\u0465\u0467\u0469\u046b\u046d\u046f\u0471\u0473\u0475\u0477\u0479\u047b\u047d\u047f\u0481\u048b\u048d\u048f\u0491\u0493\u0495\u0497\u0499\u049b\u049d\u049f\u04a1\u04a3\u04a5\u04a7\u04a9\u04ab\u04ad\u04af\u04b1\u04b3\u04b5\u04b7\u04b9\u04bb\u04bd\u04bf\u04c2\u04c4\u04c6\u04c8\u04ca\u04cc\u04ce\u04cf\u04d1\u04d3\u04d5\u04d7\u04d9\u04db\u04dd\u04df\u04e1\u04e3\u04e5\u04e7\u04e9\u04eb\u04ed\u04ef\u04f1\u04f3\u04f5\u04f7\u04f9\u04fb\u04fd\u04ff\u0501\u0503\u0505\u0507\u0509\u050b\u050d\u050f\u0511\u0513\u0515\u0517\u0519\u051b\u051d\u051f\u0521\u0523\u0525\u0527\u0561-\u0587\u1d00-\u1dbf\u1e01\u1e03\u1e05\u1e07\u1e09\u1e0b\u1e0d\u1e0f\u1e11\u1e13\u1e15\u1e17\u1e19\u1e1b\u1e1d\u1e1f\u1e21\u1e23\u1e25\u1e27\u1e29\u1e2b\u1e2d\u1e2f\u1e31\u1e33\u1e35\u1e37\u1e39\u1e3b\u1e3d\u1e3f\u1e41\u1e43\u1e45\u1e47\u1e49\u1e4b\u1e4d\u1e4f\u1e51\u1e53\u1e55\u1e57\u1e59\u1e5b\u1e5d\u1e5f\u1e61\u1e63\u1e65\u1e67\u1e69\u1e6b\u1e6d\u1e6f\u1e71\u1e73\u1e75\u1e77\u1e79\u1e7b\u1e7d\u1e7f\u1e81\u1e83\u1e85\u1e87\u1e89\u1e8b\u1e8d\u1e8f\u1e91\u1e93\u1e95-\u1e9d\u1e9f\u1ea1\u1ea3\u1ea5\u1ea7\u1ea9\u1eab\u1ead\u1eaf\u1eb1\u1eb3\u1eb5\u1eb7\u1eb9\u1ebb\u1ebd\u1ebf\u1ec1\u1ec3\u1ec5\u1ec7\u1ec9\u1ecb\u1ecd\u1ecf\u1ed1\u1ed3\u1ed5\u1ed7\u1ed9\u1edb\u1edd\u1edf\u1ee1\u1ee3\u1ee5\u1ee7\u1ee9\u1eeb\u1eed\u1eef\u1ef1\u1ef3\u1ef5\u1ef7\u1ef9\u1efb\u1efd\u1eff-\u1f07\u1f10-\u1f15\u1f20-\u1f27\u1f30-\u1f37\u1f40-\u1f45\u1f50-\u1f57\u1f60-\u1f67\u1f70-\u1f7d\u1f80-\u1f87\u1f90-\u1f97\u1fa0-\u1fa7\u1fb0-\u1fb4\u1fb6\u1fb7\u1fbe\u1fc2-\u1fc4\u1fc6\u1fc7\u1fd0-\u1fd3\u1fd6\u1fd7\u1fe0-\u1fe7\u1ff2-\u1ff4\u1ff6\u1ff7\u2071\u207f\u2090-\u209c\u210a\u210e\u210f\u2113\u212f\u2134\u2139\u213c\u213d\u2146-\u2149\u214e\u2170-\u217f\u2184\u24d0-\u24e9\u2c30-\u2c5e\u2c61\u2c65\u2c66\u2c68\u2c6a\u2c6c\u2c71\u2c73\u2c74\u2c76-\u2c7d\u2c81\u2c83\u2c85\u2c87\u2c89\u2c8b\u2c8d\u2c8f\u2c91\u2c93\u2c95\u2c97\u2c99\u2c9b\u2c9d\u2c9f\u2ca1\u2ca3\u2ca5\u2ca7\u2ca9\u2cab\u2cad\u2caf\u2cb1\u2cb3\u2cb5\u2cb7\u2cb9\u2cbb\u2cbd\u2cbf\u2cc1\u2cc3\u2cc5\u2cc7\u2cc9\u2ccb\u2ccd\u2ccf\u2cd1\u2cd3\u2cd5\u2cd7\u2cd9\u2cdb\u2cdd\u2cdf\u2ce1\u2ce3\u2ce4\u2cec\u2cee\u2cf3\u2d00-\u2d25\u2d27\u2d2d\ua641\ua643\ua645\ua647\ua649\ua64b\ua64d\ua64f\ua651\ua653\ua655\ua657\ua659\ua65b\ua65d\ua65f\ua661\ua663\ua665\ua667\ua669\ua66b\ua66d\ua681\ua683\ua685\ua687\ua689\ua68b\ua68d\ua68f\ua691\ua693\ua695\ua697\ua723\ua725\ua727\ua729\ua72b\ua72d\ua72f-\ua731\ua733\ua735\ua737\ua739\ua73b\ua73d\ua73f\ua741\ua743\ua745\ua747\ua749\ua74b\ua74d\ua74f\ua751\ua753\ua755\ua757\ua759\ua75b\ua75d\ua75f\ua761\ua763\ua765\ua767\ua769\ua76b\ua76d\ua76f-\ua778\ua77a\ua77c\ua77f\ua781\ua783\ua785\ua787\ua78c\ua78e\ua791\ua793\ua7a1\ua7a3\ua7a5\ua7a7\ua7a9\ua7f8-\ua7fa\ufb00-\ufb06\ufb13-\ufb17\uff41-\uff5a", + astral: "\ud835[\udc1a-\udc33\udc4e-\udc54\udc56-\udc67\udc82-\udc9b\udcb6-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udccf\udcea-\udd03\udd1e-\udd37\udd52-\udd6b\udd86-\udd9f\uddba-\uddd3\uddee-\ude07\ude22-\ude3b\ude56-\ude6f\ude8a-\udea5\udec2-\udeda\udedc-\udee1\udefc-\udf14\udf16-\udf1b\udf36-\udf4e\udf50-\udf55\udf70-\udf88\udf8a-\udf8f\udfaa-\udfc2\udfc4-\udfc9\udfcb]|\ud801[\udc28-\udc4f]" }, { name: "Noncharacter_Code_Point", - bmp: "﷐-﷯￾￿", - astral: "[][]" + bmp: "\ufdd0-\ufdef\ufffe\uffff", + astral: "[\udb3f\udb7f\udbbf\udbff\ud83f\ud87f\ud8bf\udaff\ud97f\ud9bf\ud9ff\uda3f\ud8ff\udabf\uda7f\ud93f][\udffe\udfff]" }, { name: "Uppercase", - bmp: "A-ZÀ-ÖØ-ÞĀĂĄĆĈĊČĎĐĒĔĖĘĚĜĞĠĢĤĦĨĪĬĮİIJĴĶĹĻĽĿŁŃŅŇŊŌŎŐŒŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽƁƂƄƆƇƉ-ƋƎ-ƑƓƔƖ-ƘƜƝƟƠƢƤƦƧƩƬƮƯƱ-ƳƵƷƸƼDŽLJNJǍǏǑǓǕǗǙǛǞǠǢǤǦǨǪǬǮDZǴǶ-ǸǺǼǾȀȂȄȆȈȊȌȎȐȒȔȖȘȚȜȞȠȢȤȦȨȪȬȮȰȲȺȻȽȾɁɃ-ɆɈɊɌɎͰͲͶΆΈ-ΊΌΎΏΑ-ΡΣ-ΫϏϒ-ϔϘϚϜϞϠϢϤϦϨϪϬϮϴϷϹϺϽ-ЯѠѢѤѦѨѪѬѮѰѲѴѶѸѺѼѾҀҊҌҎҐҒҔҖҘҚҜҞҠҢҤҦҨҪҬҮҰҲҴҶҸҺҼҾӀӁӃӅӇӉӋӍӐӒӔӖӘӚӜӞӠӢӤӦӨӪӬӮӰӲӴӶӸӺӼӾԀԂԄԆԈԊԌԎԐԒԔԖԘԚԜԞԠԢԤԦԱ-ՖႠ-ჅჇჍḀḂḄḆḈḊḌḎḐḒḔḖḘḚḜḞḠḢḤḦḨḪḬḮḰḲḴḶḸḺḼḾṀṂṄṆṈṊṌṎṐṒṔṖṘṚṜṞṠṢṤṦṨṪṬṮṰṲṴṶṸṺṼṾẀẂẄẆẈẊẌẎẐẒẔẞẠẢẤẦẨẪẬẮẰẲẴẶẸẺẼẾỀỂỄỆỈỊỌỎỐỒỔỖỘỚỜỞỠỢỤỦỨỪỬỮỰỲỴỶỸỺỼỾἈ-ἏἘ-ἝἨ-ἯἸ-ἿὈ-ὍὙὛὝὟὨ-ὯᾸ-ΆῈ-ΉῘ-ΊῨ-ῬῸ-Ώℂℇℋ-ℍℐ-ℒℕℙ-ℝℤΩℨK-ℭℰ-ℳℾℿⅅⅠ-ⅯↃⒶ-ⓏⰀ-ⰮⱠⱢ-ⱤⱧⱩⱫⱭ-ⱰⱲⱵⱾ-ⲀⲂⲄⲆⲈⲊⲌⲎⲐⲒⲔⲖⲘⲚⲜⲞⲠⲢⲤⲦⲨⲪⲬⲮⲰⲲⲴⲶⲸⲺⲼⲾⳀⳂⳄⳆⳈⳊⳌⳎⳐⳒⳔⳖⳘⳚⳜⳞⳠⳢⳫⳭⳲꙀꙂꙄꙆꙈꙊꙌꙎꙐꙒꙔꙖꙘꙚꙜꙞꙠꙢꙤꙦꙨꙪꙬꚀꚂꚄꚆꚈꚊꚌꚎꚐꚒꚔꚖꜢꜤꜦꜨꜪꜬꜮꜲꜴꜶꜸꜺꜼꜾꝀꝂꝄꝆꝈꝊꝌꝎꝐꝒꝔꝖꝘꝚꝜꝞꝠꝢꝤꝦꝨꝪꝬꝮꝹꝻꝽꝾꞀꞂꞄꞆꞋꞍꞐꞒꞠꞢꞤꞦꞨꞪA-Z", - astral: "[-----------------------]|[-]" + bmp: "A-Z\xc0-\xd6\xd8-\xde\u0100\u0102\u0104\u0106\u0108\u010a\u010c\u010e\u0110\u0112\u0114\u0116\u0118\u011a\u011c\u011e\u0120\u0122\u0124\u0126\u0128\u012a\u012c\u012e\u0130\u0132\u0134\u0136\u0139\u013b\u013d\u013f\u0141\u0143\u0145\u0147\u014a\u014c\u014e\u0150\u0152\u0154\u0156\u0158\u015a\u015c\u015e\u0160\u0162\u0164\u0166\u0168\u016a\u016c\u016e\u0170\u0172\u0174\u0176\u0178\u0179\u017b\u017d\u0181\u0182\u0184\u0186\u0187\u0189-\u018b\u018e-\u0191\u0193\u0194\u0196-\u0198\u019c\u019d\u019f\u01a0\u01a2\u01a4\u01a6\u01a7\u01a9\u01ac\u01ae\u01af\u01b1-\u01b3\u01b5\u01b7\u01b8\u01bc\u01c4\u01c7\u01ca\u01cd\u01cf\u01d1\u01d3\u01d5\u01d7\u01d9\u01db\u01de\u01e0\u01e2\u01e4\u01e6\u01e8\u01ea\u01ec\u01ee\u01f1\u01f4\u01f6-\u01f8\u01fa\u01fc\u01fe\u0200\u0202\u0204\u0206\u0208\u020a\u020c\u020e\u0210\u0212\u0214\u0216\u0218\u021a\u021c\u021e\u0220\u0222\u0224\u0226\u0228\u022a\u022c\u022e\u0230\u0232\u023a\u023b\u023d\u023e\u0241\u0243-\u0246\u0248\u024a\u024c\u024e\u0370\u0372\u0376\u0386\u0388-\u038a\u038c\u038e\u038f\u0391-\u03a1\u03a3-\u03ab\u03cf\u03d2-\u03d4\u03d8\u03da\u03dc\u03de\u03e0\u03e2\u03e4\u03e6\u03e8\u03ea\u03ec\u03ee\u03f4\u03f7\u03f9\u03fa\u03fd-\u042f\u0460\u0462\u0464\u0466\u0468\u046a\u046c\u046e\u0470\u0472\u0474\u0476\u0478\u047a\u047c\u047e\u0480\u048a\u048c\u048e\u0490\u0492\u0494\u0496\u0498\u049a\u049c\u049e\u04a0\u04a2\u04a4\u04a6\u04a8\u04aa\u04ac\u04ae\u04b0\u04b2\u04b4\u04b6\u04b8\u04ba\u04bc\u04be\u04c0\u04c1\u04c3\u04c5\u04c7\u04c9\u04cb\u04cd\u04d0\u04d2\u04d4\u04d6\u04d8\u04da\u04dc\u04de\u04e0\u04e2\u04e4\u04e6\u04e8\u04ea\u04ec\u04ee\u04f0\u04f2\u04f4\u04f6\u04f8\u04fa\u04fc\u04fe\u0500\u0502\u0504\u0506\u0508\u050a\u050c\u050e\u0510\u0512\u0514\u0516\u0518\u051a\u051c\u051e\u0520\u0522\u0524\u0526\u0531-\u0556\u10a0-\u10c5\u10c7\u10cd\u1e00\u1e02\u1e04\u1e06\u1e08\u1e0a\u1e0c\u1e0e\u1e10\u1e12\u1e14\u1e16\u1e18\u1e1a\u1e1c\u1e1e\u1e20\u1e22\u1e24\u1e26\u1e28\u1e2a\u1e2c\u1e2e\u1e30\u1e32\u1e34\u1e36\u1e38\u1e3a\u1e3c\u1e3e\u1e40\u1e42\u1e44\u1e46\u1e48\u1e4a\u1e4c\u1e4e\u1e50\u1e52\u1e54\u1e56\u1e58\u1e5a\u1e5c\u1e5e\u1e60\u1e62\u1e64\u1e66\u1e68\u1e6a\u1e6c\u1e6e\u1e70\u1e72\u1e74\u1e76\u1e78\u1e7a\u1e7c\u1e7e\u1e80\u1e82\u1e84\u1e86\u1e88\u1e8a\u1e8c\u1e8e\u1e90\u1e92\u1e94\u1e9e\u1ea0\u1ea2\u1ea4\u1ea6\u1ea8\u1eaa\u1eac\u1eae\u1eb0\u1eb2\u1eb4\u1eb6\u1eb8\u1eba\u1ebc\u1ebe\u1ec0\u1ec2\u1ec4\u1ec6\u1ec8\u1eca\u1ecc\u1ece\u1ed0\u1ed2\u1ed4\u1ed6\u1ed8\u1eda\u1edc\u1ede\u1ee0\u1ee2\u1ee4\u1ee6\u1ee8\u1eea\u1eec\u1eee\u1ef0\u1ef2\u1ef4\u1ef6\u1ef8\u1efa\u1efc\u1efe\u1f08-\u1f0f\u1f18-\u1f1d\u1f28-\u1f2f\u1f38-\u1f3f\u1f48-\u1f4d\u1f59\u1f5b\u1f5d\u1f5f\u1f68-\u1f6f\u1fb8-\u1fbb\u1fc8-\u1fcb\u1fd8-\u1fdb\u1fe8-\u1fec\u1ff8-\u1ffb\u2102\u2107\u210b-\u210d\u2110-\u2112\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u2130-\u2133\u213e\u213f\u2145\u2160-\u216f\u2183\u24b6-\u24cf\u2c00-\u2c2e\u2c60\u2c62-\u2c64\u2c67\u2c69\u2c6b\u2c6d-\u2c70\u2c72\u2c75\u2c7e-\u2c80\u2c82\u2c84\u2c86\u2c88\u2c8a\u2c8c\u2c8e\u2c90\u2c92\u2c94\u2c96\u2c98\u2c9a\u2c9c\u2c9e\u2ca0\u2ca2\u2ca4\u2ca6\u2ca8\u2caa\u2cac\u2cae\u2cb0\u2cb2\u2cb4\u2cb6\u2cb8\u2cba\u2cbc\u2cbe\u2cc0\u2cc2\u2cc4\u2cc6\u2cc8\u2cca\u2ccc\u2cce\u2cd0\u2cd2\u2cd4\u2cd6\u2cd8\u2cda\u2cdc\u2cde\u2ce0\u2ce2\u2ceb\u2ced\u2cf2\ua640\ua642\ua644\ua646\ua648\ua64a\ua64c\ua64e\ua650\ua652\ua654\ua656\ua658\ua65a\ua65c\ua65e\ua660\ua662\ua664\ua666\ua668\ua66a\ua66c\ua680\ua682\ua684\ua686\ua688\ua68a\ua68c\ua68e\ua690\ua692\ua694\ua696\ua722\ua724\ua726\ua728\ua72a\ua72c\ua72e\ua732\ua734\ua736\ua738\ua73a\ua73c\ua73e\ua740\ua742\ua744\ua746\ua748\ua74a\ua74c\ua74e\ua750\ua752\ua754\ua756\ua758\ua75a\ua75c\ua75e\ua760\ua762\ua764\ua766\ua768\ua76a\ua76c\ua76e\ua779\ua77b\ua77d\ua77e\ua780\ua782\ua784\ua786\ua78b\ua78d\ua790\ua792\ua7a0\ua7a2\ua7a4\ua7a6\ua7a8\ua7aa\uff21-\uff3a", + astral: "\ud835[\udc00-\udc19\udc34-\udc4d\udc68-\udc81\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb5\udcd0-\udce9\udd04\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd38\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd6c-\udd85\udda0-\uddb9\uddd4-\udded\ude08-\ude21\ude3c-\ude55\ude70-\ude89\udea8-\udec0\udee2-\udefa\udf1c-\udf34\udf56-\udf6e\udf90-\udfa8\udfca]|\ud801[\udc00-\udc27]" }, { name: "White_Space", - bmp: " -\r …  ᠎ - \u2028\u2029   " + bmp: " -\r \x85\xa0\u1680\u180e\u2000-\u200a\u2028\u2029\u202f\u205f\u3000" } ]); }(e), function(e) { if (!e.addUnicodeData) throw new ReferenceError("Unicode Base must be loaded before Unicode Scripts"); e.addUnicodeData([ { name: "Arabic", - bmp: "؀-؄؆-؋؍-ؚ؞ؠ-ؿف-يٖ-ٟ٪-ٯٱ-ۜ۞-ۿݐ-ݿࢠࢢ-ࢬࣤ-ࣾﭐ-﯁ﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-﷼ﹰ-ﹴﹶ-ﻼ", - astral: "[-]|[--------------]" + bmp: "\u0600-\u0604\u0606-\u060b\u060d-\u061a\u061e\u0620-\u063f\u0641-\u064a\u0656-\u065f\u066a-\u066f\u0671-\u06dc\u06de-\u06ff\u0750-\u077f\u08a0\u08a2-\u08ac\u08e4-\u08fe\ufb50-\ufbc1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfc\ufe70-\ufe74\ufe76-\ufefc", + astral: "\ud803[\ude60-\ude7e]|\ud83b[\ude00-\ude03\ude05-\ude1f\ude21\ude22\ude24\ude27\ude29-\ude32\ude34-\ude37\ude39\ude3b\ude42\ude47\ude49\ude4b\ude4d-\ude4f\ude51\ude52\ude54\ude57\ude59\ude5b\ude5d\ude5f\ude61\ude62\ude64\ude67-\ude6a\ude6c-\ude72\ude74-\ude77\ude79-\ude7c\ude7e\ude80-\ude89\ude8b-\ude9b\udea1-\udea3\udea5-\udea9\udeab-\udebb\udef0\udef1]" }, { name: "Armenian", - bmp: "Ա-Ֆՙ-՟ա-և֊֏ﬓ-ﬗ" + bmp: "\u0531-\u0556\u0559-\u055f\u0561-\u0587\u058a\u058f\ufb13-\ufb17" }, { name: "Avestan", - astral: "[--]" + astral: "\ud802[\udf00-\udf35\udf39-\udf3f]" }, { name: "Balinese", - bmp: "ᬀ-ᭋ᭐-᭼" + bmp: "\u1b00-\u1b4b\u1b50-\u1b7c" }, { name: "Bamum", - bmp: "ꚠ-꛷", - astral: "[-]" + bmp: "\ua6a0-\ua6f7", + astral: "\ud81a[\udc00-\ude38]" }, { name: "Batak", - bmp: "ᯀ-᯳᯼-᯿" + bmp: "\u1bc0-\u1bf3\u1bfc-\u1bff" }, { name: "Bengali", - bmp: "ঁ-ঃঅ-ঌএঐও-নপ-রলশ-হ়-ৄেৈো-ৎৗড়ঢ়য়-ৣ০-৻" + bmp: "\u0981-\u0983\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bc-\u09c4\u09c7\u09c8\u09cb-\u09ce\u09d7\u09dc\u09dd\u09df-\u09e3\u09e6-\u09fb" }, { name: "Bopomofo", - bmp: "˪˫ㄅ-ㄭㆠ-ㆺ" + bmp: "\u02ea\u02eb\u3105-\u312d\u31a0-\u31ba" }, { name: "Brahmi", - astral: "[--]" + astral: "\ud804[\udc00-\udc4d\udc52-\udc6f]" }, { name: "Braille", - bmp: "⠀-⣿" + bmp: "\u2800-\u28ff" }, { name: "Buginese", - bmp: "ᨀ-ᨛ᨞᨟" + bmp: "\u1a00-\u1a1b\u1a1e\u1a1f" }, { name: "Buhid", - bmp: "ᝀ-ᝓ" + bmp: "\u1740-\u1753" }, { name: "Canadian_Aboriginal", - bmp: "᐀-ᙿᢰ-ᣵ" + bmp: "\u1400-\u167f\u18b0-\u18f5" }, { name: "Carian", - astral: "[-]" + astral: "\ud800[\udea0-\uded0]" }, { name: "Chakma", - astral: "[--]" + astral: "\ud804[\udd00-\udd34\udd36-\udd43]" }, { name: "Cham", - bmp: "ꨀ-ꨶꩀ-ꩍ꩐-꩙꩜-꩟" + bmp: "\uaa00-\uaa36\uaa40-\uaa4d\uaa50-\uaa59\uaa5c-\uaa5f" }, { name: "Cherokee", - bmp: "Ꭰ-Ᏼ" + bmp: "\u13a0-\u13f4" }, { name: "Common", - bmp: "\x00-@\\x5B-`\\x7B-©«-¹»-¿×÷ʹ-˟˥-˩ˬ-˿ʹ;΅·։،؛؟ـ٠-٩۝।॥฿࿕-࿘჻᛫-᛭᜵᜶᠂᠃᠅᳓᳡ᳩ-ᳬᳮ-ᳳᳵᳶ -​‎-⁤-⁰⁴-⁾₀-₎₠-₺℀-℥℧-℩ℬ-ℱℳ-⅍⅏-⅟↉←-⏳␀-␦⑀-⑊①-⛿✁-⟿⤀-⭌⭐-⭙⸀-⸻⿰-⿻ -〄〆〈-〠〰-〷〼-〿゛゜゠・ー㆐-㆟㇀-㇣㈠-㉟㉿-㋏㍘-㏿䷀-䷿꜀-꜡ꞈ-꞊꠰-꠹﴾﴿﷽︐-︙︰-﹒﹔-﹦﹨-﹫!-@[-`{-・ー゙゚¢-₩│-○-�", - astral: "[-----]|[--------------------]|[-]|[----------------]|[--------]|[----------]" + bmp: "\x00-@\\x5B-`\\x7B-\xa9\xab-\xb9\xbb-\xbf\xd7\xf7\u02b9-\u02df\u02e5-\u02e9\u02ec-\u02ff\u0374\u037e\u0385\u0387\u0589\u060c\u061b\u061f\u0640\u0660-\u0669\u06dd\u0964\u0965\u0e3f\u0fd5-\u0fd8\u10fb\u16eb-\u16ed\u1735\u1736\u1802\u1803\u1805\u1cd3\u1ce1\u1ce9-\u1cec\u1cee-\u1cf3\u1cf5\u1cf6\u2000-\u200b\u200e-\u2064\u206a-\u2070\u2074-\u207e\u2080-\u208e\u20a0-\u20ba\u2100-\u2125\u2127-\u2129\u212c-\u2131\u2133-\u214d\u214f-\u215f\u2189\u2190-\u23f3\u2400-\u2426\u2440-\u244a\u2460-\u26ff\u2701-\u27ff\u2900-\u2b4c\u2b50-\u2b59\u2e00-\u2e3b\u2ff0-\u2ffb\u3000-\u3004\u3006\u3008-\u3020\u3030-\u3037\u303c-\u303f\u309b\u309c\u30a0\u30fb\u30fc\u3190-\u319f\u31c0-\u31e3\u3220-\u325f\u327f-\u32cf\u3358-\u33ff\u4dc0-\u4dff\ua700-\ua721\ua788-\ua78a\ua830-\ua839\ufd3e\ufd3f\ufdfd\ufe10-\ufe19\ufe30-\ufe52\ufe54-\ufe66\ufe68-\ufe6b\ufeff\uff01-\uff20\uff3b-\uff40\uff5b-\uff65\uff70\uff9e\uff9f\uffe0-\uffe6\uffe8-\uffee\ufff9-\ufffd", + astral: "\ud800[\udd00-\udd02\udd07-\udd33\udd37-\udd3f\udd90-\udd9b\uddd0-\uddfc]|\ud83c[\udc00-\udc2b\udc30-\udc93\udca0-\udcae\udcb1-\udcbe\udcc1-\udccf\udcd1-\udcdf\udd00-\udd0a\udd10-\udd2e\udd30-\udd6b\udd70-\udd9a\udde6-\uddff\ude01\ude02\ude10-\ude3a\ude40-\ude48\ude50\ude51\udf00-\udf20\udf30-\udf35\udf37-\udf7c\udf80-\udf93\udfa0-\udfc4\udfc6-\udfca\udfe0-\udff0]|\udb40[\udc01\udc20-\udc7f]|\ud835[\udc00-\udc54\udc56-\udc9c\udc9e\udc9f\udca2\udca5\udca6\udca9-\udcac\udcae-\udcb9\udcbb\udcbd-\udcc3\udcc5-\udd05\udd07-\udd0a\udd0d-\udd14\udd16-\udd1c\udd1e-\udd39\udd3b-\udd3e\udd40-\udd44\udd46\udd4a-\udd50\udd52-\udea5\udea8-\udfcb\udfce-\udfff]|\ud834[\udc00-\udcf5\udd00-\udd26\udd29-\udd66\udd6a-\udd7a\udd83\udd84\udd8c-\udda9\uddae-\udddd\udf00-\udf56\udf60-\udf71]|\ud83d[\udc00-\udc3e\udc40\udc42-\udcf7\udcf9-\udcfc\udd00-\udd3d\udd40-\udd43\udd50-\udd67\uddfb-\ude40\ude45-\ude4f\ude80-\udec5\udf00-\udf73]" }, { name: "Coptic", - bmp: "Ϣ-ϯⲀ-ⳳ⳹-⳿" + bmp: "\u03e2-\u03ef\u2c80-\u2cf3\u2cf9-\u2cff" }, { name: "Cuneiform", - astral: "[--]|[-]" + astral: "\ud809[\udc00-\udc62\udc70-\udc73]|\ud808[\udc00-\udf6e]" }, { name: "Cypriot", - astral: "[--]" + astral: "\ud802[\udc00-\udc05\udc08\udc0a-\udc35\udc37\udc38\udc3c\udc3f]" }, { name: "Cyrillic", - bmp: "Ѐ-҄҇-ԧᴫᵸⷠ-ⷿꙀ-ꚗꚟ" + bmp: "\u0400-\u0484\u0487-\u0527\u1d2b\u1d78\u2de0-\u2dff\ua640-\ua697\ua69f" }, { name: "Deseret", - astral: "[-]" + astral: "\ud801[\udc00-\udc4f]" }, { name: "Devanagari", - bmp: "ऀ-ॐ॓-ॣ०-ॷॹ-ॿ꣠-ꣻ" + bmp: "\u0900-\u0950\u0953-\u0963\u0966-\u0977\u0979-\u097f\ua8e0-\ua8fb" }, { name: "Egyptian_Hieroglyphs", - astral: "[-]|[-]" + astral: "\ud80c[\udc00-\udfff]|\ud80d[\udc00-\udc2e]" }, { name: "Ethiopic", - bmp: "ሀ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚ፝-፼ᎀ-᎙ⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮ" + bmp: "\u1200-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u135d-\u137c\u1380-\u1399\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e" }, { name: "Georgian", - bmp: "Ⴀ-ჅჇჍა-ჺჼ-ჿⴀ-ⴥⴧⴭ" + bmp: "\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u10ff\u2d00-\u2d25\u2d27\u2d2d" }, { name: "Glagolitic", - bmp: "Ⰰ-Ⱞⰰ-ⱞ" + bmp: "\u2c00-\u2c2e\u2c30-\u2c5e" }, { name: "Gothic", - astral: "[-]" + astral: "\ud800[\udf30-\udf4a]" }, { name: "Greek", - bmp: "Ͱ-ͳ͵-ͷͺ-ͽ΄ΆΈ-ΊΌΎ-ΡΣ-ϡϰ-Ͽᴦ-ᴪᵝ-ᵡᵦ-ᵪᶿἀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ῄῆ-ΐῖ-Ί῝-`ῲ-ῴῶ-῾Ω", - astral: "[-]|[-]" + bmp: "\u0370-\u0373\u0375-\u0377\u037a-\u037d\u0384\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03e1\u03f0-\u03ff\u1d26-\u1d2a\u1d5d-\u1d61\u1d66-\u1d6a\u1dbf\u1f00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fc4\u1fc6-\u1fd3\u1fd6-\u1fdb\u1fdd-\u1fef\u1ff2-\u1ff4\u1ff6-\u1ffe\u2126", + astral: "\ud834[\ude00-\ude45]|\ud800[\udd40-\udd8a]" }, { name: "Gujarati", - bmp: "ઁ-ઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હ઼-ૅે-ૉો-્ૐૠ-ૣ૦-૱" + bmp: "\u0a81-\u0a83\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abc-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ad0\u0ae0-\u0ae3\u0ae6-\u0af1" }, { name: "Gurmukhi", - bmp: "ਁ-ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹ਼ਾ-ੂੇੈੋ-੍ੑਖ਼-ੜਫ਼੦-ੵ" + bmp: "\u0a01-\u0a03\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a59-\u0a5c\u0a5e\u0a66-\u0a75" }, { name: "Han", - bmp: "⺀-⺙⺛-⻳⼀-⿕々〇〡-〩〸-〻㐀-䶵一-鿌豈-舘並-龎", - astral: "[--][-]|[--]|[-]|[--]|[-]" + bmp: "\u2e80-\u2e99\u2e9b-\u2ef3\u2f00-\u2fd5\u3005\u3007\u3021-\u3029\u3038-\u303b\u3400-\u4db5\u4e00-\u9fcc\uf900-\ufa6d\ufa70-\ufad9", + astral: "[\ud840-\ud868\ud86a-\ud86c][\udc00-\udfff]|\ud86d[\udc00-\udf34\udf40-\udfff]|\ud86e[\udc00-\udc1d]|\ud869[\udc00-\uded6\udf00-\udfff]|\ud87e[\udc00-\ude1d]" }, { name: "Hangul", - bmp: "ᄀ-ᇿ〮〯ㄱ-ㆎ㈀-㈞㉠-㉾ꥠ-ꥼ가-힣ힰ-ퟆퟋ-ퟻᅠ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ" + bmp: "\u1100-\u11ff\u302e\u302f\u3131-\u318e\u3200-\u321e\u3260-\u327e\ua960-\ua97c\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uffa0-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc" }, { name: "Hanunoo", - bmp: "ᜠ-᜴" + bmp: "\u1720-\u1734" }, { name: "Hebrew", - bmp: "֑-ׇא-תװ-״יִ-זּטּ-לּמּנּסּףּפּצּ-ﭏ" + bmp: "\u0591-\u05c7\u05d0-\u05ea\u05f0-\u05f4\ufb1d-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufb4f" }, { name: "Hiragana", - bmp: "ぁ-ゖゝ-ゟ", - astral: "𛀁|🈀" + bmp: "\u3041-\u3096\u309d-\u309f", + astral: "\ud82c\udc01|\ud83c\ude00" }, { name: "Imperial_Aramaic", - astral: "[--]" + astral: "\ud802[\udc40-\udc55\udc57-\udc5f]" }, { name: "Inherited", - bmp: "̀-ًͯ҅҆-ٰٕ॒॑᳐-᳔᳒-᳢᳠-᳨᳭᳴᷀-ᷦ᷼-᷿‌‍⃐-〪⃰-゙゚〭︀-️︠-︦", - astral: "[----]|𐇽|[-]" + bmp: "\u0300-\u036f\u0485\u0486\u064b-\u0655\u0670\u0951\u0952\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1cf4\u1dc0-\u1de6\u1dfc-\u1dff\u200c\u200d\u20d0-\u20f0\u302a-\u302d\u3099\u309a\ufe00-\ufe0f\ufe20-\ufe26", + astral: "\ud834[\udd67-\udd69\udd7b-\udd82\udd85-\udd8b\uddaa-\uddad]|\ud800\uddfd|\udb40[\udd00-\uddef]" }, { name: "Inscriptional_Pahlavi", - astral: "[--]" + astral: "\ud802[\udf60-\udf72\udf78-\udf7f]" }, { name: "Inscriptional_Parthian", - astral: "[--]" + astral: "\ud802[\udf40-\udf55\udf58-\udf5f]" }, { name: "Javanese", - bmp: "ꦀ-꧍ꧏ-꧙꧞꧟" + bmp: "\ua980-\ua9cd\ua9cf-\ua9d9\ua9de\ua9df" }, { name: "Kaithi", - astral: "[-]" + astral: "\ud804[\udc80-\udcc1]" }, { name: "Kannada", - bmp: "ಂಃಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹ಼-ೄೆ-ೈೊ-್ೕೖೞೠ-ೣ೦-೯ೱೲ" + bmp: "\u0c82\u0c83\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbc-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0cde\u0ce0-\u0ce3\u0ce6-\u0cef\u0cf1\u0cf2" }, { name: "Katakana", - bmp: "ァ-ヺヽ-ヿㇰ-ㇿ㋐-㋾㌀-㍗ヲ-ッア-ン", - astral: "𛀀" + bmp: "\u30a1-\u30fa\u30fd-\u30ff\u31f0-\u31ff\u32d0-\u32fe\u3300-\u3357\uff66-\uff6f\uff71-\uff9d", + astral: "\ud82c\udc00" }, { name: "Kayah_Li", - bmp: "꤀-꤯" + bmp: "\ua900-\ua92f" }, { name: "Kharoshthi", - astral: "[-------]" + astral: "\ud802[\ude00-\ude03\ude05\ude06\ude0c-\ude13\ude15-\ude17\ude19-\ude33\ude38-\ude3a\ude3f-\ude47\ude50-\ude58]" }, { name: "Khmer", - bmp: "ក-៝០-៩៰-៹᧠-᧿" + bmp: "\u1780-\u17dd\u17e0-\u17e9\u17f0-\u17f9\u19e0-\u19ff" }, { name: "Lao", - bmp: "ກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ູົ-ຽເ-ໄໆ່-ໍ໐-໙ໜ-ໟ" + bmp: "\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb9\u0ebb-\u0ebd\u0ec0-\u0ec4\u0ec6\u0ec8-\u0ecd\u0ed0-\u0ed9\u0edc-\u0edf" }, { name: "Latin", - bmp: "A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞎꞐ-ꞓꞠ-Ɦꟸ-ꟿff-stA-Za-z" + bmp: "A-Za-z\xaa\xba\xc0-\xd6\xd8-\xf6\xf8-\u02b8\u02e0-\u02e4\u1d00-\u1d25\u1d2c-\u1d5c\u1d62-\u1d65\u1d6b-\u1d77\u1d79-\u1dbe\u1e00-\u1eff\u2071\u207f\u2090-\u209c\u212a\u212b\u2132\u214e\u2160-\u2188\u2c60-\u2c7f\ua722-\ua787\ua78b-\ua78e\ua790-\ua793\ua7a0-\ua7aa\ua7f8-\ua7ff\ufb00-\ufb06\uff21-\uff3a\uff41-\uff5a" }, { name: "Lepcha", - bmp: "ᰀ-᰷᰻-᱉ᱍ-ᱏ" + bmp: "\u1c00-\u1c37\u1c3b-\u1c49\u1c4d-\u1c4f" }, { name: "Limbu", - bmp: "ᤀ-ᤜᤠ-ᤫᤰ-᤻᥀᥄-᥏" + bmp: "\u1900-\u191c\u1920-\u192b\u1930-\u193b\u1940\u1944-\u194f" }, { name: "Linear_B", - astral: "[------]" + astral: "\ud800[\udc00-\udc0b\udc0d-\udc26\udc28-\udc3a\udc3c\udc3d\udc3f-\udc4d\udc50-\udc5d\udc80-\udcfa]" }, { name: "Lisu", - bmp: "ꓐ-꓿" + bmp: "\ua4d0-\ua4ff" }, { name: "Lycian", - astral: "[-]" + astral: "\ud800[\ude80-\ude9c]" }, { name: "Lydian", - astral: "[-]" + astral: "\ud802[\udd20-\udd39\udd3f]" }, { name: "Malayalam", - bmp: "ംഃഅ-ഌഎ-ഐഒ-ഺഽ-ൄെ-ൈൊ-ൎൗൠ-ൣ൦-൵൹-ൿ" + bmp: "\u0d02\u0d03\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d-\u0d44\u0d46-\u0d48\u0d4a-\u0d4e\u0d57\u0d60-\u0d63\u0d66-\u0d75\u0d79-\u0d7f" }, { name: "Mandaic", - bmp: "ࡀ-࡛࡞" + bmp: "\u0840-\u085b\u085e" }, { name: "Meetei_Mayek", - bmp: "ꫠ-꫶ꯀ-꯭꯰-꯹" + bmp: "\uaae0-\uaaf6\uabc0-\uabed\uabf0-\uabf9" }, { name: "Meroitic_Cursive", - astral: "[-]" + astral: "\ud802[\udda0-\uddb7\uddbe\uddbf]" }, { name: "Meroitic_Hieroglyphs", - astral: "[-]" + astral: "\ud802[\udd80-\udd9f]" }, { name: "Miao", - astral: "[---]" + astral: "\ud81b[\udf00-\udf44\udf50-\udf7e\udf8f-\udf9f]" }, { name: "Mongolian", - bmp: "᠀᠁᠄᠆-᠎᠐-᠙ᠠ-ᡷᢀ-ᢪ" + bmp: "\u1800\u1801\u1804\u1806-\u180e\u1810-\u1819\u1820-\u1877\u1880-\u18aa" }, { name: "Myanmar", - bmp: "က-႟ꩠ-ꩻ" + bmp: "\u1000-\u109f\uaa60-\uaa7b" }, { name: "New_Tai_Lue", - bmp: "ᦀ-ᦫᦰ-ᧉ᧐-᧚᧞᧟" + bmp: "\u1980-\u19ab\u19b0-\u19c9\u19d0-\u19da\u19de\u19df" }, { name: "Nko", - bmp: "߀-ߺ" + bmp: "\u07c0-\u07fa" }, { name: "Ogham", - bmp: " -᚜" + bmp: "\u1680-\u169c" }, { name: "Ol_Chiki", - bmp: "᱐-᱿" + bmp: "\u1c50-\u1c7f" }, { name: "Old_Italic", - astral: "[--]" + astral: "\ud800[\udf00-\udf1e\udf20-\udf23]" }, { name: "Old_Persian", - astral: "[--]" + astral: "\ud800[\udfa0-\udfc3\udfc8-\udfd5]" }, { name: "Old_South_Arabian", - astral: "[-]" + astral: "\ud802[\ude60-\ude7f]" }, { name: "Old_Turkic", - astral: "[-]" + astral: "\ud803[\udc00-\udc48]" }, { name: "Oriya", - bmp: "ଁ-ଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହ଼-ୄେୈୋ-୍ୖୗଡ଼ଢ଼ୟ-ୣ୦-୷" + bmp: "\u0b01-\u0b03\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3c-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b56\u0b57\u0b5c\u0b5d\u0b5f-\u0b63\u0b66-\u0b77" }, { name: "Osmanya", - astral: "[--]" + astral: "\ud801[\udc80-\udc9d\udca0-\udca9]" }, { name: "Phags_Pa", - bmp: "ꡀ-꡷" + bmp: "\ua840-\ua877" }, { name: "Phoenician", - astral: "[-]" + astral: "\ud802[\udd00-\udd1b\udd1f]" }, { name: "Rejang", - bmp: "ꤰ-꥓꥟" + bmp: "\ua930-\ua953\ua95f" }, { name: "Runic", - bmp: "ᚠ-ᛪᛮ-ᛰ" + bmp: "\u16a0-\u16ea\u16ee-\u16f0" }, { name: "Samaritan", - bmp: "ࠀ-࠭࠰-࠾" + bmp: "\u0800-\u082d\u0830-\u083e" }, { name: "Saurashtra", - bmp: "ꢀ-꣄꣎-꣙" + bmp: "\ua880-\ua8c4\ua8ce-\ua8d9" }, { name: "Sharada", - astral: "[--]" + astral: "\ud804[\udd80-\uddc8\uddd0-\uddd9]" }, { name: "Shavian", - astral: "[-]" + astral: "\ud801[\udc50-\udc7f]" }, { name: "Sinhala", - bmp: "ංඃඅ-ඖක-නඳ-රලව-ෆ්ා-ුූෘ-ෟෲ-෴" + bmp: "\u0d82\u0d83\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0df2-\u0df4" }, { name: "Sora_Sompeng", - astral: "[--]" + astral: "\ud804[\udcd0-\udce8\udcf0-\udcf9]" }, { name: "Sundanese", - bmp: "ᮀ-ᮿ᳀-᳇" + bmp: "\u1b80-\u1bbf\u1cc0-\u1cc7" }, { name: "Syloti_Nagri", - bmp: "ꠀ-꠫" + bmp: "\ua800-\ua82b" }, { name: "Syriac", - bmp: "܀-܍܏-݊ݍ-ݏ" + bmp: "\u0700-\u070d\u070f-\u074a\u074d-\u074f" }, { name: "Tagalog", - bmp: "ᜀ-ᜌᜎ-᜔" + bmp: "\u1700-\u170c\u170e-\u1714" }, { name: "Tagbanwa", - bmp: "ᝠ-ᝬᝮ-ᝰᝲᝳ" + bmp: "\u1760-\u176c\u176e-\u1770\u1772\u1773" }, { name: "Tai_Le", - bmp: "ᥐ-ᥭᥰ-ᥴ" + bmp: "\u1950-\u196d\u1970-\u1974" }, { name: "Tai_Tham", - bmp: "ᨠ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪠-᪭" + bmp: "\u1a20-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1aa0-\u1aad" }, { name: "Tai_Viet", - bmp: "ꪀ-ꫂꫛ-꫟" + bmp: "\uaa80-\uaac2\uaadb-\uaadf" }, { name: "Takri", - astral: "[--]" + astral: "\ud805[\ude80-\udeb7\udec0-\udec9]" }, { name: "Tamil", - bmp: "ஂஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹா-ூெ-ைொ-்ௐௗ௦-௺" + bmp: "\u0b82\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd0\u0bd7\u0be6-\u0bfa" }, { name: "Telugu", - bmp: "ఁ-ఃఅ-ఌఎ-ఐఒ-నప-ళవ-హఽ-ౄె-ైొ-్ౕౖౘౙౠ-ౣ౦-౯౸-౿" + bmp: "\u0c01-\u0c03\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c33\u0c35-\u0c39\u0c3d-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c58\u0c59\u0c60-\u0c63\u0c66-\u0c6f\u0c78-\u0c7f" }, { name: "Thaana", - bmp: "ހ-ޱ" + bmp: "\u0780-\u07b1" }, { name: "Thai", - bmp: "ก-ฺเ-๛" + bmp: "\u0e01-\u0e3a\u0e40-\u0e5b" }, { name: "Tibetan", - bmp: "ༀ-ཇཉ-ཬཱ-ྗྙ-ྼ྾-࿌࿎-࿔࿙࿚" + bmp: "\u0f00-\u0f47\u0f49-\u0f6c\u0f71-\u0f97\u0f99-\u0fbc\u0fbe-\u0fcc\u0fce-\u0fd4\u0fd9\u0fda" }, { name: "Tifinagh", - bmp: "ⴰ-ⵧⵯ⵰⵿" + bmp: "\u2d30-\u2d67\u2d6f\u2d70\u2d7f" }, { name: "Ugaritic", - astral: "[-]" + astral: "\ud800[\udf80-\udf9d\udf9f]" }, { name: "Vai", - bmp: "ꔀ-ꘫ" + bmp: "\ua500-\ua62b" }, { name: "Yi", - bmp: "ꀀ-ꒌ꒐-꓆" + bmp: "\ua000-\ua48c\ua490-\ua4c6" } ]); }(e), e; }), function(e, t) { @@ -6277,8 +6277,8 @@ function diff_match_patch() { t = t || { guess: !0 }; - var n = t.e || null, i = !!t.guess, r = new e.implementation(), o = r.run(n); - return i ? r.guessAnonymousFunctions(o) : o; + var n = t.e || null, i = !!t.guess, r = t.mode || null, o = new e.implementation(), a = o.run(n, r); + return i ? o.guessAnonymousFunctions(a) : a; } return e.implementation = function() {}, e.implementation.prototype = { run: function(e, t) { @@ -6292,7 +6292,7 @@ function diff_match_patch() { } }, mode: function(e) { - return e.arguments && e.stack ? "chrome" : e.stack && e.sourceURL ? "safari" : e.stack && e.number ? "ie" : e.stack && e.fileName ? "firefox" : e.message && e["opera#sourceloc"] ? e.stacktrace ? e.message.indexOf("\n") > -1 && e.message.split("\n").length > e.stacktrace.split("\n").length ? "opera9" : "opera10a" : "opera9" : e.message && e.stack && e.stacktrace ? e.stacktrace.indexOf("called from line") < 0 ? "opera10b" : "opera11" : e.stack && !e.fileName ? "chrome" : "other"; + return "undefined" != typeof window && window.navigator.userAgent.indexOf("PhantomJS") > -1 ? "phantomjs" : e.arguments && e.stack ? "chrome" : e.stack && e.sourceURL ? "safari" : e.stack && e.number ? "ie" : e.stack && e.fileName ? "firefox" : e.message && e["opera#sourceloc"] ? e.stacktrace ? e.message.indexOf("\n") > -1 && e.message.split("\n").length > e.stacktrace.split("\n").length ? "opera9" : "opera10a" : "opera9" : e.message && e.stack && e.stacktrace ? e.stacktrace.indexOf("called from line") < 0 ? "opera10b" : "opera11" : e.stack && !e.fileName ? "chrome" : "other"; }, instrumentFunction: function(t, n, i) { t = t || window; @@ -6354,6 +6354,14 @@ function diff_match_patch() { } return r; }, + phantomjs: function(e) { + for (var t = "{anonymous}", n = /(\S+) \((\S+)\)/i, i = e.stack.split("\n"), r = [], o = 1, a = i.length; a > o; o++) { + i[o] = i[o].replace(/^\s+at\s+/gm, ""); + var s = n.exec(i[o]); + r.push(s ? s[1] + "()@" + s[2] : t + "()@" + i[o]); + } + return r; + }, other: function(e) { for (var t, n, i = "{anonymous}", r = /function(?:\s+([\w$]+))?\s*\(/, o = [], a = 10, s = Array.prototype.slice; e && o.length < a; ) { t = r.test(e.toString()) ? RegExp.$1 || i : i; @@ -6448,16 +6456,18 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen if ("undefined" == typeof navigator || !/MSIE [1-9]\./.test(navigator.userAgent)) { var t = e.document, n = function() { return e.URL || e.webkitURL || e; - }, i = e.URL || e.webkitURL || e, r = t.createElementNS("http://www.w3.org/1999/xhtml", "a"), o = !e.externalHost && "download" in r, a = e.webkitRequestFileSystem, s = e.requestFileSystem || a || e.mozRequestFileSystem, l = function(t) { + }, i = t.createElementNS("http://www.w3.org/1999/xhtml", "a"), r = "download" in i, o = function(n) { + var i = t.createEvent("MouseEvents"); + i.initMouseEvent("click", !0, !1, e, 0, 0, 0, 0, 0, !1, !1, !1, !1, 0, null), n.dispatchEvent(i); + }, a = e.webkitRequestFileSystem, s = e.requestFileSystem || a || e.mozRequestFileSystem, l = function(t) { (e.setImmediate || e.setTimeout)(function() { throw t; }, 0); - }, c = "application/octet-stream", u = 0, d = [], p = function() { - for (var e = d.length; e--; ) { - var t = d[e]; - "string" == typeof t ? i.revokeObjectURL(t) : t.remove(); - } - d.length = 0; + }, c = "application/octet-stream", u = 0, d = 500, p = function(t) { + var i = function() { + "string" == typeof t ? n().revokeObjectURL(t) : t.remove(); + }; + e.chrome ? i() : setTimeout(i, d); }, h = function(e, t, n) { t = [].concat(t); for (var i = t.length; i--; ) { @@ -6468,59 +6478,53 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen l(o); } } - }, f = function(i, l) { - var p, f, m, g = this, v = i.type, b = !1, y = function() { - var e = n().createObjectURL(i); - return d.push(e), e; - }, x = function() { + }, f = function(t, l) { + var d, f, m, g = this, v = t.type, b = !1, y = function() { h(g, "writestart progress write writeend".split(" ")); - }, w = function() { - (b || !p) && (p = y(i)), f ? f.location.href = p : window.open(p, "_blank"), g.readyState = g.DONE, - x(); - }, S = function(e) { + }, x = function() { + if ((b || !d) && (d = n().createObjectURL(t)), f) f.location.href = d; else { + var i = e.open(d, "_blank"); + void 0 == i && "undefined" != typeof safari && (e.location.href = d); + } + g.readyState = g.DONE, y(), p(d); + }, w = function(e) { return function() { return g.readyState !== g.DONE ? e.apply(this, arguments) : void 0; }; - }, C = { + }, S = { create: !0, exclusive: !1 }; - if (g.readyState = g.INIT, l || (l = "download"), o) { - p = y(i), t = e.document, r = t.createElementNS("http://www.w3.org/1999/xhtml", "a"), - r.href = p, r.download = l; - var _ = t.createEvent("MouseEvents"); - return _.initMouseEvent("click", !0, !1, e, 0, 0, 0, 0, 0, !1, !1, !1, !1, 0, null), - r.dispatchEvent(_), g.readyState = g.DONE, void x(); - } - return e.chrome && v && v !== c && (m = i.slice || i.webkitSlice, i = m.call(i, 0, i.size, c), - b = !0), a && "download" !== l && (l += ".download"), (v === c || a) && (f = e), - s ? (u += i.size, void s(e.TEMPORARY, u, S(function(e) { - e.root.getDirectory("saved", C, S(function(e) { - var t = function() { - e.getFile(l, C, S(function(e) { - e.createWriter(S(function(t) { - t.onwriteend = function(t) { - f.location.href = e.toURL(), d.push(e), g.readyState = g.DONE, h(g, "writeend", t); - }, t.onerror = function() { - var e = t.error; - e.code !== e.ABORT_ERR && w(); + return g.readyState = g.INIT, l || (l = "download"), r ? (d = n().createObjectURL(t), + i.href = d, i.download = l, o(i), g.readyState = g.DONE, y(), void p(d)) : (e.chrome && v && v !== c && (m = t.slice || t.webkitSlice, + t = m.call(t, 0, t.size, c), b = !0), a && "download" !== l && (l += ".download"), + (v === c || a) && (f = e), s ? (u += t.size, void s(e.TEMPORARY, u, w(function(e) { + e.root.getDirectory("saved", S, w(function(e) { + var n = function() { + e.getFile(l, S, w(function(e) { + e.createWriter(w(function(n) { + n.onwriteend = function(t) { + f.location.href = e.toURL(), g.readyState = g.DONE, h(g, "writeend", t), p(e); + }, n.onerror = function() { + var e = n.error; + e.code !== e.ABORT_ERR && x(); }, "writestart progress write abort".split(" ").forEach(function(e) { - t["on" + e] = g["on" + e]; - }), t.write(i), g.abort = function() { - t.abort(), g.readyState = g.DONE; + n["on" + e] = g["on" + e]; + }), n.write(t), g.abort = function() { + n.abort(), g.readyState = g.DONE; }, g.readyState = g.WRITING; - }), w); - }), w); + }), x); + }), x); }; e.getFile(l, { create: !1 - }, S(function(e) { - e.remove(), t(); - }), S(function(e) { - e.code === e.NOT_FOUND_ERR ? t() : w(); + }, w(function(e) { + e.remove(), n(); + }), w(function(e) { + e.code === e.NOT_FOUND_ERR ? n() : x(); })); - }), w); - }), w)) : void w(); + }), x); + }), x)) : void x()); }, m = f.prototype, g = function(e, t) { return new f(e, t); }; @@ -6528,13 +6532,11 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen var e = this; e.readyState = e.DONE, h(e, "abort"); }, m.readyState = m.INIT = 0, m.WRITING = 1, m.DONE = 2, m.error = m.onwritestart = m.onprogress = m.onwrite = m.onabort = m.onerror = m.onwriteend = null, - e.addEventListener("unload", p, !1), g.unload = function() { - p(), e.removeEventListener("unload", p, !1); - }, g; + g; } }("undefined" != typeof self && self || "undefined" != typeof window && window || this.content); -"undefined" != typeof module && null !== module ? module.exports = saveAs : "undefined" != typeof define && null !== define && null != define.amd && define("FileSaver", [], function() { +"undefined" != typeof module && module.exports ? module.exports.saveAs = saveAs : "undefined" != typeof define && null !== define && null != define.amd && define("FileSaver", [], function() { return saveAs; }), define("utils", [ "jquery", "underscore", "storage", "crel", "xregexp", "stacktrace", "FileSaver" ], function($, _, storage, crel, XRegExp, printStackTrace, saveAs) { function jqElt(e) { @@ -6759,7 +6761,7 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen '"': """, "'": "'", "/": "/", - " ": " " + "\xa0": " " }; utils.escape = function(e) { return String(e).replace(/[&<"'\/\u00a0]/g, function(e) { @@ -6888,7 +6890,7 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen }, utils; }), define("constants", [], function() { var e = {}; - return e.VERSION = "4.3.8", e.MAIN_URL = "https://stackedit.io/", e.GOOGLE_ANALYTICS_ACCOUNT_ID = "UA-39556145-1", + return e.VERSION = "4.3.9", e.MAIN_URL = "https://stackedit.io/", e.GOOGLE_ANALYTICS_ACCOUNT_ID = "UA-39556145-1", e.GOOGLE_API_KEY = "AIzaSyAeCU8CGcSkn0z9js6iocHuPBX4f_mMWkw", e.GOOGLE_DRIVE_APP_ID = "241271498917", e.DROPBOX_APP_KEY = "lq6mwopab8wskas", e.DROPBOX_APP_SECRET = "851fgnucpezy84t", e.DROPBOX_RESTRICTED_APP_KEY = "sw0hlixhr8q1xk0", e.DROPBOX_RESTRICTED_APP_SECRET = "1r808p2xygs6lbg", @@ -7179,7 +7181,7 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen }), define("text", [ "module" ], function(e) { var t, n, i, r, o, a = [ "Msxml2.XMLHTTP", "Microsoft.XMLHTTP", "Msxml2.XMLHTTP.4.0" ], s = /^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im, l = /]*>\s*([\s\S]+)\s*<\/body>/im, c = "undefined" != typeof location && location.href, u = c && location.protocol && location.protocol.replace(/\:/, ""), d = c && location.hostname, p = c && (location.port || void 0), h = {}, f = e.config && e.config() || {}; return t = { - version: "2.0.12", + version: "2.0.13", strip: function(e) { if (e) { e = e.replace(s, ""); @@ -7207,8 +7209,8 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen return e; }, parseName: function(e) { - var t, n, i, r = !1, o = e.indexOf("."), a = 0 === e.indexOf("./") || 0 === e.indexOf("../"); - return -1 !== o && (!a || o > 1) ? (t = e.substring(0, o), n = e.substring(o + 1, e.length)) : t = e, + var t, n, i, r = !1, o = e.lastIndexOf("."), a = 0 === e.indexOf("./") || 0 === e.indexOf("../"); + return -1 !== o && (!a || o > 1) ? (t = e.substring(0, o), n = e.substring(o + 1)) : t = e, i = n || t, o = i.indexOf("!"), -1 !== o && (r = "strip" === i.substring(o + 1), i = i.substring(0, o), n ? n = i : t = i), { moduleName: t, @@ -7257,7 +7259,7 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen t.get = function(e, t, i) { try { var r = n.readFileSync(e, "utf8"); - 0 === r.indexOf("") && (r = r.substring(1)), t(r); + "\ufeff" === r[0] && (r = r.substring(1)), t(r); } catch (o) { i && i(o); } @@ -7437,7 +7439,7 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen if (this.isNumeric(e)) return "string" == typeof e ? "'" + e + "'" : parseFloat(e); if ("number" == typeof e) return 1/0 == e ? ".Inf" : e == -1/0 ? "-.Inf" : isNaN(e) ? ".NAN" : e; var t = new YamlEscaper(); - return t.requiresDoubleQuoting(e) ? t.escapeWithDoubleQuotes(e) : t.requiresSingleQuoting(e) ? t.escapeWithSingleQuotes(e) : "" == e ? "" : this.getTimestampRegex().test(e) ? "'" + e + "'" : this.inArray(e.toLowerCase(), [ "null", "~", "true", "false" ]) ? "'" + e + "'" : e; + return t.requiresDoubleQuoting(e) ? t.escapeWithDoubleQuotes(e) : t.requiresSingleQuoting(e) ? t.escapeWithSingleQuotes(e) : "" == e ? '""' : this.getTimestampRegex().test(e) ? "'" + e + "'" : this.inArray(e.toLowerCase(), [ "null", "~", "true", "false" ]) ? "'" + e + "'" : e; }, dumpObject: function(e) { var t, n = this.getKeys(e), i = null, r = n.length; @@ -7975,7 +7977,8 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen escapeWithSingleQuotes: function(e) { return "'" + e.replace(/'/g, "''") + "'"; } - }, YamlEscaper.REGEX_CHARACTER_TO_ESCAPE = "[\\x00-\\x1f]|…| |
|
", YamlEscaper.escapees = [ "\\\\", '\\"', '"', "\x00", "", "", "", "", "", "", "", "\b", " ", "\n", " ", "\f", "\r", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "…", " ", "
", "
" ], + }, YamlEscaper.REGEX_CHARACTER_TO_ESCAPE = "[\\x00-\\x1f]|\xc2\x85|\xc2\xa0|\xe2\x80\xa8|\xe2\x80\xa9", + YamlEscaper.escapees = [ "\\\\", '\\"', '"', "\x00", "", "", "", "", "", "", "", "\b", " ", "\n", " ", "\f", "\r", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "\xc2\x85", "\xc2\xa0", "\xe2\x80\xa8", "\xe2\x80\xa9" ], YamlEscaper.escaped = [ '\\"', "\\\\", '\\"', "\\0", "\\x01", "\\x02", "\\x03", "\\x04", "\\x05", "\\x06", "\\a", "\\b", "\\t", "\\n", "\\v", "\\f", "\\r", "\\x0e", "\\x0f", "\\x10", "\\x11", "\\x12", "\\x13", "\\x14", "\\x15", "\\x16", "\\x17", "\\x18", "\\x19", "\\x1a", "\\e", "\\x1c", "\\x1d", "\\x1e", "\\x1f", "\\N", "\\_", "\\L", "\\P" ]; var a = function() {}; a.prototype = { @@ -8033,10 +8036,10 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen return "\\"; case "N": - return "\x00…"; + return "\x00\x85"; case "_": - return "\x00 "; + return "\x00\xa0"; case "L": return " ("; @@ -8161,7 +8164,11 @@ var saveAs = saveAs || "undefined" != typeof navigator && navigator.msSaveOrOpen return o.onFileOpen = i, o.onContentChanged = i, o; }), define("text!html/markdownExtraSettingsBlock.html", [], function() { return '

Adds extra features to the original Markdown syntax.

\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n
\n \n
\n \n
\n
\n
\nMore info'; -}), window.PR_SHOULD_USE_CONTINUATION = !0; +}); + +var IN_GLOBAL_SCOPE = !0; + +window.PR_SHOULD_USE_CONTINUATION = !0; var prettyPrintOne, prettyPrint; @@ -8252,19 +8259,16 @@ var prettyPrintOne, prettyPrint; } function t(e, t) { function n(e) { - switch (e.nodeType) { - case 1: + var l = e.nodeType; + if (1 == l) { if (i.test(e.className)) return; - for (var l = e.firstChild; l; l = l.nextSibling) n(l); - var c = e.nodeName.toLowerCase(); - ("br" === c || "li" === c) && (r[s] = "\n", a[s << 1] = o++, a[s++ << 1 | 1] = e); - break; - - case 3: - case 4: - var u = e.nodeValue; - u.length && (u = t ? u.replace(/\r\n?/g, "\n") : u.replace(/[ \t\r\n]+/g, " "), - r[s] = u, a[s << 1] = o, o += u.length, a[s++ << 1 | 1] = e); + for (var c = e.firstChild; c; c = c.nextSibling) n(c); + var u = e.nodeName.toLowerCase(); + ("br" === u || "li" === u) && (r[s] = "\n", a[s << 1] = o++, a[s++ << 1 | 1] = e); + } else if (3 == l || 4 == l) { + var d = e.nodeValue; + d.length && (d = t ? d.replace(/\r\n?/g, "\n") : d.replace(/[ \t\r\n]+/g, " "), + r[s] = d, a[s << 1] = o, o += d.length, a[s++ << 1 | 1] = e); } } var i = /(?:^|\s)nocode(?:\s|$)/, r = [], o = 0, a = [], s = 0; @@ -8285,7 +8289,7 @@ var prettyPrintOne, prettyPrint; function i(e) { for (var t = void 0, n = e.firstChild; n; n = n.nextSibling) { var i = n.nodeType; - t = 1 === i ? t ? e : n : 3 === i && G.test(n.nodeValue) ? e : t; + t = 1 === i ? t ? e : n : 3 === i && H.test(n.nodeValue) ? e : t; } return t === e ? void 0 : t; } @@ -8301,7 +8305,7 @@ var prettyPrintOne, prettyPrint; a.push(/[\0-\uffff]/), r = e(a); }(); var a = i.length, s = function(e) { - for (var t = e.sourceCode, l = e.basePos, u = [ l, R ], d = 0, p = t.match(r) || [], h = {}, f = 0, m = p.length; m > f; ++f) { + for (var t = e.sourceCode, l = e.basePos, u = [ l, P ], d = 0, p = t.match(r) || [], h = {}, f = 0, m = p.length; m > f; ++f) { var g, v = p[f], b = h[v], y = void 0; if ("string" == typeof b) g = !1; else { var x = o[v.charAt(0)]; @@ -8310,10 +8314,10 @@ var prettyPrintOne, prettyPrint; b = x[0]; break; } - y || (b = R); + y || (b = P); } g = b.length >= 5 && "lang-" === b.substring(0, 5), !g || y && "string" == typeof y[1] || (g = !1, - b = O), g || (h[v] = b); + b = B), g || (h[v] = b); } var S = d; if (d += v.length, g) { @@ -8329,36 +8333,31 @@ var prettyPrintOne, prettyPrint; } function o(e) { var t = [], n = []; - t.push(e.tripleQuotedStrings ? [ I, /^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/, null, "'\"" ] : e.multiLineStrings ? [ I, /^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/, null, "'\"`" ] : [ I, /^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/, null, "\"'" ]), - e.verbatimStrings && n.push([ I, /^@\"(?:[^\"]|\"\")*(?:\"|$)/, null ]); + t.push(e.tripleQuotedStrings ? [ D, /^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/, null, "'\"" ] : e.multiLineStrings ? [ D, /^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/, null, "'\"`" ] : [ D, /^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/, null, "\"'" ]), + e.verbatimStrings && n.push([ D, /^@\"(?:[^\"]|\"\")*(?:\"|$)/, null ]); var i = e.hashComments; - if (i && (e.cStyleComments ? (t.push(i > 1 ? [ N, /^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/, null, "#" ] : [ N, /^#(?:(?:define|e(?:l|nd)if|else|error|ifn?def|include|line|pragma|undef|warning)\b|[^\r\n]*)/, null, "#" ]), - n.push([ I, /^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h(?:h|pp|\+\+)?|[a-z]\w*)>/, null ])) : t.push([ N, /^#[^\r\n]*/, null, "#" ])), - e.cStyleComments && (n.push([ N, /^\/\/[^\r\n]*/, null ]), n.push([ N, /^\/\*[\s\S]*?(?:\*\/|$)/, null ])), - e.regexLiterals) { - var o = "/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/"; - n.push([ "lang-regex", new RegExp("^" + q + "(" + o + ")") ]); + i && (e.cStyleComments ? (t.push(i > 1 ? [ M, /^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/, null, "#" ] : [ M, /^#(?:(?:define|e(?:l|nd)if|else|error|ifn?def|include|line|pragma|undef|warning)\b|[^\r\n]*)/, null, "#" ]), + n.push([ D, /^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h(?:h|pp|\+\+)?|[a-z]\w*)>/, null ])) : t.push([ M, /^#[^\r\n]*/, null, "#" ])), + e.cStyleComments && (n.push([ M, /^\/\/[^\r\n]*/, null ]), n.push([ M, /^\/\*[\s\S]*?(?:\*\/|$)/, null ])); + var o = e.regexLiterals; + if (o) { + var a = o > 1 ? "" : "\n\r", s = a ? "." : "[\\S\\s]", l = "/(?=[^/*" + a + "])(?:[^/\\x5B\\x5C" + a + "]|\\x5C" + s + "|\\x5B(?:[^\\x5C\\x5D" + a + "]|\\x5C" + s + ")*(?:\\x5D|$))+/"; + n.push([ "lang-regex", RegExp("^" + G + "(" + l + ")") ]); } - var a = e.types; - a && n.push([ M, a ]); - var s = ("" + e.keywords).replace(/^ | $/g, ""); - s.length && n.push([ D, new RegExp("^(?:" + s.replace(/[\s,]+/g, "|") + ")\\b"), null ]), - t.push([ R, /^\s+/, null, " \r\n  " ]); - var l = /^.[^\s\w\.$@\'\"\`\/\\]*/; - return n.push([ L, /^@[a-z_$][a-z_$@0-9]*/i, null ], [ M, /^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/, null ], [ R, /^[a-z_$][a-z_$@0-9]*/i, null ], [ L, new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*", "i"), null, "0123456789" ], [ R, /^\\[\s\S]?/, null ], [ A, l, null ]), + var c = e.types; + c && n.push([ L, c ]); + var u = ("" + e.keywords).replace(/^ | $/g, ""); + u.length && n.push([ N, new RegExp("^(?:" + u.replace(/[\s,]+/g, "|") + ")\\b"), null ]), + t.push([ P, /^\s+/, null, " \r\n \xa0" ]); + var d = "^.[^\\s\\w.$@'\"`/\\\\]*"; + return e.regexLiterals && (d += "(?!s*/)"), n.push([ A, /^@[a-z_$][a-z_$@0-9]*/i, null ], [ L, /^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/, null ], [ P, /^[a-z_$][a-z_$@0-9]*/i, null ], [ A, new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*", "i"), null, "0123456789" ], [ P, /^\\[\s\S]?/, null ], [ R, new RegExp(d), null ]), r(t, n); } function a(e, t, n) { function i(e) { - switch (e.nodeType) { - case 1: - if (o.test(e.className)) break; - if ("br" === e.nodeName) r(e), e.parentNode && e.parentNode.removeChild(e); else for (var t = e.firstChild; t; t = t.nextSibling) i(t); - break; - - case 3: - case 4: - if (n) { + var t = e.nodeType; + if (1 != t || o.test(e.className)) { + if ((3 == t || 4 == t) && n) { var l = e.nodeValue, c = l.match(a); if (c) { var u = l.substring(0, c.index); @@ -8371,7 +8370,7 @@ var prettyPrintOne, prettyPrint; r(e), u || e.parentNode.removeChild(e); } } - } + } else if ("br" === e.nodeName) r(e), e.parentNode && e.parentNode.removeChild(e); else for (var h = e.firstChild; h; h = h.nextSibling) i(h); } function r(e) { function t(e, n) { @@ -8393,7 +8392,7 @@ var prettyPrintOne, prettyPrint; var d = s.createElement("ol"); d.className = "linenums"; for (var p = Math.max(0, t - 1 | 0) || 0, u = 0, h = c.length; h > u; ++u) l = c[u], - l.className = "L" + (u + p) % 10, l.firstChild || l.appendChild(s.createTextNode(" ")), + l.className = "L" + (u + p) % 10, l.firstChild || l.appendChild(s.createTextNode("\xa0")), d.appendChild(l); e.appendChild(d); } @@ -8431,12 +8430,12 @@ var prettyPrintOne, prettyPrint; function l(e, t) { for (var n = t.length; --n >= 0; ) { var i = t[n]; - U.hasOwnProperty(i) ? h.console && console.warn("cannot override language handler %s", i) : U[i] = e; + z.hasOwnProperty(i) ? h.console && console.warn("cannot override language handler %s", i) : z[i] = e; } } function c(e, t) { - return e && U.hasOwnProperty(e) || (e = /^\s*" + e + "", i = i.firstChild, n && a(i, n, !0); var r = { langExtension: t, numberLines: n, @@ -8458,67 +8457,82 @@ var prettyPrintOne, prettyPrint; }; return u(r), i.innerHTML; } - function p(e) { - function t(e) { - return document.getElementsByTagName(e); + function p(e, t) { + function n(e) { + return o.getElementsByTagName(e); } - function n() { - for (var t = h.PR_SHOULD_USE_CONTINUATION ? d.now() + 250 : 1/0; f < o.length && d.now() < t; f++) { - var r = o[f], s = r.className; - if (g.test(s) && !v.test(s)) { - for (var l = !1, c = r.parentNode; c; c = c.parentNode) { - var w = c.tagName; - if (x.test(w) && c.className && g.test(c.className)) { - l = !0; + function r() { + for (var t = h.PR_SHOULD_USE_CONTINUATION ? m.now() + 250 : 1/0; v < c.length && m.now() < t; v++) { + for (var n = c[v], o = _, l = n; l = l.previousSibling; ) { + var d = l.nodeType, p = (7 === d || 8 === d) && l.nodeValue; + if (p ? !/^\??prettify\b/.test(p) : 3 !== d || /\S/.test(l.nodeValue)) break; + if (p) { + o = {}, p.replace(/\b(\w+)=([\w:.%+-]+)/g, function(e, t, n) { + o[t] = n; + }); + break; + } + } + var f = n.className; + if ((o !== _ || y.test(f)) && !x.test(f)) { + for (var k = !1, E = n.parentNode; E; E = E.parentNode) { + var T = E.tagName; + if (C.test(T) && E.className && y.test(E.className)) { + k = !0; break; } } - if (!l) { - r.className += " prettyprinted"; - var S, C = s.match(m); - !C && (S = i(r)) && y.test(S.tagName) && (C = S.className.match(m)), C && (C = C[1]); - var _; - if (b.test(r.tagName)) _ = 1; else { - var k = r.currentStyle, E = k ? k.whiteSpace : document.defaultView && document.defaultView.getComputedStyle ? document.defaultView.getComputedStyle(r, null).getPropertyValue("white-space") : 0; - _ = E && "pre" === E.substring(0, 3); + if (!k) { + n.className += " prettyprinted"; + var I = o.lang; + if (!I) { + I = f.match(b); + var D; + !I && (D = i(n)) && S.test(D.tagName) && (I = D.className.match(b)), I && (I = I[1]); } - var T = r.className.match(/\blinenums\b(?::(\d+))?/); - T = T ? T[1] && T[1].length ? +T[1] : !0 : !1, T && a(r, T, _), p = { - langExtension: C, - sourceNode: r, - numberLines: T, - pre: _ - }, u(p); + var N; + if (w.test(n.tagName)) N = 1; else { + var M = n.currentStyle, L = s.defaultView, A = M ? M.whiteSpace : L && L.getComputedStyle ? L.getComputedStyle(n, null).getPropertyValue("white-space") : 0; + N = A && "pre" === A.substring(0, 3); + } + var R = o.linenums; + (R = "true" === R || +R) || (R = f.match(/\blinenums\b(?::(\d+))?/), R = R ? R[1] && R[1].length ? +R[1] : !0 : !1), + R && a(n, R, N), g = { + langExtension: I, + sourceNode: n, + numberLines: R, + pre: N + }, u(g); } } } - f < o.length ? setTimeout(n, 250) : e && e(); + v < c.length ? setTimeout(r, 250) : "function" == typeof e && e(); } - for (var r = [ t("pre"), t("code"), t("xmp") ], o = [], s = 0; s < r.length; ++s) for (var l = 0, c = r[s].length; c > l; ++l) o.push(r[s][l]); - r = null; - var d = Date; - d.now || (d = { + for (var o = t || document.body, s = o.ownerDocument || document, l = [ n("pre"), n("code"), n("xmp") ], c = [], d = 0; d < l.length; ++d) for (var p = 0, f = l[d].length; f > p; ++p) c.push(l[d][p]); + l = null; + var m = Date; + m.now || (m = { now: function() { return +new Date(); } }); - var p, f = 0, m = /\blang(?:uage)?-([\w.]+)(?!\S)/, g = /\bprettyprint\b/, v = /\bprettyprinted\b/, b = /pre|xmp/i, y = /^code$/i, x = /^(?:pre|code|xmp)$/i; - n(); + var g, v = 0, b = /\blang(?:uage)?-([\w.]+)(?!\S)/, y = /\bprettyprint\b/, x = /\bprettyprinted\b/, w = /pre|xmp/i, S = /^code$/i, C = /^(?:pre|code|xmp)$/i, _ = {}; + r(); } - var h = window, f = [ "break,continue,do,else,for,if,return,while" ], m = [ f, "auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile" ], g = [ m, "catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof" ], v = [ g, "alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where" ], b = [ g, "abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient" ], y = [ b, "as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,let,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var,virtual,where" ], x = "all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,throw,true,try,unless,until,when,while,yes", w = [ g, "debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN" ], S = "caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END", C = [ f, "and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None" ], _ = [ f, "alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END" ], k = [ f, "case,done,elif,esac,eval,fi,function,in,local,set,then,until" ], E = [ v, y, w, S + C, _, k ], T = /^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)\b/, I = "str", D = "kwd", N = "com", M = "typ", L = "lit", A = "pun", R = "pln", P = "tag", F = "dec", O = "src", B = "atn", j = "atv", $ = "nocode", q = "(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*", G = /\S/, H = o({ - keywords: E, + var h = window, f = [ "break,continue,do,else,for,if,return,while" ], m = [ f, "auto,case,char,const,default,double,enum,extern,float,goto,inline,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile" ], g = [ m, "catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof" ], v = [ g, "alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,delegate,dynamic_cast,explicit,export,friend,generic,late_check,mutable,namespace,nullptr,property,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where" ], b = [ g, "abstract,assert,boolean,byte,extends,final,finally,implements,import,instanceof,interface,null,native,package,strictfp,super,synchronized,throws,transient" ], y = [ b, "as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,internal,into,is,let,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var,virtual,where" ], x = "all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,throw,true,try,unless,until,when,while,yes", w = [ g, "debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN" ], S = "caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END", C = [ f, "and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None" ], _ = [ f, "alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END" ], k = [ f, "as,assert,const,copy,drop,enum,extern,fail,false,fn,impl,let,log,loop,match,mod,move,mut,priv,pub,pure,ref,self,static,struct,true,trait,type,unsafe,use" ], E = [ f, "case,done,elif,esac,eval,fi,function,in,local,set,then,until" ], T = [ v, y, w, S, C, _, E ], I = /^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)\b/, D = "str", N = "kwd", M = "com", L = "typ", A = "lit", R = "pun", P = "pln", O = "tag", F = "dec", B = "src", j = "atn", $ = "atv", q = "nocode", G = "(?:^^\\.?|[+-]|[!=]=?=?|\\#|%=?|&&?=?|\\(|\\*=?|[+\\-]=|->|\\/=?|::?|<>?>?=?|,|;|\\?|@|\\[|~|{|\\^\\^?=?|\\|\\|?=?|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*", H = /\S/, U = o({ + keywords: T, hashComments: !0, cStyleComments: !0, multiLineStrings: !0, regexLiterals: !0 - }), U = {}; - l(H, [ "default-code" ]), l(r([], [ [ R, /^[^]*(?:>|$)/ ], [ N, /^<\!--[\s\S]*?(?:-\->|$)/ ], [ "lang-", /^<\?([\s\S]+?)(?:\?>|$)/ ], [ "lang-", /^<%([\s\S]+?)(?:%>|$)/ ], [ A, /^(?:<[%?]|[%?]>)/ ], [ "lang-", /^]*>([\s\S]+?)<\/xmp\b[^>]*>/i ], [ "lang-js", /^]*>([\s\S]*?)(<\/script\b[^>]*>)/i ], [ "lang-css", /^]*>([\s\S]*?)(<\/style\b[^>]*>)/i ], [ "lang-in.tag", /^(<\/?[a-z][^<>]*>)/i ] ]), [ "default-markup", "htm", "html", "mxml", "xhtml", "xml", "xsl" ]), - l(r([ [ R, /^[\s]+/, null, " \r\n" ], [ j, /^(?:\"[^\"]*\"?|\'[^\']*\'?)/, null, "\"'" ] ], [ [ P, /^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i ], [ B, /^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i ], [ "lang-uq.val", /^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/ ], [ A, /^[=<>\/]+/ ], [ "lang-js", /^on\w+\s*=\s*\"([^\"]+)\"/i ], [ "lang-js", /^on\w+\s*=\s*\'([^\']+)\'/i ], [ "lang-js", /^on\w+\s*=\s*([^\"\'>\s]+)/i ], [ "lang-css", /^style\s*=\s*\"([^\"]+)\"/i ], [ "lang-css", /^style\s*=\s*\'([^\']+)\'/i ], [ "lang-css", /^style\s*=\s*([^\"\'>\s]+)/i ] ]), [ "in.tag" ]), - l(r([], [ [ j, /^[\s\S]+/ ] ]), [ "uq.val" ]), l(o({ + }), z = {}; + l(U, [ "default-code" ]), l(r([], [ [ P, /^[^]*(?:>|$)/ ], [ M, /^<\!--[\s\S]*?(?:-\->|$)/ ], [ "lang-", /^<\?([\s\S]+?)(?:\?>|$)/ ], [ "lang-", /^<%([\s\S]+?)(?:%>|$)/ ], [ R, /^(?:<[%?]|[%?]>)/ ], [ "lang-", /^]*>([\s\S]+?)<\/xmp\b[^>]*>/i ], [ "lang-js", /^]*>([\s\S]*?)(<\/script\b[^>]*>)/i ], [ "lang-css", /^]*>([\s\S]*?)(<\/style\b[^>]*>)/i ], [ "lang-in.tag", /^(<\/?[a-z][^<>]*>)/i ] ]), [ "default-markup", "htm", "html", "mxml", "xhtml", "xml", "xsl" ]), + l(r([ [ P, /^[\s]+/, null, " \r\n" ], [ $, /^(?:\"[^\"]*\"?|\'[^\']*\'?)/, null, "\"'" ] ], [ [ O, /^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i ], [ j, /^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i ], [ "lang-uq.val", /^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/ ], [ R, /^[=<>\/]+/ ], [ "lang-js", /^on\w+\s*=\s*\"([^\"]+)\"/i ], [ "lang-js", /^on\w+\s*=\s*\'([^\']+)\'/i ], [ "lang-js", /^on\w+\s*=\s*([^\"\'>\s]+)/i ], [ "lang-css", /^style\s*=\s*\"([^\"]+)\"/i ], [ "lang-css", /^style\s*=\s*\'([^\']+)\'/i ], [ "lang-css", /^style\s*=\s*([^\"\'>\s]+)/i ] ]), [ "in.tag" ]), + l(r([], [ [ $, /^[\s\S]+/ ] ]), [ "uq.val" ]), l(o({ keywords: v, hashComments: !0, cStyleComments: !0, - types: T + types: I }), [ "c", "cc", "cpp", "cxx", "cyc", "m" ]), l(o({ keywords: "null,true,false" }), [ "json" ]), l(o({ @@ -8526,63 +8540,67 @@ var prettyPrintOne, prettyPrint; hashComments: !0, cStyleComments: !0, verbatimStrings: !0, - types: T + types: I }), [ "cs" ]), l(o({ keywords: b, cStyleComments: !0 }), [ "java" ]), l(o({ - keywords: k, + keywords: E, hashComments: !0, multiLineStrings: !0 - }), [ "bsh", "csh", "sh" ]), l(o({ + }), [ "bash", "bsh", "csh", "sh" ]), l(o({ keywords: C, hashComments: !0, multiLineStrings: !0, tripleQuotedStrings: !0 - }), [ "cv", "py" ]), l(o({ + }), [ "cv", "py", "python" ]), l(o({ keywords: S, hashComments: !0, multiLineStrings: !0, - regexLiterals: !0 + regexLiterals: 2 }), [ "perl", "pl", "pm" ]), l(o({ keywords: _, hashComments: !0, multiLineStrings: !0, regexLiterals: !0 - }), [ "rb" ]), l(o({ + }), [ "rb", "ruby" ]), l(o({ keywords: w, cStyleComments: !0, regexLiterals: !0 - }), [ "js" ]), l(o({ + }), [ "javascript", "js" ]), l(o({ keywords: x, hashComments: 3, cStyleComments: !0, multilineStrings: !0, tripleQuotedStrings: !0, regexLiterals: !0 - }), [ "coffee" ]), l(r([], [ [ I, /^[\s\S]+/ ] ]), [ "regex" ]); - var z = h.PR = { + }), [ "coffee" ]), l(o({ + keywords: k, + cStyleComments: !0, + multilineStrings: !0 + }), [ "rc", "rs", "rust" ]), l(r([], [ [ D, /^[\s\S]+/ ] ]), [ "regex" ]); + var V = h.PR = { createSimpleLexer: r, registerLangHandler: l, sourceDecorator: o, - PR_ATTRIB_NAME: B, - PR_ATTRIB_VALUE: j, - PR_COMMENT: N, + PR_ATTRIB_NAME: j, + PR_ATTRIB_VALUE: $, + PR_COMMENT: M, PR_DECLARATION: F, - PR_KEYWORD: D, - PR_LITERAL: L, - PR_NOCODE: $, - PR_PLAIN: R, - PR_PUNCTUATION: A, - PR_SOURCE: O, - PR_STRING: I, - PR_TAG: P, - PR_TYPE: M, - prettyPrintOne: h.prettyPrintOne = d, - prettyPrint: h.prettyPrint = p + PR_KEYWORD: N, + PR_LITERAL: A, + PR_NOCODE: q, + PR_PLAIN: P, + PR_PUNCTUATION: R, + PR_SOURCE: B, + PR_STRING: D, + PR_TAG: O, + PR_TYPE: L, + prettyPrintOne: IN_GLOBAL_SCOPE ? h.prettyPrintOne = d : prettyPrintOne = d, + prettyPrint: prettyPrint = IN_GLOBAL_SCOPE ? h.prettyPrint = p : prettyPrint = p }; "function" == typeof define && define.amd && define("google-code-prettify", [], function() { - return z; + return V; }); }(); @@ -10115,7 +10133,7 @@ hljs.registerLanguage("bash", function(e) { }), hljs.registerLanguage("php", function(e) { var t = { cN: "variable", - b: "\\$+[a-zA-Z_-ÿ][a-zA-Z0-9_-ÿ]*" + b: "\\$+[a-zA-Z_-\xff][a-zA-Z0-9_-\xff]*" }, n = { cN: "preprocessor", b: /<\?(php)?|\?>/ @@ -10286,7 +10304,7 @@ hljs.registerLanguage("bash", function(e) { } ] }; }), hljs.registerLanguage("1c", function(e) { - var t = "[a-zA-Zа-яА-Я][a-zA-Z0-9_а-яА-Я]*", n = "возврат дата для если и или иначе иначеесли исключение конецесли конецпопытки конецпроцедуры конецфункции конеццикла константа не перейти перем перечисление по пока попытка прервать продолжить процедура строка тогда фс функция цикл число экспорт", i = "ansitooem oemtoansi ввестивидсубконто ввестидату ввестизначение ввестиперечисление ввестипериод ввестиплансчетов ввестистроку ввестичисло вопрос восстановитьзначение врег выбранныйплансчетов вызватьисключение датагод датамесяц датачисло добавитьмесяц завершитьработусистемы заголовоксистемы записьжурналарегистрации запуститьприложение зафиксироватьтранзакцию значениевстроку значениевстрокувнутр значениевфайл значениеизстроки значениеизстрокивнутр значениеизфайла имякомпьютера имяпользователя каталогвременныхфайлов каталогиб каталогпользователя каталогпрограммы кодсимв командасистемы конгода конецпериодаби конецрассчитанногопериодаби конецстандартногоинтервала конквартала конмесяца коннедели лев лог лог10 макс максимальноеколичествосубконто мин монопольныйрежим названиеинтерфейса названиенабораправ назначитьвид назначитьсчет найти найтипомеченныенаудаление найтиссылки началопериодаби началостандартногоинтервала начатьтранзакцию начгода начквартала начмесяца начнедели номерднягода номерднянедели номернеделигода нрег обработкаожидания окр описаниеошибки основнойжурналрасчетов основнойплансчетов основнойязык открытьформу открытьформумодально отменитьтранзакцию очиститьокносообщений периодстр полноеимяпользователя получитьвремята получитьдатута получитьдокументта получитьзначенияотбора получитьпозициюта получитьпустоезначение получитьта прав праводоступа предупреждение префиксавтонумерации пустаястрока пустоезначение рабочаядаттьпустоезначение рабочаядата разделительстраниц разделительстрок разм разобратьпозициюдокумента рассчитатьрегистрына рассчитатьрегистрыпо сигнал симв символтабуляции создатьобъект сокрл сокрлп сокрп сообщить состояние сохранитьзначение сред статусвозврата стрдлина стрзаменить стрколичествострок стрполучитьстроку стрчисловхождений сформироватьпозициюдокумента счетпокоду текущаядата текущеевремя типзначения типзначениястр удалитьобъекты установитьтана установитьтапо фиксшаблон формат цел шаблон", r = { + var t = "[a-zA-Z\u0430-\u044f\u0410-\u042f][a-zA-Z0-9_\u0430-\u044f\u0410-\u042f]*", n = "\u0432\u043e\u0437\u0432\u0440\u0430\u0442 \u0434\u0430\u0442\u0430 \u0434\u043b\u044f \u0435\u0441\u043b\u0438 \u0438 \u0438\u043b\u0438 \u0438\u043d\u0430\u0447\u0435 \u0438\u043d\u0430\u0447\u0435\u0435\u0441\u043b\u0438 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0435\u0446\u0435\u0441\u043b\u0438 \u043a\u043e\u043d\u0435\u0446\u043f\u043e\u043f\u044b\u0442\u043a\u0438 \u043a\u043e\u043d\u0435\u0446\u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u044b \u043a\u043e\u043d\u0435\u0446\u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043a\u043e\u043d\u0435\u0446\u0446\u0438\u043a\u043b\u0430 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0430 \u043d\u0435 \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043f\u0435\u0440\u0435\u043c \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u043f\u043e \u043f\u043e\u043a\u0430 \u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u043f\u0440\u0435\u0440\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430 \u0441\u0442\u0440\u043e\u043a\u0430 \u0442\u043e\u0433\u0434\u0430 \u0444\u0441 \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0446\u0438\u043a\u043b \u0447\u0438\u0441\u043b\u043e \u044d\u043a\u0441\u043f\u043e\u0440\u0442", i = "ansitooem oemtoansi \u0432\u0432\u0435\u0441\u0442\u0438\u0432\u0438\u0434\u0441\u0443\u0431\u043a\u043e\u043d\u0442\u043e \u0432\u0432\u0435\u0441\u0442\u0438\u0434\u0430\u0442\u0443 \u0432\u0432\u0435\u0441\u0442\u0438\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u0432\u0435\u0441\u0442\u0438\u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0432\u0432\u0435\u0441\u0442\u0438\u043f\u0435\u0440\u0438\u043e\u0434 \u0432\u0432\u0435\u0441\u0442\u0438\u043f\u043b\u0430\u043d\u0441\u0447\u0435\u0442\u043e\u0432 \u0432\u0432\u0435\u0441\u0442\u0438\u0441\u0442\u0440\u043e\u043a\u0443 \u0432\u0432\u0435\u0441\u0442\u0438\u0447\u0438\u0441\u043b\u043e \u0432\u043e\u043f\u0440\u043e\u0441 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u0440\u0435\u0433 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u0439\u043f\u043b\u0430\u043d\u0441\u0447\u0435\u0442\u043e\u0432 \u0432\u044b\u0437\u0432\u0430\u0442\u044c\u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0434\u0430\u0442\u0430\u0433\u043e\u0434 \u0434\u0430\u0442\u0430\u043c\u0435\u0441\u044f\u0446 \u0434\u0430\u0442\u0430\u0447\u0438\u0441\u043b\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c\u043c\u0435\u0441\u044f\u0446 \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044c\u0440\u0430\u0431\u043e\u0442\u0443\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0437\u0430\u043f\u0438\u0441\u044c\u0436\u0443\u0440\u043d\u0430\u043b\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0437\u0430\u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0432\u0441\u0442\u0440\u043e\u043a\u0443 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0432\u0441\u0442\u0440\u043e\u043a\u0443\u0432\u043d\u0443\u0442\u0440 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0432\u0444\u0430\u0439\u043b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0438\u0437\u0441\u0442\u0440\u043e\u043a\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0438\u0437\u0441\u0442\u0440\u043e\u043a\u0438\u0432\u043d\u0443\u0442\u0440 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u0438\u0437\u0444\u0430\u0439\u043b\u0430 \u0438\u043c\u044f\u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430 \u0438\u043c\u044f\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445\u0444\u0430\u0439\u043b\u043e\u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0438\u0431 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043a\u043e\u0434\u0441\u0438\u043c\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043a\u043e\u043d\u0433\u043e\u0434\u0430 \u043a\u043e\u043d\u0435\u0446\u043f\u0435\u0440\u0438\u043e\u0434\u0430\u0431\u0438 \u043a\u043e\u043d\u0435\u0446\u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u043e\u0433\u043e\u043f\u0435\u0440\u0438\u043e\u0434\u0430\u0431\u0438 \u043a\u043e\u043d\u0435\u0446\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e\u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0430 \u043a\u043e\u043d\u043a\u0432\u0430\u0440\u0442\u0430\u043b\u0430 \u043a\u043e\u043d\u043c\u0435\u0441\u044f\u0446\u0430 \u043a\u043e\u043d\u043d\u0435\u0434\u0435\u043b\u0438 \u043b\u0435\u0432 \u043b\u043e\u0433 \u043b\u043e\u043310 \u043c\u0430\u043a\u0441 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u0441\u0443\u0431\u043a\u043e\u043d\u0442\u043e \u043c\u0438\u043d \u043c\u043e\u043d\u043e\u043f\u043e\u043b\u044c\u043d\u044b\u0439\u0440\u0435\u0436\u0438\u043c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043d\u0430\u0431\u043e\u0440\u0430\u043f\u0440\u0430\u0432 \u043d\u0430\u0437\u043d\u0430\u0447\u0438\u0442\u044c\u0432\u0438\u0434 \u043d\u0430\u0437\u043d\u0430\u0447\u0438\u0442\u044c\u0441\u0447\u0435\u0442 \u043d\u0430\u0439\u0442\u0438 \u043d\u0430\u0439\u0442\u0438\u043f\u043e\u043c\u0435\u0447\u0435\u043d\u043d\u044b\u0435\u043d\u0430\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043d\u0430\u0439\u0442\u0438\u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430\u0447\u0430\u043b\u043e\u043f\u0435\u0440\u0438\u043e\u0434\u0430\u0431\u0438 \u043d\u0430\u0447\u0430\u043b\u043e\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e\u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0430 \u043d\u0430\u0447\u0430\u0442\u044c\u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044e \u043d\u0430\u0447\u0433\u043e\u0434\u0430 \u043d\u0430\u0447\u043a\u0432\u0430\u0440\u0442\u0430\u043b\u0430 \u043d\u0430\u0447\u043c\u0435\u0441\u044f\u0446\u0430 \u043d\u0430\u0447\u043d\u0435\u0434\u0435\u043b\u0438 \u043d\u043e\u043c\u0435\u0440\u0434\u043d\u044f\u0433\u043e\u0434\u0430 \u043d\u043e\u043c\u0435\u0440\u0434\u043d\u044f\u043d\u0435\u0434\u0435\u043b\u0438 \u043d\u043e\u043c\u0435\u0440\u043d\u0435\u0434\u0435\u043b\u0438\u0433\u043e\u0434\u0430 \u043d\u0440\u0435\u0433 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u043e\u043a\u0440 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043e\u0448\u0438\u0431\u043a\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439\u0436\u0443\u0440\u043d\u0430\u043b\u0440\u0430\u0441\u0447\u0435\u0442\u043e\u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439\u043f\u043b\u0430\u043d\u0441\u0447\u0435\u0442\u043e\u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439\u044f\u0437\u044b\u043a \u043e\u0442\u043a\u0440\u044b\u0442\u044c\u0444\u043e\u0440\u043c\u0443 \u043e\u0442\u043a\u0440\u044b\u0442\u044c\u0444\u043e\u0440\u043c\u0443\u043c\u043e\u0434\u0430\u043b\u044c\u043d\u043e \u043e\u0442\u043c\u0435\u043d\u0438\u0442\u044c\u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044e \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u044c\u043e\u043a\u043d\u043e\u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043f\u0435\u0440\u0438\u043e\u0434\u0441\u0442\u0440 \u043f\u043e\u043b\u043d\u043e\u0435\u0438\u043c\u044f\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0432\u0440\u0435\u043c\u044f\u0442\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0434\u0430\u0442\u0443\u0442\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0442\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043e\u0442\u0431\u043e\u0440\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043f\u043e\u0437\u0438\u0446\u0438\u044e\u0442\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u043f\u0443\u0441\u0442\u043e\u0435\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0442\u0430 \u043f\u0440\u0430\u0432 \u043f\u0440\u0430\u0432\u043e\u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u0444\u0438\u043a\u0441\u0430\u0432\u0442\u043e\u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u0443\u0441\u0442\u0430\u044f\u0441\u0442\u0440\u043e\u043a\u0430 \u043f\u0443\u0441\u0442\u043e\u0435\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0447\u0430\u044f\u0434\u0430\u0442\u0442\u044c\u043f\u0443\u0441\u0442\u043e\u0435\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0447\u0430\u044f\u0434\u0430\u0442\u0430 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c\u0441\u0442\u0440\u043e\u043a \u0440\u0430\u0437\u043c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u043f\u043e\u0437\u0438\u0446\u0438\u044e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0442\u044c\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b\u043d\u0430 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0442\u044c\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b\u043f\u043e \u0441\u0438\u0433\u043d\u0430\u043b \u0441\u0438\u043c\u0432 \u0441\u0438\u043c\u0432\u043e\u043b\u0442\u0430\u0431\u0443\u043b\u044f\u0446\u0438\u0438 \u0441\u043e\u0437\u0434\u0430\u0442\u044c\u043e\u0431\u044a\u0435\u043a\u0442 \u0441\u043e\u043a\u0440\u043b \u0441\u043e\u043a\u0440\u043b\u043f \u0441\u043e\u043a\u0440\u043f \u0441\u043e\u043e\u0431\u0449\u0438\u0442\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0440\u0435\u0434 \u0441\u0442\u0430\u0442\u0443\u0441\u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0430 \u0441\u0442\u0440\u0434\u043b\u0438\u043d\u0430 \u0441\u0442\u0440\u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u0442\u0440\u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u0441\u0442\u0440\u043e\u043a \u0441\u0442\u0440\u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u0442\u0440\u0447\u0438\u0441\u043b\u043e\u0432\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0439 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u043f\u043e\u0437\u0438\u0446\u0438\u044e\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0441\u0447\u0435\u0442\u043f\u043e\u043a\u043e\u0434\u0443 \u0442\u0435\u043a\u0443\u0449\u0430\u044f\u0434\u0430\u0442\u0430 \u0442\u0435\u043a\u0443\u0449\u0435\u0435\u0432\u0440\u0435\u043c\u044f \u0442\u0438\u043f\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0442\u0438\u043f\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u0441\u0442\u0440 \u0443\u0434\u0430\u043b\u0438\u0442\u044c\u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0442\u0430\u043d\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0442\u0430\u043f\u043e \u0444\u0438\u043a\u0441\u0448\u0430\u0431\u043b\u043e\u043d \u0444\u043e\u0440\u043c\u0430\u0442 \u0446\u0435\u043b \u0448\u0430\u0431\u043b\u043e\u043d", r = { cN: "dquote", b: '""' }, o = { @@ -10309,10 +10327,10 @@ hljs.registerLanguage("bash", function(e) { }, c: [ e.CLCM, e.NM, o, a, { cN: "function", - b: "(процедура|функция)", + b: "(\u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430|\u0444\u0443\u043d\u043a\u0446\u0438\u044f)", e: "$", l: t, - k: "процедура функция", + k: "\u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f", c: [ e.inherit(e.TM, { b: t }), { @@ -10323,14 +10341,14 @@ hljs.registerLanguage("bash", function(e) { b: "\\(", e: "\\)", l: t, - k: "знач", + k: "\u0437\u043d\u0430\u0447", c: [ o, a ] }, { cN: "export", - b: "экспорт", + b: "\u044d\u043a\u0441\u043f\u043e\u0440\u0442", eW: !0, l: t, - k: "экспорт", + k: "\u044d\u043a\u0441\u043f\u043e\u0440\u0442", c: [ e.CLCM ] } ] }, e.CLCM ] @@ -10457,10 +10475,10 @@ hljs.registerLanguage("bash", function(e) { }), hljs.registerLanguage("tex", function() { var e = { cN: "command", - b: "\\\\[a-zA-Zа-яА-я]+[\\*]?" + b: "\\\\[a-zA-Z\u0430-\u044f\u0410-\u044f]+[\\*]?" }, t = { cN: "command", - b: "\\\\[^a-zA-Zа-яА-я0-9]" + b: "\\\\[^a-zA-Z\u0430-\u044f\u0410-\u044f0-9]" }, n = { cN: "special", b: "[{}\\[\\]\\&#~]", @@ -10468,7 +10486,7 @@ hljs.registerLanguage("bash", function(e) { }; return { c: [ { - b: "\\\\[a-zA-Zа-яА-я]+[\\*]? *= *-?\\d*\\.?\\d+(pt|pc|mm|cm|in|dd|cc|ex|em)?", + b: "\\\\[a-zA-Z\u0430-\u044f\u0410-\u044f]+[\\*]? *= *-?\\d*\\.?\\d+(pt|pc|mm|cm|in|dd|cc|ex|em)?", rB: !0, c: [ e, t, { cN: "number", @@ -12458,7 +12476,7 @@ function() { }, Markdown.Converter = function() { function e(e) { return e = e.replace(/^[ ]{0,3}\[(.+)\]:[ \t]*\n?[ \t]*?(?=\s|$)[ \t]*\n?[ \t]*((\n*)["(](.+?)[")][ \t]*)?(?:\n+)/gm, function(e, t, n, i, r, o) { - return t = t.toLowerCase(), P.set(t, C(n)), r ? i : (o && F.set(t, o.replace(/"/g, """)), + return t = t.toLowerCase(), P.set(t, C(n)), r ? i : (o && O.set(t, o.replace(/"/g, """)), ""); }); } @@ -12470,7 +12488,7 @@ function() { } function r(e, t) { var n = t; - return n = n.replace(/^\n+/, ""), n = n.replace(/\n+$/g, ""), n = "\n\n~K" + (O.push(n) - 1) + "K\n\n"; + return n = n.replace(/^\n+/, ""), n = n.replace(/\n+$/g, ""), n = "\n\n~K" + (F.push(n) - 1) + "K\n\n"; } function o(e, n) { e = R.preBlockGamut(e, j), e = h(e); @@ -12500,7 +12518,7 @@ function() { void 0 == s && (s = ""); var l = t, c = n.replace(/:\/\//g, "~P"), u = i.toLowerCase(), p = r, h = s; if ("" == p) if ("" == u && (u = c.toLowerCase().replace(/ ?\n/g, " ")), p = "#" + u, - void 0 != P.get(u)) p = P.get(u), void 0 != F.get(u) && (h = F.get(u)); else { + void 0 != P.get(u)) p = P.get(u), void 0 != O.get(u) && (h = O.get(u)); else { if (!(l.search(/\(\s*\)$/m) > -1)) return l; p = ""; } @@ -12518,7 +12536,7 @@ function() { var l = t, c = n, u = i.toLowerCase(), p = r, h = s; if (h || (h = ""), "" == p) { if ("" == u && (u = c.toLowerCase().replace(/ ?\n/g, " ")), p = "#" + u, void 0 == P.get(u)) return l; - p = P.get(u), void 0 != F.get(u) && (h = F.get(u)); + p = P.get(u), void 0 != O.get(u) && (h = O.get(u)); } c = M(d(c), "*_[]()"), p = M(p, "*_"); var f = '' + c + ' s; s++) for (var c = !0; c; ) c = !1, i[s] = i[s].replace(/~K(\d+)K/g, function(e, t) { - return c = !0, O[t]; + return c = !0, F[t]; }); } return i.join("\n\n"); @@ -12676,14 +12694,14 @@ function() { R.addNoop("plainLinkText"), R.addNoop("preConversion"), R.addNoop("postNormalization"), R.addNoop("preBlockGamut"), R.addNoop("postBlockGamut"), R.addNoop("preSpanGamut"), R.addNoop("postSpanGamut"), R.addNoop("postConversion"); - var P, F, O, B; + var P, O, F, B; this.makeHtml = function(n) { if (P) throw new Error("Recursive call to converter.makeHtml"); - return P = new i(), F = new i(), O = [], B = 0, n = R.preConversion(n), n = n.replace(/~/g, "~T"), + return P = new i(), O = new i(), F = [], B = 0, n = R.preConversion(n), n = n.replace(/~/g, "~T"), n = n.replace(/\$/g, "~D"), n = n.replace(/\r\n/g, "\n"), n = n.replace(/\r/g, "\n"), n = "\n\n" + n + "\n\n", n = D(n), n = n.replace(/^[ \t]+$/gm, ""), n = R.postNormalization(n), n = t(n), n = e(n), n = o(n), n = T(n), n = n.replace(/~D/g, "$$"), n = n.replace(/~T/g, "~"), - n = R.postConversion(n), O = F = P = null, n; + n = R.postConversion(n), F = O = P = null, n; }; var j = function(e) { return o(e); @@ -14405,7 +14423,7 @@ function() { }, a; }), function(e) { var t = function() { - return !1 === e.support.boxModel && e.support.objectAll && $support.leadingWhitespace; + return !1 === e.support.boxModel && e.support.objectAll && e.support.leadingWhitespace; }(); e.jGrowl = function(t, n) { 0 == e("#jGrowl").size() && e('
').addClass(n && n.position ? n.position : e.jGrowl.defaults.position).appendTo("body"), @@ -14467,7 +14485,7 @@ function() { render: function(t) { var n = this, i = t.message, r = t.options; r.themeState = "" == r.themeState ? "" : "ui-state-" + r.themeState; - var t = e('
' + r.closeTemplate + '
' + r.header + '
' + i + "
").data("jGrowl", r).addClass(r.theme).children("div.jGrowl-close").bind("click.jGrowl", function() { + var t = e("
").addClass("jGrowl-notification " + r.themeState + " ui-corner-all" + (void 0 != r.group && "" != r.group ? " " + r.group : "")).append(e("
").addClass("jGrowl-close").html(r.closeTemplate)).append(e("
").addClass("jGrowl-header").html(r.header)).append(e("
").addClass("jGrowl-message").html(i)).data("jGrowl", r).addClass(r.theme).children("div.jGrowl-close").bind("click.jGrowl", function() { e(this).parent().trigger("jGrowl.beforeClose"); }).parent(); e(t).bind("mouseover.jGrowl", function() { @@ -14475,29 +14493,29 @@ function() { }).bind("mouseout.jGrowl", function() { e("div.jGrowl-notification", n.element).data("jGrowl.pause", !1); }).bind("jGrowl.beforeOpen", function() { - 0 != r.beforeOpen.apply(t, [ t, i, r, n.element ]) && e(this).trigger("jGrowl.open"); + r.beforeOpen.apply(t, [ t, i, r, n.element ]) !== !1 && e(this).trigger("jGrowl.open"); }).bind("jGrowl.open", function() { - 0 != r.open.apply(t, [ t, i, r, n.element ]) && ("after" == r.glue ? e("div.jGrowl-notification:last", n.element).after(t) : e("div.jGrowl-notification:first", n.element).before(t), + r.open.apply(t, [ t, i, r, n.element ]) !== !1 && ("after" == r.glue ? e("div.jGrowl-notification:last", n.element).after(t) : e("div.jGrowl-notification:first", n.element).before(t), e(this).animate(r.animateOpen, r.openDuration, r.easing, function() { - e.support.opacity === !1 && this.style.removeAttribute("filter"), null != e(this).data("jGrowl") && (e(this).data("jGrowl").created = new Date()), + e.support.opacity === !1 && this.style.removeAttribute("filter"), null !== e(this).data("jGrowl") && (e(this).data("jGrowl").created = new Date()), e(this).trigger("jGrowl.afterOpen"); })); }).bind("jGrowl.afterOpen", function() { r.afterOpen.apply(t, [ t, i, r, n.element ]); }).bind("jGrowl.beforeClose", function() { - 0 != r.beforeClose.apply(t, [ t, i, r, n.element ]) && e(this).trigger("jGrowl.close"); + r.beforeClose.apply(t, [ t, i, r, n.element ]) !== !1 && e(this).trigger("jGrowl.close"); }).bind("jGrowl.close", function() { e(this).data("jGrowl.pause", !0), e(this).animate(r.animateClose, r.closeDuration, r.easing, function() { e.isFunction(r.close) ? r.close.apply(t, [ t, i, r, n.element ]) !== !1 && e(this).remove() : e(this).remove(); }); }).trigger("jGrowl.beforeOpen"), "" != r.corners && void 0 != e.fn.corner && e(t).corner(r.corners), - e("div.jGrowl-notification:parent", n.element).size() > 1 && 0 == e("div.jGrowl-closer", n.element).size() && 0 != this.defaults.closer && e(this.defaults.closerTemplate).addClass("jGrowl-closer " + this.defaults.themeState + " ui-corner-all").addClass(this.defaults.theme).appendTo(n.element).animate(this.defaults.animateOpen, this.defaults.speed, this.defaults.easing).bind("click.jGrowl", function() { + e("div.jGrowl-notification:parent", n.element).size() > 1 && 0 == e("div.jGrowl-closer", n.element).size() && this.defaults.closer !== !1 && e(this.defaults.closerTemplate).addClass("jGrowl-closer " + this.defaults.themeState + " ui-corner-all").addClass(this.defaults.theme).appendTo(n.element).animate(this.defaults.animateOpen, this.defaults.speed, this.defaults.easing).bind("click.jGrowl", function() { e(this).siblings().trigger("jGrowl.beforeClose"), e.isFunction(n.defaults.closer) && n.defaults.closer.apply(e(this).parent()[0], [ e(this).parent()[0] ]); }); }, update: function() { e(this.element).find("div.jGrowl-notification:parent").each(function() { - void 0 != e(this).data("jGrowl") && void 0 != e(this).data("jGrowl").created && e(this).data("jGrowl").created.getTime() + parseInt(e(this).data("jGrowl").life) < new Date().getTime() && 1 != e(this).data("jGrowl").sticky && (void 0 == e(this).data("jGrowl.pause") || 1 != e(this).data("jGrowl.pause")) && e(this).trigger("jGrowl.beforeClose"); + void 0 != e(this).data("jGrowl") && void 0 !== e(this).data("jGrowl").created && e(this).data("jGrowl").created.getTime() + parseInt(e(this).data("jGrowl").life) < new Date().getTime() && e(this).data("jGrowl").sticky !== !0 && (void 0 == e(this).data("jGrowl.pause") || e(this).data("jGrowl.pause") !== !0) && e(this).trigger("jGrowl.beforeClose"); }), this.notifications.length > 0 && (0 == this.defaults.pool || e(this.element).find("div.jGrowl-notification:parent").size() < this.defaults.pool) && this.render(this.notifications.shift()), e(this.element).find("div.jGrowl-notification:parent").size() < 2 && e(this.element).find("div.jGrowl-closer").animate(this.defaults.animateClose, this.defaults.speed, this.defaults.easing, function() { e(this).remove(); @@ -14510,7 +14528,7 @@ function() { }, parseInt(this.defaults.check)), t && e(this.element).addClass("ie6"); }, shutdown: function() { - e(this.element).removeClass("jGrowl").find("div.jGrowl-notification").remove(), + e(this.element).removeClass("jGrowl").find("div.jGrowl-notification").trigger("jGrowl.close").parent().empty(), clearInterval(this.interval); }, close: function() { @@ -14667,10 +14685,10 @@ function() { }, "undefined" != typeof module && module.exports ? module.exports = u : "undefined" != typeof define ? define("eve", [], function() { return u; }) : e.eve = u; -}(this), function(e, t) { +}(window || this), function(e, t) { "function" == typeof define && define.amd ? define("raphael", [ "eve" ], function(n) { return t(e, n); - }) : t(e, e.eve); + }) : t(e, e.eve || "function" == typeof require && require("eve")); }(this, function(e, t) { function n(e) { if (n.is(e, "function")) return x ? e() : t.on("raphael.DOMload", e); @@ -14695,7 +14713,7 @@ function() { } function o(e, t, n) { function i() { - var o = Array.prototype.slice.call(arguments, 0), a = o.join("␀"), s = i.cache = i.cache || {}, l = i.count = i.count || []; + var o = Array.prototype.slice.call(arguments, 0), a = o.join("\u2400"), s = i.cache = i.cache || {}, l = i.count = i.count || []; return s[k](a) ? (r(l, a), n ? n(s[a]) : s[a]) : (l.length >= 1e3 && delete s[l.shift()], l.push(a), s[a] = e[D](t, o), n ? n(s[a]) : s[a]); } @@ -14831,7 +14849,7 @@ function() { this.b = 0, this.c = 0, this.d = 1, this.e = 0, this.f = 0); } function m() { - return this.x + A + this.y + A + this.width + " × " + this.height; + return this.x + A + this.y + A + this.width + " \xd7 " + this.height; } function g(e, t, n, i, r, o) { function a(e) { @@ -14904,7 +14922,7 @@ function() { break; case "path": - var T = Ft(v[_], b[_]), I = T[1]; + var T = Ot(v[_], b[_]), I = T[1]; for (v[_] = T[0], y[_] = [], w = 0, C = v[_].length; C > w; w++) { y[_][w] = [ 0 ]; for (var D = 1, M = v[_][w].length; M > D; D++) y[_][w][D] = (I[w][D] - v[_][w][D]) / m; @@ -14915,7 +14933,7 @@ function() { var L = i._, A = qt(L[_], b[_]); if (A) for (v[_] = A.from, b[_] = A.to, y[_] = [], y[_].real = !0, w = 0, C = v[_].length; C > w; w++) for (y[_][w] = [ v[_][w][0] ], D = 1, M = v[_][w].length; M > D; D++) y[_][w][D] = (b[_][w][D] - v[_][w][D]) / m; else { - var F = i.matrix || new f(), O = { + var O = i.matrix || new f(), F = { _: { transform: L.transform }, @@ -14923,7 +14941,7 @@ function() { return i.getBBox(1); } }; - v[_] = [ F.a, F.b, F.c, F.d, F.e, F.f ], jt(O, b[_]), b[_] = O._.transform, y[_] = [ (O.matrix.a - F.a) / m, (O.matrix.b - F.b) / m, (O.matrix.c - F.c) / m, (O.matrix.d - F.d) / m, (O.matrix.e - F.e) / m, (O.matrix.f - F.f) / m ]; + v[_] = [ O.a, O.b, O.c, O.d, O.e, O.f ], jt(F, b[_]), b[_] = F._.transform, y[_] = [ (F.matrix.a - O.a) / m, (F.matrix.b - O.b) / m, (F.matrix.c - O.c) / m, (F.matrix.d - O.d) / m, (F.matrix.e - O.e) / m, (F.matrix.f - O.f) / m ]; } break; @@ -14972,7 +14990,7 @@ function() { function y(e) { for (var t = 0; t < cn.length; t++) cn[t].el.paper == e && cn.splice(t--, 1); } - n.version = "2.1.0", n.eve = t; + n.version = "2.1.2", n.eve = t; var x, w, S = /[, ]+/, C = { circle: 1, rect: 1, @@ -14988,11 +15006,11 @@ function() { is: E.win.Raphael }, I = function() { this.ca = this.customAttributes = {}; - }, D = "apply", N = "concat", M = "ontouchstart" in E.win || E.win.DocumentTouch && E.doc instanceof DocumentTouch, L = "", A = " ", R = String, P = "split", F = "click dblclick mousedown mousemove mouseout mouseover mouseup touchstart touchmove touchend touchcancel"[P](A), O = { + }, D = "apply", N = "concat", M = "ontouchstart" in E.win || E.win.DocumentTouch && E.doc instanceof DocumentTouch, L = "", A = " ", R = String, P = "split", O = "click dblclick mousedown mousemove mouseout mouseover mouseup touchstart touchmove touchend touchcancel"[P](A), F = { mousedown: "touchstart", mousemove: "touchmove", mouseup: "touchend" - }, B = R.prototype.toLowerCase, j = Math, $ = j.max, q = j.min, G = j.abs, H = j.pow, U = j.PI, z = "number", V = "string", W = "array", X = Object.prototype.toString, Q = (n._ISURL = /^url\(['"]?([^\)]+?)['"]?\)$/i, + }, B = R.prototype.toLowerCase, j = Math, $ = j.max, q = j.min, G = j.abs, H = j.pow, U = j.PI, z = "number", V = "string", W = "array", X = Object.prototype.toString, Q = (n._ISURL = /^url\(['"]?(.+?)['"]?\)$/i, /^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgba?\(\s*([\d\.]+%?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+%?(?:\s*,\s*[\d\.]+%?)?)\s*\)|hsba?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?)%?\s*\)|hsla?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?)%?\s*\))\s*$/i), Y = { NaN: 1, Infinity: 1, @@ -15100,7 +15118,7 @@ function() { }, vt = n.mapPath = function(e, t) { if (!t) return e; var n, i, r, o, a, s, l; - for (e = Ft(e), r = 0, a = e.length; a > r; r++) for (l = e[r], o = 1, s = l.length; s > o; o += 2) n = t.x(l[o], l[o + 1]), + for (e = Ot(e), r = 0, a = e.length; a > r; r++) for (l = e[r], o = 1, s = l.length; s > o; o += 2) n = t.x(l[o], l[o + 1]), i = t.y(l[o], l[o + 1]), l[o] = n, l[o + 1] = i; return e; }; @@ -15167,7 +15185,7 @@ function() { }); } else { var l = E.doc.createElement("i"); - l.title = "Raphaël Colour Picker", l.style.display = "none", E.doc.body.appendChild(l), + l.title = "Rapha\xebl Colour Picker", l.style.display = "none", E.doc.body.appendChild(l), xt = o(function(e) { return l.style.color = e, E.doc.defaultView.getComputedStyle(l, L).getPropertyValue("color"); }); @@ -15207,8 +15225,8 @@ function() { hex: "none" }, e.r = e.g = e.b = e.h = e.s = e.v = e.l = -1)), e.toString = Ct, e; }, n.hsb2rgb = function(e, t, n, i) { - this.is(e, "object") && "h" in e && "s" in e && "b" in e && (n = e.b, t = e.s, e = e.h, - i = e.o), e *= 360; + this.is(e, "object") && "h" in e && "s" in e && "b" in e && (n = e.b, t = e.s, i = e.o, + e = e.h), e *= 360; var r, o, a, s, l; return e = e % 360 / 60, l = n * t, s = l * (1 - G(e % 2 - 1)), r = o = a = n - l, e = ~~e, r += [ l, s, 0, 0, s, l ][e], o += [ s, l, l, s, 0, 0 ][e], a += [ 0, 0, s, l, l, s ][e], @@ -15277,11 +15295,11 @@ function() { r = Z(l[2]), "%" == l[2].slice(-1) && (r *= 2.55), "rgba" == c[1].toLowerCase().slice(0, 4) && (o = Z(l[3])), l[3] && "%" == l[3].slice(-1) && (o /= 100)), c[5] ? (l = c[5][P](rt), t = Z(l[0]), "%" == l[0].slice(-1) && (t *= 2.55), i = Z(l[1]), "%" == l[1].slice(-1) && (i *= 2.55), - r = Z(l[2]), "%" == l[2].slice(-1) && (r *= 2.55), ("deg" == l[0].slice(-3) || "°" == l[0].slice(-1)) && (t /= 360), + r = Z(l[2]), "%" == l[2].slice(-1) && (r *= 2.55), ("deg" == l[0].slice(-3) || "\xb0" == l[0].slice(-1)) && (t /= 360), "hsba" == c[1].toLowerCase().slice(0, 4) && (o = Z(l[3])), l[3] && "%" == l[3].slice(-1) && (o /= 100), n.hsb2rgb(t, i, r, o)) : c[6] ? (l = c[6][P](rt), t = Z(l[0]), "%" == l[0].slice(-1) && (t *= 2.55), i = Z(l[1]), "%" == l[1].slice(-1) && (i *= 2.55), r = Z(l[2]), "%" == l[2].slice(-1) && (r *= 2.55), - ("deg" == l[0].slice(-3) || "°" == l[0].slice(-1)) && (t /= 360), "hsla" == c[1].toLowerCase().slice(0, 4) && (o = Z(l[3])), + ("deg" == l[0].slice(-3) || "\xb0" == l[0].slice(-1)) && (t /= 360), "hsla" == c[1].toLowerCase().slice(0, 4) && (o = Z(l[3])), l[3] && "%" == l[3].slice(-1) && (o /= 100), n.hsl2rgb(t, i, r, o)) : (c = { r: t, g: i, @@ -15409,7 +15427,7 @@ function() { return n.isPointInsideBBox(r, t, i) && h(e, [ [ "M", t, i ], [ "H", r.x2 + 10 ] ], 1) % 2 == 1; }, n._removedFactory = function(e) { return function() { - t("raphael.log", null, "Raphaël: you are calling to method “" + e + "” of removed object", e); + t("raphael.log", null, "Rapha\xebl: you are calling to method \u201c" + e + "\u201d of removed object", e); }; }; var Tt = n.pathBBox = function(e) { @@ -15423,7 +15441,7 @@ function() { x2: 0, y2: 0 }; - e = Ft(e); + e = Ot(e); for (var n, r = 0, o = 0, a = [], s = [], l = 0, c = e.length; c > l; l++) if (n = e[l], "M" == n[0]) r = n[1], o = n[2], a.push(r), s.push(o); else { var u = Pt(r, o, n[1], n[2], n[3], n[4], n[5], n[6]); @@ -15572,7 +15590,7 @@ function() { k = _ + p * (s && k > _ ? 1 : -1), l = S + n * j.cos(k), c = C + i * j.sin(k), f = At(l, c, n, i, r, 0, s, I, D, [ k, T, S, C ]); } E = k - _; - var M = j.cos(_), L = j.sin(_), A = j.cos(k), R = j.sin(k), F = j.tan(E / 4), O = 4 / 3 * n * F, B = 4 / 3 * i * F, $ = [ e, t ], q = [ e + O * L, t - B * M ], H = [ l + O * R, c - B * A ], z = [ l, c ]; + var M = j.cos(_), L = j.sin(_), A = j.cos(k), R = j.sin(k), O = j.tan(E / 4), F = 4 / 3 * n * O, B = 4 / 3 * i * O, $ = [ e, t ], q = [ e + F * L, t - B * M ], H = [ l + F * R, c - B * A ], z = [ l, c ]; if (q[0] = 2 * $[0] - q[0], q[1] = 2 * $[1] - q[1], u) return [ q, H, z ][N](f); f = [ q, H, z ][N](f).join()[P](","); for (var V = [], W = 0, X = f.length; X > W; W++) V[W] = W % 2 ? m(f[W - 1], f[W], h).y : m(f[W], f[W + 1], h).x; @@ -15601,7 +15619,7 @@ function() { y: $[D](0, f) } }; - }), Ft = n._path2curve = o(function(e, t) { + }), Ot = n._path2curve = o(function(e, t) { var n = !t && Et(e); if (!t && n.curve) return It(n.curve); for (var i = Nt(e), r = t && Nt(t), o = { @@ -15623,12 +15641,12 @@ function() { qx: null, qy: null }, s = (function(e, t, n) { - var i, r; - if (!e) return [ "C", t.x, t.y, t.x, t.y, t.x, t.y ]; - switch (!(e[0] in { + var i, r, o = { T: 1, Q: 1 - }) && (t.qx = t.qy = null), e[0]) { + }; + if (!e) return [ "C", t.x, t.y, t.x, t.y, t.x, t.y ]; + switch (!(e[0] in o) && (t.qx = t.qy = null), e[0]) { case "M": t.X = e[1], t.Y = e[2]; break; @@ -15670,22 +15688,24 @@ function() { }), l = function(e, t) { if (e[t].length > 7) { e[t].shift(); - for (var n = e[t]; n.length; ) e.splice(t++, 0, [ "C" ][N](n.splice(0, 6))); - e.splice(t, 1), d = $(i.length, r && r.length || 0); + for (var n = e[t]; n.length; ) u[t] = "A", r && (d[t] = "A"), e.splice(t++, 0, [ "C" ][N](n.splice(0, 6))); + e.splice(t, 1), m = $(i.length, r && r.length || 0); } }, c = function(e, t, n, o, a) { e && t && "M" == e[a][0] && "M" != t[a][0] && (t.splice(a, 0, [ "M", o.x, o.y ]), - n.bx = 0, n.by = 0, n.x = e[a][1], n.y = e[a][2], d = $(i.length, r && r.length || 0)); - }, u = 0, d = $(i.length, r && r.length || 0); d > u; u++) { - i[u] = s(i[u], o), l(i, u), r && (r[u] = s(r[u], a)), r && l(r, u), c(i, r, o, a, u), - c(r, i, a, o, u); - var p = i[u], h = r && r[u], f = p.length, m = r && h.length; - o.x = p[f - 2], o.y = p[f - 1], o.bx = Z(p[f - 4]) || o.x, o.by = Z(p[f - 3]) || o.y, - a.bx = r && (Z(h[m - 4]) || a.x), a.by = r && (Z(h[m - 3]) || a.y), a.x = r && h[m - 2], - a.y = r && h[m - 1]; + n.bx = 0, n.by = 0, n.x = e[a][1], n.y = e[a][2], m = $(i.length, r && r.length || 0)); + }, u = [], d = [], p = "", h = "", f = 0, m = $(i.length, r && r.length || 0); m > f; f++) { + i[f] && (p = i[f][0]), "C" != p && (u[f] = p, f && (h = u[f - 1])), i[f] = s(i[f], o, h), + "A" != u[f] && "C" == p && (u[f] = "C"), l(i, f), r && (r[f] && (p = r[f][0]), "C" != p && (d[f] = p, + f && (h = d[f - 1])), r[f] = s(r[f], a, h), "A" != d[f] && "C" == p && (d[f] = "C"), + l(r, f)), c(i, r, o, a, f), c(r, i, a, o, f); + var g = i[f], v = r && r[f], b = g.length, y = r && v.length; + o.x = g[b - 2], o.y = g[b - 1], o.bx = Z(g[b - 4]) || o.x, o.by = Z(g[b - 3]) || o.y, + a.bx = r && (Z(v[y - 4]) || a.x), a.by = r && (Z(v[y - 3]) || a.y), a.x = r && v[y - 2], + a.y = r && v[y - 1]; } return r || (n.curve = It(i)), r ? [ i, r ] : i; - }, null, It), Ot = (n._parseDots = o(function(e) { + }, null, It), Ft = (n._parseDots = o(function(e) { for (var t = [], i = 0, r = e.length; r > i; i++) { var o = {}, a = e[i].match(/^([^:]*):?([\d\.]*)/); if (o.color = n.getRGB(a[1]), o.color.error) return null; @@ -15704,15 +15724,15 @@ function() { e == t.top && (t.top = e.prev), e == t.bottom && (t.bottom = e.next), e.next && (e.next.prev = e.prev), e.prev && (e.prev.next = e.next); }), Bt = (n._tofront = function(e, t) { - t.top !== e && (Ot(e, t), e.next = null, e.prev = t.top, t.top.next = e, t.top = e); + t.top !== e && (Ft(e, t), e.next = null, e.prev = t.top, t.top.next = e, t.top = e); }, n._toback = function(e, t) { - t.bottom !== e && (Ot(e, t), e.next = t.bottom, e.prev = null, t.bottom.prev = e, + t.bottom !== e && (Ft(e, t), e.next = t.bottom, e.prev = null, t.bottom.prev = e, t.bottom = e); }, n._insertafter = function(e, t, n) { - Ot(e, n), t == n.top && (n.top = e), t.next && (t.next.prev = e), e.next = t.next, + Ft(e, n), t == n.top && (n.top = e), t.next && (t.next.prev = e), e.next = t.next, e.prev = t, t.next = e; }, n._insertbefore = function(e, t, n) { - Ot(e, n), t == n.bottom && (n.bottom = e), t.prev && (t.prev.next = e), e.prev = t.prev, + Ft(e, n), t == n.bottom && (n.bottom = e), t.prev && (t.prev.next = e), e.prev = t.prev, t.prev = e, e.next = t; }, n.toMatrix = function(e, t) { var n = Tt(e), i = { @@ -15787,7 +15807,7 @@ function() { width: i, height: r } : void 0; - }, n.pathToRelative = Dt, n._engine = {}, n.path2curve = Ft, n.matrix = function(e, t, n, i, r, o) { + }, n.pathToRelative = Dt, n._engine = {}, n.path2curve = Ot, n.matrix = function(e, t, n, i, r, o) { return new f(e, t, n, i, r, o); }, function(e) { function t(e) { @@ -15879,7 +15899,7 @@ function() { var t = Wt(e); return n.call(i, e, t.x, t.y); }; - if (e.addEventListener(t, r, !1), M && O[t]) { + if (e.addEventListener(t, r, !1), M && F[t]) { var o = function(t) { for (var r = Wt(t), o = t, a = 0, s = t.targetTouches && t.targetTouches.length; s > a; a++) if (t.targetTouches[a].target == e) { t = t.targetTouches[a], t.originalEvent = o, t.preventDefault = Ut, t.stopPropagation = Vt; @@ -15887,10 +15907,10 @@ function() { } return n.call(i, t, r.x, r.y); }; - e.addEventListener(O[t], o, !1); + e.addEventListener(F[t], o, !1); } return function() { - return e.removeEventListener(t, r, !1), M && O[t] && e.removeEventListener(O[t], r, !1), + return e.removeEventListener(t, r, !1), M && F[t] && e.removeEventListener(F[t], o, !1), !0; }; } : E.doc.attachEvent ? function(e, t, n, i) { @@ -15923,7 +15943,7 @@ function() { n.unmousemove(Yt).unmouseup(Kt); for (var i, r = Qt.length; r--; ) i = Qt[r], i.el._drag = {}, t("raphael.drag.end." + i.el.id, i.end_scope || i.start_scope || i.move_scope || i.el, e); Qt = []; - }, Jt = n.el = {}, Zt = F.length; Zt--; ) !function(e) { + }, Jt = n.el = {}, Zt = O.length; Zt--; ) !function(e) { n[e] = Jt[e] = function(t, i) { return n.is(t, "function") && (this.events = this.events || [], this.events.push({ name: e, @@ -15935,7 +15955,7 @@ function() { i.splice(r, 1), !i.length && delete this.events); return this; }; - }(F[Zt]); + }(O[Zt]); Jt.data = function(e, i) { var r = ut[this.id] = ut[this.id] || {}; if (0 == arguments.length) return r; @@ -16013,6 +16033,12 @@ function() { }, w.setFinish = function() { var e = this.__set__; return delete this.__set__, e; + }, w.getSize = function() { + var e = this.canvas.parentNode; + return { + width: e.offsetWidth, + height: e.offsetHeight + }; }, w.setSize = function(e, t) { return n._engine.setSize.call(this, e, t); }, w.setViewBox = function(e, t, i, r, o) { @@ -16099,7 +16125,7 @@ function() { return null == d ? c(e, t, i, r, o, a, s, l) : n.findDotsAtSegment(e, t, i, r, o, a, s, l, u(e, t, i, r, o, a, s, l, d)); }, rn = function(e, t) { return function(i, r, o) { - i = Ft(i); + i = Ot(i); for (var a, s, l, c, u, d = "", p = {}, h = 0, f = 0, m = i.length; m > f; f++) { if (l = i[f], "M" == l[0]) a = +l[1], s = +l[2]; else { if (c = nn(a, s, l[1], l[2], l[3], l[4], l[5], l[6]), h + c > r) { @@ -16277,9 +16303,18 @@ function() { (n.is(i, "function") || !i) && (r = r || i || null, i = null), e = Object(e), t = +t || 0; var o, a, s = {}; for (a in e) e[k](a) && Z(a) != a && Z(a) + "%" != a && (o = !0, s[a] = e[a]); - return o ? (i && (s.easing = i), r && (s.callback = r), new v({ + if (o) return i && (s.easing = i), r && (s.callback = r), new v({ 100: s - }, t)) : new v(e, t); + }, t); + if (r) { + var l = 0; + for (var c in e) { + var u = et(c); + e[k](c) && u > l && (l = u); + } + l += "%", !e[l].callback && (e[l].callback = r); + } + return new v(e, t); }, Jt.animate = function(e, t, i, r) { var o = this; if (o.removed) return r && r.call(o), o; @@ -16311,7 +16346,7 @@ function() { for (var n = 0; n < cn.length; n++) cn[n].el.id != this.id || e && cn[n].anim != e || t("raphael.anim.stop." + this.id, this, cn[n].anim) !== !1 && cn.splice(n--, 1); return this; }, t.on("raphael.remove", y), t.on("raphael.clear", y), Jt.toString = function() { - return "Raphaël’s object"; + return "Rapha\xebl\u2019s object"; }; var hn = function(e) { if (this.items = [], this.length = 0, this.type = "set", e) for (var t = 0, n = e.length; n > t; t++) !e[t] || e[t].constructor != Jt.constructor && e[t].constructor != hn || (this[this.items.length] = this.items[this.items.length] = e[t], @@ -16385,7 +16420,7 @@ function() { for (var t = 0, n = this.items.length; n > t; t++) e.push(this.items[t].clone()); return e; }, fn.toString = function() { - return "Raphaël‘s set"; + return "Rapha\xebl\u2018s set"; }, fn.glow = function(e) { var t = this.paper.set(); return this.forEach(function(n) { @@ -16397,7 +16432,7 @@ function() { }, fn.isPointInside = function(e, t) { var n = !1; return this.forEach(function(i) { - return i.isPointInside(e, t) ? (console.log("runned"), n = !0, !1) : void 0; + return i.isPointInside(e, t) ? (n = !0, !1) : void 0; }), n; }, n.registerFont = function(e) { if (!e.face) return e; @@ -16488,16 +16523,16 @@ function() { }; }(), n.ninja = function() { return T.was ? E.win.Raphael = T.is : delete Raphael, n; - }, n.st = fn, function(e, t, i) { + }, n.st = fn, t.on("raphael.DOMload", function() { + x = !0; + }), function(e, t, i) { function r() { /in/.test(e.readyState) ? setTimeout(r, 9) : n.eve("raphael.DOMload"); } null == e.readyState && e.addEventListener && (e.addEventListener(t, i = function() { e.removeEventListener(t, i, !1), e.readyState = "complete"; }, !1), e.readyState = "loading"), r(); - }(document, "DOMContentLoaded"), t.on("raphael.DOMload", function() { - x = !0; - }), function() { + }(document, "DOMContentLoaded"), function() { if (n.svg) { var e = "hasOwnProperty", t = String, i = parseFloat, r = parseInt, o = Math, a = o.max, s = o.abs, l = o.pow, c = /[, ]+/, u = n.eve, d = "", p = " ", h = "http://www.w3.org/1999/xlink", f = { block: "M5,0 0,2.5 5,5z", @@ -16507,7 +16542,7 @@ function() { oval: "M2.5,0A2.5,2.5,0,0,1,2.5,5 2.5,2.5,0,0,1,2.5,0z" }, m = {}; n.toString = function() { - return "Your browser supports SVG.\nYou are running Raphaël " + this.version; + return "Your browser supports SVG.\nYou are running Rapha\xebl " + this.version; }; var g = function(i, r) { if (r) { @@ -16555,7 +16590,7 @@ function() { } } return g(f, { - fill: "url(#" + u + ")", + fill: "url(" + document.location + "#" + u + ")", opacity: 1, "fill-opacity": 1 }), v.fill = d, v.opacity = 1, v.fillOpacity = 1, 1; @@ -16599,7 +16634,7 @@ function() { stroke: "none" }), i._.arrows ? o ? (i._.arrows.endPath && m[i._.arrows.endPath]--, i._.arrows.endMarker && m[i._.arrows.endMarker]--) : (i._.arrows.startPath && m[i._.arrows.startPath]--, i._.arrows.startMarker && m[i._.arrows.startMarker]--) : i._.arrows = {}, "none" != S) { - var E = "raphael-marker-" + S, T = "raphael-marker-" + v + S + C + _; + var E = "raphael-marker-" + S, T = "raphael-marker-" + v + S + C + _ + "-obj" + i.id; n._g.doc.getElementById(E) ? m[E]++ : (h.defs.appendChild(g(g("path"), { "stroke-linecap": "round", d: f[S], @@ -16669,17 +16704,21 @@ function() { i.blur(m); break; - case "href": case "title": - var x = g("title"), S = n._g.doc.createTextNode(m); - x.appendChild(S), l.appendChild(x); + var x = l.getElementsByTagName("title"); + if (x.length && (x = x[0])) x.firstChild.nodeValue = m; else { + x = g("title"); + var S = n._g.doc.createTextNode(m); + x.appendChild(S), l.appendChild(x); + } break; + case "href": case "target": var C = l.parentNode; if ("a" != C.tagName.toLowerCase()) { - var x = g("a"); - C.insertBefore(x, l), x.appendChild(l), C = x; + var k = g("a"); + C.insertBefore(k, l), k.appendChild(l), C = k; } "target" == f ? C.setAttributeNS(h, "show", "blank" == m ? "new" : m) : C.setAttributeNS(h, f, m); break; @@ -16701,24 +16740,24 @@ function() { break; case "clip-rect": - var k = t(m).split(c); - if (4 == k.length) { + var E = t(m).split(c); + if (4 == E.length) { i.clip && i.clip.parentNode.parentNode.removeChild(i.clip.parentNode); - var E = g("clipPath"), T = g("rect"); - E.id = n.createUUID(), g(T, { - x: k[0], - y: k[1], - width: k[2], - height: k[3] - }), E.appendChild(T), i.paper.defs.appendChild(E), g(l, { - "clip-path": "url(#" + E.id + ")" - }), i.clip = T; + var T = g("clipPath"), I = g("rect"); + T.id = n.createUUID(), g(I, { + x: E[0], + y: E[1], + width: E[2], + height: E[3] + }), T.appendChild(I), i.paper.defs.appendChild(T), g(l, { + "clip-path": "url(#" + T.id + ")" + }), i.clip = I; } if (!m) { - var I = l.getAttribute("clip-path"); - if (I) { - var D = n._g.doc.getElementById(I.replace(/(^url\(#|\)$)/g, d)); - D && D.parentNode.removeChild(D), g(l, { + var D = l.getAttribute("clip-path"); + if (D) { + var N = n._g.doc.getElementById(D.replace(/(^url\(#|\)$)/g, d)); + N && N.parentNode.removeChild(N), g(l, { "clip-path": d }), delete i.clip; } @@ -16772,8 +16811,8 @@ function() { break; case "stroke-width": - (1 != i._.sx || 1 != i._.sy) && (m /= a(s(i._.sx), s(i._.sy)) || 1), i.paper._vbSize && (m *= i.paper._vbSize), - l.setAttribute(f, m), u["stroke-dasharray"] && w(i, u["stroke-dasharray"], o), i._.arrows && ("startString" in i._.arrows && y(i, i._.arrows.startString), + (1 != i._.sx || 1 != i._.sy) && (m /= a(s(i._.sx), s(i._.sy)) || 1), l.setAttribute(f, m), + u["stroke-dasharray"] && w(i, u["stroke-dasharray"], o), i._.arrows && ("startString" in i._.arrows && y(i, i._.arrows.startString), "endString" in i._.arrows && y(i, i._.arrows.endString, 1)); break; @@ -16782,44 +16821,44 @@ function() { break; case "fill": - var N = t(m).match(n._ISURL); - if (N) { - E = g("pattern"); - var M = g("image"); - E.id = n.createUUID(), g(E, { + var M = t(m).match(n._ISURL); + if (M) { + T = g("pattern"); + var L = g("image"); + T.id = n.createUUID(), g(T, { x: 0, y: 0, patternUnits: "userSpaceOnUse", height: 1, width: 1 - }), g(M, { + }), g(L, { x: 0, y: 0, - "xlink:href": N[1] - }), E.appendChild(M), function(e) { - n._preload(N[1], function() { + "xlink:href": M[1] + }), T.appendChild(L), function(e) { + n._preload(M[1], function() { var t = this.offsetWidth, n = this.offsetHeight; g(e, { width: t, height: n - }), g(M, { + }), g(L, { width: t, height: n }), i.paper.safari(); }); - }(E), i.paper.defs.appendChild(E), g(l, { - fill: "url(#" + E.id + ")" - }), i.pattern = E, i.pattern && b(i); + }(T), i.paper.defs.appendChild(T), g(l, { + fill: "url(#" + T.id + ")" + }), i.pattern = T, i.pattern && b(i); break; } - var L = n.getRGB(m); - if (L.error) { + var A = n.getRGB(m); + if (A.error) { if (("circle" == i.type || "ellipse" == i.type || "r" != t(m).charAt()) && v(i, m)) { if ("opacity" in u || "fill-opacity" in u) { - var A = n._g.doc.getElementById(l.getAttribute("fill").replace(/^url\(#|\)$/g, d)); - if (A) { - var R = A.getElementsByTagName("stop"); - g(R[R.length - 1], { + var R = n._g.doc.getElementById(l.getAttribute("fill").replace(/^url\(#|\)$/g, d)); + if (R) { + var P = R.getElementsByTagName("stop"); + g(P[P.length - 1], { "stop-opacity": ("opacity" in u ? u.opacity : 1) * ("fill-opacity" in u ? u["fill-opacity"] : 1) }); } @@ -16832,13 +16871,13 @@ function() { }), !n.is(u["fill-opacity"], "undefined") && n.is(o["fill-opacity"], "undefined") && g(l, { "fill-opacity": u["fill-opacity"] }); - L[e]("opacity") && g(l, { - "fill-opacity": L.opacity > 1 ? L.opacity / 100 : L.opacity + A[e]("opacity") && g(l, { + "fill-opacity": A.opacity > 1 ? A.opacity / 100 : A.opacity }); case "stroke": - L = n.getRGB(m), l.setAttribute(f, L.hex), "stroke" == f && L[e]("opacity") && g(l, { - "stroke-opacity": L.opacity > 1 ? L.opacity / 100 : L.opacity + A = n.getRGB(m), l.setAttribute(f, A.hex), "stroke" == f && A[e]("opacity") && g(l, { + "stroke-opacity": A.opacity > 1 ? A.opacity / 100 : A.opacity }), "stroke" == f && i._.arrows && ("startString" in i._.arrows && y(i, i._.arrows.startString), "endString" in i._.arrows && y(i, i._.arrows.endString, 1)); break; @@ -16854,8 +16893,8 @@ function() { case "fill-opacity": if (u.gradient) { - A = n._g.doc.getElementById(l.getAttribute("fill").replace(/^url\(#|\)$/g, d)), - A && (R = A.getElementsByTagName("stop"), g(R[R.length - 1], { + R = n._g.doc.getElementById(l.getAttribute("fill").replace(/^url\(#|\)$/g, d)), + R && (P = R.getElementsByTagName("stop"), g(P[P.length - 1], { "stop-opacity": m })); break; @@ -16863,10 +16902,10 @@ function() { default: "font-size" == f && (m = r(m, 10) + "px"); - var P = f.replace(/(\-.)/g, function(e) { + var O = f.replace(/(\-.)/g, function(e) { return e.substring(1).toUpperCase(); }); - l.style[P] = m, i._.dirty = 1, l.setAttribute(f, m); + l.style[O] = m, i._.dirty = 1, l.setAttribute(f, m); } } _(i, o), l.style.visibility = p; @@ -16895,7 +16934,10 @@ function() { dy: v }); } - }, k = function(e, t) { + }, k = function(e) { + return e.parentNode && "a" === e.parentNode.tagName.toLowerCase() ? e.parentNode : e; + }; + Element = function(e, t) { this[0] = this.node = e, e.raphael = !0, this.id = n._oid++, e.raphaelid = this.id, this.matrix = n.matrix(), this.realPath = null, this.paper = t, this.attrs = this.attrs || {}, this._ = { @@ -16908,17 +16950,16 @@ function() { dirty: 1 }, !t.bottom && (t.bottom = this), this.prev = t.top, t.top && (t.top.next = this), t.top = this, this.next = null; - }, E = n.el; - k.prototype = E, E.constructor = k, n._engine.path = function(e, t) { + }, Jt = n.el, Element.prototype = Jt, Jt.constructor = Element, n._engine.path = function(e, t) { var n = g("path"); t.canvas && t.canvas.appendChild(n); - var i = new k(n, t); + var i = new Element(n, t); return i.type = "path", S(i, { fill: "none", stroke: "#000", path: e }), i; - }, E.rotate = function(e, n, r) { + }, Jt.rotate = function(e, n, r) { if (this.removed) return this; if (e = t(e).split(c), e.length - 1 && (n = i(e[1]), r = i(e[2])), e = i(e[0]), null == r && (n = r), null == n || null == r) { @@ -16926,17 +16967,17 @@ function() { n = o.x + o.width / 2, r = o.y + o.height / 2; } return this.transform(this._.transform.concat([ [ "r", e, n, r ] ])), this; - }, E.scale = function(e, n, r, o) { + }, Jt.scale = function(e, n, r, o) { if (this.removed) return this; if (e = t(e).split(c), e.length - 1 && (n = i(e[1]), r = i(e[2]), o = i(e[3])), e = i(e[0]), null == n && (n = e), null == o && (r = o), null == r || null == o) var a = this.getBBox(1); return r = null == r ? a.x + a.width / 2 : r, o = null == o ? a.y + a.height / 2 : o, this.transform(this._.transform.concat([ [ "s", e, n, r, o ] ])), this; - }, E.translate = function(e, n) { + }, Jt.translate = function(e, n) { return this.removed ? this : (e = t(e).split(c), e.length - 1 && (n = i(e[1])), e = i(e[0]) || 0, n = +n || 0, this.transform(this._.transform.concat([ [ "t", e, n ] ])), this); - }, E.transform = function(t) { + }, Jt.transform = function(t) { var i = this._; if (null == t) return i.transform; if (n._extractTransform(this, t), this.clip && g(this.clip, { @@ -16950,31 +16991,42 @@ function() { }); } return this; - }, E.hide = function() { + }, Jt.hide = function() { return !this.removed && this.paper.safari(this.node.style.display = "none"), this; - }, E.show = function() { + }, Jt.show = function() { return !this.removed && this.paper.safari(this.node.style.display = ""), this; - }, E.remove = function() { - if (!this.removed && this.node.parentNode) { - var e = this.paper; - e.__set__ && e.__set__.exclude(this), u.unbind("raphael.*.*." + this.id), this.gradient && e.defs.removeChild(this.gradient), - n._tear(this, e), "a" == this.node.parentNode.tagName.toLowerCase() ? this.node.parentNode.parentNode.removeChild(this.node.parentNode) : this.node.parentNode.removeChild(this.node); - for (var t in this) this[t] = "function" == typeof this[t] ? n._removedFactory(t) : null; + }, Jt.remove = function() { + var e = k(this.node); + if (!this.removed && e.parentNode) { + var t = this.paper; + t.__set__ && t.__set__.exclude(this), u.unbind("raphael.*.*." + this.id), this.gradient && t.defs.removeChild(this.gradient), + n._tear(this, t), e.parentNode.removeChild(e), this.removeData(); + for (var i in this) this[i] = "function" == typeof this[i] ? n._removedFactory(i) : null; this.removed = !0; } - }, E._getBBox = function() { + }, Jt._getBBox = function() { if ("none" == this.node.style.display) { this.show(); var e = !0; } - var t = {}; + var t, n = !1; + this.paper.canvas.parentElement ? t = this.paper.canvas.parentElement.style : this.paper.canvas.parentNode && (t = this.paper.canvas.parentNode.style), + t && "none" == t.display && (n = !0, t.display = ""); + var i = {}; try { - t = this.node.getBBox(); - } catch (n) {} finally { - t = t || {}; + i = this.node.getBBox(); + } catch (r) { + i = { + x: this.node.clientLeft, + y: this.node.clientTop, + width: this.node.clientWidth, + height: this.node.clientHeight + }; + } finally { + i = i || {}, n && (t.display = "none"); } - return e && this.hide(), t; - }, E.attr = function(t, i) { + return e && this.hide(), i; + }, Jt.attr = function(t, i) { if (this.removed) return this; if (null == t) { var r = {}; @@ -17003,29 +17055,28 @@ function() { for (var m in f) f[e](m) && (p[m] = f[m]); } return S(this, p), this; - }, E.toFront = function() { + }, Jt.toFront = function() { if (this.removed) return this; - "a" == this.node.parentNode.tagName.toLowerCase() ? this.node.parentNode.parentNode.appendChild(this.node.parentNode) : this.node.parentNode.appendChild(this.node); - var e = this.paper; - return e.top != this && n._tofront(this, e), this; - }, E.toBack = function() { + var e = k(this.node); + e.parentNode.appendChild(e); + var t = this.paper; + return t.top != this && n._tofront(this, t), this; + }, Jt.toBack = function() { if (this.removed) return this; - var e = this.node.parentNode; - "a" == e.tagName.toLowerCase() ? e.parentNode.insertBefore(this.node.parentNode, this.node.parentNode.parentNode.firstChild) : e.firstChild != this.node && e.insertBefore(this.node, this.node.parentNode.firstChild), - n._toback(this, this.paper); + var e = k(this.node), t = e.parentNode; + t.insertBefore(e, t.firstChild), n._toback(this, this.paper); this.paper; return this; - }, E.insertAfter = function(e) { - if (this.removed) return this; - var t = e.node || e[e.length - 1].node; - return t.nextSibling ? t.parentNode.insertBefore(this.node, t.nextSibling) : t.parentNode.appendChild(this.node), + }, Jt.insertAfter = function(e) { + if (this.removed || !e) return this; + var t = k(this.node), i = k(e.node || e[e.length - 1].node); + return i.nextSibling ? i.parentNode.insertBefore(t, i.nextSibling) : i.parentNode.appendChild(t), n._insertafter(this, e, this.paper), this; - }, E.insertBefore = function(e) { - if (this.removed) return this; - var t = e.node || e[0].node; - return t.parentNode.insertBefore(this.node, t), n._insertbefore(this, e, this.paper), - this; - }, E.blur = function(e) { + }, Jt.insertBefore = function(e) { + if (this.removed || !e) return this; + var t = k(this.node), i = k(e.node || e[0].node); + return i.parentNode.insertBefore(t, i), n._insertbefore(this, e, this.paper), this; + }, Jt.blur = function(e) { var t = this; if (0 !== +e) { var i = g("filter"), r = g("feGaussianBlur"); @@ -17040,7 +17091,7 @@ function() { }, n._engine.circle = function(e, t, n, i) { var r = g("circle"); e.canvas && e.canvas.appendChild(r); - var o = new k(r, e); + var o = new Element(r, e); return o.attrs = { cx: t, cy: n, @@ -17051,13 +17102,12 @@ function() { }, n._engine.rect = function(e, t, n, i, r, o) { var a = g("rect"); e.canvas && e.canvas.appendChild(a); - var s = new k(a, e); + var s = new Element(a, e); return s.attrs = { x: t, y: n, width: i, height: r, - r: o || 0, rx: o || 0, ry: o || 0, fill: "none", @@ -17066,7 +17116,7 @@ function() { }, n._engine.ellipse = function(e, t, n, i, r) { var o = g("ellipse"); e.canvas && e.canvas.appendChild(o); - var a = new k(o, e); + var a = new Element(o, e); return a.attrs = { cx: t, cy: n, @@ -17084,7 +17134,7 @@ function() { height: o, preserveAspectRatio: "none" }), a.setAttributeNS(h, "href", t), e.canvas && e.canvas.appendChild(a); - var s = new k(a, e); + var s = new Element(a, e); return s.attrs = { x: n, y: i, @@ -17095,13 +17145,14 @@ function() { }, n._engine.text = function(e, t, i, r) { var o = g("text"); e.canvas && e.canvas.appendChild(o); - var a = new k(o, e); + var a = new Element(o, e); return a.attrs = { x: t, y: i, "text-anchor": "middle", text: r, - font: n._availableAttrs.font, + "font-family": n._availableAttrs["font-family"], + "font-size": n._availableAttrs["font-size"], stroke: "none", fill: "#000" }, a.type = "text", S(a, a.attrs), a; @@ -17117,7 +17168,8 @@ function() { height: a, version: 1.1, width: o, - xmlns: "http://www.w3.org/2000/svg" + xmlns: "http://www.w3.org/2000/svg", + "xmlns:xlink": "http://www.w3.org/1999/xlink" }), 1 == t ? (l.style.cssText = c + "position:absolute;left:" + i + "px;top:" + r + "px", n._g.doc.body.appendChild(l), s = 1) : (l.style.cssText = c + "position:relative", t.firstChild ? t.insertBefore(l, t.firstChild) : t.appendChild(l)), t = new n._Paper(), @@ -17125,14 +17177,14 @@ function() { t.renderfix(), t; }, n._engine.setViewBox = function(e, t, n, i, r) { u("raphael.setViewBox", this, this._viewBox, [ e, t, n, i, r ]); - var o, s, l = a(n / this.width, i / this.height), c = this.top, d = r ? "meet" : "xMinYMin"; - for (null == e ? (this._vbSize && (l = 1), delete this._vbSize, o = "0 0 " + this.width + p + this.height) : (this._vbSize = l, + var o, s, l = this.getSize(), c = a(n / l.width, i / l.height), d = this.top, h = r ? "xMidYMid meet" : "xMinYMin"; + for (null == e ? (this._vbSize && (c = 1), delete this._vbSize, o = "0 0 " + this.width + p + this.height) : (this._vbSize = c, o = e + p + t + p + n + p + i), g(this.canvas, { viewBox: o, - preserveAspectRatio: d - }); l && c; ) s = "stroke-width" in c.attrs ? c.attrs["stroke-width"] : 1, c.attr({ + preserveAspectRatio: h + }); c && d; ) s = "stroke-width" in d.attrs ? d.attrs["stroke-width"] : 1, d.attr({ "stroke-width": s - }), c._.dirty = 1, c._.dirtyT = 1, c = c.prev; + }), d._.dirty = 1, d._.dirtyT = 1, d = d.prev; return this._viewBox = [ e, t, n, i, !!r ], this; }, n.prototype.renderfix = function() { var e, t = this.canvas, n = t.style; @@ -17147,21 +17199,21 @@ function() { }, n.prototype.clear = function() { n.eve("raphael.clear", this); for (var e = this.canvas; e.firstChild; ) e.removeChild(e.firstChild); - this.bottom = this.top = null, (this.desc = g("desc")).appendChild(n._g.doc.createTextNode("Created with Raphaël " + n.version)), + this.bottom = this.top = null, (this.desc = g("desc")).appendChild(n._g.doc.createTextNode("Created with Rapha\xebl " + n.version)), e.appendChild(this.desc), e.appendChild(this.defs = g("defs")); }, n.prototype.remove = function() { u("raphael.remove", this), this.canvas.parentNode && this.canvas.parentNode.removeChild(this.canvas); for (var e in this) this[e] = "function" == typeof this[e] ? n._removedFactory(e) : null; }; - var T = n.st; - for (var I in E) E[e](I) && !T[e](I) && (T[I] = function(e) { + var E = n.st; + for (var T in Jt) Jt[e](T) && !E[e](T) && (E[T] = function(e) { return function() { var t = arguments; return this.forEach(function(n) { n[e].apply(n, t); }); }; - }(I)); + }(T)); } }(), function() { if (n.vml) { @@ -17174,7 +17226,7 @@ function() { l: "r", c: "v", z: "x" - }, g = /([clmz]),?([^clmz]*)/gi, v = / progid:\S+Blur\([^\)]+\)/g, b = /-?[^,\s-]+/g, y = "position:absolute;left:0;top:0;width:1px;height:1px", x = 21600, w = { + }, g = /([clmz]),?([^clmz]*)/gi, v = / progid:\S+Blur\([^\)]+\)/g, b = /-?[^,\s-]+/g, y = "position:absolute;left:0;top:0;width:1px;height:1px;behavior:url(#default#VML)", x = 21600, w = { path: 1, rect: 1, image: 1 @@ -17224,7 +17276,7 @@ function() { } }; n.toString = function() { - return "Your browser doesn’t support SVG. Falling down to VML.\nYou are running Raphaël " + this.version; + return "Your browser doesn\u2019t support SVG. Falling down to VML.\nYou are running Rapha\xebl " + this.version; }; var E = function(e, n, i) { for (var r = t(n).toLowerCase().split("-"), o = i ? "end" : "start", a = r.length, s = "classic", l = "medium", c = "medium"; a--; ) switch (r[a]) { @@ -17255,7 +17307,7 @@ function() { if (g && (p.path = n._getPath[r.type](r), r._.dirty = 1), l.href && (d.href = l.href), l.title && (d.title = l.title), l.target && (d.target = l.target), l.cursor && (m.cursor = l.cursor), "blur" in l && r.blur(l.blur), (l.path && "path" == r.type || g) && (d.path = C(~t(p.path).toLowerCase().indexOf("r") ? n._pathToAbsolute(p.path) : p.path), - "image" == r.type && (r._.fillpos = [ p.x, p.y ], r._.fillsize = [ p.width, p.height ], + r._.dirty = 1, "image" == r.type && (r._.fillpos = [ p.x, p.y ], r._.fillsize = [ p.width, p.height ], k(r, 1, 1, 0, 0, 0))), "transform" in l && r.transform(l.transform), v) { var _ = +p.cx, T = +p.cy, D = +p.rx || +p.r || 0, N = +p.ry || +p.r || 0; d.path = n.format("ar{0},{1},{2},{3},{4},{1},{4},{1}x", o((_ - D) * x), o((T - N) * x), o((_ + D) * x), o((T + N) * x), o(_ * x)), @@ -17280,28 +17332,28 @@ function() { } if ("arrow-start" in l && E(b, l["arrow-start"]), "arrow-end" in l && E(b, l["arrow-end"], 1), null != l.opacity || null != l["stroke-width"] || null != l.fill || null != l.src || null != l.stroke || null != l["stroke-width"] || null != l["stroke-opacity"] || null != l["fill-opacity"] || null != l["stroke-dasharray"] || null != l["stroke-miterlimit"] || null != l["stroke-linejoin"] || null != l["stroke-linecap"]) { - var F = d.getElementsByTagName(c), O = !1; - if (F = F && F[0], !F && (O = F = M(c)), "image" == r.type && l.src && (F.src = l.src), - l.fill && (F.on = !0), (null == F.on || "none" == l.fill || null === l.fill) && (F.on = !1), - F.on && l.fill) { + var O = d.getElementsByTagName(c), F = !1; + if (O = O && O[0], !O && (F = O = M(c)), "image" == r.type && l.src && (O.src = l.src), + l.fill && (O.on = !0), (null == O.on || "none" == l.fill || null === l.fill) && (O.on = !1), + O.on && l.fill) { var B = t(l.fill).match(n._ISURL); if (B) { - F.parentNode == d && d.removeChild(F), F.rotate = !0, F.src = B[1], F.type = "tile"; + O.parentNode == d && d.removeChild(O), O.rotate = !0, O.src = B[1], O.type = "tile"; var j = r.getBBox(1); - F.position = j.x + h + j.y, r._.fillpos = [ j.x, j.y ], n._preload(B[1], function() { + O.position = j.x + h + j.y, r._.fillpos = [ j.x, j.y ], n._preload(B[1], function() { r._.fillsize = [ this.offsetWidth, this.offsetHeight ]; }); - } else F.color = n.getRGB(l.fill).hex, F.src = f, F.type = "solid", n.getRGB(l.fill).error && (b.type in { + } else O.color = n.getRGB(l.fill).hex, O.src = f, O.type = "solid", n.getRGB(l.fill).error && (b.type in { circle: 1, ellipse: 1 - } || "r" != t(l.fill).charAt()) && I(b, l.fill, F) && (p.fill = "none", p.gradient = l.fill, - F.rotate = !1); + } || "r" != t(l.fill).charAt()) && I(b, l.fill, O) && (p.fill = "none", p.gradient = l.fill, + O.rotate = !1); } if ("fill-opacity" in l || "opacity" in l) { var $ = ((+p["fill-opacity"] + 1 || 2) - 1) * ((+p.opacity + 1 || 2) - 1) * ((+n.getRGB(l.fill).o + 1 || 2) - 1); - $ = s(a($, 0), 1), F.opacity = $, F.src && (F.color = "none"); + $ = s(a($, 0), 1), O.opacity = $, O.src && (O.color = "none"); } - d.appendChild(F); + d.appendChild(O); var q = d.getElementsByTagName("stroke") && d.getElementsByTagName("stroke")[0], G = !1; !q && (G = q = M("stroke")), (l.stroke && "none" != l.stroke || l["stroke-width"] || null != l["stroke-opacity"] || l["stroke-dasharray"] || l["stroke-miterlimit"] || l["stroke-linejoin"] || l["stroke-linecap"]) && (q.on = !0), ("none" == l.stroke || null === l.stroke || null == q.on || 0 == l.stroke || 0 == l["stroke-width"]) && (q.on = !1); @@ -17311,7 +17363,7 @@ function() { if ($ = s(a($, 0), 1), null == l["stroke-width"] && (U = p["stroke-width"]), l["stroke-width"] && (q.weight = U), U && 1 > U && ($ *= U) && (q.weight = 1), q.opacity = $, l["stroke-linejoin"] && (q.joinstyle = l["stroke-linejoin"] || "miter"), q.miterlimit = l["stroke-miterlimit"] || 8, l["stroke-linecap"] && (q.endcap = "butt" == l["stroke-linecap"] ? "flat" : "square" == l["stroke-linecap"] ? "square" : "round"), - l["stroke-dasharray"]) { + "stroke-dasharray" in l) { var z = { "-": "shortdash", ".": "shortdot", @@ -17402,7 +17454,7 @@ function() { c.coordorigin = g * -x + h + v * -x, k(this, 1, 1, g, v, 0); } else c.style.filter = f, k(this, a.scalex, a.scaley, a.dx, a.dy, a.rotate); else c.style.filter = f, l.matrix = t(s), l.offset = s.offset(); - return i && (this._.transform = i), this; + return null !== i && (this._.transform = i, n._extractTransform(this, i)), this; }, N.rotate = function(e, n, r) { if (this.removed) return this; if (null != e) { @@ -17430,6 +17482,15 @@ function() { return !this.removed && (this.node.style.display = "none"), this; }, N.show = function() { return !this.removed && (this.node.style.display = f), this; + }, N.auxGetBBox = n.el.getBBox, N.getBBox = function() { + var e = this.auxGetBBox(); + if (this.paper && this.paper._viewBoxShift) { + var t = {}, n = 1 / this.paper._viewBoxShift.scale; + return t.x = e.x - this.paper._viewBoxShift.dx, t.x *= n, t.y = e.y - this.paper._viewBoxShift.dy, + t.y *= n, t.width = e.width * n, t.height = e.height * n, t.x2 = t.x + t.width, + t.y2 = t.y + t.height, t; + } + return e; }, N._getBBox = function() { return this.removed ? {} : { x: this.X + (this.bbx || 0) - this.W / 2, @@ -17557,12 +17618,12 @@ function() { this; }, n._engine.setViewBox = function(e, t, i, r, o) { n.eve("raphael.setViewBox", this, this._viewBox, [ e, t, i, r, o ]); - var s, l, c = this.width, u = this.height, d = 1 / a(i / c, r / u); - return o && (s = u / r, l = c / i, c > i * s && (e -= (c - i * s) / 2 / s), u > r * l && (t -= (u - r * l) / 2 / l)), + var a, s, l = this.getSize(), c = l.width, u = l.height; + return o && (a = u / r, s = c / i, c > i * a && (e -= (c - i * a) / 2 / a), u > r * s && (t -= (u - r * s) / 2 / s)), this._viewBox = [ e, t, i, r, !!o ], this._viewBoxShift = { dx: -e, dy: -t, - scale: d + scale: size }, this.forEach(function(e) { e.transform("..."); }), this; @@ -17570,7 +17631,7 @@ function() { var M; n._engine.initWin = function(e) { var t = e.document; - t.createStyleSheet().addRule(".rvml", "behavior:url(#default#VML)"); + t.styleSheets.length < 31 ? t.createStyleSheet().addRule(".rvml", "behavior:url(#default#VML)") : t.styleSheets[0].addRule(".rvml", "behavior:url(#default#VML)"); try { !t.namespaces.rvml && t.namespaces.add("rvml", "urn:schemas-microsoft-com:vml"), M = function(e) { @@ -17610,7 +17671,8 @@ function() { }; }(A)); } - }(), T.was ? E.win.Raphael = n : Raphael = n, n; + }(), T.was ? E.win.Raphael = n : Raphael = n, "object" == typeof exports && (module.exports = n), + n; }), function() { function e() { this.title = void 0, this.actors = [], this.signals = []; @@ -19177,10 +19239,10 @@ function() { for (var E = 0, T = this.chart.lines.length; T > E; E++) for (var I, D = this.chart.lines[E], N = D.attr("path"), M = o.attr("path"), L = 0, A = N.length - 1; A > L; L++) { var R = []; R.push([ "M", N[L][1], N[L][2] ]), R.push([ "L", N[L + 1][1], N[L + 1][2] ]); - for (var P = R[0][1], F = R[0][2], O = R[1][1], B = R[1][2], j = 0, $ = M.length - 1; $ > j; j++) { + for (var P = R[0][1], O = R[0][2], F = R[1][1], B = R[1][2], j = 0, $ = M.length - 1; $ > j; j++) { var q = []; q.push([ "M", M[j][1], M[j][2] ]), q.push([ "L", M[j + 1][1], M[j + 1][2] ]); - var G = q[0][1], H = q[0][2], U = q[1][1], z = q[1][2], V = r(P, F, O, B, G, H, U, z); + var G = q[0][1], H = q[0][2], U = q[1][1], z = q[1][2], V = r(P, O, F, B, G, H, U, z); if (V.onLine1 && V.onLine2) { var W; H === z ? G > U ? (W = [ "L", V.x + 2 * _, H ], M.splice(j + 1, 0, W), W = [ "C", V.x + 2 * _, H, V.x, H - 4 * _, V.x - 2 * _, H ], @@ -20680,11 +20742,11 @@ function() { }); }, a; }), define("text!extensions/shortcutsDefaultMapping.settings", [], function() { - return "{\n 'mod+b': bindPagedownButton('bold'),\n 'mod+i': bindPagedownButton('italic'),\n 'mod+l': bindPagedownButton('link'),\n 'mod+q': bindPagedownButton('quote'),\n 'mod+k': bindPagedownButton('code'),\n 'mod+g': bindPagedownButton('image'),\n 'mod+o': bindPagedownButton('olist'),\n 'mod+u': bindPagedownButton('ulist'),\n 'mod+h': bindPagedownButton('heading'),\n 'mod+r': bindPagedownButton('hr'),\n 'mod+z': bindPagedownButton('undo'),\n 'mod+y': bindPagedownButton('redo'),\n 'mod+shift+z': bindPagedownButton('redo'),\n 'mod+m': function(evt) {\n $('.button-open-discussion').click();\n evt.preventDefault();\n },\n '= = > space': function() {\n expand('==> ', '⇒ ');\n },\n '< = = space': function() {\n expand('<== ', '⇐ ');\n },\n 'S t a c k E d i t': function() {\n eventMgr.onMessage(\"You are stunned!!! Aren't you?\");\n }\n}\n"; + return "{\n 'mod+b': bindPagedownButton('bold'),\n 'mod+i': bindPagedownButton('italic'),\n 'mod+l': bindPagedownButton('link'),\n 'mod+q': bindPagedownButton('quote'),\n 'mod+k': bindPagedownButton('code'),\n 'mod+g': bindPagedownButton('image'),\n 'mod+o': bindPagedownButton('olist'),\n 'mod+u': bindPagedownButton('ulist'),\n 'mod+h': bindPagedownButton('heading'),\n 'mod+r': bindPagedownButton('hr'),\n 'mod+z': bindPagedownButton('undo'),\n 'mod+y': bindPagedownButton('redo'),\n 'mod+shift+z': bindPagedownButton('redo'),\n 'mod+m': function(evt) {\n $('.button-open-discussion').click();\n evt.preventDefault();\n },\n '= = > space': function() {\n expand('==> ', '\u21d2 ');\n },\n '< = = space': function() {\n expand('<== ', '\u21d0 ');\n },\n 'S t a c k E d i t': function() {\n eventMgr.onMessage(\"You are stunned!!! Aren't you?\");\n }\n}\n"; }), define("text!html/shortcutsSettingsBlock.html", [], function() { return '

Maps keyboard shortcuts to JavaScript functions.

\n
\n
\n \n
\n \n
\n
\n
\n'; }), define("text!html/tooltipSettingsShortcutsExtension.html", [], function() { - return 'You can create expanding macros like this:\n
\n
\n\'- - > space\': function() {\n
\n expand(\'--> \', \'→ \');\n
\n}\n
\n
\nMore\n info\n
\n
\n Careful! This is subject to malicious code. Don\'t copy/paste untrusted content.\n'; + return 'You can create expanding macros like this:\n
\n
\n\'- - > space\': function() {\n
\n expand(\'--> \', \'\u2192 \');\n
\n}\n
\n
\nMore\n info\n
\n
\n Careful! This is subject to malicious code. Don\'t copy/paste untrusted content.\n'; }), define("extensions/shortcuts", [ "jquery", "underscore", "utils", "mousetrap", "classes/Extension", "text!extensions/shortcutsDefaultMapping.settings", "text!html/shortcutsSettingsBlock.html", "text!html/tooltipSettingsShortcutsExtension.html" ], function($, _, utils, mousetrap, Extension, shortcutsDefaultMapping, shortcutsSettingsBlockHTML, tooltipSettingsShortcutsExtensionHTML) { function bindPagedownButton(e) { return function(t) { @@ -20809,7 +20871,7 @@ function() { reply: !0 })), r.join(""); } - var h, f = new a("comments", "Comments", !1, !0), m = [ "
\">", '
<%= author %>
', '
<%= content %>
', "
" ].join(""), g = [ '', ' ', ' ', " ", " “<%- title %>”", "" ].join(""); + var h, f = new a("comments", "Comments", !1, !0), m = [ "
\">", '
<%= author %>
', '
<%= content %>
', "
" ].join(""), g = [ '', ' ', ' ', " ", " \u201c<%- title %>\u201d", "" ].join(""); f.onEventMgrCreated = function(e) { h = e; }; @@ -20993,7 +21055,7 @@ function() { }), D = I.find("i"); }, f; }), define("text!html/findReplace.html", [], function() { - return '\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n 0 found\n
\n
\n \n \n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n'; + return '\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n 0 found\n
\n
\n \n \n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n'; }), define("text!html/findReplaceSettingsBlock.html", [], function() { return '

Helps find and replace text in the current document.

\n
\n
\n \n
\n \n
\n
\n
'; }), define("extensions/findReplace", [ "jquery", "underscore", "crel", "utils", "classes/Extension", "mousetrap", "rangy", "text!html/findReplace.html", "text!html/findReplaceSettingsBlock.html" ], function(e, t, n, i, r, o, a, s, l) { @@ -21020,7 +21082,7 @@ function() { offset: e.offset } : e; } - if (F) { + if (O) { var n = k.val(), i = I.prop("checked"), r = D.prop("checked"); if (e || n != A || i != R || r != P) { A = n, R = i, P = r, c(); @@ -21053,11 +21115,11 @@ function() { } } function p() { - y.onEditorPopover(), F = !0, _.show(), k.focus()[0].setSelectionRange(0, k.val().length), + y.onEditorPopover(), O = !0, _.show(), k.focus()[0].setSelectionRange(0, k.val().length), b.selectionMgr.adjustTop = 50, b.selectionMgr.adjustBottom = 220, d(!0); } function h() { - F = !1, _.hide(), c(), b.selectionMgr.adjustTop = 0, b.selectionMgr.adjustBottom = 0, + O = !1, _.hide(), c(), b.selectionMgr.adjustTop = 0, b.selectionMgr.adjustBottom = 0, b.focus(); } function f() { @@ -21101,7 +21163,7 @@ function() { v.onEventMgrCreated = function(e) { y = e; }; - var x, w, S, C, _, k, E, T, I, D, N, M = [], L = [], A = "", R = !1, P = !1, F = !1; + var x, w, S, C, _, k, E, T, I, D, N, M = [], L = [], A = "", R = !1, P = !1, O = !1; return v.onEditorPopover = function() { h(); }, v.onContentChanged = t.bind(d, null, !0), v.onFileOpen = t.bind(d, null, !0), @@ -21183,7 +21245,7 @@ function() { } function c(e) { if (!e) return ""; - var t = F.exec(e), n = t[1], i = t[3], r = t[2]; + var t = O.exec(e), n = t[1], i = t[3], r = t[2]; return r && (P.innerHTML = r.replace(/.*?<\/span> /g, ""); b(n, i); @@ -22996,14 +23064,14 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e pattern: /\([^\)]+\)/, inside: { "md md-paren-start": /^\(/, - "md md-title": /(['‘][^'’]*['’]|["“][^"”]*["”])(?=\)$)/, + "md md-title": /(['\u2018][^'\u2019]*['\u2019]|["\u201c][^"\u201d]*["\u201d])(?=\)$)/, "md md-src": /[^\('" \t]+(?=[\)'" \t])/, "md md-paren-end": /\)$/ } } } }, a.link = { - pattern: /\[(?:(\\.)|[^\[\]])*\]\([^\(\)\s]+(\(\S*?\))??[^\(\)\s]*?(\s(['‘][^'’]*['’]|["“][^"”]*["”]))?\)/gm, + pattern: /\[(?:(\\.)|[^\[\]])*\]\([^\(\)\s]+(\(\S*?\))??[^\(\)\s]*?(\s(['\u2018][^'\u2019]*['\u2019]|["\u201c][^"\u201d]*["\u201d]))?\)/gm, inside: { "md md-bracket-start": { pattern: /(^|[^\\])\[/, @@ -23115,7 +23183,7 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e strong: a.strong, em: a.em, strike: a.strike, - conflict: /⧸⧸/g, + conflict: /\u29f8\u29f8/g, comment: Prism.languages.markup.comment, tag: Prism.languages.markup.tag, entity: Prism.languages.markup.entity @@ -23127,14 +23195,14 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e fn: a.fn, link: a.link, linkref: a.linkref, - conflict: /⧸⧸/g + conflict: /\u29f8\u29f8/g }, a.strong.inside.rest = l, a.em.inside.rest = l, a.strike.inside.rest = l; var u = { code: a.code, strong: a.strong, em: a.em, strike: a.strike, - conflict: /⧸⧸/g, + conflict: /\u29f8\u29f8/g, comment: Prism.languages.markup.comment, tag: Prism.languages.markup.tag, entity: Prism.languages.markup.entity @@ -23310,7 +23378,7 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e X.currentMode = X.currentMode || "replace"; var n = W.replace(e, t); if (n != W) { - var i = O.setValue(n); + var i = F.setValue(n); V.setSelectionStartEnd(i.end, i.end), V.updateSelectionRange(), V.updateCursorCoordinates(!0); } } @@ -23391,7 +23459,7 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e } function S() { var e = I.textContent; - if (N.lastChild === F && "\n" == F.textContent.slice(-1) && (e = e.slice(0, -1)), + if (N.lastChild === O && "\n" == O.textContent.slice(-1) && (e = e.slice(0, -1)), e = e.replace(/\r\n?/g, "\n"), G === !1) { if (e == W) return void (0 === N.children.length && (N.innerHTML = "", K.forEach(function(e) { N.appendChild(e.elt); @@ -23459,9 +23527,9 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e }); } function E() { - F = l("span", { + O = l("span", { "class": "token lf" - }), F.textContent = "\n", N.appendChild(F); + }), O.textContent = "\n", N.appendChild(O); } function T(e) { var t = et(e.text); @@ -23475,7 +23543,7 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e }); i.generated = !0, i.innerHTML = t, e.elt = i; } - var I, D, N, M, L, A, R, P, F, O = {}, B = 0, j = function() { + var I, D, N, M, L, A, R, P, O, F = {}, B = 0, j = function() { var e, n = 0, r = function() { var e = Date.now(); P.refreshPreview(), n = Date.now() - e; @@ -23496,7 +23564,7 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e G = !0, q = e; }); var H = new u(); - O.watcher = H; + F.watcher = H; var U = new a(), z = s.create({ objectHash: function(e) { return JSON.stringify(e); @@ -23508,13 +23576,13 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e minLength: 9999999 } }), V = new d(); - O.selectionMgr = V, e(document).on("selectionchange", ".editor-content", t.bind(V.saveSelectionState, V, !0, !1)), - O.adjustCursorPosition = p; + F.selectionMgr = V, e(document).on("selectionchange", ".editor-content", t.bind(V.saveSelectionState, V, !0, !1)), + F.adjustCursorPosition = p; var W; - O.setValue = h, O.replace = f, O.replaceAll = m, O.replacePreviousText = g, O.setValueNoWatch = v, - O.getValue = b, O.focus = y; + F.setValue = h, F.replace = f, F.replaceAll = m, F.replacePreviousText = g, F.setValueNoWatch = v, + F.getValue = b, F.focus = y; var X = new x(); - O.undoMgr = X, r.addListener("onDiscussionCreated", w), r.addListener("onDiscussionRemoved", w), + F.undoMgr = X, r.addListener("onDiscussionCreated", w), r.addListener("onDiscussionRemoved", w), r.addListener("onCommentsChanged", w); var Q = t.debounce(function() { var e = window.getSelection(); @@ -23522,7 +23590,7 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e e.modify("move", "forward", "character")) : (e.modify("move", "forward", "character"), e.modify("move", "backward", "character"))); }, 10); - O.adjustCommentOffsets = C, O.init = function() { + F.adjustCommentOffsets = C, F.init = function() { if (I = document.getElementById("wmd-input"), D = e(I), N = I.querySelector(".editor-content"), M = e(N), L = I.querySelector(".editor-margin"), A = e(L), R = document.querySelector(".preview-container"), D.addClass(i.editorFontClass), H.startWatching(), e(I).scroll(function() { @@ -23638,7 +23706,7 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e var e = { "&": "&", "<": "<", - " ": " " + "\xa0": " " }; return function(t) { return t.replace(/[&<\u00a0]/g, function(t) { @@ -23646,7 +23714,7 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e }); }; }(); - return r.onEditorCreated(O), O; + return r.onEditorCreated(F), F; }), function(e, t) { function n() { i.READY || (b.determineEventTypes(), f.each(i.gestures, function(e) { @@ -23656,10 +23724,10 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e var i = function(e, t) { return new i.Instance(e, t || {}); }; - i.VERSION = "1.0.10", i.defaults = { + i.VERSION = "1.0.11", i.defaults = { stop_browser_behavior: { userSelect: "none", - touchAction: "none", + touchAction: "pan-y", touchCallout: "none", contentZooming: "none", userDrag: "none", @@ -24142,13 +24210,13 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e x.width = v.width, x.height = b.height - P, b.applyCss(), y.applyCss(), x.applyCss(), window.viewerMode) return k.width = x.width, k.height = x.height, E.width = x.width, E.height = x.height, k.applyCss(), E.applyCss(), f(); - if (!(w.isOpen && x.height < F.height + A)) { + if (!(w.isOpen && x.height < O.height + A)) { if (lt) { if (k.isOpen) { - if (k.halfSize && (k.height = (x.height + A) / 2), k.height < O.height && (k.height = O.height), - k.y = x.height - k.height, k.y < F.height) { - var e = x.height - F.height; - if (e < O.height) { + if (k.halfSize && (k.height = (x.height + A) / 2), k.height < F.height && (k.height = F.height), + k.y = x.height - k.height, k.y < O.height) { + var e = x.height - O.height; + if (e < F.height) { k.isOpen = !1, k.$elt.trigger("hide.layout.toggle").trigger("hidden.layout.toggle"); continue; } @@ -24159,10 +24227,10 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e E.width = k.width, T.width = R, I.width = R, I.x = (k.width - R) / 2, D.width = E.width; } else { if (k.isOpen) { - if (k.halfSize && (k.width = (x.width + A) / 2), k.width < O.width && (k.width = O.width), - k.x = x.width - k.width, k.x < F.width) { - var t = x.width - F.width; - if (t < O.width) { + if (k.halfSize && (k.width = (x.width + A) / 2), k.width < F.width && (k.width = F.width), + k.x = x.width - k.width, k.x < O.width) { + var t = x.width - O.width; + if (t < F.width) { k.isOpen = !1, k.$elt.trigger("hide.layout.toggle").trigger("hidden.layout.toggle"); continue; } @@ -24180,10 +24248,10 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e _.applyCss(), k.applyCss(), E.applyCss(), I.applyCss(), D.applyCss(), T.applyCss(), m(), N.adjustPosition(), f(); } - var v, b, y, x, w, S, C, _, k, E, T, I, D, N, M, L = {}, A = 32, R = 60, P = 50, F = { + var v, b, y, x, w, S, C, _, k, E, T, I, D, N, M, L = {}, A = 32, R = 60, P = 50, O = { width: 250, height: 140 - }, O = { + }, F = { width: 330, height: 160 }, B = 280, j = 320, $ = 200, q = 18, G = 130, H = { @@ -24994,7 +25062,7 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e e.extend(l, n), s.settings = JSON.stringify(l), s.themeV4 = i); } function S(e) { - var t = e && e.app == O && (e.chargeOption && "once" == e.chargeOption.alias || e.subscriptionOption && "yearly" == e.subscriptionOption.alias); + var t = e && e.app == F && (e.chargeOption && "once" == e.chargeOption.alias || e.subscriptionOption && "yearly" == e.subscriptionOption.alias); return c.isSponsor = t, t; } function C() { @@ -25011,9 +25079,9 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e T.setOffline = function() { A = a.currentTime, L === !1 && (L = !0, c.onOfflineChanged(!0)); }; - var R, P, F; + var R, P, O; T.initEditor = function(t) { - if (void 0 !== F && c.onFileClosed(F), F = t, void 0 !== P) return i.undoMgr.init(), + if (void 0 !== O && c.onFileClosed(O), O = t, void 0 !== P) return i.undoMgr.init(), P.uiManager.setUndoRedoButtonStates(); var n = new Markdown.Converter(), r = { _DoItalicsAndBold: function(e) { @@ -25048,8 +25116,8 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e y()); }, 1e3), c.onReady(); }; - var O = "ESTHdCYOi18iLhhO", B = new u({ - applicationID: O + var F = "ESTHdCYOi18iLhhO", B = new u({ + applicationID: F }), j = e(), $ = t.debounce(function() { L || B.getPaymentsImmediate(function(n, i) { C(), S(i) || t.each(document.querySelectorAll(".modal-body"), function(t) { @@ -25278,8 +25346,9 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e return l.prototype.syncMerge = function(n, a, s, l, p, h) { function f(e) { function t() { - (i[1] || r[1]) && (i[1] && r[1] ? (i[1] = "⧸⧸" + i[1] + "⧸⧸", r[1] += "⧸⧸", n.push(i), - n.push(r)) : n.push([ 0, i[1] + r[1] ]), i = [ -1, "" ], r = [ 1, "" ]); + (i[1] || r[1]) && (i[1] && r[1] ? (i[1] = "\u29f8\u29f8" + i[1] + "\u29f8\u29f8", + r[1] += "\u29f8\u29f8", n.push(i), n.push(r)) : n.push([ 0, i[1] + r[1] ]), i = [ -1, "" ], + r = [ 1, "" ]); } var n = [], i = [ -1, "" ], r = [ 1, "" ], o = 20; return e.forEach(function(a, s) { @@ -25306,7 +25375,7 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e } var m = n.content, g = n.title, v = n.discussionListJSON, b = n.discussionList, y = t.crc32(m), x = t.crc32(g), w = t.crc32(v), S = t.crc32(s), C = t.crc32(l), _ = t.crc32(h), k = a.contentCRC != y, E = a.contentCRC != S, T = m != s && E, I = T && k; a.titleCRC = a.titleCRC || x; - var D, N, M = a.titleCRC != x, L = a.titleCRC != C, A = g != l && L, R = A && M, P = a.discussionListCRC != w, F = a.discussionListCRC != _, O = v != h && F, B = O && P, j = [], $ = s, q = l, G = p, H = !1, U = !1, z = !1; + var D, N, M = a.titleCRC != x, L = a.titleCRC != C, A = g != l && L, R = A && M, P = a.discussionListCRC != w, O = a.discussionListCRC != _, F = v != h && O, B = F && P, j = [], $ = s, q = l, G = p, H = !1, U = !1, z = !1; if (!d && (I || R || B) || I && void 0 === a.content || R && void 0 === a.title || B && void 0 === a.discussionList) r.createFile(g + " (backup)", m, v), i.onMessage('Conflict detected on "' + g + '". A backup has been created locally.'); else { if (I) { @@ -25325,7 +25394,7 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e }), X && (X.selectionEnd = $.length, j.push(X)); } } - T && (P && (H = !0), F ? U = !0 : (H = !0, G = b)), B && (z = !0), R && (N = c.patch_make(a.title, g), + T && (P && (H = !0), O ? U = !0 : (H = !0, G = b)), B && (z = !0), R && (N = c.patch_make(a.title, g), q = c.patch_apply(N, l)[0]); } var Q; @@ -25335,7 +25404,7 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e selectionStart: o.selectionMgr.selectionStart, selectionEnd: o.selectionMgr.selectionEnd }, Y.push(Q), n.newDiscussion && Y.push(n.newDiscussion)), H && (Y = Y.concat(e.values(b))), - O |= o.adjustCommentOffsets(m, $, Y); + F |= o.adjustCommentOffsets(m, $, Y); } if (U) { var K = e.values(p); @@ -25347,14 +25416,14 @@ this.DIFF_EQUAL = DIFF_EQUAL, define("diff_match_patch_uncompressed", function(e e || delete p[t]; }); } - return j.length && (O = !0, j.forEach(function(n) { + return j.length && (F = !0, j.forEach(function(n) { var i; do i = t.id(); while (e.has(G, i)); n.discussionIndex = i, G[i] = n; })), A && (n.title = q, i.onTitleChanged(n), i.onMessage('"' + g + '" has been renamed to "' + q + '" on ' + this.providerName + ".")), - (T || O) && o.watcher.noWatch(e.bind(function() { + (T || F) && o.watcher.noWatch(e.bind(function() { if (T && (r.currentFile === n && (o.setValueNoWatch($), Q && o.selectionMgr.setSelectionStartEnd(Q.selectionStart, Q.selectionEnd)), - n.content = $, i.onContentChanged(n, $)), O) { + n.content = $, i.onContentChanged(n, $)), F) { n.discussionList = G; var t = u.diff(b, G), a = !1; e.each(t, function(t, r) { diff --git a/public/res-min/require.js b/public/res-min/require.js index 24b061e6..77a5bb1d 100644 --- a/public/res-min/require.js +++ b/public/res-min/require.js @@ -1,5 +1,5 @@ /** vim: et:ts=4:sw=4:sts=4 - * @license RequireJS 2.1.11 Copyright (c) 2010-2014, The Dojo Foundation All Rights Reserved. + * @license RequireJS 2.1.15 Copyright (c) 2010-2014, The Dojo Foundation All Rights Reserved. * Available via the MIT or new BSD license. * see: http://github.com/jrburke/requirejs for details */ @@ -12,7 +12,7 @@ var requirejs, require, define; (function (global) { var req, s, head, baseElement, dataMain, src, interactiveScript, currentlyAddingScript, mainScript, subPath, - version = '2.1.11', + version = '2.1.15', commentRegExp = /(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg, cjsRequireRegExp = /[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g, jsSuffixRegExp = /\.js$/, @@ -180,7 +180,7 @@ var requirejs, require, define; if (typeof requirejs !== 'undefined') { if (isFunction(requirejs)) { - //Do not overwrite and existing requirejs instance. + //Do not overwrite an existing requirejs instance. return; } cfg = requirejs; @@ -232,21 +232,20 @@ var requirejs, require, define; * @param {Array} ary the array of path segments. */ function trimDots(ary) { - var i, part, length = ary.length; - for (i = 0; i < length; i++) { + var i, part; + for (i = 0; i < ary.length; i++) { part = ary[i]; if (part === '.') { ary.splice(i, 1); i -= 1; } else if (part === '..') { - if (i === 1 && (ary[2] === '..' || ary[0] === '..')) { - //End of the line. Keep at least one non-dot - //path segment at the front so it can be mapped - //correctly to disk. Otherwise, there is likely - //no path mapping for a path starting with '..'. - //This can still fail, but catches the most reasonable - //uses of .. - break; + // If at the start, or previous value is still .., + // keep them so that when converted to a path it may + // still work when converted to a path, even though + // as an ID it is less than ideal. In larger point + // releases, may be better to just kick out an error. + if (i === 0 || (i == 1 && ary[2] === '..') || ary[i - 1] === '..') { + continue; } else if (i > 0) { ary.splice(i - 1, 2); i -= 2; @@ -267,43 +266,37 @@ var requirejs, require, define; */ function normalize(name, baseName, applyMap) { var pkgMain, mapValue, nameParts, i, j, nameSegment, lastIndex, - foundMap, foundI, foundStarMap, starI, - baseParts = baseName && baseName.split('/'), - normalizedBaseParts = baseParts, + foundMap, foundI, foundStarMap, starI, normalizedBaseParts, + baseParts = (baseName && baseName.split('/')), map = config.map, starMap = map && map['*']; //Adjust any relative paths. - if (name && name.charAt(0) === '.') { - //If have a base name, try to normalize against it, - //otherwise, assume it is a top-level require that will - //be relative to baseUrl in the end. - if (baseName) { + if (name) { + name = name.split('/'); + lastIndex = name.length - 1; + + // If wanting node ID compatibility, strip .js from end + // of IDs. Have to do this here, and not in nameToUrl + // because node allows either .js or non .js to map + // to same file. + if (config.nodeIdCompat && jsSuffixRegExp.test(name[lastIndex])) { + name[lastIndex] = name[lastIndex].replace(jsSuffixRegExp, ''); + } + + // Starts with a '.' so need the baseName + if (name[0].charAt(0) === '.' && baseParts) { //Convert baseName to array, and lop off the last part, //so that . matches that 'directory' and not name of the baseName's //module. For instance, baseName of 'one/two/three', maps to //'one/two/three.js', but we want the directory, 'one/two' for //this normalization. normalizedBaseParts = baseParts.slice(0, baseParts.length - 1); - name = name.split('/'); - lastIndex = name.length - 1; - - // If wanting node ID compatibility, strip .js from end - // of IDs. Have to do this here, and not in nameToUrl - // because node allows either .js or non .js to map - // to same file. - if (config.nodeIdCompat && jsSuffixRegExp.test(name[lastIndex])) { - name[lastIndex] = name[lastIndex].replace(jsSuffixRegExp, ''); - } - name = normalizedBaseParts.concat(name); - trimDots(name); - name = name.join('/'); - } else if (name.indexOf('./') === 0) { - // No baseName, so this is ID is resolved relative - // to baseUrl, pull off the leading dot. - name = name.substring(2); } + + trimDots(name); + name = name.join('/'); } //Apply map config if available. @@ -379,7 +372,13 @@ var requirejs, require, define; //retry pathConfig.shift(); context.require.undef(id); - context.require([id]); + + //Custom require that does not do map translation, since + //ID is "absolute", already mapped/resolved. + context.makeRequire(null, { + skipMap: true + })([id]); + return true; } } @@ -445,7 +444,16 @@ var requirejs, require, define; return normalize(name, parentName, applyMap); }); } else { - normalizedName = normalize(name, parentName, applyMap); + // If nested plugin references, then do not try to + // normalize, as it will not normalize correctly. This + // places a restriction on resourceIds, and the longer + // term solution is not to normalize until plugins are + // loaded and all normalizations to allow for async + // loading of a loader plugin. But for now, fixes the + // common uses. Details in #1131 + normalizedName = name.indexOf('!') === -1 ? + normalize(name, parentName, applyMap) : + name; } } else { //A regular module. diff --git a/public/res/constants.js b/public/res/constants.js index cc1b37c8..ee30d573 100644 --- a/public/res/constants.js +++ b/public/res/constants.js @@ -1,6 +1,6 @@ define([], function() { var constants = {}; - constants.VERSION = "4.3.8"; + constants.VERSION = "4.3.9"; constants.MAIN_URL = "https://stackedit.io/"; constants.GOOGLE_ANALYTICS_ACCOUNT_ID = "UA-39556145-1"; constants.GOOGLE_API_KEY = "AIzaSyAeCU8CGcSkn0z9js6iocHuPBX4f_mMWkw"; diff --git a/public/res/eventMgr.js b/public/res/eventMgr.js index 94f0c299..7b124dce 100644 --- a/public/res/eventMgr.js +++ b/public/res/eventMgr.js @@ -231,7 +231,14 @@ define([ setTimeout(function() { var html = ""; _.each(previewContentsElt.children, function(elt) { - html += elt.innerHTML; + if(!elt.exportableHtml) { + var clonedElt = elt.cloneNode(true); + _.each(clonedElt.querySelectorAll('.MathJax, .MathJax_Display, .MathJax_Preview'), function(elt) { + elt.parentNode.removeChild(elt); + }); + elt.exportableHtml = clonedElt.innerHTML; + } + html += elt.exportableHtml; }); var htmlWithComments = utils.trim(html); var htmlWithoutComments = htmlWithComments.replace(/ .*?<\/span> /g, '');