diff --git a/.mapping.json b/.mapping.json index 88e5c63..e0e506a 100755 --- a/.mapping.json +++ b/.mapping.json @@ -1 +1 @@ -{"source/main.ptx": ["my-great-book", "frontmatter", "front-colophon", "ch-Introduction", "sec-Introduction", "ch-Probability", "sec-Set-Theory", "sec-Probability", "sec-Conditional-Probability", "sec-Independent-Events", "ch-Random-Variables", "sec-Discrete-RVs", "sec-Continuous-RVs", "sec-Joint-Distributions", "ch-Expected-Value", "sec-Expected-Value", "sec-Variance", "sec-Covariance", "ch-Confidence-Intervals", "sec-Likelihood", "sec-CLT", "sec-Confidence-Intervals", "ch-Hypothesis-Testing", "sec-One-Sample-Tests", "sec-Two-Sample-Tests", "sec-Power", "sec-Chi-Squared", "ch-Linear-Regression", "sec-Correlation", "sec-Linear-Regression", "backmatter", "app-Phi-table"]} \ No newline at end of file +{"source/main.ptx": ["my-great-book", "frontmatter", "front-colophon", "ch-Introduction", "sec-Introduction", "ch-Probability", "sec-Set-Theory", "sec-Probability", "sec-Conditional-Probability", "sec-Independent-Events", "ch-Random-Variables", "sec-Discrete-RVs", "sec-Continuous-RVs", "sec-Joint-Distributions", "ch-Expected-Value", "sec-Expected-Value", "sec-Variance", "sec-Covariance", "ch-Confidence-Intervals", "sec-Likelihood", "sec-CLT", "sec-Confidence-Intervals", "ch-Hypothesis-Testing", "sec-One-Sample-Tests", "sec-Two-Sample-Tests", "sec-Power", "sec-Chi-Squared", "ch-Linear-Regression", "sec-Correlation", "sec-Linear-Regression", "backmatter", "app-Phi-table", "app-Chi-squared-table"]} \ No newline at end of file diff --git a/_static/._207.a2b404e695486dde.js b/_static/._207.a2b404e695486dde.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._207.a2b404e695486dde.js differ diff --git a/_static/._207.a2b404e695486dde.js.LICENSE.txt b/_static/._207.a2b404e695486dde.js.LICENSE.txt new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._207.a2b404e695486dde.js.LICENSE.txt differ diff --git a/_static/._207.a2b404e695486dde.js.gz b/_static/._207.a2b404e695486dde.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._207.a2b404e695486dde.js.gz differ diff --git a/_static/._207.a2b404e695486dde.js.map b/_static/._207.a2b404e695486dde.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._207.a2b404e695486dde.js.map differ diff --git a/_static/._207.a2b404e695486dde.js.map.gz b/_static/._207.a2b404e695486dde.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._207.a2b404e695486dde.js.map.gz differ diff --git a/_static/._268.60719f20e69f885e.js b/_static/._268.60719f20e69f885e.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._268.60719f20e69f885e.js differ diff --git a/_static/._268.60719f20e69f885e.js.gz b/_static/._268.60719f20e69f885e.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._268.60719f20e69f885e.js.gz differ diff --git a/_static/._268.60719f20e69f885e.js.map b/_static/._268.60719f20e69f885e.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._268.60719f20e69f885e.js.map differ diff --git a/_static/._268.60719f20e69f885e.js.map.gz b/_static/._268.60719f20e69f885e.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._268.60719f20e69f885e.js.map.gz differ diff --git a/_static/._39.15b22d3dac60149d.js b/_static/._39.15b22d3dac60149d.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._39.15b22d3dac60149d.js differ diff --git a/_static/._39.15b22d3dac60149d.js.LICENSE.txt b/_static/._39.15b22d3dac60149d.js.LICENSE.txt new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._39.15b22d3dac60149d.js.LICENSE.txt differ diff --git a/_static/._39.15b22d3dac60149d.js.gz b/_static/._39.15b22d3dac60149d.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._39.15b22d3dac60149d.js.gz differ diff --git a/_static/._39.15b22d3dac60149d.js.map b/_static/._39.15b22d3dac60149d.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._39.15b22d3dac60149d.js.map differ diff --git a/_static/._39.15b22d3dac60149d.js.map.gz b/_static/._39.15b22d3dac60149d.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._39.15b22d3dac60149d.js.map.gz differ diff --git a/_static/._420.e197c63136060d40.js b/_static/._420.e197c63136060d40.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._420.e197c63136060d40.js differ diff --git a/_static/._420.e197c63136060d40.js.LICENSE.txt b/_static/._420.e197c63136060d40.js.LICENSE.txt new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._420.e197c63136060d40.js.LICENSE.txt differ diff --git a/_static/._420.e197c63136060d40.js.gz b/_static/._420.e197c63136060d40.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._420.e197c63136060d40.js.gz differ diff --git a/_static/._420.e197c63136060d40.js.map b/_static/._420.e197c63136060d40.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._420.e197c63136060d40.js.map differ diff --git a/_static/._420.e197c63136060d40.js.map.gz b/_static/._420.e197c63136060d40.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._420.e197c63136060d40.js.map.gz differ diff --git a/_static/._466.63840a83388af9f2.js b/_static/._466.63840a83388af9f2.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._466.63840a83388af9f2.js differ diff --git a/_static/._466.63840a83388af9f2.js.gz b/_static/._466.63840a83388af9f2.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._466.63840a83388af9f2.js.gz differ diff --git a/_static/._466.63840a83388af9f2.js.map b/_static/._466.63840a83388af9f2.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._466.63840a83388af9f2.js.map differ diff --git a/_static/._466.63840a83388af9f2.js.map.gz b/_static/._466.63840a83388af9f2.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._466.63840a83388af9f2.js.map.gz differ diff --git a/_static/._486.b03e25ab1e190440.js b/_static/._486.b03e25ab1e190440.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._486.b03e25ab1e190440.js differ diff --git a/_static/._486.b03e25ab1e190440.js.gz b/_static/._486.b03e25ab1e190440.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._486.b03e25ab1e190440.js.gz differ diff --git a/_static/._486.b03e25ab1e190440.js.map b/_static/._486.b03e25ab1e190440.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._486.b03e25ab1e190440.js.map differ diff --git a/_static/._486.b03e25ab1e190440.js.map.gz b/_static/._486.b03e25ab1e190440.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._486.b03e25ab1e190440.js.map.gz differ diff --git a/_static/._529.f5fdfcbb88388877.js b/_static/._529.f5fdfcbb88388877.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._529.f5fdfcbb88388877.js differ diff --git a/_static/._529.f5fdfcbb88388877.js.gz b/_static/._529.f5fdfcbb88388877.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._529.f5fdfcbb88388877.js.gz differ diff --git a/_static/._529.f5fdfcbb88388877.js.map b/_static/._529.f5fdfcbb88388877.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._529.f5fdfcbb88388877.js.map differ diff --git a/_static/._529.f5fdfcbb88388877.js.map.gz b/_static/._529.f5fdfcbb88388877.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._529.f5fdfcbb88388877.js.map.gz differ diff --git a/_static/._566.8345f32fac0929c0.js b/_static/._566.8345f32fac0929c0.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._566.8345f32fac0929c0.js differ diff --git a/_static/._566.8345f32fac0929c0.js.gz b/_static/._566.8345f32fac0929c0.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._566.8345f32fac0929c0.js.gz differ diff --git a/_static/._566.8345f32fac0929c0.js.map b/_static/._566.8345f32fac0929c0.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._566.8345f32fac0929c0.js.map differ diff --git a/_static/._566.8345f32fac0929c0.js.map.gz b/_static/._566.8345f32fac0929c0.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._566.8345f32fac0929c0.js.map.gz differ diff --git a/_static/._576.17e80ff72c52b54b.js b/_static/._576.17e80ff72c52b54b.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._576.17e80ff72c52b54b.js differ diff --git a/_static/._576.17e80ff72c52b54b.js.gz b/_static/._576.17e80ff72c52b54b.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._576.17e80ff72c52b54b.js.gz differ diff --git a/_static/._576.17e80ff72c52b54b.js.map b/_static/._576.17e80ff72c52b54b.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._576.17e80ff72c52b54b.js.map differ diff --git a/_static/._576.17e80ff72c52b54b.js.map.gz b/_static/._576.17e80ff72c52b54b.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._576.17e80ff72c52b54b.js.map.gz differ diff --git a/_static/._680.eb99211d1806dba1.js b/_static/._680.eb99211d1806dba1.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._680.eb99211d1806dba1.js differ diff --git a/_static/._680.eb99211d1806dba1.js.gz b/_static/._680.eb99211d1806dba1.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._680.eb99211d1806dba1.js.gz differ diff --git a/_static/._680.eb99211d1806dba1.js.map b/_static/._680.eb99211d1806dba1.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._680.eb99211d1806dba1.js.map differ diff --git a/_static/._680.eb99211d1806dba1.js.map.gz b/_static/._680.eb99211d1806dba1.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._680.eb99211d1806dba1.js.map.gz differ diff --git a/_static/._759.7032c311ffc20fc3.js b/_static/._759.7032c311ffc20fc3.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._759.7032c311ffc20fc3.js differ diff --git a/_static/._759.7032c311ffc20fc3.js.gz b/_static/._759.7032c311ffc20fc3.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._759.7032c311ffc20fc3.js.gz differ diff --git a/_static/._759.7032c311ffc20fc3.js.map b/_static/._759.7032c311ffc20fc3.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._759.7032c311ffc20fc3.js.map differ diff --git a/_static/._759.7032c311ffc20fc3.js.map.gz b/_static/._759.7032c311ffc20fc3.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._759.7032c311ffc20fc3.js.map.gz differ diff --git a/_static/._819.a9dba7a670e07497.js b/_static/._819.a9dba7a670e07497.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._819.a9dba7a670e07497.js differ diff --git a/_static/._819.a9dba7a670e07497.js.gz b/_static/._819.a9dba7a670e07497.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._819.a9dba7a670e07497.js.gz differ diff --git a/_static/._819.a9dba7a670e07497.js.map b/_static/._819.a9dba7a670e07497.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._819.a9dba7a670e07497.js.map differ diff --git a/_static/._819.a9dba7a670e07497.js.map.gz b/_static/._819.a9dba7a670e07497.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._819.a9dba7a670e07497.js.map.gz differ diff --git a/_static/._919.4801fda4dafcc487.js b/_static/._919.4801fda4dafcc487.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._919.4801fda4dafcc487.js differ diff --git a/_static/._919.4801fda4dafcc487.js.gz b/_static/._919.4801fda4dafcc487.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._919.4801fda4dafcc487.js.gz differ diff --git a/_static/._919.4801fda4dafcc487.js.map b/_static/._919.4801fda4dafcc487.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._919.4801fda4dafcc487.js.map differ diff --git a/_static/._919.4801fda4dafcc487.js.map.gz b/_static/._919.4801fda4dafcc487.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._919.4801fda4dafcc487.js.map.gz differ diff --git a/_static/._prefix-268.67f2441667bc7c43.css b/_static/._prefix-268.67f2441667bc7c43.css new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-268.67f2441667bc7c43.css differ diff --git a/_static/._prefix-268.67f2441667bc7c43.css.gz b/_static/._prefix-268.67f2441667bc7c43.css.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-268.67f2441667bc7c43.css.gz differ diff --git a/_static/._prefix-268.67f2441667bc7c43.css.map b/_static/._prefix-268.67f2441667bc7c43.css.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-268.67f2441667bc7c43.css.map differ diff --git a/_static/._prefix-268.67f2441667bc7c43.css.map.gz b/_static/._prefix-268.67f2441667bc7c43.css.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-268.67f2441667bc7c43.css.map.gz differ diff --git a/_static/._prefix-39.ec5d93a85cddac28.css b/_static/._prefix-39.ec5d93a85cddac28.css new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-39.ec5d93a85cddac28.css differ diff --git a/_static/._prefix-39.ec5d93a85cddac28.css.gz b/_static/._prefix-39.ec5d93a85cddac28.css.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-39.ec5d93a85cddac28.css.gz differ diff --git a/_static/._prefix-39.ec5d93a85cddac28.css.map b/_static/._prefix-39.ec5d93a85cddac28.css.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-39.ec5d93a85cddac28.css.map differ diff --git a/_static/._prefix-39.ec5d93a85cddac28.css.map.gz b/_static/._prefix-39.ec5d93a85cddac28.css.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-39.ec5d93a85cddac28.css.map.gz differ diff --git a/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js b/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js differ diff --git a/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.LICENSE.txt b/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.LICENSE.txt new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.LICENSE.txt differ diff --git a/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.LICENSE.txt.gz b/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.LICENSE.txt.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.LICENSE.txt.gz differ diff --git a/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.gz b/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.gz differ diff --git a/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.map b/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.map differ diff --git a/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.map.gz b/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-runestone.a4a209ed3a55c515.bundle.js.map.gz differ diff --git a/_static/._prefix-runtime.d2d4c56cb9826035.bundle.js b/_static/._prefix-runtime.d2d4c56cb9826035.bundle.js new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-runtime.d2d4c56cb9826035.bundle.js differ diff --git a/_static/._prefix-runtime.d2d4c56cb9826035.bundle.js.gz b/_static/._prefix-runtime.d2d4c56cb9826035.bundle.js.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-runtime.d2d4c56cb9826035.bundle.js.gz differ diff --git a/_static/._prefix-runtime.d2d4c56cb9826035.bundle.js.map b/_static/._prefix-runtime.d2d4c56cb9826035.bundle.js.map new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-runtime.d2d4c56cb9826035.bundle.js.map differ diff --git a/_static/._prefix-runtime.d2d4c56cb9826035.bundle.js.map.gz b/_static/._prefix-runtime.d2d4c56cb9826035.bundle.js.map.gz new file mode 100755 index 0000000..d4c6384 Binary files /dev/null and b/_static/._prefix-runtime.d2d4c56cb9826035.bundle.js.map.gz differ diff --git a/_static/207.a2b404e695486dde.js b/_static/207.a2b404e695486dde.js new file mode 100755 index 0000000..549bef6 --- /dev/null +++ b/_static/207.a2b404e695486dde.js @@ -0,0 +1,3 @@ +/*! For license information please see 207.a2b404e695486dde.js.LICENSE.txt */ +"use strict";(self.webpackChunkWebComponents=self.webpackChunkWebComponents||[]).push([[207],{78207:(e,t,n)=>{function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;tMn});var c=l(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),d=l(/Edge/i),u=l(/firefox/i),h=l(/safari/i)&&!l(/chrome/i)&&!l(/android/i),g=l(/iP(ad|od|hone)/i),p=l(/chrome/i)&&l(/android/i),f={capture:!1,passive:!1};function m(e,t,n){e.addEventListener(t,n,!c&&f)}function b(e,t,n){e.removeEventListener(t,n,!c&&f)}function v(e,t){if(t){if(">"===t[0]&&(t=t.substring(1)),e)try{if(e.matches)return e.matches(t);if(e.msMatchesSelector)return e.msMatchesSelector(t);if(e.webkitMatchesSelector)return e.webkitMatchesSelector(t)}catch(e){return!1}return!1}}function _(e){return e.host&&e!==document&&e.host.nodeType?e.host:e.parentNode}function y(e,t,n,r){if(e){n=n||document;do{if(null!=t&&(">"===t[0]?e.parentNode===n&&v(e,t):v(e,t))||r&&e===n)return e;if(e===n)break}while(e=_(e))}return null}var E,w=/\s+/g;function x(e,t,n){if(e&&t)if(e.classList)e.classList[n?"add":"remove"](t);else{var r=(" "+e.className+" ").replace(w," ").replace(" "+t+" "," ");e.className=(r+(n?" "+t:"")).replace(w," ")}}function S(e,t,n){var r=e&&e.style;if(r){if(void 0===n)return document.defaultView&&document.defaultView.getComputedStyle?n=document.defaultView.getComputedStyle(e,""):e.currentStyle&&(n=e.currentStyle),void 0===t?n:n[t];t in r||-1!==t.indexOf("webkit")||(t="-webkit-"+t),r[t]=n+("string"==typeof n?"":"px")}}function A(e,t){var n="";if("string"==typeof e)n=e;else do{var r=S(e,"transform");r&&"none"!==r&&(n=r+" "+n)}while(!t&&(e=e.parentNode));var o=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return o&&new o(n)}function k(e,t,n){if(e){var r=e.getElementsByTagName(t),o=0,i=r.length;if(n)for(;o=i:o<=i))return r;if(r===N())break;r=B(r,!1)}return!1}function T(e,t,n,r){for(var o=0,i=0,a=e.children;i2&&void 0!==arguments[2]?arguments[2]:{},r=n.evt,i=function(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(n,U);X.pluginEvent.bind(Pe)(e,t,o({dragEl:W,parentEl:G,ghostEl:q,rootEl:Z,nextEl:V,lastDownEl:J,cloneEl:Q,cloneHidden:ee,dragStarted:ge,putSortable:ae,activeSortable:Pe.active,originalEvent:r,oldIndex:te,oldDraggableIndex:re,newIndex:ne,newDraggableIndex:oe,hideGhostForTarget:Ie,unhideGhostForTarget:Be,cloneNowHidden:function(){ee=!0},cloneNowShown:function(){ee=!1},dispatchSortableEvent:function(e){K({sortable:t,name:e,originalEvent:r})}},i))};function K(e){!function(e){var t=e.sortable,n=e.rootEl,r=e.name,i=e.targetEl,a=e.cloneEl,s=e.toEl,l=e.fromEl,u=e.oldIndex,h=e.newIndex,g=e.oldDraggableIndex,p=e.newDraggableIndex,f=e.originalEvent,m=e.putSortable,b=e.extraEventProperties;if(t=t||n&&n[$]){var v,_=t.options,y="on"+r.charAt(0).toUpperCase()+r.substr(1);!window.CustomEvent||c||d?(v=document.createEvent("Event")).initEvent(r,!0,!0):v=new CustomEvent(r,{bubbles:!0,cancelable:!0}),v.to=s||n,v.from=l||n,v.item=i||n,v.clone=a,v.oldIndex=u,v.newIndex=h,v.oldDraggableIndex=g,v.newDraggableIndex=p,v.originalEvent=f,v.pullMode=m?m.lastPutMode:void 0;var E=o(o({},b),X.getEventProperties(r,t));for(var w in E)v[w]=E[w];n&&n.dispatchEvent(v),_[y]&&_[y].call(t,v)}}(o({putSortable:ae,cloneEl:Q,targetEl:W,rootEl:Z,oldIndex:te,oldDraggableIndex:re,newIndex:ne,newDraggableIndex:oe},e))}var W,G,q,Z,V,J,Q,ee,te,ne,re,oe,ie,ae,se,le,ce,de,ue,he,ge,pe,fe,me,be,ve=!1,_e=!1,ye=[],Ee=!1,we=!1,xe=[],Se=!1,Ae=[],ke="undefined"!=typeof document,Ne=g,Oe=d||c?"cssFloat":"float",Ce=ke&&!p&&!g&&"draggable"in document.createElement("div"),Te=function(){if(ke){if(c)return!1;var e=document.createElement("x");return e.style.cssText="pointer-events:auto","auto"===e.style.pointerEvents}}(),De=function(e,t){var n=S(e),r=parseInt(n.width)-parseInt(n.paddingLeft)-parseInt(n.paddingRight)-parseInt(n.borderLeftWidth)-parseInt(n.borderRightWidth),o=T(e,0,t),i=T(e,1,t),a=o&&S(o),s=i&&S(i),l=a&&parseInt(a.marginLeft)+parseInt(a.marginRight)+O(o).width,c=s&&parseInt(s.marginLeft)+parseInt(s.marginRight)+O(i).width;if("flex"===n.display)return"column"===n.flexDirection||"column-reverse"===n.flexDirection?"vertical":"horizontal";if("grid"===n.display)return n.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(o&&a.float&&"none"!==a.float){var d="left"===a.float?"left":"right";return!i||"both"!==s.clear&&s.clear!==d?"horizontal":"vertical"}return o&&("block"===a.display||"flex"===a.display||"table"===a.display||"grid"===a.display||l>=r&&"none"===n[Oe]||i&&"none"===n[Oe]&&l+c>r)?"vertical":"horizontal"},Me=function(e){function t(e,n){return function(r,o,i,a){var s=r.options.group.name&&o.options.group.name&&r.options.group.name===o.options.group.name;if(null==e&&(n||s))return!0;if(null==e||!1===e)return!1;if(n&&"clone"===e)return e;if("function"==typeof e)return t(e(r,o,i,a),n)(r,o,i,a);var l=(n?r:o).options.group.name;return!0===e||"string"==typeof e&&e===l||e.join&&e.indexOf(l)>-1}}var n={},r=e.group;r&&"object"==i(r)||(r={name:r}),n.name=r.name,n.checkPull=t(r.pull,!0),n.checkPut=t(r.put),n.revertClone=r.revertClone,e.group=n},Ie=function(){!Te&&q&&S(q,"display","none")},Be=function(){!Te&&q&&S(q,"display","")};ke&&document.addEventListener("click",(function(e){if(_e)return e.preventDefault(),e.stopPropagation&&e.stopPropagation(),e.stopImmediatePropagation&&e.stopImmediatePropagation(),_e=!1,!1}),!0);var Re=function(e){if(W){e=e.touches?e.touches[0]:e;var t=(o=e.clientX,i=e.clientY,ye.some((function(e){var t=e[$].options.emptyInsertThreshold;if(t&&!D(e)){var n=O(e),r=o>=n.left-t&&o<=n.right+t,s=i>=n.top-t&&i<=n.bottom+t;return r&&s?a=e:void 0}})),a);if(t){var n={};for(var r in e)e.hasOwnProperty(r)&&(n[r]=e[r]);n.target=n.rootEl=t,n.preventDefault=void 0,n.stopPropagation=void 0,t[$]._onDragOver(n)}}var o,i,a},Le=function(e){W&&W.parentNode[$]._isOutsideThisEl(e.target)};function Pe(e,t){if(!e||!e.nodeType||1!==e.nodeType)throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(e));this.el=e,this.options=t=s({},t),e[$]=this;var n={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(e.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return De(e,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(e,t){e.setData("Text",t.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==Pe.supportPointer&&"PointerEvent"in window&&!h,emptyInsertThreshold:5};for(var r in X.initializePlugins(this,e,n),n)!(r in t)&&(t[r]=n[r]);for(var o in Me(t),this)"_"===o.charAt(0)&&"function"==typeof this[o]&&(this[o]=this[o].bind(this));this.nativeDraggable=!t.forceFallback&&Ce,this.nativeDraggable&&(this.options.touchStartThreshold=1),t.supportPointer?m(e,"pointerdown",this._onTapStart):(m(e,"mousedown",this._onTapStart),m(e,"touchstart",this._onTapStart)),this.nativeDraggable&&(m(e,"dragover",this),m(e,"dragenter",this)),ye.push(this.el),t.store&&t.store.get&&this.sort(t.store.get(this)||[]),s(this,z())}function je(e,t,n,r,o,i,a,s){var l,u,h=e[$],g=h.options.onMove;return!window.CustomEvent||c||d?(l=document.createEvent("Event")).initEvent("move",!0,!0):l=new CustomEvent("move",{bubbles:!0,cancelable:!0}),l.to=t,l.from=e,l.dragged=n,l.draggedRect=r,l.related=o||t,l.relatedRect=i||O(t),l.willInsertAfter=s,l.originalEvent=a,e.dispatchEvent(l),g&&(u=g.call(h,l,a)),u}function $e(e){e.draggable=!1}function ze(){Se=!1}function Fe(e){for(var t=e.tagName+e.className+e.src+e.href+e.textContent,n=t.length,r=0;n--;)r+=t.charCodeAt(n);return r.toString(36)}function He(e){return setTimeout(e,0)}function Xe(e){return clearTimeout(e)}Pe.prototype={constructor:Pe,_isOutsideThisEl:function(e){this.el.contains(e)||e===this.el||(pe=null)},_getDirection:function(e,t){return"function"==typeof this.options.direction?this.options.direction.call(this,e,t,W):this.options.direction},_onTapStart:function(e){if(e.cancelable){var t=this,n=this.el,r=this.options,o=r.preventOnFilter,i=e.type,a=e.touches&&e.touches[0]||e.pointerType&&"touch"===e.pointerType&&e,s=(a||e).target,l=e.target.shadowRoot&&(e.path&&e.path[0]||e.composedPath&&e.composedPath()[0])||s,c=r.filter;if(function(e){Ae.length=0;for(var t=e.getElementsByTagName("input"),n=t.length;n--;){var r=t[n];r.checked&&Ae.push(r)}}(n),!W&&!(/mousedown|pointerdown/.test(i)&&0!==e.button||r.disabled)&&!l.isContentEditable&&(this.nativeDraggable||!h||!s||"SELECT"!==s.tagName.toUpperCase())&&!((s=y(s,r.draggable,n,!1))&&s.animated||J===s)){if(te=M(s),re=M(s,r.draggable),"function"==typeof c){if(c.call(this,e,s,this))return K({sortable:t,rootEl:l,name:"filter",targetEl:s,toEl:n,fromEl:n}),Y("filter",t,{evt:e}),void(o&&e.cancelable&&e.preventDefault())}else if(c&&(c=c.split(",").some((function(r){if(r=y(l,r.trim(),n,!1))return K({sortable:t,rootEl:r,name:"filter",targetEl:s,fromEl:n,toEl:n}),Y("filter",t,{evt:e}),!0}))))return void(o&&e.cancelable&&e.preventDefault());r.handle&&!y(l,r.handle,n,!1)||this._prepareDragStart(e,a,s)}}},_prepareDragStart:function(e,t,n){var r,o=this,i=o.el,a=o.options,s=i.ownerDocument;if(n&&!W&&n.parentNode===i){var l=O(n);if(Z=i,G=(W=n).parentNode,V=W.nextSibling,J=n,ie=a.group,Pe.dragged=W,se={target:W,clientX:(t||e).clientX,clientY:(t||e).clientY},ue=se.clientX-l.left,he=se.clientY-l.top,this._lastX=(t||e).clientX,this._lastY=(t||e).clientY,W.style["will-change"]="all",r=function(){Y("delayEnded",o,{evt:e}),Pe.eventCanceled?o._onDrop():(o._disableDelayedDragEvents(),!u&&o.nativeDraggable&&(W.draggable=!0),o._triggerDragStart(e,t),K({sortable:o,name:"choose",originalEvent:e}),x(W,a.chosenClass,!0))},a.ignore.split(",").forEach((function(e){k(W,e.trim(),$e)})),m(s,"dragover",Re),m(s,"mousemove",Re),m(s,"touchmove",Re),m(s,"mouseup",o._onDrop),m(s,"touchend",o._onDrop),m(s,"touchcancel",o._onDrop),u&&this.nativeDraggable&&(this.options.touchStartThreshold=4,W.draggable=!0),Y("delayStart",this,{evt:e}),!a.delay||a.delayOnTouchOnly&&!t||this.nativeDraggable&&(d||c))r();else{if(Pe.eventCanceled)return void this._onDrop();m(s,"mouseup",o._disableDelayedDrag),m(s,"touchend",o._disableDelayedDrag),m(s,"touchcancel",o._disableDelayedDrag),m(s,"mousemove",o._delayedDragTouchMoveHandler),m(s,"touchmove",o._delayedDragTouchMoveHandler),a.supportPointer&&m(s,"pointermove",o._delayedDragTouchMoveHandler),o._dragStartTimer=setTimeout(r,a.delay)}}},_delayedDragTouchMoveHandler:function(e){var t=e.touches?e.touches[0]:e;Math.max(Math.abs(t.clientX-this._lastX),Math.abs(t.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){W&&$e(W),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var e=this.el.ownerDocument;b(e,"mouseup",this._disableDelayedDrag),b(e,"touchend",this._disableDelayedDrag),b(e,"touchcancel",this._disableDelayedDrag),b(e,"mousemove",this._delayedDragTouchMoveHandler),b(e,"touchmove",this._delayedDragTouchMoveHandler),b(e,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,t){t=t||"touch"==e.pointerType&&e,!this.nativeDraggable||t?this.options.supportPointer?m(document,"pointermove",this._onTouchMove):m(document,t?"touchmove":"mousemove",this._onTouchMove):(m(W,"dragend",this),m(Z,"dragstart",this._onDragStart));try{document.selection?He((function(){document.selection.empty()})):window.getSelection().removeAllRanges()}catch(e){}},_dragStarted:function(e,t){if(ve=!1,Z&&W){Y("dragStarted",this,{evt:t}),this.nativeDraggable&&m(document,"dragover",Le);var n=this.options;!e&&x(W,n.dragClass,!1),x(W,n.ghostClass,!0),Pe.active=this,e&&this._appendGhost(),K({sortable:this,name:"start",originalEvent:t})}else this._nulling()},_emulateDragOver:function(){if(le){this._lastX=le.clientX,this._lastY=le.clientY,Ie();for(var e=document.elementFromPoint(le.clientX,le.clientY),t=e;e&&e.shadowRoot&&(e=e.shadowRoot.elementFromPoint(le.clientX,le.clientY))!==t;)t=e;if(W.parentNode[$]._isOutsideThisEl(e),t)do{if(t[$]&&t[$]._onDragOver({clientX:le.clientX,clientY:le.clientY,target:e,rootEl:t})&&!this.options.dragoverBubble)break;e=t}while(t=t.parentNode);Be()}},_onTouchMove:function(e){if(se){var t=this.options,n=t.fallbackTolerance,r=t.fallbackOffset,o=e.touches?e.touches[0]:e,i=q&&A(q,!0),a=q&&i&&i.a,s=q&&i&&i.d,l=Ne&&be&&I(be),c=(o.clientX-se.clientX+r.x)/(a||1)+(l?l[0]-xe[0]:0)/(a||1),d=(o.clientY-se.clientY+r.y)/(s||1)+(l?l[1]-xe[1]:0)/(s||1);if(!Pe.active&&!ve){if(n&&Math.max(Math.abs(o.clientX-this._lastX),Math.abs(o.clientY-this._lastY))r.right+10||e.clientX<=r.right&&e.clientY>r.bottom&&e.clientX>=r.left:e.clientX>r.right&&e.clientY>r.top||e.clientX<=r.right&&e.clientY>r.bottom+10}(e,i,this)&&!m.animated){if(m===W)return H(!1);if(m&&a===e.target&&(s=m),s&&(n=O(s)),!1!==je(Z,a,W,t,s,n,e,!!s))return F(),a.appendChild(W),G=a,X(),H(!0)}else if(m&&function(e,t,n){var r=O(T(n.el,0,n.options,!0));return t?e.clientXd+c*i/2:lu-me)return-fe}else if(l>d+c*(1-o)/2&&lu-c*i/2)?l>d+c/2?1:-1:0}(e,s,n,i,A?1:l.swapThreshold,null==l.invertedSwapThreshold?l.swapThreshold:l.invertedSwapThreshold,we,pe===s),0!==v){var B=M(W);do{B-=v,E=G.children[B]}while(E&&("none"===S(E,"display")||E===q))}if(0===v||E===s)return H(!1);pe=s,fe=v;var R=s.nextElementSibling,L=!1,j=je(Z,a,W,t,s,n,e,L=1===v);if(!1!==j)return 1!==j&&-1!==j||(L=1===j),Se=!0,setTimeout(ze,30),F(),L&&!R?a.appendChild(W):s.parentNode.insertBefore(W,L?R:s),N&&P(N,0,I-N.scrollTop),G=W.parentNode,void 0===_||we||(me=Math.abs(_-O(s)[k])),X(),H(!0)}if(a.contains(W))return H(!1)}return!1}function z(l,c){Y(l,p,o({evt:e,isOwner:u,axis:i?"vertical":"horizontal",revert:r,dragRect:t,targetRect:n,canSort:h,fromSortable:g,target:s,completed:H,onMove:function(n,r){return je(Z,a,W,t,n,O(n),e,r)},changed:X},c))}function F(){z("dragOverAnimationCapture"),p.captureAnimationState(),p!==g&&g.captureAnimationState()}function H(t){return z("dragOverCompleted",{insertion:t}),t&&(u?d._hideClone():d._showClone(p),p!==g&&(x(W,ae?ae.options.ghostClass:d.options.ghostClass,!1),x(W,l.ghostClass,!0)),ae!==p&&p!==Pe.active?ae=p:p===Pe.active&&ae&&(ae=null),g===p&&(p._ignoreWhileAnimating=s),p.animateAll((function(){z("dragOverAnimationComplete"),p._ignoreWhileAnimating=null})),p!==g&&(g.animateAll(),g._ignoreWhileAnimating=null)),(s===W&&!W.animated||s===a&&!s.animated)&&(pe=null),l.dragoverBubble||e.rootEl||s===document||(W.parentNode[$]._isOutsideThisEl(e.target),!t&&Re(e)),!l.dragoverBubble&&e.stopPropagation&&e.stopPropagation(),f=!0}function X(){ne=M(W),oe=M(W,l.draggable),K({sortable:p,name:"change",toEl:a,newIndex:ne,newDraggableIndex:oe,originalEvent:e})}},_ignoreWhileAnimating:null,_offMoveEvents:function(){b(document,"mousemove",this._onTouchMove),b(document,"touchmove",this._onTouchMove),b(document,"pointermove",this._onTouchMove),b(document,"dragover",Re),b(document,"mousemove",Re),b(document,"touchmove",Re)},_offUpEvents:function(){var e=this.el.ownerDocument;b(e,"mouseup",this._onDrop),b(e,"touchend",this._onDrop),b(e,"pointerup",this._onDrop),b(e,"touchcancel",this._onDrop),b(document,"selectstart",this)},_onDrop:function(e){var t=this.el,n=this.options;ne=M(W),oe=M(W,n.draggable),Y("drop",this,{evt:e}),G=W&&W.parentNode,ne=M(W),oe=M(W,n.draggable),Pe.eventCanceled||(ve=!1,we=!1,Ee=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),Xe(this.cloneId),Xe(this._dragStartId),this.nativeDraggable&&(b(document,"drop",this),b(t,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),h&&S(document.body,"user-select",""),S(W,"transform",""),e&&(ge&&(e.cancelable&&e.preventDefault(),!n.dropBubble&&e.stopPropagation()),q&&q.parentNode&&q.parentNode.removeChild(q),(Z===G||ae&&"clone"!==ae.lastPutMode)&&Q&&Q.parentNode&&Q.parentNode.removeChild(Q),W&&(this.nativeDraggable&&b(W,"dragend",this),$e(W),W.style["will-change"]="",ge&&!ve&&x(W,ae?ae.options.ghostClass:this.options.ghostClass,!1),x(W,this.options.chosenClass,!1),K({sortable:this,name:"unchoose",toEl:G,newIndex:null,newDraggableIndex:null,originalEvent:e}),Z!==G?(ne>=0&&(K({rootEl:G,name:"add",toEl:G,fromEl:Z,originalEvent:e}),K({sortable:this,name:"remove",toEl:G,originalEvent:e}),K({rootEl:G,name:"sort",toEl:G,fromEl:Z,originalEvent:e}),K({sortable:this,name:"sort",toEl:G,originalEvent:e})),ae&&ae.save()):ne!==te&&ne>=0&&(K({sortable:this,name:"update",toEl:G,originalEvent:e}),K({sortable:this,name:"sort",toEl:G,originalEvent:e})),Pe.active&&(null!=ne&&-1!==ne||(ne=te,oe=re),K({sortable:this,name:"end",toEl:G,originalEvent:e}),this.save())))),this._nulling()},_nulling:function(){Y("nulling",this),Z=W=G=q=V=Q=J=ee=se=le=ge=ne=oe=te=re=pe=fe=ae=ie=Pe.dragged=Pe.ghost=Pe.clone=Pe.active=null,Ae.forEach((function(e){e.checked=!0})),Ae.length=ce=de=0},handleEvent:function(e){switch(e.type){case"drop":case"dragend":this._onDrop(e);break;case"dragenter":case"dragover":W&&(this._onDragOver(e),function(e){e.dataTransfer&&(e.dataTransfer.dropEffect="move"),e.cancelable&&e.preventDefault()}(e));break;case"selectstart":e.preventDefault()}},toArray:function(){for(var e,t=[],n=this.el.children,r=0,o=n.length,i=this.options;r/g,">").replace(/"/g,""").replace(/'/g,"'")}function ct(e,...t){const n=Object.create(null);for(const t in e)n[t]=e[t];return t.forEach((function(e){for(const t in e)n[t]=e[t]})),n}const dt=e=>!!e.scope||e.sublanguage&&e.language;class ut{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=lt(e)}openNode(e){if(!dt(e))return;let t="";t=e.sublanguage?`language-${e.language}`:((e,{prefix:t})=>{if(e.includes(".")){const n=e.split(".");return[`${t}${n.shift()}`,...n.map(((e,t)=>`${e}${"_".repeat(t+1)}`))].join(" ")}return`${t}${e}`})(e.scope,{prefix:this.classPrefix}),this.span(t)}closeNode(e){dt(e)&&(this.buffer+="")}value(){return this.buffer}span(e){this.buffer+=``}}const ht=(e={})=>{const t={children:[]};return Object.assign(t,e),t};class gt{constructor(){this.rootNode=ht(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){const t=ht({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t),t.children.forEach((t=>this._walk(e,t))),e.closeNode(t)),e}static _collapse(e){"string"!=typeof e&&e.children&&(e.children.every((e=>"string"==typeof e))?e.children=[e.children.join("")]:e.children.forEach((e=>{gt._collapse(e)})))}}class pt extends gt{constructor(e){super(),this.options=e}addKeyword(e,t){""!==e&&(this.openNode(t),this.addText(e),this.closeNode())}addText(e){""!==e&&this.add(e)}addSublanguage(e,t){const n=e.root;n.sublanguage=!0,n.language=t,this.add(n)}toHTML(){return new ut(this,this.options).value()}finalize(){return!0}}function ft(e){return e?"string"==typeof e?e:e.source:null}function mt(e){return _t("(?=",e,")")}function bt(e){return _t("(?:",e,")*")}function vt(e){return _t("(?:",e,")?")}function _t(...e){return e.map((e=>ft(e))).join("")}function yt(...e){const t=function(e){const t=e[e.length-1];return"object"==typeof t&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}(e);return"("+(t.capture?"":"?:")+e.map((e=>ft(e))).join("|")+")"}function Et(e){return new RegExp(e.toString()+"|").exec("").length-1}const wt=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function xt(e,{joinWith:t}){let n=0;return e.map((e=>{n+=1;const t=n;let r=ft(e),o="";for(;r.length>0;){const e=wt.exec(r);if(!e){o+=r;break}o+=r.substring(0,e.index),r=r.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?o+="\\"+String(Number(e[1])+t):(o+=e[0],"("===e[0]&&n++)}return o})).map((e=>`(${e})`)).join(t)}const St="[a-zA-Z]\\w*",At="[a-zA-Z_]\\w*",kt="\\b\\d+(\\.\\d+)?",Nt="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",Ot="\\b(0b[01]+)",Ct={begin:"\\\\[\\s\\S]",relevance:0},Tt={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[Ct]},Dt={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[Ct]},Mt=function(e,t,n={}){const r=ct({scope:"comment",begin:e,end:t,contains:[]},n);r.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const o=yt("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return r.contains.push({begin:_t(/[ ]+/,"(",o,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),r},It=Mt("//","$"),Bt=Mt("/\\*","\\*/"),Rt=Mt("#","$"),Lt={scope:"number",begin:kt,relevance:0},Pt={scope:"number",begin:Nt,relevance:0},jt={scope:"number",begin:Ot,relevance:0},$t={begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[Ct,{begin:/\[/,end:/\]/,relevance:0,contains:[Ct]}]}]},zt={scope:"title",begin:St,relevance:0},Ft={scope:"title",begin:At,relevance:0},Ht={begin:"\\.\\s*"+At,relevance:0};var Xt=Object.freeze({__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:St,UNDERSCORE_IDENT_RE:At,NUMBER_RE:kt,C_NUMBER_RE:Nt,BINARY_NUMBER_RE:Ot,RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",SHEBANG:(e={})=>{const t=/^#![ ]*\//;return e.binary&&(e.begin=_t(t,/.*\b/,e.binary,/\b.*/)),ct({scope:"meta",begin:t,end:/$/,relevance:0,"on:begin":(e,t)=>{0!==e.index&&t.ignoreMatch()}},e)},BACKSLASH_ESCAPE:Ct,APOS_STRING_MODE:Tt,QUOTE_STRING_MODE:Dt,PHRASAL_WORDS_MODE:{begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},COMMENT:Mt,C_LINE_COMMENT_MODE:It,C_BLOCK_COMMENT_MODE:Bt,HASH_COMMENT_MODE:Rt,NUMBER_MODE:Lt,C_NUMBER_MODE:Pt,BINARY_NUMBER_MODE:jt,REGEXP_MODE:$t,TITLE_MODE:zt,UNDERSCORE_TITLE_MODE:Ft,METHOD_GUARD:Ht,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})}});function Ut(e,t){"."===e.input[e.index-1]&&t.ignoreMatch()}function Yt(e,t){void 0!==e.className&&(e.scope=e.className,delete e.className)}function Kt(e,t){t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=Ut,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,void 0===e.relevance&&(e.relevance=0))}function Wt(e,t){Array.isArray(e.illegal)&&(e.illegal=yt(...e.illegal))}function Gt(e,t){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function qt(e,t){void 0===e.relevance&&(e.relevance=1)}const Zt=(e,t)=>{if(!e.beforeMatch)return;if(e.starts)throw new Error("beforeMatch cannot be used with starts");const n=Object.assign({},e);Object.keys(e).forEach((t=>{delete e[t]})),e.keywords=n.keywords,e.begin=_t(n.beforeMatch,mt(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},Vt=["of","and","for","in","not","or","if","then","parent","list","value"];function Jt(e,t,n="keyword"){const r=Object.create(null);return"string"==typeof e?o(n,e.split(" ")):Array.isArray(e)?o(n,e):Object.keys(e).forEach((function(n){Object.assign(r,Jt(e[n],t,n))})),r;function o(e,n){t&&(n=n.map((e=>e.toLowerCase()))),n.forEach((function(t){const n=t.split("|");r[n[0]]=[e,Qt(n[0],n[1])]}))}}function Qt(e,t){return t?Number(t):function(e){return Vt.includes(e.toLowerCase())}(e)?0:1}const en={},tn=e=>{console.error(e)},nn=(e,...t)=>{console.log(`WARN: ${e}`,...t)},rn=(e,t)=>{en[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),en[`${e}/${t}`]=!0)},on=new Error;function an(e,t,{key:n}){let r=0;const o=e[n],i={},a={};for(let e=1;e<=t.length;e++)a[e+r]=o[e],i[e+r]=!0,r+=Et(t[e-1]);e[n]=a,e[n]._emit=i,e[n]._multi=!0}function sn(e){!function(e){e.scope&&"object"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope,delete e.scope)}(e),"string"==typeof e.beginScope&&(e.beginScope={_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope}),function(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw tn("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),on;if("object"!=typeof e.beginScope||null===e.beginScope)throw tn("beginScope must be object"),on;an(e,e.begin,{key:"beginScope"}),e.begin=xt(e.begin,{joinWith:""})}}(e),function(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw tn("skip, excludeEnd, returnEnd not compatible with endScope: {}"),on;if("object"!=typeof e.endScope||null===e.endScope)throw tn("endScope must be object"),on;an(e,e.end,{key:"endScope"}),e.end=xt(e.end,{joinWith:""})}}(e)}function ln(e){function t(t,n){return new RegExp(ft(t),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(n?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(e,t){t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]),this.matchAt+=Et(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null);const e=this.regexes.map((e=>e[1]));this.matcherRe=t(xt(e,{joinWith:"|"}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex;const t=this.matcherRe.exec(e);if(!t)return null;const n=t.findIndex(((e,t)=>t>0&&void 0!==e)),r=this.matchIndexes[n];return t.splice(0,n),Object.assign(t,r)}}class r{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){if(this.multiRegexes[e])return this.multiRegexes[e];const t=new n;return this.rules.slice(e).forEach((([e,n])=>t.addRule(e,n))),t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex;let n=t.exec(e);if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)}return n&&(this.regexIndex+=n.position+1,this.regexIndex===this.count&&this.considerAll()),n}}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=ct(e.classNameAliases||{}),function n(o,i){const a=o;if(o.isCompiled)return a;[Yt,Gt,sn,Zt].forEach((e=>e(o,i))),e.compilerExtensions.forEach((e=>e(o,i))),o.__beforeBegin=null,[Kt,Wt,qt].forEach((e=>e(o,i))),o.isCompiled=!0;let s=null;return"object"==typeof o.keywords&&o.keywords.$pattern&&(o.keywords=Object.assign({},o.keywords),s=o.keywords.$pattern,delete o.keywords.$pattern),s=s||/\w+/,o.keywords&&(o.keywords=Jt(o.keywords,e.case_insensitive)),a.keywordPatternRe=t(s,!0),i&&(o.begin||(o.begin=/\B|\b/),a.beginRe=t(a.begin),o.end||o.endsWithParent||(o.end=/\B|\b/),o.end&&(a.endRe=t(a.end)),a.terminatorEnd=ft(a.end)||"",o.endsWithParent&&i.terminatorEnd&&(a.terminatorEnd+=(o.end?"|":"")+i.terminatorEnd)),o.illegal&&(a.illegalRe=t(o.illegal)),o.contains||(o.contains=[]),o.contains=[].concat(...o.contains.map((function(e){return function(e){return e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((function(t){return ct(e,{variants:null},t)}))),e.cachedVariants?e.cachedVariants:cn(e)?ct(e,{starts:e.starts?ct(e.starts):null}):Object.isFrozen(e)?ct(e):e}("self"===e?o:e)}))),o.contains.forEach((function(e){n(e,a)})),o.starts&&n(o.starts,i),a.matcher=function(e){const t=new r;return e.contains.forEach((e=>t.addRule(e.begin,{rule:e,type:"begin"}))),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end"}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t}(a),a}(e)}function cn(e){return!!e&&(e.endsWithParent||cn(e.starts))}class dn extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}}const un=lt,hn=ct,gn=Symbol("nomatch");var pn=function(e){const t=Object.create(null),n=Object.create(null),r=[];let o=!0;const i="Could not find the language '{}', did you forget to load/include a language module?",a={disableAutodetect:!0,name:"Plain text",contains:[]};let s={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:pt};function l(e){return s.noHighlightRe.test(e)}function c(e,t,n){let r="",o="";"object"==typeof t?(r=e,n=t.ignoreIllegals,o=t.language):(rn("10.7.0","highlight(lang, code, ...args) has been deprecated."),rn("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"),o=e,r=t),void 0===n&&(n=!0);const i={code:r,language:o};v("before:highlight",i);const a=i.result?i.result:d(i.language,i.code,n);return a.code=i.code,v("after:highlight",a),a}function d(e,n,r,a){const l=Object.create(null);function c(){if(!S.keywords)return void k.addText(N);let e=0;S.keywordPatternRe.lastIndex=0;let t=S.keywordPatternRe.exec(N),n="";for(;t;){n+=N.substring(e,t.index);const o=E.case_insensitive?t[0].toLowerCase():t[0],i=(r=o,S.keywords[r]);if(i){const[e,r]=i;if(k.addText(n),n="",l[o]=(l[o]||0)+1,l[o]<=7&&(O+=r),e.startsWith("_"))n+=t[0];else{const n=E.classNameAliases[e]||e;k.addKeyword(t[0],n)}}else n+=t[0];e=S.keywordPatternRe.lastIndex,t=S.keywordPatternRe.exec(N)}var r;n+=N.substring(e),k.addText(n)}function h(){null!=S.subLanguage?function(){if(""===N)return;let e=null;if("string"==typeof S.subLanguage){if(!t[S.subLanguage])return void k.addText(N);e=d(S.subLanguage,N,!0,A[S.subLanguage]),A[S.subLanguage]=e._top}else e=u(N,S.subLanguage.length?S.subLanguage:null);S.relevance>0&&(O+=e.relevance),k.addSublanguage(e._emitter,e.language)}():c(),N=""}function g(e,t){let n=1;const r=t.length-1;for(;n<=r;){if(!e._emit[n]){n++;continue}const r=E.classNameAliases[e[n]]||e[n],o=t[n];r?k.addKeyword(o,r):(N=o,c(),N=""),n++}}function p(e,t){return e.scope&&"string"==typeof e.scope&&k.openNode(E.classNameAliases[e.scope]||e.scope),e.beginScope&&(e.beginScope._wrap?(k.addKeyword(N,E.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap),N=""):e.beginScope._multi&&(g(e.beginScope,t),N="")),S=Object.create(e,{parent:{value:S}}),S}function m(e,t,n){let r=function(e,t){const n=e&&e.exec(t);return n&&0===n.index}(e.endRe,n);if(r){if(e["on:end"]){const n=new st(e);e["on:end"](t,n),n.isMatchIgnored&&(r=!1)}if(r){for(;e.endsParent&&e.parent;)e=e.parent;return e}}if(e.endsWithParent)return m(e.parent,t,n)}function b(e){return 0===S.matcher.regexIndex?(N+=e[0],1):(D=!0,0)}function v(e){const t=e[0],r=n.substring(e.index),o=m(S,e,r);if(!o)return gn;const i=S;S.endScope&&S.endScope._wrap?(h(),k.addKeyword(t,S.endScope._wrap)):S.endScope&&S.endScope._multi?(h(),g(S.endScope,e)):i.skip?N+=t:(i.returnEnd||i.excludeEnd||(N+=t),h(),i.excludeEnd&&(N=t));do{S.scope&&k.closeNode(),S.skip||S.subLanguage||(O+=S.relevance),S=S.parent}while(S!==o.parent);return o.starts&&p(o.starts,e),i.returnEnd?0:t.length}let _={};function y(t,i){const a=i&&i[0];if(N+=t,null==a)return h(),0;if("begin"===_.type&&"end"===i.type&&_.index===i.index&&""===a){if(N+=n.slice(i.index,i.index+1),!o){const t=new Error(`0 width match regex (${e})`);throw t.languageName=e,t.badRule=_.rule,t}return 1}if(_=i,"begin"===i.type)return function(e){const t=e[0],n=e.rule,r=new st(n),o=[n.__beforeBegin,n["on:begin"]];for(const n of o)if(n&&(n(e,r),r.isMatchIgnored))return b(t);return n.skip?N+=t:(n.excludeBegin&&(N+=t),h(),n.returnBegin||n.excludeBegin||(N=t)),p(n,e),n.returnBegin?0:t.length}(i);if("illegal"===i.type&&!r){const e=new Error('Illegal lexeme "'+a+'" for mode "'+(S.scope||"")+'"');throw e.mode=S,e}if("end"===i.type){const e=v(i);if(e!==gn)return e}if("illegal"===i.type&&""===a)return 1;if(T>1e5&&T>3*i.index)throw new Error("potential infinite loop, way more iterations than matches");return N+=a,a.length}const E=f(e);if(!E)throw tn(i.replace("{}",e)),new Error('Unknown language: "'+e+'"');const w=ln(E);let x="",S=a||w;const A={},k=new s.__emitter(s);!function(){const e=[];for(let t=S;t!==E;t=t.parent)t.scope&&e.unshift(t.scope);e.forEach((e=>k.openNode(e)))}();let N="",O=0,C=0,T=0,D=!1;try{for(S.matcher.considerAll();;){T++,D?D=!1:S.matcher.considerAll(),S.matcher.lastIndex=C;const e=S.matcher.exec(n);if(!e)break;const t=y(n.substring(C,e.index),e);C=e.index+t}return y(n.substring(C)),k.closeAllNodes(),k.finalize(),x=k.toHTML(),{language:e,value:x,relevance:O,illegal:!1,_emitter:k,_top:S}}catch(t){if(t.message&&t.message.includes("Illegal"))return{language:e,value:un(n),illegal:!0,relevance:0,_illegalBy:{message:t.message,index:C,context:n.slice(C-100,C+100),mode:t.mode,resultSoFar:x},_emitter:k};if(o)return{language:e,value:un(n),illegal:!1,relevance:0,errorRaised:t,_emitter:k,_top:S};throw t}}function u(e,n){n=n||s.languages||Object.keys(t);const r=function(e){const t={value:un(e),illegal:!1,relevance:0,_top:a,_emitter:new s.__emitter(s)};return t._emitter.addText(e),t}(e),o=n.filter(f).filter(b).map((t=>d(t,e,!1)));o.unshift(r);const i=o.sort(((e,t)=>{if(e.relevance!==t.relevance)return t.relevance-e.relevance;if(e.language&&t.language){if(f(e.language).supersetOf===t.language)return 1;if(f(t.language).supersetOf===e.language)return-1}return 0})),[l,c]=i,u=l;return u.secondBest=c,u}function h(e){let t=null;const r=function(e){let t=e.className+" ";t+=e.parentNode?e.parentNode.className:"";const n=s.languageDetectRe.exec(t);if(n){const t=f(n[1]);return t||(nn(i.replace("{}",n[1])),nn("Falling back to no-highlight mode for this block.",e)),t?n[1]:"no-highlight"}return t.split(/\s+/).find((e=>l(e)||f(e)))}(e);if(l(r))return;if(v("before:highlightElement",{el:e,language:r}),e.children.length>0&&(s.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(e)),s.throwUnescapedHTML))throw new dn("One of your code blocks includes unescaped HTML.",e.innerHTML);t=e;const o=t.textContent,a=r?c(o,{language:r,ignoreIllegals:!0}):u(o);e.innerHTML=a.value,function(e,t,r){const o=t&&n[t]||r;e.classList.add("hljs"),e.classList.add(`language-${o}`)}(e,r,a.language),e.result={language:a.language,re:a.relevance,relevance:a.relevance},a.secondBest&&(e.secondBest={language:a.secondBest.language,relevance:a.secondBest.relevance}),v("after:highlightElement",{el:e,result:a,text:o})}let g=!1;function p(){"loading"!==document.readyState?document.querySelectorAll(s.cssSelector).forEach(h):g=!0}function f(e){return e=(e||"").toLowerCase(),t[e]||t[n[e]]}function m(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach((e=>{n[e.toLowerCase()]=t}))}function b(e){const t=f(e);return t&&!t.disableAutodetect}function v(e,t){const n=e;r.forEach((function(e){e[n]&&e[n](t)}))}"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(function(){g&&p()}),!1),Object.assign(e,{highlight:c,highlightAuto:u,highlightAll:p,highlightElement:h,highlightBlock:function(e){return rn("10.7.0","highlightBlock will be removed entirely in v12.0"),rn("10.7.0","Please use highlightElement now."),h(e)},configure:function(e){s=hn(s,e)},initHighlighting:()=>{p(),rn("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")},initHighlightingOnLoad:function(){p(),rn("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")},registerLanguage:function(n,r){let i=null;try{i=r(e)}catch(e){if(tn("Language definition for '{}' could not be registered.".replace("{}",n)),!o)throw e;tn(e),i=a}i.name||(i.name=n),t[n]=i,i.rawDefinition=r.bind(null,e),i.aliases&&m(i.aliases,{languageName:n})},unregisterLanguage:function(e){delete t[e];for(const t of Object.keys(n))n[t]===e&&delete n[t]},listLanguages:function(){return Object.keys(t)},getLanguage:f,registerAliases:m,autoDetection:b,inherit:hn,addPlugin:function(e){!function(e){e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{e["before:highlightBlock"](Object.assign({block:t.el},t))}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{e["after:highlightBlock"](Object.assign({block:t.el},t))})}(e),r.push(e)}}),e.debugMode=function(){o=!1},e.safeMode=function(){o=!0},e.versionString="11.7.0",e.regex={concat:_t,lookahead:mt,either:yt,optional:vt,anyNumberOfTimes:bt};for(const e in Xt)"object"==typeof Xt[e]&&it.exports(Xt[e]);return Object.assign(e,Xt),e}({}),fn=pn;pn.HighlightJS=pn,pn.default=pn;var mn=fn;class bn{el;_dropArea;_dragArea;_dropSortable;_dragSortable;parentElement;_prevPosition;reusable;randomize;storedSourceBlocks;storedSourceBlockExplanations;blockOrder;hljsLanguage;initialized;constructor(e,t,n){this.el=document.createElement("div"),this.el.classList.add("hparsons-input"),this.parentElement=e,this.el.id="hparsonstool-"+this.parentElement.toolNumber+"-parsons-input";const r=document.createElement("div");r.innerText="Drag or click the blocks below to form your code:",r.classList.add("hparsons-tip"),this.el.append(r),this._dragArea=document.createElement("div"),this.el.appendChild(this._dragArea),this._dragArea.classList.add("drag-area");const o=document.createElement("div");o.innerText="Your code (click on a block to remove it):",o.classList.add("hparsons-tip"),this.el.append(o),this._dropArea=document.createElement("div"),this.el.appendChild(this._dropArea),this._dropArea.classList.add("drop-area"),this._prevPosition=-1,this.storedSourceBlocks=[],this.blockOrder=[],this.storedSourceBlockExplanations=null,this.reusable=t,this.randomize=n,this._dragSortable=null,this._dropSortable=null,this._initSortable(),this.initialized=!1}getText=e=>{let t="";if(this._dropArea.hasChildNodes()){let n=this._dropArea.firstChild;for(t+=this._getTextFromBlock(n);n.nextSibling;)n=n.nextSibling,t+=e?" ":"",t+=this._getTextFromBlock(n);return t}return t};getBlockIndices=()=>{const e=this._dropArea.querySelectorAll(".parsons-block");return Array.from(e).map((e=>parseInt(e.dataset.index||"-1")))};_getTextFromBlock=e=>{if("raw"==this.parentElement.language)return e.innerHTML;if(!e.lastChild||e.lastChild.nodeType!=Node.ELEMENT_NODE)return e.textContent||"";const t=e.lastChild.classList.contains("parsons-tooltip")&&e.lastChild.textContent?.length||0;return t>0?(e.textContent||"").slice(0,-t):e.textContent||""};shuffleArray(e){for(let t=e.length-1;t>0;t--){let n=Math.floor(Math.random()*(t+1)),r=e[t];e[t]=e[n],e[n]=r}}setSourceBlocks=(e,t)=>{this.blockOrder=[];for(let t=0;t{for(;this._dragArea.firstChild;)this._dragArea.removeChild(this._dragArea.firstChild);for(;this._dropArea.firstChild;)this._dropArea.removeChild(this._dropArea.firstChild);for(let e=0;e{this._onBlockClicked(t,e)},this.storedSourceBlockExplanations&&this.storedSourceBlockExplanations[this.blockOrder[e]]){const n=document.createElement("div");n.innerText=this.storedSourceBlockExplanations[this.blockOrder[e]],n.classList.add("parsons-tooltip"),t.appendChild(n)}}};_onBlockClicked=(e,t)=>{if(e.parentElement==this._dragArea){let n;if(this.reusable){const t=e.cloneNode(!0);t.onclick=e=>this._onBlockClicked(t,e),this._dropArea.appendChild(t),n=this._getBlockPosition(t)}else this._dropArea.appendChild(e),n=this._getBlockPosition(e);const r={type:"input",action:et.InputAction.ADD,position:[-1,n],answer:this._getTextArray()};t.isTrusted&&this.parentElement.logEvent(r)}else{const t=this._getBlockPosition(e);this.reusable?this._dropArea.removeChild(e):this._dragArea.appendChild(e);const n={type:"input",action:et.InputAction.REMOVE,position:[t,-1],answer:this._getTextArray()};this.parentElement.logEvent(n)}};_initSortable=()=>{this.reusable?(this._dragSortable=new Pe(this._dragArea,{group:{name:"shared",pull:"clone",put:!1},sort:!1,direction:"horizontal",animation:150,draggable:".parsons-block",onClone:e=>{const t=e.clone;t.onclick=e=>this._onBlockClicked(t,e)}}),this._dropSortable=new Pe(this._dropArea,{group:"shared",direction:"horizontal",animation:150,draggable:".parsons-block",onAdd:e=>{const t={type:"input",action:et.InputAction.ADD,position:[-1,this._getBlockPosition(e.item)],answer:this._getTextArray()};this.parentElement.logEvent(t)},onStart:e=>{this._prevPosition=this._getBlockPosition(e.item)},onEnd:e=>{let t,n=et.InputAction.MOVE;const r=this._dropArea.getBoundingClientRect().top,o=this._dropArea.getBoundingClientRect().bottom;if(e.originalEvent.clientY>o||e.originalEvent.clientY{const t={type:"input",action:et.InputAction.ADD,position:[-1,this._getBlockPosition(e.item)],answer:this._getTextArray()};this.parentElement.logEvent(t)},onStart:e=>{this._prevPosition=this._getBlockPosition(e.item)},onEnd:e=>{let t=this._getBlockPosition(e.item);const n={type:"input",action:-1==t?et.InputAction.REMOVE:et.InputAction.MOVE,position:[this._prevPosition,t],answer:this._getTextArray()};this.parentElement.logEvent(n)}}))};updateTestStatus=e=>{this._dropArea.classList.contains(e)||(this._dropArea.classList.contains("Pass")?this._dropArea.classList.remove("Pass"):this._dropArea.classList.contains("Fail")?this._dropArea.classList.remove("Fail"):this._dropArea.classList.contains("Error")&&this._dropArea.classList.remove("Error"),this._dropArea.classList.add(e))};_getBlockPosition=e=>{let t=-1;const n=this._dropArea;if(n)for(t=0;t{let e=[];if(this._dropArea.hasChildNodes()){let t=this._dropArea.firstChild;for(e.push(this._getTextFromBlock(t));t.nextSibling;)t=t.nextSibling,e.push(this._getTextFromBlock(t))}return e};removeFormat=()=>{if(this._dropArea.hasChildNodes()){let e=this._dropArea.firstChild;for(e.style.removeProperty("background-color");e.nextSibling;)e=e.nextSibling,e.style.removeProperty("background-color")}};resetInput=()=>{if(this.reusable)for(;this._dropArea.firstChild;)this._dropArea.removeChild(this._dropArea.firstChild);else this._resetInput()};restoreAnswer(e){this.resetInput();const t=/^\s+$/;for(let n=0;nTn(e,t,n-1)))}mn.registerLanguage("javascript",(function(e){const t=e.regex,n=vn,r={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,t)=>{const n=e[0].length+e.index,r=e.input[n];if("<"===r||","===r)return void t.ignoreMatch();let o;">"===r&&(((e,{after:t})=>{const n="",k={match:[/const|var|let/,/\s+/,n,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(A)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[b]};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:o,exports:{PARAMS_CONTAINS:m,CLASS_REFERENCE:_},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,d,u,h,g,{match:/\$\d+/},l,_,{className:"attr",begin:n+t.lookahead(":"),relevance:0},k,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[g,e.REGEXP_MODE,{className:"function",begin:A,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:o,contains:m}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:"<>",end:""},{match:/<[A-Za-z0-9\\._:-]+\s*\/>/},{begin:r.begin,"on:begin":r.isTrulyOpeningTag,end:r.end}],subLanguage:"xml",contains:[{begin:r.begin,end:r.end,skip:!0,contains:["self"]}]}]},y,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[b,e.inherit(e.TITLE_MODE,{begin:n,className:"title.function"})]},{match:/\.\.\./,relevance:0},x,{match:"\\$"+n,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[b]},E,{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},v,S,{match:/\$[(.]/}]}})),mn.registerLanguage("sql",(function(e){const t=e.regex,n=e.COMMENT("--","$"),r=["true","false","unknown"],o=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],i=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],a=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],s=i,l=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year","add","asc","collation","desc","final","first","last","view"].filter((e=>!i.includes(e))),c={begin:t.concat(/\b/,t.either(...s),/\s*\(/),relevance:0,keywords:{built_in:s}};return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:function(e,{exceptions:t,when:n}={}){const r=n;return t=t||[],e.map((e=>e.match(/\|\d+$/)||t.includes(e)?e:r(e)?`${e}|0`:e))}(l,{when:e=>e.length<3}),literal:r,type:o,built_in:["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"]},contains:[{begin:t.either(...a),relevance:0,keywords:{$pattern:/[\w\.]+/,keyword:l.concat(a),literal:r,type:o}},{className:"type",begin:t.either("double precision","large object","with timezone","without timezone")},c,{className:"variable",begin:/@[a-z0-9]+/},{className:"string",variants:[{begin:/'/,end:/'/,contains:[{begin:/''/}]}]},{begin:/"/,end:/"/,contains:[{begin:/""/}]},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,{className:"operator",begin:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0}]}})),mn.registerLanguage("java",(function(e){const t=e.regex,n="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",r=n+Tn("(?:<"+n+"~~~(?:\\s*,\\s*"+n+"~~~)*>)?",/~~~/g,2),o={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},i={className:"meta",begin:"@"+n,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},a={className:"params",begin:/\(/,end:/\)/,keywords:o,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:o,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,n],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[t.concat(/(?!else)/,n),/\s+/,n,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,n],className:{1:"keyword",3:"title.class"},contains:[a,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+r+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:o,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:o,relevance:0,contains:[i,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,Cn,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},Cn,i]}})),mn.registerLanguage("xml",(function(e){const t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),r={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},i=e.inherit(o,{begin:/\(/,end:/\)/}),a=e.inherit(e.APOS_STRING_MODE,{className:"string"}),s=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),l={endsWithParent:!0,illegal:/`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin://,relevance:10,contains:[o,s,a,i,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[o,i,s,a]}]}]},e.COMMENT(//,{relevance:10}),{begin://,relevance:10},r,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[s]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[l],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[l],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:t.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:l}]},{className:"tag",begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}})),mn.registerLanguage("python",(function(e){const t=e.regex,n=/[\p{XID_Start}_]\p{XID_Continue}*/u,r=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],o={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:r,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},i={className:"meta",begin:/^(>>>|\.\.\.) /},a={className:"subst",begin:/\{/,end:/\}/,keywords:o,illegal:/#/},s={begin:/\{\{/,relevance:0},l={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,i],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,i],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,i,s,a]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,i,s,a]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,s,a]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,s,a]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},c="[0-9](_?[0-9])*",d=`(\\b(${c}))?\\.(${c})|\\b(${c})\\.`,u=`\\b|${r.join("|")}`,h={className:"number",relevance:0,variants:[{begin:`(\\b(${c})|(${d}))[eE][+-]?(${c})[jJ]?(?=${u})`},{begin:`(${d})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${u})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${u})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${u})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${u})`},{begin:`\\b(${c})[jJ](?=${u})`}]},g={className:"comment",begin:t.lookahead(/# type:/),end:/$/,keywords:o,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},p={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:o,contains:["self",i,h,l,e.HASH_COMMENT_MODE]}]};return a.contains=[l,h,i],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:o,illegal:/(<\/|->|\?)|=>/,contains:[i,h,{begin:/\bself\b/},{beginKeywords:"if",relevance:0},l,g,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[p]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[h,p,l]}]}}));class Dn extends HTMLElement{root;_parsonsData;parsonsExplanation;hparsonsInput;inputType;static toolCount=0;toolNumber;temporaryInputEvent;language;hljsLanguage;codeBefore;codeAfter;constructor(){super(),Dn.toolCount+=1,this.toolNumber=Dn.toolCount,this.root=this;const e=!!this.getAttribute("reuse"),t=!!this.getAttribute("randomize");this.hparsonsInput=new bn(this,e,t),this._parsonsData=new Array,this.parsonsExplanation=null,this.inputType="parsons",this.language=this.getAttribute("language")||"none";let n=new Map(Object.entries({html:"xml",python:"python",javascript:"javascript",java:"java",sql:"sql"}));this.hljsLanguage=n.get(this.language),this.initInput(),this.temporaryInputEvent=null,this.codeBefore=null,this.codeAfter=null}set parsonsData(e){this._parsonsData=e,"parsons"==this.inputType&&this.hparsonsInput.setSourceBlocks(e,this.parsonsExplanation)}get parsonsData(){return this._parsonsData}logEvent=e=>{const t=new CustomEvent("micro-parsons",{bubbles:!0,detail:{...e}});this.dispatchEvent(t)};initInput(){this.inputType="parsons",this._parsonsData=new Array,this.parsonsExplanation=null;const e=null!=this.getAttribute("reuse"),t=null!=this.getAttribute("randomize");this.hparsonsInput=new bn(this,e,t),this.root.appendChild(this.hparsonsInput.el)}resetInput(){this.hparsonsInput.resetInput(),this.logEvent({type:"reset"})}restoreAnswer(e){this.hparsonsInput.restoreAnswer(e)}restoreAnswerByIndices(e){this.hparsonsInput.restoreAnswerByIndices(e)}getCurrentInput(e){return this.hparsonsInput.getText(e)}getParsonsTextArray(){return this.hparsonsInput._getTextArray()}getBlockIndices(){return this.hparsonsInput.getBlockIndices()}setCodeContext(e){if(e.before){let t;this.codeBefore=e.before,this.querySelector(".context.before")?t=this.querySelector(".context.before"):(t=document.createElement("pre"),t.className="context before",this.querySelector(".hparsons-input").insertBefore(t,this.querySelector(".drop-area"))),t.innerHTML=this.codeBefore,this.hljsLanguage&&(t.className="context before",t.classList.add(this.hljsLanguage),mn.highlightElement(t))}if(e.after){let t;this.codeAfter=e.after,this.querySelector(".context.after")?t=this.querySelector(".context.after"):(t=document.createElement("pre"),t.className="context after",this.querySelector(".hparsons-input").appendChild(t)),t.innerHTML=this.codeAfter,this.hljsLanguage&&(t.className="context after",t.classList.add(this.hljsLanguage),mn.highlightElement(t))}}}const Mn=e=>{let t;try{t=document.querySelector(e.selector)}catch{throw"micro-parsons: init: selector error"}if(null==t||"DIV"!=t.tagName)throw"micro-parsons: element not a div";const n=-1==["javascript","sql","java","html","python","raw"].indexOf(e.language||"")?"":`language='${e.language}'`,r=e.id?`id='${e.id}'`:"",o=``;t.innerHTML=o;const i=t.firstChild;i.parsonsExplanation=e.parsonsTooltips,i.parsonsData=e.parsonsBlocks,e.context&&i.setCodeContext(e.context)};customElements.define("micro-parsons",Dn)}}]); +//# sourceMappingURL=207.a2b404e695486dde.js.map \ No newline at end of file diff --git a/_static/207.a2b404e695486dde.js.LICENSE.txt b/_static/207.a2b404e695486dde.js.LICENSE.txt new file mode 100755 index 0000000..843b4fd --- /dev/null +++ b/_static/207.a2b404e695486dde.js.LICENSE.txt @@ -0,0 +1,6 @@ +/**! + * Sortable 1.14.0 + * @author RubaXa + * @author owenm + * @license MIT + */ diff --git a/_static/207.a2b404e695486dde.js.gz b/_static/207.a2b404e695486dde.js.gz new file mode 100755 index 0000000..f1a14e9 Binary files /dev/null and b/_static/207.a2b404e695486dde.js.gz differ diff --git a/_static/207.a2b404e695486dde.js.map b/_static/207.a2b404e695486dde.js.map new file mode 100755 index 0000000..5c00629 --- /dev/null +++ b/_static/207.a2b404e695486dde.js.map @@ -0,0 +1 @@ +{"version":3,"file":"207.a2b404e695486dde.js","mappings":"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","sources":["webpack://WebComponents/./node_modules/micro-parsons/micro-parsons/micro-parsons.js"],"sourcesContent":["/**!\n * Sortable 1.14.0\n * @author\tRubaXa \n * @author\towenm \n * @license MIT\n */\nfunction e(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function t(t){for(var n=1;n=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function a(e){if(\"undefined\"!=typeof window&&window.navigator)return!!navigator.userAgent.match(e)}var s=a(/(?:Trident.*rv[ :]?11\\.|msie|iemobile|Windows Phone)/i),l=a(/Edge/i),c=a(/firefox/i),d=a(/safari/i)&&!a(/chrome/i)&&!a(/android/i),u=a(/iP(ad|od|hone)/i),h=a(/chrome/i)&&a(/android/i),g={capture:!1,passive:!1};function p(e,t,n){e.addEventListener(t,n,!s&&g)}function f(e,t,n){e.removeEventListener(t,n,!s&&g)}function m(e,t){if(t){if(\">\"===t[0]&&(t=t.substring(1)),e)try{if(e.matches)return e.matches(t);if(e.msMatchesSelector)return e.msMatchesSelector(t);if(e.webkitMatchesSelector)return e.webkitMatchesSelector(t)}catch(e){return!1}return!1}}function b(e){return e.host&&e!==document&&e.host.nodeType?e.host:e.parentNode}function v(e,t,n,r){if(e){n=n||document;do{if(null!=t&&(\">\"===t[0]?e.parentNode===n&&m(e,t):m(e,t))||r&&e===n)return e;if(e===n)break}while(e=b(e))}return null}var _,y=/\\s+/g;function E(e,t,n){if(e&&t)if(e.classList)e.classList[n?\"add\":\"remove\"](t);else{var r=(\" \"+e.className+\" \").replace(y,\" \").replace(\" \"+t+\" \",\" \");e.className=(r+(n?\" \"+t:\"\")).replace(y,\" \")}}function w(e,t,n){var r=e&&e.style;if(r){if(void 0===n)return document.defaultView&&document.defaultView.getComputedStyle?n=document.defaultView.getComputedStyle(e,\"\"):e.currentStyle&&(n=e.currentStyle),void 0===t?n:n[t];t in r||-1!==t.indexOf(\"webkit\")||(t=\"-webkit-\"+t),r[t]=n+(\"string\"==typeof n?\"\":\"px\")}}function x(e,t){var n=\"\";if(\"string\"==typeof e)n=e;else do{var r=w(e,\"transform\");r&&\"none\"!==r&&(n=r+\" \"+n)}while(!t&&(e=e.parentNode));var o=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return o&&new o(n)}function S(e,t,n){if(e){var r=e.getElementsByTagName(t),o=0,i=r.length;if(n)for(;o=i:o<=i))return r;if(r===A())break;r=M(r,!1)}return!1}function O(e,t,n,r){for(var o=0,i=0,a=e.children;i2&&void 0!==arguments[2]?arguments[2]:{},o=r.evt,a=i(r,H);F.pluginEvent.bind(Re)(e,n,t({dragEl:Y,parentEl:K,ghostEl:G,rootEl:W,nextEl:q,lastDownEl:Z,cloneEl:V,cloneHidden:J,dragStarted:ue,putSortable:oe,activeSortable:Re.active,originalEvent:o,oldIndex:Q,oldDraggableIndex:te,newIndex:ee,newDraggableIndex:ne,hideGhostForTarget:De,unhideGhostForTarget:Me,cloneNowHidden:function(){J=!0},cloneNowShown:function(){J=!1},dispatchSortableEvent:function(e){U({sortable:n,name:e,originalEvent:o})}},a))};function U(e){!function(e){var n=e.sortable,r=e.rootEl,o=e.name,i=e.targetEl,a=e.cloneEl,c=e.toEl,d=e.fromEl,u=e.oldIndex,h=e.newIndex,g=e.oldDraggableIndex,p=e.newDraggableIndex,f=e.originalEvent,m=e.putSortable,b=e.extraEventProperties;if(n=n||r&&r[P]){var v,_=n.options,y=\"on\"+o.charAt(0).toUpperCase()+o.substr(1);!window.CustomEvent||s||l?(v=document.createEvent(\"Event\")).initEvent(o,!0,!0):v=new CustomEvent(o,{bubbles:!0,cancelable:!0}),v.to=c||r,v.from=d||r,v.item=i||r,v.clone=a,v.oldIndex=u,v.newIndex=h,v.oldDraggableIndex=g,v.newDraggableIndex=p,v.originalEvent=f,v.pullMode=m?m.lastPutMode:void 0;var E=t(t({},b),F.getEventProperties(o,n));for(var w in E)v[w]=E[w];r&&r.dispatchEvent(v),_[y]&&_[y].call(n,v)}}(t({putSortable:oe,cloneEl:V,targetEl:Y,rootEl:W,oldIndex:Q,oldDraggableIndex:te,newIndex:ee,newDraggableIndex:ne},e))}var Y,K,G,W,q,Z,V,J,Q,ee,te,ne,re,oe,ie,ae,se,le,ce,de,ue,he,ge,pe,fe,me=!1,be=!1,ve=[],_e=!1,ye=!1,Ee=[],we=!1,xe=[],Se=\"undefined\"!=typeof document,Ae=u,Ne=l||s?\"cssFloat\":\"float\",ke=Se&&!h&&!u&&\"draggable\"in document.createElement(\"div\"),Oe=function(){if(Se){if(s)return!1;var e=document.createElement(\"x\");return e.style.cssText=\"pointer-events:auto\",\"auto\"===e.style.pointerEvents}}(),Te=function(e,t){var n=w(e),r=parseInt(n.width)-parseInt(n.paddingLeft)-parseInt(n.paddingRight)-parseInt(n.borderLeftWidth)-parseInt(n.borderRightWidth),o=O(e,0,t),i=O(e,1,t),a=o&&w(o),s=i&&w(i),l=a&&parseInt(a.marginLeft)+parseInt(a.marginRight)+N(o).width,c=s&&parseInt(s.marginLeft)+parseInt(s.marginRight)+N(i).width;if(\"flex\"===n.display)return\"column\"===n.flexDirection||\"column-reverse\"===n.flexDirection?\"vertical\":\"horizontal\";if(\"grid\"===n.display)return n.gridTemplateColumns.split(\" \").length<=1?\"vertical\":\"horizontal\";if(o&&a.float&&\"none\"!==a.float){var d=\"left\"===a.float?\"left\":\"right\";return!i||\"both\"!==s.clear&&s.clear!==d?\"horizontal\":\"vertical\"}return o&&(\"block\"===a.display||\"flex\"===a.display||\"table\"===a.display||\"grid\"===a.display||l>=r&&\"none\"===n[Ne]||i&&\"none\"===n[Ne]&&l+c>r)?\"vertical\":\"horizontal\"},Ce=function(e){function t(e,n){return function(r,o,i,a){var s=r.options.group.name&&o.options.group.name&&r.options.group.name===o.options.group.name;if(null==e&&(n||s))return!0;if(null==e||!1===e)return!1;if(n&&\"clone\"===e)return e;if(\"function\"==typeof e)return t(e(r,o,i,a),n)(r,o,i,a);var l=(n?r:o).options.group.name;return!0===e||\"string\"==typeof e&&e===l||e.join&&e.indexOf(l)>-1}}var r={},o=e.group;o&&\"object\"==n(o)||(o={name:o}),r.name=o.name,r.checkPull=t(o.pull,!0),r.checkPut=t(o.put),r.revertClone=o.revertClone,e.group=r},De=function(){!Oe&&G&&w(G,\"display\",\"none\")},Me=function(){!Oe&&G&&w(G,\"display\",\"\")};Se&&document.addEventListener(\"click\",(function(e){if(be)return e.preventDefault(),e.stopPropagation&&e.stopPropagation(),e.stopImmediatePropagation&&e.stopImmediatePropagation(),be=!1,!1}),!0);var Ie=function(e){if(Y){e=e.touches?e.touches[0]:e;var t=(o=e.clientX,i=e.clientY,ve.some((function(e){var t=e[P].options.emptyInsertThreshold;if(t&&!T(e)){var n=N(e),r=o>=n.left-t&&o<=n.right+t,s=i>=n.top-t&&i<=n.bottom+t;return r&&s?a=e:void 0}})),a);if(t){var n={};for(var r in e)e.hasOwnProperty(r)&&(n[r]=e[r]);n.target=n.rootEl=t,n.preventDefault=void 0,n.stopPropagation=void 0,t[P]._onDragOver(n)}}var o,i,a},Be=function(e){Y&&Y.parentNode[P]._isOutsideThisEl(e.target)};function Re(e,t){if(!e||!e.nodeType||1!==e.nodeType)throw\"Sortable: `el` must be an HTMLElement, not \".concat({}.toString.call(e));this.el=e,this.options=t=o({},t),e[P]=this;var n={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(e.nodeName)?\">li\":\">*\",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return Te(e,this.options)},ghostClass:\"sortable-ghost\",chosenClass:\"sortable-chosen\",dragClass:\"sortable-drag\",ignore:\"a, img\",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(e,t){e.setData(\"Text\",t.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:\"data-id\",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:\"sortable-fallback\",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==Re.supportPointer&&\"PointerEvent\"in window&&!d,emptyInsertThreshold:5};for(var r in F.initializePlugins(this,e,n),n)!(r in t)&&(t[r]=n[r]);for(var i in Ce(t),this)\"_\"===i.charAt(0)&&\"function\"==typeof this[i]&&(this[i]=this[i].bind(this));this.nativeDraggable=!t.forceFallback&&ke,this.nativeDraggable&&(this.options.touchStartThreshold=1),t.supportPointer?p(e,\"pointerdown\",this._onTapStart):(p(e,\"mousedown\",this._onTapStart),p(e,\"touchstart\",this._onTapStart)),this.nativeDraggable&&(p(e,\"dragover\",this),p(e,\"dragenter\",this)),ve.push(this.el),t.store&&t.store.get&&this.sort(t.store.get(this)||[]),o(this,j())}function Le(e,t,n,r,o,i,a,c){var d,u,h=e[P],g=h.options.onMove;return!window.CustomEvent||s||l?(d=document.createEvent(\"Event\")).initEvent(\"move\",!0,!0):d=new CustomEvent(\"move\",{bubbles:!0,cancelable:!0}),d.to=t,d.from=e,d.dragged=n,d.draggedRect=r,d.related=o||t,d.relatedRect=i||N(t),d.willInsertAfter=c,d.originalEvent=a,e.dispatchEvent(d),g&&(u=g.call(h,d,a)),u}function Pe(e){e.draggable=!1}function je(){we=!1}function $e(e){for(var t=e.tagName+e.className+e.src+e.href+e.textContent,n=t.length,r=0;n--;)r+=t.charCodeAt(n);return r.toString(36)}function ze(e){return setTimeout(e,0)}function Fe(e){return clearTimeout(e)}Re.prototype={constructor:Re,_isOutsideThisEl:function(e){this.el.contains(e)||e===this.el||(he=null)},_getDirection:function(e,t){return\"function\"==typeof this.options.direction?this.options.direction.call(this,e,t,Y):this.options.direction},_onTapStart:function(e){if(e.cancelable){var t=this,n=this.el,r=this.options,o=r.preventOnFilter,i=e.type,a=e.touches&&e.touches[0]||e.pointerType&&\"touch\"===e.pointerType&&e,s=(a||e).target,l=e.target.shadowRoot&&(e.path&&e.path[0]||e.composedPath&&e.composedPath()[0])||s,c=r.filter;if(function(e){xe.length=0;var t=e.getElementsByTagName(\"input\"),n=t.length;for(;n--;){var r=t[n];r.checked&&xe.push(r)}}(n),!Y&&!(/mousedown|pointerdown/.test(i)&&0!==e.button||r.disabled)&&!l.isContentEditable&&(this.nativeDraggable||!d||!s||\"SELECT\"!==s.tagName.toUpperCase())&&!((s=v(s,r.draggable,n,!1))&&s.animated||Z===s)){if(Q=C(s),te=C(s,r.draggable),\"function\"==typeof c){if(c.call(this,e,s,this))return U({sortable:t,rootEl:l,name:\"filter\",targetEl:s,toEl:n,fromEl:n}),X(\"filter\",t,{evt:e}),void(o&&e.cancelable&&e.preventDefault())}else if(c&&(c=c.split(\",\").some((function(r){if(r=v(l,r.trim(),n,!1))return U({sortable:t,rootEl:r,name:\"filter\",targetEl:s,fromEl:n,toEl:n}),X(\"filter\",t,{evt:e}),!0}))))return void(o&&e.cancelable&&e.preventDefault());r.handle&&!v(l,r.handle,n,!1)||this._prepareDragStart(e,a,s)}}},_prepareDragStart:function(e,t,n){var r,o=this,i=o.el,a=o.options,d=i.ownerDocument;if(n&&!Y&&n.parentNode===i){var u=N(n);if(W=i,K=(Y=n).parentNode,q=Y.nextSibling,Z=n,re=a.group,Re.dragged=Y,ie={target:Y,clientX:(t||e).clientX,clientY:(t||e).clientY},ce=ie.clientX-u.left,de=ie.clientY-u.top,this._lastX=(t||e).clientX,this._lastY=(t||e).clientY,Y.style[\"will-change\"]=\"all\",r=function(){X(\"delayEnded\",o,{evt:e}),Re.eventCanceled?o._onDrop():(o._disableDelayedDragEvents(),!c&&o.nativeDraggable&&(Y.draggable=!0),o._triggerDragStart(e,t),U({sortable:o,name:\"choose\",originalEvent:e}),E(Y,a.chosenClass,!0))},a.ignore.split(\",\").forEach((function(e){S(Y,e.trim(),Pe)})),p(d,\"dragover\",Ie),p(d,\"mousemove\",Ie),p(d,\"touchmove\",Ie),p(d,\"mouseup\",o._onDrop),p(d,\"touchend\",o._onDrop),p(d,\"touchcancel\",o._onDrop),c&&this.nativeDraggable&&(this.options.touchStartThreshold=4,Y.draggable=!0),X(\"delayStart\",this,{evt:e}),!a.delay||a.delayOnTouchOnly&&!t||this.nativeDraggable&&(l||s))r();else{if(Re.eventCanceled)return void this._onDrop();p(d,\"mouseup\",o._disableDelayedDrag),p(d,\"touchend\",o._disableDelayedDrag),p(d,\"touchcancel\",o._disableDelayedDrag),p(d,\"mousemove\",o._delayedDragTouchMoveHandler),p(d,\"touchmove\",o._delayedDragTouchMoveHandler),a.supportPointer&&p(d,\"pointermove\",o._delayedDragTouchMoveHandler),o._dragStartTimer=setTimeout(r,a.delay)}}},_delayedDragTouchMoveHandler:function(e){var t=e.touches?e.touches[0]:e;Math.max(Math.abs(t.clientX-this._lastX),Math.abs(t.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){Y&&Pe(Y),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var e=this.el.ownerDocument;f(e,\"mouseup\",this._disableDelayedDrag),f(e,\"touchend\",this._disableDelayedDrag),f(e,\"touchcancel\",this._disableDelayedDrag),f(e,\"mousemove\",this._delayedDragTouchMoveHandler),f(e,\"touchmove\",this._delayedDragTouchMoveHandler),f(e,\"pointermove\",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,t){t=t||\"touch\"==e.pointerType&&e,!this.nativeDraggable||t?this.options.supportPointer?p(document,\"pointermove\",this._onTouchMove):p(document,t?\"touchmove\":\"mousemove\",this._onTouchMove):(p(Y,\"dragend\",this),p(W,\"dragstart\",this._onDragStart));try{document.selection?ze((function(){document.selection.empty()})):window.getSelection().removeAllRanges()}catch(e){}},_dragStarted:function(e,t){if(me=!1,W&&Y){X(\"dragStarted\",this,{evt:t}),this.nativeDraggable&&p(document,\"dragover\",Be);var n=this.options;!e&&E(Y,n.dragClass,!1),E(Y,n.ghostClass,!0),Re.active=this,e&&this._appendGhost(),U({sortable:this,name:\"start\",originalEvent:t})}else this._nulling()},_emulateDragOver:function(){if(ae){this._lastX=ae.clientX,this._lastY=ae.clientY,De();for(var e=document.elementFromPoint(ae.clientX,ae.clientY),t=e;e&&e.shadowRoot&&(e=e.shadowRoot.elementFromPoint(ae.clientX,ae.clientY))!==t;)t=e;if(Y.parentNode[P]._isOutsideThisEl(e),t)do{if(t[P]){if(t[P]._onDragOver({clientX:ae.clientX,clientY:ae.clientY,target:e,rootEl:t})&&!this.options.dragoverBubble)break}e=t}while(t=t.parentNode);Me()}},_onTouchMove:function(e){if(ie){var t=this.options,n=t.fallbackTolerance,r=t.fallbackOffset,o=e.touches?e.touches[0]:e,i=G&&x(G,!0),a=G&&i&&i.a,s=G&&i&&i.d,l=Ae&&fe&&D(fe),c=(o.clientX-ie.clientX+r.x)/(a||1)+(l?l[0]-Ee[0]:0)/(a||1),d=(o.clientY-ie.clientY+r.y)/(s||1)+(l?l[1]-Ee[1]:0)/(s||1);if(!Re.active&&!me){if(n&&Math.max(Math.abs(o.clientX-this._lastX),Math.abs(o.clientY-this._lastY))r.right+o||e.clientX<=r.right&&e.clientY>r.bottom&&e.clientX>=r.left:e.clientX>r.right&&e.clientY>r.top||e.clientX<=r.right&&e.clientY>r.bottom+o}(e,i,this)&&!m.animated){if(m===Y)return H(!1);if(m&&a===e.target&&(s=m),s&&(r=N(s)),!1!==Le(W,a,Y,n,s,r,e,!!s))return F(),a.appendChild(Y),K=a,Z(),H(!0)}else if(m&&function(e,t,n){var r=N(O(n.el,0,n.options,!0)),o=10;return t?e.clientXd+c*i/2:lu-pe)return-ge}else if(l>d+c*(1-o)/2&&lu-c*i/2))return l>d+c/2?1:-1;return 0}(e,s,r,i,A?1:l.swapThreshold,null==l.invertedSwapThreshold?l.swapThreshold:l.invertedSwapThreshold,ye,he===s),0!==_){var B=C(Y);do{B-=_,x=K.children[B]}while(x&&(\"none\"===w(x,\"display\")||x===G))}if(0===_||x===s)return H(!1);he=s,ge=_;var L=s.nextElementSibling,j=!1,$=Le(W,a,Y,n,s,r,e,j=1===_);if(!1!==$)return 1!==$&&-1!==$||(j=1===$),we=!0,setTimeout(je,30),F(),j&&!L?a.appendChild(Y):s.parentNode.insertBefore(Y,j?L:s),M&&R(M,0,I-M.scrollTop),K=Y.parentNode,void 0===y||ye||(pe=Math.abs(y-N(s)[D])),Z(),H(!0)}if(a.contains(Y))return H(!1)}return!1}function z(l,c){X(l,p,t({evt:e,isOwner:u,axis:i?\"vertical\":\"horizontal\",revert:o,dragRect:n,targetRect:r,canSort:h,fromSortable:g,target:s,completed:H,onMove:function(t,r){return Le(W,a,Y,n,t,N(t),e,r)},changed:Z},c))}function F(){z(\"dragOverAnimationCapture\"),p.captureAnimationState(),p!==g&&g.captureAnimationState()}function H(t){return z(\"dragOverCompleted\",{insertion:t}),t&&(u?d._hideClone():d._showClone(p),p!==g&&(E(Y,oe?oe.options.ghostClass:d.options.ghostClass,!1),E(Y,l.ghostClass,!0)),oe!==p&&p!==Re.active?oe=p:p===Re.active&&oe&&(oe=null),g===p&&(p._ignoreWhileAnimating=s),p.animateAll((function(){z(\"dragOverAnimationComplete\"),p._ignoreWhileAnimating=null})),p!==g&&(g.animateAll(),g._ignoreWhileAnimating=null)),(s===Y&&!Y.animated||s===a&&!s.animated)&&(he=null),l.dragoverBubble||e.rootEl||s===document||(Y.parentNode[P]._isOutsideThisEl(e.target),!t&&Ie(e)),!l.dragoverBubble&&e.stopPropagation&&e.stopPropagation(),f=!0}function Z(){ee=C(Y),ne=C(Y,l.draggable),U({sortable:p,name:\"change\",toEl:a,newIndex:ee,newDraggableIndex:ne,originalEvent:e})}},_ignoreWhileAnimating:null,_offMoveEvents:function(){f(document,\"mousemove\",this._onTouchMove),f(document,\"touchmove\",this._onTouchMove),f(document,\"pointermove\",this._onTouchMove),f(document,\"dragover\",Ie),f(document,\"mousemove\",Ie),f(document,\"touchmove\",Ie)},_offUpEvents:function(){var e=this.el.ownerDocument;f(e,\"mouseup\",this._onDrop),f(e,\"touchend\",this._onDrop),f(e,\"pointerup\",this._onDrop),f(e,\"touchcancel\",this._onDrop),f(document,\"selectstart\",this)},_onDrop:function(e){var t=this.el,n=this.options;ee=C(Y),ne=C(Y,n.draggable),X(\"drop\",this,{evt:e}),K=Y&&Y.parentNode,ee=C(Y),ne=C(Y,n.draggable),Re.eventCanceled||(me=!1,ye=!1,_e=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),Fe(this.cloneId),Fe(this._dragStartId),this.nativeDraggable&&(f(document,\"drop\",this),f(t,\"dragstart\",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),d&&w(document.body,\"user-select\",\"\"),w(Y,\"transform\",\"\"),e&&(ue&&(e.cancelable&&e.preventDefault(),!n.dropBubble&&e.stopPropagation()),G&&G.parentNode&&G.parentNode.removeChild(G),(W===K||oe&&\"clone\"!==oe.lastPutMode)&&V&&V.parentNode&&V.parentNode.removeChild(V),Y&&(this.nativeDraggable&&f(Y,\"dragend\",this),Pe(Y),Y.style[\"will-change\"]=\"\",ue&&!me&&E(Y,oe?oe.options.ghostClass:this.options.ghostClass,!1),E(Y,this.options.chosenClass,!1),U({sortable:this,name:\"unchoose\",toEl:K,newIndex:null,newDraggableIndex:null,originalEvent:e}),W!==K?(ee>=0&&(U({rootEl:K,name:\"add\",toEl:K,fromEl:W,originalEvent:e}),U({sortable:this,name:\"remove\",toEl:K,originalEvent:e}),U({rootEl:K,name:\"sort\",toEl:K,fromEl:W,originalEvent:e}),U({sortable:this,name:\"sort\",toEl:K,originalEvent:e})),oe&&oe.save()):ee!==Q&&ee>=0&&(U({sortable:this,name:\"update\",toEl:K,originalEvent:e}),U({sortable:this,name:\"sort\",toEl:K,originalEvent:e})),Re.active&&(null!=ee&&-1!==ee||(ee=Q,ne=te),U({sortable:this,name:\"end\",toEl:K,originalEvent:e}),this.save())))),this._nulling()},_nulling:function(){X(\"nulling\",this),W=Y=K=G=q=V=Z=J=ie=ae=ue=ee=ne=Q=te=he=ge=oe=re=Re.dragged=Re.ghost=Re.clone=Re.active=null,xe.forEach((function(e){e.checked=!0})),xe.length=se=le=0},handleEvent:function(e){switch(e.type){case\"drop\":case\"dragend\":this._onDrop(e);break;case\"dragenter\":case\"dragover\":Y&&(this._onDragOver(e),function(e){e.dataTransfer&&(e.dataTransfer.dropEffect=\"move\");e.cancelable&&e.preventDefault()}(e));break;case\"selectstart\":e.preventDefault()}},toArray:function(){for(var e,t=[],n=this.el.children,r=0,o=n.length,i=this.options;r/g,\">\").replace(/\"/g,\""\").replace(/'/g,\"'\")}function st(e,...t){const n=Object.create(null);for(const t in e)n[t]=e[t];return t.forEach((function(e){for(const t in e)n[t]=e[t]})),n}const lt=e=>!!e.scope||e.sublanguage&&e.language;class ct{constructor(e,t){this.buffer=\"\",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=at(e)}openNode(e){if(!lt(e))return;let t=\"\";t=e.sublanguage?`language-${e.language}`:((e,{prefix:t})=>{if(e.includes(\".\")){const n=e.split(\".\");return[`${t}${n.shift()}`,...n.map(((e,t)=>`${e}${\"_\".repeat(t+1)}`))].join(\" \")}return`${t}${e}`})(e.scope,{prefix:this.classPrefix}),this.span(t)}closeNode(e){lt(e)&&(this.buffer+=\"\")}value(){return this.buffer}span(e){this.buffer+=``}}const dt=(e={})=>{const t={children:[]};return Object.assign(t,e),t};class ut{constructor(){this.rootNode=dt(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){const t=dt({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return\"string\"==typeof t?e.addText(t):t.children&&(e.openNode(t),t.children.forEach((t=>this._walk(e,t))),e.closeNode(t)),e}static _collapse(e){\"string\"!=typeof e&&e.children&&(e.children.every((e=>\"string\"==typeof e))?e.children=[e.children.join(\"\")]:e.children.forEach((e=>{ut._collapse(e)})))}}class ht extends ut{constructor(e){super(),this.options=e}addKeyword(e,t){\"\"!==e&&(this.openNode(t),this.addText(e),this.closeNode())}addText(e){\"\"!==e&&this.add(e)}addSublanguage(e,t){const n=e.root;n.sublanguage=!0,n.language=t,this.add(n)}toHTML(){return new ct(this,this.options).value()}finalize(){return!0}}function gt(e){return e?\"string\"==typeof e?e:e.source:null}function pt(e){return bt(\"(?=\",e,\")\")}function ft(e){return bt(\"(?:\",e,\")*\")}function mt(e){return bt(\"(?:\",e,\")?\")}function bt(...e){return e.map((e=>gt(e))).join(\"\")}function vt(...e){const t=function(e){const t=e[e.length-1];return\"object\"==typeof t&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}(e);return\"(\"+(t.capture?\"\":\"?:\")+e.map((e=>gt(e))).join(\"|\")+\")\"}function _t(e){return new RegExp(e.toString()+\"|\").exec(\"\").length-1}const yt=/\\[(?:[^\\\\\\]]|\\\\.)*\\]|\\(\\??|\\\\([1-9][0-9]*)|\\\\./;function Et(e,{joinWith:t}){let n=0;return e.map((e=>{n+=1;const t=n;let r=gt(e),o=\"\";for(;r.length>0;){const e=yt.exec(r);if(!e){o+=r;break}o+=r.substring(0,e.index),r=r.substring(e.index+e[0].length),\"\\\\\"===e[0][0]&&e[1]?o+=\"\\\\\"+String(Number(e[1])+t):(o+=e[0],\"(\"===e[0]&&n++)}return o})).map((e=>`(${e})`)).join(t)}const wt=\"[a-zA-Z]\\\\w*\",xt=\"[a-zA-Z_]\\\\w*\",St=\"\\\\b\\\\d+(\\\\.\\\\d+)?\",At=\"(-?)(\\\\b0[xX][a-fA-F0-9]+|(\\\\b\\\\d+(\\\\.\\\\d*)?|\\\\.\\\\d+)([eE][-+]?\\\\d+)?)\",Nt=\"\\\\b(0b[01]+)\",kt={begin:\"\\\\\\\\[\\\\s\\\\S]\",relevance:0},Ot={scope:\"string\",begin:\"'\",end:\"'\",illegal:\"\\\\n\",contains:[kt]},Tt={scope:\"string\",begin:'\"',end:'\"',illegal:\"\\\\n\",contains:[kt]},Ct=function(e,t,n={}){const r=st({scope:\"comment\",begin:e,end:t,contains:[]},n);r.contains.push({scope:\"doctag\",begin:\"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)\",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const o=vt(\"I\",\"a\",\"is\",\"so\",\"us\",\"to\",\"at\",\"if\",\"in\",\"it\",\"on\",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return r.contains.push({begin:bt(/[ ]+/,\"(\",o,/[.]?[:]?([.][ ]|[ ])/,\"){3}\")}),r},Dt=Ct(\"//\",\"$\"),Mt=Ct(\"/\\\\*\",\"\\\\*/\"),It=Ct(\"#\",\"$\"),Bt={scope:\"number\",begin:St,relevance:0},Rt={scope:\"number\",begin:At,relevance:0},Lt={scope:\"number\",begin:Nt,relevance:0},Pt={begin:/(?=\\/[^/\\n]*\\/)/,contains:[{scope:\"regexp\",begin:/\\//,end:/\\/[gimuy]*/,illegal:/\\n/,contains:[kt,{begin:/\\[/,end:/\\]/,relevance:0,contains:[kt]}]}]},jt={scope:\"title\",begin:wt,relevance:0},$t={scope:\"title\",begin:xt,relevance:0},zt={begin:\"\\\\.\\\\s*\"+xt,relevance:0};var Ft=Object.freeze({__proto__:null,MATCH_NOTHING_RE:/\\b\\B/,IDENT_RE:wt,UNDERSCORE_IDENT_RE:xt,NUMBER_RE:St,C_NUMBER_RE:At,BINARY_NUMBER_RE:Nt,RE_STARTERS_RE:\"!|!=|!==|%|%=|&|&&|&=|\\\\*|\\\\*=|\\\\+|\\\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\\\?|\\\\[|\\\\{|\\\\(|\\\\^|\\\\^=|\\\\||\\\\|=|\\\\|\\\\||~\",SHEBANG:(e={})=>{const t=/^#![ ]*\\//;return e.binary&&(e.begin=bt(t,/.*\\b/,e.binary,/\\b.*/)),st({scope:\"meta\",begin:t,end:/$/,relevance:0,\"on:begin\":(e,t)=>{0!==e.index&&t.ignoreMatch()}},e)},BACKSLASH_ESCAPE:kt,APOS_STRING_MODE:Ot,QUOTE_STRING_MODE:Tt,PHRASAL_WORDS_MODE:{begin:/\\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\\b/},COMMENT:Ct,C_LINE_COMMENT_MODE:Dt,C_BLOCK_COMMENT_MODE:Mt,HASH_COMMENT_MODE:It,NUMBER_MODE:Bt,C_NUMBER_MODE:Rt,BINARY_NUMBER_MODE:Lt,REGEXP_MODE:Pt,TITLE_MODE:jt,UNDERSCORE_TITLE_MODE:$t,METHOD_GUARD:zt,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{\"on:begin\":(e,t)=>{t.data._beginMatch=e[1]},\"on:end\":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})}});function Ht(e,t){\".\"===e.input[e.index-1]&&t.ignoreMatch()}function Xt(e,t){void 0!==e.className&&(e.scope=e.className,delete e.className)}function Ut(e,t){t&&e.beginKeywords&&(e.begin=\"\\\\b(\"+e.beginKeywords.split(\" \").join(\"|\")+\")(?!\\\\.)(?=\\\\b|\\\\s)\",e.__beforeBegin=Ht,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,void 0===e.relevance&&(e.relevance=0))}function Yt(e,t){Array.isArray(e.illegal)&&(e.illegal=vt(...e.illegal))}function Kt(e,t){if(e.match){if(e.begin||e.end)throw new Error(\"begin & end are not supported with match\");e.begin=e.match,delete e.match}}function Gt(e,t){void 0===e.relevance&&(e.relevance=1)}const Wt=(e,t)=>{if(!e.beforeMatch)return;if(e.starts)throw new Error(\"beforeMatch cannot be used with starts\");const n=Object.assign({},e);Object.keys(e).forEach((t=>{delete e[t]})),e.keywords=n.keywords,e.begin=bt(n.beforeMatch,pt(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},qt=[\"of\",\"and\",\"for\",\"in\",\"not\",\"or\",\"if\",\"then\",\"parent\",\"list\",\"value\"];function Zt(e,t,n=\"keyword\"){const r=Object.create(null);return\"string\"==typeof e?o(n,e.split(\" \")):Array.isArray(e)?o(n,e):Object.keys(e).forEach((function(n){Object.assign(r,Zt(e[n],t,n))})),r;function o(e,n){t&&(n=n.map((e=>e.toLowerCase()))),n.forEach((function(t){const n=t.split(\"|\");r[n[0]]=[e,Vt(n[0],n[1])]}))}}function Vt(e,t){return t?Number(t):function(e){return qt.includes(e.toLowerCase())}(e)?0:1}const Jt={},Qt=e=>{console.error(e)},en=(e,...t)=>{console.log(`WARN: ${e}`,...t)},tn=(e,t)=>{Jt[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),Jt[`${e}/${t}`]=!0)},nn=new Error;function rn(e,t,{key:n}){let r=0;const o=e[n],i={},a={};for(let e=1;e<=t.length;e++)a[e+r]=o[e],i[e+r]=!0,r+=_t(t[e-1]);e[n]=a,e[n]._emit=i,e[n]._multi=!0}function on(e){!function(e){e.scope&&\"object\"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope,delete e.scope)}(e),\"string\"==typeof e.beginScope&&(e.beginScope={_wrap:e.beginScope}),\"string\"==typeof e.endScope&&(e.endScope={_wrap:e.endScope}),function(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw Qt(\"skip, excludeBegin, returnBegin not compatible with beginScope: {}\"),nn;if(\"object\"!=typeof e.beginScope||null===e.beginScope)throw Qt(\"beginScope must be object\"),nn;rn(e,e.begin,{key:\"beginScope\"}),e.begin=Et(e.begin,{joinWith:\"\"})}}(e),function(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw Qt(\"skip, excludeEnd, returnEnd not compatible with endScope: {}\"),nn;if(\"object\"!=typeof e.endScope||null===e.endScope)throw Qt(\"endScope must be object\"),nn;rn(e,e.end,{key:\"endScope\"}),e.end=Et(e.end,{joinWith:\"\"})}}(e)}function an(e){function t(t,n){return new RegExp(gt(t),\"m\"+(e.case_insensitive?\"i\":\"\")+(e.unicodeRegex?\"u\":\"\")+(n?\"g\":\"\"))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(e,t){t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]),this.matchAt+=_t(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null);const e=this.regexes.map((e=>e[1]));this.matcherRe=t(Et(e,{joinWith:\"|\"}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex;const t=this.matcherRe.exec(e);if(!t)return null;const n=t.findIndex(((e,t)=>t>0&&void 0!==e)),r=this.matchIndexes[n];return t.splice(0,n),Object.assign(t,r)}}class r{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){if(this.multiRegexes[e])return this.multiRegexes[e];const t=new n;return this.rules.slice(e).forEach((([e,n])=>t.addRule(e,n))),t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){this.rules.push([e,t]),\"begin\"===t.type&&this.count++}exec(e){const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex;let n=t.exec(e);if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)}return n&&(this.regexIndex+=n.position+1,this.regexIndex===this.count&&this.considerAll()),n}}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes(\"self\"))throw new Error(\"ERR: contains `self` is not supported at the top-level of a language. See documentation.\");return e.classNameAliases=st(e.classNameAliases||{}),function n(o,i){const a=o;if(o.isCompiled)return a;[Xt,Kt,on,Wt].forEach((e=>e(o,i))),e.compilerExtensions.forEach((e=>e(o,i))),o.__beforeBegin=null,[Ut,Yt,Gt].forEach((e=>e(o,i))),o.isCompiled=!0;let s=null;return\"object\"==typeof o.keywords&&o.keywords.$pattern&&(o.keywords=Object.assign({},o.keywords),s=o.keywords.$pattern,delete o.keywords.$pattern),s=s||/\\w+/,o.keywords&&(o.keywords=Zt(o.keywords,e.case_insensitive)),a.keywordPatternRe=t(s,!0),i&&(o.begin||(o.begin=/\\B|\\b/),a.beginRe=t(a.begin),o.end||o.endsWithParent||(o.end=/\\B|\\b/),o.end&&(a.endRe=t(a.end)),a.terminatorEnd=gt(a.end)||\"\",o.endsWithParent&&i.terminatorEnd&&(a.terminatorEnd+=(o.end?\"|\":\"\")+i.terminatorEnd)),o.illegal&&(a.illegalRe=t(o.illegal)),o.contains||(o.contains=[]),o.contains=[].concat(...o.contains.map((function(e){return function(e){e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((function(t){return st(e,{variants:null},t)})));if(e.cachedVariants)return e.cachedVariants;if(sn(e))return st(e,{starts:e.starts?st(e.starts):null});if(Object.isFrozen(e))return st(e);return e}(\"self\"===e?o:e)}))),o.contains.forEach((function(e){n(e,a)})),o.starts&&n(o.starts,i),a.matcher=function(e){const t=new r;return e.contains.forEach((e=>t.addRule(e.begin,{rule:e,type:\"begin\"}))),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:\"end\"}),e.illegal&&t.addRule(e.illegal,{type:\"illegal\"}),t}(a),a}(e)}function sn(e){return!!e&&(e.endsWithParent||sn(e.starts))}class ln extends Error{constructor(e,t){super(e),this.name=\"HTMLInjectionError\",this.html=t}}const cn=at,dn=st,un=Symbol(\"nomatch\");var hn=function(e){const t=Object.create(null),n=Object.create(null),r=[];let o=!0;const i=\"Could not find the language '{}', did you forget to load/include a language module?\",a={disableAutodetect:!0,name:\"Plain text\",contains:[]};let s={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\\blang(?:uage)?-([\\w-]+)\\b/i,classPrefix:\"hljs-\",cssSelector:\"pre code\",languages:null,__emitter:ht};function l(e){return s.noHighlightRe.test(e)}function c(e,t,n){let r=\"\",o=\"\";\"object\"==typeof t?(r=e,n=t.ignoreIllegals,o=t.language):(tn(\"10.7.0\",\"highlight(lang, code, ...args) has been deprecated.\"),tn(\"10.7.0\",\"Please use highlight(code, options) instead.\\nhttps://github.com/highlightjs/highlight.js/issues/2277\"),o=e,r=t),void 0===n&&(n=!0);const i={code:r,language:o};v(\"before:highlight\",i);const a=i.result?i.result:d(i.language,i.code,n);return a.code=i.code,v(\"after:highlight\",a),a}function d(e,n,r,a){const l=Object.create(null);function c(){if(!S.keywords)return void N.addText(k);let e=0;S.keywordPatternRe.lastIndex=0;let t=S.keywordPatternRe.exec(k),n=\"\";for(;t;){n+=k.substring(e,t.index);const o=E.case_insensitive?t[0].toLowerCase():t[0],i=(r=o,S.keywords[r]);if(i){const[e,r]=i;if(N.addText(n),n=\"\",l[o]=(l[o]||0)+1,l[o]<=7&&(O+=r),e.startsWith(\"_\"))n+=t[0];else{const n=E.classNameAliases[e]||e;N.addKeyword(t[0],n)}}else n+=t[0];e=S.keywordPatternRe.lastIndex,t=S.keywordPatternRe.exec(k)}var r;n+=k.substring(e),N.addText(n)}function h(){null!=S.subLanguage?function(){if(\"\"===k)return;let e=null;if(\"string\"==typeof S.subLanguage){if(!t[S.subLanguage])return void N.addText(k);e=d(S.subLanguage,k,!0,A[S.subLanguage]),A[S.subLanguage]=e._top}else e=u(k,S.subLanguage.length?S.subLanguage:null);S.relevance>0&&(O+=e.relevance),N.addSublanguage(e._emitter,e.language)}():c(),k=\"\"}function g(e,t){let n=1;const r=t.length-1;for(;n<=r;){if(!e._emit[n]){n++;continue}const r=E.classNameAliases[e[n]]||e[n],o=t[n];r?N.addKeyword(o,r):(k=o,c(),k=\"\"),n++}}function p(e,t){return e.scope&&\"string\"==typeof e.scope&&N.openNode(E.classNameAliases[e.scope]||e.scope),e.beginScope&&(e.beginScope._wrap?(N.addKeyword(k,E.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap),k=\"\"):e.beginScope._multi&&(g(e.beginScope,t),k=\"\")),S=Object.create(e,{parent:{value:S}}),S}function m(e,t,n){let r=function(e,t){const n=e&&e.exec(t);return n&&0===n.index}(e.endRe,n);if(r){if(e[\"on:end\"]){const n=new it(e);e[\"on:end\"](t,n),n.isMatchIgnored&&(r=!1)}if(r){for(;e.endsParent&&e.parent;)e=e.parent;return e}}if(e.endsWithParent)return m(e.parent,t,n)}function b(e){return 0===S.matcher.regexIndex?(k+=e[0],1):(D=!0,0)}function v(e){const t=e[0],r=n.substring(e.index),o=m(S,e,r);if(!o)return un;const i=S;S.endScope&&S.endScope._wrap?(h(),N.addKeyword(t,S.endScope._wrap)):S.endScope&&S.endScope._multi?(h(),g(S.endScope,e)):i.skip?k+=t:(i.returnEnd||i.excludeEnd||(k+=t),h(),i.excludeEnd&&(k=t));do{S.scope&&N.closeNode(),S.skip||S.subLanguage||(O+=S.relevance),S=S.parent}while(S!==o.parent);return o.starts&&p(o.starts,e),i.returnEnd?0:t.length}let _={};function y(t,i){const a=i&&i[0];if(k+=t,null==a)return h(),0;if(\"begin\"===_.type&&\"end\"===i.type&&_.index===i.index&&\"\"===a){if(k+=n.slice(i.index,i.index+1),!o){const t=new Error(`0 width match regex (${e})`);throw t.languageName=e,t.badRule=_.rule,t}return 1}if(_=i,\"begin\"===i.type)return function(e){const t=e[0],n=e.rule,r=new it(n),o=[n.__beforeBegin,n[\"on:begin\"]];for(const n of o)if(n&&(n(e,r),r.isMatchIgnored))return b(t);return n.skip?k+=t:(n.excludeBegin&&(k+=t),h(),n.returnBegin||n.excludeBegin||(k=t)),p(n,e),n.returnBegin?0:t.length}(i);if(\"illegal\"===i.type&&!r){const e=new Error('Illegal lexeme \"'+a+'\" for mode \"'+(S.scope||\"\")+'\"');throw e.mode=S,e}if(\"end\"===i.type){const e=v(i);if(e!==un)return e}if(\"illegal\"===i.type&&\"\"===a)return 1;if(C>1e5&&C>3*i.index){throw new Error(\"potential infinite loop, way more iterations than matches\")}return k+=a,a.length}const E=f(e);if(!E)throw Qt(i.replace(\"{}\",e)),new Error('Unknown language: \"'+e+'\"');const w=an(E);let x=\"\",S=a||w;const A={},N=new s.__emitter(s);!function(){const e=[];for(let t=S;t!==E;t=t.parent)t.scope&&e.unshift(t.scope);e.forEach((e=>N.openNode(e)))}();let k=\"\",O=0,T=0,C=0,D=!1;try{for(S.matcher.considerAll();;){C++,D?D=!1:S.matcher.considerAll(),S.matcher.lastIndex=T;const e=S.matcher.exec(n);if(!e)break;const t=y(n.substring(T,e.index),e);T=e.index+t}return y(n.substring(T)),N.closeAllNodes(),N.finalize(),x=N.toHTML(),{language:e,value:x,relevance:O,illegal:!1,_emitter:N,_top:S}}catch(t){if(t.message&&t.message.includes(\"Illegal\"))return{language:e,value:cn(n),illegal:!0,relevance:0,_illegalBy:{message:t.message,index:T,context:n.slice(T-100,T+100),mode:t.mode,resultSoFar:x},_emitter:N};if(o)return{language:e,value:cn(n),illegal:!1,relevance:0,errorRaised:t,_emitter:N,_top:S};throw t}}function u(e,n){n=n||s.languages||Object.keys(t);const r=function(e){const t={value:cn(e),illegal:!1,relevance:0,_top:a,_emitter:new s.__emitter(s)};return t._emitter.addText(e),t}(e),o=n.filter(f).filter(b).map((t=>d(t,e,!1)));o.unshift(r);const i=o.sort(((e,t)=>{if(e.relevance!==t.relevance)return t.relevance-e.relevance;if(e.language&&t.language){if(f(e.language).supersetOf===t.language)return 1;if(f(t.language).supersetOf===e.language)return-1}return 0})),[l,c]=i,u=l;return u.secondBest=c,u}function h(e){let t=null;const r=function(e){let t=e.className+\" \";t+=e.parentNode?e.parentNode.className:\"\";const n=s.languageDetectRe.exec(t);if(n){const t=f(n[1]);return t||(en(i.replace(\"{}\",n[1])),en(\"Falling back to no-highlight mode for this block.\",e)),t?n[1]:\"no-highlight\"}return t.split(/\\s+/).find((e=>l(e)||f(e)))}(e);if(l(r))return;if(v(\"before:highlightElement\",{el:e,language:r}),e.children.length>0&&(s.ignoreUnescapedHTML||(console.warn(\"One of your code blocks includes unescaped HTML. This is a potentially serious security risk.\"),console.warn(\"https://github.com/highlightjs/highlight.js/wiki/security\"),console.warn(\"The element with unescaped HTML:\"),console.warn(e)),s.throwUnescapedHTML)){throw new ln(\"One of your code blocks includes unescaped HTML.\",e.innerHTML)}t=e;const o=t.textContent,a=r?c(o,{language:r,ignoreIllegals:!0}):u(o);e.innerHTML=a.value,function(e,t,r){const o=t&&n[t]||r;e.classList.add(\"hljs\"),e.classList.add(`language-${o}`)}(e,r,a.language),e.result={language:a.language,re:a.relevance,relevance:a.relevance},a.secondBest&&(e.secondBest={language:a.secondBest.language,relevance:a.secondBest.relevance}),v(\"after:highlightElement\",{el:e,result:a,text:o})}let g=!1;function p(){if(\"loading\"===document.readyState)return void(g=!0);document.querySelectorAll(s.cssSelector).forEach(h)}function f(e){return e=(e||\"\").toLowerCase(),t[e]||t[n[e]]}function m(e,{languageName:t}){\"string\"==typeof e&&(e=[e]),e.forEach((e=>{n[e.toLowerCase()]=t}))}function b(e){const t=f(e);return t&&!t.disableAutodetect}function v(e,t){const n=e;r.forEach((function(e){e[n]&&e[n](t)}))}\"undefined\"!=typeof window&&window.addEventListener&&window.addEventListener(\"DOMContentLoaded\",(function(){g&&p()}),!1),Object.assign(e,{highlight:c,highlightAuto:u,highlightAll:p,highlightElement:h,highlightBlock:function(e){return tn(\"10.7.0\",\"highlightBlock will be removed entirely in v12.0\"),tn(\"10.7.0\",\"Please use highlightElement now.\"),h(e)},configure:function(e){s=dn(s,e)},initHighlighting:()=>{p(),tn(\"10.6.0\",\"initHighlighting() deprecated. Use highlightAll() now.\")},initHighlightingOnLoad:function(){p(),tn(\"10.6.0\",\"initHighlightingOnLoad() deprecated. Use highlightAll() now.\")},registerLanguage:function(n,r){let i=null;try{i=r(e)}catch(e){if(Qt(\"Language definition for '{}' could not be registered.\".replace(\"{}\",n)),!o)throw e;Qt(e),i=a}i.name||(i.name=n),t[n]=i,i.rawDefinition=r.bind(null,e),i.aliases&&m(i.aliases,{languageName:n})},unregisterLanguage:function(e){delete t[e];for(const t of Object.keys(n))n[t]===e&&delete n[t]},listLanguages:function(){return Object.keys(t)},getLanguage:f,registerAliases:m,autoDetection:b,inherit:dn,addPlugin:function(e){!function(e){e[\"before:highlightBlock\"]&&!e[\"before:highlightElement\"]&&(e[\"before:highlightElement\"]=t=>{e[\"before:highlightBlock\"](Object.assign({block:t.el},t))}),e[\"after:highlightBlock\"]&&!e[\"after:highlightElement\"]&&(e[\"after:highlightElement\"]=t=>{e[\"after:highlightBlock\"](Object.assign({block:t.el},t))})}(e),r.push(e)}}),e.debugMode=function(){o=!1},e.safeMode=function(){o=!0},e.versionString=\"11.7.0\",e.regex={concat:bt,lookahead:pt,either:vt,optional:mt,anyNumberOfTimes:ft};for(const e in Ft)\"object\"==typeof Ft[e]&&rt.exports(Ft[e]);return Object.assign(e,Ft),e}({}),gn=hn;hn.HighlightJS=hn,hn.default=hn;var pn=gn;class fn{el;_dropArea;_dragArea;_dropSortable;_dragSortable;parentElement;_prevPosition;reusable;randomize;storedSourceBlocks;storedSourceBlockExplanations;blockOrder;hljsLanguage;initialized;constructor(e,t,n){this.el=document.createElement(\"div\"),this.el.classList.add(\"hparsons-input\"),this.parentElement=e,this.el.id=\"hparsonstool-\"+this.parentElement.toolNumber+\"-parsons-input\";const r=document.createElement(\"div\");r.innerText=\"Drag or click the blocks below to form your code:\",r.classList.add(\"hparsons-tip\"),this.el.append(r),this._dragArea=document.createElement(\"div\"),this.el.appendChild(this._dragArea),this._dragArea.classList.add(\"drag-area\");const o=document.createElement(\"div\");o.innerText=\"Your code (click on a block to remove it):\",o.classList.add(\"hparsons-tip\"),this.el.append(o),this._dropArea=document.createElement(\"div\"),this.el.appendChild(this._dropArea),this._dropArea.classList.add(\"drop-area\"),this._prevPosition=-1,this.storedSourceBlocks=[],this.blockOrder=[],this.storedSourceBlockExplanations=null,this.reusable=t,this.randomize=n,this._dragSortable=null,this._dropSortable=null,this._initSortable(),this.initialized=!1}getText=e=>{let t=\"\";if(this._dropArea.hasChildNodes()){let n=this._dropArea.firstChild;for(t+=this._getTextFromBlock(n);n.nextSibling;)n=n.nextSibling,t+=e?\" \":\"\",t+=this._getTextFromBlock(n);return t}return t};getBlockIndices=()=>{const e=this._dropArea.querySelectorAll(\".parsons-block\");return Array.from(e).map((e=>parseInt(e.dataset.index||\"-1\")))};_getTextFromBlock=e=>{if(\"raw\"==this.parentElement.language)return e.innerHTML;if(!e.lastChild||e.lastChild.nodeType!=Node.ELEMENT_NODE)return e.textContent||\"\";const t=e.lastChild.classList.contains(\"parsons-tooltip\")&&e.lastChild.textContent?.length||0;return t>0?(e.textContent||\"\").slice(0,-t):e.textContent||\"\"};shuffleArray(e){for(let t=e.length-1;t>0;t--){let n=Math.floor(Math.random()*(t+1)),r=e[t];e[t]=e[n],e[n]=r}}setSourceBlocks=(e,t)=>{this.blockOrder=[];for(let t=0;t{for(;this._dragArea.firstChild;)this._dragArea.removeChild(this._dragArea.firstChild);for(;this._dropArea.firstChild;)this._dropArea.removeChild(this._dropArea.firstChild);for(let e=0;e{this._onBlockClicked(t,e)},this.storedSourceBlockExplanations&&this.storedSourceBlockExplanations[this.blockOrder[e]]){const n=document.createElement(\"div\");n.innerText=this.storedSourceBlockExplanations[this.blockOrder[e]],n.classList.add(\"parsons-tooltip\"),t.appendChild(n)}}};_onBlockClicked=(e,t)=>{if(e.parentElement==this._dragArea){let n;if(this.reusable){const t=e.cloneNode(!0);t.onclick=e=>this._onBlockClicked(t,e),this._dropArea.appendChild(t),n=this._getBlockPosition(t)}else this._dropArea.appendChild(e),n=this._getBlockPosition(e);const r={type:\"input\",action:Je.InputAction.ADD,position:[-1,n],answer:this._getTextArray()};t.isTrusted&&this.parentElement.logEvent(r)}else{const t=this._getBlockPosition(e);this.reusable?this._dropArea.removeChild(e):this._dragArea.appendChild(e);const n={type:\"input\",action:Je.InputAction.REMOVE,position:[t,-1],answer:this._getTextArray()};this.parentElement.logEvent(n)}};_initSortable=()=>{this.reusable?(this._dragSortable=new Re(this._dragArea,{group:{name:\"shared\",pull:\"clone\",put:!1},sort:!1,direction:\"horizontal\",animation:150,draggable:\".parsons-block\",onClone:e=>{const t=e.clone;t.onclick=e=>this._onBlockClicked(t,e)}}),this._dropSortable=new Re(this._dropArea,{group:\"shared\",direction:\"horizontal\",animation:150,draggable:\".parsons-block\",onAdd:e=>{const t={type:\"input\",action:Je.InputAction.ADD,position:[-1,this._getBlockPosition(e.item)],answer:this._getTextArray()};this.parentElement.logEvent(t)},onStart:e=>{this._prevPosition=this._getBlockPosition(e.item)},onEnd:e=>{let t,n=Je.InputAction.MOVE;const r=this._dropArea.getBoundingClientRect().top,o=this._dropArea.getBoundingClientRect().bottom;if(e.originalEvent.clientY>o||e.originalEvent.clientY{const t={type:\"input\",action:Je.InputAction.ADD,position:[-1,this._getBlockPosition(e.item)],answer:this._getTextArray()};this.parentElement.logEvent(t)},onStart:e=>{this._prevPosition=this._getBlockPosition(e.item)},onEnd:e=>{let t=this._getBlockPosition(e.item);const n={type:\"input\",action:-1==t?Je.InputAction.REMOVE:Je.InputAction.MOVE,position:[this._prevPosition,t],answer:this._getTextArray()};this.parentElement.logEvent(n)}}))};updateTestStatus=e=>{this._dropArea.classList.contains(e)||(this._dropArea.classList.contains(\"Pass\")?this._dropArea.classList.remove(\"Pass\"):this._dropArea.classList.contains(\"Fail\")?this._dropArea.classList.remove(\"Fail\"):this._dropArea.classList.contains(\"Error\")&&this._dropArea.classList.remove(\"Error\"),this._dropArea.classList.add(e))};_getBlockPosition=e=>{let t=-1;const n=this._dropArea;if(n)for(t=0;t{let e=[];if(this._dropArea.hasChildNodes()){let t=this._dropArea.firstChild;for(e.push(this._getTextFromBlock(t));t.nextSibling;)t=t.nextSibling,e.push(this._getTextFromBlock(t))}return e};removeFormat=()=>{if(this._dropArea.hasChildNodes()){let e=this._dropArea.firstChild;for(e.style.removeProperty(\"background-color\");e.nextSibling;)e=e.nextSibling,e.style.removeProperty(\"background-color\")}};resetInput=()=>{if(this.reusable)for(;this._dropArea.firstChild;)this._dropArea.removeChild(this._dropArea.firstChild);else this._resetInput()};restoreAnswer(e){this.resetInput();const t=/^\\s+$/;for(let n=0;n\",o=\"\",i={begin:/<[A-Za-z0-9\\\\._:-]+/,end:/\\/[A-Za-z0-9\\\\._:-]+>|\\/>/,isTrulyOpeningTag:(e,t)=>{const n=e[0].length+e.index,r=e.input[n];if(\"<\"===r||\",\"===r)return void t.ignoreMatch();let o;\">\"===r&&(((e,{after:t})=>{const n=\"\",O={match:[/const|var|let/,/\\s+/,n,/\\s*/,/=\\s*/,/(async\\s*)?/,t.lookahead(k)],keywords:\"async\",className:{1:\"keyword\",3:\"title.function\"},contains:[_]};return{name:\"Javascript\",aliases:[\"js\",\"jsx\",\"mjs\",\"cjs\"],keywords:a,exports:{PARAMS_CONTAINS:v,CLASS_REFERENCE:E},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:\"shebang\",binary:\"node\",relevance:5}),{label:\"use_strict\",className:\"meta\",relevance:10,begin:/^\\s*['\"]use (strict|asm)['\"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,h,g,p,f,{match:/\\$\\d+/},d,E,{className:\"attr\",begin:n+t.lookahead(\":\"),relevance:0},O,{begin:\"(\"+e.RE_STARTERS_RE+\"|\\\\b(case|return|throw)\\\\b)\\\\s*\",keywords:\"return throw case\",relevance:0,contains:[f,e.REGEXP_MODE,{className:\"function\",begin:k,returnBegin:!0,end:\"\\\\s*=>\",contains:[{className:\"params\",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\\(\\s*\\)/,skip:!0},{begin:/\\(/,end:/\\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:v}]}]},{begin:/,/,relevance:0},{match:/\\s+/,relevance:0},{variants:[{begin:r,end:o},{match:/<[A-Za-z0-9\\\\._:-]+\\s*\\/>/},{begin:i.begin,\"on:begin\":i.isTrulyOpeningTag,end:i.end}],subLanguage:\"xml\",contains:[{begin:i.begin,end:i.end,skip:!0,contains:[\"self\"]}]}]},w,{beginKeywords:\"while if switch catch for\"},{begin:\"\\\\b(?!function)\"+e.UNDERSCORE_IDENT_RE+\"\\\\([^()]*(\\\\([^()]*(\\\\([^()]*\\\\)[^()]*)*\\\\)[^()]*)*\\\\)\\\\s*\\\\{\",returnBegin:!0,label:\"func.def\",contains:[_,e.inherit(e.TITLE_MODE,{begin:n,className:\"title.function\"})]},{match:/\\.\\.\\./,relevance:0},A,{match:\"\\\\$\"+n,relevance:0},{match:[/\\bconstructor(?=\\s*\\()/],className:{1:\"title.function\"},contains:[_]},x,{relevance:0,match:/\\b[A-Z][A-Z_0-9]+\\b/,className:\"variable.constant\"},y,N,{match:/\\$[(.]/}]}};var An=function(e){const t=e.regex,n=/[\\p{XID_Start}_]\\p{XID_Continue}*/u,r=[\"and\",\"as\",\"assert\",\"async\",\"await\",\"break\",\"case\",\"class\",\"continue\",\"def\",\"del\",\"elif\",\"else\",\"except\",\"finally\",\"for\",\"from\",\"global\",\"if\",\"import\",\"in\",\"is\",\"lambda\",\"match\",\"nonlocal|10\",\"not\",\"or\",\"pass\",\"raise\",\"return\",\"try\",\"while\",\"with\",\"yield\"],o={$pattern:/[A-Za-z]\\w+|__\\w+__/,keyword:r,built_in:[\"__import__\",\"abs\",\"all\",\"any\",\"ascii\",\"bin\",\"bool\",\"breakpoint\",\"bytearray\",\"bytes\",\"callable\",\"chr\",\"classmethod\",\"compile\",\"complex\",\"delattr\",\"dict\",\"dir\",\"divmod\",\"enumerate\",\"eval\",\"exec\",\"filter\",\"float\",\"format\",\"frozenset\",\"getattr\",\"globals\",\"hasattr\",\"hash\",\"help\",\"hex\",\"id\",\"input\",\"int\",\"isinstance\",\"issubclass\",\"iter\",\"len\",\"list\",\"locals\",\"map\",\"max\",\"memoryview\",\"min\",\"next\",\"object\",\"oct\",\"open\",\"ord\",\"pow\",\"print\",\"property\",\"range\",\"repr\",\"reversed\",\"round\",\"set\",\"setattr\",\"slice\",\"sorted\",\"staticmethod\",\"str\",\"sum\",\"super\",\"tuple\",\"type\",\"vars\",\"zip\"],literal:[\"__debug__\",\"Ellipsis\",\"False\",\"None\",\"NotImplemented\",\"True\"],type:[\"Any\",\"Callable\",\"Coroutine\",\"Dict\",\"List\",\"Literal\",\"Generic\",\"Optional\",\"Sequence\",\"Set\",\"Tuple\",\"Type\",\"Union\"]},i={className:\"meta\",begin:/^(>>>|\\.\\.\\.) /},a={className:\"subst\",begin:/\\{/,end:/\\}/,keywords:o,illegal:/#/},s={begin:/\\{\\{/,relevance:0},l={className:\"string\",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,i],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?\"\"\"/,end:/\"\"\"/,contains:[e.BACKSLASH_ESCAPE,i],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,i,s,a]},{begin:/([fF][rR]|[rR][fF]|[fF])\"\"\"/,end:/\"\"\"/,contains:[e.BACKSLASH_ESCAPE,i,s,a]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])\"/,end:/\"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])\"/,end:/\"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,s,a]},{begin:/([fF][rR]|[rR][fF]|[fF])\"/,end:/\"/,contains:[e.BACKSLASH_ESCAPE,s,a]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},c=\"[0-9](_?[0-9])*\",d=`(\\\\b(${c}))?\\\\.(${c})|\\\\b(${c})\\\\.`,u=`\\\\b|${r.join(\"|\")}`,h={className:\"number\",relevance:0,variants:[{begin:`(\\\\b(${c})|(${d}))[eE][+-]?(${c})[jJ]?(?=${u})`},{begin:`(${d})[jJ]?`},{begin:`\\\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${u})`},{begin:`\\\\b0[bB](_?[01])+[lL]?(?=${u})`},{begin:`\\\\b0[oO](_?[0-7])+[lL]?(?=${u})`},{begin:`\\\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${u})`},{begin:`\\\\b(${c})[jJ](?=${u})`}]},g={className:\"comment\",begin:t.lookahead(/# type:/),end:/$/,keywords:o,contains:[{begin:/# type:/},{begin:/#/,end:/\\b\\B/,endsWithParent:!0}]},p={className:\"params\",variants:[{className:\"\",begin:/\\(\\s*\\)/,skip:!0},{begin:/\\(/,end:/\\)/,excludeBegin:!0,excludeEnd:!0,keywords:o,contains:[\"self\",i,h,l,e.HASH_COMMENT_MODE]}]};return a.contains=[l,h,i],{name:\"Python\",aliases:[\"py\",\"gyp\",\"ipython\"],unicodeRegex:!0,keywords:o,illegal:/(<\\/|->|\\?)|=>/,contains:[i,h,{begin:/\\bself\\b/},{beginKeywords:\"if\",relevance:0},l,g,e.HASH_COMMENT_MODE,{match:[/\\bdef/,/\\s+/,n],scope:{1:\"keyword\",3:\"title.function\"},contains:[p]},{variants:[{match:[/\\bclass/,/\\s+/,n,/\\s*/,/\\(\\s*/,n,/\\s*\\)/]},{match:[/\\bclass/,/\\s+/,n]}],scope:{1:\"keyword\",3:\"title.class\",6:\"title.class.inherited\"}},{className:\"meta\",begin:/^[\\t ]*@/,end:/(?=#)|$/,contains:[h,p,l]}]}},Nn=\"[0-9](_*[0-9])*\",kn=`\\\\.(${Nn})`,On=\"[0-9a-fA-F](_*[0-9a-fA-F])*\",Tn={className:\"number\",variants:[{begin:`(\\\\b(${Nn})((${kn})|\\\\.)?|(${kn}))[eE][+-]?(${Nn})[fFdD]?\\\\b`},{begin:`\\\\b(${Nn})((${kn})[fFdD]?\\\\b|\\\\.([fFdD]\\\\b)?)`},{begin:`(${kn})[fFdD]?\\\\b`},{begin:`\\\\b(${Nn})[fFdD]\\\\b`},{begin:`\\\\b0[xX]((${On})\\\\.?|(${On})?\\\\.(${On}))[pP][+-]?(${Nn})[fFdD]?\\\\b`},{begin:\"\\\\b(0|[1-9](_*[0-9])*)[lL]?\\\\b\"},{begin:`\\\\b0[xX](${On})[lL]?\\\\b`},{begin:\"\\\\b0(_*[0-7])*[lL]?\\\\b\"},{begin:\"\\\\b0[bB][01](_*[01])*[lL]?\\\\b\"}],relevance:0};function Cn(e,t,n){return-1===n?\"\":e.replace(t,(r=>Cn(e,t,n-1)))}var Dn=function(e){const t=e.regex,n=\"[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*\",r=n+Cn(\"(?:<\"+n+\"~~~(?:\\\\s*,\\\\s*\"+n+\"~~~)*>)?\",/~~~/g,2),o={keyword:[\"synchronized\",\"abstract\",\"private\",\"var\",\"static\",\"if\",\"const \",\"for\",\"while\",\"strictfp\",\"finally\",\"protected\",\"import\",\"native\",\"final\",\"void\",\"enum\",\"else\",\"break\",\"transient\",\"catch\",\"instanceof\",\"volatile\",\"case\",\"assert\",\"package\",\"default\",\"public\",\"try\",\"switch\",\"continue\",\"throws\",\"protected\",\"public\",\"private\",\"module\",\"requires\",\"exports\",\"do\",\"sealed\",\"yield\",\"permits\"],literal:[\"false\",\"true\",\"null\"],type:[\"char\",\"boolean\",\"long\",\"float\",\"int\",\"byte\",\"short\",\"double\"],built_in:[\"super\",\"this\"]},i={className:\"meta\",begin:\"@\"+n,contains:[{begin:/\\(/,end:/\\)/,contains:[\"self\"]}]},a={className:\"params\",begin:/\\(/,end:/\\)/,keywords:o,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:\"Java\",aliases:[\"jsp\"],keywords:o,illegal:/<\\/|#/,contains:[e.COMMENT(\"/\\\\*\\\\*\",\"\\\\*/\",{relevance:0,contains:[{begin:/\\w+@/,relevance:0},{className:\"doctag\",begin:\"@[A-Za-z]+\"}]}),{begin:/import java\\.[a-z]+\\./,keywords:\"import\",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/\"\"\"/,end:/\"\"\"/,className:\"string\",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\\b(?:class|interface|enum|extends|implements|new)/,/\\s+/,n],className:{1:\"keyword\",3:\"title.class\"}},{match:/non-sealed/,scope:\"keyword\"},{begin:[t.concat(/(?!else)/,n),/\\s+/,n,/\\s+/,/=(?!=)/],className:{1:\"type\",3:\"variable\",5:\"operator\"}},{begin:[/record/,/\\s+/,n],className:{1:\"keyword\",3:\"title.class\"},contains:[a,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:\"new throw return else\",relevance:0},{begin:[\"(?:\"+r+\"\\\\s+)\",e.UNDERSCORE_IDENT_RE,/\\s*(?=\\()/],className:{2:\"title.function\"},keywords:o,contains:[{className:\"params\",begin:/\\(/,end:/\\)/,keywords:o,relevance:0,contains:[i,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,Tn,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},Tn,i]}};var Mn=function(e){const t=e.regex,n=e.COMMENT(\"--\",\"$\"),r=[\"true\",\"false\",\"unknown\"],o=[\"bigint\",\"binary\",\"blob\",\"boolean\",\"char\",\"character\",\"clob\",\"date\",\"dec\",\"decfloat\",\"decimal\",\"float\",\"int\",\"integer\",\"interval\",\"nchar\",\"nclob\",\"national\",\"numeric\",\"real\",\"row\",\"smallint\",\"time\",\"timestamp\",\"varchar\",\"varying\",\"varbinary\"],i=[\"abs\",\"acos\",\"array_agg\",\"asin\",\"atan\",\"avg\",\"cast\",\"ceil\",\"ceiling\",\"coalesce\",\"corr\",\"cos\",\"cosh\",\"count\",\"covar_pop\",\"covar_samp\",\"cume_dist\",\"dense_rank\",\"deref\",\"element\",\"exp\",\"extract\",\"first_value\",\"floor\",\"json_array\",\"json_arrayagg\",\"json_exists\",\"json_object\",\"json_objectagg\",\"json_query\",\"json_table\",\"json_table_primitive\",\"json_value\",\"lag\",\"last_value\",\"lead\",\"listagg\",\"ln\",\"log\",\"log10\",\"lower\",\"max\",\"min\",\"mod\",\"nth_value\",\"ntile\",\"nullif\",\"percent_rank\",\"percentile_cont\",\"percentile_disc\",\"position\",\"position_regex\",\"power\",\"rank\",\"regr_avgx\",\"regr_avgy\",\"regr_count\",\"regr_intercept\",\"regr_r2\",\"regr_slope\",\"regr_sxx\",\"regr_sxy\",\"regr_syy\",\"row_number\",\"sin\",\"sinh\",\"sqrt\",\"stddev_pop\",\"stddev_samp\",\"substring\",\"substring_regex\",\"sum\",\"tan\",\"tanh\",\"translate\",\"translate_regex\",\"treat\",\"trim\",\"trim_array\",\"unnest\",\"upper\",\"value_of\",\"var_pop\",\"var_samp\",\"width_bucket\"],a=[\"create table\",\"insert into\",\"primary key\",\"foreign key\",\"not null\",\"alter table\",\"add constraint\",\"grouping sets\",\"on overflow\",\"character set\",\"respect nulls\",\"ignore nulls\",\"nulls first\",\"nulls last\",\"depth first\",\"breadth first\"],s=i,l=[\"abs\",\"acos\",\"all\",\"allocate\",\"alter\",\"and\",\"any\",\"are\",\"array\",\"array_agg\",\"array_max_cardinality\",\"as\",\"asensitive\",\"asin\",\"asymmetric\",\"at\",\"atan\",\"atomic\",\"authorization\",\"avg\",\"begin\",\"begin_frame\",\"begin_partition\",\"between\",\"bigint\",\"binary\",\"blob\",\"boolean\",\"both\",\"by\",\"call\",\"called\",\"cardinality\",\"cascaded\",\"case\",\"cast\",\"ceil\",\"ceiling\",\"char\",\"char_length\",\"character\",\"character_length\",\"check\",\"classifier\",\"clob\",\"close\",\"coalesce\",\"collate\",\"collect\",\"column\",\"commit\",\"condition\",\"connect\",\"constraint\",\"contains\",\"convert\",\"copy\",\"corr\",\"corresponding\",\"cos\",\"cosh\",\"count\",\"covar_pop\",\"covar_samp\",\"create\",\"cross\",\"cube\",\"cume_dist\",\"current\",\"current_catalog\",\"current_date\",\"current_default_transform_group\",\"current_path\",\"current_role\",\"current_row\",\"current_schema\",\"current_time\",\"current_timestamp\",\"current_path\",\"current_role\",\"current_transform_group_for_type\",\"current_user\",\"cursor\",\"cycle\",\"date\",\"day\",\"deallocate\",\"dec\",\"decimal\",\"decfloat\",\"declare\",\"default\",\"define\",\"delete\",\"dense_rank\",\"deref\",\"describe\",\"deterministic\",\"disconnect\",\"distinct\",\"double\",\"drop\",\"dynamic\",\"each\",\"element\",\"else\",\"empty\",\"end\",\"end_frame\",\"end_partition\",\"end-exec\",\"equals\",\"escape\",\"every\",\"except\",\"exec\",\"execute\",\"exists\",\"exp\",\"external\",\"extract\",\"false\",\"fetch\",\"filter\",\"first_value\",\"float\",\"floor\",\"for\",\"foreign\",\"frame_row\",\"free\",\"from\",\"full\",\"function\",\"fusion\",\"get\",\"global\",\"grant\",\"group\",\"grouping\",\"groups\",\"having\",\"hold\",\"hour\",\"identity\",\"in\",\"indicator\",\"initial\",\"inner\",\"inout\",\"insensitive\",\"insert\",\"int\",\"integer\",\"intersect\",\"intersection\",\"interval\",\"into\",\"is\",\"join\",\"json_array\",\"json_arrayagg\",\"json_exists\",\"json_object\",\"json_objectagg\",\"json_query\",\"json_table\",\"json_table_primitive\",\"json_value\",\"lag\",\"language\",\"large\",\"last_value\",\"lateral\",\"lead\",\"leading\",\"left\",\"like\",\"like_regex\",\"listagg\",\"ln\",\"local\",\"localtime\",\"localtimestamp\",\"log\",\"log10\",\"lower\",\"match\",\"match_number\",\"match_recognize\",\"matches\",\"max\",\"member\",\"merge\",\"method\",\"min\",\"minute\",\"mod\",\"modifies\",\"module\",\"month\",\"multiset\",\"national\",\"natural\",\"nchar\",\"nclob\",\"new\",\"no\",\"none\",\"normalize\",\"not\",\"nth_value\",\"ntile\",\"null\",\"nullif\",\"numeric\",\"octet_length\",\"occurrences_regex\",\"of\",\"offset\",\"old\",\"omit\",\"on\",\"one\",\"only\",\"open\",\"or\",\"order\",\"out\",\"outer\",\"over\",\"overlaps\",\"overlay\",\"parameter\",\"partition\",\"pattern\",\"per\",\"percent\",\"percent_rank\",\"percentile_cont\",\"percentile_disc\",\"period\",\"portion\",\"position\",\"position_regex\",\"power\",\"precedes\",\"precision\",\"prepare\",\"primary\",\"procedure\",\"ptf\",\"range\",\"rank\",\"reads\",\"real\",\"recursive\",\"ref\",\"references\",\"referencing\",\"regr_avgx\",\"regr_avgy\",\"regr_count\",\"regr_intercept\",\"regr_r2\",\"regr_slope\",\"regr_sxx\",\"regr_sxy\",\"regr_syy\",\"release\",\"result\",\"return\",\"returns\",\"revoke\",\"right\",\"rollback\",\"rollup\",\"row\",\"row_number\",\"rows\",\"running\",\"savepoint\",\"scope\",\"scroll\",\"search\",\"second\",\"seek\",\"select\",\"sensitive\",\"session_user\",\"set\",\"show\",\"similar\",\"sin\",\"sinh\",\"skip\",\"smallint\",\"some\",\"specific\",\"specifictype\",\"sql\",\"sqlexception\",\"sqlstate\",\"sqlwarning\",\"sqrt\",\"start\",\"static\",\"stddev_pop\",\"stddev_samp\",\"submultiset\",\"subset\",\"substring\",\"substring_regex\",\"succeeds\",\"sum\",\"symmetric\",\"system\",\"system_time\",\"system_user\",\"table\",\"tablesample\",\"tan\",\"tanh\",\"then\",\"time\",\"timestamp\",\"timezone_hour\",\"timezone_minute\",\"to\",\"trailing\",\"translate\",\"translate_regex\",\"translation\",\"treat\",\"trigger\",\"trim\",\"trim_array\",\"true\",\"truncate\",\"uescape\",\"union\",\"unique\",\"unknown\",\"unnest\",\"update\",\"upper\",\"user\",\"using\",\"value\",\"values\",\"value_of\",\"var_pop\",\"var_samp\",\"varbinary\",\"varchar\",\"varying\",\"versioning\",\"when\",\"whenever\",\"where\",\"width_bucket\",\"window\",\"with\",\"within\",\"without\",\"year\",\"add\",\"asc\",\"collation\",\"desc\",\"final\",\"first\",\"last\",\"view\"].filter((e=>!i.includes(e))),c={begin:t.concat(/\\b/,t.either(...s),/\\s*\\(/),relevance:0,keywords:{built_in:s}};return{name:\"SQL\",case_insensitive:!0,illegal:/[{}]|<\\//,keywords:{$pattern:/\\b[\\w\\.]+/,keyword:function(e,{exceptions:t,when:n}={}){const r=n;return t=t||[],e.map((e=>e.match(/\\|\\d+$/)||t.includes(e)?e:r(e)?`${e}|0`:e))}(l,{when:e=>e.length<3}),literal:r,type:o,built_in:[\"current_catalog\",\"current_date\",\"current_default_transform_group\",\"current_path\",\"current_role\",\"current_schema\",\"current_transform_group_for_type\",\"current_user\",\"session_user\",\"system_time\",\"system_user\",\"current_time\",\"localtime\",\"current_timestamp\",\"localtimestamp\"]},contains:[{begin:t.either(...a),relevance:0,keywords:{$pattern:/[\\w\\.]+/,keyword:l.concat(a),literal:r,type:o}},{className:\"type\",begin:t.either(\"double precision\",\"large object\",\"with timezone\",\"without timezone\")},c,{className:\"variable\",begin:/@[a-z0-9]+/},{className:\"string\",variants:[{begin:/'/,end:/'/,contains:[{begin:/''/}]}]},{begin:/\"/,end:/\"/,contains:[{begin:/\"\"/}]},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,{className:\"operator\",begin:/[-+*/=%^~]|&&?|\\|\\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0}]}};var In=function(e){const t=e.regex,n=t.concat(/[\\p{L}_]/u,t.optional(/[\\p{L}0-9_.-]*:/u),/[\\p{L}0-9_.-]*/u),r={className:\"symbol\",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\\s/,contains:[{className:\"keyword\",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\\n/}]},i=e.inherit(o,{begin:/\\(/,end:/\\)/}),a=e.inherit(e.APOS_STRING_MODE,{className:\"string\"}),s=e.inherit(e.QUOTE_STRING_MODE,{className:\"string\"}),l={endsWithParent:!0,illegal:/`]+/}]}]}]};return{name:\"HTML, XML\",aliases:[\"html\",\"xhtml\",\"rss\",\"atom\",\"xjb\",\"xsd\",\"xsl\",\"plist\",\"wsf\",\"svg\"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:\"meta\",begin://,relevance:10,contains:[o,s,a,i,{begin:/\\[/,end:/\\]/,contains:[{className:\"meta\",begin://,contains:[o,i,s,a]}]}]},e.COMMENT(//,{relevance:10}),{begin://,relevance:10},r,{className:\"meta\",end:/\\?>/,variants:[{begin:/<\\?xml/,relevance:10,contains:[s]},{begin:/<\\?[a-z][a-z0-9]+/}]},{className:\"tag\",begin:/)/,end:/>/,keywords:{name:\"style\"},contains:[l],starts:{end:/<\\/style>/,returnEnd:!0,subLanguage:[\"css\",\"xml\"]}},{className:\"tag\",begin:/)/,end:/>/,keywords:{name:\"script\"},contains:[l],starts:{end:/<\\/script>/,returnEnd:!0,subLanguage:[\"javascript\",\"handlebars\",\"xml\"]}},{className:\"tag\",begin:/<>|<\\/>/},{className:\"tag\",begin:t.concat(//,/>/,/\\s/)))),end:/\\/?>/,contains:[{className:\"name\",begin:n,relevance:0,starts:l}]},{className:\"tag\",begin:t.concat(/<\\//,t.lookahead(t.concat(n,/>/))),contains:[{className:\"name\",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}};pn.registerLanguage(\"javascript\",Sn),pn.registerLanguage(\"sql\",Mn),pn.registerLanguage(\"java\",Dn),pn.registerLanguage(\"xml\",In),pn.registerLanguage(\"python\",An);class Bn extends HTMLElement{root;_parsonsData;parsonsExplanation;hparsonsInput;inputType;static toolCount=0;toolNumber;temporaryInputEvent;language;hljsLanguage;codeBefore;codeAfter;constructor(){super(),Bn.toolCount+=1,this.toolNumber=Bn.toolCount,this.root=this;const e=!!this.getAttribute(\"reuse\"),t=!!this.getAttribute(\"randomize\");this.hparsonsInput=new fn(this,e,t),this._parsonsData=new Array,this.parsonsExplanation=null,this.inputType=\"parsons\",this.language=this.getAttribute(\"language\")||\"none\";let n=new Map(Object.entries({html:\"xml\",python:\"python\",javascript:\"javascript\",java:\"java\",sql:\"sql\"}));this.hljsLanguage=n.get(this.language),this.initInput(),this.temporaryInputEvent=null,this.codeBefore=null,this.codeAfter=null}set parsonsData(e){this._parsonsData=e,\"parsons\"==this.inputType&&this.hparsonsInput.setSourceBlocks(e,this.parsonsExplanation)}get parsonsData(){return this._parsonsData}logEvent=e=>{const t=new CustomEvent(\"micro-parsons\",{bubbles:!0,detail:{...e}});this.dispatchEvent(t)};initInput(){this.inputType=\"parsons\",this._parsonsData=new Array,this.parsonsExplanation=null;const e=null!=this.getAttribute(\"reuse\"),t=null!=this.getAttribute(\"randomize\");this.hparsonsInput=new fn(this,e,t),this.root.appendChild(this.hparsonsInput.el)}resetInput(){this.hparsonsInput.resetInput();this.logEvent({type:\"reset\"})}restoreAnswer(e){this.hparsonsInput.restoreAnswer(e)}restoreAnswerByIndices(e){this.hparsonsInput.restoreAnswerByIndices(e)}getCurrentInput(e){return this.hparsonsInput.getText(e)}getParsonsTextArray(){return this.hparsonsInput._getTextArray()}getBlockIndices(){return this.hparsonsInput.getBlockIndices()}setCodeContext(e){if(e.before){let t;this.codeBefore=e.before,this.querySelector(\".context.before\")?t=this.querySelector(\".context.before\"):(t=document.createElement(\"pre\"),t.className=\"context before\",this.querySelector(\".hparsons-input\").insertBefore(t,this.querySelector(\".drop-area\"))),t.innerHTML=this.codeBefore,this.hljsLanguage&&(t.className=\"context before\",t.classList.add(this.hljsLanguage),pn.highlightElement(t))}if(e.after){let t;this.codeAfter=e.after,this.querySelector(\".context.after\")?t=this.querySelector(\".context.after\"):(t=document.createElement(\"pre\"),t.className=\"context after\",this.querySelector(\".hparsons-input\").appendChild(t)),t.innerHTML=this.codeAfter,this.hljsLanguage&&(t.className=\"context after\",t.classList.add(this.hljsLanguage),pn.highlightElement(t))}}}const Rn=e=>{let t;try{t=document.querySelector(e.selector)}catch{throw\"micro-parsons: init: selector error\"}if(null==t||\"DIV\"!=t.tagName)throw\"micro-parsons: element not a div\";const n=-1==[\"javascript\",\"sql\",\"java\",\"html\",\"python\",\"raw\"].indexOf(e.language||\"\")?\"\":`language='${e.language}'`,r=e.id?`id='${e.id}'`:\"\",o=``;t.innerHTML=o;const i=t.firstChild;i.parsonsExplanation=e.parsonsTooltips,i.parsonsData=e.parsonsBlocks,e.context&&i.setCodeContext(e.context)};customElements.define(\"micro-parsons\",Bn);export{Rn as InitMicroParsons,Bn as MicroParsonsElement};\n//# sourceMappingURL=micro-parsons.js.map\n"],"names":["e","t","n","Object","keys","getOwnPropertySymbols","r","filter","getOwnPropertyDescriptor","enumerable","push","apply","arguments","length","o","forEach","getOwnPropertyDescriptors","defineProperties","defineProperty","Symbol","iterator","constructor","prototype","value","configurable","writable","assign","hasOwnProperty","call","this","a","window","navigator","userAgent","match","s","l","c","d","u","h","g","capture","passive","p","addEventListener","f","removeEventListener","m","substring","matches","msMatchesSelector","webkitMatchesSelector","b","host","document","nodeType","parentNode","v","_","y","E","classList","className","replace","w","style","defaultView","getComputedStyle","currentStyle","indexOf","x","DOMMatrix","WebKitCSSMatrix","CSSMatrix","MSCSSMatrix","S","getElementsByTagName","i","A","scrollingElement","documentElement","N","getBoundingClientRect","top","left","bottom","right","height","width","innerHeight","innerWidth","parseInt","k","M","O","children","display","Re","ghost","dragged","draggable","T","lastElementChild","previousElementSibling","C","nodeName","toUpperCase","clone","D","scrollLeft","scrollTop","clientWidth","scrollWidth","clientHeight","scrollHeight","overflowX","overflowY","body","I","Math","round","B","setTimeout","R","L","Polymer","jQuery","Zepto","dom","cloneNode","P","Date","getTime","j","captureAnimationState","options","animation","slice","el","target","rect","thisAnimationDuration","fromRect","addAnimationState","removeAnimationState","splice","Number","animateAll","clearTimeout","prevFromRect","prevToRect","toRect","sqrt","pow","animate","max","animationResetTimer","animationTime","animatingX","animatingY","forRepaintDummy","offsetWidth","easing","animated","$","z","initializeByDefault","F","mount","pluginName","concat","pluginEvent","eventCanceled","cancel","sortable","initializePlugins","defaults","modifyOption","getEventProperties","eventProperties","optionListeners","H","X","evt","propertyIsEnumerable","bind","dragEl","Y","parentEl","K","ghostEl","G","rootEl","W","nextEl","q","lastDownEl","Z","cloneEl","V","cloneHidden","J","dragStarted","ue","putSortable","oe","activeSortable","active","originalEvent","oldIndex","Q","oldDraggableIndex","te","newIndex","ee","newDraggableIndex","ne","hideGhostForTarget","De","unhideGhostForTarget","Me","cloneNowHidden","cloneNowShown","dispatchSortableEvent","U","name","targetEl","toEl","fromEl","extraEventProperties","charAt","substr","CustomEvent","createEvent","initEvent","bubbles","cancelable","to","from","item","pullMode","lastPutMode","dispatchEvent","re","ie","ae","se","le","ce","de","he","ge","pe","fe","me","be","ve","_e","ye","Ee","we","xe","Se","Ae","Ne","ke","createElement","Oe","cssText","pointerEvents","Te","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","marginLeft","marginRight","flexDirection","gridTemplateColumns","split","float","clear","Ce","group","join","checkPull","pull","checkPut","put","revertClone","preventDefault","stopPropagation","stopImmediatePropagation","Ie","touches","clientX","clientY","some","emptyInsertThreshold","_onDragOver","Be","_isOutsideThisEl","toString","sort","disabled","store","handle","test","swapThreshold","invertSwap","invertedSwapThreshold","removeCloneOnHide","direction","ghostClass","chosenClass","dragClass","ignore","preventOnFilter","setData","textContent","dropBubble","dragoverBubble","dataIdAttr","delay","delayOnTouchOnly","touchStartThreshold","devicePixelRatio","forceFallback","fallbackClass","fallbackOnBody","fallbackTolerance","fallbackOffset","supportPointer","nativeDraggable","_onTapStart","get","Le","onMove","draggedRect","related","relatedRect","willInsertAfter","Pe","je","$e","tagName","src","href","charCodeAt","ze","Fe","contains","_getDirection","type","pointerType","shadowRoot","path","composedPath","checked","button","isContentEditable","trim","_prepareDragStart","ownerDocument","nextSibling","_lastX","_lastY","_onDrop","_disableDelayedDragEvents","_triggerDragStart","_disableDelayedDrag","_delayedDragTouchMoveHandler","_dragStartTimer","abs","floor","_onTouchMove","_onDragStart","selection","empty","getSelection","removeAllRanges","_dragStarted","_appendGhost","_nulling","_emulateDragOver","elementFromPoint","appendChild","dataTransfer","_hideClone","cloneId","insertBefore","_loopId","setInterval","effectAllowed","_dragStartId","_ignoreWhileAnimating","nextElementSibling","isOwner","axis","revert","dragRect","targetRect","canSort","fromSortable","completed","changed","insertion","_showClone","_offMoveEvents","_offUpEvents","clearInterval","removeChild","save","handleEvent","dropEffect","toArray","getAttribute","set","closest","option","destroy","Array","querySelectorAll","removeAttribute","utils","on","off","css","find","is","extend","throttle","toggleClass","index","nextTick","cancelNextTick","detectDirection","getChild","create","version","He","Xe","Ue","Ye","Ke","Ge","We","qe","Ze","pid","Ve","Je","Qe","scroll","scrollSensitivity","scrollSpeed","scrollFn","vx","vy","layer","bubbleScroll","et","changedTouches","onSpill","tt","nt","startIndex","dragStart","drop","forceAutoScrollFallback","_handleAutoScroll","_handleFallbackAutoScroll","dragOverCompleted","dragOverBubble","nulling","InputAction","ADD","MOVE","REMOVE","rt","exports","ot","Map","delete","Error","Set","add","freeze","getOwnPropertyNames","isFrozen","default","it","data","isMatchIgnored","ignoreMatch","at","st","lt","scope","sublanguage","language","ct","buffer","classPrefix","walk","addText","openNode","prefix","includes","shift","map","repeat","span","closeNode","dt","ut","rootNode","stack","root","pop","closeAllNodes","toJSON","JSON","stringify","_walk","_collapse","every","ht","super","addKeyword","addSublanguage","toHTML","finalize","gt","source","pt","bt","ft","mt","vt","_t","RegExp","exec","yt","Et","joinWith","String","wt","xt","St","At","Nt","kt","begin","relevance","Ot","end","illegal","Tt","Ct","excludeBegin","Dt","Mt","It","Bt","Rt","Lt","Pt","jt","$t","zt","Ft","__proto__","MATCH_NOTHING_RE","IDENT_RE","UNDERSCORE_IDENT_RE","NUMBER_RE","C_NUMBER_RE","BINARY_NUMBER_RE","RE_STARTERS_RE","SHEBANG","binary","BACKSLASH_ESCAPE","APOS_STRING_MODE","QUOTE_STRING_MODE","PHRASAL_WORDS_MODE","COMMENT","C_LINE_COMMENT_MODE","C_BLOCK_COMMENT_MODE","HASH_COMMENT_MODE","NUMBER_MODE","C_NUMBER_MODE","BINARY_NUMBER_MODE","REGEXP_MODE","TITLE_MODE","UNDERSCORE_TITLE_MODE","METHOD_GUARD","END_SAME_AS_BEGIN","_beginMatch","Ht","input","Xt","Ut","beginKeywords","__beforeBegin","keywords","Yt","isArray","Kt","Gt","Wt","beforeMatch","starts","endsParent","qt","Zt","toLowerCase","Vt","Jt","Qt","console","error","en","log","tn","nn","rn","key","_emit","_multi","beginScope","_wrap","endScope","skip","returnBegin","excludeEnd","returnEnd","an","case_insensitive","unicodeRegex","matchIndexes","regexes","matchAt","position","addRule","compile","matcherRe","lastIndex","findIndex","rules","multiRegexes","count","regexIndex","getMatcher","resumingScanAtSamePosition","considerAll","compilerExtensions","classNameAliases","isCompiled","$pattern","keywordPatternRe","beginRe","endsWithParent","endRe","terminatorEnd","illegalRe","variants","cachedVariants","sn","matcher","rule","ln","html","cn","dn","un","hn","disableAutodetect","ignoreUnescapedHTML","throwUnescapedHTML","noHighlightRe","languageDetectRe","cssSelector","languages","__emitter","ignoreIllegals","code","result","startsWith","subLanguage","_top","_emitter","parent","languageName","badRule","mode","unshift","message","_illegalBy","context","resultSoFar","errorRaised","supersetOf","secondBest","warn","innerHTML","text","readyState","highlight","highlightAuto","highlightAll","highlightElement","highlightBlock","configure","initHighlighting","initHighlightingOnLoad","registerLanguage","rawDefinition","aliases","unregisterLanguage","listLanguages","getLanguage","registerAliases","autoDetection","inherit","addPlugin","block","debugMode","safeMode","versionString","regex","lookahead","either","optional","anyNumberOfTimes","gn","HighlightJS","pn","fn","_dropArea","_dragArea","_dropSortable","_dragSortable","parentElement","_prevPosition","reusable","randomize","storedSourceBlocks","storedSourceBlockExplanations","blockOrder","hljsLanguage","initialized","id","toolNumber","innerText","append","_initSortable","getText","hasChildNodes","firstChild","_getTextFromBlock","getBlockIndices","dataset","lastChild","Node","ELEMENT_NODE","shuffleArray","random","setSourceBlocks","_resetInput","onclick","_onBlockClicked","_getBlockPosition","action","answer","_getTextArray","isTrusted","logEvent","onClone","onAdd","onStart","onEnd","updateTestStatus","remove","childNodes","removeFormat","removeProperty","resetInput","restoreAnswer","click","restoreAnswerByIndices","mn","bn","vn","_n","yn","En","wn","xn","Nn","kn","On","Tn","Cn","isTrulyOpeningTag","after","keyword","literal","built_in","label","PARAMS_CONTAINS","CLASS_REFERENCE","exceptions","when","Bn","HTMLElement","_parsonsData","parsonsExplanation","hparsonsInput","inputType","static","temporaryInputEvent","codeBefore","codeAfter","toolCount","entries","python","javascript","java","sql","initInput","parsonsData","detail","getCurrentInput","getParsonsTextArray","setCodeContext","before","querySelector","Rn","selector","reuse","parsonsTooltips","parsonsBlocks","customElements","define"],"sourceRoot":""} \ No newline at end of file diff --git a/_static/207.a2b404e695486dde.js.map.gz b/_static/207.a2b404e695486dde.js.map.gz new file mode 100755 index 0000000..589944f Binary files /dev/null and b/_static/207.a2b404e695486dde.js.map.gz differ diff --git a/_static/268.60719f20e69f885e.js b/_static/268.60719f20e69f885e.js new file mode 100755 index 0000000..e5bedfc --- /dev/null +++ b/_static/268.60719f20e69f885e.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkWebComponents=self.webpackChunkWebComponents||[]).push([[198,268,294,350,380,621,737,850],{46424:(t,e,i)=>{i.r(e),i.d(e,{default:()=>o});var s=i(78673),n=(i(64466),i(9919),i(48819),i(73565),i(58529),i(56759),i(52420),i(14566));class r extends n.MatchingProblem{constructor(t){super(t),this.renderTimedIcon(this.containerDiv),this.hideButtons(),this.needsReinitialization=!0}hideButtons(){this.gradeBtn.style.display="none",this.helpBtn.style.display="none"}renderTimedIcon(t){var e=document.createElement("div"),i=document.createElement("img");i.src="../_static/clock.png",i.style.width="15px",i.style.height="15px",e.className="timeTip",e.title="",e.appendChild(i),t.prepend(e)}checkCorrectTimed(){switch(this.correct){case!0:return"T";case!1:return"F";default:return null}}hideFeedback(){this.connList.style.display="none"}reinitializeListeners(){}}void 0===window.component_factory&&(window.component_factory={}),window.component_factory.matching=function(t){return t.timed?new r(t):new n.MatchingProblem(t)};var a=i(10662);class o extends s.A{constructor(t){super(t);var e=t.orig;this.origElem=e,this.divid=e.id,this.children=this.origElem.childNodes,this.visited=[],this.timeLimit=0,this.limitedTime=!1,isNaN($(this.origElem).data("time"))||(this.timeLimit=60*parseInt($(this.origElem).data("time"),10),this.startingTime=this.timeLimit,this.limitedTime=!0),this.showFeedback=!0,this.origElem.hasAttribute("data-no-feedback")&&(this.showFeedback=!1),this.origElem.hasAttribute("data-show-feedback")&&("yes"===this.origElem.getAttribute("data-show-feedback")?this.showFeedback=!0:this.showFeedback=!1),this.showResults=!1,this.origElem.hasAttribute("data-result")&&(this.showResults=!1),this.random=!1,this.origElem.hasAttribute("data-random")&&(this.random=!0),this.showTimer=!0,this.origElem.hasAttribute("data-no-timer")&&(this.showTimer=!1),this.origElem.hasAttribute("data-timer")&&("yes"===this.origElem.getAttribute("data-timer")?this.showTimer=!0:this.showTimer=!1),this.fullwidth=!1,this.origElem.hasAttribute("data-fullwidth")&&(this.fullwidth=!0),this.nopause=!1,this.origElem.hasAttribute("data-no-pause")&&(this.nopause=!0),this.origElem.hasAttribute("data-pause")&&("yes"===this.origElem.getAttribute("data-pause")?this.nopause=!1:this.nopause=!0),eBookConfig.enableScratchAC=!1,this.running=0,this.paused=0,this.done=0,this.taken=0,this.score=0,this.incorrect=0,this.correctStr="",this.incorrectStr="",this.skippedStr="",this.skipped=0,this.currentQuestionIndex=0,this.renderedQuestionArray=[],this.getNewChildren(),eBookConfig.enableDebug||(document.body.oncontextmenu=function(){return!1}),this.checkAssessmentStatus().then(function(){this.renderTimedAssess()}.bind(this))}getNewChildren(){this.newChildren=[];let t=this.origElem.querySelectorAll(".runestone");for(var e=0;e1&&this.renderNavControls(),this.renderSubmitButton(),this.renderFeedbackContainer(),this.useRunestoneServices=eBookConfig.useRunestoneServices,$(this.origElem).replaceWith(this.containerDiv),this.styleExamElements(),this.checkServer("timedExam",!0)}disableCutCopyPaste(){document.addEventListener("cut",(function(t){t.preventDefault()})),document.addEventListener("copy",(function(t){t.preventDefault()})),document.addEventListener("paste",(function(t){t.preventDefault()}))}renderContainer(){this.containerDiv=document.createElement("div"),this.fullwidth&&$(this.containerDiv).attr({style:"max-width:none"}),this.containerDiv.classList.add("runestone-sphinx"),this.containerDiv.id=this.divid,this.timedDiv=document.createElement("div"),this.navDiv=document.createElement("div"),$(this.navDiv).attr({style:"text-align:center"}),this.flagDiv=document.createElement("div"),$(this.flagDiv).attr({style:"text-align: center"}),this.switchContainer=document.createElement("div"),this.switchContainer.classList.add("switchcontainer"),this.switchDiv=document.createElement("div"),this.timedDiv.appendChild(this.navDiv),this.timedDiv.appendChild(this.flagDiv),this.timedDiv.appendChild(this.switchContainer),this.switchContainer.appendChild(this.switchDiv),$(this.timedDiv).attr({id:"timed_Test",style:"display:none"})}renderTimer(){this.wrapperDiv=document.createElement("div"),this.timerContainer=document.createElement("P"),this.wrapperDiv.id=this.divid+"-startWrapper",this.timerContainer.id=this.divid+"-output",this.wrapperDiv.appendChild(this.timerContainer),this.showTime()}renderControlButtons(){this.controlDiv=document.createElement("div"),$(this.controlDiv).attr({id:"controls",style:"text-align: center"}),this.startBtn=document.createElement("button"),this.pauseBtn=document.createElement("button"),$(this.startBtn).attr({class:"btn btn-success",id:"start",tabindex:"0",role:"button"}),this.startBtn.textContent="Start",this.startBtn.addEventListener("click",async function(){$(this.finishButton).hide(),$(this.flagButton).show();let t=document.createElement("p");t.innerHTML="Warning: You will not be able to continue the exam if you close this tab, close the window, or navigate away from this page! Make sure you click the Finish Exam button when you are done to submit your work!",this.controlDiv.appendChild(t),t.classList.add("examwarning"),await this.renderTimedQuestion(),this.startAssessment()}.bind(this),!1),$(this.pauseBtn).attr({class:"btn btn-default",id:"pause",disabled:"true",tabindex:"0",role:"button"}),this.pauseBtn.textContent="Pause",this.pauseBtn.addEventListener("click",function(){this.pauseAssessment()}.bind(this),!1),this.taken||this.controlDiv.appendChild(this.startBtn),this.nopause||this.controlDiv.appendChild(this.pauseBtn),this.containerDiv.appendChild(this.wrapperDiv),this.containerDiv.appendChild(this.controlDiv)}renderNavControls(){var t,e;this.pagNavList=document.createElement("ul"),$(this.pagNavList).addClass("pagination"),this.leftContainer=document.createElement("li"),this.leftNavButton=document.createElement("button"),this.leftNavButton.innerHTML="‹ Prev",$(this.leftNavButton).attr("aria-label","Previous"),$(this.leftNavButton).attr("tabindex","0"),$(this.leftNavButton).attr("role","button"),$(this.rightNavButton).attr("id","prev"),$(this.leftNavButton).css("cursor","pointer"),this.leftContainer.appendChild(this.leftNavButton),this.pagNavList.appendChild(this.leftContainer),this.flaggingPlace=document.createElement("ul"),$(this.flaggingPlace).addClass("pagination"),this.flagContainer=document.createElement("li"),this.flagButton=document.createElement("button"),$(this.flagButton).addClass("flagBtn"),this.flagButton.innerHTML="Flag Question",$(this.flagButton).attr("aria-labelledby","Flag"),$(this.flagButton).attr("tabindex","5"),$(this.flagButton).attr("role","button"),$(this.flagButton).attr("id","flag"),$(this.flagButton).css("cursor","pointer"),this.flagContainer.appendChild(this.flagButton),this.flaggingPlace.appendChild(this.flagContainer),this.rightContainer=document.createElement("li"),this.rightNavButton=document.createElement("button"),$(this.rightNavButton).attr("aria-label","Next"),$(this.rightNavButton).attr("tabindex","0"),$(this.rightNavButton).attr("role","button"),$(this.rightNavButton).attr("id","next"),this.rightNavButton.innerHTML="Next ›",$(this.rightNavButton).css("cursor","pointer"),this.rightContainer.appendChild(this.rightNavButton),this.pagNavList.appendChild(this.rightContainer),this.ensureButtonSafety(),this.navDiv.appendChild(this.pagNavList),this.flagDiv.appendChild(this.flaggingPlace),this.break=document.createElement("br"),this.navDiv.appendChild(this.break),this.qNumList=document.createElement("ul"),$(this.qNumList).attr("id","pageNums"),this.qNumWrapperList=document.createElement("ul"),$(this.qNumWrapperList).addClass("pagination");for(var i=0;i ul > li:eq("+this.currentQuestionIndex+")").addClass("broken"),"exam_ended"==this.renderedQuestionArray[this.currentQuestionIndex].state&&$("ul#pageNums > ul > li:eq("+this.currentQuestionIndex+")").addClass("toolate"),this.renderedQuestionArray[this.currentQuestionIndex].question.isAnswered&&($("ul#pageNums > ul > li:eq("+this.currentQuestionIndex+")").addClass("answered"),await this.renderedQuestionArray[this.currentQuestionIndex].question.checkCurrentAnswer(),this.done||await this.renderedQuestionArray[this.currentQuestionIndex].question.logCurrentAnswer())}async handleNextPrev(t){this.taken||await this.navigateAway();var e=$(t.target).text();if(e.match(/Next/)){if($(this.rightContainer).hasClass("disabled"))return;this.currentQuestionIndex++}else if(e.match(/Prev/)){if($(this.leftContainer).hasClass("disabled"))return;this.currentQuestionIndex--}await this.renderTimedQuestion(),this.ensureButtonSafety();for(var i=0;i ul > li:eq("+this.currentQuestionIndex+")").addClass("active"),$("ul#pageNums > ul > li:eq("+this.currentQuestionIndex+")").hasClass("flagcolor")?this.flagButton.innerHTML="Unflag Question":this.flagButton.innerHTML="Flag Question"}async handleFlag(t){$(t.target).text().match(/Flag Question/)?($("ul#pageNums > ul > li:eq("+this.currentQuestionIndex+")").addClass("flagcolor"),this.flagButton.innerHTML="Unflag Question"):($("ul#pageNums > ul > li:eq("+this.currentQuestionIndex+")").removeClass("flagcolor"),this.flagButton.innerHTML="Flag Question")}async handleNumberedNav(t){this.taken||await this.navigateAway();for(var e=0;ethis.renderedQuestionArray.length&&(console.log(`Error: bad index for ${s}`),this.currentQuestionIndex=n),$("ul#pageNums > ul > li:eq("+this.currentQuestionIndex+")").addClass("active"),$("ul#pageNums > ul > li:eq("+this.currentQuestionIndex+")").hasClass("flagcolor")?this.flagButton.innerHTML="Unflag Question":this.flagButton.innerHTML="Flag Question",await this.renderTimedQuestion(),this.ensureButtonSafety()}navBtnListeners(){this.pagNavList.addEventListener("click",this.handleNextPrev.bind(this),!1),this.qNumList.addEventListener("click",this.handleNumberedNav.bind(this),!1)}flagBtnListener(){this.flaggingPlace.addEventListener("click",this.handleFlag.bind(this),!1)}renderSubmitButton(){this.buttonContainer=document.createElement("div"),$(this.buttonContainer).attr({style:"text-align:center"}),this.finishButton=document.createElement("button"),$(this.finishButton).attr({id:"finish",class:"btn btn-primary"}),this.finishButton.textContent="Finish Exam",this.finishButton.addEventListener("click",async function(){let t=this.renderedQuestionArray.filter((t=>!t.question.isAnswered)).length,e=t>0?`You have skipped ${t} question(s).`:"";window.confirm(`${e} Clicking OK means you are ready to submit your answers and are finished with this assessment.`)&&(await this.finishAssessment(),$(this.flagButton).hide())}.bind(this),!1),this.controlDiv.appendChild(this.finishButton),$(this.finishButton).hide(),this.timedDiv.appendChild(this.buttonContainer)}ensureButtonSafety(){0===this.currentQuestionIndex&&(1!=this.renderedQuestionArray.length&&$(this.rightContainer).removeClass("disabled"),$(this.leftContainer).addClass("disabled")),this.currentQuestionIndex>=this.renderedQuestionArray.length-1&&(1!=this.renderedQuestionArray.length&&$(this.leftContainer).removeClass("disabled"),$(this.rightContainer).addClass("disabled")),this.currentQuestionIndex>0&&this.currentQuestionIndexYou have already taken this exam",this.scoreDiv.style.display="block"):(this.scoreDiv.id=this.divid+"results",this.scoreDiv.style.display="none"),this.containerDiv.appendChild(this.scoreDiv)}createRenderedQuestionArray(){for(var t,e=0;e0&&(i=$(i).children("[data-component]")[0],t.orig=i),$(i).is("[data-component]")&&this.renderedQuestionArray.push(t)}}randomizeRQA(){for(var t,e,i=this.renderedQuestionArray.length;0!==i;)e=Math.floor(Math.random()*i),i-=1,t=this.renderedQuestionArray[i],this.renderedQuestionArray[i]=this.renderedQuestionArray[e],this.renderedQuestionArray[e]=t}async renderTimedQuestion(){if(this.currentQuestionIndex>=this.renderedQuestionArray.length)return;let t,e=this.renderedQuestionArray[this.currentQuestionIndex];if("prepared"===e.state||"forreview"===e.state||"broken_exam"===e.state&&e.initAttempts<3){let t=e.orig;if($(t).is("[data-component=selectquestion]"))if(this.done&&"prepared"==e.state)this.renderedQuestionArray[this.currentQuestionIndex].state="exam_ended";else{e.rqa=this.renderedQuestionArray;let t=new a.default(e);this.renderedQuestionArray[this.currentQuestionIndex]={question:t};try{await t.initialize(),"broken_exam"==e.state&&$(`ul#pageNums > ul > li:eq(${this.currentQuestionIndex})`).removeClass("broken")}catch(t){e.state="broken_exam",this.renderedQuestionArray[this.currentQuestionIndex]=e,console.log(`Error initializing question: Details ${t}`)}}else if($(t).is("[data-component]")){let i=$(t).data("component");this.renderedQuestionArray[this.currentQuestionIndex]={question:window.component_factory[i](e),state:e.state}}}else if("broken_exam"===e.state)return;t=this.renderedQuestionArray[this.currentQuestionIndex].question,"forreview"===e.state&&(await t.component_ready_promise,await t.checkCurrentAnswer(),t.renderFeedback(),t.disableInteraction()),this.visited.includes(this.currentQuestionIndex)||(this.visited.push(this.currentQuestionIndex),this.visited.length!==this.renderedQuestionArray.length||this.done||$(this.finishButton).show()),t.containerDiv&&(0==t.containerDiv.classList.contains("runestone")&&t.containerDiv.classList.add("runestone"),$(this.switchDiv).replaceWith(t.containerDiv),this.switchDiv=t.containerDiv),t.needsReinitialization&&t.reinitializeListeners(this.taken)}handlePrevAssessment(){$(this.startBtn).hide(),$(this.pauseBtn).attr("disabled",!0),$(this.finishButton).attr("disabled",!0),this.running=0,this.done=1,this.showResults&&this.showFeedback?($(this.timedDiv).show(),this.restoreAnsweredQuestions()):($(this.pauseBtn).hide(),$(this.timerContainer).hide())}startAssessment(){if(this.taken)this.handlePrevAssessment();else{if($("#relations-next").hide(),$("#relations-prev").hide(),$(this.startBtn).hide(),$(this.pauseBtn).attr("disabled",!1),0===this.running&&0===this.paused){this.running=1,this.lastTime=Date.now(),$(this.timedDiv).show(),this.increment(),this.logBookEvent({event:"timedExam",act:"start",div_id:this.divid});var t=new Date,e={answer:[0,0,this.renderedQuestionArray.length,0],timestamp:t};localStorage.setItem(this.localStorageKey(),JSON.stringify(e))}$(window).on("beforeunload",function(t){if(!this.done)return t.preventDefault(),t.returnValue="Are you sure you want to leave? Your work will be lost! And you will need your instructor to reset the exam!","Are you sure you want to leave? Your work will be lost!"}.bind(this)),window.addEventListener("pagehide",async function(t){this.done||(await this.finishAssessment(),console.log("Exam exited by leaving page"))}.bind(this))}}pauseAssessment(){0===this.done&&(1===this.running?(this.logBookEvent({event:"timedExam",act:"pause",div_id:this.divid}),this.running=0,this.paused=1,this.pauseBtn.innerHTML="Resume",$(this.timedDiv).hide()):(this.logBookEvent({event:"timedExam",act:"resume",div_id:this.divid}),this.running=1,this.paused=0,this.increment(),this.pauseBtn.innerHTML="Pause",$(this.timedDiv).show()))}showTime(){if(this.showTimer){var t=Math.floor(this.timeLimit/60),e=Math.floor(this.timeLimit)%60,i=t,s=e;t<10&&(i="0"+t),e<10&&(s="0"+e);var n="Time Remaining ";this.limitedTime||(n="Time Taken ");var r=n+i+":"+s;if(this.done||this.taken){var a=Math.floor(this.timeTaken/60),o=Math.floor(this.timeTaken%60);a<10&&(a="0"+a),o<10&&(o="0"+o),r="Time taken: "+a+":"+o}this.timerContainer.innerHTML=r;for(var h=document.getElementsByClassName("timeTip"),d=0;d<=h.length-1;d++)h[d].title=r}else $(this.timerContainer).hide()}increment(){1!==this.running||this.taken||setTimeout(function(){let t=Date.now();if(this.limitedTime?this.timeLimit=this.timeLimit-Math.floor((t-this.lastTime)/1e3):this.timeLimit=this.timeLimit+Math.floor((t-this.lastTime)/1e3),this.lastTime=t,localStorage.setItem(eBookConfig.email+":"+this.divid+"-time",this.timeLimit),this.showTime(),this.timeLimit>0)this.increment();else if($(this.startBtn).attr({disabled:"true"}),$(this.finishButton).attr({disabled:"true"}),this.running=0,this.done=1,!this.taken){this.taken=!0;let t=document.createElement("h1");t.innerHTML="Sorry but you ran out of time. Your answers are being submitted",this.controlDiv.appendChild(t),this.finishAssessment()}}.bind(this),1e3)}styleExamElements(){$(this.timerContainer).css({width:"50%",margin:"0 auto","background-color":"#DFF0D8","text-align":"center",border:"2px solid #DFF0D8","border-radius":"25px"}),$(this.scoreDiv).css({width:"50%",margin:"0 auto","background-color":"#DFF0D8","text-align":"center",border:"2px solid #DFF0D8","border-radius":"25px"}),$(".tooltipTime").css({margin:"0",padding:"0","background-color":"black",color:"white"})}async finishAssessment(){$("#relations-next").show(),$("#relations-prev").show(),this.showFeedback||($(this.timedDiv).hide(),$(this.pauseBtn).hide(),$(this.timerContainer).hide()),this.findTimeTaken(),this.running=0,this.done=1,this.taken=1,await this.finalizeProblems(),this.checkScore(),this.displayScore(),this.storeScore(),this.logScore(),$(this.pauseBtn).attr("disabled",!0),this.finishButton.disabled=!0,$(window).off("beforeunload");let t=this.divid;setTimeout((function(){jQuery.ajax({url:eBookConfig.app+"/assignments/student_autograde",type:"POST",dataType:"JSON",data:{assignment_id:t,is_timed:!0},success:function(t){0==t.success?console.log(t.message):console.log("Autograder completed")}})}),2e3)}async finalizeProblems(){var t=this.renderedQuestionArray[this.currentQuestionIndex].question;await t.checkCurrentAnswer(),await t.logCurrentAnswer(),t.renderFeedback(),t.disableInteraction();for(var e=0;e0?this.correctStr=this.correctStr.substring(0,this.correctStr.length-2):this.correctStr="None",this.skippedStr.length>0?this.skippedStr=this.skippedStr.substring(0,this.skippedStr.length-2):this.skippedStr="None",this.incorrectStr.length>0?this.incorrectStr=this.incorrectStr.substring(0,this.incorrectStr.length-2):this.incorrectStr="None"}findTimeTaken(){this.limitedTime?this.timeTaken=this.startingTime-this.timeLimit:this.timeTaken=this.timeLimit}storeScore(){var t=[];t.push(this.score,this.correctStr,this.incorrect,this.incorrectStr,this.skipped,this.skippedStr,this.timeTaken);var e=new Date,i=JSON.stringify({answer:t,timestamp:e});localStorage.setItem(this.localStorageKey(),i)}logScore(){this.logBookEvent({event:"timedExam",act:"finish",div_id:this.divid,correct:this.score,incorrect:this.incorrect,skipped:this.skipped,time_taken:this.timeTaken})}shouldUseServer(t){var e;if(0===localStorage.length)return!0;var i=localStorage.getItem(this.localStorageKey());if(null===i)return!0;try{var s=JSON.parse(i).answer;if(4==s.length){if(t.correct==s[0]&&t.incorrect==s[1]&&t.skipped==s[2]&&t.timeTaken==s[3])return!0}else if(7==s.length&&t.correct==s[0]&&t.incorrect==s[2]&&t.skipped==s[4]&&t.timeTaken==s[6])return!1;e=new Date(JSON.parse(i[1]).timestamp)}catch(t){return console.log(t.message),localStorage.removeItem(this.localStorageKey()),!0}return!(new Date(t.timestamp)0&&null!==localStorage.getItem(this.localStorageKey())?(this.taken=1,this.restoreAnswers("")):this.taken=0}async restoreAnswers(t){var e;if(this.taken=1,""===t){let t,i=!1;try{t=JSON.parse(localStorage.getItem(this.localStorageKey())),e=t.answer}catch(t){console.log(`Error parsing stored Timed data for ${this.divid}: ${t.message}`),i=!0}if(i||t.timestamp0||this.incorrectStr.length>0||this.skippedStr.length>0?(e=`Num Correct: ${this.score}. Questions: ${this.correctStr}
Num Wrong: ${this.incorrect}. Questions: ${this.incorrectStr}
Num Skipped: ${this.skipped}. Questions: ${this.skippedStr}
`,t=this.score+this.incorrect+this.skipped,e+="Percent Correct: "+(this.score/t*100).toFixed(2)+"%",$(this.scoreDiv).html(e),this.scoreDiv.style.display="block"):(e=`Num Correct: ${this.score}
Num Wrong: ${this.incorrect}
Num Skipped: ${this.skipped}
`,t=this.score+this.incorrect+this.skipped,e+="Percent Correct: "+(this.score/t*100).toFixed(2)+"%",$(this.scoreDiv).html(e),this.scoreDiv.style.display="block"),this.highlightNumberedList()}else $(this.scoreDiv).html("Thank you for taking the exam. Your answers have been recorded."),this.scoreDiv.style.display="block"}highlightNumberedList(){var t=this.correctStr,e=this.incorrectStr,i=this.skippedStr;t=t.replace(/ /g,"").split(","),e=e.replace(/ /g,"").split(","),i=i.replace(/ /g,"").split(","),$((function(){var s=$("ul#pageNums > ul > li");s.hasClass("answered")&&s.removeClass("answered");for(var n=0;n 1) this.renderNavControls();\n this.renderSubmitButton();\n this.renderFeedbackContainer();\n this.useRunestoneServices = eBookConfig.useRunestoneServices;\n // Replace intermediate HTML with rendered HTML\n $(this.origElem).replaceWith(this.containerDiv);\n // check if already taken and if so show results\n this.styleExamElements(); // rename to renderPossibleResults\n this.checkServer(\"timedExam\", true);\n }\n\n disableCutCopyPaste() {\n document.addEventListener(\"cut\", function (e) {\n e.preventDefault();\n });\n document.addEventListener(\"copy\", function (e) {\n e.preventDefault();\n });\n document.addEventListener(\"paste\", function (e) {\n e.preventDefault();\n });\n }\n\n renderContainer() {\n this.containerDiv = document.createElement(\"div\"); // container for the entire Timed Component\n if (this.fullwidth) {\n // allow the container to fill the width - barb\n $(this.containerDiv).attr({\n style: \"max-width:none\",\n });\n }\n this.containerDiv.classList.add(\"runestone-sphinx\");\n this.containerDiv.id = this.divid;\n this.timedDiv = document.createElement(\"div\"); // div that will hold the questions for the timed assessment\n this.navDiv = document.createElement(\"div\"); // For navigation control\n $(this.navDiv).attr({\n style: \"text-align:center\",\n });\n this.flagDiv = document.createElement(\"div\"); // div that will hold the \"Flag Question\" button\n $(this.flagDiv).attr({\n style: \"text-align: center\",\n });\n this.switchContainer = document.createElement(\"div\");\n this.switchContainer.classList.add(\"switchcontainer\");\n this.switchDiv = document.createElement(\"div\"); // is replaced by the questions\n this.timedDiv.appendChild(this.navDiv);\n this.timedDiv.appendChild(this.flagDiv); // add flagDiv to timedDiv, which holds components for navigation and questions for timed assessment\n this.timedDiv.appendChild(this.switchContainer);\n this.switchContainer.appendChild(this.switchDiv);\n $(this.timedDiv).attr({\n id: \"timed_Test\",\n style: \"display:none\",\n });\n }\n\n renderTimer() {\n this.wrapperDiv = document.createElement(\"div\");\n this.timerContainer = document.createElement(\"P\");\n this.wrapperDiv.id = this.divid + \"-startWrapper\";\n this.timerContainer.id = this.divid + \"-output\";\n this.wrapperDiv.appendChild(this.timerContainer);\n this.showTime();\n }\n\n renderControlButtons() {\n this.controlDiv = document.createElement(\"div\");\n $(this.controlDiv).attr({\n id: \"controls\",\n style: \"text-align: center\",\n });\n this.startBtn = document.createElement(\"button\");\n this.pauseBtn = document.createElement(\"button\");\n $(this.startBtn).attr({\n class: \"btn btn-success\",\n id: \"start\",\n tabindex: \"0\",\n role: \"button\",\n });\n this.startBtn.textContent = \"Start\";\n this.startBtn.addEventListener(\n \"click\",\n async function () {\n $(this.finishButton).hide(); // hide the finish button for now\n $(this.flagButton).show();\n let mess = document.createElement(\"p\");\n mess.innerHTML =\n \"Warning: You will not be able to continue the exam if you close this tab, close the window, or navigate away from this page! Make sure you click the Finish Exam button when you are done to submit your work!\";\n this.controlDiv.appendChild(mess);\n mess.classList.add(\"examwarning\");\n await this.renderTimedQuestion();\n this.startAssessment();\n }.bind(this),\n false\n );\n $(this.pauseBtn).attr({\n class: \"btn btn-default\",\n id: \"pause\",\n disabled: \"true\",\n tabindex: \"0\",\n role: \"button\",\n });\n this.pauseBtn.textContent = \"Pause\";\n this.pauseBtn.addEventListener(\n \"click\",\n function () {\n this.pauseAssessment();\n }.bind(this),\n false\n );\n if (!this.taken) {\n this.controlDiv.appendChild(this.startBtn);\n }\n if (!this.nopause) {\n this.controlDiv.appendChild(this.pauseBtn);\n }\n this.containerDiv.appendChild(this.wrapperDiv);\n this.containerDiv.appendChild(this.controlDiv);\n }\n\n renderNavControls() {\n // making \"Prev\" button\n this.pagNavList = document.createElement(\"ul\");\n $(this.pagNavList).addClass(\"pagination\");\n this.leftContainer = document.createElement(\"li\");\n this.leftNavButton = document.createElement(\"button\");\n this.leftNavButton.innerHTML = \"‹ Prev\";\n $(this.leftNavButton).attr(\"aria-label\", \"Previous\");\n $(this.leftNavButton).attr(\"tabindex\", \"0\");\n $(this.leftNavButton).attr(\"role\", \"button\");\n $(this.rightNavButton).attr(\"id\", \"prev\");\n $(this.leftNavButton).css(\"cursor\", \"pointer\");\n this.leftContainer.appendChild(this.leftNavButton);\n this.pagNavList.appendChild(this.leftContainer);\n // making \"Flag Question\" button\n this.flaggingPlace = document.createElement(\"ul\");\n $(this.flaggingPlace).addClass(\"pagination\");\n this.flagContainer = document.createElement(\"li\");\n this.flagButton = document.createElement(\"button\");\n $(this.flagButton).addClass(\"flagBtn\");\n this.flagButton.innerHTML = \"Flag Question\"; // name on button\n $(this.flagButton).attr(\"aria-labelledby\", \"Flag\");\n $(this.flagButton).attr(\"tabindex\", \"5\");\n $(this.flagButton).attr(\"role\", \"button\");\n $(this.flagButton).attr(\"id\", \"flag\");\n $(this.flagButton).css(\"cursor\", \"pointer\");\n this.flagContainer.appendChild(this.flagButton); // adding button to container\n this.flaggingPlace.appendChild(this.flagContainer); // adding container to flaggingPlace\n // making \"Next\" button\n this.rightContainer = document.createElement(\"li\");\n this.rightNavButton = document.createElement(\"button\");\n $(this.rightNavButton).attr(\"aria-label\", \"Next\");\n $(this.rightNavButton).attr(\"tabindex\", \"0\");\n $(this.rightNavButton).attr(\"role\", \"button\");\n $(this.rightNavButton).attr(\"id\", \"next\");\n this.rightNavButton.innerHTML = \"Next ›\";\n $(this.rightNavButton).css(\"cursor\", \"pointer\");\n this.rightContainer.appendChild(this.rightNavButton);\n this.pagNavList.appendChild(this.rightContainer);\n this.ensureButtonSafety();\n this.navDiv.appendChild(this.pagNavList);\n this.flagDiv.appendChild(this.flaggingPlace); // adds flaggingPlace to the flagDiv\n this.break = document.createElement(\"br\");\n this.navDiv.appendChild(this.break);\n // render the question number jump buttons\n this.qNumList = document.createElement(\"ul\");\n $(this.qNumList).attr(\"id\", \"pageNums\");\n this.qNumWrapperList = document.createElement(\"ul\");\n $(this.qNumWrapperList).addClass(\"pagination\");\n var tmpLi, tmpA;\n for (var i = 0; i < this.renderedQuestionArray.length; i++) {\n tmpLi = document.createElement(\"li\");\n tmpA = document.createElement(\"a\");\n tmpA.innerHTML = i + 1;\n $(tmpA).css(\"cursor\", \"pointer\");\n if (i === 0) {\n $(tmpLi).addClass(\"active\");\n }\n tmpLi.appendChild(tmpA);\n this.qNumWrapperList.appendChild(tmpLi);\n }\n this.qNumList.appendChild(this.qNumWrapperList);\n this.navDiv.appendChild(this.qNumList);\n this.navBtnListeners();\n this.flagBtnListener(); // listens for click on flag button\n $(this.flagButton).hide();\n }\n\n // when moving off of a question in an active exam:\n // 1. show that the question has been seen, or mark it broken if it is in error.\n // 2. check and log the current answer\n async navigateAway() {\n if (\n this.renderedQuestionArray[this.currentQuestionIndex].state ==\n \"broken_exam\"\n ) {\n $(\n \"ul#pageNums > ul > li:eq(\" + this.currentQuestionIndex + \")\"\n ).addClass(\"broken\");\n }\n if (\n this.renderedQuestionArray[this.currentQuestionIndex].state ==\n \"exam_ended\"\n ) {\n $(\n \"ul#pageNums > ul > li:eq(\" + this.currentQuestionIndex + \")\"\n ).addClass(\"toolate\");\n }\n if (\n this.renderedQuestionArray[this.currentQuestionIndex].question\n .isAnswered\n ) {\n $(\n \"ul#pageNums > ul > li:eq(\" + this.currentQuestionIndex + \")\"\n ).addClass(\"answered\");\n await this.renderedQuestionArray[\n this.currentQuestionIndex\n ].question.checkCurrentAnswer();\n if (!this.done) {\n await this.renderedQuestionArray[\n this.currentQuestionIndex\n ].question.logCurrentAnswer();\n }\n }\n }\n async handleNextPrev(event) {\n if (!this.taken) {\n await this.navigateAway();\n }\n var target = $(event.target).text();\n if (target.match(/Next/)) {\n // checks given text to match \"Next\"\n if ($(this.rightContainer).hasClass(\"disabled\")) {\n return;\n }\n this.currentQuestionIndex++;\n } else if (target.match(/Prev/)) {\n // checks given text to match \"Prev\"\n if ($(this.leftContainer).hasClass(\"disabled\")) {\n return;\n }\n this.currentQuestionIndex--;\n }\n await this.renderTimedQuestion();\n this.ensureButtonSafety();\n for (var i = 0; i < this.qNumList.childNodes.length; i++) {\n for (\n var j = 0;\n j < this.qNumList.childNodes[i].childNodes.length;\n j++\n ) {\n $(this.qNumList.childNodes[i].childNodes[j]).removeClass(\n \"active\"\n );\n }\n }\n $(\n \"ul#pageNums > ul > li:eq(\" + this.currentQuestionIndex + \")\"\n ).addClass(\"active\");\n if (\n $(\n \"ul#pageNums > ul > li:eq(\" + this.currentQuestionIndex + \")\"\n ).hasClass(\"flagcolor\")\n ) {\n // checking for class\n this.flagButton.innerHTML = \"Unflag Question\"; // changes text on button\n } else {\n this.flagButton.innerHTML = \"Flag Question\"; // changes text on button\n }\n }\n\n async handleFlag(event) {\n // called when flag button is clicked\n var target = $(event.target).text();\n if (target.match(/Flag Question/)) {\n $(\n \"ul#pageNums > ul > li:eq(\" + this.currentQuestionIndex + \")\"\n ).addClass(\"flagcolor\"); // class will change color of question block\n this.flagButton.innerHTML = \"Unflag Question\";\n } else {\n $(\n \"ul#pageNums > ul > li:eq(\" + this.currentQuestionIndex + \")\"\n ).removeClass(\"flagcolor\"); // will restore current color of question block\n this.flagButton.innerHTML = \"Flag Question\"; // also sets name back\n }\n }\n\n async handleNumberedNav(event) {\n if (!this.taken) {\n await this.navigateAway();\n }\n for (var i = 0; i < this.qNumList.childNodes.length; i++) {\n for (\n var j = 0;\n j < this.qNumList.childNodes[i].childNodes.length;\n j++\n ) {\n $(this.qNumList.childNodes[i].childNodes[j]).removeClass(\n \"active\"\n );\n }\n }\n\n var target = $(event.target).text();\n let oldIndex = this.currentQuestionIndex;\n this.currentQuestionIndex = parseInt(target) - 1;\n if (this.currentQuestionIndex > this.renderedQuestionArray.length) {\n console.log(`Error: bad index for ${target}`);\n this.currentQuestionIndex = oldIndex;\n }\n $(\n \"ul#pageNums > ul > li:eq(\" + this.currentQuestionIndex + \")\"\n ).addClass(\"active\");\n if (\n $(\n \"ul#pageNums > ul > li:eq(\" + this.currentQuestionIndex + \")\" // checking for flagcolor class\n ).hasClass(\"flagcolor\")\n ) {\n this.flagButton.innerHTML = \"Unflag Question\";\n } else {\n this.flagButton.innerHTML = \"Flag Question\";\n }\n await this.renderTimedQuestion();\n this.ensureButtonSafety();\n }\n\n // set up events for navigation\n navBtnListeners() {\n // Next and Prev Listener\n this.pagNavList.addEventListener(\n \"click\",\n this.handleNextPrev.bind(this),\n false\n );\n\n // Numbered Listener\n this.qNumList.addEventListener(\n \"click\",\n this.handleNumberedNav.bind(this),\n false\n );\n }\n\n // set up event for flag\n flagBtnListener() {\n this.flaggingPlace.addEventListener(\n \"click\",\n this.handleFlag.bind(this), // calls this to take action\n false\n );\n }\n\n renderSubmitButton() {\n this.buttonContainer = document.createElement(\"div\");\n $(this.buttonContainer).attr({\n style: \"text-align:center\",\n });\n this.finishButton = document.createElement(\"button\");\n $(this.finishButton).attr({\n id: \"finish\",\n class: \"btn btn-primary\",\n });\n this.finishButton.textContent = \"Finish Exam\";\n this.finishButton.addEventListener(\n \"click\",\n async function () {\n let skipped =\n this.renderedQuestionArray.filter((x) => !x.question.isAnswered).length;\n let skipstr = skipped > 0 ? `You have skipped ${skipped} question(s).` : \"\";\n if (\n window.confirm(\n `${skipstr} Clicking OK means you are ready to submit your answers and are finished with this assessment.`\n )\n ) {\n await this.finishAssessment();\n $(this.flagButton).hide();\n }\n }.bind(this),\n false\n );\n this.controlDiv.appendChild(this.finishButton);\n $(this.finishButton).hide();\n this.timedDiv.appendChild(this.buttonContainer);\n }\n ensureButtonSafety() {\n if (this.currentQuestionIndex === 0) {\n if (this.renderedQuestionArray.length != 1) {\n $(this.rightContainer).removeClass(\"disabled\");\n }\n $(this.leftContainer).addClass(\"disabled\");\n }\n if (\n this.currentQuestionIndex >=\n this.renderedQuestionArray.length - 1\n ) {\n if (this.renderedQuestionArray.length != 1) {\n $(this.leftContainer).removeClass(\"disabled\");\n }\n $(this.rightContainer).addClass(\"disabled\");\n }\n if (\n this.currentQuestionIndex > 0 &&\n this.currentQuestionIndex < this.renderedQuestionArray.length - 1\n ) {\n $(this.rightContainer).removeClass(\"disabled\");\n $(this.leftContainer).removeClass(\"disabled\");\n }\n }\n renderFeedbackContainer() {\n this.scoreDiv = document.createElement(\"P\");\n if (this.taken) {\n this.scoreDiv.innerHTML = \"

You have already taken this exam

\";\n this.scoreDiv.style.display = \"block\";\n } else {\n this.scoreDiv.id = this.divid + \"results\";\n this.scoreDiv.style.display = \"none\";\n }\n this.containerDiv.appendChild(this.scoreDiv);\n }\n\n createRenderedQuestionArray() {\n // this finds all the assess questions in this timed assessment\n // We need to make a list of all the questions up front so we can set up navigation\n // but we do not want to render the questions until the student has navigated\n // Also adds them to this.renderedQuestionArray\n\n // todo: This needs to be updated to account for the runestone div wrapper.\n\n // To accommodate the selectquestion type -- which is async! we need to wrap\n // all of this in a promise, so that we don't continue to render the timed\n // exam until all of the questions have been realized.\n var opts;\n for (var i = 0; i < this.newChildren.length; i++) {\n var tmpChild = this.newChildren[i];\n opts = {\n state: \"prepared\",\n orig: tmpChild,\n question: {},\n useRunestoneServices: eBookConfig.useRunestoneServices,\n timed: true,\n assessmentTaken: this.taken,\n timedWrapper: this.divid,\n initAttempts: 0,\n };\n if ($(tmpChild).children(\"[data-component]\").length > 0) {\n tmpChild = $(tmpChild).children(\"[data-component]\")[0];\n opts.orig = tmpChild;\n }\n if ($(tmpChild).is(\"[data-component]\")) {\n this.renderedQuestionArray.push(opts);\n }\n }\n }\n\n randomizeRQA() {\n var currentIndex = this.renderedQuestionArray.length,\n temporaryValue,\n randomIndex;\n // While there remain elements to shuffle...\n while (currentIndex !== 0) {\n // Pick a remaining element...\n randomIndex = Math.floor(Math.random() * currentIndex);\n currentIndex -= 1;\n // And swap it with the current element.\n temporaryValue = this.renderedQuestionArray[currentIndex];\n this.renderedQuestionArray[currentIndex] =\n this.renderedQuestionArray[randomIndex];\n this.renderedQuestionArray[randomIndex] = temporaryValue;\n }\n }\n\n async renderTimedQuestion() {\n if (this.currentQuestionIndex >= this.renderedQuestionArray.length) {\n // sometimes the user clicks in the event area for the qNumList\n // But misses a number in that case the text is the concatenation\n // of all the numbers in the list!\n return;\n }\n // check the renderedQuestionArray to see if it has been rendered.\n let opts = this.renderedQuestionArray[this.currentQuestionIndex];\n let currentQuestion;\n if (\n opts.state === \"prepared\" ||\n opts.state === \"forreview\" ||\n (opts.state === \"broken_exam\" && opts.initAttempts < 3)\n ) {\n let tmpChild = opts.orig;\n if ($(tmpChild).is(\"[data-component=selectquestion]\")) {\n if (this.done && opts.state == \"prepared\") {\n this.renderedQuestionArray[\n this.currentQuestionIndex\n ].state = \"exam_ended\";\n } else {\n // SelectOne is async and will replace itself in this array with\n // the actual selected question\n opts.rqa = this.renderedQuestionArray;\n let newq = new SelectOne(opts);\n this.renderedQuestionArray[this.currentQuestionIndex] = {\n question: newq,\n };\n try {\n await newq.initialize();\n if (opts.state == \"broken_exam\") {\n // remove the broken class from this question if we get here.\n $(\n `ul#pageNums > ul > li:eq(${this.currentQuestionIndex})`\n ).removeClass(\"broken\");\n }\n } catch (e) {\n opts.state = \"broken_exam\";\n this.renderedQuestionArray[this.currentQuestionIndex] =\n opts;\n console.log(\n `Error initializing question: Details ${e}`\n );\n }\n }\n } else if ($(tmpChild).is(\"[data-component]\")) {\n let componentKind = $(tmpChild).data(\"component\");\n this.renderedQuestionArray[this.currentQuestionIndex] = {\n question: window.component_factory[componentKind](opts),\n state: opts.state,\n };\n }\n } else if (opts.state === \"broken_exam\") {\n return;\n }\n\n currentQuestion =\n this.renderedQuestionArray[this.currentQuestionIndex].question;\n if (opts.state === \"forreview\") {\n await currentQuestion.component_ready_promise;\n await currentQuestion.checkCurrentAnswer();\n currentQuestion.renderFeedback();\n currentQuestion.disableInteraction();\n }\n\n if (!this.visited.includes(this.currentQuestionIndex)) {\n this.visited.push(this.currentQuestionIndex);\n if (\n this.visited.length === this.renderedQuestionArray.length &&\n !this.done\n ) {\n $(this.finishButton).show();\n }\n }\n\n if (currentQuestion.containerDiv) {\n if (\n currentQuestion.containerDiv.classList.contains(\"runestone\") ==\n false\n ) {\n currentQuestion.containerDiv.classList.add(\"runestone\");\n }\n $(this.switchDiv).replaceWith(currentQuestion.containerDiv);\n this.switchDiv = currentQuestion.containerDiv;\n }\n\n // If the timed component has listeners, those might need to be reinitialized\n // This flag will only be set in the elements that need it--it will be undefined in the others and thus evaluate to false\n if (currentQuestion.needsReinitialization) {\n currentQuestion.reinitializeListeners(this.taken);\n }\n }\n\n /*=================================\n === Timer and control Functions ===\n =================================*/\n handlePrevAssessment() {\n $(this.startBtn).hide();\n $(this.pauseBtn).attr(\"disabled\", true);\n $(this.finishButton).attr(\"disabled\", true);\n this.running = 0;\n this.done = 1;\n // showFeedback sand showResults should both be true before we show the\n // questions and their state of correctness.\n if (this.showResults && this.showFeedback) {\n $(this.timedDiv).show();\n this.restoreAnsweredQuestions(); // do not log these results\n } else {\n $(this.pauseBtn).hide();\n $(this.timerContainer).hide();\n }\n }\n startAssessment() {\n if (!this.taken) {\n $(\"#relations-next\").hide(); // hide the next page button for now\n $(\"#relations-prev\").hide(); // hide the previous button for now\n $(this.startBtn).hide();\n $(this.pauseBtn).attr(\"disabled\", false);\n if (this.running === 0 && this.paused === 0) {\n this.running = 1;\n this.lastTime = Date.now();\n $(this.timedDiv).show();\n this.increment();\n this.logBookEvent({\n event: \"timedExam\",\n act: \"start\",\n div_id: this.divid,\n });\n var timeStamp = new Date();\n var storageObj = {\n answer: [0, 0, this.renderedQuestionArray.length, 0],\n timestamp: timeStamp,\n };\n localStorage.setItem(\n this.localStorageKey(),\n JSON.stringify(storageObj)\n );\n }\n $(window).on(\n \"beforeunload\",\n function (event) {\n // this actual value gets ignored by newer browsers\n if (this.done) {\n return;\n }\n event.preventDefault();\n event.returnValue =\n \"Are you sure you want to leave? Your work will be lost! And you will need your instructor to reset the exam!\";\n return \"Are you sure you want to leave? Your work will be lost!\";\n }.bind(this)\n );\n window.addEventListener(\n \"pagehide\",\n async function (event) {\n if (!this.done) {\n await this.finishAssessment();\n console.log(\"Exam exited by leaving page\");\n }\n }.bind(this)\n );\n } else {\n this.handlePrevAssessment();\n }\n }\n pauseAssessment() {\n if (this.done === 0) {\n if (this.running === 1) {\n this.logBookEvent({\n event: \"timedExam\",\n act: \"pause\",\n div_id: this.divid,\n });\n this.running = 0;\n this.paused = 1;\n this.pauseBtn.innerHTML = \"Resume\";\n $(this.timedDiv).hide();\n } else {\n this.logBookEvent({\n event: \"timedExam\",\n act: \"resume\",\n div_id: this.divid,\n });\n this.running = 1;\n this.paused = 0;\n this.increment();\n this.pauseBtn.innerHTML = \"Pause\";\n $(this.timedDiv).show();\n }\n }\n }\n\n showTime() {\n if (this.showTimer) {\n var mins = Math.floor(this.timeLimit / 60);\n var secs = Math.floor(this.timeLimit) % 60;\n var minsString = mins;\n var secsString = secs;\n if (mins < 10) {\n minsString = \"0\" + mins;\n }\n if (secs < 10) {\n secsString = \"0\" + secs;\n }\n var beginning = \"Time Remaining \";\n if (!this.limitedTime) {\n beginning = \"Time Taken \";\n }\n var timeString = beginning + minsString + \":\" + secsString;\n if (this.done || this.taken) {\n var minutes = Math.floor(this.timeTaken / 60);\n var seconds = Math.floor(this.timeTaken % 60);\n if (minutes < 10) {\n minutes = \"0\" + minutes;\n }\n if (seconds < 10) {\n seconds = \"0\" + seconds;\n }\n timeString = \"Time taken: \" + minutes + \":\" + seconds;\n }\n this.timerContainer.innerHTML = timeString;\n var timeTips = document.getElementsByClassName(\"timeTip\");\n for (var i = 0; i <= timeTips.length - 1; i++) {\n timeTips[i].title = timeString;\n }\n } else {\n $(this.timerContainer).hide();\n }\n }\n\n increment() {\n // if running (not paused) and not taken\n if (this.running === 1 && !this.taken) {\n setTimeout(\n function () {\n // When a browser loses focus, setTimeout may not be called on the\n // schedule expected. Browsers are free to save power by lengthening\n // the interval to some longer time. So we cannot just subtract 1\n // from the timeLimit we need to measure the elapsed time from the last\n // call to the current call and subtract that number of seconds.\n let currentTime = Date.now();\n if (this.limitedTime) {\n // If there's a time limit, count down to 0\n this.timeLimit =\n this.timeLimit -\n Math.floor((currentTime - this.lastTime) / 1000);\n } else {\n // Else count up to keep track of how long it took to complete\n this.timeLimit =\n this.timeLimit +\n Math.floor((currentTime - this.lastTime) / 1000);\n }\n this.lastTime = currentTime;\n localStorage.setItem(\n eBookConfig.email + \":\" + this.divid + \"-time\",\n this.timeLimit\n );\n this.showTime();\n if (this.timeLimit > 0) {\n this.increment();\n // ran out of time\n } else {\n $(this.startBtn).attr({\n disabled: \"true\",\n });\n $(this.finishButton).attr({\n disabled: \"true\",\n });\n this.running = 0;\n this.done = 1;\n if (!this.taken) {\n this.taken = true;\n // embed the message in the page -- an alert actually prevents\n // the answers from being submitted and if a student closes their\n // laptop then the answers will not be submitted ever! Even when they\n // reopen the laptop their session cookie is likely invalid.\n let mess = document.createElement(\"h1\");\n mess.innerHTML =\n \"Sorry but you ran out of time. Your answers are being submitted\";\n this.controlDiv.appendChild(mess);\n this.finishAssessment();\n }\n }\n }.bind(this),\n 1000\n );\n }\n }\n\n styleExamElements() {\n // Checks if this exam has been taken before\n $(this.timerContainer).css({\n width: \"50%\",\n margin: \"0 auto\",\n \"background-color\": \"#DFF0D8\",\n \"text-align\": \"center\",\n border: \"2px solid #DFF0D8\",\n \"border-radius\": \"25px\",\n });\n $(this.scoreDiv).css({\n width: \"50%\",\n margin: \"0 auto\",\n \"background-color\": \"#DFF0D8\",\n \"text-align\": \"center\",\n border: \"2px solid #DFF0D8\",\n \"border-radius\": \"25px\",\n });\n $(\".tooltipTime\").css({\n margin: \"0\",\n padding: \"0\",\n \"background-color\": \"black\",\n color: \"white\",\n });\n }\n\n async finishAssessment() {\n $(\"#relations-next\").show(); // show the next page button for now\n $(\"#relations-prev\").show(); // show the previous button for now\n if (!this.showFeedback) {\n // bje - changed from showResults\n $(this.timedDiv).hide();\n $(this.pauseBtn).hide();\n $(this.timerContainer).hide();\n }\n this.findTimeTaken();\n this.running = 0;\n this.done = 1;\n this.taken = 1;\n await this.finalizeProblems();\n this.checkScore();\n this.displayScore();\n this.storeScore();\n this.logScore();\n $(this.pauseBtn).attr(\"disabled\", true);\n this.finishButton.disabled = true;\n $(window).off(\"beforeunload\");\n // turn off the pagehide listener\n let assignment_id = this.divid;\n setTimeout(function () {\n jQuery.ajax({\n url: eBookConfig.app + \"/assignments/student_autograde\",\n type: \"POST\",\n dataType: \"JSON\",\n data: {\n assignment_id: assignment_id,\n is_timed: true,\n },\n success: function (retdata) {\n if (retdata.success == false) {\n console.log(retdata.message);\n } else {\n console.log(\"Autograder completed\");\n }\n },\n });\n }, 2000);\n }\n\n // finalizeProblems\n // ----------------\n async finalizeProblems() {\n // Because we have submitted each question as we navigate we only need to\n // send the final version of the question the student is on when they press the\n // finish exam button.\n\n var currentQuestion =\n this.renderedQuestionArray[this.currentQuestionIndex].question;\n await currentQuestion.checkCurrentAnswer();\n await currentQuestion.logCurrentAnswer();\n currentQuestion.renderFeedback();\n currentQuestion.disableInteraction();\n\n for (var i = 0; i < this.renderedQuestionArray.length; i++) {\n let currentQuestion = this.renderedQuestionArray[i];\n // set the state to forreview so we know that feedback may be appropriate\n if (currentQuestion.state !== \"broken_exam\") {\n currentQuestion.state = \"forreview\";\n currentQuestion.question.disableInteraction();\n }\n }\n\n if (!this.showFeedback) {\n this.hideTimedFeedback();\n }\n }\n\n // restoreAnsweredQuestions\n // ------------------------\n restoreAnsweredQuestions() {\n for (var i = 0; i < this.renderedQuestionArray.length; i++) {\n var currentQuestion = this.renderedQuestionArray[i];\n if (currentQuestion.state === \"prepared\") {\n currentQuestion.state = \"forreview\";\n }\n }\n }\n\n // hideTimedFeedback\n // -----------------\n hideTimedFeedback() {\n for (var i = 0; i < this.renderedQuestionArray.length; i++) {\n var currentQuestion = this.renderedQuestionArray[i].question;\n currentQuestion.hideFeedback();\n }\n }\n\n // checkScore\n // ----------\n // This is a simple all or nothing score of one point per question for\n // that includes our best guess if a question was skipped.\n checkScore() {\n this.correctStr = \"\";\n this.skippedStr = \"\";\n this.incorrectStr = \"\";\n // Gets the score of each problem\n for (var i = 0; i < this.renderedQuestionArray.length; i++) {\n var correct =\n this.renderedQuestionArray[i].question.checkCorrectTimed();\n if (correct == \"T\") {\n this.score++;\n this.correctStr = this.correctStr + (i + 1) + \", \";\n } else if (correct == \"F\") {\n this.incorrect++;\n this.incorrectStr = this.incorrectStr + (i + 1) + \", \";\n } else if (correct === null || correct === \"I\") {\n this.skipped++;\n this.skippedStr = this.skippedStr + (i + 1) + \", \";\n } else {\n // ignored question; just do nothing\n }\n }\n // remove extra comma and space at end if any\n if (this.correctStr.length > 0)\n this.correctStr = this.correctStr.substring(\n 0,\n this.correctStr.length - 2\n );\n else this.correctStr = \"None\";\n if (this.skippedStr.length > 0)\n this.skippedStr = this.skippedStr.substring(\n 0,\n this.skippedStr.length - 2\n );\n else this.skippedStr = \"None\";\n if (this.incorrectStr.length > 0)\n this.incorrectStr = this.incorrectStr.substring(\n 0,\n this.incorrectStr.length - 2\n );\n else this.incorrectStr = \"None\";\n }\n findTimeTaken() {\n if (this.limitedTime) {\n this.timeTaken = this.startingTime - this.timeLimit;\n } else {\n this.timeTaken = this.timeLimit;\n }\n }\n storeScore() {\n var storage_arr = [];\n storage_arr.push(\n this.score,\n this.correctStr,\n this.incorrect,\n this.incorrectStr,\n this.skipped,\n this.skippedStr,\n this.timeTaken\n );\n var timeStamp = new Date();\n var storageObj = JSON.stringify({\n answer: storage_arr,\n timestamp: timeStamp,\n });\n localStorage.setItem(this.localStorageKey(), storageObj);\n }\n // _`timed exam endpoint parameters`\n //----------------------------------\n logScore() {\n this.logBookEvent({\n event: \"timedExam\",\n act: \"finish\",\n div_id: this.divid,\n correct: this.score,\n incorrect: this.incorrect,\n skipped: this.skipped,\n time_taken: this.timeTaken,\n });\n }\n shouldUseServer(data) {\n // We override the RunestoneBase version because there is no \"correct\" attribute, and there are 2 possible localStorage schemas\n // --we also want to default to local storage because it contains more information specifically which questions are correct, incorrect, and skipped.\n var storageDate;\n if (localStorage.length === 0) return true;\n var storageObj = localStorage.getItem(this.localStorageKey());\n if (storageObj === null) return true;\n try {\n var storedData = JSON.parse(storageObj).answer;\n if (storedData.length == 4) {\n if (\n data.correct == storedData[0] &&\n data.incorrect == storedData[1] &&\n data.skipped == storedData[2] &&\n data.timeTaken == storedData[3]\n )\n return true;\n } else if (storedData.length == 7) {\n if (\n data.correct == storedData[0] &&\n data.incorrect == storedData[2] &&\n data.skipped == storedData[4] &&\n data.timeTaken == storedData[6]\n ) {\n return false; // In this case, because local storage has more info, we want to use that if it's consistent\n }\n }\n storageDate = new Date(JSON.parse(storageObj[1]).timestamp);\n } catch (err) {\n // error while parsing; likely due to bad value stored in storage\n console.log(err.message);\n localStorage.removeItem(this.localStorageKey());\n return true;\n }\n var serverDate = new Date(data.timestamp);\n if (serverDate < storageDate) {\n this.logScore();\n return false;\n }\n return true;\n }\n\n checkLocalStorage() {\n var len = localStorage.length;\n if (len > 0) {\n if (localStorage.getItem(this.localStorageKey()) !== null) {\n this.taken = 1;\n this.restoreAnswers(\"\");\n } else {\n this.taken = 0;\n }\n } else {\n this.taken = 0;\n }\n }\n async restoreAnswers(data) {\n this.taken = 1;\n var tmpArr;\n if (data === \"\") {\n let error = false;\n let storageObj;\n try {\n storageObj = JSON.parse(\n localStorage.getItem(this.localStorageKey())\n );\n tmpArr = storageObj.answer;\n } catch (err) {\n // error while parsing; likely due to bad value stored in storage\n console.log(`Error parsing stored Timed data for ${this.divid}: ${err.message}`);\n error = true;\n }\n if (error || storageObj.timestamp < eBookConfig.termStartDate) {\n localStorage.removeItem(this.localStorageKey());\n this.taken = 0;\n return;\n }\n } else {\n // Parse results from the database\n tmpArr = [\n parseInt(data.correct),\n parseInt(data.incorrect),\n parseInt(data.skipped),\n parseInt(data.time_taken),\n data.reset,\n ];\n this.setLocalStorage(tmpArr);\n }\n if (tmpArr.length == 1) {\n // Exam was previously reset\n this.reset = true;\n this.taken = 0;\n return;\n }\n if (tmpArr.length == 4) {\n // Accidental Reload OR Database Entry\n this.score = tmpArr[0];\n this.incorrect = tmpArr[1];\n this.skipped = tmpArr[2];\n this.timeTaken = tmpArr[3];\n } else if (tmpArr.length == 5) {\n this.score = tmpArr[0];\n this.incorrect = tmpArr[1];\n this.skipped = tmpArr[2];\n this.timeTaken = tmpArr[3];\n } else if (tmpArr.length == 7) {\n // Loaded Completed Exam\n this.score = tmpArr[0];\n this.correctStr = tmpArr[1];\n this.incorrect = tmpArr[2];\n this.incorrectStr = tmpArr[3];\n this.skipped = tmpArr[4];\n this.skippedStr = tmpArr[5];\n this.timeTaken = tmpArr[6];\n } else {\n // Set localStorage in case of \"accidental\" reload\n this.score = 0;\n this.incorrect = 0;\n this.skipped = this.renderedQuestionArray.length;\n this.timeTaken = 0;\n }\n if (this.taken) {\n if (this.skipped === this.renderedQuestionArray.length) {\n this.showFeedback = false;\n }\n this.handlePrevAssessment();\n }\n await this.renderTimedQuestion();\n this.displayScore();\n this.showTime();\n }\n setLocalStorage(parsedData) {\n var timeStamp = new Date();\n var storageObj = {\n answer: parsedData,\n timestamp: timeStamp,\n };\n localStorage.setItem(\n this.localStorageKey(),\n JSON.stringify(storageObj)\n );\n }\n displayScore() {\n if (this.showResults) {\n var scoreString = \"\";\n var numQuestions;\n var percentCorrect;\n // if we have some information\n if (\n this.correctStr.length > 0 ||\n this.incorrectStr.length > 0 ||\n this.skippedStr.length > 0\n ) {\n scoreString = `Num Correct: ${this.score}. Questions: ${this.correctStr}
Num Wrong: ${this.incorrect}. Questions: ${this.incorrectStr}
Num Skipped: ${this.skipped}. Questions: ${this.skippedStr}
`;\n numQuestions = this.score + this.incorrect + this.skipped;\n percentCorrect = (this.score / numQuestions) * 100;\n scoreString +=\n \"Percent Correct: \" + percentCorrect.toFixed(2) + \"%\";\n $(this.scoreDiv).html(scoreString);\n this.scoreDiv.style.display = \"block\";\n } else {\n scoreString = `Num Correct: ${this.score}
Num Wrong: ${this.incorrect}
Num Skipped: ${this.skipped}
`;\n numQuestions = this.score + this.incorrect + this.skipped;\n percentCorrect = (this.score / numQuestions) * 100;\n scoreString +=\n \"Percent Correct: \" + percentCorrect.toFixed(2) + \"%\";\n $(this.scoreDiv).html(scoreString);\n this.scoreDiv.style.display = \"block\";\n }\n this.highlightNumberedList();\n } else {\n $(this.scoreDiv).html(\n \"Thank you for taking the exam. Your answers have been recorded.\"\n );\n this.scoreDiv.style.display = \"block\";\n }\n }\n highlightNumberedList() {\n var correctCount = this.correctStr;\n var incorrectCount = this.incorrectStr;\n var skippedCount = this.skippedStr;\n correctCount = correctCount.replace(/ /g, \"\").split(\",\");\n incorrectCount = incorrectCount.replace(/ /g, \"\").split(\",\");\n skippedCount = skippedCount.replace(/ /g, \"\").split(\",\");\n $(function () {\n var numberedBtns = $(\"ul#pageNums > ul > li\");\n if (numberedBtns.hasClass(\"answered\")) {\n numberedBtns.removeClass(\"answered\");\n }\n for (var i = 0; i < correctCount.length; i++) {\n var test = parseInt(correctCount[i]) - 1;\n numberedBtns\n .eq(parseInt(correctCount[i]) - 1)\n .addClass(\"correctCount\");\n }\n for (var j = 0; j < incorrectCount.length; j++) {\n numberedBtns\n .eq(parseInt(incorrectCount[j]) - 1)\n .addClass(\"incorrectCount\");\n }\n for (var k = 0; k < skippedCount.length; k++) {\n numberedBtns\n .eq(parseInt(skippedCount[k]) - 1)\n .addClass(\"skippedCount\");\n }\n });\n }\n}\n\n/*=======================================================\n=== Function that calls the constructors on page load ===\n=======================================================*/\n$(document).on(\"runestone:login-complete\", function () {\n $(\"[data-component=timedAssessment]\").each(function (index) {\n window.componentMap[this.id] = new Timed({\n orig: this,\n useRunestoneServices: eBookConfig.useRunestoneServices,\n });\n });\n});\n"],"names":["TimedMatching","MatchingProblem","constructor","opts","super","this","renderTimedIcon","containerDiv","hideButtons","needsReinitialization","gradeBtn","style","display","helpBtn","component","timeIconDiv","document","createElement","timeIcon","src","width","height","className","title","appendChild","prepend","checkCorrectTimed","correct","hideFeedback","connList","reinitializeListeners","window","component_factory","matching","timed","Timed","orig","origElem","divid","id","children","childNodes","visited","timeLimit","limitedTime","isNaN","$","data","parseInt","startingTime","showFeedback","hasAttribute","getAttribute","showResults","random","showTimer","fullwidth","nopause","eBookConfig","enableScratchAC","running","paused","done","taken","score","incorrect","correctStr","incorrectStr","skippedStr","skipped","currentQuestionIndex","renderedQuestionArray","getNewChildren","enableDebug","body","oncontextmenu","checkAssessmentStatus","then","renderTimedAssess","bind","newChildren","runestoneChildren","querySelectorAll","i","length","push","sendInfo","div_id","course_name","course","console","log","useRunestoneServices","request","Request","new_server_prefix","method","headers","jsonHeaders","JSON","stringify","response","fetch","json","detail","tookAssessment","assessmentTaken","localStorage","clear","Promise","resolve","createRenderedQuestionArray","randomizeRQA","renderContainer","renderTimer","renderControlButtons","timedDiv","renderNavControls","renderSubmitButton","renderFeedbackContainer","replaceWith","styleExamElements","checkServer","disableCutCopyPaste","addEventListener","e","preventDefault","attr","classList","add","navDiv","flagDiv","switchContainer","switchDiv","wrapperDiv","timerContainer","showTime","controlDiv","startBtn","pauseBtn","class","tabindex","role","textContent","async","finishButton","hide","flagButton","show","mess","innerHTML","renderTimedQuestion","startAssessment","disabled","pauseAssessment","tmpLi","tmpA","pagNavList","addClass","leftContainer","leftNavButton","rightNavButton","css","flaggingPlace","flagContainer","rightContainer","ensureButtonSafety","break","qNumList","qNumWrapperList","navBtnListeners","flagBtnListener","navigateAway","state","question","isAnswered","checkCurrentAnswer","logCurrentAnswer","handleNextPrev","event","target","text","match","hasClass","j","removeClass","handleFlag","handleNumberedNav","oldIndex","buttonContainer","filter","x","skipstr","confirm","finishAssessment","scoreDiv","tmpChild","timedWrapper","initAttempts","is","temporaryValue","randomIndex","currentIndex","Math","floor","currentQuestion","rqa","newq","initialize","componentKind","component_ready_promise","renderFeedback","disableInteraction","includes","contains","handlePrevAssessment","restoreAnsweredQuestions","lastTime","Date","now","increment","logBookEvent","act","timeStamp","storageObj","answer","timestamp","setItem","localStorageKey","on","returnValue","mins","secs","minsString","secsString","beginning","timeString","minutes","timeTaken","seconds","timeTips","getElementsByClassName","setTimeout","currentTime","email","margin","border","padding","color","findTimeTaken","finalizeProblems","checkScore","displayScore","storeScore","logScore","off","assignment_id","jQuery","ajax","url","app","type","dataType","is_timed","success","retdata","message","hideTimedFeedback","substring","storage_arr","time_taken","shouldUseServer","storageDate","getItem","storedData","parse","err","removeItem","checkLocalStorage","restoreAnswers","tmpArr","error","termStartDate","reset","setLocalStorage","parsedData","numQuestions","scoreString","toFixed","html","highlightNumberedList","correctCount","incorrectCount","skippedCount","replace","split","numberedBtns","eq","k","each","index","componentMap"],"sourceRoot":""} \ No newline at end of file diff --git a/_static/268.60719f20e69f885e.js.map.gz b/_static/268.60719f20e69f885e.js.map.gz new file mode 100755 index 0000000..5b1887e Binary files /dev/null and b/_static/268.60719f20e69f885e.js.map.gz differ diff --git a/_static/39.15b22d3dac60149d.js b/_static/39.15b22d3dac60149d.js new file mode 100755 index 0000000..ba74fd1 --- /dev/null +++ b/_static/39.15b22d3dac60149d.js @@ -0,0 +1,3 @@ +/*! For license information please see 39.15b22d3dac60149d.js.LICENSE.txt */ +(self.webpackChunkWebComponents=self.webpackChunkWebComponents||[]).push([[39,420],{52420:(t,e,i)=>{"use strict";i.r(e),i.d(e,{default:()=>_});var s=i(78673);i(75794),i(56906),i(78811);class n{constructor(t){this.problem=t}inverseLISIndices(t){for(var e=[],i=0;in&&rh&&(h=c.length,l=c)}var d=[],u=0;for(let e=0;el.length?d.push(e):t[e]==l[u]?u+=1:d.push(e);return d}grade(){var t=this.problem;t.clearFeedback(),this.correctLines=0,this.percentLines=0,this.incorrectIndents=0;var e,i=t.solution,s=t.answerLines();this.percentLines=Math.min(s.length,i.length)/Math.max(s.length,i.length),s.lengtht[s].indent&&this.indentLeft.push(e[s]);return this.incorrectIndents=this.indentLeft.length+this.indentRight.length,0==this.incorrectIndents}checkCorrectOrdering(t,e){let i=!0;this.correctLines=0,this.solutionLength=t.length;let s=Math.min(t.length,e.length);for(let n=0;n0&&u.length>0;)if(c.length<=u.length){a=c,c=[];for(let t of a)for(let e of o(t))if(l.has(e)||(c.push(e),l.set(e,t)),h.has(e))return[l,h,e]}else{a=u,u=[];for(let t of a)for(let e of r(t))if(h.has(e)||(u.push(e),h.set(e,t)),l.has(e))return[l,h,e]}throw new d("No path between "+e.toString()+" and "+i.toString()+".")}(t,e,i),o=[];null!=r;)o.push(r),r=s.get(r);for(r=n.get(o[0]),o.reverse();null!=r;)o.push(r),r=n.get(r)}(t,e,i)}catch(t){if(t instanceof d)return!1;throw t}return!0}class o{constructor(){this.graph={},this.node=new Map,this.adj=new Map,this.pred=new Map,this.succ=this.adj,this.edge=this.adj}addNode(t){this.succ.has(t)||(this.succ.set(t,new Map),this.pred.set(t,new Map),this.node.set(t))}addEdge(t,e){this.succ.has(t)||(this.succ.set(t,new Map),this.pred.set(t,new Map),this.node.set(t,{})),this.succ.has(e)||(this.succ.set(e,new Map),this.pred.set(e,new Map),this.node.set(e,{}));var i=this.adj.get(t).get(e)||{};this.succ.get(t).set(e,i),this.pred.get(e).set(t,i)}nodes(t=!1){return Array.from(t?this.node.entries():this.node.keys())}edges(t,e=!1){return Array.from(this.edgesIter(t,e))}nodesIter(t=!1){return t?toIterator(this.node):this.node.keys()}get(t){var e=this.adj.get(t);if(void 0===e)throw new KeyError("Graph does not contain node "+t+".");return e}numberOfNodes(){return this.node.size}*nbunchIter(t){if(null==t)yield*this.adj.keys();else if(this.hasNode(t))yield t;else{var e=this.adj;try{for(var i of toIterator(t))e.has(i)&&(yield i)}catch(t){if(t instanceof TypeError)throw new h("nbunch is not a node or a sequence of nodes")}}}*edgesIter(t,e=!1){var i;for(var s of((!0===(i=t)||!1===i||function(t){return!!t&&"object"==typeof t}(i)&&"[object Boolean]"==Object.prototype.toString.call(i))&&(e=t,t=void 0),void 0===t?this.adj:mapIterator(this.nbunchIter(t),(t=>tuple2(t,this.adj.get(t))))))for(var n of s[1]){var r=[s[0],n[0]];e&&(r[2]=n[1]),yield r}}reverse(t=!0){var e;if(t)(e=new this.constructor(null,{name:"Reverse of ("+this.name+")"})).addNodesFrom(this),e.addEdgesFrom(mapIterator(this.edgesIter(null,!0),(t=>tuple3c(t[1],t[0],deepcopy(t[2]),t)))),e.graph=deepcopy(this.graph),e.node=deepcopy(this.node);else{var i=this.pred,s=this.succ;this.succ=i,this.pred=s,this.adj=this.succ,e=this}return e}successorsIter(t){var e=this.succ.get(t);if(void 0!==e)return e.keys();throw new h(sprintf('The node "%j" is not in the digraph.',t))}predecessorsIter(t){var e=this.pred.get(t);if(void 0!==e)return e.keys();throw new h(sprintf('The node "%j" is not in the digraph.',t))}successors(t){return Array.from(this.successorsIter(t))}predecessors(t){return Array.from(this.predecessorsIter(t))}}class a{constructor(t){this.name="JSNetworkXException",this.message=t}}class l extends a{constructor(t){super(t),this.name="JSNetworkXAlgorithmError"}}class h extends a{constructor(t){super(t),this.name="JSNetworkXError"}}class c extends l{constructor(t){super(t),this.name="JSNetworkXUnfeasible"}}class d extends c{constructor(t){super(t),this.name="JSNetworkXNoPath"}}function u(t){var e=new o;for(let i of t){e.addNode(i.tag);for(let t of i.depends)e.addEdge(t,i.tag)}return e}function p(t,e){for(let i of t.edges())if(!e.has(i[0])&&!e.has(i[1]))return!1;return!0}class v extends n{inverseLISIndices(t,e){var i=this.problem.solution,s=e.map((t=>t.lines[0]));let n=u(i),a=new Set,l=new o;for(let t of s){for(let e of a)r(n,{source:t.tag,target:e.tag})&&l.addEdge(t.tag,e.tag);a.add(t)}let h=null,c=function(t){let e={};for(let i=0;i<=t.length;i++)e[i]=[];for(let i=0;i{for(let e=0;ei&&this.indentLeft.push(t.lines[0])}return this.incorrectIndents=this.indentLeft.length+this.indentRight.length,0==this.incorrectIndents}checkCorrectOrdering(t,e){if(!function(t){try{return function(t,e){var i=new Set,s=[],n=new Set;null==e&&(e=t.nodesIter());for(let l of e){if(n.has(l))return;for(var r=[l];r.length>0;){var o=r[r.length-1];if(n.has(o))r.pop();else{i.add(o);var a=[];t.get(o).forEach((function(t,e){if(!n.has(e)){if(i.has(e))throw new c("Graph contains a cycle.");a.push(e)}})),a.length>0?r.push.apply(r,a):(n.add(o),s.unshift(o))}}}}(t),!0}catch(t){if(t instanceof c)return!1;throw t}}(u(t)))throw"Dependency between blocks does not form a Directed Acyclic Graph; Problem unsolvable.";let i=new Set,s=!0;this.correctLines=0,this.solutionLength=t.length;let n=Math.min(t.length,e.length);for(let t=0;tt.trimStart().toLowerCase().startsWith("class ")))?this.text.toLowerCase().startsWith("class")?this.indent=0:this.indent=n.length-this.text.length:this.text.toLowerCase().startsWith("def")?this.indent=0:this.indent=n.length-this.text.length}else this.text=n.replace(/^\s*/,""),this.indent=n.length-this.text.length;"natural"==t.options.language||"math"==t.options.language?s=i?document.createElement("div"):document.createElement("p"):(s=document.createElement("code"),$(s).addClass(t.options.prettifyLanguage)),s.id=t.counterId+"-line-"+this.index,s.innerHTML+=this.text,this.view=s,t.lines.push(this)}initializeWidth(){this.width=$(this.view).outerWidth(!0)-this.problem.options.pixelsPerIndent*this.indent,this.view.fontSize=window.getComputedStyle(this.view,null).getPropertyValue("font-size"),this.view.pixelsPerIndent=this.problem.options.pixelsPerIndent,this.view.indent=this.indent;var t=document.createElement("canvas").getContext("2d"),e=window.getComputedStyle(this.view,null).getPropertyValue("font-family").split(", "),i="abcdefghijklmnopqrstuvwxyz0123456789,./!@#$%^&*-+";t.font=this.view.fontSize+" serif";var s=t.measureText(i).width;for(let n=0;n0&&$(o.view).addClass("indent"+r),n.appendChild(o.view)}var a=document.createElement("div");$(a).addClass("labels"),"left"==this.problem.options.numbered?($(n).addClass("border_left"),$(i).prepend(a),$(i).css({"justify-content":"flex-start"})):"right"==this.problem.options.numbered&&($(a).addClass("border_left"),$(a).css({float:"right"}),$(i).css({"justify-content":"space-between"}),$(i).append(a)),this.view=i,this.isPlaceholder=!1}addLine(t){if($(t.view).removeClass("indent1 indent2 indent3 indent4 indent5 indent6"),this.problem.noindent)t.indent>0&&$(t.view).addClass("indent"+t.indent);else{var e=this.lines,i=e[0].indent;for(let t=1;tt.indent)for(let i=0;i0&&($(t.view).removeClass("indent1 indent2 indent3 indent4 indent5 indent6"),$(t.view).addClass("indent"+t.indent))}this.indent=0,$(this.view).css({"padding-left":"",width:this.problem.areaWidth-22})}addLabel(t,e){var i=document.createElement("div");$(i).addClass("block-label"),"right"==this.problem.options.numbered&&$(i).addClass("right-label"),"left"==this.problem.options.numbered&&$(i).addClass("left-label"),$(i).append(document.createTextNode(t)),$(this.view).children(".labels")[0].append(i),0!=this.labels.length&&$(i).css("margin-top",(e-this.labels[this.labels.length-1][1]-1)*this.lines[e].view.offsetHeight),this.labels.push([t,e])}initializeInteractivity(){if($(this.view).hasClass("disabled"))return this;$(this.view).attr("tabindex","-1"),this.hammer=new(m().Manager)(this.view,{recognizers:[[m().Pan,{direction:m().DIRECTION_ALL,threshold:0,pointers:1}]]});var t=this;this.hammer.on("panstart",(function(e){t.panStart(e)})),this.hammer.on("panend",(function(e){t.panEnd(e)})),this.hammer.on("panmove",(function(e){t.panMove(e)}))}enabled(){return void 0!==$(this.view).attr("tabindex")}isDistractor(){return this.lines[0].distractor}inSourceArea(){var t=this.problem.sourceArea.childNodes;for(let e=0;e=0;s--){var i=t[s];if(i.pairedBin()==e)return i}return t[t.length-1]}}pairedBin(){for(var t=this.problem.pairedBins,e=0;e=0){for(t=0;t0)return s}for(t=0;t=s)break}this.problem.textMoving=!0,this.problem.sourceArea.insertBefore(this.view,e.view),$(this.view).focus()}else this.indent=this.indent-1;this.problem.state=void 0,this.problem.updateView()}}moveUp(){if(this.inSourceArea()){let n=this.problem.sourceBlocks();var t=this.verticalOffset(),e=this.validSourceIndexes();for(let r=0;r=t)return this.problem.textMoving=!0,this.problem.answerArea.insertBefore(this.view,s.view),$(this.view).focus(),this.problem.state=void 0,this.problem.updateView(),this}this.problem.textMoving=!0,this.problem.answerArea.appendChild(this.view),$(this.view).focus(),this.problem.state=void 0,this.problem.updateView()}else this.indent!==this.problem.indent&&(this.indent=this.indent+1,this.problem.state=void 0,this.problem.updateView())}moveDown(){if(this.inSourceArea()){let s=this.problem.sourceBlocks();var t=this.validSourceIndexes();for(let t=0;t1)return this.problem.textMoving=!0,this.problem.sourceArea.insertBefore(this.view,s[i].view),$(this.view).focus(),this.problem.state=void 0,this.problem.updateView(),this}}else{let t=this.problem.answerBlocks();for(var s=0;s=0;i--){var s=t[i];if(e)return this.problem.textFocus=s,s.makeTabIndex(),$(s.view).focus(),this;s.view.id==this.view.id&&(e=!0)}}selectRight(){if(this.inSourceArea()){var t=this.verticalOffset(),e=this.problem.enabledAnswerBlocks();if(0==e.length)return this;for(var i=e[0],s=i.verticalOffset()-t,n=1;n1?`${i} blocks are missing here`:`${i} block is missing here`,$(this.view).append(n),this.isPlaceholder=!0}}class k extends g{constructor(t){super(t,"placeholder",!1),this.isPlaceholderLine=!0}}class y extends b{constructor(t,e){super(t,e),this.isSettled=!0,$(this.view).addClass("settled-block"),$(this.view).addClass("disabled");let i=document.createElement("span");i.classList.add("settled-tooltip"),$(this.view).append(i),$(this.view).find(".settled-tooltip").text("OK")}setBlocksBefore(t){this.blocksBefore=t;var e=t>1?"s":"";if(this.blocksAfter){var i=this.blocksAfter>1?"s":"";$(this.view).find(".settled-tooltip").html(`${t} block${e} ⬆️️), ${this.blocksAfter} block${i} ⬇️`)}else $(this.view).find(".settled-tooltip").html(`${t} block${e} ⬆️️`)}setBlocksAfter(t){this.blocksAfter=t;var e=t>1?"s":"";if(this.blocksBefore){var i=this.blocksBefore>1?"s":"";$(this.view).find(".settled-tooltip").html(`${this.blocksBefore} block${i} ⬆️, ${t} block${e} ⬇️`)}else $(this.view).find(".settled-tooltip").html(`${t} block${e} ️️⬇️`)}}class x extends s.A{constructor(t){super(t);var e=t.orig;this.containerDiv=e,this.origElem=$(e).find("pre.parsonsblocks")[0],this.question=$(e).find(".parsons_question")[0],this.useRunestoneServices=t.useRunestoneServices,this.divid=t.orig.id;var i=super.localStorageKey();this.storageId=i,this.children=this.origElem.childNodes,this.contentArray=[],x.counter++,this.counterId="parsons-"+x.counter,this.initializeOptions(),this.grader="dag"===this.options.grader?new v(this):new n(this),this.grader.showfeedback=this.showfeedback;var s=$(this.origElem).html();this.blockIndex=0,this.checkCount=0,this.numDistinct=0,this.hasSolved=!1,this.initializeLines(s.trim()),this.initializeView(),this.caption="Parsons",this.addCaption("runestone"),this.checkServer("parsons",!0),this.runnableDiv=null}initializeOptions(){var t={pixelsPerIndent:30},e=$(this.origElem).data("maxdist"),i=$(this.origElem).data("order"),s=$(this.origElem).data("noindent"),n=$(this.origElem).data("adaptive"),r=$(this.origElem).data("numbered"),o=$(this.origElem).data("grader"),a=$(this.origElem).data("scaffolding");if(t.numbered=r,t.grader=o,t.scaffolding=a,void 0!==e&&(t.maxdist=e),void 0!==i){i=i.match(/\d+/g);for(var l=0;lt.replace(/\s+/g,"")))).indexOf("#tag:"),""==(y=o.substring(w+5,o.indexOf(";",w+5)))&&(y="block-"+r),x=o.indexOf(";depends:");let t=o.substring(x+9,o.indexOf(";",x+9));h=t.length>0?t.split(","):[]}if(o.includes('class="displaymath')?a.displaymath=!0:a.displaymath=!1,o=o.replace(/#(paired|distractor|settled|tag:.*;.*;)/,(function(t,e){return a[e]=!0,""})),a.settled&&r>0&&u.length>0&&!u[u.length-1].isSettled){var d=new k(this);u.push(d),d.distractor=!0,d.paired=!1,d.distractHelptext="",d.groupWithNext=!1,d.indent=0}a.settled&&(n=!0);var u=[];if(a.displaymath)p=[o];else var p=o.split("\n");for(var v=0;v0){for(v=0;v0&&(n-=1),e.indent=n}}else{s=s.sort((function(t,e){return t-e}));for(let t=0;tt.replace(/\s+/g,"")))).indexOf("#tag:"),""==(y=o.substring(w+5,o.indexOf(";",w+5)))&&(y="block-"+r),x=o.indexOf(";depends:");let t=o.substring(x+9,o.indexOf(";",x+9));h=t.length>0?t.split(","):[]}if(o.includes('class="displaymath')?a.displaymath=!0:a.displaymath=!1,o=o.replace(/\s*#(paired|distractor|tag:.*;.*;)\s*/g,(function(t,e){return a[e]=!0,""})),u=[],a.displaymath)p=[o];else p=o.split("\n");for(v=0;v0){for(v=0;vawait f.queueMathJax(t[0]))):void 0!==MathJax.startup&&await f.queueMathJax(t[0])),u=Math.max(u,t.outerWidth(!0)),t.width(u-22);var e=3.8;let i=t.outerHeight(!0);38!=i&&(e=3.1*(i-38)/21),p+=i+g*e}.bind(this),s=0;s0&&a<=4?$(this.answerArea).addClass("answer"+a):$(this.answerArea).addClass("answer");var m=[],b=[];for(s=0;s0&&(m.push(b),b=[]):(b.push(w),w.groupWithNext||(m.push(b),b=[]))}var k,y=[],x=[],_=[];if(this.pairDistractors||!this.options.adaptive){for(s=m.length-1;s>-1;s--)if((b=m[s])[0].paired)for(k=b.length-1;k>-1;k--)x.unshift(b[k].index);else if(x.length>0){for(k=b.length-1;k>-1;k--)x.unshift(b[k].index);y.unshift(x),x=[]}for(s=0;sor{
"),_.push(C),this.sourceArea.appendChild(C)}}else y=[];p+=10*y.length,this.areaHeight=p+40,$(this.sourceArea).css({width:this.areaWidth+2,height:p}),$(this.answerArea).css({width:this.options.pixelsPerIndent*a+this.areaWidth+2,height:p}),this.pairedBins=y,this.pairedDivs=_,null!=this.options.numbered&&this.addBlockLabels(t.concat(e)),this.state=void 0,this.updateView(),h&&$(l).replaceWith(this.outerDiv)}initializeInteractivity(){for(var t=0;t(s=this.dateFromTimestamp(s))?t:e}async loadData(t){try{if(!0===this.options.scaffolding){null==(i=t.source)&&(i=t.trash);var e=t.answer;void 0!==(n=null==(s=t.adaptive)?{}:this.optionsFromHash(s)).noindent&&(this.noindent=!0),void 0!==n.checkCount&&(this.checkCount=n.checkCount),void 0!==n.hasSolved&&(this.hasSolved=n.hasSolved),await this.initializeAreas(this.blocksFromSource(),this.settledBlocksFromSource(),n)}else{var i,s,n;null==(i=t.source)&&(i=t.trash),e=t.answer,void 0!==(n=null==(s=t.adaptive)?{}:this.optionsFromHash(s)).noindent&&(this.noindent=!0),void 0!==n.checkCount&&(this.checkCount=n.checkCount),void 0!==n.hasSolved&&(this.hasSolved=n.hasSolved),null==i||null==e||1==e.length?await this.initializeAreas(this.blocksFromSource(),[],n):(this.initializeAreas(this.blocksFromHash(i),this.blocksFromHash(e),n),this.grade=this.grader.grade(),"correct"==this.grade?this.correct=!0:0==this.answerLines().length?this.correct=null:this.correct=!1)}}catch(e){await this.initializeAreas(this.blocksFromSource(),[],n),console.log(`Error restoring answer for student ${t.sid} in ${t.div_id}. Defaulting to original state.`)}!0!==this.needsReinitialization&&(this.initializeInteractivity(),this.isTimed&&!this.assessmentTaken&&this.resetView())}localData(){var t=localStorage.getItem(this.storageId);return null!==t&&"{"==t.charAt(0)?JSON.parse(t):{}}restoreAnswers(t){this.loadData(t)}checkLocalStorage(){if(this.graderactive)return;const t=this.localData();t.timestamp&&t.timestamp0&&(e.adaptive=i)}else e=t;localStorage.setItem(this.storageId,JSON.stringify(e))}async updatePlaceholders(){setTimeout((()=>{var t,e,i,s=this.answerBlocks();for(t=0;t0&&!s[t-1].isSettled&&!s[t-1].isPlaceholder&&(e=!0),t{for(var t=this.answerBlocks(),e=0;e=e;o--)if(t[o].afterSettledBlockCount==r){n=t[o];break}if(t[o].afterSettledBlockCount!=r)return void console.log("error moving up; no placeholder found");if($(n.view).hasClass("hide")){$(n.view).removeClass("hide");for(var a=0;a0&&(i.disabled=s),i}answerHash(){for(var t=[],e=this.answerBlocks(),i=0;ib&&(f-=1),e.lines[e.lines.length-1].indent==g.lines[0].indent&&(f+=1),f>=p&&(p=f,v=u)}for(e=d[v],g=d[v+1],u=0;u-1?r.push(e):a.push(s):r.push(e);n=r,r=[]}}if(this.recentAttempts<2?this.pairDistractors=!1:this.pairDistractors=!0,void 0===this.options.order){var c=[],d=[];for(s=0;s1)for(d=this.shuffled(d),p=0;p=0){for(var p=s;$.inArray(t[p-1],r)<0;)p--;var v=$.inArray(t[p-1],r),g=$.inArray(t[s],r);r.splice(g,1),r.splice(v,0,t[s])}return r}blockFromHash(t){for(var e=t.split("_"),i=[],s=0;s0&&l.setBlocksBefore(a),o=l,r++,n=0,s=[]}else s[0].distractor||n++,s=[];return i.length>0&&i[i.length-1].isSettled&&(this.lastBlockSettled=!0),console.log("settledblocksfromsource",i),i}getBlockById(t){for(var e=0;e1?$.i18n("msg_parson_correct",this.checkCount):$.i18n("msg_parson_correct_first_try");this.options.runnable&&(i+=" "+$.i18n("msg_parson_correct_runnable")),setTimeout((()=>{t.html(i)}),10),this.showBlockExplanations()}if("incorrectTooShort"===this.grade&&(e.addClass("incorrect"),this.messageDiv.style.visibility="visible",t.attr("class","alert alert-danger"),setTimeout((()=>{t.html($.i18n("msg_parson_too_short"))}),10)),"incorrectIndent"===this.grade){var i=[];for(let t=0;t{1==i.length?t.html($.i18n("msg_parson_wrong_indent")):t.html($.i18n("msg_parson_wrong_indents"))}),10)}if("incorrectMoveBlocks"===this.grade){var s=this.answerBlocks(),n=[],r=[],o=[];for(let t=0;t{t.html($.i18n("msg_parson_wrong_order"))}),10)}}showBlockExplanations(){if(this.blockExplanations&&0!==Object.keys(this.blockExplanations).length){this.hideBlockExplanations();for(var t=this.answerBlocks(),e=0;e{e.html($.i18n("msg_parson_not_solution"))}),10),t.lines[0].distractHelptext&&(t.view.setAttribute("data-toggle","tooltip"),t.view.setAttribute("title",t.lines[0].distractHelptext)),t.disable(),t.inSourceArea())$(t.view).css({"border-color":"#000","background-color":"#fff"}),$(t.view).animate({opacity:.3,"border-color":"#d3d3d3","background-color":"#efefef"},{duration:2e3,complete:function(){$(t.view).css({"border-color":"","background-color":""})}});else{var i=this.sourceArea.getBoundingClientRect(),s=t.pageXCenter()-1,n=t.pageYCenter(),r=i.left+window.pageXOffset+i.width/2,o=i.top+window.pageYOffset+t.view.getBoundingClientRect().height/2,a=t.slideUnderBlock();void 0!==a&&(o+=a.view.getBoundingClientRect().height+20,o+=parseInt($(a.view).css("top")));var l=this;$(t.view).css({"border-color":"#000","background-color":"#fff"}),$(t.view).animate({opacity:1},{duration:4*Math.sqrt(Math.pow(o-n,2)+Math.pow(r-s,2))+500,start:function(){l.moving=t,l.movingX=s,l.movingY=n,l.updateView()},progress:function(t,e,i){l.movingX=s*(1-e)+r*e,l.movingY=n*(1-e)+o*e,l.updateView()},complete:function(){delete l.moving,delete l.movingX,delete l.movingY,l.updateView(),$(t.view).animate({opacity:.3,"border-color":"#d3d3d3","background-color":"#efefef"},{duration:1e3,complete:function(){$(t.view).css({opacity:"","border-color":"","background-color":""}),$(t.view).addClass("disabled")}})}})}}removeIndentation(){var t=$(this.messageDiv);this.messageDiv.style.visibility="visible",t.attr("class","alert alert-info"),setTimeout((()=>{t.html($.i18n("msg_parson_provided_indent"))}),10);for(var e,i,s=200,n=0;n0&&e.indexOf(s)<0)return s;return null}getFurthestBlock(){for(var t=this.solutionBlocks(),e=this.answerBlocks(),i=0,s=0,n=null,r=null,o=0,a=null,l=0,h=0;h0&&(a=t[o-1],l=e.indexOf(a),(s=Math.abs(h-l))>i&&(i=s,n=r));return n}combineBlocks(){var t=this.solutionBlocks(),e=this.answerBlocks(),i=this.sourceBlocks(),s=$(this.messageDiv);this.messageDiv.style.visibility="visible",s.attr("class","alert alert-info"),setTimeout((()=>{s.html($.i18n("msg_parson_combined_blocks"))}),10);var n=null,r=null;null==(r=this.getSolutionBlockInSource())&&(r=this.getFurthestBlock());var o=t.indexOf(r);n=t[o-1];var a=e.indexOf(n),l=e.indexOf(r),h=!1;a>=0&&l>=0?h=a+1!==l:a<0&&l<0?h=(a=i.indexOf(n))+1!==(l=i.indexOf(r)):(h=!0,a<0&&(a=i.indexOf(n)),l<0&&(l=i.indexOf(r)));var c=l3?(alert($.i18n("msg_parson_will_combine")),this.combineBlocks(),this.logMove("combinedBlocks")):(alert($.i18n("msg_parson_three_blocks_left")),this.canHelp=!1):(alert($.i18n("msg_parson_remove_incorrect")),this.removeDistractor(t),this.logMove("removedDistractor-"+t.hash()))}helpMe(){this.clearFeedback(),this.numDistinct<3?alert($.i18n("msg_parson_atleast_three_attempts")):(this.gotHelp=!0,this.makeEasier())}dateFromTimestamp(t){var e=new Date(t);if(isNaN(e.getTime())){var i=t.split(/[- :]/);e=new Date(i[0],i[1]-1,i[2],i[3],i[4],i[5])}return e}shuffled(t){for(var e,i,s=t.length,n=t.slice();0!==s;)i=Math.floor(Math.random()*s),e=n[s-=1],n[s]=n[i],n[i]=e;return n}enterKeyboardMode(){$(this.keyboardTip).show(),$(this.sourceLabel).hide(),$(this.answerLabel).hide(),this.clearFeedback()}exitKeyboardMode(){$(this.keyboardTip).hide(),$(this.sourceLabel).show(),$(this.answerLabel).show()}clearFeedback(){$(this.answerArea).removeClass("incorrect correct");for(var t=this.answerArea.childNodes,e=0;e=i.left&&t<=i.right&&e>=i.top&&e<=i.bottom?"answer":t>=(i=this.sourceArea.getBoundingClientRect()).left&&t<=i.right&&e>=i.top&&e<=i.bottom?"source":"moving"}updateView(){var t,e,i,s=this.state,n=this.movingState(),r=!0,o=!0,a="moving"==n;s==n&&("rest"==n?(r=!1,o=!1):"source"==n?o=!1:"answer"==n?r=!1:"moving"==n&&(o=!1,r=!1)),void 0!==this.moving&&(t=$(this.moving.view).outerHeight(!0),$(this.moving.view).detach());var l,h,c=this.areaWidth-22;if(r){e=0;var d=this.sourceBlocks();if("source"==n){var u=!1,p=this.moving.pairedBin(),v=[];for(y=0;yor{")}1==_.length&&$(C).html("")}}if(o)if(e=0,i=this.areaWidth+this.indent*this.options.pixelsPerIndent-22,d=this.answerBlocks(),"answer"==n){u=!1,f=this.movingX-this.answerArea.getBoundingClientRect().left-window.pageXOffset-c/2-11;var A=Math.round(f/this.options.pixelsPerIndent);for(A<0?A=0:A>this.indent?A=this.indent:f=A*this.options.pixelsPerIndent,m=this.movingY-this.answerArea.getBoundingClientRect().top-window.pageYOffset,this.moving.indent=A,y=0;y=10&&(o+=" "),t[a].addLabel(o,0),s++}n+this.pairedBins.length>=10&&(this.areaWidth+=5,$(this.sourceArea).css({width:$(this.sourceArea).width()+5}),$(this.answerArea).css({width:$(this.answerArea).width()+5}))}resetView(){if(this.clearFeedback(),!0===this.options.scaffolding){const t=document.querySelector(`#copy-answer-button-${this.divid}`);t&&t.classList.add("copy-button-hide")}var t,e=document.body.scrollTop;for(let e=0;e{$.i18n().load({"pt-br":{msg_parson_check_me:"Verificar",msg_parson_reset:"Resetar",msg_parson_help:"Ajuda",msg_parson_too_short:"Seu programa é muito curto. Adicione mais blocos.",msg_parson_drag_from_here:"Arraste daqui",msg_parson_drag_to_here:"Largue os blocos aqui",msg_parson_correct_first_try:"Perfeito! Você levou apenas uma tentativa para resolver. Bom trabalho!",msg_parson_correct:"Perfeito! Você levou $1 tentativas para resolver. Clique em Resetar para tentar resolver em uma tentativa.",msg_parson_wrong_indent:"Este bloco não está indentado corretamente. Indente mais arrastando-o para a direita ou reduza a indentação arrastando para a esquerda.",msg_parson_wrong_indents:"Estes blocos não estão indentados corretamente. Para indentar mais, arraste o bloco para a direita. Para reduzir a indentação, arraste para a esquerda.",msg_parson_wrong_order:"Blocos destacados no seu programa estão errados ou estão na ordem errada. Isso pode ser resolvido movendo, excluindo ou substituindo os blocos destacados.",msg_parson_arrow_navigate:"Use as teclas de setas para navegar. Espaço para selecionar/ desmarcar blocos para mover.",msg_parson_help_info:"Clique no botão Ajuda se você quiser facilitar o problema",msg_parson_not_solution:"Foi desabilitado um bloco de código desnecessário (que não faz parte da solução).",msg_parson_provided_indent:"Foi fornecida a indentação.",msg_parson_combined_blocks:"Dois blocos de códigos foram combinados em um.",msg_parson_remove_incorrect:"Será removido um bloco de código incorreto da área de resposta",msg_parson_will_combine:"Serão combinados dois blocos",msg_parson_atleast_three_attempts:"Você deve tentar pelo menos três vezes antes de pedir ajuda",msg_parson_three_blocks_left:"Restam apenas 3 blocos corretos. Você deve colocá-los em ordem",msg_parson_will_provide_indent:"Será fornecida a indentação"}})},75794:()=>{$.i18n().load({en:{msg_parson_check_me:"Check",msg_parson_reset:"Reset",msg_parson_help:"Help me",msg_parson_too_short:"Your answer is too short. Add more blocks.",msg_parson_drag_from_here:"Drag from here",msg_parson_drag_to_here:"Drop blocks here",msg_parson_correct_first_try:"Perfect! It took you only one try to solve this. Great job!",msg_parson_correct:"Perfect! It took you $1 tries to solve this. Click Reset to try to solve it in one attempt.",msg_parson_correct_runnable:"Click Run below to test out your solution.",msg_parson_wrong_indent:"This block is not indented correctly. Either indent it more by dragging it right or reduce the indention by dragging it left.",msg_parson_wrong_indents:"These blocks are not indented correctly. To indent a block more, drag it to the right. To reduce the indention, drag it to the left.",msg_parson_wrong_order:"Highlighted blocks in your answer are wrong or are in the wrong order. This can be fixed by moving, removing, or replacing highlighted blocks.",msg_parson_arrow_navigate:"Arrow keys to navigate. Space to select / deselect block to move.",msg_parson_help_info:"Click on the Help Me button if you want to make the problem easier",msg_parson_not_solution:"Disabled an unneeded code block (one that is not part of the solution).",msg_parson_provided_indent:"Provided the indentation.",msg_parson_combined_blocks:"Combined two code blocks into one.",msg_parson_remove_incorrect:"Will remove an incorrect code block from answer area",msg_parson_will_combine:"Will combine two blocks",msg_parson_atleast_three_attempts:"You must make at least three distinct full attempts at a solution before you can get help",msg_parson_three_blocks_left:"There are only 3 correct blocks left. You should be able to put them in order",msg_parson_will_provide_indent:"Will provide indentation"}})},78811:()=>{function t(){var e=navigator&&navigator.userAgent&&/\bMSIE 6\./.test(navigator.userAgent);return t=function(){return e},e}!function(){var e="break continue do else for if return while ",i=e+"auto case char const default double enum extern float goto int long register short signed sizeof static struct switch typedef union unsigned void volatile catch class delete false import new operator private protected public this throw true try ",s=i+"alignof align_union asm axiom bool concept concept_map const_cast constexpr decltype dynamic_cast explicit export friend inline late_check mutable namespace nullptr reinterpret_cast static_assert static_cast template typeid typename typeof using virtual wchar_t where ",n=i+"boolean byte extends final finally implements import instanceof null native package strictfp super synchronized throws transient ",r=i+"debugger eval export function get null set undefined var with Infinity NaN ",o="caller delete die do dump elsif eval exit foreach for goto if import last local my next no our print package redo require sub undef unless until use wantarray while BEGIN END ",a=e+"and as assert class def del elif except exec finally from global import in is lambda nonlocal not or pass print raise try with yield False True None ",l=e+"alias and begin case class def defined elsif end ensure false in module next nil not or redo rescue retry self super then true undef unless until when yield BEGIN END ",h=e+"case done elif esac eval fi function in local set then until ",c=s+(n+"as base by checked decimal delegate descending event fixed foreach from group implicit in interface internal into is lock object out override orderby params readonly ref sbyte sealed stackalloc string select uint ulong unchecked unsafe ushort var ")+r+o+a+l+h;function d(t){return t>="a"&&t<="z"||t>="A"&&t<="Z"}function u(t,e,i,s){t.unshift(i,s||0);try{e.splice.apply(e,t)}finally{t.splice(0,2)}}var p=function(){for(var t=["!","!=","!==","#","%","%=","&","&&","&&=","&=","(","*","*=","+=",",","-=","->","/","/=",":","::",";","<","<<","<<=","<=","=","==","===",">",">=",">>",">>=",">>>",">>>=","?","@","[","^","^=","^^","^^=","{","|","|=","||","||=","~","break","case","continue","delete","do","else","finally","instanceof","return","throw","try","typeof"],e="(?:(?:(?:^|[^0-9.])\\.{1,3})|(?:(?:^|[^\\+])\\+)|(?:(?:^|[^\\-])-)",i=0;i:&])/g,"\\$1")}return e+="|^)\\s*$",new RegExp(e)}(),v=/&/g,g=//g,m=/\"/g;function b(t){return t.replace(v,"&").replace(g,"<").replace(f,">")}var w=/</g,k=/>/g,y=/'/g,$=/"/g,x=/&/g,_=/ /g;function C(t){var e=t.indexOf("&");if(e<0)return t;for(--e;(e=t.indexOf("&#",e+1))>=0;){var i=t.indexOf(";",e);if(i>=0){var s=t.substring(e+3,i),n=10;s&&"x"===s.charAt(0)&&(s=s.substring(1),n=16);var r=parseInt(s,n);isNaN(r)||(t=t.substring(0,e)+String.fromCharCode(r)+t.substring(i+1))}}return t.replace(w,"<").replace(k,">").replace(y,"'").replace($,'"').replace(x,"&").replace(_," ")}function I(t){return"XMP"===t.tagName}function A(t,e){switch(t.nodeType){case 1:var i=t.tagName.toLowerCase();e.push("<",i);for(var s=0;s");for(var r=t.firstChild;r;r=r.nextSibling)A(r,e);!t.firstChild&&/^(?:br|link|img)$/.test(i)||e.push("");break;case 2:e.push(t.name.toLowerCase(),'="',function(t){return t.replace(v,"&").replace(g,"<").replace(f,">").replace(m,""")}(t.value),'"');break;case 3:case 4:e.push(b(t.nodeValue))}}var S=null;function T(t){if(null===S){var e=document.createElement("PRE");e.appendChild(document.createTextNode('\n')),S=!/||<\/?[a-zA-Z][^>]*>|<)/g,D=/^ + + + + + + + + + + + + + + +\chi^2 Critical Values + + + + + + + + + + + + + + + + + + + + +Skip to main content
+

Math 1044 Notes

+ +
+
+
+

+Section B.1 \(\chi^2\) Critical Values +

+
Table B.1.1. \(\chi^2\) Critical Values
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Degrees of FreedomCritical value for \(p = 0.05\) +
\(1\)\(3.841\)
\(2\)\(5.991\)
\(3\)\(7.815\)
\(4\)\(9.488\)
\(5\)\(11.070\)
\(6\)\(12.592\)
\(7\)\(14.067\)
\(8\)\(15.507\)
\(9\)\(16.919\)
\(10\)\(18.307\)
+
+
+ + + diff --git a/app-Phi-table.html b/app-Phi-table.html index 13b16c2..bb5e824 100755 --- a/app-Phi-table.html +++ b/app-Phi-table.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/backmatter-2.html b/backmatter-2.html index e2f3e83..1d4c1dc 100755 --- a/backmatter-2.html +++ b/backmatter-2.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/backmatter-3.html b/backmatter-3.html index 344a46f..f5ee3c4 100755 --- a/backmatter-3.html +++ b/backmatter-3.html @@ -14,7 +14,7 @@ -Colophon +\chi^2 Critical Values Table @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -135,7 +135,7 @@ eBookConfig.enable_chatcodes = false; -PrevUpNext +PrevUpNext -

    -Colophon Colophon +

    +Appendix B \(\chi^2\) Critical Values Table

    -
    This book was authored in PreTeXt. -
    -
    +

    diff --git a/ch-Expected-Value.html b/ch-Expected-Value.html index 9e5bcf9..bb98218 100755 --- a/ch-Expected-Value.html +++ b/ch-Expected-Value.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/ch-Hypothesis-Testing.html b/ch-Hypothesis-Testing.html index 3ae46a2..ea1feaf 100755 --- a/ch-Hypothesis-Testing.html +++ b/ch-Hypothesis-Testing.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/ch-Introduction.html b/ch-Introduction.html index 210a58f..cffe6fa 100755 --- a/ch-Introduction.html +++ b/ch-Introduction.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/ch-Linear-Regression.html b/ch-Linear-Regression.html index 7aaf43c..320a47b 100755 --- a/ch-Linear-Regression.html +++ b/ch-Linear-Regression.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/ch-Probability.html b/ch-Probability.html index 6c1c3e2..dbcac29 100755 --- a/ch-Probability.html +++ b/ch-Probability.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/ch-Random-Variables.html b/ch-Random-Variables.html index efdf975..277fe3b 100755 --- a/ch-Random-Variables.html +++ b/ch-Random-Variables.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/front-colophon.html b/front-colophon.html index d4eb540..26a5ba4 100755 --- a/front-colophon.html +++ b/front-colophon.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/frontmatter.html b/frontmatter.html index 53d12f1..94c04fa 100755 --- a/frontmatter.html +++ b/frontmatter.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • @@ -311,7 +315,7 @@ eBookConfig.enable_chatcodes = false;
    Andy Eisenberg
    Mathematics Department
    Temple University
    -
    March 19, 2026
    +
    April 2, 2026
    diff --git a/sec-CLT.html b/sec-CLT.html index 3f234c4..d5df140 100755 --- a/sec-CLT.html +++ b/sec-CLT.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Chi-Squared.html b/sec-Chi-Squared.html index a04937f..bfe58d3 100755 --- a/sec-Chi-Squared.html +++ b/sec-Chi-Squared.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,21 +302,179 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • Section 5.4 \(\chi^2\) Test

    -
    Text of section. +
    In our previous hypothesis tests, we’ve asked about the correct value of some distribution parameter. But we might also be interested in whether a particular type of distribution fits the data in the first place. In this situation, we can try to measure the extent to which the observed data differs from what would be expected under a particular distribution.
    -

    +

    +Definition 5.4.1. +

    +
    +
    Suppose \(O_1, \dotsc, O_n\) are observed data with expected values \(E_1, \dotsc, E_n\text{.}\) The \(\chi^2\) statistic is:
    +
    +\begin{gather*} +\chi^2 = \sum_{i=1}^n \frac{(O_i - E_i)^2}{E_i}. +\end{gather*} +
    + +
    +
    The expression \(O_i - E_i\) directly measures the difference between an observation and its expected value. However, if we simply summed up these differences, then one observation which is higher than its expected value and another that’s lower would have differences that cancel out. Squaring the term ensures that any difference contributes positively when summed together. And dividing by \(E_i\) ensures that the differences are expressed relative to the size of the expected value. A difference of \(0.1\) might sound like a small difference, but it would have a different interpretation if the expected value is \(100\) than if the expected value is \(0.01\text{.}\) +
    +
    So the overall number \(\chi^2\) is designed to be a measurement of how much the observed data differs from expectation. It seems like \(\chi^2\) could be higher or lower simply as the result of the number of terms involved in the summation. How much difference is enough to reject the distribution which generated those expected values? It seems that it should depend on that number of terms. +
    +

    +Definition 5.4.2. +

    +
    If the data collected fall into \(n\) categories, then we will say that there are \(n - 1\) degrees of freedom. +
    +
    Suppose our data comes from polling \(100\) respondents and arranging their responses into \(n\) categories. Then, if we know how many people fall into categories \(1, 2, \dotsc, n-1\text{,}\) we will automatically know how many people fall into the final category, simply because the total number of respondents is already known. +
    +
    For each different number of degrees of freedom, there will be a different critical value of the \(\chi^2\) statistic, above which we’ll say that the data differs sufficiently from expectation for us to reject the distribution being tested. A table of critical \(\chi^2\) values is provided in Section B.1. +
    +

    +Example 5.4.3. +

    +
    Suppose \(100\) people are surveyed about their favorite color among four choices. The results are below. Is this data consistent with the hypothesis that each of the four colors is equally likely to be a favorite? +
    + + + + + + + + + + + + + + + + + + + + +
    ColorChosen as Favorite
    Blue\(37\)
    Green\(26\)
    Purple\(15\)
    Red\(22\)
    +
    In this case, if each color is equally likely to be a favorite, then we would expect \(25\) respondents to choose each color. So the \(\chi^2\) statistic is:
    +
    +\begin{gather*} +\chi^2 = \frac{(37 - 25)^2}{25} + \frac{(26 - 25)^2}{25} + \frac{(15 - 25)^2}{25} + \frac{(22 - 25)^2}{25} = 10.16. +\end{gather*} +
    +
    Since the data fall into four categories, the number of degrees of freedom is \(4 - 1 = 3\text{.}\) From the table in Table B.1.1, the critical value is \(7.815\text{.}\) Since \(10.16 \gt 7.815\text{,}\) our collected data is sufficiently different to reject the hypothesis of equal color preferences.
    + +
    +
    In the previous example, we’re testing an extrinsic hypothesis, i.e., a hypothesis made entirely without reference to the data. Knowing that we planned to poll \(100\) people, we could determine our expected values for this hypothesis before even conducting the survey. However, sometimes we need to use the collected data to estimate the value(s) of one or more parameters of a distribution. In such a situation, we say the hypothesis is intrinsic, and we adjust our calculation of degrees of freedom. +
    +

    +Definition 5.4.4. +

    +
    Suppose it takes \(m\) measurements to fully specify the collected data, and suppose there are \(k\) parameters that are estimated using the data. Then the number of degrees of freedom is \(m - k\) +
    +

    +Example 5.4.5. +

    +
    Is the data below consistent with a geometric distribution? +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    NumberObservation
    \(1\)\(59\)
    \(2\)\(21\)
    \(3\)\(11\)
    \(4\)\(8\)
    \(5\)\(1\)
    +
    In order to compare this data to a geometric distribution, we would need to know the value of the parameter \(\theta\) for the distribution. Based on the collected data, we could provide a maximum likelihood estimate:
    +
    +\begin{align*} +\widehat{\theta} \amp = \frac{59 + 21 + 11 + 8 + 1}{1 \cdot 59 + 2\cdot 21 + 3\cdot 11 + 4\cdot 8 + 5\cdot 1} \\ +\amp = \frac{100}{171} \\ +\amp \approx 0.58. +\end{align*} +
    +
    We can use Fact 2.1.14 with the parameter value \(0.58\) to generate expected values for our data. For example:
    +
    +\begin{align*} +g(2; 0.58) \amp = (1 - 0.58)^{1}(0.58) = 0.2436, +\end{align*} +
    +
    so we would expect \(0.2436 \times 100 = 24.36\) observations for the number \(2\text{.}\) The rest of the expected values are calculated similarly:
    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NumberObservationExpected
    \(1\)\(59\)\(58\)
    \(2\)\(21\)\(24.36\)
    \(3\)\(11\)\(10.23\)
    \(4\)\(8\)\(4.30\)
    \(5\)\(1\)\(1.80\)
    +
    Now we can calculate the \(\chi^2\) statistic:
    +
    +\begin{align*} +\chi^2 \amp = \frac{(59 - 58)^2}{58} + \dotsb + \frac{(1 - 1.8)^2}{1.8} \approx 4.08. +\end{align*} +
    +
    With \(5\) categories, it takes \(4\) measurements to fully specify the data. Then, we used the data itself to estimate the value of one parameter, \(\widehat{\theta}\text{.}\) So the number of degrees of freedom is \(4 - 1 = 3\text{,}\) with critical \(\chi^2\) value \(7.815\text{.}\) Since \(4.08 \lt 7.815\text{,}\) our data is not sufficiently different from expected to reject the hypothesis of a geometric distribution.
    + +
    +

    Exercises Exercises

    1.

    A store owner wants to determine how much shelf space to allocate to each of the drinks that they sell. They survey their customers about their favorite drinks. Is the data below consistent with the null hypothesis that each type of drink will be equally preferred? -
    Table 5.4.1.
    +
    Table 5.4.6.
    @@ -337,7 +495,7 @@ eBookConfig.enable_chatcodes = false;
    A particular drug is administered in 100 independent trials. In each trial, the drug is administered to four people, and we count how many respond to the drug. The table below shows how many trials have each different count of people who respond to the drug.
    -
    Table 5.4.2.
    drink type water
    +
    Table 5.4.7.
    diff --git a/sec-Conditional-Probability.html b/sec-Conditional-Probability.html index 38de418..3fec981 100755 --- a/sec-Conditional-Probability.html +++ b/sec-Conditional-Probability.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Confidence-Intervals.html b/sec-Confidence-Intervals.html index 50873d8..a3c5bd0 100755 --- a/sec-Confidence-Intervals.html +++ b/sec-Confidence-Intervals.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Continuous-RVs.html b/sec-Continuous-RVs.html index d0d7290..1753718 100755 --- a/sec-Continuous-RVs.html +++ b/sec-Continuous-RVs.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Correlation.html b/sec-Correlation.html index fa491d0..1c9b9bb 100755 --- a/sec-Correlation.html +++ b/sec-Correlation.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Covariance.html b/sec-Covariance.html index b6e5c0d..7bb16b0 100755 --- a/sec-Covariance.html +++ b/sec-Covariance.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Discrete-RVs.html b/sec-Discrete-RVs.html index bd72df8..19b9789 100755 --- a/sec-Discrete-RVs.html +++ b/sec-Discrete-RVs.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Expected-Value.html b/sec-Expected-Value.html index 15ad3f8..d2fd61d 100755 --- a/sec-Expected-Value.html +++ b/sec-Expected-Value.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Independent-Events.html b/sec-Independent-Events.html index 9e74136..6af7fa0 100755 --- a/sec-Independent-Events.html +++ b/sec-Independent-Events.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Introduction.html b/sec-Introduction.html index d7c2bb1..b9a2602 100755 --- a/sec-Introduction.html +++ b/sec-Introduction.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Joint-Distributions.html b/sec-Joint-Distributions.html index c3cfdf0..7152b54 100755 --- a/sec-Joint-Distributions.html +++ b/sec-Joint-Distributions.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Likelihood.html b/sec-Likelihood.html index ae3dd2b..4a2ee18 100755 --- a/sec-Likelihood.html +++ b/sec-Likelihood.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Linear-Regression.html b/sec-Linear-Regression.html index 8a8bc24..03488c1 100755 --- a/sec-Linear-Regression.html +++ b/sec-Linear-Regression.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-One-Sample-Tests.html b/sec-One-Sample-Tests.html index a2d6065..8c46d86 100755 --- a/sec-One-Sample-Tests.html +++ b/sec-One-Sample-Tests.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Power.html b/sec-Power.html index 38c6f5d..665ff0c 100755 --- a/sec-Power.html +++ b/sec-Power.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Probability.html b/sec-Probability.html index 9d87337..2d15181 100755 --- a/sec-Probability.html +++ b/sec-Probability.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Set-Theory.html b/sec-Set-Theory.html index e08c092..ad52f31 100755 --- a/sec-Set-Theory.html +++ b/sec-Set-Theory.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Two-Sample-Tests.html b/sec-Two-Sample-Tests.html index ac0f295..f78ea29 100755 --- a/sec-Two-Sample-Tests.html +++ b/sec-Two-Sample-Tests.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • diff --git a/sec-Variance.html b/sec-Variance.html index e4affcf..72d1978 100755 --- a/sec-Variance.html +++ b/sec-Variance.html @@ -101,14 +101,14 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.19'; +eBookConfig.runestone_version = '7.12.2'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - + @@ -302,7 +302,11 @@ eBookConfig.enable_chatcodes = false; -
  • +
  • + + +
  • +
  • # who respond to drug 0