glebtv-ckeditor 4.4.3.4 → 4.4.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (191) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/ckeditor/override.js.erb +1 -1
  3. data/lib/ckeditor/version.rb +1 -1
  4. data/vendor/assets/javascripts/ckeditor/build-config.js +12 -8
  5. data/vendor/assets/javascripts/ckeditor/ckeditor.js +674 -658
  6. data/vendor/assets/javascripts/ckeditor/config.js +2 -2
  7. data/vendor/assets/javascripts/ckeditor/lang/en.js +2 -2
  8. data/vendor/assets/javascripts/ckeditor/lang/ru.js +2 -2
  9. data/vendor/assets/javascripts/ckeditor/plugins/about/dialogs/about.js +1 -1
  10. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/css/codemirror.min.css +1 -1
  11. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.addons.min.js +1 -1
  12. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.addons.search.min.js +1 -1
  13. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.min.js +1 -1
  14. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.htmlmixed.min.js +1 -1
  15. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.javascript.min.js +1 -1
  16. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.mode.php.min.js +1 -1
  17. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/plugin.js +142 -94
  18. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/3024-day.css +5 -1
  19. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/3024-night.css +3 -0
  20. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/ambiance.css +4 -1
  21. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/base16-dark.css +4 -2
  22. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/base16-light.css +2 -0
  23. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/blackboard.css +2 -0
  24. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/cobalt.css +2 -0
  25. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/erlang-dark.css +2 -0
  26. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/lesser-dark.css +2 -0
  27. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/mbo.css +13 -15
  28. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/mdn-like.css +1 -1
  29. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/midnight.css +2 -0
  30. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/monokai.css +2 -0
  31. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/neo.css +3 -0
  32. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/night.css +2 -0
  33. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/paraiso-dark.css +2 -0
  34. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/paraiso-light.css +2 -0
  35. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/pastel-on-dark.css +2 -0
  36. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/rubyblue.css +2 -0
  37. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/solarized.css +3 -5
  38. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/the-matrix.css +2 -0
  39. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/tomorrow-night-eighties.css +2 -0
  40. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/twilight.css +2 -0
  41. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/vibrant-ink.css +2 -0
  42. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/xq-dark.css +2 -0
  43. data/vendor/assets/javascripts/ckeditor/plugins/icons.png +0 -0
  44. data/vendor/assets/javascripts/ckeditor/plugins/icons_hidpi.png +0 -0
  45. data/vendor/assets/javascripts/ckeditor/plugins/iframe/images/placeholder.png +0 -0
  46. data/vendor/assets/javascripts/ckeditor/plugins/image/dialogs/image.js +31 -31
  47. data/vendor/assets/javascripts/ckeditor/plugins/link/images/anchor.png +0 -0
  48. data/vendor/assets/javascripts/ckeditor/plugins/link/images/hidpi/anchor.png +0 -0
  49. data/vendor/assets/javascripts/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png +0 -0
  50. data/vendor/assets/javascripts/ckeditor/plugins/magicline/images/hidpi/icon.png +0 -0
  51. data/vendor/assets/javascripts/ckeditor/plugins/magicline/images/icon-rtl.png +0 -0
  52. data/vendor/assets/javascripts/ckeditor/plugins/magicline/images/icon.png +0 -0
  53. data/vendor/assets/javascripts/ckeditor/plugins/map/plugin.js +0 -0
  54. data/vendor/assets/javascripts/ckeditor/plugins/pastefromword/filter/default.js +7 -7
  55. data/vendor/assets/javascripts/ckeditor/plugins/scayt/dialogs/options.js +16 -16
  56. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_address.png +0 -0
  57. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_blockquote.png +0 -0
  58. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_div.png +0 -0
  59. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_h1.png +0 -0
  60. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_h2.png +0 -0
  61. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_h3.png +0 -0
  62. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_h4.png +0 -0
  63. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_h5.png +0 -0
  64. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_h6.png +0 -0
  65. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_p.png +0 -0
  66. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_pre.png +0 -0
  67. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/angel_smile.gif +0 -0
  68. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/angel_smile.png +0 -0
  69. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/angry_smile.gif +0 -0
  70. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/angry_smile.png +0 -0
  71. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/broken_heart.gif +0 -0
  72. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/broken_heart.png +0 -0
  73. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/confused_smile.gif +0 -0
  74. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/confused_smile.png +0 -0
  75. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/cry_smile.png +0 -0
  76. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/devil_smile.png +0 -0
  77. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/embaressed_smile.gif +0 -0
  78. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/embarrassed_smile.gif +0 -0
  79. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/embarrassed_smile.png +0 -0
  80. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/envelope.gif +0 -0
  81. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/envelope.png +0 -0
  82. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/heart.gif +0 -0
  83. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/heart.png +0 -0
  84. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/kiss.gif +0 -0
  85. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/kiss.png +0 -0
  86. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/lightbulb.gif +0 -0
  87. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/lightbulb.png +0 -0
  88. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/omg_smile.gif +0 -0
  89. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/omg_smile.png +0 -0
  90. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/regular_smile.gif +0 -0
  91. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/regular_smile.png +0 -0
  92. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/sad_smile.gif +0 -0
  93. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/sad_smile.png +0 -0
  94. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/shades_smile.gif +0 -0
  95. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/shades_smile.png +0 -0
  96. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/teeth_smile.gif +0 -0
  97. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/teeth_smile.png +0 -0
  98. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/thumbs_down.gif +0 -0
  99. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/thumbs_down.png +0 -0
  100. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/thumbs_up.gif +0 -0
  101. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/thumbs_up.png +0 -0
  102. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/tongue_smile.gif +0 -0
  103. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/tongue_smile.png +0 -0
  104. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/tounge_smile.gif +0 -0
  105. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif +0 -0
  106. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.png +0 -0
  107. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/wink_smile.gif +0 -0
  108. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/wink_smile.png +0 -0
  109. data/vendor/assets/javascripts/ckeditor/plugins/stylesheetparser/plugin.js +152 -163
  110. data/vendor/assets/javascripts/ckeditor/plugins/wordcount/plugin.js +1 -1
  111. data/vendor/assets/javascripts/ckeditor/plugins/wsc/dialogs/wsc.js +68 -68
  112. data/vendor/assets/javascripts/ckeditor/plugins/youtube/lang/en.js +5 -4
  113. data/vendor/assets/javascripts/ckeditor/plugins/youtube/lang/ru.js +2 -1
  114. data/vendor/assets/javascripts/ckeditor/plugins/youtube/plugin.js +34 -10
  115. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog.css +5 -0
  116. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie.css +5 -0
  117. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie7.css +5 -0
  118. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie8.css +5 -0
  119. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_iequirks.css +5 -0
  120. data/vendor/assets/javascripts/ckeditor/skins/moono/editor.css +5 -0
  121. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_gecko.css +5 -0
  122. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie.css +5 -0
  123. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie7.css +5 -0
  124. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie8.css +5 -0
  125. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_iequirks.css +5 -0
  126. data/vendor/assets/javascripts/ckeditor/skins/moono/icons.png +0 -0
  127. data/vendor/assets/javascripts/ckeditor/skins/moono/icons_hidpi.png +0 -0
  128. data/vendor/assets/javascripts/ckeditor/skins/moono/images/arrow.png +0 -0
  129. data/vendor/assets/javascripts/ckeditor/skins/moono/images/close.png +0 -0
  130. data/vendor/assets/javascripts/ckeditor/skins/moono/images/hidpi/close.png +0 -0
  131. data/vendor/assets/javascripts/ckeditor/skins/moono/images/hidpi/lock-open.png +0 -0
  132. data/vendor/assets/javascripts/ckeditor/skins/moono/images/hidpi/lock.png +0 -0
  133. data/vendor/assets/javascripts/ckeditor/skins/moono/images/hidpi/refresh.png +0 -0
  134. data/vendor/assets/javascripts/ckeditor/skins/moono/images/lock-open.png +0 -0
  135. data/vendor/assets/javascripts/ckeditor/skins/moono/images/lock.png +0 -0
  136. data/vendor/assets/javascripts/ckeditor/skins/moono/images/refresh.png +0 -0
  137. metadata +16 -96
  138. data/test/dummy/log/test.log +0 -301
  139. data/test/dummy/tmp/cache/assets/test/sprockets/0ff571a66f03f4c98305b82fbc097934 +0 -0
  140. data/test/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  141. data/test/dummy/tmp/cache/assets/test/sprockets/1c2a2034cd1d6490a47e1f2b22a328f3 +0 -0
  142. data/test/dummy/tmp/cache/assets/test/sprockets/233a499dd1009ab5b2a8040346715629 +0 -0
  143. data/test/dummy/tmp/cache/assets/test/sprockets/2a79c1fcf4595c4bfb3a1e77a732b9e9 +0 -0
  144. data/test/dummy/tmp/cache/assets/test/sprockets/2bb1e656d1d1c20542dd47020608ce4b +0 -0
  145. data/test/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  146. data/test/dummy/tmp/cache/assets/test/sprockets/371bf96e99717688ed7313a0c53f4212 +0 -0
  147. data/test/dummy/tmp/cache/assets/test/sprockets/3c088129885aa2261da0ab21707aa851 +0 -0
  148. data/test/dummy/tmp/cache/assets/test/sprockets/5296ab0e7196335ed50f33e398de0470 +0 -0
  149. data/test/dummy/tmp/cache/assets/test/sprockets/62133d9323b94de8b0cd2a3e490e0374 +0 -0
  150. data/test/dummy/tmp/cache/assets/test/sprockets/6fc757c2c8329244ca95d6909865bbc2 +0 -0
  151. data/test/dummy/tmp/cache/assets/test/sprockets/70f2d021b0f59639252116032aa12a5d +0 -0
  152. data/test/dummy/tmp/cache/assets/test/sprockets/73eff3be45044b7438486d533547c02c +0 -0
  153. data/test/dummy/tmp/cache/assets/test/sprockets/7869bf4c6f26bcd697a78ffd20655de5 +0 -0
  154. data/test/dummy/tmp/cache/assets/test/sprockets/88d81ff5585179f4acb7ba76bdcb1244 +0 -0
  155. data/test/dummy/tmp/cache/assets/test/sprockets/990c65e42e2a681340e62644dd07782b +0 -0
  156. data/test/dummy/tmp/cache/assets/test/sprockets/aaf14684bcb6dafb17154d27c3d5a5de +0 -0
  157. data/test/dummy/tmp/cache/assets/test/sprockets/b2141ea733727ae31693b5129d431629 +0 -0
  158. data/test/dummy/tmp/cache/assets/test/sprockets/c1469bfe5d5645440961cc1e8fd48120 +0 -0
  159. data/test/dummy/tmp/cache/assets/test/sprockets/c479f0465142b7c9c5a9c58a256335d7 +0 -0
  160. data/test/dummy/tmp/cache/assets/test/sprockets/c73d53992216d52410b542dce76742ad +0 -0
  161. data/test/dummy/tmp/cache/assets/test/sprockets/c7476f60577593bf79ca5b6334b86903 +0 -0
  162. data/test/dummy/tmp/cache/assets/test/sprockets/cb4a5e7fc592c6023ed2acc5953b4685 +0 -0
  163. data/test/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  164. data/test/dummy/tmp/cache/assets/test/sprockets/d7e7d3b3729ff516f81682711ea8a53a +0 -0
  165. data/test/dummy/tmp/cache/assets/test/sprockets/d9b8613a01ff7c7d9fe1a6b7cd5497ff +0 -0
  166. data/test/dummy/tmp/cache/assets/test/sprockets/e4513c04c145290b038978a8f471d244 +0 -0
  167. data/test/dummy/tmp/cache/assets/test/sprockets/e65823156ac3891c4779224e828d4877 +0 -0
  168. data/test/dummy/tmp/cache/assets/test/sprockets/f20469686afebc55828d93a978e5ff20 +0 -0
  169. data/test/dummy/tmp/cache/assets/test/sprockets/f24d6c64fd96102c27c1f10e82ebf864 +0 -0
  170. data/test/dummy/tmp/cache/assets/test/sprockets/f33022711bcfc1cae3955a1de79fe280 +0 -0
  171. data/test/dummy/tmp/cache/assets/test/sprockets/f69b1a9a1323d97109283e5bd378c23d +0 -0
  172. data/test/tmp/app/models/ckeditor/asset.rb +0 -5
  173. data/test/tmp/app/models/ckeditor/attachment_file.rb +0 -12
  174. data/test/tmp/app/models/ckeditor/picture.rb +0 -13
  175. data/test/tmp/config/initializers/ckeditor.rb +0 -26
  176. data/test/tmp/config/routes.rb +0 -5
  177. data/vendor/assets/javascripts/ckeditor/README.md +0 -39
  178. data/vendor/assets/javascripts/ckeditor/plugins/scayt/README.md +0 -25
  179. data/vendor/assets/javascripts/ckeditor/plugins/wsc/README.md +0 -25
  180. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog.css.scss +0 -771
  181. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie.css.scss +0 -812
  182. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie7.css.scss +0 -844
  183. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie8.css.scss +0 -825
  184. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_iequirks.css.scss +0 -816
  185. data/vendor/assets/javascripts/ckeditor/skins/moono/editor.css.scss +0 -2133
  186. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_gecko.css.scss +0 -2142
  187. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie.css.scss +0 -2191
  188. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie7.css.scss +0 -2359
  189. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie8.css.scss +0 -2203
  190. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_iequirks.css.scss +0 -2251
  191. data/vendor/assets/javascripts/ckeditor/skins/moono/readme.md +0 -51
@@ -1,6 +1,6 @@
1
1
  /**
2
- * @license Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved.
3
- * For licensing, see LICENSE.html or http://ckeditor.com/license
2
+ * @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3
+ * For licensing, see LICENSE.md or http://ckeditor.com/license
4
4
  */
5
5
 
6
6
  CKEDITOR.editorConfig = function( config ) {
@@ -1,5 +1,5 @@
1
1
  /*
2
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
2
+ Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved.
3
3
  For licensing, see LICENSE.html or http://ckeditor.com/license
4
4
  */
5
- CKEDITOR.lang['en']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protocol","upload":"Upload","uploadSubmit":"Send it to the Server","image":"Image","flash":"Flash","form":"Form","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<not set>","id":"Id","name":"Name","langDir":"Language Direction","langDirLtr":"Left to Right (LTR)","langDirRtl":"Right to Left (RTL)","langCode":"Language Code","longDescr":"Long Description URL","cssClass":"Stylesheet Classes","advisoryTitle":"Advisory Title","cssStyle":"Style","ok":"OK","cancel":"Cancel","close":"Close","preview":"Preview","resize":"Resize","generalTab":"General","advancedTab":"Advanced","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"Target","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"Width","height":"Height","align":"Alignment","alignLeft":"Left","alignRight":"Right","alignCenter":"Center","alignJustify":"Justify","alignTop":"Top","alignMiddle":"Middle","alignBottom":"Bottom","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Bold","italic":"Italic","strike":"Strike Through","subscript":"Subscript","superscript":"Superscript","underline":"Underline"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"clipboard":{"copy":"Copy","copyError":"Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl/Cmd+C).","cut":"Cut","cutError":"Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl/Cmd+X).","paste":"Paste","pasteArea":"Paste Area","pasteMsg":"Please paste inside the following box using the keyboard (<strong>Ctrl/Cmd+V</strong>) and hit OK","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"Paste"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatic","bgColorTitle":"Background Color","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"More Colors...","panelTitle":"Colors","textColorTitle":"Text Color"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"templates":{"button":"Templates","emptyListMsg":"(No templates defined)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Please select the template to open in the editor","title":"Content Templates"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Find","findOptions":"Find Options","findWhat":"Find what:","matchCase":"Match case","matchCyclic":"Match cyclic","matchWord":"Match whole word","notFoundMsg":"The specified text was not found.","replace":"Replace","replaceAll":"Replace All","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Replace with:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"Baseline","alignTextTop":"Text Top","bgcolor":"Background color","chkFull":"Allow Fullscreen","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Flash Properties","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Scale","scaleAll":"Show all","scaleFit":"Exact Fit","scaleNoBorder":"No Border","title":"Flash Properties","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"URL must not be empty.","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Size","voiceLabel":"Font Size","panelTitle":"Font Size"},"label":"Font","panelTitle":"Font Name","voiceLabel":"Font"},"forms":{"button":{"title":"Button Properties","text":"Text (Value)","type":"Type","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Value","selected":"Selected"},"form":{"title":"Form Properties","menu":"Form Properties","action":"Action","method":"Method","encoding":"Encoding"},"hidden":{"title":"Hidden Field Properties","name":"Name","value":"Value"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Value","size":"Size","lines":"lines","chkMulti":"Allow multiple selections","opText":"Text","opValue":"Value","btnAdd":"Add","btnModify":"Modify","btnUp":"Up","btnDown":"Down","btnSetValue":"Set as selected value","btnDelete":"Delete"},"textarea":{"title":"Textarea Properties","cols":"Columns","rows":"Rows"},"textfield":{"title":"Text Field Properties","name":"Name","value":"Value","charWidth":"Character Width","maxChars":"Maximum Characters","type":"Type","typeText":"Text","typePass":"Password","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"format":{"label":"Format","panelTitle":"Paragraph Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"horizontalrule":{"toolbar":"Insert Horizontal Line"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Please type the image URL","alt":"Alternative Text","border":"Border","btnUpload":"Send it to the Server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Image Info","linkTab":"Link","lockRatio":"Lock Ratio","menu":"Image Properties","resetSize":"Reset Size","title":"Image Properties","titleButton":"Image Button Properties","upload":"Upload","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Increase Indent","outdent":"Decrease Indent"},"smiley":{"options":"Smiley Options","title":"Insert a Smiley","toolbar":"Smiley"},"justify":{"block":"Justify","center":"Center","left":"Align Left","right":"Align Right"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Access Key","advanced":"Advanced","advisoryContentType":"Advisory Content Type","advisoryTitle":"Advisory Title","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"By Element Id","anchorName":"By Anchor Name","charset":"Linked Resource Charset","cssClasses":"Stylesheet Classes","emailAddress":"E-Mail Address","emailBody":"Message Body","emailSubject":"Message Subject","id":"Id","info":"Link Info","langCode":"Language Code","langDir":"Language Direction","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","menu":"Edit Link","name":"Name","noAnchors":"(No anchors available in the document)","noEmail":"Please type the e-mail address","noUrl":"Please type the link URL","other":"<other>","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Relationship","selectAnchor":"Select an Anchor","styles":"Style","tabIndex":"Tab Index","target":"Target","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"Link","toAnchor":"Link to anchor in the text","toEmail":"E-mail","toUrl":"URL","toolbar":"Link","type":"Link Type","unlink":"Unlink","upload":"Upload"},"list":{"bulletedlist":"Insert/Remove Bulleted List","numberedlist":"Insert/Remove Numbered List"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"New Page"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastetext":{"button":"Paste as plain text","title":"Paste as Plain Text"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Paste from Word","toolbar":"Paste from Word"},"preview":{"preview":"Preview"},"print":{"toolbar":"Print"},"removeformat":{"toolbar":"Remove Format"},"save":{"toolbar":"Save"},"selectall":{"toolbar":"Select All"},"showblocks":{"toolbar":"Show Blocks"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Special Character Options","title":"Select Special Character","toolbar":"Insert Special Character"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":""},"stylescombo":{"label":"Styles","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Border size","caption":"Caption","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Delete Cells","merge":"Merge Cells","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Delete Columns"},"columns":"Columns","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Table Properties","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Delete Rows"},"rows":"Rows","summary":"Summary","title":"Table Properties","toolbar":"Table","widthPc":"percent","widthPx":"pixels","widthUnit":"width unit"},"undo":{"redo":"Redo","undo":"Undo"},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Check","toolbar":"Check Spelling"}};
5
+ CKEDITOR.lang['en']={"editor":"Rich Text Editor","editorPanel":"Rich Text Editor panel","common":{"editorHelp":"Press ALT 0 for help","browseServer":"Browse Server","url":"URL","protocol":"Protocol","upload":"Upload","uploadSubmit":"Send it to the Server","image":"Image","flash":"Flash","form":"Form","checkbox":"Checkbox","radio":"Radio Button","textField":"Text Field","textarea":"Textarea","hiddenField":"Hidden Field","button":"Button","select":"Selection Field","imageButton":"Image Button","notSet":"<not set>","id":"Id","name":"Name","langDir":"Language Direction","langDirLtr":"Left to Right (LTR)","langDirRtl":"Right to Left (RTL)","langCode":"Language Code","longDescr":"Long Description URL","cssClass":"Stylesheet Classes","advisoryTitle":"Advisory Title","cssStyle":"Style","ok":"OK","cancel":"Cancel","close":"Close","preview":"Preview","resize":"Resize","generalTab":"General","advancedTab":"Advanced","validateNumberFailed":"This value is not a number.","confirmNewPage":"Any unsaved changes to this content will be lost. Are you sure you want to load new page?","confirmCancel":"You have changed some options. Are you sure you want to close the dialog window?","options":"Options","target":"Target","targetNew":"New Window (_blank)","targetTop":"Topmost Window (_top)","targetSelf":"Same Window (_self)","targetParent":"Parent Window (_parent)","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","styles":"Style","cssClasses":"Stylesheet Classes","width":"Width","height":"Height","align":"Alignment","alignLeft":"Left","alignRight":"Right","alignCenter":"Center","alignJustify":"Justify","alignTop":"Top","alignMiddle":"Middle","alignBottom":"Bottom","alignNone":"None","invalidValue":"Invalid value.","invalidHeight":"Height must be a number.","invalidWidth":"Width must be a number.","invalidCssLength":"Value specified for the \"%1\" field must be a positive number with or without a valid CSS measurement unit (px, %, in, cm, mm, em, ex, pt, or pc).","invalidHtmlLength":"Value specified for the \"%1\" field must be a positive number with or without a valid HTML measurement unit (px or %).","invalidInlineStyle":"Value specified for the inline style must consist of one or more tuples with the format of \"name : value\", separated by semi-colons.","cssLengthTooltip":"Enter a number for a value in pixels or a number with a valid CSS unit (px, %, in, cm, mm, em, ex, pt, or pc).","unavailable":"%1<span class=\"cke_accessibility\">, unavailable</span>"},"about":{"copy":"Copyright &copy; $1. All rights reserved.","dlgTitle":"About CKEditor","help":"Check $1 for help.","moreInfo":"For licensing information please visit our web site:","title":"About CKEditor","userGuide":"CKEditor User's Guide"},"basicstyles":{"bold":"Bold","italic":"Italic","strike":"Strikethrough","subscript":"Subscript","superscript":"Superscript","underline":"Underline"},"bidi":{"ltr":"Text direction from left to right","rtl":"Text direction from right to left"},"blockquote":{"toolbar":"Block Quote"},"clipboard":{"copy":"Copy","copyError":"Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl/Cmd+C).","cut":"Cut","cutError":"Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl/Cmd+X).","paste":"Paste","pasteArea":"Paste Area","pasteMsg":"Please paste inside the following box using the keyboard (<strong>Ctrl/Cmd+V</strong>) and hit OK","securityMsg":"Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.","title":"Paste"},"button":{"selectedLabel":"%1 (Selected)"},"colorbutton":{"auto":"Automatic","bgColorTitle":"Background Color","colors":{"000":"Black","800000":"Maroon","8B4513":"Saddle Brown","2F4F4F":"Dark Slate Gray","008080":"Teal","000080":"Navy","4B0082":"Indigo","696969":"Dark Gray","B22222":"Fire Brick","A52A2A":"Brown","DAA520":"Golden Rod","006400":"Dark Green","40E0D0":"Turquoise","0000CD":"Medium Blue","800080":"Purple","808080":"Gray","F00":"Red","FF8C00":"Dark Orange","FFD700":"Gold","008000":"Green","0FF":"Cyan","00F":"Blue","EE82EE":"Violet","A9A9A9":"Dim Gray","FFA07A":"Light Salmon","FFA500":"Orange","FFFF00":"Yellow","00FF00":"Lime","AFEEEE":"Pale Turquoise","ADD8E6":"Light Blue","DDA0DD":"Plum","D3D3D3":"Light Grey","FFF0F5":"Lavender Blush","FAEBD7":"Antique White","FFFFE0":"Light Yellow","F0FFF0":"Honeydew","F0FFFF":"Azure","F0F8FF":"Alice Blue","E6E6FA":"Lavender","FFF":"White"},"more":"More Colors...","panelTitle":"Colors","textColorTitle":"Text Color"},"colordialog":{"clear":"Clear","highlight":"Highlight","options":"Color Options","selected":"Selected Color","title":"Select color"},"contextmenu":{"options":"Context Menu Options"},"div":{"IdInputLabel":"Id","advisoryTitleInputLabel":"Advisory Title","cssClassInputLabel":"Stylesheet Classes","edit":"Edit Div","inlineStyleInputLabel":"Inline Style","langDirLTRLabel":"Left to Right (LTR)","langDirLabel":"Language Direction","langDirRTLLabel":"Right to Left (RTL)","languageCodeInputLabel":" Language Code","remove":"Remove Div","styleSelectLabel":"Style","title":"Create Div Container","toolbar":"Create Div Container"},"elementspath":{"eleLabel":"Elements path","eleTitle":"%1 element"},"find":{"find":"Find","findOptions":"Find Options","findWhat":"Find what:","matchCase":"Match case","matchCyclic":"Match cyclic","matchWord":"Match whole word","notFoundMsg":"The specified text was not found.","replace":"Replace","replaceAll":"Replace All","replaceSuccessMsg":"%1 occurrence(s) replaced.","replaceWith":"Replace with:","title":"Find and Replace"},"fakeobjects":{"anchor":"Anchor","flash":"Flash Animation","hiddenfield":"Hidden Field","iframe":"IFrame","unknown":"Unknown Object"},"flash":{"access":"Script Access","accessAlways":"Always","accessNever":"Never","accessSameDomain":"Same domain","alignAbsBottom":"Abs Bottom","alignAbsMiddle":"Abs Middle","alignBaseline":"Baseline","alignTextTop":"Text Top","bgcolor":"Background color","chkFull":"Allow Fullscreen","chkLoop":"Loop","chkMenu":"Enable Flash Menu","chkPlay":"Auto Play","flashvars":"Variables for Flash","hSpace":"HSpace","properties":"Flash Properties","propertiesTab":"Properties","quality":"Quality","qualityAutoHigh":"Auto High","qualityAutoLow":"Auto Low","qualityBest":"Best","qualityHigh":"High","qualityLow":"Low","qualityMedium":"Medium","scale":"Scale","scaleAll":"Show all","scaleFit":"Exact Fit","scaleNoBorder":"No Border","title":"Flash Properties","vSpace":"VSpace","validateHSpace":"HSpace must be a number.","validateSrc":"URL must not be empty.","validateVSpace":"VSpace must be a number.","windowMode":"Window mode","windowModeOpaque":"Opaque","windowModeTransparent":"Transparent","windowModeWindow":"Window"},"font":{"fontSize":{"label":"Size","voiceLabel":"Font Size","panelTitle":"Font Size"},"label":"Font","panelTitle":"Font Name","voiceLabel":"Font"},"format":{"label":"Format","panelTitle":"Paragraph Format","tag_address":"Address","tag_div":"Normal (DIV)","tag_h1":"Heading 1","tag_h2":"Heading 2","tag_h3":"Heading 3","tag_h4":"Heading 4","tag_h5":"Heading 5","tag_h6":"Heading 6","tag_p":"Normal","tag_pre":"Formatted"},"forms":{"button":{"title":"Button Properties","text":"Text (Value)","type":"Type","typeBtn":"Button","typeSbm":"Submit","typeRst":"Reset"},"checkboxAndRadio":{"checkboxTitle":"Checkbox Properties","radioTitle":"Radio Button Properties","value":"Value","selected":"Selected"},"form":{"title":"Form Properties","menu":"Form Properties","action":"Action","method":"Method","encoding":"Encoding"},"hidden":{"title":"Hidden Field Properties","name":"Name","value":"Value"},"select":{"title":"Selection Field Properties","selectInfo":"Select Info","opAvail":"Available Options","value":"Value","size":"Size","lines":"lines","chkMulti":"Allow multiple selections","opText":"Text","opValue":"Value","btnAdd":"Add","btnModify":"Modify","btnUp":"Up","btnDown":"Down","btnSetValue":"Set as selected value","btnDelete":"Delete"},"textarea":{"title":"Textarea Properties","cols":"Columns","rows":"Rows"},"textfield":{"title":"Text Field Properties","name":"Name","value":"Value","charWidth":"Character Width","maxChars":"Maximum Characters","type":"Type","typeText":"Text","typePass":"Password","typeEmail":"Email","typeSearch":"Search","typeTel":"Telephone Number","typeUrl":"URL"}},"horizontalrule":{"toolbar":"Insert Horizontal Line"},"iframe":{"border":"Show frame border","noUrl":"Please type the iframe URL","scrolling":"Enable scrollbars","title":"IFrame Properties","toolbar":"IFrame"},"image":{"alertUrl":"Please type the image URL","alt":"Alternative Text","border":"Border","btnUpload":"Send it to the Server","button2Img":"Do you want to transform the selected image button on a simple image?","hSpace":"HSpace","img2Button":"Do you want to transform the selected image on a image button?","infoTab":"Image Info","linkTab":"Link","lockRatio":"Lock Ratio","menu":"Image Properties","resetSize":"Reset Size","title":"Image Properties","titleButton":"Image Button Properties","upload":"Upload","urlMissing":"Image source URL is missing.","vSpace":"VSpace","validateBorder":"Border must be a whole number.","validateHSpace":"HSpace must be a whole number.","validateVSpace":"VSpace must be a whole number."},"indent":{"indent":"Increase Indent","outdent":"Decrease Indent"},"justify":{"block":"Justify","center":"Center","left":"Align Left","right":"Align Right"},"language":{"button":"Set language","remove":"Remove language"},"link":{"acccessKey":"Access Key","advanced":"Advanced","advisoryContentType":"Advisory Content Type","advisoryTitle":"Advisory Title","anchor":{"toolbar":"Anchor","menu":"Edit Anchor","title":"Anchor Properties","name":"Anchor Name","errorName":"Please type the anchor name","remove":"Remove Anchor"},"anchorId":"By Element Id","anchorName":"By Anchor Name","charset":"Linked Resource Charset","cssClasses":"Stylesheet Classes","emailAddress":"E-Mail Address","emailBody":"Message Body","emailSubject":"Message Subject","id":"Id","info":"Link Info","langCode":"Language Code","langDir":"Language Direction","langDirLTR":"Left to Right (LTR)","langDirRTL":"Right to Left (RTL)","menu":"Edit Link","name":"Name","noAnchors":"(No anchors available in the document)","noEmail":"Please type the e-mail address","noUrl":"Please type the link URL","other":"<other>","popupDependent":"Dependent (Netscape)","popupFeatures":"Popup Window Features","popupFullScreen":"Full Screen (IE)","popupLeft":"Left Position","popupLocationBar":"Location Bar","popupMenuBar":"Menu Bar","popupResizable":"Resizable","popupScrollBars":"Scroll Bars","popupStatusBar":"Status Bar","popupToolbar":"Toolbar","popupTop":"Top Position","rel":"Relationship","selectAnchor":"Select an Anchor","styles":"Style","tabIndex":"Tab Index","target":"Target","targetFrame":"<frame>","targetFrameName":"Target Frame Name","targetPopup":"<popup window>","targetPopupName":"Popup Window Name","title":"Link","toAnchor":"Link to anchor in the text","toEmail":"E-mail","toUrl":"URL","toolbar":"Link","type":"Link Type","unlink":"Unlink","upload":"Upload"},"list":{"bulletedlist":"Insert/Remove Bulleted List","numberedlist":"Insert/Remove Numbered List"},"liststyle":{"armenian":"Armenian numbering","bulletedTitle":"Bulleted List Properties","circle":"Circle","decimal":"Decimal (1, 2, 3, etc.)","decimalLeadingZero":"Decimal leading zero (01, 02, 03, etc.)","disc":"Disc","georgian":"Georgian numbering (an, ban, gan, etc.)","lowerAlpha":"Lower Alpha (a, b, c, d, e, etc.)","lowerGreek":"Lower Greek (alpha, beta, gamma, etc.)","lowerRoman":"Lower Roman (i, ii, iii, iv, v, etc.)","none":"None","notset":"<not set>","numberedTitle":"Numbered List Properties","square":"Square","start":"Start","type":"Type","upperAlpha":"Upper Alpha (A, B, C, D, E, etc.)","upperRoman":"Upper Roman (I, II, III, IV, V, etc.)","validateStartNumber":"List start number must be a whole number."},"magicline":{"title":"Insert paragraph here"},"maximize":{"maximize":"Maximize","minimize":"Minimize"},"newpage":{"toolbar":"New Page"},"pagebreak":{"alt":"Page Break","toolbar":"Insert Page Break for Printing"},"pastefromword":{"confirmCleanup":"The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?","error":"It was not possible to clean up the pasted data due to an internal error","title":"Paste from Word","toolbar":"Paste from Word"},"pastetext":{"button":"Paste as plain text","title":"Paste as Plain Text"},"preview":{"preview":"Preview"},"print":{"toolbar":"Print"},"removeformat":{"toolbar":"Remove Format"},"save":{"toolbar":"Save"},"scayt":{"btn_about":"About SCAYT","btn_dictionaries":"Dictionaries","btn_disable":"Disable SCAYT","btn_enable":"Enable SCAYT","btn_langs":"Languages","btn_options":"Options","text_title":"Spell Check As You Type"},"selectall":{"toolbar":"Select All"},"showblocks":{"toolbar":"Show Blocks"},"smiley":{"options":"Smiley Options","title":"Insert a Smiley","toolbar":"Smiley"},"sourcearea":{"toolbar":"Source"},"specialchar":{"options":"Special Character Options","title":"Select Special Character","toolbar":"Insert Special Character"},"stylescombo":{"label":"Styles","panelTitle":"Formatting Styles","panelTitle1":"Block Styles","panelTitle2":"Inline Styles","panelTitle3":"Object Styles"},"table":{"border":"Border size","caption":"Caption","cell":{"menu":"Cell","insertBefore":"Insert Cell Before","insertAfter":"Insert Cell After","deleteCell":"Delete Cells","merge":"Merge Cells","mergeRight":"Merge Right","mergeDown":"Merge Down","splitHorizontal":"Split Cell Horizontally","splitVertical":"Split Cell Vertically","title":"Cell Properties","cellType":"Cell Type","rowSpan":"Rows Span","colSpan":"Columns Span","wordWrap":"Word Wrap","hAlign":"Horizontal Alignment","vAlign":"Vertical Alignment","alignBaseline":"Baseline","bgColor":"Background Color","borderColor":"Border Color","data":"Data","header":"Header","yes":"Yes","no":"No","invalidWidth":"Cell width must be a number.","invalidHeight":"Cell height must be a number.","invalidRowSpan":"Rows span must be a whole number.","invalidColSpan":"Columns span must be a whole number.","chooseColor":"Choose"},"cellPad":"Cell padding","cellSpace":"Cell spacing","column":{"menu":"Column","insertBefore":"Insert Column Before","insertAfter":"Insert Column After","deleteColumn":"Delete Columns"},"columns":"Columns","deleteTable":"Delete Table","headers":"Headers","headersBoth":"Both","headersColumn":"First column","headersNone":"None","headersRow":"First Row","invalidBorder":"Border size must be a number.","invalidCellPadding":"Cell padding must be a positive number.","invalidCellSpacing":"Cell spacing must be a positive number.","invalidCols":"Number of columns must be a number greater than 0.","invalidHeight":"Table height must be a number.","invalidRows":"Number of rows must be a number greater than 0.","invalidWidth":"Table width must be a number.","menu":"Table Properties","row":{"menu":"Row","insertBefore":"Insert Row Before","insertAfter":"Insert Row After","deleteRow":"Delete Rows"},"rows":"Rows","summary":"Summary","title":"Table Properties","toolbar":"Table","widthPc":"percent","widthPx":"pixels","widthUnit":"width unit"},"templates":{"button":"Templates","emptyListMsg":"(No templates defined)","insertOption":"Replace actual contents","options":"Template Options","selectPromptMsg":"Please select the template to open in the editor","title":"Content Templates"},"toolbar":{"toolbarCollapse":"Collapse Toolbar","toolbarExpand":"Expand Toolbar","toolbarGroups":{"document":"Document","clipboard":"Clipboard/Undo","editing":"Editing","forms":"Forms","basicstyles":"Basic Styles","paragraph":"Paragraph","links":"Links","insert":"Insert","styles":"Styles","colors":"Colors","tools":"Tools"},"toolbars":"Editor toolbars"},"undo":{"redo":"Redo","undo":"Undo"},"wsc":{"btnIgnore":"Ignore","btnIgnoreAll":"Ignore All","btnReplace":"Replace","btnReplaceAll":"Replace All","btnUndo":"Undo","changeTo":"Change to","errorLoading":"Error loading application service host: %s.","ieSpellDownload":"Spell checker not installed. Do you want to download it now?","manyChanges":"Spell check complete: %1 words changed","noChanges":"Spell check complete: No words changed","noMispell":"Spell check complete: No misspellings found","noSuggestions":"- No suggestions -","notAvailable":"Sorry, but service is unavailable now.","notInDic":"Not in dictionary","oneChange":"Spell check complete: One word changed","progress":"Spell check in progress...","title":"Spell Checker","toolbar":"Check Spelling"}};
@@ -1,5 +1,5 @@
1
1
  /*
2
- Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
2
+ Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved.
3
3
  For licensing, see LICENSE.html or http://ckeditor.com/license
4
4
  */
5
- CKEDITOR.lang['ru']={"editor":"Визуальный текстовый редактор","editorPanel":"Визуальный редактор текста","common":{"editorHelp":"Нажмите ALT-0 для открытия справки","browseServer":"Выбор на сервере","url":"Ссылка","protocol":"Протокол","upload":"Загрузка файла","uploadSubmit":"Загрузить на сервер","image":"Изображение","flash":"Flash","form":"Форма","checkbox":"Чекбокс","radio":"Радиокнопка","textField":"Текстовое поле","textarea":"Многострочное текстовое поле","hiddenField":"Скрытое поле","button":"Кнопка","select":"Выпадающий список","imageButton":"Кнопка-изображение","notSet":"<не указано>","id":"Идентификатор","name":"Имя","langDir":"Направление текста","langDirLtr":"Слева направо (LTR)","langDirRtl":"Справа налево (RTL)","langCode":"Код языка","longDescr":"Длинное описание ссылки","cssClass":"Класс CSS","advisoryTitle":"Заголовок","cssStyle":"Стиль","ok":"ОК","cancel":"Отмена","close":"Закрыть","preview":"Предпросмотр","resize":"Перетащите для изменения размера","generalTab":"Основное","advancedTab":"Дополнительно","validateNumberFailed":"Это значение не является числом.","confirmNewPage":"Несохранённые изменения будут потеряны! Вы действительно желаете перейти на другую страницу?","confirmCancel":"Некоторые параметры были изменены. Вы уверены, что желаете закрыть без сохранения?","options":"Параметры","target":"Цель","targetNew":"Новое окно (_blank)","targetTop":"Главное окно (_top)","targetSelf":"Текущее окно (_self)","targetParent":"Родительское окно (_parent)","langDirLTR":"Слева направо (LTR)","langDirRTL":"Справа налево (RTL)","styles":"Стиль","cssClasses":"CSS классы","width":"Ширина","height":"Высота","align":"Выравнивание","alignLeft":"По левому краю","alignRight":"По правому краю","alignCenter":"По центру","alignTop":"Поверху","alignMiddle":"Посередине","alignBottom":"Понизу","alignNone":"Нет","invalidValue":"Недопустимое значение.","invalidHeight":"Высота задается числом.","invalidWidth":"Ширина задается числом.","invalidCssLength":"Значение, указанное в поле \"%1\", должно быть положительным целым числом. Допускается указание единиц меры CSS (px, %, in, cm, mm, em, ex, pt или pc).","invalidHtmlLength":"Значение, указанное в поле \"%1\", должно быть положительным целым числом. Допускается указание единиц меры HTML (px или %).","invalidInlineStyle":"Значение, указанное для стиля элемента, должно состоять из одной или нескольких пар данных в формате \"параметр : значение\", разделённых точкой с запятой.","cssLengthTooltip":"Введите значение в пикселях, либо число с корректной единицей меры CSS (px, %, in, cm, mm, em, ex, pt или pc).","unavailable":"%1<span class=\"cke_accessibility\">, недоступно</span>","alignJustify":"Justify"},"about":{"copy":"Copyright &copy; $1. Все права защищены.","dlgTitle":"О CKEditor","help":"$1 содержит подробную справку по использованию.","moreInfo":"Для получения информации о лицензии, пожалуйста, перейдите на наш сайт:","title":"О CKEditor","userGuide":"Руководство пользователя CKEditor"},"basicstyles":{"bold":"Полужирный","italic":"Курсив","strike":"Зачеркнутый","subscript":"Подстрочный индекс","superscript":"Надстрочный индекс","underline":"Подчеркнутый"},"bidi":{"ltr":"Направление текста слева направо","rtl":"Направление текста справа налево"},"blockquote":{"toolbar":"Цитата"},"clipboard":{"copy":"Копировать","copyError":"Настройки безопасности вашего браузера не разрешают редактору выполнять операции по копированию текста. Пожалуйста, используйте для этого клавиатуру (Ctrl/Cmd+C).","cut":"Вырезать","cutError":"Настройки безопасности вашего браузера не разрешают редактору выполнять операции по вырезке текста. Пожалуйста, используйте для этого клавиатуру (Ctrl/Cmd+X).","paste":"Вставить","pasteArea":"Зона для вставки","pasteMsg":"Пожалуйста, вставьте текст в зону ниже, используя клавиатуру (<strong>Ctrl/Cmd+V</strong>) и нажмите кнопку \"OK\".","securityMsg":"Настройки безопасности вашего браузера не разрешают редактору напрямую обращаться к буферу обмена. Вы должны вставить текст снова в это окно.","title":"Вставить"},"button":{"selectedLabel":"%1 (Выбрано)"},"colorbutton":{"auto":"Автоматически","bgColorTitle":"Цвет фона","colors":{"000":"Чёрный","800000":"Бордовый","8B4513":"Кожано-коричневый","2F4F4F":"Темный синевато-серый","008080":"Сине-зелёный","000080":"Тёмно-синий","4B0082":"Индиго","696969":"Тёмно-серый","B22222":"Кирпичный","A52A2A":"Коричневый","DAA520":"Золотисто-берёзовый","006400":"Темно-зелёный","40E0D0":"Бирюзовый","0000CD":"Умеренно синий","800080":"Пурпурный","808080":"Серый","F00":"Красный","FF8C00":"Темно-оранжевый","FFD700":"Золотистый","008000":"Зелёный","0FF":"Васильковый","00F":"Синий","EE82EE":"Фиолетовый","A9A9A9":"Тускло-серый","FFA07A":"Светло-лососевый","FFA500":"Оранжевый","FFFF00":"Жёлтый","00FF00":"Лайма","AFEEEE":"Бледно-синий","ADD8E6":"Свелто-голубой","DDA0DD":"Сливовый","D3D3D3":"Светло-серый","FFF0F5":"Розово-лавандовый","FAEBD7":"Античный белый","FFFFE0":"Светло-жёлтый","F0FFF0":"Медвяной росы","F0FFFF":"Лазурный","F0F8FF":"Бледно-голубой","E6E6FA":"Лавандовый","FFF":"Белый"},"more":"Ещё цвета...","panelTitle":"Цвета","textColorTitle":"Цвет текста"},"colordialog":{"clear":"Очистить","highlight":"Под курсором","options":"Настройки цвета","selected":"Выбранный цвет","title":"Выберите цвет"},"templates":{"button":"Шаблоны","emptyListMsg":"(не определено ни одного шаблона)","insertOption":"Заменить текущее содержимое","options":"Параметры шаблона","selectPromptMsg":"Пожалуйста, выберите, какой шаблон следует открыть в редакторе","title":"Шаблоны содержимого"},"contextmenu":{"options":"Параметры контекстного меню"},"div":{"IdInputLabel":"Идентификатор","advisoryTitleInputLabel":"Заголовок","cssClassInputLabel":"Классы CSS","edit":"Редактировать контейнер","inlineStyleInputLabel":"Стиль элемента","langDirLTRLabel":"Слева направо (LTR)","langDirLabel":"Направление текста","langDirRTLLabel":"Справа налево (RTL)","languageCodeInputLabel":"Код языка","remove":"Удалить контейнер","styleSelectLabel":"Стиль","title":"Создать Div-контейнер","toolbar":"Создать Div-контейнер"},"toolbar":{"toolbarCollapse":"Свернуть панель инструментов","toolbarExpand":"Развернуть панель инструментов","toolbarGroups":{"document":"Документ","clipboard":"Буфер обмена / Отмена действий","editing":"Корректировка","forms":"Формы","basicstyles":"Простые стили","paragraph":"Абзац","links":"Ссылки","insert":"Вставка","styles":"Стили","colors":"Цвета","tools":"Инструменты"},"toolbars":"Панели инструментов редактора"},"elementspath":{"eleLabel":"Путь элементов","eleTitle":"Элемент %1"},"find":{"find":"Найти","findOptions":"Опции поиска","findWhat":"Найти:","matchCase":"Учитывать регистр","matchCyclic":"По всему тексту","matchWord":"Только слово целиком","notFoundMsg":"Искомый текст не найден.","replace":"Заменить","replaceAll":"Заменить всё","replaceSuccessMsg":"Успешно заменено %1 раз(а).","replaceWith":"Заменить на:","title":"Поиск и замена"},"fakeobjects":{"anchor":"Якорь","flash":"Flash анимация","hiddenfield":"Скрытое поле","iframe":"iFrame","unknown":"Неизвестный объект"},"flash":{"access":"Доступ к скриптам","accessAlways":"Всегда","accessNever":"Никогда","accessSameDomain":"В том же домене","alignAbsBottom":"По низу текста","alignAbsMiddle":"По середине текста","alignBaseline":"По базовой линии","alignTextTop":"По верху текста","bgcolor":"Цвет фона","chkFull":"Разрешить полноэкранный режим","chkLoop":"Повторять","chkMenu":"Включить меню Flash","chkPlay":"Автоматическое воспроизведение","flashvars":"Переменные для Flash","hSpace":"Гориз. отступ","properties":"Свойства Flash","propertiesTab":"Свойства","quality":"Качество","qualityAutoHigh":"Запуск на высоком","qualityAutoLow":"Запуск на низком","qualityBest":"Лучшее","qualityHigh":"Высокое","qualityLow":"Низкое","qualityMedium":"Среднее","scale":"Масштабировать","scaleAll":"Пропорционально","scaleFit":"Заполнять","scaleNoBorder":"Заходить за границы","title":"Свойства Flash","vSpace":"Вертик. отступ","validateHSpace":"Горизонтальный отступ задается числом.","validateSrc":"Вы должны ввести ссылку","validateVSpace":"Вертикальный отступ задается числом.","windowMode":"Взаимодействие с окном","windowModeOpaque":"Непрозрачный","windowModeTransparent":"Прозрачный","windowModeWindow":"Обычный"},"font":{"fontSize":{"label":"Размер","voiceLabel":"Размер шрифта","panelTitle":"Размер шрифта"},"label":"Шрифт","panelTitle":"Шрифт","voiceLabel":"Шрифт"},"forms":{"button":{"title":"Свойства кнопки","text":"Текст (Значение)","type":"Тип","typeBtn":"Кнопка","typeSbm":"Отправка","typeRst":"Сброс"},"checkboxAndRadio":{"checkboxTitle":"Свойства флаговой кнопки","radioTitle":"Свойства кнопки выбора","value":"Значение","selected":"Выбрано"},"form":{"title":"Свойства формы","menu":"Свойства формы","action":"Действие","method":"Метод","encoding":"Кодировка"},"hidden":{"title":"Свойства скрытого поля","name":"Имя","value":"Значение"},"select":{"title":"Свойства списка выбора","selectInfo":"Информация о списке выбора","opAvail":"Доступные варианты","value":"Значение","size":"Размер","lines":"строк(и)","chkMulti":"Разрешить выбор нескольких вариантов","opText":"Текст","opValue":"Значение","btnAdd":"Добавить","btnModify":"Изменить","btnUp":"Поднять","btnDown":"Опустить","btnSetValue":"Пометить как выбранное","btnDelete":"Удалить"},"textarea":{"title":"Свойства многострочного текстового поля","cols":"Колонок","rows":"Строк"},"textfield":{"title":"Свойства текстового поля","name":"Имя","value":"Значение","charWidth":"Ширина поля (в символах)","maxChars":"Макс. количество символов","type":"Тип содержимого","typeText":"Текст","typePass":"Пароль","typeEmail":"Email","typeSearch":"Поиск","typeTel":"Номер телефона","typeUrl":"Ссылка"}},"format":{"label":"Форматирование","panelTitle":"Форматирование","tag_address":"Адрес","tag_div":"Обычное (div)","tag_h1":"Заголовок 1","tag_h2":"Заголовок 2","tag_h3":"Заголовок 3","tag_h4":"Заголовок 4","tag_h5":"Заголовок 5","tag_h6":"Заголовок 6","tag_p":"Обычное","tag_pre":"Моноширинное"},"horizontalrule":{"toolbar":"Вставить горизонтальную линию"},"iframe":{"border":"Показать границы фрейма","noUrl":"Пожалуйста, введите ссылку фрейма","scrolling":"Отображать полосы прокрутки","title":"Свойства iFrame","toolbar":"iFrame"},"image":{"alertUrl":"Пожалуйста, введите ссылку на изображение","alt":"Альтернативный текст","border":"Граница","btnUpload":"Загрузить на сервер","button2Img":"Вы желаете преобразовать это изображение-кнопку в обычное изображение?","hSpace":"Гориз. отступ","img2Button":"Вы желаете преобразовать это обычное изображение в изображение-кнопку?","infoTab":"Данные об изображении","linkTab":"Ссылка","lockRatio":"Сохранять пропорции","menu":"Свойства изображения","resetSize":"Вернуть обычные размеры","title":"Свойства изображения","titleButton":"Свойства изображения-кнопки","upload":"Загрузить","urlMissing":"Не указана ссылка на изображение.","vSpace":"Вертик. отступ","validateBorder":"Размер границ должен быть задан числом.","validateHSpace":"Горизонтальный отступ должен быть задан числом.","validateVSpace":"Вертикальный отступ должен быть задан числом."},"indent":{"indent":"Увеличить отступ","outdent":"Уменьшить отступ"},"smiley":{"options":"Выбор смайла","title":"Вставить смайл","toolbar":"Смайлы"},"justify":{"block":"По ширине","center":"По центру","left":"По левому краю","right":"По правому краю"},"language":{"button":"Установка языка","remove":"Удалить язык"},"link":{"acccessKey":"Клавиша доступа","advanced":"Дополнительно","advisoryContentType":"Тип содержимого","advisoryTitle":"Заголовок","anchor":{"toolbar":"Вставить / редактировать якорь","menu":"Изменить якорь","title":"Свойства якоря","name":"Имя якоря","errorName":"Пожалуйста, введите имя якоря","remove":"Удалить якорь"},"anchorId":"По идентификатору","anchorName":"По имени","charset":"Кодировка ресурса","cssClasses":"Классы CSS","emailAddress":"Email адрес","emailBody":"Текст сообщения","emailSubject":"Тема сообщения","id":"Идентификатор","info":"Информация о ссылке","langCode":"Код языка","langDir":"Направление текста","langDirLTR":"Слева направо (LTR)","langDirRTL":"Справа налево (RTL)","menu":"Редактировать ссылку","name":"Имя","noAnchors":"(В документе нет ни одного якоря)","noEmail":"Пожалуйста, введите email адрес","noUrl":"Пожалуйста, введите ссылку","other":"<другой>","popupDependent":"Зависимое (Netscape)","popupFeatures":"Параметры всплывающего окна","popupFullScreen":"Полноэкранное (IE)","popupLeft":"Отступ слева","popupLocationBar":"Панель адреса","popupMenuBar":"Панель меню","popupResizable":"Изменяемый размер","popupScrollBars":"Полосы прокрутки","popupStatusBar":"Строка состояния","popupToolbar":"Панель инструментов","popupTop":"Отступ сверху","rel":"Отношение","selectAnchor":"Выберите якорь","styles":"Стиль","tabIndex":"Последовательность перехода","target":"Цель","targetFrame":"<фрейм>","targetFrameName":"Имя целевого фрейма","targetPopup":"<всплывающее окно>","targetPopupName":"Имя всплывающего окна","title":"Ссылка","toAnchor":"Ссылка на якорь в тексте","toEmail":"Email","toUrl":"Ссылка","toolbar":"Вставить/Редактировать ссылку","type":"Тип ссылки","unlink":"Убрать ссылку","upload":"Загрузка"},"list":{"bulletedlist":"Вставить / удалить маркированный список","numberedlist":"Вставить / удалить нумерованный список"},"liststyle":{"armenian":"Армянская нумерация","bulletedTitle":"Свойства маркированного списка","circle":"Круг","decimal":"Десятичные (1, 2, 3, и т.д.)","decimalLeadingZero":"Десятичные с ведущим нулём (01, 02, 03, и т.д.)","disc":"Окружность","georgian":"Грузинская нумерация (ани, бани, гани, и т.д.)","lowerAlpha":"Строчные латинские (a, b, c, d, e, и т.д.)","lowerGreek":"Строчные греческие (альфа, бета, гамма, и т.д.)","lowerRoman":"Строчные римские (i, ii, iii, iv, v, и т.д.)","none":"Нет","notset":"<не указано>","numberedTitle":"Свойства нумерованного списка","square":"Квадрат","start":"Начиная с","type":"Тип","upperAlpha":"Заглавные латинские (A, B, C, D, E, и т.д.)","upperRoman":"Заглавные римские (I, II, III, IV, V, и т.д.)","validateStartNumber":"Первый номер списка должен быть задан обычным целым числом."},"magicline":{"title":"Вставить здесь параграф"},"maximize":{"maximize":"Развернуть","minimize":"Свернуть"},"newpage":{"toolbar":"Новая страница"},"pagebreak":{"alt":"Разрыв страницы","toolbar":"Вставить разрыв страницы для печати"},"pastetext":{"button":"Вставить только текст","title":"Вставить только текст"},"pastefromword":{"confirmCleanup":"Текст, который вы желаете вставить, по всей видимости, был скопирован из Word. Следует ли очистить его перед вставкой?","error":"Невозможно очистить вставленные данные из-за внутренней ошибки","title":"Вставить из Word","toolbar":"Вставить из Word"},"preview":{"preview":"Предварительный просмотр"},"print":{"toolbar":"Печать"},"removeformat":{"toolbar":"Убрать форматирование"},"save":{"toolbar":"Сохранить"},"selectall":{"toolbar":"Выделить все"},"showblocks":{"toolbar":"Отображать блоки"},"sourcearea":{"toolbar":"Источник"},"specialchar":{"options":"Выбор специального символа","title":"Выберите специальный символ","toolbar":"Вставить специальный символ"},"scayt":{"btn_about":"О SCAYT","btn_dictionaries":"Словари","btn_disable":"Отключить SCAYT","btn_enable":"Включить SCAYT","btn_langs":"Языки","btn_options":"Настройки","text_title":"Проверка орфографии по мере ввода (SCAYT)"},"stylescombo":{"label":"Стили","panelTitle":"Стили форматирования","panelTitle1":"Стили блока","panelTitle2":"Стили элемента","panelTitle3":"Стили объекта"},"table":{"border":"Размер границ","caption":"Заголовок","cell":{"menu":"Ячейка","insertBefore":"Вставить ячейку слева","insertAfter":"Вставить ячейку справа","deleteCell":"Удалить ячейки","merge":"Объединить ячейки","mergeRight":"Объединить с правой","mergeDown":"Объединить с нижней","splitHorizontal":"Разделить ячейку по горизонтали","splitVertical":"Разделить ячейку по вертикали","title":"Свойства ячейки","cellType":"Тип ячейки","rowSpan":"Объединяет строк","colSpan":"Объединяет колонок","wordWrap":"Перенос по словам","hAlign":"Горизонтальное выравнивание","vAlign":"Вертикальное выравнивание","alignBaseline":"По базовой линии","bgColor":"Цвет фона","borderColor":"Цвет границ","data":"Данные","header":"Заголовок","yes":"Да","no":"Нет","invalidWidth":"Ширина ячейки должна быть числом.","invalidHeight":"Высота ячейки должна быть числом.","invalidRowSpan":"Количество объединяемых строк должно быть задано числом.","invalidColSpan":"Количество объединяемых колонок должно быть задано числом.","chooseColor":"Выберите"},"cellPad":"Внутренний отступ ячеек","cellSpace":"Внешний отступ ячеек","column":{"menu":"Колонка","insertBefore":"Вставить колонку слева","insertAfter":"Вставить колонку справа","deleteColumn":"Удалить колонки"},"columns":"Колонки","deleteTable":"Удалить таблицу","headers":"Заголовки","headersBoth":"Сверху и слева","headersColumn":"Левая колонка","headersNone":"Без заголовков","headersRow":"Верхняя строка","invalidBorder":"Размер границ должен быть числом.","invalidCellPadding":"Внутренний отступ ячеек (cellpadding) должен быть числом.","invalidCellSpacing":"Внешний отступ ячеек (cellspacing) должен быть числом.","invalidCols":"Количество столбцов должно быть больше 0.","invalidHeight":"Высота таблицы должна быть числом.","invalidRows":"Количество строк должно быть больше 0.","invalidWidth":"Ширина таблицы должна быть числом.","menu":"Свойства таблицы","row":{"menu":"Строка","insertBefore":"Вставить строку сверху","insertAfter":"Вставить строку снизу","deleteRow":"Удалить строки"},"rows":"Строки","summary":"Итоги","title":"Свойства таблицы","toolbar":"Таблица","widthPc":"процентов","widthPx":"пикселей","widthUnit":"единица измерения"},"undo":{"redo":"Повторить","undo":"Отменить"},"wsc":{"btnIgnore":"Пропустить","btnIgnoreAll":"Пропустить всё","btnReplace":"Заменить","btnReplaceAll":"Заменить всё","btnUndo":"Отменить","changeTo":"Изменить на","errorLoading":"Произошла ошибка при подключении к серверу проверки орфографии: %s.","ieSpellDownload":"Модуль проверки орфографии не установлен. Хотите скачать его?","manyChanges":"Проверка орфографии завершена. Изменено слов: %1","noChanges":"Проверка орфографии завершена. Не изменено ни одного слова","noMispell":"Проверка орфографии завершена. Ошибок не найдено","noSuggestions":"- Варианты отсутствуют -","notAvailable":"Извините, но в данный момент сервис недоступен.","notInDic":"Отсутствует в словаре","oneChange":"Проверка орфографии завершена. Изменено одно слово","progress":"Орфография проверяется...","title":"Проверка орфографии","toolbar":"Проверить орфографию"}};
5
+ CKEDITOR.lang['ru']={"editor":"Визуальный текстовый редактор","editorPanel":"Визуальный редактор текста","common":{"editorHelp":"Нажмите ALT-0 для открытия справки","browseServer":"Выбор на сервере","url":"Ссылка","protocol":"Протокол","upload":"Загрузка файла","uploadSubmit":"Загрузить на сервер","image":"Изображение","flash":"Flash","form":"Форма","checkbox":"Чекбокс","radio":"Радиокнопка","textField":"Текстовое поле","textarea":"Многострочное текстовое поле","hiddenField":"Скрытое поле","button":"Кнопка","select":"Выпадающий список","imageButton":"Кнопка-изображение","notSet":"<не указано>","id":"Идентификатор","name":"Имя","langDir":"Направление текста","langDirLtr":"Слева направо (LTR)","langDirRtl":"Справа налево (RTL)","langCode":"Код языка","longDescr":"Длинное описание ссылки","cssClass":"Класс CSS","advisoryTitle":"Заголовок","cssStyle":"Стиль","ok":"ОК","cancel":"Отмена","close":"Закрыть","preview":"Предпросмотр","resize":"Перетащите для изменения размера","generalTab":"Основное","advancedTab":"Дополнительно","validateNumberFailed":"Это значение не является числом.","confirmNewPage":"Несохранённые изменения будут потеряны! Вы действительно желаете перейти на другую страницу?","confirmCancel":"Некоторые параметры были изменены. Вы уверены, что желаете закрыть без сохранения?","options":"Параметры","target":"Цель","targetNew":"Новое окно (_blank)","targetTop":"Главное окно (_top)","targetSelf":"Текущее окно (_self)","targetParent":"Родительское окно (_parent)","langDirLTR":"Слева направо (LTR)","langDirRTL":"Справа налево (RTL)","styles":"Стиль","cssClasses":"CSS классы","width":"Ширина","height":"Высота","align":"Выравнивание","alignLeft":"По левому краю","alignRight":"По правому краю","alignCenter":"По центру","alignJustify":"По ширине","alignTop":"Поверху","alignMiddle":"Посередине","alignBottom":"Понизу","alignNone":"Нет","invalidValue":"Недопустимое значение.","invalidHeight":"Высота задается числом.","invalidWidth":"Ширина задается числом.","invalidCssLength":"Значение, указанное в поле \"%1\", должно быть положительным целым числом. Допускается указание единиц меры CSS (px, %, in, cm, mm, em, ex, pt или pc).","invalidHtmlLength":"Значение, указанное в поле \"%1\", должно быть положительным целым числом. Допускается указание единиц меры HTML (px или %).","invalidInlineStyle":"Значение, указанное для стиля элемента, должно состоять из одной или нескольких пар данных в формате \"параметр : значение\", разделённых точкой с запятой.","cssLengthTooltip":"Введите значение в пикселях, либо число с корректной единицей меры CSS (px, %, in, cm, mm, em, ex, pt или pc).","unavailable":"%1<span class=\"cke_accessibility\">, недоступно</span>"},"about":{"copy":"Copyright &copy; $1. Все права защищены.","dlgTitle":"О CKEditor","help":"$1 содержит подробную справку по использованию.","moreInfo":"Для получения информации о лицензии, пожалуйста, перейдите на наш сайт:","title":"О CKEditor","userGuide":"Руководство пользователя CKEditor"},"basicstyles":{"bold":"Полужирный","italic":"Курсив","strike":"Зачеркнутый","subscript":"Подстрочный индекс","superscript":"Надстрочный индекс","underline":"Подчеркнутый"},"bidi":{"ltr":"Направление текста слева направо","rtl":"Направление текста справа налево"},"blockquote":{"toolbar":"Цитата"},"clipboard":{"copy":"Копировать","copyError":"Настройки безопасности вашего браузера не разрешают редактору выполнять операции по копированию текста. Пожалуйста, используйте для этого клавиатуру (Ctrl/Cmd+C).","cut":"Вырезать","cutError":"Настройки безопасности вашего браузера не разрешают редактору выполнять операции по вырезке текста. Пожалуйста, используйте для этого клавиатуру (Ctrl/Cmd+X).","paste":"Вставить","pasteArea":"Зона для вставки","pasteMsg":"Пожалуйста, вставьте текст в зону ниже, используя клавиатуру (<strong>Ctrl/Cmd+V</strong>) и нажмите кнопку \"OK\".","securityMsg":"Настройки безопасности вашего браузера не разрешают редактору напрямую обращаться к буферу обмена. Вы должны вставить текст снова в это окно.","title":"Вставить"},"button":{"selectedLabel":"%1 (Выбрано)"},"colorbutton":{"auto":"Автоматически","bgColorTitle":"Цвет фона","colors":{"000":"Чёрный","800000":"Бордовый","8B4513":"Кожано-коричневый","2F4F4F":"Темный синевато-серый","008080":"Сине-зелёный","000080":"Тёмно-синий","4B0082":"Индиго","696969":"Тёмно-серый","B22222":"Кирпичный","A52A2A":"Коричневый","DAA520":"Золотисто-берёзовый","006400":"Темно-зелёный","40E0D0":"Бирюзовый","0000CD":"Умеренно синий","800080":"Пурпурный","808080":"Серый","F00":"Красный","FF8C00":"Темно-оранжевый","FFD700":"Золотистый","008000":"Зелёный","0FF":"Васильковый","00F":"Синий","EE82EE":"Фиолетовый","A9A9A9":"Тускло-серый","FFA07A":"Светло-лососевый","FFA500":"Оранжевый","FFFF00":"Жёлтый","00FF00":"Лайма","AFEEEE":"Бледно-синий","ADD8E6":"Свелто-голубой","DDA0DD":"Сливовый","D3D3D3":"Светло-серый","FFF0F5":"Розово-лавандовый","FAEBD7":"Античный белый","FFFFE0":"Светло-жёлтый","F0FFF0":"Медвяной росы","F0FFFF":"Лазурный","F0F8FF":"Бледно-голубой","E6E6FA":"Лавандовый","FFF":"Белый"},"more":"Ещё цвета...","panelTitle":"Цвета","textColorTitle":"Цвет текста"},"colordialog":{"clear":"Очистить","highlight":"Под курсором","options":"Настройки цвета","selected":"Выбранный цвет","title":"Выберите цвет"},"contextmenu":{"options":"Параметры контекстного меню"},"div":{"IdInputLabel":"Идентификатор","advisoryTitleInputLabel":"Заголовок","cssClassInputLabel":"Классы CSS","edit":"Редактировать контейнер","inlineStyleInputLabel":"Стиль элемента","langDirLTRLabel":"Слева направо (LTR)","langDirLabel":"Направление текста","langDirRTLLabel":"Справа налево (RTL)","languageCodeInputLabel":"Код языка","remove":"Удалить контейнер","styleSelectLabel":"Стиль","title":"Создать Div-контейнер","toolbar":"Создать Div-контейнер"},"elementspath":{"eleLabel":"Путь элементов","eleTitle":"Элемент %1"},"find":{"find":"Найти","findOptions":"Опции поиска","findWhat":"Найти:","matchCase":"Учитывать регистр","matchCyclic":"По всему тексту","matchWord":"Только слово целиком","notFoundMsg":"Искомый текст не найден.","replace":"Заменить","replaceAll":"Заменить всё","replaceSuccessMsg":"Успешно заменено %1 раз(а).","replaceWith":"Заменить на:","title":"Поиск и замена"},"fakeobjects":{"anchor":"Якорь","flash":"Flash анимация","hiddenfield":"Скрытое поле","iframe":"iFrame","unknown":"Неизвестный объект"},"flash":{"access":"Доступ к скриптам","accessAlways":"Всегда","accessNever":"Никогда","accessSameDomain":"В том же домене","alignAbsBottom":"По низу текста","alignAbsMiddle":"По середине текста","alignBaseline":"По базовой линии","alignTextTop":"По верху текста","bgcolor":"Цвет фона","chkFull":"Разрешить полноэкранный режим","chkLoop":"Повторять","chkMenu":"Включить меню Flash","chkPlay":"Автоматическое воспроизведение","flashvars":"Переменные для Flash","hSpace":"Гориз. отступ","properties":"Свойства Flash","propertiesTab":"Свойства","quality":"Качество","qualityAutoHigh":"Запуск на высоком","qualityAutoLow":"Запуск на низком","qualityBest":"Лучшее","qualityHigh":"Высокое","qualityLow":"Низкое","qualityMedium":"Среднее","scale":"Масштабировать","scaleAll":"Пропорционально","scaleFit":"Заполнять","scaleNoBorder":"Заходить за границы","title":"Свойства Flash","vSpace":"Вертик. отступ","validateHSpace":"Горизонтальный отступ задается числом.","validateSrc":"Вы должны ввести ссылку","validateVSpace":"Вертикальный отступ задается числом.","windowMode":"Взаимодействие с окном","windowModeOpaque":"Непрозрачный","windowModeTransparent":"Прозрачный","windowModeWindow":"Обычный"},"font":{"fontSize":{"label":"Размер","voiceLabel":"Размер шрифта","panelTitle":"Размер шрифта"},"label":"Шрифт","panelTitle":"Шрифт","voiceLabel":"Шрифт"},"format":{"label":"Форматирование","panelTitle":"Форматирование","tag_address":"Адрес","tag_div":"Обычное (div)","tag_h1":"Заголовок 1","tag_h2":"Заголовок 2","tag_h3":"Заголовок 3","tag_h4":"Заголовок 4","tag_h5":"Заголовок 5","tag_h6":"Заголовок 6","tag_p":"Обычное","tag_pre":"Моноширинное"},"forms":{"button":{"title":"Свойства кнопки","text":"Текст (Значение)","type":"Тип","typeBtn":"Кнопка","typeSbm":"Отправка","typeRst":"Сброс"},"checkboxAndRadio":{"checkboxTitle":"Свойства флаговой кнопки","radioTitle":"Свойства кнопки выбора","value":"Значение","selected":"Выбрано"},"form":{"title":"Свойства формы","menu":"Свойства формы","action":"Действие","method":"Метод","encoding":"Кодировка"},"hidden":{"title":"Свойства скрытого поля","name":"Имя","value":"Значение"},"select":{"title":"Свойства списка выбора","selectInfo":"Информация о списке выбора","opAvail":"Доступные варианты","value":"Значение","size":"Размер","lines":"строк(и)","chkMulti":"Разрешить выбор нескольких вариантов","opText":"Текст","opValue":"Значение","btnAdd":"Добавить","btnModify":"Изменить","btnUp":"Поднять","btnDown":"Опустить","btnSetValue":"Пометить как выбранное","btnDelete":"Удалить"},"textarea":{"title":"Свойства многострочного текстового поля","cols":"Колонок","rows":"Строк"},"textfield":{"title":"Свойства текстового поля","name":"Имя","value":"Значение","charWidth":"Ширина поля (в символах)","maxChars":"Макс. количество символов","type":"Тип содержимого","typeText":"Текст","typePass":"Пароль","typeEmail":"Email","typeSearch":"Поиск","typeTel":"Номер телефона","typeUrl":"Ссылка"}},"horizontalrule":{"toolbar":"Вставить горизонтальную линию"},"iframe":{"border":"Показать границы фрейма","noUrl":"Пожалуйста, введите ссылку фрейма","scrolling":"Отображать полосы прокрутки","title":"Свойства iFrame","toolbar":"iFrame"},"image":{"alertUrl":"Пожалуйста, введите ссылку на изображение","alt":"Альтернативный текст","border":"Граница","btnUpload":"Загрузить на сервер","button2Img":"Вы желаете преобразовать это изображение-кнопку в обычное изображение?","hSpace":"Гориз. отступ","img2Button":"Вы желаете преобразовать это обычное изображение в изображение-кнопку?","infoTab":"Данные об изображении","linkTab":"Ссылка","lockRatio":"Сохранять пропорции","menu":"Свойства изображения","resetSize":"Вернуть обычные размеры","title":"Свойства изображения","titleButton":"Свойства изображения-кнопки","upload":"Загрузить","urlMissing":"Не указана ссылка на изображение.","vSpace":"Вертик. отступ","validateBorder":"Размер границ должен быть задан числом.","validateHSpace":"Горизонтальный отступ должен быть задан числом.","validateVSpace":"Вертикальный отступ должен быть задан числом."},"indent":{"indent":"Увеличить отступ","outdent":"Уменьшить отступ"},"justify":{"block":"По ширине","center":"По центру","left":"По левому краю","right":"По правому краю"},"language":{"button":"Установка языка","remove":"Удалить язык"},"link":{"acccessKey":"Клавиша доступа","advanced":"Дополнительно","advisoryContentType":"Тип содержимого","advisoryTitle":"Заголовок","anchor":{"toolbar":"Вставить / редактировать якорь","menu":"Изменить якорь","title":"Свойства якоря","name":"Имя якоря","errorName":"Пожалуйста, введите имя якоря","remove":"Удалить якорь"},"anchorId":"По идентификатору","anchorName":"По имени","charset":"Кодировка ресурса","cssClasses":"Классы CSS","emailAddress":"Email адрес","emailBody":"Текст сообщения","emailSubject":"Тема сообщения","id":"Идентификатор","info":"Информация о ссылке","langCode":"Код языка","langDir":"Направление текста","langDirLTR":"Слева направо (LTR)","langDirRTL":"Справа налево (RTL)","menu":"Редактировать ссылку","name":"Имя","noAnchors":"(В документе нет ни одного якоря)","noEmail":"Пожалуйста, введите email адрес","noUrl":"Пожалуйста, введите ссылку","other":"<другой>","popupDependent":"Зависимое (Netscape)","popupFeatures":"Параметры всплывающего окна","popupFullScreen":"Полноэкранное (IE)","popupLeft":"Отступ слева","popupLocationBar":"Панель адреса","popupMenuBar":"Панель меню","popupResizable":"Изменяемый размер","popupScrollBars":"Полосы прокрутки","popupStatusBar":"Строка состояния","popupToolbar":"Панель инструментов","popupTop":"Отступ сверху","rel":"Отношение","selectAnchor":"Выберите якорь","styles":"Стиль","tabIndex":"Последовательность перехода","target":"Цель","targetFrame":"<фрейм>","targetFrameName":"Имя целевого фрейма","targetPopup":"<всплывающее окно>","targetPopupName":"Имя всплывающего окна","title":"Ссылка","toAnchor":"Ссылка на якорь в тексте","toEmail":"Email","toUrl":"Ссылка","toolbar":"Вставить/Редактировать ссылку","type":"Тип ссылки","unlink":"Убрать ссылку","upload":"Загрузка"},"list":{"bulletedlist":"Вставить / удалить маркированный список","numberedlist":"Вставить / удалить нумерованный список"},"liststyle":{"armenian":"Армянская нумерация","bulletedTitle":"Свойства маркированного списка","circle":"Круг","decimal":"Десятичные (1, 2, 3, и т.д.)","decimalLeadingZero":"Десятичные с ведущим нулём (01, 02, 03, и т.д.)","disc":"Окружность","georgian":"Грузинская нумерация (ани, бани, гани, и т.д.)","lowerAlpha":"Строчные латинские (a, b, c, d, e, и т.д.)","lowerGreek":"Строчные греческие (альфа, бета, гамма, и т.д.)","lowerRoman":"Строчные римские (i, ii, iii, iv, v, и т.д.)","none":"Нет","notset":"<не указано>","numberedTitle":"Свойства нумерованного списка","square":"Квадрат","start":"Начиная с","type":"Тип","upperAlpha":"Заглавные латинские (A, B, C, D, E, и т.д.)","upperRoman":"Заглавные римские (I, II, III, IV, V, и т.д.)","validateStartNumber":"Первый номер списка должен быть задан обычным целым числом."},"magicline":{"title":"Вставить здесь параграф"},"maximize":{"maximize":"Развернуть","minimize":"Свернуть"},"newpage":{"toolbar":"Новая страница"},"pagebreak":{"alt":"Разрыв страницы","toolbar":"Вставить разрыв страницы для печати"},"pastefromword":{"confirmCleanup":"Текст, который вы желаете вставить, по всей видимости, был скопирован из Word. Следует ли очистить его перед вставкой?","error":"Невозможно очистить вставленные данные из-за внутренней ошибки","title":"Вставить из Word","toolbar":"Вставить из Word"},"pastetext":{"button":"Вставить только текст","title":"Вставить только текст"},"preview":{"preview":"Предварительный просмотр"},"print":{"toolbar":"Печать"},"removeformat":{"toolbar":"Убрать форматирование"},"save":{"toolbar":"Сохранить"},"scayt":{"btn_about":"О SCAYT","btn_dictionaries":"Словари","btn_disable":"Отключить SCAYT","btn_enable":"Включить SCAYT","btn_langs":"Языки","btn_options":"Настройки","text_title":"Проверка орфографии по мере ввода (SCAYT)"},"selectall":{"toolbar":"Выделить все"},"showblocks":{"toolbar":"Отображать блоки"},"smiley":{"options":"Выбор смайла","title":"Вставить смайл","toolbar":"Смайлы"},"sourcearea":{"toolbar":"Источник"},"specialchar":{"options":"Выбор специального символа","title":"Выберите специальный символ","toolbar":"Вставить специальный символ"},"stylescombo":{"label":"Стили","panelTitle":"Стили форматирования","panelTitle1":"Стили блока","panelTitle2":"Стили элемента","panelTitle3":"Стили объекта"},"table":{"border":"Размер границ","caption":"Заголовок","cell":{"menu":"Ячейка","insertBefore":"Вставить ячейку слева","insertAfter":"Вставить ячейку справа","deleteCell":"Удалить ячейки","merge":"Объединить ячейки","mergeRight":"Объединить с правой","mergeDown":"Объединить с нижней","splitHorizontal":"Разделить ячейку по горизонтали","splitVertical":"Разделить ячейку по вертикали","title":"Свойства ячейки","cellType":"Тип ячейки","rowSpan":"Объединяет строк","colSpan":"Объединяет колонок","wordWrap":"Перенос по словам","hAlign":"Горизонтальное выравнивание","vAlign":"Вертикальное выравнивание","alignBaseline":"По базовой линии","bgColor":"Цвет фона","borderColor":"Цвет границ","data":"Данные","header":"Заголовок","yes":"Да","no":"Нет","invalidWidth":"Ширина ячейки должна быть числом.","invalidHeight":"Высота ячейки должна быть числом.","invalidRowSpan":"Количество объединяемых строк должно быть задано числом.","invalidColSpan":"Количество объединяемых колонок должно быть задано числом.","chooseColor":"Выберите"},"cellPad":"Внутренний отступ ячеек","cellSpace":"Внешний отступ ячеек","column":{"menu":"Колонка","insertBefore":"Вставить колонку слева","insertAfter":"Вставить колонку справа","deleteColumn":"Удалить колонки"},"columns":"Колонки","deleteTable":"Удалить таблицу","headers":"Заголовки","headersBoth":"Сверху и слева","headersColumn":"Левая колонка","headersNone":"Без заголовков","headersRow":"Верхняя строка","invalidBorder":"Размер границ должен быть числом.","invalidCellPadding":"Внутренний отступ ячеек (cellpadding) должен быть числом.","invalidCellSpacing":"Внешний отступ ячеек (cellspacing) должен быть числом.","invalidCols":"Количество столбцов должно быть больше 0.","invalidHeight":"Высота таблицы должна быть числом.","invalidRows":"Количество строк должно быть больше 0.","invalidWidth":"Ширина таблицы должна быть числом.","menu":"Свойства таблицы","row":{"menu":"Строка","insertBefore":"Вставить строку сверху","insertAfter":"Вставить строку снизу","deleteRow":"Удалить строки"},"rows":"Строки","summary":"Итоги","title":"Свойства таблицы","toolbar":"Таблица","widthPc":"процентов","widthPx":"пикселей","widthUnit":"единица измерения"},"templates":{"button":"Шаблоны","emptyListMsg":"(не определено ни одного шаблона)","insertOption":"Заменить текущее содержимое","options":"Параметры шаблона","selectPromptMsg":"Пожалуйста, выберите, какой шаблон следует открыть в редакторе","title":"Шаблоны содержимого"},"toolbar":{"toolbarCollapse":"Свернуть панель инструментов","toolbarExpand":"Развернуть панель инструментов","toolbarGroups":{"document":"Документ","clipboard":"Буфер обмена / Отмена действий","editing":"Корректировка","forms":"Формы","basicstyles":"Простые стили","paragraph":"Абзац","links":"Ссылки","insert":"Вставка","styles":"Стили","colors":"Цвета","tools":"Инструменты"},"toolbars":"Панели инструментов редактора"},"undo":{"redo":"Повторить","undo":"Отменить"},"wsc":{"btnIgnore":"Пропустить","btnIgnoreAll":"Пропустить всё","btnReplace":"Заменить","btnReplaceAll":"Заменить всё","btnUndo":"Отменить","changeTo":"Изменить на","errorLoading":"Произошла ошибка при подключении к серверу проверки орфографии: %s.","ieSpellDownload":"Модуль проверки орфографии не установлен. Хотите скачать его?","manyChanges":"Проверка орфографии завершена. Изменено слов: %1","noChanges":"Проверка орфографии завершена. Не изменено ни одного слова","noMispell":"Проверка орфографии завершена. Ошибок не найдено","noSuggestions":"- Варианты отсутствуют -","notAvailable":"Извините, но в данный момент сервис недоступен.","notInDic":"Отсутствует в словаре","oneChange":"Проверка орфографии завершена. Изменено одно слово","progress":"Орфография проверяется...","title":"Проверка орфографии","toolbar":"Проверить орфографию"}};
@@ -2,6 +2,6 @@
2
2
  Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3
3
  For licensing, see LICENSE.md or http://ckeditor.com/license
4
4
  */
5
- CKEDITOR.dialog.add("about",function(a){var a=a.lang.about,b=CKEDITOR.plugins.get("about").path+"dialogs/"+(CKEDITOR.env.hidpi?"hidpi/":"")+"logo_ckeditor.png";return{title:CKEDITOR.env.ie?a.dlgTitle:a.title,minWidth:390,minHeight:230,contents:[{id:"tab1",label:"",title:"",expand:!0,padding:0,elements:[{type:"html",html:'<style type="text/css">.cke_about_container{color:#000 !important;padding:10px 10px 0;margin-top:5px}.cke_about_container p{margin: 0 0 10px;}.cke_about_container .cke_about_logo{height:81px;background-color:#fff;background-image:url('+
5
+ CKEDITOR.dialog.add("about",function(a){var a=a.lang.about,b=CKEDITOR.getUrl(CKEDITOR.plugins.get("about").path+"dialogs/"+(CKEDITOR.env.hidpi?"hidpi/":"")+"logo_ckeditor.png");return{title:CKEDITOR.env.ie?a.dlgTitle:a.title,minWidth:390,minHeight:230,contents:[{id:"tab1",label:"",title:"",expand:!0,padding:0,elements:[{type:"html",html:'<style type="text/css">.cke_about_container{color:#000 !important;padding:10px 10px 0;margin-top:5px}.cke_about_container p{margin: 0 0 10px;}.cke_about_container .cke_about_logo{height:81px;background-color:#fff;background-image:url('+
6
6
  b+");"+(CKEDITOR.env.hidpi?"background-size:163px 58px;":"")+'background-position:center; background-repeat:no-repeat;margin-bottom:10px;}.cke_about_container a{cursor:pointer !important;color:#00B2CE !important;text-decoration:underline !important;}</style><div class="cke_about_container"><div class="cke_about_logo"></div><p>CKEditor '+CKEDITOR.version+" (revision "+CKEDITOR.revision+')<br><a target="_blank" href="http://ckeditor.com/">http://ckeditor.com</a></p><p>'+a.help.replace("$1",'<a target="_blank" href="http://docs.ckeditor.com/user">'+
7
7
  a.userGuide+"</a>")+"</p><p>"+a.moreInfo+'<br><a target="_blank" href="http://ckeditor.com/about/license">http://ckeditor.com/about/license</a></p><p>'+a.copy.replace("$1",'<a target="_blank" href="http://cksource.com/">CKSource</a> - Frederico Knabben')+"</p></div>"}]}],buttons:[CKEDITOR.dialog.cancelButton]}});
@@ -1 +1 @@
1
- .CodeMirror{font-family:monospace;height:300px}.CodeMirror-scroll{overflow:auto}.CodeMirror-lines{padding:4px 0}.CodeMirror pre{padding:0 4px}.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumbers{}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror div.CodeMirror-cursor{border-left:1px solid #000}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.CodeMirror.cm-keymap-fat-cursor div.CodeMirror-cursor{width:auto;border:0;background:#7e7}div.CodeMirror-overwrite div.CodeMirror-cursor{}.cm-tab{display:inline-block}.CodeMirror-ruler{border-left:1px solid #ccc;position:absolute}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable,.cm-s-default .cm-punctuation,.cm-s-default .cm-property,.cm-s-default .cm-operator{}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta{color:#555}.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-header{color:blue}.cm-s-default .cm-quote{color:#090}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:bold}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-s-default .cm-error{color:red}.cm-invalidchar{color:red}div.CodeMirror span.CodeMirror-matchingbracket{color:#0f0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#f22}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{line-height:1;position:relative;overflow:hidden;background:#fff;color:#000}.CodeMirror-scroll{margin-bottom:-30px;margin-right:-30px;padding-bottom:30px;height:100%;outline:none;position:relative;-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-sizer{position:relative;border-right:30px solid transparent;-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-vscrollbar,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{position:absolute;z-index:6;display:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;padding-bottom:30px;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;-moz-box-sizing:content-box;box-sizing:content-box;padding-bottom:30px;margin-bottom:-32px;display:inline-block;*zoom:1;*display:inline}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-lines{cursor:text}.CodeMirror pre{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible}.CodeMirror-wrap pre{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;overflow:auto}.CodeMirror-widget{}.CodeMirror-wrap .CodeMirror-scroll{overflow-x:hidden}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-measure pre{position:static}.CodeMirror div.CodeMirror-cursor{position:absolute;border-right:none;width:0}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:1}.CodeMirror-focused div.CodeMirror-cursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.cm-searching{background:#ffa;background:rgba(255,255,0,.4)}.CodeMirror span{*vertical-align:text-bottom}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.CodeMirror{font:13px/1.4em monospace;text-align:left}.CodeMirror .activeline{background:#e8f2ff}.CodeMirror .CodeMirror-foldmarker{color:blue;-ms-text-shadow:#b9f 1px 1px 2px,#b9f -1px -1px 2px,#b9f 1px -1px 2px,#b9f -1px 1px 2px;-webkit-text-shadow:#b9f 1px 1px 2px,#b9f -1px -1px 2px,#b9f 1px -1px 2px,#b9f -1px 1px 2px;text-shadow:#b9f 1px 1px 2px,#b9f -1px -1px 2px,#b9f 1px -1px 2px,#b9f -1px 1px 2px;font-family:arial;line-height:.3;cursor:pointer}.CodeMirror-matchingtag{background:#ff9600;background:rgba(255,150,0,.3)}.searchCodeButton span,.autoFormat span,.CommentSelectedRange span,.UncommentSelectedRange span{width:16px;height:16px;margin-left:6px}.searchCodeButton span{background:url("../icons/SearchCode.png") no-repeat}.autoFormat span{background:url("../icons/AutoFormat.png") no-repeat}.CommentSelectedRange span{background:url("../icons/CommentSelectedRange.png") no-repeat}.UncommentSelectedRange span{background:url("../icons/UncommentSelectedRange.png") no-repeat}.cke_reset_all .CodeMirror-scroll *{white-space:normal}.cke_reset_all .cm-s-cobalt *,.cke_reset_all .cm-s-erlang-dark *,.cke_reset_all .cm-s-lesser-dark *,.cke_reset_all .cm-s-monokai *,.cke_reset_all .cm-s-night *,.cke_reset_all .cm-s-rubyblue *,.cke_reset_all .cm-s-twilight *,.cke_reset_all .cm-s-xq-dark *,.cke_reset_all .cm-s-base16-dark *,.cke_reset_all .cm-s-3024-night *,.cke_reset_all .cm-s-the-matrix *,.cke_reset_all .cm-s-paraiso-dark *,.cke_reset_all .cm-s-paraiso-light *{color:inherit;font:inherit}.cm-s-cobalt .CodeMirror-selected{background:#b36539!important}.cm-s-erlang-dark .CodeMirror-selected{background:#b36539!important}.cm-s-lesser-dark .CodeMirror-selected{background:#45443b!important}.cm-s-monokai .CodeMirror-selected{background:#49483e!important}.cm-s-night .CodeMirror-selected{background:#447!important}.cm-s-rubyblue .CodeMirror-selected{background:#38566f!important}.cm-s-twilight .CodeMirror-selected{background:#323232!important}.cm-s-xq-dark .CodeMirror-selected{background:#a8f!important}.cm-s-the-matrix .CodeMirror-selected{background:#494949!important}.cm-s-mbo .CodeMirror-selected{background:#716c62!important}.cm-s-blackboard .activeline,.cm-s-cobalt .activeline,.cm-s-erlang-dark .activeline,.cm-s-lesser-dark .activeline,.cm-s-monokai .activeline,.cm-s-night .activeline,.cm-s-rubyblue .activeline,.cm-s-vibrant-ink .activeline,.cm-s-xq-dark .activeline,.cm-s-base16-dark .activeline,.cm-s-3024-night .activeline,.cm-s-paraiso-light .activeline,.cm-s-paraiso-dark .activeline,.cm-s-pastel-on-dark .activeline{background:#757575}.cm-s-pastel-on-dark .activeline{background:#404040}.cm-s-mbo .activeline{background:#716c62}.cm-s-twilight .activeline{background:#494949}.cm-s-the-matrix .activeline{background:#060}.CodeMirror-focused .cm-matchhighlight{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAAAFklEQVQI12NgYGBgkKzc8x9CMDAwAAAmhwSbidEoSQAAAABJRU5ErkJggg==);background-position:bottom;background-repeat:repeat-x}.CodeMirror-dialog{position:absolute;left:0;right:0;background:#fff;z-index:15;padding:.1em .8em;overflow:hidden;color:#333}.CodeMirror-dialog-top{border-bottom:1px solid #eee;top:0}.CodeMirror-dialog-bottom{border-top:1px solid #eee;bottom:0}.CodeMirror-dialog input{border:none;outline:none;background:transparent;width:20em;color:inherit;font-family:monospace}.CodeMirror-dialog button{font-size:70%}.CodeMirror-hints{position:absolute;z-index:10;overflow:hidden;list-style:none;margin:0;padding:2px;-webkit-box-shadow:2px 3px 5px #000;-ms-box-shadow:2px 3px 5px #000;box-shadow:2px 3px 5px #000;border-radius:3px;border:1px solid silver;background:#fff;font-size:90%;font-family:monospace;max-height:20em;overflow-y:auto}.CodeMirror-hint{margin:0;padding:0 4px;border-radius:2px;max-width:19em;overflow:hidden;white-space:pre;color:#000;cursor:pointer}.CodeMirror-hint-active{background:#08f;color:#fff}.cm-trailingspace{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAACCAYAAAB/qH1jAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QUXCToH00Y1UgAAACFJREFUCNdjPMDBUc/AwNDAAAFMTAwMDA0OP34wQgX/AQBYgwYEx4f9lQAAAABJRU5ErkJggg==);background-position:bottom left;background-repeat:repeat-x}
1
+ .CodeMirror{font-family:monospace;height:300px}.CodeMirror-scroll{overflow:auto}.CodeMirror-lines{padding:4px 0}.CodeMirror pre{padding:0 4px}.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumbers{}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror div.CodeMirror-cursor{border-left:1px solid #000}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.CodeMirror.cm-fat-cursor div.CodeMirror-cursor{width:auto;border:0;background:#7e7}.CodeMirror.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-animate-fat-cursor{width:auto;border:0;-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite}@-moz-keyframes blink{0%{background:#7e7}50%{background:none}100%{background:#7e7}}@-webkit-keyframes blink{0%{background:#7e7}50%{background:none}100%{background:#7e7}}@keyframes blink{0%{background:#7e7}50%{background:none}100%{background:#7e7}}div.CodeMirror-overwrite div.CodeMirror-cursor{}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-ruler{border-left:1px solid #ccc;position:absolute}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable,.cm-s-default .cm-punctuation,.cm-s-default .cm-property,.cm-s-default .cm-operator{}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta{color:#555}.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-header{color:blue}.cm-s-default .cm-quote{color:#090}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:bold}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-error{color:red}.cm-invalidchar{color:red}div.CodeMirror span.CodeMirror-matchingbracket{color:#0f0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#f22}.CodeMirror-matchingtag{background:rgba(255,150,0,.3)}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{line-height:1;position:relative;overflow:hidden;background:#fff;color:#000}.CodeMirror-scroll{margin-bottom:-30px;margin-right:-30px;padding-bottom:30px;height:100%;outline:none;position:relative;-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-sizer{position:relative;border-right:30px solid transparent;-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-vscrollbar,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{position:absolute;z-index:6;display:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;padding-bottom:30px;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;-moz-box-sizing:content-box;box-sizing:content-box;padding-bottom:30px;margin-bottom:-32px;display:inline-block;*zoom:1;*display:inline}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;height:100%}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible}.CodeMirror-wrap pre{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;overflow:auto}.CodeMirror-widget{}.CodeMirror-wrap .CodeMirror-scroll{overflow-x:hidden}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-measure pre{position:static}.CodeMirror div.CodeMirror-cursor{position:absolute;border-right:none;width:0}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}.CodeMirror-focused div.CodeMirror-cursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.cm-searching{background:#ffa;background:rgba(255,255,0,.4)}.CodeMirror span{*vertical-align:text-bottom}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:''}span.CodeMirror-selectedtext{background:none}.CodeMirror{font:13px/1.4em monospace;text-align:left}.CodeMirror .activeline{background:#e8f2ff}.CodeMirror .CodeMirror-foldmarker{color:blue;-ms-text-shadow:#b9f 1px 1px 2px,#b9f -1px -1px 2px,#b9f 1px -1px 2px,#b9f -1px 1px 2px;-webkit-text-shadow:#b9f 1px 1px 2px,#b9f -1px -1px 2px,#b9f 1px -1px 2px,#b9f -1px 1px 2px;text-shadow:#b9f 1px 1px 2px,#b9f -1px -1px 2px,#b9f 1px -1px 2px,#b9f -1px 1px 2px;font-family:arial;line-height:.3;cursor:pointer}.CodeMirror-matchingtag{background:#ff9600;background:rgba(255,150,0,.3)}.searchCodeButton span,.autoFormat span,.CommentSelectedRange span,.UncommentSelectedRange span{width:16px;height:16px;margin-left:6px}.searchCodeButton span{background:url("../icons/searchcode.png") no-repeat}.autoFormat span{background:url("../icons/autoformat.png") no-repeat}.CommentSelectedRange span{background:url("../icons/commentselectedrange.png") no-repeat}.UncommentSelectedRange span{background:url("../icons/uncommentselectedrange.png") no-repeat}.cke_reset_all .CodeMirror-scroll *{white-space:normal}.cke_reset_all .cm-s-cobalt *,.cke_reset_all .cm-s-erlang-dark *,.cke_reset_all .cm-s-lesser-dark *,.cke_reset_all .cm-s-monokai *,.cke_reset_all .cm-s-night *,.cke_reset_all .cm-s-rubyblue *,.cke_reset_all .cm-s-twilight *,.cke_reset_all .cm-s-xq-dark *,.cke_reset_all .cm-s-base16-dark *,.cke_reset_all .cm-s-3024-night *,.cke_reset_all .cm-s-the-matrix *,.cke_reset_all .cm-s-paraiso-dark *,.cke_reset_all .cm-s-paraiso-light *{color:inherit;font:inherit}.cm-s-cobalt .CodeMirror-selected{background:#b36539!important}.cm-s-erlang-dark .CodeMirror-selected{background:#b36539!important}.cm-s-lesser-dark .CodeMirror-selected{background:#45443b!important}.cm-s-monokai .CodeMirror-selected{background:#49483e!important}.cm-s-night .CodeMirror-selected{background:#447!important}.cm-s-rubyblue .CodeMirror-selected{background:#38566f!important}.cm-s-twilight .CodeMirror-selected{background:#323232!important}.cm-s-xq-dark .CodeMirror-selected{background:#a8f!important}.cm-s-the-matrix .CodeMirror-selected{background:#494949!important}.cm-s-mbo .CodeMirror-selected{background:#716c62!important}.cm-s-blackboard .activeline,.cm-s-cobalt .activeline,.cm-s-erlang-dark .activeline,.cm-s-lesser-dark .activeline,.cm-s-monokai .activeline,.cm-s-night .activeline,.cm-s-rubyblue .activeline,.cm-s-vibrant-ink .activeline,.cm-s-xq-dark .activeline,.cm-s-base16-dark .activeline,.cm-s-3024-night .activeline,.cm-s-paraiso-light .activeline,.cm-s-paraiso-dark .activeline,.cm-s-pastel-on-dark .activeline{background:#757575}.cm-s-pastel-on-dark .activeline{background:#404040}.cm-s-mbo .activeline{background:#716c62}.cm-s-twilight .activeline{background:#494949}.cm-s-the-matrix .activeline{background:#060}.CodeMirror-focused .cm-matchhighlight{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAAAFklEQVQI12NgYGBgkKzc8x9CMDAwAAAmhwSbidEoSQAAAABJRU5ErkJggg==);background-position:bottom;background-repeat:repeat-x}.CodeMirror-dialog{position:absolute;left:0;right:0;background:#fff;z-index:15;padding:.1em .8em;overflow:hidden;color:#333}.CodeMirror-dialog-top{border-bottom:1px solid #eee;top:0}.CodeMirror-dialog-bottom{border-top:1px solid #eee;bottom:0}.CodeMirror-dialog input{border:none;outline:none;background:transparent;width:20em;color:inherit;font-family:monospace}.CodeMirror-dialog button{font-size:70%}.CodeMirror-hints{position:absolute;z-index:10;overflow:hidden;list-style:none;margin:0;padding:2px;-webkit-box-shadow:2px 3px 5px #000;-ms-box-shadow:2px 3px 5px #000;box-shadow:2px 3px 5px #000;border-radius:3px;border:1px solid silver;background:#fff;font-size:90%;font-family:monospace;max-height:20em;overflow-y:auto}.CodeMirror-hint{margin:0;padding:0 4px;border-radius:2px;max-width:19em;overflow:hidden;white-space:pre;color:#000;cursor:pointer}.CodeMirror-hint-active{background:#08f;color:#fff}.cm-trailingspace{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAACCAYAAAB/qH1jAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QUXCToH00Y1UgAAACFJREFUCNdjPMDBUc/AwNDAAAFMTAwMDA0OP34wQgX/AQBYgwYEx4f9lQAAAABJRU5ErkJggg==);background-position:bottom left;background-repeat:repeat-x}
@@ -1 +1 @@
1
- (function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)})(function(n){function i(n,i){var r=n.getRange(t(i.line,i.ch-1),t(i.line,i.ch+1));return r.length==2?r:null}function e(r){for(var e={name:"autoCloseBrackets",Backspace:function(u){var e,s,f,o;if(u.getOption("disableInput"))return n.Pass;for(e=u.listSelections(),f=0;f<e.length;f++)if(!e[f].empty()||(s=i(u,e[f].head),!s||r.indexOf(s)%2!=0))return n.Pass;for(f=e.length-1;f>=0;f--)o=e[f].head,u.replaceRange("",t(o.line,o.ch-1),t(o.line,o.ch+1))}},o="",u=0;u<r.length;u+=2)(function(i,r){i!=r&&(o+=r),e["'"+i+"'"]=function(u){var a,s,l,v,e,c,h;if(u.getOption("disableInput"))return n.Pass;for(a=u.listSelections(),l=0;l<a.length;l++){if(v=a[l],e=v.head,i=="'"&&u.getTokenTypeAt(e)=="comment")return n.Pass;if(h=u.getRange(e,t(e.line,e.ch+1)),v.empty())if(i==r&&h==r)c=u.getRange(e,t(e.line,e.ch+3))==i+i+i?"skipThree":"skip";else if(i==r&&e.ch>1&&u.getRange(t(e.line,e.ch-2),e)==i+i&&(e.ch<=2||u.getRange(t(e.line,e.ch-3),t(e.line,e.ch-2))!=i))c="addFour";else{if(i==r&&n.isWordChar(h))return n.Pass;if(u.getLine(e.line).length==e.ch||o.indexOf(h)>=0||f.test(h))c="both";else return n.Pass}else c="surround";if(s){if(s!=c)return n.Pass}else s=c}u.operation(function(){var t,n;if(s=="skip")u.execCommand("goCharRight");else if(s=="skipThree")for(n=0;n<3;n++)u.execCommand("goCharRight");else if(s=="surround"){for(t=u.getSelections(),n=0;n<t.length;n++)t[n]=i+t[n]+r;u.replaceSelections(t,"around")}else s=="both"?(u.replaceSelection(i+r,null),u.execCommand("goCharLeft")):s=="addFour"&&(u.replaceSelection(i+i+i+i,"before"),u.execCommand("goCharRight"))})},i!=r&&(e["'"+r+"'"]=function(i){for(var e=i.listSelections(),u,f=0;f<e.length;f++)if(u=e[f],!u.empty()||i.getRange(u.head,t(u.head.line,u.head.ch+1))!=r)return n.Pass;i.execCommand("goCharRight")})})(r.charAt(u),r.charAt(u+1));return e}function o(t){return function(r){var u,f,e;if(r.getOption("disableInput"))return n.Pass;for(u=r.listSelections(),f=0;f<u.length;f++)if(!u[f].empty()||(e=i(r,u[f].head),!e||t.indexOf(e)%2!=0))return n.Pass;r.operation(function(){var n,t;for(r.replaceSelection("\n\n",null),r.execCommand("goCharLeft"),u=r.listSelections(),n=0;n<u.length;n++)t=u[n].head.line,r.indentLine(t,null,!0),r.indentLine(t+1,null,!0)})}}var r="()[]{}''\"\"",u="[]{}",f=/\s/,t=n.Pos;n.defineOption("autoCloseBrackets",!1,function(t,i,f){var s,h,c;(f!=n.Init&&f&&t.removeKeyMap("autoCloseBrackets"),i)&&(s=r,h=u,typeof i=="string"?s=i:typeof i=="object"&&(i.pairs!=null&&(s=i.pairs),i.explode!=null&&(h=i.explode)),c=e(s),h&&(c.Enter=o(h)),t.addKeyMap(c))})}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror"),require("../fold/xml-fold")):typeof define=="function"&&define.amd?define(["../../lib/codemirror","../fold/xml-fold"],n):n(CodeMirror)}(function(n){function f(f){var h,p,b,y,e,l,k;if(f.getOption("disableInput"))return n.Pass;for(h=f.listSelections(),p=[],e=0;e<h.length;e++){if(!h[e].empty())return n.Pass;var s=h[e].head,o=f.getTokenAt(s),w=n.innerMode(f.getMode(),o.state),a=w.state;if(w.mode.name!="xml"||!a.tagName)return n.Pass;var v=f.getOption("autoCloseTags"),d=w.mode.configuration=="html",g=typeof v=="object"&&v.dontCloseTags||d&&r,nt=typeof v=="object"&&v.indentTags||d&&u,c=a.tagName;if(o.end>s.ch&&(c=c.slice(0,c.length-o.end+s.ch)),b=c.toLowerCase(),!c||o.type=="string"&&(o.end!=s.ch||!/[\"\']/.test(o.string.charAt(o.string.length-1))||o.string.length==1)||o.type=="tag"&&a.type=="closeTag"||o.string.indexOf("/")==o.string.length-1||g&&t(g,b)>-1||i(f,c,s,a,!0))return n.Pass;y=nt&&t(nt,b)>-1,p[e]={indent:y,text:">"+(y?"\n\n":"")+"<\/"+c+">",newPos:y?n.Pos(s.line+1,0):n.Pos(s.line,s.ch+1)}}for(e=h.length-1;e>=0;e--)l=p[e],f.replaceRange(l.text,h[e].head,h[e].anchor,"+insert"),k=f.listSelections().slice(0),k[e]={head:l.newPos,anchor:l.newPos},f.setSelections(k),l.indent&&(f.indentLine(l.newPos.line,null,!0),f.indentLine(l.newPos.line+1,null,!0))}function e(t){var f,o,r;if(t.getOption("disableInput"))return n.Pass;for(f=t.listSelections(),o=[],r=0;r<f.length;r++){if(!f[r].empty())return n.Pass;var s=f[r].head,e=t.getTokenAt(s),h=n.innerMode(t.getMode(),e.state),u=h.state;if(e.type=="string"||e.string.charAt(0)!="<"||e.start!=s.ch-1||h.mode.name!="xml"||!u.context||!u.context.tagName||i(t,u.context.tagName,s,u))return n.Pass;o[r]="/"+u.context.tagName+">"}t.replaceSelections(o)}function t(n,t){if(n.indexOf)return n.indexOf(t);for(var i=0,r=n.length;i<r;++i)if(n[i]==t)return i;return-1}function i(t,i,r,u,f){var h,o,e,c,l,s;if(!n.scanForClosingTag||(h=Math.min(t.lastLine()+1,r.line+500),o=n.scanForClosingTag(t,r,null,h),!o||o.tag!=i))return!1;for(e=u.context,c=f?1:0;e&&e.tagName==i;e=e.prev)++c;for(r=o.to,l=1;l<c;l++){if(s=n.scanForClosingTag(t,r,null,h),!s||s.tag!=i)return!1;r=s.to}return!0}n.defineOption("autoCloseTags",!1,function(t,i,r){if(r!=n.Init&&r&&t.removeKeyMap("autoCloseTags"),i){var u={name:"autoCloseTags"};(typeof i!="object"||i.whenClosing)&&(u["'/'"]=function(n){return e(n)}),(typeof i!="object"||i.whenOpening)&&(u["'>'"]=function(n){return f(n)}),t.addKeyMap(u)}});var r=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"],u=["applet","blockquote","body","button","div","dl","fieldset","form","frameset","h1","h2","h3","h4","h5","h6","head","html","iframe","layer","legend","object","ol","p","select","table","ul"]}),function(){function i(n){var e=n.getCursor(),t=n.getTokenAt(e),i=CodeMirror.innerMode(n.getMode(),t.state).mode,r,o,u,f,s;if(t.type=="comment"&&i.blockCommentStart&&(o=t.string.indexOf(i.blockCommentEnd),u=n.getRange(CodeMirror.Pos(e.line,0),CodeMirror.Pos(e.line,t.end)),o==-1||o!=t.string.length-i.blockCommentEnd.length))if(t.string.indexOf(i.blockCommentStart)==0){if(r=u.slice(0,t.start),!/^\s*$/.test(r))for(r="",s=0;s<t.start;++s)r+=" "}else(f=u.indexOf(i.blockCommentContinue))!=-1&&f+i.blockCommentContinue.length>t.start&&/^\s*$/.test(u.slice(0,f))&&(r=u.slice(0,f));if(r!=null)n.replaceSelection("\n"+r+i.blockCommentContinue,"end");else return CodeMirror.Pass}for(var t=["clike","css","javascript"],n=0;n<t.length;++n)CodeMirror.extendMode(t[n],{blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * "});CodeMirror.defineOption("continueComments",null,function(n,t,r){r&&r!=CodeMirror.Init&&n.removeKeyMap("continueComment");var u={name:"continueComment"};u[typeof t=="string"?t:"Enter"]=i,n.addKeyMap(u)})}(),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){function u(n,i,u,e){var l=n.getLineHandle(i.line),o=i.ch-1,c=o>=0&&r[l.text.charAt(o)]||r[l.text.charAt(++o)],h,a,s;return c?(h=c.charAt(1)==">"?1:-1,u&&h>0!=(o==i.ch))?null:(a=n.getTokenTypeAt(t(i.line,o+1)),s=f(n,t(i.line,o+(h>0?1:0)),h,a||null,e),s==null)?null:{from:t(i.line,o),to:s&&s.pos,match:s&&s.ch==c.charAt(0),forward:h>0}:null}function f(n,i,u,f,e){for(var p=e&&e.maxScanLineLength||1e4,a=e&&e.maxScanLines||1e3,l=[],w=e&&e.bracketRegex?e.bracketRegex:/[(){}[\]]/,b=u>0?Math.min(i.line+a,n.lastLine()+1):Math.max(n.firstLine()-1,i.line-a),h,s,v,c,y,o=i.line;o!=b;o+=u)if((h=n.getLine(o),h)&&(s=u>0?0:h.length-1,v=u>0?h.length:-1,!(h.length>p)))for(o==i.line&&(s=i.ch-(u<0?1:0));s!=v;s+=u)if(c=h.charAt(s),w.test(c)&&(f===undefined||n.getTokenTypeAt(t(o,s+1))==f))if(y=r[c],y.charAt(1)==">"==u>0)l.push(c);else if(l.length)l.pop();else return{pos:t(o,s),ch:c};return o-u==(u>0?n.lastLine():n.firstLine())?!1:null}function e(n,i,r){for(var a=n.state.matchBrackets.maxHighlightLineLength||1e3,e=[],h=n.listSelections(),f,c,l,o=0;o<h.length;o++)f=h[o].empty()&&u(n,h[o].head,!1,r),f&&n.getLine(f.from.line).length<=a&&(c=f.match?"CodeMirror-matchingbracket":"CodeMirror-nonmatchingbracket",e.push(n.markText(f.from,t(f.from.line,f.from.ch+1),{className:c})),f.to&&n.getLine(f.to.line).length<=a&&e.push(n.markText(f.to,t(f.to.line,f.to.ch+1),{className:c})));if(e.length)if(s&&n.state.focused&&n.display.input.focus(),l=function(){n.operation(function(){for(var n=0;n<e.length;n++)e[n].clear()})},i)setTimeout(l,800);else return l}function o(n){n.operation(function(){i&&(i(),i=null),i=e(n,!1,n.state.matchBrackets)})}var s=/MSIE \d/.test(navigator.userAgent)&&(document.documentMode==null||document.documentMode<8),t=n.Pos,r={"(":")>",")":"(<","[":"]>","]":"[<","{":"}>","}":"{<"},i=null;n.defineOption("matchBrackets",!1,function(t,i,r){if(r&&r!=n.Init&&t.off("cursorActivity",o),i){t.state.matchBrackets=typeof i=="object"?i:{};t.on("cursorActivity",o)}}),n.defineExtension("matchBrackets",function(){e(this,!0)}),n.defineExtension("findMatchingBracket",function(n,t,i){return u(this,n,t,i)}),n.defineExtension("scanForBracket",function(n,t,i,r){return f(this,n,t,i,r)})}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror"),require("../fold/xml-fold")):typeof define=="function"&&define.amd?define(["../../lib/codemirror","../fold/xml-fold"],n):n(CodeMirror)}(function(n){"use strict";function i(n){n.state.tagHit&&n.state.tagHit.clear(),n.state.tagOther&&n.state.tagOther.clear(),n.state.tagHit=n.state.tagOther=null}function t(t){t.state.failedTagMatch=!1,t.operation(function(){var f,u,r,e,o;(i(t),t.somethingSelected())||(f=t.getCursor(),u=t.getViewport(),u.from=Math.min(u.from,f.line),u.to=Math.max(f.line+1,u.to),r=n.findMatchingTag(t,f,u),r)&&(t.state.matchBothTags&&(e=r.at=="open"?r.open:r.close,e&&(t.state.tagHit=t.markText(e.from,e.to,{className:"CodeMirror-matchingtag"}))),o=r.at=="close"?r.open:r.close,o?t.state.tagOther=t.markText(o.from,o.to,{className:"CodeMirror-matchingtag"}):t.state.failedTagMatch=!0)})}function r(n){n.state.failedTagMatch&&t(n)}n.defineOption("matchTags",!1,function(u,f,e){if(e&&e!=n.Init&&(u.off("cursorActivity",t),u.off("viewportChange",r),i(u)),f){u.state.matchBothTags=typeof f=="object"&&f.bothTags;u.on("cursorActivity",t);u.on("viewportChange",r);t(u)}}),n.commands.toMatchingTag=function(t){var i=n.findMatchingTag(t,t.getCursor()),r;i&&(r=i.at=="close"?i.open:i.close,r&&t.extendSelection(r.to,r.from))}}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){n.defineOption("showTrailingSpace",!1,function(t,i,r){r==n.Init&&(r=!1),r&&!i?t.removeOverlay("trailingspace"):!r&&i&&t.addOverlay({token:function(n){for(var i=n.string.length,t=i;t&&/\s/.test(n.string.charAt(t-1));--t);return t>n.pos?(n.pos=t,null):(n.pos=i,"trailingspace")},name:"trailingspace"})})}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){"use strict";function i(i,u,f,e){function a(n){var t=s(i,u),f,r;if(!t||t.to.line-t.from.line<l)return null;for(f=i.findMarksAt(t.from),r=0;r<f.length;++r)if(f[r].__isFold&&e!=="fold"){if(!n)return null;t.cleared=!0,f[r].clear()}return t}var s,l,o,h,c;if(f&&f.call?(s=f,f=null):s=t(i,f,"rangeFinder"),typeof u=="number"&&(u=n.Pos(u,0)),l=t(i,f,"minFoldSize"),o=a(!0),t(i,f,"scanUp"))while(!o&&u.line>i.firstLine())u=n.Pos(u.line-1,0),o=a(!1);if(o&&!o.cleared&&e!=="unfold"){h=r(i,f);n.on(h,"mousedown",function(t){c.clear(),n.e_preventDefault(t)});c=i.markText(o.from,o.to,{replacedWith:h,clearOnEnter:!0,__isFold:!0});c.on("clear",function(t,r){n.signal(i,"unfold",i,t,r)});n.signal(i,"fold",i,o.from,o.to)}}function r(n,i){var r=t(n,i,"widget"),u;return typeof r=="string"&&(u=document.createTextNode(r),r=document.createElement("span"),r.appendChild(u),r.className="CodeMirror-foldmarker"),r}function t(n,t,i){if(t&&t[i]!==undefined)return t[i];var r=n.options.foldOptions;return r&&r[i]!==undefined?r[i]:u[i]}n.newFoldFunction=function(n,t){return function(r,u){i(r,u,{rangeFinder:n,widget:t})}},n.defineExtension("foldCode",function(n,t,r){i(this,n,t,r)}),n.defineExtension("isFolded",function(n){for(var i=this.findMarksAt(n),t=0;t<i.length;++t)if(i[t].__isFold)return!0}),n.commands.toggleFold=function(n){n.foldCode(n.getCursor())},n.commands.fold=function(n){n.foldCode(n.getCursor(),null,"fold")},n.commands.unfold=function(n){n.foldCode(n.getCursor(),null,"unfold")},n.commands.foldAll=function(t){t.operation(function(){for(var i=t.firstLine(),r=t.lastLine();i<=r;i++)t.foldCode(n.Pos(i,0),null,"fold")})},n.commands.unfoldAll=function(t){t.operation(function(){for(var i=t.firstLine(),r=t.lastLine();i<=r;i++)t.foldCode(n.Pos(i,0),null,"unfold")})},n.registerHelper("fold","combine",function(){var n=Array.prototype.slice.call(arguments,0);return function(t,i){for(var u,r=0;r<n.length;++r)if(u=n[r](t,i),u)return u}}),n.registerHelper("fold","auto",function(n,t){for(var u=n.getHelpers(t,"fold"),r,i=0;i<u.length;i++)if(r=u[i](n,t),r)return r});var u={rangeFinder:n.fold.auto,widget:"↔",minFoldSize:0,scanUp:!1};n.defineOption("foldOptions",null)}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){"use strict";n.registerHelper("fold","brace",function(t,i){function p(r){for(var u,f=i.ch,o=0;;){if(u=f<=0?-1:y.lastIndexOf(r,f-1),u==-1){if(o==1)break;o=1,f=y.length;continue}if(o==1&&u<i.ch)break;if(l=t.getTokenTypeAt(n.Pos(e,u+1)),!/^(comment|string)/.test(l))return u+1;f=u-1}}var e=i.line,y=t.getLine(e),l,w="{",b="}",u=p("{"),a,k,h,v,f,o,r,s,c;if(u==null&&(w="[",b="]",u=p("[")),u!=null){a=1,k=t.lastLine();n:for(f=e;f<=k;++f)for(o=t.getLine(f),r=f==e?u:0;;){if(s=o.indexOf(w,r),c=o.indexOf(b,r),s<0&&(s=o.length),c<0&&(c=o.length),r=Math.min(s,c),r==o.length)break;if(t.getTokenTypeAt(n.Pos(f,r+1))==l)if(r==s)++a;else if(!--a){h=f,v=r;break n}++r}if(h!=null&&(e!=h||v!=u))return{from:n.Pos(e,u),to:n.Pos(h,v)}}}),n.registerHelper("fold","import",function(t,i){function r(i){var r,u,e,o,f;if(i<t.firstLine()||i>t.lastLine()||(r=t.getTokenAt(n.Pos(i,1)),/\S/.test(r.string)||(r=t.getTokenAt(n.Pos(i,r.end+1))),r.type!="keyword"||r.string!="import"))return null;for(u=i,e=Math.min(t.lastLine(),i+10);u<=e;++u)if(o=t.getLine(u),f=o.indexOf(";"),f!=-1)return{startCh:r.end,end:n.Pos(u,f)}}var i=i.line,f=r(i),o,u,e;if(!f||r(i-1)||(o=r(i-2))&&o.end.line==i-1)return null;for(u=f.end;;){if(e=r(u.line+1),e==null)break;u=e.end}return{from:t.clipPos(n.Pos(i,f.startCh+1)),to:u}}),n.registerHelper("fold","include",function(t,i){function u(i){if(i<t.firstLine()||i>t.lastLine())return null;var r=t.getTokenAt(n.Pos(i,1));return/\S/.test(r.string)||(r=t.getTokenAt(n.Pos(i,r.end+1))),r.type=="meta"&&r.string.slice(0,8)=="#include"?r.start+8:void 0}var i=i.line,f=u(i),r,e;if(f==null||u(i-1)!=null)return null;for(r=i;;){if(e=u(r+1),e==null)break;++r}return{from:n.Pos(i,f+1),to:t.clipPos(n.Pos(r))}})}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){"use strict";function v(n,t){return n.line-t.line||n.ch-t.ch}function i(n,t,i,r){this.line=t,this.ch=i,this.cm=n,this.text=n.getLine(t),this.min=r?r.from:n.firstLine(),this.max=r?r.to-1:n.lastLine()}function u(n,i){var r=n.cm.getTokenTypeAt(t(n.line,i));return r&&/\btag\b/.test(r)}function h(n){if(!(n.line>=n.max))return n.ch=0,n.text=n.cm.getLine(++n.line),!0}function c(n){if(!(n.line<=n.min))return n.text=n.cm.getLine(--n.line),n.ch=n.text.length,!0}function e(n){for(var t,i,r;;){if(t=n.text.indexOf(">",n.ch),t==-1)if(h(n))continue;else return;if(!u(n,t+1)){n.ch=t+1;continue}return i=n.text.lastIndexOf("/",t),r=i>-1&&!/\S/.test(n.text.slice(i+1,t)),n.ch=t+1,r?"selfClose":"regular"}}function o(n){for(var t,i;;){if(t=n.ch?n.text.lastIndexOf("<",n.ch-1):-1,t==-1)if(c(n))continue;else return;if(!u(n,t+1)){n.ch=t;continue}if(r.lastIndex=t,n.ch=t,i=r.exec(n.text),i&&i.index==t)return i}}function l(n){for(;;){r.lastIndex=n.ch;var t=r.exec(n.text);if(!t)if(h(n))continue;else return;if(!u(n,t.index+1)){n.ch=t.index+1;continue}return n.ch=t.index+t[0].length,t}}function p(n){for(var t,i,r;;){if(t=n.ch?n.text.lastIndexOf(">",n.ch-1):-1,t==-1)if(c(n))continue;else return;if(!u(n,t+1)){n.ch=t;continue}return i=n.text.lastIndexOf("/",t),r=i>-1&&!/\S/.test(n.text.slice(i+1,t)),n.ch=t+1,r?"selfClose":"regular"}}function f(n,i){for(var f=[],u;;){var r=l(n),o,s=n.line,h=n.ch-(r?r[0].length:0);if(!r||!(o=e(n)))return;if(o!="selfClose")if(r[1]){for(u=f.length-1;u>=0;--u)if(f[u]==r[2]){f.length=u;break}if(u<0&&(!i||i==r[2]))return{tag:r[2],from:t(s,h),to:t(n.line,n.ch)}}else f.push(r[2])}}function a(n,i){for(var f=[],e,u;;){if(e=p(n),!e)return;if(e=="selfClose"){o(n);continue}var s=n.line,h=n.ch,r=o(n);if(!r)return;if(r[1])f.push(r[2]);else{for(u=f.length-1;u>=0;--u)if(f[u]==r[2]){f.length=u;break}if(u<0&&(!i||i==r[2]))return{tag:r[2],from:t(n.line,n.ch),to:t(s,h)}}}}var t=n.Pos,s="A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",y=s+"-:.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040",r=new RegExp("<(/?)(["+s+"]["+y+"]*)","g");n.registerHelper("fold","xml",function(n,r){for(var u=new i(n,r.line,0),o,h,r,s;;){if(o=l(u),!o||u.line!=r.line||!(h=e(u)))return;if(!o[1]&&h!="selfClose")return r=t(u.line,u.ch),s=f(u,o[2]),s&&{from:r,to:s.from}}}),n.findMatchingTag=function(n,r,u){var s=new i(n,r.line,r.ch,u),y;if(s.text.indexOf(">")!=-1||s.text.indexOf("<")!=-1){var c=e(s),l=c&&t(s.line,s.ch),h=c&&o(s);if(c&&c!="selfClose"&&h&&!(v(s,r)>0))return y={from:t(s.line,s.ch),to:l,tag:h[2]},h[1]?{open:a(s,h[2]),close:y,at:"close"}:(s=new i(n,l.line,l.ch,u),{open:y,close:f(s,h[2]),at:"open"})}},n.findEnclosingTag=function(n,t,r){for(var s=new i(n,t.line,t.ch,r),u,o,e;;){if(u=a(s),!u)break;if(o=new i(n,t.line,t.ch,r),e=f(o,u.tag),e)return{open:u,close:e}}},n.scanForClosingTag=function(n,t,r,u){var e=new i(n,t.line,t.ch,u?{from:0,to:u}:null);return f(e,r)}}),function(){CodeMirror.defineExtension("autoFormatAll",function(n,t){function v(){h+="\n",e=!0,++a}for(var r=this,f=r.getMode(),o=r.getRange(n,t).split("\n"),s=CodeMirror.copyState(f,r.getTokenAt(n).state),y=r.getOption("tabSize"),h="",a=0,e=n.ch==0,i,u=0;u<o.length;++u){for(i=new CodeMirror.StringStream(o[u],y);!i.eol();){var c=CodeMirror.innerMode(f,s),p=f.token(i,s),l=i.current();i.start=i.pos,(!e||/\S/.test(l))&&(h+=l,e=!1),!e&&c.mode.newlineAfterToken&&c.mode.newlineAfterToken(p,l,i.string.slice(i.pos)||o[u+1]||"",c.state)&&v()}!i.pos&&f.blankLine&&f.blankLine(s),!e&&u<o.length-1&&v()}r.operation(function(){r.replaceRange(h,n,t);for(var i=n.line+1,u=n.line+a;i<=u;++i)r.indentLine(i,"smart");r.setCursor({line:0,ch:0})})})}(),function(){function n(n){for(var f=[/for\s*?\((.*?)\)/g,/&#?[a-z0-9]+;[\s\S]/g,/\"(.*?)((\")|$)/g,/\/\*(.*?)(\*\/|$)/g,/^\/\/.*/g],u=[],i,t,r=0;r<f.length;r++)for(i=0;i<n.length;)if(t=n.substr(i).match(f[r]),t!=null)u.push({start:i+t.index,end:i+t.index+t[0].length}),i+=t.index+Math.max(1,t[0].length);else break;return u.sort(function(n,t){return n.start-t.start}),u}CodeMirror.extendMode("css",{commentStart:"/*",commentEnd:"*/",newlineAfterToken:function(n,t){return/^[;{}]$/.test(t)}}),CodeMirror.extendMode("javascript",{commentStart:"/*",commentEnd:"*/",wordWrapChars:[";","\\{","\\}"],autoFormatLineBreaks:function(t){var r=0,e=this.jsonMode?function(n){return n.replace(/([,{])/g,"$1\n").replace(/}/g,"\n}")}:function(n){return n.replace(/(;|\{|\})([^\r\n;])/g,"$1\n$2")},u=n(t),f="",i;if(u!=null){for(i=0;i<u.length;i++)u[i].start>r&&(f+=e(t.substring(r,u[i].start)),r=u[i].start),u[i].start<=r&&u[i].end>=r&&(f+=t.substring(r,u[i].end),r=u[i].end);r<t.length&&(f+=e(t.substr(r)))}else f=e(t);return f.replace(/^\n*|\n*$/,"")}});CodeMirror.extendMode("xml",{commentStart:"<!--",commentEnd:"-->",noBreak:!1,noBreakEmpty:null,tagType:"",tagName:"",isXML:!1,newlineAfterToken:function(n,t,i){var o="a|b|bdi|bdo|big|center|cite|del|em|font|i|img|ins|s|small|span|strike|strong|sub|sup|u",e="label|li|option|textarea|title|"+o,f=!1,r=null,u="",s;if(this.isXML=this.configuration=="xml"?!0:!1,n=="comment"||/<!--/.test(i))return!1;if(n=="tag"){if(t.indexOf("<")==0&&!t.indexOf("<\/")==0&&(this.tagType="open",r=t.match(/^<\s*?([\w]+?)$/i),this.tagName=r!=null?r[1]:"",u=this.tagName.toLowerCase(),("|"+e+"|").indexOf("|"+u+"|")!=-1&&(this.noBreak=!0)),t.indexOf(">")==0&&this.tagType=="open")return(this.tagType="",s=this.isXML?"[^<]*?":"",RegExp("^"+s+"<\/s*?"+this.tagName+"s*?>","i").test(i))?(this.noBreak=!1,this.isXML||(this.tagName=""),!1):(f=this.noBreak,this.noBreak=!1,f?!1:!0);if(t.indexOf("<\/")==0&&(this.tagType="close",r=t.match(/^<\/\s*?([\w]+?)$/i),r!=null&&(u=r[1].toLowerCase()),("|"+o+"|").indexOf("|"+u+"|")!=-1&&(this.noBreak=!0)),t.indexOf(">")==0&&this.tagType=="close")return(this.tagType="",i.indexOf("<")==0&&(r=i.match(/^<\/?\s*?([\w]+?)(\s|>)/i),u=r!=null?r[1].toLowerCase():"",("|"+e+"|").indexOf("|"+u+"|")==-1))?(this.noBreak=!1,!0):(f=this.noBreak,this.noBreak=!1,f?!1:!0)}return i.indexOf("<")==0?(this.noBreak=!1,this.isXML&&this.tagName!="")?(this.tagName="",!1):(r=i.match(/^<\/?\s*?([\w]+?)(\s|>)/i),u=r!=null?r[1].toLowerCase():"",("|"+e+"|").indexOf("|"+u+"|")!=-1?!1:!0):!1}}),CodeMirror.defineExtension("commentRange",function(n,t,i){var r=this,u=CodeMirror.innerMode(r.getMode(),r.getTokenAt(t).state).mode;r.operation(function(){if(n)r.replaceRange(u.commentEnd,i),r.replaceRange(u.commentStart,t),t.line==i.line&&t.ch==i.ch&&r.setCursor(t.line,t.ch+u.commentStart.length);else{var f=r.getRange(t,i),e=f.indexOf(u.commentStart),o=f.lastIndexOf(u.commentEnd);e>-1&&o>-1&&o>e&&(f=f.substr(0,e)+f.substring(e+u.commentStart.length,o)+f.substr(o+u.commentEnd.length)),r.replaceRange(f,t,i)}})}),CodeMirror.defineExtension("autoIndentRange",function(n,t){var i=this;this.operation(function(){for(var r=n.line;r<=t.line;r++)i.indentLine(r,"smart")})}),CodeMirror.defineExtension("autoFormatRange",function(n,t){function v(){h+="\n",e=!0,++a}for(var i=this,f=i.getMode(),o=i.getRange(n,t).split("\n"),s=CodeMirror.copyState(f,i.getTokenAt(n).state),y=i.getOption("tabSize"),h="",a=0,e=n.ch==0,r,u=0;u<o.length;++u){for(r=new CodeMirror.StringStream(o[u],y);!r.eol();){var c=CodeMirror.innerMode(f,s),p=f.token(r,s),l=r.current();r.start=r.pos,(!e||/\S/.test(l))&&(h+=l,e=!1),!e&&c.mode.newlineAfterToken&&c.mode.newlineAfterToken(p,l,r.string.slice(r.pos)||o[u+1]||"",c.state)&&v()}!r.pos&&f.blankLine&&f.blankLine(s),!e&&u<o.length-1&&v()}i.operation(function(){i.replaceRange(h,n,t);for(var r=n.line+1,u=n.line+a;r<=u;++r)i.indentLine(r,"smart");i.setSelection(n,i.getCursor(!1))})})}(),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){"use strict";function o(n){typeof n=="object"&&(this.minChars=n.minChars,this.style=n.style,this.showToken=n.showToken,this.delay=n.delay),this.style==null&&(this.style=f),this.minChars==null&&(this.minChars=u),this.delay==null&&(this.delay=e),this.overlay=this.timeout=null}function t(n){var t=n.state.matchHighlighter;clearTimeout(t.timeout),t.timeout=setTimeout(function(){i(n)},t.delay)}function i(n){n.operation(function(){var t=n.state.matchHighlighter,o,s,h;if(t.overlay&&(n.removeOverlay(t.overlay),t.overlay=null),!n.somethingSelected()&&t.showToken){for(var e=t.showToken===!0?/[\w$]/:t.showToken,c=n.getCursor(),f=n.getLine(c.line),i=c.ch,u=i;i&&e.test(f.charAt(i-1));)--i;while(u<f.length&&e.test(f.charAt(u)))++u;i<u&&n.addOverlay(t.overlay=r(f.slice(i,u),e,t.style));return}(o=n.getCursor("from"),s=n.getCursor("to"),o.line==s.line)&&(h=n.getRange(o,s).replace(/^\s+|\s+$/g,""),h.length>=t.minChars&&n.addOverlay(t.overlay=r(h,!1,t.style)))})}function s(n,t){return(!n.start||!t.test(n.string.charAt(n.start-1)))&&(n.pos==n.string.length||!t.test(n.string.charAt(n.pos)))}function r(n,t,i){return{token:function(r){if(r.match(n)&&(!t||s(r,t)))return i;r.next(),r.skipTo(n.charAt(0))||r.skipToEnd()}}}var u=2,f="matchhighlight",e=100;n.defineOption("highlightSelectionMatches",!1,function(r,u,f){if(f&&f!=n.Init){var e=r.state.matchHighlighter.overlay;e&&r.removeOverlay(e),clearTimeout(r.state.matchHighlighter.timeout),r.state.matchHighlighter=null,r.off("cursorActivity",t)}if(u){r.state.matchHighlighter=new o(u),i(r);r.on("cursorActivity",t)}})})
1
+ (function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)})(function(n){function i(n,i){var r=n.getRange(t(i.line,i.ch-1),t(i.line,i.ch+1));return r.length==2?r:null}function e(t,i,r){var e=t.getLine(i.line),f=t.getTokenAt(i),u,o;if(/\bstring2?\b/.test(f.type))return!1;for(u=new n.StringStream(e.slice(0,i.ch)+r+e.slice(i.ch),4),u.pos=u.start=f.start;;){if(o=t.getMode().token(u,f.state),u.pos>=i.ch+1)return/\bstring2?\b/.test(o);u.start=u.pos}}function o(r){for(var o={name:"autoCloseBrackets",Backspace:function(u){var e,s,f,o;if(u.getOption("disableInput"))return n.Pass;for(e=u.listSelections(),f=0;f<e.length;f++)if(!e[f].empty()||(s=i(u,e[f].head),!s||r.indexOf(s)%2!=0))return n.Pass;for(f=e.length-1;f>=0;f--)o=e[f].head,u.replaceRange("",t(o.line,o.ch-1),t(o.line,o.ch+1))}},s="",u=0;u<r.length;u+=2)(function(i,r){s+=r,o["'"+i+"'"]=function(u){var v,h,l,a;if(u.getOption("disableInput"))return n.Pass;for(v=u.listSelections(),a=0;a<v.length;a++){var y=v[a],o=y.head,c,l=u.getRange(o,t(o.line,o.ch+1));if(y.empty())if(i==r&&l==r)c=u.getRange(o,t(o.line,o.ch+3))==i+i+i?"skipThree":"skip";else if(i==r&&o.ch>1&&u.getRange(t(o.line,o.ch-2),o)==i+i&&(o.ch<=2||u.getRange(t(o.line,o.ch-3),t(o.line,o.ch-2))!=i))c="addFour";else if(i=='"'||i=="'")if(!n.isWordChar(l)&&e(u,o,i))c="both";else return n.Pass;else if(u.getLine(o.line).length==o.ch||s.indexOf(l)>=0||f.test(l))c="both";else return n.Pass;else c="surround";if(h){if(h!=c)return n.Pass}else h=c}u.operation(function(){var t,n;if(h=="skip")u.execCommand("goCharRight");else if(h=="skipThree")for(n=0;n<3;n++)u.execCommand("goCharRight");else if(h=="surround"){for(t=u.getSelections(),n=0;n<t.length;n++)t[n]=i+t[n]+r;u.replaceSelections(t,"around")}else h=="both"?(u.replaceSelection(i+r,null),u.execCommand("goCharLeft")):h=="addFour"&&(u.replaceSelection(i+i+i+i,"before"),u.execCommand("goCharRight"))})},i!=r&&(o["'"+r+"'"]=function(i){for(var e=i.listSelections(),u,f=0;f<e.length;f++)if(u=e[f],!u.empty()||i.getRange(u.head,t(u.head.line,u.head.ch+1))!=r)return n.Pass;i.execCommand("goCharRight")})})(r.charAt(u),r.charAt(u+1));return o}function s(t){return function(r){var u,f,e;if(r.getOption("disableInput"))return n.Pass;for(u=r.listSelections(),f=0;f<u.length;f++)if(!u[f].empty()||(e=i(r,u[f].head),!e||t.indexOf(e)%2!=0))return n.Pass;r.operation(function(){var n,t;for(r.replaceSelection("\n\n",null),r.execCommand("goCharLeft"),u=r.listSelections(),n=0;n<u.length;n++)t=u[n].head.line,r.indentLine(t,null,!0),r.indentLine(t+1,null,!0)})}}var r="()[]{}''\"\"",u="[]{}",f=/\s/,t=n.Pos;n.defineOption("autoCloseBrackets",!1,function(t,i,f){var e,h,c;(f!=n.Init&&f&&t.removeKeyMap("autoCloseBrackets"),i)&&(e=r,h=u,typeof i=="string"?e=i:typeof i=="object"&&(i.pairs!=null&&(e=i.pairs),i.explode!=null&&(h=i.explode)),c=o(e),h&&(c.Enter=s(h)),t.addKeyMap(c))})}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror"),require("../fold/xml-fold")):typeof define=="function"&&define.amd?define(["../../lib/codemirror","../fold/xml-fold"],n):n(CodeMirror)}(function(n){function f(f){var h,p,b,y,e,l,k;if(f.getOption("disableInput"))return n.Pass;for(h=f.listSelections(),p=[],e=0;e<h.length;e++){if(!h[e].empty())return n.Pass;var s=h[e].head,o=f.getTokenAt(s),w=n.innerMode(f.getMode(),o.state),a=w.state;if(w.mode.name!="xml"||!a.tagName)return n.Pass;var v=f.getOption("autoCloseTags"),d=w.mode.configuration=="html",g=typeof v=="object"&&v.dontCloseTags||d&&r,nt=typeof v=="object"&&v.indentTags||d&&u,c=a.tagName;if(o.end>s.ch&&(c=c.slice(0,c.length-o.end+s.ch)),b=c.toLowerCase(),!c||o.type=="string"&&(o.end!=s.ch||!/[\"\']/.test(o.string.charAt(o.string.length-1))||o.string.length==1)||o.type=="tag"&&a.type=="closeTag"||o.string.indexOf("/")==o.string.length-1||g&&t(g,b)>-1||i(f,c,s,a,!0))return n.Pass;y=nt&&t(nt,b)>-1,p[e]={indent:y,text:">"+(y?"\n\n":"")+"<\/"+c+">",newPos:y?n.Pos(s.line+1,0):n.Pos(s.line,s.ch+1)}}for(e=h.length-1;e>=0;e--)l=p[e],f.replaceRange(l.text,h[e].head,h[e].anchor,"+insert"),k=f.listSelections().slice(0),k[e]={head:l.newPos,anchor:l.newPos},f.setSelections(k),l.indent&&(f.indentLine(l.newPos.line,null,!0),f.indentLine(l.newPos.line+1,null,!0))}function e(t){var u,f,r;if(t.getOption("disableInput"))return n.Pass;for(u=t.listSelections(),f=[],r=0;r<u.length;r++){if(!u[r].empty())return n.Pass;var h=u[r].head,o=t.getTokenAt(h),s=n.innerMode(t.getMode(),o.state),e=s.state;if(o.type=="string"||o.string.charAt(0)!="<"||o.start!=h.ch-1)return n.Pass;if(s.mode.name!="xml")if(t.getMode().name=="htmlmixed"&&s.mode.name=="javascript")f[r]="/script>";else if(t.getMode().name=="htmlmixed"&&s.mode.name=="css")f[r]="/style>";else return n.Pass;else{if(!e.context||!e.context.tagName||i(t,e.context.tagName,h,e))return n.Pass;f[r]="/"+e.context.tagName+">"}}for(t.replaceSelections(f),u=t.listSelections(),r=0;r<u.length;r++)(r==u.length-1||u[r].head.line<u[r+1].head.line)&&t.indentLine(u[r].head.line)}function t(n,t){if(n.indexOf)return n.indexOf(t);for(var i=0,r=n.length;i<r;++i)if(n[i]==t)return i;return-1}function i(t,i,r,u,f){var h,o,e,c,l,s;if(!n.scanForClosingTag||(h=Math.min(t.lastLine()+1,r.line+500),o=n.scanForClosingTag(t,r,null,h),!o||o.tag!=i))return!1;for(e=u.context,c=f?1:0;e&&e.tagName==i;e=e.prev)++c;for(r=o.to,l=1;l<c;l++){if(s=n.scanForClosingTag(t,r,null,h),!s||s.tag!=i)return!1;r=s.to}return!0}n.defineOption("autoCloseTags",!1,function(t,i,r){if(r!=n.Init&&r&&t.removeKeyMap("autoCloseTags"),i){var u={name:"autoCloseTags"};(typeof i!="object"||i.whenClosing)&&(u["'/'"]=function(n){return e(n)}),(typeof i!="object"||i.whenOpening)&&(u["'>'"]=function(n){return f(n)}),t.addKeyMap(u)}});var r=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"],u=["applet","blockquote","body","button","div","dl","fieldset","form","frameset","h1","h2","h3","h4","h5","h6","head","html","iframe","layer","legend","object","ol","p","select","table","ul"]}),function(){function i(n){var e=n.getCursor(),t=n.getTokenAt(e),i=CodeMirror.innerMode(n.getMode(),t.state).mode,r,o,u,f,s;if(t.type=="comment"&&i.blockCommentStart&&(o=t.string.indexOf(i.blockCommentEnd),u=n.getRange(CodeMirror.Pos(e.line,0),CodeMirror.Pos(e.line,t.end)),o==-1||o!=t.string.length-i.blockCommentEnd.length))if(t.string.indexOf(i.blockCommentStart)==0){if(r=u.slice(0,t.start),!/^\s*$/.test(r))for(r="",s=0;s<t.start;++s)r+=" "}else(f=u.indexOf(i.blockCommentContinue))!=-1&&f+i.blockCommentContinue.length>t.start&&/^\s*$/.test(u.slice(0,f))&&(r=u.slice(0,f));if(r!=null)n.replaceSelection("\n"+r+i.blockCommentContinue,"end");else return CodeMirror.Pass}for(var t=["clike","css","javascript"],n=0;n<t.length;++n)CodeMirror.extendMode(t[n],{blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * "});CodeMirror.defineOption("continueComments",null,function(n,t,r){r&&r!=CodeMirror.Init&&n.removeKeyMap("continueComment");var u={name:"continueComment"};u[typeof t=="string"?t:"Enter"]=i,n.addKeyMap(u)})}(),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){function u(n,i,u,e){var l=n.getLineHandle(i.line),o=i.ch-1,c=o>=0&&r[l.text.charAt(o)]||r[l.text.charAt(++o)],h,a,s;return c?(h=c.charAt(1)==">"?1:-1,u&&h>0!=(o==i.ch))?null:(a=n.getTokenTypeAt(t(i.line,o+1)),s=f(n,t(i.line,o+(h>0?1:0)),h,a||null,e),s==null)?null:{from:t(i.line,o),to:s&&s.pos,match:s&&s.ch==c.charAt(0),forward:h>0}:null}function f(n,i,u,f,e){for(var p=e&&e.maxScanLineLength||1e4,a=e&&e.maxScanLines||1e3,l=[],w=e&&e.bracketRegex?e.bracketRegex:/[(){}[\]]/,b=u>0?Math.min(i.line+a,n.lastLine()+1):Math.max(n.firstLine()-1,i.line-a),h,s,v,c,y,o=i.line;o!=b;o+=u)if((h=n.getLine(o),h)&&(s=u>0?0:h.length-1,v=u>0?h.length:-1,!(h.length>p)))for(o==i.line&&(s=i.ch-(u<0?1:0));s!=v;s+=u)if(c=h.charAt(s),w.test(c)&&(f===undefined||n.getTokenTypeAt(t(o,s+1))==f))if(y=r[c],y.charAt(1)==">"==u>0)l.push(c);else if(l.length)l.pop();else return{pos:t(o,s),ch:c};return o-u==(u>0?n.lastLine():n.firstLine())?!1:null}function e(n,i,r){for(var a=n.state.matchBrackets.maxHighlightLineLength||1e3,e=[],h=n.listSelections(),f,c,l,o=0;o<h.length;o++)f=h[o].empty()&&u(n,h[o].head,!1,r),f&&n.getLine(f.from.line).length<=a&&(c=f.match?"CodeMirror-matchingbracket":"CodeMirror-nonmatchingbracket",e.push(n.markText(f.from,t(f.from.line,f.from.ch+1),{className:c})),f.to&&n.getLine(f.to.line).length<=a&&e.push(n.markText(f.to,t(f.to.line,f.to.ch+1),{className:c})));if(e.length)if(s&&n.state.focused&&n.display.input.focus(),l=function(){n.operation(function(){for(var n=0;n<e.length;n++)e[n].clear()})},i)setTimeout(l,800);else return l}function o(n){n.operation(function(){i&&(i(),i=null),i=e(n,!1,n.state.matchBrackets)})}var s=/MSIE \d/.test(navigator.userAgent)&&(document.documentMode==null||document.documentMode<8),t=n.Pos,r={"(":")>",")":"(<","[":"]>","]":"[<","{":"}>","}":"{<"},i=null;n.defineOption("matchBrackets",!1,function(t,i,r){if(r&&r!=n.Init&&t.off("cursorActivity",o),i){t.state.matchBrackets=typeof i=="object"?i:{};t.on("cursorActivity",o)}}),n.defineExtension("matchBrackets",function(){e(this,!0)}),n.defineExtension("findMatchingBracket",function(n,t,i){return u(this,n,t,i)}),n.defineExtension("scanForBracket",function(n,t,i,r){return f(this,n,t,i,r)})}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror"),require("../fold/xml-fold")):typeof define=="function"&&define.amd?define(["../../lib/codemirror","../fold/xml-fold"],n):n(CodeMirror)}(function(n){"use strict";function i(n){n.state.tagHit&&n.state.tagHit.clear(),n.state.tagOther&&n.state.tagOther.clear(),n.state.tagHit=n.state.tagOther=null}function t(t){t.state.failedTagMatch=!1,t.operation(function(){var f,u,r,e,o;(i(t),t.somethingSelected())||(f=t.getCursor(),u=t.getViewport(),u.from=Math.min(u.from,f.line),u.to=Math.max(f.line+1,u.to),r=n.findMatchingTag(t,f,u),r)&&(t.state.matchBothTags&&(e=r.at=="open"?r.open:r.close,e&&(t.state.tagHit=t.markText(e.from,e.to,{className:"CodeMirror-matchingtag"}))),o=r.at=="close"?r.open:r.close,o?t.state.tagOther=t.markText(o.from,o.to,{className:"CodeMirror-matchingtag"}):t.state.failedTagMatch=!0)})}function r(n){n.state.failedTagMatch&&t(n)}n.defineOption("matchTags",!1,function(u,f,e){if(e&&e!=n.Init&&(u.off("cursorActivity",t),u.off("viewportChange",r),i(u)),f){u.state.matchBothTags=typeof f=="object"&&f.bothTags;u.on("cursorActivity",t);u.on("viewportChange",r);t(u)}}),n.commands.toMatchingTag=function(t){var i=n.findMatchingTag(t,t.getCursor()),r;i&&(r=i.at=="close"?i.open:i.close,r&&t.extendSelection(r.to,r.from))}}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){n.defineOption("showTrailingSpace",!1,function(t,i,r){r==n.Init&&(r=!1),r&&!i?t.removeOverlay("trailingspace"):!r&&i&&t.addOverlay({token:function(n){for(var i=n.string.length,t=i;t&&/\s/.test(n.string.charAt(t-1));--t);return t>n.pos?(n.pos=t,null):(n.pos=i,"trailingspace")},name:"trailingspace"})})}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){"use strict";function i(i,u,f,e){function a(n){var t=s(i,u),f,r;if(!t||t.to.line-t.from.line<l)return null;for(f=i.findMarksAt(t.from),r=0;r<f.length;++r)if(f[r].__isFold&&e!=="fold"){if(!n)return null;t.cleared=!0,f[r].clear()}return t}var s,l,o,h,c;if(f&&f.call?(s=f,f=null):s=t(i,f,"rangeFinder"),typeof u=="number"&&(u=n.Pos(u,0)),l=t(i,f,"minFoldSize"),o=a(!0),t(i,f,"scanUp"))while(!o&&u.line>i.firstLine())u=n.Pos(u.line-1,0),o=a(!1);if(o&&!o.cleared&&e!=="unfold"){h=r(i,f);n.on(h,"mousedown",function(t){c.clear(),n.e_preventDefault(t)});c=i.markText(o.from,o.to,{replacedWith:h,clearOnEnter:!0,__isFold:!0});c.on("clear",function(t,r){n.signal(i,"unfold",i,t,r)});n.signal(i,"fold",i,o.from,o.to)}}function r(n,i){var r=t(n,i,"widget"),u;return typeof r=="string"&&(u=document.createTextNode(r),r=document.createElement("span"),r.appendChild(u),r.className="CodeMirror-foldmarker"),r}function t(n,t,i){if(t&&t[i]!==undefined)return t[i];var r=n.options.foldOptions;return r&&r[i]!==undefined?r[i]:u[i]}n.newFoldFunction=function(n,t){return function(r,u){i(r,u,{rangeFinder:n,widget:t})}},n.defineExtension("foldCode",function(n,t,r){i(this,n,t,r)}),n.defineExtension("isFolded",function(n){for(var i=this.findMarksAt(n),t=0;t<i.length;++t)if(i[t].__isFold)return!0}),n.commands.toggleFold=function(n){n.foldCode(n.getCursor())},n.commands.fold=function(n){n.foldCode(n.getCursor(),null,"fold")},n.commands.unfold=function(n){n.foldCode(n.getCursor(),null,"unfold")},n.commands.foldAll=function(t){t.operation(function(){for(var i=t.firstLine(),r=t.lastLine();i<=r;i++)t.foldCode(n.Pos(i,0),null,"fold")})},n.commands.unfoldAll=function(t){t.operation(function(){for(var i=t.firstLine(),r=t.lastLine();i<=r;i++)t.foldCode(n.Pos(i,0),null,"unfold")})},n.registerHelper("fold","combine",function(){var n=Array.prototype.slice.call(arguments,0);return function(t,i){for(var u,r=0;r<n.length;++r)if(u=n[r](t,i),u)return u}}),n.registerHelper("fold","auto",function(n,t){for(var u=n.getHelpers(t,"fold"),r,i=0;i<u.length;i++)if(r=u[i](n,t),r)return r});var u={rangeFinder:n.fold.auto,widget:"↔",minFoldSize:0,scanUp:!1};n.defineOption("foldOptions",null)}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){"use strict";n.registerHelper("fold","brace",function(t,i){function p(r){for(var u,f=i.ch,o=0;;){if(u=f<=0?-1:y.lastIndexOf(r,f-1),u==-1){if(o==1)break;o=1,f=y.length;continue}if(o==1&&u<i.ch)break;if(l=t.getTokenTypeAt(n.Pos(e,u+1)),!/^(comment|string)/.test(l))return u+1;f=u-1}}var e=i.line,y=t.getLine(e),l,w="{",b="}",u=p("{"),a,k,h,v,f,o,r,s,c;if(u==null&&(w="[",b="]",u=p("[")),u!=null){a=1,k=t.lastLine();n:for(f=e;f<=k;++f)for(o=t.getLine(f),r=f==e?u:0;;){if(s=o.indexOf(w,r),c=o.indexOf(b,r),s<0&&(s=o.length),c<0&&(c=o.length),r=Math.min(s,c),r==o.length)break;if(t.getTokenTypeAt(n.Pos(f,r+1))==l)if(r==s)++a;else if(!--a){h=f,v=r;break n}++r}if(h!=null&&(e!=h||v!=u))return{from:n.Pos(e,u),to:n.Pos(h,v)}}}),n.registerHelper("fold","import",function(t,i){function r(i){var r,u,e,o,f;if(i<t.firstLine()||i>t.lastLine()||(r=t.getTokenAt(n.Pos(i,1)),/\S/.test(r.string)||(r=t.getTokenAt(n.Pos(i,r.end+1))),r.type!="keyword"||r.string!="import"))return null;for(u=i,e=Math.min(t.lastLine(),i+10);u<=e;++u)if(o=t.getLine(u),f=o.indexOf(";"),f!=-1)return{startCh:r.end,end:n.Pos(u,f)}}var i=i.line,f=r(i),o,u,e;if(!f||r(i-1)||(o=r(i-2))&&o.end.line==i-1)return null;for(u=f.end;;){if(e=r(u.line+1),e==null)break;u=e.end}return{from:t.clipPos(n.Pos(i,f.startCh+1)),to:u}}),n.registerHelper("fold","include",function(t,i){function u(i){if(i<t.firstLine()||i>t.lastLine())return null;var r=t.getTokenAt(n.Pos(i,1));return/\S/.test(r.string)||(r=t.getTokenAt(n.Pos(i,r.end+1))),r.type=="meta"&&r.string.slice(0,8)=="#include"?r.start+8:void 0}var i=i.line,f=u(i),r,e;if(f==null||u(i-1)!=null)return null;for(r=i;;){if(e=u(r+1),e==null)break;++r}return{from:n.Pos(i,f+1),to:t.clipPos(n.Pos(r))}})}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){"use strict";function v(n,t){return n.line-t.line||n.ch-t.ch}function i(n,t,i,r){this.line=t,this.ch=i,this.cm=n,this.text=n.getLine(t),this.min=r?r.from:n.firstLine(),this.max=r?r.to-1:n.lastLine()}function u(n,i){var r=n.cm.getTokenTypeAt(t(n.line,i));return r&&/\btag\b/.test(r)}function h(n){if(!(n.line>=n.max))return n.ch=0,n.text=n.cm.getLine(++n.line),!0}function c(n){if(!(n.line<=n.min))return n.text=n.cm.getLine(--n.line),n.ch=n.text.length,!0}function e(n){for(var t,i,r;;){if(t=n.text.indexOf(">",n.ch),t==-1)if(h(n))continue;else return;if(!u(n,t+1)){n.ch=t+1;continue}return i=n.text.lastIndexOf("/",t),r=i>-1&&!/\S/.test(n.text.slice(i+1,t)),n.ch=t+1,r?"selfClose":"regular"}}function o(n){for(var t,i;;){if(t=n.ch?n.text.lastIndexOf("<",n.ch-1):-1,t==-1)if(c(n))continue;else return;if(!u(n,t+1)){n.ch=t;continue}if(r.lastIndex=t,n.ch=t,i=r.exec(n.text),i&&i.index==t)return i}}function l(n){for(;;){r.lastIndex=n.ch;var t=r.exec(n.text);if(!t)if(h(n))continue;else return;if(!u(n,t.index+1)){n.ch=t.index+1;continue}return n.ch=t.index+t[0].length,t}}function p(n){for(var t,i,r;;){if(t=n.ch?n.text.lastIndexOf(">",n.ch-1):-1,t==-1)if(c(n))continue;else return;if(!u(n,t+1)){n.ch=t;continue}return i=n.text.lastIndexOf("/",t),r=i>-1&&!/\S/.test(n.text.slice(i+1,t)),n.ch=t+1,r?"selfClose":"regular"}}function f(n,i){for(var f=[],u;;){var r=l(n),o,s=n.line,h=n.ch-(r?r[0].length:0);if(!r||!(o=e(n)))return;if(o!="selfClose")if(r[1]){for(u=f.length-1;u>=0;--u)if(f[u]==r[2]){f.length=u;break}if(u<0&&(!i||i==r[2]))return{tag:r[2],from:t(s,h),to:t(n.line,n.ch)}}else f.push(r[2])}}function a(n,i){for(var f=[],e,u;;){if(e=p(n),!e)return;if(e=="selfClose"){o(n);continue}var s=n.line,h=n.ch,r=o(n);if(!r)return;if(r[1])f.push(r[2]);else{for(u=f.length-1;u>=0;--u)if(f[u]==r[2]){f.length=u;break}if(u<0&&(!i||i==r[2]))return{tag:r[2],from:t(n.line,n.ch),to:t(s,h)}}}}var t=n.Pos,s="A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",y=s+"-:.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040",r=new RegExp("<(/?)(["+s+"]["+y+"]*)","g");n.registerHelper("fold","xml",function(n,r){for(var u=new i(n,r.line,0),o,h,r,s;;){if(o=l(u),!o||u.line!=r.line||!(h=e(u)))return;if(!o[1]&&h!="selfClose")return r=t(u.line,u.ch),s=f(u,o[2]),s&&{from:r,to:s.from}}}),n.findMatchingTag=function(n,r,u){var s=new i(n,r.line,r.ch,u),l;if(s.text.indexOf(">")!=-1||s.text.indexOf("<")!=-1){var c=e(s),y=c&&t(s.line,s.ch),h=c&&o(s);if(c&&h&&!(v(s,r)>0))return(l={from:t(s.line,s.ch),to:y,tag:h[2]},c=="selfClose")?{open:l,close:null,at:"open"}:h[1]?{open:a(s,h[2]),close:l,at:"close"}:(s=new i(n,y.line,y.ch,u),{open:l,close:f(s,h[2]),at:"open"})}},n.findEnclosingTag=function(n,t,r){for(var s=new i(n,t.line,t.ch,r),u,o,e;;){if(u=a(s),!u)break;if(o=new i(n,t.line,t.ch,r),e=f(o,u.tag),e)return{open:u,close:e}}},n.scanForClosingTag=function(n,t,r,u){var e=new i(n,t.line,t.ch,u?{from:0,to:u}:null);return f(e,r)}}),function(){CodeMirror.defineExtension("autoFormatAll",function(n,t){function v(){h+="\n",e=!0,++a}for(var r=this,f=r.getMode(),o=r.getRange(n,t).split("\n"),s=CodeMirror.copyState(f,r.getTokenAt(n).state),y=r.getOption("tabSize"),h="",a=0,e=n.ch==0,i,u=0;u<o.length;++u){for(i=new CodeMirror.StringStream(o[u],y);!i.eol();){var c=CodeMirror.innerMode(f,s),p=f.token(i,s),l=i.current();i.start=i.pos,(!e||/\S/.test(l))&&(h+=l,e=!1),!e&&c.mode.newlineAfterToken&&c.mode.newlineAfterToken(p,l,i.string.slice(i.pos)||o[u+1]||"",c.state)&&v()}!i.pos&&f.blankLine&&f.blankLine(s),!e&&u<o.length-1&&v()}r.operation(function(){r.replaceRange(h,n,t);for(var i=n.line+1,u=n.line+a;i<=u;++i)r.indentLine(i,"smart");r.setCursor({line:0,ch:0})})})}(),function(){function n(n){for(var f=[/for\s*?\((.*?)\)/g,/&#?[a-z0-9]+;[\s\S]/g,/\"(.*?)((\")|$)/g,/\/\*(.*?)(\*\/|$)/g,/^\/\/.*/g],u=[],i,t,r=0;r<f.length;r++)for(i=0;i<n.length;)if(t=n.substr(i).match(f[r]),t!=null)u.push({start:i+t.index,end:i+t.index+t[0].length}),i+=t.index+Math.max(1,t[0].length);else break;return u.sort(function(n,t){return n.start-t.start}),u}CodeMirror.extendMode("css",{commentStart:"/*",commentEnd:"*/",newlineAfterToken:function(n,t){return/^[;{}]$/.test(t)}}),CodeMirror.extendMode("javascript",{commentStart:"/*",commentEnd:"*/",wordWrapChars:[";","\\{","\\}"],autoFormatLineBreaks:function(t){var r=0,e=this.jsonMode?function(n){return n.replace(/([,{])/g,"$1\n").replace(/}/g,"\n}")}:function(n){return n.replace(/(;|\{|\})([^\r\n;])/g,"$1\n$2")},u=n(t),f="",i;if(u!=null){for(i=0;i<u.length;i++)u[i].start>r&&(f+=e(t.substring(r,u[i].start)),r=u[i].start),u[i].start<=r&&u[i].end>=r&&(f+=t.substring(r,u[i].end),r=u[i].end);r<t.length&&(f+=e(t.substr(r)))}else f=e(t);return f.replace(/^\n*|\n*$/,"")}});CodeMirror.extendMode("xml",{commentStart:"<!--",commentEnd:"-->",noBreak:!1,noBreakEmpty:null,tagType:"",tagName:"",isXML:!1,newlineAfterToken:function(n,t,i){var o="a|b|bdi|bdo|big|center|cite|del|em|font|i|img|ins|s|small|span|strike|strong|sub|sup|u",e="label|li|option|textarea|title|"+o,f=!1,r=null,u="",s;if(this.isXML=this.configuration=="xml"?!0:!1,n=="comment"||/<!--/.test(i))return!1;if(n=="tag"){if(t.indexOf("<")==0&&!t.indexOf("<\/")==0&&(this.tagType="open",r=t.match(/^<\s*?([\w]+?)$/i),this.tagName=r!=null?r[1]:"",u=this.tagName.toLowerCase(),("|"+e+"|").indexOf("|"+u+"|")!=-1&&(this.noBreak=!0)),t.indexOf(">")==0&&this.tagType=="open")return(this.tagType="",s=this.isXML?"[^<]*?":"",RegExp("^"+s+"<\/s*?"+this.tagName+"s*?>","i").test(i))?(this.noBreak=!1,this.isXML||(this.tagName=""),!1):(f=this.noBreak,this.noBreak=!1,f?!1:!0);if(t.indexOf("<\/")==0&&(this.tagType="close",r=t.match(/^<\/\s*?([\w]+?)$/i),r!=null&&(u=r[1].toLowerCase()),("|"+o+"|").indexOf("|"+u+"|")!=-1&&(this.noBreak=!0)),t.indexOf(">")==0&&this.tagType=="close")return(this.tagType="",i.indexOf("<")==0&&(r=i.match(/^<\/?\s*?([\w]+?)(\s|>)/i),u=r!=null?r[1].toLowerCase():"",("|"+e+"|").indexOf("|"+u+"|")==-1))?(this.noBreak=!1,!0):(f=this.noBreak,this.noBreak=!1,f?!1:!0)}return i.indexOf("<")==0?(this.noBreak=!1,this.isXML&&this.tagName!="")?(this.tagName="",!1):(r=i.match(/^<\/?\s*?([\w]+?)(\s|>)/i),u=r!=null?r[1].toLowerCase():"",("|"+e+"|").indexOf("|"+u+"|")!=-1?!1:!0):!1}}),CodeMirror.defineExtension("commentRange",function(n,t,i){var r=this,u=CodeMirror.innerMode(r.getMode(),r.getTokenAt(t).state).mode;r.operation(function(){if(n)r.replaceRange(u.commentEnd,i),r.replaceRange(u.commentStart,t),t.line==i.line&&t.ch==i.ch&&r.setCursor(t.line,t.ch+u.commentStart.length);else{var f=r.getRange(t,i),e=f.indexOf(u.commentStart),o=f.lastIndexOf(u.commentEnd);e>-1&&o>-1&&o>e&&(f=f.substr(0,e)+f.substring(e+u.commentStart.length,o)+f.substr(o+u.commentEnd.length)),r.replaceRange(f,t,i)}})}),CodeMirror.defineExtension("autoIndentRange",function(n,t){var i=this;this.operation(function(){for(var r=n.line;r<=t.line;r++)i.indentLine(r,"smart")})}),CodeMirror.defineExtension("autoFormatRange",function(n,t){function v(){h+="\n",e=!0,++a}for(var i=this,f=i.getMode(),o=i.getRange(n,t).split("\n"),s=CodeMirror.copyState(f,i.getTokenAt(n).state),y=i.getOption("tabSize"),h="",a=0,e=n.ch==0,r,u=0;u<o.length;++u){for(r=new CodeMirror.StringStream(o[u],y);!r.eol();){var c=CodeMirror.innerMode(f,s),p=f.token(r,s),l=r.current();r.start=r.pos,(!e||/\S/.test(l))&&(h+=l,e=!1),!e&&c.mode.newlineAfterToken&&c.mode.newlineAfterToken(p,l,r.string.slice(r.pos)||o[u+1]||"",c.state)&&v()}!r.pos&&f.blankLine&&f.blankLine(s),!e&&u<o.length-1&&v()}i.operation(function(){i.replaceRange(h,n,t);for(var r=n.line+1,u=n.line+a;r<=u;++r)i.indentLine(r,"smart");i.setSelection(n,i.getCursor(!1))})})}(),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){"use strict";function r(n){for(var r=0;r<n.state.activeLines.length;r++)n.removeLineClass(n.state.activeLines[r],"wrap",t),n.removeLineClass(n.state.activeLines[r],"background",i)}function e(n,t){if(n.length!=t.length)return!1;for(var i=0;i<n.length;i++)if(n[i]!=t[i])return!1;return!0}function u(n,u){for(var f=[],s,h,o=0;o<u.length;o++)(s=u[o],s.empty())&&(h=n.getLineHandleVisualStart(s.head.line),f[f.length-1]!=h&&f.push(h));e(n.state.activeLines,f)||n.operation(function(){r(n);for(var u=0;u<f.length;u++)n.addLineClass(f[u],"wrap",t),n.addLineClass(f[u],"background",i);n.state.activeLines=f})}function f(n,t){u(n,t.ranges)}var t="CodeMirror-activeline",i="CodeMirror-activeline-background";n.defineOption("styleActiveLine",!1,function(t,i,e){var o=e&&e!=n.Init;if(i&&!o){t.state.activeLines=[],u(t,t.listSelections());t.on("beforeSelectionChange",f)}else!i&&o&&(t.off("beforeSelectionChange",f),r(t),delete t.state.activeLines)})}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){"use strict";function s(n){typeof n=="object"&&(this.minChars=n.minChars,this.style=n.style,this.showToken=n.showToken,this.delay=n.delay,this.wordsOnly=n.wordsOnly),this.style==null&&(this.style=f),this.minChars==null&&(this.minChars=u),this.delay==null&&(this.delay=e),this.wordsOnly==null&&(this.wordsOnly=o),this.overlay=this.timeout=null}function t(n){var t=n.state.matchHighlighter;clearTimeout(t.timeout),t.timeout=setTimeout(function(){i(n)},t.delay)}function i(n){n.operation(function(){var t=n.state.matchHighlighter,e,o,c;if(t.overlay&&(n.removeOverlay(t.overlay),t.overlay=null),!n.somethingSelected()&&t.showToken){for(var s=t.showToken===!0?/[\w$]/:t.showToken,l=n.getCursor(),f=n.getLine(l.line),i=l.ch,u=i;i&&s.test(f.charAt(i-1));)--i;while(u<f.length&&s.test(f.charAt(u)))++u;i<u&&n.addOverlay(t.overlay=r(f.slice(i,u),s,t.style));return}(e=n.getCursor("from"),o=n.getCursor("to"),e.line==o.line)&&(!t.wordsOnly||h(n,e,o))&&(c=n.getRange(e,o).replace(/^\s+|\s+$/g,""),c.length>=t.minChars&&n.addOverlay(t.overlay=r(c,!1,t.style)))})}function h(n,t,i){var f=n.getRange(t,i),r,u;return f.match(/^\w+$/)!==null?t.ch>0&&(r={line:t.line,ch:t.ch-1},u=n.getRange(r,t),u.match(/\W/)===null)?!1:i.ch<n.getLine(t.line).length&&(r={line:i.line,ch:i.ch+1},u=n.getRange(i,r),u.match(/\W/)===null)?!1:!0:!1}function c(n,t){return(!n.start||!t.test(n.string.charAt(n.start-1)))&&(n.pos==n.string.length||!t.test(n.string.charAt(n.pos)))}function r(n,t,i){return{token:function(r){if(r.match(n)&&(!t||c(r,t)))return i;r.next(),r.skipTo(n.charAt(0))||r.skipToEnd()}}}var u=2,f="matchhighlight",e=100,o=!1;n.defineOption("highlightSelectionMatches",!1,function(r,u,f){if(f&&f!=n.Init){var e=r.state.matchHighlighter.overlay;e&&r.removeOverlay(e),clearTimeout(r.state.matchHighlighter.timeout),r.state.matchHighlighter=null,r.off("cursorActivity",t)}if(u){r.state.matchHighlighter=new s(u),i(r);r.on("cursorActivity",t)}})})
@@ -1 +1 @@
1
- (function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)})(function(n){function t(n,t,i){var u=n.getWrapperElement(),r;return r=u.appendChild(document.createElement("div")),r.className=i?"CodeMirror-dialog CodeMirror-dialog-bottom":"CodeMirror-dialog CodeMirror-dialog-top",typeof t=="string"?r.innerHTML=t:r.appendChild(t),r}function i(n,t){n.state.currentNotificationClose&&n.state.currentNotificationClose(),n.state.currentNotificationClose=t}n.defineExtension("openDialog",function(r,u,f){function o(){c||(c=!0,s.parentNode.removeChild(s))}var e,h;i(this,null);var s=t(this,r,f&&f.bottom),c=!1,l=this;if(e=s.getElementsByTagName("input")[0],e){f&&f.value&&(e.value=f.value);n.on(e,"keydown",function(t){f&&f.onKeyDown&&f.onKeyDown(t,e.value,o)||(t.keyCode==13||t.keyCode==27)&&(e.blur(),n.e_stop(t),o(),l.focus(),t.keyCode==13&&u(e.value))});if(f&&f.onKeyUp)n.on(e,"keyup",function(n){f.onKeyUp(n,e.value,o)});f&&f.value&&(e.value=f.value),e.focus();n.on(e,"blur",o)}else if(h=s.getElementsByTagName("button")[0]){n.on(h,"click",function(){o(),l.focus()});h.focus();n.on(h,"blur",o)}return o}),n.defineExtension("openConfirm",function(r,u,f){function v(){l||(l=!0,s.parentNode.removeChild(s),a.focus())}var e,o;i(this,null);var s=t(this,r,f&&f.bottom),h=s.getElementsByTagName("button"),l=!1,a=this,c=1;for(h[0].focus(),e=0;e<h.length;++e){o=h[e],function(t){n.on(o,"click",function(i){n.e_preventDefault(i),v(),t&&t(a)})}(u[e]);n.on(o,"blur",function(){--c,setTimeout(function(){c<=0&&v()},200)});n.on(o,"focus",function(){++c})}}),n.defineExtension("openNotification",function(r,u){function e(){o||(o=!0,clearTimeout(s),f.parentNode.removeChild(f))}i(this,e);var f=t(this,r,u&&u.bottom),h=u&&(u.duration===undefined?5e3:u.duration),o=!1,s;n.on(f,"click",function(t){n.e_preventDefault(t),e()});h&&(s=setTimeout(e,u.duration))})}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror"),require("./searchcursor"),require("../dialog/dialog")):typeof define=="function"&&define.amd?define(["../../lib/codemirror","./searchcursor","../dialog/dialog"],n):n(CodeMirror)}(function(n){"use strict";function c(n,t){return typeof n=="string"?n=new RegExp(n.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),t?"gi":"g"):n.global||(n=new RegExp(n.source,n.ignoreCase?"gi":"g")),{token:function(t){n.lastIndex=t.pos;var i=n.exec(t.string);if(i&&i.index==t.pos)return t.pos+=i[0].length,"searching";i?t.pos=i.index:t.skipToEnd()}}}function l(){this.posFrom=this.posTo=this.query=null,this.overlay=null}function i(n){return n.state.search||(n.state.search=new l)}function r(n){return typeof n=="string"&&n==n.toLowerCase()}function t(n,t,i){return n.getSearchCursor(t,i,r(t))}function u(n,t,i,r,u){n.openDialog?n.openDialog(t,u,{value:r}):u(prompt(i,r))}function a(n,t,i,r){n.openConfirm?n.openConfirm(t,r):confirm(i)&&r[0]()}function o(n){var t=n.match(/^\/(.*)\/([a-z]*)$/);return t?(n=new RegExp(t[1],t[2].indexOf("i")==-1?"":"i"),n.test("")&&(n=/x^/)):n==""&&(n=/x^/),n}function f(n,t){var f=i(n);if(f.query)return s(n,t);u(n,v,"Search for:",n.getSelection(),function(i){n.operation(function(){i&&!f.query&&(f.query=o(i),n.removeOverlay(f.overlay,r(f.query)),f.overlay=c(f.query,r(f.query)),n.addOverlay(f.overlay),f.posFrom=f.posTo=n.getCursor(),s(n,t))})})}function s(r,u){r.operation(function(){var e=i(r),f=t(r,e.query,u?e.posFrom:e.posTo);(f.find(u)||(f=t(r,e.query,u?n.Pos(r.lastLine()):n.Pos(r.firstLine(),0)),f.find(u)))&&(r.setSelection(f.from(),f.to()),r.scrollIntoView({from:f.from(),to:f.to()}),e.posFrom=f.from(),e.posTo=f.to())})}function e(n){n.operation(function(){var t=i(n);t.query&&(t.query=null,n.removeOverlay(t.overlay))})}function h(n,i){u(n,y,"Replace:",n.getSelection(),function(r){r&&(r=o(r),u(n,p,"Replace with:","",function(u){if(i)n.operation(function(){for(var f,i=t(n,r);i.findNext();)typeof r!="string"?(f=n.getRange(i.from(),i.to()).match(r),i.replace(u.replace(/\$(\d)/g,function(n,t){return f[t]}))):i.replace(u)});else{e(n);var f=t(n,r,n.getCursor()),o=function(){var i=f.from(),u;((u=f.findNext())||(f=t(n,r),(u=f.findNext())&&(!i||f.from().line!=i.line||f.from().ch!=i.ch)))&&(n.setSelection(f.from(),f.to()),n.scrollIntoView({from:f.from(),to:f.to()}),a(n,w,"Replace?",[function(){s(u)},o]))},s=function(n){f.replace(typeof r=="string"?u:u.replace(/\$(\d)/g,function(t,i){return n[i]})),o()};o()}}))})}var v='Search: <input type="text" style="width: 10em"/> <span style="color: #888">(Use /re/ syntax for regexp search)<\/span>',y='Replace: <input type="text" style="width: 10em"/> <span style="color: #888">(Use /re/ syntax for regexp search)<\/span>',p='With: <input type="text" style="width: 10em"/>',w="Replace? <button>Yes<\/button> <button>No<\/button> <button>Stop<\/button>";n.commands.find=function(n){e(n),f(n)},n.commands.findNext=f,n.commands.findPrev=function(n){f(n,!0)},n.commands.clearSearch=e,n.commands.replace=h,n.commands.replaceAll=function(n){h(n,!0)}}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){"use strict";function i(n,i,u,f){var h,o,e,s;this.atOccurrence=!1,this.doc=n,f==null&&typeof i=="string"&&(f=!1),u=u?n.clipPos(u):t(0,0),this.pos={from:u,to:u},typeof i!="string"?(i.global||(i=new RegExp(i.source,i.ignoreCase?"ig":"g")),this.matches=function(r,u){var o,h,f,s,c,e;if(r){for(i.lastIndex=0,o=n.getLine(u.line).slice(0,u.ch),h=0;;){if(i.lastIndex=h,c=i.exec(o),!c)break;if(f=c,s=f.index,h=f.index+(f[0].length||1),h==o.length)break}e=f&&f[0].length||0,e||(s==0&&o.length==0?f=undefined:s!=n.getLine(u.line).length&&e++)}else{i.lastIndex=u.ch;var o=n.getLine(u.line),f=i.exec(o),e=f&&f[0].length||0,s=f&&f.index;s+e==o.length||e||(e=1)}if(f&&e)return{from:t(u.line,s),to:t(u.line,s+e),match:f}}):(h=i,f&&(i=i.toLowerCase()),o=f?function(n){return n.toLowerCase()}:function(n){return n},e=i.split("\n"),e.length==1?this.matches=i.length?function(u,f){if(u){var s=n.getLine(f.line).slice(0,f.ch),c=o(s),e=c.lastIndexOf(i);if(e>-1)return e=r(s,c,e),{from:t(f.line,e),to:t(f.line,e+h.length)}}else{var s=n.getLine(f.line).slice(f.ch),c=o(s),e=c.indexOf(i);if(e>-1)return e=r(s,c,e)+f.ch,{from:t(f.line,e),to:t(f.line,e+h.length)}}}:function(){}:(s=h.split("\n"),this.matches=function(i,r){var h=e.length-1,a,c,l,v,u,f;if(i){if(r.line-(e.length-1)<n.firstLine())return;if(o(n.getLine(r.line).slice(0,s[h].length))!=e[e.length-1])return;for(a=t(r.line,s[h].length),u=r.line-1,f=h-1;f>=1;--f,--u)if(e[f]!=o(n.getLine(u)))return;return(c=n.getLine(u),l=c.length-s[0].length,o(c.slice(l))!=e[0])?void 0:{from:t(u,l),to:a}}if(!(r.line+(e.length-1)>n.lastLine())&&(c=n.getLine(r.line),l=c.length-s[0].length,o(c.slice(l))==e[0])){for(v=t(r.line,l),u=r.line+1,f=1;f<h;++f,++u)if(e[f]!=o(n.getLine(u)))return;if(n.getLine(u).slice(0,s[h].length)==e[h])return{from:v,to:t(u,s[h].length)}}}))}function r(n,t,i){var r,u;if(n.length==t.length)return i;for(r=Math.min(i,n.length);;)if(u=n.slice(0,r).toLowerCase().length,u<i)++r;else if(u>i)--r;else return r}var t=n.Pos;i.prototype={findNext:function(){return this.find(!1)},findPrevious:function(){return this.find(!0)},find:function(n){function f(n){var i=t(n,0);return u.pos={from:i,to:i},u.atOccurrence=!1,!1}for(var u=this,i=this.doc.clipPos(n?this.pos.from:this.pos.to),r;;){if(this.pos=this.matches(n,i))return this.atOccurrence=!0,this.pos.match||!0;if(n){if(!i.line)return f(0);i=t(i.line-1,this.doc.getLine(i.line-1).length)}else{if(r=this.doc.lineCount(),i.line==r-1)return f(r);i=t(i.line+1,0)}}},from:function(){if(this.atOccurrence)return this.pos.from},to:function(){if(this.atOccurrence)return this.pos.to},replace:function(i){if(this.atOccurrence){var r=n.splitLines(i);this.doc.replaceRange(r,this.pos.from,this.pos.to),this.pos.to=t(this.pos.from.line+r.length-1,r[r.length-1].length+(r.length==1?this.pos.from.ch:0))}}},n.defineExtension("getSearchCursor",function(n,t,r){return new i(this.doc,n,t,r)}),n.defineDocExtension("getSearchCursor",function(n,t,r){return new i(this,n,t,r)}),n.defineExtension("selectMatches",function(t,i){for(var u=[],f,r=this.getSearchCursor(t,this.getCursor("from"),i);f=r.findNext();){if(n.cmpPos(r.to(),this.getCursor("to"))>0)break;u.push({anchor:r.from(),head:r.to()})}u.length&&this.setSelections(u,0)})})
1
+ (function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)})(function(n){function t(n,t,i){var u=n.getWrapperElement(),r;return r=u.appendChild(document.createElement("div")),r.className=i?"CodeMirror-dialog CodeMirror-dialog-bottom":"CodeMirror-dialog CodeMirror-dialog-top",typeof t=="string"?r.innerHTML=t:r.appendChild(t),r}function i(n,t){n.state.currentNotificationClose&&n.state.currentNotificationClose(),n.state.currentNotificationClose=t}n.defineExtension("openDialog",function(r,u,f){function o(n){if(typeof n=="string")e.value=n;else{if(c)return;if(c=!0,s.parentNode.removeChild(s),l.focus(),f.onClose)f.onClose(s)}}var e,h;f||(f={}),i(this,null);var s=t(this,r,f.bottom),c=!1,l=this;if(e=s.getElementsByTagName("input")[0],e){if(f.value&&(e.value=f.value,e.select()),f.onInput)n.on(e,"input",function(n){f.onInput(n,e.value,o)});if(f.onKeyUp)n.on(e,"keyup",function(n){f.onKeyUp(n,e.value,o)});n.on(e,"keydown",function(t){f&&f.onKeyDown&&f.onKeyDown(t,e.value,o)||((t.keyCode==27||f.closeOnEnter!==!1&&t.keyCode==13)&&(e.blur(),n.e_stop(t),o()),t.keyCode==13&&u(e.value))});if(f.closeOnBlur!==!1)n.on(e,"blur",o);e.focus()}else if(h=s.getElementsByTagName("button")[0]){n.on(h,"click",function(){o(),l.focus()});if(f.closeOnBlur!==!1)n.on(h,"blur",o);h.focus()}return o}),n.defineExtension("openConfirm",function(r,u,f){function v(){l||(l=!0,s.parentNode.removeChild(s),a.focus())}var e,o;i(this,null);var s=t(this,r,f&&f.bottom),h=s.getElementsByTagName("button"),l=!1,a=this,c=1;for(h[0].focus(),e=0;e<h.length;++e){o=h[e],function(t){n.on(o,"click",function(i){n.e_preventDefault(i),v(),t&&t(a)})}(u[e]);n.on(o,"blur",function(){--c,setTimeout(function(){c<=0&&v()},200)});n.on(o,"focus",function(){++c})}}),n.defineExtension("openNotification",function(r,u){function f(){o||(o=!0,clearTimeout(s),e.parentNode.removeChild(e))}i(this,f);var e=t(this,r,u&&u.bottom),o=!1,s,h=u&&typeof u.duration!="undefined"?u.duration:5e3;n.on(e,"click",function(t){n.e_preventDefault(t),f()});return h&&(s=setTimeout(f,h)),f})}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror"),require("./searchcursor"),require("../dialog/dialog")):typeof define=="function"&&define.amd?define(["../../lib/codemirror","./searchcursor","../dialog/dialog"],n):n(CodeMirror)}(function(n){"use strict";function c(n,t){return typeof n=="string"?n=new RegExp(n.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),t?"gi":"g"):n.global||(n=new RegExp(n.source,n.ignoreCase?"gi":"g")),{token:function(t){n.lastIndex=t.pos;var i=n.exec(t.string);if(i&&i.index==t.pos)return t.pos+=i[0].length,"searching";i?t.pos=i.index:t.skipToEnd()}}}function l(){this.posFrom=this.posTo=this.query=null,this.overlay=null}function i(n){return n.state.search||(n.state.search=new l)}function r(n){return typeof n=="string"&&n==n.toLowerCase()}function t(n,t,i){return n.getSearchCursor(t,i,r(t))}function u(n,t,i,r,u){n.openDialog?n.openDialog(t,u,{value:r}):u(prompt(i,r))}function a(n,t,i,r){n.openConfirm?n.openConfirm(t,r):confirm(i)&&r[0]()}function o(n){var t=n.match(/^\/(.*)\/([a-z]*)$/);return t?(n=new RegExp(t[1],t[2].indexOf("i")==-1?"":"i"),n.test("")&&(n=/x^/)):n==""&&(n=/x^/),n}function f(n,t){var f=i(n);if(f.query)return s(n,t);u(n,v,"Search for:",n.getSelection(),function(i){n.operation(function(){i&&!f.query&&(f.query=o(i),n.removeOverlay(f.overlay,r(f.query)),f.overlay=c(f.query,r(f.query)),n.addOverlay(f.overlay),f.posFrom=f.posTo=n.getCursor(),s(n,t))})})}function s(r,u){r.operation(function(){var e=i(r),f=t(r,e.query,u?e.posFrom:e.posTo);(f.find(u)||(f=t(r,e.query,u?n.Pos(r.lastLine()):n.Pos(r.firstLine(),0)),f.find(u)))&&(r.setSelection(f.from(),f.to()),r.scrollIntoView({from:f.from(),to:f.to()}),e.posFrom=f.from(),e.posTo=f.to())})}function e(n){n.operation(function(){var t=i(n);t.query&&(t.query=null,n.removeOverlay(t.overlay))})}function h(n,i){n.getOption("readOnly")||u(n,y,"Replace:",n.getSelection(),function(r){r&&(r=o(r),u(n,p,"Replace with:","",function(u){if(i)n.operation(function(){for(var f,i=t(n,r);i.findNext();)typeof r!="string"?(f=n.getRange(i.from(),i.to()).match(r),i.replace(u.replace(/\$(\d)/g,function(n,t){return f[t]}))):i.replace(u)});else{e(n);var f=t(n,r,n.getCursor()),o=function(){var i=f.from(),u;((u=f.findNext())||(f=t(n,r),(u=f.findNext())&&(!i||f.from().line!=i.line||f.from().ch!=i.ch)))&&(n.setSelection(f.from(),f.to()),n.scrollIntoView({from:f.from(),to:f.to()}),a(n,w,"Replace?",[function(){s(u)},o]))},s=function(n){f.replace(typeof r=="string"?u:u.replace(/\$(\d)/g,function(t,i){return n[i]})),o()};o()}}))})}var v='Search: <input type="text" style="width: 10em" class="CodeMirror-search-field"/> <span style="color: #888" class="CodeMirror-search-hint">(Use /re/ syntax for regexp search)<\/span>',y='Replace: <input type="text" style="width: 10em" class="CodeMirror-search-field"/> <span style="color: #888" class="CodeMirror-search-hint">(Use /re/ syntax for regexp search)<\/span>',p='With: <input type="text" style="width: 10em" class="CodeMirror-search-field"/>',w="Replace? <button>Yes<\/button> <button>No<\/button> <button>Stop<\/button>";n.commands.find=function(n){e(n),f(n)},n.commands.findNext=f,n.commands.findPrev=function(n){f(n,!0)},n.commands.clearSearch=e,n.commands.replace=h,n.commands.replaceAll=function(n){h(n,!0)}}),function(n){typeof exports=="object"&&typeof module=="object"?n(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],n):n(CodeMirror)}(function(n){"use strict";function i(n,i,u,f){var h,o,e,s;this.atOccurrence=!1,this.doc=n,f==null&&typeof i=="string"&&(f=!1),u=u?n.clipPos(u):t(0,0),this.pos={from:u,to:u},typeof i!="string"?(i.global||(i=new RegExp(i.source,i.ignoreCase?"ig":"g")),this.matches=function(r,u){var o,h,f,s,c,e;if(r){for(i.lastIndex=0,o=n.getLine(u.line).slice(0,u.ch),h=0;;){if(i.lastIndex=h,c=i.exec(o),!c)break;if(f=c,s=f.index,h=f.index+(f[0].length||1),h==o.length)break}e=f&&f[0].length||0,e||(s==0&&o.length==0?f=undefined:s!=n.getLine(u.line).length&&e++)}else{i.lastIndex=u.ch;var o=n.getLine(u.line),f=i.exec(o),e=f&&f[0].length||0,s=f&&f.index;s+e==o.length||e||(e=1)}if(f&&e)return{from:t(u.line,s),to:t(u.line,s+e),match:f}}):(h=i,f&&(i=i.toLowerCase()),o=f?function(n){return n.toLowerCase()}:function(n){return n},e=i.split("\n"),e.length==1?this.matches=i.length?function(u,f){if(u){var s=n.getLine(f.line).slice(0,f.ch),c=o(s),e=c.lastIndexOf(i);if(e>-1)return e=r(s,c,e),{from:t(f.line,e),to:t(f.line,e+h.length)}}else{var s=n.getLine(f.line).slice(f.ch),c=o(s),e=c.indexOf(i);if(e>-1)return e=r(s,c,e)+f.ch,{from:t(f.line,e),to:t(f.line,e+h.length)}}}:function(){}:(s=h.split("\n"),this.matches=function(i,r){var h=e.length-1,a,c,l,v,u,f;if(i){if(r.line-(e.length-1)<n.firstLine())return;if(o(n.getLine(r.line).slice(0,s[h].length))!=e[e.length-1])return;for(a=t(r.line,s[h].length),u=r.line-1,f=h-1;f>=1;--f,--u)if(e[f]!=o(n.getLine(u)))return;return(c=n.getLine(u),l=c.length-s[0].length,o(c.slice(l))!=e[0])?void 0:{from:t(u,l),to:a}}if(!(r.line+(e.length-1)>n.lastLine())&&(c=n.getLine(r.line),l=c.length-s[0].length,o(c.slice(l))==e[0])){for(v=t(r.line,l),u=r.line+1,f=1;f<h;++f,++u)if(e[f]!=o(n.getLine(u)))return;if(o(n.getLine(u).slice(0,s[h].length))==e[h])return{from:v,to:t(u,s[h].length)}}}))}function r(n,t,i){var r,u;if(n.length==t.length)return i;for(r=Math.min(i,n.length);;)if(u=n.slice(0,r).toLowerCase().length,u<i)++r;else if(u>i)--r;else return r}var t=n.Pos;i.prototype={findNext:function(){return this.find(!1)},findPrevious:function(){return this.find(!0)},find:function(n){function f(n){var i=t(n,0);return u.pos={from:i,to:i},u.atOccurrence=!1,!1}for(var u=this,i=this.doc.clipPos(n?this.pos.from:this.pos.to),r;;){if(this.pos=this.matches(n,i))return this.atOccurrence=!0,this.pos.match||!0;if(n){if(!i.line)return f(0);i=t(i.line-1,this.doc.getLine(i.line-1).length)}else{if(r=this.doc.lineCount(),i.line==r-1)return f(r);i=t(i.line+1,0)}}},from:function(){if(this.atOccurrence)return this.pos.from},to:function(){if(this.atOccurrence)return this.pos.to},replace:function(i){if(this.atOccurrence){var r=n.splitLines(i);this.doc.replaceRange(r,this.pos.from,this.pos.to),this.pos.to=t(this.pos.from.line+r.length-1,r[r.length-1].length+(r.length==1?this.pos.from.ch:0))}}},n.defineExtension("getSearchCursor",function(n,t,r){return new i(this.doc,n,t,r)}),n.defineDocExtension("getSearchCursor",function(n,t,r){return new i(this,n,t,r)}),n.defineExtension("selectMatches",function(t,i){for(var u=[],f,r=this.getSearchCursor(t,this.getCursor("from"),i);f=r.findNext();){if(n.cmpPos(r.to(),this.getCursor("to"))>0)break;u.push({anchor:r.from(),head:r.to()})}u.length&&this.setSelections(u,0)})})
@@ -1 +1 @@
1
- (function(a){if(typeof exports=="object"&&typeof module=="object"){module.exports=a()}else{if(typeof define=="function"&&define.amd){return define([],a)}else{this.CodeMirror=a()}}})(function(){var ce=/gecko\/\d/i.test(navigator.userAgent);var eo=/MSIE \d/.test(navigator.userAgent);var b1=eo&&(document.documentMode==null||document.documentMode<8);var bY=eo&&(document.documentMode==null||document.documentMode<9);var bX=eo&&(document.documentMode==null||document.documentMode<10);var by=/Trident\/([7-9]|\d{2,})\./.test(navigator.userAgent);var dn=eo||by;var cJ=/WebKit\//.test(navigator.userAgent);var dr=cJ&&/Qt\/\d+\.\d+/.test(navigator.userAgent);var cV=/Chrome\//.test(navigator.userAgent);var dF=/Opera\//.test(navigator.userAgent);var ay=/Apple Computer/.test(navigator.vendor);var a1=/KHTML\//.test(navigator.userAgent);var cP=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(navigator.userAgent);var e5=/PhantomJS/.test(navigator.userAgent);var eD=/AppleWebKit/.test(navigator.userAgent)&&/Mobile\/\w+/.test(navigator.userAgent);var dS=eD||/Android|webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(navigator.userAgent);var bU=eD||/Mac/.test(navigator.platform);var aG=/win/i.test(navigator.platform);var aO=dF&&navigator.userAgent.match(/Version\/(\d*\.\d*)/);if(aO){aO=Number(aO[1])}if(aO&&aO>=15){dF=false;cJ=true}var bF=bU&&(dr||dF&&(aO==null||aO<12.11));var fF=ce||(dn&&!bY);var fI=false,aX=false;function I(fP,fQ){if(!(this instanceof I)){return new I(fP,fQ)}this.options=fQ=fQ||{};aE(eF,fQ,false);b4(fQ);var fS=fQ.value;if(typeof fS=="string"){fS=new ao(fS,fQ.mode)}this.doc=fS;var fR=this.display=new em(fP,fS);fR.wrapper.CodeMirror=this;dO(this);cB(this);if(fQ.lineWrapping){this.display.wrapper.className+=" CodeMirror-wrap"}if(fQ.autofocus&&!dS){ed(this)}this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:false,focused:false,suppressEdits:false,pasteIncoming:false,cutIncoming:false,draggingText:false,highlight:new fN()};if(eo){setTimeout(cl(eZ,this,true),20)}fq(this);a8();var fO=this;cz(this,function(){fO.curOp.forceUpdate=true;dN(fO,fS);if((fQ.autofocus&&!dS)||ds()==fR.input){setTimeout(cl(cq,fO),20)}else{aL(fO)}for(var fU in a4){if(a4.hasOwnProperty(fU)){a4[fU](fO,fQ[fU],b2)}}for(var fT=0;fT<aY.length;++fT){aY[fT](fO)}})}function em(fO,fQ){var fR=this;var fP=fR.input=fx("textarea",null,null,"position: absolute; padding: 0; width: 1px; height: 1em; outline: none");if(cJ){fP.style.width="1000px"}else{fP.setAttribute("wrap","off")}if(eD){fP.style.border="1px solid black"}fP.setAttribute("autocorrect","off");fP.setAttribute("autocapitalize","off");fP.setAttribute("spellcheck","false");fR.inputDiv=fx("div",[fP],null,"overflow: hidden; position: relative; width: 3px; height: 0px;");fR.scrollbarH=fx("div",[fx("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");fR.scrollbarV=fx("div",[fx("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar");fR.scrollbarFiller=fx("div",null,"CodeMirror-scrollbar-filler");fR.gutterFiller=fx("div",null,"CodeMirror-gutter-filler");fR.lineDiv=fx("div",null,"CodeMirror-code");fR.selectionDiv=fx("div",null,null,"position: relative; z-index: 1");fR.cursorDiv=fx("div",null,"CodeMirror-cursors");fR.measure=fx("div",null,"CodeMirror-measure");fR.lineMeasure=fx("div",null,"CodeMirror-measure");fR.lineSpace=fx("div",[fR.measure,fR.lineMeasure,fR.selectionDiv,fR.cursorDiv,fR.lineDiv],null,"position: relative; outline: none");fR.mover=fx("div",[fx("div",[fR.lineSpace],"CodeMirror-lines")],null,"position: relative");fR.sizer=fx("div",[fR.mover],"CodeMirror-sizer");fR.heightForcer=fx("div",null,null,"position: absolute; height: "+ba+"px; width: 1px;");fR.gutters=fx("div",null,"CodeMirror-gutters");fR.lineGutter=null;fR.scroller=fx("div",[fR.sizer,fR.heightForcer,fR.gutters],"CodeMirror-scroll");fR.scroller.setAttribute("tabIndex","-1");fR.wrapper=fx("div",[fR.inputDiv,fR.scrollbarH,fR.scrollbarV,fR.scrollbarFiller,fR.gutterFiller,fR.scroller],"CodeMirror");if(b1){fR.gutters.style.zIndex=-1;fR.scroller.style.paddingRight=0}if(eD){fP.style.width="0px"}if(!cJ){fR.scroller.draggable=true}if(a1){fR.inputDiv.style.height="1px";fR.inputDiv.style.position="absolute"}if(b1){fR.scrollbarH.style.minHeight=fR.scrollbarV.style.minWidth="18px"}if(fO.appendChild){fO.appendChild(fR.wrapper)}else{fO(fR.wrapper)}fR.viewFrom=fR.viewTo=fQ.first;fR.view=[];fR.externalMeasured=null;fR.viewOffset=0;fR.lastSizeC=0;fR.updateLineNumbers=null;fR.lineNumWidth=fR.lineNumInnerWidth=fR.lineNumChars=null;fR.prevInput="";fR.alignWidgets=false;fR.pollingFast=false;fR.poll=new fN();fR.cachedCharWidth=fR.cachedTextHeight=fR.cachedPaddingH=null;fR.inaccurateSelection=false;fR.maxLine=null;fR.maxLineLength=0;fR.maxLineChanged=false;fR.wheelDX=fR.wheelDY=fR.wheelStartX=fR.wheelStartY=null;fR.shift=false;fR.selForContextMenu=null}function bh(fO){fO.doc.mode=I.getMode(fO.options,fO.doc.modeOption);dX(fO)}function dX(fO){fO.doc.iter(function(fP){if(fP.stateAfter){fP.stateAfter=null}if(fP.styles){fP.styles=null}});fO.doc.frontier=fO.doc.first;dR(fO,100);fO.state.modeGen++;if(fO.curOp){af(fO)}}function ek(fO){if(fO.options.lineWrapping){fb(fO.display.wrapper,"CodeMirror-wrap");fO.display.sizer.style.minWidth=""}else{g(fO.display.wrapper,"CodeMirror-wrap");h(fO)}X(fO);af(fO);ai(fO);setTimeout(function(){eB(fO)},100)}function a3(fO){var fQ=aN(fO.display),fP=fO.options.lineWrapping;var fR=fP&&Math.max(5,fO.display.scroller.clientWidth/di(fO.display)-3);return function(fT){if(e7(fO.doc,fT)){return 0}var fS=0;if(fT.widgets){for(var fU=0;fU<fT.widgets.length;fU++){if(fT.widgets[fU].height){fS+=fT.widgets[fU].height}}}if(fP){return fS+(Math.ceil(fT.text.length/fR)||1)*fQ}else{return fS+fQ}}}function X(fO){var fQ=fO.doc,fP=a3(fO);fQ.iter(function(fR){var fS=fP(fR);if(fS!=fR.height){fB(fR,fS)}})}function fL(fO){var fQ=eK[fO.options.keyMap],fP=fQ.style;fO.display.wrapper.className=fO.display.wrapper.className.replace(/\s*cm-keymap-\S+/g,"")+(fP?" cm-keymap-"+fP:"")}function cB(fO){fO.display.wrapper.className=fO.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+fO.options.theme.replace(/(^|\s)\s*/g," cm-s-");ai(fO)}function db(fO){dO(fO);af(fO);setTimeout(function(){ei(fO)},20)}function dO(fO){var fP=fO.display.gutters,fT=fO.options.gutters;dE(fP);for(var fQ=0;fQ<fT.length;++fQ){var fR=fT[fQ];var fS=fP.appendChild(fx("div",null,"CodeMirror-gutter "+fR));if(fR=="CodeMirror-linenumbers"){fO.display.lineGutter=fS;fS.style.width=(fO.display.lineNumWidth||1)+"px"}}fP.style.display=fQ?"":"none";cN(fO)}function cN(fO){var fP=fO.display.gutters.offsetWidth;fO.display.sizer.style.marginLeft=fP+"px";fO.display.scrollbarH.style.left=fO.options.fixedGutter?fP+"px":0}function dY(fQ){if(fQ.height==0){return 0}var fP=fQ.text.length,fO,fS=fQ;while(fO=er(fS)){var fR=fO.find(0,true);fS=fR.from.line;fP+=fR.from.ch-fR.to.ch}fS=fQ;while(fO=d7(fS)){var fR=fO.find(0,true);fP-=fS.text.length-fR.from.ch;fS=fR.to.line;fP+=fS.text.length-fR.to.ch}return fP}function h(fO){var fQ=fO.display,fP=fO.doc;fQ.maxLine=eP(fP,fP.first);fQ.maxLineLength=dY(fQ.maxLine);fQ.maxLineChanged=true;fP.iter(function(fS){var fR=dY(fS);if(fR>fQ.maxLineLength){fQ.maxLineLength=fR;fQ.maxLine=fS}})}function b4(fO){var fP=c1(fO.gutters,"CodeMirror-linenumbers");if(fP==-1&&fO.lineNumbers){fO.gutters=fO.gutters.concat(["CodeMirror-linenumbers"])}else{if(fP>-1&&!fO.lineNumbers){fO.gutters=fO.gutters.slice(0);fO.gutters.splice(fP,1)}}}function df(fP){var fO=fP.display.scroller;return{clientHeight:fO.clientHeight,barHeight:fP.display.scrollbarV.clientHeight,scrollWidth:fO.scrollWidth,clientWidth:fO.clientWidth,barWidth:fP.display.scrollbarH.clientWidth,docHeight:Math.round(fP.doc.height+bx(fP.display))}}function eB(fO,fT){if(!fT){fT=df(fO)}var fV=fO.display;var fS=fT.docHeight+ba;var fU=fT.scrollWidth>fT.clientWidth;var fQ=fS>fT.clientHeight;if(fQ){fV.scrollbarV.style.display="block";fV.scrollbarV.style.bottom=fU?l(fV.measure)+"px":"0";fV.scrollbarV.firstChild.style.height=Math.max(0,fS-fT.clientHeight+(fT.barHeight||fV.scrollbarV.clientHeight))+"px"}else{fV.scrollbarV.style.display="";fV.scrollbarV.firstChild.style.height="0"}if(fU){fV.scrollbarH.style.display="block";fV.scrollbarH.style.right=fQ?l(fV.measure)+"px":"0";fV.scrollbarH.firstChild.style.width=(fT.scrollWidth-fT.clientWidth+(fT.barWidth||fV.scrollbarH.clientWidth))+"px"}else{fV.scrollbarH.style.display="";fV.scrollbarH.firstChild.style.width="0"}if(fU&&fQ){fV.scrollbarFiller.style.display="block";fV.scrollbarFiller.style.height=fV.scrollbarFiller.style.width=l(fV.measure)+"px"}else{fV.scrollbarFiller.style.display=""}if(fU&&fO.options.coverGutterNextToScrollbar&&fO.options.fixedGutter){fV.gutterFiller.style.display="block";fV.gutterFiller.style.height=l(fV.measure)+"px";fV.gutterFiller.style.width=fV.gutters.offsetWidth+"px"}else{fV.gutterFiller.style.display=""}if(!fO.state.checkedOverlayScrollbar&&fT.clientHeight>0){if(l(fV.measure)===0){var fP=bU&&!cP?"12px":"18px";fV.scrollbarV.style.minWidth=fV.scrollbarH.style.minHeight=fP;var fR=function(fW){if(L(fW)!=fV.scrollbarV&&L(fW)!=fV.scrollbarH){cL(fO,d5)(fW)}};bM(fV.scrollbarV,"mousedown",fR);bM(fV.scrollbarH,"mousedown",fR)}fO.state.checkedOverlayScrollbar=true}}function bT(fQ,fU,fW){var fR=fW&&fW.top!=null?Math.max(0,fW.top):fQ.scroller.scrollTop;fR=Math.floor(fR-eI(fQ));var fO=fW&&fW.bottom!=null?fW.bottom:fR+fQ.wrapper.clientHeight;var fS=bv(fU,fR),fT=bv(fU,fO);if(fW&&fW.ensure){var fP=fW.ensure.from.line,fV=fW.ensure.to.line;if(fP<fS){return{from:fP,to:bv(fU,bB(eP(fU,fP))+fQ.wrapper.clientHeight)}}if(Math.min(fV,fU.lastLine())>=fT){return{from:bv(fU,bB(eP(fU,fV))-fQ.wrapper.clientHeight),to:fV}}}return{from:fS,to:Math.max(fT,fS+1)}}function ei(fW){var fU=fW.display,fV=fU.view;if(!fU.alignWidgets&&(!fU.gutters.firstChild||!fW.options.fixedGutter)){return}var fS=dA(fU)-fU.scroller.scrollLeft+fW.doc.scrollLeft;var fO=fU.gutters.offsetWidth,fP=fS+"px";for(var fR=0;fR<fV.length;fR++){if(!fV[fR].hidden){if(fW.options.fixedGutter&&fV[fR].gutter){fV[fR].gutter.style.left=fP}var fT=fV[fR].alignable;if(fT){for(var fQ=0;fQ<fT.length;fQ++){fT[fQ].style.left=fP}}}}if(fW.options.fixedGutter){fU.gutters.style.left=(fS+fO)+"px"}}function dI(fO){if(!fO.options.lineNumbers){return false}var fT=fO.doc,fP=d4(fO.options,fT.first+fT.size-1),fS=fO.display;if(fP.length!=fS.lineNumChars){var fU=fS.measure.appendChild(fx("div",[fx("div",fP)],"CodeMirror-linenumber CodeMirror-gutter-elt"));var fQ=fU.firstChild.offsetWidth,fR=fU.offsetWidth-fQ;fS.lineGutter.style.width="";fS.lineNumInnerWidth=Math.max(fQ,fS.lineGutter.offsetWidth-fR);fS.lineNumWidth=fS.lineNumInnerWidth+fR;fS.lineNumChars=fS.lineNumInnerWidth?fP.length:-1;fS.lineGutter.style.width=fS.lineNumWidth+"px";cN(fO);return true}return false}function d4(fO,fP){return String(fO.lineNumberFormatter(fP+fO.firstLineNumber))}function dA(fO){return fO.scroller.getBoundingClientRect().left-fO.sizer.getBoundingClientRect().left}function dp(fT,fW,fX){var fV=fT.display.viewFrom,fU=fT.display.viewTo,fR;var fO=bT(fT.display,fT.doc,fW);for(var fQ=true;;fQ=false){var fP=fT.display.scroller.clientWidth;if(!cZ(fT,fO,fX)){break}fR=true;if(fT.display.maxLineChanged&&!fT.options.lineWrapping){b(fT)}var fS=df(fT);br(fT);de(fT,fS);eB(fT,fS);if(cJ&&fT.options.lineWrapping){fA(fT,fS)}if(fQ&&fT.options.lineWrapping&&fP!=fT.display.scroller.clientWidth){fX=true;continue}fX=false;if(fW&&fW.top!=null){fW={top:Math.min(fS.docHeight-ba-fS.clientHeight,fW.top)}}fO=bT(fT.display,fT.doc,fW);if(fO.from>=fT.display.viewFrom&&fO.to<=fT.display.viewTo){break}}fT.display.updateLineNumbers=null;if(fR){ac(fT,"update",fT);if(fT.display.viewFrom!=fV||fT.display.viewTo!=fU){ac(fT,"viewportChange",fT,fT.display.viewFrom,fT.display.viewTo)}}return fR}function cZ(fY,fQ,fZ){var fS=fY.display,fX=fY.doc;if(!fS.wrapper.offsetWidth){d9(fY);return}if(!fZ&&fQ.from>=fS.viewFrom&&fQ.to<=fS.viewTo&&cU(fY)==0){return}if(dI(fY)){d9(fY)}var fW=eM(fY);var fR=fX.first+fX.size;var fV=Math.max(fQ.from-fY.options.viewportMargin,fX.first);var fU=Math.min(fR,fQ.to+fY.options.viewportMargin);if(fS.viewFrom<fV&&fV-fS.viewFrom<20){fV=Math.max(fX.first,fS.viewFrom)}if(fS.viewTo>fU&&fS.viewTo-fU<20){fU=Math.min(fR,fS.viewTo)}if(aX){fV=aM(fY.doc,fV);fU=dG(fY.doc,fU)}var fP=fV!=fS.viewFrom||fU!=fS.viewTo||fS.lastSizeC!=fS.wrapper.clientHeight;cD(fY,fV,fU);fS.viewOffset=bB(eP(fY.doc,fS.viewFrom));fY.display.mover.style.top=fS.viewOffset+"px";var fO=cU(fY);if(!fP&&fO==0&&!fZ){return}var fT=ds();if(fO>4){fS.lineDiv.style.display="none"}cc(fY,fS.updateLineNumbers,fW);if(fO>4){fS.lineDiv.style.display=""}if(fT&&ds()!=fT&&fT.offsetHeight){fT.focus()}dE(fS.cursorDiv);dE(fS.selectionDiv);if(fP){fS.lastSizeC=fS.wrapper.clientHeight;dR(fY,400)}aZ(fY);return true}function b(fO){var fS=fO.display;var fQ=dT(fO,fS.maxLine,fS.maxLine.text.length).left;fS.maxLineChanged=false;var fP=Math.max(0,fQ+3);var fR=Math.max(0,fS.sizer.offsetLeft+fP+ba-fS.scroller.clientWidth);fS.sizer.style.minWidth=fP+"px";if(fR<fO.doc.scrollLeft){bt(fO,Math.min(fS.scroller.scrollLeft,fR),true)}}function de(fO,fP){fO.display.sizer.style.minHeight=fO.display.heightForcer.style.top=fP.docHeight+"px";fO.display.gutters.style.height=Math.max(fP.docHeight,fP.clientHeight-ba)+"px"}function fA(fO,fP){if(fO.display.sizer.offsetWidth+fO.display.gutters.offsetWidth<fO.display.scroller.clientWidth-1){fO.display.sizer.style.minHeight=fO.display.heightForcer.style.top="0px";fO.display.gutters.style.height=fP.docHeight+"px"}}function aZ(fV){var fT=fV.display;var fP=fT.lineDiv.offsetTop;for(var fQ=0;fQ<fT.view.length;fQ++){var fW=fT.view[fQ],fX;if(fW.hidden){continue}if(b1){var fS=fW.node.offsetTop+fW.node.offsetHeight;fX=fS-fP;fP=fS}else{var fR=fW.node.getBoundingClientRect();fX=fR.bottom-fR.top}var fU=fW.line.height-fX;if(fX<2){fX=aN(fT)}if(fU>0.001||fU<-0.001){fB(fW.line,fX);b0(fW.line);if(fW.rest){for(var fO=0;fO<fW.rest.length;fO++){b0(fW.rest[fO])}}}}}function b0(fO){if(fO.widgets){for(var fP=0;fP<fO.widgets.length;++fP){fO.widgets[fP].height=fO.widgets[fP].node.offsetHeight}}}function eM(fO){var fS=fO.display,fR={},fQ={};for(var fT=fS.gutters.firstChild,fP=0;fT;fT=fT.nextSibling,++fP){fR[fO.options.gutters[fP]]=fT.offsetLeft;fQ[fO.options.gutters[fP]]=fT.offsetWidth}return{fixedPos:dA(fS),gutterTotalWidth:fS.gutters.offsetWidth,gutterLeft:fR,gutterWidth:fQ,wrapperWidth:fS.wrapper.clientWidth}}function cc(fZ,fQ,fY){var fV=fZ.display,f1=fZ.options.lineNumbers;var fO=fV.lineDiv,f0=fO.firstChild;function fU(f3){var f2=f3.nextSibling;if(cJ&&bU&&fZ.display.currentWheelTarget==f3){f3.style.display="none"}else{f3.parentNode.removeChild(f3)}return f2}var fW=fV.view,fT=fV.viewFrom;for(var fR=0;fR<fW.length;fR++){var fS=fW[fR];if(fS.hidden){}else{if(!fS.node){var fP=aA(fZ,fS,fT,fY);fO.insertBefore(fP,f0)}else{while(f0!=fS.node){f0=fU(f0)}var fX=f1&&fQ!=null&&fQ<=fT&&fS.lineNumber;if(fS.changes){if(c1(fS.changes,"gutter")>-1){fX=false}Z(fZ,fS,fT,fY)}if(fX){dE(fS.lineNumber);fS.lineNumber.appendChild(document.createTextNode(d4(fZ.options,fT)))}f0=fS.node.nextSibling}}fT+=fS.size}while(f0){f0=fU(f0)}}function Z(fO,fQ,fS,fT){for(var fP=0;fP<fQ.changes.length;fP++){var fR=fQ.changes[fP];if(fR=="text"){eV(fO,fQ)}else{if(fR=="gutter"){cY(fO,fQ,fS,fT)}else{if(fR=="class"){dl(fQ)}else{if(fR=="widget"){al(fQ,fT)}}}}}fQ.changes=null}function fj(fO){if(fO.node==fO.text){fO.node=fx("div",null,null,"position: relative");if(fO.text.parentNode){fO.text.parentNode.replaceChild(fO.node,fO.text)}fO.node.appendChild(fO.text);if(b1){fO.node.style.zIndex=2}}return fO.node}function d6(fP){var fO=fP.bgClass?fP.bgClass+" "+(fP.line.bgClass||""):fP.line.bgClass;if(fO){fO+=" CodeMirror-linebackground"}if(fP.background){if(fO){fP.background.className=fO}else{fP.background.parentNode.removeChild(fP.background);fP.background=null}}else{if(fO){var fQ=fj(fP);fP.background=fQ.insertBefore(fx("div",null,fO),fQ.firstChild)}}}function dy(fO,fP){var fQ=fO.display.externalMeasured;if(fQ&&fQ.line==fP.line){fO.display.externalMeasured=null;fP.measure=fQ.measure;return fQ.built}return ev(fO,fP)}function eV(fO,fR){var fP=fR.text.className;var fQ=dy(fO,fR);if(fR.text==fR.node){fR.node=fQ.pre}fR.text.parentNode.replaceChild(fQ.pre,fR.text);fR.text=fQ.pre;if(fQ.bgClass!=fR.bgClass||fQ.textClass!=fR.textClass){fR.bgClass=fQ.bgClass;fR.textClass=fQ.textClass;dl(fR)}else{if(fP){fR.text.className=fP}}}function dl(fP){d6(fP);if(fP.line.wrapClass){fj(fP).className=fP.line.wrapClass}else{if(fP.node!=fP.text){fP.node.className=""}}var fO=fP.textClass?fP.textClass+" "+(fP.line.textClass||""):fP.line.textClass;fP.text.className=fO||""}function cY(fW,fU,fT,fV){if(fU.gutter){fU.node.removeChild(fU.gutter);fU.gutter=null}var fR=fU.line.gutterMarkers;if(fW.options.lineNumbers||fR){var fP=fj(fU);var fS=fU.gutter=fP.insertBefore(fx("div",null,"CodeMirror-gutter-wrapper","position: absolute; left: "+(fW.options.fixedGutter?fV.fixedPos:-fV.gutterTotalWidth)+"px"),fU.text);if(fW.options.lineNumbers&&(!fR||!fR["CodeMirror-linenumbers"])){fU.lineNumber=fS.appendChild(fx("div",d4(fW.options,fT),"CodeMirror-linenumber CodeMirror-gutter-elt","left: "+fV.gutterLeft["CodeMirror-linenumbers"]+"px; width: "+fW.display.lineNumInnerWidth+"px"))}if(fR){for(var fQ=0;fQ<fW.options.gutters.length;++fQ){var fO=fW.options.gutters[fQ],fX=fR.hasOwnProperty(fO)&&fR[fO];if(fX){fS.appendChild(fx("div",[fX],"CodeMirror-gutter-elt","left: "+fV.gutterLeft[fO]+"px; width: "+fV.gutterWidth[fO]+"px"))}}}}}function al(fO,fR){if(fO.alignable){fO.alignable=null}for(var fQ=fO.node.firstChild,fP;fQ;fQ=fP){var fP=fQ.nextSibling;if(fQ.className=="CodeMirror-linewidget"){fO.node.removeChild(fQ)}}e4(fO,fR)}function aA(fO,fQ,fR,fS){var fP=dy(fO,fQ);fQ.text=fQ.node=fP.pre;if(fP.bgClass){fQ.bgClass=fP.bgClass}if(fP.textClass){fQ.textClass=fP.textClass}dl(fQ);cY(fO,fQ,fR,fS);e4(fQ,fS);return fQ.node}function e4(fP,fQ){fC(fP.line,fP,fQ,true);if(fP.rest){for(var fO=0;fO<fP.rest.length;fO++){fC(fP.rest[fO],fP,fQ,false)}}}function fC(fW,fT,fV,fR){if(!fW.widgets){return}var fO=fj(fT);for(var fQ=0,fU=fW.widgets;fQ<fU.length;++fQ){var fS=fU[fQ],fP=fx("div",[fS.node],"CodeMirror-linewidget");if(!fS.handleMouseEvents){fP.ignoreEvents=true}bu(fS,fP,fT,fV);if(fR&&fS.above){fO.insertBefore(fP,fT.gutter||fT.text)}else{fO.appendChild(fP)}ac(fS,"redraw")}}function bu(fR,fQ,fO,fS){if(fR.noHScroll){(fO.alignable||(fO.alignable=[])).push(fQ);var fP=fS.wrapperWidth;fQ.style.left=fS.fixedPos+"px";if(!fR.coverGutter){fP-=fS.gutterTotalWidth;fQ.style.paddingLeft=fS.gutterTotalWidth+"px"}fQ.style.width=fP+"px"}if(fR.coverGutter){fQ.style.zIndex=5;fQ.style.position="relative";if(!fR.noHScroll){fQ.style.marginLeft=-fS.gutterTotalWidth+"px"}}}var W=I.Pos=function(fO,fP){if(!(this instanceof W)){return new W(fO,fP)}this.line=fO;this.ch=fP};var b5=I.cmpPos=function(fP,fO){return fP.line-fO.line||fP.ch-fO.ch};function b9(fO){return W(fO.line,fO.ch)}function bn(fP,fO){return b5(fP,fO)<0?fO:fP}function am(fP,fO){return b5(fP,fO)<0?fP:fO}function fy(fO,fP){this.ranges=fO;this.primIndex=fP}fy.prototype={primary:function(){return this.ranges[this.primIndex]},equals:function(fO){if(fO==this){return true}if(fO.primIndex!=this.primIndex||fO.ranges.length!=this.ranges.length){return false}for(var fQ=0;fQ<this.ranges.length;fQ++){var fP=this.ranges[fQ],fR=fO.ranges[fQ];if(b5(fP.anchor,fR.anchor)!=0||b5(fP.head,fR.head)!=0){return false}}return true},deepCopy:function(){for(var fO=[],fP=0;fP<this.ranges.length;fP++){fO[fP]=new dB(b9(this.ranges[fP].anchor),b9(this.ranges[fP].head))}return new fy(fO,this.primIndex)},somethingSelected:function(){for(var fO=0;fO<this.ranges.length;fO++){if(!this.ranges[fO].empty()){return true}}return false},contains:function(fR,fO){if(!fO){fO=fR}for(var fQ=0;fQ<this.ranges.length;fQ++){var fP=this.ranges[fQ];if(b5(fO,fP.from())>=0&&b5(fR,fP.to())<=0){return fQ}}return -1}};function dB(fO,fP){this.anchor=fO;this.head=fP}dB.prototype={from:function(){return am(this.anchor,this.head)},to:function(){return bn(this.anchor,this.head)},empty:function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch}};function cm(fO,fV){var fQ=fO[fV];fO.sort(function(fY,fX){return b5(fY.from(),fX.from())});fV=c1(fO,fQ);for(var fS=1;fS<fO.length;fS++){var fW=fO[fS],fP=fO[fS-1];if(b5(fP.to(),fW.from())>=0){var fT=am(fP.from(),fW.from()),fU=bn(fP.to(),fW.to());var fR=fP.empty()?fW.from()==fW.head:fP.from()==fP.head;if(fS<=fV){--fV}fO.splice(--fS,2,new dB(fR?fU:fT,fR?fT:fU))}}return new fy(fO,fV)}function eu(fO,fP){return new fy([new dB(fO,fP||fO)],0)}function cO(fO,fP){return Math.max(fO.first,Math.min(fP,fO.first+fO.size-1))}function fk(fP,fQ){if(fQ.line<fP.first){return W(fP.first,0)}var fO=fP.first+fP.size-1;if(fQ.line>fO){return W(fO,eP(fP,fO).text.length)}return e3(fQ,eP(fP,fQ.line).text.length)}function e3(fQ,fP){var fO=fQ.ch;if(fO==null||fO>fP){return W(fQ.line,fP)}else{if(fO<0){return W(fQ.line,0)}else{return fQ}}}function bW(fP,fO){return fO>=fP.first&&fO<fP.first+fP.size}function dC(fQ,fR){for(var fO=[],fP=0;fP<fR.length;fP++){fO[fP]=fk(fQ,fR[fP])}return fO}function e6(fT,fP,fS,fO){if(fT.cm&&fT.cm.display.shift||fT.extend){var fR=fP.anchor;if(fO){var fQ=b5(fS,fR)<0;if(fQ!=(b5(fO,fR)<0)){fR=fS;fS=fO}else{if(fQ!=(b5(fS,fO)<0)){fS=fO}}}return new dB(fR,fS)}else{return new dB(fO||fS,fS)}}function fu(fR,fQ,fO,fP){bJ(fR,new fy([e6(fR,fR.sel.primary(),fQ,fO)],0),fP)}function at(fT,fS,fQ){for(var fP=[],fR=0;fR<fT.sel.ranges.length;fR++){fP[fR]=e6(fT,fT.sel.ranges[fR],fS[fR],null)}var fO=cm(fP,fT.sel.primIndex);bJ(fT,fO,fQ)}function f(fS,fR,fP,fQ){var fO=fS.sel.ranges.slice(0);fO[fR]=fP;bJ(fS,cm(fO,fS.sel.primIndex),fQ)}function G(fR,fP,fQ,fO){bJ(fR,eu(fP,fQ),fO)}function d(fQ,fO){var fP={ranges:fO.ranges,update:function(fR){this.ranges=[];for(var fS=0;fS<fR.length;fS++){this.ranges[fS]=new dB(fk(fQ,fR[fS].anchor),fk(fQ,fR[fS].head))}}};az(fQ,"beforeSelectionChange",fQ,fP);if(fQ.cm){az(fQ.cm,"beforeSelectionChange",fQ.cm,fP)}if(fP.ranges!=fO.ranges){return cm(fP.ranges,fP.ranges.length-1)}else{return fO}}function eH(fS,fR,fP){var fO=fS.history.done,fQ=fi(fO);if(fQ&&fQ.ranges){fO[fO.length-1]=fR;d1(fS,fR,fP)}else{bJ(fS,fR,fP)}}function bJ(fQ,fP,fO){d1(fQ,fP,fO);fH(fQ,fQ.sel,fQ.cm?fQ.cm.curOp.id:NaN,fO)}function d1(fR,fQ,fP){if(eS(fR,"beforeSelectionChange")||fR.cm&&eS(fR.cm,"beforeSelectionChange")){fQ=d(fR,fQ)}var fO=fP&&fP.bias||(b5(fQ.primary().head,fR.sel.primary().head)<0?-1:1);cS(fR,o(fR,fQ,fO,true));if(!(fP&&fP.scroll===false)&&fR.cm){fh(fR.cm)}}function cS(fP,fO){if(fO.equals(fP.sel)){return}fP.sel=fO;if(fP.cm){fP.cm.curOp.updateInput=fP.cm.curOp.selectionChanged=true;V(fP.cm)}ac(fP,"cursorActivity",fP)}function ea(fO){cS(fO,o(fO,fO.sel,null,false),Y)}function o(fW,fO,fT,fU){var fQ;for(var fR=0;fR<fO.ranges.length;fR++){var fS=fO.ranges[fR];var fV=bK(fW,fS.anchor,fT,fU);var fP=bK(fW,fS.head,fT,fU);if(fQ||fV!=fS.anchor||fP!=fS.head){if(!fQ){fQ=fO.ranges.slice(0,fR)}fQ[fR]=new dB(fV,fP)}}return fQ?cm(fQ,fO.primIndex):fO}function bK(fX,fW,fT,fU){var fY=false,fQ=fW;var fR=fT||1;fX.cantEdit=false;search:for(;;){var fZ=eP(fX,fQ.line);if(fZ.markedSpans){for(var fS=0;fS<fZ.markedSpans.length;++fS){var fO=fZ.markedSpans[fS],fP=fO.marker;if((fO.from==null||(fP.inclusiveLeft?fO.from<=fQ.ch:fO.from<fQ.ch))&&(fO.to==null||(fP.inclusiveRight?fO.to>=fQ.ch:fO.to>fQ.ch))){if(fU){az(fP,"beforeCursorEnter");if(fP.explicitlyCleared){if(!fZ.markedSpans){break}else{--fS;continue}}}if(!fP.atomic){continue}var fV=fP.find(fR<0?-1:1);if(b5(fV,fQ)==0){fV.ch+=fR;if(fV.ch<0){if(fV.line>fX.first){fV=fk(fX,W(fV.line-1))}else{fV=null}}else{if(fV.ch>fZ.text.length){if(fV.line<fX.first+fX.size-1){fV=W(fV.line+1,0)}else{fV=null}}}if(!fV){if(fY){if(!fU){return bK(fX,fW,fT,true)}fX.cantEdit=true;return W(fX.first,0)}fY=true;fV=fW;fR=-fR}}fQ=fV;continue search}}}return fQ}}function br(f0){var fV=f0.display,fZ=f0.doc;var fX=document.createDocumentFragment();var fR=document.createDocumentFragment();for(var fT=0;fT<fZ.sel.ranges.length;fT++){var fU=fZ.sel.ranges[fT];var fS=fU.empty();if(fS||f0.options.showCursorWhenSelecting){B(f0,fU,fX)}if(!fS){bs(f0,fU,fR)}}if(f0.options.moveInputWithCursor){var fW=dx(f0,fZ.sel.primary().head,"div");var fO=fV.wrapper.getBoundingClientRect(),fQ=fV.lineDiv.getBoundingClientRect();var fY=Math.max(0,Math.min(fV.wrapper.clientHeight-10,fW.top+fQ.top-fO.top));var fP=Math.max(0,Math.min(fV.wrapper.clientWidth-10,fW.left+fQ.left-fO.left));fV.inputDiv.style.top=fY+"px";fV.inputDiv.style.left=fP+"px"}bG(fV.cursorDiv,fX);bG(fV.selectionDiv,fR)}function B(fO,fR,fQ){var fT=dx(fO,fR.head,"div");var fS=fQ.appendChild(fx("div","\u00a0","CodeMirror-cursor"));fS.style.left=fT.left+"px";fS.style.top=fT.top+"px";fS.style.height=Math.max(0,fT.bottom-fT.top)*fO.options.cursorHeight+"px";if(fT.other){var fP=fQ.appendChild(fx("div","\u00a0","CodeMirror-cursor CodeMirror-secondarycursor"));fP.style.display="";fP.style.left=fT.other.left+"px";fP.style.top=fT.other.top+"px";fP.style.height=(fT.other.bottom-fT.other.top)*0.85+"px"}}function bs(fS,fY,fT){var f1=fS.display,f5=fS.doc;var fO=document.createDocumentFragment();var fX=eG(fS.display),fR=fX.left,f2=f1.lineSpace.offsetWidth-fX.right;function fZ(f9,f8,f7,f6){if(f8<0){f8=0}f8=Math.round(f8);f6=Math.round(f6);fO.appendChild(fx("div",null,"CodeMirror-selected","position: absolute; left: "+f9+"px; top: "+f8+"px; width: "+(f7==null?f2-f9:f7)+"px; height: "+(f6-f8)+"px"))}function fP(f7,f9,gc){var f8=eP(f5,f7);var ga=f8.text.length;var gd,f6;function gb(gf,ge){return cx(fS,W(f7,gf),"div",f8,ge)}dH(a(f8),f9||0,gc==null?ga:gc,function(gl,gk,ge){var gh=gb(gl,"left"),gi,gj,gg;if(gl==gk){gi=gh;gj=gg=gh.left}else{gi=gb(gk-1,"right");if(ge=="rtl"){var gf=gh;gh=gi;gi=gf}gj=gh.left;gg=gi.right}if(f9==null&&gl==0){gj=fR}if(gi.top-gh.top>3){fZ(gj,gh.top,null,gh.bottom);gj=fR;if(gh.bottom<gi.top){fZ(gj,gh.bottom,null,gi.top)}}if(gc==null&&gk==ga){gg=f2}if(!gd||gh.top<gd.top||gh.top==gd.top&&gh.left<gd.left){gd=gh}if(!f6||gi.bottom>f6.bottom||gi.bottom==f6.bottom&&gi.right>f6.right){f6=gi}if(gj<fR+1){gj=fR}fZ(gj,gi.top,gg-gj,gi.bottom)});return{start:gd,end:f6}}var f4=fY.from(),f3=fY.to();if(f4.line==f3.line){fP(f4.line,f4.ch,f3.ch)}else{var fQ=eP(f5,f4.line),fV=eP(f5,f3.line);var fU=z(fQ)==z(fV);var fW=fP(f4.line,f4.ch,fU?fQ.text.length+1:null).end;var f0=fP(f3.line,fU?0:null,f3.ch).start;if(fU){if(fW.top<f0.top-2){fZ(fW.right,fW.top,null,fW.bottom);fZ(fR,f0.top,f0.left,f0.bottom)}else{fZ(fW.right,fW.top,f0.left-fW.right,fW.bottom)}}if(fW.bottom<f0.top){fZ(fR,fW.bottom,null,f0.top)}}fT.appendChild(fO)}function p(fO){if(!fO.state.focused){return}var fQ=fO.display;clearInterval(fQ.blinker);var fP=true;fQ.cursorDiv.style.visibility="";if(fO.options.cursorBlinkRate>0){fQ.blinker=setInterval(function(){fQ.cursorDiv.style.visibility=(fP=!fP)?"":"hidden"},fO.options.cursorBlinkRate)}}function dR(fO,fP){if(fO.doc.mode.startState&&fO.doc.frontier<fO.display.viewTo){fO.state.highlight.set(fP,cl(cC,fO))}}function cC(fO){var fR=fO.doc;if(fR.frontier<fR.first){fR.frontier=fR.first}if(fR.frontier>=fO.display.viewTo){return}var fP=+new Date+fO.options.workTime;var fQ=bR(fR.mode,dg(fO,fR.frontier));cz(fO,function(){fR.iter(fR.frontier,Math.min(fR.first+fR.size,fO.display.viewTo+500),function(fS){if(fR.frontier>=fO.display.viewFrom){var fU=fS.styles;var fV=fa(fO,fS,fQ,true);fS.styles=fV.styles;if(fV.classes){fS.styleClasses=fV.classes}else{if(fS.styleClasses){fS.styleClasses=null}}var fW=!fU||fU.length!=fS.styles.length;for(var fT=0;!fW&&fT<fU.length;++fT){fW=fU[fT]!=fS.styles[fT]}if(fW){R(fO,fR.frontier,"text")}fS.stateAfter=bR(fR.mode,fQ)}else{dc(fO,fS.text,fQ);fS.stateAfter=fR.frontier%5==0?bR(fR.mode,fQ):null}++fR.frontier;if(+new Date>fP){dR(fO,fO.options.workDelay);return true}})})}function co(fU,fO,fR){var fP,fS,fT=fU.doc;var fQ=fR?-1:fO-(fU.doc.mode.innerMode?1000:100);for(var fX=fO;fX>fQ;--fX){if(fX<=fT.first){return fT.first}var fW=eP(fT,fX-1);if(fW.stateAfter&&(!fR||fX<=fT.frontier)){return fX}var fV=bI(fW.text,null,fU.options.tabSize);if(fS==null||fP>fV){fS=fX-1;fP=fV}}return fS}function dg(fO,fU,fP){var fS=fO.doc,fR=fO.display;if(!fS.mode.startState){return true}var fT=co(fO,fU,fP),fQ=fT>fS.first&&eP(fS,fT-1).stateAfter;if(!fQ){fQ=bP(fS.mode)}else{fQ=bR(fS.mode,fQ)}fS.iter(fT,fU,function(fV){dc(fO,fV.text,fQ);var fW=fT==fU-1||fT%5==0||fT>=fR.viewFrom&&fT<fR.viewTo;fV.stateAfter=fW?bR(fS.mode,fQ):null;++fT});if(fP){fS.frontier=fT}return fQ}function eI(fO){return fO.lineSpace.offsetTop}function bx(fO){return fO.mover.offsetHeight-fO.lineSpace.offsetHeight}function eG(fR){if(fR.cachedPaddingH){return fR.cachedPaddingH}var fQ=bG(fR.measure,fx("pre","x"));var fO=window.getComputedStyle?window.getComputedStyle(fQ):fQ.currentStyle;var fP={left:parseInt(fO.paddingLeft),right:parseInt(fO.paddingRight)};if(!isNaN(fP.left)&&!isNaN(fP.right)){fR.cachedPaddingH=fP}return fP}function b8(fV,fR,fU){var fQ=fV.options.lineWrapping;var fS=fQ&&fV.display.scroller.clientWidth;if(!fR.measure.heights||fQ&&fR.measure.width!=fS){var fT=fR.measure.heights=[];if(fQ){fR.measure.width=fS;var fX=fR.text.firstChild.getClientRects();for(var fO=0;fO<fX.length-1;fO++){var fW=fX[fO],fP=fX[fO+1];if(Math.abs(fW.bottom-fP.bottom)>2){fT.push((fW.bottom+fP.top)/2-fU.top)}}}fT.push(fU.bottom-fU.top)}}function cj(fQ,fO,fR){if(fQ.line==fO){return{map:fQ.measure.map,cache:fQ.measure.cache}}for(var fP=0;fP<fQ.rest.length;fP++){if(fQ.rest[fP]==fO){return{map:fQ.measure.maps[fP],cache:fQ.measure.caches[fP]}}}for(var fP=0;fP<fQ.rest.length;fP++){if(bC(fQ.rest[fP])>fR){return{map:fQ.measure.maps[fP],cache:fQ.measure.caches[fP],before:true}}}}function cK(fO,fQ){fQ=z(fQ);var fS=bC(fQ);var fP=fO.display.externalMeasured=new bl(fO.doc,fQ,fS);fP.lineN=fS;var fR=fP.built=ev(fO,fP);fP.text=fR.pre;bG(fO.display.lineMeasure,fR.pre);return fP}function dT(fO,fP,fR,fQ){return D(fO,aU(fO,fP),fR,fQ)}function eL(fO,fQ){if(fQ>=fO.display.viewFrom&&fQ<fO.display.viewTo){return fO.display.view[c7(fO,fQ)]}var fP=fO.display.externalMeasured;if(fP&&fQ>=fP.lineN&&fQ<fP.lineN+fP.size){return fP}}function aU(fO,fQ){var fR=bC(fQ);var fP=eL(fO,fR);if(fP&&!fP.text){fP=null}else{if(fP&&fP.changes){Z(fO,fP,fR,eM(fO))}}if(!fP){fP=cK(fO,fQ)}var fS=cj(fP,fQ,fR);return{line:fQ,view:fP,rect:null,map:fS.map,cache:fS.cache,before:fS.before,hasHeights:false}}function D(fO,fT,fR,fP){if(fT.before){fR=-1}var fQ=fR+(fP||""),fS;if(fT.cache.hasOwnProperty(fQ)){fS=fT.cache[fQ]}else{if(!fT.rect){fT.rect=fT.view.text.getBoundingClientRect()}if(!fT.hasHeights){b8(fO,fT.view,fT.rect);fT.hasHeights=true}fS=k(fO,fT,fR,fP);if(!fS.bogus){fT.cache[fQ]=fS}}return{left:fS.left,right:fS.right,top:fS.top,bottom:fS.bottom}}var ee={left:0,right:0,top:0,bottom:0};function k(fV,f3,fX,fT){var f6=f3.map;var f0,fS,fR,fO;for(var f2=0;f2<f6.length;f2+=3){var f5=f6[f2],f1=f6[f2+1];if(fX<f5){fS=0;fR=1;fO="left"}else{if(fX<f1){fS=fX-f5;fR=fS+1}else{if(f2==f6.length-3||fX==f1&&f6[f2+3]>fX){fR=f1-f5;fS=fR-1;if(fX>=f1){fO="right"}}}}if(fS!=null){f0=f6[f2+2];if(f5==f1&&fT==(f0.insertLeft?"left":"right")){fO=fT}if(fT=="left"&&fS==0){while(f2&&f6[f2-2]==f6[f2-3]&&f6[f2-1].insertLeft){f0=f6[(f2-=3)+2];fO="left"}}if(fT=="right"&&fS==f1-f5){while(f2<f6.length-3&&f6[f2+3]==f6[f2+4]&&!f6[f2+5].insertLeft){f0=f6[(f2+=3)+2];fO="right"}}break}}var fP;if(f0.nodeType==3){while(fS&&e0(f3.line.text.charAt(f5+fS))){--fS}while(f5+fR<f1&&e0(f3.line.text.charAt(f5+fR))){++fR}if(bY&&fS==0&&fR==f1-f5){fP=f0.parentNode.getBoundingClientRect()}else{if(dn&&fV.options.lineWrapping){var fQ=cb(f0,fS,fR).getClientRects();if(fQ.length){fP=fQ[fT=="right"?fQ.length-1:0]}else{fP=ee}}else{fP=cb(f0,fS,fR).getBoundingClientRect()||ee}}}else{if(fS>0){fO=fT="right"}var fQ;if(fV.options.lineWrapping&&(fQ=f0.getClientRects()).length>1){fP=fQ[fT=="right"?fQ.length-1:0]}else{fP=f0.getBoundingClientRect()}}if(bY&&!fS&&(!fP||!fP.left&&!fP.right)){var fU=f0.parentNode.getClientRects()[0];if(fU){fP={left:fU.left,right:fU.left+di(fV.display),top:fU.top,bottom:fU.bottom}}else{fP=ee}}var fZ,fY=(fP.bottom+fP.top)/2-f3.rect.top;var f4=f3.view.measure.heights;for(var f2=0;f2<f4.length-1;f2++){if(fY<f4[f2]){break}}fZ=f2?f4[f2-1]:0;fY=f4[f2];var fW={left:(fO=="right"?fP.right:fP.left)-f3.rect.left,right:(fO=="left"?fP.left:fP.right)-f3.rect.left,top:fZ,bottom:fY};if(!fP.left&&!fP.right){fW.bogus=true}return fW}function ap(fP){if(fP.measure){fP.measure.cache={};fP.measure.heights=null;if(fP.rest){for(var fO=0;fO<fP.rest.length;fO++){fP.measure.caches[fO]={}}}}}function aF(fO){fO.display.externalMeasure=null;dE(fO.display.lineMeasure);for(var fP=0;fP<fO.display.view.length;fP++){ap(fO.display.view[fP])}}function ai(fO){aF(fO);fO.display.cachedCharWidth=fO.display.cachedTextHeight=fO.display.cachedPaddingH=null;if(!fO.options.lineWrapping){fO.display.maxLineChanged=true}fO.display.lineNumChars=null}function ck(){return window.pageXOffset||(document.documentElement||document.body).scrollLeft}function ci(){return window.pageYOffset||(document.documentElement||document.body).scrollTop}function et(fU,fR,fT,fP){if(fR.widgets){for(var fQ=0;fQ<fR.widgets.length;++fQ){if(fR.widgets[fQ].above){var fW=cH(fR.widgets[fQ]);fT.top+=fW;fT.bottom+=fW}}}if(fP=="line"){return fT}if(!fP){fP="local"}var fS=bB(fR);if(fP=="local"){fS+=eI(fU.display)}else{fS-=fU.display.viewOffset}if(fP=="page"||fP=="window"){var fO=fU.display.lineSpace.getBoundingClientRect();fS+=fO.top+(fP=="window"?0:ci());var fV=fO.left+(fP=="window"?0:ck());fT.left+=fV;fT.right+=fV}fT.top+=fS;fT.bottom+=fS;return fT}function fK(fP,fS,fQ){if(fQ=="div"){return fS}var fU=fS.left,fT=fS.top;if(fQ=="page"){fU-=ck();fT-=ci()}else{if(fQ=="local"||!fQ){var fR=fP.display.sizer.getBoundingClientRect();fU+=fR.left;fT+=fR.top}}var fO=fP.display.lineSpace.getBoundingClientRect();return{left:fU-fO.left,top:fT-fO.top}}function cx(fO,fS,fR,fQ,fP){if(!fQ){fQ=eP(fO.doc,fS.line)}return et(fO,fQ,dT(fO,fQ,fS.ch,fP),fR)}function dx(fW,fV,fQ,fU,fY){fU=fU||eP(fW.doc,fV.line);if(!fY){fY=aU(fW,fU)}function fS(f1,f0){var fZ=D(fW,fY,f1,f0?"right":"left");if(f0){fZ.left=fZ.right}else{fZ.right=fZ.left}return et(fW,fU,fZ,fQ)}function fX(f2,fZ){var f0=fT[fZ],f1=f0.level%2;if(f2==dd(f0)&&fZ&&f0.level<fT[fZ-1].level){f0=fT[--fZ];f2=fJ(f0)-(f0.level%2?0:1);f1=true}else{if(f2==fJ(f0)&&fZ<fT.length-1&&f0.level<fT[fZ+1].level){f0=fT[++fZ];f2=dd(f0)-f0.level%2;f1=false}}if(f1&&f2==f0.to&&f2>f0.from){return fS(f2-1)}return fS(f2,f1)}var fT=a(fU),fO=fV.ch;if(!fT){return fS(fO)}var fP=aB(fT,fO);var fR=fX(fO,fP);if(eE!=null){fR.other=fX(fO,eE)}return fR}function dm(fO,fS){var fR=0,fS=fk(fO.doc,fS);if(!fO.options.lineWrapping){fR=di(fO.display)*fS.ch}var fP=eP(fO.doc,fS.line);var fQ=bB(fP)+eI(fO.display);return{left:fR,right:fR,top:fQ,bottom:fQ+fP.height}}function fw(fO,fP,fQ,fS){var fR=W(fO,fP);fR.xRel=fS;if(fQ){fR.outside=true}return fR}function fp(fV,fS,fR){var fU=fV.doc;fR+=fV.display.viewOffset;if(fR<0){return fw(fU.first,0,true,-1)}var fQ=bv(fU,fR),fW=fU.first+fU.size-1;if(fQ>fW){return fw(fU.first+fU.size-1,eP(fU,fW).text.length,true,1)}if(fS<0){fS=0}var fP=eP(fU,fQ);for(;;){var fX=cI(fV,fP,fQ,fS,fR);var fT=d7(fP);var fO=fT&&fT.find(0,true);if(fT&&(fX.ch>fO.from.ch||fX.ch==fO.from.ch&&fX.xRel>0)){fQ=bC(fP=fO.to.line)}else{return fX}}}function cI(fY,fQ,f1,f0,fZ){var fX=fZ-bB(fQ);var fU=false,f7=2*fY.display.wrapper.clientWidth;var f4=aU(fY,fQ);function gb(gd){var ge=dx(fY,W(f1,gd),"line",fQ,f4);fU=true;if(fX>ge.bottom){return ge.left-f7}else{if(fX<ge.top){return ge.left+f7}else{fU=false}}return ge.left}var f3=a(fQ),f6=fQ.text.length;var f8=ct(fQ),fR=cE(fQ);var f5=gb(f8),fO=fU,fP=gb(fR),fT=fU;if(f0>fP){return fw(f1,fR,fT,1)}for(;;){if(f3?fR==f8||fR==v(fQ,f8,1):fR-f8<=1){var f2=f0<f5||f0-f5<=fP-f0?f8:fR;var ga=f0-(f2==f8?f5:fP);while(e0(fQ.text.charAt(f2))){++f2}var fW=fw(f1,f2,f2==f8?fO:fT,ga<-1?-1:ga>1?1:0);return fW}var fV=Math.ceil(f6/2),gc=f8+fV;if(f3){gc=f8;for(var f9=0;f9<fV;++f9){gc=v(fQ,gc,1)}}var fS=gb(gc);if(fS>f0){fR=gc;fP=fS;if(fT=fU){fP+=1000}f6=fV}else{f8=gc;f5=fS;fO=fU;f6-=fV}}}var aC;function aN(fQ){if(fQ.cachedTextHeight!=null){return fQ.cachedTextHeight}if(aC==null){aC=fx("pre");for(var fP=0;fP<49;++fP){aC.appendChild(document.createTextNode("x"));aC.appendChild(fx("br"))}aC.appendChild(document.createTextNode("x"))}bG(fQ.measure,aC);var fO=aC.offsetHeight/50;if(fO>3){fQ.cachedTextHeight=fO}dE(fQ.measure);return fO||1}function di(fS){if(fS.cachedCharWidth!=null){return fS.cachedCharWidth}var fO=fx("span","xxxxxxxxxx");var fR=fx("pre",[fO]);bG(fS.measure,fR);var fQ=fO.getBoundingClientRect(),fP=(fQ.right-fQ.left)/10;if(fP>2){fS.cachedCharWidth=fP}return fP||10}var dL=0;function cw(fO){fO.curOp={viewChanged:false,startHeight:fO.doc.height,forceUpdate:false,updateInput:null,typing:false,changeObjs:null,cursorActivityHandlers:null,selectionChanged:false,updateMaxLine:false,scrollLeft:null,scrollTop:null,scrollToPos:null,id:++dL};if(!ch++){be=[]}}function aj(fZ){var fU=fZ.curOp,fY=fZ.doc,fV=fZ.display;fZ.curOp=null;if(fU.updateMaxLine){h(fZ)}if(fU.viewChanged||fU.forceUpdate||fU.scrollTop!=null||fU.scrollToPos&&(fU.scrollToPos.from.line<fV.viewFrom||fU.scrollToPos.to.line>=fV.viewTo)||fV.maxLineChanged&&fZ.options.lineWrapping){var fS=dp(fZ,{top:fU.scrollTop,ensure:fU.scrollToPos},fU.forceUpdate);if(fZ.display.scroller.offsetHeight){fZ.doc.scrollTop=fZ.display.scroller.scrollTop}}if(!fS&&fU.selectionChanged){br(fZ)}if(!fS&&fU.startHeight!=fZ.doc.height){eB(fZ)}if(fV.wheelStartX!=null&&(fU.scrollTop!=null||fU.scrollLeft!=null||fU.scrollToPos)){fV.wheelStartX=fV.wheelStartY=null}if(fU.scrollTop!=null&&fV.scroller.scrollTop!=fU.scrollTop){var fW=Math.max(0,Math.min(fV.scroller.scrollHeight-fV.scroller.clientHeight,fU.scrollTop));fV.scroller.scrollTop=fV.scrollbarV.scrollTop=fY.scrollTop=fW}if(fU.scrollLeft!=null&&fV.scroller.scrollLeft!=fU.scrollLeft){var fP=Math.max(0,Math.min(fV.scroller.scrollWidth-fV.scroller.clientWidth,fU.scrollLeft));fV.scroller.scrollLeft=fV.scrollbarH.scrollLeft=fY.scrollLeft=fP;ei(fZ)}if(fU.scrollToPos){var fX=E(fZ,fk(fZ.doc,fU.scrollToPos.from),fk(fZ.doc,fU.scrollToPos.to),fU.scrollToPos.margin);if(fU.scrollToPos.isCursor&&fZ.state.focused){dJ(fZ,fX)}}if(fU.selectionChanged){p(fZ)}if(fZ.state.focused&&fU.updateInput){eZ(fZ,fU.typing)}var fT=fU.maybeHiddenMarkers,fO=fU.maybeUnhiddenMarkers;if(fT){for(var fR=0;fR<fT.length;++fR){if(!fT[fR].lines.length){az(fT[fR],"hide")}}}if(fO){for(var fR=0;fR<fO.length;++fR){if(fO[fR].lines.length){az(fO[fR],"unhide")}}}var fQ;if(!--ch){fQ=be;be=null}if(fU.changeObjs){az(fZ,"changes",fZ,fU.changeObjs)}if(fQ){for(var fR=0;fR<fQ.length;++fR){fQ[fR]()}}if(fU.cursorActivityHandlers){for(var fR=0;fR<fU.cursorActivityHandlers.length;fR++){fU.cursorActivityHandlers[fR](fZ)}}}function cz(fO,fP){if(fO.curOp){return fP()}cw(fO);try{return fP()}finally{aj(fO)}}function cL(fO,fP){return function(){if(fO.curOp){return fP.apply(fO,arguments)}cw(fO);try{return fP.apply(fO,arguments)}finally{aj(fO)}}}function cR(fO){return function(){if(this.curOp){return fO.apply(this,arguments)}cw(this);try{return fO.apply(this,arguments)}finally{aj(this)}}}function cs(fO){return function(){var fP=this.cm;if(!fP||fP.curOp){return fO.apply(this,arguments)}cw(fP);try{return fO.apply(this,arguments)}finally{aj(fP)}}}function bl(fQ,fO,fP){this.line=fO;this.rest=i(fO);this.size=this.rest?bC(fi(this.rest))-fP+1:1;this.node=this.text=null;this.hidden=e7(fQ,fO)}function ey(fO,fU,fT){var fS=[],fQ;for(var fR=fU;fR<fT;fR=fQ){var fP=new bl(fO.doc,eP(fO.doc,fR),fR);fQ=fR+fP.size;fS.push(fP)}return fS}function af(fV,fT,fU,fW){if(fT==null){fT=fV.doc.first}if(fU==null){fU=fV.doc.first+fV.doc.size}if(!fW){fW=0}var fQ=fV.display;if(fW&&fU<fQ.viewTo&&(fQ.updateLineNumbers==null||fQ.updateLineNumbers>fT)){fQ.updateLineNumbers=fT}fV.curOp.viewChanged=true;if(fT>=fQ.viewTo){if(aX&&aM(fV.doc,fT)<fQ.viewTo){d9(fV)}}else{if(fU<=fQ.viewFrom){if(aX&&dG(fV.doc,fU+fW)>fQ.viewFrom){d9(fV)}else{fQ.viewFrom+=fW;fQ.viewTo+=fW}}else{if(fT<=fQ.viewFrom&&fU>=fQ.viewTo){d9(fV)}else{if(fT<=fQ.viewFrom){var fS=cX(fV,fU,fU+fW,1);if(fS){fQ.view=fQ.view.slice(fS.index);fQ.viewFrom=fS.lineN;fQ.viewTo+=fW}else{d9(fV)}}else{if(fU>=fQ.viewTo){var fS=cX(fV,fT,fT,-1);if(fS){fQ.view=fQ.view.slice(0,fS.index);fQ.viewTo=fS.lineN}else{d9(fV)}}else{var fR=cX(fV,fT,fT,-1);var fP=cX(fV,fU,fU+fW,1);if(fR&&fP){fQ.view=fQ.view.slice(0,fR.index).concat(ey(fV,fR.lineN,fP.lineN)).concat(fQ.view.slice(fP.index));fQ.viewTo+=fW}else{d9(fV)}}}}}}var fO=fQ.externalMeasured;if(fO){if(fU<fO.lineN){fO.lineN+=fW}else{if(fT<fO.lineN+fO.size){fQ.externalMeasured=null}}}}function R(fP,fQ,fT){fP.curOp.viewChanged=true;var fU=fP.display,fS=fP.display.externalMeasured;if(fS&&fQ>=fS.lineN&&fQ<fS.lineN+fS.size){fU.externalMeasured=null}if(fQ<fU.viewFrom||fQ>=fU.viewTo){return}var fR=fU.view[c7(fP,fQ)];if(fR.node==null){return}var fO=fR.changes||(fR.changes=[]);if(c1(fO,fT)==-1){fO.push(fT)}}function d9(fO){fO.display.viewFrom=fO.display.viewTo=fO.doc.first;fO.display.view=[];fO.display.viewOffset=0}function c7(fO,fR){if(fR>=fO.display.viewTo){return null}fR-=fO.display.viewFrom;if(fR<0){return null}var fP=fO.display.view;for(var fQ=0;fQ<fP.length;fQ++){fR-=fP[fQ].size;if(fR<0){return fQ}}}function cX(fW,fQ,fS,fP){var fT=c7(fW,fQ),fV,fU=fW.display.view;if(!aX||fS==fW.doc.first+fW.doc.size){return{index:fT,lineN:fS}}for(var fR=0,fO=fW.display.viewFrom;fR<fT;fR++){fO+=fU[fR].size}if(fO!=fQ){if(fP>0){if(fT==fU.length-1){return null}fV=(fO+fU[fT].size)-fQ;fT++}else{fV=fO-fQ}fQ+=fV;fS+=fV}while(aM(fW.doc,fS)!=fS){if(fT==(fP<0?0:fU.length-1)){return null}fS+=fP*fU[fT-(fP<0?1:0)].size;fT+=fP}return{index:fT,lineN:fS}}function cD(fO,fS,fR){var fQ=fO.display,fP=fQ.view;if(fP.length==0||fS>=fQ.viewTo||fR<=fQ.viewFrom){fQ.view=ey(fO,fS,fR);fQ.viewFrom=fS}else{if(fQ.viewFrom>fS){fQ.view=ey(fO,fS,fQ.viewFrom).concat(fQ.view)}else{if(fQ.viewFrom<fS){fQ.view=fQ.view.slice(c7(fO,fS))}}fQ.viewFrom=fS;if(fQ.viewTo<fR){fQ.view=fQ.view.concat(ey(fO,fQ.viewTo,fR))}else{if(fQ.viewTo>fR){fQ.view=fQ.view.slice(0,c7(fO,fR))}}}fQ.viewTo=fR}function cU(fO){var fP=fO.display.view,fS=0;for(var fR=0;fR<fP.length;fR++){var fQ=fP[fR];if(!fQ.hidden&&(!fQ.node||fQ.changes)){++fS}}return fS}function bc(fO){if(fO.display.pollingFast){return}fO.display.poll.set(fO.options.pollInterval,function(){b7(fO);if(fO.state.focused){bc(fO)}})}function C(fO){var fP=false;fO.display.pollingFast=true;function fQ(){var fR=b7(fO);if(!fR&&!fP){fP=true;fO.display.poll.set(60,fQ)}else{fO.display.pollingFast=false;bc(fO)}}fO.display.poll.set(20,fQ)}function b7(fS){var fT=fS.display.input,fW=fS.display.prevInput,f7=fS.doc;if(!fS.state.focused||(bi(fT)&&!fW)||ah(fS)||fS.options.disableInput){return false}if(fS.state.pasteIncoming&&fS.state.fakedLastChar){fT.value=fT.value.substring(0,fT.value.length-1);fS.state.fakedLastChar=false}var fV=fT.value;if(fV==fW&&!fS.somethingSelected()){return false}if(dn&&!bY&&fS.display.inputHasSelection===fV){eZ(fS);return false}var f3=!fS.curOp;if(f3){cw(fS)}fS.display.shift=false;if(fV.charCodeAt(0)==8203&&f7.sel==fS.display.selForContextMenu&&!fW){fW="\u200b"}var f2=0,fZ=Math.min(fW.length,fV.length);while(f2<fZ&&fW.charCodeAt(f2)==fV.charCodeAt(f2)){++f2}var fP=fV.slice(f2),fX=aQ(fP);var f6=fS.state.pasteIncoming&&fX.length>1&&f7.sel.ranges.length==fX.length;for(var f4=f7.sel.ranges.length-1;f4>=0;f4--){var fY=f7.sel.ranges[f4];var f0=fY.from(),fO=fY.to();if(f2<fW.length){f0=W(f0.line,f0.ch-(fW.length-f2))}else{if(fS.state.overwrite&&fY.empty()&&!fS.state.pasteIncoming){fO=W(fO.line,Math.min(eP(f7,fO.line).text.length,fO.ch+fi(fX).length))}}var fR=fS.curOp.updateInput;var f5={from:f0,to:fO,text:f6?[fX[f4]]:fX,origin:fS.state.pasteIncoming?"paste":fS.state.cutIncoming?"cut":"+input"};a5(fS.doc,f5);ac(fS,"inputRead",fS,f5);if(fP&&!fS.state.pasteIncoming&&fS.options.electricChars&&fS.options.smartIndent&&fY.head.ch<100&&(!f4||f7.sel.ranges[f4-1].head.line!=fY.head.line)){var fU=fS.getModeAt(fY.head);if(fU.electricChars){for(var f1=0;f1<fU.electricChars.length;f1++){if(fP.indexOf(fU.electricChars.charAt(f1))>-1){ab(fS,fY.head.line,"smart");break}}}else{if(fU.electricInput){var fQ=cG(f5);if(fU.electricInput.test(eP(f7,fQ.line).text.slice(0,fQ.ch))){ab(fS,fY.head.line,"smart")}}}}}fh(fS);fS.curOp.updateInput=fR;fS.curOp.typing=true;if(fV.length>1000||fV.indexOf("\n")>-1){fT.value=fS.display.prevInput=""}else{fS.display.prevInput=fV}if(f3){aj(fS)}fS.state.pasteIncoming=fS.state.cutIncoming=false;return true}function eZ(fO,fS){var fP,fR,fU=fO.doc;if(fO.somethingSelected()){fO.display.prevInput="";var fQ=fU.sel.primary();fP=cT&&(fQ.to().line-fQ.from().line>100||(fR=fO.getSelection()).length>1000);var fT=fP?"-":fR||fO.getSelection();fO.display.input.value=fT;if(fO.state.focused){dq(fO.display.input)}if(dn&&!bY){fO.display.inputHasSelection=fT}}else{if(!fS){fO.display.prevInput=fO.display.input.value="";if(dn&&!bY){fO.display.inputHasSelection=null}}}fO.display.inaccurateSelection=fP}function ed(fO){if(fO.options.readOnly!="nocursor"&&(!dS||ds()!=fO.display.input)){fO.display.input.focus()}}function s(fO){if(!fO.state.focused){ed(fO);cq(fO)}}function ah(fO){return fO.options.readOnly||fO.doc.cantEdit}function fq(fO){var fQ=fO.display;bM(fQ.scroller,"mousedown",cL(fO,d5));if(eo){bM(fQ.scroller,"dblclick",cL(fO,function(fU){if(aI(fO,fU)){return}var fV=cd(fO,fU);if(!fV||m(fO,fU)||a0(fO.display,fU)){return}cu(fU);var fT=ar(fO,fV);fu(fO.doc,fT.anchor,fT.head)}))}else{bM(fQ.scroller,"dblclick",function(fT){aI(fO,fT)||cu(fT)})}bM(fQ.lineSpace,"selectstart",function(fT){if(!a0(fQ,fT)){cu(fT)}});if(!fF){bM(fQ.scroller,"contextmenu",function(fT){av(fO,fT)})}bM(fQ.scroller,"scroll",function(){if(fQ.scroller.clientHeight){N(fO,fQ.scroller.scrollTop);bt(fO,fQ.scroller.scrollLeft,true);az(fO,"scroll",fO)}});bM(fQ.scrollbarV,"scroll",function(){if(fQ.scroller.clientHeight){N(fO,fQ.scrollbarV.scrollTop)}});bM(fQ.scrollbarH,"scroll",function(){if(fQ.scroller.clientHeight){bt(fO,fQ.scrollbarH.scrollLeft)}});bM(fQ.scroller,"mousewheel",function(fT){c(fO,fT)});bM(fQ.scroller,"DOMMouseScroll",function(fT){c(fO,fT)});function fS(){if(fO.state.focused){setTimeout(cl(ed,fO),0)}}bM(fQ.scrollbarH,"mousedown",fS);bM(fQ.scrollbarV,"mousedown",fS);bM(fQ.wrapper,"scroll",function(){fQ.wrapper.scrollTop=fQ.wrapper.scrollLeft=0});bM(fQ.input,"keyup",cL(fO,a7));bM(fQ.input,"input",function(){if(dn&&!bY&&fO.display.inputHasSelection){fO.display.inputHasSelection=null}C(fO)});bM(fQ.input,"keydown",cL(fO,q));bM(fQ.input,"keypress",cL(fO,cn));bM(fQ.input,"focus",cl(cq,fO));bM(fQ.input,"blur",cl(aL,fO));function fP(fT){if(!aI(fO,fT)){d3(fT)}}if(fO.options.dragDrop){bM(fQ.scroller,"dragstart",function(fT){Q(fO,fT)});bM(fQ.scroller,"dragenter",fP);bM(fQ.scroller,"dragover",fP);bM(fQ.scroller,"drop",cL(fO,a9))}bM(fQ.scroller,"paste",function(fT){if(a0(fQ,fT)){return}fO.state.pasteIncoming=true;ed(fO);C(fO)});bM(fQ.input,"paste",function(){if(cJ&&!fO.state.fakedLastChar&&!(new Date-fO.state.lastMiddleDown<200)){var fU=fQ.input.selectionStart,fT=fQ.input.selectionEnd;fQ.input.value+="$";fQ.input.selectionStart=fU;fQ.input.selectionEnd=fT;fO.state.fakedLastChar=true}fO.state.pasteIncoming=true;C(fO)});function fR(fX){if(fO.somethingSelected()){if(fQ.inaccurateSelection){fQ.prevInput="";fQ.inaccurateSelection=false;fQ.input.value=fO.getSelection();dq(fQ.input)}}else{var fY="",fU=[];for(var fV=0;fV<fO.doc.sel.ranges.length;fV++){var fT=fO.doc.sel.ranges[fV].head.line;var fW={anchor:W(fT,0),head:W(fT+1,0)};fU.push(fW);fY+=fO.getRange(fW.anchor,fW.head)}if(fX.type=="cut"){fO.setSelections(fU,null,Y)}else{fQ.prevInput="";fQ.input.value=fY;dq(fQ.input)}}if(fX.type=="cut"){fO.state.cutIncoming=true}}bM(fQ.input,"cut",fR);bM(fQ.input,"copy",fR);if(a1){bM(fQ.sizer,"mouseup",function(){if(ds()==fQ.input){fQ.input.blur()}ed(fO)})}}function aK(fO){var fP=fO.display;fP.cachedCharWidth=fP.cachedTextHeight=fP.cachedPaddingH=null;fO.setSize()}function a0(fP,fO){for(var fQ=L(fO);fQ!=fP.wrapper;fQ=fQ.parentNode){if(!fQ||fQ.ignoreEvents||fQ.parentNode==fP.sizer&&fQ!=fP.mover){return true}}}function cd(fY,fS,fP,fQ){var fU=fY.display;if(!fP){var fT=L(fS);if(fT==fU.scrollbarH||fT==fU.scrollbarV||fT==fU.scrollbarFiller||fT==fU.gutterFiller){return null}}var fX,fV,fO=fU.lineSpace.getBoundingClientRect();try{fX=fS.clientX-fO.left;fV=fS.clientY-fO.top}catch(fS){return null}var fW=fp(fY,fX,fV),fZ;if(fQ&&fW.xRel==1&&(fZ=eP(fY.doc,fW.line).text).length==fW.ch){var fR=bI(fZ,fZ.length,fY.options.tabSize)-fZ.length;fW=W(fW.line,Math.max(0,Math.round((fX-eG(fY.display).left)/di(fY.display))-fR))}return fW}function d5(fQ){if(aI(this,fQ)){return}var fO=this,fP=fO.display;fP.shift=fQ.shiftKey;if(a0(fP,fQ)){if(!cJ){fP.scroller.draggable=false;setTimeout(function(){fP.scroller.draggable=true},100)}return}if(m(fO,fQ)){return}var fR=cd(fO,fQ);window.focus();switch(fo(fQ)){case 1:if(fR){au(fO,fQ,fR)}else{if(L(fQ)==fP.scroller){cu(fQ)}}break;case 2:if(cJ){fO.state.lastMiddleDown=+new Date}if(fR){fu(fO.doc,fR)}setTimeout(cl(ed,fO),20);cu(fQ);break;case 3:if(fF){av(fO,fQ)}break}}var c4,cW;function au(fP,fT,fU){setTimeout(cl(s,fP),0);var fQ=+new Date,fR;if(cW&&cW.time>fQ-400&&b5(cW.pos,fU)==0){fR="triple"}else{if(c4&&c4.time>fQ-400&&b5(c4.pos,fU)==0){fR="double";cW={time:fQ,pos:fU}}else{fR="single";c4={time:fQ,pos:fU}}}var fS=fP.doc.sel,fO=bU?fT.metaKey:fT.ctrlKey;if(fP.options.dragDrop&&ep&&!ah(fP)&&fR=="single"&&fS.contains(fU)>-1&&fS.somethingSelected()){aT(fP,fT,fU,fO)}else{n(fP,fT,fU,fR,fO)}}function aT(fQ,fS,fT,fP){var fR=fQ.display;var fO=cL(fQ,function(fU){if(cJ){fR.scroller.draggable=false}fQ.state.draggingText=false;dP(document,"mouseup",fO);dP(fR.scroller,"drop",fO);if(Math.abs(fS.clientX-fU.clientX)+Math.abs(fS.clientY-fU.clientY)<10){cu(fU);if(!fP){fu(fQ.doc,fT)}ed(fQ);if(eo&&!bY){setTimeout(function(){document.body.focus();ed(fQ)},20)}}});if(cJ){fR.scroller.draggable=true}fQ.state.draggingText=fO;if(fR.scroller.dragDrop){fR.scroller.dragDrop()}bM(document,"mouseup",fO);bM(fR.scroller,"drop",fO)}function n(fR,f5,fQ,fO,fT){var f2=fR.display,f7=fR.doc;cu(f5);var fP,f6,fS=f7.sel;if(fT&&!f5.shiftKey){f6=f7.sel.contains(fQ);if(f6>-1){fP=f7.sel.ranges[f6]}else{fP=new dB(fQ,fQ)}}else{fP=f7.sel.primary()}if(f5.altKey){fO="rect";if(!fT){fP=new dB(fQ,fQ)}fQ=cd(fR,f5,true,true);f6=-1}else{if(fO=="double"){var f3=ar(fR,fQ);if(fR.display.shift||f7.extend){fP=e6(f7,fP,f3.anchor,f3.head)}else{fP=f3}}else{if(fO=="triple"){var fW=new dB(W(fQ.line,0),fk(f7,W(fQ.line+1,0)));if(fR.display.shift||f7.extend){fP=e6(f7,fP,fW.anchor,fW.head)}else{fP=fW}}else{fP=e6(f7,fP,fQ)}}}if(!fT){f6=0;bJ(f7,new fy([fP],0),M);fS=f7.sel}else{if(f6>-1){f(f7,f6,fP,M)}else{f6=f7.sel.ranges.length;bJ(f7,cm(f7.sel.ranges.concat([fP]),f6),{scroll:false,origin:"*mouse"})}}var f1=fQ;function f0(gi){if(b5(f1,gi)==0){return}f1=gi;if(fO=="rect"){var f9=[],gf=fR.options.tabSize;var f8=bI(eP(f7,fQ.line).text,fQ.ch,gf);var gl=bI(eP(f7,gi.line).text,gi.ch,gf);var ga=Math.min(f8,gl),gj=Math.max(f8,gl);for(var gm=Math.min(fQ.line,gi.line),gc=Math.min(fR.lastLine(),Math.max(fQ.line,gi.line));gm<=gc;gm++){var gk=eP(f7,gm).text,gb=d2(gk,ga,gf);if(ga==gj){f9.push(new dB(W(gm,gb),W(gm,gb)))}else{if(gk.length>gb){f9.push(new dB(W(gm,gb),W(gm,d2(gk,gj,gf))))}}}if(!f9.length){f9.push(new dB(fQ,fQ))}bJ(f7,cm(fS.ranges.slice(0,f6).concat(f9),f6),{origin:"*mouse",scroll:false});fR.scrollIntoView(gi)}else{var gg=fP;var gd=gg.anchor,gh=gi;if(fO!="single"){if(fO=="double"){var ge=ar(fR,gi)}else{var ge=new dB(W(gi.line,0),fk(f7,W(gi.line+1,0)))}if(b5(ge.anchor,gd)>0){gh=ge.head;gd=am(gg.from(),ge.anchor)}else{gh=ge.anchor;gd=bn(gg.to(),ge.head)}}var f9=fS.ranges.slice(0);f9[f6]=new dB(fk(f7,gd),gh);bJ(f7,cm(f9,f6),M)}}var fY=f2.wrapper.getBoundingClientRect();var fU=0;function f4(ga){var f8=++fU;var gc=cd(fR,ga,true,fO=="rect");if(!gc){return}if(b5(gc,f1)!=0){s(fR);f0(gc);var gb=bT(f2,f7);if(gc.line>=gb.to||gc.line<gb.from){setTimeout(cL(fR,function(){if(fU==f8){f4(ga)}}),150)}}else{var f9=ga.clientY<fY.top?-20:ga.clientY>fY.bottom?20:0;if(f9){setTimeout(cL(fR,function(){if(fU!=f8){return}f2.scroller.scrollTop+=f9;f4(ga)}),50)}}}function fX(f8){fU=Infinity;cu(f8);ed(fR);dP(document,"mousemove",fZ);dP(document,"mouseup",fV);f7.history.lastSelOrigin=null}var fZ=cL(fR,function(f8){if((dn&&!bX)?!f8.buttons:!fo(f8)){fX(f8)}else{f4(f8)}});var fV=cL(fR,fX);bM(document,"mousemove",fZ);bM(document,"mouseup",fV)}function fM(fZ,fV,fX,fY,fR){try{var fP=fV.clientX,fO=fV.clientY}catch(fV){return false}if(fP>=Math.floor(fZ.display.gutters.getBoundingClientRect().right)){return false}if(fY){cu(fV)}var fW=fZ.display;var fU=fW.lineDiv.getBoundingClientRect();if(fO>fU.bottom||!eS(fZ,fX)){return bA(fV)}fO-=fU.top-fW.viewOffset;for(var fS=0;fS<fZ.options.gutters.length;++fS){var fT=fW.gutters.childNodes[fS];if(fT&&fT.getBoundingClientRect().right>=fP){var f0=bv(fZ.doc,fO);var fQ=fZ.options.gutters[fS];fR(fZ,fX,fZ,f0,fQ,fV);return bA(fV)}}}function m(fO,fP){return fM(fO,fP,"gutterClick",true,ac)}var ae=0;function a9(fU){var fW=this;if(aI(fW,fU)||a0(fW.display,fU)){return}cu(fU);if(dn){ae=+new Date}var fV=cd(fW,fU,true),fO=fU.dataTransfer.files;if(!fV||ah(fW)){return}if(fO&&fO.length&&window.FileReader&&window.File){var fQ=fO.length,fX=Array(fQ),fP=0;var fS=function(f0,fZ){var fY=new FileReader;fY.onload=cL(fW,function(){fX[fZ]=fY.result;if(++fP==fQ){fV=fk(fW.doc,fV);var f1={from:fV,to:fV,text:aQ(fX.join("\n")),origin:"paste"};a5(fW.doc,f1);eH(fW.doc,eu(fV,cG(f1)))}});fY.readAsText(f0)};for(var fT=0;fT<fQ;++fT){fS(fO[fT],fT)}}else{if(fW.state.draggingText&&fW.doc.sel.contains(fV)>-1){fW.state.draggingText(fU);setTimeout(cl(ed,fW),20);return}try{var fX=fU.dataTransfer.getData("Text");if(fX){if(fW.state.draggingText&&!(bU?fU.metaKey:fU.ctrlKey)){var fR=fW.listSelections()}d1(fW.doc,eu(fV,fV));if(fR){for(var fT=0;fT<fR.length;++fT){aR(fW.doc,"",fR[fT].anchor,fR[fT].head,"drag")}}fW.replaceSelection(fX,"around","paste");ed(fW)}}catch(fU){}}}function Q(fO,fQ){if(dn&&(!fO.state.draggingText||+new Date-ae<100)){d3(fQ);return}if(aI(fO,fQ)||a0(fO.display,fQ)){return}fQ.dataTransfer.setData("Text",fO.getSelection());if(fQ.dataTransfer.setDragImage&&!ay){var fP=fx("img",null,null,"position: fixed; left: 0; top: 0;");fP.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==";if(dF){fP.width=fP.height=1;fO.display.wrapper.appendChild(fP);fP._top=fP.offsetTop}fQ.dataTransfer.setDragImage(fP,0,0);if(dF){fP.parentNode.removeChild(fP)}}}function N(fO,fP){if(Math.abs(fO.doc.scrollTop-fP)<2){return}fO.doc.scrollTop=fP;if(!ce){dp(fO,{top:fP})}if(fO.display.scroller.scrollTop!=fP){fO.display.scroller.scrollTop=fP}if(fO.display.scrollbarV.scrollTop!=fP){fO.display.scrollbarV.scrollTop=fP}if(ce){dp(fO)}dR(fO,100)}function bt(fO,fQ,fP){if(fP?fQ==fO.doc.scrollLeft:Math.abs(fO.doc.scrollLeft-fQ)<2){return}fQ=Math.min(fQ,fO.display.scroller.scrollWidth-fO.display.scroller.clientWidth);fO.doc.scrollLeft=fQ;ei(fO);if(fO.display.scroller.scrollLeft!=fQ){fO.display.scroller.scrollLeft=fQ}if(fO.display.scrollbarH.scrollLeft!=fQ){fO.display.scrollbarH.scrollLeft=fQ}}var eW=0,b6=null;if(dn){b6=-0.53}else{if(ce){b6=15}else{if(cV){b6=-0.7}else{if(ay){b6=-1/3}}}}function c(fW,fQ){var fZ=fQ.wheelDeltaX,fY=fQ.wheelDeltaY;if(fZ==null&&fQ.detail&&fQ.axis==fQ.HORIZONTAL_AXIS){fZ=fQ.detail}if(fY==null&&fQ.detail&&fQ.axis==fQ.VERTICAL_AXIS){fY=fQ.detail}else{if(fY==null){fY=fQ.wheelDelta}}var fS=fW.display,fV=fS.scroller;if(!(fZ&&fV.scrollWidth>fV.clientWidth||fY&&fV.scrollHeight>fV.clientHeight)){return}if(fY&&bU&&cJ){outer:for(var fX=fQ.target,fU=fS.view;fX!=fV;fX=fX.parentNode){for(var fP=0;fP<fU.length;fP++){if(fU[fP].node==fX){fW.display.currentWheelTarget=fX;break outer}}}}if(fZ&&!ce&&!dF&&b6!=null){if(fY){N(fW,Math.max(0,Math.min(fV.scrollTop+fY*b6,fV.scrollHeight-fV.clientHeight)))}bt(fW,Math.max(0,Math.min(fV.scrollLeft+fZ*b6,fV.scrollWidth-fV.clientWidth)));cu(fQ);fS.wheelStartX=null;return}if(fY&&b6!=null){var fO=fY*b6;var fT=fW.doc.scrollTop,fR=fT+fS.wrapper.clientHeight;if(fO<0){fT=Math.max(0,fT+fO-50)}else{fR=Math.min(fW.doc.height,fR+fO+50)}dp(fW,{top:fT,bottom:fR})}if(eW<20){if(fS.wheelStartX==null){fS.wheelStartX=fV.scrollLeft;fS.wheelStartY=fV.scrollTop;fS.wheelDX=fZ;fS.wheelDY=fY;setTimeout(function(){if(fS.wheelStartX==null){return}var f0=fV.scrollLeft-fS.wheelStartX;var f2=fV.scrollTop-fS.wheelStartY;var f1=(f2&&fS.wheelDY&&f2/fS.wheelDY)||(f0&&fS.wheelDX&&f0/fS.wheelDX);fS.wheelStartX=fS.wheelStartY=null;if(!f1){return}b6=(b6*eW+f1)/(eW+1);++eW},200)}else{fS.wheelDX+=fZ;fS.wheelDY+=fY}}}function fr(fP,fS,fO){if(typeof fS=="string"){fS=eh[fS];if(!fS){return false}}if(fP.display.pollingFast&&b7(fP)){fP.display.pollingFast=false}var fR=fP.display.shift,fQ=false;try{if(ah(fP)){fP.state.suppressEdits=true}if(fO){fP.display.shift=false}fQ=fS(fP)!=bZ}finally{fP.display.shift=fR;fP.state.suppressEdits=false}return fQ}function c9(fO){var fP=fO.state.keyMaps.slice(0);if(fO.options.extraKeys){fP.push(fO.options.extraKeys)}fP.push(fO.options.keyMap);return fP}var an;function eT(fO,fU){var fP=fv(fO.options.keyMap),fS=fP.auto;clearTimeout(an);if(fS&&!eg(fU)){an=setTimeout(function(){if(fv(fO.options.keyMap)==fP){fO.options.keyMap=(fS.call?fS.call(null,fO):fS);fL(fO)}},50)}var fR=e2(fU,true),fT=false;if(!fR){return false}var fQ=c9(fO);if(fU.shiftKey){fT=j("Shift-"+fR,fQ,function(fV){return fr(fO,fV,true)})||j(fR,fQ,function(fV){if(typeof fV=="string"?/^go[A-Z]/.test(fV):fV.motion){return fr(fO,fV)}})}else{fT=j(fR,fQ,function(fV){return fr(fO,fV)})}if(fT){cu(fU);p(fO);ac(fO,"keyHandled",fO,fR,fU)}return fT}function dV(fO,fR,fP){var fQ=j("'"+fP+"'",c9(fO),function(fS){return fr(fO,fS,true)});if(fQ){cu(fR);p(fO);ac(fO,"keyHandled",fO,"'"+fP+"'",fR)}return fQ}var c3=null;function q(fR){var fO=this;s(fO);if(aI(fO,fR)){return}if(eo&&fR.keyCode==27){fR.returnValue=false}var fP=fR.keyCode;fO.display.shift=fP==16||fR.shiftKey;var fQ=eT(fO,fR);if(dF){c3=fQ?fP:null;if(!fQ&&fP==88&&!cT&&(bU?fR.metaKey:fR.ctrlKey)){fO.replaceSelection("",null,"cut")}}if(fP==18&&!/\bCodeMirror-crosshair\b/.test(fO.display.lineDiv.className)){aq(fO)}}function aq(fP){var fQ=fP.display.lineDiv;fb(fQ,"CodeMirror-crosshair");function fO(fR){if(fR.keyCode==18||!fR.altKey){g(fQ,"CodeMirror-crosshair");dP(document,"keyup",fO);dP(document,"mouseover",fO)}}bM(document,"keyup",fO);bM(document,"mouseover",fO)}function a7(fO){if(aI(this,fO)){return}if(fO.keyCode==16){this.doc.sel.shift=false}}function cn(fS){var fO=this;if(aI(fO,fS)){return}var fR=fS.keyCode,fP=fS.charCode;if(dF&&fR==c3){c3=null;cu(fS);return}if(((dF&&(!fS.which||fS.which<10))||a1)&&eT(fO,fS)){return}var fQ=String.fromCharCode(fP==null?fR:fP);if(dV(fO,fS,fQ)){return}if(dn&&!bY){fO.display.inputHasSelection=null}C(fO)}function cq(fO){if(fO.options.readOnly=="nocursor"){return}if(!fO.state.focused){az(fO,"focus",fO);fO.state.focused=true;fb(fO.display.wrapper,"CodeMirror-focused");if(!fO.curOp&&fO.display.selForContextMenu!=fO.doc.sel){eZ(fO);if(cJ){setTimeout(cl(eZ,fO,true),0)}}}bc(fO);p(fO)}function aL(fO){if(fO.state.focused){az(fO,"blur",fO);fO.state.focused=false;g(fO.display.wrapper,"CodeMirror-focused")}clearInterval(fO.display.blinker);setTimeout(function(){if(!fO.state.focused){fO.display.shift=false}},150)}function av(fX,fS){if(aI(fX,fS,"contextmenu")){return}var fU=fX.display;if(a0(fU,fS)||c0(fX,fS)){return}var fW=cd(fX,fS),fO=fU.scroller.scrollTop;if(!fW||dF){return}var fQ=fX.options.resetSelectionOnContextMenu;if(fQ&&fX.doc.sel.contains(fW)==-1){cL(fX,bJ)(fX.doc,eu(fW),Y)}var fT=fU.input.style.cssText;fU.inputDiv.style.position="absolute";fU.input.style.cssText="position: fixed; width: 30px; height: 30px; top: "+(fS.clientY-5)+"px; left: "+(fS.clientX-5)+"px; z-index: 1000; background: "+(dn?"rgba(255, 255, 255, .05)":"transparent")+"; outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);";ed(fX);eZ(fX);if(!fX.somethingSelected()){fU.input.value=fU.prevInput=" "}fU.selForContextMenu=fX.doc.sel;clearTimeout(fU.detectingSelectAll);function fR(){if(fU.input.selectionStart!=null){var fY=fX.somethingSelected();var fZ=fU.input.value="\u200b"+(fY?fU.input.value:"");fU.prevInput=fY?"":"\u200b";fU.input.selectionStart=1;fU.input.selectionEnd=fZ.length;fU.selForContextMenu=fX.doc.sel}}function fV(){fU.inputDiv.style.position="relative";fU.input.style.cssText=fT;if(bY){fU.scrollbarV.scrollTop=fU.scroller.scrollTop=fO}bc(fX);if(fU.input.selectionStart!=null){if(!dn||bY){fR()}var fY=0,fZ=function(){if(fU.selForContextMenu==fX.doc.sel&&fU.input.selectionStart==0){cL(fX,eh.selectAll)(fX)}else{if(fY++<10){fU.detectingSelectAll=setTimeout(fZ,500)}else{eZ(fX)}}};fU.detectingSelectAll=setTimeout(fZ,200)}}if(dn&&!bY){fR()}if(fF){d3(fS);var fP=function(){dP(window,"mouseup",fP);setTimeout(fV,20)};bM(window,"mouseup",fP)}else{setTimeout(fV,50)}}function c0(fO,fP){if(!eS(fO,"gutterContextMenu")){return false}return fM(fO,fP,"gutterContextMenu",false,az)}var cG=I.changeEnd=function(fO){if(!fO.text){return fO.to}return W(fO.from.line+fO.text.length-1,fi(fO.text).length+(fO.text.length==1?fO.from.ch:0))};function bO(fR,fQ){if(b5(fR,fQ.from)<0){return fR}if(b5(fR,fQ.to)<=0){return cG(fQ)}var fO=fR.line+fQ.text.length-(fQ.to.line-fQ.from.line)-1,fP=fR.ch;if(fR.line==fQ.to.line){fP+=cG(fQ).ch-fQ.to.ch}return W(fO,fP)}function eU(fR,fS){var fP=[];for(var fQ=0;fQ<fR.sel.ranges.length;fQ++){var fO=fR.sel.ranges[fQ];fP.push(new dB(bO(fO.anchor,fS),bO(fO.head,fS)))}return cm(fP,fR.sel.primIndex)}function bk(fQ,fP,fO){if(fQ.line==fP.line){return W(fO.line,fQ.ch-fP.ch+fO.ch)}else{return W(fO.line+(fQ.line-fP.line),fQ.ch)}}function ad(fY,fV,fP){var fQ=[];var fO=W(fY.first,0),fZ=fO;for(var fS=0;fS<fV.length;fS++){var fU=fV[fS];var fX=bk(fU.from,fO,fZ);var fW=bk(cG(fU),fO,fZ);fO=fU.to;fZ=fW;if(fP=="around"){var fT=fY.sel.ranges[fS],fR=b5(fT.head,fT.anchor)<0;fQ[fS]=new dB(fR?fW:fX,fR?fX:fW)}else{fQ[fS]=new dB(fX,fX)}}return new fy(fQ,fY.sel.primIndex)}function dv(fP,fR,fQ){var fO={canceled:false,from:fR.from,to:fR.to,text:fR.text,origin:fR.origin,cancel:function(){this.canceled=true}};if(fQ){fO.update=function(fV,fU,fT,fS){if(fV){this.from=fk(fP,fV)}if(fU){this.to=fk(fP,fU)}if(fT){this.text=fT}if(fS!==undefined){this.origin=fS}}}az(fP,"beforeChange",fP,fO);if(fP.cm){az(fP.cm,"beforeChange",fP.cm,fO)}if(fO.canceled){return null}return{from:fO.from,to:fO.to,text:fO.text,origin:fO.origin}}function a5(fR,fS,fQ){if(fR.cm){if(!fR.cm.curOp){return cL(fR.cm,a5)(fR,fS,fQ)}if(fR.cm.state.suppressEdits){return}}if(eS(fR,"beforeChange")||fR.cm&&eS(fR.cm,"beforeChange")){fS=dv(fR,fS,true);if(!fS){return}}var fP=fI&&!fQ&&cv(fR,fS.from,fS.to);if(fP){for(var fO=fP.length-1;fO>=0;--fO){K(fR,{from:fP[fO].from,to:fP[fO].to,text:fO?[""]:fS.text})}}else{K(fR,fS)}}function K(fQ,fR){if(fR.text.length==1&&fR.text[0]==""&&b5(fR.from,fR.to)==0){return}var fP=eU(fQ,fR);fn(fQ,fR,fP,fQ.cm?fQ.cm.curOp.id:NaN);dQ(fQ,fR,fP,dW(fQ,fR));var fO=[];dK(fQ,function(fT,fS){if(!fS&&c1(fO,fT.history)==-1){dj(fT.history,fR);fO.push(fT.history)}dQ(fT,fR,null,dW(fT,fR))})}function bV(fZ,fX,f1){if(fZ.cm&&fZ.cm.state.suppressEdits){return}var fW=fZ.history,fQ,fS=fZ.sel;var fO=fX=="undo"?fW.done:fW.undone,f0=fX=="undo"?fW.undone:fW.done;for(var fT=0;fT<fO.length;fT++){fQ=fO[fT];if(f1?fQ.ranges&&!fQ.equals(fZ.sel):!fQ.ranges){break}}if(fT==fO.length){return}fW.lastOrigin=fW.lastSelOrigin=null;for(;;){fQ=fO.pop();if(fQ.ranges){cA(fQ,f0);if(f1&&!fQ.equals(fZ.sel)){bJ(fZ,fQ,{clearRedo:false});return}fS=fQ}else{break}}var fV=[];cA(fS,f0);f0.push({changes:fV,generation:fW.generation});fW.generation=fQ.generation||++fW.maxGeneration;var fR=eS(fZ,"beforeChange")||fZ.cm&&eS(fZ.cm,"beforeChange");for(var fT=fQ.changes.length-1;fT>=0;--fT){var fY=fQ.changes[fT];fY.origin=fX;if(fR&&!dv(fZ,fY,false)){fO.length=0;return}fV.push(da(fZ,fY));var fP=fT?eU(fZ,fY,null):fi(fO);dQ(fZ,fY,fP,dM(fZ,fY));if(!fT&&fZ.cm){fZ.cm.scrollIntoView(fY)}var fU=[];dK(fZ,function(f3,f2){if(!f2&&c1(fU,f3.history)==-1){dj(f3.history,fY);fU.push(f3.history)}dQ(f3,fY,null,dM(f3,fY))})}}function eX(fP,fR){if(fR==0){return}fP.first+=fR;fP.sel=new fy(bH(fP.sel.ranges,function(fS){return new dB(W(fS.anchor.line+fR,fS.anchor.ch),W(fS.head.line+fR,fS.head.ch))}),fP.sel.primIndex);if(fP.cm){af(fP.cm,fP.first,fP.first-fR,fR);for(var fQ=fP.cm.display,fO=fQ.viewFrom;fO<fQ.viewTo;fO++){R(fP.cm,fO,"gutter")}}}function dQ(fS,fT,fR,fP){if(fS.cm&&!fS.cm.curOp){return cL(fS.cm,dQ)(fS,fT,fR,fP)}if(fT.to.line<fS.first){eX(fS,fT.text.length-1-(fT.to.line-fT.from.line));return}if(fT.from.line>fS.lastLine()){return}if(fT.from.line<fS.first){var fO=fT.text.length-1-(fS.first-fT.from.line);eX(fS,fO);fT={from:W(fS.first,0),to:W(fT.to.line+fO,fT.to.ch),text:[fi(fT.text)],origin:fT.origin}}var fQ=fS.lastLine();if(fT.to.line>fQ){fT={from:fT.from,to:W(fQ,eP(fS,fQ).text.length),text:[fT.text[0]],origin:fT.origin}}fT.removed=fz(fS,fT.from,fT.to);if(!fR){fR=eU(fS,fT,null)}if(fS.cm){aD(fS.cm,fT,fP)}else{e9(fS,fT,fP)}d1(fS,fR,Y)}function aD(fZ,fV,fT){var fY=fZ.doc,fU=fZ.display,fW=fV.from,fX=fV.to;var fO=false,fS=fW.line;if(!fZ.options.lineWrapping){fS=bC(z(eP(fY,fW.line)));fY.iter(fS,fX.line+1,function(f1){if(f1==fU.maxLine){fO=true;return true}})}if(fY.sel.contains(fV.from,fV.to)>-1){V(fZ)}e9(fY,fV,fT,a3(fZ));if(!fZ.options.lineWrapping){fY.iter(fS,fW.line+fV.text.length,function(f2){var f1=dY(f2);if(f1>fU.maxLineLength){fU.maxLine=f2;fU.maxLineLength=f1;fU.maxLineChanged=true;fO=false}});if(fO){fZ.curOp.updateMaxLine=true}}fY.frontier=Math.min(fY.frontier,fW.line);dR(fZ,400);var f0=fV.text.length-(fX.line-fW.line)-1;if(fW.line==fX.line&&fV.text.length==1&&!dw(fZ.doc,fV)){R(fZ,fW.line,"text")}else{af(fZ,fW.line,fX.line+1,f0)}var fQ=eS(fZ,"changes"),fR=eS(fZ,"change");if(fR||fQ){var fP={from:fW,to:fX,text:fV.text,removed:fV.removed,origin:fV.origin};if(fR){ac(fZ,"change",fZ,fP)}if(fQ){(fZ.curOp.changeObjs||(fZ.curOp.changeObjs=[])).push(fP)}}fZ.display.selForContextMenu=null}function aR(fR,fQ,fT,fS,fO){if(!fS){fS=fT}if(b5(fS,fT)<0){var fP=fS;fS=fT;fT=fP}if(typeof fQ=="string"){fQ=aQ(fQ)}a5(fR,{from:fT,to:fS,text:fQ,origin:fO})}function dJ(fP,fS){var fT=fP.display,fQ=fT.sizer.getBoundingClientRect(),fO=null;if(fS.top+fQ.top<0){fO=true}else{if(fS.bottom+fQ.top>(window.innerHeight||document.documentElement.clientHeight)){fO=false}}if(fO!=null&&!e5){var fR=fx("div","\u200b",null,"position: absolute; top: "+(fS.top-fT.viewOffset-eI(fP.display))+"px; height: "+(fS.bottom-fS.top+ba)+"px; left: "+fS.left+"px; width: 2px;");fP.display.lineSpace.appendChild(fR);fR.scrollIntoView(fO);fP.display.lineSpace.removeChild(fR)}}function E(fX,fV,fS,fR){if(fR==null){fR=0}for(;;){var fT=false,fW=dx(fX,fV);var fO=!fS||fS==fV?fW:dx(fX,fS);var fQ=H(fX,Math.min(fW.left,fO.left),Math.min(fW.top,fO.top)-fR,Math.max(fW.left,fO.left),Math.max(fW.bottom,fO.bottom)+fR);var fU=fX.doc.scrollTop,fP=fX.doc.scrollLeft;if(fQ.scrollTop!=null){N(fX,fQ.scrollTop);if(Math.abs(fX.doc.scrollTop-fU)>1){fT=true}}if(fQ.scrollLeft!=null){bt(fX,fQ.scrollLeft);if(Math.abs(fX.doc.scrollLeft-fP)>1){fT=true}}if(!fT){return fW}}}function F(fO,fQ,fS,fP,fR){var fT=H(fO,fQ,fS,fP,fR);if(fT.scrollTop!=null){N(fO,fT.scrollTop)}if(fT.scrollLeft!=null){bt(fO,fT.scrollLeft)}}function H(fU,f2,fR,f1,fQ){var fZ=fU.display,fY=aN(fU.display);if(fR<0){fR=0}var fX=fU.curOp&&fU.curOp.scrollTop!=null?fU.curOp.scrollTop:fZ.scroller.scrollTop;var fP=fZ.scroller.clientHeight-ba,fW={};var f4=fU.doc.height+bx(fZ);var f5=fR<fY,f0=fQ>f4-fY;if(fR<fX){fW.scrollTop=f5?0:fR}else{if(fQ>fX+fP){var fV=Math.min(fR,(f0?f4:fQ)-fP);if(fV!=fX){fW.scrollTop=fV}}}var fO=fU.curOp&&fU.curOp.scrollLeft!=null?fU.curOp.scrollLeft:fZ.scroller.scrollLeft;var fT=fZ.scroller.clientWidth-ba;f2+=fZ.gutters.offsetWidth;f1+=fZ.gutters.offsetWidth;var fS=fZ.gutters.offsetWidth;var f3=f2<fS+10;if(f2<fO+fS||f3){if(f3){f2=0}fW.scrollLeft=Math.max(0,f2-10-fS)}else{if(f1>fT+fO-3){fW.scrollLeft=f1+10-fT}}return fW}function cy(fO,fQ,fP){if(fQ!=null||fP!=null){fd(fO)}if(fQ!=null){fO.curOp.scrollLeft=(fO.curOp.scrollLeft==null?fO.doc.scrollLeft:fO.curOp.scrollLeft)+fQ}if(fP!=null){fO.curOp.scrollTop=(fO.curOp.scrollTop==null?fO.doc.scrollTop:fO.curOp.scrollTop)+fP}}function fh(fO){fd(fO);var fP=fO.getCursor(),fR=fP,fQ=fP;if(!fO.options.lineWrapping){fR=fP.ch?W(fP.line,fP.ch-1):fP;fQ=W(fP.line,fP.ch+1)}fO.curOp.scrollToPos={from:fR,to:fQ,margin:fO.options.cursorScrollMargin,isCursor:true}}function fd(fO){var fQ=fO.curOp.scrollToPos;if(fQ){fO.curOp.scrollToPos=null;var fS=dm(fO,fQ.from),fR=dm(fO,fQ.to);var fP=H(fO,Math.min(fS.left,fR.left),Math.min(fS.top,fR.top)-fQ.margin,Math.max(fS.right,fR.right),Math.max(fS.bottom,fR.bottom)+fQ.margin);fO.scrollTo(fP.scrollLeft,fP.scrollTop)}}function ab(f1,fR,f0,fQ){var fZ=f1.doc,fP;if(f0==null){f0="add"}if(f0=="smart"){if(!f1.doc.mode.indent){f0="prev"}else{fP=dg(f1,fR)}}var fV=f1.options.tabSize;var f2=eP(fZ,fR),fU=bI(f2.text,null,fV);if(f2.stateAfter){f2.stateAfter=null}var fO=f2.text.match(/^\s*/)[0],fX;if(!fQ&&!/\S/.test(f2.text)){fX=0;f0="not"}else{if(f0=="smart"){fX=f1.doc.mode.indent(fP,f2.text.slice(fO.length),f2.text);if(fX==bZ){if(!fQ){return}f0="prev"}}}if(f0=="prev"){if(fR>fZ.first){fX=bI(eP(fZ,fR-1).text,null,fV)}else{fX=0}}else{if(f0=="add"){fX=fU+f1.options.indentUnit}else{if(f0=="subtract"){fX=fU-f1.options.indentUnit}else{if(typeof f0=="number"){fX=fU+f0}}}}fX=Math.max(0,fX);var fY="",fW=0;if(f1.options.indentWithTabs){for(var fS=Math.floor(fX/fV);fS;--fS){fW+=fV;fY+="\t"}}if(fW<fX){fY+=cf(fX-fW)}if(fY!=fO){aR(f1.doc,fY,W(fR,0),W(fR,fO.length),"+input")}else{for(var fS=0;fS<fZ.sel.ranges.length;fS++){var fT=fZ.sel.ranges[fS];if(fT.head.line==fR&&fT.head.ch<fO.length){var fW=W(fR,fO.length);f(fZ,fS,new dB(fW,fW));break}}}f2.stateAfter=null}function eb(fP,fR,fO,fU){var fT=fR,fQ=fR,fS=fP.doc;if(typeof fR=="number"){fQ=eP(fS,cO(fS,fR))}else{fT=bC(fR)}if(fT==null){return null}if(fU(fQ,fT)){R(fP,fT,fO)}return fQ}function eA(fO,fU){var fP=fO.doc.sel.ranges,fS=[];for(var fR=0;fR<fP.length;fR++){var fQ=fU(fP[fR]);while(fS.length&&b5(fQ.from,fi(fS).to)<=0){var fT=fS.pop();if(b5(fT.from,fQ.from)<0){fQ.from=fT.from;break}}fS.push(fQ)}cz(fO,function(){for(var fV=fS.length-1;fV>=0;fV--){aR(fO.doc,"",fS[fV].from,fS[fV].to,"+delete")}fh(fO)})}function bm(f6,fS,f0,fZ,fU){var fX=fS.line,fY=fS.ch,f5=f0;var fP=eP(f6,fX);var f3=true;function f4(){var f7=fX+f0;if(f7<f6.first||f7>=f6.first+f6.size){return(f3=false)}fX=f7;return fP=eP(f6,f7)}function f2(f8){var f7=(fU?v:ag)(fP,fY,f0,true);if(f7==null){if(!f8&&f4()){if(fU){fY=(f0<0?cE:ct)(fP)}else{fY=f0<0?fP.text.length:0}}else{return(f3=false)}}else{fY=f7}return true}if(fZ=="char"){f2()}else{if(fZ=="column"){f2(true)}else{if(fZ=="word"||fZ=="group"){var f1=null,fV=fZ=="group";var fO=f6.cm&&f6.cm.getHelper(fS,"wordChars");for(var fT=true;;fT=false){if(f0<0&&!f2(!fT)){break}var fQ=fP.text.charAt(fY)||"\n";var fR=cp(fQ,fO)?"w":fV&&fQ=="\n"?"n":!fV||/\s/.test(fQ)?null:"p";if(fV&&!fT&&!fR){fR="s"}if(f1&&f1!=fR){if(f0<0){f0=1;f2()}break}if(fR){f1=fR}if(f0>0&&!f2(!fT)){break}}}}}var fW=bK(f6,W(fX,fY),f5,true);if(!f3){fW.hitSide=true}return fW}function bg(fW,fR,fO,fV){var fU=fW.doc,fT=fR.left,fS;if(fV=="page"){var fQ=Math.min(fW.display.wrapper.clientHeight,window.innerHeight||document.documentElement.clientHeight);fS=fR.top+fO*(fQ-(fO<0?1.5:0.5)*aN(fW.display))}else{if(fV=="line"){fS=fO>0?fR.bottom+3:fR.top-3}}for(;;){var fP=fp(fW,fT,fS);if(!fP.outside){break}if(fO<0?fS<=0:fS>=fU.height){fP.hitSide=true;break}fS+=fO*5}return fP}function ar(fU,fS){var fT=fU.doc,fV=eP(fT,fS.line).text;var fP=fS.ch,fR=fS.ch;if(fV){var fQ=fU.getHelper(fS,"wordChars");if((fS.xRel<0||fR==fV.length)&&fP){--fP}else{++fR}var fW=fV.charAt(fP);var fO=cp(fW,fQ)?function(fX){return cp(fX,fQ)}:/\s/.test(fW)?function(fX){return/\s/.test(fX)}:function(fX){return !/\s/.test(fX)&&!cp(fX)};while(fP>0&&fO(fV.charAt(fP-1))){--fP}while(fR<fV.length&&fO(fV.charAt(fR))){++fR}}return new dB(W(fS.line,fP),W(fS.line,fR))}I.prototype={constructor:I,focus:function(){window.focus();ed(this);C(this)},setOption:function(fQ,fR){var fP=this.options,fO=fP[fQ];if(fP[fQ]==fR&&fQ!="mode"){return}fP[fQ]=fR;if(a4.hasOwnProperty(fQ)){cL(this,a4[fQ])(this,fR,fO)}},getOption:function(fO){return this.options[fO]},getDoc:function(){return this.doc},addKeyMap:function(fP,fO){this.state.keyMaps[fO?"push":"unshift"](fP)},removeKeyMap:function(fP){var fQ=this.state.keyMaps;for(var fO=0;fO<fQ.length;++fO){if(fQ[fO]==fP||(typeof fQ[fO]!="string"&&fQ[fO].name==fP)){fQ.splice(fO,1);return true}}},addOverlay:cR(function(fO,fP){var fQ=fO.token?fO:I.getMode(this.options,fO);if(fQ.startState){throw new Error("Overlays may not be stateful.")}this.state.overlays.push({mode:fQ,modeSpec:fO,opaque:fP&&fP.opaque});this.state.modeGen++;af(this)}),removeOverlay:cR(function(fO){var fQ=this.state.overlays;for(var fP=0;fP<fQ.length;++fP){var fR=fQ[fP].modeSpec;if(fR==fO||typeof fO=="string"&&fR.name==fO){fQ.splice(fP,1);this.state.modeGen++;af(this);return}}}),indentLine:cR(function(fQ,fO,fP){if(typeof fO!="string"&&typeof fO!="number"){if(fO==null){fO=this.options.smartIndent?"smart":"prev"}else{fO=fO?"add":"subtract"}}if(bW(this.doc,fQ)){ab(this,fQ,fO,fP)}}),indentSelection:cR(function(fT){var fP=this.doc.sel.ranges,fO=-1;for(var fS=0;fS<fP.length;fS++){var fQ=fP[fS];if(!fQ.empty()){var fV=Math.max(fO,fQ.from().line);var fU=fQ.to();fO=Math.min(this.lastLine(),fU.line-(fU.ch?0:1))+1;for(var fR=fV;fR<fO;++fR){ab(this,fR,fT)}}else{if(fQ.head.line>fO){ab(this,fQ.head.line,fT,true);fO=fQ.head.line;if(fS==this.doc.sel.primIndex){fh(this)}}}}}),getTokenAt:function(fV,fP){var fS=this.doc;fV=fk(fS,fV);var fR=dg(this,fV.line,fP),fU=this.doc.mode;var fO=eP(fS,fV.line);var fT=new ew(fO.text,this.options.tabSize);while(fT.pos<fV.ch&&!fT.eol()){fT.start=fT.pos;var fQ=ef(fU,fT,fR)}return{start:fT.start,end:fT.pos,string:fT.current(),type:fQ||null,state:fR}},getTokenTypeAt:function(fV){fV=fk(this.doc,fV);var fR=cQ(this,eP(this.doc,fV.line));var fT=0,fU=(fR.length-1)/2,fQ=fV.ch;var fP;if(fQ==0){fP=fR[2]}else{for(;;){var fO=(fT+fU)>>1;if((fO?fR[fO*2-1]:0)>=fQ){fU=fO}else{if(fR[fO*2+1]<fQ){fT=fO+1}else{fP=fR[fO*2+2];break}}}}var fS=fP?fP.indexOf("cm-overlay "):-1;return fS<0?fP:fS==0?null:fP.slice(0,fS-1)},getModeAt:function(fP){var fO=this.doc.mode;if(!fO.innerMode){return fO}return I.innerMode(fO,this.getTokenAt(fP).state).mode},getHelper:function(fP,fO){return this.getHelpers(fP,fO)[0]},getHelpers:function(fV,fQ){var fR=[];if(!eY.hasOwnProperty(fQ)){return eY}var fO=eY[fQ],fU=this.getModeAt(fV);if(typeof fU[fQ]=="string"){if(fO[fU[fQ]]){fR.push(fO[fU[fQ]])}}else{if(fU[fQ]){for(var fP=0;fP<fU[fQ].length;fP++){var fT=fO[fU[fQ][fP]];if(fT){fR.push(fT)}}}else{if(fU.helperType&&fO[fU.helperType]){fR.push(fO[fU.helperType])}else{if(fO[fU.name]){fR.push(fO[fU.name])}}}}for(var fP=0;fP<fO._global.length;fP++){var fS=fO._global[fP];if(fS.pred(fU,this)&&c1(fR,fS.val)==-1){fR.push(fS.val)}}return fR},getStateAfter:function(fP,fO){var fQ=this.doc;fP=cO(fQ,fP==null?fQ.first+fQ.size-1:fP);return dg(this,fP+1,fO)},cursorCoords:function(fR,fP){var fQ,fO=this.doc.sel.primary();if(fR==null){fQ=fO.head}else{if(typeof fR=="object"){fQ=fk(this.doc,fR)}else{fQ=fR?fO.from():fO.to()}}return dx(this,fQ,fP||"page")},charCoords:function(fP,fO){return cx(this,fk(this.doc,fP),fO||"page")},coordsChar:function(fO,fP){fO=fK(this,fO,fP||"page");return fp(this,fO.left,fO.top)},lineAtHeight:function(fO,fP){fO=fK(this,{top:fO,left:0},fP||"page").top;return bv(this.doc,fO+this.display.viewOffset)},heightAtLine:function(fP,fS){var fO=false,fR=this.doc.first+this.doc.size-1;if(fP<this.doc.first){fP=this.doc.first}else{if(fP>fR){fP=fR;fO=true}}var fQ=eP(this.doc,fP);return et(this,fQ,{top:0,left:0},fS||"page").top+(fO?this.doc.height-bB(fQ):0)},defaultTextHeight:function(){return aN(this.display)},defaultCharWidth:function(){return di(this.display)},setGutterMarker:cR(function(fO,fP,fQ){return eb(this,fO,"gutter",function(fR){var fS=fR.gutterMarkers||(fR.gutterMarkers={});fS[fP]=fQ;if(!fQ&&ex(fS)){fR.gutterMarkers=null}return true})}),clearGutter:cR(function(fQ){var fO=this,fR=fO.doc,fP=fR.first;fR.iter(function(fS){if(fS.gutterMarkers&&fS.gutterMarkers[fQ]){fS.gutterMarkers[fQ]=null;R(fO,fP,"gutter");if(ex(fS.gutterMarkers)){fS.gutterMarkers=null}}++fP})}),addLineClass:cR(function(fQ,fP,fO){return eb(this,fQ,"class",function(fR){var fS=fP=="text"?"textClass":fP=="background"?"bgClass":"wrapClass";if(!fR[fS]){fR[fS]=fO}else{if(new RegExp("(?:^|\\s)"+fO+"(?:$|\\s)").test(fR[fS])){return false}else{fR[fS]+=" "+fO}}return true})}),removeLineClass:cR(function(fQ,fP,fO){return eb(this,fQ,"class",function(fS){var fV=fP=="text"?"textClass":fP=="background"?"bgClass":"wrapClass";var fU=fS[fV];if(!fU){return false}else{if(fO==null){fS[fV]=null}else{var fT=fU.match(new RegExp("(?:^|\\s+)"+fO+"(?:$|\\s+)"));if(!fT){return false}var fR=fT.index+fT[0].length;fS[fV]=fU.slice(0,fT.index)+(!fT.index||fR==fU.length?"":" ")+fU.slice(fR)||null}}return true})}),addLineWidget:cR(function(fQ,fP,fO){return bw(this,fQ,fP,fO)}),removeLineWidget:function(fO){fO.clear()},lineInfo:function(fO){if(typeof fO=="number"){if(!bW(this.doc,fO)){return null}var fP=fO;fO=eP(this.doc,fO);if(!fO){return null}}else{var fP=bC(fO);if(fP==null){return null}}return{line:fP,handle:fO,text:fO.text,gutterMarkers:fO.gutterMarkers,textClass:fO.textClass,bgClass:fO.bgClass,wrapClass:fO.wrapClass,widgets:fO.widgets}},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(fT,fQ,fV,fR,fX){var fS=this.display;fT=dx(this,fk(this.doc,fT));var fU=fT.bottom,fP=fT.left;fQ.style.position="absolute";fS.sizer.appendChild(fQ);if(fR=="over"){fU=fT.top}else{if(fR=="above"||fR=="near"){var fO=Math.max(fS.wrapper.clientHeight,this.doc.height),fW=Math.max(fS.sizer.clientWidth,fS.lineSpace.clientWidth);if((fR=="above"||fT.bottom+fQ.offsetHeight>fO)&&fT.top>fQ.offsetHeight){fU=fT.top-fQ.offsetHeight}else{if(fT.bottom+fQ.offsetHeight<=fO){fU=fT.bottom}}if(fP+fQ.offsetWidth>fW){fP=fW-fQ.offsetWidth}}}fQ.style.top=fU+"px";fQ.style.left=fQ.style.right="";if(fX=="right"){fP=fS.sizer.clientWidth-fQ.offsetWidth;fQ.style.right="0px"}else{if(fX=="left"){fP=0}else{if(fX=="middle"){fP=(fS.sizer.clientWidth-fQ.offsetWidth)/2}}fQ.style.left=fP+"px"}if(fV){F(this,fP,fU,fP+fQ.offsetWidth,fU+fQ.offsetHeight)}},triggerOnKeyDown:cR(q),triggerOnKeyPress:cR(cn),triggerOnKeyUp:cR(a7),execCommand:function(fO){if(eh.hasOwnProperty(fO)){return eh[fO](this)}},findPosH:function(fU,fR,fS,fP){var fO=1;if(fR<0){fO=-1;fR=-fR}for(var fQ=0,fT=fk(this.doc,fU);fQ<fR;++fQ){fT=bm(this.doc,fT,fO,fS,fP);if(fT.hitSide){break}}return fT},moveH:cR(function(fP,fQ){var fO=this;fO.extendSelectionsBy(function(fR){if(fO.display.shift||fO.doc.extend||fR.empty()){return bm(fO.doc,fR.head,fP,fQ,fO.options.rtlMoveVisually)}else{return fP<0?fR.from():fR.to()}},cF)}),deleteH:cR(function(fO,fP){var fQ=this.doc.sel,fR=this.doc;if(fQ.somethingSelected()){fR.replaceSelection("",null,"+delete")}else{eA(this,function(fT){var fS=bm(fR,fT.head,fO,fP,false);return fO<0?{from:fS,to:fT.head}:{from:fT.head,to:fS}})}}),findPosV:function(fT,fQ,fU,fW){var fO=1,fS=fW;if(fQ<0){fO=-1;fQ=-fQ}for(var fP=0,fV=fk(this.doc,fT);fP<fQ;++fP){var fR=dx(this,fV,"div");if(fS==null){fS=fR.left}else{fR.left=fS}fV=bg(this,fR,fO,fU);if(fV.hitSide){break}}return fV},moveV:cR(function(fP,fR){var fO=this,fT=this.doc,fS=[];var fU=!fO.display.shift&&!fT.extend&&fT.sel.somethingSelected();fT.extendSelectionsBy(function(fV){if(fU){return fP<0?fV.from():fV.to()}var fX=dx(fO,fV.head,"div");if(fV.goalColumn!=null){fX.left=fV.goalColumn}fS.push(fX.left);var fW=bg(fO,fX,fP,fR);if(fR=="page"&&fV==fT.sel.primary()){cy(fO,null,cx(fO,fW,"div").top-fX.top)}return fW},cF);if(fS.length){for(var fQ=0;fQ<fT.sel.ranges.length;fQ++){fT.sel.ranges[fQ].goalColumn=fS[fQ]}}}),toggleOverwrite:function(fO){if(fO!=null&&fO==this.state.overwrite){return}if(this.state.overwrite=!this.state.overwrite){fb(this.display.cursorDiv,"CodeMirror-overwrite")}else{g(this.display.cursorDiv,"CodeMirror-overwrite")}az(this,"overwriteToggle",this,this.state.overwrite)},hasFocus:function(){return ds()==this.display.input},scrollTo:cR(function(fO,fP){if(fO!=null||fP!=null){fd(this)}if(fO!=null){this.curOp.scrollLeft=fO}if(fP!=null){this.curOp.scrollTop=fP}}),getScrollInfo:function(){var fO=this.display.scroller,fP=ba;return{left:fO.scrollLeft,top:fO.scrollTop,height:fO.scrollHeight-fP,width:fO.scrollWidth-fP,clientHeight:fO.clientHeight-fP,clientWidth:fO.clientWidth-fP}},scrollIntoView:cR(function(fP,fQ){if(fP==null){fP={from:this.doc.sel.primary().head,to:null};if(fQ==null){fQ=this.options.cursorScrollMargin}}else{if(typeof fP=="number"){fP={from:W(fP,0),to:null}}else{if(fP.from==null){fP={from:fP,to:null}}}}if(!fP.to){fP.to=fP.from}fP.margin=fQ||0;if(fP.from.line!=null){fd(this);this.curOp.scrollToPos=fP}else{var fO=H(this,Math.min(fP.from.left,fP.to.left),Math.min(fP.from.top,fP.to.top)-fP.margin,Math.max(fP.from.right,fP.to.right),Math.max(fP.from.bottom,fP.to.bottom)+fP.margin);this.scrollTo(fO.scrollLeft,fO.scrollTop)}}),setSize:cR(function(fQ,fO){function fP(fR){return typeof fR=="number"||/^\d+$/.test(String(fR))?fR+"px":fR}if(fQ!=null){this.display.wrapper.style.width=fP(fQ)}if(fO!=null){this.display.wrapper.style.height=fP(fO)}if(this.options.lineWrapping){aF(this)}this.curOp.forceUpdate=true;az(this,"refresh",this)}),operation:function(fO){return cz(this,fO)},refresh:cR(function(){var fO=this.display.cachedTextHeight;af(this);this.curOp.forceUpdate=true;ai(this);this.scrollTo(this.doc.scrollLeft,this.doc.scrollTop);cN(this);if(fO==null||Math.abs(fO-aN(this.display))>0.5){X(this)}az(this,"refresh",this)}),swapDoc:cR(function(fP){var fO=this.doc;fO.cm=null;dN(this,fP);ai(this);eZ(this);this.scrollTo(fP.scrollLeft,fP.scrollTop);ac(this,"swapDoc",this,fO);return fO}),getInputField:function(){return this.display.input},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}};bo(I);var eF=I.defaults={};var a4=I.optionHandlers={};function t(fO,fR,fQ,fP){I.defaults[fO]=fR;if(fQ){a4[fO]=fP?function(fS,fU,fT){if(fT!=b2){fQ(fS,fU,fT)}}:fQ}}var b2=I.Init={toString:function(){return"CodeMirror.Init"}};t("value","",function(fO,fP){fO.setValue(fP)},true);t("mode",null,function(fO,fP){fO.doc.modeOption=fP;bh(fO)},true);t("indentUnit",2,bh,true);t("indentWithTabs",false);t("smartIndent",true);t("tabSize",4,function(fO){dX(fO);ai(fO);af(fO)},true);t("specialChars",/[\t\u0000-\u0019\u00ad\u200b\u2028\u2029\ufeff]/g,function(fO,fP){fO.options.specialChars=new RegExp(fP.source+(fP.test("\t")?"":"|\t"),"g");fO.refresh()},true);t("specialCharPlaceholder",eN,function(fO){fO.refresh()},true);t("electricChars",true);t("rtlMoveVisually",!aG);t("wholeLineUpdateBefore",true);t("theme","default",function(fO){cB(fO);db(fO)},true);t("keyMap","default",fL);t("extraKeys",null);t("lineWrapping",false,ek,true);t("gutters",[],function(fO){b4(fO.options);db(fO)},true);t("fixedGutter",true,function(fO,fP){fO.display.gutters.style.left=fP?dA(fO.display)+"px":"0";fO.refresh()},true);t("coverGutterNextToScrollbar",false,eB,true);t("lineNumbers",false,function(fO){b4(fO.options);db(fO)},true);t("firstLineNumber",1,db,true);t("lineNumberFormatter",function(fO){return fO},db,true);t("showCursorWhenSelecting",false,br,true);t("resetSelectionOnContextMenu",true);t("readOnly",false,function(fO,fP){if(fP=="nocursor"){aL(fO);fO.display.input.blur();fO.display.disabled=true}else{fO.display.disabled=false;if(!fP){eZ(fO)}}});t("disableInput",false,function(fO,fP){if(!fP){eZ(fO)}},true);t("dragDrop",true);t("cursorBlinkRate",530);t("cursorScrollMargin",0);t("cursorHeight",1);t("workTime",100);t("workDelay",100);t("flattenSpans",true,dX,true);t("addModeClass",false,dX,true);t("pollInterval",100);t("undoDepth",200,function(fO,fP){fO.doc.history.undoDepth=fP});t("historyEventDelay",1250);t("viewportMargin",10,function(fO){fO.refresh()},true);t("maxHighlightLength",10000,dX,true);t("moveInputWithCursor",true,function(fO,fP){if(!fP){fO.display.inputDiv.style.top=fO.display.inputDiv.style.left=0}});t("tabindex",null,function(fO,fP){fO.display.input.tabIndex=fP||""});t("autofocus",null);var c8=I.modes={},aJ=I.mimeModes={};var c8=I.modes={},aJ=I.mimeModes={};I.defineMode=function(fO,fQ){if(!I.defaults.mode&&fO!="null"){I.defaults.mode=fO}if(arguments.length>2){fQ.dependencies=[];for(var fP=2;fP<arguments.length;++fP){fQ.dependencies.push(arguments[fP])}}c8[fO]=fQ};I.defineMIME=function(fP,fO){aJ[fP]=fO};I.resolveMode=function(fO){if(typeof fO=="string"&&aJ.hasOwnProperty(fO)){fO=aJ[fO]}else{if(fO&&typeof fO.name=="string"&&aJ.hasOwnProperty(fO.name)){var fP=aJ[fO.name];if(typeof fP=="string"){fP={name:fP}}fO=ca(fP,fO);fO.name=fP.name}else{if(typeof fO=="string"&&/^[\w\-]+\/[\w\-]+\+xml$/.test(fO)){return I.resolveMode("application/xml")}}}if(typeof fO=="string"){return{name:fO}}else{return fO||{name:"null"}}};I.getMode=function(fP,fO){var fO=I.resolveMode(fO);var fR=c8[fO.name];if(!fR){return I.getMode(fP,"text/plain")}var fS=fR(fP,fO);if(c5.hasOwnProperty(fO.name)){var fQ=c5[fO.name];for(var fT in fQ){if(!fQ.hasOwnProperty(fT)){continue}if(fS.hasOwnProperty(fT)){fS["_"+fT]=fS[fT]}fS[fT]=fQ[fT]}}fS.name=fO.name;if(fO.helperType){fS.helperType=fO.helperType}if(fO.modeProps){for(var fT in fO.modeProps){fS[fT]=fO.modeProps[fT]}}return fS};I.defineMode("null",function(){return{token:function(fO){fO.skipToEnd()}}});I.defineMIME("text/plain","null");var c5=I.modeExtensions={};I.extendMode=function(fQ,fP){var fO=c5.hasOwnProperty(fQ)?c5[fQ]:(c5[fQ]={});aE(fP,fO)};I.defineExtension=function(fO,fP){I.prototype[fO]=fP};I.defineDocExtension=function(fO,fP){ao.prototype[fO]=fP};I.defineOption=t;var aY=[];I.defineInitHook=function(fO){aY.push(fO)};var eY=I.helpers={};I.registerHelper=function(fP,fO,fQ){if(!eY.hasOwnProperty(fP)){eY[fP]=I[fP]={_global:[]}}eY[fP][fO]=fQ};I.registerGlobalHelper=function(fQ,fP,fO,fR){I.registerHelper(fQ,fP,fR);eY[fQ]._global.push({pred:fO,val:fR})};var bR=I.copyState=function(fR,fO){if(fO===true){return fO}if(fR.copyState){return fR.copyState(fO)}var fQ={};for(var fS in fO){var fP=fO[fS];if(fP instanceof Array){fP=fP.concat([])}fQ[fS]=fP}return fQ};var bP=I.startState=function(fQ,fP,fO){return fQ.startState?fQ.startState(fP,fO):true};I.innerMode=function(fQ,fO){while(fQ.innerMode){var fP=fQ.innerMode(fO);if(!fP||fP.mode==fQ){break}fO=fP.state;fQ=fP.mode}return fP||{mode:fQ,state:fO}};var eh=I.commands={selectAll:function(fO){fO.setSelection(W(fO.firstLine(),0),W(fO.lastLine()),Y)},singleSelection:function(fO){fO.setSelection(fO.getCursor("anchor"),fO.getCursor("head"),Y)},killLine:function(fO){eA(fO,function(fQ){if(fQ.empty()){var fP=eP(fO.doc,fQ.head.line).text.length;if(fQ.head.ch==fP&&fQ.head.line<fO.lastLine()){return{from:fQ.head,to:W(fQ.head.line+1,0)}}else{return{from:fQ.head,to:W(fQ.head.line,fP)}}}else{return{from:fQ.from(),to:fQ.to()}}})},deleteLine:function(fO){eA(fO,function(fP){return{from:W(fP.from().line,0),to:fk(fO.doc,W(fP.to().line+1,0))}})},delLineLeft:function(fO){eA(fO,function(fP){return{from:W(fP.from().line,0),to:fP.from()}})},undo:function(fO){fO.undo()},redo:function(fO){fO.redo()},undoSelection:function(fO){fO.undoSelection()},redoSelection:function(fO){fO.redoSelection()},goDocStart:function(fO){fO.extendSelection(W(fO.firstLine(),0))},goDocEnd:function(fO){fO.extendSelection(W(fO.lastLine()))},goLineStart:function(fO){fO.extendSelectionsBy(function(fP){return bj(fO,fP.head.line)},cF)},goLineStartSmart:function(fO){fO.extendSelectionsBy(function(fR){var fU=bj(fO,fR.head.line);var fQ=fO.getLineHandle(fU.line);var fP=a(fQ);if(!fP||fP[0].level==0){var fT=Math.max(0,fQ.text.search(/\S/));var fS=fR.head.line==fU.line&&fR.head.ch<=fT&&fR.head.ch;return W(fU.line,fS?0:fT)}return fU},cF)},goLineEnd:function(fO){fO.extendSelectionsBy(function(fP){return dt(fO,fP.head.line)},cF)},goLineRight:function(fO){fO.extendSelectionsBy(function(fP){var fQ=fO.charCoords(fP.head,"div").top+5;return fO.coordsChar({left:fO.display.lineDiv.offsetWidth+100,top:fQ},"div")},cF)},goLineLeft:function(fO){fO.extendSelectionsBy(function(fP){var fQ=fO.charCoords(fP.head,"div").top+5;return fO.coordsChar({left:0,top:fQ},"div")},cF)},goLineUp:function(fO){fO.moveV(-1,"line")},goLineDown:function(fO){fO.moveV(1,"line")},goPageUp:function(fO){fO.moveV(-1,"page")},goPageDown:function(fO){fO.moveV(1,"page")},goCharLeft:function(fO){fO.moveH(-1,"char")},goCharRight:function(fO){fO.moveH(1,"char")},goColumnLeft:function(fO){fO.moveH(-1,"column")},goColumnRight:function(fO){fO.moveH(1,"column")},goWordLeft:function(fO){fO.moveH(-1,"word")},goGroupRight:function(fO){fO.moveH(1,"group")},goGroupLeft:function(fO){fO.moveH(-1,"group")},goWordRight:function(fO){fO.moveH(1,"word")},delCharBefore:function(fO){fO.deleteH(-1,"char")},delCharAfter:function(fO){fO.deleteH(1,"char")},delWordBefore:function(fO){fO.deleteH(-1,"word")},delWordAfter:function(fO){fO.deleteH(1,"word")},delGroupBefore:function(fO){fO.deleteH(-1,"group")},delGroupAfter:function(fO){fO.deleteH(1,"group")},indentAuto:function(fO){fO.indentSelection("smart")},indentMore:function(fO){fO.indentSelection("add")},indentLess:function(fO){fO.indentSelection("subtract")},insertTab:function(fO){fO.replaceSelection("\t")},insertSoftTab:function(fO){var fQ=[],fP=fO.listSelections(),fT=fO.options.tabSize;for(var fS=0;fS<fP.length;fS++){var fU=fP[fS].from();var fR=bI(fO.getLine(fU.line),fU.ch,fT);fQ.push(new Array(fT-fR%fT+1).join(" "))}fO.replaceSelections(fQ)},defaultTab:function(fO){if(fO.somethingSelected()){fO.indentSelection("add")}else{fO.execCommand("insertTab")}},transposeChars:function(fO){cz(fO,function(){var fR=fO.listSelections(),fQ=[];for(var fS=0;fS<fR.length;fS++){var fU=fR[fS].head,fP=eP(fO.doc,fU.line).text;if(fP){if(fU.ch==fP.length){fU=new W(fU.line,fU.ch-1)}if(fU.ch>0){fU=new W(fU.line,fU.ch+1);fO.replaceRange(fP.charAt(fU.ch-1)+fP.charAt(fU.ch-2),W(fU.line,fU.ch-2),fU,"+transpose")}else{if(fU.line>fO.doc.first){var fT=eP(fO.doc,fU.line-1).text;if(fT){fO.replaceRange(fP.charAt(0)+"\n"+fT.charAt(fT.length-1),W(fU.line-1,fT.length-1),W(fU.line,1),"+transpose")}}}}fQ.push(new dB(fU,fU))}fO.setSelections(fQ)})},newlineAndIndent:function(fO){cz(fO,function(){var fP=fO.listSelections().length;for(var fR=0;fR<fP;fR++){var fQ=fO.listSelections()[fR];fO.replaceRange("\n",fQ.anchor,fQ.head,"+input");fO.indentLine(fQ.from().line+1,null,true);fh(fO)}})},toggleOverwrite:function(fO){fO.toggleOverwrite()}};var eK=I.keyMap={};eK.basic={Left:"goCharLeft",Right:"goCharRight",Up:"goLineUp",Down:"goLineDown",End:"goLineEnd",Home:"goLineStartSmart",PageUp:"goPageUp",PageDown:"goPageDown",Delete:"delCharAfter",Backspace:"delCharBefore","Shift-Backspace":"delCharBefore",Tab:"defaultTab","Shift-Tab":"indentAuto",Enter:"newlineAndIndent",Insert:"toggleOverwrite",Esc:"singleSelection"};eK.pcDefault={"Ctrl-A":"selectAll","Ctrl-D":"deleteLine","Ctrl-Z":"undo","Shift-Ctrl-Z":"redo","Ctrl-Y":"redo","Ctrl-Home":"goDocStart","Ctrl-Up":"goDocStart","Ctrl-End":"goDocEnd","Ctrl-Down":"goDocEnd","Ctrl-Left":"goGroupLeft","Ctrl-Right":"goGroupRight","Alt-Left":"goLineStart","Alt-Right":"goLineEnd","Ctrl-Backspace":"delGroupBefore","Ctrl-Delete":"delGroupAfter","Ctrl-S":"save","Ctrl-F":"find","Ctrl-G":"findNext","Shift-Ctrl-G":"findPrev","Shift-Ctrl-F":"replace","Shift-Ctrl-R":"replaceAll","Ctrl-[":"indentLess","Ctrl-]":"indentMore","Ctrl-U":"undoSelection","Shift-Ctrl-U":"redoSelection","Alt-U":"redoSelection",fallthrough:"basic"};eK.macDefault={"Cmd-A":"selectAll","Cmd-D":"deleteLine","Cmd-Z":"undo","Shift-Cmd-Z":"redo","Cmd-Y":"redo","Cmd-Up":"goDocStart","Cmd-End":"goDocEnd","Cmd-Down":"goDocEnd","Alt-Left":"goGroupLeft","Alt-Right":"goGroupRight","Cmd-Left":"goLineStart","Cmd-Right":"goLineEnd","Alt-Backspace":"delGroupBefore","Ctrl-Alt-Backspace":"delGroupAfter","Alt-Delete":"delGroupAfter","Cmd-S":"save","Cmd-F":"find","Cmd-G":"findNext","Shift-Cmd-G":"findPrev","Cmd-Alt-F":"replace","Shift-Cmd-Alt-F":"replaceAll","Cmd-[":"indentLess","Cmd-]":"indentMore","Cmd-Backspace":"delLineLeft","Cmd-U":"undoSelection","Shift-Cmd-U":"redoSelection",fallthrough:["basic","emacsy"]};eK.emacsy={"Ctrl-F":"goCharRight","Ctrl-B":"goCharLeft","Ctrl-P":"goLineUp","Ctrl-N":"goLineDown","Alt-F":"goWordRight","Alt-B":"goWordLeft","Ctrl-A":"goLineStart","Ctrl-E":"goLineEnd","Ctrl-V":"goPageDown","Shift-Ctrl-V":"goPageUp","Ctrl-D":"delCharAfter","Ctrl-H":"delCharBefore","Alt-D":"delWordAfter","Alt-Backspace":"delWordBefore","Ctrl-K":"killLine","Ctrl-T":"transposeChars"};eK["default"]=bU?eK.macDefault:eK.pcDefault;function fv(fO){if(typeof fO=="string"){return eK[fO]}else{return fO}}var j=I.lookupKey=function(fP,fT,fR){function fS(fY){fY=fv(fY);var fX=fY[fP];if(fX===false){return"stop"}if(fX!=null&&fR(fX)){return true}if(fY.nofallthrough){return"stop"}var fW=fY.fallthrough;if(fW==null){return false}if(Object.prototype.toString.call(fW)!="[object Array]"){return fS(fW)}for(var fV=0;fV<fW.length;++fV){var fU=fS(fW[fV]);if(fU){return fU}}return false}for(var fQ=0;fQ<fT.length;++fQ){var fO=fS(fT[fQ]);if(fO){return fO!="stop"}}};var eg=I.isModifierKey=function(fP){var fO=eQ[fP.keyCode];return fO=="Ctrl"||fO=="Alt"||fO=="Shift"||fO=="Mod"};var e2=I.keyName=function(fP,fQ){if(dF&&fP.keyCode==34&&fP["char"]){return false}var fO=eQ[fP.keyCode];if(fO==null||fP.altGraphKey){return false}if(fP.altKey){fO="Alt-"+fO}if(bF?fP.metaKey:fP.ctrlKey){fO="Ctrl-"+fO}if(bF?fP.ctrlKey:fP.metaKey){fO="Cmd-"+fO}if(!fQ&&fP.shiftKey){fO="Shift-"+fO}return fO};I.fromTextArea=function(fV,fW){if(!fW){fW={}}fW.value=fV.value;if(!fW.tabindex&&fV.tabindex){fW.tabindex=fV.tabindex}if(!fW.placeholder&&fV.placeholder){fW.placeholder=fV.placeholder}if(fW.autofocus==null){var fO=ds();fW.autofocus=fO==fV||fV.getAttribute("autofocus")!=null&&fO==document.body}function fS(){fV.value=fU.getValue()}if(fV.form){bM(fV.form,"submit",fS);if(!fW.leaveSubmitMethodAlone){var fP=fV.form,fT=fP.submit;try{var fR=fP.submit=function(){fS();fP.submit=fT;fP.submit();fP.submit=fR}}catch(fQ){}}}fV.style.display="none";var fU=I(function(fX){fV.parentNode.insertBefore(fX,fV.nextSibling)},fW);fU.save=fS;fU.getTextArea=function(){return fV};fU.toTextArea=function(){fS();fV.parentNode.removeChild(fU.getWrapperElement());fV.style.display="";if(fV.form){dP(fV.form,"submit",fS);if(typeof fV.form.submit=="function"){fV.form.submit=fT}}};return fU};var ew=I.StringStream=function(fO,fP){this.pos=this.start=0;this.string=fO;this.tabSize=fP||8;this.lastColumnPos=this.lastColumnValue=0;this.lineStart=0};ew.prototype={eol:function(){return this.pos>=this.string.length},sol:function(){return this.pos==this.lineStart},peek:function(){return this.string.charAt(this.pos)||undefined},next:function(){if(this.pos<this.string.length){return this.string.charAt(this.pos++)}},eat:function(fO){var fQ=this.string.charAt(this.pos);if(typeof fO=="string"){var fP=fQ==fO}else{var fP=fQ&&(fO.test?fO.test(fQ):fO(fQ))}if(fP){++this.pos;return fQ}},eatWhile:function(fO){var fP=this.pos;while(this.eat(fO)){}return this.pos>fP},eatSpace:function(){var fO=this.pos;while(/[\s\u00a0]/.test(this.string.charAt(this.pos))){++this.pos}return this.pos>fO},skipToEnd:function(){this.pos=this.string.length},skipTo:function(fO){var fP=this.string.indexOf(fO,this.pos);if(fP>-1){this.pos=fP;return true}},backUp:function(fO){this.pos-=fO},column:function(){if(this.lastColumnPos<this.start){this.lastColumnValue=bI(this.string,this.start,this.tabSize,this.lastColumnPos,this.lastColumnValue);this.lastColumnPos=this.start}return this.lastColumnValue-(this.lineStart?bI(this.string,this.lineStart,this.tabSize):0)},indentation:function(){return bI(this.string,null,this.tabSize)-(this.lineStart?bI(this.string,this.lineStart,this.tabSize):0)},match:function(fS,fP,fO){if(typeof fS=="string"){var fT=function(fU){return fO?fU.toLowerCase():fU};var fR=this.string.substr(this.pos,fS.length);if(fT(fR)==fT(fS)){if(fP!==false){this.pos+=fS.length}return true}}else{var fQ=this.string.slice(this.pos).match(fS);if(fQ&&fQ.index>0){return null}if(fQ&&fP!==false){this.pos+=fQ[0].length}return fQ}},current:function(){return this.string.slice(this.start,this.pos)},hideFirstChars:function(fP,fO){this.lineStart+=fP;try{return fO()}finally{this.lineStart-=fP}}};var P=I.TextMarker=function(fP,fO){this.lines=[];this.type=fO;this.doc=fP};bo(P);P.prototype.clear=function(){if(this.explicitlyCleared){return}var fV=this.doc.cm,fP=fV&&!fV.curOp;if(fP){cw(fV)}if(eS(this,"clear")){var fW=this.find();if(fW){ac(this,"clear",fW.from,fW.to)}}var fQ=null,fT=null;for(var fR=0;fR<this.lines.length;++fR){var fX=this.lines[fR];var fU=eJ(fX.markedSpans,this);if(fV&&!this.collapsed){R(fV,bC(fX),"text")}else{if(fV){if(fU.to!=null){fT=bC(fX)}if(fU.from!=null){fQ=bC(fX)}}}fX.markedSpans=el(fX.markedSpans,fU);if(fU.from==null&&this.collapsed&&!e7(this.doc,fX)&&fV){fB(fX,aN(fV.display))}}if(fV&&this.collapsed&&!fV.options.lineWrapping){for(var fR=0;fR<this.lines.length;++fR){var fO=z(this.lines[fR]),fS=dY(fO);if(fS>fV.display.maxLineLength){fV.display.maxLine=fO;fV.display.maxLineLength=fS;fV.display.maxLineChanged=true}}}if(fQ!=null&&fV&&this.collapsed){af(fV,fQ,fT+1)}this.lines.length=0;this.explicitlyCleared=true;if(this.atomic&&this.doc.cantEdit){this.doc.cantEdit=false;if(fV){ea(fV.doc)}}if(fV){ac(fV,"markerCleared",fV,this)}if(fP){aj(fV)}if(this.parent){this.parent.clear()}};P.prototype.find=function(fR,fP){if(fR==null&&this.type=="bookmark"){fR=1}var fU,fT;for(var fQ=0;fQ<this.lines.length;++fQ){var fO=this.lines[fQ];var fS=eJ(fO.markedSpans,this);if(fS.from!=null){fU=W(fP?fO:bC(fO),fS.from);if(fR==-1){return fU}}if(fS.to!=null){fT=W(fP?fO:bC(fO),fS.to);if(fR==1){return fT}}}return fU&&{from:fU,to:fT}};P.prototype.changed=function(){var fQ=this.find(-1,true),fP=this,fO=this.doc.cm;if(!fQ||!fO){return}cz(fO,function(){var fS=fQ.line,fT=bC(fQ.line);var fR=eL(fO,fT);if(fR){ap(fR);fO.curOp.selectionChanged=fO.curOp.forceUpdate=true}fO.curOp.updateMaxLine=true;if(!e7(fP.doc,fS)&&fP.height!=null){var fV=fP.height;fP.height=null;var fU=cH(fP)-fV;if(fU){fB(fS,fS.height+fU)}}})};P.prototype.attachLine=function(fO){if(!this.lines.length&&this.doc.cm){var fP=this.doc.cm.curOp;if(!fP.maybeHiddenMarkers||c1(fP.maybeHiddenMarkers,this)==-1){(fP.maybeUnhiddenMarkers||(fP.maybeUnhiddenMarkers=[])).push(this)}}this.lines.push(fO)};P.prototype.detachLine=function(fO){this.lines.splice(c1(this.lines,fO),1);if(!this.lines.length&&this.doc.cm){var fP=this.doc.cm.curOp;(fP.maybeHiddenMarkers||(fP.maybeHiddenMarkers=[])).push(this)}};var aV=0;function ej(fW,fU,fV,fY,fS){if(fY&&fY.shared){return O(fW,fU,fV,fY,fS)}if(fW.cm&&!fW.cm.curOp){return cL(fW.cm,ej)(fW,fU,fV,fY,fS)}var fR=new P(fW,fS),fX=b5(fU,fV);if(fY){aE(fY,fR,false)}if(fX>0||fX==0&&fR.clearWhenEmpty!==false){return fR}if(fR.replacedWith){fR.collapsed=true;fR.widgetNode=fx("span",[fR.replacedWith],"CodeMirror-widget");if(!fY.handleMouseEvents){fR.widgetNode.ignoreEvents=true}if(fY.insertLeft){fR.widgetNode.insertLeft=true}}if(fR.collapsed){if(A(fW,fU.line,fU,fV,fR)||fU.line!=fV.line&&A(fW,fV.line,fU,fV,fR)){throw new Error("Inserting collapsed marker partially overlapping an existing one")}aX=true}if(fR.addToHistory){fn(fW,{from:fU,to:fV,origin:"markText"},fW.sel,NaN)}var fP=fU.line,fT=fW.cm,fO;fW.iter(fP,fV.line+1,function(fZ){if(fT&&fR.collapsed&&!fT.options.lineWrapping&&z(fZ)==fT.display.maxLine){fO=true}if(fR.collapsed&&fP!=fU.line){fB(fZ,0)}b3(fZ,new dU(fR,fP==fU.line?fU.ch:null,fP==fV.line?fV.ch:null));++fP});if(fR.collapsed){fW.iter(fU.line,fV.line+1,function(fZ){if(e7(fW,fZ)){fB(fZ,0)}})}if(fR.clearOnEnter){bM(fR,"beforeCursorEnter",function(){fR.clear()})}if(fR.readOnly){fI=true;if(fW.history.done.length||fW.history.undone.length){fW.clearHistory()}}if(fR.collapsed){fR.id=++aV;fR.atomic=true}if(fT){if(fO){fT.curOp.updateMaxLine=true}if(fR.collapsed){af(fT,fU.line,fV.line+1)}else{if(fR.className||fR.title||fR.startStyle||fR.endStyle){for(var fQ=fU.line;fQ<=fV.line;fQ++){R(fT,fQ,"text")}}}if(fR.atomic){ea(fT.doc)}ac(fT,"markerAdded",fT,fR)}return fR}var y=I.SharedTextMarker=function(fQ,fP){this.markers=fQ;this.primary=fP;for(var fO=0;fO<fQ.length;++fO){fQ[fO].parent=this}};bo(y);y.prototype.clear=function(){if(this.explicitlyCleared){return}this.explicitlyCleared=true;for(var fO=0;fO<this.markers.length;++fO){this.markers[fO].clear()}ac(this,"clear")};y.prototype.find=function(fP,fO){return this.primary.find(fP,fO)};function O(fS,fV,fU,fO,fQ){fO=aE(fO);fO.shared=false;var fT=[ej(fS,fV,fU,fO,fQ)],fP=fT[0];var fR=fO.widgetNode;dK(fS,function(fX){if(fR){fO.widgetNode=fR.cloneNode(true)}fT.push(ej(fX,fk(fX,fV),fk(fX,fU),fO,fQ));for(var fW=0;fW<fX.linked.length;++fW){if(fX.linked[fW].isParent){return}}fP=fi(fT)});return new y(fT,fP)}function es(fO){return fO.findMarks(W(fO.first,0),fO.clipPos(W(fO.lastLine())),function(fP){return fP.parent})}function dk(fT,fU){for(var fR=0;fR<fU.length;fR++){var fP=fU[fR],fV=fP.find();var fO=fT.clipPos(fV.from),fS=fT.clipPos(fV.to);if(b5(fO,fS)){var fQ=ej(fT,fO,fS,fP.primary,fP.primary.type);fP.markers.push(fQ);fQ.parent=fP}}}function d0(fR){for(var fQ=0;fQ<fR.length;fQ++){var fO=fR[fQ],fT=[fO.primary.doc];dK(fO.primary.doc,function(fU){fT.push(fU)});for(var fP=0;fP<fO.markers.length;fP++){var fS=fO.markers[fP];if(c1(fT,fS.doc)==-1){fS.parent=null;fO.markers.splice(fP--,1)}}}}function dU(fO,fQ,fP){this.marker=fO;this.from=fQ;this.to=fP}function eJ(fQ,fO){if(fQ){for(var fP=0;fP<fQ.length;++fP){var fR=fQ[fP];if(fR.marker==fO){return fR}}}}function el(fP,fQ){for(var fR,fO=0;fO<fP.length;++fO){if(fP[fO]!=fQ){(fR||(fR=[])).push(fP[fO])}}return fR}function b3(fO,fP){fO.markedSpans=fO.markedSpans?fO.markedSpans.concat([fP]):[fP];fP.marker.attachLine(fO)}function aH(fP,fQ,fU){if(fP){for(var fS=0,fV;fS<fP.length;++fS){var fW=fP[fS],fT=fW.marker;var fO=fW.from==null||(fT.inclusiveLeft?fW.from<=fQ:fW.from<fQ);if(fO||fW.from==fQ&&fT.type=="bookmark"&&(!fU||!fW.marker.insertLeft)){var fR=fW.to==null||(fT.inclusiveRight?fW.to>=fQ:fW.to>fQ);(fV||(fV=[])).push(new dU(fT,fW.from,fR?null:fW.to))}}}return fV}function ax(fP,fR,fU){if(fP){for(var fS=0,fV;fS<fP.length;++fS){var fW=fP[fS],fT=fW.marker;var fQ=fW.to==null||(fT.inclusiveRight?fW.to>=fR:fW.to>fR);if(fQ||fW.from==fR&&fT.type=="bookmark"&&(!fU||fW.marker.insertLeft)){var fO=fW.from==null||(fT.inclusiveLeft?fW.from<=fR:fW.from<fR);(fV||(fV=[])).push(new dU(fT,fO?null:fW.from-fR,fW.to==null?null:fW.to-fR))}}}return fV}function dW(f0,fX){var fW=bW(f0,fX.from.line)&&eP(f0,fX.from.line).markedSpans;var f3=bW(f0,fX.to.line)&&eP(f0,fX.to.line).markedSpans;if(!fW&&!f3){return null}var fP=fX.from.ch,fS=fX.to.ch,fV=b5(fX.from,fX.to)==0;var fU=aH(fW,fP,fV);var f2=ax(f3,fS,fV);var f1=fX.text.length==1,fQ=fi(fX.text).length+(f1?fP:0);if(fU){for(var fR=0;fR<fU.length;++fR){var fZ=fU[fR];if(fZ.to==null){var f4=eJ(f2,fZ.marker);if(!f4){fZ.to=fP}else{if(f1){fZ.to=f4.to==null?null:f4.to+fQ}}}}}if(f2){for(var fR=0;fR<f2.length;++fR){var fZ=f2[fR];if(fZ.to!=null){fZ.to+=fQ}if(fZ.from==null){var f4=eJ(fU,fZ.marker);if(!f4){fZ.from=fQ;if(f1){(fU||(fU=[])).push(fZ)}}}else{fZ.from+=fQ;if(f1){(fU||(fU=[])).push(fZ)}}}}if(fU){fU=r(fU)}if(f2&&f2!=fU){f2=r(f2)}var fT=[fU];if(!f1){var fY=fX.text.length-2,fO;if(fY>0&&fU){for(var fR=0;fR<fU.length;++fR){if(fU[fR].to==null){(fO||(fO=[])).push(new dU(fU[fR].marker,null,null))}}}for(var fR=0;fR<fY;++fR){fT.push(fO)}fT.push(f2)}return fT}function r(fP){for(var fO=0;fO<fP.length;++fO){var fQ=fP[fO];if(fQ.from!=null&&fQ.from==fQ.to&&fQ.marker.clearWhenEmpty!==false){fP.splice(fO--,1)}}if(!fP.length){return null}return fP}function dM(fW,fU){var fO=bS(fW,fU);var fX=dW(fW,fU);if(!fO){return fX}if(!fX){return fO}for(var fR=0;fR<fO.length;++fR){var fS=fO[fR],fT=fX[fR];if(fS&&fT){spans:for(var fQ=0;fQ<fT.length;++fQ){var fV=fT[fQ];for(var fP=0;fP<fS.length;++fP){if(fS[fP].marker==fV.marker){continue spans}}fS.push(fV)}}else{if(fT){fO[fR]=fT}}}return fO}function cv(f0,fY,fZ){var fS=null;f0.iter(fY.line,fZ.line+1,function(f1){if(f1.markedSpans){for(var f2=0;f2<f1.markedSpans.length;++f2){var f3=f1.markedSpans[f2].marker;if(f3.readOnly&&(!fS||c1(fS,f3)==-1)){(fS||(fS=[])).push(f3)}}}});if(!fS){return null}var fT=[{from:fY,to:fZ}];for(var fU=0;fU<fS.length;++fU){var fV=fS[fU],fQ=fV.find(0);for(var fR=0;fR<fT.length;++fR){var fP=fT[fR];if(b5(fP.to,fQ.from)<0||b5(fP.from,fQ.to)>0){continue}var fX=[fR,1],fO=b5(fP.from,fQ.from),fW=b5(fP.to,fQ.to);if(fO<0||!fV.inclusiveLeft&&!fO){fX.push({from:fP.from,to:fQ.from})}if(fW>0||!fV.inclusiveRight&&!fW){fX.push({from:fQ.to,to:fP.to})}fT.splice.apply(fT,fX);fR+=fX.length-1}}return fT}function fE(fO){var fQ=fO.markedSpans;if(!fQ){return}for(var fP=0;fP<fQ.length;++fP){fQ[fP].marker.detachLine(fO)}fO.markedSpans=null}function cM(fO,fQ){if(!fQ){return}for(var fP=0;fP<fQ.length;++fP){fQ[fP].marker.attachLine(fO)}fO.markedSpans=fQ}function w(fO){return fO.inclusiveLeft?-1:0}function bL(fO){return fO.inclusiveRight?1:0}function du(fR,fP){var fT=fR.lines.length-fP.lines.length;if(fT!=0){return fT}var fQ=fR.find(),fU=fP.find();var fO=b5(fQ.from,fU.from)||w(fR)-w(fP);if(fO){return -fO}var fS=b5(fQ.to,fU.to)||bL(fR)-bL(fP);if(fS){return fS}return fP.id-fR.id}function aW(fP,fT){var fO=aX&&fP.markedSpans,fS;if(fO){for(var fR,fQ=0;fQ<fO.length;++fQ){fR=fO[fQ];if(fR.marker.collapsed&&(fT?fR.from:fR.to)==null&&(!fS||du(fS,fR.marker)<0)){fS=fR.marker}}}return fS}function er(fO){return aW(fO,true)}function d7(fO){return aW(fO,false)}function A(fW,fQ,fU,fV,fS){var fZ=eP(fW,fQ);var fO=aX&&fZ.markedSpans;if(fO){for(var fR=0;fR<fO.length;++fR){var fP=fO[fR];if(!fP.marker.collapsed){continue}var fY=fP.marker.find(0);var fX=b5(fY.from,fU)||w(fP.marker)-w(fS);var fT=b5(fY.to,fV)||bL(fP.marker)-bL(fS);if(fX>=0&&fT<=0||fX<=0&&fT>=0){continue}if(fX<=0&&(b5(fY.to,fU)||bL(fP.marker)-w(fS))>0||fX>=0&&(b5(fY.from,fV)||w(fP.marker)-bL(fS))<0){return true}}}}function z(fP){var fO;while(fO=er(fP)){fP=fO.find(-1,true).line}return fP}function i(fQ){var fO,fP;while(fO=d7(fQ)){fQ=fO.find(1,true).line;(fP||(fP=[])).push(fQ)}return fP}function aM(fR,fP){var fO=eP(fR,fP),fQ=z(fO);if(fO==fQ){return fP}return bC(fQ)}function dG(fR,fQ){if(fQ>fR.lastLine()){return fQ}var fP=eP(fR,fQ),fO;if(!e7(fR,fP)){return fQ}while(fO=d7(fP)){fP=fO.find(1,true).line}return bC(fP)+1}function e7(fS,fP){var fO=aX&&fP.markedSpans;if(fO){for(var fR,fQ=0;fQ<fO.length;++fQ){fR=fO[fQ];if(!fR.marker.collapsed){continue}if(fR.from==null){return true}if(fR.marker.widgetNode){continue}if(fR.from==0&&fR.marker.inclusiveLeft&&T(fS,fP,fR)){return true}}}}function T(fT,fP,fR){if(fR.to==null){var fO=fR.marker.find(1,true);return T(fT,fO.line,eJ(fO.line.markedSpans,fR.marker))}if(fR.marker.inclusiveRight&&fR.to==fP.text.length){return true}for(var fS,fQ=0;fQ<fP.markedSpans.length;++fQ){fS=fP.markedSpans[fQ];if(fS.marker.collapsed&&!fS.marker.widgetNode&&fS.from==fR.to&&(fS.to==null||fS.to!=fR.from)&&(fS.marker.inclusiveLeft||fR.marker.inclusiveRight)&&T(fT,fP,fS)){return true}}}var dh=I.LineWidget=function(fO,fR,fP){if(fP){for(var fQ in fP){if(fP.hasOwnProperty(fQ)){this[fQ]=fP[fQ]}}}this.cm=fO;this.node=fR};bo(dh);function dD(fO,fP,fQ){if(bB(fP)<((fO.curOp&&fO.curOp.scrollTop)||fO.doc.scrollTop)){cy(fO,null,fQ)}}dh.prototype.clear=function(){var fP=this.cm,fR=this.line.widgets,fQ=this.line,fT=bC(fQ);if(fT==null||!fR){return}for(var fS=0;fS<fR.length;++fS){if(fR[fS]==this){fR.splice(fS--,1)}}if(!fR.length){fQ.widgets=null}var fO=cH(this);cz(fP,function(){dD(fP,fQ,-fO);R(fP,fT,"widget");fB(fQ,Math.max(0,fQ.height-fO))})};dh.prototype.changed=function(){var fP=this.height,fO=this.cm,fQ=this.line;this.height=null;var fR=cH(this)-fP;if(!fR){return}cz(fO,function(){fO.curOp.forceUpdate=true;dD(fO,fQ,fR);fB(fQ,fQ.height+fR)})};function cH(fO){if(fO.height!=null){return fO.height}if(!fG(document.body,fO.node)){bG(fO.cm.display.measure,fx("div",[fO.node],null,"position: relative"))}return fO.height=fO.node.offsetHeight}function bw(fO,fS,fQ,fP){var fR=new dh(fO,fQ,fP);if(fR.noHScroll){fO.display.alignWidgets=true}eb(fO,fS,"widget",function(fU){var fV=fU.widgets||(fU.widgets=[]);if(fR.insertAt==null){fV.push(fR)}else{fV.splice(Math.min(fV.length-1,Math.max(0,fR.insertAt)),0,fR)}fR.line=fU;if(!e7(fO.doc,fU)){var fT=bB(fU)<fO.doc.scrollTop;fB(fU,fU.height+cH(fR));if(fT){cy(fO,null,fR.height)}fO.curOp.forceUpdate=true}return true});return fR}var fD=I.Line=function(fQ,fP,fO){this.text=fQ;cM(this,fP);this.height=fO?fO(this):1};bo(fD);fD.prototype.lineNo=function(){return bC(this)};function dZ(fP,fS,fQ,fO){fP.text=fS;if(fP.stateAfter){fP.stateAfter=null}if(fP.styles){fP.styles=null}if(fP.order!=null){fP.order=null}fE(fP);cM(fP,fQ);var fR=fO?fO(fP):1;if(fR!=fP.height){fB(fP,fR)}}function bq(fO){fO.parent=null;fE(fO)}function c2(fQ,fP){if(fQ){for(;;){var fO=fQ.match(/(?:^|\s+)line-(background-)?(\S+)/);if(!fO){break}fQ=fQ.slice(0,fO.index)+fQ.slice(fO.index+fO[0].length);var fR=fO[1]?"bgClass":"textClass";if(fP[fR]==null){fP[fR]=fO[2]}else{if(!(new RegExp("(?:^|s)"+fO[2]+"(?:$|s)")).test(fP[fR])){fP[fR]+=" "+fO[2]}}}}return fQ}function e1(fQ,fP){if(fQ.blankLine){return fQ.blankLine(fP)}if(!fQ.innerMode){return}var fO=I.innerMode(fQ,fP);if(fO.mode.blankLine){return fO.mode.blankLine(fO.state)}}function ef(fS,fR,fQ){for(var fO=0;fO<10;fO++){var fP=fS.token(fR,fQ);if(fR.pos>fR.start){return fP}}throw new Error("Mode "+fS.name+" failed to advance stream.")}function x(fY,f0,fT,fP,fU,fR,fS){var fQ=fT.flattenSpans;if(fQ==null){fQ=fY.options.flattenSpans}var fW=0,fV=null;var fZ=new ew(f0,fY.options.tabSize),fO;if(f0==""){c2(e1(fT,fP),fR)}while(!fZ.eol()){if(fZ.pos>fY.options.maxHighlightLength){fQ=false;if(fS){dc(fY,f0,fP,fZ.pos)}fZ.pos=f0.length;fO=null}else{fO=c2(ef(fT,fZ,fP),fR)}if(fY.options.addModeClass){var f1=I.innerMode(fT,fP).mode.name;if(f1){fO="m-"+(fO?f1+" "+fO:f1)}}if(!fQ||fV!=fO){if(fW<fZ.start){fU(fZ.start,fV)}fW=fZ.start;fV=fO}fZ.start=fZ.pos}while(fW<fZ.pos){var fX=Math.min(fZ.pos,fW+50000);fU(fX,fV);fW=fX}}function fa(fV,fX,fO,fS){var fW=[fV.state.modeGen],fR={};x(fV,fX.text,fV.doc.mode,fO,function(fY,fZ){fW.push(fY,fZ)},fR,fS);for(var fP=0;fP<fV.state.overlays.length;++fP){var fT=fV.state.overlays[fP],fU=1,fQ=0;x(fV,fX.text,fT.mode,true,function(fY,f0){var f2=fU;while(fQ<fY){var fZ=fW[fU];if(fZ>fY){fW.splice(fU,1,fY,fW[fU+1],fZ)}fU+=2;fQ=Math.min(fY,fZ)}if(!f0){return}if(fT.opaque){fW.splice(f2,fU-f2,fY,"cm-overlay "+f0);fU=f2+2}else{for(;f2<fU;f2+=2){var f1=fW[f2+1];fW[f2+1]=(f1?f1+" ":"")+"cm-overlay "+f0}}},fR)}return{styles:fW,classes:fR.bgClass||fR.textClass?fR:null}}function cQ(fP,fQ){if(!fQ.styles||fQ.styles[0]!=fP.state.modeGen){var fO=fa(fP,fQ,fQ.stateAfter=dg(fP,bC(fQ)));fQ.styles=fO.styles;if(fO.classes){fQ.styleClasses=fO.classes}else{if(fQ.styleClasses){fQ.styleClasses=null}}}return fQ.styles}function dc(fO,fT,fQ,fP){var fS=fO.doc.mode;var fR=new ew(fT,fO.options.tabSize);fR.start=fR.pos=fP||0;if(fT==""){e1(fS,fQ)}while(!fR.eol()&&fR.pos<=fO.options.maxHighlightLength){ef(fS,fR,fQ);fR.start=fR.pos}}var dz={},bQ={};function ez(fQ,fP){if(!fQ||/^\s*$/.test(fQ)){return null}var fO=fP.addModeClass?bQ:dz;return fO[fQ]||(fO[fQ]=fQ.replace(/\S+/g,"cm-$&"))}function ev(fP,fT){var fU=fx("span",null,null,cJ?"padding-right: .1px":null);var fR={pre:fx("pre",[fU]),content:fU,col:0,pos:0,cm:fP};fT.measure={};for(var fS=0;fS<=(fT.rest?fT.rest.length:0);fS++){var fQ=fS?fT.rest[fS-1]:fT.line,fO;fR.pos=0;fR.addToken=u;if((dn||cJ)&&fP.getOption("lineWrapping")){fR.addToken=fg(fR.addToken)}if(bD(fP.display.measure)&&(fO=a(fQ))){fR.addToken=U(fR.addToken,fO)}fR.map=[];bf(fQ,fR,cQ(fP,fQ));if(fQ.styleClasses){if(fQ.styleClasses.bgClass){fR.bgClass=fs(fQ.styleClasses.bgClass,fR.bgClass||"")}if(fQ.styleClasses.textClass){fR.textClass=fs(fQ.styleClasses.textClass,fR.textClass||"")}}if(fR.map.length==0){fR.map.push(0,0,fR.content.appendChild(bd(fP.display.measure)))}if(fS==0){fT.measure.map=fR.map;fT.measure.cache={}}else{(fT.measure.maps||(fT.measure.maps=[])).push(fR.map);(fT.measure.caches||(fT.measure.caches=[])).push({})}}az(fP,"renderLine",fP,fT.line,fR.pre);if(fR.pre.className){fR.textClass=fs(fR.pre.className,fR.textClass||"")}return fR}function eN(fP){var fO=fx("span","\u2022","cm-invalidchar");fO.title="\\u"+fP.charCodeAt(0).toString(16);return fO}function u(fT,f3,fO,fR,f4,f2){if(!f3){return}var fY=fT.cm.options.specialChars,fX=false;if(!fY.test(f3)){fT.col+=f3.length;var fW=document.createTextNode(f3);fT.map.push(fT.pos,fT.pos+f3.length,fW);if(bY){fX=true}fT.pos+=f3.length}else{var fW=document.createDocumentFragment(),f0=0;while(true){fY.lastIndex=f0;var fP=fY.exec(f3);var fV=fP?fP.index-f0:f3.length-f0;if(fV){var fS=document.createTextNode(f3.slice(f0,f0+fV));if(bY){fW.appendChild(fx("span",[fS]))}else{fW.appendChild(fS)}fT.map.push(fT.pos,fT.pos+fV,fS);fT.col+=fV;fT.pos+=fV}if(!fP){break}f0+=fV+1;if(fP[0]=="\t"){var fU=fT.cm.options.tabSize,fZ=fU-fT.col%fU;var fS=fW.appendChild(fx("span",cf(fZ),"cm-tab"));fT.col+=fZ}else{var fS=fT.cm.options.specialCharPlaceholder(fP[0]);if(bY){fW.appendChild(fx("span",[fS]))}else{fW.appendChild(fS)}fT.col+=1}fT.map.push(fT.pos,fT.pos+1,fS);fT.pos++}}if(fO||fR||f4||fX){var f1=fO||"";if(fR){f1+=fR}if(f4){f1+=f4}var fQ=fx("span",[fW],f1);if(f2){fQ.title=f2}return fT.content.appendChild(fQ)}fT.content.appendChild(fW)}function fg(fO){function fP(fQ){var fR=" ";for(var fS=0;fS<fQ.length-2;++fS){fR+=fS%2?" ":"\u00a0"}fR+=" ";return fR}return function(fR,fV,fS,fQ,fU,fT){fO(fR,fV.replace(/ {3,}/g,fP),fS,fQ,fU,fT)}}function U(fP,fO){return function(fW,fY,fQ,fU,fZ,fX){fQ=fQ?fQ+" cm-force-border":"cm-force-border";var fR=fW.pos,fT=fR+fY.length;for(;;){for(var fV=0;fV<fO.length;fV++){var fS=fO[fV];if(fS.to>fR&&fS.from<=fR){break}}if(fS.to>=fT){return fP(fW,fY,fQ,fU,fZ,fX)}fP(fW,fY.slice(0,fS.to-fR),fQ,fU,null,fX);fU=null;fY=fY.slice(fS.to-fR);fR=fS.to}}}function aa(fP,fR,fO,fQ){var fS=!fQ&&fO.widgetNode;if(fS){fP.map.push(fP.pos,fP.pos+fR,fS);fP.content.appendChild(fS)}fP.pos+=fR}function bf(fX,f3,fW){var fT=fX.markedSpans,fV=fX.text,f1=0;if(!fT){for(var f6=1;f6<fW.length;f6+=2){f3.addToken(f3,fV.slice(f1,f1=fW[f6]),ez(fW[f6+1],f3.cm.options))}return}var f7=fV.length,fS=0,f6=1,fZ="",f8;var ga=0,fO,f9,f0,gb,fQ;for(;;){if(ga==fS){fO=f9=f0=gb="";fQ=null;ga=Infinity;var fU=[];for(var f4=0;f4<fT.length;++f4){var f5=fT[f4],f2=f5.marker;if(f5.from<=fS&&(f5.to==null||f5.to>fS)){if(f5.to!=null&&ga>f5.to){ga=f5.to;f9=""}if(f2.className){fO+=" "+f2.className}if(f2.startStyle&&f5.from==fS){f0+=" "+f2.startStyle}if(f2.endStyle&&f5.to==ga){f9+=" "+f2.endStyle}if(f2.title&&!gb){gb=f2.title}if(f2.collapsed&&(!fQ||du(fQ.marker,f2)<0)){fQ=f5}}else{if(f5.from>fS&&ga>f5.from){ga=f5.from}}if(f2.type=="bookmark"&&f5.from==fS&&f2.widgetNode){fU.push(f2)}}if(fQ&&(fQ.from||0)==fS){aa(f3,(fQ.to==null?f7+1:fQ.to)-fS,fQ.marker,fQ.from==null);if(fQ.to==null){return}}if(!fQ&&fU.length){for(var f4=0;f4<fU.length;++f4){aa(f3,0,fU[f4])}}}if(fS>=f7){break}var fY=Math.min(f7,ga);while(true){if(fZ){var fP=fS+fZ.length;if(!fQ){var fR=fP>fY?fZ.slice(0,fY-fS):fZ;f3.addToken(f3,fR,f8?f8+fO:fO,f0,fS+fR.length==ga?f9:"",gb)}if(fP>=fY){fZ=fZ.slice(fY-fS);fS=fY;break}fS=fP;f0=""}fZ=fV.slice(f1,f1=fW[f6++]);f8=ez(fW[f6++],f3.cm.options)}}}function dw(fO,fP){return fP.from.ch==0&&fP.to.ch==0&&fi(fP.text)==""&&(!fO.cm||fO.cm.options.wholeLineUpdateBefore)}function e9(f1,fW,fO,fS){function f2(f4){return fO?fO[f4]:null}function fP(f4,f6,f5){dZ(f4,f6,f5,fS);ac(f4,"change",f4,fW)}var fZ=fW.from,f0=fW.to,f3=fW.text;var fX=eP(f1,fZ.line),fY=eP(f1,f0.line);var fV=fi(f3),fR=f2(f3.length-1),fU=f0.line-fZ.line;if(dw(f1,fW)){for(var fQ=0,fT=[];fQ<f3.length-1;++fQ){fT.push(new fD(f3[fQ],f2(fQ),fS))}fP(fY,fY.text,fR);if(fU){f1.remove(fZ.line,fU)}if(fT.length){f1.insert(fZ.line,fT)}}else{if(fX==fY){if(f3.length==1){fP(fX,fX.text.slice(0,fZ.ch)+fV+fX.text.slice(f0.ch),fR)}else{for(var fT=[],fQ=1;fQ<f3.length-1;++fQ){fT.push(new fD(f3[fQ],f2(fQ),fS))}fT.push(new fD(fV+fX.text.slice(f0.ch),fR,fS));fP(fX,fX.text.slice(0,fZ.ch)+f3[0],f2(0));f1.insert(fZ.line+1,fT)}}else{if(f3.length==1){fP(fX,fX.text.slice(0,fZ.ch)+f3[0]+fY.text.slice(f0.ch),f2(0));f1.remove(fZ.line+1,fU)}else{fP(fX,fX.text.slice(0,fZ.ch)+f3[0],f2(0));fP(fY,fV+fY.text.slice(f0.ch),fR);for(var fQ=1,fT=[];fQ<f3.length-1;++fQ){fT.push(new fD(f3[fQ],f2(fQ),fS))}if(fU>1){f1.remove(fZ.line+1,fU-1)}f1.insert(fZ.line+1,fT)}}}ac(f1,"change",f1,fW)}function eC(fP){this.lines=fP;this.parent=null;for(var fQ=0,fO=0;fQ<fP.length;++fQ){fP[fQ].parent=this;fO+=fP[fQ].height}this.height=fO}eC.prototype={chunkSize:function(){return this.lines.length},removeInner:function(fO,fS){for(var fQ=fO,fR=fO+fS;fQ<fR;++fQ){var fP=this.lines[fQ];this.height-=fP.height;bq(fP);ac(fP,"delete")}this.lines.splice(fO,fS)},collapse:function(fO){fO.push.apply(fO,this.lines)},insertInner:function(fP,fQ,fO){this.height+=fO;this.lines=this.lines.slice(0,fP).concat(fQ).concat(this.lines.slice(fP));for(var fR=0;fR<fQ.length;++fR){fQ[fR].parent=this}},iterN:function(fO,fR,fQ){for(var fP=fO+fR;fO<fP;++fO){if(fQ(this.lines[fO])){return true}}}};function e8(fR){this.children=fR;var fQ=0,fO=0;for(var fP=0;fP<fR.length;++fP){var fS=fR[fP];fQ+=fS.chunkSize();fO+=fS.height;fS.parent=this}this.size=fQ;this.height=fO;this.parent=null}e8.prototype={chunkSize:function(){return this.size},removeInner:function(fO,fV){this.size-=fV;for(var fQ=0;fQ<this.children.length;++fQ){var fU=this.children[fQ],fS=fU.chunkSize();if(fO<fS){var fR=Math.min(fV,fS-fO),fT=fU.height;fU.removeInner(fO,fR);this.height-=fT-fU.height;if(fS==fR){this.children.splice(fQ--,1);fU.parent=null}if((fV-=fR)==0){break}fO=0}else{fO-=fS}}if(this.size-fV<25&&(this.children.length>1||!(this.children[0] instanceof eC))){var fP=[];this.collapse(fP);this.children=[new eC(fP)];this.children[0].parent=this}},collapse:function(fO){for(var fP=0;fP<this.children.length;++fP){this.children[fP].collapse(fO)}},insertInner:function(fP,fQ,fO){this.size+=fQ.length;this.height+=fO;for(var fT=0;fT<this.children.length;++fT){var fV=this.children[fT],fU=fV.chunkSize();if(fP<=fU){fV.insertInner(fP,fQ,fO);if(fV.lines&&fV.lines.length>50){while(fV.lines.length>50){var fS=fV.lines.splice(fV.lines.length-25,25);var fR=new eC(fS);fV.height-=fR.height;this.children.splice(fT+1,0,fR);fR.parent=this}this.maybeSpill()}break}fP-=fU}},maybeSpill:function(){if(this.children.length<=10){return}var fR=this;do{var fP=fR.children.splice(fR.children.length-5,5);var fQ=new e8(fP);if(!fR.parent){var fS=new e8(fR.children);fS.parent=fR;fR.children=[fS,fQ];fR=fS}else{fR.size-=fQ.size;fR.height-=fQ.height;var fO=c1(fR.parent.children,fR);fR.parent.children.splice(fO+1,0,fQ)}fQ.parent=fR.parent}while(fR.children.length>10);fR.parent.maybeSpill()},iterN:function(fO,fU,fT){for(var fP=0;fP<this.children.length;++fP){var fS=this.children[fP],fR=fS.chunkSize();if(fO<fR){var fQ=Math.min(fU,fR-fO);if(fS.iterN(fO,fQ,fT)){return true}if((fU-=fQ)==0){break}fO=0}else{fO-=fR}}}};var cg=0;var ao=I.Doc=function(fQ,fP,fO){if(!(this instanceof ao)){return new ao(fQ,fP,fO)}if(fO==null){fO=0}e8.call(this,[new eC([new fD("",null)])]);this.first=fO;this.scrollTop=this.scrollLeft=0;this.cantEdit=false;this.cleanGeneration=1;this.frontier=fO;var fR=W(fO,0);this.sel=eu(fR);this.history=new ft(null);this.id=++cg;this.modeOption=fP;if(typeof fQ=="string"){fQ=aQ(fQ)}e9(this,{from:fR,to:fR,text:fQ});bJ(this,eu(fR),Y)};ao.prototype=ca(e8.prototype,{constructor:ao,iter:function(fQ,fP,fO){if(fO){this.iterN(fQ-this.first,fP-fQ,fO)}else{this.iterN(this.first,this.first+this.size,fQ)}},insert:function(fP,fQ){var fO=0;for(var fR=0;fR<fQ.length;++fR){fO+=fQ[fR].height}this.insertInner(fP-this.first,fQ,fO)},remove:function(fO,fP){this.removeInner(fO-this.first,fP)},getValue:function(fP){var fO=aS(this,this.first,this.first+this.size);if(fP===false){return fO}return fO.join(fP||"\n")},setValue:cs(function(fP){var fQ=W(this.first,0),fO=this.first+this.size-1;a5(this,{from:fQ,to:W(fO,eP(this,fO).text.length),text:aQ(fP),origin:"setValue"},true);bJ(this,eu(fQ))}),replaceRange:function(fP,fR,fQ,fO){fR=fk(this,fR);fQ=fQ?fk(this,fQ):fR;aR(this,fP,fR,fQ,fO)},getRange:function(fR,fQ,fP){var fO=fz(this,fk(this,fR),fk(this,fQ));if(fP===false){return fO}return fO.join(fP||"\n")},getLine:function(fP){var fO=this.getLineHandle(fP);return fO&&fO.text},getLineHandle:function(fO){if(bW(this,fO)){return eP(this,fO)}},getLineNumber:function(fO){return bC(fO)},getLineHandleVisualStart:function(fO){if(typeof fO=="number"){fO=eP(this,fO)}return z(fO)},lineCount:function(){return this.size},firstLine:function(){return this.first},lastLine:function(){return this.first+this.size-1},clipPos:function(fO){return fk(this,fO)},getCursor:function(fQ){var fO=this.sel.primary(),fP;if(fQ==null||fQ=="head"){fP=fO.head}else{if(fQ=="anchor"){fP=fO.anchor}else{if(fQ=="end"||fQ=="to"||fQ===false){fP=fO.to()}else{fP=fO.from()}}}return fP},listSelections:function(){return this.sel.ranges},somethingSelected:function(){return this.sel.somethingSelected()},setCursor:cs(function(fO,fQ,fP){G(this,fk(this,typeof fO=="number"?W(fO,fQ||0):fO),null,fP)}),setSelection:cs(function(fP,fQ,fO){G(this,fk(this,fP),fk(this,fQ||fP),fO)}),extendSelection:cs(function(fQ,fO,fP){fu(this,fk(this,fQ),fO&&fk(this,fO),fP)}),extendSelections:cs(function(fP,fO){at(this,dC(this,fP,fO))}),extendSelectionsBy:cs(function(fP,fO){at(this,bH(this.sel.ranges,fP),fO)}),setSelections:cs(function(fO,fS,fQ){if(!fO.length){return}for(var fR=0,fP=[];fR<fO.length;fR++){fP[fR]=new dB(fk(this,fO[fR].anchor),fk(this,fO[fR].head))}if(fS==null){fS=Math.min(fO.length-1,this.sel.primIndex)}bJ(this,cm(fP,fS),fQ)}),addSelection:cs(function(fQ,fR,fP){var fO=this.sel.ranges.slice(0);fO.push(new dB(fk(this,fQ),fk(this,fR||fQ)));bJ(this,cm(fO,fO.length-1),fP)}),getSelection:function(fS){var fP=this.sel.ranges,fO;for(var fQ=0;fQ<fP.length;fQ++){var fR=fz(this,fP[fQ].from(),fP[fQ].to());fO=fO?fO.concat(fR):fR}if(fS===false){return fO}else{return fO.join(fS||"\n")}},getSelections:function(fS){var fR=[],fO=this.sel.ranges;for(var fP=0;fP<fO.length;fP++){var fQ=fz(this,fO[fP].from(),fO[fP].to());if(fS!==false){fQ=fQ.join(fS||"\n")}fR[fP]=fQ}return fR},replaceSelection:function(fQ,fS,fO){var fR=[];for(var fP=0;fP<this.sel.ranges.length;fP++){fR[fP]=fQ}this.replaceSelections(fR,fS,fO||"+input")},replaceSelections:cs(function(fT,fV,fQ){var fS=[],fU=this.sel;for(var fR=0;fR<fU.ranges.length;fR++){var fP=fU.ranges[fR];fS[fR]={from:fP.from(),to:fP.to(),text:aQ(fT[fR]),origin:fQ}}var fO=fV&&fV!="end"&&ad(this,fS,fV);for(var fR=fS.length-1;fR>=0;fR--){a5(this,fS[fR])}if(fO){eH(this,fO)}else{if(this.cm){fh(this.cm)}}}),undo:cs(function(){bV(this,"undo")}),redo:cs(function(){bV(this,"redo")}),undoSelection:cs(function(){bV(this,"undo",true)}),redoSelection:cs(function(){bV(this,"redo",true)}),setExtending:function(fO){this.extend=fO},getExtending:function(){return this.extend},historySize:function(){var fR=this.history,fO=0,fQ=0;for(var fP=0;fP<fR.done.length;fP++){if(!fR.done[fP].ranges){++fO}}for(var fP=0;fP<fR.undone.length;fP++){if(!fR.undone[fP].ranges){++fQ}}return{undo:fO,redo:fQ}},clearHistory:function(){this.history=new ft(this.history.maxGeneration)},markClean:function(){this.cleanGeneration=this.changeGeneration(true)},changeGeneration:function(fO){if(fO){this.history.lastOp=this.history.lastOrigin=null}return this.history.generation},isClean:function(fO){return this.history.generation==(fO||this.cleanGeneration)},getHistory:function(){return{done:bE(this.history.done),undone:bE(this.history.undone)}},setHistory:function(fP){var fO=this.history=new ft(this.history.maxGeneration);fO.done=bE(fP.done.slice(0),null,true);fO.undone=bE(fP.undone.slice(0),null,true)},markText:function(fQ,fP,fO){return ej(this,fk(this,fQ),fk(this,fP),fO,"range")},setBookmark:function(fQ,fO){var fP={replacedWith:fO&&(fO.nodeType==null?fO.widget:fO),insertLeft:fO&&fO.insertLeft,clearWhenEmpty:false,shared:fO&&fO.shared};fQ=fk(this,fQ);return ej(this,fQ,fQ,fP,"bookmark")},findMarksAt:function(fS){fS=fk(this,fS);var fR=[],fP=eP(this,fS.line).markedSpans;if(fP){for(var fO=0;fO<fP.length;++fO){var fQ=fP[fO];if((fQ.from==null||fQ.from<=fS.ch)&&(fQ.to==null||fQ.to>=fS.ch)){fR.push(fQ.marker.parent||fQ.marker)}}}return fR},findMarks:function(fS,fR,fO){fS=fk(this,fS);fR=fk(this,fR);var fP=[],fQ=fS.line;this.iter(fS.line,fR.line+1,function(fT){var fV=fT.markedSpans;if(fV){for(var fU=0;fU<fV.length;fU++){var fW=fV[fU];if(!(fQ==fS.line&&fS.ch>fW.to||fW.from==null&&fQ!=fS.line||fQ==fR.line&&fW.from>fR.ch)&&(!fO||fO(fW.marker))){fP.push(fW.marker.parent||fW.marker)}}}++fQ});return fP},getAllMarks:function(){var fO=[];this.iter(function(fQ){var fP=fQ.markedSpans;if(fP){for(var fR=0;fR<fP.length;++fR){if(fP[fR].from!=null){fO.push(fP[fR].marker)}}}});return fO},posFromIndex:function(fP){var fO,fQ=this.first;this.iter(function(fR){var fS=fR.text.length+1;if(fS>fP){fO=fP;return true}fP-=fS;++fQ});return fk(this,W(fQ,fO))},indexFromPos:function(fP){fP=fk(this,fP);var fO=fP.ch;if(fP.line<this.first||fP.ch<0){return 0}this.iter(this.first,fP.line,function(fQ){fO+=fQ.text.length+1});return fO},copy:function(fO){var fP=new ao(aS(this,this.first,this.first+this.size),this.modeOption,this.first);fP.scrollTop=this.scrollTop;fP.scrollLeft=this.scrollLeft;fP.sel=this.sel;fP.extend=false;if(fO){fP.history.undoDepth=this.history.undoDepth;fP.setHistory(this.getHistory())}return fP},linkedDoc:function(fO){if(!fO){fO={}}var fR=this.first,fQ=this.first+this.size;if(fO.from!=null&&fO.from>fR){fR=fO.from}if(fO.to!=null&&fO.to<fQ){fQ=fO.to}var fP=new ao(aS(this,fR,fQ),fO.mode||this.modeOption,fR);if(fO.sharedHist){fP.history=this.history}(this.linked||(this.linked=[])).push({doc:fP,sharedHist:fO.sharedHist});fP.linked=[{doc:this,isParent:true,sharedHist:fO.sharedHist}];dk(fP,es(this));return fP},unlinkDoc:function(fP){if(fP instanceof I){fP=fP.doc}if(this.linked){for(var fQ=0;fQ<this.linked.length;++fQ){var fR=this.linked[fQ];if(fR.doc!=fP){continue}this.linked.splice(fQ,1);fP.unlinkDoc(this);d0(es(this));break}}if(fP.history==this.history){var fO=[fP.id];dK(fP,function(fS){fO.push(fS.id)},true);fP.history=new ft(null);fP.history.done=bE(this.history.done,fO);fP.history.undone=bE(this.history.undone,fO)}},iterLinkedDocs:function(fO){dK(this,fO)},getMode:function(){return this.mode},getEditor:function(){return this.cm}});ao.prototype.eachLine=ao.prototype.iter;var e="iter insert remove copy getEditor".split(" ");for(var bz in ao.prototype){if(ao.prototype.hasOwnProperty(bz)&&c1(e,bz)<0){I.prototype[bz]=(function(fO){return function(){return fO.apply(this.doc,arguments)}})(ao.prototype[bz])}}bo(ao);function dK(fR,fQ,fP){function fO(fX,fV,fT){if(fX.linked){for(var fU=0;fU<fX.linked.length;++fU){var fS=fX.linked[fU];if(fS.doc==fV){continue}var fW=fT&&fS.sharedHist;if(fP&&!fW){continue}fQ(fS.doc,fW);fO(fS.doc,fX,fW)}}}fO(fR,null,true)}function dN(fO,fP){if(fP.cm){throw new Error("This document is already in use.")}fO.doc=fP;fP.cm=fO;X(fO);bh(fO);if(!fO.options.lineWrapping){h(fO)}fO.options.mode=fP.modeOption;af(fO)}function eP(fR,fT){fT-=fR.first;if(fT<0||fT>=fR.size){throw new Error("There is no line "+(fT+fR.first)+" in the document.")}for(var fO=fR;!fO.lines;){for(var fP=0;;++fP){var fS=fO.children[fP],fQ=fS.chunkSize();if(fT<fQ){fO=fS;break}fT-=fQ}}return fO.lines[fT]}function fz(fQ,fS,fO){var fP=[],fR=fS.line;fQ.iter(fS.line,fO.line+1,function(fT){var fU=fT.text;if(fR==fO.line){fU=fU.slice(0,fO.ch)}if(fR==fS.line){fU=fU.slice(fS.ch)}fP.push(fU);++fR});return fP}function aS(fP,fR,fQ){var fO=[];fP.iter(fR,fQ,function(fS){fO.push(fS.text)});return fO}function fB(fP,fO){var fQ=fO-fP.height;if(fQ){for(var fR=fP;fR;fR=fR.parent){fR.height+=fQ}}}function bC(fO){if(fO.parent==null){return null}var fS=fO.parent,fR=c1(fS.lines,fO);for(var fP=fS.parent;fP;fS=fP,fP=fP.parent){for(var fQ=0;;++fQ){if(fP.children[fQ]==fS){break}fR+=fP.children[fQ].chunkSize()}}return fR+fS.first}function bv(fQ,fT){var fV=fQ.first;outer:do{for(var fR=0;fR<fQ.children.length;++fR){var fU=fQ.children[fR],fS=fU.height;if(fT<fS){fQ=fU;continue outer}fT-=fS;fV+=fU.chunkSize()}return fV}while(!fQ.lines);for(var fR=0;fR<fQ.lines.length;++fR){var fP=fQ.lines[fR],fO=fP.height;if(fT<fO){break}fT-=fO}return fV+fR}function bB(fQ){fQ=z(fQ);var fS=0,fP=fQ.parent;for(var fR=0;fR<fP.lines.length;++fR){var fO=fP.lines[fR];if(fO==fQ){break}else{fS+=fO.height}}for(var fT=fP.parent;fT;fP=fT,fT=fP.parent){for(var fR=0;fR<fT.children.length;++fR){var fU=fT.children[fR];if(fU==fP){break}else{fS+=fU.height}}}return fS}function a(fP){var fO=fP.order;if(fO==null){fO=fP.order=a6(fP.text)}return fO}function ft(fO){this.done=[];this.undone=[];this.undoDepth=Infinity;this.lastModTime=this.lastSelTime=0;this.lastOp=null;this.lastOrigin=this.lastSelOrigin=null;this.generation=this.maxGeneration=fO||1}function da(fO,fQ){var fP={from:b9(fQ.from),to:cG(fQ),text:fz(fO,fQ.from,fQ.to)};bN(fO,fP,fQ.from.line,fQ.to.line+1);dK(fO,function(fR){bN(fR,fP,fQ.from.line,fQ.to.line+1)},true);return fP}function fc(fP){while(fP.length){var fO=fi(fP);if(fO.ranges){fP.pop()}else{break}}}function eq(fP,fO){if(fO){fc(fP.done);return fi(fP.done)}else{if(fP.done.length&&!fi(fP.done).ranges){return fi(fP.done)}else{if(fP.done.length>1&&!fP.done[fP.done.length-2].ranges){fP.done.pop();return fi(fP.done)}}}}function fn(fU,fS,fO,fR){var fQ=fU.history;fQ.undone.length=0;var fP=+new Date,fV;if((fQ.lastOp==fR||fQ.lastOrigin==fS.origin&&fS.origin&&((fS.origin.charAt(0)=="+"&&fU.cm&&fQ.lastModTime>fP-fU.cm.options.historyEventDelay)||fS.origin.charAt(0)=="*"))&&(fV=eq(fQ,fQ.lastOp==fR))){var fW=fi(fV.changes);if(b5(fS.from,fS.to)==0&&b5(fS.from,fW.to)==0){fW.to=cG(fS)}else{fV.changes.push(da(fU,fS))}}else{var fT=fi(fQ.done);if(!fT||!fT.ranges){cA(fU.sel,fQ.done)}fV={changes:[da(fU,fS)],generation:fQ.generation};fQ.done.push(fV);while(fQ.done.length>fQ.undoDepth){fQ.done.shift();if(!fQ.done[0].ranges){fQ.done.shift()}}}fQ.done.push(fO);fQ.generation=++fQ.maxGeneration;fQ.lastModTime=fQ.lastSelTime=fP;fQ.lastOp=fR;fQ.lastOrigin=fQ.lastSelOrigin=fS.origin;if(!fW){az(fU,"historyAdded")}}function bp(fS,fO,fQ,fR){var fP=fO.charAt(0);return fP=="*"||fP=="+"&&fQ.ranges.length==fR.ranges.length&&fQ.somethingSelected()==fR.somethingSelected()&&new Date-fS.history.lastSelTime<=(fS.cm?fS.cm.options.historyEventDelay:500)}function fH(fT,fR,fO,fQ){var fS=fT.history,fP=fQ&&fQ.origin;if(fO==fS.lastOp||(fP&&fS.lastSelOrigin==fP&&(fS.lastModTime==fS.lastSelTime&&fS.lastOrigin==fP||bp(fT,fP,fi(fS.done),fR)))){fS.done[fS.done.length-1]=fR}else{cA(fR,fS.done)}fS.lastSelTime=+new Date;fS.lastSelOrigin=fP;fS.lastOp=fO;if(fQ&&fQ.clearRedo!==false){fc(fS.undone)}}function cA(fP,fO){var fQ=fi(fO);if(!(fQ&&fQ.ranges&&fQ.equals(fP))){fO.push(fP)}}function bN(fP,fT,fS,fR){var fO=fT["spans_"+fP.id],fQ=0;fP.iter(Math.max(fP.first,fS),Math.min(fP.first+fP.size,fR),function(fU){if(fU.markedSpans){(fO||(fO=fT["spans_"+fP.id]={}))[fQ]=fU.markedSpans}++fQ})}function bb(fQ){if(!fQ){return null}for(var fP=0,fO;fP<fQ.length;++fP){if(fQ[fP].marker.explicitlyCleared){if(!fO){fO=fQ.slice(0,fP)}}else{if(fO){fO.push(fQ[fP])}}}return !fO?fQ:fO.length?fO:null}function bS(fR,fS){var fQ=fS["spans_"+fR.id];if(!fQ){return null}for(var fP=0,fO=[];fP<fS.text.length;++fP){fO.push(bb(fQ[fP]))}return fO}function bE(fZ,fR,fY){for(var fU=0,fP=[];fU<fZ.length;++fU){var fQ=fZ[fU];if(fQ.ranges){fP.push(fY?fy.prototype.deepCopy.call(fQ):fQ);continue}var fW=fQ.changes,fX=[];fP.push({changes:fX});for(var fT=0;fT<fW.length;++fT){var fV=fW[fT],fS;fX.push({from:fV.from,to:fV.to,text:fV.text});if(fR){for(var fO in fV){if(fS=fO.match(/^spans_(\d+)$/)){if(c1(fR,Number(fS[1]))>-1){fi(fX)[fO]=fV[fO];delete fV[fO]}}}}}}return fP}function J(fR,fQ,fP,fO){if(fP<fR.line){fR.line+=fO}else{if(fQ<fR.line){fR.line=fQ;fR.ch=0}}}function eR(fR,fT,fU,fV){for(var fQ=0;fQ<fR.length;++fQ){var fO=fR[fQ],fS=true;if(fO.ranges){if(!fO.copied){fO=fR[fQ]=fO.deepCopy();fO.copied=true}for(var fP=0;fP<fO.ranges.length;fP++){J(fO.ranges[fP].anchor,fT,fU,fV);J(fO.ranges[fP].head,fT,fU,fV)}continue}for(var fP=0;fP<fO.changes.length;++fP){var fW=fO.changes[fP];if(fU<fW.from.line){fW.from=W(fW.from.line+fV,fW.from.ch);fW.to=W(fW.to.line+fV,fW.to.ch)}else{if(fT<=fW.to.line){fS=false;break}}}if(!fS){fR.splice(0,fQ+1);fQ=0}}}function dj(fP,fS){var fR=fS.from.line,fQ=fS.to.line,fO=fS.text.length-(fQ-fR)-1;eR(fP.done,fR,fQ,fO);eR(fP.undone,fR,fQ,fO)}var cu=I.e_preventDefault=function(fO){if(fO.preventDefault){fO.preventDefault()}else{fO.returnValue=false}};var c6=I.e_stopPropagation=function(fO){if(fO.stopPropagation){fO.stopPropagation()}else{fO.cancelBubble=true}};function bA(fO){return fO.defaultPrevented!=null?fO.defaultPrevented:fO.returnValue==false}var d3=I.e_stop=function(fO){cu(fO);c6(fO)};function L(fO){return fO.target||fO.srcElement}function fo(fP){var fO=fP.which;if(fO==null){if(fP.button&1){fO=1}else{if(fP.button&2){fO=3}else{if(fP.button&4){fO=2}}}}if(bU&&fP.ctrlKey&&fO==1){fO=3}return fO}var bM=I.on=function(fR,fP,fQ){if(fR.addEventListener){fR.addEventListener(fP,fQ,false)}else{if(fR.attachEvent){fR.attachEvent("on"+fP,fQ)}else{var fS=fR._handlers||(fR._handlers={});var fO=fS[fP]||(fS[fP]=[]);fO.push(fQ)}}};var dP=I.off=function(fS,fQ,fR){if(fS.removeEventListener){fS.removeEventListener(fQ,fR,false)}else{if(fS.detachEvent){fS.detachEvent("on"+fQ,fR)}else{var fO=fS._handlers&&fS._handlers[fQ];if(!fO){return}for(var fP=0;fP<fO.length;++fP){if(fO[fP]==fR){fO.splice(fP,1);break}}}}};var az=I.signal=function(fS,fR){var fO=fS._handlers&&fS._handlers[fR];if(!fO){return}var fP=Array.prototype.slice.call(arguments,2);for(var fQ=0;fQ<fO.length;++fQ){fO[fQ].apply(null,fP)}};var be,ch=0;function ac(fT,fS){var fO=fT._handlers&&fT._handlers[fS];if(!fO){return}var fQ=Array.prototype.slice.call(arguments,2);if(!be){++ch;be=[];setTimeout(ec,0)}function fP(fU){return function(){fU.apply(null,fQ)}}for(var fR=0;fR<fO.length;++fR){be.push(fP(fO[fR]))}}function ec(){--ch;var fO=be;be=null;for(var fP=0;fP<fO.length;++fP){fO[fP]()}}function aI(fO,fQ,fP){az(fO,fP||fQ.type,fO,fQ);return bA(fQ)||fQ.codemirrorIgnore}function V(fP){var fO=fP._handlers&&fP._handlers.cursorActivity;if(!fO){return}var fR=fP.curOp.cursorActivityHandlers||(fP.curOp.cursorActivityHandlers=[]);for(var fQ=0;fQ<fO.length;++fQ){if(c1(fR,fO[fQ])==-1){fR.push(fO[fQ])}}}function eS(fQ,fP){var fO=fQ._handlers&&fQ._handlers[fP];return fO&&fO.length>0}function bo(fO){fO.prototype.on=function(fP,fQ){bM(this,fP,fQ)};fO.prototype.off=function(fP,fQ){dP(this,fP,fQ)}}var ba=30;var bZ=I.Pass={toString:function(){return"CodeMirror.Pass"}};var Y={scroll:false},M={origin:"*mouse"},cF={origin:"+move"};function fN(){this.id=null}fN.prototype.set=function(fO,fP){clearTimeout(this.id);this.id=setTimeout(fP,fO)};var bI=I.countColumn=function(fR,fP,fT,fU,fQ){if(fP==null){fP=fR.search(/[^\s\u00a0]/);if(fP==-1){fP=fR.length}}for(var fS=fU||0,fV=fQ||0;;){var fO=fR.indexOf("\t",fS);if(fO<0||fO>=fP){return fV+(fP-fS)}fV+=fO-fS;fV+=fT-(fV%fT);fS=fO+1}};function d2(fS,fR,fT){for(var fU=0,fQ=0;;){var fP=fS.indexOf("\t",fU);if(fP==-1){fP=fS.length}var fO=fP-fU;if(fP==fS.length||fQ+fO>=fR){return fU+Math.min(fO,fR-fQ)}fQ+=fP-fU;fQ+=fT-(fQ%fT);fU=fP+1;if(fQ>=fR){return fU}}}var aP=[""];function cf(fO){while(aP.length<=fO){aP.push(fi(aP)+" ")}return aP[fO]}function fi(fO){return fO[fO.length-1]}var dq=function(fO){fO.select()};if(eD){dq=function(fO){fO.selectionStart=0;fO.selectionEnd=fO.value.length}}else{if(dn){dq=function(fP){try{fP.select()}catch(fO){}}}}function c1(fQ,fO){for(var fP=0;fP<fQ.length;++fP){if(fQ[fP]==fO){return fP}}return -1}if([].indexOf){c1=function(fP,fO){return fP.indexOf(fO)}}function bH(fR,fQ){var fO=[];for(var fP=0;fP<fR.length;fP++){fO[fP]=fQ(fR[fP],fP)}return fO}if([].map){bH=function(fP,fO){return fP.map(fO)}}function ca(fR,fO){var fQ;if(Object.create){fQ=Object.create(fR)}else{var fP=function(){};fP.prototype=fR;fQ=new fP()}if(fO){aE(fO,fQ)}return fQ}function aE(fQ,fP,fO){if(!fP){fP={}}for(var fR in fQ){if(fQ.hasOwnProperty(fR)&&(fO!==false||!fP.hasOwnProperty(fR))){fP[fR]=fQ[fR]}}return fP}function cl(fP){var fO=Array.prototype.slice.call(arguments,1);return function(){return fP.apply(null,fO)}}var a2=/[\u00df\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;var fe=I.isWordChar=function(fO){return/\w/.test(fO)||fO>"\x80"&&(fO.toUpperCase()!=fO.toLowerCase()||a2.test(fO))};function cp(fO,fP){if(!fP){return fe(fO)}if(fP.source.indexOf("\\w")>-1&&fe(fO)){return true}return fP.test(fO)}function ex(fO){for(var fP in fO){if(fO.hasOwnProperty(fP)&&fO[fP]){return false}}return true}var en=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\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\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\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\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\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\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;function e0(fO){return fO.charCodeAt(0)>=768&&en.test(fO)}function fx(fO,fS,fR,fQ){var fT=document.createElement(fO);if(fR){fT.className=fR}if(fQ){fT.style.cssText=fQ}if(typeof fS=="string"){fT.appendChild(document.createTextNode(fS))}else{if(fS){for(var fP=0;fP<fS.length;++fP){fT.appendChild(fS[fP])}}}return fT}var cb;if(document.createRange){cb=function(fQ,fR,fO){var fP=document.createRange();fP.setEnd(fQ,fO);fP.setStart(fQ,fR);return fP}}else{cb=function(fQ,fR,fO){var fP=document.body.createTextRange();fP.moveToElementText(fQ.parentNode);fP.collapse(true);fP.moveEnd("character",fO);fP.moveStart("character",fR);return fP}}function dE(fP){for(var fO=fP.childNodes.length;fO>0;--fO){fP.removeChild(fP.firstChild)}return fP}function bG(fO,fP){return dE(fO).appendChild(fP)}function fG(fO,fP){if(fO.contains){return fO.contains(fP)}while(fP=fP.parentNode){if(fP==fO){return true}}}function ds(){return document.activeElement}if(eo){ds=function(){try{return document.activeElement}catch(fO){return document.body}}}function S(fO){return new RegExp("\\b"+fO+"\\b\\s*")}function g(fP,fO){var fQ=S(fO);if(fQ.test(fP.className)){fP.className=fP.className.replace(fQ,"")}}function fb(fP,fO){if(!S(fO).test(fP.className)){fP.className+=" "+fO}}function fs(fQ,fO){var fP=fQ.split(" ");for(var fR=0;fR<fP.length;fR++){if(fP[fR]&&!S(fP[fR]).test(fO)){fO+=" "+fP[fR]}}return fO}function aw(fR){if(!document.body.getElementsByClassName){return}var fQ=document.body.getElementsByClassName("CodeMirror");for(var fP=0;fP<fQ.length;fP++){var fO=fQ[fP].CodeMirror;if(fO){fR(fO)}}}var cr=false;function a8(){if(cr){return}ff();cr=true}function ff(){var fO;bM(window,"resize",function(){if(fO==null){fO=setTimeout(function(){fO=null;d8=null;aw(aK)},100)}});bM(window,"blur",function(){aw(aL)})}var ep=function(){if(bY){return false}var fO=fx("div");return"draggable" in fO||"dragDrop" in fO}();var d8;function l(fO){if(d8!=null){return d8}var fP=fx("div",null,null,"width: 50px; height: 50px; overflow-x: scroll");bG(fO,fP);if(fP.offsetWidth){d8=fP.offsetHeight-fP.clientHeight}return d8||0}var fm;function bd(fO){if(fm==null){var fP=fx("span","\u200b");bG(fO,fx("span",[fP,document.createTextNode("x")]));if(fO.firstChild.offsetHeight!=0){fm=fP.offsetWidth<=1&&fP.offsetHeight>2&&!b1}}if(fm){return fx("span","\u200b")}else{return fx("span","\u00a0",null,"display: inline-block; width: 1px; margin-right: -1px")}}var fl;function bD(fR){if(fl!=null){return fl}var fO=bG(fR,document.createTextNode("A\u062eA"));var fQ=cb(fO,0,1).getBoundingClientRect();if(fQ.left==fQ.right){return false}var fP=cb(fO,1,2).getBoundingClientRect();return fl=(fP.right-fQ.right<3)}var aQ=I.splitLines="\n\nb".split(/\n/).length!=3?function(fT){var fU=0,fO=[],fS=fT.length;while(fU<=fS){var fR=fT.indexOf("\n",fU);if(fR==-1){fR=fT.length}var fQ=fT.slice(fU,fT.charAt(fR-1)=="\r"?fR-1:fR);var fP=fQ.indexOf("\r");if(fP!=-1){fO.push(fQ.slice(0,fP));fU+=fP+1}else{fO.push(fQ);fU=fR+1}}return fO}:function(fO){return fO.split(/\r\n?|\n/)};var bi=window.getSelection?function(fP){try{return fP.selectionStart!=fP.selectionEnd}catch(fO){return false}}:function(fQ){try{var fO=fQ.ownerDocument.selection.createRange()}catch(fP){}if(!fO||fO.parentElement()!=fQ){return false}return fO.compareEndPoints("StartToEnd",fO)!=0};var cT=(function(){var fO=fx("div");if("oncopy" in fO){return true}fO.setAttribute("oncopy","return;");return typeof fO.oncopy=="function"})();var eQ={3:"Enter",8:"Backspace",9:"Tab",13:"Enter",16:"Shift",17:"Ctrl",18:"Alt",19:"Pause",20:"CapsLock",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"PrintScrn",45:"Insert",46:"Delete",59:";",61:"=",91:"Mod",92:"Mod",93:"Mod",107:"=",109:"-",127:"Delete",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",63232:"Up",63233:"Down",63234:"Left",63235:"Right",63272:"Delete",63273:"Home",63275:"End",63276:"PageUp",63277:"PageDown",63302:"Insert"};I.keyNames=eQ;(function(){for(var fO=0;fO<10;fO++){eQ[fO+48]=eQ[fO+96]=String(fO)}for(var fO=65;fO<=90;fO++){eQ[fO]=String.fromCharCode(fO)}for(var fO=1;fO<=12;fO++){eQ[fO+111]=eQ[fO+63235]="F"+fO}})();function dH(fO,fU,fT,fS){if(!fO){return fS(fU,fT,"ltr")}var fR=false;for(var fQ=0;fQ<fO.length;++fQ){var fP=fO[fQ];if(fP.from<fT&&fP.to>fU||fU==fT&&fP.to==fU){fS(Math.max(fP.from,fU),Math.min(fP.to,fT),fP.level==1?"rtl":"ltr");fR=true}}if(!fR){fS(fU,fT,"ltr")}}function dd(fO){return fO.level%2?fO.to:fO.from}function fJ(fO){return fO.level%2?fO.from:fO.to}function ct(fP){var fO=a(fP);return fO?dd(fO[0]):0}function cE(fP){var fO=a(fP);if(!fO){return fP.text.length}return fJ(fi(fO))}function bj(fP,fS){var fQ=eP(fP.doc,fS);var fT=z(fQ);if(fT!=fQ){fS=bC(fT)}var fO=a(fT);var fR=!fO?0:fO[0].level%2?cE(fT):ct(fT);return W(fS,fR)}function dt(fQ,fT){var fP,fR=eP(fQ.doc,fT);while(fP=d7(fR)){fR=fP.find(1,true).line;fT=null}var fO=a(fR);var fS=!fO?fR.text.length:fO[0].level%2?ct(fR):cE(fR);return W(fT==null?bC(fR):fT,fS)}function ak(fP,fQ,fO){var fR=fP[0].level;if(fQ==fR){return true}if(fO==fR){return false}return fQ<fO}var eE;function aB(fO,fS){eE=null;for(var fP=0,fQ;fP<fO.length;++fP){var fR=fO[fP];if(fR.from<fS&&fR.to>fS){return fP}if((fR.from==fS||fR.to==fS)){if(fQ==null){fQ=fP}else{if(ak(fO,fR.level,fO[fQ].level)){if(fR.from!=fR.to){eE=fQ}return fP}else{if(fR.from!=fR.to){eE=fP}return fQ}}}}return fQ}function eO(fO,fR,fP,fQ){if(!fQ){return fR+fP}do{fR+=fP}while(fR>0&&e0(fO.text.charAt(fR)));return fR}function v(fO,fV,fQ,fR){var fS=a(fO);if(!fS){return ag(fO,fV,fQ,fR)}var fU=aB(fS,fV),fP=fS[fU];var fT=eO(fO,fV,fP.level%2?-fQ:fQ,fR);for(;;){if(fT>fP.from&&fT<fP.to){return fT}if(fT==fP.from||fT==fP.to){if(aB(fS,fT)==fU){return fT}fP=fS[fU+=fQ];return(fQ>0)==fP.level%2?fP.to:fP.from}else{fP=fS[fU+=fQ];if(!fP){return null}if((fQ>0)==fP.level%2){fT=eO(fO,fP.to,-1,fR)}else{fT=eO(fO,fP.from,1,fR)}}}}function ag(fO,fS,fP,fQ){var fR=fS+fP;if(fQ){while(fR>0&&e0(fO.text.charAt(fR))){fR+=fP}}return fR<0||fR>fO.text.length?null:fR}var a6=(function(){var fU="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN";var fS="rrrrrrrrrrrr,rNNmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmrrrrrrrnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmNmmmm";function fR(fY){if(fY<=247){return fU.charAt(fY)}else{if(1424<=fY&&fY<=1524){return"R"}else{if(1536<=fY&&fY<=1773){return fS.charAt(fY-1536)}else{if(1774<=fY&&fY<=2220){return"r"}else{if(8192<=fY&&fY<=8203){return"w"}else{if(fY==8204){return"b"}else{return"L"}}}}}}}var fO=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;var fX=/[stwN]/,fQ=/[LRr]/,fP=/[Lb1n]/,fT=/[1n]/;var fW="L";function fV(f0,fZ,fY){this.level=f0;this.from=fZ;this.to=fY}return function(f8){if(!fO.test(f8)){return false}var ge=f8.length,f4=[];for(var gd=0,f0;gd<ge;++gd){f4.push(f0=fR(f8.charCodeAt(gd)))}for(var gd=0,f7=fW;gd<ge;++gd){var f0=f4[gd];if(f0=="m"){f4[gd]=f7}else{f7=f0}}for(var gd=0,fY=fW;gd<ge;++gd){var f0=f4[gd];if(f0=="1"&&fY=="r"){f4[gd]="n"}else{if(fQ.test(f0)){fY=f0;if(f0=="r"){f4[gd]="R"}}}}for(var gd=1,f7=f4[0];gd<ge-1;++gd){var f0=f4[gd];if(f0=="+"&&f7=="1"&&f4[gd+1]=="1"){f4[gd]="1"}else{if(f0==","&&f7==f4[gd+1]&&(f7=="1"||f7=="n")){f4[gd]=f7}}f7=f0}for(var gd=0;gd<ge;++gd){var f0=f4[gd];if(f0==","){f4[gd]="N"}else{if(f0=="%"){for(var f1=gd+1;f1<ge&&f4[f1]=="%";++f1){}var gf=(gd&&f4[gd-1]=="!")||(f1<ge&&f4[f1]=="1")?"1":"N";for(var gb=gd;gb<f1;++gb){f4[gb]=gf}gd=f1-1}}}for(var gd=0,fY=fW;gd<ge;++gd){var f0=f4[gd];if(fY=="L"&&f0=="1"){f4[gd]="L"}else{if(fQ.test(f0)){fY=f0}}}for(var gd=0;gd<ge;++gd){if(fX.test(f4[gd])){for(var f1=gd+1;f1<ge&&fX.test(f4[f1]);++f1){}var f5=(gd?f4[gd-1]:fW)=="L";var fZ=(f1<ge?f4[f1]:fW)=="L";var gf=f5||fZ?"L":"R";for(var gb=gd;gb<f1;++gb){f4[gb]=gf}gd=f1-1}}var gc=[],f9;for(var gd=0;gd<ge;){if(fP.test(f4[gd])){var f2=gd;for(++gd;gd<ge&&fP.test(f4[gd]);++gd){}gc.push(new fV(0,f2,gd))}else{var f3=gd,f6=gc.length;for(++gd;gd<ge&&f4[gd]!="L";++gd){}for(var gb=f3;gb<gd;){if(fT.test(f4[gb])){if(f3<gb){gc.splice(f6,0,new fV(1,f3,gb))}var ga=gb;for(++gb;gb<gd&&fT.test(f4[gb]);++gb){}gc.splice(f6,0,new fV(2,ga,gb));f3=gb}else{++gb}}if(f3<gd){gc.splice(f6,0,new fV(1,f3,gd))}}}if(gc[0].level==1&&(f9=f8.match(/^\s+/))){gc[0].from=f9[0].length;gc.unshift(new fV(0,0,f9[0].length))}if(fi(gc).level==1&&(f9=f8.match(/\s+$/))){fi(gc).to-=f9[0].length;gc.push(new fV(0,ge-f9[0].length,ge))}if(gc[0].level!=fi(gc).level){gc.push(new fV(gc[0].level,ge,ge))}return gc}})();I.version="4.2.0";return I});
1
+ (function(a){if(typeof exports=="object"&&typeof module=="object"){module.exports=a()}else{if(typeof define=="function"&&define.amd){return define([],a)}else{this.CodeMirror=a()}}})(function(){var cn=/gecko\/\d/i.test(navigator.userAgent);var eB=/MSIE \d/.test(navigator.userAgent);var bH=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);var dA=eB||bH;var l=dA&&(eB?document.documentMode||6:bH[1]);var cV=/WebKit\//.test(navigator.userAgent);var dD=cV&&/Qt\/\d+\.\d+/.test(navigator.userAgent);var c7=/Chrome\//.test(navigator.userAgent);var dS=/Opera\//.test(navigator.userAgent);var aA=/Apple Computer/.test(navigator.vendor);var a6=/KHTML\//.test(navigator.userAgent);var c2=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(navigator.userAgent);var fl=/PhantomJS/.test(navigator.userAgent);var eS=/AppleWebKit/.test(navigator.userAgent)&&/Mobile\/\w+/.test(navigator.userAgent);var d6=eS||/Android|webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(navigator.userAgent);var b5=eS||/Mac/.test(navigator.platform);var aL=/win/i.test(navigator.platform);var aT=dS&&navigator.userAgent.match(/Version\/(\d*\.\d*)/);if(aT){aT=Number(aT[1])}if(aT&&aT>=15){dS=false;cV=true}var bO=b5&&(dD||dS&&(aT==null||aT<12.11));var fV=cn||(dA&&l>=9);var fY=false,a2=false;function J(f3,f4){if(!(this instanceof J)){return new J(f3,f4)}this.options=f4=f4?aJ(f4):{};aJ(eU,f4,false);cc(f4);var f8=f4.value;if(typeof f8=="string"){f8=new ar(f8,f4.mode)}this.doc=f8;var f7=this.display=new ez(f3,f8);f7.wrapper.CodeMirror=this;d2(this);cL(this);if(f4.lineWrapping){this.display.wrapper.className+=" CodeMirror-wrap"}if(f4.autofocus&&!d6){eq(this)}this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:false,focused:false,suppressEdits:false,pasteIncoming:false,cutIncoming:false,draggingText:false,highlight:new f2(),keySeq:null};if(dA&&l<11){setTimeout(cu(ff,this,true),20)}fG(this);be();cF(this);this.curOp.forceUpdate=true;d1(this,f8);if((f4.autofocus&&!d6)||dE()==f7.input){setTimeout(cu(cz,this),20)}else{aQ(this)}for(var f6 in ba){if(ba.hasOwnProperty(f6)){ba[f6](this,f4[f6],ca)}}dV(this);for(var f5=0;f5<a3.length;++f5){a3[f5](this)}al(this)}function ez(f3,f5){var f6=this;var f4=f6.input=fN("textarea",null,null,"position: absolute; padding: 0; width: 1px; height: 1em; outline: none");if(cV){f4.style.width="1000px"}else{f4.setAttribute("wrap","off")}if(eS){f4.style.border="1px solid black"}f4.setAttribute("autocorrect","off");f4.setAttribute("autocapitalize","off");f4.setAttribute("spellcheck","false");f6.inputDiv=fN("div",[f4],null,"overflow: hidden; position: relative; width: 3px; height: 0px;");f6.scrollbarH=fN("div",[fN("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");f6.scrollbarV=fN("div",[fN("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar");f6.scrollbarFiller=fN("div",null,"CodeMirror-scrollbar-filler");f6.gutterFiller=fN("div",null,"CodeMirror-gutter-filler");f6.lineDiv=fN("div",null,"CodeMirror-code");f6.selectionDiv=fN("div",null,null,"position: relative; z-index: 1");f6.cursorDiv=fN("div",null,"CodeMirror-cursors");f6.measure=fN("div",null,"CodeMirror-measure");f6.lineMeasure=fN("div",null,"CodeMirror-measure");f6.lineSpace=fN("div",[f6.measure,f6.lineMeasure,f6.selectionDiv,f6.cursorDiv,f6.lineDiv],null,"position: relative; outline: none");f6.mover=fN("div",[fN("div",[f6.lineSpace],"CodeMirror-lines")],null,"position: relative");f6.sizer=fN("div",[f6.mover],"CodeMirror-sizer");f6.heightForcer=fN("div",null,null,"position: absolute; height: "+bg+"px; width: 1px;");f6.gutters=fN("div",null,"CodeMirror-gutters");f6.lineGutter=null;f6.scroller=fN("div",[f6.sizer,f6.heightForcer,f6.gutters],"CodeMirror-scroll");f6.scroller.setAttribute("tabIndex","-1");f6.wrapper=fN("div",[f6.inputDiv,f6.scrollbarH,f6.scrollbarV,f6.scrollbarFiller,f6.gutterFiller,f6.scroller],"CodeMirror");if(dA&&l<8){f6.gutters.style.zIndex=-1;f6.scroller.style.paddingRight=0}if(eS){f4.style.width="0px"}if(!cV){f6.scroller.draggable=true}if(a6){f6.inputDiv.style.height="1px";f6.inputDiv.style.position="absolute"}if(dA&&l<8){f6.scrollbarH.style.minHeight=f6.scrollbarV.style.minWidth="18px"}if(f3){if(f3.appendChild){f3.appendChild(f6.wrapper)}else{f3(f6.wrapper)}}f6.viewFrom=f6.viewTo=f5.first;f6.view=[];f6.externalMeasured=null;f6.viewOffset=0;f6.lastWrapHeight=f6.lastWrapWidth=0;f6.updateLineNumbers=null;f6.lineNumWidth=f6.lineNumInnerWidth=f6.lineNumChars=null;f6.prevInput="";f6.alignWidgets=false;f6.pollingFast=false;f6.poll=new f2();f6.cachedCharWidth=f6.cachedTextHeight=f6.cachedPaddingH=null;f6.inaccurateSelection=false;f6.maxLine=null;f6.maxLineLength=0;f6.maxLineChanged=false;f6.wheelDX=f6.wheelDY=f6.wheelStartX=f6.wheelStartY=null;f6.shift=false;f6.selForContextMenu=null}function bp(f3){f3.doc.mode=J.getMode(f3.options,f3.doc.modeOption);eb(f3)}function eb(f3){f3.doc.iter(function(f4){if(f4.stateAfter){f4.stateAfter=null}if(f4.styles){f4.styles=null}});f3.doc.frontier=f3.doc.first;d5(f3,100);f3.state.modeGen++;if(f3.curOp){ag(f3)}}function ex(f3){if(f3.options.lineWrapping){fr(f3.display.wrapper,"CodeMirror-wrap");f3.display.sizer.style.minWidth=""}else{f(f3.display.wrapper,"CodeMirror-wrap");g(f3)}Y(f3);ag(f3);aj(f3);setTimeout(function(){eP(f3)},100)}function a9(f3){var f5=aS(f3.display),f4=f3.options.lineWrapping;var f6=f4&&Math.max(5,f3.display.scroller.clientWidth/du(f3.display)-3);return function(f8){if(fn(f3.doc,f8)){return 0}var f7=0;if(f8.widgets){for(var f9=0;f9<f8.widgets.length;f9++){if(f8.widgets[f9].height){f7+=f8.widgets[f9].height}}}if(f4){return f7+(Math.ceil(f8.text.length/f6)||1)*f5}else{return f7+f5}}}function Y(f3){var f5=f3.doc,f4=a9(f3);f5.iter(function(f6){var f7=f4(f6);if(f7!=f6.height){fR(f6,f7)}})}function cL(f3){f3.display.wrapper.className=f3.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+f3.options.theme.replace(/(^|\s)\s*/g," cm-s-");aj(f3)}function dm(f3){d2(f3);ag(f3);setTimeout(function(){ev(f3)},20)}function d2(f3){var f4=f3.display.gutters,f8=f3.options.gutters;dR(f4);for(var f5=0;f5<f8.length;++f5){var f6=f8[f5];var f7=f4.appendChild(fN("div",null,"CodeMirror-gutter "+f6));if(f6=="CodeMirror-linenumbers"){f3.display.lineGutter=f7;f7.style.width=(f3.display.lineNumWidth||1)+"px"}}f4.style.display=f5?"":"none";cZ(f3)}function cZ(f3){var f4=f3.display.gutters.offsetWidth;f3.display.sizer.style.marginLeft=f4+"px";f3.display.scrollbarH.style.left=f3.options.fixedGutter?f4+"px":0}function ec(f5){if(f5.height==0){return 0}var f4=f5.text.length,f3,f7=f5;while(f3=eF(f7)){var f6=f3.find(0,true);f7=f6.from.line;f4+=f6.from.ch-f6.to.ch}f7=f5;while(f3=el(f7)){var f6=f3.find(0,true);f4-=f7.text.length-f6.from.ch;f7=f6.to.line;f4+=f7.text.length-f6.to.ch}return f4}function g(f3){var f5=f3.display,f4=f3.doc;f5.maxLine=e5(f4,f4.first);f5.maxLineLength=ec(f5.maxLine);f5.maxLineChanged=true;f4.iter(function(f7){var f6=ec(f7);if(f6>f5.maxLineLength){f5.maxLineLength=f6;f5.maxLine=f7}})}function cc(f3){var f4=dc(f3.gutters,"CodeMirror-linenumbers");if(f4==-1&&f3.lineNumbers){f3.gutters=f3.gutters.concat(["CodeMirror-linenumbers"])}else{if(f4>-1&&!f3.lineNumbers){f3.gutters=f3.gutters.slice(0);f3.gutters.splice(f4,1)}}}function cN(f3){return f3.display.scroller.clientHeight-f3.display.wrapper.clientHeight<bg-3}function dr(f4){var f3=f4.display.scroller;return{clientHeight:f3.clientHeight,barHeight:f4.display.scrollbarV.clientHeight,scrollWidth:f3.scrollWidth,clientWidth:f3.clientWidth,hScrollbarTakesSpace:cN(f4),barWidth:f4.display.scrollbarH.clientWidth,docHeight:Math.round(f4.doc.height+bG(f4.display))}}function eP(ga,f3){if(!f3){f3=dr(ga)}var f7=ga.display,f4=k(f7.measure);var gb=f3.docHeight+bg;var f5=f3.scrollWidth>f3.clientWidth;if(f5&&f3.scrollWidth<=f3.clientWidth+1&&f4>0&&!f3.hScrollbarTakesSpace){f5=false}var f6=gb>f3.clientHeight;if(f6){f7.scrollbarV.style.display="block";f7.scrollbarV.style.bottom=f5?f4+"px":"0";f7.scrollbarV.firstChild.style.height=Math.max(0,gb-f3.clientHeight+(f3.barHeight||f7.scrollbarV.clientHeight))+"px"}else{f7.scrollbarV.style.display="";f7.scrollbarV.firstChild.style.height="0"}if(f5){f7.scrollbarH.style.display="block";f7.scrollbarH.style.right=f6?f4+"px":"0";f7.scrollbarH.firstChild.style.width=(f3.scrollWidth-f3.clientWidth+(f3.barWidth||f7.scrollbarH.clientWidth))+"px"}else{f7.scrollbarH.style.display="";f7.scrollbarH.firstChild.style.width="0"}if(f5&&f6){f7.scrollbarFiller.style.display="block";f7.scrollbarFiller.style.height=f7.scrollbarFiller.style.width=f4+"px"}else{f7.scrollbarFiller.style.display=""}if(f5&&ga.options.coverGutterNextToScrollbar&&ga.options.fixedGutter){f7.gutterFiller.style.display="block";f7.gutterFiller.style.height=f4+"px";f7.gutterFiller.style.width=f7.gutters.offsetWidth+"px"}else{f7.gutterFiller.style.display=""}if(!ga.state.checkedOverlayScrollbar&&f3.clientHeight>0){if(f4===0){var f9=b5&&!c2?"12px":"18px";f7.scrollbarV.style.minWidth=f7.scrollbarH.style.minHeight=f9;var f8=function(gc){if(M(gc)!=f7.scrollbarV&&M(gc)!=f7.scrollbarH){cX(ga,ej)(gc)}};bV(f7.scrollbarV,"mousedown",f8);bV(f7.scrollbarH,"mousedown",f8)}ga.state.checkedOverlayScrollbar=true}}function b4(f6,ga,f5){var f7=f5&&f5.top!=null?Math.max(0,f5.top):f6.scroller.scrollTop;f7=Math.floor(f7-eY(f6));var f3=f5&&f5.bottom!=null?f5.bottom:f7+f6.wrapper.clientHeight;var f8=bE(ga,f7),f9=bE(ga,f3);if(f5&&f5.ensure){var f4=f5.ensure.from.line,gb=f5.ensure.to.line;if(f4<f8){return{from:f4,to:bE(ga,bK(e5(ga,f4))+f6.wrapper.clientHeight)}}if(Math.min(gb,ga.lastLine())>=f9){return{from:bE(ga,bK(e5(ga,gb))-f6.wrapper.clientHeight),to:gb}}}return{from:f8,to:Math.max(f9,f8+1)}}function ev(gb){var f9=gb.display,ga=f9.view;if(!f9.alignWidgets&&(!f9.gutters.firstChild||!gb.options.fixedGutter)){return}var f7=dN(f9)-f9.scroller.scrollLeft+gb.doc.scrollLeft;var f3=f9.gutters.offsetWidth,f4=f7+"px";for(var f6=0;f6<ga.length;f6++){if(!ga[f6].hidden){if(gb.options.fixedGutter&&ga[f6].gutter){ga[f6].gutter.style.left=f4}var f8=ga[f6].alignable;if(f8){for(var f5=0;f5<f8.length;f5++){f8[f5].style.left=f4}}}}if(gb.options.fixedGutter){f9.gutters.style.left=(f7+f3)+"px"}}function dV(f3){if(!f3.options.lineNumbers){return false}var f8=f3.doc,f4=ei(f3.options,f8.first+f8.size-1),f7=f3.display;if(f4.length!=f7.lineNumChars){var f9=f7.measure.appendChild(fN("div",[fN("div",f4)],"CodeMirror-linenumber CodeMirror-gutter-elt"));var f5=f9.firstChild.offsetWidth,f6=f9.offsetWidth-f5;f7.lineGutter.style.width="";f7.lineNumInnerWidth=Math.max(f5,f7.lineGutter.offsetWidth-f6);f7.lineNumWidth=f7.lineNumInnerWidth+f6;f7.lineNumChars=f7.lineNumInnerWidth?f4.length:-1;f7.lineGutter.style.width=f7.lineNumWidth+"px";cZ(f3);return true}return false}function ei(f3,f4){return String(f3.lineNumberFormatter(f4+f3.firstLineNumber))}function dN(f3){return f3.scroller.getBoundingClientRect().left-f3.sizer.getBoundingClientRect().left}function aF(f4,f3,f5){var f6=f4.display;this.viewport=f3;this.visible=b4(f6,f4.doc,f3);this.editorIsHidden=!f6.wrapper.offsetWidth;this.wrapperHeight=f6.wrapper.clientHeight;this.wrapperWidth=f6.wrapper.clientWidth;this.oldViewFrom=f6.viewFrom;this.oldViewTo=f6.viewTo;this.oldScrollerWidth=f6.scroller.clientWidth;this.force=f5;this.dims=e3(f4)}function D(gc,f6){var f7=gc.display,gb=gc.doc;if(f6.editorIsHidden){en(gc);return false}if(!f6.force&&f6.visible.from>=f7.viewFrom&&f6.visible.to<=f7.viewTo&&(f7.updateLineNumbers==null||f7.updateLineNumbers>=f7.viewTo)&&c6(gc)==0){return false}if(dV(gc)){en(gc);f6.dims=e3(gc)}var f5=gb.first+gb.size;var f9=Math.max(f6.visible.from-gc.options.viewportMargin,gb.first);var ga=Math.min(f5,f6.visible.to+gc.options.viewportMargin);if(f7.viewFrom<f9&&f9-f7.viewFrom<20){f9=Math.max(gb.first,f7.viewFrom)}if(f7.viewTo>ga&&f7.viewTo-ga<20){ga=Math.min(f5,f7.viewTo)}if(a2){f9=aR(gc.doc,f9);ga=dT(gc.doc,ga)}var f4=f9!=f7.viewFrom||ga!=f7.viewTo||f7.lastWrapHeight!=f6.wrapperHeight||f7.lastWrapWidth!=f6.wrapperWidth;cO(gc,f9,ga);f7.viewOffset=bK(e5(gc.doc,f7.viewFrom));gc.display.mover.style.top=f7.viewOffset+"px";var f3=c6(gc);if(!f4&&f3==0&&!f6.force&&(f7.updateLineNumbers==null||f7.updateLineNumbers>=f7.viewTo)){return false}var f8=dE();if(f3>4){f7.lineDiv.style.display="none"}cl(gc,f7.updateLineNumbers,f6.dims);if(f3>4){f7.lineDiv.style.display=""}if(f8&&dE()!=f8&&f8.offsetHeight){f8.focus()}dR(f7.cursorDiv);dR(f7.selectionDiv);if(f4){f7.lastWrapHeight=f6.wrapperHeight;f7.lastWrapWidth=f6.wrapperWidth;d5(gc,400)}f7.updateLineNumbers=null;return true}function ci(f4,f8){var f6=f8.force,f3=f8.viewport;for(var f7=true;;f7=false){if(f7&&f4.options.lineWrapping&&f8.oldScrollerWidth!=f4.display.scroller.clientWidth){f6=true}else{f6=false;if(f3&&f3.top!=null){f3={top:Math.min(f4.doc.height+bG(f4.display)-bg-f4.display.scroller.clientHeight,f3.top)}}f8.visible=b4(f4.display,f4.doc,f3);if(f8.visible.from>=f4.display.viewFrom&&f8.visible.to<=f4.display.viewTo){break}}if(!D(f4,f8)){break}a4(f4);var f5=dr(f4);bA(f4);dq(f4,f5);eP(f4,f5)}ad(f4,"update",f4);if(f4.display.viewFrom!=f8.oldViewFrom||f4.display.viewTo!=f8.oldViewTo){ad(f4,"viewportChange",f4,f4.display.viewFrom,f4.display.viewTo)}}function dJ(f4,f3){var f6=new aF(f4,f3);if(D(f4,f6)){a4(f4);ci(f4,f6);var f5=dr(f4);bA(f4);dq(f4,f5);eP(f4,f5)}}function dq(f3,f4){f3.display.sizer.style.minHeight=f3.display.heightForcer.style.top=f4.docHeight+"px";f3.display.gutters.style.height=Math.max(f4.docHeight,f4.clientHeight-bg)+"px"}function fQ(f3,f4){if(f3.display.sizer.offsetWidth+f3.display.gutters.offsetWidth<f3.display.scroller.clientWidth-1){f3.display.sizer.style.minHeight=f3.display.heightForcer.style.top="0px";f3.display.gutters.style.height=f4.docHeight+"px"}}function a4(ga){var f8=ga.display;var f4=f8.lineDiv.offsetTop;for(var f5=0;f5<f8.view.length;f5++){var gb=f8.view[f5],gc;if(gb.hidden){continue}if(dA&&l<8){var f7=gb.node.offsetTop+gb.node.offsetHeight;gc=f7-f4;f4=f7}else{var f6=gb.node.getBoundingClientRect();gc=f6.bottom-f6.top}var f9=gb.line.height-gc;if(gc<2){gc=aS(f8)}if(f9>0.001||f9<-0.001){fR(gb.line,gc);b9(gb.line);if(gb.rest){for(var f3=0;f3<gb.rest.length;f3++){b9(gb.rest[f3])}}}}}function b9(f3){if(f3.widgets){for(var f4=0;f4<f3.widgets.length;++f4){f3.widgets[f4].height=f3.widgets[f4].node.offsetHeight}}}function e3(f3){var f8=f3.display,f6={},f5={};var f7=f8.gutters.clientLeft;for(var f9=f8.gutters.firstChild,f4=0;f9;f9=f9.nextSibling,++f4){f6[f3.options.gutters[f4]]=f9.offsetLeft+f9.clientLeft+f7;f5[f3.options.gutters[f4]]=f9.clientWidth}return{fixedPos:dN(f8),gutterTotalWidth:f8.gutters.offsetWidth,gutterLeft:f6,gutterWidth:f5,wrapperWidth:f8.wrapper.clientWidth}}function cl(ge,f5,gd){var ga=ge.display,gg=ge.options.lineNumbers;var f3=ga.lineDiv,gf=f3.firstChild;function f9(gi){var gh=gi.nextSibling;if(cV&&b5&&ge.display.currentWheelTarget==gi){gi.style.display="none"}else{gi.parentNode.removeChild(gi)}return gh}var gb=ga.view,f8=ga.viewFrom;for(var f6=0;f6<gb.length;f6++){var f7=gb[f6];if(f7.hidden){}else{if(!f7.node){var f4=aC(ge,f7,f8,gd);f3.insertBefore(f4,gf)}else{while(gf!=f7.node){gf=f9(gf)}var gc=gg&&f5!=null&&f5<=f8&&f7.lineNumber;if(f7.changes){if(dc(f7.changes,"gutter")>-1){gc=false}aa(ge,f7,f8,gd)}if(gc){dR(f7.lineNumber);f7.lineNumber.appendChild(document.createTextNode(ei(ge.options,f8)))}gf=f7.node.nextSibling}}f8+=f7.size}while(gf){gf=f9(gf)}}function aa(f3,f5,f7,f8){for(var f4=0;f4<f5.changes.length;f4++){var f6=f5.changes[f4];if(f6=="text"){fb(f3,f5)}else{if(f6=="gutter"){da(f3,f5,f7,f8)}else{if(f6=="class"){dx(f5)}else{if(f6=="widget"){an(f5,f8)}}}}}f5.changes=null}function fz(f3){if(f3.node==f3.text){f3.node=fN("div",null,null,"position: relative");if(f3.text.parentNode){f3.text.parentNode.replaceChild(f3.node,f3.text)}f3.node.appendChild(f3.text);if(dA&&l<8){f3.node.style.zIndex=2}}return f3.node}function ek(f4){var f3=f4.bgClass?f4.bgClass+" "+(f4.line.bgClass||""):f4.line.bgClass;if(f3){f3+=" CodeMirror-linebackground"}if(f4.background){if(f3){f4.background.className=f3}else{f4.background.parentNode.removeChild(f4.background);f4.background=null}}else{if(f3){var f5=fz(f4);f4.background=f5.insertBefore(fN("div",null,f3),f5.firstChild)}}}function dL(f3,f4){var f5=f3.display.externalMeasured;if(f5&&f5.line==f4.line){f3.display.externalMeasured=null;f4.measure=f5.measure;return f5.built}return eI(f3,f4)}function fb(f3,f6){var f4=f6.text.className;var f5=dL(f3,f6);if(f6.text==f6.node){f6.node=f5.pre}f6.text.parentNode.replaceChild(f5.pre,f6.text);f6.text=f5.pre;if(f5.bgClass!=f6.bgClass||f5.textClass!=f6.textClass){f6.bgClass=f5.bgClass;f6.textClass=f5.textClass;dx(f6)}else{if(f4){f6.text.className=f4}}}function dx(f4){ek(f4);if(f4.line.wrapClass){fz(f4).className=f4.line.wrapClass}else{if(f4.node!=f4.text){f4.node.className=""}}var f3=f4.textClass?f4.textClass+" "+(f4.line.textClass||""):f4.line.textClass;f4.text.className=f3||""}function da(gb,f9,f8,ga){if(f9.gutter){f9.node.removeChild(f9.gutter);f9.gutter=null}var f6=f9.line.gutterMarkers;if(gb.options.lineNumbers||f6){var f4=fz(f9);var f7=f9.gutter=f4.insertBefore(fN("div",null,"CodeMirror-gutter-wrapper","left: "+(gb.options.fixedGutter?ga.fixedPos:-ga.gutterTotalWidth)+"px; width: "+ga.gutterTotalWidth+"px"),f9.text);if(f9.line.gutterClass){f7.className+=" "+f9.line.gutterClass}if(gb.options.lineNumbers&&(!f6||!f6["CodeMirror-linenumbers"])){f9.lineNumber=f7.appendChild(fN("div",ei(gb.options,f8),"CodeMirror-linenumber CodeMirror-gutter-elt","left: "+ga.gutterLeft["CodeMirror-linenumbers"]+"px; width: "+gb.display.lineNumInnerWidth+"px"))}if(f6){for(var f5=0;f5<gb.options.gutters.length;++f5){var f3=gb.options.gutters[f5],gc=f6.hasOwnProperty(f3)&&f6[f3];if(gc){f7.appendChild(fN("div",[gc],"CodeMirror-gutter-elt","left: "+ga.gutterLeft[f3]+"px; width: "+ga.gutterWidth[f3]+"px"))}}}}}function an(f3,f6){if(f3.alignable){f3.alignable=null}for(var f5=f3.node.firstChild,f4;f5;f5=f4){var f4=f5.nextSibling;if(f5.className=="CodeMirror-linewidget"){f3.node.removeChild(f5)}}fk(f3,f6)}function aC(f3,f5,f6,f7){var f4=dL(f3,f5);f5.text=f5.node=f4.pre;if(f4.bgClass){f5.bgClass=f4.bgClass}if(f4.textClass){f5.textClass=f4.textClass}dx(f5);da(f3,f5,f6,f7);fk(f5,f7);return f5.node}function fk(f4,f5){fS(f4.line,f4,f5,true);if(f4.rest){for(var f3=0;f3<f4.rest.length;f3++){fS(f4.rest[f3],f4,f5,false)}}}function fS(gb,f8,ga,f6){if(!gb.widgets){return}var f3=fz(f8);for(var f5=0,f9=gb.widgets;f5<f9.length;++f5){var f7=f9[f5],f4=fN("div",[f7.node],"CodeMirror-linewidget");if(!f7.handleMouseEvents){f4.ignoreEvents=true}bD(f7,f4,f8,ga);if(f6&&f7.above){f3.insertBefore(f4,f8.gutter||f8.text)}else{f3.appendChild(f4)}ad(f7,"redraw")}}function bD(f6,f5,f3,f7){if(f6.noHScroll){(f3.alignable||(f3.alignable=[])).push(f5);var f4=f7.wrapperWidth;f5.style.left=f7.fixedPos+"px";if(!f6.coverGutter){f4-=f7.gutterTotalWidth;f5.style.paddingLeft=f7.gutterTotalWidth+"px"}f5.style.width=f4+"px"}if(f6.coverGutter){f5.style.zIndex=5;f5.style.position="relative";if(!f6.noHScroll){f5.style.marginLeft=-f7.gutterTotalWidth+"px"}}}var X=J.Pos=function(f3,f4){if(!(this instanceof X)){return new X(f3,f4)}this.line=f3;this.ch=f4};var cd=J.cmpPos=function(f4,f3){return f4.line-f3.line||f4.ch-f3.ch};function ch(f3){return X(f3.line,f3.ch)}function bv(f4,f3){return cd(f4,f3)<0?f3:f4}function aq(f4,f3){return cd(f4,f3)<0?f4:f3}function fO(f3,f4){this.ranges=f3;this.primIndex=f4}fO.prototype={primary:function(){return this.ranges[this.primIndex]},equals:function(f3){if(f3==this){return true}if(f3.primIndex!=this.primIndex||f3.ranges.length!=this.ranges.length){return false}for(var f5=0;f5<this.ranges.length;f5++){var f4=this.ranges[f5],f6=f3.ranges[f5];if(cd(f4.anchor,f6.anchor)!=0||cd(f4.head,f6.head)!=0){return false}}return true},deepCopy:function(){for(var f3=[],f4=0;f4<this.ranges.length;f4++){f3[f4]=new dO(ch(this.ranges[f4].anchor),ch(this.ranges[f4].head))}return new fO(f3,this.primIndex)},somethingSelected:function(){for(var f3=0;f3<this.ranges.length;f3++){if(!this.ranges[f3].empty()){return true}}return false},contains:function(f6,f3){if(!f3){f3=f6}for(var f5=0;f5<this.ranges.length;f5++){var f4=this.ranges[f5];if(cd(f3,f4.from())>=0&&cd(f6,f4.to())<=0){return f5}}return -1}};function dO(f3,f4){this.anchor=f3;this.head=f4}dO.prototype={from:function(){return aq(this.anchor,this.head)},to:function(){return bv(this.anchor,this.head)},empty:function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch}};function cv(f3,ga){var f5=f3[ga];f3.sort(function(gd,gc){return cd(gd.from(),gc.from())});ga=dc(f3,f5);for(var f7=1;f7<f3.length;f7++){var gb=f3[f7],f4=f3[f7-1];if(cd(f4.to(),gb.from())>=0){var f8=aq(f4.from(),gb.from()),f9=bv(f4.to(),gb.to());var f6=f4.empty()?gb.from()==gb.head:f4.from()==f4.head;if(f7<=ga){--ga}f3.splice(--f7,2,new dO(f6?f9:f8,f6?f8:f9))}}return new fO(f3,ga)}function eJ(f3,f4){return new fO([new dO(f3,f4||f3)],0)}function c0(f3,f4){return Math.max(f3.first,Math.min(f4,f3.first+f3.size-1))}function fA(f4,f5){if(f5.line<f4.first){return X(f4.first,0)}var f3=f4.first+f4.size-1;if(f5.line>f3){return X(f3,e5(f4,f3).text.length)}return fj(f5,e5(f4,f5.line).text.length)}function fj(f5,f4){var f3=f5.ch;if(f3==null||f3>f4){return X(f5.line,f4)}else{if(f3<0){return X(f5.line,0)}else{return f5}}}function b7(f4,f3){return f3>=f4.first&&f3<f4.first+f4.size}function dP(f5,f6){for(var f3=[],f4=0;f4<f6.length;f4++){f3[f4]=fA(f5,f6[f4])}return f3}function fm(f8,f4,f7,f3){if(f8.cm&&f8.cm.display.shift||f8.extend){var f6=f4.anchor;if(f3){var f5=cd(f7,f6)<0;if(f5!=(cd(f3,f6)<0)){f6=f7;f7=f3}else{if(f5!=(cd(f7,f3)<0)){f7=f3}}}return new dO(f6,f7)}else{return new dO(f3||f7,f7)}}function fK(f6,f5,f3,f4){bS(f6,new fO([fm(f6,f6.sel.primary(),f5,f3)],0),f4)}function av(f8,f7,f5){for(var f4=[],f6=0;f6<f8.sel.ranges.length;f6++){f4[f6]=fm(f8,f8.sel.ranges[f6],f7[f6],null)}var f3=cv(f4,f8.sel.primIndex);bS(f8,f3,f5)}function e(f7,f6,f4,f5){var f3=f7.sel.ranges.slice(0);f3[f6]=f4;bS(f7,cv(f3,f7.sel.primIndex),f5)}function H(f6,f4,f5,f3){bS(f6,eJ(f4,f5),f3)}function c(f5,f3){var f4={ranges:f3.ranges,update:function(f6){this.ranges=[];for(var f7=0;f7<f6.length;f7++){this.ranges[f7]=new dO(fA(f5,f6[f7].anchor),fA(f5,f6[f7].head))}}};aB(f5,"beforeSelectionChange",f5,f4);if(f5.cm){aB(f5.cm,"beforeSelectionChange",f5.cm,f4)}if(f4.ranges!=f3.ranges){return cv(f4.ranges,f4.ranges.length-1)}else{return f3}}function eX(f7,f6,f4){var f3=f7.history.done,f5=fy(f3);if(f5&&f5.ranges){f3[f3.length-1]=f6;ef(f7,f6,f4)}else{bS(f7,f6,f4)}}function bS(f5,f4,f3){ef(f5,f4,f3);fX(f5,f5.sel,f5.cm?f5.cm.curOp.id:NaN,f3)}function ef(f6,f5,f4){if(e8(f6,"beforeSelectionChange")||f6.cm&&e8(f6.cm,"beforeSelectionChange")){f5=c(f6,f5)}var f3=f4&&f4.bias||(cd(f5.primary().head,f6.sel.primary().head)<0?-1:1);c4(f6,o(f6,f5,f3,true));if(!(f4&&f4.scroll===false)&&f6.cm){fx(f6.cm)}}function c4(f4,f3){if(f3.equals(f4.sel)){return}f4.sel=f3;if(f4.cm){f4.cm.curOp.updateInput=f4.cm.curOp.selectionChanged=true;W(f4.cm)}ad(f4,"cursorActivity",f4)}function eo(f3){c4(f3,o(f3,f3.sel,null,false),Z)}function o(gb,f3,f8,f9){var f5;for(var f6=0;f6<f3.ranges.length;f6++){var f7=f3.ranges[f6];var ga=bT(gb,f7.anchor,f8,f9);var f4=bT(gb,f7.head,f8,f9);if(f5||ga!=f7.anchor||f4!=f7.head){if(!f5){f5=f3.ranges.slice(0,f6)}f5[f6]=new dO(ga,f4)}}return f5?cv(f5,f3.primIndex):f3}function bT(gc,gb,f8,f9){var gd=false,f5=gb;var f6=f8||1;gc.cantEdit=false;search:for(;;){var ge=e5(gc,f5.line);if(ge.markedSpans){for(var f7=0;f7<ge.markedSpans.length;++f7){var f3=ge.markedSpans[f7],f4=f3.marker;if((f3.from==null||(f4.inclusiveLeft?f3.from<=f5.ch:f3.from<f5.ch))&&(f3.to==null||(f4.inclusiveRight?f3.to>=f5.ch:f3.to>f5.ch))){if(f9){aB(f4,"beforeCursorEnter");if(f4.explicitlyCleared){if(!ge.markedSpans){break}else{--f7;continue}}}if(!f4.atomic){continue}var ga=f4.find(f6<0?-1:1);if(cd(ga,f5)==0){ga.ch+=f6;if(ga.ch<0){if(ga.line>gc.first){ga=fA(gc,X(ga.line-1))}else{ga=null}}else{if(ga.ch>ge.text.length){if(ga.line<gc.first+gc.size-1){ga=X(ga.line+1,0)}else{ga=null}}}if(!ga){if(gd){if(!f9){return bT(gc,gb,f8,true)}gc.cantEdit=true;return X(gc.first,0)}gd=true;ga=gb;f6=-f6}}f5=ga;continue search}}}return f5}}function bj(gd){var f9=gd.display,gc=gd.doc,ge={};var gb=ge.cursors=document.createDocumentFragment();var f5=ge.selection=document.createDocumentFragment();for(var f7=0;f7<gc.sel.ranges.length;f7++){var f8=gc.sel.ranges[f7];var f6=f8.empty();if(f6||gd.options.showCursorWhenSelecting){B(gd,f8,gb)}if(!f6){bB(gd,f8,f5)}}if(gd.options.moveInputWithCursor){var ga=dK(gd,gc.sel.primary().head,"div");var f3=f9.wrapper.getBoundingClientRect(),f4=f9.lineDiv.getBoundingClientRect();ge.teTop=Math.max(0,Math.min(f9.wrapper.clientHeight-10,ga.top+f4.top-f3.top));ge.teLeft=Math.max(0,Math.min(f9.wrapper.clientWidth-10,ga.left+f4.left-f3.left))}return ge}function ak(f3,f4){bP(f3.display.cursorDiv,f4.cursors);bP(f3.display.selectionDiv,f4.selection);if(f4.teTop!=null){f3.display.inputDiv.style.top=f4.teTop+"px";f3.display.inputDiv.style.left=f4.teLeft+"px"}}function bA(f3){ak(f3,bj(f3))}function B(f3,f6,f5){var f8=dK(f3,f6.head,"div",null,null,!f3.options.singleCursorHeightPerLine);var f7=f5.appendChild(fN("div","\u00a0","CodeMirror-cursor"));f7.style.left=f8.left+"px";f7.style.top=f8.top+"px";f7.style.height=Math.max(0,f8.bottom-f8.top)*f3.options.cursorHeight+"px";if(f8.other){var f4=f5.appendChild(fN("div","\u00a0","CodeMirror-cursor CodeMirror-secondarycursor"));f4.style.display="";f4.style.left=f8.other.left+"px";f4.style.top=f8.other.top+"px";f4.style.height=(f8.other.bottom-f8.other.top)*0.85+"px"}}function bB(f7,gd,f8){var gg=f7.display,gk=f7.doc;var f3=document.createDocumentFragment();var gc=eV(f7.display),f6=gc.left,gh=gg.lineSpace.offsetWidth-gc.right;function ge(go,gn,gm,gl){if(gn<0){gn=0}gn=Math.round(gn);gl=Math.round(gl);f3.appendChild(fN("div",null,"CodeMirror-selected","position: absolute; left: "+go+"px; top: "+gn+"px; width: "+(gm==null?gh-go:gm)+"px; height: "+(gl-gn)+"px"))}function f4(gm,go,gr){var gn=e5(gk,gm);var gp=gn.text.length;var gs,gl;function gq(gu,gt){return cG(f7,X(gm,gu),"div",gn,gt)}dU(a(gn),go||0,gr==null?gp:gr,function(gA,gz,gt){var gw=gq(gA,"left"),gx,gy,gv;if(gA==gz){gx=gw;gy=gv=gw.left}else{gx=gq(gz-1,"right");if(gt=="rtl"){var gu=gw;gw=gx;gx=gu}gy=gw.left;gv=gx.right}if(go==null&&gA==0){gy=f6}if(gx.top-gw.top>3){ge(gy,gw.top,null,gw.bottom);gy=f6;if(gw.bottom<gx.top){ge(gy,gw.bottom,null,gx.top)}}if(gr==null&&gz==gp){gv=gh}if(!gs||gw.top<gs.top||gw.top==gs.top&&gw.left<gs.left){gs=gw}if(!gl||gx.bottom>gl.bottom||gx.bottom==gl.bottom&&gx.right>gl.right){gl=gx}if(gy<f6+1){gy=f6}ge(gy,gx.top,gv-gy,gx.bottom)});return{start:gs,end:gl}}var gj=gd.from(),gi=gd.to();if(gj.line==gi.line){f4(gj.line,gj.ch,gi.ch)}else{var f5=e5(gk,gj.line),ga=e5(gk,gi.line);var f9=z(f5)==z(ga);var gb=f4(gj.line,gj.ch,f9?f5.text.length+1:null).end;var gf=f4(gi.line,f9?0:null,gi.ch).start;if(f9){if(gb.top<gf.top-2){ge(gb.right,gb.top,null,gb.bottom);ge(f6,gf.top,gf.left,gf.bottom)}else{ge(gb.right,gb.top,gf.left-gb.right,gb.bottom)}}if(gb.bottom<gf.top){ge(f6,gb.bottom,null,gf.top)}}f8.appendChild(f3)}function p(f3){if(!f3.state.focused){return}var f5=f3.display;clearInterval(f5.blinker);var f4=true;f5.cursorDiv.style.visibility="";if(f3.options.cursorBlinkRate>0){f5.blinker=setInterval(function(){f5.cursorDiv.style.visibility=(f4=!f4)?"":"hidden"},f3.options.cursorBlinkRate)}else{if(f3.options.cursorBlinkRate<0){f5.cursorDiv.style.visibility="hidden"}}}function d5(f3,f4){if(f3.doc.mode.startState&&f3.doc.frontier<f3.display.viewTo){f3.state.highlight.set(f4,cu(cM,f3))}}function cM(f3){var f7=f3.doc;if(f7.frontier<f7.first){f7.frontier=f7.first}if(f7.frontier>=f3.display.viewTo){return}var f5=+new Date+f3.options.workTime;var f6=b1(f7.mode,ds(f3,f7.frontier));var f4=[];f7.iter(f7.frontier,Math.min(f7.first+f7.size,f3.display.viewTo+500),function(f8){if(f7.frontier>=f3.display.viewFrom){var gb=f8.styles;var gd=fq(f3,f8,f6,true);f8.styles=gd.styles;var ga=f8.styleClasses,gc=gd.classes;if(gc){f8.styleClasses=gc}else{if(ga){f8.styleClasses=null}}var ge=!gb||gb.length!=f8.styles.length||ga!=gc&&(!ga||!gc||ga.bgClass!=gc.bgClass||ga.textClass!=gc.textClass);for(var f9=0;!ge&&f9<gb.length;++f9){ge=gb[f9]!=f8.styles[f9]}if(ge){f4.push(f7.frontier)}f8.stateAfter=b1(f7.mode,f6)}else{dn(f3,f8.text,f6);f8.stateAfter=f7.frontier%5==0?b1(f7.mode,f6):null}++f7.frontier;if(+new Date>f5){d5(f3,f3.options.workDelay);return true}});if(f4.length){cJ(f3,function(){for(var f8=0;f8<f4.length;f8++){S(f3,f4[f8],"text")}})}}function cx(f9,f3,f6){var f4,f7,f8=f9.doc;var f5=f6?-1:f3-(f9.doc.mode.innerMode?1000:100);for(var gc=f3;gc>f5;--gc){if(gc<=f8.first){return f8.first}var gb=e5(f8,gc-1);if(gb.stateAfter&&(!f6||gc<=f8.frontier)){return gc}var ga=bR(gb.text,null,f9.options.tabSize);if(f7==null||f4>ga){f7=gc-1;f4=ga}}return f7}function ds(f3,f9,f4){var f7=f3.doc,f6=f3.display;if(!f7.mode.startState){return true}var f8=cx(f3,f9,f4),f5=f8>f7.first&&e5(f7,f8-1).stateAfter;if(!f5){f5=bY(f7.mode)}else{f5=b1(f7.mode,f5)}f7.iter(f8,f9,function(ga){dn(f3,ga.text,f5);var gb=f8==f9-1||f8%5==0||f8>=f6.viewFrom&&f8<f6.viewTo;ga.stateAfter=gb?b1(f7.mode,f5):null;++f8});if(f4){f7.frontier=f8}return f5}function eY(f3){return f3.lineSpace.offsetTop}function bG(f3){return f3.mover.offsetHeight-f3.lineSpace.offsetHeight}function eV(f6){if(f6.cachedPaddingH){return f6.cachedPaddingH}var f5=bP(f6.measure,fN("pre","x"));var f3=window.getComputedStyle?window.getComputedStyle(f5):f5.currentStyle;var f4={left:parseInt(f3.paddingLeft),right:parseInt(f3.paddingRight)};if(!isNaN(f4.left)&&!isNaN(f4.right)){f6.cachedPaddingH=f4}return f4}function cg(ga,f6,f9){var f5=ga.options.lineWrapping;var f7=f5&&ga.display.scroller.clientWidth;if(!f6.measure.heights||f5&&f6.measure.width!=f7){var f8=f6.measure.heights=[];if(f5){f6.measure.width=f7;var gc=f6.text.firstChild.getClientRects();for(var f3=0;f3<gc.length-1;f3++){var gb=gc[f3],f4=gc[f3+1];if(Math.abs(gb.bottom-f4.bottom)>2){f8.push((gb.bottom+f4.top)/2-f9.top)}}}f8.push(f9.bottom-f9.top)}}function cs(f5,f3,f6){if(f5.line==f3){return{map:f5.measure.map,cache:f5.measure.cache}}for(var f4=0;f4<f5.rest.length;f4++){if(f5.rest[f4]==f3){return{map:f5.measure.maps[f4],cache:f5.measure.caches[f4]}}}for(var f4=0;f4<f5.rest.length;f4++){if(bL(f5.rest[f4])>f6){return{map:f5.measure.maps[f4],cache:f5.measure.caches[f4],before:true}}}}function cW(f3,f5){f5=z(f5);var f7=bL(f5);var f4=f3.display.externalMeasured=new bt(f3.doc,f5,f7);f4.lineN=f7;var f6=f4.built=eI(f3,f4);f4.text=f6.pre;bP(f3.display.lineMeasure,f6.pre);return f4}function d7(f3,f4,f6,f5){return E(f3,aZ(f3,f4),f6,f5)}function e1(f3,f5){if(f5>=f3.display.viewFrom&&f5<f3.display.viewTo){return f3.display.view[di(f3,f5)]}var f4=f3.display.externalMeasured;if(f4&&f5>=f4.lineN&&f5<f4.lineN+f4.size){return f4}}function aZ(f3,f5){var f6=bL(f5);var f4=e1(f3,f6);if(f4&&!f4.text){f4=null}else{if(f4&&f4.changes){aa(f3,f4,f6,e3(f3))}}if(!f4){f4=cW(f3,f5)}var f7=cs(f4,f5,f6);return{line:f5,view:f4,rect:null,map:f7.map,cache:f7.cache,before:f7.before,hasHeights:false}}function E(f3,f9,f7,f4,f6){if(f9.before){f7=-1}var f5=f7+(f4||""),f8;if(f9.cache.hasOwnProperty(f5)){f8=f9.cache[f5]}else{if(!f9.rect){f9.rect=f9.view.text.getBoundingClientRect()}if(!f9.hasHeights){cg(f3,f9.view,f9.rect);f9.hasHeights=true}f8=j(f3,f9,f7,f4);if(!f8.bogus){f9.cache[f5]=f8}}return{left:f8.left,right:f8.right,top:f6?f8.rtop:f8.top,bottom:f6?f8.rbottom:f8.bottom}}var er={left:0,right:0,top:0,bottom:0};function j(ga,gk,gc,f8){var go=gk.map;var gh,f7,f6,f3;for(var gj=0;gj<go.length;gj+=3){var gm=go[gj],gi=go[gj+1];if(gc<gm){f7=0;f6=1;f3="left"}else{if(gc<gi){f7=gc-gm;f6=f7+1}else{if(gj==go.length-3||gc==gi&&go[gj+3]>gc){f6=gi-gm;f7=f6-1;if(gc>=gi){f3="right"}}}}if(f7!=null){gh=go[gj+2];if(gm==gi&&f8==(gh.insertLeft?"left":"right")){f3=f8}if(f8=="left"&&f7==0){while(gj&&go[gj-2]==go[gj-3]&&go[gj-1].insertLeft){gh=go[(gj-=3)+2];f3="left"}}if(f8=="right"&&f7==gi-gm){while(gj<go.length-3&&go[gj+3]==go[gj+4]&&!go[gj+5].insertLeft){gh=go[(gj+=3)+2];f3="right"}}break}}var f4;if(gh.nodeType==3){for(var gj=0;gj<4;gj++){while(f7&&fg(gk.line.text.charAt(gm+f7))){--f7}while(gm+f6<gi&&fg(gk.line.text.charAt(gm+f6))){++f6}if(dA&&l<9&&f7==0&&f6==gi-gm){f4=gh.parentNode.getBoundingClientRect()}else{if(dA&&ga.options.lineWrapping){var f5=ck(gh,f7,f6).getClientRects();if(f5.length){f4=f5[f8=="right"?f5.length-1:0]}else{f4=er}}else{f4=ck(gh,f7,f6).getBoundingClientRect()||er}}if(f4.left||f4.right||f7==0){break}f6=f7;f7=f7-1;f3="right"}if(dA&&l<11){f4=eE(ga.display.measure,f4)}}else{if(f7>0){f3=f8="right"}var f5;if(ga.options.lineWrapping&&(f5=gh.getClientRects()).length>1){f4=f5[f8=="right"?f5.length-1:0]}else{f4=gh.getBoundingClientRect()}}if(dA&&l<9&&!f7&&(!f4||!f4.left&&!f4.right)){var f9=gh.parentNode.getClientRects()[0];if(f9){f4={left:f9.left,right:f9.left+du(ga.display),top:f9.top,bottom:f9.bottom}}else{f4=er}}var gf=f4.top-gk.rect.top,gd=f4.bottom-gk.rect.top;var gn=(gf+gd)/2;var gl=gk.view.measure.heights;for(var gj=0;gj<gl.length-1;gj++){if(gn<gl[gj]){break}}var gg=gj?gl[gj-1]:0,ge=gl[gj];var gb={left:(f3=="right"?f4.right:f4.left)-gk.rect.left,right:(f3=="left"?f4.left:f4.right)-gk.rect.left,top:gg,bottom:ge};if(!f4.left&&!f4.right){gb.bogus=true}if(!ga.options.singleCursorHeightPerLine){gb.rtop=gf;gb.rbottom=gd}return gb}function eE(f5,f6){if(!window.screen||screen.logicalXDPI==null||screen.logicalXDPI==screen.deviceXDPI||!aH(f5)){return f6}var f4=screen.logicalXDPI/screen.deviceXDPI;var f3=screen.logicalYDPI/screen.deviceYDPI;return{left:f6.left*f4,right:f6.right*f4,top:f6.top*f3,bottom:f6.bottom*f3}}function at(f4){if(f4.measure){f4.measure.cache={};f4.measure.heights=null;if(f4.rest){for(var f3=0;f3<f4.rest.length;f3++){f4.measure.caches[f3]={}}}}}function aK(f3){f3.display.externalMeasure=null;dR(f3.display.lineMeasure);for(var f4=0;f4<f3.display.view.length;f4++){at(f3.display.view[f4])}}function aj(f3){aK(f3);f3.display.cachedCharWidth=f3.display.cachedTextHeight=f3.display.cachedPaddingH=null;if(!f3.options.lineWrapping){f3.display.maxLineChanged=true}f3.display.lineNumChars=null}function ct(){return window.pageXOffset||(document.documentElement||document.body).scrollLeft}function cr(){return window.pageYOffset||(document.documentElement||document.body).scrollTop}function eH(f9,f6,f8,f4){if(f6.widgets){for(var f5=0;f5<f6.widgets.length;++f5){if(f6.widgets[f5].above){var gb=cT(f6.widgets[f5]);f8.top+=gb;f8.bottom+=gb}}}if(f4=="line"){return f8}if(!f4){f4="local"}var f7=bK(f6);if(f4=="local"){f7+=eY(f9.display)}else{f7-=f9.display.viewOffset}if(f4=="page"||f4=="window"){var f3=f9.display.lineSpace.getBoundingClientRect();f7+=f3.top+(f4=="window"?0:cr());var ga=f3.left+(f4=="window"?0:ct());f8.left+=ga;f8.right+=ga}f8.top+=f7;f8.bottom+=f7;return f8}function f0(f4,f7,f5){if(f5=="div"){return f7}var f9=f7.left,f8=f7.top;if(f5=="page"){f9-=ct();f8-=cr()}else{if(f5=="local"||!f5){var f6=f4.display.sizer.getBoundingClientRect();f9+=f6.left;f8+=f6.top}}var f3=f4.display.lineSpace.getBoundingClientRect();return{left:f9-f3.left,top:f8-f3.top}}function cG(f3,f7,f6,f5,f4){if(!f5){f5=e5(f3.doc,f7.line)}return eH(f3,f5,d7(f3,f5,f7.ch,f4),f6)}function dK(gc,gb,f5,f9,ge,ga){f9=f9||e5(gc.doc,gb.line);if(!ge){ge=aZ(gc,f9)}function f7(gh,gg){var gf=E(gc,ge,gh,gg?"right":"left",ga);if(gg){gf.left=gf.right}else{gf.right=gf.left}return eH(gc,f9,gf,f5)}function gd(gi,gf){var gg=f8[gf],gh=gg.level%2;if(gi==dp(gg)&&gf&&gg.level<f8[gf-1].level){gg=f8[--gf];gi=fZ(gg)-(gg.level%2?0:1);gh=true}else{if(gi==fZ(gg)&&gf<f8.length-1&&gg.level<f8[gf+1].level){gg=f8[++gf];gi=dp(gg)-gg.level%2;gh=false}}if(gh&&gi==gg.to&&gi>gg.from){return f7(gi-1)}return f7(gi,gh)}var f8=a(f9),f3=gb.ch;if(!f8){return f7(f3)}var f4=aD(f8,f3);var f6=gd(f3,f4);if(eT!=null){f6.other=gd(f3,eT)}return f6}function dy(f3,f7){var f6=0,f7=fA(f3.doc,f7);if(!f3.options.lineWrapping){f6=du(f3.display)*f7.ch}var f4=e5(f3.doc,f7.line);var f5=bK(f4)+eY(f3.display);return{left:f6,right:f6,top:f5,bottom:f5+f4.height}}function fM(f3,f4,f5,f7){var f6=X(f3,f4);f6.xRel=f7;if(f5){f6.outside=true}return f6}function fF(ga,f7,f6){var f9=ga.doc;f6+=ga.display.viewOffset;if(f6<0){return fM(f9.first,0,true,-1)}var f5=bE(f9,f6),gb=f9.first+f9.size-1;if(f5>gb){return fM(f9.first+f9.size-1,e5(f9,gb).text.length,true,1)}if(f7<0){f7=0}var f4=e5(f9,f5);for(;;){var gc=cU(ga,f4,f5,f7,f6);var f8=el(f4);var f3=f8&&f8.find(0,true);if(f8&&(gc.ch>f3.from.ch||gc.ch==f3.from.ch&&gc.xRel>0)){f5=bL(f4=f3.to.line)}else{return gc}}}function cU(gd,f5,gg,gf,ge){var gc=ge-bK(f5);var f9=false,gm=2*gd.display.wrapper.clientWidth;var gj=aZ(gd,f5);function gq(gs){var gt=dK(gd,X(gg,gs),"line",f5,gj);f9=true;if(gc>gt.bottom){return gt.left-gm}else{if(gc<gt.top){return gt.left+gm}else{f9=false}}return gt.left}var gi=a(f5),gl=f5.text.length;var gn=cC(f5),f6=cP(f5);var gk=gq(gn),f3=f9,f4=gq(f6),f8=f9;if(gf>f4){return fM(gg,f6,f8,1)}for(;;){if(gi?f6==gn||f6==v(f5,gn,1):f6-gn<=1){var gh=gf<gk||gf-gk<=f4-gf?gn:f6;var gp=gf-(gh==gn?gk:f4);while(fg(f5.text.charAt(gh))){++gh}var gb=fM(gg,gh,gh==gn?f3:f8,gp<-1?-1:gp>1?1:0);return gb}var ga=Math.ceil(gl/2),gr=gn+ga;if(gi){gr=gn;for(var go=0;go<ga;++go){gr=v(f5,gr,1)}}var f7=gq(gr);if(f7>gf){f6=gr;f4=f7;if(f8=f9){f4+=1000}gl=ga}else{gn=gr;gk=f7;f3=f9;gl-=ga}}}var aE;function aS(f5){if(f5.cachedTextHeight!=null){return f5.cachedTextHeight}if(aE==null){aE=fN("pre");for(var f4=0;f4<49;++f4){aE.appendChild(document.createTextNode("x"));aE.appendChild(fN("br"))}aE.appendChild(document.createTextNode("x"))}bP(f5.measure,aE);var f3=aE.offsetHeight/50;if(f3>3){f5.cachedTextHeight=f3}dR(f5.measure);return f3||1}function du(f7){if(f7.cachedCharWidth!=null){return f7.cachedCharWidth}var f3=fN("span","xxxxxxxxxx");var f6=fN("pre",[f3]);bP(f7.measure,f6);var f5=f3.getBoundingClientRect(),f4=(f5.right-f5.left)/10;if(f4>2){f7.cachedCharWidth=f4}return f4||10}var bn=null;var dY=0;function cF(f3){f3.curOp={cm:f3,viewChanged:false,startHeight:f3.doc.height,forceUpdate:false,updateInput:null,typing:false,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:false,updateMaxLine:false,scrollLeft:null,scrollTop:null,scrollToPos:null,id:++dY};if(bn){bn.ops.push(f3.curOp)}else{f3.curOp.ownsGroup=bn={ops:[f3.curOp],delayedCallbacks:[]}}}function cQ(f6){var f5=f6.delayedCallbacks,f4=0;do{for(;f4<f5.length;f4++){f5[f4]()}for(var f3=0;f3<f6.ops.length;f3++){var f7=f6.ops[f3];if(f7.cursorActivityHandlers){while(f7.cursorActivityCalled<f7.cursorActivityHandlers.length){f7.cursorActivityHandlers[f7.cursorActivityCalled++](f7.cm)}}}}while(f4<f5.length)}function al(f3){var f6=f3.curOp,f5=f6.ownsGroup;if(!f5){return}try{cQ(f5)}finally{bn=null;for(var f4=0;f4<f5.ops.length;f4++){f5.ops[f4].cm.curOp=null}cH(f5)}}function cH(f5){var f4=f5.ops;for(var f3=0;f3<f4.length;f3++){b3(f4[f3])}for(var f3=0;f3<f4.length;f3++){ap(f4[f3])}for(var f3=0;f3<f4.length;f3++){b0(f4[f3])}for(var f3=0;f3<f4.length;f3++){ao(f4[f3])}for(var f3=0;f3<f4.length;f3++){eR(f4[f3])}}function b3(f5){var f3=f5.cm,f4=f3.display;if(f5.updateMaxLine){g(f3)}f5.mustUpdate=f5.viewChanged||f5.forceUpdate||f5.scrollTop!=null||f5.scrollToPos&&(f5.scrollToPos.from.line<f4.viewFrom||f5.scrollToPos.to.line>=f4.viewTo)||f4.maxLineChanged&&f3.options.lineWrapping;f5.update=f5.mustUpdate&&new aF(f3,f5.mustUpdate&&{top:f5.scrollTop,ensure:f5.scrollToPos},f5.forceUpdate)}function ap(f3){f3.updatedDisplay=f3.mustUpdate&&D(f3.cm,f3.update)}function b0(f5){var f3=f5.cm,f4=f3.display;if(f5.updatedDisplay){a4(f3)}f5.barMeasure=dr(f3);if(f4.maxLineChanged&&!f3.options.lineWrapping){f5.adjustWidthTo=d7(f3,f4.maxLine,f4.maxLine.text.length).left+3;f5.maxScrollLeft=Math.max(0,f4.sizer.offsetLeft+f5.adjustWidthTo+bg-f4.scroller.clientWidth)}if(f5.updatedDisplay||f5.selectionChanged){f5.newSelectionNodes=bj(f3)}}function ao(f4){var f3=f4.cm;if(f4.adjustWidthTo!=null){f3.display.sizer.style.minWidth=f4.adjustWidthTo+"px";if(f4.maxScrollLeft<f3.doc.scrollLeft){bC(f3,Math.min(f3.display.scroller.scrollLeft,f4.maxScrollLeft),true)}f3.display.maxLineChanged=false}if(f4.newSelectionNodes){ak(f3,f4.newSelectionNodes)}if(f4.updatedDisplay){dq(f3,f4.barMeasure)}if(f4.updatedDisplay||f4.startHeight!=f3.doc.height){eP(f3,f4.barMeasure)}if(f4.selectionChanged){p(f3)}if(f3.state.focused&&f4.updateInput){ff(f3,f4.typing)}}function eR(f6){var gc=f6.cm,f8=gc.display,gb=gc.doc;if(f6.adjustWidthTo!=null&&Math.abs(f6.barMeasure.scrollWidth-gc.display.scroller.scrollWidth)>1){eP(gc)}if(f6.updatedDisplay){ci(gc,f6.update)}if(f8.wheelStartX!=null&&(f6.scrollTop!=null||f6.scrollLeft!=null||f6.scrollToPos)){f8.wheelStartX=f8.wheelStartY=null}if(f6.scrollTop!=null&&(f8.scroller.scrollTop!=f6.scrollTop||f6.forceScroll)){var f9=Math.max(0,Math.min(f8.scroller.scrollHeight-f8.scroller.clientHeight,f6.scrollTop));f8.scroller.scrollTop=f8.scrollbarV.scrollTop=gb.scrollTop=f9}if(f6.scrollLeft!=null&&(f8.scroller.scrollLeft!=f6.scrollLeft||f6.forceScroll)){var f4=Math.max(0,Math.min(f8.scroller.scrollWidth-f8.scroller.clientWidth,f6.scrollLeft));f8.scroller.scrollLeft=f8.scrollbarH.scrollLeft=gb.scrollLeft=f4;ev(gc)}if(f6.scrollToPos){var ga=F(gc,fA(gb,f6.scrollToPos.from),fA(gb,f6.scrollToPos.to),f6.scrollToPos.margin);if(f6.scrollToPos.isCursor&&gc.state.focused){dW(gc,ga)}}var f7=f6.maybeHiddenMarkers,f3=f6.maybeUnhiddenMarkers;if(f7){for(var f5=0;f5<f7.length;++f5){if(!f7[f5].lines.length){aB(f7[f5],"hide")}}}if(f3){for(var f5=0;f5<f3.length;++f5){if(f3[f5].lines.length){aB(f3[f5],"unhide")}}}if(f8.wrapper.offsetHeight){gb.scrollTop=gc.display.scroller.scrollTop}if(f6.updatedDisplay&&cV){if(gc.options.lineWrapping){fQ(gc,f6.barMeasure)}if(f6.barMeasure.scrollWidth>f6.barMeasure.clientWidth&&f6.barMeasure.scrollWidth<f6.barMeasure.clientWidth+1&&!cN(gc)){eP(gc)}}if(f6.changeObjs){aB(gc,"changes",gc,f6.changeObjs)}}function cJ(f3,f4){if(f3.curOp){return f4()}cF(f3);try{return f4()}finally{al(f3)}}function cX(f3,f4){return function(){if(f3.curOp){return f4.apply(f3,arguments)}cF(f3);try{return f4.apply(f3,arguments)}finally{al(f3)}}}function c3(f3){return function(){if(this.curOp){return f3.apply(this,arguments)}cF(this);try{return f3.apply(this,arguments)}finally{al(this)}}}function cB(f3){return function(){var f4=this.cm;if(!f4||f4.curOp){return f3.apply(this,arguments)}cF(f4);try{return f3.apply(this,arguments)}finally{al(f4)}}}function bt(f5,f3,f4){this.line=f3;this.rest=h(f3);this.size=this.rest?bL(fy(this.rest))-f4+1:1;this.node=this.text=null;this.hidden=fn(f5,f3)}function eM(f3,f9,f8){var f7=[],f5;for(var f6=f9;f6<f8;f6=f5){var f4=new bt(f3.doc,e5(f3.doc,f6),f6);f5=f6+f4.size;f7.push(f4)}return f7}function ag(ga,f8,f9,gb){if(f8==null){f8=ga.doc.first}if(f9==null){f9=ga.doc.first+ga.doc.size}if(!gb){gb=0}var f5=ga.display;if(gb&&f9<f5.viewTo&&(f5.updateLineNumbers==null||f5.updateLineNumbers>f8)){f5.updateLineNumbers=f8}ga.curOp.viewChanged=true;if(f8>=f5.viewTo){if(a2&&aR(ga.doc,f8)<f5.viewTo){en(ga)}}else{if(f9<=f5.viewFrom){if(a2&&dT(ga.doc,f9+gb)>f5.viewFrom){en(ga)}else{f5.viewFrom+=gb;f5.viewTo+=gb}}else{if(f8<=f5.viewFrom&&f9>=f5.viewTo){en(ga)}else{if(f8<=f5.viewFrom){var f7=c9(ga,f9,f9+gb,1);if(f7){f5.view=f5.view.slice(f7.index);f5.viewFrom=f7.lineN;f5.viewTo+=gb}else{en(ga)}}else{if(f9>=f5.viewTo){var f7=c9(ga,f8,f8,-1);if(f7){f5.view=f5.view.slice(0,f7.index);f5.viewTo=f7.lineN}else{en(ga)}}else{var f6=c9(ga,f8,f8,-1);var f4=c9(ga,f9,f9+gb,1);if(f6&&f4){f5.view=f5.view.slice(0,f6.index).concat(eM(ga,f6.lineN,f4.lineN)).concat(f5.view.slice(f4.index));f5.viewTo+=gb}else{en(ga)}}}}}}var f3=f5.externalMeasured;if(f3){if(f9<f3.lineN){f3.lineN+=gb}else{if(f8<f3.lineN+f3.size){f5.externalMeasured=null}}}}function S(f4,f5,f8){f4.curOp.viewChanged=true;var f9=f4.display,f7=f4.display.externalMeasured;if(f7&&f5>=f7.lineN&&f5<f7.lineN+f7.size){f9.externalMeasured=null}if(f5<f9.viewFrom||f5>=f9.viewTo){return}var f6=f9.view[di(f4,f5)];if(f6.node==null){return}var f3=f6.changes||(f6.changes=[]);if(dc(f3,f8)==-1){f3.push(f8)}}function en(f3){f3.display.viewFrom=f3.display.viewTo=f3.doc.first;f3.display.view=[];f3.display.viewOffset=0}function di(f3,f6){if(f6>=f3.display.viewTo){return null}f6-=f3.display.viewFrom;if(f6<0){return null}var f4=f3.display.view;for(var f5=0;f5<f4.length;f5++){f6-=f4[f5].size;if(f6<0){return f5}}}function c9(gb,f5,f7,f4){var f8=di(gb,f5),ga,f9=gb.display.view;if(!a2||f7==gb.doc.first+gb.doc.size){return{index:f8,lineN:f7}}for(var f6=0,f3=gb.display.viewFrom;f6<f8;f6++){f3+=f9[f6].size}if(f3!=f5){if(f4>0){if(f8==f9.length-1){return null}ga=(f3+f9[f8].size)-f5;f8++}else{ga=f3-f5}f5+=ga;f7+=ga}while(aR(gb.doc,f7)!=f7){if(f8==(f4<0?0:f9.length-1)){return null}f7+=f4*f9[f8-(f4<0?1:0)].size;f8+=f4}return{index:f8,lineN:f7}}function cO(f3,f7,f6){var f5=f3.display,f4=f5.view;if(f4.length==0||f7>=f5.viewTo||f6<=f5.viewFrom){f5.view=eM(f3,f7,f6);f5.viewFrom=f7}else{if(f5.viewFrom>f7){f5.view=eM(f3,f7,f5.viewFrom).concat(f5.view)}else{if(f5.viewFrom<f7){f5.view=f5.view.slice(di(f3,f7))}}f5.viewFrom=f7;if(f5.viewTo<f6){f5.view=f5.view.concat(eM(f3,f5.viewTo,f6))}else{if(f5.viewTo>f6){f5.view=f5.view.slice(0,di(f3,f6))}}}f5.viewTo=f6}function c6(f3){var f4=f3.display.view,f7=0;for(var f6=0;f6<f4.length;f6++){var f5=f4[f6];if(!f5.hidden&&(!f5.node||f5.changes)){++f7}}return f7}function bk(f3){if(f3.display.pollingFast){return}f3.display.poll.set(f3.options.pollInterval,function(){cf(f3);if(f3.state.focused){bk(f3)}})}function C(f3){var f4=false;f3.display.pollingFast=true;function f5(){var f6=cf(f3);if(!f6&&!f4){f4=true;f3.display.poll.set(60,f5)}else{f3.display.pollingFast=false;bk(f3)}}f3.display.poll.set(20,f5)}var bi=null;function cf(f7){var f8=f7.display.input,gb=f7.display.prevInput,gm=f7.doc;if(!f7.state.focused||(bq(f8)&&!gb)||ai(f7)||f7.options.disableInput||f7.state.keySeq){return false}if(f7.state.pasteIncoming&&f7.state.fakedLastChar){f8.value=f8.value.substring(0,f8.value.length-1);f7.state.fakedLastChar=false}var ga=f8.value;if(ga==gb&&!f7.somethingSelected()){return false}if(dA&&l>=9&&f7.display.inputHasSelection===ga||b5&&/[\uf700-\uf7ff]/.test(ga)){ff(f7);return false}var gi=!f7.curOp;if(gi){cF(f7)}f7.display.shift=false;if(ga.charCodeAt(0)==8203&&gm.sel==f7.display.selForContextMenu&&!gb){gb="\u200b"}var gh=0,ge=Math.min(gb.length,ga.length);while(gh<ge&&gb.charCodeAt(gh)==ga.charCodeAt(gh)){++gh}var f4=ga.slice(gh),gc=aV(f4);var gl=null;if(f7.state.pasteIncoming&&gm.sel.ranges.length>1){if(bi&&bi.join("\n")==f4){gl=gm.sel.ranges.length%bi.length==0&&bQ(bi,aV)}else{if(gc.length==gm.sel.ranges.length){gl=bQ(gc,function(gn){return[gn]})}}}for(var gj=gm.sel.ranges.length-1;gj>=0;gj--){var gd=gm.sel.ranges[gj];var gf=gd.from(),f3=gd.to();if(gh<gb.length){gf=X(gf.line,gf.ch-(gb.length-gh))}else{if(f7.state.overwrite&&gd.empty()&&!f7.state.pasteIncoming){f3=X(f3.line,Math.min(e5(gm,f3.line).text.length,f3.ch+fy(gc).length))}}var f6=f7.curOp.updateInput;var gk={from:gf,to:f3,text:gl?gl[gj%gl.length]:gc,origin:f7.state.pasteIncoming?"paste":f7.state.cutIncoming?"cut":"+input"};bb(f7.doc,gk);ad(f7,"inputRead",f7,gk);if(f4&&!f7.state.pasteIncoming&&f7.options.electricChars&&f7.options.smartIndent&&gd.head.ch<100&&(!gj||gm.sel.ranges[gj-1].head.line!=gd.head.line)){var f9=f7.getModeAt(gd.head);var f5=cS(gk);if(f9.electricChars){for(var gg=0;gg<f9.electricChars.length;gg++){if(f4.indexOf(f9.electricChars.charAt(gg))>-1){ac(f7,f5.line,"smart");break}}}else{if(f9.electricInput){if(f9.electricInput.test(e5(gm,f5.line).text.slice(0,f5.ch))){ac(f7,f5.line,"smart")}}}}}fx(f7);f7.curOp.updateInput=f6;f7.curOp.typing=true;if(ga.length>1000||ga.indexOf("\n")>-1){f8.value=f7.display.prevInput=""}else{f7.display.prevInput=ga}if(gi){al(f7)}f7.state.pasteIncoming=f7.state.cutIncoming=false;return true}function ff(f3,f7){var f4,f6,f9=f3.doc;if(f3.somethingSelected()){f3.display.prevInput="";var f5=f9.sel.primary();f4=c5&&(f5.to().line-f5.from().line>100||(f6=f3.getSelection()).length>1000);var f8=f4?"-":f6||f3.getSelection();f3.display.input.value=f8;if(f3.state.focused){dB(f3.display.input)}if(dA&&l>=9){f3.display.inputHasSelection=f8}}else{if(!f7){f3.display.prevInput=f3.display.input.value="";if(dA&&l>=9){f3.display.inputHasSelection=null}}}f3.display.inaccurateSelection=f4}function eq(f3){if(f3.options.readOnly!="nocursor"&&(!d6||dE()!=f3.display.input)){f3.display.input.focus()}}function s(f3){if(!f3.state.focused){eq(f3);cz(f3)}}function ai(f3){return f3.options.readOnly||f3.doc.cantEdit}function fG(f3){var f5=f3.display;bV(f5.scroller,"mousedown",cX(f3,ej));if(dA&&l<11){bV(f5.scroller,"dblclick",cX(f3,function(f9){if(aN(f3,f9)){return}var ga=cm(f3,f9);if(!ga||m(f3,f9)||a5(f3.display,f9)){return}cD(f9);var f8=f3.findWordAt(ga);fK(f3.doc,f8.anchor,f8.head)}))}else{bV(f5.scroller,"dblclick",function(f8){aN(f3,f8)||cD(f8)})}bV(f5.lineSpace,"selectstart",function(f8){if(!a5(f5,f8)){cD(f8)}});if(!fV){bV(f5.scroller,"contextmenu",function(f8){ax(f3,f8)})}bV(f5.scroller,"scroll",function(){if(f5.scroller.clientHeight){O(f3,f5.scroller.scrollTop);bC(f3,f5.scroller.scrollLeft,true);aB(f3,"scroll",f3)}});bV(f5.scrollbarV,"scroll",function(){if(f5.scroller.clientHeight){O(f3,f5.scrollbarV.scrollTop)}});bV(f5.scrollbarH,"scroll",function(){if(f5.scroller.clientHeight){bC(f3,f5.scrollbarH.scrollLeft)}});bV(f5.scroller,"mousewheel",function(f8){b(f3,f8)});bV(f5.scroller,"DOMMouseScroll",function(f8){b(f3,f8)});function f7(){if(f3.state.focused){setTimeout(cu(eq,f3),0)}}bV(f5.scrollbarH,"mousedown",f7);bV(f5.scrollbarV,"mousedown",f7);bV(f5.wrapper,"scroll",function(){f5.wrapper.scrollTop=f5.wrapper.scrollLeft=0});bV(f5.input,"keyup",function(f8){bd.call(f3,f8)});bV(f5.input,"input",function(){if(dA&&l>=9&&f3.display.inputHasSelection){f3.display.inputHasSelection=null}C(f3)});bV(f5.input,"keydown",cX(f3,q));bV(f5.input,"keypress",cX(f3,cw));bV(f5.input,"focus",cu(cz,f3));bV(f5.input,"blur",cu(aQ,f3));function f4(f8){if(!aN(f3,f8)){eh(f8)}}if(f3.options.dragDrop){bV(f5.scroller,"dragstart",function(f8){R(f3,f8)});bV(f5.scroller,"dragenter",f4);bV(f5.scroller,"dragover",f4);bV(f5.scroller,"drop",cX(f3,bf))}bV(f5.scroller,"paste",function(f8){if(a5(f5,f8)){return}f3.state.pasteIncoming=true;eq(f3);C(f3)});bV(f5.input,"paste",function(){if(cV&&!f3.state.fakedLastChar&&!(new Date-f3.state.lastMiddleDown<200)){var f9=f5.input.selectionStart,f8=f5.input.selectionEnd;f5.input.value+="$";f5.input.selectionEnd=f8;f5.input.selectionStart=f9;f3.state.fakedLastChar=true}f3.state.pasteIncoming=true;C(f3)});function f6(gc){if(f3.somethingSelected()){bi=f3.getSelections();if(f5.inaccurateSelection){f5.prevInput="";f5.inaccurateSelection=false;f5.input.value=bi.join("\n");dB(f5.input)}}else{var gd=[],f9=[];for(var ga=0;ga<f3.doc.sel.ranges.length;ga++){var f8=f3.doc.sel.ranges[ga].head.line;var gb={anchor:X(f8,0),head:X(f8+1,0)};f9.push(gb);gd.push(f3.getRange(gb.anchor,gb.head))}if(gc.type=="cut"){f3.setSelections(f9,null,Z)}else{f5.prevInput="";f5.input.value=gd.join("\n");dB(f5.input)}bi=gd}if(gc.type=="cut"){f3.state.cutIncoming=true}}bV(f5.input,"cut",f6);bV(f5.input,"copy",f6);if(a6){bV(f5.sizer,"mouseup",function(){if(dE()==f5.input){f5.input.blur()}eq(f3)})}}function aP(f3){var f4=f3.display;if(f4.lastWrapHeight==f4.wrapper.clientHeight&&f4.lastWrapWidth==f4.wrapper.clientWidth){return}f4.cachedCharWidth=f4.cachedTextHeight=f4.cachedPaddingH=null;f3.setSize()}function a5(f4,f3){for(var f5=M(f3);f5!=f4.wrapper;f5=f5.parentNode){if(!f5||f5.ignoreEvents||f5.parentNode==f4.sizer&&f5!=f4.mover){return true}}}function cm(gd,f7,f4,f5){var f9=gd.display;if(!f4){var f8=M(f7);if(f8==f9.scrollbarH||f8==f9.scrollbarV||f8==f9.scrollbarFiller||f8==f9.gutterFiller){return null}}var gc,ga,f3=f9.lineSpace.getBoundingClientRect();try{gc=f7.clientX-f3.left;ga=f7.clientY-f3.top}catch(f7){return null}var gb=fF(gd,gc,ga),ge;if(f5&&gb.xRel==1&&(ge=e5(gd.doc,gb.line).text).length==gb.ch){var f6=bR(ge,ge.length,gd.options.tabSize)-ge.length;gb=X(gb.line,Math.max(0,Math.round((gc-eV(gd.display).left)/du(gd.display))-f6))}return gb}function ej(f5){if(aN(this,f5)){return}var f3=this,f4=f3.display;f4.shift=f5.shiftKey;if(a5(f4,f5)){if(!cV){f4.scroller.draggable=false;setTimeout(function(){f4.scroller.draggable=true},100)}return}if(m(f3,f5)){return}var f6=cm(f3,f5);window.focus();switch(fE(f5)){case 1:if(f6){aw(f3,f5,f6)}else{if(M(f5)==f4.scroller){cD(f5)}}break;case 2:if(cV){f3.state.lastMiddleDown=+new Date}if(f6){fK(f3.doc,f6)}setTimeout(cu(eq,f3),20);cD(f5);break;case 3:if(fV){ax(f3,f5)}break}}var df,c8;function aw(f4,f8,f9){setTimeout(cu(s,f4),0);var f5=+new Date,f6;if(c8&&c8.time>f5-400&&cd(c8.pos,f9)==0){f6="triple"}else{if(df&&df.time>f5-400&&cd(df.pos,f9)==0){f6="double";c8={time:f5,pos:f9}}else{f6="single";df={time:f5,pos:f9}}}var f7=f4.doc.sel,f3=b5?f8.metaKey:f8.ctrlKey;if(f4.options.dragDrop&&eC&&!ai(f4)&&f6=="single"&&f7.contains(f9)>-1&&f7.somethingSelected()){aY(f4,f8,f9,f3)}else{n(f4,f8,f9,f6,f3)}}function aY(f5,f7,f8,f4){var f6=f5.display;var f3=cX(f5,function(f9){if(cV){f6.scroller.draggable=false}f5.state.draggingText=false;d3(document,"mouseup",f3);d3(f6.scroller,"drop",f3);if(Math.abs(f7.clientX-f9.clientX)+Math.abs(f7.clientY-f9.clientY)<10){cD(f9);if(!f4){fK(f5.doc,f8)}eq(f5);if(dA&&l==9){setTimeout(function(){document.body.focus();eq(f5)},20)}}});if(cV){f6.scroller.draggable=true}f5.state.draggingText=f3;if(f6.scroller.dragDrop){f6.scroller.dragDrop()}bV(document,"mouseup",f3);bV(f6.scroller,"drop",f3)}function n(f6,gk,f5,f3,f8){var gh=f6.display,gm=f6.doc;cD(gk);var f4,gl,f7=gm.sel;if(f8&&!gk.shiftKey){gl=gm.sel.contains(f5);if(gl>-1){f4=gm.sel.ranges[gl]}else{f4=new dO(f5,f5)}}else{f4=gm.sel.primary()}if(gk.altKey){f3="rect";if(!f8){f4=new dO(f5,f5)}f5=cm(f6,gk,true,true);gl=-1}else{if(f3=="double"){var gi=f6.findWordAt(f5);if(f6.display.shift||gm.extend){f4=fm(gm,f4,gi.anchor,gi.head)}else{f4=gi}}else{if(f3=="triple"){var gb=new dO(X(f5.line,0),fA(gm,X(f5.line+1,0)));if(f6.display.shift||gm.extend){f4=fm(gm,f4,gb.anchor,gb.head)}else{f4=gb}}else{f4=fm(gm,f4,f5)}}}if(!f8){gl=0;bS(gm,new fO([f4],0),N);f7=gm.sel}else{if(gl>-1){e(gm,gl,f4,N)}else{gl=gm.sel.ranges.length;bS(gm,cv(gm.sel.ranges.concat([f4]),gl),{scroll:false,origin:"*mouse"})}}var gg=f5;function gf(gx){if(cd(gg,gx)==0){return}gg=gx;if(f3=="rect"){var go=[],gu=f6.options.tabSize;var gn=bR(e5(gm,f5.line).text,f5.ch,gu);var gA=bR(e5(gm,gx.line).text,gx.ch,gu);var gp=Math.min(gn,gA),gy=Math.max(gn,gA);for(var gB=Math.min(f5.line,gx.line),gr=Math.min(f6.lastLine(),Math.max(f5.line,gx.line));gB<=gr;gB++){var gz=e5(gm,gB).text,gq=eg(gz,gp,gu);if(gp==gy){go.push(new dO(X(gB,gq),X(gB,gq)))}else{if(gz.length>gq){go.push(new dO(X(gB,gq),X(gB,eg(gz,gy,gu))))}}}if(!go.length){go.push(new dO(f5,f5))}bS(gm,cv(f7.ranges.slice(0,gl).concat(go),gl),{origin:"*mouse",scroll:false});f6.scrollIntoView(gx)}else{var gv=f4;var gs=gv.anchor,gw=gx;if(f3!="single"){if(f3=="double"){var gt=f6.findWordAt(gx)}else{var gt=new dO(X(gx.line,0),fA(gm,X(gx.line+1,0)))}if(cd(gt.anchor,gs)>0){gw=gt.head;gs=aq(gv.from(),gt.anchor)}else{gw=gt.anchor;gs=bv(gv.to(),gt.head)}}var go=f7.ranges.slice(0);go[gl]=new dO(fA(gm,gs),gw);bS(gm,cv(go,gl),N)}}var gd=gh.wrapper.getBoundingClientRect();var f9=0;function gj(gp){var gn=++f9;var gr=cm(f6,gp,true,f3=="rect");if(!gr){return}if(cd(gr,gg)!=0){s(f6);gf(gr);var gq=b4(gh,gm);if(gr.line>=gq.to||gr.line<gq.from){setTimeout(cX(f6,function(){if(f9==gn){gj(gp)}}),150)}}else{var go=gp.clientY<gd.top?-20:gp.clientY>gd.bottom?20:0;if(go){setTimeout(cX(f6,function(){if(f9!=gn){return}gh.scroller.scrollTop+=go;gj(gp)}),50)}}}function gc(gn){f9=Infinity;cD(gn);eq(f6);d3(document,"mousemove",ge);d3(document,"mouseup",ga);gm.history.lastSelOrigin=null}var ge=cX(f6,function(gn){if(!fE(gn)){gc(gn)}else{gj(gn)}});var ga=cX(f6,gc);bV(document,"mousemove",ge);bV(document,"mouseup",ga)}function f1(ge,ga,gc,gd,f6){try{var f4=ga.clientX,f3=ga.clientY}catch(ga){return false}if(f4>=Math.floor(ge.display.gutters.getBoundingClientRect().right)){return false}if(gd){cD(ga)}var gb=ge.display;var f9=gb.lineDiv.getBoundingClientRect();if(f3>f9.bottom||!e8(ge,gc)){return bJ(ga)}f3-=f9.top-gb.viewOffset;for(var f7=0;f7<ge.options.gutters.length;++f7){var f8=gb.gutters.childNodes[f7];if(f8&&f8.getBoundingClientRect().right>=f4){var gf=bE(ge.doc,f3);var f5=ge.options.gutters[f7];f6(ge,gc,ge,gf,f5,ga);return bJ(ga)}}}function m(f3,f4){return f1(f3,f4,"gutterClick",true,ad)}var af=0;function bf(f9){var gb=this;if(aN(gb,f9)||a5(gb.display,f9)){return}cD(f9);if(dA){af=+new Date}var ga=cm(gb,f9,true),f3=f9.dataTransfer.files;if(!ga||ai(gb)){return}if(f3&&f3.length&&window.FileReader&&window.File){var f5=f3.length,gc=Array(f5),f4=0;var f7=function(gf,ge){var gd=new FileReader;gd.onload=cX(gb,function(){gc[ge]=gd.result;if(++f4==f5){ga=fA(gb.doc,ga);var gg={from:ga,to:ga,text:aV(gc.join("\n")),origin:"paste"};bb(gb.doc,gg);eX(gb.doc,eJ(ga,cS(gg)))}});gd.readAsText(gf)};for(var f8=0;f8<f5;++f8){f7(f3[f8],f8)}}else{if(gb.state.draggingText&&gb.doc.sel.contains(ga)>-1){gb.state.draggingText(f9);setTimeout(cu(eq,gb),20);return}try{var gc=f9.dataTransfer.getData("Text");if(gc){if(gb.state.draggingText&&!(b5?f9.metaKey:f9.ctrlKey)){var f6=gb.listSelections()}ef(gb.doc,eJ(ga,ga));if(f6){for(var f8=0;f8<f6.length;++f8){aW(gb.doc,"",f6[f8].anchor,f6[f8].head,"drag")}}gb.replaceSelection(gc,"around","paste");eq(gb)}}catch(f9){}}}function R(f3,f5){if(dA&&(!f3.state.draggingText||+new Date-af<100)){eh(f5);return}if(aN(f3,f5)||a5(f3.display,f5)){return}f5.dataTransfer.setData("Text",f3.getSelection());if(f5.dataTransfer.setDragImage&&!aA){var f4=fN("img",null,null,"position: fixed; left: 0; top: 0;");f4.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==";if(dS){f4.width=f4.height=1;f3.display.wrapper.appendChild(f4);f4._top=f4.offsetTop}f5.dataTransfer.setDragImage(f4,0,0);if(dS){f4.parentNode.removeChild(f4)}}}function O(f3,f4){if(Math.abs(f3.doc.scrollTop-f4)<2){return}f3.doc.scrollTop=f4;if(!cn){dJ(f3,{top:f4})}if(f3.display.scroller.scrollTop!=f4){f3.display.scroller.scrollTop=f4}if(f3.display.scrollbarV.scrollTop!=f4){f3.display.scrollbarV.scrollTop=f4}if(cn){dJ(f3)}d5(f3,100)}function bC(f3,f5,f4){if(f4?f5==f3.doc.scrollLeft:Math.abs(f3.doc.scrollLeft-f5)<2){return}f5=Math.min(f5,f3.display.scroller.scrollWidth-f3.display.scroller.clientWidth);f3.doc.scrollLeft=f5;ev(f3);if(f3.display.scroller.scrollLeft!=f5){f3.display.scroller.scrollLeft=f5}if(f3.display.scrollbarH.scrollLeft!=f5){f3.display.scrollbarH.scrollLeft=f5}}var fc=0,ce=null;if(dA){ce=-0.53}else{if(cn){ce=15}else{if(c7){ce=-0.7}else{if(aA){ce=-1/3}}}}function b(gb,f5){var ge=f5.wheelDeltaX,gd=f5.wheelDeltaY;if(ge==null&&f5.detail&&f5.axis==f5.HORIZONTAL_AXIS){ge=f5.detail}if(gd==null&&f5.detail&&f5.axis==f5.VERTICAL_AXIS){gd=f5.detail}else{if(gd==null){gd=f5.wheelDelta}}var f7=gb.display,ga=f7.scroller;if(!(ge&&ga.scrollWidth>ga.clientWidth||gd&&ga.scrollHeight>ga.clientHeight)){return}if(gd&&b5&&cV){outer:for(var gc=f5.target,f9=f7.view;gc!=ga;gc=gc.parentNode){for(var f4=0;f4<f9.length;f4++){if(f9[f4].node==gc){gb.display.currentWheelTarget=gc;break outer}}}}if(ge&&!cn&&!dS&&ce!=null){if(gd){O(gb,Math.max(0,Math.min(ga.scrollTop+gd*ce,ga.scrollHeight-ga.clientHeight)))}bC(gb,Math.max(0,Math.min(ga.scrollLeft+ge*ce,ga.scrollWidth-ga.clientWidth)));cD(f5);f7.wheelStartX=null;return}if(gd&&ce!=null){var f3=gd*ce;var f8=gb.doc.scrollTop,f6=f8+f7.wrapper.clientHeight;if(f3<0){f8=Math.max(0,f8+f3-50)}else{f6=Math.min(gb.doc.height,f6+f3+50)}dJ(gb,{top:f8,bottom:f6})}if(fc<20){if(f7.wheelStartX==null){f7.wheelStartX=ga.scrollLeft;f7.wheelStartY=ga.scrollTop;f7.wheelDX=ge;f7.wheelDY=gd;setTimeout(function(){if(f7.wheelStartX==null){return}var gf=ga.scrollLeft-f7.wheelStartX;var gh=ga.scrollTop-f7.wheelStartY;var gg=(gh&&f7.wheelDY&&gh/f7.wheelDY)||(gf&&f7.wheelDX&&gf/f7.wheelDX);f7.wheelStartX=f7.wheelStartY=null;if(!gg){return}ce=(ce*fc+gg)/(fc+1);++fc},200)}else{f7.wheelDX+=ge;f7.wheelDY+=gd}}}function fH(f4,f7,f3){if(typeof f7=="string"){f7=eu[f7];if(!f7){return false}}if(f4.display.pollingFast&&cf(f4)){f4.display.pollingFast=false}var f6=f4.display.shift,f5=false;try{if(ai(f4)){f4.state.suppressEdits=true}if(f3){f4.display.shift=false}f5=f7(f4)!=b8}finally{f4.display.shift=f6;f4.state.suppressEdits=false}return f5}function d0(f4,f5,f7){for(var f6=0;f6<f4.state.keyMaps.length;f6++){var f3=i(f5,f4.state.keyMaps[f6],f7);if(f3){return f3}}return(f4.options.extraKeys&&i(f5,f4.options.extraKeys,f7))||i(f5,f4.options.keyMap,f7)}var dC=new f2;function a8(f4,f6,f8,f7){var f5=f4.state.keySeq;if(f5){if(et(f6)){return"handled"}dC.set(50,function(){if(f4.state.keySeq==f5){f4.state.keySeq=null;ff(f4)}});f6=f5+" "+f6}var f3=d0(f4,f6,f7);if(f3=="multi"){f4.state.keySeq=f6}if(f3=="handled"){ad(f4,"keyHandled",f4,f6,f8)}if(f3=="handled"||f3=="multi"){cD(f8);p(f4)}if(f5&&!f3&&/\'$/.test(f6)){cD(f8);return true}return !!f3}function e9(f3,f5){var f4=fi(f5,true);if(!f4){return false}if(f5.shiftKey&&!f3.state.keySeq){return a8(f3,"Shift-"+f4,f5,function(f6){return fH(f3,f6,true)})||a8(f3,f4,f5,function(f6){if(typeof f6=="string"?/^go[A-Z]/.test(f6):f6.motion){return fH(f3,f6)}})}else{return a8(f3,f4,f5,function(f6){return fH(f3,f6)})}}function d9(f3,f5,f4){return a8(f3,"'"+f4+"'",f5,function(f6){return fH(f3,f6,true)})}var de=null;function q(f6){var f3=this;s(f3);if(aN(f3,f6)){return}if(dA&&l<11&&f6.keyCode==27){f6.returnValue=false}var f4=f6.keyCode;f3.display.shift=f4==16||f6.shiftKey;var f5=e9(f3,f6);if(dS){de=f5?f4:null;if(!f5&&f4==88&&!c5&&(b5?f6.metaKey:f6.ctrlKey)){f3.replaceSelection("",null,"cut")}}if(f4==18&&!/\bCodeMirror-crosshair\b/.test(f3.display.lineDiv.className)){au(f3)}}function au(f4){var f5=f4.display.lineDiv;fr(f5,"CodeMirror-crosshair");function f3(f6){if(f6.keyCode==18||!f6.altKey){f(f5,"CodeMirror-crosshair");d3(document,"keyup",f3);d3(document,"mouseover",f3)}}bV(document,"keyup",f3);bV(document,"mouseover",f3)}function bd(f3){if(f3.keyCode==16){this.doc.sel.shift=false}aN(this,f3)}function cw(f7){var f3=this;if(aN(f3,f7)||f7.ctrlKey&&!f7.altKey||b5&&f7.metaKey){return}var f6=f7.keyCode,f4=f7.charCode;if(dS&&f6==de){de=null;cD(f7);return}if(((dS&&(!f7.which||f7.which<10))||a6)&&e9(f3,f7)){return}var f5=String.fromCharCode(f4==null?f6:f4);if(d9(f3,f7,f5)){return}if(dA&&l>=9){f3.display.inputHasSelection=null}C(f3)}function cz(f3){if(f3.options.readOnly=="nocursor"){return}if(!f3.state.focused){aB(f3,"focus",f3);f3.state.focused=true;fr(f3.display.wrapper,"CodeMirror-focused");if(!f3.curOp&&f3.display.selForContextMenu!=f3.doc.sel){ff(f3);if(cV){setTimeout(cu(ff,f3,true),0)}}}bk(f3);p(f3)}function aQ(f3){if(f3.state.focused){aB(f3,"blur",f3);f3.state.focused=false;f(f3.display.wrapper,"CodeMirror-focused")}clearInterval(f3.display.blinker);setTimeout(function(){if(!f3.state.focused){f3.display.shift=false}},150)}function ax(gc,f7){if(aN(gc,f7,"contextmenu")){return}var f9=gc.display;if(a5(f9,f7)||db(gc,f7)){return}var gb=cm(gc,f7),f3=f9.scroller.scrollTop;if(!gb||dS){return}var f6=gc.options.resetSelectionOnContextMenu;if(f6&&gc.doc.sel.contains(gb)==-1){cX(gc,bS)(gc.doc,eJ(gb),Z)}var f8=f9.input.style.cssText;f9.inputDiv.style.position="absolute";f9.input.style.cssText="position: fixed; width: 30px; height: 30px; top: "+(f7.clientY-5)+"px; left: "+(f7.clientX-5)+"px; z-index: 1000; background: "+(dA?"rgba(255, 255, 255, .05)":"transparent")+"; outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);";if(cV){var gd=window.scrollY}eq(gc);if(cV){window.scrollTo(null,gd)}ff(gc);if(!gc.somethingSelected()){f9.input.value=f9.prevInput=" "}f9.selForContextMenu=gc.doc.sel;clearTimeout(f9.detectingSelectAll);function f5(){if(f9.input.selectionStart!=null){var ge=gc.somethingSelected();var gf=f9.input.value="\u200b"+(ge?f9.input.value:"");f9.prevInput=ge?"":"\u200b";f9.input.selectionStart=1;f9.input.selectionEnd=gf.length;f9.selForContextMenu=gc.doc.sel}}function ga(){f9.inputDiv.style.position="relative";f9.input.style.cssText=f8;if(dA&&l<9){f9.scrollbarV.scrollTop=f9.scroller.scrollTop=f3}bk(gc);if(f9.input.selectionStart!=null){if(!dA||(dA&&l<9)){f5()}var ge=0,gf=function(){if(f9.selForContextMenu==gc.doc.sel&&f9.input.selectionStart==0){cX(gc,eu.selectAll)(gc)}else{if(ge++<10){f9.detectingSelectAll=setTimeout(gf,500)}else{ff(gc)}}};f9.detectingSelectAll=setTimeout(gf,200)}}if(dA&&l>=9){f5()}if(fV){eh(f7);var f4=function(){d3(window,"mouseup",f4);setTimeout(ga,20)};bV(window,"mouseup",f4)}else{setTimeout(ga,50)}}function db(f3,f4){if(!e8(f3,"gutterContextMenu")){return false}return f1(f3,f4,"gutterContextMenu",false,aB)}var cS=J.changeEnd=function(f3){if(!f3.text){return f3.to}return X(f3.from.line+f3.text.length-1,fy(f3.text).length+(f3.text.length==1?f3.from.ch:0))};function bX(f6,f5){if(cd(f6,f5.from)<0){return f6}if(cd(f6,f5.to)<=0){return cS(f5)}var f3=f6.line+f5.text.length-(f5.to.line-f5.from.line)-1,f4=f6.ch;if(f6.line==f5.to.line){f4+=cS(f5).ch-f5.to.ch}return X(f3,f4)}function fa(f6,f7){var f4=[];for(var f5=0;f5<f6.sel.ranges.length;f5++){var f3=f6.sel.ranges[f5];f4.push(new dO(bX(f3.anchor,f7),bX(f3.head,f7)))}return cv(f4,f6.sel.primIndex)}function bs(f5,f4,f3){if(f5.line==f4.line){return X(f3.line,f5.ch-f4.ch+f3.ch)}else{return X(f3.line+(f5.line-f4.line),f5.ch)}}function ae(gd,ga,f4){var f5=[];var f3=X(gd.first,0),ge=f3;for(var f7=0;f7<ga.length;f7++){var f9=ga[f7];var gc=bs(f9.from,f3,ge);var gb=bs(cS(f9),f3,ge);f3=f9.to;ge=gb;if(f4=="around"){var f8=gd.sel.ranges[f7],f6=cd(f8.head,f8.anchor)<0;f5[f7]=new dO(f6?gb:gc,f6?gc:gb)}else{f5[f7]=new dO(gc,gc)}}return new fO(f5,gd.sel.primIndex)}function dH(f4,f6,f5){var f3={canceled:false,from:f6.from,to:f6.to,text:f6.text,origin:f6.origin,cancel:function(){this.canceled=true}};if(f5){f3.update=function(ga,f9,f8,f7){if(ga){this.from=fA(f4,ga)}if(f9){this.to=fA(f4,f9)}if(f8){this.text=f8}if(f7!==undefined){this.origin=f7}}}aB(f4,"beforeChange",f4,f3);if(f4.cm){aB(f4.cm,"beforeChange",f4.cm,f3)}if(f3.canceled){return null}return{from:f3.from,to:f3.to,text:f3.text,origin:f3.origin}}function bb(f6,f7,f5){if(f6.cm){if(!f6.cm.curOp){return cX(f6.cm,bb)(f6,f7,f5)}if(f6.cm.state.suppressEdits){return}}if(e8(f6,"beforeChange")||f6.cm&&e8(f6.cm,"beforeChange")){f7=dH(f6,f7,true);if(!f7){return}}var f4=fY&&!f5&&cE(f6,f7.from,f7.to);if(f4){for(var f3=f4.length-1;f3>=0;--f3){L(f6,{from:f4[f3].from,to:f4[f3].to,text:f3?[""]:f7.text})}}else{L(f6,f7)}}function L(f5,f6){if(f6.text.length==1&&f6.text[0]==""&&cd(f6.from,f6.to)==0){return}var f4=fa(f5,f6);fD(f5,f6,f4,f5.cm?f5.cm.curOp.id:NaN);d4(f5,f6,f4,ea(f5,f6));var f3=[];dX(f5,function(f8,f7){if(!f7&&dc(f3,f8.history)==-1){dv(f8.history,f6);f3.push(f8.history)}d4(f8,f6,null,ea(f8,f6))})}function b6(ge,gc,gg){if(ge.cm&&ge.cm.state.suppressEdits){return}var gb=ge.history,f5,f7=ge.sel;var f3=gc=="undo"?gb.done:gb.undone,gf=gc=="undo"?gb.undone:gb.done;for(var f8=0;f8<f3.length;f8++){f5=f3[f8];if(gg?f5.ranges&&!f5.equals(ge.sel):!f5.ranges){break}}if(f8==f3.length){return}gb.lastOrigin=gb.lastSelOrigin=null;for(;;){f5=f3.pop();if(f5.ranges){cK(f5,gf);if(gg&&!f5.equals(ge.sel)){bS(ge,f5,{clearRedo:false});return}f7=f5}else{break}}var ga=[];cK(f7,gf);gf.push({changes:ga,generation:gb.generation});gb.generation=f5.generation||++gb.maxGeneration;var f6=e8(ge,"beforeChange")||ge.cm&&e8(ge.cm,"beforeChange");for(var f8=f5.changes.length-1;f8>=0;--f8){var gd=f5.changes[f8];gd.origin=gc;if(f6&&!dH(ge,gd,false)){f3.length=0;return}ga.push(dl(ge,gd));var f4=f8?fa(ge,gd):fy(f3);d4(ge,gd,f4,dZ(ge,gd));if(!f8&&ge.cm){ge.cm.scrollIntoView({from:gd.from,to:cS(gd)})}var f9=[];dX(ge,function(gi,gh){if(!gh&&dc(f9,gi.history)==-1){dv(gi.history,gd);f9.push(gi.history)}d4(gi,gd,null,dZ(gi,gd))})}}function fd(f4,f6){if(f6==0){return}f4.first+=f6;f4.sel=new fO(bQ(f4.sel.ranges,function(f7){return new dO(X(f7.anchor.line+f6,f7.anchor.ch),X(f7.head.line+f6,f7.head.ch))}),f4.sel.primIndex);if(f4.cm){ag(f4.cm,f4.first,f4.first-f6,f6);for(var f5=f4.cm.display,f3=f5.viewFrom;f3<f5.viewTo;f3++){S(f4.cm,f3,"gutter")}}}function d4(f7,f8,f6,f4){if(f7.cm&&!f7.cm.curOp){return cX(f7.cm,d4)(f7,f8,f6,f4)}if(f8.to.line<f7.first){fd(f7,f8.text.length-1-(f8.to.line-f8.from.line));return}if(f8.from.line>f7.lastLine()){return}if(f8.from.line<f7.first){var f3=f8.text.length-1-(f7.first-f8.from.line);fd(f7,f3);f8={from:X(f7.first,0),to:X(f8.to.line+f3,f8.to.ch),text:[fy(f8.text)],origin:f8.origin}}var f5=f7.lastLine();if(f8.to.line>f5){f8={from:f8.from,to:X(f5,e5(f7,f5).text.length),text:[f8.text[0]],origin:f8.origin}}f8.removed=fP(f7,f8.from,f8.to);if(!f6){f6=fa(f7,f8)}if(f7.cm){aG(f7.cm,f8,f4)}else{fp(f7,f8,f4)}ef(f7,f6,Z)}function aG(ge,ga,f8){var gd=ge.doc,f9=ge.display,gb=ga.from,gc=ga.to;var f3=false,f7=gb.line;if(!ge.options.lineWrapping){f7=bL(z(e5(gd,gb.line)));gd.iter(f7,gc.line+1,function(gg){if(gg==f9.maxLine){f3=true;return true}})}if(gd.sel.contains(ga.from,ga.to)>-1){W(ge)}fp(gd,ga,f8,a9(ge));if(!ge.options.lineWrapping){gd.iter(f7,gb.line+ga.text.length,function(gh){var gg=ec(gh);if(gg>f9.maxLineLength){f9.maxLine=gh;f9.maxLineLength=gg;f9.maxLineChanged=true;f3=false}});if(f3){ge.curOp.updateMaxLine=true}}gd.frontier=Math.min(gd.frontier,gb.line);d5(ge,400);var gf=ga.text.length-(gc.line-gb.line)-1;if(gb.line==gc.line&&ga.text.length==1&&!dI(ge.doc,ga)){S(ge,gb.line,"text")}else{ag(ge,gb.line,gc.line+1,gf)}var f5=e8(ge,"changes"),f6=e8(ge,"change");if(f6||f5){var f4={from:gb,to:gc,text:ga.text,removed:ga.removed,origin:ga.origin};if(f6){ad(ge,"change",ge,f4)}if(f5){(ge.curOp.changeObjs||(ge.curOp.changeObjs=[])).push(f4)}}ge.display.selForContextMenu=null}function aW(f6,f5,f8,f7,f3){if(!f7){f7=f8}if(cd(f7,f8)<0){var f4=f7;f7=f8;f8=f4}if(typeof f5=="string"){f5=aV(f5)}bb(f6,{from:f8,to:f7,text:f5,origin:f3})}function dW(f4,f7){if(aN(f4,"scrollCursorIntoView")){return}var f8=f4.display,f5=f8.sizer.getBoundingClientRect(),f3=null;if(f7.top+f5.top<0){f3=true}else{if(f7.bottom+f5.top>(window.innerHeight||document.documentElement.clientHeight)){f3=false}}if(f3!=null&&!fl){var f6=fN("div","\u200b",null,"position: absolute; top: "+(f7.top-f8.viewOffset-eY(f4.display))+"px; height: "+(f7.bottom-f7.top+bg)+"px; left: "+f7.left+"px; width: 2px;");f4.display.lineSpace.appendChild(f6);f6.scrollIntoView(f3);f4.display.lineSpace.removeChild(f6)}}function F(gd,gb,f7,f6){if(f6==null){f6=0}for(var f8=0;f8<5;f8++){var f9=false,gc=dK(gd,gb);var f3=!f7||f7==gb?gc:dK(gd,f7);var f5=I(gd,Math.min(gc.left,f3.left),Math.min(gc.top,f3.top)-f6,Math.max(gc.left,f3.left),Math.max(gc.bottom,f3.bottom)+f6);var ga=gd.doc.scrollTop,f4=gd.doc.scrollLeft;if(f5.scrollTop!=null){O(gd,f5.scrollTop);if(Math.abs(gd.doc.scrollTop-ga)>1){f9=true}}if(f5.scrollLeft!=null){bC(gd,f5.scrollLeft);if(Math.abs(gd.doc.scrollLeft-f4)>1){f9=true}}if(!f9){return gc}}}function G(f3,f5,f7,f4,f6){var f8=I(f3,f5,f7,f4,f6);if(f8.scrollTop!=null){O(f3,f8.scrollTop)}if(f8.scrollLeft!=null){bC(f3,f8.scrollLeft)}}function I(gf,f6,ge,f4,gd){var gb=gf.display,f9=aS(gf.display);if(ge<0){ge=0}var f7=gf.curOp&&gf.curOp.scrollTop!=null?gf.curOp.scrollTop:gb.scroller.scrollTop;var gh=gb.scroller.clientHeight-bg,gj={};if(gd-ge>gh){gd=ge+gh}var f5=gf.doc.height+bG(gb);var f3=ge<f9,ga=gd>f5-f9;if(ge<f7){gj.scrollTop=f3?0:ge}else{if(gd>f7+gh){var gc=Math.min(ge,(ga?f5:gd)-gh);if(gc!=f7){gj.scrollTop=gc}}}var gi=gf.curOp&&gf.curOp.scrollLeft!=null?gf.curOp.scrollLeft:gb.scroller.scrollLeft;var gg=gb.scroller.clientWidth-bg-gb.gutters.offsetWidth;var f8=f4-f6>gg;if(f8){f4=f6+gg}if(f6<10){gj.scrollLeft=0}else{if(f6<gi){gj.scrollLeft=Math.max(0,f6-(f8?0:10))}else{if(f4>gg+gi-3){gj.scrollLeft=f4+(f8?0:10)-gg}}}return gj}function cI(f3,f5,f4){if(f5!=null||f4!=null){ft(f3)}if(f5!=null){f3.curOp.scrollLeft=(f3.curOp.scrollLeft==null?f3.doc.scrollLeft:f3.curOp.scrollLeft)+f5}if(f4!=null){f3.curOp.scrollTop=(f3.curOp.scrollTop==null?f3.doc.scrollTop:f3.curOp.scrollTop)+f4}}function fx(f3){ft(f3);var f4=f3.getCursor(),f6=f4,f5=f4;if(!f3.options.lineWrapping){f6=f4.ch?X(f4.line,f4.ch-1):f4;f5=X(f4.line,f4.ch+1)}f3.curOp.scrollToPos={from:f6,to:f5,margin:f3.options.cursorScrollMargin,isCursor:true}}function ft(f3){var f5=f3.curOp.scrollToPos;if(f5){f3.curOp.scrollToPos=null;var f7=dy(f3,f5.from),f6=dy(f3,f5.to);var f4=I(f3,Math.min(f7.left,f6.left),Math.min(f7.top,f6.top)-f5.margin,Math.max(f7.right,f6.right),Math.max(f7.bottom,f6.bottom)+f5.margin);f3.scrollTo(f4.scrollLeft,f4.scrollTop)}}function ac(gg,f6,gf,f5){var ge=gg.doc,f4;if(gf==null){gf="add"}if(gf=="smart"){if(!ge.mode.indent){gf="prev"}else{f4=ds(gg,f6)}}var ga=gg.options.tabSize;var gh=e5(ge,f6),f9=bR(gh.text,null,ga);if(gh.stateAfter){gh.stateAfter=null}var f3=gh.text.match(/^\s*/)[0],gc;if(!f5&&!/\S/.test(gh.text)){gc=0;gf="not"}else{if(gf=="smart"){gc=ge.mode.indent(f4,gh.text.slice(f3.length),gh.text);if(gc==b8||gc>150){if(!f5){return}gf="prev"}}}if(gf=="prev"){if(f6>ge.first){gc=bR(e5(ge,f6-1).text,null,ga)}else{gc=0}}else{if(gf=="add"){gc=f9+gg.options.indentUnit}else{if(gf=="subtract"){gc=f9-gg.options.indentUnit}else{if(typeof gf=="number"){gc=f9+gf}}}}gc=Math.max(0,gc);var gd="",gb=0;if(gg.options.indentWithTabs){for(var f7=Math.floor(gc/ga);f7;--f7){gb+=ga;gd+="\t"}}if(gb<gc){gd+=co(gc-gb)}if(gd!=f3){aW(ge,gd,X(f6,0),X(f6,f3.length),"+input")}else{for(var f7=0;f7<ge.sel.ranges.length;f7++){var f8=ge.sel.ranges[f7];if(f8.head.line==f6&&f8.head.ch<f3.length){var gb=X(f6,f3.length);e(ge,f7,new dO(gb,gb));break}}}gh.stateAfter=null}function ep(f6,f5,f3,f8){var f7=f5,f4=f5;if(typeof f5=="number"){f4=e5(f6,c0(f6,f5))}else{f7=bL(f5)}if(f7==null){return null}if(f8(f4,f7)&&f6.cm){S(f6.cm,f7,f3)}return f4}function eO(f3,f9){var f4=f3.doc.sel.ranges,f7=[];for(var f6=0;f6<f4.length;f6++){var f5=f9(f4[f6]);while(f7.length&&cd(f5.from,fy(f7).to)<=0){var f8=f7.pop();if(cd(f8.from,f5.from)<0){f5.from=f8.from;break}}f7.push(f5)}cJ(f3,function(){for(var ga=f7.length-1;ga>=0;ga--){aW(f3.doc,"",f7[ga].from,f7[ga].to,"+delete")}fx(f3)})}function bu(gl,f7,gf,ge,f9){var gc=f7.line,gd=f7.ch,gk=gf;var f4=e5(gl,gc);var gi=true;function gj(){var gm=gc+gf;if(gm<gl.first||gm>=gl.first+gl.size){return(gi=false)}gc=gm;return f4=e5(gl,gm)}function gh(gn){var gm=(f9?v:ah)(f4,gd,gf,true);if(gm==null){if(!gn&&gj()){if(f9){gd=(gf<0?cP:cC)(f4)}else{gd=gf<0?f4.text.length:0}}else{return(gi=false)}}else{gd=gm}return true}if(ge=="char"){gh()}else{if(ge=="column"){gh(true)}else{if(ge=="word"||ge=="group"){var gg=null,ga=ge=="group";var f3=gl.cm&&gl.cm.getHelper(f7,"wordChars");for(var f8=true;;f8=false){if(gf<0&&!gh(!f8)){break}var f5=f4.text.charAt(gd)||"\n";var f6=cy(f5,f3)?"w":ga&&f5=="\n"?"n":!ga||/\s/.test(f5)?null:"p";if(ga&&!f8&&!f6){f6="s"}if(gg&&gg!=f6){if(gf<0){gf=1;gh()}break}if(f6){gg=f6}if(gf>0&&!gh(!f8)){break}}}}}var gb=bT(gl,X(gc,gd),gk,true);if(!gi){gb.hitSide=true}return gb}function bo(gb,f6,f3,ga){var f9=gb.doc,f8=f6.left,f7;if(ga=="page"){var f5=Math.min(gb.display.wrapper.clientHeight,window.innerHeight||document.documentElement.clientHeight);f7=f6.top+f3*(f5-(f3<0?1.5:0.5)*aS(gb.display))}else{if(ga=="line"){f7=f3>0?f6.bottom+3:f6.top-3}}for(;;){var f4=fF(gb,f8,f7);if(!f4.outside){break}if(f3<0?f7<=0:f7>=f9.height){f4.hitSide=true;break}f7+=f3*5}return f4}J.prototype={constructor:J,focus:function(){window.focus();eq(this);C(this)},setOption:function(f5,f6){var f4=this.options,f3=f4[f5];if(f4[f5]==f6&&f5!="mode"){return}f4[f5]=f6;if(ba.hasOwnProperty(f5)){cX(this,ba[f5])(this,f6,f3)}},getOption:function(f3){return this.options[f3]},getDoc:function(){return this.doc},addKeyMap:function(f4,f3){this.state.keyMaps[f3?"push":"unshift"](fL(f4))},removeKeyMap:function(f4){var f5=this.state.keyMaps;for(var f3=0;f3<f5.length;++f3){if(f5[f3]==f4||f5[f3].name==f4){f5.splice(f3,1);return true}}},addOverlay:c3(function(f3,f4){var f5=f3.token?f3:J.getMode(this.options,f3);if(f5.startState){throw new Error("Overlays may not be stateful.")}this.state.overlays.push({mode:f5,modeSpec:f3,opaque:f4&&f4.opaque});this.state.modeGen++;ag(this)}),removeOverlay:c3(function(f3){var f5=this.state.overlays;for(var f4=0;f4<f5.length;++f4){var f6=f5[f4].modeSpec;if(f6==f3||typeof f3=="string"&&f6.name==f3){f5.splice(f4,1);this.state.modeGen++;ag(this);return}}}),indentLine:c3(function(f5,f3,f4){if(typeof f3!="string"&&typeof f3!="number"){if(f3==null){f3=this.options.smartIndent?"smart":"prev"}else{f3=f3?"add":"subtract"}}if(b7(this.doc,f5)){ac(this,f5,f3,f4)}}),indentSelection:c3(function(gc){var f3=this.doc.sel.ranges,f6=-1;for(var f8=0;f8<f3.length;f8++){var f9=f3[f8];if(!f9.empty()){var ga=f9.from(),gb=f9.to();var f4=Math.max(f6,ga.line);f6=Math.min(this.lastLine(),gb.line-(gb.ch?0:1))+1;for(var f7=f4;f7<f6;++f7){ac(this,f7,gc)}var f5=this.doc.sel.ranges;if(ga.ch==0&&f3.length==f5.length&&f5[f8].from().ch>0){e(this.doc,f8,new dO(ga,f5[f8].to()),Z)}}else{if(f9.head.line>f6){ac(this,f9.head.line,gc,true);f6=f9.head.line;if(f8==this.doc.sel.primIndex){fx(this)}}}}}),getTokenAt:function(f4,f3){return cp(this,f4,f3)},getLineTokens:function(f4,f3){return cp(this,X(f4),f3,true)},getTokenTypeAt:function(ga){ga=fA(this.doc,ga);var f6=c1(this,e5(this.doc,ga.line));var f8=0,f9=(f6.length-1)/2,f5=ga.ch;var f4;if(f5==0){f4=f6[2]}else{for(;;){var f3=(f8+f9)>>1;if((f3?f6[f3*2-1]:0)>=f5){f9=f3}else{if(f6[f3*2+1]<f5){f8=f3+1}else{f4=f6[f3*2+2];break}}}}var f7=f4?f4.indexOf("cm-overlay "):-1;return f7<0?f4:f7==0?null:f4.slice(0,f7-1)},getModeAt:function(f4){var f3=this.doc.mode;if(!f3.innerMode){return f3}return J.innerMode(f3,this.getTokenAt(f4).state).mode},getHelper:function(f4,f3){return this.getHelpers(f4,f3)[0]},getHelpers:function(ga,f5){var f6=[];if(!fe.hasOwnProperty(f5)){return fe}var f3=fe[f5],f9=this.getModeAt(ga);if(typeof f9[f5]=="string"){if(f3[f9[f5]]){f6.push(f3[f9[f5]])}}else{if(f9[f5]){for(var f4=0;f4<f9[f5].length;f4++){var f8=f3[f9[f5][f4]];if(f8){f6.push(f8)}}}else{if(f9.helperType&&f3[f9.helperType]){f6.push(f3[f9.helperType])}else{if(f3[f9.name]){f6.push(f3[f9.name])}}}}for(var f4=0;f4<f3._global.length;f4++){var f7=f3._global[f4];if(f7.pred(f9,this)&&dc(f6,f7.val)==-1){f6.push(f7.val)}}return f6},getStateAfter:function(f4,f3){var f5=this.doc;f4=c0(f5,f4==null?f5.first+f5.size-1:f4);return ds(this,f4+1,f3)},cursorCoords:function(f6,f4){var f5,f3=this.doc.sel.primary();if(f6==null){f5=f3.head}else{if(typeof f6=="object"){f5=fA(this.doc,f6)}else{f5=f6?f3.from():f3.to()}}return dK(this,f5,f4||"page")},charCoords:function(f4,f3){return cG(this,fA(this.doc,f4),f3||"page")},coordsChar:function(f3,f4){f3=f0(this,f3,f4||"page");return fF(this,f3.left,f3.top)},lineAtHeight:function(f3,f4){f3=f0(this,{top:f3,left:0},f4||"page").top;return bE(this.doc,f3+this.display.viewOffset)},heightAtLine:function(f4,f7){var f3=false,f6=this.doc.first+this.doc.size-1;if(f4<this.doc.first){f4=this.doc.first}else{if(f4>f6){f4=f6;f3=true}}var f5=e5(this.doc,f4);return eH(this,f5,{top:0,left:0},f7||"page").top+(f3?this.doc.height-bK(f5):0)},defaultTextHeight:function(){return aS(this.display)},defaultCharWidth:function(){return du(this.display)},setGutterMarker:c3(function(f3,f4,f5){return ep(this.doc,f3,"gutter",function(f6){var f7=f6.gutterMarkers||(f6.gutterMarkers={});f7[f4]=f5;if(!f5&&eL(f7)){f6.gutterMarkers=null}return true})}),clearGutter:c3(function(f5){var f3=this,f6=f3.doc,f4=f6.first;f6.iter(function(f7){if(f7.gutterMarkers&&f7.gutterMarkers[f5]){f7.gutterMarkers[f5]=null;S(f3,f4,"gutter");if(eL(f7.gutterMarkers)){f7.gutterMarkers=null}}++f4})}),addLineWidget:c3(function(f5,f4,f3){return bF(this,f5,f4,f3)}),removeLineWidget:function(f3){f3.clear()},lineInfo:function(f3){if(typeof f3=="number"){if(!b7(this.doc,f3)){return null}var f4=f3;f3=e5(this.doc,f3);if(!f3){return null}}else{var f4=bL(f3);if(f4==null){return null}}return{line:f4,handle:f3,text:f3.text,gutterMarkers:f3.gutterMarkers,textClass:f3.textClass,bgClass:f3.bgClass,wrapClass:f3.wrapClass,widgets:f3.widgets}},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(f8,f5,ga,f6,gc){var f7=this.display;f8=dK(this,fA(this.doc,f8));var f9=f8.bottom,f4=f8.left;f5.style.position="absolute";f7.sizer.appendChild(f5);if(f6=="over"){f9=f8.top}else{if(f6=="above"||f6=="near"){var f3=Math.max(f7.wrapper.clientHeight,this.doc.height),gb=Math.max(f7.sizer.clientWidth,f7.lineSpace.clientWidth);if((f6=="above"||f8.bottom+f5.offsetHeight>f3)&&f8.top>f5.offsetHeight){f9=f8.top-f5.offsetHeight}else{if(f8.bottom+f5.offsetHeight<=f3){f9=f8.bottom}}if(f4+f5.offsetWidth>gb){f4=gb-f5.offsetWidth}}}f5.style.top=f9+"px";f5.style.left=f5.style.right="";if(gc=="right"){f4=f7.sizer.clientWidth-f5.offsetWidth;f5.style.right="0px"}else{if(gc=="left"){f4=0}else{if(gc=="middle"){f4=(f7.sizer.clientWidth-f5.offsetWidth)/2}}f5.style.left=f4+"px"}if(ga){G(this,f4,f9,f4+f5.offsetWidth,f9+f5.offsetHeight)}},triggerOnKeyDown:c3(q),triggerOnKeyPress:c3(cw),triggerOnKeyUp:bd,execCommand:function(f3){if(eu.hasOwnProperty(f3)){return eu[f3](this)}},findPosH:function(f9,f6,f7,f4){var f3=1;if(f6<0){f3=-1;f6=-f6}for(var f5=0,f8=fA(this.doc,f9);f5<f6;++f5){f8=bu(this.doc,f8,f3,f7,f4);if(f8.hitSide){break}}return f8},moveH:c3(function(f4,f5){var f3=this;f3.extendSelectionsBy(function(f6){if(f3.display.shift||f3.doc.extend||f6.empty()){return bu(f3.doc,f6.head,f4,f5,f3.options.rtlMoveVisually)}else{return f4<0?f6.from():f6.to()}},cR)}),deleteH:c3(function(f3,f4){var f5=this.doc.sel,f6=this.doc;if(f5.somethingSelected()){f6.replaceSelection("",null,"+delete")}else{eO(this,function(f8){var f7=bu(f6,f8.head,f3,f4,false);return f3<0?{from:f7,to:f8.head}:{from:f8.head,to:f7}})}}),findPosV:function(f8,f5,f9,gb){var f3=1,f7=gb;if(f5<0){f3=-1;f5=-f5}for(var f4=0,ga=fA(this.doc,f8);f4<f5;++f4){var f6=dK(this,ga,"div");if(f7==null){f7=f6.left}else{f6.left=f7}ga=bo(this,f6,f3,f9);if(ga.hitSide){break}}return ga},moveV:c3(function(f4,f6){var f3=this,f8=this.doc,f7=[];var f9=!f3.display.shift&&!f8.extend&&f8.sel.somethingSelected();f8.extendSelectionsBy(function(ga){if(f9){return f4<0?ga.from():ga.to()}var gc=dK(f3,ga.head,"div");if(ga.goalColumn!=null){gc.left=ga.goalColumn}f7.push(gc.left);var gb=bo(f3,gc,f4,f6);if(f6=="page"&&ga==f8.sel.primary()){cI(f3,null,cG(f3,gb,"div").top-gc.top)}return gb},cR);if(f7.length){for(var f5=0;f5<f8.sel.ranges.length;f5++){f8.sel.ranges[f5].goalColumn=f7[f5]}}}),findWordAt:function(ga){var f8=this.doc,f6=e5(f8,ga.line).text;var f9=ga.ch,f5=ga.ch;if(f6){var f7=this.getHelper(ga,"wordChars");if((ga.xRel<0||f5==f6.length)&&f9){--f9}else{++f5}var f4=f6.charAt(f9);var f3=cy(f4,f7)?function(gb){return cy(gb,f7)}:/\s/.test(f4)?function(gb){return/\s/.test(gb)}:function(gb){return !/\s/.test(gb)&&!cy(gb)};while(f9>0&&f3(f6.charAt(f9-1))){--f9}while(f5<f6.length&&f3(f6.charAt(f5))){++f5}}return new dO(X(ga.line,f9),X(ga.line,f5))},toggleOverwrite:function(f3){if(f3!=null&&f3==this.state.overwrite){return}if(this.state.overwrite=!this.state.overwrite){fr(this.display.cursorDiv,"CodeMirror-overwrite")}else{f(this.display.cursorDiv,"CodeMirror-overwrite")}aB(this,"overwriteToggle",this,this.state.overwrite)},hasFocus:function(){return dE()==this.display.input},scrollTo:c3(function(f3,f4){if(f3!=null||f4!=null){ft(this)}if(f3!=null){this.curOp.scrollLeft=f3}if(f4!=null){this.curOp.scrollTop=f4}}),getScrollInfo:function(){var f3=this.display.scroller,f4=bg;return{left:f3.scrollLeft,top:f3.scrollTop,height:f3.scrollHeight-f4,width:f3.scrollWidth-f4,clientHeight:f3.clientHeight-f4,clientWidth:f3.clientWidth-f4}},scrollIntoView:c3(function(f4,f5){if(f4==null){f4={from:this.doc.sel.primary().head,to:null};if(f5==null){f5=this.options.cursorScrollMargin}}else{if(typeof f4=="number"){f4={from:X(f4,0),to:null}}else{if(f4.from==null){f4={from:f4,to:null}}}}if(!f4.to){f4.to=f4.from}f4.margin=f5||0;if(f4.from.line!=null){ft(this);this.curOp.scrollToPos=f4}else{var f3=I(this,Math.min(f4.from.left,f4.to.left),Math.min(f4.from.top,f4.to.top)-f4.margin,Math.max(f4.from.right,f4.to.right),Math.max(f4.from.bottom,f4.to.bottom)+f4.margin);this.scrollTo(f3.scrollLeft,f3.scrollTop)}}),setSize:c3(function(f6,f4){var f3=this;function f5(f8){return typeof f8=="number"||/^\d+$/.test(String(f8))?f8+"px":f8}if(f6!=null){f3.display.wrapper.style.width=f5(f6)}if(f4!=null){f3.display.wrapper.style.height=f5(f4)}if(f3.options.lineWrapping){aK(this)}var f7=f3.display.viewFrom;f3.doc.iter(f7,f3.display.viewTo,function(f8){if(f8.widgets){for(var f9=0;f9<f8.widgets.length;f9++){if(f8.widgets[f9].noHScroll){S(f3,f7,"widget");break}}}++f7});f3.curOp.forceUpdate=true;aB(f3,"refresh",this)}),operation:function(f3){return cJ(this,f3)},refresh:c3(function(){var f3=this.display.cachedTextHeight;ag(this);this.curOp.forceUpdate=true;aj(this);this.scrollTo(this.doc.scrollLeft,this.doc.scrollTop);cZ(this);if(f3==null||Math.abs(f3-aS(this.display))>0.5){Y(this)}aB(this,"refresh",this)}),swapDoc:c3(function(f4){var f3=this.doc;f3.cm=null;d1(this,f4);aj(this);ff(this);this.scrollTo(f4.scrollLeft,f4.scrollTop);this.curOp.forceScroll=true;ad(this,"swapDoc",this,f3);return f3}),getInputField:function(){return this.display.input},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}};bw(J);var eU=J.defaults={};var ba=J.optionHandlers={};function t(f3,f6,f5,f4){J.defaults[f3]=f6;if(f5){ba[f3]=f4?function(f7,f9,f8){if(f8!=ca){f5(f7,f9,f8)}}:f5}}var ca=J.Init={toString:function(){return"CodeMirror.Init"}};t("value","",function(f3,f4){f3.setValue(f4)},true);t("mode",null,function(f3,f4){f3.doc.modeOption=f4;bp(f3)},true);t("indentUnit",2,bp,true);t("indentWithTabs",false);t("smartIndent",true);t("tabSize",4,function(f3){eb(f3);aj(f3);ag(f3)},true);t("specialChars",/[\t\u0000-\u0019\u00ad\u200b-\u200f\u2028\u2029\ufeff]/g,function(f3,f4){f3.options.specialChars=new RegExp(f4.source+(f4.test("\t")?"":"|\t"),"g");f3.refresh()},true);t("specialCharPlaceholder",e2,function(f3){f3.refresh()},true);t("electricChars",true);t("rtlMoveVisually",!aL);t("wholeLineUpdateBefore",true);t("theme","default",function(f3){cL(f3);dm(f3)},true);t("keyMap","default",function(f3,f7,f4){var f5=fL(f7);var f6=f4!=J.Init&&fL(f4);if(f6&&f6.detach){f6.detach(f3,f5)}if(f5.attach){f5.attach(f3,f6||null)}});t("extraKeys",null);t("lineWrapping",false,ex,true);t("gutters",[],function(f3){cc(f3.options);dm(f3)},true);t("fixedGutter",true,function(f3,f4){f3.display.gutters.style.left=f4?dN(f3.display)+"px":"0";f3.refresh()},true);t("coverGutterNextToScrollbar",false,eP,true);t("lineNumbers",false,function(f3){cc(f3.options);dm(f3)},true);t("firstLineNumber",1,dm,true);t("lineNumberFormatter",function(f3){return f3},dm,true);t("showCursorWhenSelecting",false,bA,true);t("resetSelectionOnContextMenu",true);t("readOnly",false,function(f3,f4){if(f4=="nocursor"){aQ(f3);f3.display.input.blur();f3.display.disabled=true}else{f3.display.disabled=false;if(!f4){ff(f3)}}});t("disableInput",false,function(f3,f4){if(!f4){ff(f3)}},true);t("dragDrop",true);t("cursorBlinkRate",530);t("cursorScrollMargin",0);t("cursorHeight",1,bA,true);t("singleCursorHeightPerLine",true,bA,true);t("workTime",100);t("workDelay",100);t("flattenSpans",true,eb,true);t("addModeClass",false,eb,true);t("pollInterval",100);t("undoDepth",200,function(f3,f4){f3.doc.history.undoDepth=f4});t("historyEventDelay",1250);t("viewportMargin",10,function(f3){f3.refresh()},true);t("maxHighlightLength",10000,eb,true);t("moveInputWithCursor",true,function(f3,f4){if(!f4){f3.display.inputDiv.style.top=f3.display.inputDiv.style.left=0}});t("tabindex",null,function(f3,f4){f3.display.input.tabIndex=f4||""});t("autofocus",null);var dj=J.modes={},aO=J.mimeModes={};J.defineMode=function(f3,f4){if(!J.defaults.mode&&f3!="null"){J.defaults.mode=f3}if(arguments.length>2){f4.dependencies=Array.prototype.slice.call(arguments,2)}dj[f3]=f4};J.defineMIME=function(f4,f3){aO[f4]=f3};J.resolveMode=function(f3){if(typeof f3=="string"&&aO.hasOwnProperty(f3)){f3=aO[f3]}else{if(f3&&typeof f3.name=="string"&&aO.hasOwnProperty(f3.name)){var f4=aO[f3.name];if(typeof f4=="string"){f4={name:f4}}f3=cj(f4,f3);f3.name=f4.name}else{if(typeof f3=="string"&&/^[\w\-]+\/[\w\-]+\+xml$/.test(f3)){return J.resolveMode("application/xml")}}}if(typeof f3=="string"){return{name:f3}}else{return f3||{name:"null"}}};J.getMode=function(f4,f3){var f3=J.resolveMode(f3);var f6=dj[f3.name];if(!f6){return J.getMode(f4,"text/plain")}var f7=f6(f4,f3);if(dg.hasOwnProperty(f3.name)){var f5=dg[f3.name];for(var f8 in f5){if(!f5.hasOwnProperty(f8)){continue}if(f7.hasOwnProperty(f8)){f7["_"+f8]=f7[f8]}f7[f8]=f5[f8]}}f7.name=f3.name;if(f3.helperType){f7.helperType=f3.helperType}if(f3.modeProps){for(var f8 in f3.modeProps){f7[f8]=f3.modeProps[f8]}}return f7};J.defineMode("null",function(){return{token:function(f3){f3.skipToEnd()}}});J.defineMIME("text/plain","null");var dg=J.modeExtensions={};J.extendMode=function(f5,f4){var f3=dg.hasOwnProperty(f5)?dg[f5]:(dg[f5]={});aJ(f4,f3)};J.defineExtension=function(f3,f4){J.prototype[f3]=f4};J.defineDocExtension=function(f3,f4){ar.prototype[f3]=f4};J.defineOption=t;var a3=[];J.defineInitHook=function(f3){a3.push(f3)};var fe=J.helpers={};J.registerHelper=function(f4,f3,f5){if(!fe.hasOwnProperty(f4)){fe[f4]=J[f4]={_global:[]}}fe[f4][f3]=f5};J.registerGlobalHelper=function(f5,f4,f3,f6){J.registerHelper(f5,f4,f6);fe[f5]._global.push({pred:f3,val:f6})};var b1=J.copyState=function(f6,f3){if(f3===true){return f3}if(f6.copyState){return f6.copyState(f3)}var f5={};for(var f7 in f3){var f4=f3[f7];if(f4 instanceof Array){f4=f4.concat([])}f5[f7]=f4}return f5};var bY=J.startState=function(f5,f4,f3){return f5.startState?f5.startState(f4,f3):true};J.innerMode=function(f5,f3){while(f5.innerMode){var f4=f5.innerMode(f3);if(!f4||f4.mode==f5){break}f3=f4.state;f5=f4.mode}return f4||{mode:f5,state:f3}};var eu=J.commands={selectAll:function(f3){f3.setSelection(X(f3.firstLine(),0),X(f3.lastLine()),Z)},singleSelection:function(f3){f3.setSelection(f3.getCursor("anchor"),f3.getCursor("head"),Z)},killLine:function(f3){eO(f3,function(f5){if(f5.empty()){var f4=e5(f3.doc,f5.head.line).text.length;if(f5.head.ch==f4&&f5.head.line<f3.lastLine()){return{from:f5.head,to:X(f5.head.line+1,0)}}else{return{from:f5.head,to:X(f5.head.line,f4)}}}else{return{from:f5.from(),to:f5.to()}}})},deleteLine:function(f3){eO(f3,function(f4){return{from:X(f4.from().line,0),to:fA(f3.doc,X(f4.to().line+1,0))}})},delLineLeft:function(f3){eO(f3,function(f4){return{from:X(f4.from().line,0),to:f4.from()}})},delWrappedLineLeft:function(f3){eO(f3,function(f4){var f6=f3.charCoords(f4.head,"div").top+5;var f5=f3.coordsChar({left:0,top:f6},"div");return{from:f5,to:f4.from()}})},delWrappedLineRight:function(f3){eO(f3,function(f4){var f6=f3.charCoords(f4.head,"div").top+5;var f5=f3.coordsChar({left:f3.display.lineDiv.offsetWidth+100,top:f6},"div");return{from:f4.from(),to:f5}})},undo:function(f3){f3.undo()},redo:function(f3){f3.redo()},undoSelection:function(f3){f3.undoSelection()},redoSelection:function(f3){f3.redoSelection()},goDocStart:function(f3){f3.extendSelection(X(f3.firstLine(),0))},goDocEnd:function(f3){f3.extendSelection(X(f3.lastLine()))},goLineStart:function(f3){f3.extendSelectionsBy(function(f4){return br(f3,f4.head.line)},{origin:"+move",bias:1})},goLineStartSmart:function(f3){f3.extendSelectionsBy(function(f4){return dz(f3,f4.head)},{origin:"+move",bias:1})},goLineEnd:function(f3){f3.extendSelectionsBy(function(f4){return dF(f3,f4.head.line)},{origin:"+move",bias:-1})},goLineRight:function(f3){f3.extendSelectionsBy(function(f4){var f5=f3.charCoords(f4.head,"div").top+5;return f3.coordsChar({left:f3.display.lineDiv.offsetWidth+100,top:f5},"div")},cR)},goLineLeft:function(f3){f3.extendSelectionsBy(function(f4){var f5=f3.charCoords(f4.head,"div").top+5;return f3.coordsChar({left:0,top:f5},"div")},cR)},goLineLeftSmart:function(f3){f3.extendSelectionsBy(function(f4){var f5=f3.charCoords(f4.head,"div").top+5;var f6=f3.coordsChar({left:0,top:f5},"div");if(f6.ch<f3.getLine(f6.line).search(/\S/)){return dz(f3,f4.head)}return f6},cR)},goLineUp:function(f3){f3.moveV(-1,"line")},goLineDown:function(f3){f3.moveV(1,"line")},goPageUp:function(f3){f3.moveV(-1,"page")},goPageDown:function(f3){f3.moveV(1,"page")},goCharLeft:function(f3){f3.moveH(-1,"char")},goCharRight:function(f3){f3.moveH(1,"char")},goColumnLeft:function(f3){f3.moveH(-1,"column")},goColumnRight:function(f3){f3.moveH(1,"column")},goWordLeft:function(f3){f3.moveH(-1,"word")},goGroupRight:function(f3){f3.moveH(1,"group")},goGroupLeft:function(f3){f3.moveH(-1,"group")},goWordRight:function(f3){f3.moveH(1,"word")},delCharBefore:function(f3){f3.deleteH(-1,"char")},delCharAfter:function(f3){f3.deleteH(1,"char")},delWordBefore:function(f3){f3.deleteH(-1,"word")},delWordAfter:function(f3){f3.deleteH(1,"word")},delGroupBefore:function(f3){f3.deleteH(-1,"group")},delGroupAfter:function(f3){f3.deleteH(1,"group")},indentAuto:function(f3){f3.indentSelection("smart")},indentMore:function(f3){f3.indentSelection("add")},indentLess:function(f3){f3.indentSelection("subtract")},insertTab:function(f3){f3.replaceSelection("\t")},insertSoftTab:function(f3){var f5=[],f4=f3.listSelections(),f8=f3.options.tabSize;for(var f7=0;f7<f4.length;f7++){var f9=f4[f7].from();var f6=bR(f3.getLine(f9.line),f9.ch,f8);f5.push(new Array(f8-f6%f8+1).join(" "))}f3.replaceSelections(f5)},defaultTab:function(f3){if(f3.somethingSelected()){f3.indentSelection("add")}else{f3.execCommand("insertTab")}},transposeChars:function(f3){cJ(f3,function(){var f6=f3.listSelections(),f5=[];for(var f7=0;f7<f6.length;f7++){var f9=f6[f7].head,f4=e5(f3.doc,f9.line).text;if(f4){if(f9.ch==f4.length){f9=new X(f9.line,f9.ch-1)}if(f9.ch>0){f9=new X(f9.line,f9.ch+1);f3.replaceRange(f4.charAt(f9.ch-1)+f4.charAt(f9.ch-2),X(f9.line,f9.ch-2),f9,"+transpose")}else{if(f9.line>f3.doc.first){var f8=e5(f3.doc,f9.line-1).text;if(f8){f3.replaceRange(f4.charAt(0)+"\n"+f8.charAt(f8.length-1),X(f9.line-1,f8.length-1),X(f9.line,1),"+transpose")}}}}f5.push(new dO(f9,f9))}f3.setSelections(f5)})},newlineAndIndent:function(f3){cJ(f3,function(){var f4=f3.listSelections().length;for(var f6=0;f6<f4;f6++){var f5=f3.listSelections()[f6];f3.replaceRange("\n",f5.anchor,f5.head,"+input");f3.indentLine(f5.from().line+1,null,true);fx(f3)}})},toggleOverwrite:function(f3){f3.toggleOverwrite()}};var e0=J.keyMap={};e0.basic={Left:"goCharLeft",Right:"goCharRight",Up:"goLineUp",Down:"goLineDown",End:"goLineEnd",Home:"goLineStartSmart",PageUp:"goPageUp",PageDown:"goPageDown",Delete:"delCharAfter",Backspace:"delCharBefore","Shift-Backspace":"delCharBefore",Tab:"defaultTab","Shift-Tab":"indentAuto",Enter:"newlineAndIndent",Insert:"toggleOverwrite",Esc:"singleSelection"};e0.pcDefault={"Ctrl-A":"selectAll","Ctrl-D":"deleteLine","Ctrl-Z":"undo","Shift-Ctrl-Z":"redo","Ctrl-Y":"redo","Ctrl-Home":"goDocStart","Ctrl-End":"goDocEnd","Ctrl-Up":"goLineUp","Ctrl-Down":"goLineDown","Ctrl-Left":"goGroupLeft","Ctrl-Right":"goGroupRight","Alt-Left":"goLineStart","Alt-Right":"goLineEnd","Ctrl-Backspace":"delGroupBefore","Ctrl-Delete":"delGroupAfter","Ctrl-S":"save","Ctrl-F":"find","Ctrl-G":"findNext","Shift-Ctrl-G":"findPrev","Shift-Ctrl-F":"replace","Shift-Ctrl-R":"replaceAll","Ctrl-[":"indentLess","Ctrl-]":"indentMore","Ctrl-U":"undoSelection","Shift-Ctrl-U":"redoSelection","Alt-U":"redoSelection",fallthrough:"basic"};e0.emacsy={"Ctrl-F":"goCharRight","Ctrl-B":"goCharLeft","Ctrl-P":"goLineUp","Ctrl-N":"goLineDown","Alt-F":"goWordRight","Alt-B":"goWordLeft","Ctrl-A":"goLineStart","Ctrl-E":"goLineEnd","Ctrl-V":"goPageDown","Shift-Ctrl-V":"goPageUp","Ctrl-D":"delCharAfter","Ctrl-H":"delCharBefore","Alt-D":"delWordAfter","Alt-Backspace":"delWordBefore","Ctrl-K":"killLine","Ctrl-T":"transposeChars"};e0.macDefault={"Cmd-A":"selectAll","Cmd-D":"deleteLine","Cmd-Z":"undo","Shift-Cmd-Z":"redo","Cmd-Y":"redo","Cmd-Home":"goDocStart","Cmd-Up":"goDocStart","Cmd-End":"goDocEnd","Cmd-Down":"goDocEnd","Alt-Left":"goGroupLeft","Alt-Right":"goGroupRight","Cmd-Left":"goLineLeft","Cmd-Right":"goLineRight","Alt-Backspace":"delGroupBefore","Ctrl-Alt-Backspace":"delGroupAfter","Alt-Delete":"delGroupAfter","Cmd-S":"save","Cmd-F":"find","Cmd-G":"findNext","Shift-Cmd-G":"findPrev","Cmd-Alt-F":"replace","Shift-Cmd-Alt-F":"replaceAll","Cmd-[":"indentLess","Cmd-]":"indentMore","Cmd-Backspace":"delWrappedLineLeft","Cmd-Delete":"delWrappedLineRight","Cmd-U":"undoSelection","Shift-Cmd-U":"redoSelection","Ctrl-Up":"goDocStart","Ctrl-Down":"goDocEnd",fallthrough:["basic","emacsy"]};e0["default"]=b5?e0.macDefault:e0.pcDefault;function dk(f4){var ga=f4.split(/-(?!$)/),f4=ga[ga.length-1];var f9,f8,f3,f7;for(var f6=0;f6<ga.length-1;f6++){var f5=ga[f6];if(/^(cmd|meta|m)$/i.test(f5)){f7=true}else{if(/^a(lt)?$/i.test(f5)){f9=true}else{if(/^(c|ctrl|control)$/i.test(f5)){f8=true}else{if(/^s(hift)$/i.test(f5)){f3=true}else{throw new Error("Unrecognized modifier name: "+f5)}}}}}if(f9){f4="Alt-"+f4}if(f8){f4="Ctrl-"+f4}if(f7){f4="Cmd-"+f4}if(f3){f4="Shift-"+f4}return f4}J.normalizeKeyMap=function(ga){var f4={};for(var f9 in ga){if(ga.hasOwnProperty(f9)){var gb=ga[f9];if(/^(name|fallthrough|(de|at)tach)$/.test(f9)){continue}if(gb=="..."){delete ga[f9];continue}var gc=bQ(f9.split(" "),dk);for(var f8=0;f8<gc.length;f8++){var f6,f5;if(f8==gc.length-1){f5=f9;f6=gb}else{f5=gc.slice(0,f8+1).join(" ");f6="..."}var f7=f4[f5];if(!f7){f4[f5]=f6}else{if(f7!=f6){throw new Error("Inconsistent bindings for "+f5)}}}delete ga[f9]}}for(var f3 in f4){ga[f3]=f4[f3]}return ga};var i=J.lookupKey=function(f5,f8,f7){f8=fL(f8);var f6=f8.call?f8.call(f5):f8[f5];if(f6===false){return"nothing"}if(f6==="..."){return"multi"}if(f6!=null&&f7(f6)){return"handled"}if(f8.fallthrough){if(Object.prototype.toString.call(f8.fallthrough)!="[object Array]"){return i(f5,f8.fallthrough,f7)}for(var f4=0;f4<f8.fallthrough.length;f4++){var f3=i(f5,f8.fallthrough[f4],f7);if(f3){return f3}}}};var et=J.isModifierKey=function(f4){var f3=typeof f4=="string"?f4:e6[f4.keyCode];return f3=="Ctrl"||f3=="Alt"||f3=="Shift"||f3=="Mod"};var fi=J.keyName=function(f4,f6){if(dS&&f4.keyCode==34&&f4["char"]){return false}var f5=e6[f4.keyCode],f3=f5;if(f3==null||f4.altGraphKey){return false}if(f4.altKey&&f5!="Alt"){f3="Alt-"+f3}if((bO?f4.metaKey:f4.ctrlKey)&&f5!="Ctrl"){f3="Ctrl-"+f3}if((bO?f4.ctrlKey:f4.metaKey)&&f5!="Cmd"){f3="Cmd-"+f3}if(!f6&&f4.shiftKey&&f5!="Shift"){f3="Shift-"+f3}return f3};function fL(f3){return typeof f3=="string"?e0[f3]:f3}J.fromTextArea=function(ga,gb){if(!gb){gb={}}gb.value=ga.value;if(!gb.tabindex&&ga.tabindex){gb.tabindex=ga.tabindex}if(!gb.placeholder&&ga.placeholder){gb.placeholder=ga.placeholder}if(gb.autofocus==null){var f3=dE();gb.autofocus=f3==ga||ga.getAttribute("autofocus")!=null&&f3==document.body}function f7(){ga.value=f9.getValue()}if(ga.form){bV(ga.form,"submit",f7);if(!gb.leaveSubmitMethodAlone){var f4=ga.form,f8=f4.submit;try{var f6=f4.submit=function(){f7();f4.submit=f8;f4.submit();f4.submit=f6}}catch(f5){}}}ga.style.display="none";var f9=J(function(gc){ga.parentNode.insertBefore(gc,ga.nextSibling)},gb);f9.save=f7;f9.getTextArea=function(){return ga};f9.toTextArea=function(){f9.toTextArea=isNaN;f7();ga.parentNode.removeChild(f9.getWrapperElement());ga.style.display="";if(ga.form){d3(ga.form,"submit",f7);if(typeof ga.form.submit=="function"){ga.form.submit=f8}}};return f9};var eK=J.StringStream=function(f3,f4){this.pos=this.start=0;this.string=f3;this.tabSize=f4||8;this.lastColumnPos=this.lastColumnValue=0;this.lineStart=0};eK.prototype={eol:function(){return this.pos>=this.string.length},sol:function(){return this.pos==this.lineStart},peek:function(){return this.string.charAt(this.pos)||undefined},next:function(){if(this.pos<this.string.length){return this.string.charAt(this.pos++)}},eat:function(f3){var f5=this.string.charAt(this.pos);if(typeof f3=="string"){var f4=f5==f3}else{var f4=f5&&(f3.test?f3.test(f5):f3(f5))}if(f4){++this.pos;return f5}},eatWhile:function(f3){var f4=this.pos;while(this.eat(f3)){}return this.pos>f4},eatSpace:function(){var f3=this.pos;while(/[\s\u00a0]/.test(this.string.charAt(this.pos))){++this.pos}return this.pos>f3},skipToEnd:function(){this.pos=this.string.length},skipTo:function(f3){var f4=this.string.indexOf(f3,this.pos);if(f4>-1){this.pos=f4;return true}},backUp:function(f3){this.pos-=f3},column:function(){if(this.lastColumnPos<this.start){this.lastColumnValue=bR(this.string,this.start,this.tabSize,this.lastColumnPos,this.lastColumnValue);this.lastColumnPos=this.start}return this.lastColumnValue-(this.lineStart?bR(this.string,this.lineStart,this.tabSize):0)},indentation:function(){return bR(this.string,null,this.tabSize)-(this.lineStart?bR(this.string,this.lineStart,this.tabSize):0)},match:function(f7,f4,f3){if(typeof f7=="string"){var f8=function(f9){return f3?f9.toLowerCase():f9};var f6=this.string.substr(this.pos,f7.length);if(f8(f6)==f8(f7)){if(f4!==false){this.pos+=f7.length}return true}}else{var f5=this.string.slice(this.pos).match(f7);if(f5&&f5.index>0){return null}if(f5&&f4!==false){this.pos+=f5[0].length}return f5}},current:function(){return this.string.slice(this.start,this.pos)},hideFirstChars:function(f4,f3){this.lineStart+=f4;try{return f3()}finally{this.lineStart-=f4}}};var Q=J.TextMarker=function(f4,f3){this.lines=[];this.type=f3;this.doc=f4};bw(Q);Q.prototype.clear=function(){if(this.explicitlyCleared){return}var ga=this.doc.cm,f4=ga&&!ga.curOp;if(f4){cF(ga)}if(e8(this,"clear")){var gb=this.find();if(gb){ad(this,"clear",gb.from,gb.to)}}var f5=null,f8=null;for(var f6=0;f6<this.lines.length;++f6){var gc=this.lines[f6];var f9=eZ(gc.markedSpans,this);if(ga&&!this.collapsed){S(ga,bL(gc),"text")}else{if(ga){if(f9.to!=null){f8=bL(gc)}if(f9.from!=null){f5=bL(gc)}}}gc.markedSpans=ey(gc.markedSpans,f9);if(f9.from==null&&this.collapsed&&!fn(this.doc,gc)&&ga){fR(gc,aS(ga.display))}}if(ga&&this.collapsed&&!ga.options.lineWrapping){for(var f6=0;f6<this.lines.length;++f6){var f3=z(this.lines[f6]),f7=ec(f3);if(f7>ga.display.maxLineLength){ga.display.maxLine=f3;ga.display.maxLineLength=f7;ga.display.maxLineChanged=true}}}if(f5!=null&&ga&&this.collapsed){ag(ga,f5,f8+1)}this.lines.length=0;this.explicitlyCleared=true;if(this.atomic&&this.doc.cantEdit){this.doc.cantEdit=false;if(ga){eo(ga.doc)}}if(ga){ad(ga,"markerCleared",ga,this)}if(f4){al(ga)}if(this.parent){this.parent.clear()}};Q.prototype.find=function(f6,f4){if(f6==null&&this.type=="bookmark"){f6=1}var f9,f8;for(var f5=0;f5<this.lines.length;++f5){var f3=this.lines[f5];var f7=eZ(f3.markedSpans,this);if(f7.from!=null){f9=X(f4?f3:bL(f3),f7.from);if(f6==-1){return f9}}if(f7.to!=null){f8=X(f4?f3:bL(f3),f7.to);if(f6==1){return f8}}}return f9&&{from:f9,to:f8}};Q.prototype.changed=function(){var f5=this.find(-1,true),f4=this,f3=this.doc.cm;if(!f5||!f3){return}cJ(f3,function(){var f7=f5.line,f8=bL(f5.line);var f6=e1(f3,f8);if(f6){at(f6);f3.curOp.selectionChanged=f3.curOp.forceUpdate=true}f3.curOp.updateMaxLine=true;if(!fn(f4.doc,f7)&&f4.height!=null){var ga=f4.height;f4.height=null;var f9=cT(f4)-ga;if(f9){fR(f7,f7.height+f9)}}})};Q.prototype.attachLine=function(f3){if(!this.lines.length&&this.doc.cm){var f4=this.doc.cm.curOp;if(!f4.maybeHiddenMarkers||dc(f4.maybeHiddenMarkers,this)==-1){(f4.maybeUnhiddenMarkers||(f4.maybeUnhiddenMarkers=[])).push(this)}}this.lines.push(f3)};Q.prototype.detachLine=function(f3){this.lines.splice(dc(this.lines,f3),1);if(!this.lines.length&&this.doc.cm){var f4=this.doc.cm.curOp;(f4.maybeHiddenMarkers||(f4.maybeHiddenMarkers=[])).push(this)}};var a0=0;function ew(gb,f9,ga,gd,f7){if(gd&&gd.shared){return P(gb,f9,ga,gd,f7)}if(gb.cm&&!gb.cm.curOp){return cX(gb.cm,ew)(gb,f9,ga,gd,f7)}var f6=new Q(gb,f7),gc=cd(f9,ga);if(gd){aJ(gd,f6,false)}if(gc>0||gc==0&&f6.clearWhenEmpty!==false){return f6}if(f6.replacedWith){f6.collapsed=true;f6.widgetNode=fN("span",[f6.replacedWith],"CodeMirror-widget");if(!gd.handleMouseEvents){f6.widgetNode.ignoreEvents=true}if(gd.insertLeft){f6.widgetNode.insertLeft=true}}if(f6.collapsed){if(A(gb,f9.line,f9,ga,f6)||f9.line!=ga.line&&A(gb,ga.line,f9,ga,f6)){throw new Error("Inserting collapsed marker partially overlapping an existing one")}a2=true}if(f6.addToHistory){fD(gb,{from:f9,to:ga,origin:"markText"},gb.sel,NaN)}var f4=f9.line,f8=gb.cm,f3;gb.iter(f4,ga.line+1,function(ge){if(f8&&f6.collapsed&&!f8.options.lineWrapping&&z(ge)==f8.display.maxLine){f3=true}if(f6.collapsed&&f4!=f9.line){fR(ge,0)}cb(ge,new d8(f6,f4==f9.line?f9.ch:null,f4==ga.line?ga.ch:null));++f4});if(f6.collapsed){gb.iter(f9.line,ga.line+1,function(ge){if(fn(gb,ge)){fR(ge,0)}})}if(f6.clearOnEnter){bV(f6,"beforeCursorEnter",function(){f6.clear()})}if(f6.readOnly){fY=true;if(gb.history.done.length||gb.history.undone.length){gb.clearHistory()}}if(f6.collapsed){f6.id=++a0;f6.atomic=true}if(f8){if(f3){f8.curOp.updateMaxLine=true}if(f6.collapsed){ag(f8,f9.line,ga.line+1)}else{if(f6.className||f6.title||f6.startStyle||f6.endStyle){for(var f5=f9.line;f5<=ga.line;f5++){S(f8,f5,"text")}}}if(f6.atomic){eo(f8.doc)}ad(f8,"markerAdded",f8,f6)}return f6}var y=J.SharedTextMarker=function(f5,f4){this.markers=f5;this.primary=f4;for(var f3=0;f3<f5.length;++f3){f5[f3].parent=this}};bw(y);y.prototype.clear=function(){if(this.explicitlyCleared){return}this.explicitlyCleared=true;for(var f3=0;f3<this.markers.length;++f3){this.markers[f3].clear()}ad(this,"clear")};y.prototype.find=function(f4,f3){return this.primary.find(f4,f3)};function P(f7,ga,f9,f3,f5){f3=aJ(f3);f3.shared=false;var f8=[ew(f7,ga,f9,f3,f5)],f4=f8[0];var f6=f3.widgetNode;dX(f7,function(gc){if(f6){f3.widgetNode=f6.cloneNode(true)}f8.push(ew(gc,fA(gc,ga),fA(gc,f9),f3,f5));for(var gb=0;gb<gc.linked.length;++gb){if(gc.linked[gb].isParent){return}}f4=fy(f8)});return new y(f8,f4)}function eG(f3){return f3.findMarks(X(f3.first,0),f3.clipPos(X(f3.lastLine())),function(f4){return f4.parent})}function dw(f8,f9){for(var f6=0;f6<f9.length;f6++){var f4=f9[f6],ga=f4.find();var f3=f8.clipPos(ga.from),f7=f8.clipPos(ga.to);if(cd(f3,f7)){var f5=ew(f8,f3,f7,f4.primary,f4.primary.type);f4.markers.push(f5);f5.parent=f4}}}function ee(f6){for(var f5=0;f5<f6.length;f5++){var f3=f6[f5],f8=[f3.primary.doc];dX(f3.primary.doc,function(f9){f8.push(f9)});for(var f4=0;f4<f3.markers.length;f4++){var f7=f3.markers[f4];if(dc(f8,f7.doc)==-1){f7.parent=null;f3.markers.splice(f4--,1)}}}}function d8(f3,f5,f4){this.marker=f3;this.from=f5;this.to=f4}function eZ(f5,f3){if(f5){for(var f4=0;f4<f5.length;++f4){var f6=f5[f4];if(f6.marker==f3){return f6}}}}function ey(f4,f5){for(var f6,f3=0;f3<f4.length;++f3){if(f4[f3]!=f5){(f6||(f6=[])).push(f4[f3])}}return f6}function cb(f3,f4){f3.markedSpans=f3.markedSpans?f3.markedSpans.concat([f4]):[f4];f4.marker.attachLine(f3)}function aM(f4,f5,f9){if(f4){for(var f7=0,ga;f7<f4.length;++f7){var gb=f4[f7],f8=gb.marker;var f3=gb.from==null||(f8.inclusiveLeft?gb.from<=f5:gb.from<f5);if(f3||gb.from==f5&&f8.type=="bookmark"&&(!f9||!gb.marker.insertLeft)){var f6=gb.to==null||(f8.inclusiveRight?gb.to>=f5:gb.to>f5);(ga||(ga=[])).push(new d8(f8,gb.from,f6?null:gb.to))}}}return ga}function az(f4,f6,f9){if(f4){for(var f7=0,ga;f7<f4.length;++f7){var gb=f4[f7],f8=gb.marker;var f5=gb.to==null||(f8.inclusiveRight?gb.to>=f6:gb.to>f6);if(f5||gb.from==f6&&f8.type=="bookmark"&&(!f9||gb.marker.insertLeft)){var f3=gb.from==null||(f8.inclusiveLeft?gb.from<=f6:gb.from<f6);(ga||(ga=[])).push(new d8(f8,f3?null:gb.from-f6,gb.to==null?null:gb.to-f6))}}}return ga}function ea(gf,gc){var gb=b7(gf,gc.from.line)&&e5(gf,gc.from.line).markedSpans;var gi=b7(gf,gc.to.line)&&e5(gf,gc.to.line).markedSpans;if(!gb&&!gi){return null}var f4=gc.from.ch,f7=gc.to.ch,ga=cd(gc.from,gc.to)==0;var f9=aM(gb,f4,ga);var gh=az(gi,f7,ga);var gg=gc.text.length==1,f5=fy(gc.text).length+(gg?f4:0);if(f9){for(var f6=0;f6<f9.length;++f6){var ge=f9[f6];if(ge.to==null){var gj=eZ(gh,ge.marker);if(!gj){ge.to=f4}else{if(gg){ge.to=gj.to==null?null:gj.to+f5}}}}}if(gh){for(var f6=0;f6<gh.length;++f6){var ge=gh[f6];if(ge.to!=null){ge.to+=f5}if(ge.from==null){var gj=eZ(f9,ge.marker);if(!gj){ge.from=f5;if(gg){(f9||(f9=[])).push(ge)}}}else{ge.from+=f5;if(gg){(f9||(f9=[])).push(ge)}}}}if(f9){f9=r(f9)}if(gh&&gh!=f9){gh=r(gh)}var f8=[f9];if(!gg){var gd=gc.text.length-2,f3;if(gd>0&&f9){for(var f6=0;f6<f9.length;++f6){if(f9[f6].to==null){(f3||(f3=[])).push(new d8(f9[f6].marker,null,null))}}}for(var f6=0;f6<gd;++f6){f8.push(f3)}f8.push(gh)}return f8}function r(f4){for(var f3=0;f3<f4.length;++f3){var f5=f4[f3];if(f5.from!=null&&f5.from==f5.to&&f5.marker.clearWhenEmpty!==false){f4.splice(f3--,1)}}if(!f4.length){return null}return f4}function dZ(gb,f9){var f3=b2(gb,f9);var gc=ea(gb,f9);if(!f3){return gc}if(!gc){return f3}for(var f6=0;f6<f3.length;++f6){var f7=f3[f6],f8=gc[f6];if(f7&&f8){spans:for(var f5=0;f5<f8.length;++f5){var ga=f8[f5];for(var f4=0;f4<f7.length;++f4){if(f7[f4].marker==ga.marker){continue spans}}f7.push(ga)}}else{if(f8){f3[f6]=f8}}}return f3}function cE(gf,gd,ge){var f7=null;gf.iter(gd.line,ge.line+1,function(gg){if(gg.markedSpans){for(var gh=0;gh<gg.markedSpans.length;++gh){var gi=gg.markedSpans[gh].marker;if(gi.readOnly&&(!f7||dc(f7,gi)==-1)){(f7||(f7=[])).push(gi)}}}});if(!f7){return null}var f8=[{from:gd,to:ge}];for(var f9=0;f9<f7.length;++f9){var ga=f7[f9],f5=ga.find(0);for(var f6=0;f6<f8.length;++f6){var f4=f8[f6];if(cd(f4.to,f5.from)<0||cd(f4.from,f5.to)>0){continue}var gc=[f6,1],f3=cd(f4.from,f5.from),gb=cd(f4.to,f5.to);if(f3<0||!ga.inclusiveLeft&&!f3){gc.push({from:f4.from,to:f5.from})}if(gb>0||!ga.inclusiveRight&&!gb){gc.push({from:f5.to,to:f4.to})}f8.splice.apply(f8,gc);f6+=gc.length-1}}return f8}function fU(f3){var f5=f3.markedSpans;if(!f5){return}for(var f4=0;f4<f5.length;++f4){f5[f4].marker.detachLine(f3)}f3.markedSpans=null}function cY(f3,f5){if(!f5){return}for(var f4=0;f4<f5.length;++f4){f5[f4].marker.attachLine(f3)}f3.markedSpans=f5}function w(f3){return f3.inclusiveLeft?-1:0}function bU(f3){return f3.inclusiveRight?1:0}function dG(f6,f4){var f8=f6.lines.length-f4.lines.length;if(f8!=0){return f8}var f5=f6.find(),f9=f4.find();var f3=cd(f5.from,f9.from)||w(f6)-w(f4);if(f3){return -f3}var f7=cd(f5.to,f9.to)||bU(f6)-bU(f4);if(f7){return f7}return f4.id-f6.id}function a1(f4,f8){var f3=a2&&f4.markedSpans,f7;if(f3){for(var f6,f5=0;f5<f3.length;++f5){f6=f3[f5];if(f6.marker.collapsed&&(f8?f6.from:f6.to)==null&&(!f7||dG(f7,f6.marker)<0)){f7=f6.marker}}}return f7}function eF(f3){return a1(f3,true)}function el(f3){return a1(f3,false)}function A(gb,f5,f9,ga,f7){var ge=e5(gb,f5);var f3=a2&&ge.markedSpans;if(f3){for(var f6=0;f6<f3.length;++f6){var f4=f3[f6];if(!f4.marker.collapsed){continue}var gd=f4.marker.find(0);var gc=cd(gd.from,f9)||w(f4.marker)-w(f7);var f8=cd(gd.to,ga)||bU(f4.marker)-bU(f7);if(gc>=0&&f8<=0||gc<=0&&f8>=0){continue}if(gc<=0&&(cd(gd.to,f9)>0||(f4.marker.inclusiveRight&&f7.inclusiveLeft))||gc>=0&&(cd(gd.from,ga)<0||(f4.marker.inclusiveLeft&&f7.inclusiveRight))){return true}}}}function z(f4){var f3;while(f3=eF(f4)){f4=f3.find(-1,true).line}return f4}function h(f5){var f3,f4;while(f3=el(f5)){f5=f3.find(1,true).line;(f4||(f4=[])).push(f5)}return f4}function aR(f6,f4){var f3=e5(f6,f4),f5=z(f3);if(f3==f5){return f4}return bL(f5)}function dT(f6,f5){if(f5>f6.lastLine()){return f5}var f4=e5(f6,f5),f3;if(!fn(f6,f4)){return f5}while(f3=el(f4)){f4=f3.find(1,true).line}return bL(f4)+1}function fn(f7,f4){var f3=a2&&f4.markedSpans;if(f3){for(var f6,f5=0;f5<f3.length;++f5){f6=f3[f5];if(!f6.marker.collapsed){continue}if(f6.from==null){return true}if(f6.marker.widgetNode){continue}if(f6.from==0&&f6.marker.inclusiveLeft&&U(f7,f4,f6)){return true}}}}function U(f8,f4,f6){if(f6.to==null){var f3=f6.marker.find(1,true);return U(f8,f3.line,eZ(f3.line.markedSpans,f6.marker))}if(f6.marker.inclusiveRight&&f6.to==f4.text.length){return true}for(var f7,f5=0;f5<f4.markedSpans.length;++f5){f7=f4.markedSpans[f5];if(f7.marker.collapsed&&!f7.marker.widgetNode&&f7.from==f6.to&&(f7.to==null||f7.to!=f6.from)&&(f7.marker.inclusiveLeft||f6.marker.inclusiveRight)&&U(f8,f4,f7)){return true}}}var dt=J.LineWidget=function(f3,f6,f4){if(f4){for(var f5 in f4){if(f4.hasOwnProperty(f5)){this[f5]=f4[f5]}}}this.cm=f3;this.node=f6};bw(dt);function dQ(f3,f4,f5){if(bK(f4)<((f3.curOp&&f3.curOp.scrollTop)||f3.doc.scrollTop)){cI(f3,null,f5)}}dt.prototype.clear=function(){var f4=this.cm,f6=this.line.widgets,f5=this.line,f8=bL(f5);if(f8==null||!f6){return}for(var f7=0;f7<f6.length;++f7){if(f6[f7]==this){f6.splice(f7--,1)}}if(!f6.length){f5.widgets=null}var f3=cT(this);cJ(f4,function(){dQ(f4,f5,-f3);S(f4,f8,"widget");fR(f5,Math.max(0,f5.height-f3))})};dt.prototype.changed=function(){var f4=this.height,f3=this.cm,f5=this.line;this.height=null;var f6=cT(this)-f4;if(!f6){return}cJ(f3,function(){f3.curOp.forceUpdate=true;dQ(f3,f5,f6);fR(f5,f5.height+f6)})};function cT(f4){if(f4.height!=null){return f4.height}if(!fW(document.body,f4.node)){var f3="position: relative;";if(f4.coverGutter){f3+="margin-left: -"+f4.cm.getGutterElement().offsetWidth+"px;"}bP(f4.cm.display.measure,fN("div",[f4.node],null,f3))}return f4.height=f4.node.offsetHeight}function bF(f3,f7,f5,f4){var f6=new dt(f3,f5,f4);if(f6.noHScroll){f3.display.alignWidgets=true}ep(f3.doc,f7,"widget",function(f9){var ga=f9.widgets||(f9.widgets=[]);if(f6.insertAt==null){ga.push(f6)}else{ga.splice(Math.min(ga.length-1,Math.max(0,f6.insertAt)),0,f6)}f6.line=f9;if(!fn(f3.doc,f9)){var f8=bK(f9)<f3.doc.scrollTop;fR(f9,f9.height+cT(f6));if(f8){cI(f3,null,f6.height)}f3.curOp.forceUpdate=true}return true});return f6}var fT=J.Line=function(f5,f4,f3){this.text=f5;cY(this,f4);this.height=f3?f3(this):1};bw(fT);fT.prototype.lineNo=function(){return bL(this)};function ed(f4,f7,f5,f3){f4.text=f7;if(f4.stateAfter){f4.stateAfter=null}if(f4.styles){f4.styles=null}if(f4.order!=null){f4.order=null}fU(f4);cY(f4,f5);var f6=f3?f3(f4):1;if(f6!=f4.height){fR(f4,f6)}}function bz(f3){f3.parent=null;fU(f3)}function dd(f5,f4){if(f5){for(;;){var f3=f5.match(/(?:^|\s+)line-(background-)?(\S+)/);if(!f3){break}f5=f5.slice(0,f3.index)+f5.slice(f3.index+f3[0].length);var f6=f3[1]?"bgClass":"textClass";if(f4[f6]==null){f4[f6]=f3[2]}else{if(!(new RegExp("(?:^|s)"+f3[2]+"(?:$|s)")).test(f4[f6])){f4[f6]+=" "+f3[2]}}}}return f5}function fh(f5,f4){if(f5.blankLine){return f5.blankLine(f4)}if(!f5.innerMode){return}var f3=J.innerMode(f5,f4);if(f3.mode.blankLine){return f3.mode.blankLine(f3.state)}}function es(f8,f7,f6,f3){for(var f4=0;f4<10;f4++){if(f3){f3[0]=J.innerMode(f8,f6).mode}var f5=f8.token(f7,f6);if(f7.pos>f7.start){return f5}}throw new Error("Mode "+f8.name+" failed to advance stream.")}function cp(gc,ga,f7,f6){function f3(gf){return{start:gd.start,end:gd.pos,string:gd.current(),type:f5||null,state:gf?b1(gb.mode,f4):f4}}var gb=gc.doc,f8=gb.mode,f5;ga=fA(gb,ga);var ge=e5(gb,ga.line),f4=ds(gc,ga.line,f7);var gd=new eK(ge.text,gc.options.tabSize),f9;if(f6){f9=[]}while((f6||gd.pos<ga.ch)&&!gd.eol()){gd.start=gd.pos;f5=es(f8,gd,f4);if(f6){f9.push(f3(true))}}return f6?f9:f3()}function x(gd,gf,f8,f4,f9,f6,f7){var f5=f8.flattenSpans;if(f5==null){f5=gd.options.flattenSpans}var gb=0,ga=null;var ge=new eK(gf,gd.options.tabSize),f3;var gh=gd.options.addModeClass&&[null];if(gf==""){dd(fh(f8,f4),f6)}while(!ge.eol()){if(ge.pos>gd.options.maxHighlightLength){f5=false;if(f7){dn(gd,gf,f4,ge.pos)}ge.pos=gf.length;f3=null}else{f3=dd(es(f8,ge,f4,gh),f6)}if(gh){var gg=gh[0].name;if(gg){f3="m-"+(f3?gg+" "+f3:gg)}}if(!f5||ga!=f3){if(gb<ge.start){f9(ge.start,ga)}gb=ge.start;ga=f3}ge.start=ge.pos}while(gb<ge.pos){var gc=Math.min(ge.pos,gb+50000);f9(gc,ga);gb=gc}}function fq(ga,gc,f3,f7){var gb=[ga.state.modeGen],f6={};x(ga,gc.text,ga.doc.mode,f3,function(gd,ge){gb.push(gd,ge)},f6,f7);for(var f4=0;f4<ga.state.overlays.length;++f4){var f8=ga.state.overlays[f4],f9=1,f5=0;x(ga,gc.text,f8.mode,true,function(gd,gf){var gh=f9;while(f5<gd){var ge=gb[f9];if(ge>gd){gb.splice(f9,1,gd,gb[f9+1],ge)}f9+=2;f5=Math.min(gd,ge)}if(!gf){return}if(f8.opaque){gb.splice(gh,f9-gh,gd,"cm-overlay "+gf);f9=gh+2}else{for(;gh<f9;gh+=2){var gg=gb[gh+1];gb[gh+1]=(gg?gg+" ":"")+"cm-overlay "+gf}}},f6)}return{styles:gb,classes:f6.bgClass||f6.textClass?f6:null}}function c1(f4,f5,f6){if(!f5.styles||f5.styles[0]!=f4.state.modeGen){var f3=fq(f4,f5,f5.stateAfter=ds(f4,bL(f5)));f5.styles=f3.styles;if(f3.classes){f5.styleClasses=f3.classes}else{if(f5.styleClasses){f5.styleClasses=null}}if(f6===f4.doc.frontier){f4.doc.frontier++}}return f5.styles}function dn(f3,f8,f5,f4){var f7=f3.doc.mode;var f6=new eK(f8,f3.options.tabSize);f6.start=f6.pos=f4||0;if(f8==""){fh(f7,f5)}while(!f6.eol()&&f6.pos<=f3.options.maxHighlightLength){es(f7,f6,f5);f6.start=f6.pos}}var dM={},bZ={};function eN(f5,f4){if(!f5||/^\s*$/.test(f5)){return null}var f3=f4.addModeClass?bZ:dM;return f3[f5]||(f3[f5]=f5.replace(/\S+/g,"cm-$&"))}function eI(f4,f8){var f9=fN("span",null,null,cV?"padding-right: .1px":null);var f6={pre:fN("pre",[f9]),content:f9,col:0,pos:0,cm:f4};f8.measure={};for(var f7=0;f7<=(f8.rest?f8.rest.length:0);f7++){var f5=f7?f8.rest[f7-1]:f8.line,f3;f6.pos=0;f6.addToken=u;if((dA||cV)&&f4.getOption("lineWrapping")){f6.addToken=fw(f6.addToken)}if(bM(f4.display.measure)&&(f3=a(f5))){f6.addToken=V(f6.addToken,f3)}f6.map=[];var ga=f8!=f4.display.externalMeasured&&bL(f5);bm(f5,f6,c1(f4,f5,ga));if(f5.styleClasses){if(f5.styleClasses.bgClass){f6.bgClass=fI(f5.styleClasses.bgClass,f6.bgClass||"")}if(f5.styleClasses.textClass){f6.textClass=fI(f5.styleClasses.textClass,f6.textClass||"")}}if(f6.map.length==0){f6.map.push(0,0,f6.content.appendChild(bl(f4.display.measure)))}if(f7==0){f8.measure.map=f6.map;f8.measure.cache={}}else{(f8.measure.maps||(f8.measure.maps=[])).push(f6.map);(f8.measure.caches||(f8.measure.caches=[])).push({})}}if(cV&&/\bcm-tab\b/.test(f6.content.lastChild.className)){f6.content.className="cm-tab-wrap-hack"}aB(f4,"renderLine",f4,f8.line,f6.pre);if(f6.pre.className){f6.textClass=fI(f6.pre.className,f6.textClass||"")}return f6}function e2(f4){var f3=fN("span","\u2022","cm-invalidchar");f3.title="\\u"+f4.charCodeAt(0).toString(16);return f3}function u(f8,gi,f3,f6,gj,gh){if(!gi){return}var gd=f8.cm.options.specialChars,gc=false;if(!gd.test(gi)){f8.col+=gi.length;var gb=document.createTextNode(gi);f8.map.push(f8.pos,f8.pos+gi.length,gb);if(dA&&l<9){gc=true}f8.pos+=gi.length}else{var gb=document.createDocumentFragment(),gf=0;while(true){gd.lastIndex=gf;var f4=gd.exec(gi);var ga=f4?f4.index-gf:gi.length-gf;if(ga){var f7=document.createTextNode(gi.slice(gf,gf+ga));if(dA&&l<9){gb.appendChild(fN("span",[f7]))}else{gb.appendChild(f7)}f8.map.push(f8.pos,f8.pos+ga,f7);f8.col+=ga;f8.pos+=ga}if(!f4){break}gf+=ga+1;if(f4[0]=="\t"){var f9=f8.cm.options.tabSize,ge=f9-f8.col%f9;var f7=gb.appendChild(fN("span",co(ge),"cm-tab"));f8.col+=ge}else{var f7=f8.cm.options.specialCharPlaceholder(f4[0]);if(dA&&l<9){gb.appendChild(fN("span",[f7]))}else{gb.appendChild(f7)}f8.col+=1}f8.map.push(f8.pos,f8.pos+1,f7);f8.pos++}}if(f3||f6||gj||gc){var gg=f3||"";if(f6){gg+=f6}if(gj){gg+=gj}var f5=fN("span",[gb],gg);if(gh){f5.title=gh}return f8.content.appendChild(f5)}f8.content.appendChild(gb)}function fw(f3){function f4(f5){var f6=" ";for(var f7=0;f7<f5.length-2;++f7){f6+=f7%2?" ":"\u00a0"}f6+=" ";return f6}return function(f6,ga,f7,f5,f9,f8){f3(f6,ga.replace(/ {3,}/g,f4),f7,f5,f9,f8)}}function V(f4,f3){return function(gb,gd,f5,f9,ge,gc){f5=f5?f5+" cm-force-border":"cm-force-border";var f6=gb.pos,f8=f6+gd.length;for(;;){for(var ga=0;ga<f3.length;ga++){var f7=f3[ga];if(f7.to>f6&&f7.from<=f6){break}}if(f7.to>=f8){return f4(gb,gd,f5,f9,ge,gc)}f4(gb,gd.slice(0,f7.to-f6),f5,f9,null,gc);f9=null;gd=gd.slice(f7.to-f6);f6=f7.to}}}function ab(f4,f6,f3,f5){var f7=!f5&&f3.widgetNode;if(f7){f4.map.push(f4.pos,f4.pos+f6,f7);f4.content.appendChild(f7)}f4.pos+=f6}function bm(gc,gi,gb){var f8=gc.markedSpans,ga=gc.text,gg=0;if(!f8){for(var gl=1;gl<gb.length;gl+=2){gi.addToken(gi,ga.slice(gg,gg=gb[gl]),eN(gb[gl+1],gi.cm.options))}return}var gm=ga.length,f7=0,gl=1,ge="",gn;var gp=0,f3,go,gf,gq,f5;for(;;){if(gp==f7){f3=go=gf=gq="";f5=null;gp=Infinity;var f9=[];for(var gj=0;gj<f8.length;++gj){var gk=f8[gj],gh=gk.marker;if(gk.from<=f7&&(gk.to==null||gk.to>f7)){if(gk.to!=null&&gp>gk.to){gp=gk.to;go=""}if(gh.className){f3+=" "+gh.className}if(gh.startStyle&&gk.from==f7){gf+=" "+gh.startStyle}if(gh.endStyle&&gk.to==gp){go+=" "+gh.endStyle}if(gh.title&&!gq){gq=gh.title}if(gh.collapsed&&(!f5||dG(f5.marker,gh)<0)){f5=gk}}else{if(gk.from>f7&&gp>gk.from){gp=gk.from}}if(gh.type=="bookmark"&&gk.from==f7&&gh.widgetNode){f9.push(gh)}}if(f5&&(f5.from||0)==f7){ab(gi,(f5.to==null?gm+1:f5.to)-f7,f5.marker,f5.from==null);if(f5.to==null){return}}if(!f5&&f9.length){for(var gj=0;gj<f9.length;++gj){ab(gi,0,f9[gj])}}}if(f7>=gm){break}var gd=Math.min(gm,gp);while(true){if(ge){var f4=f7+ge.length;if(!f5){var f6=f4>gd?ge.slice(0,gd-f7):ge;gi.addToken(gi,f6,gn?gn+f3:f3,gf,f7+f6.length==gp?go:"",gq)}if(f4>=gd){ge=ge.slice(gd-f7);f7=gd;break}f7=f4;gf=""}ge=ga.slice(gg,gg=gb[gl++]);gn=eN(gb[gl++],gi.cm.options)}}}function dI(f3,f4){return f4.from.ch==0&&f4.to.ch==0&&fy(f4.text)==""&&(!f3.cm||f3.cm.options.wholeLineUpdateBefore)}function fp(gg,gb,f3,f7){function gh(gj){return f3?f3[gj]:null}function f4(gj,gl,gk){ed(gj,gl,gk,f7);ad(gj,"change",gj,gb)}var ge=gb.from,gf=gb.to,gi=gb.text;var gc=e5(gg,ge.line),gd=e5(gg,gf.line);var ga=fy(gi),f6=gh(gi.length-1),f9=gf.line-ge.line;if(dI(gg,gb)){for(var f5=0,f8=[];f5<gi.length-1;++f5){f8.push(new fT(gi[f5],gh(f5),f7))}f4(gd,gd.text,f6);if(f9){gg.remove(ge.line,f9)}if(f8.length){gg.insert(ge.line,f8)}}else{if(gc==gd){if(gi.length==1){f4(gc,gc.text.slice(0,ge.ch)+ga+gc.text.slice(gf.ch),f6)}else{for(var f8=[],f5=1;f5<gi.length-1;++f5){f8.push(new fT(gi[f5],gh(f5),f7))}f8.push(new fT(ga+gc.text.slice(gf.ch),f6,f7));f4(gc,gc.text.slice(0,ge.ch)+gi[0],gh(0));gg.insert(ge.line+1,f8)}}else{if(gi.length==1){f4(gc,gc.text.slice(0,ge.ch)+gi[0]+gd.text.slice(gf.ch),gh(0));gg.remove(ge.line+1,f9)}else{f4(gc,gc.text.slice(0,ge.ch)+gi[0],gh(0));f4(gd,ga+gd.text.slice(gf.ch),f6);for(var f5=1,f8=[];f5<gi.length-1;++f5){f8.push(new fT(gi[f5],gh(f5),f7))}if(f9>1){gg.remove(ge.line+1,f9-1)}gg.insert(ge.line+1,f8)}}}ad(gg,"change",gg,gb)}function eQ(f4){this.lines=f4;this.parent=null;for(var f5=0,f3=0;f5<f4.length;++f5){f4[f5].parent=this;f3+=f4[f5].height}this.height=f3}eQ.prototype={chunkSize:function(){return this.lines.length},removeInner:function(f3,f7){for(var f5=f3,f6=f3+f7;f5<f6;++f5){var f4=this.lines[f5];this.height-=f4.height;bz(f4);ad(f4,"delete")}this.lines.splice(f3,f7)},collapse:function(f3){f3.push.apply(f3,this.lines)},insertInner:function(f4,f5,f3){this.height+=f3;this.lines=this.lines.slice(0,f4).concat(f5).concat(this.lines.slice(f4));for(var f6=0;f6<f5.length;++f6){f5[f6].parent=this}},iterN:function(f3,f6,f5){for(var f4=f3+f6;f3<f4;++f3){if(f5(this.lines[f3])){return true}}}};function fo(f6){this.children=f6;var f5=0,f3=0;for(var f4=0;f4<f6.length;++f4){var f7=f6[f4];f5+=f7.chunkSize();f3+=f7.height;f7.parent=this}this.size=f5;this.height=f3;this.parent=null}fo.prototype={chunkSize:function(){return this.size},removeInner:function(f3,ga){this.size-=ga;for(var f5=0;f5<this.children.length;++f5){var f9=this.children[f5],f7=f9.chunkSize();if(f3<f7){var f6=Math.min(ga,f7-f3),f8=f9.height;f9.removeInner(f3,f6);this.height-=f8-f9.height;if(f7==f6){this.children.splice(f5--,1);f9.parent=null}if((ga-=f6)==0){break}f3=0}else{f3-=f7}}if(this.size-ga<25&&(this.children.length>1||!(this.children[0] instanceof eQ))){var f4=[];this.collapse(f4);this.children=[new eQ(f4)];this.children[0].parent=this}},collapse:function(f3){for(var f4=0;f4<this.children.length;++f4){this.children[f4].collapse(f3)}},insertInner:function(f4,f5,f3){this.size+=f5.length;this.height+=f3;for(var f8=0;f8<this.children.length;++f8){var ga=this.children[f8],f9=ga.chunkSize();if(f4<=f9){ga.insertInner(f4,f5,f3);if(ga.lines&&ga.lines.length>50){while(ga.lines.length>50){var f7=ga.lines.splice(ga.lines.length-25,25);var f6=new eQ(f7);ga.height-=f6.height;this.children.splice(f8+1,0,f6);f6.parent=this}this.maybeSpill()}break}f4-=f9}},maybeSpill:function(){if(this.children.length<=10){return}var f6=this;do{var f4=f6.children.splice(f6.children.length-5,5);var f5=new fo(f4);if(!f6.parent){var f7=new fo(f6.children);f7.parent=f6;f6.children=[f7,f5];f6=f7}else{f6.size-=f5.size;f6.height-=f5.height;var f3=dc(f6.parent.children,f6);f6.parent.children.splice(f3+1,0,f5)}f5.parent=f6.parent}while(f6.children.length>10);f6.parent.maybeSpill()},iterN:function(f3,f9,f8){for(var f4=0;f4<this.children.length;++f4){var f7=this.children[f4],f6=f7.chunkSize();if(f3<f6){var f5=Math.min(f9,f6-f3);if(f7.iterN(f3,f5,f8)){return true}if((f9-=f5)==0){break}f3=0}else{f3-=f6}}}};var cq=0;var ar=J.Doc=function(f5,f4,f3){if(!(this instanceof ar)){return new ar(f5,f4,f3)}if(f3==null){f3=0}fo.call(this,[new eQ([new fT("",null)])]);this.first=f3;this.scrollTop=this.scrollLeft=0;this.cantEdit=false;this.cleanGeneration=1;this.frontier=f3;var f6=X(f3,0);this.sel=eJ(f6);this.history=new fJ(null);this.id=++cq;this.modeOption=f4;if(typeof f5=="string"){f5=aV(f5)}fp(this,{from:f6,to:f6,text:f5});bS(this,eJ(f6),Z)};ar.prototype=cj(fo.prototype,{constructor:ar,iter:function(f5,f4,f3){if(f3){this.iterN(f5-this.first,f4-f5,f3)}else{this.iterN(this.first,this.first+this.size,f5)}},insert:function(f4,f5){var f3=0;for(var f6=0;f6<f5.length;++f6){f3+=f5[f6].height}this.insertInner(f4-this.first,f5,f3)},remove:function(f3,f4){this.removeInner(f3-this.first,f4)},getValue:function(f4){var f3=aX(this,this.first,this.first+this.size);if(f4===false){return f3}return f3.join(f4||"\n")},setValue:cB(function(f4){var f5=X(this.first,0),f3=this.first+this.size-1;bb(this,{from:f5,to:X(f3,e5(this,f3).text.length),text:aV(f4),origin:"setValue"},true);bS(this,eJ(f5))}),replaceRange:function(f4,f6,f5,f3){f6=fA(this,f6);f5=f5?fA(this,f5):f6;aW(this,f4,f6,f5,f3)},getRange:function(f6,f5,f4){var f3=fP(this,fA(this,f6),fA(this,f5));if(f4===false){return f3}return f3.join(f4||"\n")},getLine:function(f4){var f3=this.getLineHandle(f4);return f3&&f3.text},getLineHandle:function(f3){if(b7(this,f3)){return e5(this,f3)}},getLineNumber:function(f3){return bL(f3)},getLineHandleVisualStart:function(f3){if(typeof f3=="number"){f3=e5(this,f3)}return z(f3)},lineCount:function(){return this.size},firstLine:function(){return this.first},lastLine:function(){return this.first+this.size-1},clipPos:function(f3){return fA(this,f3)},getCursor:function(f5){var f3=this.sel.primary(),f4;if(f5==null||f5=="head"){f4=f3.head}else{if(f5=="anchor"){f4=f3.anchor}else{if(f5=="end"||f5=="to"||f5===false){f4=f3.to()}else{f4=f3.from()}}}return f4},listSelections:function(){return this.sel.ranges},somethingSelected:function(){return this.sel.somethingSelected()},setCursor:cB(function(f3,f5,f4){H(this,fA(this,typeof f3=="number"?X(f3,f5||0):f3),null,f4)}),setSelection:cB(function(f4,f5,f3){H(this,fA(this,f4),fA(this,f5||f4),f3)}),extendSelection:cB(function(f5,f3,f4){fK(this,fA(this,f5),f3&&fA(this,f3),f4)}),extendSelections:cB(function(f4,f3){av(this,dP(this,f4,f3))}),extendSelectionsBy:cB(function(f4,f3){av(this,bQ(this.sel.ranges,f4),f3)}),setSelections:cB(function(f3,f7,f5){if(!f3.length){return}for(var f6=0,f4=[];f6<f3.length;f6++){f4[f6]=new dO(fA(this,f3[f6].anchor),fA(this,f3[f6].head))}if(f7==null){f7=Math.min(f3.length-1,this.sel.primIndex)}bS(this,cv(f4,f7),f5)}),addSelection:cB(function(f5,f6,f4){var f3=this.sel.ranges.slice(0);f3.push(new dO(fA(this,f5),fA(this,f6||f5)));bS(this,cv(f3,f3.length-1),f4)}),getSelection:function(f7){var f4=this.sel.ranges,f3;for(var f5=0;f5<f4.length;f5++){var f6=fP(this,f4[f5].from(),f4[f5].to());f3=f3?f3.concat(f6):f6}if(f7===false){return f3}else{return f3.join(f7||"\n")}},getSelections:function(f7){var f6=[],f3=this.sel.ranges;for(var f4=0;f4<f3.length;f4++){var f5=fP(this,f3[f4].from(),f3[f4].to());if(f7!==false){f5=f5.join(f7||"\n")}f6[f4]=f5}return f6},replaceSelection:function(f5,f7,f3){var f6=[];for(var f4=0;f4<this.sel.ranges.length;f4++){f6[f4]=f5}this.replaceSelections(f6,f7,f3||"+input")},replaceSelections:cB(function(f8,ga,f5){var f7=[],f9=this.sel;for(var f6=0;f6<f9.ranges.length;f6++){var f4=f9.ranges[f6];f7[f6]={from:f4.from(),to:f4.to(),text:aV(f8[f6]),origin:f5}}var f3=ga&&ga!="end"&&ae(this,f7,ga);for(var f6=f7.length-1;f6>=0;f6--){bb(this,f7[f6])}if(f3){eX(this,f3)}else{if(this.cm){fx(this.cm)}}}),undo:cB(function(){b6(this,"undo")}),redo:cB(function(){b6(this,"redo")}),undoSelection:cB(function(){b6(this,"undo",true)}),redoSelection:cB(function(){b6(this,"redo",true)}),setExtending:function(f3){this.extend=f3},getExtending:function(){return this.extend},historySize:function(){var f6=this.history,f3=0,f5=0;for(var f4=0;f4<f6.done.length;f4++){if(!f6.done[f4].ranges){++f3}}for(var f4=0;f4<f6.undone.length;f4++){if(!f6.undone[f4].ranges){++f5}}return{undo:f3,redo:f5}},clearHistory:function(){this.history=new fJ(this.history.maxGeneration)},markClean:function(){this.cleanGeneration=this.changeGeneration(true)},changeGeneration:function(f3){if(f3){this.history.lastOp=this.history.lastSelOp=this.history.lastOrigin=null}return this.history.generation},isClean:function(f3){return this.history.generation==(f3||this.cleanGeneration)},getHistory:function(){return{done:bN(this.history.done),undone:bN(this.history.undone)}},setHistory:function(f4){var f3=this.history=new fJ(this.history.maxGeneration);f3.done=bN(f4.done.slice(0),null,true);f3.undone=bN(f4.undone.slice(0),null,true)},addLineClass:cB(function(f5,f4,f3){return ep(this,f5,f4=="gutter"?"gutter":"class",function(f6){var f7=f4=="text"?"textClass":f4=="background"?"bgClass":f4=="gutter"?"gutterClass":"wrapClass";if(!f6[f7]){f6[f7]=f3}else{if(T(f3).test(f6[f7])){return false}else{f6[f7]+=" "+f3}}return true})}),removeLineClass:cB(function(f5,f4,f3){return ep(this,f5,"class",function(f7){var ga=f4=="text"?"textClass":f4=="background"?"bgClass":f4=="gutter"?"gutterClass":"wrapClass";var f9=f7[ga];if(!f9){return false}else{if(f3==null){f7[ga]=null}else{var f8=f9.match(T(f3));if(!f8){return false}var f6=f8.index+f8[0].length;f7[ga]=f9.slice(0,f8.index)+(!f8.index||f6==f9.length?"":" ")+f9.slice(f6)||null}}return true})}),markText:function(f5,f4,f3){return ew(this,fA(this,f5),fA(this,f4),f3,"range")},setBookmark:function(f5,f3){var f4={replacedWith:f3&&(f3.nodeType==null?f3.widget:f3),insertLeft:f3&&f3.insertLeft,clearWhenEmpty:false,shared:f3&&f3.shared};f5=fA(this,f5);return ew(this,f5,f5,f4,"bookmark")},findMarksAt:function(f7){f7=fA(this,f7);var f6=[],f4=e5(this,f7.line).markedSpans;if(f4){for(var f3=0;f3<f4.length;++f3){var f5=f4[f3];if((f5.from==null||f5.from<=f7.ch)&&(f5.to==null||f5.to>=f7.ch)){f6.push(f5.marker.parent||f5.marker)}}}return f6},findMarks:function(f7,f6,f3){f7=fA(this,f7);f6=fA(this,f6);var f4=[],f5=f7.line;this.iter(f7.line,f6.line+1,function(f8){var ga=f8.markedSpans;if(ga){for(var f9=0;f9<ga.length;f9++){var gb=ga[f9];if(!(f5==f7.line&&f7.ch>gb.to||gb.from==null&&f5!=f7.line||f5==f6.line&&gb.from>f6.ch)&&(!f3||f3(gb.marker))){f4.push(gb.marker.parent||gb.marker)}}}++f5});return f4},getAllMarks:function(){var f3=[];this.iter(function(f5){var f4=f5.markedSpans;if(f4){for(var f6=0;f6<f4.length;++f6){if(f4[f6].from!=null){f3.push(f4[f6].marker)}}}});return f3},posFromIndex:function(f4){var f3,f5=this.first;this.iter(function(f6){var f7=f6.text.length+1;if(f7>f4){f3=f4;return true}f4-=f7;++f5});return fA(this,X(f5,f3))},indexFromPos:function(f4){f4=fA(this,f4);var f3=f4.ch;if(f4.line<this.first||f4.ch<0){return 0}this.iter(this.first,f4.line,function(f5){f3+=f5.text.length+1});return f3},copy:function(f3){var f4=new ar(aX(this,this.first,this.first+this.size),this.modeOption,this.first);f4.scrollTop=this.scrollTop;f4.scrollLeft=this.scrollLeft;f4.sel=this.sel;f4.extend=false;if(f3){f4.history.undoDepth=this.history.undoDepth;f4.setHistory(this.getHistory())}return f4},linkedDoc:function(f3){if(!f3){f3={}}var f6=this.first,f5=this.first+this.size;if(f3.from!=null&&f3.from>f6){f6=f3.from}if(f3.to!=null&&f3.to<f5){f5=f3.to}var f4=new ar(aX(this,f6,f5),f3.mode||this.modeOption,f6);if(f3.sharedHist){f4.history=this.history}(this.linked||(this.linked=[])).push({doc:f4,sharedHist:f3.sharedHist});f4.linked=[{doc:this,isParent:true,sharedHist:f3.sharedHist}];dw(f4,eG(this));return f4},unlinkDoc:function(f4){if(f4 instanceof J){f4=f4.doc}if(this.linked){for(var f5=0;f5<this.linked.length;++f5){var f6=this.linked[f5];if(f6.doc!=f4){continue}this.linked.splice(f5,1);f4.unlinkDoc(this);ee(eG(this));break}}if(f4.history==this.history){var f3=[f4.id];dX(f4,function(f7){f3.push(f7.id)},true);f4.history=new fJ(null);f4.history.done=bN(this.history.done,f3);f4.history.undone=bN(this.history.undone,f3)}},iterLinkedDocs:function(f3){dX(this,f3)},getMode:function(){return this.mode},getEditor:function(){return this.cm}});ar.prototype.eachLine=ar.prototype.iter;var d="iter insert remove copy getEditor".split(" ");for(var bI in ar.prototype){if(ar.prototype.hasOwnProperty(bI)&&dc(d,bI)<0){J.prototype[bI]=(function(f3){return function(){return f3.apply(this.doc,arguments)}})(ar.prototype[bI])}}bw(ar);function dX(f6,f5,f4){function f3(gc,ga,f8){if(gc.linked){for(var f9=0;f9<gc.linked.length;++f9){var f7=gc.linked[f9];if(f7.doc==ga){continue}var gb=f8&&f7.sharedHist;if(f4&&!gb){continue}f5(f7.doc,gb);f3(f7.doc,gc,gb)}}}f3(f6,null,true)}function d1(f3,f4){if(f4.cm){throw new Error("This document is already in use.")}f3.doc=f4;f4.cm=f3;Y(f3);bp(f3);if(!f3.options.lineWrapping){g(f3)}f3.options.mode=f4.modeOption;ag(f3)}function e5(f6,f8){f8-=f6.first;if(f8<0||f8>=f6.size){throw new Error("There is no line "+(f8+f6.first)+" in the document.")}for(var f3=f6;!f3.lines;){for(var f4=0;;++f4){var f7=f3.children[f4],f5=f7.chunkSize();if(f8<f5){f3=f7;break}f8-=f5}}return f3.lines[f8]}function fP(f5,f7,f3){var f4=[],f6=f7.line;f5.iter(f7.line,f3.line+1,function(f8){var f9=f8.text;if(f6==f3.line){f9=f9.slice(0,f3.ch)}if(f6==f7.line){f9=f9.slice(f7.ch)}f4.push(f9);++f6});return f4}function aX(f4,f6,f5){var f3=[];f4.iter(f6,f5,function(f7){f3.push(f7.text)});return f3}function fR(f4,f3){var f5=f3-f4.height;if(f5){for(var f6=f4;f6;f6=f6.parent){f6.height+=f5}}}function bL(f3){if(f3.parent==null){return null}var f7=f3.parent,f6=dc(f7.lines,f3);for(var f4=f7.parent;f4;f7=f4,f4=f4.parent){for(var f5=0;;++f5){if(f4.children[f5]==f7){break}f6+=f4.children[f5].chunkSize()}}return f6+f7.first}function bE(f5,f8){var ga=f5.first;outer:do{for(var f6=0;f6<f5.children.length;++f6){var f9=f5.children[f6],f7=f9.height;if(f8<f7){f5=f9;continue outer}f8-=f7;ga+=f9.chunkSize()}return ga}while(!f5.lines);for(var f6=0;f6<f5.lines.length;++f6){var f4=f5.lines[f6],f3=f4.height;if(f8<f3){break}f8-=f3}return ga+f6}function bK(f5){f5=z(f5);var f7=0,f4=f5.parent;for(var f6=0;f6<f4.lines.length;++f6){var f3=f4.lines[f6];if(f3==f5){break}else{f7+=f3.height}}for(var f8=f4.parent;f8;f4=f8,f8=f4.parent){for(var f6=0;f6<f8.children.length;++f6){var f9=f8.children[f6];if(f9==f4){break}else{f7+=f9.height}}}return f7}function a(f4){var f3=f4.order;if(f3==null){f3=f4.order=bc(f4.text)}return f3}function fJ(f3){this.done=[];this.undone=[];this.undoDepth=Infinity;this.lastModTime=this.lastSelTime=0;this.lastOp=this.lastSelOp=null;this.lastOrigin=this.lastSelOrigin=null;this.generation=this.maxGeneration=f3||1}function dl(f3,f5){var f4={from:ch(f5.from),to:cS(f5),text:fP(f3,f5.from,f5.to)};bW(f3,f4,f5.from.line,f5.to.line+1);dX(f3,function(f6){bW(f6,f4,f5.from.line,f5.to.line+1)},true);return f4}function fs(f4){while(f4.length){var f3=fy(f4);if(f3.ranges){f4.pop()}else{break}}}function eD(f4,f3){if(f3){fs(f4.done);return fy(f4.done)}else{if(f4.done.length&&!fy(f4.done).ranges){return fy(f4.done)}else{if(f4.done.length>1&&!f4.done[f4.done.length-2].ranges){f4.done.pop();return fy(f4.done)}}}}function fD(f9,f7,f3,f6){var f5=f9.history;f5.undone.length=0;var f4=+new Date,ga;if((f5.lastOp==f6||f5.lastOrigin==f7.origin&&f7.origin&&((f7.origin.charAt(0)=="+"&&f9.cm&&f5.lastModTime>f4-f9.cm.options.historyEventDelay)||f7.origin.charAt(0)=="*"))&&(ga=eD(f5,f5.lastOp==f6))){var gb=fy(ga.changes);if(cd(f7.from,f7.to)==0&&cd(f7.from,gb.to)==0){gb.to=cS(f7)}else{ga.changes.push(dl(f9,f7))}}else{var f8=fy(f5.done);if(!f8||!f8.ranges){cK(f9.sel,f5.done)}ga={changes:[dl(f9,f7)],generation:f5.generation};f5.done.push(ga);while(f5.done.length>f5.undoDepth){f5.done.shift();if(!f5.done[0].ranges){f5.done.shift()}}}f5.done.push(f3);f5.generation=++f5.maxGeneration;f5.lastModTime=f5.lastSelTime=f4;f5.lastOp=f5.lastSelOp=f6;f5.lastOrigin=f5.lastSelOrigin=f7.origin;if(!gb){aB(f9,"historyAdded")}}function by(f7,f3,f5,f6){var f4=f3.charAt(0);return f4=="*"||f4=="+"&&f5.ranges.length==f6.ranges.length&&f5.somethingSelected()==f6.somethingSelected()&&new Date-f7.history.lastSelTime<=(f7.cm?f7.cm.options.historyEventDelay:500)}function fX(f8,f6,f3,f5){var f7=f8.history,f4=f5&&f5.origin;if(f3==f7.lastSelOp||(f4&&f7.lastSelOrigin==f4&&(f7.lastModTime==f7.lastSelTime&&f7.lastOrigin==f4||by(f8,f4,fy(f7.done),f6)))){f7.done[f7.done.length-1]=f6}else{cK(f6,f7.done)}f7.lastSelTime=+new Date;f7.lastSelOrigin=f4;f7.lastSelOp=f3;if(f5&&f5.clearRedo!==false){fs(f7.undone)}}function cK(f4,f3){var f5=fy(f3);if(!(f5&&f5.ranges&&f5.equals(f4))){f3.push(f4)}}function bW(f4,f8,f7,f6){var f3=f8["spans_"+f4.id],f5=0;f4.iter(Math.max(f4.first,f7),Math.min(f4.first+f4.size,f6),function(f9){if(f9.markedSpans){(f3||(f3=f8["spans_"+f4.id]={}))[f5]=f9.markedSpans}++f5})}function bh(f5){if(!f5){return null}for(var f4=0,f3;f4<f5.length;++f4){if(f5[f4].marker.explicitlyCleared){if(!f3){f3=f5.slice(0,f4)}}else{if(f3){f3.push(f5[f4])}}}return !f3?f5:f3.length?f3:null}function b2(f6,f7){var f5=f7["spans_"+f6.id];if(!f5){return null}for(var f4=0,f3=[];f4<f7.text.length;++f4){f3.push(bh(f5[f4]))}return f3}function bN(ge,f6,gd){for(var f9=0,f4=[];f9<ge.length;++f9){var f5=ge[f9];if(f5.ranges){f4.push(gd?fO.prototype.deepCopy.call(f5):f5);continue}var gb=f5.changes,gc=[];f4.push({changes:gc});for(var f8=0;f8<gb.length;++f8){var ga=gb[f8],f7;gc.push({from:ga.from,to:ga.to,text:ga.text});if(f6){for(var f3 in ga){if(f7=f3.match(/^spans_(\d+)$/)){if(dc(f6,Number(f7[1]))>-1){fy(gc)[f3]=ga[f3];delete ga[f3]}}}}}}return f4}function K(f6,f5,f4,f3){if(f4<f6.line){f6.line+=f3}else{if(f5<f6.line){f6.line=f5;f6.ch=0}}}function e7(f6,f8,f9,ga){for(var f5=0;f5<f6.length;++f5){var f3=f6[f5],f7=true;if(f3.ranges){if(!f3.copied){f3=f6[f5]=f3.deepCopy();f3.copied=true}for(var f4=0;f4<f3.ranges.length;f4++){K(f3.ranges[f4].anchor,f8,f9,ga);K(f3.ranges[f4].head,f8,f9,ga)}continue}for(var f4=0;f4<f3.changes.length;++f4){var gb=f3.changes[f4];if(f9<gb.from.line){gb.from=X(gb.from.line+ga,gb.from.ch);gb.to=X(gb.to.line+ga,gb.to.ch)}else{if(f8<=gb.to.line){f7=false;break}}}if(!f7){f6.splice(0,f5+1);f5=0}}}function dv(f4,f7){var f6=f7.from.line,f5=f7.to.line,f3=f7.text.length-(f5-f6)-1;e7(f4.done,f6,f5,f3);e7(f4.undone,f6,f5,f3)}var cD=J.e_preventDefault=function(f3){if(f3.preventDefault){f3.preventDefault()}else{f3.returnValue=false}};var dh=J.e_stopPropagation=function(f3){if(f3.stopPropagation){f3.stopPropagation()}else{f3.cancelBubble=true}};function bJ(f3){return f3.defaultPrevented!=null?f3.defaultPrevented:f3.returnValue==false}var eh=J.e_stop=function(f3){cD(f3);dh(f3)};function M(f3){return f3.target||f3.srcElement}function fE(f4){var f3=f4.which;if(f3==null){if(f4.button&1){f3=1}else{if(f4.button&2){f3=3}else{if(f4.button&4){f3=2}}}}if(b5&&f4.ctrlKey&&f3==1){f3=3}return f3}var bV=J.on=function(f6,f4,f5){if(f6.addEventListener){f6.addEventListener(f4,f5,false)}else{if(f6.attachEvent){f6.attachEvent("on"+f4,f5)}else{var f7=f6._handlers||(f6._handlers={});var f3=f7[f4]||(f7[f4]=[]);f3.push(f5)}}};var d3=J.off=function(f7,f5,f6){if(f7.removeEventListener){f7.removeEventListener(f5,f6,false)}else{if(f7.detachEvent){f7.detachEvent("on"+f5,f6)}else{var f3=f7._handlers&&f7._handlers[f5];if(!f3){return}for(var f4=0;f4<f3.length;++f4){if(f3[f4]==f6){f3.splice(f4,1);break}}}}};var aB=J.signal=function(f7,f6){var f3=f7._handlers&&f7._handlers[f6];if(!f3){return}var f4=Array.prototype.slice.call(arguments,2);for(var f5=0;f5<f3.length;++f5){f3[f5].apply(null,f4)}};var bx=null;function ad(f9,f7){var f3=f9._handlers&&f9._handlers[f7];if(!f3){return}var f5=Array.prototype.slice.call(arguments,2),f8;if(bn){f8=bn.delayedCallbacks}else{if(bx){f8=bx}else{f8=bx=[];setTimeout(aI,0)}}function f4(ga){return function(){ga.apply(null,f5)}}for(var f6=0;f6<f3.length;++f6){f8.push(f4(f3[f6]))}}function aI(){var f3=bx;bx=null;for(var f4=0;f4<f3.length;++f4){f3[f4]()}}function aN(f3,f5,f4){if(typeof f5=="string"){f5={type:f5,preventDefault:function(){this.defaultPrevented=true}}}aB(f3,f4||f5.type,f3,f5);return bJ(f5)||f5.codemirrorIgnore}function W(f4){var f3=f4._handlers&&f4._handlers.cursorActivity;if(!f3){return}var f6=f4.curOp.cursorActivityHandlers||(f4.curOp.cursorActivityHandlers=[]);for(var f5=0;f5<f3.length;++f5){if(dc(f6,f3[f5])==-1){f6.push(f3[f5])}}}function e8(f5,f4){var f3=f5._handlers&&f5._handlers[f4];return f3&&f3.length>0}function bw(f3){f3.prototype.on=function(f4,f5){bV(this,f4,f5)};f3.prototype.off=function(f4,f5){d3(this,f4,f5)}}var bg=30;var b8=J.Pass={toString:function(){return"CodeMirror.Pass"}};var Z={scroll:false},N={origin:"*mouse"},cR={origin:"+move"};function f2(){this.id=null}f2.prototype.set=function(f3,f4){clearTimeout(this.id);this.id=setTimeout(f4,f3)};var bR=J.countColumn=function(f6,f4,f8,f9,f5){if(f4==null){f4=f6.search(/[^\s\u00a0]/);if(f4==-1){f4=f6.length}}for(var f7=f9||0,ga=f5||0;;){var f3=f6.indexOf("\t",f7);if(f3<0||f3>=f4){return ga+(f4-f7)}ga+=f3-f7;ga+=f8-(ga%f8);f7=f3+1}};function eg(f7,f6,f8){for(var f9=0,f5=0;;){var f4=f7.indexOf("\t",f9);if(f4==-1){f4=f7.length}var f3=f4-f9;if(f4==f7.length||f5+f3>=f6){return f9+Math.min(f3,f6-f5)}f5+=f4-f9;f5+=f8-(f5%f8);f9=f4+1;if(f5>=f6){return f9}}}var aU=[""];function co(f3){while(aU.length<=f3){aU.push(fy(aU)+" ")}return aU[f3]}function fy(f3){return f3[f3.length-1]}var dB=function(f3){f3.select()};if(eS){dB=function(f3){f3.selectionStart=0;f3.selectionEnd=f3.value.length}}else{if(dA){dB=function(f4){try{f4.select()}catch(f3){}}}}function dc(f5,f3){for(var f4=0;f4<f5.length;++f4){if(f5[f4]==f3){return f4}}return -1}if([].indexOf){dc=function(f4,f3){return f4.indexOf(f3)}}function bQ(f6,f5){var f3=[];for(var f4=0;f4<f6.length;f4++){f3[f4]=f5(f6[f4],f4)}return f3}if([].map){bQ=function(f4,f3){return f4.map(f3)}}function cj(f6,f3){var f5;if(Object.create){f5=Object.create(f6)}else{var f4=function(){};f4.prototype=f6;f5=new f4()}if(f3){aJ(f3,f5)}return f5}function aJ(f5,f4,f3){if(!f4){f4={}}for(var f6 in f5){if(f5.hasOwnProperty(f6)&&(f3!==false||!f4.hasOwnProperty(f6))){f4[f6]=f5[f6]}}return f4}function cu(f4){var f3=Array.prototype.slice.call(arguments,1);return function(){return f4.apply(null,f3)}}var a7=/[\u00df\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;var fu=J.isWordChar=function(f3){return/\w/.test(f3)||f3>"\x80"&&(f3.toUpperCase()!=f3.toLowerCase()||a7.test(f3))};function cy(f3,f4){if(!f4){return fu(f3)}if(f4.source.indexOf("\\w")>-1&&fu(f3)){return true}return f4.test(f3)}function eL(f3){for(var f4 in f3){if(f3.hasOwnProperty(f4)&&f3[f4]){return false}}return true}var eA=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\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\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\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\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\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\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;function fg(f3){return f3.charCodeAt(0)>=768&&eA.test(f3)}function fN(f3,f7,f6,f5){var f8=document.createElement(f3);if(f6){f8.className=f6}if(f5){f8.style.cssText=f5}if(typeof f7=="string"){f8.appendChild(document.createTextNode(f7))}else{if(f7){for(var f4=0;f4<f7.length;++f4){f8.appendChild(f7[f4])}}}return f8}var ck;if(document.createRange){ck=function(f5,f6,f3){var f4=document.createRange();f4.setEnd(f5,f3);f4.setStart(f5,f6);return f4}}else{ck=function(f5,f7,f3){var f4=document.body.createTextRange();try{f4.moveToElementText(f5.parentNode)}catch(f6){return f4}f4.collapse(true);f4.moveEnd("character",f3);f4.moveStart("character",f7);return f4}}function dR(f4){for(var f3=f4.childNodes.length;f3>0;--f3){f4.removeChild(f4.firstChild)}return f4}function bP(f3,f4){return dR(f3).appendChild(f4)}function fW(f3,f4){if(f3.contains){return f3.contains(f4)}while(f4=f4.parentNode){if(f4==f3){return true}}}function dE(){return document.activeElement}if(dA&&l<11){dE=function(){try{return document.activeElement}catch(f3){return document.body}}}function T(f3){return new RegExp("(^|\\s)"+f3+"(?:$|\\s)\\s*")}var f=J.rmClass=function(f5,f3){var f6=f5.className;var f4=T(f3).exec(f6);if(f4){var f7=f6.slice(f4.index+f4[0].length);f5.className=f6.slice(0,f4.index)+(f7?f4[1]+f7:"")}};var fr=J.addClass=function(f4,f3){var f5=f4.className;if(!T(f3).test(f5)){f4.className+=(f5?" ":"")+f3}};function fI(f5,f3){var f4=f5.split(" ");for(var f6=0;f6<f4.length;f6++){if(f4[f6]&&!T(f4[f6]).test(f3)){f3+=" "+f4[f6]}}return f3}function ay(f6){if(!document.body.getElementsByClassName){return}var f5=document.body.getElementsByClassName("CodeMirror");for(var f4=0;f4<f5.length;f4++){var f3=f5[f4].CodeMirror;if(f3){f6(f3)}}}var cA=false;function be(){if(cA){return}fv();cA=true}function fv(){var f3;bV(window,"resize",function(){if(f3==null){f3=setTimeout(function(){f3=null;em=null;ay(aP)},100)}});bV(window,"blur",function(){ay(aQ)})}var eC=function(){if(dA&&l<9){return false}var f3=fN("div");return"draggable" in f3||"dragDrop" in f3}();var em;function k(f3){if(em!=null){return em}var f4=fN("div",null,null,"width: 50px; height: 50px; overflow-x: scroll");bP(f3,f4);if(f4.offsetWidth){em=f4.offsetHeight-f4.clientHeight}return em||0}var fC;function bl(f3){if(fC==null){var f4=fN("span","\u200b");bP(f3,fN("span",[f4,document.createTextNode("x")]));if(f3.firstChild.offsetHeight!=0){fC=f4.offsetWidth<=1&&f4.offsetHeight>2&&!(dA&&l<8)}}if(fC){return fN("span","\u200b")}else{return fN("span","\u00a0",null,"display: inline-block; width: 1px; margin-right: -1px")}}var fB;function bM(f6){if(fB!=null){return fB}var f3=bP(f6,document.createTextNode("A\u062eA"));var f5=ck(f3,0,1).getBoundingClientRect();if(!f5||f5.left==f5.right){return false}var f4=ck(f3,1,2).getBoundingClientRect();return fB=(f4.right-f5.right<3)}var aV=J.splitLines="\n\nb".split(/\n/).length!=3?function(f8){var f9=0,f3=[],f7=f8.length;while(f9<=f7){var f6=f8.indexOf("\n",f9);if(f6==-1){f6=f8.length}var f5=f8.slice(f9,f8.charAt(f6-1)=="\r"?f6-1:f6);var f4=f5.indexOf("\r");if(f4!=-1){f3.push(f5.slice(0,f4));f9+=f4+1}else{f3.push(f5);f9=f6+1}}return f3}:function(f3){return f3.split(/\r\n?|\n/)};var bq=window.getSelection?function(f4){try{return f4.selectionStart!=f4.selectionEnd}catch(f3){return false}}:function(f5){try{var f3=f5.ownerDocument.selection.createRange()}catch(f4){}if(!f3||f3.parentElement()!=f5){return false}return f3.compareEndPoints("StartToEnd",f3)!=0};var c5=(function(){var f3=fN("div");if("oncopy" in f3){return true}f3.setAttribute("oncopy","return;");return typeof f3.oncopy=="function"})();var eW=null;function aH(f4){if(eW!=null){return eW}var f5=bP(f4,fN("span","x"));var f6=f5.getBoundingClientRect();var f3=ck(f5,0,1).getBoundingClientRect();return eW=Math.abs(f6.left-f3.left)>1}var e6={3:"Enter",8:"Backspace",9:"Tab",13:"Enter",16:"Shift",17:"Ctrl",18:"Alt",19:"Pause",20:"CapsLock",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"PrintScrn",45:"Insert",46:"Delete",59:";",61:"=",91:"Mod",92:"Mod",93:"Mod",107:"=",109:"-",127:"Delete",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",63232:"Up",63233:"Down",63234:"Left",63235:"Right",63272:"Delete",63273:"Home",63275:"End",63276:"PageUp",63277:"PageDown",63302:"Insert"};J.keyNames=e6;(function(){for(var f3=0;f3<10;f3++){e6[f3+48]=e6[f3+96]=String(f3)}for(var f3=65;f3<=90;f3++){e6[f3]=String.fromCharCode(f3)}for(var f3=1;f3<=12;f3++){e6[f3+111]=e6[f3+63235]="F"+f3}})();function dU(f3,f9,f8,f7){if(!f3){return f7(f9,f8,"ltr")}var f6=false;for(var f5=0;f5<f3.length;++f5){var f4=f3[f5];if(f4.from<f8&&f4.to>f9||f9==f8&&f4.to==f9){f7(Math.max(f4.from,f9),Math.min(f4.to,f8),f4.level==1?"rtl":"ltr");f6=true}}if(!f6){f7(f9,f8,"ltr")}}function dp(f3){return f3.level%2?f3.to:f3.from}function fZ(f3){return f3.level%2?f3.from:f3.to}function cC(f4){var f3=a(f4);return f3?dp(f3[0]):0}function cP(f4){var f3=a(f4);if(!f3){return f4.text.length}return fZ(fy(f3))}function br(f4,f7){var f5=e5(f4.doc,f7);var f8=z(f5);if(f8!=f5){f7=bL(f8)}var f3=a(f8);var f6=!f3?0:f3[0].level%2?cP(f8):cC(f8);return X(f7,f6)}function dF(f5,f8){var f4,f6=e5(f5.doc,f8);while(f4=el(f6)){f6=f4.find(1,true).line;f8=null}var f3=a(f6);var f7=!f3?f6.text.length:f3[0].level%2?cC(f6):cP(f6);return X(f8==null?bL(f6):f8,f7)}function dz(f4,f9){var f8=br(f4,f9.line);var f5=e5(f4.doc,f8.line);var f3=a(f5);if(!f3||f3[0].level==0){var f7=Math.max(0,f5.text.search(/\S/));var f6=f9.line==f8.line&&f9.ch<=f7&&f9.ch;return X(f8.line,f6?0:f7)}return f8}function am(f4,f5,f3){var f6=f4[0].level;if(f5==f6){return true}if(f3==f6){return false}return f5<f3}var eT;function aD(f3,f7){eT=null;for(var f4=0,f5;f4<f3.length;++f4){var f6=f3[f4];if(f6.from<f7&&f6.to>f7){return f4}if((f6.from==f7||f6.to==f7)){if(f5==null){f5=f4}else{if(am(f3,f6.level,f3[f5].level)){if(f6.from!=f6.to){eT=f5}return f4}else{if(f6.from!=f6.to){eT=f4}return f5}}}}return f5}function e4(f3,f6,f4,f5){if(!f5){return f6+f4}do{f6+=f4}while(f6>0&&fg(f3.text.charAt(f6)));return f6}function v(f3,ga,f5,f6){var f7=a(f3);if(!f7){return ah(f3,ga,f5,f6)}var f9=aD(f7,ga),f4=f7[f9];var f8=e4(f3,ga,f4.level%2?-f5:f5,f6);for(;;){if(f8>f4.from&&f8<f4.to){return f8}if(f8==f4.from||f8==f4.to){if(aD(f7,f8)==f9){return f8}f4=f7[f9+=f5];return(f5>0)==f4.level%2?f4.to:f4.from}else{f4=f7[f9+=f5];if(!f4){return null}if((f5>0)==f4.level%2){f8=e4(f3,f4.to,-1,f6)}else{f8=e4(f3,f4.from,1,f6)}}}}function ah(f3,f7,f4,f5){var f6=f7+f4;if(f5){while(f6>0&&fg(f3.text.charAt(f6))){f6+=f4}}return f6<0||f6>f3.text.length?null:f6}var bc=(function(){var f9="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN";var f7="rrrrrrrrrrrr,rNNmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmrrrrrrrnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmNmmmm";function f6(gd){if(gd<=247){return f9.charAt(gd)}else{if(1424<=gd&&gd<=1524){return"R"}else{if(1536<=gd&&gd<=1773){return f7.charAt(gd-1536)}else{if(1774<=gd&&gd<=2220){return"r"}else{if(8192<=gd&&gd<=8203){return"w"}else{if(gd==8204){return"b"}else{return"L"}}}}}}}var f3=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;var gc=/[stwN]/,f5=/[LRr]/,f4=/[Lb1n]/,f8=/[1n]/;var gb="L";function ga(gf,ge,gd){this.level=gf;this.from=ge;this.to=gd}return function(gn){if(!f3.test(gn)){return false}var gt=gn.length,gj=[];for(var gs=0,gf;gs<gt;++gs){gj.push(gf=f6(gn.charCodeAt(gs)))}for(var gs=0,gm=gb;gs<gt;++gs){var gf=gj[gs];if(gf=="m"){gj[gs]=gm}else{gm=gf}}for(var gs=0,gd=gb;gs<gt;++gs){var gf=gj[gs];if(gf=="1"&&gd=="r"){gj[gs]="n"}else{if(f5.test(gf)){gd=gf;if(gf=="r"){gj[gs]="R"}}}}for(var gs=1,gm=gj[0];gs<gt-1;++gs){var gf=gj[gs];if(gf=="+"&&gm=="1"&&gj[gs+1]=="1"){gj[gs]="1"}else{if(gf==","&&gm==gj[gs+1]&&(gm=="1"||gm=="n")){gj[gs]=gm}}gm=gf}for(var gs=0;gs<gt;++gs){var gf=gj[gs];if(gf==","){gj[gs]="N"}else{if(gf=="%"){for(var gg=gs+1;gg<gt&&gj[gg]=="%";++gg){}var gu=(gs&&gj[gs-1]=="!")||(gg<gt&&gj[gg]=="1")?"1":"N";for(var gq=gs;gq<gg;++gq){gj[gq]=gu}gs=gg-1}}}for(var gs=0,gd=gb;gs<gt;++gs){var gf=gj[gs];if(gd=="L"&&gf=="1"){gj[gs]="L"}else{if(f5.test(gf)){gd=gf}}}for(var gs=0;gs<gt;++gs){if(gc.test(gj[gs])){for(var gg=gs+1;gg<gt&&gc.test(gj[gg]);++gg){}var gk=(gs?gj[gs-1]:gb)=="L";var ge=(gg<gt?gj[gg]:gb)=="L";var gu=gk||ge?"L":"R";for(var gq=gs;gq<gg;++gq){gj[gq]=gu}gs=gg-1}}var gr=[],go;for(var gs=0;gs<gt;){if(f4.test(gj[gs])){var gh=gs;for(++gs;gs<gt&&f4.test(gj[gs]);++gs){}gr.push(new ga(0,gh,gs))}else{var gi=gs,gl=gr.length;for(++gs;gs<gt&&gj[gs]!="L";++gs){}for(var gq=gi;gq<gs;){if(f8.test(gj[gq])){if(gi<gq){gr.splice(gl,0,new ga(1,gi,gq))}var gp=gq;for(++gq;gq<gs&&f8.test(gj[gq]);++gq){}gr.splice(gl,0,new ga(2,gp,gq));gi=gq}else{++gq}}if(gi<gs){gr.splice(gl,0,new ga(1,gi,gs))}}}if(gr[0].level==1&&(go=gn.match(/^\s+/))){gr[0].from=go[0].length;gr.unshift(new ga(0,0,go[0].length))}if(fy(gr).level==1&&(go=gn.match(/\s+$/))){fy(gr).to-=go[0].length;gr.push(new ga(0,gt-go[0].length,gt))}if(gr[0].level!=fy(gr).level){gr.push(new ga(gr[0].level,gt,gt))}return gr}})();J.version="4.8.0";return J});
@@ -1 +1 @@
1
- (function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("xml",function(y,k){var p=y.indentUnit;var x=k.multilineTagIndentFactor||1;var d=k.multilineTagIndentPastTag;if(d==null){d=true}var w=k.htmlMode?{autoSelfClosers:{area:true,base:true,br:true,col:true,command:true,embed:true,frame:true,hr:true,img:true,input:true,keygen:true,link:true,meta:true,param:true,source:true,track:true,wbr:true},implicitlyClosed:{dd:true,li:true,optgroup:true,option:true,p:true,rp:true,rt:true,tbody:true,td:true,tfoot:true,th:true,tr:true},contextGrabbers:{dd:{dd:true,dt:true},dt:{dd:true,dt:true},li:{li:true},option:{option:true,optgroup:true},optgroup:{optgroup:true},p:{address:true,article:true,aside:true,blockquote:true,dir:true,div:true,dl:true,fieldset:true,footer:true,form:true,h1:true,h2:true,h3:true,h4:true,h5:true,h6:true,header:true,hgroup:true,hr:true,menu:true,nav:true,ol:true,p:true,pre:true,section:true,table:true,ul:true},rp:{rp:true,rt:true},rt:{rp:true,rt:true},tbody:{tbody:true,tfoot:true},td:{td:true,th:true},tfoot:{tbody:true},th:{td:true,th:true},thead:{tbody:true,tfoot:true},tr:{tr:true}},doNotIndent:{pre:true},allowUnquoted:true,allowMissing:true,caseFold:true}:{autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:false,allowMissing:false,caseFold:false};var c=k.alignCDATA;var f,g;function n(F,E){function C(G){E.tokenize=G;return G(F,E)}var D=F.next();if(D=="<"){if(F.eat("!")){if(F.eat("[")){if(F.match("CDATA[")){return C(v("atom","]]>"))}else{return null}}else{if(F.match("--")){return C(v("comment","-->"))}else{if(F.match("DOCTYPE",true,true)){F.eatWhile(/[\w\._\-]/);return C(z(1))}else{return null}}}}else{if(F.eat("?")){F.eatWhile(/[\w\._\-]/);E.tokenize=v("meta","?>");return"meta"}else{f=F.eat("/")?"closeTag":"openTag";E.tokenize=m;return"tag bracket"}}}else{if(D=="&"){var B;if(F.eat("#")){if(F.eat("x")){B=F.eatWhile(/[a-fA-F\d]/)&&F.eat(";")}else{B=F.eatWhile(/[\d]/)&&F.eat(";")}}else{B=F.eatWhile(/[\w\.\-:]/)&&F.eat(";")}return B?"atom":"error"}else{F.eatWhile(/[^&<]/);return null}}}function m(E,D){var C=E.next();if(C==">"||(C=="/"&&E.eat(">"))){D.tokenize=n;f=C==">"?"endTag":"selfcloseTag";return"tag bracket"}else{if(C=="="){f="equals";return null}else{if(C=="<"){D.tokenize=n;D.state=l;D.tagName=D.tagStart=null;var B=D.tokenize(E,D);return B?B+" tag error":"tag error"}else{if(/[\'\"]/.test(C)){D.tokenize=j(C);D.stringStartCol=E.column();return D.tokenize(E,D)}else{E.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/);return"word"}}}}}function j(B){var C=function(E,D){while(!E.eol()){if(E.next()==B){D.tokenize=m;break}}return"string"};C.isInAttribute=true;return C}function v(C,B){return function(E,D){while(!E.eol()){if(E.match(B)){D.tokenize=n;break}E.next()}return C}}function z(B){return function(E,D){var C;while((C=E.next())!=null){if(C=="<"){D.tokenize=z(B+1);return D.tokenize(E,D)}else{if(C==">"){if(B==1){D.tokenize=n;break}else{D.tokenize=z(B-1);return D.tokenize(E,D)}}}}return"meta"}}function r(C,B,D){this.prev=C.context;this.tagName=B;this.indent=C.indented;this.startOfLine=D;if(w.doNotIndent.hasOwnProperty(B)||(C.context&&C.context.noIndent)){this.noIndent=true}}function u(B){if(B.context){B.context=B.context.prev}}function q(D,C){var B;while(true){if(!D.context){return}B=D.context.tagName;if(!w.contextGrabbers.hasOwnProperty(B)||!w.contextGrabbers[B].hasOwnProperty(C)){return}u(D)}}function l(B,D,C){if(B=="openTag"){C.tagStart=D.column();return b}else{if(B=="closeTag"){return t}else{return l}}}function b(B,D,C){if(B=="word"){C.tagName=D.current();g="tag";return e}else{g="error";return b}}function t(C,E,D){if(C=="word"){var B=E.current();if(D.context&&D.context.tagName!=B&&w.implicitlyClosed.hasOwnProperty(D.context.tagName)){u(D)}if(D.context&&D.context.tagName==B){g="tag";return s}else{g="tag error";return A}}else{g="error";return A}}function s(C,B,D){if(C!="endTag"){g="error";return s}u(D);return l}function A(B,D,C){g="error";return s(B,D,C)}function e(E,C,F){if(E=="word"){g="attribute";return i}else{if(E=="endTag"||E=="selfcloseTag"){var D=F.tagName,B=F.tagStart;F.tagName=F.tagStart=null;if(E=="selfcloseTag"||w.autoSelfClosers.hasOwnProperty(D)){q(F,D)}else{q(F,D);F.context=new r(F,D,B==F.indented)}return l}}g="error";return e}function i(B,D,C){if(B=="equals"){return o}if(!w.allowMissing){g="error"}return e(B,D,C)}function o(B,D,C){if(B=="string"){return h}if(B=="word"&&w.allowUnquoted){g="string";return e}g="error";return e(B,D,C)}function h(B,D,C){if(B=="string"){return h}return e(B,D,C)}return{startState:function(){return{tokenize:n,state:l,indented:0,tagName:null,tagStart:null,context:null}},token:function(D,C){if(!C.tagName&&D.sol()){C.indented=D.indentation()}if(D.eatSpace()){return null}f=null;var B=C.tokenize(D,C);if((B||f)&&B!="comment"){g=null;C.state=C.state(f||B,D,C);if(g){B=g=="error"?B+" error":g}}return B},indent:function(G,C,F){var E=G.context;if(G.tokenize.isInAttribute){if(G.tagStart==G.indented){return G.stringStartCol+1}else{return G.indented+p}}if(E&&E.noIndent){return a.Pass}if(G.tokenize!=m&&G.tokenize!=n){return F?F.match(/^(\s*)/)[0].length:0}if(G.tagName){if(d){return G.tagStart+G.tagName.length+2}else{return G.tagStart+p*x}}if(c&&/<!\[CDATA\[/.test(C)){return 0}var B=C&&/^<(\/)?([\w_:\.-]*)/.exec(C);if(B&&B[1]){while(E){if(E.tagName==B[2]){E=E.prev;break}else{if(w.implicitlyClosed.hasOwnProperty(E.tagName)){E=E.prev}else{break}}}}else{if(B){while(E){var D=w.contextGrabbers[E.tagName];if(D&&D.hasOwnProperty(B[2])){E=E.prev}else{break}}}}while(E&&!E.startOfLine){E=E.prev}if(E){return E.indent+p}else{return 0}},electricInput:/<\/[\s\w:]+>$/,blockCommentStart:"<!--",blockCommentEnd:"-->",configuration:k.htmlMode?"html":"xml",helperType:k.htmlMode?"html":"xml"}});a.defineMIME("text/xml","xml");a.defineMIME("application/xml","xml");if(!a.mimeModes.hasOwnProperty("text/html")){a.defineMIME("text/html",{name:"xml",htmlMode:true})}});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("javascript",function(X,ah){var j=X.indentUnit;var x=ah.statementIndent;var aw=ah.jsonld;var w=ah.json||aw;var f=ah.typescript;var ao=function(){function aM(aO){return{type:aO,style:"keyword"}}var aH=aM("keyword a"),aF=aM("keyword b"),aE=aM("keyword c");var aG=aM("operator"),aK={type:"atom",style:"atom"};var aI={"if":aM("if"),"while":aH,"with":aH,"else":aF,"do":aF,"try":aF,"finally":aF,"return":aE,"break":aE,"continue":aE,"new":aE,"delete":aE,"throw":aE,"debugger":aE,"var":aM("var"),"const":aM("var"),let:aM("var"),"function":aM("function"),"catch":aM("catch"),"for":aM("for"),"switch":aM("switch"),"case":aM("case"),"default":aM("default"),"in":aG,"typeof":aG,"instanceof":aG,"true":aK,"false":aK,"null":aK,"undefined":aK,"NaN":aK,"Infinity":aK,"this":aM("this"),module:aM("module"),"class":aM("class"),"super":aM("atom"),yield:aE,"export":aM("export"),"import":aM("import"),"extends":aE};if(f){var aN={type:"variable",style:"variable-3"};var aJ={"interface":aM("interface"),"extends":aM("extends"),constructor:aM("constructor"),"public":aM("public"),"private":aM("private"),"protected":aM("protected"),"static":aM("static"),string:aN,number:aN,bool:aN,any:aN};for(var aL in aJ){aI[aL]=aJ[aL]}}return aI}();var M=/[+\-*&%=<>!?|~^]/;var an=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function C(aH){var aF=false,aE,aG=false;while((aE=aH.next())!=null){if(!aF){if(aE=="/"&&!aG){return}if(aE=="["){aG=true}else{if(aG&&aE=="]"){aG=false}}}aF=!aF&&aE=="\\"}}var P,D;function I(aG,aF,aE){P=aG;D=aE;return aF}function R(aI,aG){var aE=aI.next();if(aE=='"'||aE=="'"){aG.tokenize=O(aE);return aG.tokenize(aI,aG)}else{if(aE=="."&&aI.match(/^\d+(?:[eE][+\-]?\d+)?/)){return I("number","number")}else{if(aE=="."&&aI.match("..")){return I("spread","meta")}else{if(/[\[\]{}\(\),;\:\.]/.test(aE)){return I(aE)}else{if(aE=="="&&aI.eat(">")){return I("=>","operator")}else{if(aE=="0"&&aI.eat(/x/i)){aI.eatWhile(/[\da-f]/i);return I("number","number")}else{if(/\d/.test(aE)){aI.match(/^\d*(?:\.\d*)?(?:[eE][+\-]?\d+)?/);return I("number","number")}else{if(aE=="/"){if(aI.eat("*")){aG.tokenize=av;return av(aI,aG)}else{if(aI.eat("/")){aI.skipToEnd();return I("comment","comment")}else{if(aG.lastType=="operator"||aG.lastType=="keyword c"||aG.lastType=="sof"||/^[\[{}\(,;:]$/.test(aG.lastType)){C(aI);aI.eatWhile(/[gimy]/);return I("regexp","string-2")}else{aI.eatWhile(M);return I("operator","operator",aI.current())}}}}else{if(aE=="`"){aG.tokenize=ax;return ax(aI,aG)}else{if(aE=="#"){aI.skipToEnd();return I("error","error")}else{if(M.test(aE)){aI.eatWhile(M);return I("operator","operator",aI.current())}else{aI.eatWhile(/[\w\$_]/);var aH=aI.current(),aF=ao.propertyIsEnumerable(aH)&&ao[aH];return(aF&&aG.lastType!=".")?I(aF.type,aF.style,aH):I("variable","variable",aH)}}}}}}}}}}}}function O(aE){return function(aI,aG){var aH=false,aF;if(aw&&aI.peek()=="@"&&aI.match(an)){aG.tokenize=R;return I("jsonld-keyword","meta")}while((aF=aI.next())!=null){if(aF==aE&&!aH){break}aH=!aH&&aF=="\\"}if(!aH){aG.tokenize=R}return I("string","string")}}function av(aH,aG){var aE=false,aF;while(aF=aH.next()){if(aF=="/"&&aE){aG.tokenize=R;break}aE=(aF=="*")}return I("comment","comment")}function ax(aH,aF){var aG=false,aE;while((aE=aH.next())!=null){if(!aG&&(aE=="`"||aE=="$"&&aH.eat("{"))){aF.tokenize=R;break}aG=!aG&&aE=="\\"}return I("quasi","string-2",aH.current())}var k="([{}])";function ar(aK,aH){if(aH.fatArrowAt){aH.fatArrowAt=null}var aG=aK.string.indexOf("=>",aK.start);if(aG<0){return}var aJ=0,aF=false;for(var aL=aG-1;aL>=0;--aL){var aE=aK.string.charAt(aL);var aI=k.indexOf(aE);if(aI>=0&&aI<3){if(!aJ){++aL;break}if(--aJ==0){break}}else{if(aI>=3&&aI<6){++aJ}else{if(/[$\w]/.test(aE)){aF=true}else{if(aF&&!aJ){++aL;break}}}}}if(aF&&!aJ){aH.fatArrowAt=aL}}var b={atom:true,number:true,variable:true,string:true,regexp:true,"this":true,"jsonld-keyword":true};function G(aJ,aF,aE,aI,aG,aH){this.indented=aJ;this.column=aF;this.type=aE;this.prev=aG;this.info=aH;if(aI!=null){this.align=aI}}function p(aH,aG){for(var aF=aH.localVars;aF;aF=aF.next){if(aF.name==aG){return true}}for(var aE=aH.context;aE;aE=aE.prev){for(var aF=aE.vars;aF;aF=aF.next){if(aF.name==aG){return true}}}}function e(aI,aF,aE,aH,aJ){var aK=aI.cc;A.state=aI;A.stream=aJ;A.marked=null,A.cc=aK;if(!aI.lexical.hasOwnProperty("align")){aI.lexical.align=true}while(true){var aG=aK.length?aK.pop():w?al:aC;if(aG(aE,aH)){while(aK.length&&aK[aK.length-1].lex){aK.pop()()}if(A.marked){return A.marked}if(aE=="variable"&&p(aI,aH)){return"variable-2"}return aF}}}var A={state:null,column:null,marked:null,cc:null};function Y(){for(var aE=arguments.length-1;aE>=0;aE--){A.cc.push(arguments[aE])}}function ac(){Y.apply(null,arguments);return true}function aq(aF){function aE(aI){for(var aH=aI;aH;aH=aH.next){if(aH.name==aF){return true}}return false}var aG=A.state;if(aG.context){A.marked="def";if(aE(aG.localVars)){return}aG.localVars={name:aF,next:aG.localVars}}else{if(aE(aG.globalVars)){return}if(ah.globalVars){aG.globalVars={name:aF,next:aG.globalVars}}}}var n={name:"this",next:{name:"arguments"}};function t(){A.state.context={prev:A.state.context,vars:A.state.localVars};A.state.localVars=n}function u(){A.state.localVars=A.state.context.vars;A.state.context=A.state.context.prev}function aA(aF,aG){var aE=function(){var aI=A.state,aH=aI.indented;if(aI.lexical.type=="stat"){aH=aI.lexical.indented}aI.lexical=new G(aH,A.stream.column(),aF,null,aI.lexical,aG)};aE.lex=true;return aE}function g(){var aE=A.state;if(aE.lexical.prev){if(aE.lexical.type==")"){aE.indented=aE.lexical.indented}aE.lexical=aE.lexical.prev}}g.lex=true;function o(aE){function aF(aG){if(aG==aE){return ac()}else{if(aE==";"){return Y()}else{return ac(aF)}}}return aF}function aC(aE,aF){if(aE=="var"){return ac(aA("vardef",aF.length),c,o(";"),g)}if(aE=="keyword a"){return ac(aA("form"),al,aC,g)}if(aE=="keyword b"){return ac(aA("form"),aC,g)}if(aE=="{"){return ac(aA("}"),v,g)}if(aE==";"){return ac()}if(aE=="if"){if(A.state.lexical.info=="else"&&A.state.cc[A.state.cc.length-1]==g){A.state.cc.pop()()}return ac(aA("form"),al,aC,g,d)}if(aE=="function"){return ac(J)}if(aE=="for"){return ac(aA("form"),r,aC,g)}if(aE=="variable"){return ac(aA("stat"),aD)}if(aE=="switch"){return ac(aA("form"),al,aA("}","switch"),o("{"),v,g,g)}if(aE=="case"){return ac(al,o(":"))}if(aE=="default"){return ac(o(":"))}if(aE=="catch"){return ac(aA("form"),t,o("("),ad,o(")"),aC,g,u)}if(aE=="module"){return ac(aA("form"),t,E,u,g)}if(aE=="class"){return ac(aA("form"),T,S,g)}if(aE=="export"){return ac(aA("form"),aB,g)}if(aE=="import"){return ac(aA("form"),ae,g)}return Y(aA("stat"),al,o(";"),g)}function al(aE){return W(aE,false)}function az(aE){return W(aE,true)}function W(aF,aH){if(A.state.fatArrowAt==A.stream.start){var aE=aH?K:U;if(aF=="("){return ac(t,aA(")"),ap(h,")"),g,o("=>"),aE,u)}else{if(aF=="variable"){return Y(t,h,o("=>"),aE,u)}}}var aG=aH?i:Z;if(b.hasOwnProperty(aF)){return ac(aG)}if(aF=="function"){return ac(J,aG)}if(aF=="keyword c"){return ac(aH?ai:ag)}if(aF=="("){return ac(aA(")"),ag,au,o(")"),g,aG)}if(aF=="operator"||aF=="spread"){return ac(aH?az:al)}if(aF=="["){return ac(aA("]"),l,g,aG)}if(aF=="{"){return at(q,"}",null,aG)}if(aF=="quasi"){return Y(N,aG)}return ac()}function ag(aE){if(aE.match(/[;\}\)\],]/)){return Y()}return Y(al)}function ai(aE){if(aE.match(/[;\}\)\],]/)){return Y()}return Y(az)}function Z(aE,aF){if(aE==","){return ac(al)}return i(aE,aF,false)}function i(aE,aG,aI){var aF=aI==false?Z:i;var aH=aI==false?al:az;if(aG=="=>"){return ac(t,aI?K:U,u)}if(aE=="operator"){if(/\+\+|--/.test(aG)){return ac(aF)}if(aG=="?"){return ac(al,o(":"),aH)}return ac(aH)}if(aE=="quasi"){return Y(N,aF)}if(aE==";"){return}if(aE=="("){return at(az,")","call",aF)}if(aE=="."){return ac(aj,aF)}if(aE=="["){return ac(aA("]"),ag,o("]"),g,aF)}}function N(aE,aF){if(aE!="quasi"){return Y()}if(aF.slice(aF.length-2)!="${"){return ac(N)}return ac(al,m)}function m(aE){if(aE=="}"){A.marked="string-2";A.state.tokenize=ax;return ac(N)}}function U(aE){ar(A.stream,A.state);if(aE=="{"){return Y(aC)}return Y(al)}function K(aE){ar(A.stream,A.state);if(aE=="{"){return Y(aC)}return Y(az)}function aD(aE){if(aE==":"){return ac(g,aC)}return Y(Z,o(";"),g)}function aj(aE){if(aE=="variable"){A.marked="property";return ac()}}function q(aE,aF){if(aE=="variable"){A.marked="property";if(aF=="get"||aF=="set"){return ac(F)}}else{if(aE=="number"||aE=="string"){A.marked=aw?"property":(aE+" property")}else{if(aE=="["){return ac(al,o("]"),H)}}}if(b.hasOwnProperty(aE)){return ac(H)}}function F(aE){if(aE!="variable"){return Y(H)}A.marked="property";return ac(J)}function H(aE){if(aE==":"){return ac(az)}if(aE=="("){return Y(J)}}function ap(aG,aE){function aF(aI){if(aI==","){var aH=A.state.lexical;if(aH.info=="call"){aH.pos=(aH.pos||0)+1}return ac(aG,aF)}if(aI==aE){return ac()}return ac(o(aE))}return function(aH){if(aH==aE){return ac()}return Y(aG,aF)}}function at(aH,aE,aG){for(var aF=3;aF<arguments.length;aF++){A.cc.push(arguments[aF])}return ac(aA(aE,aG),ap(aH,aE),g)}function v(aE){if(aE=="}"){return ac()}return Y(aC,v)}function Q(aE){if(f&&aE==":"){return ac(ab)}}function ab(aE){if(aE=="variable"){A.marked="variable-3";return ac()}}function c(){return Y(h,Q,aa,V)}function h(aE,aF){if(aE=="variable"){aq(aF);return ac()}if(aE=="["){return at(h,"]")}if(aE=="{"){return at(ay,"}")}}function ay(aE,aF){if(aE=="variable"&&!A.stream.match(/^\s*:/,false)){aq(aF);return ac(aa)}if(aE=="variable"){A.marked="property"}return ac(o(":"),h,aa)}function aa(aE,aF){if(aF=="="){return ac(az)}}function V(aE){if(aE==","){return ac(c)}}function d(aE,aF){if(aE=="keyword b"&&aF=="else"){return ac(aA("form","else"),aC,g)}}function r(aE){if(aE=="("){return ac(aA(")"),B,o(")"),g)}}function B(aE){if(aE=="var"){return ac(c,o(";"),z)}if(aE==";"){return ac(z)}if(aE=="variable"){return ac(s)}return Y(al,o(";"),z)}function s(aE,aF){if(aF=="in"||aF=="of"){A.marked="keyword";return ac(al)}return ac(Z,z)}function z(aE,aF){if(aE==";"){return ac(y)}if(aF=="in"||aF=="of"){A.marked="keyword";return ac(al)}return Y(al,o(";"),y)}function y(aE){if(aE!=")"){ac(al)}}function J(aE,aF){if(aF=="*"){A.marked="keyword";return ac(J)}if(aE=="variable"){aq(aF);return ac(J)}if(aE=="("){return ac(t,aA(")"),ap(ad,")"),g,aC,u)}}function ad(aE){if(aE=="spread"){return ac(ad)}return Y(h,Q)}function T(aE,aF){if(aE=="variable"){aq(aF);return ac(L)}}function L(aE,aF){if(aF=="extends"){return ac(al)}}function S(aE){if(aE=="{"){return at(q,"}")}}function E(aE,aF){if(aE=="string"){return ac(aC)}if(aE=="variable"){aq(aF);return ac(af)}}function aB(aE,aF){if(aF=="*"){A.marked="keyword";return ac(af,o(";"))}if(aF=="default"){A.marked="keyword";return ac(al,o(";"))}return Y(aC)}function ae(aE){if(aE=="string"){return ac()}return Y(am,af)}function am(aE,aF){if(aE=="{"){return at(am,"}")}if(aE=="variable"){aq(aF)}return ac()}function af(aE,aF){if(aF=="from"){A.marked="keyword";return ac(al)}}function l(aE){if(aE=="]"){return ac()}return Y(az,ak)}function ak(aE){if(aE=="for"){return Y(au,o("]"))}if(aE==","){return ac(ap(az,"]"))}return Y(ap(az,"]"))}function au(aE){if(aE=="for"){return ac(r,au)}if(aE=="if"){return ac(al,au)}}return{startState:function(aF){var aE={tokenize:R,lastType:"sof",cc:[],lexical:new G((aF||0)-j,0,"block",false),localVars:ah.localVars,context:ah.localVars&&{vars:ah.localVars},indented:0};if(ah.globalVars&&typeof ah.globalVars=="object"){aE.globalVars=ah.globalVars}return aE},token:function(aG,aF){if(aG.sol()){if(!aF.lexical.hasOwnProperty("align")){aF.lexical.align=false}aF.indented=aG.indentation();ar(aG,aF)}if(aF.tokenize!=av&&aG.eatSpace()){return null}var aE=aF.tokenize(aG,aF);if(P=="comment"){return aE}aF.lastType=P=="operator"&&(D=="++"||D=="--")?"incdec":P;return e(aF,aE,P,D,aG)},indent:function(aK,aE){if(aK.tokenize==av){return a.Pass}if(aK.tokenize!=R){return 0}var aJ=aE&&aE.charAt(0),aH=aK.lexical;if(!/^\s*else\b/.test(aE)){for(var aG=aK.cc.length-1;aG>=0;--aG){var aL=aK.cc[aG];if(aL==g){aH=aH.prev}else{if(aL!=d){break}}}}if(aH.type=="stat"&&aJ=="}"){aH=aH.prev}if(x&&aH.type==")"&&aH.prev.type=="stat"){aH=aH.prev}var aI=aH.type,aF=aJ==aI;if(aI=="vardef"){return aH.indented+(aK.lastType=="operator"||aK.lastType==","?aH.info+1:0)}else{if(aI=="form"&&aJ=="{"){return aH.indented}else{if(aI=="form"){return aH.indented+j}else{if(aI=="stat"){return aH.indented+(aK.lastType=="operator"||aK.lastType==","?x||j:0)}else{if(aH.info=="switch"&&!aF&&ah.doubleIndentSwitch!=false){return aH.indented+(/^(?:case|default)\b/.test(aE)?j:2*j)}else{if(aH.align){return aH.column+(aF?0:1)}else{return aH.indented+(aF?0:j)}}}}}}},electricChars:":{}",blockCommentStart:w?null:"/*",blockCommentEnd:w?null:"*/",lineComment:w?null:"//",fold:"brace",helperType:w?"json":"javascript",jsonldMode:aw,jsonMode:w}});a.registerHelper("wordChars","javascript",/[\\w$]/);a.defineMIME("text/javascript","javascript");a.defineMIME("text/ecmascript","javascript");a.defineMIME("application/javascript","javascript");a.defineMIME("application/ecmascript","javascript");a.defineMIME("application/json",{name:"javascript",json:true});a.defineMIME("application/x-json",{name:"javascript",json:true});a.defineMIME("application/ld+json",{name:"javascript",jsonld:true});a.defineMIME("text/typescript",{name:"javascript",typescript:true});a.defineMIME("application/typescript",{name:"javascript",typescript:true})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(m){m.defineMode("css",function(N,B){if(!B.propertyKeywords){B=m.resolveMode("text/css")}var H=N.indentUnit,t=B.tokenHooks,M=B.mediaTypes||{},D=B.mediaFeatures||{},A=B.propertyKeywords||{},u=B.nonStandardPropertyKeywords||{},G=B.colorKeywords||{},J=B.valueKeywords||{},w=B.fontProperties||{},E=B.allowNested;var v,F;function O(R,S){v=S;return R}function Q(U,T){var S=U.next();if(t[S]){var R=t[S](U,T);if(R!==false){return R}}if(S=="@"){U.eatWhile(/[\w\\\-]/);return O("def",U.current())}else{if(S=="="||(S=="~"||S=="|")&&U.eat("=")){return O(null,"compare")}else{if(S=='"'||S=="'"){T.tokenize=C(S);return T.tokenize(U,T)}else{if(S=="#"){U.eatWhile(/[\w\\\-]/);return O("atom","hash")}else{if(S=="!"){U.match(/^\s*\w*/);return O("keyword","important")}else{if(/\d/.test(S)||S=="."&&U.eat(/\d/)){U.eatWhile(/[\w.%]/);return O("number","unit")}else{if(S==="-"){if(/[\d.]/.test(U.peek())){U.eatWhile(/[\w.%]/);return O("number","unit")}else{if(U.match(/^\w+-/)){return O("meta","meta")}}}else{if(/[,+>*\/]/.test(S)){return O(null,"select-op")}else{if(S=="."&&U.match(/^-?[_a-z][_a-z0-9-]*/i)){return O("qualifier","qualifier")}else{if(/[:;{}\[\]\(\)]/.test(S)){return O(null,S)}else{if(S=="u"&&U.match("rl(")){U.backUp(1);T.tokenize=P;return O("property","word")}else{if(/[\w\\\-]/.test(S)){U.eatWhile(/[\w\\\-]/);return O("property","word")}else{return O(null,null)}}}}}}}}}}}}}function C(R){return function(V,T){var U=false,S;while((S=V.next())!=null){if(S==R&&!U){if(R==")"){V.backUp(1)}break}U=!U&&S=="\\"}if(S==R||!U&&R!=")"){T.tokenize=null}return O("string","string")}}function P(S,R){S.next();if(!S.match(/\s*[\"\')]/,false)){R.tokenize=C(")")}else{R.tokenize=null}return O(null,"(")}function I(S,R,T){this.type=S;this.indent=R;this.prev=T}function y(S,T,R){S.context=new I(R,T.indentation()+H,S.context);return R}function K(R){R.context=R.context.prev;return R.context.type}function s(R,T,S){return x[S.context.type](R,T,S)}function L(S,U,T,V){for(var R=V||1;R>0;R--){T.context=T.context.prev}return s(S,U,T)}function z(S){var R=S.current().toLowerCase();if(J.hasOwnProperty(R)){F="atom"}else{if(G.hasOwnProperty(R)){F="keyword"}else{F="variable"}}}var x={};x.top=function(R,T,S){if(R=="{"){return y(S,T,"block")}else{if(R=="}"&&S.context.prev){return K(S)}else{if(R=="@media"){return y(S,T,"media")}else{if(R=="@font-face"){return"font_face_before"}else{if(/^@(-(moz|ms|o|webkit)-)?keyframes$/.test(R)){return"keyframes"}else{if(R&&R.charAt(0)=="@"){return y(S,T,"at")}else{if(R=="hash"){F="builtin"}else{if(R=="word"){F="tag"}else{if(R=="variable-definition"){return"maybeprop"}else{if(R=="interpolation"){return y(S,T,"interpolation")}else{if(R==":"){return"pseudo"}else{if(E&&R=="("){return y(S,T,"parens")}}}}}}}}}}}}return S.context.type};x.block=function(R,U,S){if(R=="word"){var T=U.current().toLowerCase();if(A.hasOwnProperty(T)){F="property";return"maybeprop"}else{if(u.hasOwnProperty(T)){F="string-2";return"maybeprop"}else{if(E){F=U.match(/^\s*:/,false)?"property":"tag";return"block"}else{F+=" error";return"maybeprop"}}}}else{if(R=="meta"){return"block"}else{if(!E&&(R=="hash"||R=="qualifier")){F="error";return"block"}else{return x.top(R,U,S)}}}};x.maybeprop=function(R,T,S){if(R==":"){return y(S,T,"prop")}return s(R,T,S)};x.prop=function(R,T,S){if(R==";"){return K(S)}if(R=="{"&&E){return y(S,T,"propBlock")}if(R=="}"||R=="{"){return L(R,T,S)}if(R=="("){return y(S,T,"parens")}if(R=="hash"&&!/^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/.test(T.current())){F+=" error"}else{if(R=="word"){z(T)}else{if(R=="interpolation"){return y(S,T,"interpolation")}}}return"prop"};x.propBlock=function(S,R,T){if(S=="}"){return K(T)}if(S=="word"){F="property";return"maybeprop"}return T.context.type};x.parens=function(R,T,S){if(R=="{"||R=="}"){return L(R,T,S)}if(R==")"){return K(S)}if(R=="("){return y(S,T,"parens")}if(R=="word"){z(T)}return"parens"};x.pseudo=function(R,T,S){if(R=="word"){F="variable-3";return S.context.type}return s(R,T,S)};x.media=function(R,U,S){if(R=="("){return y(S,U,"media_parens")}if(R=="}"){return L(R,U,S)}if(R=="{"){return K(S)&&y(S,U,E?"block":"top")}if(R=="word"){var T=U.current().toLowerCase();if(T=="only"||T=="not"||T=="and"){F="keyword"}else{if(M.hasOwnProperty(T)){F="attribute"}else{if(D.hasOwnProperty(T)){F="property"}else{F="error"}}}}return S.context.type};x.media_parens=function(R,T,S){if(R==")"){return K(S)}if(R=="{"||R=="}"){return L(R,T,S,2)}return x.media(R,T,S)};x.font_face_before=function(R,T,S){if(R=="{"){return y(S,T,"font_face")}return s(R,T,S)};x.font_face=function(R,T,S){if(R=="}"){return K(S)}if(R=="word"){if(!w.hasOwnProperty(T.current().toLowerCase())){F="error"}else{F="property"}return"maybeprop"}return"font_face"};x.keyframes=function(R,T,S){if(R=="word"){F="variable";return"keyframes"}if(R=="{"){return y(S,T,"top")}return s(R,T,S)};x.at=function(R,T,S){if(R==";"){return K(S)}if(R=="{"||R=="}"){return L(R,T,S)}if(R=="word"){F="tag"}else{if(R=="hash"){F="builtin"}}return"at"};x.interpolation=function(R,T,S){if(R=="}"){return K(S)}if(R=="{"||R==";"){return L(R,T,S)}if(R!="variable"){F="error"}return"interpolation"};return{startState:function(R){return{tokenize:null,state:"top",context:new I("top",R||0,null)}},token:function(T,S){if(!S.tokenize&&T.eatSpace()){return null}var R=(S.tokenize||Q)(T,S);if(R&&typeof R=="object"){v=R[1];R=R[0]}F=R;S.state=x[S.state](v,T,S);return F},indent:function(V,T){var S=V.context,U=T&&T.charAt(0);var R=S.indent;if(S.type=="prop"&&(U=="}"||U==")")){S=S.prev}if(S.prev&&(U=="}"&&(S.type=="block"||S.type=="top"||S.type=="interpolation"||S.type=="font_face")||U==")"&&(S.type=="parens"||S.type=="media_parens")||U=="{"&&(S.type=="at"||S.type=="media"))){R=S.indent-H;S=S.prev}return R},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",fold:"brace"}});function f(u){var t={};for(var s=0;s<u.length;++s){t[u[s]]=true}return t}var a=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],p=f(a);var r=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid"],i=f(r);var c=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","baseline-shift","binding","bleed","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-feature-settings","font-family","font-kerning","font-language-override","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-weight","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-position","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","justify-content","left","letter-spacing","line-break","line-height","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marker-offset","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","max-height","max-width","min-height","min-width","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotation","rotation-point","ruby-align","ruby-overhang","ruby-position","ruby-span","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-outline","text-overflow","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","word-break","word-spacing","word-wrap","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode"],h=f(c);var d=["scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-3d-light-color","scrollbar-track-color","shape-inside","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","zoom"],d=f(d);var b=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],k=f(b);var j=["above","absolute","activeborder","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","auto","avoid","avoid-column","avoid-page","avoid-region","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","column","compact","condensed","contain","content","content-box","context-menu","continuous","copy","cover","crop","cross","crosshair","currentcolor","cursive","dashed","decimal","decimal-leading-zero","default","default-button","destination-atop","destination-in","destination-out","destination-over","devanagari","disc","discard","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ew-resize","expanded","extra-condensed","extra-expanded","fantasy","fast","fill","fixed","flat","footnotes","forwards","from","geometricPrecision","georgian","graytext","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-table","inset","inside","intrinsic","invert","italic","justify","kannada","katakana","katakana-iroha","keep-all","khmer","landscape","lao","large","larger","left","level","lighter","line-through","linear","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","malayalam","match","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","nw-resize","nwse-resize","oblique","octal","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","round","row-resize","rtl","run-in","running","s-resize","sans-serif","scroll","scrollbar","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","semi-condensed","semi-expanded","separate","serif","show","sidama","single","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","solid","somali","source-atop","source-in","source-out","source-over","space","square","square-button","start","static","status-bar","stretch","stroke","sub","subpixel-antialiased","super","sw-resize","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","transparent","ultra-condensed","ultra-expanded","underline","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","vertical","vertical-text","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","x-large","x-small","xor","xx-large","xx-small"],n=f(j);var o=["font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"],e=f(o);var l=a.concat(r).concat(c).concat(d).concat(b).concat(j);m.registerHelper("hintWords","css",l);function q(v,u){var s=false,t;while((t=v.next())!=null){if(s&&t=="/"){u.tokenize=null;break}s=(t=="*")}return["comment","comment"]}function g(t,s){if(t.skipTo("-->")){t.match("-->");s.tokenize=null}else{t.skipToEnd()}return["comment","comment"]}m.defineMIME("text/css",{mediaTypes:p,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:d,colorKeywords:k,valueKeywords:n,fontProperties:e,tokenHooks:{"<":function(t,s){if(!t.match("!--")){return false}s.tokenize=g;return g(t,s)},"/":function(t,s){if(!t.eat("*")){return false}s.tokenize=q;return q(t,s)}},name:"css"});m.defineMIME("text/x-scss",{mediaTypes:p,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:d,colorKeywords:k,valueKeywords:n,fontProperties:e,allowNested:true,tokenHooks:{"/":function(t,s){if(t.eat("/")){t.skipToEnd();return["comment","comment"]}else{if(t.eat("*")){s.tokenize=q;return q(t,s)}else{return["operator","operator"]}}},":":function(s){if(s.match(/\s*{/)){return[null,"{"]}return false},"$":function(s){s.match(/^[\w-]+/);if(s.match(/^\s*:/,false)){return["variable-2","variable-definition"]}return["variable-2","variable"]},"#":function(s){if(!s.eat("{")){return false}return[null,"interpolation"]}},name:"css",helperType:"scss"});m.defineMIME("text/x-less",{mediaTypes:p,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:d,colorKeywords:k,valueKeywords:n,fontProperties:e,allowNested:true,tokenHooks:{"/":function(t,s){if(t.eat("/")){t.skipToEnd();return["comment","comment"]}else{if(t.eat("*")){s.tokenize=q;return q(t,s)}else{return["operator","operator"]}}},"@":function(s){if(s.match(/^(charset|document|font-face|import|(-(moz|ms|o|webkit)-)?keyframes|media|namespace|page|supports)\b/,false)){return false}s.eatWhile(/[\w\\\-]/);if(s.match(/^\s*:/,false)){return["variable-2","variable-definition"]}return["variable-2","variable"]},"&":function(){return["atom","atom"]}},name:"css",helperType:"less"})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"),require("../xml/xml"),require("../javascript/javascript"),require("../css/css"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror","../xml/xml","../javascript/javascript","../css/css"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("htmlmixed",function(c,d){var b=a.getMode(c,{name:"xml",htmlMode:true,multilineTagIndentFactor:d.multilineTagIndentFactor,multilineTagIndentPastTag:d.multilineTagIndentPastTag});var n=a.getMode(c,"css");var l=[],k=d&&d.scriptTypes;l.push({matches:/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^$/i,mode:a.getMode(c,"javascript")});if(k){for(var e=0;e<k.length;++e){var j=k[e];l.push({matches:j.matches,mode:j.mode&&a.getMode(c,j.mode)})}}l.push({matches:/./,mode:a.getMode(c,"text/plain")});function f(t,r){var p=r.htmlState.tagName;var q=b.token(t,r.htmlState);if(p=="script"&&/\btag\b/.test(q)&&t.current()==">"){var u=t.string.slice(Math.max(0,t.pos-100),t.pos).match(/\btype\s*=\s*("[^"]+"|'[^']+'|\S+)[^<]*$/i);u=u?u[1]:"";if(u&&/[\"\']/.test(u.charAt(0))){u=u.slice(1,u.length-1)}for(var o=0;o<l.length;++o){var s=l[o];if(typeof s.matches=="string"?u==s.matches:s.matches.test(u)){if(s.mode){r.token=m;r.localMode=s.mode;r.localState=s.mode.startState&&s.mode.startState(b.indent(r.htmlState,""))}break}}}else{if(p=="style"&&/\btag\b/.test(q)&&t.current()==">"){r.token=g;r.localMode=n;r.localState=n.startState(b.indent(r.htmlState,""))}}return q}function h(s,o,p){var r=s.current();var q=r.search(o),i;if(q>-1){s.backUp(r.length-q)}else{if(i=r.match(/<\/?$/)){s.backUp(r.length);if(!s.match(o,false)){s.match(r)}}}return p}function m(o,i){if(o.match(/^<\/\s*script\s*>/i,false)){i.token=f;i.localState=i.localMode=null;return f(o,i)}return h(o,/<\/\s*script\s*>/,i.localMode.token(o,i.localState))}function g(o,i){if(o.match(/^<\/\s*style\s*>/i,false)){i.token=f;i.localState=i.localMode=null;return f(o,i)}return h(o,/<\/\s*style\s*>/,n.token(o,i.localState))}return{startState:function(){var i=b.startState();return{token:f,localMode:null,localState:null,htmlState:i}},copyState:function(o){if(o.localState){var i=a.copyState(o.localMode,o.localState)}return{token:o.token,localMode:o.localMode,localState:i,htmlState:a.copyState(b,o.htmlState)}},token:function(o,i){return i.token(o,i)},indent:function(o,i){if(!o.localMode||/^\s*<\//.test(i)){return b.indent(o.htmlState,i)}else{if(o.localMode.indent){return o.localMode.indent(o.localState,i)}else{return a.Pass}}},innerMode:function(i){return{state:i.localState||i.htmlState,mode:i.localMode||b}}}},"xml","javascript","css");a.defineMIME("text/html","htmlmixed")});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"),require("../htmlmixed/htmlmixed"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror","../htmlmixed/htmlmixed"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("htmlembedded",function(d,f){var b=f.scriptStartRegex||/^<%/i,c=f.scriptEndRegex||/^%>/i;var i,g;function h(k,j){if(k.match(b,false)){j.token=e;return i.token(k,j.scriptState)}else{return g.token(k,j.htmlState)}}function e(k,j){if(k.match(c,false)){j.token=h;return g.token(k,j.htmlState)}else{return i.token(k,j.scriptState)}}return{startState:function(){i=i||a.getMode(d,f.scriptingModeSpec);g=g||a.getMode(d,"htmlmixed");return{token:f.startOpen?e:h,htmlState:a.startState(g),scriptState:a.startState(i)}},token:function(k,j){return j.token(k,j)},indent:function(k,j){if(k.token==h){return g.indent(k.htmlState,j)}else{if(i.indent){return i.indent(k.scriptState,j)}}},copyState:function(j){return{token:j.token,htmlState:a.copyState(g,j.htmlState),scriptState:a.copyState(i,j.scriptState)}},innerMode:function(j){if(j.token==e){return{state:j.scriptState,mode:i}}else{return{state:j.htmlState,mode:g}}}}},"htmlmixed");a.defineMIME("application/x-ejs",{name:"htmlembedded",scriptingModeSpec:"javascript"});a.defineMIME("application/x-aspx",{name:"htmlembedded",scriptingModeSpec:"text/x-csharp"});a.defineMIME("application/x-jsp",{name:"htmlembedded",scriptingModeSpec:"text/x-java"});a.defineMIME("application/x-erb",{name:"htmlembedded",scriptingModeSpec:"ruby"})});
1
+ (function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("xml",function(y,k){var p=y.indentUnit;var x=k.multilineTagIndentFactor||1;var d=k.multilineTagIndentPastTag;if(d==null){d=true}var w=k.htmlMode?{autoSelfClosers:{area:true,base:true,br:true,col:true,command:true,embed:true,frame:true,hr:true,img:true,input:true,keygen:true,link:true,meta:true,param:true,source:true,track:true,wbr:true,menuitem:true},implicitlyClosed:{dd:true,li:true,optgroup:true,option:true,p:true,rp:true,rt:true,tbody:true,td:true,tfoot:true,th:true,tr:true},contextGrabbers:{dd:{dd:true,dt:true},dt:{dd:true,dt:true},li:{li:true},option:{option:true,optgroup:true},optgroup:{optgroup:true},p:{address:true,article:true,aside:true,blockquote:true,dir:true,div:true,dl:true,fieldset:true,footer:true,form:true,h1:true,h2:true,h3:true,h4:true,h5:true,h6:true,header:true,hgroup:true,hr:true,menu:true,nav:true,ol:true,p:true,pre:true,section:true,table:true,ul:true},rp:{rp:true,rt:true},rt:{rp:true,rt:true},tbody:{tbody:true,tfoot:true},td:{td:true,th:true},tfoot:{tbody:true},th:{td:true,th:true},thead:{tbody:true,tfoot:true},tr:{tr:true}},doNotIndent:{pre:true},allowUnquoted:true,allowMissing:true,caseFold:true}:{autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:false,allowMissing:false,caseFold:false};var c=k.alignCDATA;var f,g;function n(F,E){function C(G){E.tokenize=G;return G(F,E)}var D=F.next();if(D=="<"){if(F.eat("!")){if(F.eat("[")){if(F.match("CDATA[")){return C(v("atom","]]>"))}else{return null}}else{if(F.match("--")){return C(v("comment","-->"))}else{if(F.match("DOCTYPE",true,true)){F.eatWhile(/[\w\._\-]/);return C(z(1))}else{return null}}}}else{if(F.eat("?")){F.eatWhile(/[\w\._\-]/);E.tokenize=v("meta","?>");return"meta"}else{f=F.eat("/")?"closeTag":"openTag";E.tokenize=m;return"tag bracket"}}}else{if(D=="&"){var B;if(F.eat("#")){if(F.eat("x")){B=F.eatWhile(/[a-fA-F\d]/)&&F.eat(";")}else{B=F.eatWhile(/[\d]/)&&F.eat(";")}}else{B=F.eatWhile(/[\w\.\-:]/)&&F.eat(";")}return B?"atom":"error"}else{F.eatWhile(/[^&<]/);return null}}}function m(E,D){var C=E.next();if(C==">"||(C=="/"&&E.eat(">"))){D.tokenize=n;f=C==">"?"endTag":"selfcloseTag";return"tag bracket"}else{if(C=="="){f="equals";return null}else{if(C=="<"){D.tokenize=n;D.state=l;D.tagName=D.tagStart=null;var B=D.tokenize(E,D);return B?B+" tag error":"tag error"}else{if(/[\'\"]/.test(C)){D.tokenize=j(C);D.stringStartCol=E.column();return D.tokenize(E,D)}else{E.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/);return"word"}}}}}function j(B){var C=function(E,D){while(!E.eol()){if(E.next()==B){D.tokenize=m;break}}return"string"};C.isInAttribute=true;return C}function v(C,B){return function(E,D){while(!E.eol()){if(E.match(B)){D.tokenize=n;break}E.next()}return C}}function z(B){return function(E,D){var C;while((C=E.next())!=null){if(C=="<"){D.tokenize=z(B+1);return D.tokenize(E,D)}else{if(C==">"){if(B==1){D.tokenize=n;break}else{D.tokenize=z(B-1);return D.tokenize(E,D)}}}}return"meta"}}function r(C,B,D){this.prev=C.context;this.tagName=B;this.indent=C.indented;this.startOfLine=D;if(w.doNotIndent.hasOwnProperty(B)||(C.context&&C.context.noIndent)){this.noIndent=true}}function u(B){if(B.context){B.context=B.context.prev}}function q(D,C){var B;while(true){if(!D.context){return}B=D.context.tagName;if(!w.contextGrabbers.hasOwnProperty(B)||!w.contextGrabbers[B].hasOwnProperty(C)){return}u(D)}}function l(B,D,C){if(B=="openTag"){C.tagStart=D.column();return b}else{if(B=="closeTag"){return t}else{return l}}}function b(B,D,C){if(B=="word"){C.tagName=D.current();g="tag";return e}else{g="error";return b}}function t(C,E,D){if(C=="word"){var B=E.current();if(D.context&&D.context.tagName!=B&&w.implicitlyClosed.hasOwnProperty(D.context.tagName)){u(D)}if(D.context&&D.context.tagName==B){g="tag";return s}else{g="tag error";return A}}else{g="error";return A}}function s(C,B,D){if(C!="endTag"){g="error";return s}u(D);return l}function A(B,D,C){g="error";return s(B,D,C)}function e(E,C,F){if(E=="word"){g="attribute";return i}else{if(E=="endTag"||E=="selfcloseTag"){var D=F.tagName,B=F.tagStart;F.tagName=F.tagStart=null;if(E=="selfcloseTag"||w.autoSelfClosers.hasOwnProperty(D)){q(F,D)}else{q(F,D);F.context=new r(F,D,B==F.indented)}return l}}g="error";return e}function i(B,D,C){if(B=="equals"){return o}if(!w.allowMissing){g="error"}return e(B,D,C)}function o(B,D,C){if(B=="string"){return h}if(B=="word"&&w.allowUnquoted){g="string";return e}g="error";return e(B,D,C)}function h(B,D,C){if(B=="string"){return h}return e(B,D,C)}return{startState:function(){return{tokenize:n,state:l,indented:0,tagName:null,tagStart:null,context:null}},token:function(D,C){if(!C.tagName&&D.sol()){C.indented=D.indentation()}if(D.eatSpace()){return null}f=null;var B=C.tokenize(D,C);if((B||f)&&B!="comment"){g=null;C.state=C.state(f||B,D,C);if(g){B=g=="error"?B+" error":g}}return B},indent:function(G,C,F){var E=G.context;if(G.tokenize.isInAttribute){if(G.tagStart==G.indented){return G.stringStartCol+1}else{return G.indented+p}}if(E&&E.noIndent){return a.Pass}if(G.tokenize!=m&&G.tokenize!=n){return F?F.match(/^(\s*)/)[0].length:0}if(G.tagName){if(d){return G.tagStart+G.tagName.length+2}else{return G.tagStart+p*x}}if(c&&/<!\[CDATA\[/.test(C)){return 0}var B=C&&/^<(\/)?([\w_:\.-]*)/.exec(C);if(B&&B[1]){while(E){if(E.tagName==B[2]){E=E.prev;break}else{if(w.implicitlyClosed.hasOwnProperty(E.tagName)){E=E.prev}else{break}}}}else{if(B){while(E){var D=w.contextGrabbers[E.tagName];if(D&&D.hasOwnProperty(B[2])){E=E.prev}else{break}}}}while(E&&!E.startOfLine){E=E.prev}if(E){return E.indent+p}else{return 0}},electricInput:/<\/[\s\w:]+>$/,blockCommentStart:"<!--",blockCommentEnd:"-->",configuration:k.htmlMode?"html":"xml",helperType:k.htmlMode?"html":"xml"}});a.defineMIME("text/xml","xml");a.defineMIME("application/xml","xml");if(!a.mimeModes.hasOwnProperty("text/html")){a.defineMIME("text/html",{name:"xml",htmlMode:true})}});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("javascript",function(Y,ai){var k=Y.indentUnit;var z=ai.statementIndent;var ay=ai.jsonld;var y=ai.json||ay;var g=ai.typescript;var ar=ai.wordCharacters||/[\w$\xa1-\uffff]/;var ap=function(){function aO(aQ){return{type:aQ,style:"keyword"}}var aJ=aO("keyword a"),aH=aO("keyword b"),aG=aO("keyword c");var aI=aO("operator"),aM={type:"atom",style:"atom"};var aK={"if":aO("if"),"while":aJ,"with":aJ,"else":aH,"do":aH,"try":aH,"finally":aH,"return":aG,"break":aG,"continue":aG,"new":aG,"delete":aG,"throw":aG,"debugger":aG,"var":aO("var"),"const":aO("var"),let:aO("var"),"function":aO("function"),"catch":aO("catch"),"for":aO("for"),"switch":aO("switch"),"case":aO("case"),"default":aO("default"),"in":aI,"typeof":aI,"instanceof":aI,"true":aM,"false":aM,"null":aM,"undefined":aM,"NaN":aM,"Infinity":aM,"this":aO("this"),module:aO("module"),"class":aO("class"),"super":aO("atom"),yield:aG,"export":aO("export"),"import":aO("import"),"extends":aG};if(g){var aP={type:"variable",style:"variable-3"};var aL={"interface":aO("interface"),"extends":aO("extends"),constructor:aO("constructor"),"public":aO("public"),"private":aO("private"),"protected":aO("protected"),"static":aO("static"),string:aP,number:aP,bool:aP,any:aP};for(var aN in aL){aK[aN]=aL[aN]}}return aK}();var O=/[+\-*&%=<>!?|~^]/;var ao=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function E(aJ){var aH=false,aG,aI=false;while((aG=aJ.next())!=null){if(!aH){if(aG=="/"&&!aI){return}if(aG=="["){aI=true}else{if(aI&&aG=="]"){aI=false}}}aH=!aH&&aG=="\\"}}var R,F;function K(aI,aH,aG){R=aI;F=aG;return aH}function T(aK,aI){var aG=aK.next();if(aG=='"'||aG=="'"){aI.tokenize=Q(aG);return aI.tokenize(aK,aI)}else{if(aG=="."&&aK.match(/^\d+(?:[eE][+\-]?\d+)?/)){return K("number","number")}else{if(aG=="."&&aK.match("..")){return K("spread","meta")}else{if(/[\[\]{}\(\),;\:\.]/.test(aG)){return K(aG)}else{if(aG=="="&&aK.eat(">")){return K("=>","operator")}else{if(aG=="0"&&aK.eat(/x/i)){aK.eatWhile(/[\da-f]/i);return K("number","number")}else{if(/\d/.test(aG)){aK.match(/^\d*(?:\.\d*)?(?:[eE][+\-]?\d+)?/);return K("number","number")}else{if(aG=="/"){if(aK.eat("*")){aI.tokenize=ax;return ax(aK,aI)}else{if(aK.eat("/")){aK.skipToEnd();return K("comment","comment")}else{if(aI.lastType=="operator"||aI.lastType=="keyword c"||aI.lastType=="sof"||/^[\[{}\(,;:]$/.test(aI.lastType)){E(aK);aK.eatWhile(/[gimy]/);return K("regexp","string-2")}else{aK.eatWhile(O);return K("operator","operator",aK.current())}}}}else{if(aG=="`"){aI.tokenize=az;return az(aK,aI)}else{if(aG=="#"){aK.skipToEnd();return K("error","error")}else{if(O.test(aG)){aK.eatWhile(O);return K("operator","operator",aK.current())}else{if(ar.test(aG)){aK.eatWhile(ar);var aJ=aK.current(),aH=ap.propertyIsEnumerable(aJ)&&ap[aJ];return(aH&&aI.lastType!=".")?K(aH.type,aH.style,aJ):K("variable","variable",aJ)}}}}}}}}}}}}}function Q(aG){return function(aK,aI){var aJ=false,aH;if(ay&&aK.peek()=="@"&&aK.match(ao)){aI.tokenize=T;return K("jsonld-keyword","meta")}while((aH=aK.next())!=null){if(aH==aG&&!aJ){break}aJ=!aJ&&aH=="\\"}if(!aJ){aI.tokenize=T}return K("string","string")}}function ax(aJ,aI){var aG=false,aH;while(aH=aJ.next()){if(aH=="/"&&aG){aI.tokenize=T;break}aG=(aH=="*")}return K("comment","comment")}function az(aJ,aH){var aI=false,aG;while((aG=aJ.next())!=null){if(!aI&&(aG=="`"||aG=="$"&&aJ.eat("{"))){aH.tokenize=T;break}aI=!aI&&aG=="\\"}return K("quasi","string-2",aJ.current())}var l="([{}])";function au(aM,aJ){if(aJ.fatArrowAt){aJ.fatArrowAt=null}var aI=aM.string.indexOf("=>",aM.start);if(aI<0){return}var aL=0,aH=false;for(var aN=aI-1;aN>=0;--aN){var aG=aM.string.charAt(aN);var aK=l.indexOf(aG);if(aK>=0&&aK<3){if(!aL){++aN;break}if(--aL==0){break}}else{if(aK>=3&&aK<6){++aL}else{if(ar.test(aG)){aH=true}else{if(aH&&!aL){++aN;break}}}}}if(aH&&!aL){aJ.fatArrowAt=aN}}var b={atom:true,number:true,variable:true,string:true,regexp:true,"this":true,"jsonld-keyword":true};function I(aL,aH,aG,aK,aI,aJ){this.indented=aL;this.column=aH;this.type=aG;this.prev=aI;this.info=aJ;if(aK!=null){this.align=aK}}function r(aJ,aI){for(var aH=aJ.localVars;aH;aH=aH.next){if(aH.name==aI){return true}}for(var aG=aJ.context;aG;aG=aG.prev){for(var aH=aG.vars;aH;aH=aH.next){if(aH.name==aI){return true}}}}function f(aK,aH,aG,aJ,aL){var aM=aK.cc;C.state=aK;C.stream=aL;C.marked=null,C.cc=aM;C.style=aH;if(!aK.lexical.hasOwnProperty("align")){aK.lexical.align=true}while(true){var aI=aM.length?aM.pop():y?am:aE;if(aI(aG,aJ)){while(aM.length&&aM[aM.length-1].lex){aM.pop()()}if(C.marked){return C.marked}if(aG=="variable"&&r(aK,aJ)){return"variable-2"}return aH}}}var C={state:null,column:null,marked:null,cc:null};function Z(){for(var aG=arguments.length-1;aG>=0;aG--){C.cc.push(arguments[aG])}}function ad(){Z.apply(null,arguments);return true}function at(aH){function aG(aK){for(var aJ=aK;aJ;aJ=aJ.next){if(aJ.name==aH){return true}}return false}var aI=C.state;if(aI.context){C.marked="def";if(aG(aI.localVars)){return}aI.localVars={name:aH,next:aI.localVars}}else{if(aG(aI.globalVars)){return}if(ai.globalVars){aI.globalVars={name:aH,next:aI.globalVars}}}}var p={name:"this",next:{name:"arguments"}};function v(){C.state.context={prev:C.state.context,vars:C.state.localVars};C.state.localVars=p}function w(){C.state.localVars=C.state.context.vars;C.state.context=C.state.context.prev}function aC(aH,aI){var aG=function(){var aL=C.state,aJ=aL.indented;if(aL.lexical.type=="stat"){aJ=aL.lexical.indented}else{for(var aK=aL.lexical;aK&&aK.type==")"&&aK.align;aK=aK.prev){aJ=aK.indented}}aL.lexical=new I(aJ,C.stream.column(),aH,null,aL.lexical,aI)};aG.lex=true;return aG}function h(){var aG=C.state;if(aG.lexical.prev){if(aG.lexical.type==")"){aG.indented=aG.lexical.indented}aG.lexical=aG.lexical.prev}}h.lex=true;function q(aG){function aH(aI){if(aI==aG){return ad()}else{if(aG==";"){return Z()}else{return ad(aH)}}}return aH}function aE(aG,aH){if(aG=="var"){return ad(aC("vardef",aH.length),d,q(";"),h)}if(aG=="keyword a"){return ad(aC("form"),am,aE,h)}if(aG=="keyword b"){return ad(aC("form"),aE,h)}if(aG=="{"){return ad(aC("}"),x,h)}if(aG==";"){return ad()}if(aG=="if"){if(C.state.lexical.info=="else"&&C.state.cc[C.state.cc.length-1]==h){C.state.cc.pop()()}return ad(aC("form"),am,aE,h,e)}if(aG=="function"){return ad(L)}if(aG=="for"){return ad(aC("form"),t,aE,h)}if(aG=="variable"){return ad(aC("stat"),aF)}if(aG=="switch"){return ad(aC("form"),am,aC("}","switch"),q("{"),x,h,h)}if(aG=="case"){return ad(am,q(":"))}if(aG=="default"){return ad(q(":"))}if(aG=="catch"){return ad(aC("form"),v,q("("),ae,q(")"),aE,h,w)}if(aG=="module"){return ad(aC("form"),v,G,w,h)}if(aG=="class"){return ad(aC("form"),U,h)}if(aG=="export"){return ad(aC("form"),aD,h)}if(aG=="import"){return ad(aC("form"),af,h)}return Z(aC("stat"),am,q(";"),h)}function am(aG){return X(aG,false)}function aB(aG){return X(aG,true)}function X(aH,aJ){if(C.state.fatArrowAt==C.stream.start){var aG=aJ?M:V;if(aH=="("){return ad(v,aC(")"),aq(i,")"),h,q("=>"),aG,w)}else{if(aH=="variable"){return Z(v,i,q("=>"),aG,w)}}}var aI=aJ?j:aa;if(b.hasOwnProperty(aH)){return ad(aI)}if(aH=="function"){return ad(L,aI)}if(aH=="keyword c"){return ad(aJ?aj:ah)}if(aH=="("){return ad(aC(")"),ah,aw,q(")"),h,aI)}if(aH=="operator"||aH=="spread"){return ad(aJ?aB:am)}if(aH=="["){return ad(aC("]"),m,h,aI)}if(aH=="{"){return av(s,"}",null,aI)}if(aH=="quasi"){return Z(P,aI)}return ad()}function ah(aG){if(aG.match(/[;\}\)\],]/)){return Z()}return Z(am)}function aj(aG){if(aG.match(/[;\}\)\],]/)){return Z()}return Z(aB)}function aa(aG,aH){if(aG==","){return ad(am)}return j(aG,aH,false)}function j(aG,aI,aK){var aH=aK==false?aa:j;var aJ=aK==false?am:aB;if(aG=="=>"){return ad(v,aK?M:V,w)}if(aG=="operator"){if(/\+\+|--/.test(aI)){return ad(aH)}if(aI=="?"){return ad(am,q(":"),aJ)}return ad(aJ)}if(aG=="quasi"){return Z(P,aH)}if(aG==";"){return}if(aG=="("){return av(aB,")","call",aH)}if(aG=="."){return ad(ak,aH)}if(aG=="["){return ad(aC("]"),ah,q("]"),h,aH)}}function P(aG,aH){if(aG!="quasi"){return Z()}if(aH.slice(aH.length-2)!="${"){return ad(P)}return ad(am,o)}function o(aG){if(aG=="}"){C.marked="string-2";C.state.tokenize=az;return ad(P)}}function V(aG){au(C.stream,C.state);return Z(aG=="{"?aE:am)}function M(aG){au(C.stream,C.state);return Z(aG=="{"?aE:aB)}function aF(aG){if(aG==":"){return ad(h,aE)}return Z(aa,q(";"),h)}function ak(aG){if(aG=="variable"){C.marked="property";return ad()}}function s(aG,aH){if(aG=="variable"||C.style=="keyword"){C.marked="property";if(aH=="get"||aH=="set"){return ad(H)}return ad(J)}else{if(aG=="number"||aG=="string"){C.marked=ay?"property":(C.style+" property");return ad(J)}else{if(aG=="jsonld-keyword"){return ad(J)}else{if(aG=="["){return ad(am,q("]"),J)}}}}}function H(aG){if(aG!="variable"){return Z(J)}C.marked="property";return ad(L)}function J(aG){if(aG==":"){return ad(aB)}if(aG=="("){return Z(L)}}function aq(aI,aG){function aH(aK){if(aK==","){var aJ=C.state.lexical;if(aJ.info=="call"){aJ.pos=(aJ.pos||0)+1}return ad(aI,aH)}if(aK==aG){return ad()}return ad(q(aG))}return function(aJ){if(aJ==aG){return ad()}return Z(aI,aH)}}function av(aJ,aG,aI){for(var aH=3;aH<arguments.length;aH++){C.cc.push(arguments[aH])}return ad(aC(aG,aI),aq(aJ,aG),h)}function x(aG){if(aG=="}"){return ad()}return Z(aE,x)}function S(aG){if(g&&aG==":"){return ad(ac)}}function ac(aG){if(aG=="variable"){C.marked="variable-3";return ad()}}function d(){return Z(i,S,ab,W)}function i(aG,aH){if(aG=="variable"){at(aH);return ad()}if(aG=="["){return av(i,"]")}if(aG=="{"){return av(aA,"}")}}function aA(aG,aH){if(aG=="variable"&&!C.stream.match(/^\s*:/,false)){at(aH);return ad(ab)}if(aG=="variable"){C.marked="property"}return ad(q(":"),i,ab)}function ab(aG,aH){if(aH=="="){return ad(aB)}}function W(aG){if(aG==","){return ad(d)}}function e(aG,aH){if(aG=="keyword b"&&aH=="else"){return ad(aC("form","else"),aE,h)}}function t(aG){if(aG=="("){return ad(aC(")"),D,q(")"),h)}}function D(aG){if(aG=="var"){return ad(d,q(";"),B)}if(aG==";"){return ad(B)}if(aG=="variable"){return ad(u)}return Z(am,q(";"),B)}function u(aG,aH){if(aH=="in"||aH=="of"){C.marked="keyword";return ad(am)}return ad(aa,B)}function B(aG,aH){if(aG==";"){return ad(A)}if(aH=="in"||aH=="of"){C.marked="keyword";return ad(am)}return Z(am,q(";"),A)}function A(aG){if(aG!=")"){ad(am)}}function L(aG,aH){if(aH=="*"){C.marked="keyword";return ad(L)}if(aG=="variable"){at(aH);return ad(L)}if(aG=="("){return ad(v,aC(")"),aq(ae,")"),h,aE,w)}}function ae(aG){if(aG=="spread"){return ad(ae)}return Z(i,S)}function U(aG,aH){if(aG=="variable"){at(aH);return ad(N)}}function N(aG,aH){if(aH=="extends"){return ad(am,N)}if(aG=="{"){return ad(aC("}"),n,h)}}function n(aG,aH){if(aG=="variable"||C.style=="keyword"){C.marked="property";if(aH=="get"||aH=="set"){return ad(c,L,n)}return ad(L,n)}if(aH=="*"){C.marked="keyword";return ad(n)}if(aG==";"){return ad(n)}if(aG=="}"){return ad()}}function c(aG){if(aG!="variable"){return Z()}C.marked="property";return ad()}function G(aG,aH){if(aG=="string"){return ad(aE)}if(aG=="variable"){at(aH);return ad(ag)}}function aD(aG,aH){if(aH=="*"){C.marked="keyword";return ad(ag,q(";"))}if(aH=="default"){C.marked="keyword";return ad(am,q(";"))}return Z(aE)}function af(aG){if(aG=="string"){return ad()}return Z(an,ag)}function an(aG,aH){if(aG=="{"){return av(an,"}")}if(aG=="variable"){at(aH)}return ad()}function ag(aG,aH){if(aH=="from"){C.marked="keyword";return ad(am)}}function m(aG){if(aG=="]"){return ad()}return Z(aB,al)}function al(aG){if(aG=="for"){return Z(aw,q("]"))}if(aG==","){return ad(aq(aj,"]"))}return Z(aq(aB,"]"))}function aw(aG){if(aG=="for"){return ad(t,aw)}if(aG=="if"){return ad(am,aw)}}return{startState:function(aH){var aG={tokenize:T,lastType:"sof",cc:[],lexical:new I((aH||0)-k,0,"block",false),localVars:ai.localVars,context:ai.localVars&&{vars:ai.localVars},indented:0};if(ai.globalVars&&typeof ai.globalVars=="object"){aG.globalVars=ai.globalVars}return aG},token:function(aI,aH){if(aI.sol()){if(!aH.lexical.hasOwnProperty("align")){aH.lexical.align=false}aH.indented=aI.indentation();au(aI,aH)}if(aH.tokenize!=ax&&aI.eatSpace()){return null}var aG=aH.tokenize(aI,aH);if(R=="comment"){return aG}aH.lastType=R=="operator"&&(F=="++"||F=="--")?"incdec":R;return f(aH,aG,R,F,aI)},indent:function(aM,aG){if(aM.tokenize==ax){return a.Pass}if(aM.tokenize!=T){return 0}var aL=aG&&aG.charAt(0),aJ=aM.lexical;if(!/^\s*else\b/.test(aG)){for(var aI=aM.cc.length-1;aI>=0;--aI){var aN=aM.cc[aI];if(aN==h){aJ=aJ.prev}else{if(aN!=e){break}}}}if(aJ.type=="stat"&&aL=="}"){aJ=aJ.prev}if(z&&aJ.type==")"&&aJ.prev.type=="stat"){aJ=aJ.prev}var aK=aJ.type,aH=aL==aK;if(aK=="vardef"){return aJ.indented+(aM.lastType=="operator"||aM.lastType==","?aJ.info+1:0)}else{if(aK=="form"&&aL=="{"){return aJ.indented}else{if(aK=="form"){return aJ.indented+k}else{if(aK=="stat"){return aJ.indented+(aM.lastType=="operator"||aM.lastType==","?z||k:0)}else{if(aJ.info=="switch"&&!aH&&ai.doubleIndentSwitch!=false){return aJ.indented+(/^(?:case|default)\b/.test(aG)?k:2*k)}else{if(aJ.align){return aJ.column+(aH?0:1)}else{return aJ.indented+(aH?0:k)}}}}}}},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:y?null:"/*",blockCommentEnd:y?null:"*/",lineComment:y?null:"//",fold:"brace",helperType:y?"json":"javascript",jsonldMode:ay,jsonMode:y}});a.registerHelper("wordChars","javascript",/[\w$]/);a.defineMIME("text/javascript","javascript");a.defineMIME("text/ecmascript","javascript");a.defineMIME("application/javascript","javascript");a.defineMIME("application/x-javascript","javascript");a.defineMIME("application/ecmascript","javascript");a.defineMIME("application/json",{name:"javascript",json:true});a.defineMIME("application/x-json",{name:"javascript",json:true});a.defineMIME("application/ld+json",{name:"javascript",jsonld:true});a.defineMIME("text/typescript",{name:"javascript",typescript:true});a.defineMIME("application/typescript",{name:"javascript",typescript:true})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(n){n.defineMode("css",function(O,C){if(!C.propertyKeywords){C=n.resolveMode("text/css")}var I=O.indentUnit,u=C.tokenHooks,N=C.mediaTypes||{},E=C.mediaFeatures||{},B=C.propertyKeywords||{},v=C.nonStandardPropertyKeywords||{},H=C.colorKeywords||{},K=C.valueKeywords||{},x=C.fontProperties||{},F=C.allowNested;var w,G;function P(S,T){w=T;return S}function R(V,U){var T=V.next();if(u[T]){var S=u[T](V,U);if(S!==false){return S}}if(T=="@"){V.eatWhile(/[\w\\\-]/);return P("def",V.current())}else{if(T=="="||(T=="~"||T=="|")&&V.eat("=")){return P(null,"compare")}else{if(T=='"'||T=="'"){U.tokenize=D(T);return U.tokenize(V,U)}else{if(T=="#"){V.eatWhile(/[\w\\\-]/);return P("atom","hash")}else{if(T=="!"){V.match(/^\s*\w*/);return P("keyword","important")}else{if(/\d/.test(T)||T=="."&&V.eat(/\d/)){V.eatWhile(/[\w.%]/);return P("number","unit")}else{if(T==="-"){if(/[\d.]/.test(V.peek())){V.eatWhile(/[\w.%]/);return P("number","unit")}else{if(V.match(/^\w+-/)){return P("meta","meta")}}}else{if(/[,+>*\/]/.test(T)){return P(null,"select-op")}else{if(T=="."&&V.match(/^-?[_a-z][_a-z0-9-]*/i)){return P("qualifier","qualifier")}else{if(/[:;{}\[\]\(\)]/.test(T)){return P(null,T)}else{if(T=="u"&&V.match("rl(")){V.backUp(1);U.tokenize=Q;return P("property","word")}else{if(/[\w\\\-]/.test(T)){V.eatWhile(/[\w\\\-]/);return P("property","word")}else{return P(null,null)}}}}}}}}}}}}}function D(S){return function(W,U){var V=false,T;while((T=W.next())!=null){if(T==S&&!V){if(S==")"){W.backUp(1)}break}V=!V&&T=="\\"}if(T==S||!V&&S!=")"){U.tokenize=null}return P("string","string")}}function Q(T,S){T.next();if(!T.match(/\s*[\"\')]/,false)){S.tokenize=D(")")}else{S.tokenize=null}return P(null,"(")}function J(T,S,U){this.type=T;this.indent=S;this.prev=U}function z(T,U,S){T.context=new J(S,U.indentation()+I,T.context);return S}function L(S){S.context=S.context.prev;return S.context.type}function t(S,U,T){return y[T.context.type](S,U,T)}function M(T,V,U,W){for(var S=W||1;S>0;S--){U.context=U.context.prev}return t(T,V,U)}function A(T){var S=T.current().toLowerCase();if(K.hasOwnProperty(S)){G="atom"}else{if(H.hasOwnProperty(S)){G="keyword"}else{G="variable"}}}var y={};y.top=function(S,U,T){if(S=="{"){return z(T,U,"block")}else{if(S=="}"&&T.context.prev){return L(T)}else{if(S=="@media"){return z(T,U,"media")}else{if(S=="@font-face"){return"font_face_before"}else{if(/^@(-(moz|ms|o|webkit)-)?keyframes$/.test(S)){return"keyframes"}else{if(S&&S.charAt(0)=="@"){return z(T,U,"at")}else{if(S=="hash"){G="builtin"}else{if(S=="word"){G="tag"}else{if(S=="variable-definition"){return"maybeprop"}else{if(S=="interpolation"){return z(T,U,"interpolation")}else{if(S==":"){return"pseudo"}else{if(F&&S=="("){return z(T,U,"parens")}}}}}}}}}}}}return T.context.type};y.block=function(S,V,T){if(S=="word"){var U=V.current().toLowerCase();if(B.hasOwnProperty(U)){G="property";return"maybeprop"}else{if(v.hasOwnProperty(U)){G="string-2";return"maybeprop"}else{if(F){G=V.match(/^\s*:(?:\s|$)/,false)?"property":"tag";return"block"}else{G+=" error";return"maybeprop"}}}}else{if(S=="meta"){return"block"}else{if(!F&&(S=="hash"||S=="qualifier")){G="error";return"block"}else{return y.top(S,V,T)}}}};y.maybeprop=function(S,U,T){if(S==":"){return z(T,U,"prop")}return t(S,U,T)};y.prop=function(S,U,T){if(S==";"){return L(T)}if(S=="{"&&F){return z(T,U,"propBlock")}if(S=="}"||S=="{"){return M(S,U,T)}if(S=="("){return z(T,U,"parens")}if(S=="hash"&&!/^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/.test(U.current())){G+=" error"}else{if(S=="word"){A(U)}else{if(S=="interpolation"){return z(T,U,"interpolation")}}}return"prop"};y.propBlock=function(T,S,U){if(T=="}"){return L(U)}if(T=="word"){G="property";return"maybeprop"}return U.context.type};y.parens=function(S,U,T){if(S=="{"||S=="}"){return M(S,U,T)}if(S==")"){return L(T)}if(S=="("){return z(T,U,"parens")}if(S=="word"){A(U)}return"parens"};y.pseudo=function(S,U,T){if(S=="word"){G="variable-3";return T.context.type}return t(S,U,T)};y.media=function(S,V,T){if(S=="("){return z(T,V,"media_parens")}if(S=="}"){return M(S,V,T)}if(S=="{"){return L(T)&&z(T,V,F?"block":"top")}if(S=="word"){var U=V.current().toLowerCase();if(U=="only"||U=="not"||U=="and"){G="keyword"}else{if(N.hasOwnProperty(U)){G="attribute"}else{if(E.hasOwnProperty(U)){G="property"}else{G="error"}}}}return T.context.type};y.media_parens=function(S,U,T){if(S==")"){return L(T)}if(S=="{"||S=="}"){return M(S,U,T,2)}return y.media(S,U,T)};y.font_face_before=function(S,U,T){if(S=="{"){return z(T,U,"font_face")}return t(S,U,T)};y.font_face=function(S,U,T){if(S=="}"){return L(T)}if(S=="word"){if(!x.hasOwnProperty(U.current().toLowerCase())){G="error"}else{G="property"}return"maybeprop"}return"font_face"};y.keyframes=function(S,U,T){if(S=="word"){G="variable";return"keyframes"}if(S=="{"){return z(T,U,"top")}return t(S,U,T)};y.at=function(S,U,T){if(S==";"){return L(T)}if(S=="{"||S=="}"){return M(S,U,T)}if(S=="word"){G="tag"}else{if(S=="hash"){G="builtin"}}return"at"};y.interpolation=function(S,U,T){if(S=="}"){return L(T)}if(S=="{"||S==";"){return M(S,U,T)}if(S!="variable"){G="error"}return"interpolation"};return{startState:function(S){return{tokenize:null,state:"top",context:new J("top",S||0,null)}},token:function(U,T){if(!T.tokenize&&U.eatSpace()){return null}var S=(T.tokenize||R)(U,T);if(S&&typeof S=="object"){w=S[1];S=S[0]}G=S;T.state=y[T.state](w,U,T);return G},indent:function(W,U){var T=W.context,V=U&&U.charAt(0);var S=T.indent;if(T.type=="prop"&&(V=="}"||V==")")){T=T.prev}if(T.prev&&(V=="}"&&(T.type=="block"||T.type=="top"||T.type=="interpolation"||T.type=="font_face")||V==")"&&(T.type=="parens"||T.type=="media_parens")||V=="{"&&(T.type=="at"||T.type=="media"))){S=T.indent-I;T=T.prev}return S},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",fold:"brace"}});function f(v){var u={};for(var t=0;t<v.length;++t){u[v[t]]=true}return u}var a=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],q=f(a);var s=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid"],i=f(s);var c=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","baseline-shift","binding","bleed","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-feature-settings","font-family","font-kerning","font-language-override","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-weight","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-position","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","justify-content","left","letter-spacing","line-break","line-height","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marker-offset","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","max-height","max-width","min-height","min-width","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotation","rotation-point","ruby-align","ruby-overhang","ruby-position","ruby-span","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-outline","text-overflow","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","word-break","word-spacing","word-wrap","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode"],h=f(c);var l=["scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-3d-light-color","scrollbar-track-color","shape-inside","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","zoom"],d=f(l);var b=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],k=f(b);var j=["above","absolute","activeborder","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","auto","avoid","avoid-column","avoid-page","avoid-region","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","column","compact","condensed","contain","content","content-box","context-menu","continuous","copy","cover","crop","cross","crosshair","currentcolor","cursive","dashed","decimal","decimal-leading-zero","default","default-button","destination-atop","destination-in","destination-out","destination-over","devanagari","disc","discard","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ew-resize","expanded","extra-condensed","extra-expanded","fantasy","fast","fill","fixed","flat","footnotes","forwards","from","geometricPrecision","georgian","graytext","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-table","inset","inside","intrinsic","invert","italic","justify","kannada","katakana","katakana-iroha","keep-all","khmer","landscape","lao","large","larger","left","level","lighter","line-through","linear","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","malayalam","match","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","nw-resize","nwse-resize","oblique","octal","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","round","row-resize","rtl","run-in","running","s-resize","sans-serif","scroll","scrollbar","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","semi-condensed","semi-expanded","separate","serif","show","sidama","single","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","solid","somali","source-atop","source-in","source-out","source-over","space","square","square-button","start","static","status-bar","stretch","stroke","sub","subpixel-antialiased","super","sw-resize","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","transparent","ultra-condensed","ultra-expanded","underline","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","vertical","vertical-text","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","x-large","x-small","xor","xx-large","xx-small"],o=f(j);var p=["font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"],e=f(p);var m=a.concat(s).concat(c).concat(l).concat(b).concat(j);n.registerHelper("hintWords","css",m);function r(w,v){var t=false,u;while((u=w.next())!=null){if(t&&u=="/"){v.tokenize=null;break}t=(u=="*")}return["comment","comment"]}function g(u,t){if(u.skipTo("-->")){u.match("-->");t.tokenize=null}else{u.skipToEnd()}return["comment","comment"]}n.defineMIME("text/css",{mediaTypes:q,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:d,colorKeywords:k,valueKeywords:o,fontProperties:e,tokenHooks:{"<":function(u,t){if(!u.match("!--")){return false}t.tokenize=g;return g(u,t)},"/":function(u,t){if(!u.eat("*")){return false}t.tokenize=r;return r(u,t)}},name:"css"});n.defineMIME("text/x-scss",{mediaTypes:q,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:d,colorKeywords:k,valueKeywords:o,fontProperties:e,allowNested:true,tokenHooks:{"/":function(u,t){if(u.eat("/")){u.skipToEnd();return["comment","comment"]}else{if(u.eat("*")){t.tokenize=r;return r(u,t)}else{return["operator","operator"]}}},":":function(t){if(t.match(/\s*\{/)){return[null,"{"]}return false},"$":function(t){t.match(/^[\w-]+/);if(t.match(/^\s*:/,false)){return["variable-2","variable-definition"]}return["variable-2","variable"]},"#":function(t){if(!t.eat("{")){return false}return[null,"interpolation"]}},name:"css",helperType:"scss"});n.defineMIME("text/x-less",{mediaTypes:q,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:d,colorKeywords:k,valueKeywords:o,fontProperties:e,allowNested:true,tokenHooks:{"/":function(u,t){if(u.eat("/")){u.skipToEnd();return["comment","comment"]}else{if(u.eat("*")){t.tokenize=r;return r(u,t)}else{return["operator","operator"]}}},"@":function(t){if(t.match(/^(charset|document|font-face|import|(-(moz|ms|o|webkit)-)?keyframes|media|namespace|page|supports)\b/,false)){return false}t.eatWhile(/[\w\\\-]/);if(t.match(/^\s*:/,false)){return["variable-2","variable-definition"]}return["variable-2","variable"]},"&":function(){return["atom","atom"]}},name:"css",helperType:"less"})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"),require("../xml/xml"),require("../javascript/javascript"),require("../css/css"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror","../xml/xml","../javascript/javascript","../css/css"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("htmlmixed",function(c,d){var b=a.getMode(c,{name:"xml",htmlMode:true,multilineTagIndentFactor:d.multilineTagIndentFactor,multilineTagIndentPastTag:d.multilineTagIndentPastTag});var n=a.getMode(c,"css");var l=[],k=d&&d.scriptTypes;l.push({matches:/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^$/i,mode:a.getMode(c,"javascript")});if(k){for(var e=0;e<k.length;++e){var j=k[e];l.push({matches:j.matches,mode:j.mode&&a.getMode(c,j.mode)})}}l.push({matches:/./,mode:a.getMode(c,"text/plain")});function f(t,r){var p=r.htmlState.tagName;if(p){p=p.toLowerCase()}var q=b.token(t,r.htmlState);if(p=="script"&&/\btag\b/.test(q)&&t.current()==">"){var u=t.string.slice(Math.max(0,t.pos-100),t.pos).match(/\btype\s*=\s*("[^"]+"|'[^']+'|\S+)[^<]*$/i);u=u?u[1]:"";if(u&&/[\"\']/.test(u.charAt(0))){u=u.slice(1,u.length-1)}for(var o=0;o<l.length;++o){var s=l[o];if(typeof s.matches=="string"?u==s.matches:s.matches.test(u)){if(s.mode){r.token=m;r.localMode=s.mode;r.localState=s.mode.startState&&s.mode.startState(b.indent(r.htmlState,""))}break}}}else{if(p=="style"&&/\btag\b/.test(q)&&t.current()==">"){r.token=g;r.localMode=n;r.localState=n.startState(b.indent(r.htmlState,""))}}return q}function h(s,o,p){var r=s.current();var q=r.search(o),i;if(q>-1){s.backUp(r.length-q)}else{if(i=r.match(/<\/?$/)){s.backUp(r.length);if(!s.match(o,false)){s.match(r)}}}return p}function m(o,i){if(o.match(/^<\/\s*script\s*>/i,false)){i.token=f;i.localState=i.localMode=null;return null}return h(o,/<\/\s*script\s*>/,i.localMode.token(o,i.localState))}function g(o,i){if(o.match(/^<\/\s*style\s*>/i,false)){i.token=f;i.localState=i.localMode=null;return null}return h(o,/<\/\s*style\s*>/,n.token(o,i.localState))}return{startState:function(){var i=b.startState();return{token:f,localMode:null,localState:null,htmlState:i}},copyState:function(o){if(o.localState){var i=a.copyState(o.localMode,o.localState)}return{token:o.token,localMode:o.localMode,localState:i,htmlState:a.copyState(b,o.htmlState)}},token:function(o,i){return i.token(o,i)},indent:function(o,i){if(!o.localMode||/^\s*<\//.test(i)){return b.indent(o.htmlState,i)}else{if(o.localMode.indent){return o.localMode.indent(o.localState,i)}else{return a.Pass}}},innerMode:function(i){return{state:i.localState||i.htmlState,mode:i.localMode||b}}}},"xml","javascript","css");a.defineMIME("text/html","htmlmixed")});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"),require("../htmlmixed/htmlmixed"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror","../htmlmixed/htmlmixed"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("htmlembedded",function(d,f){var b=f.scriptStartRegex||/^<%/i,c=f.scriptEndRegex||/^%>/i;var i,g;function h(k,j){if(k.match(b,false)){j.token=e;return i.token(k,j.scriptState)}else{return g.token(k,j.htmlState)}}function e(k,j){if(k.match(c,false)){j.token=h;return g.token(k,j.htmlState)}else{return i.token(k,j.scriptState)}}return{startState:function(){i=i||a.getMode(d,f.scriptingModeSpec);g=g||a.getMode(d,"htmlmixed");return{token:f.startOpen?e:h,htmlState:a.startState(g),scriptState:a.startState(i)}},token:function(k,j){return j.token(k,j)},indent:function(k,j){if(k.token==h){return g.indent(k.htmlState,j)}else{if(i.indent){return i.indent(k.scriptState,j)}}},copyState:function(j){return{token:j.token,htmlState:a.copyState(g,j.htmlState),scriptState:a.copyState(i,j.scriptState)}},innerMode:function(j){if(j.token==e){return{state:j.scriptState,mode:i}}else{return{state:j.htmlState,mode:g}}}}},"htmlmixed");a.defineMIME("application/x-ejs",{name:"htmlembedded",scriptingModeSpec:"javascript"});a.defineMIME("application/x-aspx",{name:"htmlembedded",scriptingModeSpec:"text/x-csharp"});a.defineMIME("application/x-jsp",{name:"htmlembedded",scriptingModeSpec:"text/x-java"});a.defineMIME("application/x-erb",{name:"htmlembedded",scriptingModeSpec:"ruby"})});
@@ -1 +1 @@
1
- (function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("javascript",function(X,ah){var j=X.indentUnit;var x=ah.statementIndent;var aw=ah.jsonld;var w=ah.json||aw;var f=ah.typescript;var ao=function(){function aM(aO){return{type:aO,style:"keyword"}}var aH=aM("keyword a"),aF=aM("keyword b"),aE=aM("keyword c");var aG=aM("operator"),aK={type:"atom",style:"atom"};var aI={"if":aM("if"),"while":aH,"with":aH,"else":aF,"do":aF,"try":aF,"finally":aF,"return":aE,"break":aE,"continue":aE,"new":aE,"delete":aE,"throw":aE,"debugger":aE,"var":aM("var"),"const":aM("var"),let:aM("var"),"function":aM("function"),"catch":aM("catch"),"for":aM("for"),"switch":aM("switch"),"case":aM("case"),"default":aM("default"),"in":aG,"typeof":aG,"instanceof":aG,"true":aK,"false":aK,"null":aK,"undefined":aK,"NaN":aK,"Infinity":aK,"this":aM("this"),module:aM("module"),"class":aM("class"),"super":aM("atom"),yield:aE,"export":aM("export"),"import":aM("import"),"extends":aE};if(f){var aN={type:"variable",style:"variable-3"};var aJ={"interface":aM("interface"),"extends":aM("extends"),constructor:aM("constructor"),"public":aM("public"),"private":aM("private"),"protected":aM("protected"),"static":aM("static"),string:aN,number:aN,bool:aN,any:aN};for(var aL in aJ){aI[aL]=aJ[aL]}}return aI}();var M=/[+\-*&%=<>!?|~^]/;var an=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function C(aH){var aF=false,aE,aG=false;while((aE=aH.next())!=null){if(!aF){if(aE=="/"&&!aG){return}if(aE=="["){aG=true}else{if(aG&&aE=="]"){aG=false}}}aF=!aF&&aE=="\\"}}var P,D;function I(aG,aF,aE){P=aG;D=aE;return aF}function R(aI,aG){var aE=aI.next();if(aE=='"'||aE=="'"){aG.tokenize=O(aE);return aG.tokenize(aI,aG)}else{if(aE=="."&&aI.match(/^\d+(?:[eE][+\-]?\d+)?/)){return I("number","number")}else{if(aE=="."&&aI.match("..")){return I("spread","meta")}else{if(/[\[\]{}\(\),;\:\.]/.test(aE)){return I(aE)}else{if(aE=="="&&aI.eat(">")){return I("=>","operator")}else{if(aE=="0"&&aI.eat(/x/i)){aI.eatWhile(/[\da-f]/i);return I("number","number")}else{if(/\d/.test(aE)){aI.match(/^\d*(?:\.\d*)?(?:[eE][+\-]?\d+)?/);return I("number","number")}else{if(aE=="/"){if(aI.eat("*")){aG.tokenize=av;return av(aI,aG)}else{if(aI.eat("/")){aI.skipToEnd();return I("comment","comment")}else{if(aG.lastType=="operator"||aG.lastType=="keyword c"||aG.lastType=="sof"||/^[\[{}\(,;:]$/.test(aG.lastType)){C(aI);aI.eatWhile(/[gimy]/);return I("regexp","string-2")}else{aI.eatWhile(M);return I("operator","operator",aI.current())}}}}else{if(aE=="`"){aG.tokenize=ax;return ax(aI,aG)}else{if(aE=="#"){aI.skipToEnd();return I("error","error")}else{if(M.test(aE)){aI.eatWhile(M);return I("operator","operator",aI.current())}else{aI.eatWhile(/[\w\$_]/);var aH=aI.current(),aF=ao.propertyIsEnumerable(aH)&&ao[aH];return(aF&&aG.lastType!=".")?I(aF.type,aF.style,aH):I("variable","variable",aH)}}}}}}}}}}}}function O(aE){return function(aI,aG){var aH=false,aF;if(aw&&aI.peek()=="@"&&aI.match(an)){aG.tokenize=R;return I("jsonld-keyword","meta")}while((aF=aI.next())!=null){if(aF==aE&&!aH){break}aH=!aH&&aF=="\\"}if(!aH){aG.tokenize=R}return I("string","string")}}function av(aH,aG){var aE=false,aF;while(aF=aH.next()){if(aF=="/"&&aE){aG.tokenize=R;break}aE=(aF=="*")}return I("comment","comment")}function ax(aH,aF){var aG=false,aE;while((aE=aH.next())!=null){if(!aG&&(aE=="`"||aE=="$"&&aH.eat("{"))){aF.tokenize=R;break}aG=!aG&&aE=="\\"}return I("quasi","string-2",aH.current())}var k="([{}])";function ar(aK,aH){if(aH.fatArrowAt){aH.fatArrowAt=null}var aG=aK.string.indexOf("=>",aK.start);if(aG<0){return}var aJ=0,aF=false;for(var aL=aG-1;aL>=0;--aL){var aE=aK.string.charAt(aL);var aI=k.indexOf(aE);if(aI>=0&&aI<3){if(!aJ){++aL;break}if(--aJ==0){break}}else{if(aI>=3&&aI<6){++aJ}else{if(/[$\w]/.test(aE)){aF=true}else{if(aF&&!aJ){++aL;break}}}}}if(aF&&!aJ){aH.fatArrowAt=aL}}var b={atom:true,number:true,variable:true,string:true,regexp:true,"this":true,"jsonld-keyword":true};function G(aJ,aF,aE,aI,aG,aH){this.indented=aJ;this.column=aF;this.type=aE;this.prev=aG;this.info=aH;if(aI!=null){this.align=aI}}function p(aH,aG){for(var aF=aH.localVars;aF;aF=aF.next){if(aF.name==aG){return true}}for(var aE=aH.context;aE;aE=aE.prev){for(var aF=aE.vars;aF;aF=aF.next){if(aF.name==aG){return true}}}}function e(aI,aF,aE,aH,aJ){var aK=aI.cc;A.state=aI;A.stream=aJ;A.marked=null,A.cc=aK;if(!aI.lexical.hasOwnProperty("align")){aI.lexical.align=true}while(true){var aG=aK.length?aK.pop():w?al:aC;if(aG(aE,aH)){while(aK.length&&aK[aK.length-1].lex){aK.pop()()}if(A.marked){return A.marked}if(aE=="variable"&&p(aI,aH)){return"variable-2"}return aF}}}var A={state:null,column:null,marked:null,cc:null};function Y(){for(var aE=arguments.length-1;aE>=0;aE--){A.cc.push(arguments[aE])}}function ac(){Y.apply(null,arguments);return true}function aq(aF){function aE(aI){for(var aH=aI;aH;aH=aH.next){if(aH.name==aF){return true}}return false}var aG=A.state;if(aG.context){A.marked="def";if(aE(aG.localVars)){return}aG.localVars={name:aF,next:aG.localVars}}else{if(aE(aG.globalVars)){return}if(ah.globalVars){aG.globalVars={name:aF,next:aG.globalVars}}}}var n={name:"this",next:{name:"arguments"}};function t(){A.state.context={prev:A.state.context,vars:A.state.localVars};A.state.localVars=n}function u(){A.state.localVars=A.state.context.vars;A.state.context=A.state.context.prev}function aA(aF,aG){var aE=function(){var aI=A.state,aH=aI.indented;if(aI.lexical.type=="stat"){aH=aI.lexical.indented}aI.lexical=new G(aH,A.stream.column(),aF,null,aI.lexical,aG)};aE.lex=true;return aE}function g(){var aE=A.state;if(aE.lexical.prev){if(aE.lexical.type==")"){aE.indented=aE.lexical.indented}aE.lexical=aE.lexical.prev}}g.lex=true;function o(aE){function aF(aG){if(aG==aE){return ac()}else{if(aE==";"){return Y()}else{return ac(aF)}}}return aF}function aC(aE,aF){if(aE=="var"){return ac(aA("vardef",aF.length),c,o(";"),g)}if(aE=="keyword a"){return ac(aA("form"),al,aC,g)}if(aE=="keyword b"){return ac(aA("form"),aC,g)}if(aE=="{"){return ac(aA("}"),v,g)}if(aE==";"){return ac()}if(aE=="if"){if(A.state.lexical.info=="else"&&A.state.cc[A.state.cc.length-1]==g){A.state.cc.pop()()}return ac(aA("form"),al,aC,g,d)}if(aE=="function"){return ac(J)}if(aE=="for"){return ac(aA("form"),r,aC,g)}if(aE=="variable"){return ac(aA("stat"),aD)}if(aE=="switch"){return ac(aA("form"),al,aA("}","switch"),o("{"),v,g,g)}if(aE=="case"){return ac(al,o(":"))}if(aE=="default"){return ac(o(":"))}if(aE=="catch"){return ac(aA("form"),t,o("("),ad,o(")"),aC,g,u)}if(aE=="module"){return ac(aA("form"),t,E,u,g)}if(aE=="class"){return ac(aA("form"),T,S,g)}if(aE=="export"){return ac(aA("form"),aB,g)}if(aE=="import"){return ac(aA("form"),ae,g)}return Y(aA("stat"),al,o(";"),g)}function al(aE){return W(aE,false)}function az(aE){return W(aE,true)}function W(aF,aH){if(A.state.fatArrowAt==A.stream.start){var aE=aH?K:U;if(aF=="("){return ac(t,aA(")"),ap(h,")"),g,o("=>"),aE,u)}else{if(aF=="variable"){return Y(t,h,o("=>"),aE,u)}}}var aG=aH?i:Z;if(b.hasOwnProperty(aF)){return ac(aG)}if(aF=="function"){return ac(J,aG)}if(aF=="keyword c"){return ac(aH?ai:ag)}if(aF=="("){return ac(aA(")"),ag,au,o(")"),g,aG)}if(aF=="operator"||aF=="spread"){return ac(aH?az:al)}if(aF=="["){return ac(aA("]"),l,g,aG)}if(aF=="{"){return at(q,"}",null,aG)}if(aF=="quasi"){return Y(N,aG)}return ac()}function ag(aE){if(aE.match(/[;\}\)\],]/)){return Y()}return Y(al)}function ai(aE){if(aE.match(/[;\}\)\],]/)){return Y()}return Y(az)}function Z(aE,aF){if(aE==","){return ac(al)}return i(aE,aF,false)}function i(aE,aG,aI){var aF=aI==false?Z:i;var aH=aI==false?al:az;if(aG=="=>"){return ac(t,aI?K:U,u)}if(aE=="operator"){if(/\+\+|--/.test(aG)){return ac(aF)}if(aG=="?"){return ac(al,o(":"),aH)}return ac(aH)}if(aE=="quasi"){return Y(N,aF)}if(aE==";"){return}if(aE=="("){return at(az,")","call",aF)}if(aE=="."){return ac(aj,aF)}if(aE=="["){return ac(aA("]"),ag,o("]"),g,aF)}}function N(aE,aF){if(aE!="quasi"){return Y()}if(aF.slice(aF.length-2)!="${"){return ac(N)}return ac(al,m)}function m(aE){if(aE=="}"){A.marked="string-2";A.state.tokenize=ax;return ac(N)}}function U(aE){ar(A.stream,A.state);if(aE=="{"){return Y(aC)}return Y(al)}function K(aE){ar(A.stream,A.state);if(aE=="{"){return Y(aC)}return Y(az)}function aD(aE){if(aE==":"){return ac(g,aC)}return Y(Z,o(";"),g)}function aj(aE){if(aE=="variable"){A.marked="property";return ac()}}function q(aE,aF){if(aE=="variable"){A.marked="property";if(aF=="get"||aF=="set"){return ac(F)}}else{if(aE=="number"||aE=="string"){A.marked=aw?"property":(aE+" property")}else{if(aE=="["){return ac(al,o("]"),H)}}}if(b.hasOwnProperty(aE)){return ac(H)}}function F(aE){if(aE!="variable"){return Y(H)}A.marked="property";return ac(J)}function H(aE){if(aE==":"){return ac(az)}if(aE=="("){return Y(J)}}function ap(aG,aE){function aF(aI){if(aI==","){var aH=A.state.lexical;if(aH.info=="call"){aH.pos=(aH.pos||0)+1}return ac(aG,aF)}if(aI==aE){return ac()}return ac(o(aE))}return function(aH){if(aH==aE){return ac()}return Y(aG,aF)}}function at(aH,aE,aG){for(var aF=3;aF<arguments.length;aF++){A.cc.push(arguments[aF])}return ac(aA(aE,aG),ap(aH,aE),g)}function v(aE){if(aE=="}"){return ac()}return Y(aC,v)}function Q(aE){if(f&&aE==":"){return ac(ab)}}function ab(aE){if(aE=="variable"){A.marked="variable-3";return ac()}}function c(){return Y(h,Q,aa,V)}function h(aE,aF){if(aE=="variable"){aq(aF);return ac()}if(aE=="["){return at(h,"]")}if(aE=="{"){return at(ay,"}")}}function ay(aE,aF){if(aE=="variable"&&!A.stream.match(/^\s*:/,false)){aq(aF);return ac(aa)}if(aE=="variable"){A.marked="property"}return ac(o(":"),h,aa)}function aa(aE,aF){if(aF=="="){return ac(az)}}function V(aE){if(aE==","){return ac(c)}}function d(aE,aF){if(aE=="keyword b"&&aF=="else"){return ac(aA("form","else"),aC,g)}}function r(aE){if(aE=="("){return ac(aA(")"),B,o(")"),g)}}function B(aE){if(aE=="var"){return ac(c,o(";"),z)}if(aE==";"){return ac(z)}if(aE=="variable"){return ac(s)}return Y(al,o(";"),z)}function s(aE,aF){if(aF=="in"||aF=="of"){A.marked="keyword";return ac(al)}return ac(Z,z)}function z(aE,aF){if(aE==";"){return ac(y)}if(aF=="in"||aF=="of"){A.marked="keyword";return ac(al)}return Y(al,o(";"),y)}function y(aE){if(aE!=")"){ac(al)}}function J(aE,aF){if(aF=="*"){A.marked="keyword";return ac(J)}if(aE=="variable"){aq(aF);return ac(J)}if(aE=="("){return ac(t,aA(")"),ap(ad,")"),g,aC,u)}}function ad(aE){if(aE=="spread"){return ac(ad)}return Y(h,Q)}function T(aE,aF){if(aE=="variable"){aq(aF);return ac(L)}}function L(aE,aF){if(aF=="extends"){return ac(al)}}function S(aE){if(aE=="{"){return at(q,"}")}}function E(aE,aF){if(aE=="string"){return ac(aC)}if(aE=="variable"){aq(aF);return ac(af)}}function aB(aE,aF){if(aF=="*"){A.marked="keyword";return ac(af,o(";"))}if(aF=="default"){A.marked="keyword";return ac(al,o(";"))}return Y(aC)}function ae(aE){if(aE=="string"){return ac()}return Y(am,af)}function am(aE,aF){if(aE=="{"){return at(am,"}")}if(aE=="variable"){aq(aF)}return ac()}function af(aE,aF){if(aF=="from"){A.marked="keyword";return ac(al)}}function l(aE){if(aE=="]"){return ac()}return Y(az,ak)}function ak(aE){if(aE=="for"){return Y(au,o("]"))}if(aE==","){return ac(ap(az,"]"))}return Y(ap(az,"]"))}function au(aE){if(aE=="for"){return ac(r,au)}if(aE=="if"){return ac(al,au)}}return{startState:function(aF){var aE={tokenize:R,lastType:"sof",cc:[],lexical:new G((aF||0)-j,0,"block",false),localVars:ah.localVars,context:ah.localVars&&{vars:ah.localVars},indented:0};if(ah.globalVars&&typeof ah.globalVars=="object"){aE.globalVars=ah.globalVars}return aE},token:function(aG,aF){if(aG.sol()){if(!aF.lexical.hasOwnProperty("align")){aF.lexical.align=false}aF.indented=aG.indentation();ar(aG,aF)}if(aF.tokenize!=av&&aG.eatSpace()){return null}var aE=aF.tokenize(aG,aF);if(P=="comment"){return aE}aF.lastType=P=="operator"&&(D=="++"||D=="--")?"incdec":P;return e(aF,aE,P,D,aG)},indent:function(aK,aE){if(aK.tokenize==av){return a.Pass}if(aK.tokenize!=R){return 0}var aJ=aE&&aE.charAt(0),aH=aK.lexical;if(!/^\s*else\b/.test(aE)){for(var aG=aK.cc.length-1;aG>=0;--aG){var aL=aK.cc[aG];if(aL==g){aH=aH.prev}else{if(aL!=d){break}}}}if(aH.type=="stat"&&aJ=="}"){aH=aH.prev}if(x&&aH.type==")"&&aH.prev.type=="stat"){aH=aH.prev}var aI=aH.type,aF=aJ==aI;if(aI=="vardef"){return aH.indented+(aK.lastType=="operator"||aK.lastType==","?aH.info+1:0)}else{if(aI=="form"&&aJ=="{"){return aH.indented}else{if(aI=="form"){return aH.indented+j}else{if(aI=="stat"){return aH.indented+(aK.lastType=="operator"||aK.lastType==","?x||j:0)}else{if(aH.info=="switch"&&!aF&&ah.doubleIndentSwitch!=false){return aH.indented+(/^(?:case|default)\b/.test(aE)?j:2*j)}else{if(aH.align){return aH.column+(aF?0:1)}else{return aH.indented+(aF?0:j)}}}}}}},electricChars:":{}",blockCommentStart:w?null:"/*",blockCommentEnd:w?null:"*/",lineComment:w?null:"//",fold:"brace",helperType:w?"json":"javascript",jsonldMode:aw,jsonMode:w}});a.registerHelper("wordChars","javascript",/[\\w$]/);a.defineMIME("text/javascript","javascript");a.defineMIME("text/ecmascript","javascript");a.defineMIME("application/javascript","javascript");a.defineMIME("application/ecmascript","javascript");a.defineMIME("application/json",{name:"javascript",json:true});a.defineMIME("application/x-json",{name:"javascript",json:true});a.defineMIME("application/ld+json",{name:"javascript",jsonld:true});a.defineMIME("text/typescript",{name:"javascript",typescript:true});a.defineMIME("application/typescript",{name:"javascript",typescript:true})});
1
+ (function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("javascript",function(Y,ai){var k=Y.indentUnit;var z=ai.statementIndent;var ay=ai.jsonld;var y=ai.json||ay;var g=ai.typescript;var ar=ai.wordCharacters||/[\w$\xa1-\uffff]/;var ap=function(){function aO(aQ){return{type:aQ,style:"keyword"}}var aJ=aO("keyword a"),aH=aO("keyword b"),aG=aO("keyword c");var aI=aO("operator"),aM={type:"atom",style:"atom"};var aK={"if":aO("if"),"while":aJ,"with":aJ,"else":aH,"do":aH,"try":aH,"finally":aH,"return":aG,"break":aG,"continue":aG,"new":aG,"delete":aG,"throw":aG,"debugger":aG,"var":aO("var"),"const":aO("var"),let:aO("var"),"function":aO("function"),"catch":aO("catch"),"for":aO("for"),"switch":aO("switch"),"case":aO("case"),"default":aO("default"),"in":aI,"typeof":aI,"instanceof":aI,"true":aM,"false":aM,"null":aM,"undefined":aM,"NaN":aM,"Infinity":aM,"this":aO("this"),module:aO("module"),"class":aO("class"),"super":aO("atom"),yield:aG,"export":aO("export"),"import":aO("import"),"extends":aG};if(g){var aP={type:"variable",style:"variable-3"};var aL={"interface":aO("interface"),"extends":aO("extends"),constructor:aO("constructor"),"public":aO("public"),"private":aO("private"),"protected":aO("protected"),"static":aO("static"),string:aP,number:aP,bool:aP,any:aP};for(var aN in aL){aK[aN]=aL[aN]}}return aK}();var O=/[+\-*&%=<>!?|~^]/;var ao=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function E(aJ){var aH=false,aG,aI=false;while((aG=aJ.next())!=null){if(!aH){if(aG=="/"&&!aI){return}if(aG=="["){aI=true}else{if(aI&&aG=="]"){aI=false}}}aH=!aH&&aG=="\\"}}var R,F;function K(aI,aH,aG){R=aI;F=aG;return aH}function T(aK,aI){var aG=aK.next();if(aG=='"'||aG=="'"){aI.tokenize=Q(aG);return aI.tokenize(aK,aI)}else{if(aG=="."&&aK.match(/^\d+(?:[eE][+\-]?\d+)?/)){return K("number","number")}else{if(aG=="."&&aK.match("..")){return K("spread","meta")}else{if(/[\[\]{}\(\),;\:\.]/.test(aG)){return K(aG)}else{if(aG=="="&&aK.eat(">")){return K("=>","operator")}else{if(aG=="0"&&aK.eat(/x/i)){aK.eatWhile(/[\da-f]/i);return K("number","number")}else{if(/\d/.test(aG)){aK.match(/^\d*(?:\.\d*)?(?:[eE][+\-]?\d+)?/);return K("number","number")}else{if(aG=="/"){if(aK.eat("*")){aI.tokenize=ax;return ax(aK,aI)}else{if(aK.eat("/")){aK.skipToEnd();return K("comment","comment")}else{if(aI.lastType=="operator"||aI.lastType=="keyword c"||aI.lastType=="sof"||/^[\[{}\(,;:]$/.test(aI.lastType)){E(aK);aK.eatWhile(/[gimy]/);return K("regexp","string-2")}else{aK.eatWhile(O);return K("operator","operator",aK.current())}}}}else{if(aG=="`"){aI.tokenize=az;return az(aK,aI)}else{if(aG=="#"){aK.skipToEnd();return K("error","error")}else{if(O.test(aG)){aK.eatWhile(O);return K("operator","operator",aK.current())}else{if(ar.test(aG)){aK.eatWhile(ar);var aJ=aK.current(),aH=ap.propertyIsEnumerable(aJ)&&ap[aJ];return(aH&&aI.lastType!=".")?K(aH.type,aH.style,aJ):K("variable","variable",aJ)}}}}}}}}}}}}}function Q(aG){return function(aK,aI){var aJ=false,aH;if(ay&&aK.peek()=="@"&&aK.match(ao)){aI.tokenize=T;return K("jsonld-keyword","meta")}while((aH=aK.next())!=null){if(aH==aG&&!aJ){break}aJ=!aJ&&aH=="\\"}if(!aJ){aI.tokenize=T}return K("string","string")}}function ax(aJ,aI){var aG=false,aH;while(aH=aJ.next()){if(aH=="/"&&aG){aI.tokenize=T;break}aG=(aH=="*")}return K("comment","comment")}function az(aJ,aH){var aI=false,aG;while((aG=aJ.next())!=null){if(!aI&&(aG=="`"||aG=="$"&&aJ.eat("{"))){aH.tokenize=T;break}aI=!aI&&aG=="\\"}return K("quasi","string-2",aJ.current())}var l="([{}])";function au(aM,aJ){if(aJ.fatArrowAt){aJ.fatArrowAt=null}var aI=aM.string.indexOf("=>",aM.start);if(aI<0){return}var aL=0,aH=false;for(var aN=aI-1;aN>=0;--aN){var aG=aM.string.charAt(aN);var aK=l.indexOf(aG);if(aK>=0&&aK<3){if(!aL){++aN;break}if(--aL==0){break}}else{if(aK>=3&&aK<6){++aL}else{if(ar.test(aG)){aH=true}else{if(aH&&!aL){++aN;break}}}}}if(aH&&!aL){aJ.fatArrowAt=aN}}var b={atom:true,number:true,variable:true,string:true,regexp:true,"this":true,"jsonld-keyword":true};function I(aL,aH,aG,aK,aI,aJ){this.indented=aL;this.column=aH;this.type=aG;this.prev=aI;this.info=aJ;if(aK!=null){this.align=aK}}function r(aJ,aI){for(var aH=aJ.localVars;aH;aH=aH.next){if(aH.name==aI){return true}}for(var aG=aJ.context;aG;aG=aG.prev){for(var aH=aG.vars;aH;aH=aH.next){if(aH.name==aI){return true}}}}function f(aK,aH,aG,aJ,aL){var aM=aK.cc;C.state=aK;C.stream=aL;C.marked=null,C.cc=aM;C.style=aH;if(!aK.lexical.hasOwnProperty("align")){aK.lexical.align=true}while(true){var aI=aM.length?aM.pop():y?am:aE;if(aI(aG,aJ)){while(aM.length&&aM[aM.length-1].lex){aM.pop()()}if(C.marked){return C.marked}if(aG=="variable"&&r(aK,aJ)){return"variable-2"}return aH}}}var C={state:null,column:null,marked:null,cc:null};function Z(){for(var aG=arguments.length-1;aG>=0;aG--){C.cc.push(arguments[aG])}}function ad(){Z.apply(null,arguments);return true}function at(aH){function aG(aK){for(var aJ=aK;aJ;aJ=aJ.next){if(aJ.name==aH){return true}}return false}var aI=C.state;if(aI.context){C.marked="def";if(aG(aI.localVars)){return}aI.localVars={name:aH,next:aI.localVars}}else{if(aG(aI.globalVars)){return}if(ai.globalVars){aI.globalVars={name:aH,next:aI.globalVars}}}}var p={name:"this",next:{name:"arguments"}};function v(){C.state.context={prev:C.state.context,vars:C.state.localVars};C.state.localVars=p}function w(){C.state.localVars=C.state.context.vars;C.state.context=C.state.context.prev}function aC(aH,aI){var aG=function(){var aL=C.state,aJ=aL.indented;if(aL.lexical.type=="stat"){aJ=aL.lexical.indented}else{for(var aK=aL.lexical;aK&&aK.type==")"&&aK.align;aK=aK.prev){aJ=aK.indented}}aL.lexical=new I(aJ,C.stream.column(),aH,null,aL.lexical,aI)};aG.lex=true;return aG}function h(){var aG=C.state;if(aG.lexical.prev){if(aG.lexical.type==")"){aG.indented=aG.lexical.indented}aG.lexical=aG.lexical.prev}}h.lex=true;function q(aG){function aH(aI){if(aI==aG){return ad()}else{if(aG==";"){return Z()}else{return ad(aH)}}}return aH}function aE(aG,aH){if(aG=="var"){return ad(aC("vardef",aH.length),d,q(";"),h)}if(aG=="keyword a"){return ad(aC("form"),am,aE,h)}if(aG=="keyword b"){return ad(aC("form"),aE,h)}if(aG=="{"){return ad(aC("}"),x,h)}if(aG==";"){return ad()}if(aG=="if"){if(C.state.lexical.info=="else"&&C.state.cc[C.state.cc.length-1]==h){C.state.cc.pop()()}return ad(aC("form"),am,aE,h,e)}if(aG=="function"){return ad(L)}if(aG=="for"){return ad(aC("form"),t,aE,h)}if(aG=="variable"){return ad(aC("stat"),aF)}if(aG=="switch"){return ad(aC("form"),am,aC("}","switch"),q("{"),x,h,h)}if(aG=="case"){return ad(am,q(":"))}if(aG=="default"){return ad(q(":"))}if(aG=="catch"){return ad(aC("form"),v,q("("),ae,q(")"),aE,h,w)}if(aG=="module"){return ad(aC("form"),v,G,w,h)}if(aG=="class"){return ad(aC("form"),U,h)}if(aG=="export"){return ad(aC("form"),aD,h)}if(aG=="import"){return ad(aC("form"),af,h)}return Z(aC("stat"),am,q(";"),h)}function am(aG){return X(aG,false)}function aB(aG){return X(aG,true)}function X(aH,aJ){if(C.state.fatArrowAt==C.stream.start){var aG=aJ?M:V;if(aH=="("){return ad(v,aC(")"),aq(i,")"),h,q("=>"),aG,w)}else{if(aH=="variable"){return Z(v,i,q("=>"),aG,w)}}}var aI=aJ?j:aa;if(b.hasOwnProperty(aH)){return ad(aI)}if(aH=="function"){return ad(L,aI)}if(aH=="keyword c"){return ad(aJ?aj:ah)}if(aH=="("){return ad(aC(")"),ah,aw,q(")"),h,aI)}if(aH=="operator"||aH=="spread"){return ad(aJ?aB:am)}if(aH=="["){return ad(aC("]"),m,h,aI)}if(aH=="{"){return av(s,"}",null,aI)}if(aH=="quasi"){return Z(P,aI)}return ad()}function ah(aG){if(aG.match(/[;\}\)\],]/)){return Z()}return Z(am)}function aj(aG){if(aG.match(/[;\}\)\],]/)){return Z()}return Z(aB)}function aa(aG,aH){if(aG==","){return ad(am)}return j(aG,aH,false)}function j(aG,aI,aK){var aH=aK==false?aa:j;var aJ=aK==false?am:aB;if(aG=="=>"){return ad(v,aK?M:V,w)}if(aG=="operator"){if(/\+\+|--/.test(aI)){return ad(aH)}if(aI=="?"){return ad(am,q(":"),aJ)}return ad(aJ)}if(aG=="quasi"){return Z(P,aH)}if(aG==";"){return}if(aG=="("){return av(aB,")","call",aH)}if(aG=="."){return ad(ak,aH)}if(aG=="["){return ad(aC("]"),ah,q("]"),h,aH)}}function P(aG,aH){if(aG!="quasi"){return Z()}if(aH.slice(aH.length-2)!="${"){return ad(P)}return ad(am,o)}function o(aG){if(aG=="}"){C.marked="string-2";C.state.tokenize=az;return ad(P)}}function V(aG){au(C.stream,C.state);return Z(aG=="{"?aE:am)}function M(aG){au(C.stream,C.state);return Z(aG=="{"?aE:aB)}function aF(aG){if(aG==":"){return ad(h,aE)}return Z(aa,q(";"),h)}function ak(aG){if(aG=="variable"){C.marked="property";return ad()}}function s(aG,aH){if(aG=="variable"||C.style=="keyword"){C.marked="property";if(aH=="get"||aH=="set"){return ad(H)}return ad(J)}else{if(aG=="number"||aG=="string"){C.marked=ay?"property":(C.style+" property");return ad(J)}else{if(aG=="jsonld-keyword"){return ad(J)}else{if(aG=="["){return ad(am,q("]"),J)}}}}}function H(aG){if(aG!="variable"){return Z(J)}C.marked="property";return ad(L)}function J(aG){if(aG==":"){return ad(aB)}if(aG=="("){return Z(L)}}function aq(aI,aG){function aH(aK){if(aK==","){var aJ=C.state.lexical;if(aJ.info=="call"){aJ.pos=(aJ.pos||0)+1}return ad(aI,aH)}if(aK==aG){return ad()}return ad(q(aG))}return function(aJ){if(aJ==aG){return ad()}return Z(aI,aH)}}function av(aJ,aG,aI){for(var aH=3;aH<arguments.length;aH++){C.cc.push(arguments[aH])}return ad(aC(aG,aI),aq(aJ,aG),h)}function x(aG){if(aG=="}"){return ad()}return Z(aE,x)}function S(aG){if(g&&aG==":"){return ad(ac)}}function ac(aG){if(aG=="variable"){C.marked="variable-3";return ad()}}function d(){return Z(i,S,ab,W)}function i(aG,aH){if(aG=="variable"){at(aH);return ad()}if(aG=="["){return av(i,"]")}if(aG=="{"){return av(aA,"}")}}function aA(aG,aH){if(aG=="variable"&&!C.stream.match(/^\s*:/,false)){at(aH);return ad(ab)}if(aG=="variable"){C.marked="property"}return ad(q(":"),i,ab)}function ab(aG,aH){if(aH=="="){return ad(aB)}}function W(aG){if(aG==","){return ad(d)}}function e(aG,aH){if(aG=="keyword b"&&aH=="else"){return ad(aC("form","else"),aE,h)}}function t(aG){if(aG=="("){return ad(aC(")"),D,q(")"),h)}}function D(aG){if(aG=="var"){return ad(d,q(";"),B)}if(aG==";"){return ad(B)}if(aG=="variable"){return ad(u)}return Z(am,q(";"),B)}function u(aG,aH){if(aH=="in"||aH=="of"){C.marked="keyword";return ad(am)}return ad(aa,B)}function B(aG,aH){if(aG==";"){return ad(A)}if(aH=="in"||aH=="of"){C.marked="keyword";return ad(am)}return Z(am,q(";"),A)}function A(aG){if(aG!=")"){ad(am)}}function L(aG,aH){if(aH=="*"){C.marked="keyword";return ad(L)}if(aG=="variable"){at(aH);return ad(L)}if(aG=="("){return ad(v,aC(")"),aq(ae,")"),h,aE,w)}}function ae(aG){if(aG=="spread"){return ad(ae)}return Z(i,S)}function U(aG,aH){if(aG=="variable"){at(aH);return ad(N)}}function N(aG,aH){if(aH=="extends"){return ad(am,N)}if(aG=="{"){return ad(aC("}"),n,h)}}function n(aG,aH){if(aG=="variable"||C.style=="keyword"){C.marked="property";if(aH=="get"||aH=="set"){return ad(c,L,n)}return ad(L,n)}if(aH=="*"){C.marked="keyword";return ad(n)}if(aG==";"){return ad(n)}if(aG=="}"){return ad()}}function c(aG){if(aG!="variable"){return Z()}C.marked="property";return ad()}function G(aG,aH){if(aG=="string"){return ad(aE)}if(aG=="variable"){at(aH);return ad(ag)}}function aD(aG,aH){if(aH=="*"){C.marked="keyword";return ad(ag,q(";"))}if(aH=="default"){C.marked="keyword";return ad(am,q(";"))}return Z(aE)}function af(aG){if(aG=="string"){return ad()}return Z(an,ag)}function an(aG,aH){if(aG=="{"){return av(an,"}")}if(aG=="variable"){at(aH)}return ad()}function ag(aG,aH){if(aH=="from"){C.marked="keyword";return ad(am)}}function m(aG){if(aG=="]"){return ad()}return Z(aB,al)}function al(aG){if(aG=="for"){return Z(aw,q("]"))}if(aG==","){return ad(aq(aj,"]"))}return Z(aq(aB,"]"))}function aw(aG){if(aG=="for"){return ad(t,aw)}if(aG=="if"){return ad(am,aw)}}return{startState:function(aH){var aG={tokenize:T,lastType:"sof",cc:[],lexical:new I((aH||0)-k,0,"block",false),localVars:ai.localVars,context:ai.localVars&&{vars:ai.localVars},indented:0};if(ai.globalVars&&typeof ai.globalVars=="object"){aG.globalVars=ai.globalVars}return aG},token:function(aI,aH){if(aI.sol()){if(!aH.lexical.hasOwnProperty("align")){aH.lexical.align=false}aH.indented=aI.indentation();au(aI,aH)}if(aH.tokenize!=ax&&aI.eatSpace()){return null}var aG=aH.tokenize(aI,aH);if(R=="comment"){return aG}aH.lastType=R=="operator"&&(F=="++"||F=="--")?"incdec":R;return f(aH,aG,R,F,aI)},indent:function(aM,aG){if(aM.tokenize==ax){return a.Pass}if(aM.tokenize!=T){return 0}var aL=aG&&aG.charAt(0),aJ=aM.lexical;if(!/^\s*else\b/.test(aG)){for(var aI=aM.cc.length-1;aI>=0;--aI){var aN=aM.cc[aI];if(aN==h){aJ=aJ.prev}else{if(aN!=e){break}}}}if(aJ.type=="stat"&&aL=="}"){aJ=aJ.prev}if(z&&aJ.type==")"&&aJ.prev.type=="stat"){aJ=aJ.prev}var aK=aJ.type,aH=aL==aK;if(aK=="vardef"){return aJ.indented+(aM.lastType=="operator"||aM.lastType==","?aJ.info+1:0)}else{if(aK=="form"&&aL=="{"){return aJ.indented}else{if(aK=="form"){return aJ.indented+k}else{if(aK=="stat"){return aJ.indented+(aM.lastType=="operator"||aM.lastType==","?z||k:0)}else{if(aJ.info=="switch"&&!aH&&ai.doubleIndentSwitch!=false){return aJ.indented+(/^(?:case|default)\b/.test(aG)?k:2*k)}else{if(aJ.align){return aJ.column+(aH?0:1)}else{return aJ.indented+(aH?0:k)}}}}}}},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:y?null:"/*",blockCommentEnd:y?null:"*/",lineComment:y?null:"//",fold:"brace",helperType:y?"json":"javascript",jsonldMode:ay,jsonMode:y}});a.registerHelper("wordChars","javascript",/[\w$]/);a.defineMIME("text/javascript","javascript");a.defineMIME("text/ecmascript","javascript");a.defineMIME("application/javascript","javascript");a.defineMIME("application/x-javascript","javascript");a.defineMIME("application/ecmascript","javascript");a.defineMIME("application/json",{name:"javascript",json:true});a.defineMIME("application/x-json",{name:"javascript",json:true});a.defineMIME("application/ld+json",{name:"javascript",jsonld:true});a.defineMIME("text/typescript",{name:"javascript",typescript:true});a.defineMIME("application/typescript",{name:"javascript",typescript:true})});
@@ -1 +1 @@
1
- (function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"),require("../xml/xml"),require("../javascript/javascript"),require("../css/css"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror","../xml/xml","../javascript/javascript","../css/css"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("htmlmixed",function(c,d){var b=a.getMode(c,{name:"xml",htmlMode:true,multilineTagIndentFactor:d.multilineTagIndentFactor,multilineTagIndentPastTag:d.multilineTagIndentPastTag});var n=a.getMode(c,"css");var l=[],k=d&&d.scriptTypes;l.push({matches:/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^$/i,mode:a.getMode(c,"javascript")});if(k){for(var e=0;e<k.length;++e){var j=k[e];l.push({matches:j.matches,mode:j.mode&&a.getMode(c,j.mode)})}}l.push({matches:/./,mode:a.getMode(c,"text/plain")});function f(t,r){var p=r.htmlState.tagName;var q=b.token(t,r.htmlState);if(p=="script"&&/\btag\b/.test(q)&&t.current()==">"){var u=t.string.slice(Math.max(0,t.pos-100),t.pos).match(/\btype\s*=\s*("[^"]+"|'[^']+'|\S+)[^<]*$/i);u=u?u[1]:"";if(u&&/[\"\']/.test(u.charAt(0))){u=u.slice(1,u.length-1)}for(var o=0;o<l.length;++o){var s=l[o];if(typeof s.matches=="string"?u==s.matches:s.matches.test(u)){if(s.mode){r.token=m;r.localMode=s.mode;r.localState=s.mode.startState&&s.mode.startState(b.indent(r.htmlState,""))}break}}}else{if(p=="style"&&/\btag\b/.test(q)&&t.current()==">"){r.token=g;r.localMode=n;r.localState=n.startState(b.indent(r.htmlState,""))}}return q}function h(s,o,p){var r=s.current();var q=r.search(o),i;if(q>-1){s.backUp(r.length-q)}else{if(i=r.match(/<\/?$/)){s.backUp(r.length);if(!s.match(o,false)){s.match(r)}}}return p}function m(o,i){if(o.match(/^<\/\s*script\s*>/i,false)){i.token=f;i.localState=i.localMode=null;return f(o,i)}return h(o,/<\/\s*script\s*>/,i.localMode.token(o,i.localState))}function g(o,i){if(o.match(/^<\/\s*style\s*>/i,false)){i.token=f;i.localState=i.localMode=null;return f(o,i)}return h(o,/<\/\s*style\s*>/,n.token(o,i.localState))}return{startState:function(){var i=b.startState();return{token:f,localMode:null,localState:null,htmlState:i}},copyState:function(o){if(o.localState){var i=a.copyState(o.localMode,o.localState)}return{token:o.token,localMode:o.localMode,localState:i,htmlState:a.copyState(b,o.htmlState)}},token:function(o,i){return i.token(o,i)},indent:function(o,i){if(!o.localMode||/^\s*<\//.test(i)){return b.indent(o.htmlState,i)}else{if(o.localMode.indent){return o.localMode.indent(o.localState,i)}else{return a.Pass}}},innerMode:function(i){return{state:i.localState||i.htmlState,mode:i.localMode||b}}}},"xml","javascript","css");a.defineMIME("text/html","htmlmixed")});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("xml",function(y,k){var p=y.indentUnit;var x=k.multilineTagIndentFactor||1;var d=k.multilineTagIndentPastTag;if(d==null){d=true}var w=k.htmlMode?{autoSelfClosers:{area:true,base:true,br:true,col:true,command:true,embed:true,frame:true,hr:true,img:true,input:true,keygen:true,link:true,meta:true,param:true,source:true,track:true,wbr:true},implicitlyClosed:{dd:true,li:true,optgroup:true,option:true,p:true,rp:true,rt:true,tbody:true,td:true,tfoot:true,th:true,tr:true},contextGrabbers:{dd:{dd:true,dt:true},dt:{dd:true,dt:true},li:{li:true},option:{option:true,optgroup:true},optgroup:{optgroup:true},p:{address:true,article:true,aside:true,blockquote:true,dir:true,div:true,dl:true,fieldset:true,footer:true,form:true,h1:true,h2:true,h3:true,h4:true,h5:true,h6:true,header:true,hgroup:true,hr:true,menu:true,nav:true,ol:true,p:true,pre:true,section:true,table:true,ul:true},rp:{rp:true,rt:true},rt:{rp:true,rt:true},tbody:{tbody:true,tfoot:true},td:{td:true,th:true},tfoot:{tbody:true},th:{td:true,th:true},thead:{tbody:true,tfoot:true},tr:{tr:true}},doNotIndent:{pre:true},allowUnquoted:true,allowMissing:true,caseFold:true}:{autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:false,allowMissing:false,caseFold:false};var c=k.alignCDATA;var f,g;function n(F,E){function C(G){E.tokenize=G;return G(F,E)}var D=F.next();if(D=="<"){if(F.eat("!")){if(F.eat("[")){if(F.match("CDATA[")){return C(v("atom","]]>"))}else{return null}}else{if(F.match("--")){return C(v("comment","-->"))}else{if(F.match("DOCTYPE",true,true)){F.eatWhile(/[\w\._\-]/);return C(z(1))}else{return null}}}}else{if(F.eat("?")){F.eatWhile(/[\w\._\-]/);E.tokenize=v("meta","?>");return"meta"}else{f=F.eat("/")?"closeTag":"openTag";E.tokenize=m;return"tag bracket"}}}else{if(D=="&"){var B;if(F.eat("#")){if(F.eat("x")){B=F.eatWhile(/[a-fA-F\d]/)&&F.eat(";")}else{B=F.eatWhile(/[\d]/)&&F.eat(";")}}else{B=F.eatWhile(/[\w\.\-:]/)&&F.eat(";")}return B?"atom":"error"}else{F.eatWhile(/[^&<]/);return null}}}function m(E,D){var C=E.next();if(C==">"||(C=="/"&&E.eat(">"))){D.tokenize=n;f=C==">"?"endTag":"selfcloseTag";return"tag bracket"}else{if(C=="="){f="equals";return null}else{if(C=="<"){D.tokenize=n;D.state=l;D.tagName=D.tagStart=null;var B=D.tokenize(E,D);return B?B+" tag error":"tag error"}else{if(/[\'\"]/.test(C)){D.tokenize=j(C);D.stringStartCol=E.column();return D.tokenize(E,D)}else{E.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/);return"word"}}}}}function j(B){var C=function(E,D){while(!E.eol()){if(E.next()==B){D.tokenize=m;break}}return"string"};C.isInAttribute=true;return C}function v(C,B){return function(E,D){while(!E.eol()){if(E.match(B)){D.tokenize=n;break}E.next()}return C}}function z(B){return function(E,D){var C;while((C=E.next())!=null){if(C=="<"){D.tokenize=z(B+1);return D.tokenize(E,D)}else{if(C==">"){if(B==1){D.tokenize=n;break}else{D.tokenize=z(B-1);return D.tokenize(E,D)}}}}return"meta"}}function r(C,B,D){this.prev=C.context;this.tagName=B;this.indent=C.indented;this.startOfLine=D;if(w.doNotIndent.hasOwnProperty(B)||(C.context&&C.context.noIndent)){this.noIndent=true}}function u(B){if(B.context){B.context=B.context.prev}}function q(D,C){var B;while(true){if(!D.context){return}B=D.context.tagName;if(!w.contextGrabbers.hasOwnProperty(B)||!w.contextGrabbers[B].hasOwnProperty(C)){return}u(D)}}function l(B,D,C){if(B=="openTag"){C.tagStart=D.column();return b}else{if(B=="closeTag"){return t}else{return l}}}function b(B,D,C){if(B=="word"){C.tagName=D.current();g="tag";return e}else{g="error";return b}}function t(C,E,D){if(C=="word"){var B=E.current();if(D.context&&D.context.tagName!=B&&w.implicitlyClosed.hasOwnProperty(D.context.tagName)){u(D)}if(D.context&&D.context.tagName==B){g="tag";return s}else{g="tag error";return A}}else{g="error";return A}}function s(C,B,D){if(C!="endTag"){g="error";return s}u(D);return l}function A(B,D,C){g="error";return s(B,D,C)}function e(E,C,F){if(E=="word"){g="attribute";return i}else{if(E=="endTag"||E=="selfcloseTag"){var D=F.tagName,B=F.tagStart;F.tagName=F.tagStart=null;if(E=="selfcloseTag"||w.autoSelfClosers.hasOwnProperty(D)){q(F,D)}else{q(F,D);F.context=new r(F,D,B==F.indented)}return l}}g="error";return e}function i(B,D,C){if(B=="equals"){return o}if(!w.allowMissing){g="error"}return e(B,D,C)}function o(B,D,C){if(B=="string"){return h}if(B=="word"&&w.allowUnquoted){g="string";return e}g="error";return e(B,D,C)}function h(B,D,C){if(B=="string"){return h}return e(B,D,C)}return{startState:function(){return{tokenize:n,state:l,indented:0,tagName:null,tagStart:null,context:null}},token:function(D,C){if(!C.tagName&&D.sol()){C.indented=D.indentation()}if(D.eatSpace()){return null}f=null;var B=C.tokenize(D,C);if((B||f)&&B!="comment"){g=null;C.state=C.state(f||B,D,C);if(g){B=g=="error"?B+" error":g}}return B},indent:function(G,C,F){var E=G.context;if(G.tokenize.isInAttribute){if(G.tagStart==G.indented){return G.stringStartCol+1}else{return G.indented+p}}if(E&&E.noIndent){return a.Pass}if(G.tokenize!=m&&G.tokenize!=n){return F?F.match(/^(\s*)/)[0].length:0}if(G.tagName){if(d){return G.tagStart+G.tagName.length+2}else{return G.tagStart+p*x}}if(c&&/<!\[CDATA\[/.test(C)){return 0}var B=C&&/^<(\/)?([\w_:\.-]*)/.exec(C);if(B&&B[1]){while(E){if(E.tagName==B[2]){E=E.prev;break}else{if(w.implicitlyClosed.hasOwnProperty(E.tagName)){E=E.prev}else{break}}}}else{if(B){while(E){var D=w.contextGrabbers[E.tagName];if(D&&D.hasOwnProperty(B[2])){E=E.prev}else{break}}}}while(E&&!E.startOfLine){E=E.prev}if(E){return E.indent+p}else{return 0}},electricInput:/<\/[\s\w:]+>$/,blockCommentStart:"<!--",blockCommentEnd:"-->",configuration:k.htmlMode?"html":"xml",helperType:k.htmlMode?"html":"xml"}});a.defineMIME("text/xml","xml");a.defineMIME("application/xml","xml");if(!a.mimeModes.hasOwnProperty("text/html")){a.defineMIME("text/html",{name:"xml",htmlMode:true})}});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("javascript",function(X,ah){var j=X.indentUnit;var x=ah.statementIndent;var aw=ah.jsonld;var w=ah.json||aw;var f=ah.typescript;var ao=function(){function aM(aO){return{type:aO,style:"keyword"}}var aH=aM("keyword a"),aF=aM("keyword b"),aE=aM("keyword c");var aG=aM("operator"),aK={type:"atom",style:"atom"};var aI={"if":aM("if"),"while":aH,"with":aH,"else":aF,"do":aF,"try":aF,"finally":aF,"return":aE,"break":aE,"continue":aE,"new":aE,"delete":aE,"throw":aE,"debugger":aE,"var":aM("var"),"const":aM("var"),let:aM("var"),"function":aM("function"),"catch":aM("catch"),"for":aM("for"),"switch":aM("switch"),"case":aM("case"),"default":aM("default"),"in":aG,"typeof":aG,"instanceof":aG,"true":aK,"false":aK,"null":aK,"undefined":aK,"NaN":aK,"Infinity":aK,"this":aM("this"),module:aM("module"),"class":aM("class"),"super":aM("atom"),yield:aE,"export":aM("export"),"import":aM("import"),"extends":aE};if(f){var aN={type:"variable",style:"variable-3"};var aJ={"interface":aM("interface"),"extends":aM("extends"),constructor:aM("constructor"),"public":aM("public"),"private":aM("private"),"protected":aM("protected"),"static":aM("static"),string:aN,number:aN,bool:aN,any:aN};for(var aL in aJ){aI[aL]=aJ[aL]}}return aI}();var M=/[+\-*&%=<>!?|~^]/;var an=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function C(aH){var aF=false,aE,aG=false;while((aE=aH.next())!=null){if(!aF){if(aE=="/"&&!aG){return}if(aE=="["){aG=true}else{if(aG&&aE=="]"){aG=false}}}aF=!aF&&aE=="\\"}}var P,D;function I(aG,aF,aE){P=aG;D=aE;return aF}function R(aI,aG){var aE=aI.next();if(aE=='"'||aE=="'"){aG.tokenize=O(aE);return aG.tokenize(aI,aG)}else{if(aE=="."&&aI.match(/^\d+(?:[eE][+\-]?\d+)?/)){return I("number","number")}else{if(aE=="."&&aI.match("..")){return I("spread","meta")}else{if(/[\[\]{}\(\),;\:\.]/.test(aE)){return I(aE)}else{if(aE=="="&&aI.eat(">")){return I("=>","operator")}else{if(aE=="0"&&aI.eat(/x/i)){aI.eatWhile(/[\da-f]/i);return I("number","number")}else{if(/\d/.test(aE)){aI.match(/^\d*(?:\.\d*)?(?:[eE][+\-]?\d+)?/);return I("number","number")}else{if(aE=="/"){if(aI.eat("*")){aG.tokenize=av;return av(aI,aG)}else{if(aI.eat("/")){aI.skipToEnd();return I("comment","comment")}else{if(aG.lastType=="operator"||aG.lastType=="keyword c"||aG.lastType=="sof"||/^[\[{}\(,;:]$/.test(aG.lastType)){C(aI);aI.eatWhile(/[gimy]/);return I("regexp","string-2")}else{aI.eatWhile(M);return I("operator","operator",aI.current())}}}}else{if(aE=="`"){aG.tokenize=ax;return ax(aI,aG)}else{if(aE=="#"){aI.skipToEnd();return I("error","error")}else{if(M.test(aE)){aI.eatWhile(M);return I("operator","operator",aI.current())}else{aI.eatWhile(/[\w\$_]/);var aH=aI.current(),aF=ao.propertyIsEnumerable(aH)&&ao[aH];return(aF&&aG.lastType!=".")?I(aF.type,aF.style,aH):I("variable","variable",aH)}}}}}}}}}}}}function O(aE){return function(aI,aG){var aH=false,aF;if(aw&&aI.peek()=="@"&&aI.match(an)){aG.tokenize=R;return I("jsonld-keyword","meta")}while((aF=aI.next())!=null){if(aF==aE&&!aH){break}aH=!aH&&aF=="\\"}if(!aH){aG.tokenize=R}return I("string","string")}}function av(aH,aG){var aE=false,aF;while(aF=aH.next()){if(aF=="/"&&aE){aG.tokenize=R;break}aE=(aF=="*")}return I("comment","comment")}function ax(aH,aF){var aG=false,aE;while((aE=aH.next())!=null){if(!aG&&(aE=="`"||aE=="$"&&aH.eat("{"))){aF.tokenize=R;break}aG=!aG&&aE=="\\"}return I("quasi","string-2",aH.current())}var k="([{}])";function ar(aK,aH){if(aH.fatArrowAt){aH.fatArrowAt=null}var aG=aK.string.indexOf("=>",aK.start);if(aG<0){return}var aJ=0,aF=false;for(var aL=aG-1;aL>=0;--aL){var aE=aK.string.charAt(aL);var aI=k.indexOf(aE);if(aI>=0&&aI<3){if(!aJ){++aL;break}if(--aJ==0){break}}else{if(aI>=3&&aI<6){++aJ}else{if(/[$\w]/.test(aE)){aF=true}else{if(aF&&!aJ){++aL;break}}}}}if(aF&&!aJ){aH.fatArrowAt=aL}}var b={atom:true,number:true,variable:true,string:true,regexp:true,"this":true,"jsonld-keyword":true};function G(aJ,aF,aE,aI,aG,aH){this.indented=aJ;this.column=aF;this.type=aE;this.prev=aG;this.info=aH;if(aI!=null){this.align=aI}}function p(aH,aG){for(var aF=aH.localVars;aF;aF=aF.next){if(aF.name==aG){return true}}for(var aE=aH.context;aE;aE=aE.prev){for(var aF=aE.vars;aF;aF=aF.next){if(aF.name==aG){return true}}}}function e(aI,aF,aE,aH,aJ){var aK=aI.cc;A.state=aI;A.stream=aJ;A.marked=null,A.cc=aK;if(!aI.lexical.hasOwnProperty("align")){aI.lexical.align=true}while(true){var aG=aK.length?aK.pop():w?al:aC;if(aG(aE,aH)){while(aK.length&&aK[aK.length-1].lex){aK.pop()()}if(A.marked){return A.marked}if(aE=="variable"&&p(aI,aH)){return"variable-2"}return aF}}}var A={state:null,column:null,marked:null,cc:null};function Y(){for(var aE=arguments.length-1;aE>=0;aE--){A.cc.push(arguments[aE])}}function ac(){Y.apply(null,arguments);return true}function aq(aF){function aE(aI){for(var aH=aI;aH;aH=aH.next){if(aH.name==aF){return true}}return false}var aG=A.state;if(aG.context){A.marked="def";if(aE(aG.localVars)){return}aG.localVars={name:aF,next:aG.localVars}}else{if(aE(aG.globalVars)){return}if(ah.globalVars){aG.globalVars={name:aF,next:aG.globalVars}}}}var n={name:"this",next:{name:"arguments"}};function t(){A.state.context={prev:A.state.context,vars:A.state.localVars};A.state.localVars=n}function u(){A.state.localVars=A.state.context.vars;A.state.context=A.state.context.prev}function aA(aF,aG){var aE=function(){var aI=A.state,aH=aI.indented;if(aI.lexical.type=="stat"){aH=aI.lexical.indented}aI.lexical=new G(aH,A.stream.column(),aF,null,aI.lexical,aG)};aE.lex=true;return aE}function g(){var aE=A.state;if(aE.lexical.prev){if(aE.lexical.type==")"){aE.indented=aE.lexical.indented}aE.lexical=aE.lexical.prev}}g.lex=true;function o(aE){function aF(aG){if(aG==aE){return ac()}else{if(aE==";"){return Y()}else{return ac(aF)}}}return aF}function aC(aE,aF){if(aE=="var"){return ac(aA("vardef",aF.length),c,o(";"),g)}if(aE=="keyword a"){return ac(aA("form"),al,aC,g)}if(aE=="keyword b"){return ac(aA("form"),aC,g)}if(aE=="{"){return ac(aA("}"),v,g)}if(aE==";"){return ac()}if(aE=="if"){if(A.state.lexical.info=="else"&&A.state.cc[A.state.cc.length-1]==g){A.state.cc.pop()()}return ac(aA("form"),al,aC,g,d)}if(aE=="function"){return ac(J)}if(aE=="for"){return ac(aA("form"),r,aC,g)}if(aE=="variable"){return ac(aA("stat"),aD)}if(aE=="switch"){return ac(aA("form"),al,aA("}","switch"),o("{"),v,g,g)}if(aE=="case"){return ac(al,o(":"))}if(aE=="default"){return ac(o(":"))}if(aE=="catch"){return ac(aA("form"),t,o("("),ad,o(")"),aC,g,u)}if(aE=="module"){return ac(aA("form"),t,E,u,g)}if(aE=="class"){return ac(aA("form"),T,S,g)}if(aE=="export"){return ac(aA("form"),aB,g)}if(aE=="import"){return ac(aA("form"),ae,g)}return Y(aA("stat"),al,o(";"),g)}function al(aE){return W(aE,false)}function az(aE){return W(aE,true)}function W(aF,aH){if(A.state.fatArrowAt==A.stream.start){var aE=aH?K:U;if(aF=="("){return ac(t,aA(")"),ap(h,")"),g,o("=>"),aE,u)}else{if(aF=="variable"){return Y(t,h,o("=>"),aE,u)}}}var aG=aH?i:Z;if(b.hasOwnProperty(aF)){return ac(aG)}if(aF=="function"){return ac(J,aG)}if(aF=="keyword c"){return ac(aH?ai:ag)}if(aF=="("){return ac(aA(")"),ag,au,o(")"),g,aG)}if(aF=="operator"||aF=="spread"){return ac(aH?az:al)}if(aF=="["){return ac(aA("]"),l,g,aG)}if(aF=="{"){return at(q,"}",null,aG)}if(aF=="quasi"){return Y(N,aG)}return ac()}function ag(aE){if(aE.match(/[;\}\)\],]/)){return Y()}return Y(al)}function ai(aE){if(aE.match(/[;\}\)\],]/)){return Y()}return Y(az)}function Z(aE,aF){if(aE==","){return ac(al)}return i(aE,aF,false)}function i(aE,aG,aI){var aF=aI==false?Z:i;var aH=aI==false?al:az;if(aG=="=>"){return ac(t,aI?K:U,u)}if(aE=="operator"){if(/\+\+|--/.test(aG)){return ac(aF)}if(aG=="?"){return ac(al,o(":"),aH)}return ac(aH)}if(aE=="quasi"){return Y(N,aF)}if(aE==";"){return}if(aE=="("){return at(az,")","call",aF)}if(aE=="."){return ac(aj,aF)}if(aE=="["){return ac(aA("]"),ag,o("]"),g,aF)}}function N(aE,aF){if(aE!="quasi"){return Y()}if(aF.slice(aF.length-2)!="${"){return ac(N)}return ac(al,m)}function m(aE){if(aE=="}"){A.marked="string-2";A.state.tokenize=ax;return ac(N)}}function U(aE){ar(A.stream,A.state);if(aE=="{"){return Y(aC)}return Y(al)}function K(aE){ar(A.stream,A.state);if(aE=="{"){return Y(aC)}return Y(az)}function aD(aE){if(aE==":"){return ac(g,aC)}return Y(Z,o(";"),g)}function aj(aE){if(aE=="variable"){A.marked="property";return ac()}}function q(aE,aF){if(aE=="variable"){A.marked="property";if(aF=="get"||aF=="set"){return ac(F)}}else{if(aE=="number"||aE=="string"){A.marked=aw?"property":(aE+" property")}else{if(aE=="["){return ac(al,o("]"),H)}}}if(b.hasOwnProperty(aE)){return ac(H)}}function F(aE){if(aE!="variable"){return Y(H)}A.marked="property";return ac(J)}function H(aE){if(aE==":"){return ac(az)}if(aE=="("){return Y(J)}}function ap(aG,aE){function aF(aI){if(aI==","){var aH=A.state.lexical;if(aH.info=="call"){aH.pos=(aH.pos||0)+1}return ac(aG,aF)}if(aI==aE){return ac()}return ac(o(aE))}return function(aH){if(aH==aE){return ac()}return Y(aG,aF)}}function at(aH,aE,aG){for(var aF=3;aF<arguments.length;aF++){A.cc.push(arguments[aF])}return ac(aA(aE,aG),ap(aH,aE),g)}function v(aE){if(aE=="}"){return ac()}return Y(aC,v)}function Q(aE){if(f&&aE==":"){return ac(ab)}}function ab(aE){if(aE=="variable"){A.marked="variable-3";return ac()}}function c(){return Y(h,Q,aa,V)}function h(aE,aF){if(aE=="variable"){aq(aF);return ac()}if(aE=="["){return at(h,"]")}if(aE=="{"){return at(ay,"}")}}function ay(aE,aF){if(aE=="variable"&&!A.stream.match(/^\s*:/,false)){aq(aF);return ac(aa)}if(aE=="variable"){A.marked="property"}return ac(o(":"),h,aa)}function aa(aE,aF){if(aF=="="){return ac(az)}}function V(aE){if(aE==","){return ac(c)}}function d(aE,aF){if(aE=="keyword b"&&aF=="else"){return ac(aA("form","else"),aC,g)}}function r(aE){if(aE=="("){return ac(aA(")"),B,o(")"),g)}}function B(aE){if(aE=="var"){return ac(c,o(";"),z)}if(aE==";"){return ac(z)}if(aE=="variable"){return ac(s)}return Y(al,o(";"),z)}function s(aE,aF){if(aF=="in"||aF=="of"){A.marked="keyword";return ac(al)}return ac(Z,z)}function z(aE,aF){if(aE==";"){return ac(y)}if(aF=="in"||aF=="of"){A.marked="keyword";return ac(al)}return Y(al,o(";"),y)}function y(aE){if(aE!=")"){ac(al)}}function J(aE,aF){if(aF=="*"){A.marked="keyword";return ac(J)}if(aE=="variable"){aq(aF);return ac(J)}if(aE=="("){return ac(t,aA(")"),ap(ad,")"),g,aC,u)}}function ad(aE){if(aE=="spread"){return ac(ad)}return Y(h,Q)}function T(aE,aF){if(aE=="variable"){aq(aF);return ac(L)}}function L(aE,aF){if(aF=="extends"){return ac(al)}}function S(aE){if(aE=="{"){return at(q,"}")}}function E(aE,aF){if(aE=="string"){return ac(aC)}if(aE=="variable"){aq(aF);return ac(af)}}function aB(aE,aF){if(aF=="*"){A.marked="keyword";return ac(af,o(";"))}if(aF=="default"){A.marked="keyword";return ac(al,o(";"))}return Y(aC)}function ae(aE){if(aE=="string"){return ac()}return Y(am,af)}function am(aE,aF){if(aE=="{"){return at(am,"}")}if(aE=="variable"){aq(aF)}return ac()}function af(aE,aF){if(aF=="from"){A.marked="keyword";return ac(al)}}function l(aE){if(aE=="]"){return ac()}return Y(az,ak)}function ak(aE){if(aE=="for"){return Y(au,o("]"))}if(aE==","){return ac(ap(az,"]"))}return Y(ap(az,"]"))}function au(aE){if(aE=="for"){return ac(r,au)}if(aE=="if"){return ac(al,au)}}return{startState:function(aF){var aE={tokenize:R,lastType:"sof",cc:[],lexical:new G((aF||0)-j,0,"block",false),localVars:ah.localVars,context:ah.localVars&&{vars:ah.localVars},indented:0};if(ah.globalVars&&typeof ah.globalVars=="object"){aE.globalVars=ah.globalVars}return aE},token:function(aG,aF){if(aG.sol()){if(!aF.lexical.hasOwnProperty("align")){aF.lexical.align=false}aF.indented=aG.indentation();ar(aG,aF)}if(aF.tokenize!=av&&aG.eatSpace()){return null}var aE=aF.tokenize(aG,aF);if(P=="comment"){return aE}aF.lastType=P=="operator"&&(D=="++"||D=="--")?"incdec":P;return e(aF,aE,P,D,aG)},indent:function(aK,aE){if(aK.tokenize==av){return a.Pass}if(aK.tokenize!=R){return 0}var aJ=aE&&aE.charAt(0),aH=aK.lexical;if(!/^\s*else\b/.test(aE)){for(var aG=aK.cc.length-1;aG>=0;--aG){var aL=aK.cc[aG];if(aL==g){aH=aH.prev}else{if(aL!=d){break}}}}if(aH.type=="stat"&&aJ=="}"){aH=aH.prev}if(x&&aH.type==")"&&aH.prev.type=="stat"){aH=aH.prev}var aI=aH.type,aF=aJ==aI;if(aI=="vardef"){return aH.indented+(aK.lastType=="operator"||aK.lastType==","?aH.info+1:0)}else{if(aI=="form"&&aJ=="{"){return aH.indented}else{if(aI=="form"){return aH.indented+j}else{if(aI=="stat"){return aH.indented+(aK.lastType=="operator"||aK.lastType==","?x||j:0)}else{if(aH.info=="switch"&&!aF&&ah.doubleIndentSwitch!=false){return aH.indented+(/^(?:case|default)\b/.test(aE)?j:2*j)}else{if(aH.align){return aH.column+(aF?0:1)}else{return aH.indented+(aF?0:j)}}}}}}},electricChars:":{}",blockCommentStart:w?null:"/*",blockCommentEnd:w?null:"*/",lineComment:w?null:"//",fold:"brace",helperType:w?"json":"javascript",jsonldMode:aw,jsonMode:w}});a.registerHelper("wordChars","javascript",/[\\w$]/);a.defineMIME("text/javascript","javascript");a.defineMIME("text/ecmascript","javascript");a.defineMIME("application/javascript","javascript");a.defineMIME("application/ecmascript","javascript");a.defineMIME("application/json",{name:"javascript",json:true});a.defineMIME("application/x-json",{name:"javascript",json:true});a.defineMIME("application/ld+json",{name:"javascript",jsonld:true});a.defineMIME("text/typescript",{name:"javascript",typescript:true});a.defineMIME("application/typescript",{name:"javascript",typescript:true})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(m){m.defineMode("css",function(N,B){if(!B.propertyKeywords){B=m.resolveMode("text/css")}var H=N.indentUnit,t=B.tokenHooks,M=B.mediaTypes||{},D=B.mediaFeatures||{},A=B.propertyKeywords||{},u=B.nonStandardPropertyKeywords||{},G=B.colorKeywords||{},J=B.valueKeywords||{},w=B.fontProperties||{},E=B.allowNested;var v,F;function O(R,S){v=S;return R}function Q(U,T){var S=U.next();if(t[S]){var R=t[S](U,T);if(R!==false){return R}}if(S=="@"){U.eatWhile(/[\w\\\-]/);return O("def",U.current())}else{if(S=="="||(S=="~"||S=="|")&&U.eat("=")){return O(null,"compare")}else{if(S=='"'||S=="'"){T.tokenize=C(S);return T.tokenize(U,T)}else{if(S=="#"){U.eatWhile(/[\w\\\-]/);return O("atom","hash")}else{if(S=="!"){U.match(/^\s*\w*/);return O("keyword","important")}else{if(/\d/.test(S)||S=="."&&U.eat(/\d/)){U.eatWhile(/[\w.%]/);return O("number","unit")}else{if(S==="-"){if(/[\d.]/.test(U.peek())){U.eatWhile(/[\w.%]/);return O("number","unit")}else{if(U.match(/^\w+-/)){return O("meta","meta")}}}else{if(/[,+>*\/]/.test(S)){return O(null,"select-op")}else{if(S=="."&&U.match(/^-?[_a-z][_a-z0-9-]*/i)){return O("qualifier","qualifier")}else{if(/[:;{}\[\]\(\)]/.test(S)){return O(null,S)}else{if(S=="u"&&U.match("rl(")){U.backUp(1);T.tokenize=P;return O("property","word")}else{if(/[\w\\\-]/.test(S)){U.eatWhile(/[\w\\\-]/);return O("property","word")}else{return O(null,null)}}}}}}}}}}}}}function C(R){return function(V,T){var U=false,S;while((S=V.next())!=null){if(S==R&&!U){if(R==")"){V.backUp(1)}break}U=!U&&S=="\\"}if(S==R||!U&&R!=")"){T.tokenize=null}return O("string","string")}}function P(S,R){S.next();if(!S.match(/\s*[\"\')]/,false)){R.tokenize=C(")")}else{R.tokenize=null}return O(null,"(")}function I(S,R,T){this.type=S;this.indent=R;this.prev=T}function y(S,T,R){S.context=new I(R,T.indentation()+H,S.context);return R}function K(R){R.context=R.context.prev;return R.context.type}function s(R,T,S){return x[S.context.type](R,T,S)}function L(S,U,T,V){for(var R=V||1;R>0;R--){T.context=T.context.prev}return s(S,U,T)}function z(S){var R=S.current().toLowerCase();if(J.hasOwnProperty(R)){F="atom"}else{if(G.hasOwnProperty(R)){F="keyword"}else{F="variable"}}}var x={};x.top=function(R,T,S){if(R=="{"){return y(S,T,"block")}else{if(R=="}"&&S.context.prev){return K(S)}else{if(R=="@media"){return y(S,T,"media")}else{if(R=="@font-face"){return"font_face_before"}else{if(/^@(-(moz|ms|o|webkit)-)?keyframes$/.test(R)){return"keyframes"}else{if(R&&R.charAt(0)=="@"){return y(S,T,"at")}else{if(R=="hash"){F="builtin"}else{if(R=="word"){F="tag"}else{if(R=="variable-definition"){return"maybeprop"}else{if(R=="interpolation"){return y(S,T,"interpolation")}else{if(R==":"){return"pseudo"}else{if(E&&R=="("){return y(S,T,"parens")}}}}}}}}}}}}return S.context.type};x.block=function(R,U,S){if(R=="word"){var T=U.current().toLowerCase();if(A.hasOwnProperty(T)){F="property";return"maybeprop"}else{if(u.hasOwnProperty(T)){F="string-2";return"maybeprop"}else{if(E){F=U.match(/^\s*:/,false)?"property":"tag";return"block"}else{F+=" error";return"maybeprop"}}}}else{if(R=="meta"){return"block"}else{if(!E&&(R=="hash"||R=="qualifier")){F="error";return"block"}else{return x.top(R,U,S)}}}};x.maybeprop=function(R,T,S){if(R==":"){return y(S,T,"prop")}return s(R,T,S)};x.prop=function(R,T,S){if(R==";"){return K(S)}if(R=="{"&&E){return y(S,T,"propBlock")}if(R=="}"||R=="{"){return L(R,T,S)}if(R=="("){return y(S,T,"parens")}if(R=="hash"&&!/^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/.test(T.current())){F+=" error"}else{if(R=="word"){z(T)}else{if(R=="interpolation"){return y(S,T,"interpolation")}}}return"prop"};x.propBlock=function(S,R,T){if(S=="}"){return K(T)}if(S=="word"){F="property";return"maybeprop"}return T.context.type};x.parens=function(R,T,S){if(R=="{"||R=="}"){return L(R,T,S)}if(R==")"){return K(S)}if(R=="("){return y(S,T,"parens")}if(R=="word"){z(T)}return"parens"};x.pseudo=function(R,T,S){if(R=="word"){F="variable-3";return S.context.type}return s(R,T,S)};x.media=function(R,U,S){if(R=="("){return y(S,U,"media_parens")}if(R=="}"){return L(R,U,S)}if(R=="{"){return K(S)&&y(S,U,E?"block":"top")}if(R=="word"){var T=U.current().toLowerCase();if(T=="only"||T=="not"||T=="and"){F="keyword"}else{if(M.hasOwnProperty(T)){F="attribute"}else{if(D.hasOwnProperty(T)){F="property"}else{F="error"}}}}return S.context.type};x.media_parens=function(R,T,S){if(R==")"){return K(S)}if(R=="{"||R=="}"){return L(R,T,S,2)}return x.media(R,T,S)};x.font_face_before=function(R,T,S){if(R=="{"){return y(S,T,"font_face")}return s(R,T,S)};x.font_face=function(R,T,S){if(R=="}"){return K(S)}if(R=="word"){if(!w.hasOwnProperty(T.current().toLowerCase())){F="error"}else{F="property"}return"maybeprop"}return"font_face"};x.keyframes=function(R,T,S){if(R=="word"){F="variable";return"keyframes"}if(R=="{"){return y(S,T,"top")}return s(R,T,S)};x.at=function(R,T,S){if(R==";"){return K(S)}if(R=="{"||R=="}"){return L(R,T,S)}if(R=="word"){F="tag"}else{if(R=="hash"){F="builtin"}}return"at"};x.interpolation=function(R,T,S){if(R=="}"){return K(S)}if(R=="{"||R==";"){return L(R,T,S)}if(R!="variable"){F="error"}return"interpolation"};return{startState:function(R){return{tokenize:null,state:"top",context:new I("top",R||0,null)}},token:function(T,S){if(!S.tokenize&&T.eatSpace()){return null}var R=(S.tokenize||Q)(T,S);if(R&&typeof R=="object"){v=R[1];R=R[0]}F=R;S.state=x[S.state](v,T,S);return F},indent:function(V,T){var S=V.context,U=T&&T.charAt(0);var R=S.indent;if(S.type=="prop"&&(U=="}"||U==")")){S=S.prev}if(S.prev&&(U=="}"&&(S.type=="block"||S.type=="top"||S.type=="interpolation"||S.type=="font_face")||U==")"&&(S.type=="parens"||S.type=="media_parens")||U=="{"&&(S.type=="at"||S.type=="media"))){R=S.indent-H;S=S.prev}return R},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",fold:"brace"}});function f(u){var t={};for(var s=0;s<u.length;++s){t[u[s]]=true}return t}var a=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],p=f(a);var r=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid"],i=f(r);var c=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","baseline-shift","binding","bleed","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-feature-settings","font-family","font-kerning","font-language-override","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-weight","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-position","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","justify-content","left","letter-spacing","line-break","line-height","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marker-offset","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","max-height","max-width","min-height","min-width","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotation","rotation-point","ruby-align","ruby-overhang","ruby-position","ruby-span","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-outline","text-overflow","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","word-break","word-spacing","word-wrap","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode"],h=f(c);var d=["scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-3d-light-color","scrollbar-track-color","shape-inside","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","zoom"],d=f(d);var b=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],k=f(b);var j=["above","absolute","activeborder","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","auto","avoid","avoid-column","avoid-page","avoid-region","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","column","compact","condensed","contain","content","content-box","context-menu","continuous","copy","cover","crop","cross","crosshair","currentcolor","cursive","dashed","decimal","decimal-leading-zero","default","default-button","destination-atop","destination-in","destination-out","destination-over","devanagari","disc","discard","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ew-resize","expanded","extra-condensed","extra-expanded","fantasy","fast","fill","fixed","flat","footnotes","forwards","from","geometricPrecision","georgian","graytext","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-table","inset","inside","intrinsic","invert","italic","justify","kannada","katakana","katakana-iroha","keep-all","khmer","landscape","lao","large","larger","left","level","lighter","line-through","linear","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","malayalam","match","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","nw-resize","nwse-resize","oblique","octal","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","round","row-resize","rtl","run-in","running","s-resize","sans-serif","scroll","scrollbar","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","semi-condensed","semi-expanded","separate","serif","show","sidama","single","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","solid","somali","source-atop","source-in","source-out","source-over","space","square","square-button","start","static","status-bar","stretch","stroke","sub","subpixel-antialiased","super","sw-resize","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","transparent","ultra-condensed","ultra-expanded","underline","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","vertical","vertical-text","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","x-large","x-small","xor","xx-large","xx-small"],n=f(j);var o=["font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"],e=f(o);var l=a.concat(r).concat(c).concat(d).concat(b).concat(j);m.registerHelper("hintWords","css",l);function q(v,u){var s=false,t;while((t=v.next())!=null){if(s&&t=="/"){u.tokenize=null;break}s=(t=="*")}return["comment","comment"]}function g(t,s){if(t.skipTo("-->")){t.match("-->");s.tokenize=null}else{t.skipToEnd()}return["comment","comment"]}m.defineMIME("text/css",{mediaTypes:p,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:d,colorKeywords:k,valueKeywords:n,fontProperties:e,tokenHooks:{"<":function(t,s){if(!t.match("!--")){return false}s.tokenize=g;return g(t,s)},"/":function(t,s){if(!t.eat("*")){return false}s.tokenize=q;return q(t,s)}},name:"css"});m.defineMIME("text/x-scss",{mediaTypes:p,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:d,colorKeywords:k,valueKeywords:n,fontProperties:e,allowNested:true,tokenHooks:{"/":function(t,s){if(t.eat("/")){t.skipToEnd();return["comment","comment"]}else{if(t.eat("*")){s.tokenize=q;return q(t,s)}else{return["operator","operator"]}}},":":function(s){if(s.match(/\s*{/)){return[null,"{"]}return false},"$":function(s){s.match(/^[\w-]+/);if(s.match(/^\s*:/,false)){return["variable-2","variable-definition"]}return["variable-2","variable"]},"#":function(s){if(!s.eat("{")){return false}return[null,"interpolation"]}},name:"css",helperType:"scss"});m.defineMIME("text/x-less",{mediaTypes:p,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:d,colorKeywords:k,valueKeywords:n,fontProperties:e,allowNested:true,tokenHooks:{"/":function(t,s){if(t.eat("/")){t.skipToEnd();return["comment","comment"]}else{if(t.eat("*")){s.tokenize=q;return q(t,s)}else{return["operator","operator"]}}},"@":function(s){if(s.match(/^(charset|document|font-face|import|(-(moz|ms|o|webkit)-)?keyframes|media|namespace|page|supports)\b/,false)){return false}s.eatWhile(/[\w\\\-]/);if(s.match(/^\s*:/,false)){return["variable-2","variable-definition"]}return["variable-2","variable"]},"&":function(){return["atom","atom"]}},name:"css",helperType:"less"})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(d){d.defineMode("clike",function(y,l){var s=y.indentUnit,q=l.statementIndentUnit||s,t=l.dontAlignCalls,n=l.keywords||{},z=l.builtin||{},u=l.blockKeywords||{},j=l.atoms||{},i=l.hooks||{},p=l.multiLineStrings;var o=/[+\-*&%=<>!?|\/]/;var w;function A(F,D){var C=F.next();if(i[C]){var B=i[C](F,D);if(B!==false){return B}}if(C=='"'||C=="'"){D.tokenize=m(C);return D.tokenize(F,D)}if(/[\[\]{}\(\),;\:\.]/.test(C)){w=C;return null}if(/\d/.test(C)){F.eatWhile(/[\w\.]/);return"number"}if(C=="/"){if(F.eat("*")){D.tokenize=r;return r(F,D)}if(F.eat("/")){F.skipToEnd();return"comment"}}if(o.test(C)){F.eatWhile(o);return"operator"}F.eatWhile(/[\w\$_]/);var E=F.current();if(n.propertyIsEnumerable(E)){if(u.propertyIsEnumerable(E)){w="newstatement"}return"keyword"}if(z.propertyIsEnumerable(E)){if(u.propertyIsEnumerable(E)){w="newstatement"}return"builtin"}if(j.propertyIsEnumerable(E)){return"atom"}return"variable"}function m(B){return function(G,E){var F=false,D,C=false;while((D=G.next())!=null){if(D==B&&!F){C=true;break}F=!F&&D=="\\"}if(C||!(F||p)){E.tokenize=null}return"string"}}function r(E,D){var B=false,C;while(C=E.next()){if(C=="/"&&B){D.tokenize=null;break}B=(C=="*")}return"comment"}function v(F,C,B,E,D){this.indented=F;this.column=C;this.type=B;this.align=E;this.prev=D}function k(E,C,D){var B=E.indented;if(E.context&&E.context.type=="statement"){B=E.context.indented}return E.context=new v(B,C,D,null,E.context)}function x(C){var B=C.context.type;if(B==")"||B=="]"||B=="}"){C.indented=C.context.indented}return C.context=C.context.prev}return{startState:function(B){return{tokenize:null,context:new v((B||0)-s,0,"top",false),indented:0,startOfLine:true}},token:function(E,D){var B=D.context;if(E.sol()){if(B.align==null){B.align=false}D.indented=E.indentation();D.startOfLine=true}if(E.eatSpace()){return null}w=null;var C=(D.tokenize||A)(E,D);if(C=="comment"||C=="meta"){return C}if(B.align==null){B.align=true}if((w==";"||w==":"||w==",")&&B.type=="statement"){x(D)}else{if(w=="{"){k(D,E.column(),"}")}else{if(w=="["){k(D,E.column(),"]")}else{if(w=="("){k(D,E.column(),")")}else{if(w=="}"){while(B.type=="statement"){B=x(D)}if(B.type=="}"){B=x(D)}while(B.type=="statement"){B=x(D)}}else{if(w==B.type){x(D)}else{if(((B.type=="}"||B.type=="top")&&w!=";")||(B.type=="statement"&&w=="newstatement")){k(D,E.column(),"statement")}}}}}}}D.startOfLine=false;return C},indent:function(F,C){if(F.tokenize!=A&&F.tokenize!=null){return d.Pass}var B=F.context,E=C&&C.charAt(0);if(B.type=="statement"&&E=="}"){B=B.prev}var D=E==B.type;if(B.type=="statement"){return B.indented+(E=="{"?0:q)}else{if(B.align&&(!t||B.type!=")")){return B.column+(D?0:1)}else{if(B.type==")"&&!D){return B.indented+q}else{return B.indented+(D?0:s)}}}},electricChars:"{}",blockCommentStart:"/*",blockCommentEnd:"*/",lineComment:"//",fold:"brace"}});function g(m){var k={},l=m.split(" ");for(var j=0;j<l.length;++j){k[l[j]]=true}return k}var c="auto if break int case long char register continue return default short do sizeof double static else struct entry switch extern typedef float union for unsigned goto while enum void const signed volatile";function h(j,i){if(!i.startOfLine){return false}for(;;){if(j.skipTo("\\")){j.next();if(j.eol()){i.tokenize=h;break}}else{j.skipToEnd();i.tokenize=null;break}}return"meta"}function b(k,j){k.backUp(1);if(k.match(/(R|u8R|uR|UR|LR)/)){var i=k.match(/"(.{0,16})\(/);if(!i){return false}j.cpp11RawStringDelim=i[1];j.tokenize=a;return a(k,j)}if(k.match(/(u8|u|U|L)/)){if(k.match(/["']/,false)){return"string"}return false}k.next();return false}function e(k,j){var i;while((i=k.next())!=null){if(i=='"'&&!k.eat('"')){j.tokenize=null;break}}return"string"}function a(l,k){var j=new RegExp(".*?\\)"+k.cpp11RawStringDelim+'"');var i=l.match(j);if(i){k.tokenize=null}else{l.skipToEnd()}return"string"}function f(j,n){if(typeof j=="string"){j=[j]}var m=[];function l(i){if(i){for(var o in i){if(i.hasOwnProperty(o)){m.push(o)}}}}l(n.keywords);l(n.builtin);l(n.atoms);if(m.length){n.helperType=j[0];d.registerHelper("hintWords",j[0],m)}for(var k=0;k<j.length;++k){d.defineMIME(j[k],n)}}f(["text/x-csrc","text/x-c","text/x-chdr"],{name:"clike",keywords:g(c),blockKeywords:g("case do else for if switch while struct"),atoms:g("null"),hooks:{"#":h},modeProps:{fold:["brace","include"]}});f(["text/x-c++src","text/x-c++hdr"],{name:"clike",keywords:g(c+" asm dynamic_cast namespace reinterpret_cast try bool explicit new static_cast typeid catch operator template typename class friend private this using const_cast inline public throw virtual delete mutable protected wchar_t alignas alignof constexpr decltype nullptr noexcept thread_local final static_assert override"),blockKeywords:g("catch class do else finally for if struct switch try while"),atoms:g("true false null"),hooks:{"#":h,u:b,U:b,L:b,R:b},modeProps:{fold:["brace","include"]}});f("text/x-java",{name:"clike",keywords:g("abstract assert boolean break byte case catch char class const continue default do double else enum extends final finally float for goto if implements import instanceof int interface long native new package private protected public return short static strictfp super switch synchronized this throw throws transient try void volatile while"),blockKeywords:g("catch class do else finally for if switch try while"),atoms:g("true false null"),hooks:{"@":function(i){i.eatWhile(/[\w\$_]/);return"meta"}},modeProps:{fold:["brace","import"]}});f("text/x-csharp",{name:"clike",keywords:g("abstract as base break case catch checked class const continue default delegate do else enum event explicit extern finally fixed for foreach goto if implicit in interface internal is lock namespace new operator out override params private protected public readonly ref return sealed sizeof stackalloc static struct switch this throw try typeof unchecked unsafe using virtual void volatile while add alias ascending descending dynamic from get global group into join let orderby partial remove select set value var yield"),blockKeywords:g("catch class do else finally for foreach if struct switch try while"),builtin:g("Boolean Byte Char DateTime DateTimeOffset Decimal Double Guid Int16 Int32 Int64 Object SByte Single String TimeSpan UInt16 UInt32 UInt64 bool byte char decimal double short int long object sbyte float string ushort uint ulong"),atoms:g("true false null"),hooks:{"@":function(j,i){if(j.eat('"')){i.tokenize=e;return e(j,i)}j.eatWhile(/[\w\$_]/);return"meta"}}});f("text/x-scala",{name:"clike",keywords:g("abstract case catch class def do else extends false final finally for forSome if implicit import lazy match new null object override package private protected return sealed super this throw trait try trye type val var while with yield _ : = => <- <: <% >: # @ assert assume require print println printf readLine readBoolean readByte readShort readChar readInt readLong readFloat readDouble AnyVal App Application Array BufferedIterator BigDecimal BigInt Char Console Either Enumeration Equiv Error Exception Fractional Function IndexedSeq Integral Iterable Iterator List Map Numeric Nil NotNull Option Ordered Ordering PartialFunction PartialOrdering Product Proxy Range Responder Seq Serializable Set Specializable Stream StringBuilder StringContext Symbol Throwable Traversable TraversableOnce Tuple Unit Vector :: #:: Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void"),blockKeywords:g("catch class do else finally for forSome if match switch try while"),atoms:g("true false null"),hooks:{"@":function(i){i.eatWhile(/[\w\$_]/);return"meta"}}});f(["x-shader/x-vertex","x-shader/x-fragment"],{name:"clike",keywords:g("float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4 sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadowconst attribute uniform varying break continue discard return for while do if else struct in out inout"),blockKeywords:g("for while do if else struct"),builtin:g("radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smootstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4"),atoms:g("true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragColor gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TexureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers"),hooks:{"#":h},modeProps:{fold:["brace","include"]}})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"),require("../htmlmixed/htmlmixed"),require("../clike/clike"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror","../htmlmixed/htmlmixed","../clike/clike"],a)}else{a(CodeMirror)}}})(function(b){function d(m){var k={},l=m.split(" ");for(var j=0;j<l.length;++j){k[l[j]]=true}return k}function i(j){return function(l,k){if(l.match(j)){k.tokenize=null}else{l.skipToEnd()}return"string"}}function c(j){if(j.length==0){return f}return function(n,m){var l=j[0];for(var k=0;k<l.length;k++){if(n.match(l[k][0])){m.tokenize=c(j.slice(1));return l[k][1]}}m.tokenize=f;return"string"}}function f(n,l){var m=false,k,j=false;if(n.current()=='"'){return"string"}if(n.match("${",false)||n.match("{$",false)){l.tokenize=null;return"string"}if(n.match(/\$[a-zA-Z_][a-zA-Z0-9_]*/)){if(n.match("[",false)){l.tokenize=c([[["[",null]],[[/\d[\w\.]*/,"number"],[/\$[a-zA-Z_][a-zA-Z0-9_]*/,"variable-2"],[/[\w\$]+/,"variable"]],[["]",null]]])}if(n.match(/\-\>\w/,false)){l.tokenize=c([[["->",null]],[[/[\w]+/,"variable"]]])}return"variable-2"}while(!n.eol()&&(!n.match("{$",false))&&(!n.match(/(\$[a-zA-Z_][a-zA-Z0-9_]*|\$\{)/,false)||m)){k=n.next();if(!m&&k=='"'){j=true;break}m=!m&&k=="\\"}if(j){l.tokenize=null;l.phpEncapsStack.pop()}return"string"}var g="abstract and array as break case catch class clone const continue declare default do else elseif enddeclare endfor endforeach endif endswitch endwhile extends final for foreach function global goto if implements interface instanceof namespace new or private protected public static switch throw trait try use var while xor die echo empty exit eval include include_once isset list require require_once return print unset __halt_compiler self static parent yield insteadof finally";var h="true false null TRUE FALSE NULL __CLASS__ __DIR__ __FILE__ __LINE__ __METHOD__ __FUNCTION__ __NAMESPACE__ __TRAIT__";var a="func_num_args func_get_arg func_get_args strlen strcmp strncmp strcasecmp strncasecmp each error_reporting define defined trigger_error user_error set_error_handler restore_error_handler get_declared_classes get_loaded_extensions extension_loaded get_extension_funcs debug_backtrace constant bin2hex hex2bin sleep usleep time mktime gmmktime strftime gmstrftime strtotime date gmdate getdate localtime checkdate flush wordwrap htmlspecialchars htmlentities html_entity_decode md5 md5_file crc32 getimagesize image_type_to_mime_type phpinfo phpversion phpcredits strnatcmp strnatcasecmp substr_count strspn strcspn strtok strtoupper strtolower strpos strrpos strrev hebrev hebrevc nl2br basename dirname pathinfo stripslashes stripcslashes strstr stristr strrchr str_shuffle str_word_count strcoll substr substr_replace quotemeta ucfirst ucwords strtr addslashes addcslashes rtrim str_replace str_repeat count_chars chunk_split trim ltrim strip_tags similar_text explode implode setlocale localeconv parse_str str_pad chop strchr sprintf printf vprintf vsprintf sscanf fscanf parse_url urlencode urldecode rawurlencode rawurldecode readlink linkinfo link unlink exec system escapeshellcmd escapeshellarg passthru shell_exec proc_open proc_close rand srand getrandmax mt_rand mt_srand mt_getrandmax base64_decode base64_encode abs ceil floor round is_finite is_nan is_infinite bindec hexdec octdec decbin decoct dechex base_convert number_format fmod ip2long long2ip getenv putenv getopt microtime gettimeofday getrusage uniqid quoted_printable_decode set_time_limit get_cfg_var magic_quotes_runtime set_magic_quotes_runtime get_magic_quotes_gpc get_magic_quotes_runtime import_request_variables error_log serialize unserialize memory_get_usage var_dump var_export debug_zval_dump print_r highlight_file show_source highlight_string ini_get ini_get_all ini_set ini_alter ini_restore get_include_path set_include_path restore_include_path setcookie header headers_sent connection_aborted connection_status ignore_user_abort parse_ini_file is_uploaded_file move_uploaded_file intval floatval doubleval strval gettype settype is_null is_resource is_bool is_long is_float is_int is_integer is_double is_real is_numeric is_string is_array is_object is_scalar ereg ereg_replace eregi eregi_replace split spliti join sql_regcase dl pclose popen readfile rewind rmdir umask fclose feof fgetc fgets fgetss fread fopen fpassthru ftruncate fstat fseek ftell fflush fwrite fputs mkdir rename copy tempnam tmpfile file file_get_contents stream_select stream_context_create stream_context_set_params stream_context_set_option stream_context_get_options stream_filter_prepend stream_filter_append fgetcsv flock get_meta_tags stream_set_write_buffer set_file_buffer set_socket_blocking stream_set_blocking socket_set_blocking stream_get_meta_data stream_register_wrapper stream_wrapper_register stream_set_timeout socket_set_timeout socket_get_status realpath fnmatch fsockopen pfsockopen pack unpack get_browser crypt opendir closedir chdir getcwd rewinddir readdir dir glob fileatime filectime filegroup fileinode filemtime fileowner fileperms filesize filetype file_exists is_writable is_writeable is_readable is_executable is_file is_dir is_link stat lstat chown touch clearstatcache mail ob_start ob_flush ob_clean ob_end_flush ob_end_clean ob_get_flush ob_get_clean ob_get_length ob_get_level ob_get_status ob_get_contents ob_implicit_flush ob_list_handlers ksort krsort natsort natcasesort asort arsort sort rsort usort uasort uksort shuffle array_walk count end prev next reset current key min max in_array array_search extract compact array_fill range array_multisort array_push array_pop array_shift array_unshift array_splice array_slice array_merge array_merge_recursive array_keys array_values array_count_values array_reverse array_reduce array_pad array_flip array_change_key_case array_rand array_unique array_intersect array_intersect_assoc array_diff array_diff_assoc array_sum array_filter array_map array_chunk array_key_exists pos sizeof key_exists assert assert_options version_compare ftok str_rot13 aggregate session_name session_module_name session_save_path session_id session_regenerate_id session_decode session_register session_unregister session_is_registered session_encode session_start session_destroy session_unset session_set_save_handler session_cache_limiter session_cache_expire session_set_cookie_params session_get_cookie_params session_write_close preg_match preg_match_all preg_replace preg_replace_callback preg_split preg_quote preg_grep overload ctype_alnum ctype_alpha ctype_cntrl ctype_digit ctype_lower ctype_graph ctype_print ctype_punct ctype_space ctype_upper ctype_xdigit virtual apache_request_headers apache_note apache_lookup_uri apache_child_terminate apache_setenv apache_response_headers apache_get_version getallheaders mysql_connect mysql_pconnect mysql_close mysql_select_db mysql_create_db mysql_drop_db mysql_query mysql_unbuffered_query mysql_db_query mysql_list_dbs mysql_list_tables mysql_list_fields mysql_list_processes mysql_error mysql_errno mysql_affected_rows mysql_insert_id mysql_result mysql_num_rows mysql_num_fields mysql_fetch_row mysql_fetch_array mysql_fetch_assoc mysql_fetch_object mysql_data_seek mysql_fetch_lengths mysql_fetch_field mysql_field_seek mysql_free_result mysql_field_name mysql_field_table mysql_field_len mysql_field_type mysql_field_flags mysql_escape_string mysql_real_escape_string mysql_stat mysql_thread_id mysql_client_encoding mysql_get_client_info mysql_get_host_info mysql_get_proto_info mysql_get_server_info mysql_info mysql mysql_fieldname mysql_fieldtable mysql_fieldlen mysql_fieldtype mysql_fieldflags mysql_selectdb mysql_createdb mysql_dropdb mysql_freeresult mysql_numfields mysql_numrows mysql_listdbs mysql_listtables mysql_listfields mysql_db_name mysql_dbname mysql_tablename mysql_table_name pg_connect pg_pconnect pg_close pg_connection_status pg_connection_busy pg_connection_reset pg_host pg_dbname pg_port pg_tty pg_options pg_ping pg_query pg_send_query pg_cancel_query pg_fetch_result pg_fetch_row pg_fetch_assoc pg_fetch_array pg_fetch_object pg_fetch_all pg_affected_rows pg_get_result pg_result_seek pg_result_status pg_free_result pg_last_oid pg_num_rows pg_num_fields pg_field_name pg_field_num pg_field_size pg_field_type pg_field_prtlen pg_field_is_null pg_get_notify pg_get_pid pg_result_error pg_last_error pg_last_notice pg_put_line pg_end_copy pg_copy_to pg_copy_from pg_trace pg_untrace pg_lo_create pg_lo_unlink pg_lo_open pg_lo_close pg_lo_read pg_lo_write pg_lo_read_all pg_lo_import pg_lo_export pg_lo_seek pg_lo_tell pg_escape_string pg_escape_bytea pg_unescape_bytea pg_client_encoding pg_set_client_encoding pg_meta_data pg_convert pg_insert pg_update pg_delete pg_select pg_exec pg_getlastoid pg_cmdtuples pg_errormessage pg_numrows pg_numfields pg_fieldname pg_fieldsize pg_fieldtype pg_fieldnum pg_fieldprtlen pg_fieldisnull pg_freeresult pg_result pg_loreadall pg_locreate pg_lounlink pg_loopen pg_loclose pg_loread pg_lowrite pg_loimport pg_loexport http_response_code get_declared_traits getimagesizefromstring socket_import_stream stream_set_chunk_size trait_exists header_register_callback class_uses session_status session_register_shutdown echo print global static exit array empty eval isset unset die include require include_once require_once";b.registerHelper("hintWords","php",[g,h,a].join(" ").split(" "));b.registerHelper("wordChars","php",/[\\w$]/);var e={name:"clike",helperType:"php",keywords:d(g),blockKeywords:d("catch do else elseif for foreach if switch try while finally"),atoms:d(h),builtin:d(a),multiLineStrings:true,hooks:{"$":function(j){j.eatWhile(/[\w\$_]/);return"variable-2"},"<":function(k,j){if(k.match(/<</)){k.eatWhile(/[\w\.]/);j.tokenize=i(k.current().slice(3));return j.tokenize(k,j)}return false},"#":function(j){while(!j.eol()&&!j.match("?>",false)){j.next()}return"comment"},"/":function(j){if(j.eat("/")){while(!j.eol()&&!j.match("?>",false)){j.next()}return"comment"}return false},'"':function(k,j){if(!j.phpEncapsStack){j.phpEncapsStack=[]}j.phpEncapsStack.push(0);j.tokenize=f;return j.tokenize(k,j)},"{":function(j,k){if(k.phpEncapsStack&&k.phpEncapsStack.length>0){k.phpEncapsStack[k.phpEncapsStack.length-1]++}return false},"}":function(j,k){if(k.phpEncapsStack&&k.phpEncapsStack.length>0){if(--k.phpEncapsStack[k.phpEncapsStack.length-1]==0){k.tokenize=f}}return false}}};b.defineMode("php",function(l,m){var n=b.getMode(l,"text/html");var j=b.getMode(l,e);function k(u,s){var r=s.curMode==j;if(u.sol()&&s.pending&&s.pending!='"'&&s.pending!="'"){s.pending=null}if(!r){if(u.match(/^<\?\w*/)){s.curMode=j;s.curState=s.php;return"meta"}if(s.pending=='"'||s.pending=="'"){while(!u.eol()&&u.next()!=s.pending){}var q="string"}else{if(s.pending&&u.pos<s.pending.end){u.pos=s.pending.end;var q=s.pending.style}else{var q=n.token(u,s.curState)}}if(s.pending){s.pending=null}var t=u.current(),p=t.search(/<\?/),o;if(p!=-1){if(q=="string"&&(o=t.match(/[\'\"]$/))&&!/\?>/.test(t)){s.pending=o[0]}else{s.pending={end:u.pos,style:q}}u.backUp(t.length-p)}return q}else{if(r&&s.php.tokenize==null&&u.match("?>")){s.curMode=n;s.curState=s.html;return"meta"}else{return j.token(u,s.curState)}}}return{startState:function(){var o=b.startState(n),p=b.startState(j);return{html:o,php:p,curMode:m.startOpen?j:n,curState:m.startOpen?p:o,pending:null}},copyState:function(r){var p=r.html,q=b.copyState(n,p),t=r.php,o=b.copyState(j,t),s;if(r.curMode==n){s=q}else{s=o}return{html:q,php:o,curMode:r.curMode,curState:s,pending:r.pending}},token:k,indent:function(p,o){if((p.curMode!=j&&/^\s*<\//.test(o))||(p.curMode==j&&/^\?>/.test(o))){return n.indent(p.html,o)}return p.curMode.indent(p.curState,o)},blockCommentStart:"/*",blockCommentEnd:"*/",lineComment:"//",innerMode:function(o){return{state:o.curState,mode:o.curMode}}}},"htmlmixed","clike");b.defineMIME("application/x-httpd-php","php");b.defineMIME("application/x-httpd-php-open",{name:"php",startOpen:true});b.defineMIME("text/x-php",e)});
1
+ (function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"),require("../xml/xml"),require("../javascript/javascript"),require("../css/css"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror","../xml/xml","../javascript/javascript","../css/css"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("htmlmixed",function(c,d){var b=a.getMode(c,{name:"xml",htmlMode:true,multilineTagIndentFactor:d.multilineTagIndentFactor,multilineTagIndentPastTag:d.multilineTagIndentPastTag});var n=a.getMode(c,"css");var l=[],k=d&&d.scriptTypes;l.push({matches:/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^$/i,mode:a.getMode(c,"javascript")});if(k){for(var e=0;e<k.length;++e){var j=k[e];l.push({matches:j.matches,mode:j.mode&&a.getMode(c,j.mode)})}}l.push({matches:/./,mode:a.getMode(c,"text/plain")});function f(t,r){var p=r.htmlState.tagName;if(p){p=p.toLowerCase()}var q=b.token(t,r.htmlState);if(p=="script"&&/\btag\b/.test(q)&&t.current()==">"){var u=t.string.slice(Math.max(0,t.pos-100),t.pos).match(/\btype\s*=\s*("[^"]+"|'[^']+'|\S+)[^<]*$/i);u=u?u[1]:"";if(u&&/[\"\']/.test(u.charAt(0))){u=u.slice(1,u.length-1)}for(var o=0;o<l.length;++o){var s=l[o];if(typeof s.matches=="string"?u==s.matches:s.matches.test(u)){if(s.mode){r.token=m;r.localMode=s.mode;r.localState=s.mode.startState&&s.mode.startState(b.indent(r.htmlState,""))}break}}}else{if(p=="style"&&/\btag\b/.test(q)&&t.current()==">"){r.token=g;r.localMode=n;r.localState=n.startState(b.indent(r.htmlState,""))}}return q}function h(s,o,p){var r=s.current();var q=r.search(o),i;if(q>-1){s.backUp(r.length-q)}else{if(i=r.match(/<\/?$/)){s.backUp(r.length);if(!s.match(o,false)){s.match(r)}}}return p}function m(o,i){if(o.match(/^<\/\s*script\s*>/i,false)){i.token=f;i.localState=i.localMode=null;return null}return h(o,/<\/\s*script\s*>/,i.localMode.token(o,i.localState))}function g(o,i){if(o.match(/^<\/\s*style\s*>/i,false)){i.token=f;i.localState=i.localMode=null;return null}return h(o,/<\/\s*style\s*>/,n.token(o,i.localState))}return{startState:function(){var i=b.startState();return{token:f,localMode:null,localState:null,htmlState:i}},copyState:function(o){if(o.localState){var i=a.copyState(o.localMode,o.localState)}return{token:o.token,localMode:o.localMode,localState:i,htmlState:a.copyState(b,o.htmlState)}},token:function(o,i){return i.token(o,i)},indent:function(o,i){if(!o.localMode||/^\s*<\//.test(i)){return b.indent(o.htmlState,i)}else{if(o.localMode.indent){return o.localMode.indent(o.localState,i)}else{return a.Pass}}},innerMode:function(i){return{state:i.localState||i.htmlState,mode:i.localMode||b}}}},"xml","javascript","css");a.defineMIME("text/html","htmlmixed")});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("xml",function(y,k){var p=y.indentUnit;var x=k.multilineTagIndentFactor||1;var d=k.multilineTagIndentPastTag;if(d==null){d=true}var w=k.htmlMode?{autoSelfClosers:{area:true,base:true,br:true,col:true,command:true,embed:true,frame:true,hr:true,img:true,input:true,keygen:true,link:true,meta:true,param:true,source:true,track:true,wbr:true,menuitem:true},implicitlyClosed:{dd:true,li:true,optgroup:true,option:true,p:true,rp:true,rt:true,tbody:true,td:true,tfoot:true,th:true,tr:true},contextGrabbers:{dd:{dd:true,dt:true},dt:{dd:true,dt:true},li:{li:true},option:{option:true,optgroup:true},optgroup:{optgroup:true},p:{address:true,article:true,aside:true,blockquote:true,dir:true,div:true,dl:true,fieldset:true,footer:true,form:true,h1:true,h2:true,h3:true,h4:true,h5:true,h6:true,header:true,hgroup:true,hr:true,menu:true,nav:true,ol:true,p:true,pre:true,section:true,table:true,ul:true},rp:{rp:true,rt:true},rt:{rp:true,rt:true},tbody:{tbody:true,tfoot:true},td:{td:true,th:true},tfoot:{tbody:true},th:{td:true,th:true},thead:{tbody:true,tfoot:true},tr:{tr:true}},doNotIndent:{pre:true},allowUnquoted:true,allowMissing:true,caseFold:true}:{autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:false,allowMissing:false,caseFold:false};var c=k.alignCDATA;var f,g;function n(F,E){function C(G){E.tokenize=G;return G(F,E)}var D=F.next();if(D=="<"){if(F.eat("!")){if(F.eat("[")){if(F.match("CDATA[")){return C(v("atom","]]>"))}else{return null}}else{if(F.match("--")){return C(v("comment","-->"))}else{if(F.match("DOCTYPE",true,true)){F.eatWhile(/[\w\._\-]/);return C(z(1))}else{return null}}}}else{if(F.eat("?")){F.eatWhile(/[\w\._\-]/);E.tokenize=v("meta","?>");return"meta"}else{f=F.eat("/")?"closeTag":"openTag";E.tokenize=m;return"tag bracket"}}}else{if(D=="&"){var B;if(F.eat("#")){if(F.eat("x")){B=F.eatWhile(/[a-fA-F\d]/)&&F.eat(";")}else{B=F.eatWhile(/[\d]/)&&F.eat(";")}}else{B=F.eatWhile(/[\w\.\-:]/)&&F.eat(";")}return B?"atom":"error"}else{F.eatWhile(/[^&<]/);return null}}}function m(E,D){var C=E.next();if(C==">"||(C=="/"&&E.eat(">"))){D.tokenize=n;f=C==">"?"endTag":"selfcloseTag";return"tag bracket"}else{if(C=="="){f="equals";return null}else{if(C=="<"){D.tokenize=n;D.state=l;D.tagName=D.tagStart=null;var B=D.tokenize(E,D);return B?B+" tag error":"tag error"}else{if(/[\'\"]/.test(C)){D.tokenize=j(C);D.stringStartCol=E.column();return D.tokenize(E,D)}else{E.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/);return"word"}}}}}function j(B){var C=function(E,D){while(!E.eol()){if(E.next()==B){D.tokenize=m;break}}return"string"};C.isInAttribute=true;return C}function v(C,B){return function(E,D){while(!E.eol()){if(E.match(B)){D.tokenize=n;break}E.next()}return C}}function z(B){return function(E,D){var C;while((C=E.next())!=null){if(C=="<"){D.tokenize=z(B+1);return D.tokenize(E,D)}else{if(C==">"){if(B==1){D.tokenize=n;break}else{D.tokenize=z(B-1);return D.tokenize(E,D)}}}}return"meta"}}function r(C,B,D){this.prev=C.context;this.tagName=B;this.indent=C.indented;this.startOfLine=D;if(w.doNotIndent.hasOwnProperty(B)||(C.context&&C.context.noIndent)){this.noIndent=true}}function u(B){if(B.context){B.context=B.context.prev}}function q(D,C){var B;while(true){if(!D.context){return}B=D.context.tagName;if(!w.contextGrabbers.hasOwnProperty(B)||!w.contextGrabbers[B].hasOwnProperty(C)){return}u(D)}}function l(B,D,C){if(B=="openTag"){C.tagStart=D.column();return b}else{if(B=="closeTag"){return t}else{return l}}}function b(B,D,C){if(B=="word"){C.tagName=D.current();g="tag";return e}else{g="error";return b}}function t(C,E,D){if(C=="word"){var B=E.current();if(D.context&&D.context.tagName!=B&&w.implicitlyClosed.hasOwnProperty(D.context.tagName)){u(D)}if(D.context&&D.context.tagName==B){g="tag";return s}else{g="tag error";return A}}else{g="error";return A}}function s(C,B,D){if(C!="endTag"){g="error";return s}u(D);return l}function A(B,D,C){g="error";return s(B,D,C)}function e(E,C,F){if(E=="word"){g="attribute";return i}else{if(E=="endTag"||E=="selfcloseTag"){var D=F.tagName,B=F.tagStart;F.tagName=F.tagStart=null;if(E=="selfcloseTag"||w.autoSelfClosers.hasOwnProperty(D)){q(F,D)}else{q(F,D);F.context=new r(F,D,B==F.indented)}return l}}g="error";return e}function i(B,D,C){if(B=="equals"){return o}if(!w.allowMissing){g="error"}return e(B,D,C)}function o(B,D,C){if(B=="string"){return h}if(B=="word"&&w.allowUnquoted){g="string";return e}g="error";return e(B,D,C)}function h(B,D,C){if(B=="string"){return h}return e(B,D,C)}return{startState:function(){return{tokenize:n,state:l,indented:0,tagName:null,tagStart:null,context:null}},token:function(D,C){if(!C.tagName&&D.sol()){C.indented=D.indentation()}if(D.eatSpace()){return null}f=null;var B=C.tokenize(D,C);if((B||f)&&B!="comment"){g=null;C.state=C.state(f||B,D,C);if(g){B=g=="error"?B+" error":g}}return B},indent:function(G,C,F){var E=G.context;if(G.tokenize.isInAttribute){if(G.tagStart==G.indented){return G.stringStartCol+1}else{return G.indented+p}}if(E&&E.noIndent){return a.Pass}if(G.tokenize!=m&&G.tokenize!=n){return F?F.match(/^(\s*)/)[0].length:0}if(G.tagName){if(d){return G.tagStart+G.tagName.length+2}else{return G.tagStart+p*x}}if(c&&/<!\[CDATA\[/.test(C)){return 0}var B=C&&/^<(\/)?([\w_:\.-]*)/.exec(C);if(B&&B[1]){while(E){if(E.tagName==B[2]){E=E.prev;break}else{if(w.implicitlyClosed.hasOwnProperty(E.tagName)){E=E.prev}else{break}}}}else{if(B){while(E){var D=w.contextGrabbers[E.tagName];if(D&&D.hasOwnProperty(B[2])){E=E.prev}else{break}}}}while(E&&!E.startOfLine){E=E.prev}if(E){return E.indent+p}else{return 0}},electricInput:/<\/[\s\w:]+>$/,blockCommentStart:"<!--",blockCommentEnd:"-->",configuration:k.htmlMode?"html":"xml",helperType:k.htmlMode?"html":"xml"}});a.defineMIME("text/xml","xml");a.defineMIME("application/xml","xml");if(!a.mimeModes.hasOwnProperty("text/html")){a.defineMIME("text/html",{name:"xml",htmlMode:true})}});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(a){a.defineMode("javascript",function(Y,ai){var k=Y.indentUnit;var z=ai.statementIndent;var ay=ai.jsonld;var y=ai.json||ay;var g=ai.typescript;var ar=ai.wordCharacters||/[\w$\xa1-\uffff]/;var ap=function(){function aO(aQ){return{type:aQ,style:"keyword"}}var aJ=aO("keyword a"),aH=aO("keyword b"),aG=aO("keyword c");var aI=aO("operator"),aM={type:"atom",style:"atom"};var aK={"if":aO("if"),"while":aJ,"with":aJ,"else":aH,"do":aH,"try":aH,"finally":aH,"return":aG,"break":aG,"continue":aG,"new":aG,"delete":aG,"throw":aG,"debugger":aG,"var":aO("var"),"const":aO("var"),let:aO("var"),"function":aO("function"),"catch":aO("catch"),"for":aO("for"),"switch":aO("switch"),"case":aO("case"),"default":aO("default"),"in":aI,"typeof":aI,"instanceof":aI,"true":aM,"false":aM,"null":aM,"undefined":aM,"NaN":aM,"Infinity":aM,"this":aO("this"),module:aO("module"),"class":aO("class"),"super":aO("atom"),yield:aG,"export":aO("export"),"import":aO("import"),"extends":aG};if(g){var aP={type:"variable",style:"variable-3"};var aL={"interface":aO("interface"),"extends":aO("extends"),constructor:aO("constructor"),"public":aO("public"),"private":aO("private"),"protected":aO("protected"),"static":aO("static"),string:aP,number:aP,bool:aP,any:aP};for(var aN in aL){aK[aN]=aL[aN]}}return aK}();var O=/[+\-*&%=<>!?|~^]/;var ao=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function E(aJ){var aH=false,aG,aI=false;while((aG=aJ.next())!=null){if(!aH){if(aG=="/"&&!aI){return}if(aG=="["){aI=true}else{if(aI&&aG=="]"){aI=false}}}aH=!aH&&aG=="\\"}}var R,F;function K(aI,aH,aG){R=aI;F=aG;return aH}function T(aK,aI){var aG=aK.next();if(aG=='"'||aG=="'"){aI.tokenize=Q(aG);return aI.tokenize(aK,aI)}else{if(aG=="."&&aK.match(/^\d+(?:[eE][+\-]?\d+)?/)){return K("number","number")}else{if(aG=="."&&aK.match("..")){return K("spread","meta")}else{if(/[\[\]{}\(\),;\:\.]/.test(aG)){return K(aG)}else{if(aG=="="&&aK.eat(">")){return K("=>","operator")}else{if(aG=="0"&&aK.eat(/x/i)){aK.eatWhile(/[\da-f]/i);return K("number","number")}else{if(/\d/.test(aG)){aK.match(/^\d*(?:\.\d*)?(?:[eE][+\-]?\d+)?/);return K("number","number")}else{if(aG=="/"){if(aK.eat("*")){aI.tokenize=ax;return ax(aK,aI)}else{if(aK.eat("/")){aK.skipToEnd();return K("comment","comment")}else{if(aI.lastType=="operator"||aI.lastType=="keyword c"||aI.lastType=="sof"||/^[\[{}\(,;:]$/.test(aI.lastType)){E(aK);aK.eatWhile(/[gimy]/);return K("regexp","string-2")}else{aK.eatWhile(O);return K("operator","operator",aK.current())}}}}else{if(aG=="`"){aI.tokenize=az;return az(aK,aI)}else{if(aG=="#"){aK.skipToEnd();return K("error","error")}else{if(O.test(aG)){aK.eatWhile(O);return K("operator","operator",aK.current())}else{if(ar.test(aG)){aK.eatWhile(ar);var aJ=aK.current(),aH=ap.propertyIsEnumerable(aJ)&&ap[aJ];return(aH&&aI.lastType!=".")?K(aH.type,aH.style,aJ):K("variable","variable",aJ)}}}}}}}}}}}}}function Q(aG){return function(aK,aI){var aJ=false,aH;if(ay&&aK.peek()=="@"&&aK.match(ao)){aI.tokenize=T;return K("jsonld-keyword","meta")}while((aH=aK.next())!=null){if(aH==aG&&!aJ){break}aJ=!aJ&&aH=="\\"}if(!aJ){aI.tokenize=T}return K("string","string")}}function ax(aJ,aI){var aG=false,aH;while(aH=aJ.next()){if(aH=="/"&&aG){aI.tokenize=T;break}aG=(aH=="*")}return K("comment","comment")}function az(aJ,aH){var aI=false,aG;while((aG=aJ.next())!=null){if(!aI&&(aG=="`"||aG=="$"&&aJ.eat("{"))){aH.tokenize=T;break}aI=!aI&&aG=="\\"}return K("quasi","string-2",aJ.current())}var l="([{}])";function au(aM,aJ){if(aJ.fatArrowAt){aJ.fatArrowAt=null}var aI=aM.string.indexOf("=>",aM.start);if(aI<0){return}var aL=0,aH=false;for(var aN=aI-1;aN>=0;--aN){var aG=aM.string.charAt(aN);var aK=l.indexOf(aG);if(aK>=0&&aK<3){if(!aL){++aN;break}if(--aL==0){break}}else{if(aK>=3&&aK<6){++aL}else{if(ar.test(aG)){aH=true}else{if(aH&&!aL){++aN;break}}}}}if(aH&&!aL){aJ.fatArrowAt=aN}}var b={atom:true,number:true,variable:true,string:true,regexp:true,"this":true,"jsonld-keyword":true};function I(aL,aH,aG,aK,aI,aJ){this.indented=aL;this.column=aH;this.type=aG;this.prev=aI;this.info=aJ;if(aK!=null){this.align=aK}}function r(aJ,aI){for(var aH=aJ.localVars;aH;aH=aH.next){if(aH.name==aI){return true}}for(var aG=aJ.context;aG;aG=aG.prev){for(var aH=aG.vars;aH;aH=aH.next){if(aH.name==aI){return true}}}}function f(aK,aH,aG,aJ,aL){var aM=aK.cc;C.state=aK;C.stream=aL;C.marked=null,C.cc=aM;C.style=aH;if(!aK.lexical.hasOwnProperty("align")){aK.lexical.align=true}while(true){var aI=aM.length?aM.pop():y?am:aE;if(aI(aG,aJ)){while(aM.length&&aM[aM.length-1].lex){aM.pop()()}if(C.marked){return C.marked}if(aG=="variable"&&r(aK,aJ)){return"variable-2"}return aH}}}var C={state:null,column:null,marked:null,cc:null};function Z(){for(var aG=arguments.length-1;aG>=0;aG--){C.cc.push(arguments[aG])}}function ad(){Z.apply(null,arguments);return true}function at(aH){function aG(aK){for(var aJ=aK;aJ;aJ=aJ.next){if(aJ.name==aH){return true}}return false}var aI=C.state;if(aI.context){C.marked="def";if(aG(aI.localVars)){return}aI.localVars={name:aH,next:aI.localVars}}else{if(aG(aI.globalVars)){return}if(ai.globalVars){aI.globalVars={name:aH,next:aI.globalVars}}}}var p={name:"this",next:{name:"arguments"}};function v(){C.state.context={prev:C.state.context,vars:C.state.localVars};C.state.localVars=p}function w(){C.state.localVars=C.state.context.vars;C.state.context=C.state.context.prev}function aC(aH,aI){var aG=function(){var aL=C.state,aJ=aL.indented;if(aL.lexical.type=="stat"){aJ=aL.lexical.indented}else{for(var aK=aL.lexical;aK&&aK.type==")"&&aK.align;aK=aK.prev){aJ=aK.indented}}aL.lexical=new I(aJ,C.stream.column(),aH,null,aL.lexical,aI)};aG.lex=true;return aG}function h(){var aG=C.state;if(aG.lexical.prev){if(aG.lexical.type==")"){aG.indented=aG.lexical.indented}aG.lexical=aG.lexical.prev}}h.lex=true;function q(aG){function aH(aI){if(aI==aG){return ad()}else{if(aG==";"){return Z()}else{return ad(aH)}}}return aH}function aE(aG,aH){if(aG=="var"){return ad(aC("vardef",aH.length),d,q(";"),h)}if(aG=="keyword a"){return ad(aC("form"),am,aE,h)}if(aG=="keyword b"){return ad(aC("form"),aE,h)}if(aG=="{"){return ad(aC("}"),x,h)}if(aG==";"){return ad()}if(aG=="if"){if(C.state.lexical.info=="else"&&C.state.cc[C.state.cc.length-1]==h){C.state.cc.pop()()}return ad(aC("form"),am,aE,h,e)}if(aG=="function"){return ad(L)}if(aG=="for"){return ad(aC("form"),t,aE,h)}if(aG=="variable"){return ad(aC("stat"),aF)}if(aG=="switch"){return ad(aC("form"),am,aC("}","switch"),q("{"),x,h,h)}if(aG=="case"){return ad(am,q(":"))}if(aG=="default"){return ad(q(":"))}if(aG=="catch"){return ad(aC("form"),v,q("("),ae,q(")"),aE,h,w)}if(aG=="module"){return ad(aC("form"),v,G,w,h)}if(aG=="class"){return ad(aC("form"),U,h)}if(aG=="export"){return ad(aC("form"),aD,h)}if(aG=="import"){return ad(aC("form"),af,h)}return Z(aC("stat"),am,q(";"),h)}function am(aG){return X(aG,false)}function aB(aG){return X(aG,true)}function X(aH,aJ){if(C.state.fatArrowAt==C.stream.start){var aG=aJ?M:V;if(aH=="("){return ad(v,aC(")"),aq(i,")"),h,q("=>"),aG,w)}else{if(aH=="variable"){return Z(v,i,q("=>"),aG,w)}}}var aI=aJ?j:aa;if(b.hasOwnProperty(aH)){return ad(aI)}if(aH=="function"){return ad(L,aI)}if(aH=="keyword c"){return ad(aJ?aj:ah)}if(aH=="("){return ad(aC(")"),ah,aw,q(")"),h,aI)}if(aH=="operator"||aH=="spread"){return ad(aJ?aB:am)}if(aH=="["){return ad(aC("]"),m,h,aI)}if(aH=="{"){return av(s,"}",null,aI)}if(aH=="quasi"){return Z(P,aI)}return ad()}function ah(aG){if(aG.match(/[;\}\)\],]/)){return Z()}return Z(am)}function aj(aG){if(aG.match(/[;\}\)\],]/)){return Z()}return Z(aB)}function aa(aG,aH){if(aG==","){return ad(am)}return j(aG,aH,false)}function j(aG,aI,aK){var aH=aK==false?aa:j;var aJ=aK==false?am:aB;if(aG=="=>"){return ad(v,aK?M:V,w)}if(aG=="operator"){if(/\+\+|--/.test(aI)){return ad(aH)}if(aI=="?"){return ad(am,q(":"),aJ)}return ad(aJ)}if(aG=="quasi"){return Z(P,aH)}if(aG==";"){return}if(aG=="("){return av(aB,")","call",aH)}if(aG=="."){return ad(ak,aH)}if(aG=="["){return ad(aC("]"),ah,q("]"),h,aH)}}function P(aG,aH){if(aG!="quasi"){return Z()}if(aH.slice(aH.length-2)!="${"){return ad(P)}return ad(am,o)}function o(aG){if(aG=="}"){C.marked="string-2";C.state.tokenize=az;return ad(P)}}function V(aG){au(C.stream,C.state);return Z(aG=="{"?aE:am)}function M(aG){au(C.stream,C.state);return Z(aG=="{"?aE:aB)}function aF(aG){if(aG==":"){return ad(h,aE)}return Z(aa,q(";"),h)}function ak(aG){if(aG=="variable"){C.marked="property";return ad()}}function s(aG,aH){if(aG=="variable"||C.style=="keyword"){C.marked="property";if(aH=="get"||aH=="set"){return ad(H)}return ad(J)}else{if(aG=="number"||aG=="string"){C.marked=ay?"property":(C.style+" property");return ad(J)}else{if(aG=="jsonld-keyword"){return ad(J)}else{if(aG=="["){return ad(am,q("]"),J)}}}}}function H(aG){if(aG!="variable"){return Z(J)}C.marked="property";return ad(L)}function J(aG){if(aG==":"){return ad(aB)}if(aG=="("){return Z(L)}}function aq(aI,aG){function aH(aK){if(aK==","){var aJ=C.state.lexical;if(aJ.info=="call"){aJ.pos=(aJ.pos||0)+1}return ad(aI,aH)}if(aK==aG){return ad()}return ad(q(aG))}return function(aJ){if(aJ==aG){return ad()}return Z(aI,aH)}}function av(aJ,aG,aI){for(var aH=3;aH<arguments.length;aH++){C.cc.push(arguments[aH])}return ad(aC(aG,aI),aq(aJ,aG),h)}function x(aG){if(aG=="}"){return ad()}return Z(aE,x)}function S(aG){if(g&&aG==":"){return ad(ac)}}function ac(aG){if(aG=="variable"){C.marked="variable-3";return ad()}}function d(){return Z(i,S,ab,W)}function i(aG,aH){if(aG=="variable"){at(aH);return ad()}if(aG=="["){return av(i,"]")}if(aG=="{"){return av(aA,"}")}}function aA(aG,aH){if(aG=="variable"&&!C.stream.match(/^\s*:/,false)){at(aH);return ad(ab)}if(aG=="variable"){C.marked="property"}return ad(q(":"),i,ab)}function ab(aG,aH){if(aH=="="){return ad(aB)}}function W(aG){if(aG==","){return ad(d)}}function e(aG,aH){if(aG=="keyword b"&&aH=="else"){return ad(aC("form","else"),aE,h)}}function t(aG){if(aG=="("){return ad(aC(")"),D,q(")"),h)}}function D(aG){if(aG=="var"){return ad(d,q(";"),B)}if(aG==";"){return ad(B)}if(aG=="variable"){return ad(u)}return Z(am,q(";"),B)}function u(aG,aH){if(aH=="in"||aH=="of"){C.marked="keyword";return ad(am)}return ad(aa,B)}function B(aG,aH){if(aG==";"){return ad(A)}if(aH=="in"||aH=="of"){C.marked="keyword";return ad(am)}return Z(am,q(";"),A)}function A(aG){if(aG!=")"){ad(am)}}function L(aG,aH){if(aH=="*"){C.marked="keyword";return ad(L)}if(aG=="variable"){at(aH);return ad(L)}if(aG=="("){return ad(v,aC(")"),aq(ae,")"),h,aE,w)}}function ae(aG){if(aG=="spread"){return ad(ae)}return Z(i,S)}function U(aG,aH){if(aG=="variable"){at(aH);return ad(N)}}function N(aG,aH){if(aH=="extends"){return ad(am,N)}if(aG=="{"){return ad(aC("}"),n,h)}}function n(aG,aH){if(aG=="variable"||C.style=="keyword"){C.marked="property";if(aH=="get"||aH=="set"){return ad(c,L,n)}return ad(L,n)}if(aH=="*"){C.marked="keyword";return ad(n)}if(aG==";"){return ad(n)}if(aG=="}"){return ad()}}function c(aG){if(aG!="variable"){return Z()}C.marked="property";return ad()}function G(aG,aH){if(aG=="string"){return ad(aE)}if(aG=="variable"){at(aH);return ad(ag)}}function aD(aG,aH){if(aH=="*"){C.marked="keyword";return ad(ag,q(";"))}if(aH=="default"){C.marked="keyword";return ad(am,q(";"))}return Z(aE)}function af(aG){if(aG=="string"){return ad()}return Z(an,ag)}function an(aG,aH){if(aG=="{"){return av(an,"}")}if(aG=="variable"){at(aH)}return ad()}function ag(aG,aH){if(aH=="from"){C.marked="keyword";return ad(am)}}function m(aG){if(aG=="]"){return ad()}return Z(aB,al)}function al(aG){if(aG=="for"){return Z(aw,q("]"))}if(aG==","){return ad(aq(aj,"]"))}return Z(aq(aB,"]"))}function aw(aG){if(aG=="for"){return ad(t,aw)}if(aG=="if"){return ad(am,aw)}}return{startState:function(aH){var aG={tokenize:T,lastType:"sof",cc:[],lexical:new I((aH||0)-k,0,"block",false),localVars:ai.localVars,context:ai.localVars&&{vars:ai.localVars},indented:0};if(ai.globalVars&&typeof ai.globalVars=="object"){aG.globalVars=ai.globalVars}return aG},token:function(aI,aH){if(aI.sol()){if(!aH.lexical.hasOwnProperty("align")){aH.lexical.align=false}aH.indented=aI.indentation();au(aI,aH)}if(aH.tokenize!=ax&&aI.eatSpace()){return null}var aG=aH.tokenize(aI,aH);if(R=="comment"){return aG}aH.lastType=R=="operator"&&(F=="++"||F=="--")?"incdec":R;return f(aH,aG,R,F,aI)},indent:function(aM,aG){if(aM.tokenize==ax){return a.Pass}if(aM.tokenize!=T){return 0}var aL=aG&&aG.charAt(0),aJ=aM.lexical;if(!/^\s*else\b/.test(aG)){for(var aI=aM.cc.length-1;aI>=0;--aI){var aN=aM.cc[aI];if(aN==h){aJ=aJ.prev}else{if(aN!=e){break}}}}if(aJ.type=="stat"&&aL=="}"){aJ=aJ.prev}if(z&&aJ.type==")"&&aJ.prev.type=="stat"){aJ=aJ.prev}var aK=aJ.type,aH=aL==aK;if(aK=="vardef"){return aJ.indented+(aM.lastType=="operator"||aM.lastType==","?aJ.info+1:0)}else{if(aK=="form"&&aL=="{"){return aJ.indented}else{if(aK=="form"){return aJ.indented+k}else{if(aK=="stat"){return aJ.indented+(aM.lastType=="operator"||aM.lastType==","?z||k:0)}else{if(aJ.info=="switch"&&!aH&&ai.doubleIndentSwitch!=false){return aJ.indented+(/^(?:case|default)\b/.test(aG)?k:2*k)}else{if(aJ.align){return aJ.column+(aH?0:1)}else{return aJ.indented+(aH?0:k)}}}}}}},electricInput:/^\s*(?:case .*?:|default:|\{|\})$/,blockCommentStart:y?null:"/*",blockCommentEnd:y?null:"*/",lineComment:y?null:"//",fold:"brace",helperType:y?"json":"javascript",jsonldMode:ay,jsonMode:y}});a.registerHelper("wordChars","javascript",/[\w$]/);a.defineMIME("text/javascript","javascript");a.defineMIME("text/ecmascript","javascript");a.defineMIME("application/javascript","javascript");a.defineMIME("application/x-javascript","javascript");a.defineMIME("application/ecmascript","javascript");a.defineMIME("application/json",{name:"javascript",json:true});a.defineMIME("application/x-json",{name:"javascript",json:true});a.defineMIME("application/ld+json",{name:"javascript",jsonld:true});a.defineMIME("text/typescript",{name:"javascript",typescript:true});a.defineMIME("application/typescript",{name:"javascript",typescript:true})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(n){n.defineMode("css",function(O,C){if(!C.propertyKeywords){C=n.resolveMode("text/css")}var I=O.indentUnit,u=C.tokenHooks,N=C.mediaTypes||{},E=C.mediaFeatures||{},B=C.propertyKeywords||{},v=C.nonStandardPropertyKeywords||{},H=C.colorKeywords||{},K=C.valueKeywords||{},x=C.fontProperties||{},F=C.allowNested;var w,G;function P(S,T){w=T;return S}function R(V,U){var T=V.next();if(u[T]){var S=u[T](V,U);if(S!==false){return S}}if(T=="@"){V.eatWhile(/[\w\\\-]/);return P("def",V.current())}else{if(T=="="||(T=="~"||T=="|")&&V.eat("=")){return P(null,"compare")}else{if(T=='"'||T=="'"){U.tokenize=D(T);return U.tokenize(V,U)}else{if(T=="#"){V.eatWhile(/[\w\\\-]/);return P("atom","hash")}else{if(T=="!"){V.match(/^\s*\w*/);return P("keyword","important")}else{if(/\d/.test(T)||T=="."&&V.eat(/\d/)){V.eatWhile(/[\w.%]/);return P("number","unit")}else{if(T==="-"){if(/[\d.]/.test(V.peek())){V.eatWhile(/[\w.%]/);return P("number","unit")}else{if(V.match(/^\w+-/)){return P("meta","meta")}}}else{if(/[,+>*\/]/.test(T)){return P(null,"select-op")}else{if(T=="."&&V.match(/^-?[_a-z][_a-z0-9-]*/i)){return P("qualifier","qualifier")}else{if(/[:;{}\[\]\(\)]/.test(T)){return P(null,T)}else{if(T=="u"&&V.match("rl(")){V.backUp(1);U.tokenize=Q;return P("property","word")}else{if(/[\w\\\-]/.test(T)){V.eatWhile(/[\w\\\-]/);return P("property","word")}else{return P(null,null)}}}}}}}}}}}}}function D(S){return function(W,U){var V=false,T;while((T=W.next())!=null){if(T==S&&!V){if(S==")"){W.backUp(1)}break}V=!V&&T=="\\"}if(T==S||!V&&S!=")"){U.tokenize=null}return P("string","string")}}function Q(T,S){T.next();if(!T.match(/\s*[\"\')]/,false)){S.tokenize=D(")")}else{S.tokenize=null}return P(null,"(")}function J(T,S,U){this.type=T;this.indent=S;this.prev=U}function z(T,U,S){T.context=new J(S,U.indentation()+I,T.context);return S}function L(S){S.context=S.context.prev;return S.context.type}function t(S,U,T){return y[T.context.type](S,U,T)}function M(T,V,U,W){for(var S=W||1;S>0;S--){U.context=U.context.prev}return t(T,V,U)}function A(T){var S=T.current().toLowerCase();if(K.hasOwnProperty(S)){G="atom"}else{if(H.hasOwnProperty(S)){G="keyword"}else{G="variable"}}}var y={};y.top=function(S,U,T){if(S=="{"){return z(T,U,"block")}else{if(S=="}"&&T.context.prev){return L(T)}else{if(S=="@media"){return z(T,U,"media")}else{if(S=="@font-face"){return"font_face_before"}else{if(/^@(-(moz|ms|o|webkit)-)?keyframes$/.test(S)){return"keyframes"}else{if(S&&S.charAt(0)=="@"){return z(T,U,"at")}else{if(S=="hash"){G="builtin"}else{if(S=="word"){G="tag"}else{if(S=="variable-definition"){return"maybeprop"}else{if(S=="interpolation"){return z(T,U,"interpolation")}else{if(S==":"){return"pseudo"}else{if(F&&S=="("){return z(T,U,"parens")}}}}}}}}}}}}return T.context.type};y.block=function(S,V,T){if(S=="word"){var U=V.current().toLowerCase();if(B.hasOwnProperty(U)){G="property";return"maybeprop"}else{if(v.hasOwnProperty(U)){G="string-2";return"maybeprop"}else{if(F){G=V.match(/^\s*:(?:\s|$)/,false)?"property":"tag";return"block"}else{G+=" error";return"maybeprop"}}}}else{if(S=="meta"){return"block"}else{if(!F&&(S=="hash"||S=="qualifier")){G="error";return"block"}else{return y.top(S,V,T)}}}};y.maybeprop=function(S,U,T){if(S==":"){return z(T,U,"prop")}return t(S,U,T)};y.prop=function(S,U,T){if(S==";"){return L(T)}if(S=="{"&&F){return z(T,U,"propBlock")}if(S=="}"||S=="{"){return M(S,U,T)}if(S=="("){return z(T,U,"parens")}if(S=="hash"&&!/^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/.test(U.current())){G+=" error"}else{if(S=="word"){A(U)}else{if(S=="interpolation"){return z(T,U,"interpolation")}}}return"prop"};y.propBlock=function(T,S,U){if(T=="}"){return L(U)}if(T=="word"){G="property";return"maybeprop"}return U.context.type};y.parens=function(S,U,T){if(S=="{"||S=="}"){return M(S,U,T)}if(S==")"){return L(T)}if(S=="("){return z(T,U,"parens")}if(S=="word"){A(U)}return"parens"};y.pseudo=function(S,U,T){if(S=="word"){G="variable-3";return T.context.type}return t(S,U,T)};y.media=function(S,V,T){if(S=="("){return z(T,V,"media_parens")}if(S=="}"){return M(S,V,T)}if(S=="{"){return L(T)&&z(T,V,F?"block":"top")}if(S=="word"){var U=V.current().toLowerCase();if(U=="only"||U=="not"||U=="and"){G="keyword"}else{if(N.hasOwnProperty(U)){G="attribute"}else{if(E.hasOwnProperty(U)){G="property"}else{G="error"}}}}return T.context.type};y.media_parens=function(S,U,T){if(S==")"){return L(T)}if(S=="{"||S=="}"){return M(S,U,T,2)}return y.media(S,U,T)};y.font_face_before=function(S,U,T){if(S=="{"){return z(T,U,"font_face")}return t(S,U,T)};y.font_face=function(S,U,T){if(S=="}"){return L(T)}if(S=="word"){if(!x.hasOwnProperty(U.current().toLowerCase())){G="error"}else{G="property"}return"maybeprop"}return"font_face"};y.keyframes=function(S,U,T){if(S=="word"){G="variable";return"keyframes"}if(S=="{"){return z(T,U,"top")}return t(S,U,T)};y.at=function(S,U,T){if(S==";"){return L(T)}if(S=="{"||S=="}"){return M(S,U,T)}if(S=="word"){G="tag"}else{if(S=="hash"){G="builtin"}}return"at"};y.interpolation=function(S,U,T){if(S=="}"){return L(T)}if(S=="{"||S==";"){return M(S,U,T)}if(S!="variable"){G="error"}return"interpolation"};return{startState:function(S){return{tokenize:null,state:"top",context:new J("top",S||0,null)}},token:function(U,T){if(!T.tokenize&&U.eatSpace()){return null}var S=(T.tokenize||R)(U,T);if(S&&typeof S=="object"){w=S[1];S=S[0]}G=S;T.state=y[T.state](w,U,T);return G},indent:function(W,U){var T=W.context,V=U&&U.charAt(0);var S=T.indent;if(T.type=="prop"&&(V=="}"||V==")")){T=T.prev}if(T.prev&&(V=="}"&&(T.type=="block"||T.type=="top"||T.type=="interpolation"||T.type=="font_face")||V==")"&&(T.type=="parens"||T.type=="media_parens")||V=="{"&&(T.type=="at"||T.type=="media"))){S=T.indent-I;T=T.prev}return S},electricChars:"}",blockCommentStart:"/*",blockCommentEnd:"*/",fold:"brace"}});function f(v){var u={};for(var t=0;t<v.length;++t){u[v[t]]=true}return u}var a=["all","aural","braille","handheld","print","projection","screen","tty","tv","embossed"],q=f(a);var s=["width","min-width","max-width","height","min-height","max-height","device-width","min-device-width","max-device-width","device-height","min-device-height","max-device-height","aspect-ratio","min-aspect-ratio","max-aspect-ratio","device-aspect-ratio","min-device-aspect-ratio","max-device-aspect-ratio","color","min-color","max-color","color-index","min-color-index","max-color-index","monochrome","min-monochrome","max-monochrome","resolution","min-resolution","max-resolution","scan","grid"],i=f(s);var c=["align-content","align-items","align-self","alignment-adjust","alignment-baseline","anchor-point","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","appearance","azimuth","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","baseline-shift","binding","bleed","bookmark-label","bookmark-level","bookmark-state","bookmark-target","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","color","color-profile","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","crop","cue","cue-after","cue-before","cursor","direction","display","dominant-baseline","drop-initial-after-adjust","drop-initial-after-align","drop-initial-before-adjust","drop-initial-before-align","drop-initial-size","drop-initial-value","elevation","empty-cells","fit","fit-position","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","float-offset","flow-from","flow-into","font","font-feature-settings","font-family","font-kerning","font-language-override","font-size","font-size-adjust","font-stretch","font-style","font-synthesis","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-ligatures","font-variant-numeric","font-variant-position","font-weight","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-position","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphens","icon","image-orientation","image-rendering","image-resolution","inline-box-align","justify-content","left","letter-spacing","line-break","line-height","line-stacking","line-stacking-ruby","line-stacking-shift","line-stacking-strategy","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marker-offset","marks","marquee-direction","marquee-loop","marquee-play-count","marquee-speed","marquee-style","max-height","max-width","min-height","min-width","move-to","nav-down","nav-index","nav-left","nav-right","nav-up","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-style","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","page-policy","pause","pause-after","pause-before","perspective","perspective-origin","pitch","pitch-range","play-during","position","presentation-level","punctuation-trim","quotes","region-break-after","region-break-before","region-break-inside","region-fragment","rendering-intent","resize","rest","rest-after","rest-before","richness","right","rotation","rotation-point","ruby-align","ruby-overhang","ruby-position","ruby-span","shape-image-threshold","shape-inside","shape-margin","shape-outside","size","speak","speak-as","speak-header","speak-numeral","speak-punctuation","speech-rate","stress","string-set","tab-size","table-layout","target","target-name","target-new","target-position","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-style","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-height","text-indent","text-justify","text-outline","text-overflow","text-shadow","text-size-adjust","text-space-collapse","text-transform","text-underline-position","text-wrap","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","volume","white-space","widows","width","word-break","word-spacing","word-wrap","z-index","clip-path","clip-rule","mask","enable-background","filter","flood-color","flood-opacity","lighting-color","stop-color","stop-opacity","pointer-events","color-interpolation","color-interpolation-filters","color-rendering","fill","fill-opacity","fill-rule","image-rendering","marker","marker-end","marker-mid","marker-start","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-rendering","baseline-shift","dominant-baseline","glyph-orientation-horizontal","glyph-orientation-vertical","text-anchor","writing-mode"],h=f(c);var l=["scrollbar-arrow-color","scrollbar-base-color","scrollbar-dark-shadow-color","scrollbar-face-color","scrollbar-highlight-color","scrollbar-shadow-color","scrollbar-3d-light-color","scrollbar-track-color","shape-inside","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","zoom"],d=f(l);var b=["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"],k=f(b);var j=["above","absolute","activeborder","activecaption","afar","after-white-space","ahead","alias","all","all-scroll","alternate","always","amharic","amharic-abegede","antialiased","appworkspace","arabic-indic","armenian","asterisks","auto","avoid","avoid-column","avoid-page","avoid-region","background","backwards","baseline","below","bidi-override","binary","bengali","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","cambodian","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-earthly-branch","cjk-heavenly-stem","cjk-ideographic","clear","clip","close-quote","col-resize","collapse","column","compact","condensed","contain","content","content-box","context-menu","continuous","copy","cover","crop","cross","crosshair","currentcolor","cursive","dashed","decimal","decimal-leading-zero","default","default-button","destination-atop","destination-in","destination-out","destination-over","devanagari","disc","discard","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic","ethiopic-abegede","ethiopic-abegede-am-et","ethiopic-abegede-gez","ethiopic-abegede-ti-er","ethiopic-abegede-ti-et","ethiopic-halehame-aa-er","ethiopic-halehame-aa-et","ethiopic-halehame-am-et","ethiopic-halehame-gez","ethiopic-halehame-om-et","ethiopic-halehame-sid-et","ethiopic-halehame-so-et","ethiopic-halehame-ti-er","ethiopic-halehame-ti-et","ethiopic-halehame-tig","ew-resize","expanded","extra-condensed","extra-expanded","fantasy","fast","fill","fixed","flat","footnotes","forwards","from","geometricPrecision","georgian","graytext","groove","gujarati","gurmukhi","hand","hangul","hangul-consonant","hebrew","help","hidden","hide","higher","highlight","highlighttext","hiragana","hiragana-iroha","horizontal","hsl","hsla","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-table","inset","inside","intrinsic","invert","italic","justify","kannada","katakana","katakana-iroha","keep-all","khmer","landscape","lao","large","larger","left","level","lighter","line-through","linear","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-alpha","lower-armenian","lower-greek","lower-hexadecimal","lower-latin","lower-norwegian","lower-roman","lowercase","ltr","malayalam","match","media-controls-background","media-current-time-display","media-fullscreen-button","media-mute-button","media-play-button","media-return-to-realtime-button","media-rewind-button","media-seek-back-button","media-seek-forward-button","media-slider","media-sliderthumb","media-time-remaining-display","media-volume-slider","media-volume-slider-container","media-volume-sliderthumb","medium","menu","menulist","menulist-button","menulist-text","menulist-textfield","menutext","message-box","middle","min-intrinsic","mix","mongolian","monospace","move","multiple","myanmar","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","nw-resize","nwse-resize","oblique","octal","open-quote","optimizeLegibility","optimizeSpeed","oriya","oromo","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","persian","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","round","row-resize","rtl","run-in","running","s-resize","sans-serif","scroll","scrollbar","se-resize","searchfield","searchfield-cancel-button","searchfield-decoration","searchfield-results-button","searchfield-results-decoration","semi-condensed","semi-expanded","separate","serif","show","sidama","single","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","solid","somali","source-atop","source-in","source-out","source-over","space","square","square-button","start","static","status-bar","stretch","stroke","sub","subpixel-antialiased","super","sw-resize","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","telugu","text","text-bottom","text-top","textarea","textfield","thai","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","tibetan","tigre","tigrinya-er","tigrinya-er-abegede","tigrinya-et","tigrinya-et-abegede","to","top","transparent","ultra-condensed","ultra-expanded","underline","up","upper-alpha","upper-armenian","upper-greek","upper-hexadecimal","upper-latin","upper-norwegian","upper-roman","uppercase","urdu","url","vertical","vertical-text","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","x-large","x-small","xor","xx-large","xx-small"],o=f(j);var p=["font-family","src","unicode-range","font-variant","font-feature-settings","font-stretch","font-weight","font-style"],e=f(p);var m=a.concat(s).concat(c).concat(l).concat(b).concat(j);n.registerHelper("hintWords","css",m);function r(w,v){var t=false,u;while((u=w.next())!=null){if(t&&u=="/"){v.tokenize=null;break}t=(u=="*")}return["comment","comment"]}function g(u,t){if(u.skipTo("-->")){u.match("-->");t.tokenize=null}else{u.skipToEnd()}return["comment","comment"]}n.defineMIME("text/css",{mediaTypes:q,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:d,colorKeywords:k,valueKeywords:o,fontProperties:e,tokenHooks:{"<":function(u,t){if(!u.match("!--")){return false}t.tokenize=g;return g(u,t)},"/":function(u,t){if(!u.eat("*")){return false}t.tokenize=r;return r(u,t)}},name:"css"});n.defineMIME("text/x-scss",{mediaTypes:q,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:d,colorKeywords:k,valueKeywords:o,fontProperties:e,allowNested:true,tokenHooks:{"/":function(u,t){if(u.eat("/")){u.skipToEnd();return["comment","comment"]}else{if(u.eat("*")){t.tokenize=r;return r(u,t)}else{return["operator","operator"]}}},":":function(t){if(t.match(/\s*\{/)){return[null,"{"]}return false},"$":function(t){t.match(/^[\w-]+/);if(t.match(/^\s*:/,false)){return["variable-2","variable-definition"]}return["variable-2","variable"]},"#":function(t){if(!t.eat("{")){return false}return[null,"interpolation"]}},name:"css",helperType:"scss"});n.defineMIME("text/x-less",{mediaTypes:q,mediaFeatures:i,propertyKeywords:h,nonStandardPropertyKeywords:d,colorKeywords:k,valueKeywords:o,fontProperties:e,allowNested:true,tokenHooks:{"/":function(u,t){if(u.eat("/")){u.skipToEnd();return["comment","comment"]}else{if(u.eat("*")){t.tokenize=r;return r(u,t)}else{return["operator","operator"]}}},"@":function(t){if(t.match(/^(charset|document|font-face|import|(-(moz|ms|o|webkit)-)?keyframes|media|namespace|page|supports)\b/,false)){return false}t.eatWhile(/[\w\\\-]/);if(t.match(/^\s*:/,false)){return["variable-2","variable-definition"]}return["variable-2","variable"]},"&":function(){return["atom","atom"]}},name:"css",helperType:"less"})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror"],a)}else{a(CodeMirror)}}})(function(b){b.defineMode("clike",function(A,m){var u=A.indentUnit,s=m.statementIndentUnit||u,v=m.dontAlignCalls,o=m.keywords||{},B=m.builtin||{},w=m.blockKeywords||{},k=m.atoms||{},j=m.hooks||{},r=m.multiLineStrings,p=m.indentStatements!==false;var q=/[+\-*&%=<>!?|\/]/;var y;function C(H,F){var E=H.next();if(j[E]){var D=j[E](H,F);if(D!==false){return D}}if(E=='"'||E=="'"){F.tokenize=n(E);return F.tokenize(H,F)}if(/[\[\]{}\(\),;\:\.]/.test(E)){y=E;return null}if(/\d/.test(E)){H.eatWhile(/[\w\.]/);return"number"}if(E=="/"){if(H.eat("*")){F.tokenize=t;return t(H,F)}if(H.eat("/")){H.skipToEnd();return"comment"}}if(q.test(E)){H.eatWhile(q);return"operator"}H.eatWhile(/[\w\$_\xa1-\uffff]/);var G=H.current();if(o.propertyIsEnumerable(G)){if(w.propertyIsEnumerable(G)){y="newstatement"}return"keyword"}if(B.propertyIsEnumerable(G)){if(w.propertyIsEnumerable(G)){y="newstatement"}return"builtin"}if(k.propertyIsEnumerable(G)){return"atom"}return"variable"}function n(D){return function(I,G){var H=false,F,E=false;while((F=I.next())!=null){if(F==D&&!H){E=true;break}H=!H&&F=="\\"}if(E||!(H||r)){G.tokenize=null}return"string"}}function t(G,F){var D=false,E;while(E=G.next()){if(E=="/"&&D){F.tokenize=null;break}D=(E=="*")}return"comment"}function x(H,E,D,G,F){this.indented=H;this.column=E;this.type=D;this.align=G;this.prev=F}function l(G,E,F){var D=G.indented;if(G.context&&G.context.type=="statement"){D=G.context.indented}return G.context=new x(D,E,F,null,G.context)}function z(E){var D=E.context.type;if(D==")"||D=="]"||D=="}"){E.indented=E.context.indented}return E.context=E.context.prev}return{startState:function(D){return{tokenize:null,context:new x((D||0)-u,0,"top",false),indented:0,startOfLine:true}},token:function(G,F){var D=F.context;if(G.sol()){if(D.align==null){D.align=false}F.indented=G.indentation();F.startOfLine=true}if(G.eatSpace()){return null}y=null;var E=(F.tokenize||C)(G,F);if(E=="comment"||E=="meta"){return E}if(D.align==null){D.align=true}if((y==";"||y==":"||y==",")&&D.type=="statement"){z(F)}else{if(y=="{"){l(F,G.column(),"}")}else{if(y=="["){l(F,G.column(),"]")}else{if(y=="("){l(F,G.column(),")")}else{if(y=="}"){while(D.type=="statement"){D=z(F)}if(D.type=="}"){D=z(F)}while(D.type=="statement"){D=z(F)}}else{if(y==D.type){z(F)}else{if(p&&(((D.type=="}"||D.type=="top")&&y!=";")||(D.type=="statement"&&y=="newstatement"))){l(F,G.column(),"statement")}}}}}}}F.startOfLine=false;return E},indent:function(H,E){if(H.tokenize!=C&&H.tokenize!=null){return b.Pass}var D=H.context,G=E&&E.charAt(0);if(D.type=="statement"&&G=="}"){D=D.prev}var F=G==D.type;if(D.type=="statement"){return D.indented+(G=="{"?0:s)}else{if(D.align&&(!v||D.type!=")")){return D.column+(F?0:1)}else{if(D.type==")"&&!F){return D.indented+s}else{return D.indented+(F?0:u)}}}},electricChars:"{}",blockCommentStart:"/*",blockCommentEnd:"*/",lineComment:"//",fold:"brace"}});function f(m){var k={},l=m.split(" ");for(var j=0;j<l.length;++j){k[l[j]]=true}return k}var i="auto if break int case long char register continue return default short do sizeof double static else struct entry switch extern typedef float union for unsigned goto while enum void const signed volatile";function c(k,j){if(!j.startOfLine){return false}for(;;){if(k.skipTo("\\")){k.next();if(k.eol()){j.tokenize=c;break}}else{k.skipToEnd();j.tokenize=null;break}}return"meta"}function h(l,k){l.backUp(1);if(l.match(/(R|u8R|uR|UR|LR)/)){var j=l.match(/"([^\s\\()]{0,16})\(/);if(!j){return false}k.cpp11RawStringDelim=j[1];k.tokenize=e;return e(l,k)}if(l.match(/(u8|u|U|L)/)){if(l.match(/["']/,false)){return"string"}return false}l.next();return false}function g(l,k){var j;while((j=l.next())!=null){if(j=='"'&&!l.eat('"')){k.tokenize=null;break}}return"string"}function e(m,k){var l=k.cpp11RawStringDelim.replace(/[^\w\s]/g,"\\$&");var j=m.match(new RegExp(".*?\\)"+l+'"'));if(j){k.tokenize=null}else{m.skipToEnd()}return"string"}function a(j,n){if(typeof j=="string"){j=[j]}var m=[];function l(o){if(o){for(var p in o){if(o.hasOwnProperty(p)){m.push(p)}}}}l(n.keywords);l(n.builtin);l(n.atoms);if(m.length){n.helperType=j[0];b.registerHelper("hintWords",j[0],m)}for(var k=0;k<j.length;++k){b.defineMIME(j[k],n)}}a(["text/x-csrc","text/x-c","text/x-chdr"],{name:"clike",keywords:f(i),blockKeywords:f("case do else for if switch while struct"),atoms:f("null"),hooks:{"#":c},modeProps:{fold:["brace","include"]}});a(["text/x-c++src","text/x-c++hdr"],{name:"clike",keywords:f(i+" asm dynamic_cast namespace reinterpret_cast try bool explicit new static_cast typeid catch operator template typename class friend private this using const_cast inline public throw virtual delete mutable protected wchar_t alignas alignof constexpr decltype nullptr noexcept thread_local final static_assert override"),blockKeywords:f("catch class do else finally for if struct switch try while"),atoms:f("true false null"),hooks:{"#":c,u:h,U:h,L:h,R:h},modeProps:{fold:["brace","include"]}});a("text/x-java",{name:"clike",keywords:f("abstract assert boolean break byte case catch char class const continue default do double else enum extends final finally float for goto if implements import instanceof int interface long native new package private protected public return short static strictfp super switch synchronized this throw throws transient try void volatile while"),blockKeywords:f("catch class do else finally for if switch try while"),atoms:f("true false null"),hooks:{"@":function(j){j.eatWhile(/[\w\$_]/);return"meta"}},modeProps:{fold:["brace","import"]}});a("text/x-csharp",{name:"clike",keywords:f("abstract as base break case catch checked class const continue default delegate do else enum event explicit extern finally fixed for foreach goto if implicit in interface internal is lock namespace new operator out override params private protected public readonly ref return sealed sizeof stackalloc static struct switch this throw try typeof unchecked unsafe using virtual void volatile while add alias ascending descending dynamic from get global group into join let orderby partial remove select set value var yield"),blockKeywords:f("catch class do else finally for foreach if struct switch try while"),builtin:f("Boolean Byte Char DateTime DateTimeOffset Decimal Double Guid Int16 Int32 Int64 Object SByte Single String TimeSpan UInt16 UInt32 UInt64 bool byte char decimal double short int long object sbyte float string ushort uint ulong"),atoms:f("true false null"),hooks:{"@":function(k,j){if(k.eat('"')){j.tokenize=g;return g(k,j)}k.eatWhile(/[\w\$_]/);return"meta"}}});function d(l,j){var k=false;while(!l.eol()){if(!k&&l.match('"""')){j.tokenize=null;break}k=l.next()!="\\"&&!k}return"string"}a("text/x-scala",{name:"clike",keywords:f("abstract case catch class def do else extends false final finally for forSome if implicit import lazy match new null object override package private protected return sealed super this throw trait try trye type val var while with yield _ : = => <- <: <% >: # @ assert assume require print println printf readLine readBoolean readByte readShort readChar readInt readLong readFloat readDouble AnyVal App Application Array BufferedIterator BigDecimal BigInt Char Console Either Enumeration Equiv Error Exception Fractional Function IndexedSeq Integral Iterable Iterator List Map Numeric Nil NotNull Option Ordered Ordering PartialFunction PartialOrdering Product Proxy Range Responder Seq Serializable Set Specializable Stream StringBuilder StringContext Symbol Throwable Traversable TraversableOnce Tuple Unit Vector :: #:: Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void"),multiLineStrings:true,blockKeywords:f("catch class do else finally for forSome if match switch try while"),atoms:f("true false null"),indentStatements:false,hooks:{"@":function(j){j.eatWhile(/[\w\$_]/);return"meta"},'"':function(k,j){if(!k.match('""')){return false}j.tokenize=d;return j.tokenize(k,j)}}});a(["x-shader/x-vertex","x-shader/x-fragment"],{name:"clike",keywords:f("float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4 sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadowconst attribute uniform varying break continue discard return for while do if else struct in out inout"),blockKeywords:f("for while do if else struct"),builtin:f("radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smootstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4"),atoms:f("true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragColor gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TexureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers"),hooks:{"#":c},modeProps:{fold:["brace","include"]}});a("text/x-nesc",{name:"clike",keywords:f(i+"as atomic async call command component components configuration event generic implementation includes interface module new norace nx_struct nx_union post provides signal task uses abstract extends"),blockKeywords:f("case do else for if switch while struct"),atoms:f("null"),hooks:{"#":c},modeProps:{fold:["brace","include"]}});a("text/x-objectivec",{name:"clike",keywords:f(i+"inline restrict _Bool _Complex _Imaginery BOOL Class bycopy byref id IMP in inout nil oneway out Protocol SEL self super atomic nonatomic retain copy readwrite readonly"),atoms:f("YES NO NULL NILL ON OFF"),hooks:{"@":function(j){j.eatWhile(/[\w\$]/);return"keyword"},"#":c},modeProps:{fold:"brace"}})});(function(a){if(typeof exports=="object"&&typeof module=="object"){a(require("../../lib/codemirror"),require("../htmlmixed/htmlmixed"),require("../clike/clike"))}else{if(typeof define=="function"&&define.amd){define(["../../lib/codemirror","../htmlmixed/htmlmixed","../clike/clike"],a)}else{a(CodeMirror)}}})(function(c){function e(m){var k={},l=m.split(" ");for(var j=0;j<l.length;++j){k[l[j]]=true}return k}function d(k,j){if(k.length==0){return g(j)}return function(o,n){var m=k[0];for(var l=0;l<m.length;l++){if(o.match(m[l][0])){n.tokenize=d(k.slice(1),j);return m[l][1]}}n.tokenize=g(j);return"string"}}function g(j){return function(l,k){return a(l,k,j)}}function a(m,k,j){if(m.match("${",false)||m.match("{$",false)){k.tokenize=null;return"string"}if(m.match(/^\$[a-zA-Z_][a-zA-Z0-9_]*/)){if(m.match("[",false)){k.tokenize=d([[["[",null]],[[/\d[\w\.]*/,"number"],[/\$[a-zA-Z_][a-zA-Z0-9_]*/,"variable-2"],[/[\w\$]+/,"variable"]],[["]",null]]],j)}if(m.match(/\-\>\w/,false)){k.tokenize=d([[["->",null]],[[/[\w]+/,"variable"]]],j)}return"variable-2"}var l=false;while(!m.eol()&&(l||(!m.match("{$",false)&&!m.match(/^(\$[a-zA-Z_][a-zA-Z0-9_]*|\$\{)/,false)))){if(!l&&m.match(j)){k.tokenize=null;k.tokStack.pop();k.tokStack.pop();break}l=m.next()=="\\"&&!l}return"string"}var h="abstract and array as break case catch class clone const continue declare default do else elseif enddeclare endfor endforeach endif endswitch endwhile extends final for foreach function global goto if implements interface instanceof namespace new or private protected public static switch throw trait try use var while xor die echo empty exit eval include include_once isset list require require_once return print unset __halt_compiler self static parent yield insteadof finally";var i="true false null TRUE FALSE NULL __CLASS__ __DIR__ __FILE__ __LINE__ __METHOD__ __FUNCTION__ __NAMESPACE__ __TRAIT__";var b="func_num_args func_get_arg func_get_args strlen strcmp strncmp strcasecmp strncasecmp each error_reporting define defined trigger_error user_error set_error_handler restore_error_handler get_declared_classes get_loaded_extensions extension_loaded get_extension_funcs debug_backtrace constant bin2hex hex2bin sleep usleep time mktime gmmktime strftime gmstrftime strtotime date gmdate getdate localtime checkdate flush wordwrap htmlspecialchars htmlentities html_entity_decode md5 md5_file crc32 getimagesize image_type_to_mime_type phpinfo phpversion phpcredits strnatcmp strnatcasecmp substr_count strspn strcspn strtok strtoupper strtolower strpos strrpos strrev hebrev hebrevc nl2br basename dirname pathinfo stripslashes stripcslashes strstr stristr strrchr str_shuffle str_word_count strcoll substr substr_replace quotemeta ucfirst ucwords strtr addslashes addcslashes rtrim str_replace str_repeat count_chars chunk_split trim ltrim strip_tags similar_text explode implode setlocale localeconv parse_str str_pad chop strchr sprintf printf vprintf vsprintf sscanf fscanf parse_url urlencode urldecode rawurlencode rawurldecode readlink linkinfo link unlink exec system escapeshellcmd escapeshellarg passthru shell_exec proc_open proc_close rand srand getrandmax mt_rand mt_srand mt_getrandmax base64_decode base64_encode abs ceil floor round is_finite is_nan is_infinite bindec hexdec octdec decbin decoct dechex base_convert number_format fmod ip2long long2ip getenv putenv getopt microtime gettimeofday getrusage uniqid quoted_printable_decode set_time_limit get_cfg_var magic_quotes_runtime set_magic_quotes_runtime get_magic_quotes_gpc get_magic_quotes_runtime import_request_variables error_log serialize unserialize memory_get_usage var_dump var_export debug_zval_dump print_r highlight_file show_source highlight_string ini_get ini_get_all ini_set ini_alter ini_restore get_include_path set_include_path restore_include_path setcookie header headers_sent connection_aborted connection_status ignore_user_abort parse_ini_file is_uploaded_file move_uploaded_file intval floatval doubleval strval gettype settype is_null is_resource is_bool is_long is_float is_int is_integer is_double is_real is_numeric is_string is_array is_object is_scalar ereg ereg_replace eregi eregi_replace split spliti join sql_regcase dl pclose popen readfile rewind rmdir umask fclose feof fgetc fgets fgetss fread fopen fpassthru ftruncate fstat fseek ftell fflush fwrite fputs mkdir rename copy tempnam tmpfile file file_get_contents stream_select stream_context_create stream_context_set_params stream_context_set_option stream_context_get_options stream_filter_prepend stream_filter_append fgetcsv flock get_meta_tags stream_set_write_buffer set_file_buffer set_socket_blocking stream_set_blocking socket_set_blocking stream_get_meta_data stream_register_wrapper stream_wrapper_register stream_set_timeout socket_set_timeout socket_get_status realpath fnmatch fsockopen pfsockopen pack unpack get_browser crypt opendir closedir chdir getcwd rewinddir readdir dir glob fileatime filectime filegroup fileinode filemtime fileowner fileperms filesize filetype file_exists is_writable is_writeable is_readable is_executable is_file is_dir is_link stat lstat chown touch clearstatcache mail ob_start ob_flush ob_clean ob_end_flush ob_end_clean ob_get_flush ob_get_clean ob_get_length ob_get_level ob_get_status ob_get_contents ob_implicit_flush ob_list_handlers ksort krsort natsort natcasesort asort arsort sort rsort usort uasort uksort shuffle array_walk count end prev next reset current key min max in_array array_search extract compact array_fill range array_multisort array_push array_pop array_shift array_unshift array_splice array_slice array_merge array_merge_recursive array_keys array_values array_count_values array_reverse array_reduce array_pad array_flip array_change_key_case array_rand array_unique array_intersect array_intersect_assoc array_diff array_diff_assoc array_sum array_filter array_map array_chunk array_key_exists pos sizeof key_exists assert assert_options version_compare ftok str_rot13 aggregate session_name session_module_name session_save_path session_id session_regenerate_id session_decode session_register session_unregister session_is_registered session_encode session_start session_destroy session_unset session_set_save_handler session_cache_limiter session_cache_expire session_set_cookie_params session_get_cookie_params session_write_close preg_match preg_match_all preg_replace preg_replace_callback preg_split preg_quote preg_grep overload ctype_alnum ctype_alpha ctype_cntrl ctype_digit ctype_lower ctype_graph ctype_print ctype_punct ctype_space ctype_upper ctype_xdigit virtual apache_request_headers apache_note apache_lookup_uri apache_child_terminate apache_setenv apache_response_headers apache_get_version getallheaders mysql_connect mysql_pconnect mysql_close mysql_select_db mysql_create_db mysql_drop_db mysql_query mysql_unbuffered_query mysql_db_query mysql_list_dbs mysql_list_tables mysql_list_fields mysql_list_processes mysql_error mysql_errno mysql_affected_rows mysql_insert_id mysql_result mysql_num_rows mysql_num_fields mysql_fetch_row mysql_fetch_array mysql_fetch_assoc mysql_fetch_object mysql_data_seek mysql_fetch_lengths mysql_fetch_field mysql_field_seek mysql_free_result mysql_field_name mysql_field_table mysql_field_len mysql_field_type mysql_field_flags mysql_escape_string mysql_real_escape_string mysql_stat mysql_thread_id mysql_client_encoding mysql_get_client_info mysql_get_host_info mysql_get_proto_info mysql_get_server_info mysql_info mysql mysql_fieldname mysql_fieldtable mysql_fieldlen mysql_fieldtype mysql_fieldflags mysql_selectdb mysql_createdb mysql_dropdb mysql_freeresult mysql_numfields mysql_numrows mysql_listdbs mysql_listtables mysql_listfields mysql_db_name mysql_dbname mysql_tablename mysql_table_name pg_connect pg_pconnect pg_close pg_connection_status pg_connection_busy pg_connection_reset pg_host pg_dbname pg_port pg_tty pg_options pg_ping pg_query pg_send_query pg_cancel_query pg_fetch_result pg_fetch_row pg_fetch_assoc pg_fetch_array pg_fetch_object pg_fetch_all pg_affected_rows pg_get_result pg_result_seek pg_result_status pg_free_result pg_last_oid pg_num_rows pg_num_fields pg_field_name pg_field_num pg_field_size pg_field_type pg_field_prtlen pg_field_is_null pg_get_notify pg_get_pid pg_result_error pg_last_error pg_last_notice pg_put_line pg_end_copy pg_copy_to pg_copy_from pg_trace pg_untrace pg_lo_create pg_lo_unlink pg_lo_open pg_lo_close pg_lo_read pg_lo_write pg_lo_read_all pg_lo_import pg_lo_export pg_lo_seek pg_lo_tell pg_escape_string pg_escape_bytea pg_unescape_bytea pg_client_encoding pg_set_client_encoding pg_meta_data pg_convert pg_insert pg_update pg_delete pg_select pg_exec pg_getlastoid pg_cmdtuples pg_errormessage pg_numrows pg_numfields pg_fieldname pg_fieldsize pg_fieldtype pg_fieldnum pg_fieldprtlen pg_fieldisnull pg_freeresult pg_result pg_loreadall pg_locreate pg_lounlink pg_loopen pg_loclose pg_loread pg_lowrite pg_loimport pg_loexport http_response_code get_declared_traits getimagesizefromstring socket_import_stream stream_set_chunk_size trait_exists header_register_callback class_uses session_status session_register_shutdown echo print global static exit array empty eval isset unset die include require include_once require_once json_decode json_encode json_last_error json_last_error_msg curl_close curl_copy_handle curl_errno curl_error curl_escape curl_exec curl_file_create curl_getinfo curl_init curl_multi_add_handle curl_multi_close curl_multi_exec curl_multi_getcontent curl_multi_info_read curl_multi_init curl_multi_remove_handle curl_multi_select curl_multi_setopt curl_multi_strerror curl_pause curl_reset curl_setopt_array curl_setopt curl_share_close curl_share_init curl_share_setopt curl_strerror curl_unescape curl_version mysqli_affected_rows mysqli_autocommit mysqli_change_user mysqli_character_set_name mysqli_close mysqli_commit mysqli_connect_errno mysqli_connect_error mysqli_connect mysqli_data_seek mysqli_debug mysqli_dump_debug_info mysqli_errno mysqli_error_list mysqli_error mysqli_fetch_all mysqli_fetch_array mysqli_fetch_assoc mysqli_fetch_field_direct mysqli_fetch_field mysqli_fetch_fields mysqli_fetch_lengths mysqli_fetch_object mysqli_fetch_row mysqli_field_count mysqli_field_seek mysqli_field_tell mysqli_free_result mysqli_get_charset mysqli_get_client_info mysqli_get_client_stats mysqli_get_client_version mysqli_get_connection_stats mysqli_get_host_info mysqli_get_proto_info mysqli_get_server_info mysqli_get_server_version mysqli_info mysqli_init mysqli_insert_id mysqli_kill mysqli_more_results mysqli_multi_query mysqli_next_result mysqli_num_fields mysqli_num_rows mysqli_options mysqli_ping mysqli_prepare mysqli_query mysqli_real_connect mysqli_real_escape_string mysqli_real_query mysqli_reap_async_query mysqli_refresh mysqli_rollback mysqli_select_db mysqli_set_charset mysqli_set_local_infile_default mysqli_set_local_infile_handler mysqli_sqlstate mysqli_ssl_set mysqli_stat mysqli_stmt_init mysqli_store_result mysqli_thread_id mysqli_thread_safe mysqli_use_result mysqli_warning_count";c.registerHelper("hintWords","php",[h,i,b].join(" ").split(" "));c.registerHelper("wordChars","php",/[\w$]/);var f={name:"clike",helperType:"php",keywords:e(h),blockKeywords:e("catch do else elseif for foreach if switch try while finally"),atoms:e(i),builtin:e(b),multiLineStrings:true,hooks:{"$":function(j){j.eatWhile(/[\w\$_]/);return"variable-2"},"<":function(l,j){if(l.match(/<</)){l.eatWhile(/[\w\.]/);var k=l.current().slice(3);if(k){(j.tokStack||(j.tokStack=[])).push(k,0);j.tokenize=g(k);return"string"}}return false},"#":function(j){while(!j.eol()&&!j.match("?>",false)){j.next()}return"comment"},"/":function(j){if(j.eat("/")){while(!j.eol()&&!j.match("?>",false)){j.next()}return"comment"}return false},'"':function(j,k){(k.tokStack||(k.tokStack=[])).push('"',0);k.tokenize=g('"');return"string"},"{":function(j,k){if(k.tokStack&&k.tokStack.length){k.tokStack[k.tokStack.length-1]++}return false},"}":function(j,k){if(k.tokStack&&k.tokStack.length>0&&!--k.tokStack[k.tokStack.length-1]){k.tokenize=g(k.tokStack[k.tokStack.length-2])}return false}}};c.defineMode("php",function(l,m){var n=c.getMode(l,"text/html");var j=c.getMode(l,f);function k(u,s){var r=s.curMode==j;if(u.sol()&&s.pending&&s.pending!='"'&&s.pending!="'"){s.pending=null}if(!r){if(u.match(/^<\?\w*/)){s.curMode=j;s.curState=s.php;return"meta"}if(s.pending=='"'||s.pending=="'"){while(!u.eol()&&u.next()!=s.pending){}var q="string"}else{if(s.pending&&u.pos<s.pending.end){u.pos=s.pending.end;var q=s.pending.style}else{var q=n.token(u,s.curState)}}if(s.pending){s.pending=null}var t=u.current(),p=t.search(/<\?/),o;if(p!=-1){if(q=="string"&&(o=t.match(/[\'\"]$/))&&!/\?>/.test(t)){s.pending=o[0]}else{s.pending={end:u.pos,style:q}}u.backUp(t.length-p)}return q}else{if(r&&s.php.tokenize==null&&u.match("?>")){s.curMode=n;s.curState=s.html;return"meta"}else{return j.token(u,s.curState)}}}return{startState:function(){var o=c.startState(n),p=c.startState(j);return{html:o,php:p,curMode:m.startOpen?j:n,curState:m.startOpen?p:o,pending:null}},copyState:function(r){var p=r.html,q=c.copyState(n,p),t=r.php,o=c.copyState(j,t),s;if(r.curMode==n){s=q}else{s=o}return{html:q,php:o,curMode:r.curMode,curState:s,pending:r.pending}},token:k,indent:function(p,o){if((p.curMode!=j&&/^\s*<\//.test(o))||(p.curMode==j&&/^\?>/.test(o))){return n.indent(p.html,o)}return p.curMode.indent(p.curState,o)},blockCommentStart:"/*",blockCommentEnd:"*/",lineComment:"//",innerMode:function(o){return{state:o.curState,mode:o.curMode}}}},"htmlmixed","clike");c.defineMIME("application/x-httpd-php","php");c.defineMIME("application/x-httpd-php-open",{name:"php",startOpen:true});c.defineMIME("text/x-php",f)});
@@ -8,9 +8,9 @@
8
8
 
9
9
  (function() {
10
10
  CKEDITOR.plugins.add('codemirror', {
11
- icons: 'searchcode,autoformat,commentselectedrange,uncommentselectedrange,autocomplete',
11
+ icons: 'searchcode,autoformat,commentselectedrange,uncommentselectedrange,autocomplete', // %REMOVE_LINE_CORE%
12
12
  lang: 'af,ar,bg,bn,bs,ca,cs,cy,da,de,el,en-au,en-ca,en-gb,en,eo,es,et,eu,fa,fi,fo,fr-ca,fr,gl,gu,he,hi,hr,hu,is,it,ja,ka,km,ko,ku,lt,lv,mk,mn,ms,nb,nl,no,pl,pt-br,pt,ro,ru,sk,sl,sr-latn,sr,sv,th,tr,ug,uk,vi,zh-cn,zh', // %REMOVE_LINE_CORE%
13
- version: 1.11,
13
+ version: 1.12,
14
14
  init: function (editor) {
15
15
  var rootPath = this.path,
16
16
  defaultConfig = {
@@ -22,7 +22,6 @@
22
22
  enableCodeFolding: true,
23
23
  enableCodeFormatting: true,
24
24
  enableSearchTools: true,
25
- highlightActiveLine: true,
26
25
  highlightMatches: true,
27
26
  indentWithTabs: false,
28
27
  lineNumbers: true,
@@ -36,6 +35,7 @@
36
35
  showSearchButton: true,
37
36
  showTrailingSpace: true,
38
37
  showUncommentButton: true,
38
+ styleActiveLine: true,
39
39
  theme: 'default',
40
40
  useBeautify: false
41
41
  };
@@ -58,7 +58,7 @@
58
58
  }
59
59
 
60
60
  // Source mode isn't available in inline mode yet.
61
- if (editor.elementMode === CKEDITOR.ELEMENT_MODE_INLINE) {
61
+ if (editor.elementMode === CKEDITOR.ELEMENT_MODE_INLINE || editor.plugins.sourcedialog) {
62
62
 
63
63
  // Override Source Dialog
64
64
  CKEDITOR.dialog.add('sourcedialog', function (editor) {
@@ -68,8 +68,6 @@
68
68
  oldData;
69
69
 
70
70
  function loadCodeMirrorInline(editor, textarea) {
71
- var delay;
72
-
73
71
  window["codemirror_" + editor.id] = CodeMirror.fromTextArea(textarea, {
74
72
  mode: config.mode,
75
73
  matchBrackets: config.matchBrackets,
@@ -87,9 +85,16 @@
87
85
  theme: config.theme,
88
86
  showTrailingSpace: config.showTrailingSpace,
89
87
  showCursorWhenSelecting: true,
88
+ styleActiveLine: config.styleActiveLine,
90
89
  viewportMargin: Infinity,
91
90
  //extraKeys: {"Ctrl-Space": "autocomplete"},
92
- extraKeys: { "Ctrl-Q": function (codeMirror_Editor) { window["foldFunc_" + editor.id](codeMirror_Editor, codeMirror_Editor.getCursor().line); } },
91
+ extraKeys: {
92
+ "Ctrl-Q": function (codeMirror_Editor) {
93
+ if (config.enableCodeFolding) {
94
+ window["foldFunc_" + editor.id](codeMirror_Editor, codeMirror_Editor.getCursor().line);
95
+ }
96
+ }
97
+ },
93
98
  onKeyEvent: function (codeMirror_Editor, evt) {
94
99
  if (config.enableCodeFormatting) {
95
100
  var range = getSelectedRange();
@@ -144,14 +149,8 @@
144
149
  }
145
150
 
146
151
  window["codemirror_" + editor.id].on("change", function () {
147
- clearTimeout(delay);
148
- delay = setTimeout(function () {
149
- var cm = window["codemirror_" + editor.id];
150
-
151
- if (cm) {
152
- cm.save();
153
- }
154
- }, 300);
152
+ window["codemirror_" + editor.id].save();
153
+ editor.fire('change', this);
155
154
  });
156
155
 
157
156
  window["codemirror_" + editor.id].setSize(holderWidth, holderHeight);
@@ -160,22 +159,15 @@
160
159
  if (config.lineNumbers && config.enableCodeFolding) {
161
160
  window["codemirror_" + editor.id].on("gutterClick", window["foldFunc_" + editor.id]);
162
161
  }
163
- // Highlight Active Line
164
- if (config.highlightActiveLine) {
165
- window["codemirror_" + editor.id].hlLine = window["codemirror_" + editor.id].addLineClass(0, "background", "activeline");
166
- window["codemirror_" + editor.id].on("cursorActivity", function () {
167
- var cur = window["codemirror_" + editor.id].getLineHandle(window["codemirror_" + editor.id].getCursor().line);
168
- if (cur != window["codemirror_" + editor.id].hlLine) {
169
- window["codemirror_" + editor.id].removeLineClass(window["codemirror_" + editor.id].hlLine, "background", "activeline");
170
- window["codemirror_" + editor.id].hlLine = window["codemirror_" + editor.id].addLineClass(cur, "background", "activeline");
171
- }
172
- });
173
- }
174
-
175
162
  // Run config.onLoad callback, if present.
176
163
  if (typeof config.onLoad === 'function') {
177
164
  config.onLoad(window["codemirror_" + editor.id], editor);
178
165
  }
166
+
167
+ // inherit blur event
168
+ window["codemirror_" + editor.id].on("blur", function () {
169
+ editor.fire('blur', this);
170
+ });
179
171
  }
180
172
 
181
173
  return {
@@ -193,27 +185,35 @@
193
185
  // Load the content
194
186
  this.setValueOf('main', 'data', oldData = editor.getData());
195
187
 
196
- if (typeof (CodeMirror) == 'undefined') {
188
+ if (!IsStyleSheetAlreadyLoaded(rootPath + 'css/codemirror.min.css')) {
189
+ CKEDITOR.document.appendStyleSheet(rootPath + 'css/codemirror.min.css');
190
+ }
197
191
 
198
- CKEDITOR.document.appendStyleSheet(CKEDITOR.getUrl('plugins/codemirror/css/codemirror.min.css'));
192
+ if (config.theme.length && config.theme != 'default' && !IsStyleSheetAlreadyLoaded(rootPath + 'css/codemirror.min.css')) {
193
+ CKEDITOR.document.appendStyleSheet(rootPath + 'theme/' + config.theme + '.css');
194
+ }
199
195
 
200
- if (config.theme.length && config.theme != 'default') {
201
- CKEDITOR.document.appendStyleSheet(CKEDITOR.getUrl('plugins/codemirror/theme/' + config.theme + '.css'));
202
- }
196
+ if (typeof (CodeMirror) == 'undefined') {
203
197
 
204
- CKEDITOR.scriptLoader.load(CKEDITOR.getUrl('plugins/codemirror/js/codemirror.min.js'), function () {
198
+ CKEDITOR.scriptLoader.load(rootPath + 'js/codemirror.min.js', function() {
205
199
 
206
- CKEDITOR.scriptLoader.load(getCodeMirrorScripts(), function () {
200
+ CKEDITOR.scriptLoader.load(getCodeMirrorScripts(), function() {
207
201
  loadCodeMirrorInline(editor, textArea);
208
202
  });
209
203
  });
210
204
 
211
205
 
212
206
  } else {
213
- loadCodeMirrorInline(editor, textArea);
207
+ //loadCodeMirrorInline(editor, textArea);
208
+ if (CodeMirror.prototype['autoFormatAll']) {
209
+ loadCodeMirrorInline(editor, textArea);
210
+ } else {
211
+ // loading the add-on scripts.
212
+ CKEDITOR.scriptLoader.load(getCodeMirrorScripts(), function() {
213
+ loadCodeMirrorInline(editor, textArea);
214
+ });
215
+ }
214
216
  }
215
-
216
-
217
217
  },
218
218
  onCancel: function (event) {
219
219
  if (event.data.hide) {
@@ -345,7 +345,7 @@
345
345
  };
346
346
  });
347
347
 
348
- return;
348
+ // return;
349
349
  }
350
350
 
351
351
  /*
@@ -519,83 +519,88 @@
519
519
  };
520
520
  }
521
521
 
522
-
522
+ editor.addMode('source', function (callback) {
523
+ if (!IsStyleSheetAlreadyLoaded(rootPath + 'css/codemirror.min.css')) {
524
+ CKEDITOR.document.appendStyleSheet(rootPath + 'css/codemirror.min.css');
525
+ }
526
+
527
+ if (config.theme.length && config.theme != 'default' && !IsStyleSheetAlreadyLoaded(rootPath + 'css/codemirror.min.css')) {
528
+ CKEDITOR.document.appendStyleSheet(rootPath + 'theme/' + config.theme + '.css');
529
+ }
523
530
 
524
-
525
- editor.addMode('source', function(callback) {
526
531
  if (typeof (CodeMirror) == 'undefined') {
527
-
528
- CKEDITOR.document.appendStyleSheet(CKEDITOR.getUrl('plugins/codemirror/css/codemirror.min.css'));
529
-
530
- if (config.theme.length && config.theme != 'default') {
531
- CKEDITOR.document.appendStyleSheet(CKEDITOR.getUrl('plugins/codemirror/theme/' + config.theme + '.css'));
532
- }
533
532
 
534
- CKEDITOR.scriptLoader.load(CKEDITOR.getUrl('plugins/codemirror/js/codemirror.min.js'), function() {
533
+ CKEDITOR.scriptLoader.load(rootPath + 'js/codemirror.min.js', function() {
535
534
 
536
535
  CKEDITOR.scriptLoader.load(getCodeMirrorScripts(), function() {
537
536
  loadCodeMirror(editor);
538
537
  callback();
539
538
  });
540
539
  });
541
-
542
-
543
540
  } else {
544
- loadCodeMirror(editor);
545
- callback();
541
+ if (CodeMirror.prototype['autoFormatAll']) {
542
+ loadCodeMirror(editor);
543
+ callback();
544
+ } else {
545
+ // loading the add-on scripts.
546
+ CKEDITOR.scriptLoader.load(getCodeMirrorScripts(), function() {
547
+ loadCodeMirror(editor);
548
+ callback();
549
+ });
550
+ }
546
551
  }
547
552
  });
548
553
 
549
554
  function getCodeMirrorScripts() {
550
- var scriptFiles = [CKEDITOR.getUrl('plugins/codemirror/js/codemirror.addons.min.js')];
555
+ var scriptFiles = [rootPath + 'js/codemirror.addons.min.js'];
551
556
 
552
557
  switch (config.mode) {
553
558
  case "bbcode":
554
559
  {
555
- scriptFiles.push(CKEDITOR.getUrl('plugins/codemirror/js/codemirror.mode.bbcode.min.js'));
560
+ scriptFiles.push(rootPath + 'js/codemirror.mode.bbcode.min.js');
556
561
  }
557
562
 
558
563
  break;
559
564
  case "bbcodemixed":
560
565
  {
561
- scriptFiles.push(CKEDITOR.getUrl('plugins/codemirror/js/codemirror.mode.bbcodemixed.min.js'));
566
+ scriptFiles.push(rootPath + 'js/codemirror.mode.bbcodemixed.min.js');
562
567
  }
563
568
 
564
569
  break;
565
570
  case "htmlmixed":
566
571
  {
567
- scriptFiles.push(CKEDITOR.getUrl('plugins/codemirror/js/codemirror.mode.htmlmixed.min.js'));
572
+ scriptFiles.push(rootPath + 'js/codemirror.mode.htmlmixed.min.js');
568
573
  }
569
574
 
570
575
  break;
571
576
  case "text/html":
572
577
  {
573
- scriptFiles.push(CKEDITOR.getUrl('plugins/codemirror/js/codemirror.mode.htmlmixed.min.js'));
578
+ scriptFiles.push(rootPath + 'js/codemirror.mode.htmlmixed.min.js');
574
579
  }
575
580
 
576
581
  break;
577
582
  case "application/x-httpd-php":
578
583
  {
579
- scriptFiles.push(CKEDITOR.getUrl('plugins/codemirror/js/codemirror.mode.php.min.js'));
584
+ scriptFiles.push(rootPath + 'js/codemirror.mode.php.min.js');
580
585
  }
581
586
 
582
587
  break;
583
588
  case "text/javascript":
584
589
  {
585
- scriptFiles.push(CKEDITOR.getUrl('plugins/codemirror/js/codemirror.mode.javascript.min.js'));
590
+ scriptFiles.push(rootPath + 'js/codemirror.mode.javascript.min.js');
586
591
  }
587
592
 
588
593
  break;
589
594
  default:
590
- scriptFiles.push(CKEDITOR.getUrl('plugins/codemirror/js/codemirror.mode.htmlmixed.min.js'));
595
+ scriptFiles.push(rootPath + 'js/codemirror.mode.htmlmixed.min.js');
591
596
  }
592
597
 
593
598
  if (config.useBeautify) {
594
- scriptFiles.push(CKEDITOR.getUrl('plugins/codemirror/js/beautify.min.js'));
599
+ scriptFiles.push(rootPath + 'js/beautify.min.js');
595
600
  }
596
601
 
597
602
  if (config.enableSearchTools) {
598
- scriptFiles.push(CKEDITOR.getUrl('plugins/codemirror/js/codemirror.addons.search.min.js'));
603
+ scriptFiles.push(rootPath + 'js/codemirror.addons.search.min.js');
599
604
  }
600
605
  return scriptFiles;
601
606
  }
@@ -628,7 +633,7 @@
628
633
  window["editable_" + editor.id].setData(editor.getData(1));
629
634
  window["editable_" + editor.id].editorID = editor.id;
630
635
  editor.fire('ariaWidget', this);
631
- var delay;
636
+
632
637
  var sourceAreaElement = window["editable_" + editor.id],
633
638
  holderElement = sourceAreaElement.getParent();
634
639
 
@@ -641,6 +646,51 @@
641
646
  window["foldFunc_" + editor.id] = CodeMirror.newFoldFunction(CodeMirror.tagRangeFinder);
642
647
  }
643
648
 
649
+ function getCodeMirrorKey(ckeditorKeystroke) {
650
+ var MODIFIERS = [
651
+ [CKEDITOR.SHIFT, "Shift-"],
652
+ [CKEDITOR.CTRL, "Ctrl-"],
653
+ [CKEDITOR.ALT, "Alt-"]
654
+ ];
655
+ var keyModifiers = "";
656
+ for (var i = 0; i < MODIFIERS.length; i++) {
657
+ if (ckeditorKeystroke & MODIFIERS[i][0]) {
658
+ ckeditorKeystroke -= MODIFIERS[i][0];
659
+ keyModifiers += MODIFIERS[i][1];
660
+ }
661
+ }
662
+ if (CodeMirror.keyNames[ckeditorKeystroke]) {
663
+ return keyModifiers + CodeMirror.keyNames[ckeditorKeystroke];
664
+ }
665
+ return null;
666
+ }
667
+
668
+ function addCKEditorKeystrokes(editorExtraKeys) {
669
+ var ckeditorKeystrokes = editor.config.keystrokes;
670
+ if (CKEDITOR.tools.isArray(ckeditorKeystrokes)) {
671
+ for (var i = 0; i < ckeditorKeystrokes.length; i++) {
672
+ var key = getCodeMirrorKey(ckeditorKeystrokes[i][0]);
673
+ if (key !== null) {
674
+ (function (command) {
675
+ editorExtraKeys[key] = function () {
676
+ editor.execCommand(command);
677
+ }
678
+ })(ckeditorKeystrokes[i][1]);
679
+ }
680
+ }
681
+ }
682
+ }
683
+
684
+ var extraKeys = {
685
+ "Ctrl-Q": function(codeMirror_Editor) {
686
+ if (config.enableCodeFolding) {
687
+ window["foldFunc_" + editor.id](codeMirror_Editor, codeMirror_Editor.getCursor().line);
688
+ }
689
+ }
690
+ };
691
+
692
+ addCKEditorKeystrokes(extraKeys);
693
+
644
694
  window["codemirror_" + editor.id] = CodeMirror.fromTextArea(sourceAreaElement.$, {
645
695
  mode: config.mode,
646
696
  matchBrackets: config.matchBrackets,
@@ -658,8 +708,9 @@
658
708
  theme: config.theme,
659
709
  showTrailingSpace: config.showTrailingSpace,
660
710
  showCursorWhenSelecting: true,
711
+ styleActiveLine: config.styleActiveLine,
661
712
  //extraKeys: {"Ctrl-Space": "autocomplete"},
662
- extraKeys: { "Ctrl-Q": function (codeMirror_Editor) { window["foldFunc_" + editor.id](codeMirror_Editor, codeMirror_Editor.getCursor().line); } },
713
+ extraKeys: extraKeys,
663
714
  onKeyEvent: function (codeMirror_Editor, evt) {
664
715
 
665
716
  if (config.enableCodeFormatting) {
@@ -713,14 +764,8 @@
713
764
  }
714
765
 
715
766
  window["codemirror_" + editor.id].on("change", function () {
716
- clearTimeout(delay);
717
- delay = setTimeout(function () {
718
- var cm = window["codemirror_" + editor.id];
719
-
720
- if (cm) {
721
- cm.save();
722
- }
723
- }, 300);
767
+ window["codemirror_" + editor.id].save();
768
+ editor.fire('change', this);
724
769
  });
725
770
 
726
771
  window["codemirror_" + editor.id].setSize(null, holderHeight);
@@ -729,29 +774,16 @@
729
774
  if (config.lineNumbers && config.enableCodeFolding) {
730
775
  window["codemirror_" + editor.id].on("gutterClick", window["foldFunc_" + editor.id]);
731
776
  }
732
- // Highlight Active Line
733
- if (config.highlightActiveLine) {
734
- window["codemirror_" + editor.id].hlLine = window["codemirror_" + editor.id].addLineClass(0, "background", "activeline");
735
- window["codemirror_" + editor.id].on("cursorActivity", function () {
736
- try {
737
- var cur = window["codemirror_" + editor.id].getLineHandle(window["codemirror_" + editor.id].getCursor().line);
738
- } catch(e) {
739
- cur = null;
740
- } finally {
741
- if (cur != null) {
742
- if (cur != window["codemirror_" + editor.id].hlLine) {
743
- window["codemirror_" + editor.id].removeLineClass(window["codemirror_" + editor.id].hlLine, "background", "activeline");
744
- window["codemirror_" + editor.id].hlLine = window["codemirror_" + editor.id].addLineClass(cur, "background", "activeline");
745
- }
746
- }
747
- }
748
- });
749
- }
750
777
 
751
778
  // Run config.onLoad callback, if present.
752
779
  if (typeof config.onLoad === 'function') {
753
780
  config.onLoad(window["codemirror_" + editor.id], editor);
754
781
  }
782
+
783
+ // inherit blur event
784
+ window["codemirror_" + editor.id].on("blur", function () {
785
+ editor.fire('blur', this);
786
+ });
755
787
  }
756
788
 
757
789
  editor.addCommand('source', sourcearea.commands.source);
@@ -821,7 +853,7 @@
821
853
 
822
854
  // Fly the range when create bookmark.
823
855
  delete range.element;
824
- range.createBookmark();
856
+ range.createBookmark(editor);
825
857
  sourceBookmark = true;
826
858
 
827
859
  evt.data = range.content;
@@ -869,7 +901,11 @@
869
901
  }
870
902
  });
871
903
 
872
- editor.on('instanceReady', function () {
904
+ editor.on('instanceReady', function (evt) {
905
+
906
+ // Fix native context menu
907
+ editor.container.getPrivate().events.contextmenu.listeners.splice(0, 1);
908
+
873
909
  var selectAllCommand = editor.commands.selectAll;
874
910
 
875
911
  // Replace Complete SelectAll command from the plugin, otherwise it will not work in IE10
@@ -901,8 +937,8 @@
901
937
  }
902
938
  });
903
939
 
904
- if (typeof (jQuery) != 'undefined' && $('a[data-toggle="tab"]') && window["codemirror_" + editor.id]) {
905
- $('a[data-toggle="tab"]').on('shown.bs.tab', function() {
940
+ if (typeof (jQuery) != 'undefined' && jQuery('a[data-toggle="tab"]') && window["codemirror_" + editor.id]) {
941
+ jQuery('a[data-toggle="tab"]').on('shown.bs.tab', function() {
906
942
  window["codemirror_" + editor.id].refresh();
907
943
  });
908
944
  }
@@ -1085,4 +1121,16 @@ function OffSetToLineChannel(ed, n) {
1085
1121
  index += len;
1086
1122
  }
1087
1123
  return { line: line, ch: ch };
1124
+ }
1125
+
1126
+ function IsStyleSheetAlreadyLoaded(href) {
1127
+ var links = CKEDITOR.document.getHead().find('link');
1128
+
1129
+ for (var i = 0; i < links.count() ; i++) {
1130
+ if (links.getItem(i).$.href === href) {
1131
+ return true;
1132
+ }
1133
+ }
1134
+
1135
+ return false;
1088
1136
  }