{"version":3,"sources":["jsdelivr-header.js","/npm/codemirror-mode-maxima@1.0.0/maxima.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,CCEA,SAAU,GACc,iBAAX,SAAwC,iBAAV,OACvC,EAAI,QAAQ,yBACY,mBAAV,QAAwB,OAAO,IAC7C,OAAO,CAAC,wBAAyB,GAEjC,EAAI,WACP,CAPD,EAOG,SAAS,GACZ,aAEA,EAAW,WAAW,UAAU,SAAS,EAAS,GAGhD,IAOI,EAAiB,+BAIjB,EAAiB,IAAI,OAXJ,yEAYjB,EAAiB,IAAI,OAT3B,yjPAUM,EAAiB,IAAI,OATJ,4BAUjB,EAAiB,IAAI,OATJ,kCAUjB,EAAiB,IAAI,OAAQ,MAAQ,EAAR,+BAA4C,EAAiB,KAE9F,SAAS,EAAU,EAAQ,GACzB,IAAI,EAMJ,MAAW,OAHX,EAAK,EAAO,SAIV,EAAM,SAAW,EACV,EAAM,SAAS,EAAQ,IAIrB,MAAP,GACE,EAAO,IAAI,MACb,EAAM,eACN,EAAM,SAAW,EACV,EAAM,SAAS,EAAQ,IAIvB,MAAP,EACO,eAIX,EAAO,OAAO,GAIV,EAAO,MAAM,GAAS,GAAM,IAI5B,EAAO,MAAM,GAAW,GAAM,GAHzB,SAQL,EAAO,MAAM,uBAAuB,GAAM,GACrC,UAKL,EAAO,MAAO,GAAW,GAAM,GAC1B,UAGL,EAAO,MAAO,GAAW,GAAM,GAC1B,UAGL,EAAO,MAAO,GAAc,GAAM,GAC7B,WAIL,EAAO,MAAM,gEAAgE,GAAM,GAC9E,WAIF,OACT,CAEA,SAAS,EAAY,EAAQ,GAE3B,IADA,IAAI,EAAM,GAAM,EAAO,GAAU,EACA,OAAzB,EAAO,EAAO,SAAiB,CACrC,GAAa,MAAT,IAAiB,EAAS,CAC5B,GAAM,EACN,KACF,CACA,GAAW,GAAoB,OAAT,CACxB,CAIA,OAHI,IAAQ,IACV,EAAM,SAAW,GAEZ,QACT,CAEA,SAAS,EAAa,EAAQ,GAE5B,IADA,IAAI,EAAM,EACJ,EAAM,aAAe,GAA+B,OAAzB,EAAO,EAAO,SAChC,MAAT,GAAyB,MAAT,GAAc,EAAM,eAC3B,MAAT,GAAyB,MAAT,GAAc,EAAM,eACxC,EAAO,EAKT,OAHI,EAAM,cAAgB,IACxB,EAAM,SAAW,GAEZ,SACT,CAEA,MAAO,CACL,WAAY,WAAY,MAAO,CAAC,SAAU,EAAW,aAAc,EAAG,EACtE,MAAO,SAAS,EAAQ,GACtB,OAAI,EAAO,WAAmB,KACvB,EAAM,SAAS,EAAQ,EAChC,EACA,kBAAmB,KACnB,gBAAiB,KAErB,IAEA,EAAW,WAAW,gBAAiB,CACrC,KAAM,UAGR","file":"/npm/codemirror-mode-maxima@1.0.0/maxima.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/codemirror-mode-maxima@1.0.0/maxima.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: http://codemirror.net/LICENSE\n\n// adapted by Robert Dodier from Mathematica mode for CodeMirror\n// Mathematica mode copyright (c) 2015 by Calin Barbat\n// Based on code by Patrick Scheibe (halirutan)\n// See: https://github.com/halirutan/Mathematica-Source-Highlighting/tree/master/src/lang-mma.js\n\n(function(mod) {\n  if (typeof exports == \"object\" && typeof module == \"object\") // CommonJS\n    mod(require(\"../../lib/codemirror\"));\n  else if (typeof define == \"function\" && define.amd) // AMD\n    define([\"../../lib/codemirror\"], mod);\n  else // Plain browser env\n    mod(CodeMirror);\n})(function(CodeMirror) {\n\"use strict\";\n\nCodeMirror.defineMode('maxima', function(_config, _parserConfig) {\n\n  // used pattern building blocks\n  var pKeyword       = \"(?:if|then|else|elseif|for|thru|do|while|until|step|in|and|or|not)\\\\b\";\n  // I guess a better way to handle this is to configure this mode with a list of words ...\n  var pBuiltin       = \n\"(?:absboxchar|activecontexts|adapt_depth|adapt_depth|additive|adim|aform|algebraic|algepsilon|algexact|aliases|allbut|all_dotsimp_denoms|allocation|allsym|alphabetic|animation|antisymmetric|arrays|askexp|assume_pos|assume_pos_pred|assumescalar|asymbol|atomgrad|atrig1|axes|axis_3d|axis_bottom|axis_left|axis_right|axis_top|azimuth|azimuth|background|background_color|backsubst|berlefact|bernstein_explicit|besselexpand|beta_args_sum_to_integer|beta_expand|bftorat|bftrunc|bindtest|border|boundaries_array|box|boxchar|breakup|%c|capping|cauchysum|cbrange|cbtics|center|cflength|cframe_flag|cnonmet_flag|color|color|color|color_bar|color_bar_tics|colorbox|columns|commutative|complex|cone|context|contexts|contour|contour_levels|cosnpiflag|ctaypov|ctaypt|ctayswitch|ctayvar|ct_coords|ctorsion_flag|ctrgsimp|cube|current_let_rule_package|cylinder|data_file_name|debugmode|decreasing|default_let_rule_package|delay|dependencies|dependencies|derivabbrev|derivsubst|detout|diagmetric|diff|dim|dimensions|dispflag|display2d|display_format_internal|distribute_over|doallmxops|domain|domxexpt|domxmxops|domxnctimes|dontfactor|doscmxops|doscmxplus|dot0nscsimp|dot0simp|dot1simp|dotassoc|dotconstrules|dotdistrib|dotexptsimp|dotident|dotscrules|draw_graph_program|draw_realpart|%e|edge_color|edge_coloring|edge_partition|edge_type|edge_width|%edispflag|elevation|elevation|%emode|endphi|endtheta|enhanced3d|%enumer|epsilon_lp|erfflag|erf_representation|errormsg|error_size|error_syms|error_type|%e_to_numlog|eval|even|evenfun|evflag|evfun|ev_point|expandwrt_denom|expintexpand|expintrep|expon|expop|exptdispflag|exptisolate|exptsubst|facexpand|facsum_combine|factlim|factorflag|factorial_expand|factors_only|false|fb|feature|features|file_name|file_name|file_output_append|file_search_demo|file_search_lisp|file_search_maxima|file_search_tests|file_search_usage|file_type_lisp|file_type_maxima|fill_color|fill_density|filled_func|fixed_vertices|flipflag|float2bf|font|font_size|fortindent|fortspaces|fpprec|fpprintprec|functions|%gamma|gamma_expand|gammalim|gdet|genindex|gensumnum|GGFCFMAX|GGFINFINITY|globalsolve|gnuplot_command|gnuplot_curve_styles|gnuplot_curve_titles|gnuplot_default_term_command|gnuplot_dumb_term_command|gnuplot_file_args|gnuplot_file_name|gnuplot_out_file|gnuplot_pdf_term_command|gnuplot_pm3d|gnuplot_png_term_command|gnuplot_postamble|gnuplot_preamble|gnuplot_ps_term_command|gnuplot_svg_term_command|gnuplot_term|gnuplot_view_args|Gosper_in_Zeilberger|gradefs|grid|grid|grid2d|grind|halfangles|head_angle|head_angle|head_both|head_length|head_length|head_type|height|height|hypergeometric_representation|%i|%iargs|ibase|icc1|icc2|icounter|idummyx|ieqnprint|ifb|ifc1|ifc2|ifg|ifgi|ifr|iframe_bracket_form|ifri|igeowedge_flag|ikt1|ikt2|imaginary|inchar|increasing|ind|inf|infeval|infinity|inflag|infolists|inm|inmc1|inmc2|intanalysis|integer|integervalued|integrate_use_rootsof|integration_constant|integration_constant_counter|interpolate_color|intfaclim|ip_grid|ip_grid_in|irrational|isolate_wrt_times|iterations|itr|julia_parameter|%k1|%k2|keepfloat|key|key_pos|kinvariant|kt|label|label_alignment|label_alignment|label_orientation|labels|lassociative|lbfgs_ncorrections|lbfgs_nfeval_max|leftjust|legend|letrat|let_rule_packages|lfg|lg|lhospitallim|limsubst|linear|linear_solver|linechar|linel|linenum|line_type|linewidth|line_width|linsolve_params|linsolvewarn|lispdisp|listarith|listconstvars|listdummyvars|lmxchar|load_pathname|loadprint|logabs|logarc|logarc|logcb|logconcoeffp|logexpand|lognegint|logsimp|logx|logx|logx_secondary|logy|logy|logy_secondary|logz|lriem|m1pbranch|macroexpansion|macros|mainvar|manual_demo|maperror|mapprint|matrix_element_add|matrix_element_mult|matrix_element_transpose|maxapplydepth|maxapplyheight|maxima_tempdir|maxima_userdir|maxnegex|MAX_ORD|maxposex|maxpsifracdenom|maxpsifracnum|maxpsinegint|maxpsiposint|maxtayorder|mesh_lines_color|method|minf|mod_big_prime|mode_check_errorp|mode_checkp|mode_check_warnp|mod_test|mod_threshold|modular_linear_solver|modulus|multiplicative|multiplicities|myoptions|nary|negdistrib|negsumdispflag|newline|newtonepsilon|newtonmaxiter|nextlayerfactor|niceindicespref|nm|nmc|noeval|nolabels|nonegative_lp|noninteger|nonscalar|noun|noundisp|nouns|np|npi|nticks|nticks|ntrig|numer|numer_pbranch|obase|odd|oddfun|opacity|opproperties|opsubst|optimprefix|optionset|orientation|origin|orthopoly_returns_intervals|outative|outchar|packagefile|palette|palette|partswitch|pdf_file|pfeformat|%phi|phiresolution|%pi|%piargs|piece|pivot_count_sx|pivot_max_sx|plot_format|plot_options|plot_realpart|png_file|pochhammer_max_index|points|pointsize|point_size|points_joined|point_type|point_type|poislim|poisson|poly_coefficient_ring|poly_elimination_order|polyfactor|poly_grobner_algorithm|poly_grobner_debug|poly_monomial_order|poly_primary_elimination_order|poly_return_term_list|poly_secondary_elimination_order|poly_top_reduction_only|posfun|position|powerdisp|pred|prederror|primep_number_of_tests|product_use_gamma|program|programmode|promote_float_to_bigfloat|prompt|proportional_axes|props|psexpand|ps_file|radexpand|radius|radsubstflag|rassociative|ratalgdenom|ratchristof|ratdenomdivide|rateinstein|ratepsilon|ratfac|rational|ratmx|ratprint|ratriemann|ratsimpexpons|ratvarswitch|ratweights|ratweyl|ratwtlvl|real|realonly|redraw|refcheck|resolution|restart|resultant|ric|riem|rmxchar|%rnum_list|rombergabs|rombergit|rombergmin|rombergtol|rootsconmode|rootsepsilon|run_viewer|same_xy|same_xyz|savedef|savefactors|scalar|scalarmatrixp|scale|scale_lp|setcheck|setcheckbreak|setval|show_edge_color|show_edges|show_edge_type|show_edge_width|show_id|show_label|showtime|show_vertex_color|show_vertex_size|show_vertex_type|show_vertices|show_weight|simp|simplified_output|simplify_products|simpsum|sinnpiflag|solvedecomposes|solveexplicit|solvefactors|solvenullwarn|solveradcan|solvetrigwarn|space|sparse|sphere|spring_embedding_depth|sqrtdispflag|stardisp|startphi|starttheta|stats_numer|stringdisp|structures|style|sublis_apply_lambda|subnumsimp|sumexpand|sumsplitfact|surface|surface_hide|svg_file|symmetric|t|tab|taylordepth|taylor_logexpand|taylor_order_coefficients|taylor_truncate_polynomials|tensorkill|terminal|terminal|testsuite_files|thetaresolution|timer_devalue|title|title|tlimswitch|tr|track|transcompile|transform|transform_xy|translate_fast_arrays|transparent|transrun|tr_array_as_ref|tr_bound_function_applyp|tr_file_tty_messagesp|tr_float_can_branch_complex|tr_function_call_default|trigexpandplus|trigexpandtimes|triginverses|trigsign|trivial_solutions|tr_numer|tr_optimize_max_loop|tr_semicompile|tr_state_vars|true|tr_warn_bad_function_calls|tr_warn_fexpr|tr_warn_meval|tr_warn_mode|tr_warn_undeclared|tr_warn_undefined_variable|tstep|ttyoff|tube_extremes|ufg|ug|und|%unitexpand|unit_vectors|uric|uriem|use_fast_arrays|user_preamble|usersetunits|values|variablename|vect_cross|verbose|vertex_color|vertex_coloring|vertex_partition|vertex_size|vertex_type|view|warnings|weyl|width|windowname|windowtitle|wired_surface|wireframe|x|xaxis|xaxis_color|xaxis_secondary|xaxis_type|xaxis_width|xlabel|xlabel|xlabel_secondary|xlength|xrange|xrange_secondary|xtics|xtics|xtics_axis|xtics_rotate|xtics_rotate_secondary|xtics_secondary|xtics_secondary_axis|xu_grid|x_voxel|xy_file|xyplane|xy_scale|y|yaxis|yaxis_color|yaxis_secondary|yaxis_type|yaxis_width|ylabel|ylabel|ylabel_secondary|ylength|yrange|yrange_secondary|ytics|ytics|ytics_axis|ytics_rotate|ytics_rotate_secondary|ytics_secondary|ytics_secondary_axis|yv_grid|y_voxel|yx_ratio|z|zaxis|zaxis_color|zaxis_type|zaxis_width|zeroa|zerob|zerobern|zeta%pi|zlabel|zlabel|zlength|zmin|zn_primroot_limit|zn_primroot_pretest|zn_primroot_verbose|zrange|ztics|ztics_axis|ztics_rotate|z_voxel)\\\\b\";\n  var pIdentifier    = \"(?:[a-zA-Z][a-zA-Z0-9]*)\";\n  var pInteger       = \"(?:0[A-Za-z0-9]*|\\\\d+\\\\.|\\\\d+)\";\n  // overlap here with integers ... oh well, not too important to make them mutually exclusive\n  var pFloatSansExpt = \"(?:\\\\d+|\\\\.\\\\d+|\\\\d+\\\\.\\\\d+)\";\n  var pFloatExpt     = \"(?:[DdEeSsLlFfBb][+-]*\\\\d+)\";\n\n  // regular expressions\n  var reKeyword      = new RegExp (pKeyword);\n  var reBuiltin      = new RegExp (pBuiltin);\n  var reIdentifier   = new RegExp (pIdentifier);\n  var reInteger      = new RegExp (pInteger);\n  var reFloat        = new RegExp ('(?:' + pFloatSansExpt + pFloatExpt + '|' + pFloatSansExpt + ')');\n\n  function tokenBase(stream, state) {\n    var ch;\n\n    // get next character\n    ch = stream.next();\n\n    // string\n    if (ch === '\"') {\n      state.tokenize = tokenString;\n      return state.tokenize(stream, state);\n    }\n\n    // comment\n    if (ch === '/') {\n      if (stream.eat('*')) {\n        state.commentLevel++;\n        state.tokenize = tokenComment;\n        return state.tokenize(stream, state);\n      }\n    }\n\n    if (ch === '$') {\n        return 'punctuation';\n    }\n\n    // go back one character\n    stream.backUp(1);\n\n    // look for numbers, try float first\n\n    if (stream.match(reFloat, true, false)) {\n      return 'number';\n    }\n\n    if (stream.match(reInteger, true, false)) {\n      return 'number';\n    }\n\n    // Match all braces separately\n    if (stream.match(/(?:\\[|\\]|{|}|\\(|\\))/, true, false)) {\n      return 'bracket';\n    }\n\n    // Literals like variables, keywords, functions\n\n    if (stream.match (reKeyword, true, false)) {\n      return 'keyword';\n    }\n\n    if (stream.match (reBuiltin, true, false)) {\n      return 'builtin';\n    }\n\n    if (stream.match (reIdentifier, true, false)) {\n      return 'variable';\n    }\n\n    // operators. Note that operators like @@ or /; are matched separately for each symbol.\n    if (stream.match(/(?:\\\\|\\+|\\-|\\*|\\/|,|;|\\.|:|@|~|=|>|<|&|\\||_|`|'|\\^|\\?|!|%|#)/, true, false)) {\n      return 'operator';\n    }\n\n    // something not yet accounted for; give it a non-error type so we can see it, at least\n    return 'atom';\n  }\n\n  function tokenString(stream, state) {\n    var next, end = false, escaped = false;\n    while ((next = stream.next()) != null) {\n      if (next === '\"' && !escaped) {\n        end = true;\n        break;\n      }\n      escaped = !escaped && next === '\\\\';\n    }\n    if (end && !escaped) {\n      state.tokenize = tokenBase;\n    }\n    return 'string';\n  };\n\n  function tokenComment(stream, state) {\n    var prev, next;\n    while(state.commentLevel > 0 && (next = stream.next()) != null) {\n      if (prev === '/' && next === '*') state.commentLevel++;\n      if (prev === '*' && next === '/') state.commentLevel--;\n      prev = next;\n    }\n    if (state.commentLevel <= 0) {\n      state.tokenize = tokenBase;\n    }\n    return 'comment';\n  }\n\n  return {\n    startState: function() {return {tokenize: tokenBase, commentLevel: 0};},\n    token: function(stream, state) {\n      if (stream.eatSpace()) return null;\n      return state.tokenize(stream, state);\n    },\n    blockCommentStart: \"/*\",\n    blockCommentEnd: \"*/\"\n  };\n});\n\nCodeMirror.defineMIME('text/x-maxima', {\n  name: 'maxima'\n});\n\n});\n"]}