From 63ce1d952b68107614f35d42063ae14c11ff3f34 Mon Sep 17 00:00:00 2001 From: andyeisenberg Date: Sun, 11 Jan 2026 13:24:27 -0500 Subject: [PATCH] Latest build deployed. --- .mapping.json | 2 +- _static/._009b407a9881be10.ttf | Bin _static/._009b407a9881be10.ttf.gz | Bin _static/._126.a976f62852f30b51.js | Bin _static/._126.a976f62852f30b51.js.gz | Bin _static/._126.a976f62852f30b51.js.map | Bin _static/._126.a976f62852f30b51.js.map.gz | Bin _static/._128.5bed857c54ac4e8b.js | Bin _static/._128.5bed857c54ac4e8b.js.gz | Bin _static/._128.5bed857c54ac4e8b.js.map | Bin _static/._128.5bed857c54ac4e8b.js.map.gz | Bin _static/._131.ee437eeefadd750d.js | Bin _static/._131.ee437eeefadd750d.js.gz | Bin _static/._131.ee437eeefadd750d.js.map | Bin _static/._131.ee437eeefadd750d.js.map.gz | Bin _static/._168.fe63e6dec2d06468.js | Bin _static/._168.fe63e6dec2d06468.js.gz | Bin _static/._168.fe63e6dec2d06468.js.map | Bin _static/._168.fe63e6dec2d06468.js.map.gz | Bin _static/._186.be52164d57f4b7e4.js | Bin _static/._186.be52164d57f4b7e4.js.gz | Bin _static/._186.be52164d57f4b7e4.js.map | Bin _static/._186.be52164d57f4b7e4.js.map.gz | Bin _static/._249.7ec032cf0b3ede9a.js | Bin _static/._249.7ec032cf0b3ede9a.js.LICENSE.txt | Bin .../._249.7ec032cf0b3ede9a.js.LICENSE.txt.gz | Bin _static/._249.7ec032cf0b3ede9a.js.gz | Bin _static/._249.7ec032cf0b3ede9a.js.map | Bin _static/._249.7ec032cf0b3ede9a.js.map.gz | Bin ...5650f4c7c.js => ._268.0659406f2c053718.js} | Bin ...c7c.js.gz => ._268.0659406f2c053718.js.gz} | Bin ...c.js.map => ._268.0659406f2c053718.js.map} | Bin ...ap.gz => ._268.0659406f2c053718.js.map.gz} | Bin _static/._28.bb005543f41af5fb.js | Bin _static/._28.bb005543f41af5fb.js.LICENSE.txt | Bin _static/._28.bb005543f41af5fb.js.gz | Bin _static/._28.bb005543f41af5fb.js.map | Bin _static/._28.bb005543f41af5fb.js.map.gz | Bin _static/._296.37eb8c05642d8ef9.js | Bin _static/._296.37eb8c05642d8ef9.js.gz | Bin _static/._296.37eb8c05642d8ef9.js.map | Bin _static/._296.37eb8c05642d8ef9.js.map.gz | Bin _static/._340.c525bd899366c5f9.js | Bin _static/._340.c525bd899366c5f9.js.gz | Bin _static/._340.c525bd899366c5f9.js.map | Bin _static/._340.c525bd899366c5f9.js.map.gz | Bin _static/._357.a6fa55aea0c38a63.js | Bin _static/._357.a6fa55aea0c38a63.js.LICENSE.txt | Bin .../._357.a6fa55aea0c38a63.js.LICENSE.txt.gz | Bin _static/._357.a6fa55aea0c38a63.js.gz | Bin _static/._357.a6fa55aea0c38a63.js.map | Bin _static/._357.a6fa55aea0c38a63.js.map.gz | Bin _static/._39.dc45aaf5abca8027.js | Bin _static/._39.dc45aaf5abca8027.js.LICENSE.txt | Bin _static/._39.dc45aaf5abca8027.js.gz | Bin _static/._39.dc45aaf5abca8027.js.map | Bin _static/._39.dc45aaf5abca8027.js.map.gz | Bin _static/._412.5965503d81003593.js | Bin _static/._412.5965503d81003593.js.gz | Bin _static/._412.5965503d81003593.js.map | Bin _static/._412.5965503d81003593.js.map.gz | Bin _static/._420.8dae5ad08a4e52ad.js | Bin _static/._420.8dae5ad08a4e52ad.js.LICENSE.txt | Bin _static/._420.8dae5ad08a4e52ad.js.gz | Bin _static/._420.8dae5ad08a4e52ad.js.map | Bin _static/._420.8dae5ad08a4e52ad.js.map.gz | Bin _static/._442.f48919e396acaa18.js | Bin _static/._442.f48919e396acaa18.js.gz | Bin _static/._442.f48919e396acaa18.js.map | Bin _static/._442.f48919e396acaa18.js.map.gz | Bin _static/._460.bae9001422d7a484.js | Bin _static/._460.bae9001422d7a484.js.gz | Bin _static/._460.bae9001422d7a484.js.map | Bin _static/._460.bae9001422d7a484.js.map.gz | Bin _static/._466.4e1a3fb09520281a.js | Bin _static/._466.4e1a3fb09520281a.js.gz | Bin _static/._466.4e1a3fb09520281a.js.map | Bin _static/._466.4e1a3fb09520281a.js.map.gz | Bin _static/._486.78d96ffc5c65634b.js | Bin _static/._486.78d96ffc5c65634b.js.gz | Bin _static/._486.78d96ffc5c65634b.js.map | Bin _static/._486.78d96ffc5c65634b.js.map.gz | Bin _static/._4ba85deaf3670942.woff | Bin _static/._529.115400ffea03835d.js | Bin _static/._529.115400ffea03835d.js.gz | Bin _static/._529.115400ffea03835d.js.map | Bin _static/._529.115400ffea03835d.js.map.gz | Bin _static/._566.0e38ac5442cc38c2.js | Bin _static/._566.0e38ac5442cc38c2.js.gz | Bin _static/._566.0e38ac5442cc38c2.js.map | Bin _static/._566.0e38ac5442cc38c2.js.map.gz | Bin _static/._576.f923ab1e9910a1be.js | Bin _static/._576.f923ab1e9910a1be.js.gz | Bin _static/._576.f923ab1e9910a1be.js.map | Bin _static/._576.f923ab1e9910a1be.js.map.gz | Bin _static/._580.f387819ad2e14f0a.js | Bin _static/._580.f387819ad2e14f0a.js.gz | Bin _static/._580.f387819ad2e14f0a.js.map | Bin _static/._580.f387819ad2e14f0a.js.map.gz | Bin _static/._616.89f80a32caf41aef.js | Bin _static/._616.89f80a32caf41aef.js.gz | Bin _static/._616.89f80a32caf41aef.js.map | Bin _static/._616.89f80a32caf41aef.js.map.gz | Bin _static/._625.120987bdd5293ae3.js | Bin _static/._625.120987bdd5293ae3.js.LICENSE.txt | Bin .../._625.120987bdd5293ae3.js.LICENSE.txt.gz | Bin _static/._625.120987bdd5293ae3.js.gz | Bin _static/._625.120987bdd5293ae3.js.map | Bin _static/._625.120987bdd5293ae3.js.map.gz | Bin _static/._640.cbc8d3a34deb8837.js | Bin _static/._640.cbc8d3a34deb8837.js.map | Bin _static/._640.cbc8d3a34deb8837.js.map.gz | Bin _static/._662.1bb5065279414751.js | Bin _static/._662.1bb5065279414751.js.gz | Bin _static/._662.1bb5065279414751.js.map | Bin _static/._662.1bb5065279414751.js.map.gz | Bin _static/._669.05a3639d12541567.js | Bin _static/._669.05a3639d12541567.js.LICENSE.txt | Bin _static/._669.05a3639d12541567.js.gz | Bin _static/._669.05a3639d12541567.js.map | Bin _static/._669.05a3639d12541567.js.map.gz | Bin _static/._680.ec85c3ce31480628.js | Bin _static/._680.ec85c3ce31480628.js.gz | Bin _static/._680.ec85c3ce31480628.js.map | Bin _static/._680.ec85c3ce31480628.js.map.gz | Bin _static/._759.f27ff66e7ad33076.js | Bin _static/._759.f27ff66e7ad33076.js.gz | Bin _static/._759.f27ff66e7ad33076.js.map | Bin _static/._759.f27ff66e7ad33076.js.map.gz | Bin _static/._764.c33a81cafe63d2b6.js | Bin _static/._764.c33a81cafe63d2b6.js.LICENSE.txt | Bin .../._764.c33a81cafe63d2b6.js.LICENSE.txt.gz | Bin _static/._764.c33a81cafe63d2b6.js.gz | Bin _static/._764.c33a81cafe63d2b6.js.map | Bin _static/._764.c33a81cafe63d2b6.js.map.gz | Bin _static/._770.7bd6d39128dde910.js | Bin _static/._770.7bd6d39128dde910.js.LICENSE.txt | Bin .../._770.7bd6d39128dde910.js.LICENSE.txt.gz | Bin _static/._770.7bd6d39128dde910.js.gz | Bin _static/._770.7bd6d39128dde910.js.map | Bin _static/._770.7bd6d39128dde910.js.map.gz | Bin _static/._7a0f4b092e86cb52.eot | Bin _static/._817.3438cd0f1b0f98bc.js | Bin _static/._817.3438cd0f1b0f98bc.js.gz | Bin _static/._817.3438cd0f1b0f98bc.js.map | Bin _static/._817.3438cd0f1b0f98bc.js.map.gz | Bin ...de12f3abf.js => ._819.fa7785b520e523a5.js} | Bin ...abf.js.gz => ._819.fa7785b520e523a5.js.gz} | Bin ...f.js.map => ._819.fa7785b520e523a5.js.map} | Bin ...ap.gz => ._819.fa7785b520e523a5.js.map.gz} | Bin _static/._824.4343b78afc34c12f.js | Bin _static/._824.4343b78afc34c12f.js.gz | Bin _static/._824.4343b78afc34c12f.js.map | Bin _static/._824.4343b78afc34c12f.js.map.gz | Bin _static/._85f0466cb4ab3a4d.svg | Bin _static/._85f0466cb4ab3a4d.svg.gz | Bin _static/._877.fc49cc812ccc4937.js | Bin _static/._877.fc49cc812ccc4937.js.gz | Bin _static/._877.fc49cc812ccc4937.js.map | Bin _static/._877.fc49cc812ccc4937.js.map.gz | Bin _static/._915.8f500bccc86f901d.js | Bin _static/._915.8f500bccc86f901d.js.gz | Bin _static/._915.8f500bccc86f901d.js.map | Bin _static/._915.8f500bccc86f901d.js.map.gz | Bin _static/._919.237aced0c044e4b6.js | Bin _static/._919.237aced0c044e4b6.js.gz | Bin _static/._919.237aced0c044e4b6.js.map | Bin _static/._919.237aced0c044e4b6.js.map.gz | Bin _static/._b70781972ce7320b.woff2 | Bin _static/._prefix-131.b184379d0dc5871b.css | Bin _static/._prefix-131.b184379d0dc5871b.css.gz | Bin _static/._prefix-131.b184379d0dc5871b.css.map | Bin .../._prefix-131.b184379d0dc5871b.css.map.gz | Bin _static/._prefix-168.1c4deaed00ca1f5e.css | Bin _static/._prefix-168.1c4deaed00ca1f5e.css.gz | Bin _static/._prefix-168.1c4deaed00ca1f5e.css.map | Bin .../._prefix-168.1c4deaed00ca1f5e.css.map.gz | Bin _static/._prefix-186.0d47de180767fda9.css | Bin _static/._prefix-186.0d47de180767fda9.css.map | Bin .../._prefix-186.0d47de180767fda9.css.map.gz | Bin _static/._prefix-198.86b6b2a70a576922.css | Bin _static/._prefix-198.86b6b2a70a576922.css.gz | Bin _static/._prefix-198.86b6b2a70a576922.css.map | Bin .../._prefix-198.86b6b2a70a576922.css.map.gz | Bin _static/._prefix-249.6ca19da539a8ed1a.css | Bin _static/._prefix-249.6ca19da539a8ed1a.css.gz | Bin _static/._prefix-249.6ca19da539a8ed1a.css.map | Bin .../._prefix-249.6ca19da539a8ed1a.css.map.gz | Bin ....css => ._prefix-268.c9e33e1350d18af9.css} | Bin ...z => ._prefix-268.c9e33e1350d18af9.css.gz} | Bin ... => ._prefix-268.c9e33e1350d18af9.css.map} | Bin ... ._prefix-268.c9e33e1350d18af9.css.map.gz} | Bin _static/._prefix-294.986bf74bfa4ccbd4.css | Bin _static/._prefix-294.986bf74bfa4ccbd4.css.gz | Bin _static/._prefix-294.986bf74bfa4ccbd4.css.map | Bin .../._prefix-294.986bf74bfa4ccbd4.css.map.gz | Bin _static/._prefix-350.dbca9271f6e2dfbf.css | Bin _static/._prefix-350.dbca9271f6e2dfbf.css.gz | Bin _static/._prefix-350.dbca9271f6e2dfbf.css.map | Bin .../._prefix-350.dbca9271f6e2dfbf.css.map.gz | Bin _static/._prefix-380.67748940131a4a84.css | Bin _static/._prefix-380.67748940131a4a84.css.map | Bin .../._prefix-380.67748940131a4a84.css.map.gz | Bin _static/._prefix-39.89cf817b9a35aeca.css | Bin _static/._prefix-39.89cf817b9a35aeca.css.gz | Bin _static/._prefix-39.89cf817b9a35aeca.css.map | Bin .../._prefix-39.89cf817b9a35aeca.css.map.gz | Bin _static/._prefix-412.25f3c4ff23eb9893.css | Bin _static/._prefix-412.25f3c4ff23eb9893.css.gz | Bin _static/._prefix-412.25f3c4ff23eb9893.css.map | Bin .../._prefix-412.25f3c4ff23eb9893.css.map.gz | Bin _static/._prefix-442.6ae0ea584f8e75c5.css | Bin _static/._prefix-442.6ae0ea584f8e75c5.css.gz | Bin _static/._prefix-442.6ae0ea584f8e75c5.css.map | Bin .../._prefix-442.6ae0ea584f8e75c5.css.map.gz | Bin _static/._prefix-460.7c0b70502d117f7d.css | Bin _static/._prefix-460.7c0b70502d117f7d.css.map | Bin _static/._prefix-486.990aca82e7ba3e1c.css | Bin _static/._prefix-486.990aca82e7ba3e1c.css.gz | Bin _static/._prefix-486.990aca82e7ba3e1c.css.map | Bin .../._prefix-486.990aca82e7ba3e1c.css.map.gz | Bin _static/._prefix-576.9b1852878840651d.css | Bin _static/._prefix-576.9b1852878840651d.css.gz | Bin _static/._prefix-576.9b1852878840651d.css.map | Bin .../._prefix-576.9b1852878840651d.css.map.gz | Bin _static/._prefix-580.22958d4327b0425a.css | Bin _static/._prefix-580.22958d4327b0425a.css.gz | Bin _static/._prefix-580.22958d4327b0425a.css.map | Bin .../._prefix-580.22958d4327b0425a.css.map.gz | Bin _static/._prefix-616.5c78f604ddad1ec0.css | Bin _static/._prefix-616.5c78f604ddad1ec0.css.gz | Bin _static/._prefix-616.5c78f604ddad1ec0.css.map | Bin .../._prefix-616.5c78f604ddad1ec0.css.map.gz | Bin _static/._prefix-621.8c109e297bdd8ce7.css | Bin _static/._prefix-621.8c109e297bdd8ce7.css.gz | Bin _static/._prefix-621.8c109e297bdd8ce7.css.map | Bin .../._prefix-621.8c109e297bdd8ce7.css.map.gz | Bin _static/._prefix-723.3bccd435914aa0ff.css | Bin _static/._prefix-723.3bccd435914aa0ff.css.gz | Bin _static/._prefix-723.3bccd435914aa0ff.css.map | Bin .../._prefix-723.3bccd435914aa0ff.css.map.gz | Bin .../._prefix-723.3e6434f80549315a.bundle.js | Bin ...723.3e6434f80549315a.bundle.js.LICENSE.txt | Bin ....3e6434f80549315a.bundle.js.LICENSE.txt.gz | Bin ...._prefix-723.3e6434f80549315a.bundle.js.gz | Bin ..._prefix-723.3e6434f80549315a.bundle.js.map | Bin ...efix-723.3e6434f80549315a.bundle.js.map.gz | Bin _static/._prefix-737.cf869b6ea8bfad2f.css | Bin _static/._prefix-737.cf869b6ea8bfad2f.css.gz | Bin _static/._prefix-737.cf869b6ea8bfad2f.css.map | Bin .../._prefix-737.cf869b6ea8bfad2f.css.map.gz | Bin _static/._prefix-824.271ae6cff6401ed5.css | Bin _static/._prefix-824.271ae6cff6401ed5.css.gz | Bin _static/._prefix-824.271ae6cff6401ed5.css.map | Bin .../._prefix-824.271ae6cff6401ed5.css.map.gz | Bin ....css => ._prefix-850.e86d03c2cec75438.css} | Bin ...z => ._prefix-850.e86d03c2cec75438.css.gz} | Bin ... => ._prefix-850.e86d03c2cec75438.css.map} | Bin ... ._prefix-850.e86d03c2cec75438.css.map.gz} | Bin _static/._prefix-877.fa7c46f756cd5a82.css | Bin _static/._prefix-877.fa7c46f756cd5a82.css.gz | Bin _static/._prefix-877.fa7c46f756cd5a82.css.map | Bin .../._prefix-877.fa7c46f756cd5a82.css.map.gz | Bin _static/._prefix-915.882512b642b7fffa.css | Bin _static/._prefix-915.882512b642b7fffa.css.gz | Bin _static/._prefix-915.882512b642b7fffa.css.map | Bin .../._prefix-915.882512b642b7fffa.css.map.gz | Bin ...efix-runestone.1c010553c35c544c.bundle.js} | Bin ...ne.1c010553c35c544c.bundle.js.LICENSE.txt} | Bin ...1c010553c35c544c.bundle.js.LICENSE.txt.gz} | Bin ...x-runestone.1c010553c35c544c.bundle.js.gz} | Bin ...-runestone.1c010553c35c544c.bundle.js.map} | Bin ...nestone.1c010553c35c544c.bundle.js.map.gz} | Bin ...> ._prefix-runestone.677a75a9120449ff.css} | Bin ..._prefix-runestone.677a75a9120449ff.css.gz} | Bin ...prefix-runestone.677a75a9120449ff.css.map} | Bin ...fix-runestone.677a75a9120449ff.css.map.gz} | Bin ...prefix-runtime.991c135ccf182bf5.bundle.js} | Bin ...fix-runtime.991c135ccf182bf5.bundle.js.gz} | Bin ...ix-runtime.991c135ccf182bf5.bundle.js.map} | Bin ...runtime.991c135ccf182bf5.bundle.js.map.gz} | Bin _static/._sql-wasm.wasm | Bin _static/._sql-wasm.wasm.gz | Bin _static/._webpack_static_imports.json | Bin _static/._webpack_static_imports.json.gz | Bin _static/._webpack_static_imports.xml | Bin _static/009b407a9881be10.ttf | Bin _static/009b407a9881be10.ttf.gz | Bin _static/115.648ff4b5650f4c7c.js.gz | Bin 8978 -> 0 bytes _static/115.648ff4b5650f4c7c.js.map | 1 - _static/115.648ff4b5650f4c7c.js.map.gz | Bin 27562 -> 0 bytes _static/126.a976f62852f30b51.js | 0 _static/126.a976f62852f30b51.js.gz | Bin _static/126.a976f62852f30b51.js.map | 0 _static/126.a976f62852f30b51.js.map.gz | Bin _static/128.5bed857c54ac4e8b.js | 0 _static/128.5bed857c54ac4e8b.js.gz | Bin _static/128.5bed857c54ac4e8b.js.map | 0 _static/128.5bed857c54ac4e8b.js.map.gz | Bin _static/131.ee437eeefadd750d.js | 0 _static/131.ee437eeefadd750d.js.gz | Bin _static/131.ee437eeefadd750d.js.map | 0 _static/131.ee437eeefadd750d.js.map.gz | Bin _static/168.fe63e6dec2d06468.js | 0 _static/168.fe63e6dec2d06468.js.gz | Bin _static/168.fe63e6dec2d06468.js.map | 0 _static/168.fe63e6dec2d06468.js.map.gz | Bin _static/186.be52164d57f4b7e4.js | 0 _static/186.be52164d57f4b7e4.js.gz | Bin _static/186.be52164d57f4b7e4.js.map | 0 _static/186.be52164d57f4b7e4.js.map.gz | Bin _static/249.7ec032cf0b3ede9a.js | 0 _static/249.7ec032cf0b3ede9a.js.LICENSE.txt | 0 .../249.7ec032cf0b3ede9a.js.LICENSE.txt.gz | Bin _static/249.7ec032cf0b3ede9a.js.gz | Bin _static/249.7ec032cf0b3ede9a.js.map | 0 _static/249.7ec032cf0b3ede9a.js.map.gz | Bin ...4b5650f4c7c.js => 268.0659406f2c053718.js} | 4 +- _static/268.0659406f2c053718.js.gz | Bin 0 -> 6469 bytes _static/268.0659406f2c053718.js.map | 1 + _static/268.0659406f2c053718.js.map.gz | Bin 0 -> 19861 bytes _static/28.bb005543f41af5fb.js | 0 _static/28.bb005543f41af5fb.js.LICENSE.txt | 0 _static/28.bb005543f41af5fb.js.gz | Bin _static/28.bb005543f41af5fb.js.map | 0 _static/28.bb005543f41af5fb.js.map.gz | Bin _static/296.37eb8c05642d8ef9.js | 0 _static/296.37eb8c05642d8ef9.js.gz | Bin _static/296.37eb8c05642d8ef9.js.map | 0 _static/296.37eb8c05642d8ef9.js.map.gz | Bin _static/340.c525bd899366c5f9.js | 0 _static/340.c525bd899366c5f9.js.gz | Bin _static/340.c525bd899366c5f9.js.map | 0 _static/340.c525bd899366c5f9.js.map.gz | Bin _static/357.a6fa55aea0c38a63.js | 0 _static/357.a6fa55aea0c38a63.js.LICENSE.txt | 0 .../357.a6fa55aea0c38a63.js.LICENSE.txt.gz | Bin _static/357.a6fa55aea0c38a63.js.gz | Bin _static/357.a6fa55aea0c38a63.js.map | 0 _static/357.a6fa55aea0c38a63.js.map.gz | Bin _static/39.dc45aaf5abca8027.js | 0 _static/39.dc45aaf5abca8027.js.LICENSE.txt | 0 _static/39.dc45aaf5abca8027.js.gz | Bin _static/39.dc45aaf5abca8027.js.map | 0 _static/39.dc45aaf5abca8027.js.map.gz | Bin _static/412.5965503d81003593.js | 0 _static/412.5965503d81003593.js.gz | Bin _static/412.5965503d81003593.js.map | 0 _static/412.5965503d81003593.js.map.gz | Bin _static/420.8dae5ad08a4e52ad.js | 0 _static/420.8dae5ad08a4e52ad.js.LICENSE.txt | 0 _static/420.8dae5ad08a4e52ad.js.gz | Bin _static/420.8dae5ad08a4e52ad.js.map | 0 _static/420.8dae5ad08a4e52ad.js.map.gz | Bin _static/442.f48919e396acaa18.js | 0 _static/442.f48919e396acaa18.js.gz | Bin _static/442.f48919e396acaa18.js.map | 0 _static/442.f48919e396acaa18.js.map.gz | Bin _static/460.bae9001422d7a484.js | 0 _static/460.bae9001422d7a484.js.gz | Bin _static/460.bae9001422d7a484.js.map | 0 _static/460.bae9001422d7a484.js.map.gz | Bin _static/466.4e1a3fb09520281a.js | 0 _static/466.4e1a3fb09520281a.js.gz | Bin _static/466.4e1a3fb09520281a.js.map | 0 _static/466.4e1a3fb09520281a.js.map.gz | Bin _static/486.78d96ffc5c65634b.js | 0 _static/486.78d96ffc5c65634b.js.gz | Bin _static/486.78d96ffc5c65634b.js.map | 0 _static/486.78d96ffc5c65634b.js.map.gz | Bin _static/4ba85deaf3670942.woff | Bin _static/529.115400ffea03835d.js | 0 _static/529.115400ffea03835d.js.gz | Bin _static/529.115400ffea03835d.js.map | 0 _static/529.115400ffea03835d.js.map.gz | Bin _static/566.0e38ac5442cc38c2.js | 0 _static/566.0e38ac5442cc38c2.js.gz | Bin _static/566.0e38ac5442cc38c2.js.map | 0 _static/566.0e38ac5442cc38c2.js.map.gz | Bin _static/576.f923ab1e9910a1be.js | 0 _static/576.f923ab1e9910a1be.js.gz | Bin _static/576.f923ab1e9910a1be.js.map | 0 _static/576.f923ab1e9910a1be.js.map.gz | Bin _static/580.f387819ad2e14f0a.js | 0 _static/580.f387819ad2e14f0a.js.gz | Bin _static/580.f387819ad2e14f0a.js.map | 0 _static/580.f387819ad2e14f0a.js.map.gz | Bin _static/616.89f80a32caf41aef.js | 0 _static/616.89f80a32caf41aef.js.gz | Bin _static/616.89f80a32caf41aef.js.map | 0 _static/616.89f80a32caf41aef.js.map.gz | Bin _static/625.120987bdd5293ae3.js | 0 _static/625.120987bdd5293ae3.js.LICENSE.txt | 0 .../625.120987bdd5293ae3.js.LICENSE.txt.gz | Bin _static/625.120987bdd5293ae3.js.gz | Bin _static/625.120987bdd5293ae3.js.map | 0 _static/625.120987bdd5293ae3.js.map.gz | Bin _static/640.cbc8d3a34deb8837.js | 0 _static/640.cbc8d3a34deb8837.js.map | 0 _static/640.cbc8d3a34deb8837.js.map.gz | Bin _static/662.1bb5065279414751.js | 0 _static/662.1bb5065279414751.js.gz | Bin _static/662.1bb5065279414751.js.map | 0 _static/662.1bb5065279414751.js.map.gz | Bin _static/669.05a3639d12541567.js | 0 _static/669.05a3639d12541567.js.LICENSE.txt | 0 _static/669.05a3639d12541567.js.gz | Bin _static/669.05a3639d12541567.js.map | 0 _static/669.05a3639d12541567.js.map.gz | Bin _static/680.ec85c3ce31480628.js | 0 _static/680.ec85c3ce31480628.js.gz | Bin _static/680.ec85c3ce31480628.js.map | 0 _static/680.ec85c3ce31480628.js.map.gz | Bin _static/759.f27ff66e7ad33076.js | 0 _static/759.f27ff66e7ad33076.js.gz | Bin _static/759.f27ff66e7ad33076.js.map | 0 _static/759.f27ff66e7ad33076.js.map.gz | Bin _static/764.c33a81cafe63d2b6.js | 0 _static/764.c33a81cafe63d2b6.js.LICENSE.txt | 0 .../764.c33a81cafe63d2b6.js.LICENSE.txt.gz | Bin _static/764.c33a81cafe63d2b6.js.gz | Bin _static/764.c33a81cafe63d2b6.js.map | 0 _static/764.c33a81cafe63d2b6.js.map.gz | Bin _static/770.7bd6d39128dde910.js | 0 _static/770.7bd6d39128dde910.js.LICENSE.txt | 0 .../770.7bd6d39128dde910.js.LICENSE.txt.gz | Bin _static/770.7bd6d39128dde910.js.gz | Bin _static/770.7bd6d39128dde910.js.map | 0 _static/770.7bd6d39128dde910.js.map.gz | Bin _static/7a0f4b092e86cb52.eot | Bin _static/817.3438cd0f1b0f98bc.js | 0 _static/817.3438cd0f1b0f98bc.js.gz | Bin _static/817.3438cd0f1b0f98bc.js.map | 0 _static/817.3438cd0f1b0f98bc.js.map.gz | Bin _static/819.3e20e27de12f3abf.js | 2 - _static/819.3e20e27de12f3abf.js.gz | Bin 3244 -> 0 bytes _static/819.3e20e27de12f3abf.js.map | 1 - _static/819.3e20e27de12f3abf.js.map.gz | Bin 9105 -> 0 bytes _static/819.fa7785b520e523a5.js | 2 + _static/819.fa7785b520e523a5.js.gz | Bin 0 -> 3272 bytes _static/819.fa7785b520e523a5.js.map | 1 + _static/819.fa7785b520e523a5.js.map.gz | Bin 0 -> 9308 bytes _static/824.4343b78afc34c12f.js | 0 _static/824.4343b78afc34c12f.js.gz | Bin _static/824.4343b78afc34c12f.js.map | 0 _static/824.4343b78afc34c12f.js.map.gz | Bin _static/85f0466cb4ab3a4d.svg | 0 _static/85f0466cb4ab3a4d.svg.gz | Bin _static/877.fc49cc812ccc4937.js | 0 _static/877.fc49cc812ccc4937.js.gz | Bin _static/877.fc49cc812ccc4937.js.map | 0 _static/877.fc49cc812ccc4937.js.map.gz | Bin _static/915.8f500bccc86f901d.js | 0 _static/915.8f500bccc86f901d.js.gz | Bin _static/915.8f500bccc86f901d.js.map | 0 _static/915.8f500bccc86f901d.js.map.gz | Bin _static/919.237aced0c044e4b6.js | 0 _static/919.237aced0c044e4b6.js.gz | Bin _static/919.237aced0c044e4b6.js.map | 0 _static/919.237aced0c044e4b6.js.map.gz | Bin _static/_runestone-services.xml | 28 +- _static/b70781972ce7320b.woff2 | Bin _static/prefix-115.83df5da0966564d5.css | 2 - _static/prefix-115.83df5da0966564d5.css.gz | Bin 5505 -> 0 bytes _static/prefix-115.83df5da0966564d5.css.map | 1 - .../prefix-115.83df5da0966564d5.css.map.gz | Bin 8780 -> 0 bytes _static/prefix-131.b184379d0dc5871b.css | 0 _static/prefix-131.b184379d0dc5871b.css.gz | Bin _static/prefix-131.b184379d0dc5871b.css.map | 0 .../prefix-131.b184379d0dc5871b.css.map.gz | Bin _static/prefix-168.1c4deaed00ca1f5e.css | 0 _static/prefix-168.1c4deaed00ca1f5e.css.gz | Bin _static/prefix-168.1c4deaed00ca1f5e.css.map | 0 .../prefix-168.1c4deaed00ca1f5e.css.map.gz | Bin _static/prefix-186.0d47de180767fda9.css | 0 _static/prefix-186.0d47de180767fda9.css.map | 0 .../prefix-186.0d47de180767fda9.css.map.gz | Bin _static/prefix-198.86b6b2a70a576922.css | 0 _static/prefix-198.86b6b2a70a576922.css.gz | Bin _static/prefix-198.86b6b2a70a576922.css.map | 0 .../prefix-198.86b6b2a70a576922.css.map.gz | Bin _static/prefix-249.6ca19da539a8ed1a.css | 0 _static/prefix-249.6ca19da539a8ed1a.css.gz | Bin _static/prefix-249.6ca19da539a8ed1a.css.map | 0 .../prefix-249.6ca19da539a8ed1a.css.map.gz | Bin _static/prefix-268.c9e33e1350d18af9.css | 2 + _static/prefix-268.c9e33e1350d18af9.css.gz | Bin 0 -> 5528 bytes _static/prefix-268.c9e33e1350d18af9.css.map | 1 + .../prefix-268.c9e33e1350d18af9.css.map.gz | Bin 0 -> 8814 bytes _static/prefix-294.986bf74bfa4ccbd4.css | 0 _static/prefix-294.986bf74bfa4ccbd4.css.gz | Bin _static/prefix-294.986bf74bfa4ccbd4.css.map | 0 .../prefix-294.986bf74bfa4ccbd4.css.map.gz | Bin _static/prefix-350.dbca9271f6e2dfbf.css | 0 _static/prefix-350.dbca9271f6e2dfbf.css.gz | Bin _static/prefix-350.dbca9271f6e2dfbf.css.map | 0 .../prefix-350.dbca9271f6e2dfbf.css.map.gz | Bin _static/prefix-380.67748940131a4a84.css | 0 _static/prefix-380.67748940131a4a84.css.map | 0 .../prefix-380.67748940131a4a84.css.map.gz | Bin _static/prefix-39.89cf817b9a35aeca.css | 0 _static/prefix-39.89cf817b9a35aeca.css.gz | Bin _static/prefix-39.89cf817b9a35aeca.css.map | 0 _static/prefix-39.89cf817b9a35aeca.css.map.gz | Bin _static/prefix-412.25f3c4ff23eb9893.css | 0 _static/prefix-412.25f3c4ff23eb9893.css.gz | Bin _static/prefix-412.25f3c4ff23eb9893.css.map | 0 .../prefix-412.25f3c4ff23eb9893.css.map.gz | Bin _static/prefix-442.6ae0ea584f8e75c5.css | 0 _static/prefix-442.6ae0ea584f8e75c5.css.gz | Bin _static/prefix-442.6ae0ea584f8e75c5.css.map | 0 .../prefix-442.6ae0ea584f8e75c5.css.map.gz | Bin _static/prefix-460.7c0b70502d117f7d.css | 0 _static/prefix-460.7c0b70502d117f7d.css.map | 0 _static/prefix-486.990aca82e7ba3e1c.css | 0 _static/prefix-486.990aca82e7ba3e1c.css.gz | Bin _static/prefix-486.990aca82e7ba3e1c.css.map | 0 .../prefix-486.990aca82e7ba3e1c.css.map.gz | Bin _static/prefix-576.9b1852878840651d.css | 0 _static/prefix-576.9b1852878840651d.css.gz | Bin _static/prefix-576.9b1852878840651d.css.map | 0 .../prefix-576.9b1852878840651d.css.map.gz | Bin _static/prefix-580.22958d4327b0425a.css | 0 _static/prefix-580.22958d4327b0425a.css.gz | Bin _static/prefix-580.22958d4327b0425a.css.map | 0 .../prefix-580.22958d4327b0425a.css.map.gz | Bin _static/prefix-616.5c78f604ddad1ec0.css | 0 _static/prefix-616.5c78f604ddad1ec0.css.gz | Bin _static/prefix-616.5c78f604ddad1ec0.css.map | 0 .../prefix-616.5c78f604ddad1ec0.css.map.gz | Bin _static/prefix-621.8c109e297bdd8ce7.css | 0 _static/prefix-621.8c109e297bdd8ce7.css.gz | Bin _static/prefix-621.8c109e297bdd8ce7.css.map | 0 .../prefix-621.8c109e297bdd8ce7.css.map.gz | Bin _static/prefix-723.3bccd435914aa0ff.css | 0 _static/prefix-723.3bccd435914aa0ff.css.gz | Bin _static/prefix-723.3bccd435914aa0ff.css.map | 0 .../prefix-723.3bccd435914aa0ff.css.map.gz | Bin _static/prefix-723.3e6434f80549315a.bundle.js | 0 ...723.3e6434f80549315a.bundle.js.LICENSE.txt | 0 ....3e6434f80549315a.bundle.js.LICENSE.txt.gz | Bin .../prefix-723.3e6434f80549315a.bundle.js.gz | Bin .../prefix-723.3e6434f80549315a.bundle.js.map | 0 ...efix-723.3e6434f80549315a.bundle.js.map.gz | Bin _static/prefix-737.cf869b6ea8bfad2f.css | 0 _static/prefix-737.cf869b6ea8bfad2f.css.gz | Bin _static/prefix-737.cf869b6ea8bfad2f.css.map | 0 .../prefix-737.cf869b6ea8bfad2f.css.map.gz | Bin _static/prefix-819.6edefe408d7482c2.css.gz | Bin 508 -> 0 bytes _static/prefix-819.6edefe408d7482c2.css.map | 1 - .../prefix-819.6edefe408d7482c2.css.map.gz | Bin 811 -> 0 bytes _static/prefix-824.271ae6cff6401ed5.css | 0 _static/prefix-824.271ae6cff6401ed5.css.gz | Bin _static/prefix-824.271ae6cff6401ed5.css.map | 0 .../prefix-824.271ae6cff6401ed5.css.map.gz | Bin ...c2.css => prefix-850.e86d03c2cec75438.css} | 4 +- _static/prefix-850.e86d03c2cec75438.css.gz | Bin 0 -> 534 bytes _static/prefix-850.e86d03c2cec75438.css.map | 1 + .../prefix-850.e86d03c2cec75438.css.map.gz | Bin 0 -> 848 bytes _static/prefix-877.fa7c46f756cd5a82.css | 0 _static/prefix-877.fa7c46f756cd5a82.css.gz | Bin _static/prefix-877.fa7c46f756cd5a82.css.map | 0 .../prefix-877.fa7c46f756cd5a82.css.map.gz | Bin _static/prefix-915.882512b642b7fffa.css | 0 _static/prefix-915.882512b642b7fffa.css.gz | Bin _static/prefix-915.882512b642b7fffa.css.map | 0 .../prefix-915.882512b642b7fffa.css.map.gz | Bin ...efix-runestone.1c010553c35c544c.bundle.js} | 6 +- ...ne.1c010553c35c544c.bundle.js.LICENSE.txt} | 0 ...1c010553c35c544c.bundle.js.LICENSE.txt.gz} | Bin ...ix-runestone.1c010553c35c544c.bundle.js.gz | Bin 0 -> 22561 bytes ...x-runestone.1c010553c35c544c.bundle.js.map | 1 + ...unestone.1c010553c35c544c.bundle.js.map.gz | Bin 0 -> 70241 bytes ... => prefix-runestone.677a75a9120449ff.css} | 4 +- ... prefix-runestone.677a75a9120449ff.css.gz} | Bin 37877 -> 37910 bytes .../prefix-runestone.677a75a9120449ff.css.map | 1 + ...efix-runestone.677a75a9120449ff.css.map.gz | Bin 0 -> 52921 bytes ...ix-runestone.7e141ad8414abf4a.bundle.js.gz | Bin 21867 -> 0 bytes ...x-runestone.7e141ad8414abf4a.bundle.js.map | 1 - ...unestone.7e141ad8414abf4a.bundle.js.map.gz | Bin 67581 -> 0 bytes .../prefix-runestone.f4ab138da65f4203.css.map | 1 - ...efix-runestone.f4ab138da65f4203.css.map.gz | Bin 52866 -> 0 bytes .../prefix-runtime.42217a82c75796c8.bundle.js | 2 - ...efix-runtime.42217a82c75796c8.bundle.js.gz | Bin 3113 -> 0 bytes ...-runtime.42217a82c75796c8.bundle.js.map.gz | Bin 8473 -> 0 bytes .../prefix-runtime.991c135ccf182bf5.bundle.js | 2 + ...efix-runtime.991c135ccf182bf5.bundle.js.gz | Bin 0 -> 3116 bytes ...ix-runtime.991c135ccf182bf5.bundle.js.map} | 2 +- ...-runtime.991c135ccf182bf5.bundle.js.map.gz | Bin 0 -> 8479 bytes _static/pretext/css/print-worksheet.css | 0 _static/pretext/css/print-worksheet.css.map | 6 +- _static/pretext/css/theme.css | 4 +- _static/pretext/css/theme.css.map | 6 +- _static/pretext/js/answer.js | 0 _static/pretext/js/diagcess/diagcess.js | 0 _static/pretext/js/edit.js | 0 _static/pretext/js/highlight.js | 0 _static/pretext/js/instructor.js | 0 _static/pretext/js/lib/jquery.espy.min.js | 0 _static/pretext/js/lib/jquery.min.js | 0 _static/pretext/js/lib/jquery.sticky.js | 0 _static/pretext/js/lib/knowl.js | 0 _static/pretext/js/lib/mathjaxknowl.js | 0 _static/pretext/js/lib/mathjaxknowl3.js | 0 _static/pretext/js/login.js | 0 _static/pretext/js/lti_iframe_resizer.js | 0 .../pretext/js/pretext-stack/stackapicalls.js | 0 .../pretext/js/pretext-stack/stackjsvle.js | 0 .../pretext-webwork/2.16/pretext-webwork.js | 0 .../pretext-webwork/2.17/pretext-webwork.js | 0 .../pretext-webwork/2.18/pretext-webwork.js | 0 .../pretext-webwork/2.19/pretext-webwork.js | 0 .../pretext-webwork/2.20/pretext-webwork.js | 0 _static/pretext/js/pretext.js | 0 _static/pretext/js/pretext_add_on.js | 0 _static/pretext/js/pretext_search.js | 0 _static/pretext/js/ptx_search.js | 0 _static/pretext/js/user_preferences.js | 0 _static/sql-wasm.wasm | Bin _static/sql-wasm.wasm.gz | Bin _static/webpack_static_imports.json | 2 +- _static/webpack_static_imports.json.gz | Bin 153 -> 153 bytes _static/webpack_static_imports.xml | 8 +- backmatter-2.html | 67 ++- backmatter.html | 67 ++- ch-Confidence-Intervals.html | 67 ++- ch-Expected-Value.html | 72 ++- ch-Hypothesis-Testing.html | 67 ++- ch-Introduction.html | 304 ++++++++++ ch-Linear-Regression.html | 67 ++- ch-Probability.html | 71 ++- ch-Random-Variables.html | 68 ++- front-colophon.html | 69 ++- frontmatter.html | 69 ++- generated/latex-image/fig-Venn-diagram-2.svg | 45 ++ index.html | 2 +- knowl/xref/def-binomial-distribution.html | 28 + .../def-continuous-uniform-distribution.html | 2 +- knowl/xref/def-discrete-EV.html | 35 ++ knowl/xref/def-variance.html | 35 ++ knowl/xref/example-EV-die.html | 43 ++ knowl/xref/example-EV-sum-2-dice.html | 90 +++ knowl/xref/example-binomial-EV.html | 45 ++ knowl/xref/example-indicator-EV.html | 36 ++ knowl/xref/example-indicator-variance.html | 42 ++ knowl/xref/example-joint-indicators.html | 60 ++ knowl/xref/example-poisson-rate.html | 2 +- knowl/xref/example-rolls-conditional.html | 2 +- knowl/xref/example-sample-space.html | 47 ++ knowl/xref/example-uniform-EV.html | 40 ++ .../fact-binomial-probability-formula.html | 2 +- knowl/xref/table-binomial-example.html | 2 +- knowl/xref/thm-variance-formula.html | 35 ++ lunr-pretext-search-index.js | 565 ++++++++++++++++-- my-great-book.html | 68 ++- sec-CLT.html | 90 ++- sec-Chi-Squared.html | 123 +++- sec-Conditional-Probability.html | 67 ++- sec-Confidence-Intervals.html | 124 +++- sec-Continuous-RVs.html | 69 ++- sec-Correlation.html | 115 +++- sec-Covariance.html | 228 ++++++- sec-Discrete-RVs.html | 67 ++- sec-Expected-Value.html | 281 ++++++++- sec-Independent-Events.html | 67 ++- sec-Introduction.html | 306 ++++++++++ sec-Joint-Distributions.html | 380 ++++++++++++ sec-Linear-Regression.html | 190 +++++- sec-One-Sample-Tests.html | 99 ++- sec-Power.html | 96 ++- sec-Probability.html | 283 ++++++++- sec-Set-Theory.html | 154 ++++- sec-Two-Sample-Tests.html | 78 ++- sec-Variance.html | 228 ++++++- 674 files changed, 4797 insertions(+), 562 deletions(-) mode change 100644 => 100755 .mapping.json mode change 100644 => 100755 _static/._009b407a9881be10.ttf mode change 100644 => 100755 _static/._009b407a9881be10.ttf.gz mode change 100644 => 100755 _static/._126.a976f62852f30b51.js mode change 100644 => 100755 _static/._126.a976f62852f30b51.js.gz mode change 100644 => 100755 _static/._126.a976f62852f30b51.js.map mode change 100644 => 100755 _static/._126.a976f62852f30b51.js.map.gz mode change 100644 => 100755 _static/._128.5bed857c54ac4e8b.js mode change 100644 => 100755 _static/._128.5bed857c54ac4e8b.js.gz mode change 100644 => 100755 _static/._128.5bed857c54ac4e8b.js.map mode change 100644 => 100755 _static/._128.5bed857c54ac4e8b.js.map.gz mode change 100644 => 100755 _static/._131.ee437eeefadd750d.js mode change 100644 => 100755 _static/._131.ee437eeefadd750d.js.gz mode change 100644 => 100755 _static/._131.ee437eeefadd750d.js.map mode change 100644 => 100755 _static/._131.ee437eeefadd750d.js.map.gz mode change 100644 => 100755 _static/._168.fe63e6dec2d06468.js mode change 100644 => 100755 _static/._168.fe63e6dec2d06468.js.gz mode change 100644 => 100755 _static/._168.fe63e6dec2d06468.js.map mode change 100644 => 100755 _static/._168.fe63e6dec2d06468.js.map.gz mode change 100644 => 100755 _static/._186.be52164d57f4b7e4.js mode change 100644 => 100755 _static/._186.be52164d57f4b7e4.js.gz mode change 100644 => 100755 _static/._186.be52164d57f4b7e4.js.map mode change 100644 => 100755 _static/._186.be52164d57f4b7e4.js.map.gz mode change 100644 => 100755 _static/._249.7ec032cf0b3ede9a.js mode change 100644 => 100755 _static/._249.7ec032cf0b3ede9a.js.LICENSE.txt mode change 100644 => 100755 _static/._249.7ec032cf0b3ede9a.js.LICENSE.txt.gz mode change 100644 => 100755 _static/._249.7ec032cf0b3ede9a.js.gz mode change 100644 => 100755 _static/._249.7ec032cf0b3ede9a.js.map mode change 100644 => 100755 _static/._249.7ec032cf0b3ede9a.js.map.gz rename _static/{._115.648ff4b5650f4c7c.js => ._268.0659406f2c053718.js} (100%) mode change 100644 => 100755 rename _static/{._115.648ff4b5650f4c7c.js.gz => ._268.0659406f2c053718.js.gz} (100%) mode change 100644 => 100755 rename _static/{._115.648ff4b5650f4c7c.js.map => ._268.0659406f2c053718.js.map} (100%) mode change 100644 => 100755 rename _static/{._115.648ff4b5650f4c7c.js.map.gz => ._268.0659406f2c053718.js.map.gz} (100%) mode change 100644 => 100755 mode change 100644 => 100755 _static/._28.bb005543f41af5fb.js mode change 100644 => 100755 _static/._28.bb005543f41af5fb.js.LICENSE.txt mode change 100644 => 100755 _static/._28.bb005543f41af5fb.js.gz mode change 100644 => 100755 _static/._28.bb005543f41af5fb.js.map mode change 100644 => 100755 _static/._28.bb005543f41af5fb.js.map.gz mode change 100644 => 100755 _static/._296.37eb8c05642d8ef9.js mode change 100644 => 100755 _static/._296.37eb8c05642d8ef9.js.gz mode change 100644 => 100755 _static/._296.37eb8c05642d8ef9.js.map mode change 100644 => 100755 _static/._296.37eb8c05642d8ef9.js.map.gz mode change 100644 => 100755 _static/._340.c525bd899366c5f9.js mode change 100644 => 100755 _static/._340.c525bd899366c5f9.js.gz mode change 100644 => 100755 _static/._340.c525bd899366c5f9.js.map mode change 100644 => 100755 _static/._340.c525bd899366c5f9.js.map.gz mode change 100644 => 100755 _static/._357.a6fa55aea0c38a63.js mode change 100644 => 100755 _static/._357.a6fa55aea0c38a63.js.LICENSE.txt mode change 100644 => 100755 _static/._357.a6fa55aea0c38a63.js.LICENSE.txt.gz mode change 100644 => 100755 _static/._357.a6fa55aea0c38a63.js.gz mode change 100644 => 100755 _static/._357.a6fa55aea0c38a63.js.map mode change 100644 => 100755 _static/._357.a6fa55aea0c38a63.js.map.gz mode change 100644 => 100755 _static/._39.dc45aaf5abca8027.js mode change 100644 => 100755 _static/._39.dc45aaf5abca8027.js.LICENSE.txt mode change 100644 => 100755 _static/._39.dc45aaf5abca8027.js.gz mode change 100644 => 100755 _static/._39.dc45aaf5abca8027.js.map mode change 100644 => 100755 _static/._39.dc45aaf5abca8027.js.map.gz mode change 100644 => 100755 _static/._412.5965503d81003593.js mode change 100644 => 100755 _static/._412.5965503d81003593.js.gz mode change 100644 => 100755 _static/._412.5965503d81003593.js.map mode change 100644 => 100755 _static/._412.5965503d81003593.js.map.gz mode change 100644 => 100755 _static/._420.8dae5ad08a4e52ad.js mode change 100644 => 100755 _static/._420.8dae5ad08a4e52ad.js.LICENSE.txt mode change 100644 => 100755 _static/._420.8dae5ad08a4e52ad.js.gz mode change 100644 => 100755 _static/._420.8dae5ad08a4e52ad.js.map mode change 100644 => 100755 _static/._420.8dae5ad08a4e52ad.js.map.gz mode change 100644 => 100755 _static/._442.f48919e396acaa18.js mode change 100644 => 100755 _static/._442.f48919e396acaa18.js.gz mode change 100644 => 100755 _static/._442.f48919e396acaa18.js.map mode change 100644 => 100755 _static/._442.f48919e396acaa18.js.map.gz mode change 100644 => 100755 _static/._460.bae9001422d7a484.js mode change 100644 => 100755 _static/._460.bae9001422d7a484.js.gz mode change 100644 => 100755 _static/._460.bae9001422d7a484.js.map mode change 100644 => 100755 _static/._460.bae9001422d7a484.js.map.gz mode change 100644 => 100755 _static/._466.4e1a3fb09520281a.js mode change 100644 => 100755 _static/._466.4e1a3fb09520281a.js.gz mode change 100644 => 100755 _static/._466.4e1a3fb09520281a.js.map mode change 100644 => 100755 _static/._466.4e1a3fb09520281a.js.map.gz mode change 100644 => 100755 _static/._486.78d96ffc5c65634b.js mode change 100644 => 100755 _static/._486.78d96ffc5c65634b.js.gz mode change 100644 => 100755 _static/._486.78d96ffc5c65634b.js.map mode change 100644 => 100755 _static/._486.78d96ffc5c65634b.js.map.gz mode change 100644 => 100755 _static/._4ba85deaf3670942.woff mode change 100644 => 100755 _static/._529.115400ffea03835d.js mode change 100644 => 100755 _static/._529.115400ffea03835d.js.gz mode change 100644 => 100755 _static/._529.115400ffea03835d.js.map mode change 100644 => 100755 _static/._529.115400ffea03835d.js.map.gz mode change 100644 => 100755 _static/._566.0e38ac5442cc38c2.js mode change 100644 => 100755 _static/._566.0e38ac5442cc38c2.js.gz mode change 100644 => 100755 _static/._566.0e38ac5442cc38c2.js.map mode change 100644 => 100755 _static/._566.0e38ac5442cc38c2.js.map.gz mode change 100644 => 100755 _static/._576.f923ab1e9910a1be.js mode change 100644 => 100755 _static/._576.f923ab1e9910a1be.js.gz mode change 100644 => 100755 _static/._576.f923ab1e9910a1be.js.map mode change 100644 => 100755 _static/._576.f923ab1e9910a1be.js.map.gz mode change 100644 => 100755 _static/._580.f387819ad2e14f0a.js mode change 100644 => 100755 _static/._580.f387819ad2e14f0a.js.gz mode change 100644 => 100755 _static/._580.f387819ad2e14f0a.js.map mode change 100644 => 100755 _static/._580.f387819ad2e14f0a.js.map.gz mode change 100644 => 100755 _static/._616.89f80a32caf41aef.js mode change 100644 => 100755 _static/._616.89f80a32caf41aef.js.gz mode change 100644 => 100755 _static/._616.89f80a32caf41aef.js.map mode change 100644 => 100755 _static/._616.89f80a32caf41aef.js.map.gz mode change 100644 => 100755 _static/._625.120987bdd5293ae3.js mode change 100644 => 100755 _static/._625.120987bdd5293ae3.js.LICENSE.txt mode change 100644 => 100755 _static/._625.120987bdd5293ae3.js.LICENSE.txt.gz mode change 100644 => 100755 _static/._625.120987bdd5293ae3.js.gz mode change 100644 => 100755 _static/._625.120987bdd5293ae3.js.map mode change 100644 => 100755 _static/._625.120987bdd5293ae3.js.map.gz mode change 100644 => 100755 _static/._640.cbc8d3a34deb8837.js mode change 100644 => 100755 _static/._640.cbc8d3a34deb8837.js.map mode change 100644 => 100755 _static/._640.cbc8d3a34deb8837.js.map.gz mode change 100644 => 100755 _static/._662.1bb5065279414751.js mode change 100644 => 100755 _static/._662.1bb5065279414751.js.gz mode change 100644 => 100755 _static/._662.1bb5065279414751.js.map mode change 100644 => 100755 _static/._662.1bb5065279414751.js.map.gz mode change 100644 => 100755 _static/._669.05a3639d12541567.js mode change 100644 => 100755 _static/._669.05a3639d12541567.js.LICENSE.txt mode change 100644 => 100755 _static/._669.05a3639d12541567.js.gz mode change 100644 => 100755 _static/._669.05a3639d12541567.js.map mode change 100644 => 100755 _static/._669.05a3639d12541567.js.map.gz mode change 100644 => 100755 _static/._680.ec85c3ce31480628.js mode change 100644 => 100755 _static/._680.ec85c3ce31480628.js.gz mode change 100644 => 100755 _static/._680.ec85c3ce31480628.js.map mode change 100644 => 100755 _static/._680.ec85c3ce31480628.js.map.gz mode change 100644 => 100755 _static/._759.f27ff66e7ad33076.js mode change 100644 => 100755 _static/._759.f27ff66e7ad33076.js.gz mode change 100644 => 100755 _static/._759.f27ff66e7ad33076.js.map mode change 100644 => 100755 _static/._759.f27ff66e7ad33076.js.map.gz mode change 100644 => 100755 _static/._764.c33a81cafe63d2b6.js mode change 100644 => 100755 _static/._764.c33a81cafe63d2b6.js.LICENSE.txt mode change 100644 => 100755 _static/._764.c33a81cafe63d2b6.js.LICENSE.txt.gz mode change 100644 => 100755 _static/._764.c33a81cafe63d2b6.js.gz mode change 100644 => 100755 _static/._764.c33a81cafe63d2b6.js.map mode change 100644 => 100755 _static/._764.c33a81cafe63d2b6.js.map.gz mode change 100644 => 100755 _static/._770.7bd6d39128dde910.js mode change 100644 => 100755 _static/._770.7bd6d39128dde910.js.LICENSE.txt mode change 100644 => 100755 _static/._770.7bd6d39128dde910.js.LICENSE.txt.gz mode change 100644 => 100755 _static/._770.7bd6d39128dde910.js.gz mode change 100644 => 100755 _static/._770.7bd6d39128dde910.js.map mode change 100644 => 100755 _static/._770.7bd6d39128dde910.js.map.gz mode change 100644 => 100755 _static/._7a0f4b092e86cb52.eot mode change 100644 => 100755 _static/._817.3438cd0f1b0f98bc.js mode change 100644 => 100755 _static/._817.3438cd0f1b0f98bc.js.gz mode change 100644 => 100755 _static/._817.3438cd0f1b0f98bc.js.map mode change 100644 => 100755 _static/._817.3438cd0f1b0f98bc.js.map.gz rename _static/{._819.3e20e27de12f3abf.js => ._819.fa7785b520e523a5.js} (100%) mode change 100644 => 100755 rename _static/{._819.3e20e27de12f3abf.js.gz => ._819.fa7785b520e523a5.js.gz} (100%) mode change 100644 => 100755 rename _static/{._819.3e20e27de12f3abf.js.map => ._819.fa7785b520e523a5.js.map} (100%) mode change 100644 => 100755 rename _static/{._819.3e20e27de12f3abf.js.map.gz => ._819.fa7785b520e523a5.js.map.gz} (100%) mode change 100644 => 100755 mode change 100644 => 100755 _static/._824.4343b78afc34c12f.js mode change 100644 => 100755 _static/._824.4343b78afc34c12f.js.gz mode change 100644 => 100755 _static/._824.4343b78afc34c12f.js.map mode change 100644 => 100755 _static/._824.4343b78afc34c12f.js.map.gz mode change 100644 => 100755 _static/._85f0466cb4ab3a4d.svg mode change 100644 => 100755 _static/._85f0466cb4ab3a4d.svg.gz mode change 100644 => 100755 _static/._877.fc49cc812ccc4937.js mode change 100644 => 100755 _static/._877.fc49cc812ccc4937.js.gz mode change 100644 => 100755 _static/._877.fc49cc812ccc4937.js.map mode change 100644 => 100755 _static/._877.fc49cc812ccc4937.js.map.gz mode change 100644 => 100755 _static/._915.8f500bccc86f901d.js mode change 100644 => 100755 _static/._915.8f500bccc86f901d.js.gz mode change 100644 => 100755 _static/._915.8f500bccc86f901d.js.map mode change 100644 => 100755 _static/._915.8f500bccc86f901d.js.map.gz mode change 100644 => 100755 _static/._919.237aced0c044e4b6.js mode change 100644 => 100755 _static/._919.237aced0c044e4b6.js.gz mode change 100644 => 100755 _static/._919.237aced0c044e4b6.js.map mode change 100644 => 100755 _static/._919.237aced0c044e4b6.js.map.gz mode change 100644 => 100755 _static/._b70781972ce7320b.woff2 mode change 100644 => 100755 _static/._prefix-131.b184379d0dc5871b.css mode change 100644 => 100755 _static/._prefix-131.b184379d0dc5871b.css.gz mode change 100644 => 100755 _static/._prefix-131.b184379d0dc5871b.css.map mode change 100644 => 100755 _static/._prefix-131.b184379d0dc5871b.css.map.gz mode change 100644 => 100755 _static/._prefix-168.1c4deaed00ca1f5e.css mode change 100644 => 100755 _static/._prefix-168.1c4deaed00ca1f5e.css.gz mode change 100644 => 100755 _static/._prefix-168.1c4deaed00ca1f5e.css.map mode change 100644 => 100755 _static/._prefix-168.1c4deaed00ca1f5e.css.map.gz mode change 100644 => 100755 _static/._prefix-186.0d47de180767fda9.css mode change 100644 => 100755 _static/._prefix-186.0d47de180767fda9.css.map mode change 100644 => 100755 _static/._prefix-186.0d47de180767fda9.css.map.gz mode change 100644 => 100755 _static/._prefix-198.86b6b2a70a576922.css mode change 100644 => 100755 _static/._prefix-198.86b6b2a70a576922.css.gz mode change 100644 => 100755 _static/._prefix-198.86b6b2a70a576922.css.map mode change 100644 => 100755 _static/._prefix-198.86b6b2a70a576922.css.map.gz mode change 100644 => 100755 _static/._prefix-249.6ca19da539a8ed1a.css mode change 100644 => 100755 _static/._prefix-249.6ca19da539a8ed1a.css.gz mode change 100644 => 100755 _static/._prefix-249.6ca19da539a8ed1a.css.map mode change 100644 => 100755 _static/._prefix-249.6ca19da539a8ed1a.css.map.gz rename _static/{._prefix-115.83df5da0966564d5.css => ._prefix-268.c9e33e1350d18af9.css} (100%) mode change 100644 => 100755 rename _static/{._prefix-115.83df5da0966564d5.css.gz => ._prefix-268.c9e33e1350d18af9.css.gz} (100%) mode change 100644 => 100755 rename _static/{._prefix-115.83df5da0966564d5.css.map => ._prefix-268.c9e33e1350d18af9.css.map} (100%) mode change 100644 => 100755 rename _static/{._prefix-115.83df5da0966564d5.css.map.gz => ._prefix-268.c9e33e1350d18af9.css.map.gz} (100%) mode change 100644 => 100755 mode change 100644 => 100755 _static/._prefix-294.986bf74bfa4ccbd4.css mode change 100644 => 100755 _static/._prefix-294.986bf74bfa4ccbd4.css.gz mode change 100644 => 100755 _static/._prefix-294.986bf74bfa4ccbd4.css.map mode change 100644 => 100755 _static/._prefix-294.986bf74bfa4ccbd4.css.map.gz mode change 100644 => 100755 _static/._prefix-350.dbca9271f6e2dfbf.css mode change 100644 => 100755 _static/._prefix-350.dbca9271f6e2dfbf.css.gz mode change 100644 => 100755 _static/._prefix-350.dbca9271f6e2dfbf.css.map mode change 100644 => 100755 _static/._prefix-350.dbca9271f6e2dfbf.css.map.gz mode change 100644 => 100755 _static/._prefix-380.67748940131a4a84.css mode change 100644 => 100755 _static/._prefix-380.67748940131a4a84.css.map mode change 100644 => 100755 _static/._prefix-380.67748940131a4a84.css.map.gz mode change 100644 => 100755 _static/._prefix-39.89cf817b9a35aeca.css mode change 100644 => 100755 _static/._prefix-39.89cf817b9a35aeca.css.gz mode change 100644 => 100755 _static/._prefix-39.89cf817b9a35aeca.css.map mode change 100644 => 100755 _static/._prefix-39.89cf817b9a35aeca.css.map.gz mode change 100644 => 100755 _static/._prefix-412.25f3c4ff23eb9893.css mode change 100644 => 100755 _static/._prefix-412.25f3c4ff23eb9893.css.gz mode change 100644 => 100755 _static/._prefix-412.25f3c4ff23eb9893.css.map mode change 100644 => 100755 _static/._prefix-412.25f3c4ff23eb9893.css.map.gz mode change 100644 => 100755 _static/._prefix-442.6ae0ea584f8e75c5.css mode change 100644 => 100755 _static/._prefix-442.6ae0ea584f8e75c5.css.gz mode change 100644 => 100755 _static/._prefix-442.6ae0ea584f8e75c5.css.map mode change 100644 => 100755 _static/._prefix-442.6ae0ea584f8e75c5.css.map.gz mode change 100644 => 100755 _static/._prefix-460.7c0b70502d117f7d.css mode change 100644 => 100755 _static/._prefix-460.7c0b70502d117f7d.css.map mode change 100644 => 100755 _static/._prefix-486.990aca82e7ba3e1c.css mode change 100644 => 100755 _static/._prefix-486.990aca82e7ba3e1c.css.gz mode change 100644 => 100755 _static/._prefix-486.990aca82e7ba3e1c.css.map mode change 100644 => 100755 _static/._prefix-486.990aca82e7ba3e1c.css.map.gz mode change 100644 => 100755 _static/._prefix-576.9b1852878840651d.css mode change 100644 => 100755 _static/._prefix-576.9b1852878840651d.css.gz mode change 100644 => 100755 _static/._prefix-576.9b1852878840651d.css.map mode change 100644 => 100755 _static/._prefix-576.9b1852878840651d.css.map.gz mode change 100644 => 100755 _static/._prefix-580.22958d4327b0425a.css mode change 100644 => 100755 _static/._prefix-580.22958d4327b0425a.css.gz mode change 100644 => 100755 _static/._prefix-580.22958d4327b0425a.css.map mode change 100644 => 100755 _static/._prefix-580.22958d4327b0425a.css.map.gz mode change 100644 => 100755 _static/._prefix-616.5c78f604ddad1ec0.css mode change 100644 => 100755 _static/._prefix-616.5c78f604ddad1ec0.css.gz mode change 100644 => 100755 _static/._prefix-616.5c78f604ddad1ec0.css.map mode change 100644 => 100755 _static/._prefix-616.5c78f604ddad1ec0.css.map.gz mode change 100644 => 100755 _static/._prefix-621.8c109e297bdd8ce7.css mode change 100644 => 100755 _static/._prefix-621.8c109e297bdd8ce7.css.gz mode change 100644 => 100755 _static/._prefix-621.8c109e297bdd8ce7.css.map mode change 100644 => 100755 _static/._prefix-621.8c109e297bdd8ce7.css.map.gz mode change 100644 => 100755 _static/._prefix-723.3bccd435914aa0ff.css mode change 100644 => 100755 _static/._prefix-723.3bccd435914aa0ff.css.gz mode change 100644 => 100755 _static/._prefix-723.3bccd435914aa0ff.css.map mode change 100644 => 100755 _static/._prefix-723.3bccd435914aa0ff.css.map.gz mode change 100644 => 100755 _static/._prefix-723.3e6434f80549315a.bundle.js mode change 100644 => 100755 _static/._prefix-723.3e6434f80549315a.bundle.js.LICENSE.txt mode change 100644 => 100755 _static/._prefix-723.3e6434f80549315a.bundle.js.LICENSE.txt.gz mode change 100644 => 100755 _static/._prefix-723.3e6434f80549315a.bundle.js.gz mode change 100644 => 100755 _static/._prefix-723.3e6434f80549315a.bundle.js.map mode change 100644 => 100755 _static/._prefix-723.3e6434f80549315a.bundle.js.map.gz mode change 100644 => 100755 _static/._prefix-737.cf869b6ea8bfad2f.css mode change 100644 => 100755 _static/._prefix-737.cf869b6ea8bfad2f.css.gz mode change 100644 => 100755 _static/._prefix-737.cf869b6ea8bfad2f.css.map mode change 100644 => 100755 _static/._prefix-737.cf869b6ea8bfad2f.css.map.gz mode change 100644 => 100755 _static/._prefix-824.271ae6cff6401ed5.css mode change 100644 => 100755 _static/._prefix-824.271ae6cff6401ed5.css.gz mode change 100644 => 100755 _static/._prefix-824.271ae6cff6401ed5.css.map mode change 100644 => 100755 _static/._prefix-824.271ae6cff6401ed5.css.map.gz rename _static/{._prefix-819.6edefe408d7482c2.css => ._prefix-850.e86d03c2cec75438.css} (100%) mode change 100644 => 100755 rename _static/{._prefix-819.6edefe408d7482c2.css.gz => ._prefix-850.e86d03c2cec75438.css.gz} (100%) mode change 100644 => 100755 rename _static/{._prefix-819.6edefe408d7482c2.css.map => ._prefix-850.e86d03c2cec75438.css.map} (100%) mode change 100644 => 100755 rename _static/{._prefix-819.6edefe408d7482c2.css.map.gz => ._prefix-850.e86d03c2cec75438.css.map.gz} (100%) mode change 100644 => 100755 mode change 100644 => 100755 _static/._prefix-877.fa7c46f756cd5a82.css mode change 100644 => 100755 _static/._prefix-877.fa7c46f756cd5a82.css.gz mode change 100644 => 100755 _static/._prefix-877.fa7c46f756cd5a82.css.map mode change 100644 => 100755 _static/._prefix-877.fa7c46f756cd5a82.css.map.gz mode change 100644 => 100755 _static/._prefix-915.882512b642b7fffa.css mode change 100644 => 100755 _static/._prefix-915.882512b642b7fffa.css.gz mode change 100644 => 100755 _static/._prefix-915.882512b642b7fffa.css.map mode change 100644 => 100755 _static/._prefix-915.882512b642b7fffa.css.map.gz rename _static/{._prefix-runestone.7e141ad8414abf4a.bundle.js => ._prefix-runestone.1c010553c35c544c.bundle.js} (100%) mode change 100644 => 100755 rename _static/{._prefix-runestone.7e141ad8414abf4a.bundle.js.LICENSE.txt => ._prefix-runestone.1c010553c35c544c.bundle.js.LICENSE.txt} (100%) mode change 100644 => 100755 rename _static/{._prefix-runestone.7e141ad8414abf4a.bundle.js.LICENSE.txt.gz => ._prefix-runestone.1c010553c35c544c.bundle.js.LICENSE.txt.gz} (100%) mode change 100644 => 100755 rename _static/{._prefix-runestone.7e141ad8414abf4a.bundle.js.gz => ._prefix-runestone.1c010553c35c544c.bundle.js.gz} (100%) mode change 100644 => 100755 rename _static/{._prefix-runestone.7e141ad8414abf4a.bundle.js.map => ._prefix-runestone.1c010553c35c544c.bundle.js.map} (100%) mode change 100644 => 100755 rename _static/{._prefix-runestone.7e141ad8414abf4a.bundle.js.map.gz => ._prefix-runestone.1c010553c35c544c.bundle.js.map.gz} (100%) mode change 100644 => 100755 rename _static/{._prefix-runestone.f4ab138da65f4203.css => ._prefix-runestone.677a75a9120449ff.css} (100%) mode change 100644 => 100755 rename _static/{._prefix-runestone.f4ab138da65f4203.css.gz => ._prefix-runestone.677a75a9120449ff.css.gz} (100%) mode change 100644 => 100755 rename _static/{._prefix-runestone.f4ab138da65f4203.css.map => ._prefix-runestone.677a75a9120449ff.css.map} (100%) mode change 100644 => 100755 rename _static/{._prefix-runestone.f4ab138da65f4203.css.map.gz => ._prefix-runestone.677a75a9120449ff.css.map.gz} (100%) mode change 100644 => 100755 rename _static/{._prefix-runtime.42217a82c75796c8.bundle.js => ._prefix-runtime.991c135ccf182bf5.bundle.js} (100%) mode change 100644 => 100755 rename _static/{._prefix-runtime.42217a82c75796c8.bundle.js.gz => ._prefix-runtime.991c135ccf182bf5.bundle.js.gz} (100%) mode change 100644 => 100755 rename _static/{._prefix-runtime.42217a82c75796c8.bundle.js.map => ._prefix-runtime.991c135ccf182bf5.bundle.js.map} (100%) mode change 100644 => 100755 rename _static/{._prefix-runtime.42217a82c75796c8.bundle.js.map.gz => ._prefix-runtime.991c135ccf182bf5.bundle.js.map.gz} (100%) mode change 100644 => 100755 mode change 100644 => 100755 _static/._sql-wasm.wasm mode change 100644 => 100755 _static/._sql-wasm.wasm.gz mode change 100644 => 100755 _static/._webpack_static_imports.json mode change 100644 => 100755 _static/._webpack_static_imports.json.gz mode change 100644 => 100755 _static/._webpack_static_imports.xml mode change 100644 => 100755 _static/009b407a9881be10.ttf mode change 100644 => 100755 _static/009b407a9881be10.ttf.gz delete mode 100644 _static/115.648ff4b5650f4c7c.js.gz delete mode 100644 _static/115.648ff4b5650f4c7c.js.map delete mode 100644 _static/115.648ff4b5650f4c7c.js.map.gz mode change 100644 => 100755 _static/126.a976f62852f30b51.js mode change 100644 => 100755 _static/126.a976f62852f30b51.js.gz mode change 100644 => 100755 _static/126.a976f62852f30b51.js.map mode change 100644 => 100755 _static/126.a976f62852f30b51.js.map.gz mode change 100644 => 100755 _static/128.5bed857c54ac4e8b.js mode change 100644 => 100755 _static/128.5bed857c54ac4e8b.js.gz mode change 100644 => 100755 _static/128.5bed857c54ac4e8b.js.map mode change 100644 => 100755 _static/128.5bed857c54ac4e8b.js.map.gz mode change 100644 => 100755 _static/131.ee437eeefadd750d.js mode change 100644 => 100755 _static/131.ee437eeefadd750d.js.gz mode change 100644 => 100755 _static/131.ee437eeefadd750d.js.map mode change 100644 => 100755 _static/131.ee437eeefadd750d.js.map.gz mode change 100644 => 100755 _static/168.fe63e6dec2d06468.js mode change 100644 => 100755 _static/168.fe63e6dec2d06468.js.gz mode change 100644 => 100755 _static/168.fe63e6dec2d06468.js.map mode change 100644 => 100755 _static/168.fe63e6dec2d06468.js.map.gz mode change 100644 => 100755 _static/186.be52164d57f4b7e4.js mode change 100644 => 100755 _static/186.be52164d57f4b7e4.js.gz mode change 100644 => 100755 _static/186.be52164d57f4b7e4.js.map mode change 100644 => 100755 _static/186.be52164d57f4b7e4.js.map.gz mode change 100644 => 100755 _static/249.7ec032cf0b3ede9a.js mode change 100644 => 100755 _static/249.7ec032cf0b3ede9a.js.LICENSE.txt mode change 100644 => 100755 _static/249.7ec032cf0b3ede9a.js.LICENSE.txt.gz mode change 100644 => 100755 _static/249.7ec032cf0b3ede9a.js.gz mode change 100644 => 100755 _static/249.7ec032cf0b3ede9a.js.map mode change 100644 => 100755 _static/249.7ec032cf0b3ede9a.js.map.gz rename _static/{115.648ff4b5650f4c7c.js => 268.0659406f2c053718.js} (70%) mode change 100644 => 100755 create mode 100755 _static/268.0659406f2c053718.js.gz create mode 100755 _static/268.0659406f2c053718.js.map create mode 100755 _static/268.0659406f2c053718.js.map.gz mode change 100644 => 100755 _static/28.bb005543f41af5fb.js mode change 100644 => 100755 _static/28.bb005543f41af5fb.js.LICENSE.txt mode change 100644 => 100755 _static/28.bb005543f41af5fb.js.gz mode change 100644 => 100755 _static/28.bb005543f41af5fb.js.map mode change 100644 => 100755 _static/28.bb005543f41af5fb.js.map.gz mode change 100644 => 100755 _static/296.37eb8c05642d8ef9.js mode change 100644 => 100755 _static/296.37eb8c05642d8ef9.js.gz mode change 100644 => 100755 _static/296.37eb8c05642d8ef9.js.map mode change 100644 => 100755 _static/296.37eb8c05642d8ef9.js.map.gz mode change 100644 => 100755 _static/340.c525bd899366c5f9.js mode change 100644 => 100755 _static/340.c525bd899366c5f9.js.gz mode change 100644 => 100755 _static/340.c525bd899366c5f9.js.map mode change 100644 => 100755 _static/340.c525bd899366c5f9.js.map.gz mode change 100644 => 100755 _static/357.a6fa55aea0c38a63.js mode change 100644 => 100755 _static/357.a6fa55aea0c38a63.js.LICENSE.txt mode change 100644 => 100755 _static/357.a6fa55aea0c38a63.js.LICENSE.txt.gz mode change 100644 => 100755 _static/357.a6fa55aea0c38a63.js.gz mode change 100644 => 100755 _static/357.a6fa55aea0c38a63.js.map mode change 100644 => 100755 _static/357.a6fa55aea0c38a63.js.map.gz mode change 100644 => 100755 _static/39.dc45aaf5abca8027.js mode change 100644 => 100755 _static/39.dc45aaf5abca8027.js.LICENSE.txt mode change 100644 => 100755 _static/39.dc45aaf5abca8027.js.gz mode change 100644 => 100755 _static/39.dc45aaf5abca8027.js.map mode change 100644 => 100755 _static/39.dc45aaf5abca8027.js.map.gz mode change 100644 => 100755 _static/412.5965503d81003593.js mode change 100644 => 100755 _static/412.5965503d81003593.js.gz mode change 100644 => 100755 _static/412.5965503d81003593.js.map mode change 100644 => 100755 _static/412.5965503d81003593.js.map.gz mode change 100644 => 100755 _static/420.8dae5ad08a4e52ad.js mode change 100644 => 100755 _static/420.8dae5ad08a4e52ad.js.LICENSE.txt mode change 100644 => 100755 _static/420.8dae5ad08a4e52ad.js.gz mode change 100644 => 100755 _static/420.8dae5ad08a4e52ad.js.map mode change 100644 => 100755 _static/420.8dae5ad08a4e52ad.js.map.gz mode change 100644 => 100755 _static/442.f48919e396acaa18.js mode change 100644 => 100755 _static/442.f48919e396acaa18.js.gz mode change 100644 => 100755 _static/442.f48919e396acaa18.js.map mode change 100644 => 100755 _static/442.f48919e396acaa18.js.map.gz mode change 100644 => 100755 _static/460.bae9001422d7a484.js mode change 100644 => 100755 _static/460.bae9001422d7a484.js.gz mode change 100644 => 100755 _static/460.bae9001422d7a484.js.map mode change 100644 => 100755 _static/460.bae9001422d7a484.js.map.gz mode change 100644 => 100755 _static/466.4e1a3fb09520281a.js mode change 100644 => 100755 _static/466.4e1a3fb09520281a.js.gz mode change 100644 => 100755 _static/466.4e1a3fb09520281a.js.map mode change 100644 => 100755 _static/466.4e1a3fb09520281a.js.map.gz mode change 100644 => 100755 _static/486.78d96ffc5c65634b.js mode change 100644 => 100755 _static/486.78d96ffc5c65634b.js.gz mode change 100644 => 100755 _static/486.78d96ffc5c65634b.js.map mode change 100644 => 100755 _static/486.78d96ffc5c65634b.js.map.gz mode change 100644 => 100755 _static/4ba85deaf3670942.woff mode change 100644 => 100755 _static/529.115400ffea03835d.js mode change 100644 => 100755 _static/529.115400ffea03835d.js.gz mode change 100644 => 100755 _static/529.115400ffea03835d.js.map mode change 100644 => 100755 _static/529.115400ffea03835d.js.map.gz mode change 100644 => 100755 _static/566.0e38ac5442cc38c2.js mode change 100644 => 100755 _static/566.0e38ac5442cc38c2.js.gz mode change 100644 => 100755 _static/566.0e38ac5442cc38c2.js.map mode change 100644 => 100755 _static/566.0e38ac5442cc38c2.js.map.gz mode change 100644 => 100755 _static/576.f923ab1e9910a1be.js mode change 100644 => 100755 _static/576.f923ab1e9910a1be.js.gz mode change 100644 => 100755 _static/576.f923ab1e9910a1be.js.map mode change 100644 => 100755 _static/576.f923ab1e9910a1be.js.map.gz mode change 100644 => 100755 _static/580.f387819ad2e14f0a.js mode change 100644 => 100755 _static/580.f387819ad2e14f0a.js.gz mode change 100644 => 100755 _static/580.f387819ad2e14f0a.js.map mode change 100644 => 100755 _static/580.f387819ad2e14f0a.js.map.gz mode change 100644 => 100755 _static/616.89f80a32caf41aef.js mode change 100644 => 100755 _static/616.89f80a32caf41aef.js.gz mode change 100644 => 100755 _static/616.89f80a32caf41aef.js.map mode change 100644 => 100755 _static/616.89f80a32caf41aef.js.map.gz mode change 100644 => 100755 _static/625.120987bdd5293ae3.js mode change 100644 => 100755 _static/625.120987bdd5293ae3.js.LICENSE.txt mode change 100644 => 100755 _static/625.120987bdd5293ae3.js.LICENSE.txt.gz mode change 100644 => 100755 _static/625.120987bdd5293ae3.js.gz mode change 100644 => 100755 _static/625.120987bdd5293ae3.js.map mode change 100644 => 100755 _static/625.120987bdd5293ae3.js.map.gz mode change 100644 => 100755 _static/640.cbc8d3a34deb8837.js mode change 100644 => 100755 _static/640.cbc8d3a34deb8837.js.map mode change 100644 => 100755 _static/640.cbc8d3a34deb8837.js.map.gz mode change 100644 => 100755 _static/662.1bb5065279414751.js mode change 100644 => 100755 _static/662.1bb5065279414751.js.gz mode change 100644 => 100755 _static/662.1bb5065279414751.js.map mode change 100644 => 100755 _static/662.1bb5065279414751.js.map.gz mode change 100644 => 100755 _static/669.05a3639d12541567.js mode change 100644 => 100755 _static/669.05a3639d12541567.js.LICENSE.txt mode change 100644 => 100755 _static/669.05a3639d12541567.js.gz mode change 100644 => 100755 _static/669.05a3639d12541567.js.map mode change 100644 => 100755 _static/669.05a3639d12541567.js.map.gz mode change 100644 => 100755 _static/680.ec85c3ce31480628.js mode change 100644 => 100755 _static/680.ec85c3ce31480628.js.gz mode change 100644 => 100755 _static/680.ec85c3ce31480628.js.map mode change 100644 => 100755 _static/680.ec85c3ce31480628.js.map.gz mode change 100644 => 100755 _static/759.f27ff66e7ad33076.js mode change 100644 => 100755 _static/759.f27ff66e7ad33076.js.gz mode change 100644 => 100755 _static/759.f27ff66e7ad33076.js.map mode change 100644 => 100755 _static/759.f27ff66e7ad33076.js.map.gz mode change 100644 => 100755 _static/764.c33a81cafe63d2b6.js mode change 100644 => 100755 _static/764.c33a81cafe63d2b6.js.LICENSE.txt mode change 100644 => 100755 _static/764.c33a81cafe63d2b6.js.LICENSE.txt.gz mode change 100644 => 100755 _static/764.c33a81cafe63d2b6.js.gz mode change 100644 => 100755 _static/764.c33a81cafe63d2b6.js.map mode change 100644 => 100755 _static/764.c33a81cafe63d2b6.js.map.gz mode change 100644 => 100755 _static/770.7bd6d39128dde910.js mode change 100644 => 100755 _static/770.7bd6d39128dde910.js.LICENSE.txt mode change 100644 => 100755 _static/770.7bd6d39128dde910.js.LICENSE.txt.gz mode change 100644 => 100755 _static/770.7bd6d39128dde910.js.gz mode change 100644 => 100755 _static/770.7bd6d39128dde910.js.map mode change 100644 => 100755 _static/770.7bd6d39128dde910.js.map.gz mode change 100644 => 100755 _static/7a0f4b092e86cb52.eot mode change 100644 => 100755 _static/817.3438cd0f1b0f98bc.js mode change 100644 => 100755 _static/817.3438cd0f1b0f98bc.js.gz mode change 100644 => 100755 _static/817.3438cd0f1b0f98bc.js.map mode change 100644 => 100755 _static/817.3438cd0f1b0f98bc.js.map.gz delete mode 100644 _static/819.3e20e27de12f3abf.js delete mode 100644 _static/819.3e20e27de12f3abf.js.gz delete mode 100644 _static/819.3e20e27de12f3abf.js.map delete mode 100644 _static/819.3e20e27de12f3abf.js.map.gz create mode 100755 _static/819.fa7785b520e523a5.js create mode 100755 _static/819.fa7785b520e523a5.js.gz create mode 100755 _static/819.fa7785b520e523a5.js.map create mode 100755 _static/819.fa7785b520e523a5.js.map.gz mode change 100644 => 100755 _static/824.4343b78afc34c12f.js mode change 100644 => 100755 _static/824.4343b78afc34c12f.js.gz mode change 100644 => 100755 _static/824.4343b78afc34c12f.js.map mode change 100644 => 100755 _static/824.4343b78afc34c12f.js.map.gz mode change 100644 => 100755 _static/85f0466cb4ab3a4d.svg mode change 100644 => 100755 _static/85f0466cb4ab3a4d.svg.gz mode change 100644 => 100755 _static/877.fc49cc812ccc4937.js mode change 100644 => 100755 _static/877.fc49cc812ccc4937.js.gz mode change 100644 => 100755 _static/877.fc49cc812ccc4937.js.map mode change 100644 => 100755 _static/877.fc49cc812ccc4937.js.map.gz mode change 100644 => 100755 _static/915.8f500bccc86f901d.js mode change 100644 => 100755 _static/915.8f500bccc86f901d.js.gz mode change 100644 => 100755 _static/915.8f500bccc86f901d.js.map mode change 100644 => 100755 _static/915.8f500bccc86f901d.js.map.gz mode change 100644 => 100755 _static/919.237aced0c044e4b6.js mode change 100644 => 100755 _static/919.237aced0c044e4b6.js.gz mode change 100644 => 100755 _static/919.237aced0c044e4b6.js.map mode change 100644 => 100755 _static/919.237aced0c044e4b6.js.map.gz mode change 100644 => 100755 _static/_runestone-services.xml mode change 100644 => 100755 _static/b70781972ce7320b.woff2 delete mode 100644 _static/prefix-115.83df5da0966564d5.css delete mode 100644 _static/prefix-115.83df5da0966564d5.css.gz delete mode 100644 _static/prefix-115.83df5da0966564d5.css.map delete mode 100644 _static/prefix-115.83df5da0966564d5.css.map.gz mode change 100644 => 100755 _static/prefix-131.b184379d0dc5871b.css mode change 100644 => 100755 _static/prefix-131.b184379d0dc5871b.css.gz mode change 100644 => 100755 _static/prefix-131.b184379d0dc5871b.css.map mode change 100644 => 100755 _static/prefix-131.b184379d0dc5871b.css.map.gz mode change 100644 => 100755 _static/prefix-168.1c4deaed00ca1f5e.css mode change 100644 => 100755 _static/prefix-168.1c4deaed00ca1f5e.css.gz mode change 100644 => 100755 _static/prefix-168.1c4deaed00ca1f5e.css.map mode change 100644 => 100755 _static/prefix-168.1c4deaed00ca1f5e.css.map.gz mode change 100644 => 100755 _static/prefix-186.0d47de180767fda9.css mode change 100644 => 100755 _static/prefix-186.0d47de180767fda9.css.map mode change 100644 => 100755 _static/prefix-186.0d47de180767fda9.css.map.gz mode change 100644 => 100755 _static/prefix-198.86b6b2a70a576922.css mode change 100644 => 100755 _static/prefix-198.86b6b2a70a576922.css.gz mode change 100644 => 100755 _static/prefix-198.86b6b2a70a576922.css.map mode change 100644 => 100755 _static/prefix-198.86b6b2a70a576922.css.map.gz mode change 100644 => 100755 _static/prefix-249.6ca19da539a8ed1a.css mode change 100644 => 100755 _static/prefix-249.6ca19da539a8ed1a.css.gz mode change 100644 => 100755 _static/prefix-249.6ca19da539a8ed1a.css.map mode change 100644 => 100755 _static/prefix-249.6ca19da539a8ed1a.css.map.gz create mode 100755 _static/prefix-268.c9e33e1350d18af9.css create mode 100755 _static/prefix-268.c9e33e1350d18af9.css.gz create mode 100755 _static/prefix-268.c9e33e1350d18af9.css.map create mode 100755 _static/prefix-268.c9e33e1350d18af9.css.map.gz mode change 100644 => 100755 _static/prefix-294.986bf74bfa4ccbd4.css mode change 100644 => 100755 _static/prefix-294.986bf74bfa4ccbd4.css.gz mode change 100644 => 100755 _static/prefix-294.986bf74bfa4ccbd4.css.map mode change 100644 => 100755 _static/prefix-294.986bf74bfa4ccbd4.css.map.gz mode change 100644 => 100755 _static/prefix-350.dbca9271f6e2dfbf.css mode change 100644 => 100755 _static/prefix-350.dbca9271f6e2dfbf.css.gz mode change 100644 => 100755 _static/prefix-350.dbca9271f6e2dfbf.css.map mode change 100644 => 100755 _static/prefix-350.dbca9271f6e2dfbf.css.map.gz mode change 100644 => 100755 _static/prefix-380.67748940131a4a84.css mode change 100644 => 100755 _static/prefix-380.67748940131a4a84.css.map mode change 100644 => 100755 _static/prefix-380.67748940131a4a84.css.map.gz mode change 100644 => 100755 _static/prefix-39.89cf817b9a35aeca.css mode change 100644 => 100755 _static/prefix-39.89cf817b9a35aeca.css.gz mode change 100644 => 100755 _static/prefix-39.89cf817b9a35aeca.css.map mode change 100644 => 100755 _static/prefix-39.89cf817b9a35aeca.css.map.gz mode change 100644 => 100755 _static/prefix-412.25f3c4ff23eb9893.css mode change 100644 => 100755 _static/prefix-412.25f3c4ff23eb9893.css.gz mode change 100644 => 100755 _static/prefix-412.25f3c4ff23eb9893.css.map mode change 100644 => 100755 _static/prefix-412.25f3c4ff23eb9893.css.map.gz mode change 100644 => 100755 _static/prefix-442.6ae0ea584f8e75c5.css mode change 100644 => 100755 _static/prefix-442.6ae0ea584f8e75c5.css.gz mode change 100644 => 100755 _static/prefix-442.6ae0ea584f8e75c5.css.map mode change 100644 => 100755 _static/prefix-442.6ae0ea584f8e75c5.css.map.gz mode change 100644 => 100755 _static/prefix-460.7c0b70502d117f7d.css mode change 100644 => 100755 _static/prefix-460.7c0b70502d117f7d.css.map mode change 100644 => 100755 _static/prefix-486.990aca82e7ba3e1c.css mode change 100644 => 100755 _static/prefix-486.990aca82e7ba3e1c.css.gz mode change 100644 => 100755 _static/prefix-486.990aca82e7ba3e1c.css.map mode change 100644 => 100755 _static/prefix-486.990aca82e7ba3e1c.css.map.gz mode change 100644 => 100755 _static/prefix-576.9b1852878840651d.css mode change 100644 => 100755 _static/prefix-576.9b1852878840651d.css.gz mode change 100644 => 100755 _static/prefix-576.9b1852878840651d.css.map mode change 100644 => 100755 _static/prefix-576.9b1852878840651d.css.map.gz mode change 100644 => 100755 _static/prefix-580.22958d4327b0425a.css mode change 100644 => 100755 _static/prefix-580.22958d4327b0425a.css.gz mode change 100644 => 100755 _static/prefix-580.22958d4327b0425a.css.map mode change 100644 => 100755 _static/prefix-580.22958d4327b0425a.css.map.gz mode change 100644 => 100755 _static/prefix-616.5c78f604ddad1ec0.css mode change 100644 => 100755 _static/prefix-616.5c78f604ddad1ec0.css.gz mode change 100644 => 100755 _static/prefix-616.5c78f604ddad1ec0.css.map mode change 100644 => 100755 _static/prefix-616.5c78f604ddad1ec0.css.map.gz mode change 100644 => 100755 _static/prefix-621.8c109e297bdd8ce7.css mode change 100644 => 100755 _static/prefix-621.8c109e297bdd8ce7.css.gz mode change 100644 => 100755 _static/prefix-621.8c109e297bdd8ce7.css.map mode change 100644 => 100755 _static/prefix-621.8c109e297bdd8ce7.css.map.gz mode change 100644 => 100755 _static/prefix-723.3bccd435914aa0ff.css mode change 100644 => 100755 _static/prefix-723.3bccd435914aa0ff.css.gz mode change 100644 => 100755 _static/prefix-723.3bccd435914aa0ff.css.map mode change 100644 => 100755 _static/prefix-723.3bccd435914aa0ff.css.map.gz mode change 100644 => 100755 _static/prefix-723.3e6434f80549315a.bundle.js mode change 100644 => 100755 _static/prefix-723.3e6434f80549315a.bundle.js.LICENSE.txt mode change 100644 => 100755 _static/prefix-723.3e6434f80549315a.bundle.js.LICENSE.txt.gz mode change 100644 => 100755 _static/prefix-723.3e6434f80549315a.bundle.js.gz mode change 100644 => 100755 _static/prefix-723.3e6434f80549315a.bundle.js.map mode change 100644 => 100755 _static/prefix-723.3e6434f80549315a.bundle.js.map.gz mode change 100644 => 100755 _static/prefix-737.cf869b6ea8bfad2f.css mode change 100644 => 100755 _static/prefix-737.cf869b6ea8bfad2f.css.gz mode change 100644 => 100755 _static/prefix-737.cf869b6ea8bfad2f.css.map mode change 100644 => 100755 _static/prefix-737.cf869b6ea8bfad2f.css.map.gz delete mode 100644 _static/prefix-819.6edefe408d7482c2.css.gz delete mode 100644 _static/prefix-819.6edefe408d7482c2.css.map delete mode 100644 _static/prefix-819.6edefe408d7482c2.css.map.gz mode change 100644 => 100755 _static/prefix-824.271ae6cff6401ed5.css mode change 100644 => 100755 _static/prefix-824.271ae6cff6401ed5.css.gz mode change 100644 => 100755 _static/prefix-824.271ae6cff6401ed5.css.map mode change 100644 => 100755 _static/prefix-824.271ae6cff6401ed5.css.map.gz rename _static/{prefix-819.6edefe408d7482c2.css => prefix-850.e86d03c2cec75438.css} (84%) mode change 100644 => 100755 create mode 100755 _static/prefix-850.e86d03c2cec75438.css.gz create mode 100755 _static/prefix-850.e86d03c2cec75438.css.map create mode 100755 _static/prefix-850.e86d03c2cec75438.css.map.gz mode change 100644 => 100755 _static/prefix-877.fa7c46f756cd5a82.css mode change 100644 => 100755 _static/prefix-877.fa7c46f756cd5a82.css.gz mode change 100644 => 100755 _static/prefix-877.fa7c46f756cd5a82.css.map mode change 100644 => 100755 _static/prefix-877.fa7c46f756cd5a82.css.map.gz mode change 100644 => 100755 _static/prefix-915.882512b642b7fffa.css mode change 100644 => 100755 _static/prefix-915.882512b642b7fffa.css.gz mode change 100644 => 100755 _static/prefix-915.882512b642b7fffa.css.map mode change 100644 => 100755 _static/prefix-915.882512b642b7fffa.css.map.gz rename _static/{prefix-runestone.7e141ad8414abf4a.bundle.js => prefix-runestone.1c010553c35c544c.bundle.js} (50%) mode change 100644 => 100755 rename _static/{prefix-runestone.7e141ad8414abf4a.bundle.js.LICENSE.txt => prefix-runestone.1c010553c35c544c.bundle.js.LICENSE.txt} (100%) mode change 100644 => 100755 rename _static/{prefix-runestone.7e141ad8414abf4a.bundle.js.LICENSE.txt.gz => prefix-runestone.1c010553c35c544c.bundle.js.LICENSE.txt.gz} (100%) mode change 100644 => 100755 create mode 100755 _static/prefix-runestone.1c010553c35c544c.bundle.js.gz create mode 100755 _static/prefix-runestone.1c010553c35c544c.bundle.js.map create mode 100755 _static/prefix-runestone.1c010553c35c544c.bundle.js.map.gz rename _static/{prefix-runestone.f4ab138da65f4203.css => prefix-runestone.677a75a9120449ff.css} (86%) mode change 100644 => 100755 rename _static/{prefix-runestone.f4ab138da65f4203.css.gz => prefix-runestone.677a75a9120449ff.css.gz} (78%) mode change 100644 => 100755 create mode 100755 _static/prefix-runestone.677a75a9120449ff.css.map create mode 100755 _static/prefix-runestone.677a75a9120449ff.css.map.gz delete mode 100644 _static/prefix-runestone.7e141ad8414abf4a.bundle.js.gz delete mode 100644 _static/prefix-runestone.7e141ad8414abf4a.bundle.js.map delete mode 100644 _static/prefix-runestone.7e141ad8414abf4a.bundle.js.map.gz delete mode 100644 _static/prefix-runestone.f4ab138da65f4203.css.map delete mode 100644 _static/prefix-runestone.f4ab138da65f4203.css.map.gz delete mode 100644 _static/prefix-runtime.42217a82c75796c8.bundle.js delete mode 100644 _static/prefix-runtime.42217a82c75796c8.bundle.js.gz delete mode 100644 _static/prefix-runtime.42217a82c75796c8.bundle.js.map.gz create mode 100755 _static/prefix-runtime.991c135ccf182bf5.bundle.js create mode 100755 _static/prefix-runtime.991c135ccf182bf5.bundle.js.gz rename _static/{prefix-runtime.42217a82c75796c8.bundle.js.map => prefix-runtime.991c135ccf182bf5.bundle.js.map} (77%) mode change 100644 => 100755 create mode 100755 _static/prefix-runtime.991c135ccf182bf5.bundle.js.map.gz mode change 100644 => 100755 _static/pretext/css/print-worksheet.css mode change 100644 => 100755 _static/pretext/css/print-worksheet.css.map mode change 100644 => 100755 _static/pretext/css/theme.css mode change 100644 => 100755 _static/pretext/css/theme.css.map mode change 100644 => 100755 _static/pretext/js/answer.js mode change 100644 => 100755 _static/pretext/js/diagcess/diagcess.js mode change 100644 => 100755 _static/pretext/js/edit.js mode change 100644 => 100755 _static/pretext/js/highlight.js mode change 100644 => 100755 _static/pretext/js/instructor.js mode change 100644 => 100755 _static/pretext/js/lib/jquery.espy.min.js mode change 100644 => 100755 _static/pretext/js/lib/jquery.min.js mode change 100644 => 100755 _static/pretext/js/lib/jquery.sticky.js mode change 100644 => 100755 _static/pretext/js/lib/knowl.js mode change 100644 => 100755 _static/pretext/js/lib/mathjaxknowl.js mode change 100644 => 100755 _static/pretext/js/lib/mathjaxknowl3.js mode change 100644 => 100755 _static/pretext/js/login.js mode change 100644 => 100755 _static/pretext/js/lti_iframe_resizer.js mode change 100644 => 100755 _static/pretext/js/pretext-stack/stackapicalls.js mode change 100644 => 100755 _static/pretext/js/pretext-stack/stackjsvle.js mode change 100644 => 100755 _static/pretext/js/pretext-webwork/2.16/pretext-webwork.js mode change 100644 => 100755 _static/pretext/js/pretext-webwork/2.17/pretext-webwork.js mode change 100644 => 100755 _static/pretext/js/pretext-webwork/2.18/pretext-webwork.js mode change 100644 => 100755 _static/pretext/js/pretext-webwork/2.19/pretext-webwork.js mode change 100644 => 100755 _static/pretext/js/pretext-webwork/2.20/pretext-webwork.js mode change 100644 => 100755 _static/pretext/js/pretext.js mode change 100644 => 100755 _static/pretext/js/pretext_add_on.js mode change 100644 => 100755 _static/pretext/js/pretext_search.js mode change 100644 => 100755 _static/pretext/js/ptx_search.js mode change 100644 => 100755 _static/pretext/js/user_preferences.js mode change 100644 => 100755 _static/sql-wasm.wasm mode change 100644 => 100755 _static/sql-wasm.wasm.gz mode change 100644 => 100755 _static/webpack_static_imports.json mode change 100644 => 100755 _static/webpack_static_imports.json.gz mode change 100644 => 100755 _static/webpack_static_imports.xml mode change 100644 => 100755 backmatter-2.html mode change 100644 => 100755 backmatter.html mode change 100644 => 100755 ch-Confidence-Intervals.html mode change 100644 => 100755 ch-Expected-Value.html mode change 100644 => 100755 ch-Hypothesis-Testing.html create mode 100755 ch-Introduction.html mode change 100644 => 100755 ch-Linear-Regression.html mode change 100644 => 100755 ch-Probability.html mode change 100644 => 100755 ch-Random-Variables.html mode change 100644 => 100755 front-colophon.html mode change 100644 => 100755 frontmatter.html create mode 100755 generated/latex-image/fig-Venn-diagram-2.svg mode change 100644 => 100755 index.html create mode 100755 knowl/xref/def-binomial-distribution.html mode change 100644 => 100755 knowl/xref/def-continuous-uniform-distribution.html create mode 100755 knowl/xref/def-discrete-EV.html create mode 100755 knowl/xref/def-variance.html create mode 100755 knowl/xref/example-EV-die.html create mode 100755 knowl/xref/example-EV-sum-2-dice.html create mode 100755 knowl/xref/example-binomial-EV.html create mode 100755 knowl/xref/example-indicator-EV.html create mode 100755 knowl/xref/example-indicator-variance.html create mode 100755 knowl/xref/example-joint-indicators.html mode change 100644 => 100755 knowl/xref/example-poisson-rate.html mode change 100644 => 100755 knowl/xref/example-rolls-conditional.html create mode 100755 knowl/xref/example-sample-space.html create mode 100755 knowl/xref/example-uniform-EV.html mode change 100644 => 100755 knowl/xref/fact-binomial-probability-formula.html mode change 100644 => 100755 knowl/xref/table-binomial-example.html create mode 100755 knowl/xref/thm-variance-formula.html mode change 100644 => 100755 lunr-pretext-search-index.js mode change 100644 => 100755 my-great-book.html mode change 100644 => 100755 sec-CLT.html mode change 100644 => 100755 sec-Chi-Squared.html mode change 100644 => 100755 sec-Conditional-Probability.html mode change 100644 => 100755 sec-Confidence-Intervals.html mode change 100644 => 100755 sec-Continuous-RVs.html mode change 100644 => 100755 sec-Correlation.html mode change 100644 => 100755 sec-Covariance.html mode change 100644 => 100755 sec-Discrete-RVs.html mode change 100644 => 100755 sec-Expected-Value.html mode change 100644 => 100755 sec-Independent-Events.html create mode 100755 sec-Introduction.html create mode 100755 sec-Joint-Distributions.html mode change 100644 => 100755 sec-Linear-Regression.html mode change 100644 => 100755 sec-One-Sample-Tests.html mode change 100644 => 100755 sec-Power.html mode change 100644 => 100755 sec-Probability.html mode change 100644 => 100755 sec-Set-Theory.html mode change 100644 => 100755 sec-Two-Sample-Tests.html mode change 100644 => 100755 sec-Variance.html diff --git a/.mapping.json b/.mapping.json old mode 100644 new mode 100755 index 8b4e536..91d697d --- a/.mapping.json +++ b/.mapping.json @@ -1 +1 @@ -{"source/main.ptx": ["my-great-book"], "source/frontmatter.ptx": ["frontmatter", "front-colophon"], "source/ch-Probability.ptx": ["ch-Probability", "sec-Set-Theory", "sec-Probability", "sec-Conditional-Probability", "sec-Independent-Events"], "source/ch-Random-Variables.ptx": ["ch-Random-Variables", "sec-Discrete-RVs", "sec-Continuous-RVs"], "source/ch-Expected-Value.ptx": ["ch-Expected-Value", "sec-Expected-Value", "sec-Variance", "sec-Covariance"], "source/ch-Confidence-Intervals.ptx": ["ch-Confidence-Intervals", "sec-CLT", "sec-Confidence-Intervals"], "source/ch-Hypothesis-Testing.ptx": ["ch-Hypothesis-Testing", "sec-One-Sample-Tests", "sec-Two-Sample-Tests", "sec-Power", "sec-Chi-Squared"], "source/ch-Linear-Regression.ptx": ["ch-Linear-Regression", "sec-Correlation", "sec-Linear-Regression"], "source/backmatter.ptx": ["backmatter"]} \ No newline at end of file +{"source/main.ptx": ["my-great-book"], "source/frontmatter.ptx": ["frontmatter", "front-colophon"], "source/ch-Introduction.ptx": ["ch-Introduction", "sec-Introduction"], "source/ch-Probability.ptx": ["ch-Probability", "sec-Set-Theory", "sec-Probability", "sec-Conditional-Probability", "sec-Independent-Events"], "source/ch-Random-Variables.ptx": ["ch-Random-Variables", "sec-Discrete-RVs", "sec-Continuous-RVs", "sec-Joint-Distributions"], "source/ch-Expected-Value.ptx": ["ch-Expected-Value", "sec-Expected-Value", "sec-Variance", "sec-Covariance"], "source/ch-Confidence-Intervals.ptx": ["ch-Confidence-Intervals", "sec-CLT", "sec-Confidence-Intervals"], "source/ch-Hypothesis-Testing.ptx": ["ch-Hypothesis-Testing", "sec-One-Sample-Tests", "sec-Two-Sample-Tests", "sec-Power", "sec-Chi-Squared"], "source/ch-Linear-Regression.ptx": ["ch-Linear-Regression", "sec-Correlation", "sec-Linear-Regression"], "source/backmatter.ptx": ["backmatter"]} \ No newline at end of file diff --git a/_static/._009b407a9881be10.ttf b/_static/._009b407a9881be10.ttf old mode 100644 new mode 100755 diff --git a/_static/._009b407a9881be10.ttf.gz b/_static/._009b407a9881be10.ttf.gz old mode 100644 new mode 100755 diff --git a/_static/._126.a976f62852f30b51.js b/_static/._126.a976f62852f30b51.js old mode 100644 new mode 100755 diff --git a/_static/._126.a976f62852f30b51.js.gz b/_static/._126.a976f62852f30b51.js.gz old mode 100644 new mode 100755 diff --git a/_static/._126.a976f62852f30b51.js.map b/_static/._126.a976f62852f30b51.js.map old mode 100644 new mode 100755 diff --git a/_static/._126.a976f62852f30b51.js.map.gz b/_static/._126.a976f62852f30b51.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._128.5bed857c54ac4e8b.js b/_static/._128.5bed857c54ac4e8b.js old mode 100644 new mode 100755 diff --git a/_static/._128.5bed857c54ac4e8b.js.gz b/_static/._128.5bed857c54ac4e8b.js.gz old mode 100644 new mode 100755 diff --git a/_static/._128.5bed857c54ac4e8b.js.map b/_static/._128.5bed857c54ac4e8b.js.map old mode 100644 new mode 100755 diff --git a/_static/._128.5bed857c54ac4e8b.js.map.gz b/_static/._128.5bed857c54ac4e8b.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._131.ee437eeefadd750d.js b/_static/._131.ee437eeefadd750d.js old mode 100644 new mode 100755 diff --git a/_static/._131.ee437eeefadd750d.js.gz b/_static/._131.ee437eeefadd750d.js.gz old mode 100644 new mode 100755 diff --git a/_static/._131.ee437eeefadd750d.js.map b/_static/._131.ee437eeefadd750d.js.map old mode 100644 new mode 100755 diff --git a/_static/._131.ee437eeefadd750d.js.map.gz b/_static/._131.ee437eeefadd750d.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._168.fe63e6dec2d06468.js b/_static/._168.fe63e6dec2d06468.js old mode 100644 new mode 100755 diff --git a/_static/._168.fe63e6dec2d06468.js.gz b/_static/._168.fe63e6dec2d06468.js.gz old mode 100644 new mode 100755 diff --git a/_static/._168.fe63e6dec2d06468.js.map b/_static/._168.fe63e6dec2d06468.js.map old mode 100644 new mode 100755 diff --git a/_static/._168.fe63e6dec2d06468.js.map.gz b/_static/._168.fe63e6dec2d06468.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._186.be52164d57f4b7e4.js b/_static/._186.be52164d57f4b7e4.js old mode 100644 new mode 100755 diff --git a/_static/._186.be52164d57f4b7e4.js.gz b/_static/._186.be52164d57f4b7e4.js.gz old mode 100644 new mode 100755 diff --git a/_static/._186.be52164d57f4b7e4.js.map b/_static/._186.be52164d57f4b7e4.js.map old mode 100644 new mode 100755 diff --git a/_static/._186.be52164d57f4b7e4.js.map.gz b/_static/._186.be52164d57f4b7e4.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._249.7ec032cf0b3ede9a.js b/_static/._249.7ec032cf0b3ede9a.js old mode 100644 new mode 100755 diff --git a/_static/._249.7ec032cf0b3ede9a.js.LICENSE.txt b/_static/._249.7ec032cf0b3ede9a.js.LICENSE.txt old mode 100644 new mode 100755 diff --git a/_static/._249.7ec032cf0b3ede9a.js.LICENSE.txt.gz b/_static/._249.7ec032cf0b3ede9a.js.LICENSE.txt.gz old mode 100644 new mode 100755 diff --git a/_static/._249.7ec032cf0b3ede9a.js.gz b/_static/._249.7ec032cf0b3ede9a.js.gz old mode 100644 new mode 100755 diff --git a/_static/._249.7ec032cf0b3ede9a.js.map b/_static/._249.7ec032cf0b3ede9a.js.map old mode 100644 new mode 100755 diff --git a/_static/._249.7ec032cf0b3ede9a.js.map.gz b/_static/._249.7ec032cf0b3ede9a.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._115.648ff4b5650f4c7c.js b/_static/._268.0659406f2c053718.js old mode 100644 new mode 100755 similarity index 100% rename from _static/._115.648ff4b5650f4c7c.js rename to _static/._268.0659406f2c053718.js diff --git a/_static/._115.648ff4b5650f4c7c.js.gz b/_static/._268.0659406f2c053718.js.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._115.648ff4b5650f4c7c.js.gz rename to _static/._268.0659406f2c053718.js.gz diff --git a/_static/._115.648ff4b5650f4c7c.js.map b/_static/._268.0659406f2c053718.js.map old mode 100644 new mode 100755 similarity index 100% rename from _static/._115.648ff4b5650f4c7c.js.map rename to _static/._268.0659406f2c053718.js.map diff --git a/_static/._115.648ff4b5650f4c7c.js.map.gz b/_static/._268.0659406f2c053718.js.map.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._115.648ff4b5650f4c7c.js.map.gz rename to _static/._268.0659406f2c053718.js.map.gz diff --git a/_static/._28.bb005543f41af5fb.js b/_static/._28.bb005543f41af5fb.js old mode 100644 new mode 100755 diff --git a/_static/._28.bb005543f41af5fb.js.LICENSE.txt b/_static/._28.bb005543f41af5fb.js.LICENSE.txt old mode 100644 new mode 100755 diff --git a/_static/._28.bb005543f41af5fb.js.gz b/_static/._28.bb005543f41af5fb.js.gz old mode 100644 new mode 100755 diff --git a/_static/._28.bb005543f41af5fb.js.map b/_static/._28.bb005543f41af5fb.js.map old mode 100644 new mode 100755 diff --git a/_static/._28.bb005543f41af5fb.js.map.gz b/_static/._28.bb005543f41af5fb.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._296.37eb8c05642d8ef9.js b/_static/._296.37eb8c05642d8ef9.js old mode 100644 new mode 100755 diff --git a/_static/._296.37eb8c05642d8ef9.js.gz b/_static/._296.37eb8c05642d8ef9.js.gz old mode 100644 new mode 100755 diff --git a/_static/._296.37eb8c05642d8ef9.js.map b/_static/._296.37eb8c05642d8ef9.js.map old mode 100644 new mode 100755 diff --git a/_static/._296.37eb8c05642d8ef9.js.map.gz b/_static/._296.37eb8c05642d8ef9.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._340.c525bd899366c5f9.js b/_static/._340.c525bd899366c5f9.js old mode 100644 new mode 100755 diff --git a/_static/._340.c525bd899366c5f9.js.gz b/_static/._340.c525bd899366c5f9.js.gz old mode 100644 new mode 100755 diff --git a/_static/._340.c525bd899366c5f9.js.map b/_static/._340.c525bd899366c5f9.js.map old mode 100644 new mode 100755 diff --git a/_static/._340.c525bd899366c5f9.js.map.gz b/_static/._340.c525bd899366c5f9.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._357.a6fa55aea0c38a63.js b/_static/._357.a6fa55aea0c38a63.js old mode 100644 new mode 100755 diff --git a/_static/._357.a6fa55aea0c38a63.js.LICENSE.txt b/_static/._357.a6fa55aea0c38a63.js.LICENSE.txt old mode 100644 new mode 100755 diff --git a/_static/._357.a6fa55aea0c38a63.js.LICENSE.txt.gz b/_static/._357.a6fa55aea0c38a63.js.LICENSE.txt.gz old mode 100644 new mode 100755 diff --git a/_static/._357.a6fa55aea0c38a63.js.gz b/_static/._357.a6fa55aea0c38a63.js.gz old mode 100644 new mode 100755 diff --git a/_static/._357.a6fa55aea0c38a63.js.map b/_static/._357.a6fa55aea0c38a63.js.map old mode 100644 new mode 100755 diff --git a/_static/._357.a6fa55aea0c38a63.js.map.gz b/_static/._357.a6fa55aea0c38a63.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._39.dc45aaf5abca8027.js b/_static/._39.dc45aaf5abca8027.js old mode 100644 new mode 100755 diff --git a/_static/._39.dc45aaf5abca8027.js.LICENSE.txt b/_static/._39.dc45aaf5abca8027.js.LICENSE.txt old mode 100644 new mode 100755 diff --git a/_static/._39.dc45aaf5abca8027.js.gz b/_static/._39.dc45aaf5abca8027.js.gz old mode 100644 new mode 100755 diff --git a/_static/._39.dc45aaf5abca8027.js.map b/_static/._39.dc45aaf5abca8027.js.map old mode 100644 new mode 100755 diff --git a/_static/._39.dc45aaf5abca8027.js.map.gz b/_static/._39.dc45aaf5abca8027.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._412.5965503d81003593.js b/_static/._412.5965503d81003593.js old mode 100644 new mode 100755 diff --git a/_static/._412.5965503d81003593.js.gz b/_static/._412.5965503d81003593.js.gz old mode 100644 new mode 100755 diff --git a/_static/._412.5965503d81003593.js.map b/_static/._412.5965503d81003593.js.map old mode 100644 new mode 100755 diff --git a/_static/._412.5965503d81003593.js.map.gz b/_static/._412.5965503d81003593.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._420.8dae5ad08a4e52ad.js b/_static/._420.8dae5ad08a4e52ad.js old mode 100644 new mode 100755 diff --git a/_static/._420.8dae5ad08a4e52ad.js.LICENSE.txt b/_static/._420.8dae5ad08a4e52ad.js.LICENSE.txt old mode 100644 new mode 100755 diff --git a/_static/._420.8dae5ad08a4e52ad.js.gz b/_static/._420.8dae5ad08a4e52ad.js.gz old mode 100644 new mode 100755 diff --git a/_static/._420.8dae5ad08a4e52ad.js.map b/_static/._420.8dae5ad08a4e52ad.js.map old mode 100644 new mode 100755 diff --git a/_static/._420.8dae5ad08a4e52ad.js.map.gz b/_static/._420.8dae5ad08a4e52ad.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._442.f48919e396acaa18.js b/_static/._442.f48919e396acaa18.js old mode 100644 new mode 100755 diff --git a/_static/._442.f48919e396acaa18.js.gz b/_static/._442.f48919e396acaa18.js.gz old mode 100644 new mode 100755 diff --git a/_static/._442.f48919e396acaa18.js.map b/_static/._442.f48919e396acaa18.js.map old mode 100644 new mode 100755 diff --git a/_static/._442.f48919e396acaa18.js.map.gz b/_static/._442.f48919e396acaa18.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._460.bae9001422d7a484.js b/_static/._460.bae9001422d7a484.js old mode 100644 new mode 100755 diff --git a/_static/._460.bae9001422d7a484.js.gz b/_static/._460.bae9001422d7a484.js.gz old mode 100644 new mode 100755 diff --git a/_static/._460.bae9001422d7a484.js.map b/_static/._460.bae9001422d7a484.js.map old mode 100644 new mode 100755 diff --git a/_static/._460.bae9001422d7a484.js.map.gz b/_static/._460.bae9001422d7a484.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._466.4e1a3fb09520281a.js b/_static/._466.4e1a3fb09520281a.js old mode 100644 new mode 100755 diff --git a/_static/._466.4e1a3fb09520281a.js.gz b/_static/._466.4e1a3fb09520281a.js.gz old mode 100644 new mode 100755 diff --git a/_static/._466.4e1a3fb09520281a.js.map b/_static/._466.4e1a3fb09520281a.js.map old mode 100644 new mode 100755 diff --git a/_static/._466.4e1a3fb09520281a.js.map.gz b/_static/._466.4e1a3fb09520281a.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._486.78d96ffc5c65634b.js b/_static/._486.78d96ffc5c65634b.js old mode 100644 new mode 100755 diff --git a/_static/._486.78d96ffc5c65634b.js.gz b/_static/._486.78d96ffc5c65634b.js.gz old mode 100644 new mode 100755 diff --git a/_static/._486.78d96ffc5c65634b.js.map b/_static/._486.78d96ffc5c65634b.js.map old mode 100644 new mode 100755 diff --git a/_static/._486.78d96ffc5c65634b.js.map.gz b/_static/._486.78d96ffc5c65634b.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._4ba85deaf3670942.woff b/_static/._4ba85deaf3670942.woff old mode 100644 new mode 100755 diff --git a/_static/._529.115400ffea03835d.js b/_static/._529.115400ffea03835d.js old mode 100644 new mode 100755 diff --git a/_static/._529.115400ffea03835d.js.gz b/_static/._529.115400ffea03835d.js.gz old mode 100644 new mode 100755 diff --git a/_static/._529.115400ffea03835d.js.map b/_static/._529.115400ffea03835d.js.map old mode 100644 new mode 100755 diff --git a/_static/._529.115400ffea03835d.js.map.gz b/_static/._529.115400ffea03835d.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._566.0e38ac5442cc38c2.js b/_static/._566.0e38ac5442cc38c2.js old mode 100644 new mode 100755 diff --git a/_static/._566.0e38ac5442cc38c2.js.gz b/_static/._566.0e38ac5442cc38c2.js.gz old mode 100644 new mode 100755 diff --git a/_static/._566.0e38ac5442cc38c2.js.map b/_static/._566.0e38ac5442cc38c2.js.map old mode 100644 new mode 100755 diff --git a/_static/._566.0e38ac5442cc38c2.js.map.gz b/_static/._566.0e38ac5442cc38c2.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._576.f923ab1e9910a1be.js b/_static/._576.f923ab1e9910a1be.js old mode 100644 new mode 100755 diff --git a/_static/._576.f923ab1e9910a1be.js.gz b/_static/._576.f923ab1e9910a1be.js.gz old mode 100644 new mode 100755 diff --git a/_static/._576.f923ab1e9910a1be.js.map b/_static/._576.f923ab1e9910a1be.js.map old mode 100644 new mode 100755 diff --git a/_static/._576.f923ab1e9910a1be.js.map.gz b/_static/._576.f923ab1e9910a1be.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._580.f387819ad2e14f0a.js b/_static/._580.f387819ad2e14f0a.js old mode 100644 new mode 100755 diff --git a/_static/._580.f387819ad2e14f0a.js.gz b/_static/._580.f387819ad2e14f0a.js.gz old mode 100644 new mode 100755 diff --git a/_static/._580.f387819ad2e14f0a.js.map b/_static/._580.f387819ad2e14f0a.js.map old mode 100644 new mode 100755 diff --git a/_static/._580.f387819ad2e14f0a.js.map.gz b/_static/._580.f387819ad2e14f0a.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._616.89f80a32caf41aef.js b/_static/._616.89f80a32caf41aef.js old mode 100644 new mode 100755 diff --git a/_static/._616.89f80a32caf41aef.js.gz b/_static/._616.89f80a32caf41aef.js.gz old mode 100644 new mode 100755 diff --git a/_static/._616.89f80a32caf41aef.js.map b/_static/._616.89f80a32caf41aef.js.map old mode 100644 new mode 100755 diff --git a/_static/._616.89f80a32caf41aef.js.map.gz b/_static/._616.89f80a32caf41aef.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._625.120987bdd5293ae3.js b/_static/._625.120987bdd5293ae3.js old mode 100644 new mode 100755 diff --git a/_static/._625.120987bdd5293ae3.js.LICENSE.txt b/_static/._625.120987bdd5293ae3.js.LICENSE.txt old mode 100644 new mode 100755 diff --git a/_static/._625.120987bdd5293ae3.js.LICENSE.txt.gz b/_static/._625.120987bdd5293ae3.js.LICENSE.txt.gz old mode 100644 new mode 100755 diff --git a/_static/._625.120987bdd5293ae3.js.gz b/_static/._625.120987bdd5293ae3.js.gz old mode 100644 new mode 100755 diff --git a/_static/._625.120987bdd5293ae3.js.map b/_static/._625.120987bdd5293ae3.js.map old mode 100644 new mode 100755 diff --git a/_static/._625.120987bdd5293ae3.js.map.gz b/_static/._625.120987bdd5293ae3.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._640.cbc8d3a34deb8837.js b/_static/._640.cbc8d3a34deb8837.js old mode 100644 new mode 100755 diff --git a/_static/._640.cbc8d3a34deb8837.js.map b/_static/._640.cbc8d3a34deb8837.js.map old mode 100644 new mode 100755 diff --git a/_static/._640.cbc8d3a34deb8837.js.map.gz b/_static/._640.cbc8d3a34deb8837.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._662.1bb5065279414751.js b/_static/._662.1bb5065279414751.js old mode 100644 new mode 100755 diff --git a/_static/._662.1bb5065279414751.js.gz b/_static/._662.1bb5065279414751.js.gz old mode 100644 new mode 100755 diff --git a/_static/._662.1bb5065279414751.js.map b/_static/._662.1bb5065279414751.js.map old mode 100644 new mode 100755 diff --git a/_static/._662.1bb5065279414751.js.map.gz b/_static/._662.1bb5065279414751.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._669.05a3639d12541567.js b/_static/._669.05a3639d12541567.js old mode 100644 new mode 100755 diff --git a/_static/._669.05a3639d12541567.js.LICENSE.txt b/_static/._669.05a3639d12541567.js.LICENSE.txt old mode 100644 new mode 100755 diff --git a/_static/._669.05a3639d12541567.js.gz b/_static/._669.05a3639d12541567.js.gz old mode 100644 new mode 100755 diff --git a/_static/._669.05a3639d12541567.js.map b/_static/._669.05a3639d12541567.js.map old mode 100644 new mode 100755 diff --git a/_static/._669.05a3639d12541567.js.map.gz b/_static/._669.05a3639d12541567.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._680.ec85c3ce31480628.js b/_static/._680.ec85c3ce31480628.js old mode 100644 new mode 100755 diff --git a/_static/._680.ec85c3ce31480628.js.gz b/_static/._680.ec85c3ce31480628.js.gz old mode 100644 new mode 100755 diff --git a/_static/._680.ec85c3ce31480628.js.map b/_static/._680.ec85c3ce31480628.js.map old mode 100644 new mode 100755 diff --git a/_static/._680.ec85c3ce31480628.js.map.gz b/_static/._680.ec85c3ce31480628.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._759.f27ff66e7ad33076.js b/_static/._759.f27ff66e7ad33076.js old mode 100644 new mode 100755 diff --git a/_static/._759.f27ff66e7ad33076.js.gz b/_static/._759.f27ff66e7ad33076.js.gz old mode 100644 new mode 100755 diff --git a/_static/._759.f27ff66e7ad33076.js.map b/_static/._759.f27ff66e7ad33076.js.map old mode 100644 new mode 100755 diff --git a/_static/._759.f27ff66e7ad33076.js.map.gz b/_static/._759.f27ff66e7ad33076.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._764.c33a81cafe63d2b6.js b/_static/._764.c33a81cafe63d2b6.js old mode 100644 new mode 100755 diff --git a/_static/._764.c33a81cafe63d2b6.js.LICENSE.txt b/_static/._764.c33a81cafe63d2b6.js.LICENSE.txt old mode 100644 new mode 100755 diff --git a/_static/._764.c33a81cafe63d2b6.js.LICENSE.txt.gz b/_static/._764.c33a81cafe63d2b6.js.LICENSE.txt.gz old mode 100644 new mode 100755 diff --git a/_static/._764.c33a81cafe63d2b6.js.gz b/_static/._764.c33a81cafe63d2b6.js.gz old mode 100644 new mode 100755 diff --git a/_static/._764.c33a81cafe63d2b6.js.map b/_static/._764.c33a81cafe63d2b6.js.map old mode 100644 new mode 100755 diff --git a/_static/._764.c33a81cafe63d2b6.js.map.gz b/_static/._764.c33a81cafe63d2b6.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._770.7bd6d39128dde910.js b/_static/._770.7bd6d39128dde910.js old mode 100644 new mode 100755 diff --git a/_static/._770.7bd6d39128dde910.js.LICENSE.txt b/_static/._770.7bd6d39128dde910.js.LICENSE.txt old mode 100644 new mode 100755 diff --git a/_static/._770.7bd6d39128dde910.js.LICENSE.txt.gz b/_static/._770.7bd6d39128dde910.js.LICENSE.txt.gz old mode 100644 new mode 100755 diff --git a/_static/._770.7bd6d39128dde910.js.gz b/_static/._770.7bd6d39128dde910.js.gz old mode 100644 new mode 100755 diff --git a/_static/._770.7bd6d39128dde910.js.map b/_static/._770.7bd6d39128dde910.js.map old mode 100644 new mode 100755 diff --git a/_static/._770.7bd6d39128dde910.js.map.gz b/_static/._770.7bd6d39128dde910.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._7a0f4b092e86cb52.eot b/_static/._7a0f4b092e86cb52.eot old mode 100644 new mode 100755 diff --git a/_static/._817.3438cd0f1b0f98bc.js b/_static/._817.3438cd0f1b0f98bc.js old mode 100644 new mode 100755 diff --git a/_static/._817.3438cd0f1b0f98bc.js.gz b/_static/._817.3438cd0f1b0f98bc.js.gz old mode 100644 new mode 100755 diff --git a/_static/._817.3438cd0f1b0f98bc.js.map b/_static/._817.3438cd0f1b0f98bc.js.map old mode 100644 new mode 100755 diff --git a/_static/._817.3438cd0f1b0f98bc.js.map.gz b/_static/._817.3438cd0f1b0f98bc.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._819.3e20e27de12f3abf.js b/_static/._819.fa7785b520e523a5.js old mode 100644 new mode 100755 similarity index 100% rename from _static/._819.3e20e27de12f3abf.js rename to _static/._819.fa7785b520e523a5.js diff --git a/_static/._819.3e20e27de12f3abf.js.gz b/_static/._819.fa7785b520e523a5.js.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._819.3e20e27de12f3abf.js.gz rename to _static/._819.fa7785b520e523a5.js.gz diff --git a/_static/._819.3e20e27de12f3abf.js.map b/_static/._819.fa7785b520e523a5.js.map old mode 100644 new mode 100755 similarity index 100% rename from _static/._819.3e20e27de12f3abf.js.map rename to _static/._819.fa7785b520e523a5.js.map diff --git a/_static/._819.3e20e27de12f3abf.js.map.gz b/_static/._819.fa7785b520e523a5.js.map.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._819.3e20e27de12f3abf.js.map.gz rename to _static/._819.fa7785b520e523a5.js.map.gz diff --git a/_static/._824.4343b78afc34c12f.js b/_static/._824.4343b78afc34c12f.js old mode 100644 new mode 100755 diff --git a/_static/._824.4343b78afc34c12f.js.gz b/_static/._824.4343b78afc34c12f.js.gz old mode 100644 new mode 100755 diff --git a/_static/._824.4343b78afc34c12f.js.map b/_static/._824.4343b78afc34c12f.js.map old mode 100644 new mode 100755 diff --git a/_static/._824.4343b78afc34c12f.js.map.gz b/_static/._824.4343b78afc34c12f.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._85f0466cb4ab3a4d.svg b/_static/._85f0466cb4ab3a4d.svg old mode 100644 new mode 100755 diff --git a/_static/._85f0466cb4ab3a4d.svg.gz b/_static/._85f0466cb4ab3a4d.svg.gz old mode 100644 new mode 100755 diff --git a/_static/._877.fc49cc812ccc4937.js b/_static/._877.fc49cc812ccc4937.js old mode 100644 new mode 100755 diff --git a/_static/._877.fc49cc812ccc4937.js.gz b/_static/._877.fc49cc812ccc4937.js.gz old mode 100644 new mode 100755 diff --git a/_static/._877.fc49cc812ccc4937.js.map b/_static/._877.fc49cc812ccc4937.js.map old mode 100644 new mode 100755 diff --git a/_static/._877.fc49cc812ccc4937.js.map.gz b/_static/._877.fc49cc812ccc4937.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._915.8f500bccc86f901d.js b/_static/._915.8f500bccc86f901d.js old mode 100644 new mode 100755 diff --git a/_static/._915.8f500bccc86f901d.js.gz b/_static/._915.8f500bccc86f901d.js.gz old mode 100644 new mode 100755 diff --git a/_static/._915.8f500bccc86f901d.js.map b/_static/._915.8f500bccc86f901d.js.map old mode 100644 new mode 100755 diff --git a/_static/._915.8f500bccc86f901d.js.map.gz b/_static/._915.8f500bccc86f901d.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._919.237aced0c044e4b6.js b/_static/._919.237aced0c044e4b6.js old mode 100644 new mode 100755 diff --git a/_static/._919.237aced0c044e4b6.js.gz b/_static/._919.237aced0c044e4b6.js.gz old mode 100644 new mode 100755 diff --git a/_static/._919.237aced0c044e4b6.js.map b/_static/._919.237aced0c044e4b6.js.map old mode 100644 new mode 100755 diff --git a/_static/._919.237aced0c044e4b6.js.map.gz b/_static/._919.237aced0c044e4b6.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._b70781972ce7320b.woff2 b/_static/._b70781972ce7320b.woff2 old mode 100644 new mode 100755 diff --git a/_static/._prefix-131.b184379d0dc5871b.css b/_static/._prefix-131.b184379d0dc5871b.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-131.b184379d0dc5871b.css.gz b/_static/._prefix-131.b184379d0dc5871b.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-131.b184379d0dc5871b.css.map b/_static/._prefix-131.b184379d0dc5871b.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-131.b184379d0dc5871b.css.map.gz b/_static/._prefix-131.b184379d0dc5871b.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-168.1c4deaed00ca1f5e.css b/_static/._prefix-168.1c4deaed00ca1f5e.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-168.1c4deaed00ca1f5e.css.gz b/_static/._prefix-168.1c4deaed00ca1f5e.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-168.1c4deaed00ca1f5e.css.map b/_static/._prefix-168.1c4deaed00ca1f5e.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-168.1c4deaed00ca1f5e.css.map.gz b/_static/._prefix-168.1c4deaed00ca1f5e.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-186.0d47de180767fda9.css b/_static/._prefix-186.0d47de180767fda9.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-186.0d47de180767fda9.css.map b/_static/._prefix-186.0d47de180767fda9.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-186.0d47de180767fda9.css.map.gz b/_static/._prefix-186.0d47de180767fda9.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-198.86b6b2a70a576922.css b/_static/._prefix-198.86b6b2a70a576922.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-198.86b6b2a70a576922.css.gz b/_static/._prefix-198.86b6b2a70a576922.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-198.86b6b2a70a576922.css.map b/_static/._prefix-198.86b6b2a70a576922.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-198.86b6b2a70a576922.css.map.gz b/_static/._prefix-198.86b6b2a70a576922.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-249.6ca19da539a8ed1a.css b/_static/._prefix-249.6ca19da539a8ed1a.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-249.6ca19da539a8ed1a.css.gz b/_static/._prefix-249.6ca19da539a8ed1a.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-249.6ca19da539a8ed1a.css.map b/_static/._prefix-249.6ca19da539a8ed1a.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-249.6ca19da539a8ed1a.css.map.gz b/_static/._prefix-249.6ca19da539a8ed1a.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-115.83df5da0966564d5.css b/_static/._prefix-268.c9e33e1350d18af9.css old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-115.83df5da0966564d5.css rename to _static/._prefix-268.c9e33e1350d18af9.css diff --git a/_static/._prefix-115.83df5da0966564d5.css.gz b/_static/._prefix-268.c9e33e1350d18af9.css.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-115.83df5da0966564d5.css.gz rename to _static/._prefix-268.c9e33e1350d18af9.css.gz diff --git a/_static/._prefix-115.83df5da0966564d5.css.map b/_static/._prefix-268.c9e33e1350d18af9.css.map old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-115.83df5da0966564d5.css.map rename to _static/._prefix-268.c9e33e1350d18af9.css.map diff --git a/_static/._prefix-115.83df5da0966564d5.css.map.gz b/_static/._prefix-268.c9e33e1350d18af9.css.map.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-115.83df5da0966564d5.css.map.gz rename to _static/._prefix-268.c9e33e1350d18af9.css.map.gz diff --git a/_static/._prefix-294.986bf74bfa4ccbd4.css b/_static/._prefix-294.986bf74bfa4ccbd4.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-294.986bf74bfa4ccbd4.css.gz b/_static/._prefix-294.986bf74bfa4ccbd4.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-294.986bf74bfa4ccbd4.css.map b/_static/._prefix-294.986bf74bfa4ccbd4.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-294.986bf74bfa4ccbd4.css.map.gz b/_static/._prefix-294.986bf74bfa4ccbd4.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-350.dbca9271f6e2dfbf.css b/_static/._prefix-350.dbca9271f6e2dfbf.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-350.dbca9271f6e2dfbf.css.gz b/_static/._prefix-350.dbca9271f6e2dfbf.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-350.dbca9271f6e2dfbf.css.map b/_static/._prefix-350.dbca9271f6e2dfbf.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-350.dbca9271f6e2dfbf.css.map.gz b/_static/._prefix-350.dbca9271f6e2dfbf.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-380.67748940131a4a84.css b/_static/._prefix-380.67748940131a4a84.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-380.67748940131a4a84.css.map b/_static/._prefix-380.67748940131a4a84.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-380.67748940131a4a84.css.map.gz b/_static/._prefix-380.67748940131a4a84.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-39.89cf817b9a35aeca.css b/_static/._prefix-39.89cf817b9a35aeca.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-39.89cf817b9a35aeca.css.gz b/_static/._prefix-39.89cf817b9a35aeca.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-39.89cf817b9a35aeca.css.map b/_static/._prefix-39.89cf817b9a35aeca.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-39.89cf817b9a35aeca.css.map.gz b/_static/._prefix-39.89cf817b9a35aeca.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-412.25f3c4ff23eb9893.css b/_static/._prefix-412.25f3c4ff23eb9893.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-412.25f3c4ff23eb9893.css.gz b/_static/._prefix-412.25f3c4ff23eb9893.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-412.25f3c4ff23eb9893.css.map b/_static/._prefix-412.25f3c4ff23eb9893.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-412.25f3c4ff23eb9893.css.map.gz b/_static/._prefix-412.25f3c4ff23eb9893.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-442.6ae0ea584f8e75c5.css b/_static/._prefix-442.6ae0ea584f8e75c5.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-442.6ae0ea584f8e75c5.css.gz b/_static/._prefix-442.6ae0ea584f8e75c5.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-442.6ae0ea584f8e75c5.css.map b/_static/._prefix-442.6ae0ea584f8e75c5.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-442.6ae0ea584f8e75c5.css.map.gz b/_static/._prefix-442.6ae0ea584f8e75c5.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-460.7c0b70502d117f7d.css b/_static/._prefix-460.7c0b70502d117f7d.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-460.7c0b70502d117f7d.css.map b/_static/._prefix-460.7c0b70502d117f7d.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-486.990aca82e7ba3e1c.css b/_static/._prefix-486.990aca82e7ba3e1c.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-486.990aca82e7ba3e1c.css.gz b/_static/._prefix-486.990aca82e7ba3e1c.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-486.990aca82e7ba3e1c.css.map b/_static/._prefix-486.990aca82e7ba3e1c.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-486.990aca82e7ba3e1c.css.map.gz b/_static/._prefix-486.990aca82e7ba3e1c.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-576.9b1852878840651d.css b/_static/._prefix-576.9b1852878840651d.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-576.9b1852878840651d.css.gz b/_static/._prefix-576.9b1852878840651d.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-576.9b1852878840651d.css.map b/_static/._prefix-576.9b1852878840651d.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-576.9b1852878840651d.css.map.gz b/_static/._prefix-576.9b1852878840651d.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-580.22958d4327b0425a.css b/_static/._prefix-580.22958d4327b0425a.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-580.22958d4327b0425a.css.gz b/_static/._prefix-580.22958d4327b0425a.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-580.22958d4327b0425a.css.map b/_static/._prefix-580.22958d4327b0425a.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-580.22958d4327b0425a.css.map.gz b/_static/._prefix-580.22958d4327b0425a.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-616.5c78f604ddad1ec0.css b/_static/._prefix-616.5c78f604ddad1ec0.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-616.5c78f604ddad1ec0.css.gz b/_static/._prefix-616.5c78f604ddad1ec0.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-616.5c78f604ddad1ec0.css.map b/_static/._prefix-616.5c78f604ddad1ec0.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-616.5c78f604ddad1ec0.css.map.gz b/_static/._prefix-616.5c78f604ddad1ec0.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-621.8c109e297bdd8ce7.css b/_static/._prefix-621.8c109e297bdd8ce7.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-621.8c109e297bdd8ce7.css.gz b/_static/._prefix-621.8c109e297bdd8ce7.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-621.8c109e297bdd8ce7.css.map b/_static/._prefix-621.8c109e297bdd8ce7.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-621.8c109e297bdd8ce7.css.map.gz b/_static/._prefix-621.8c109e297bdd8ce7.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-723.3bccd435914aa0ff.css b/_static/._prefix-723.3bccd435914aa0ff.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-723.3bccd435914aa0ff.css.gz b/_static/._prefix-723.3bccd435914aa0ff.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-723.3bccd435914aa0ff.css.map b/_static/._prefix-723.3bccd435914aa0ff.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-723.3bccd435914aa0ff.css.map.gz b/_static/._prefix-723.3bccd435914aa0ff.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-723.3e6434f80549315a.bundle.js b/_static/._prefix-723.3e6434f80549315a.bundle.js old mode 100644 new mode 100755 diff --git a/_static/._prefix-723.3e6434f80549315a.bundle.js.LICENSE.txt b/_static/._prefix-723.3e6434f80549315a.bundle.js.LICENSE.txt old mode 100644 new mode 100755 diff --git a/_static/._prefix-723.3e6434f80549315a.bundle.js.LICENSE.txt.gz b/_static/._prefix-723.3e6434f80549315a.bundle.js.LICENSE.txt.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-723.3e6434f80549315a.bundle.js.gz b/_static/._prefix-723.3e6434f80549315a.bundle.js.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-723.3e6434f80549315a.bundle.js.map b/_static/._prefix-723.3e6434f80549315a.bundle.js.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-723.3e6434f80549315a.bundle.js.map.gz b/_static/._prefix-723.3e6434f80549315a.bundle.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-737.cf869b6ea8bfad2f.css b/_static/._prefix-737.cf869b6ea8bfad2f.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-737.cf869b6ea8bfad2f.css.gz b/_static/._prefix-737.cf869b6ea8bfad2f.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-737.cf869b6ea8bfad2f.css.map b/_static/._prefix-737.cf869b6ea8bfad2f.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-737.cf869b6ea8bfad2f.css.map.gz b/_static/._prefix-737.cf869b6ea8bfad2f.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-824.271ae6cff6401ed5.css b/_static/._prefix-824.271ae6cff6401ed5.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-824.271ae6cff6401ed5.css.gz b/_static/._prefix-824.271ae6cff6401ed5.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-824.271ae6cff6401ed5.css.map b/_static/._prefix-824.271ae6cff6401ed5.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-824.271ae6cff6401ed5.css.map.gz b/_static/._prefix-824.271ae6cff6401ed5.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-819.6edefe408d7482c2.css b/_static/._prefix-850.e86d03c2cec75438.css old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-819.6edefe408d7482c2.css rename to _static/._prefix-850.e86d03c2cec75438.css diff --git a/_static/._prefix-819.6edefe408d7482c2.css.gz b/_static/._prefix-850.e86d03c2cec75438.css.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-819.6edefe408d7482c2.css.gz rename to _static/._prefix-850.e86d03c2cec75438.css.gz diff --git a/_static/._prefix-819.6edefe408d7482c2.css.map b/_static/._prefix-850.e86d03c2cec75438.css.map old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-819.6edefe408d7482c2.css.map rename to _static/._prefix-850.e86d03c2cec75438.css.map diff --git a/_static/._prefix-819.6edefe408d7482c2.css.map.gz b/_static/._prefix-850.e86d03c2cec75438.css.map.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-819.6edefe408d7482c2.css.map.gz rename to _static/._prefix-850.e86d03c2cec75438.css.map.gz diff --git a/_static/._prefix-877.fa7c46f756cd5a82.css b/_static/._prefix-877.fa7c46f756cd5a82.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-877.fa7c46f756cd5a82.css.gz b/_static/._prefix-877.fa7c46f756cd5a82.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-877.fa7c46f756cd5a82.css.map b/_static/._prefix-877.fa7c46f756cd5a82.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-877.fa7c46f756cd5a82.css.map.gz b/_static/._prefix-877.fa7c46f756cd5a82.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-915.882512b642b7fffa.css b/_static/._prefix-915.882512b642b7fffa.css old mode 100644 new mode 100755 diff --git a/_static/._prefix-915.882512b642b7fffa.css.gz b/_static/._prefix-915.882512b642b7fffa.css.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-915.882512b642b7fffa.css.map b/_static/._prefix-915.882512b642b7fffa.css.map old mode 100644 new mode 100755 diff --git a/_static/._prefix-915.882512b642b7fffa.css.map.gz b/_static/._prefix-915.882512b642b7fffa.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/._prefix-runestone.7e141ad8414abf4a.bundle.js b/_static/._prefix-runestone.1c010553c35c544c.bundle.js old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-runestone.7e141ad8414abf4a.bundle.js rename to _static/._prefix-runestone.1c010553c35c544c.bundle.js diff --git a/_static/._prefix-runestone.7e141ad8414abf4a.bundle.js.LICENSE.txt b/_static/._prefix-runestone.1c010553c35c544c.bundle.js.LICENSE.txt old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-runestone.7e141ad8414abf4a.bundle.js.LICENSE.txt rename to _static/._prefix-runestone.1c010553c35c544c.bundle.js.LICENSE.txt diff --git a/_static/._prefix-runestone.7e141ad8414abf4a.bundle.js.LICENSE.txt.gz b/_static/._prefix-runestone.1c010553c35c544c.bundle.js.LICENSE.txt.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-runestone.7e141ad8414abf4a.bundle.js.LICENSE.txt.gz rename to _static/._prefix-runestone.1c010553c35c544c.bundle.js.LICENSE.txt.gz diff --git a/_static/._prefix-runestone.7e141ad8414abf4a.bundle.js.gz b/_static/._prefix-runestone.1c010553c35c544c.bundle.js.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-runestone.7e141ad8414abf4a.bundle.js.gz rename to _static/._prefix-runestone.1c010553c35c544c.bundle.js.gz diff --git a/_static/._prefix-runestone.7e141ad8414abf4a.bundle.js.map b/_static/._prefix-runestone.1c010553c35c544c.bundle.js.map old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-runestone.7e141ad8414abf4a.bundle.js.map rename to _static/._prefix-runestone.1c010553c35c544c.bundle.js.map diff --git a/_static/._prefix-runestone.7e141ad8414abf4a.bundle.js.map.gz b/_static/._prefix-runestone.1c010553c35c544c.bundle.js.map.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-runestone.7e141ad8414abf4a.bundle.js.map.gz rename to _static/._prefix-runestone.1c010553c35c544c.bundle.js.map.gz diff --git a/_static/._prefix-runestone.f4ab138da65f4203.css b/_static/._prefix-runestone.677a75a9120449ff.css old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-runestone.f4ab138da65f4203.css rename to _static/._prefix-runestone.677a75a9120449ff.css diff --git a/_static/._prefix-runestone.f4ab138da65f4203.css.gz b/_static/._prefix-runestone.677a75a9120449ff.css.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-runestone.f4ab138da65f4203.css.gz rename to _static/._prefix-runestone.677a75a9120449ff.css.gz diff --git a/_static/._prefix-runestone.f4ab138da65f4203.css.map b/_static/._prefix-runestone.677a75a9120449ff.css.map old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-runestone.f4ab138da65f4203.css.map rename to _static/._prefix-runestone.677a75a9120449ff.css.map diff --git a/_static/._prefix-runestone.f4ab138da65f4203.css.map.gz b/_static/._prefix-runestone.677a75a9120449ff.css.map.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-runestone.f4ab138da65f4203.css.map.gz rename to _static/._prefix-runestone.677a75a9120449ff.css.map.gz diff --git a/_static/._prefix-runtime.42217a82c75796c8.bundle.js b/_static/._prefix-runtime.991c135ccf182bf5.bundle.js old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-runtime.42217a82c75796c8.bundle.js rename to _static/._prefix-runtime.991c135ccf182bf5.bundle.js diff --git a/_static/._prefix-runtime.42217a82c75796c8.bundle.js.gz b/_static/._prefix-runtime.991c135ccf182bf5.bundle.js.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-runtime.42217a82c75796c8.bundle.js.gz rename to _static/._prefix-runtime.991c135ccf182bf5.bundle.js.gz diff --git a/_static/._prefix-runtime.42217a82c75796c8.bundle.js.map b/_static/._prefix-runtime.991c135ccf182bf5.bundle.js.map old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-runtime.42217a82c75796c8.bundle.js.map rename to _static/._prefix-runtime.991c135ccf182bf5.bundle.js.map diff --git a/_static/._prefix-runtime.42217a82c75796c8.bundle.js.map.gz b/_static/._prefix-runtime.991c135ccf182bf5.bundle.js.map.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/._prefix-runtime.42217a82c75796c8.bundle.js.map.gz rename to _static/._prefix-runtime.991c135ccf182bf5.bundle.js.map.gz diff --git a/_static/._sql-wasm.wasm b/_static/._sql-wasm.wasm old mode 100644 new mode 100755 diff --git a/_static/._sql-wasm.wasm.gz b/_static/._sql-wasm.wasm.gz old mode 100644 new mode 100755 diff --git a/_static/._webpack_static_imports.json b/_static/._webpack_static_imports.json old mode 100644 new mode 100755 diff --git a/_static/._webpack_static_imports.json.gz b/_static/._webpack_static_imports.json.gz old mode 100644 new mode 100755 diff --git a/_static/._webpack_static_imports.xml b/_static/._webpack_static_imports.xml old mode 100644 new mode 100755 diff --git a/_static/009b407a9881be10.ttf b/_static/009b407a9881be10.ttf old mode 100644 new mode 100755 diff --git a/_static/009b407a9881be10.ttf.gz b/_static/009b407a9881be10.ttf.gz old mode 100644 new mode 100755 diff --git a/_static/115.648ff4b5650f4c7c.js.gz b/_static/115.648ff4b5650f4c7c.js.gz deleted file mode 100644 index e56520eb0f7289251391b602d3dd438706a90a7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8978 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 sZV9^pgXxCDi_@% diff --git a/_static/115.648ff4b5650f4c7c.js.map b/_static/115.648ff4b5650f4c7c.js.map deleted file mode 100644 index 4f5259a..0000000 --- a/_static/115.648ff4b5650f4c7c.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"115.648ff4b5650f4c7c.js","mappings":"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","sources":["webpack://WebComponents/./runestone/matching/js/timed_matching.js","webpack://WebComponents/./runestone/timed/js/timed.js","webpack://WebComponents/./runestone/shortanswer/js/shortanswer.js","webpack://WebComponents/./runestone/shortanswer/js/timed_shortanswer.js"],"sourcesContent":["import {MatchingProblem} from \"./matching.js\";\n\nexport default class TimedMatching extends MatchingProblem {\n constructor(opts) {\n super(opts);\n this.renderTimedIcon(this.containerDiv);\n this.hideButtons();\n this.needsReinitialization = true;\n }\n\n hideButtons() {\n this.gradeBtn.style.display = \"none\";\n this.helpBtn.style.display = \"none\";\n }\n\n renderTimedIcon(component) {\n // renders the clock icon on timed components. The component parameter\n // is the element that the icon should be appended to.\n var timeIconDiv = document.createElement(\"div\");\n var timeIcon = document.createElement(\"img\");\n timeIcon.src = \"../_static/clock.png\";\n timeIcon.style.width = \"15px\";\n timeIcon.style.height = \"15px\";\n\n timeIconDiv.className = \"timeTip\";\n timeIconDiv.title = \"\";\n timeIconDiv.appendChild(timeIcon);\n component.prepend(timeIconDiv);\n }\n\n checkCorrectTimed() {\n // Returns if the question was correct, incorrect, or skipped (return null in the last case)\n switch (this.correct) {\n case true:\n return \"T\";\n case false:\n return \"F\";\n default:\n return null;\n }\n }\n\n hideFeedback() {\n this.connList.style.display = \"none\";\n }\n\n reinitializeListeners() {\n // maybe need to reinitialize the listeners\n }\n}\n\nif (typeof window.component_factory === \"undefined\") {\n window.component_factory = {};\n}\nwindow.component_factory.matching = function (opts) {\n if (opts.timed) {\n return new TimedMatching(opts);\n }\n return new MatchingProblem(opts);\n};\n","/*==========================================\n======== Master timed.js =========\n============================================\n=== This file contains the JS for ===\n=== the Runestone timed component. ===\n============================================\n=== Created By ===\n=== Kirby Olson ===\n=== 6/11/15 ===\n==========================================*/\n\"use strict\";\n\nimport RunestoneBase from \"../../common/js/runestonebase.js\";\nimport TimedFITB from \"../../fitb/js/timedfitb.js\";\nimport TimedMC from \"../../mchoice/js/timedmc.js\";\nimport TimedShortAnswer from \"../../shortanswer/js/timed_shortanswer.js\";\nimport ACFactory from \"../../activecode/js/acfactory.js\";\nimport TimedClickableArea from \"../../clickableArea/js/timedclickable\";\nimport TimedDragNDrop from \"../../dragndrop/js/timeddnd.js\";\nimport TimedParsons from \"../../parsons/js/timedparsons.js\";\nimport TimedMatching from \"../../matching/js/timed_matching.js\";\nimport SelectOne from \"../../selectquestion/js/selectone\";\nimport \"../css/timed.less\";\n\n// Timed constructor\nexport default class Timed extends RunestoneBase {\n constructor(opts) {\n super(opts);\n var orig = opts.orig;\n this.origElem = orig; // the entire element of this timed assessment and all of its children\n this.divid = orig.id;\n this.children = this.origElem.childNodes;\n this.visited = [];\n this.timeLimit = 0;\n this.limitedTime = false;\n if (!isNaN($(this.origElem).data(\"time\"))) {\n this.timeLimit = parseInt($(this.origElem).data(\"time\"), 10) * 60; // time in seconds to complete the exam\n this.startingTime = this.timeLimit;\n this.limitedTime = true;\n }\n this.showFeedback = true;\n if (this.origElem.hasAttribute(\"data-no-feedback\")) {\n this.showFeedback = false;\n }\n // check for attribute data-show-feedback = yes\n if (this.origElem.hasAttribute(\"data-show-feedback\")) {\n if (this.origElem.getAttribute(\"data-show-feedback\") === \"yes\") {\n this.showFeedback = true;\n } else {\n this.showFeedback = false;\n }\n }\n this.showResults = false;\n if (this.origElem.hasAttribute(\"data-result\")) {\n this.showResults = false;\n }\n this.random = false;\n if (this.origElem.hasAttribute(\"data-random\")) {\n this.random = true;\n }\n this.showTimer = true;\n if (this.origElem.hasAttribute(\"data-no-timer\")) {\n this.showTimer = false;\n }\n if (this.origElem.hasAttribute(\"data-timer\")) {\n if (\n this.origElem.getAttribute(\"data-timer\") === \"yes\"\n ) {\n this.showTimer = true;\n } else {\n this.showTimer = false;\n }\n }\n this.fullwidth = false;\n if (this.origElem.hasAttribute(\"data-fullwidth\")) {\n this.fullwidth = true;\n }\n this.nopause = false;\n if (this.origElem.hasAttribute(\"data-no-pause\")) {\n this.nopause = true;\n }\n if (this.origElem.hasAttribute(\"data-pause\")) {\n if (this.origElem.getAttribute(\"data-pause\") === \"yes\") {\n this.nopause = false;\n } else {\n this.nopause = true;\n }\n }\n eBookConfig.enableScratchAC = false;\n this.running = 0;\n this.paused = 0;\n this.done = 0;\n this.taken = 0;\n this.score = 0;\n this.incorrect = 0;\n this.correctStr = \"\";\n this.incorrectStr = \"\";\n this.skippedStr = \"\";\n this.skipped = 0;\n this.currentQuestionIndex = 0; // Which question is currently displaying on the page\n this.renderedQuestionArray = []; // list of all problems\n this.getNewChildren();\n // One small step to eliminate students from doing view source\n // this won't stop anyone with determination but may prevent casual peeking\n if (!eBookConfig.enableDebug) {\n document.body.oncontextmenu = function () {\n return false;\n };\n }\n this.checkAssessmentStatus().then(\n function () {\n this.renderTimedAssess();\n }.bind(this)\n );\n }\n\n getNewChildren() {\n this.newChildren = [];\n let runestoneChildren = this.origElem.querySelectorAll(\".runestone\");\n for (var i = 0; i < runestoneChildren.length; i++) {\n this.newChildren.push(runestoneChildren[i]);\n }\n }\n\n async checkAssessmentStatus() {\n // Has the user taken this exam? Inquiring minds want to know\n // If a user has not taken this exam then we want to make sure\n // that if a question has been seen by the student before we do\n // not populate previous answers.\n let sendInfo = {\n div_id: this.divid,\n course_name: eBookConfig.course,\n };\n console.log(sendInfo);\n if (eBookConfig.useRunestoneServices) {\n let request = new Request(\n `${eBookConfig.new_server_prefix}/assessment/tookTimedAssessment`,\n {\n method: \"POST\",\n headers: this.jsonHeaders,\n body: JSON.stringify(sendInfo),\n }\n );\n let response = await fetch(request);\n let data = await response.json();\n data = data.detail;\n this.taken = data.tookAssessment;\n this.assessmentTaken = this.taken;\n if (!this.taken) {\n localStorage.clear();\n }\n console.log(\"done with check status\");\n return response;\n } else {\n this.taken = false;\n this.assessmentTaken = false;\n return Promise.resolve();\n }\n }\n\n /*===============================\n === Generating new Timed HTML ===\n ===============================*/\n async renderTimedAssess() {\n console.log(\"rendering timed \");\n // create renderedQuestionArray returns a promise\n //\n this.createRenderedQuestionArray();\n if (this.random) {\n this.randomizeRQA();\n }\n this.renderContainer();\n this.renderTimer();\n await this.renderControlButtons();\n // If we decide to disable cut/copy/paste, uncomment the line below \n // this.disableCutCopyPaste();\n this.containerDiv.appendChild(this.timedDiv); // This can't be appended in renderContainer because then it renders above the timer and control buttons.\n if (this.renderedQuestionArray.length > 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 try {\n tmpArr = JSON.parse(\n localStorage.getItem(this.localStorageKey())\n ).answer;\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 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","/*==========================================\n======= Master shortanswer.js ========\n============================================\n=== This file contains the JS for ===\n=== the Runestone shortanswer component. ===\n============================================\n=== Created by ===\n=== Isaiah Mayerchak ===\n=== 7/2/15 ===\n=== Brad Miller ===\n=== 2019 ===\n==========================================*/\n\nimport RunestoneBase from \"../../common/js/runestonebase.js\";\nimport { looksLikeLatexMath } from \"../../common/js/bookfuncs.js\";\nimport \"./../css/shortanswer.css\";\n\nexport default class ShortAnswer extends RunestoneBase {\n constructor(opts) {\n super(opts);\n if (opts) {\n var orig = opts.orig; // entire

element that will be replaced by new HTML\n this.useRunestoneServices =\n opts.useRunestoneServices || eBookConfig.useRunestoneServices;\n this.origElem = orig;\n this.divid = orig.id;\n this.question = this.origElem.innerHTML;\n this.optional = false;\n this.attachURL = opts.attachURL;\n if (this.origElem.hasAttribute(\"data-optional\")) {\n this.optional = true;\n }\n if (this.origElem.hasAttribute(\"data-attachment\")) {\n this.attachment = true;\n }\n this.placeholder =\n this.origElem.getAttribute(\"data-placeholder\") ||\n \"Write your answer here\";\n this.renderHTML();\n this.caption = \"shortanswer\";\n this.addCaption(\"runestone\");\n this.checkServer(\"shortanswer\", true);\n if (typeof Prism !== \"undefined\") {\n Prism.highlightAllUnder(this.containerDiv);\n }\n if (this.attachment) {\n this.getAttachmentName();\n }\n }\n }\n\n renderHTML() {\n this.containerDiv = document.createElement(\"div\");\n this.containerDiv.id = this.divid;\n this.containerDiv.classList.add(...(this.origElem.getAttribute(\"class\") || \"\").split(\" \").filter(Boolean));\n this.newForm = document.createElement(\"form\");\n this.newForm.id = this.divid + \"_journal\";\n this.newForm.name = this.newForm.id;\n this.newForm.action = \"\";\n this.containerDiv.appendChild(this.newForm);\n this.fieldSet = document.createElement(\"fieldset\");\n this.newForm.appendChild(this.fieldSet);\n this.firstLegendDiv = document.createElement(\"div\");\n this.firstLegendDiv.innerHTML = this.question;\n this.firstLegendDiv.classList.add(\"journal-question\");\n this.firstLegendDiv.classList.add(\"exercise-statement\");\n this.fieldSet.appendChild(this.firstLegendDiv);\n this.jInputDiv = document.createElement(\"div\");\n this.jInputDiv.id = this.divid + \"_journal_input\";\n this.fieldSet.appendChild(this.jInputDiv);\n this.jOptionsDiv = document.createElement(\"div\");\n this.jOptionsDiv.classList.add(\"journal-options\");\n this.jInputDiv.appendChild(this.jOptionsDiv);\n this.jTextArea = document.createElement(\"textarea\");\n let self = this;\n this.jTextArea.onchange = function () {\n self.isAnswered = true;\n };\n this.jTextArea.id = this.divid + \"_solution\";\n this.jTextArea.setAttribute(\"aria-label\", \"textarea\");\n this.jTextArea.placeholder = this.placeholder;\n this.jTextArea.style.display = \"inline\";\n this.jTextArea.style.width = \"530px\";\n this.jTextArea.classList.add(\"form-control\");\n this.jTextArea.rows = 4;\n this.jTextArea.cols = 50;\n this.jOptionsDiv.appendChild(this.jTextArea);\n this.jTextArea.onchange = function () {\n this.isAnswered = true;\n if (this.isTimed) {\n this.feedbackDiv.innerHTML = \"Your answer is automatically saved.\";\n } else {\n this.feedbackDiv.innerHTML = \"Your answer has not been saved yet!\";\n }\n this.feedbackDiv.classList.remove(\"alert-success\");\n this.feedbackDiv.classList.add(\"alert\", \"alert-danger\");\n }.bind(this);\n this.jTextArea.addEventListener(\"input\", () => {\n this.jTextArea.style.height = \"auto\";\n this.jTextArea.style.height = `${this.jTextArea.scrollHeight}px`;\n this.renderMath(this.jTextArea.value);\n });\n this.buttonDiv = document.createElement(\"div\");\n this.fieldSet.appendChild(this.buttonDiv);\n this.submitButton = document.createElement(\"button\");\n this.submitButton.classList.add(\"btn\", \"btn-success\");\n this.submitButton.type = \"button\";\n this.submitButton.textContent = \"Save\";\n this.submitButton.onclick = function () {\n this.checkCurrentAnswer();\n this.logCurrentAnswer();\n this.renderFeedback();\n }.bind(this);\n this.buttonDiv.appendChild(this.submitButton);\n\n this.otherOptionsDiv = document.createElement(\"div\");\n this.otherOptionsDiv.style.paddingLeft = \"20px\";\n this.otherOptionsDiv.classList.add(\"journal-options\");\n this.fieldSet.appendChild(this.otherOptionsDiv);\n // add a feedback div to give user feedback\n this.feedbackDiv = document.createElement(\"div\");\n this.feedbackDiv.style.width = \"530px\";\n this.feedbackDiv.style.fontStyle = \"italic\";\n this.feedbackDiv.id = this.divid + \"_feedback\";\n this.feedbackDiv.style.display = \"none\";\n this.fieldSet.appendChild(this.feedbackDiv);\n if (this.attachment) {\n let attachDiv = document.createElement(\"div\")\n this.attachDiv = attachDiv;\n if (this.graderactive) {\n // If in grading mode make a button to create a popup with the image\n let viewButton = document.createElement(\"button\")\n viewButton.type = \"button\"\n viewButton.innerHTML = \"View Attachment\"\n viewButton.onclick = this.viewFile.bind(this);\n attachDiv.appendChild(viewButton);\n } else {\n // Otherwise make a button for the student to select a file to upload.\n this.fileUpload = document.createElement(\"input\")\n this.fileUpload.type = \"file\";\n this.fileUpload.id = `${this.divid}_fileme`;\n attachDiv.appendChild(this.fileUpload);\n }\n this.containerDiv.appendChild(attachDiv);\n }\n this.origElem.replaceWith(this.containerDiv);\n // This is a stopgap measure for when MathJax is not loaded at all. There is another\n // more difficult case that when MathJax is loaded asynchronously we will get here\n // before MathJax is loaded. In that case we will need to implement something\n // like `the solution described here `_\n if (typeof MathJax !== \"undefined\") {\n this.queueMathJax(this.containerDiv);\n }\n }\n\n renderMath(value) {\n if (looksLikeLatexMath(value)) {\n if (!this.renderedAnswer) {\n this.renderedAnswerLabel = document.createElement(\"label\");\n this.renderedAnswerLabel.innerHTML = \"Rendered Answer:\";\n this.renderedAnswerLabel.id = this.divid + \"_rendered_answer_label\";\n this.renderedAnswerLabel.style.display = \"none\";\n this.fieldSet.appendChild(this.renderedAnswerLabel);\n\n this.renderedAnswer = document.createElement(\"div\");\n this.renderedAnswer.classList.add(\"latexoutput\");\n this.renderedAnswer.setAttribute('aria-labelledby', this.renderedAnswerLabel.id);\n this.renderedAnswer.setAttribute('aria-live', \"polite\");\n this.renderedAnswer.style.display = \"none\";\n this.fieldSet.appendChild(this.renderedAnswer);\n }\n value = value.replace(/\\$\\$(.*?)\\$\\$/g, \"\\\\[ $1 \\\\]\");\n value = value.replace(/\\$(.*?)\\$/g, \"\\\\( $1 \\\\)\");\n value = value.replace(/\\n/g, \"
\");\n this.renderedAnswer.innerHTML = value;\n\n this.renderedAnswer.style.display = \"block\";\n this.renderedAnswerLabel.style.display = \"block\";\n this.queueMathJax(this.renderedAnswer);\n\n } else {\n if (this.renderedAnswer) {\n this.renderedAnswer.style.display = \"none\";\n this.renderedAnswerLabel.style.display = \"none\";\n }\n }\n }\n\n async checkCurrentAnswer() {\n let value = document.getElementById(this.divid + \"_solution\").value;\n this.renderMath(value);\n this.setLocalStorage({\n answer: value,\n timestamp: new Date(),\n });\n }\n\n async logCurrentAnswer(sid) {\n let value = document.getElementById(this.divid + \"_solution\").value;\n this.renderMath(value);\n this.setLocalStorage({\n answer: value,\n timestamp: new Date(),\n });\n let data = {\n event: \"shortanswer\",\n act: value,\n answer: value,\n div_id: this.divid,\n };\n if (typeof sid !== \"undefined\") {\n data.sid = sid;\n }\n await this.logBookEvent(data);\n if (this.attachment) {\n await this.uploadFile();\n }\n }\n\n renderFeedback() {\n this.feedbackDiv.innerHTML = \"Your answer has been saved.\";\n this.feedbackDiv.classList.remove(\"alert-danger\");\n this.feedbackDiv.classList.add(\"alert\", \"alert-success\");\n this.feedbackDiv.style.display = \"block\";\n }\n setLocalStorage(data) {\n if (!this.graderactive) {\n let key = this.localStorageKey();\n localStorage.setItem(key, JSON.stringify(data));\n }\n }\n checkLocalStorage() {\n // Repopulates the short answer text\n // which was stored into local storage.\n var answer = \"\";\n if (this.graderactive) {\n return;\n }\n var len = localStorage.length;\n if (len > 0) {\n var ex = localStorage.getItem(this.localStorageKey());\n if (ex !== null) {\n try {\n var storedData = JSON.parse(ex);\n answer = storedData.answer;\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;\n }\n let solution = document.getElementById(this.divid + \"_solution\");\n if (solution) {\n solution.value = answer;\n }\n this.renderMath(answer);\n }\n }\n }\n restoreAnswers(data) {\n // Restore answers from storage retrieval done in RunestoneBase\n // sometimes data.answer can be null\n if (!data.answer) {\n data.answer = \"\";\n }\n this.answer = data.answer;\n this.jTextArea.value = this.answer;\n this.renderMath(this.answer);\n\n let p = document.createElement(\"p\");\n p.classList.add(\"shortanswer__timestamp\");\n this.jInputDiv.appendChild(p);\n var tsString = \"\";\n if (data.timestamp) {\n tsString = new Date(data.timestamp).toLocaleString();\n } else {\n tsString = \"\";\n }\n p.textContent = tsString;\n this.jTextArea.style.height = \"auto\";\n this.jTextArea.style.height = `${this.jTextArea.scrollHeight}px`;\n\n if (data.last_answer) {\n this.current_answer = \"ontime\";\n let toggle_answer_button = document.createElement(\"button\");\n toggle_answer_button.type = \"button\";\n toggle_answer_button.textContent = \"Show Late Answer\";\n toggle_answer_button.classList.add(\"btn\", \"btn-warning\");\n toggle_answer_button.style.marginLeft = \"5px\";\n\n toggle_answer_button.addEventListener(\n \"click\",\n function () {\n var display_timestamp, button_text;\n if (this.current_answer === \"ontime\") {\n this.jTextArea.value = data.last_answer;\n this.answer = data.last_answer;\n display_timestamp = new Date(\n data.last_timestamp\n ).toLocaleString();\n button_text = \"Show on-Time Answer\";\n this.current_answer = \"late\";\n } else {\n this.jTextArea.value = data.answer;\n this.answer = data.answer;\n display_timestamp = tsString;\n button_text = \"Show Late Answer\";\n this.current_answer = \"ontime\";\n }\n this.renderMath(this.answer);\n p.textContent = `Submitted: ${display_timestamp}`;\n toggle_answer_button.textContent = button_text;\n }.bind(this)\n );\n\n this.buttonDiv.appendChild(toggle_answer_button);\n }\n let feedbackStr = \"\";\n if (typeof data.score !== \"undefined\") {\n feedbackStr = `Score: ${data.score}`;\n }\n if (data.comment) {\n feedbackStr += ` -- ${data.comment}`;\n }\n if (feedbackStr !== \"\") {\n this.feedbackDiv.innerHTML = feedbackStr;\n this.feedbackDiv.style.display = \"block\";\n this.feedbackDiv.classList.add(\"alert\", \"alert-success\");\n }\n }\n\n disableInteraction() {\n this.jTextArea.disabled = true;\n }\n\n async getAttachmentName() {\n // Get the attachment name from the /ns/assessment/has_attachment endpoint\n let requestUrl = `/ns/assessment/has_attachment/${this.divid}`;\n if (this.sid) {\n requestUrl += `?sid=${this.sid}`;\n }\n const response = await fetch(requestUrl);\n if (!response.ok) {\n console.error(\"Error fetching attachment name:\", response.statusText);\n return null;\n }\n const obj = await response.json();\n if (obj.detail.hasAttachment) {\n // Return the S3 key for the attachment\n let filename = obj.detail.hasAttachment;\n // filename is everthing after the last slash\n filename = filename.substring(filename.lastIndexOf(\"/\") + 1);\n let fmess = document.createElement(\"span\");\n fmess.innerHTML = `Attachment: ${filename}`;\n this.attachDiv.appendChild(fmess);\n }\n }\n\n async uploadFile() {\n const files = this.fileUpload.files\n // get the suffix from the file name\n const fileName = files[0].name;\n const suffix = fileName.split('.').pop();\n // if the suffix is not in the list of allowed suffixes, return\n if (!['jpg', 'jpeg', 'png', 'gif', 'pdf'].includes(suffix)) {\n alert(\"File type not allowed. Please upload a jpg, jpeg, png, gif, or pdf file.\");\n return;\n }\n // if the file size is greater than 5MB, return\n if (files[0].size > 5 * 1024 * 1024) {\n alert(\"File size exceeds 5MB limit. Please upload a smaller file.\");\n return;\n }\n const data = new FormData()\n if (this.fileUpload.files.length > 0) {\n data.append('file', files[0])\n fetch(`/ns/logger/upload/${this.divid}`, {\n method: 'POST',\n body: data\n })\n .then(response => response.json())\n .then(data => {\n console.log(data)\n })\n .catch(error => {\n console.error(error)\n })\n }\n }\n\n viewFile() {\n // Get the URL from the S3 API -- saved when we display in grader mode\n if (this.attachURL) {\n //window.open(this.attachURL, \"_blank\");\n //\n //switch to \n const image_window = window.open(\"\", \"_blank\")\n if (this.attachURL.indexOf('.pdf?') !== -1) {\n const embed = image_window.document.createElement(\"object\");\n embed.setAttribute(\"data\", this.attachURL);\n embed.setAttribute(\"type\", \"application/pdf\");\n embed.setAttribute(\"width\", \"800px\");\n embed.setAttribute(\"height\", \"1040px\");\n image_window.document.body.appendChild(embed);\n let alt = image_window.document.createElement(\"a\");\n alt.setAttribute(\"href\", this.attachURL);\n alt.innerText = \"Download PDF\";\n embed.appendChild(alt);\n }\n else {\n const img = image_window.document.createElement(\"img\");\n img.setAttribute(\"src\", this.attachURL);\n img.setAttribute(\"style\", \"width:100%; height:auto;\");\n image_window.document.body.appendChild(img);\n }\n } else {\n alert(\"No attachment for this student.\")\n }\n }\n}\n\n/*=================================\n== Find the custom HTML tags and ==\n== execute our code on them ==\n=================================*/\ndocument.addEventListener(\"runestone:login-complete\", function () {\n document.querySelectorAll(\"[data-component=shortanswer]\").forEach(function (el) {\n // If this element exists within a timed component, don't render it here\n if (!el.closest(\"[data-component=timedAssessment]\")) {\n try {\n window.componentMap[el.id] = new ShortAnswer({\n orig: el,\n useRunestoneServices: eBookConfig.useRunestoneServices,\n });\n } catch (err) {\n console.log(`Error rendering ShortAnswer Problem ${el.id}\n Details: ${err}`);\n }\n }\n });\n});\n","import ShortAnswer from \"./shortanswer.js\";\n\nexport default class TimedShortAnswer extends ShortAnswer {\n constructor(opts) {\n super(opts);\n this.renderTimedIcon(this.containerDiv);\n this.isTimed = true;\n this.hideButtons();\n }\n hideButtons() {\n if (this.submitButton) {\n this.submitButton.style.display = \"none\";\n }\n }\n renderTimedIcon(component) {\n // renders the clock icon on timed components. The component parameter\n // is the element that the icon should be appended to.\n var timeIconDiv = document.createElement(\"div\");\n var timeIcon = document.createElement(\"img\");\n\n timeIcon.src = \"../_static/clock.png\";\n timeIcon.style.width = \"15px\";\n timeIcon.style.height = \"15px\";\n\n timeIconDiv.className = \"timeTip\";\n timeIconDiv.title = \"\";\n timeIconDiv.appendChild(timeIcon);\n\n // If firstChild is null, insertBefore acts like appendChild\n component.insertBefore(timeIconDiv, component.firstChild);\n }\n checkCorrectTimed() {\n return \"I\"; // we ignore this in the grading\n }\n hideFeedback() {\n if (this.feedbackDiv) {\n this.feedbackDiv.style.display = \"none\";\n }\n }\n}\n\nif (typeof window.component_factory === \"undefined\") {\n window.component_factory = {};\n}\n\nwindow.component_factory.shortanswer = function (opts) {\n if (opts.timed) {\n return new TimedShortAnswer(opts);\n }\n return new ShortAnswer(opts);\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","reset","setLocalStorage","parsedData","numQuestions","scoreString","toFixed","html","highlightNumberedList","correctCount","incorrectCount","skippedCount","replace","split","numberedBtns","eq","k","each","index","componentMap","ShortAnswer","optional","attachURL","attachment","placeholder","renderHTML","caption","addCaption","Prism","highlightAllUnder","getAttachmentName","Boolean","newForm","name","action","fieldSet","firstLegendDiv","jInputDiv","jOptionsDiv","jTextArea","self","onchange","setAttribute","rows","cols","isTimed","feedbackDiv","remove","scrollHeight","renderMath","value","buttonDiv","submitButton","onclick","otherOptionsDiv","paddingLeft","fontStyle","attachDiv","graderactive","viewButton","viewFile","fileUpload","MathJax","queueMathJax","renderedAnswer","renderedAnswerLabel","getElementById","sid","uploadFile","key","ex","solution","p","tsString","toLocaleString","last_answer","current_answer","toggle_answer_button","marginLeft","display_timestamp","button_text","last_timestamp","feedbackStr","comment","requestUrl","ok","error","statusText","obj","hasAttachment","filename","lastIndexOf","fmess","files","suffix","pop","alert","size","FormData","append","catch","image_window","open","indexOf","embed","alt","innerText","img","forEach","el","closest","TimedShortAnswer","insertBefore","firstChild","shortanswer"],"sourceRoot":""} \ No newline at end of file diff --git a/_static/115.648ff4b5650f4c7c.js.map.gz b/_static/115.648ff4b5650f4c7c.js.map.gz deleted file mode 100644 index ea7b758a096df004ae51be25b483d35fabfb4478..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27562 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 RHwz2j{~sgS-Z7oH0RT?+tL6Xz diff --git a/_static/126.a976f62852f30b51.js b/_static/126.a976f62852f30b51.js old mode 100644 new mode 100755 diff --git a/_static/126.a976f62852f30b51.js.gz b/_static/126.a976f62852f30b51.js.gz old mode 100644 new mode 100755 diff --git a/_static/126.a976f62852f30b51.js.map b/_static/126.a976f62852f30b51.js.map old mode 100644 new mode 100755 diff --git a/_static/126.a976f62852f30b51.js.map.gz b/_static/126.a976f62852f30b51.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/128.5bed857c54ac4e8b.js b/_static/128.5bed857c54ac4e8b.js old mode 100644 new mode 100755 diff --git a/_static/128.5bed857c54ac4e8b.js.gz b/_static/128.5bed857c54ac4e8b.js.gz old mode 100644 new mode 100755 diff --git a/_static/128.5bed857c54ac4e8b.js.map b/_static/128.5bed857c54ac4e8b.js.map old mode 100644 new mode 100755 diff --git a/_static/128.5bed857c54ac4e8b.js.map.gz b/_static/128.5bed857c54ac4e8b.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/131.ee437eeefadd750d.js b/_static/131.ee437eeefadd750d.js old mode 100644 new mode 100755 diff --git a/_static/131.ee437eeefadd750d.js.gz b/_static/131.ee437eeefadd750d.js.gz old mode 100644 new mode 100755 diff --git a/_static/131.ee437eeefadd750d.js.map b/_static/131.ee437eeefadd750d.js.map old mode 100644 new mode 100755 diff --git a/_static/131.ee437eeefadd750d.js.map.gz b/_static/131.ee437eeefadd750d.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/168.fe63e6dec2d06468.js b/_static/168.fe63e6dec2d06468.js old mode 100644 new mode 100755 diff --git a/_static/168.fe63e6dec2d06468.js.gz b/_static/168.fe63e6dec2d06468.js.gz old mode 100644 new mode 100755 diff --git a/_static/168.fe63e6dec2d06468.js.map b/_static/168.fe63e6dec2d06468.js.map old mode 100644 new mode 100755 diff --git a/_static/168.fe63e6dec2d06468.js.map.gz b/_static/168.fe63e6dec2d06468.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/186.be52164d57f4b7e4.js b/_static/186.be52164d57f4b7e4.js old mode 100644 new mode 100755 diff --git a/_static/186.be52164d57f4b7e4.js.gz b/_static/186.be52164d57f4b7e4.js.gz old mode 100644 new mode 100755 diff --git a/_static/186.be52164d57f4b7e4.js.map b/_static/186.be52164d57f4b7e4.js.map old mode 100644 new mode 100755 diff --git a/_static/186.be52164d57f4b7e4.js.map.gz b/_static/186.be52164d57f4b7e4.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/249.7ec032cf0b3ede9a.js b/_static/249.7ec032cf0b3ede9a.js old mode 100644 new mode 100755 diff --git a/_static/249.7ec032cf0b3ede9a.js.LICENSE.txt b/_static/249.7ec032cf0b3ede9a.js.LICENSE.txt old mode 100644 new mode 100755 diff --git a/_static/249.7ec032cf0b3ede9a.js.LICENSE.txt.gz b/_static/249.7ec032cf0b3ede9a.js.LICENSE.txt.gz old mode 100644 new mode 100755 diff --git a/_static/249.7ec032cf0b3ede9a.js.gz b/_static/249.7ec032cf0b3ede9a.js.gz old mode 100644 new mode 100755 diff --git a/_static/249.7ec032cf0b3ede9a.js.map b/_static/249.7ec032cf0b3ede9a.js.map old mode 100644 new mode 100755 diff --git a/_static/249.7ec032cf0b3ede9a.js.map.gz b/_static/249.7ec032cf0b3ede9a.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/115.648ff4b5650f4c7c.js b/_static/268.0659406f2c053718.js old mode 100644 new mode 100755 similarity index 70% rename from _static/115.648ff4b5650f4c7c.js rename to _static/268.0659406f2c053718.js index 7a7615a..fae7a31 --- a/_static/115.648ff4b5650f4c7c.js +++ b/_static/268.0659406f2c053718.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkWebComponents=self.webpackChunkWebComponents||[]).push([[115,198,294,350,380,621,737,819],{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)try{e=JSON.parse(localStorage.getItem(this.localStorageKey())).answer}catch(t){return console.log(t.message),localStorage.removeItem(this.localStorageKey()),void(this.taken=0)}else e=[parseInt(t.correct),parseInt(t.incorrect),parseInt(t.skipped),parseInt(t.time_taken),t.reset],this.setLocalStorage(e);if(1==e.length)return this.reset=!0,void(this.taken=0);4==e.length||5==e.length?(this.score=e[0],this.incorrect=e[1],this.skipped=e[2],this.timeTaken=e[3]):7==e.length?(this.score=e[0],this.correctStr=e[1],this.incorrect=e[2],this.incorrectStr=e[3],this.skipped=e[4],this.skippedStr=e[5],this.timeTaken=e[6]):(this.score=0,this.incorrect=0,this.skipped=this.renderedQuestionArray.length,this.timeTaken=0),this.taken&&(this.skipped===this.renderedQuestionArray.length&&(this.showFeedback=!1),this.handlePrevAssessment()),await this.renderTimedQuestion(),this.displayScore(),this.showTime()}setLocalStorage(t){var e={answer:t,timestamp:new Date};localStorage.setItem(this.localStorageKey(),JSON.stringify(e))}displayScore(){if(this.showResults){var t,e="";this.correctStr.length>0||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{i.r(e),i.d(e,{default:()=>a});var s=i(78673),n=i(83057);class r extends s.A{constructor(t){if(super(t),t){var e=t.orig;this.useRunestoneServices=t.useRunestoneServices||eBookConfig.useRunestoneServices,this.origElem=e,this.divid=e.id,this.question=this.origElem.innerHTML,this.optional=!1,this.attachURL=t.attachURL,this.origElem.hasAttribute("data-optional")&&(this.optional=!0),this.origElem.hasAttribute("data-attachment")&&(this.attachment=!0),this.placeholder=this.origElem.getAttribute("data-placeholder")||"Write your answer here",this.renderHTML(),this.caption="shortanswer",this.addCaption("runestone"),this.checkServer("shortanswer",!0),"undefined"!=typeof Prism&&Prism.highlightAllUnder(this.containerDiv),this.attachment&&this.getAttachmentName()}}renderHTML(){this.containerDiv=document.createElement("div"),this.containerDiv.id=this.divid,this.containerDiv.classList.add(...(this.origElem.getAttribute("class")||"").split(" ").filter(Boolean)),this.newForm=document.createElement("form"),this.newForm.id=this.divid+"_journal",this.newForm.name=this.newForm.id,this.newForm.action="",this.containerDiv.appendChild(this.newForm),this.fieldSet=document.createElement("fieldset"),this.newForm.appendChild(this.fieldSet),this.firstLegendDiv=document.createElement("div"),this.firstLegendDiv.innerHTML=this.question,this.firstLegendDiv.classList.add("journal-question"),this.firstLegendDiv.classList.add("exercise-statement"),this.fieldSet.appendChild(this.firstLegendDiv),this.jInputDiv=document.createElement("div"),this.jInputDiv.id=this.divid+"_journal_input",this.fieldSet.appendChild(this.jInputDiv),this.jOptionsDiv=document.createElement("div"),this.jOptionsDiv.classList.add("journal-options"),this.jInputDiv.appendChild(this.jOptionsDiv),this.jTextArea=document.createElement("textarea");let t=this;if(this.jTextArea.onchange=function(){t.isAnswered=!0},this.jTextArea.id=this.divid+"_solution",this.jTextArea.setAttribute("aria-label","textarea"),this.jTextArea.placeholder=this.placeholder,this.jTextArea.style.display="inline",this.jTextArea.style.width="530px",this.jTextArea.classList.add("form-control"),this.jTextArea.rows=4,this.jTextArea.cols=50,this.jOptionsDiv.appendChild(this.jTextArea),this.jTextArea.onchange=function(){this.isAnswered=!0,this.isTimed?this.feedbackDiv.innerHTML="Your answer is automatically saved.":this.feedbackDiv.innerHTML="Your answer has not been saved yet!",this.feedbackDiv.classList.remove("alert-success"),this.feedbackDiv.classList.add("alert","alert-danger")}.bind(this),this.jTextArea.addEventListener("input",(()=>{this.jTextArea.style.height="auto",this.jTextArea.style.height=`${this.jTextArea.scrollHeight}px`,this.renderMath(this.jTextArea.value)})),this.buttonDiv=document.createElement("div"),this.fieldSet.appendChild(this.buttonDiv),this.submitButton=document.createElement("button"),this.submitButton.classList.add("btn","btn-success"),this.submitButton.type="button",this.submitButton.textContent="Save",this.submitButton.onclick=function(){this.checkCurrentAnswer(),this.logCurrentAnswer(),this.renderFeedback()}.bind(this),this.buttonDiv.appendChild(this.submitButton),this.otherOptionsDiv=document.createElement("div"),this.otherOptionsDiv.style.paddingLeft="20px",this.otherOptionsDiv.classList.add("journal-options"),this.fieldSet.appendChild(this.otherOptionsDiv),this.feedbackDiv=document.createElement("div"),this.feedbackDiv.style.width="530px",this.feedbackDiv.style.fontStyle="italic",this.feedbackDiv.id=this.divid+"_feedback",this.feedbackDiv.style.display="none",this.fieldSet.appendChild(this.feedbackDiv),this.attachment){let t=document.createElement("div");if(this.attachDiv=t,this.graderactive){let e=document.createElement("button");e.type="button",e.innerHTML="View Attachment",e.onclick=this.viewFile.bind(this),t.appendChild(e)}else this.fileUpload=document.createElement("input"),this.fileUpload.type="file",this.fileUpload.id=`${this.divid}_fileme`,t.appendChild(this.fileUpload);this.containerDiv.appendChild(t)}this.origElem.replaceWith(this.containerDiv),"undefined"!=typeof MathJax&&this.queueMathJax(this.containerDiv)}renderMath(t){(0,n.u)(t)?(this.renderedAnswer||(this.renderedAnswerLabel=document.createElement("label"),this.renderedAnswerLabel.innerHTML="Rendered Answer:",this.renderedAnswerLabel.id=this.divid+"_rendered_answer_label",this.renderedAnswerLabel.style.display="none",this.fieldSet.appendChild(this.renderedAnswerLabel),this.renderedAnswer=document.createElement("div"),this.renderedAnswer.classList.add("latexoutput"),this.renderedAnswer.setAttribute("aria-labelledby",this.renderedAnswerLabel.id),this.renderedAnswer.setAttribute("aria-live","polite"),this.renderedAnswer.style.display="none",this.fieldSet.appendChild(this.renderedAnswer)),t=(t=(t=t.replace(/\$\$(.*?)\$\$/g,"\\[ $1 \\]")).replace(/\$(.*?)\$/g,"\\( $1 \\)")).replace(/\n/g,"
"),this.renderedAnswer.innerHTML=t,this.renderedAnswer.style.display="block",this.renderedAnswerLabel.style.display="block",this.queueMathJax(this.renderedAnswer)):this.renderedAnswer&&(this.renderedAnswer.style.display="none",this.renderedAnswerLabel.style.display="none")}async checkCurrentAnswer(){let t=document.getElementById(this.divid+"_solution").value;this.renderMath(t),this.setLocalStorage({answer:t,timestamp:new Date})}async logCurrentAnswer(t){let e=document.getElementById(this.divid+"_solution").value;this.renderMath(e),this.setLocalStorage({answer:e,timestamp:new Date});let i={event:"shortanswer",act:e,answer:e,div_id:this.divid};void 0!==t&&(i.sid=t),await this.logBookEvent(i),this.attachment&&await this.uploadFile()}renderFeedback(){this.feedbackDiv.innerHTML="Your answer has been saved.",this.feedbackDiv.classList.remove("alert-danger"),this.feedbackDiv.classList.add("alert","alert-success"),this.feedbackDiv.style.display="block"}setLocalStorage(t){if(!this.graderactive){let e=this.localStorageKey();localStorage.setItem(e,JSON.stringify(t))}}checkLocalStorage(){var t="";if(!this.graderactive&&localStorage.length>0){var e=localStorage.getItem(this.localStorageKey());if(null!==e){try{t=JSON.parse(e).answer}catch(t){return console.log(t.message),void localStorage.removeItem(this.localStorageKey())}let i=document.getElementById(this.divid+"_solution");i&&(i.value=t),this.renderMath(t)}}}restoreAnswers(t){t.answer||(t.answer=""),this.answer=t.answer,this.jTextArea.value=this.answer,this.renderMath(this.answer);let e=document.createElement("p");e.classList.add("shortanswer__timestamp"),this.jInputDiv.appendChild(e);var i;if(i=t.timestamp?new Date(t.timestamp).toLocaleString():"",e.textContent=i,this.jTextArea.style.height="auto",this.jTextArea.style.height=`${this.jTextArea.scrollHeight}px`,t.last_answer){this.current_answer="ontime";let s=document.createElement("button");s.type="button",s.textContent="Show Late Answer",s.classList.add("btn","btn-warning"),s.style.marginLeft="5px",s.addEventListener("click",function(){var n,r;"ontime"===this.current_answer?(this.jTextArea.value=t.last_answer,this.answer=t.last_answer,n=new Date(t.last_timestamp).toLocaleString(),r="Show on-Time Answer",this.current_answer="late"):(this.jTextArea.value=t.answer,this.answer=t.answer,n=i,r="Show Late Answer",this.current_answer="ontime"),this.renderMath(this.answer),e.textContent=`Submitted: ${n}`,s.textContent=r}.bind(this)),this.buttonDiv.appendChild(s)}let s="";void 0!==t.score&&(s=`Score: ${t.score}`),t.comment&&(s+=` -- ${t.comment}`),""!==s&&(this.feedbackDiv.innerHTML=s,this.feedbackDiv.style.display="block",this.feedbackDiv.classList.add("alert","alert-success"))}disableInteraction(){this.jTextArea.disabled=!0}async getAttachmentName(){let t=`/ns/assessment/has_attachment/${this.divid}`;this.sid&&(t+=`?sid=${this.sid}`);const e=await fetch(t);if(!e.ok)return console.error("Error fetching attachment name:",e.statusText),null;const i=await e.json();if(i.detail.hasAttachment){let t=i.detail.hasAttachment;t=t.substring(t.lastIndexOf("/")+1);let e=document.createElement("span");e.innerHTML=`Attachment: ${t}`,this.attachDiv.appendChild(e)}}async uploadFile(){const t=this.fileUpload.files,e=t[0].name.split(".").pop();if(!["jpg","jpeg","png","gif","pdf"].includes(e))return void alert("File type not allowed. Please upload a jpg, jpeg, png, gif, or pdf file.");if(t[0].size>5242880)return void alert("File size exceeds 5MB limit. Please upload a smaller file.");const i=new FormData;this.fileUpload.files.length>0&&(i.append("file",t[0]),fetch(`/ns/logger/upload/${this.divid}`,{method:"POST",body:i}).then((t=>t.json())).then((t=>{console.log(t)})).catch((t=>{console.error(t)})))}viewFile(){if(this.attachURL){const t=window.open("","_blank");if(-1!==this.attachURL.indexOf(".pdf?")){const e=t.document.createElement("object");e.setAttribute("data",this.attachURL),e.setAttribute("type","application/pdf"),e.setAttribute("width","800px"),e.setAttribute("height","1040px"),t.document.body.appendChild(e);let i=t.document.createElement("a");i.setAttribute("href",this.attachURL),i.innerText="Download PDF",e.appendChild(i)}else{const e=t.document.createElement("img");e.setAttribute("src",this.attachURL),e.setAttribute("style","width:100%; height:auto;"),t.document.body.appendChild(e)}}else alert("No attachment for this student.")}}document.addEventListener("runestone:login-complete",(function(){document.querySelectorAll("[data-component=shortanswer]").forEach((function(t){if(!t.closest("[data-component=timedAssessment]"))try{window.componentMap[t.id]=new r({orig:t,useRunestoneServices:eBookConfig.useRunestoneServices})}catch(e){console.log(`Error rendering ShortAnswer Problem ${t.id}\n Details: ${e}`)}}))}));class a extends r{constructor(t){super(t),this.renderTimedIcon(this.containerDiv),this.isTimed=!0,this.hideButtons()}hideButtons(){this.submitButton&&(this.submitButton.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.insertBefore(e,t.firstChild)}checkCorrectTimed(){return"I"}hideFeedback(){this.feedbackDiv&&(this.feedbackDiv.style.display="none")}}void 0===window.component_factory&&(window.component_factory={}),window.component_factory.shortanswer=function(t){return t.timed?new a(t):new r(t)}}}]); -//# sourceMappingURL=115.648ff4b5650f4c7c.js.map \ No newline at end of file +"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)try{e=JSON.parse(localStorage.getItem(this.localStorageKey())).answer}catch(t){return console.log(t.message),localStorage.removeItem(this.localStorageKey()),void(this.taken=0)}else e=[parseInt(t.correct),parseInt(t.incorrect),parseInt(t.skipped),parseInt(t.time_taken),t.reset],this.setLocalStorage(e);if(1==e.length)return this.reset=!0,void(this.taken=0);4==e.length||5==e.length?(this.score=e[0],this.incorrect=e[1],this.skipped=e[2],this.timeTaken=e[3]):7==e.length?(this.score=e[0],this.correctStr=e[1],this.incorrect=e[2],this.incorrectStr=e[3],this.skipped=e[4],this.skippedStr=e[5],this.timeTaken=e[6]):(this.score=0,this.incorrect=0,this.skipped=this.renderedQuestionArray.length,this.timeTaken=0),this.taken&&(this.skipped===this.renderedQuestionArray.length&&(this.showFeedback=!1),this.handlePrevAssessment()),await this.renderTimedQuestion(),this.displayScore(),this.showTime()}setLocalStorage(t){var e={answer:t,timestamp:new Date};localStorage.setItem(this.localStorageKey(),JSON.stringify(e))}displayScore(){if(this.showResults){var t,e="";this.correctStr.length>0||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 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 literal 0 HcmV?d00001 diff --git a/_static/268.0659406f2c053718.js.map b/_static/268.0659406f2c053718.js.map new file mode 100755 index 0000000..5ea8dcf --- /dev/null +++ b/_static/268.0659406f2c053718.js.map @@ -0,0 +1 @@ +{"version":3,"file":"268.0659406f2c053718.js","mappings":"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","sources":["webpack://WebComponents/./runestone/matching/js/timed_matching.js","webpack://WebComponents/./runestone/timed/js/timed.js"],"sourcesContent":["import {MatchingProblem} from \"./matching.js\";\n\nexport default class TimedMatching extends MatchingProblem {\n constructor(opts) {\n super(opts);\n this.renderTimedIcon(this.containerDiv);\n this.hideButtons();\n this.needsReinitialization = true;\n }\n\n hideButtons() {\n this.gradeBtn.style.display = \"none\";\n this.helpBtn.style.display = \"none\";\n }\n\n renderTimedIcon(component) {\n // renders the clock icon on timed components. The component parameter\n // is the element that the icon should be appended to.\n var timeIconDiv = document.createElement(\"div\");\n var timeIcon = document.createElement(\"img\");\n timeIcon.src = \"../_static/clock.png\";\n timeIcon.style.width = \"15px\";\n timeIcon.style.height = \"15px\";\n\n timeIconDiv.className = \"timeTip\";\n timeIconDiv.title = \"\";\n timeIconDiv.appendChild(timeIcon);\n component.prepend(timeIconDiv);\n }\n\n checkCorrectTimed() {\n // Returns if the question was correct, incorrect, or skipped (return null in the last case)\n switch (this.correct) {\n case true:\n return \"T\";\n case false:\n return \"F\";\n default:\n return null;\n }\n }\n\n hideFeedback() {\n this.connList.style.display = \"none\";\n }\n\n reinitializeListeners() {\n // maybe need to reinitialize the listeners\n }\n}\n\nif (typeof window.component_factory === \"undefined\") {\n window.component_factory = {};\n}\nwindow.component_factory.matching = function (opts) {\n if (opts.timed) {\n return new TimedMatching(opts);\n }\n return new MatchingProblem(opts);\n};\n","/*==========================================\n======== Master timed.js =========\n============================================\n=== This file contains the JS for ===\n=== the Runestone timed component. ===\n============================================\n=== Created By ===\n=== Kirby Olson ===\n=== 6/11/15 ===\n==========================================*/\n\"use strict\";\n\nimport RunestoneBase from \"../../common/js/runestonebase.js\";\nimport TimedFITB from \"../../fitb/js/timedfitb.js\";\nimport TimedMC from \"../../mchoice/js/timedmc.js\";\nimport TimedShortAnswer from \"../../shortanswer/js/timed_shortanswer.js\";\nimport ACFactory from \"../../activecode/js/acfactory.js\";\nimport TimedClickableArea from \"../../clickableArea/js/timedclickable\";\nimport TimedDragNDrop from \"../../dragndrop/js/timeddnd.js\";\nimport TimedParsons from \"../../parsons/js/timedparsons.js\";\nimport TimedMatching from \"../../matching/js/timed_matching.js\";\nimport SelectOne from \"../../selectquestion/js/selectone\";\nimport \"../css/timed.less\";\n\n// Timed constructor\nexport default class Timed extends RunestoneBase {\n constructor(opts) {\n super(opts);\n var orig = opts.orig;\n this.origElem = orig; // the entire element of this timed assessment and all of its children\n this.divid = orig.id;\n this.children = this.origElem.childNodes;\n this.visited = [];\n this.timeLimit = 0;\n this.limitedTime = false;\n if (!isNaN($(this.origElem).data(\"time\"))) {\n this.timeLimit = parseInt($(this.origElem).data(\"time\"), 10) * 60; // time in seconds to complete the exam\n this.startingTime = this.timeLimit;\n this.limitedTime = true;\n }\n this.showFeedback = true;\n if (this.origElem.hasAttribute(\"data-no-feedback\")) {\n this.showFeedback = false;\n }\n // check for attribute data-show-feedback = yes\n if (this.origElem.hasAttribute(\"data-show-feedback\")) {\n if (this.origElem.getAttribute(\"data-show-feedback\") === \"yes\") {\n this.showFeedback = true;\n } else {\n this.showFeedback = false;\n }\n }\n this.showResults = false;\n if (this.origElem.hasAttribute(\"data-result\")) {\n this.showResults = false;\n }\n this.random = false;\n if (this.origElem.hasAttribute(\"data-random\")) {\n this.random = true;\n }\n this.showTimer = true;\n if (this.origElem.hasAttribute(\"data-no-timer\")) {\n this.showTimer = false;\n }\n if (this.origElem.hasAttribute(\"data-timer\")) {\n if (\n this.origElem.getAttribute(\"data-timer\") === \"yes\"\n ) {\n this.showTimer = true;\n } else {\n this.showTimer = false;\n }\n }\n this.fullwidth = false;\n if (this.origElem.hasAttribute(\"data-fullwidth\")) {\n this.fullwidth = true;\n }\n this.nopause = false;\n if (this.origElem.hasAttribute(\"data-no-pause\")) {\n this.nopause = true;\n }\n if (this.origElem.hasAttribute(\"data-pause\")) {\n if (this.origElem.getAttribute(\"data-pause\") === \"yes\") {\n this.nopause = false;\n } else {\n this.nopause = true;\n }\n }\n eBookConfig.enableScratchAC = false;\n this.running = 0;\n this.paused = 0;\n this.done = 0;\n this.taken = 0;\n this.score = 0;\n this.incorrect = 0;\n this.correctStr = \"\";\n this.incorrectStr = \"\";\n this.skippedStr = \"\";\n this.skipped = 0;\n this.currentQuestionIndex = 0; // Which question is currently displaying on the page\n this.renderedQuestionArray = []; // list of all problems\n this.getNewChildren();\n // One small step to eliminate students from doing view source\n // this won't stop anyone with determination but may prevent casual peeking\n if (!eBookConfig.enableDebug) {\n document.body.oncontextmenu = function () {\n return false;\n };\n }\n this.checkAssessmentStatus().then(\n function () {\n this.renderTimedAssess();\n }.bind(this)\n );\n }\n\n getNewChildren() {\n this.newChildren = [];\n let runestoneChildren = this.origElem.querySelectorAll(\".runestone\");\n for (var i = 0; i < runestoneChildren.length; i++) {\n this.newChildren.push(runestoneChildren[i]);\n }\n }\n\n async checkAssessmentStatus() {\n // Has the user taken this exam? Inquiring minds want to know\n // If a user has not taken this exam then we want to make sure\n // that if a question has been seen by the student before we do\n // not populate previous answers.\n let sendInfo = {\n div_id: this.divid,\n course_name: eBookConfig.course,\n };\n console.log(sendInfo);\n if (eBookConfig.useRunestoneServices) {\n let request = new Request(\n `${eBookConfig.new_server_prefix}/assessment/tookTimedAssessment`,\n {\n method: \"POST\",\n headers: this.jsonHeaders,\n body: JSON.stringify(sendInfo),\n }\n );\n let response = await fetch(request);\n let data = await response.json();\n data = data.detail;\n this.taken = data.tookAssessment;\n this.assessmentTaken = this.taken;\n if (!this.taken) {\n localStorage.clear();\n }\n console.log(\"done with check status\");\n return response;\n } else {\n this.taken = false;\n this.assessmentTaken = false;\n return Promise.resolve();\n }\n }\n\n /*===============================\n === Generating new Timed HTML ===\n ===============================*/\n async renderTimedAssess() {\n console.log(\"rendering timed \");\n // create renderedQuestionArray returns a promise\n //\n this.createRenderedQuestionArray();\n if (this.random) {\n this.randomizeRQA();\n }\n this.renderContainer();\n this.renderTimer();\n await this.renderControlButtons();\n // If we decide to disable cut/copy/paste, uncomment the line below \n // this.disableCutCopyPaste();\n this.containerDiv.appendChild(this.timedDiv); // This can't be appended in renderContainer because then it renders above the timer and control buttons.\n if (this.renderedQuestionArray.length > 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 try {\n tmpArr = JSON.parse(\n localStorage.getItem(this.localStorageKey())\n ).answer;\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 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","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.0659406f2c053718.js.map.gz b/_static/268.0659406f2c053718.js.map.gz new file mode 100755 index 0000000000000000000000000000000000000000..dbe65b7b9c78e81badedf23c478cefe9250a22af GIT binary patch literal 19861 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.r(t),i.d(t,{default:()=>r});var s=i(78673),n=i(83057);class a extends s.A{constructor(e){if(super(e),e){var t=e.orig;this.useRunestoneServices=e.useRunestoneServices||eBookConfig.useRunestoneServices,this.origElem=t,this.divid=t.id,this.question=this.origElem.innerHTML,this.optional=!1,this.attachURL=e.attachURL,this.origElem.hasAttribute("data-optional")&&(this.optional=!0),this.origElem.hasAttribute("data-attachment")&&(this.attachment=!0),this.placeholder=this.origElem.getAttribute("data-placeholder")||"Write your answer here",this.renderHTML(),this.caption="shortanswer",this.addCaption("runestone"),this.checkServer("shortanswer",!0),"undefined"!=typeof Prism&&Prism.highlightAllUnder(this.containerDiv),this.attachment&&this.getAttachmentName()}}renderHTML(){this.containerDiv=document.createElement("div"),this.containerDiv.id=this.divid,this.containerDiv.classList.add(...(this.origElem.getAttribute("class")||"").split(" ").filter(Boolean)),this.newForm=document.createElement("form"),this.newForm.id=this.divid+"_journal",this.newForm.name=this.newForm.id,this.newForm.action="",this.containerDiv.appendChild(this.newForm),this.fieldSet=document.createElement("fieldset"),this.newForm.appendChild(this.fieldSet),this.firstLegendDiv=document.createElement("div"),this.firstLegendDiv.innerHTML=this.question,this.firstLegendDiv.classList.add("journal-question"),this.firstLegendDiv.classList.add("exercise-statement"),this.fieldSet.appendChild(this.firstLegendDiv),this.jInputDiv=document.createElement("div"),this.jInputDiv.id=this.divid+"_journal_input",this.fieldSet.appendChild(this.jInputDiv),this.jOptionsDiv=document.createElement("div"),this.jOptionsDiv.classList.add("journal-options"),this.jInputDiv.appendChild(this.jOptionsDiv),this.jTextArea=document.createElement("textarea");let e=this;if(this.jTextArea.onchange=function(){e.isAnswered=!0},this.jTextArea.id=this.divid+"_solution",this.jTextArea.setAttribute("aria-label","textarea"),this.jTextArea.placeholder=this.placeholder,this.jTextArea.style.display="inline",this.jTextArea.style.width="530px",this.jTextArea.classList.add("form-control"),this.jTextArea.rows=4,this.jTextArea.cols=50,this.jOptionsDiv.appendChild(this.jTextArea),this.jTextArea.onchange=function(){this.isAnswered=!0,this.isTimed?this.feedbackDiv.innerHTML="Your answer is automatically saved.":this.feedbackDiv.innerHTML="Your answer has not been saved yet!",this.feedbackDiv.classList.remove("alert-success"),this.feedbackDiv.classList.add("alert","alert-danger")}.bind(this),this.jTextArea.addEventListener("input",(()=>{this.jTextArea.style.height="auto",this.jTextArea.style.height=`${this.jTextArea.scrollHeight}px`,this.renderMath(this.jTextArea.value)})),this.buttonDiv=document.createElement("div"),this.fieldSet.appendChild(this.buttonDiv),this.submitButton=document.createElement("button"),this.submitButton.classList.add("btn","btn-success"),this.submitButton.type="button",this.submitButton.textContent="Save",this.submitButton.onclick=function(){this.checkCurrentAnswer(),this.logCurrentAnswer(),this.renderFeedback()}.bind(this),this.buttonDiv.appendChild(this.submitButton),this.otherOptionsDiv=document.createElement("div"),this.otherOptionsDiv.style.paddingLeft="20px",this.otherOptionsDiv.classList.add("journal-options"),this.fieldSet.appendChild(this.otherOptionsDiv),this.feedbackDiv=document.createElement("div"),this.feedbackDiv.style.width="530px",this.feedbackDiv.style.fontStyle="italic",this.feedbackDiv.id=this.divid+"_feedback",this.feedbackDiv.style.display="none",this.fieldSet.appendChild(this.feedbackDiv),this.attachment){let e=document.createElement("div");if(this.attachDiv=e,this.graderactive){let t=document.createElement("button");t.type="button",t.innerHTML="View Attachment",t.onclick=this.viewFile.bind(this),e.appendChild(t)}else this.fileUpload=document.createElement("input"),this.fileUpload.type="file",this.fileUpload.id=`${this.divid}_fileme`,e.appendChild(this.fileUpload);this.containerDiv.appendChild(e)}this.origElem.replaceWith(this.containerDiv),"undefined"!=typeof MathJax&&this.queueMathJax(this.containerDiv)}renderMath(e){(0,n.u)(e)?(this.renderedAnswer||(this.renderedAnswerLabel=document.createElement("label"),this.renderedAnswerLabel.innerHTML="Rendered Answer:",this.renderedAnswerLabel.id=this.divid+"_rendered_answer_label",this.renderedAnswerLabel.style.display="none",this.fieldSet.appendChild(this.renderedAnswerLabel),this.renderedAnswer=document.createElement("div"),this.renderedAnswer.classList.add("latexoutput"),this.renderedAnswer.setAttribute("aria-labelledby",this.renderedAnswerLabel.id),this.renderedAnswer.setAttribute("aria-live","polite"),this.renderedAnswer.style.display="none",this.fieldSet.appendChild(this.renderedAnswer)),e=(e=(e=e.replace(/\$\$(.*?)\$\$/g,"\\[ $1 \\]")).replace(/\$(.*?)\$/g,"\\( $1 \\)")).replace(/\n/g,"
"),this.renderedAnswer.innerHTML=e,this.renderedAnswer.style.display="block",this.renderedAnswerLabel.style.display="block",this.queueMathJax(this.renderedAnswer)):this.renderedAnswer&&(this.renderedAnswer.style.display="none",this.renderedAnswerLabel.style.display="none")}async checkCurrentAnswer(){let e=document.getElementById(this.divid+"_solution").value;this.renderMath(e),this.setLocalStorage({answer:e,timestamp:new Date})}async logCurrentAnswer(e){let t=document.getElementById(this.divid+"_solution").value;this.renderMath(t),this.setLocalStorage({answer:t,timestamp:new Date});let i={event:"shortanswer",act:t,answer:t,div_id:this.divid};void 0!==e&&(i.sid=e),await this.logBookEvent(i),this.attachment&&await this.uploadFile()}renderFeedback(){this.feedbackDiv.innerHTML="Your answer has been saved.",this.feedbackDiv.classList.remove("alert-danger"),this.feedbackDiv.classList.add("alert","alert-success"),this.feedbackDiv.style.display="block"}setLocalStorage(e){if(!this.graderactive){let t=this.localStorageKey();localStorage.setItem(t,JSON.stringify(e))}}checkLocalStorage(){var e="";if(!this.graderactive&&localStorage.length>0){var t=localStorage.getItem(this.localStorageKey());if(null!==t){try{e=JSON.parse(t).answer}catch(e){return console.log(e.message),void localStorage.removeItem(this.localStorageKey())}let i=document.getElementById(this.divid+"_solution");i&&(i.value=e),this.renderMath(e)}}}restoreAnswers(e){e.answer||(e.answer=""),this.answer=e.answer,this.jTextArea.value=this.answer,this.renderMath(this.answer);let t=document.createElement("p");t.classList.add("shortanswer__timestamp"),this.jInputDiv.appendChild(t);var i;if(i=e.timestamp?new Date(e.timestamp).toLocaleString():"",t.textContent=i,this.jTextArea.style.height="auto",this.jTextArea.style.height=`${this.jTextArea.scrollHeight}px`,e.last_answer){this.current_answer="ontime";let s=document.createElement("button");s.type="button",s.textContent="Show Late Answer",s.classList.add("btn","btn-warning"),s.style.marginLeft="5px",s.addEventListener("click",function(){var n,a;"ontime"===this.current_answer?(this.jTextArea.value=e.last_answer,this.answer=e.last_answer,n=new Date(e.last_timestamp).toLocaleString(),a="Show on-Time Answer",this.current_answer="late"):(this.jTextArea.value=e.answer,this.answer=e.answer,n=i,a="Show Late Answer",this.current_answer="ontime"),this.renderMath(this.answer),t.textContent=`Submitted: ${n}`,s.textContent=a}.bind(this)),this.buttonDiv.appendChild(s)}let s="";void 0!==e.score&&(s=`Score: ${e.score}`),e.comment&&(s+=` -- ${e.comment}`),""!==s&&(this.feedbackDiv.innerHTML=s,this.feedbackDiv.style.display="block",this.feedbackDiv.classList.add("alert","alert-success"))}disableInteraction(){this.jTextArea.disabled=!0}async getAttachmentName(){let e=`/ns/assessment/has_attachment/${this.divid}`;this.sid&&(e+=`?sid=${this.sid}`);const t=await fetch(e);if(!t.ok)return console.error("Error fetching attachment name:",t.statusText),null;const i=await t.json();if(i.detail.hasAttachment){let e=i.detail.hasAttachment;e=e.substring(e.lastIndexOf("/")+1);let t=document.createElement("span");t.innerHTML=`Attachment: ${e}`,this.attachDiv.appendChild(t)}}async uploadFile(){const e=this.fileUpload.files,t=e[0].name.split(".").pop();if(!["jpg","jpeg","png","gif","pdf"].includes(t))return void alert("File type not allowed. Please upload a jpg, jpeg, png, gif, or pdf file.");if(e[0].size>5242880)return void alert("File size exceeds 5MB limit. Please upload a smaller file.");const i=new FormData;this.fileUpload.files.length>0&&(i.append("file",e[0]),fetch(`/ns/logger/upload/${this.divid}`,{method:"POST",body:i}).then((e=>e.json())).then((e=>{console.log(e)})).catch((e=>{console.error(e)})))}viewFile(){if(this.attachURL){const e=window.open("","_blank");if(-1!==this.attachURL.indexOf(".pdf?")){const t=e.document.createElement("object");t.setAttribute("data",this.attachURL),t.setAttribute("type","application/pdf"),t.setAttribute("width","800px"),t.setAttribute("height","1040px"),e.document.body.appendChild(t);let i=e.document.createElement("a");i.setAttribute("href",this.attachURL),i.innerText="Download PDF",t.appendChild(i)}else{const t=e.document.createElement("img");t.setAttribute("src",this.attachURL),t.setAttribute("style","width:100%; height:auto;"),e.document.body.appendChild(t)}}else alert("No attachment for this student.")}}document.addEventListener("runestone:login-complete",(function(){document.querySelectorAll("[data-component=shortanswer]").forEach((function(e){if(!e.closest("[data-component=timedAssessment]"))try{window.componentMap[e.id]=new a({orig:e,useRunestoneServices:eBookConfig.useRunestoneServices})}catch(t){console.log(`Error rendering ShortAnswer Problem ${e.id}\n Details: ${t}`)}}))}));class r extends a{constructor(e){super(e),this.renderTimedIcon(this.containerDiv),this.isTimed=!0,this.hideButtons()}hideButtons(){this.submitButton&&(this.submitButton.style.display="none")}renderTimedIcon(e){var t=document.createElement("div"),i=document.createElement("img");i.src="../_static/clock.png",i.style.width="15px",i.style.height="15px",t.className="timeTip",t.title="",t.appendChild(i),e.insertBefore(t,e.firstChild)}checkCorrectTimed(){return"I"}hideFeedback(){this.feedbackDiv&&(this.feedbackDiv.style.display="none")}}void 0===window.component_factory&&(window.component_factory={}),window.component_factory.shortanswer=function(e){return e.timed?new r(e):new a(e)}}}]); -//# sourceMappingURL=819.3e20e27de12f3abf.js.map \ No newline at end of file diff --git a/_static/819.3e20e27de12f3abf.js.gz b/_static/819.3e20e27de12f3abf.js.gz deleted file mode 100644 index 9ea054b8972143c290e2178f32d66c5fce60f2a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3244 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 diff --git a/_static/819.3e20e27de12f3abf.js.map b/_static/819.3e20e27de12f3abf.js.map deleted file mode 100644 index 4f1e999..0000000 --- a/_static/819.3e20e27de12f3abf.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"819.3e20e27de12f3abf.js","mappings":"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","sources":["webpack://WebComponents/./runestone/shortanswer/js/shortanswer.js","webpack://WebComponents/./runestone/shortanswer/js/timed_shortanswer.js"],"sourcesContent":["/*==========================================\n======= Master shortanswer.js ========\n============================================\n=== This file contains the JS for ===\n=== the Runestone shortanswer component. ===\n============================================\n=== Created by ===\n=== Isaiah Mayerchak ===\n=== 7/2/15 ===\n=== Brad Miller ===\n=== 2019 ===\n==========================================*/\n\nimport RunestoneBase from \"../../common/js/runestonebase.js\";\nimport { looksLikeLatexMath } from \"../../common/js/bookfuncs.js\";\nimport \"./../css/shortanswer.css\";\n\nexport default class ShortAnswer extends RunestoneBase {\n constructor(opts) {\n super(opts);\n if (opts) {\n var orig = opts.orig; // entire

element that will be replaced by new HTML\n this.useRunestoneServices =\n opts.useRunestoneServices || eBookConfig.useRunestoneServices;\n this.origElem = orig;\n this.divid = orig.id;\n this.question = this.origElem.innerHTML;\n this.optional = false;\n this.attachURL = opts.attachURL;\n if (this.origElem.hasAttribute(\"data-optional\")) {\n this.optional = true;\n }\n if (this.origElem.hasAttribute(\"data-attachment\")) {\n this.attachment = true;\n }\n this.placeholder =\n this.origElem.getAttribute(\"data-placeholder\") ||\n \"Write your answer here\";\n this.renderHTML();\n this.caption = \"shortanswer\";\n this.addCaption(\"runestone\");\n this.checkServer(\"shortanswer\", true);\n if (typeof Prism !== \"undefined\") {\n Prism.highlightAllUnder(this.containerDiv);\n }\n if (this.attachment) {\n this.getAttachmentName();\n }\n }\n }\n\n renderHTML() {\n this.containerDiv = document.createElement(\"div\");\n this.containerDiv.id = this.divid;\n this.containerDiv.classList.add(...(this.origElem.getAttribute(\"class\") || \"\").split(\" \").filter(Boolean));\n this.newForm = document.createElement(\"form\");\n this.newForm.id = this.divid + \"_journal\";\n this.newForm.name = this.newForm.id;\n this.newForm.action = \"\";\n this.containerDiv.appendChild(this.newForm);\n this.fieldSet = document.createElement(\"fieldset\");\n this.newForm.appendChild(this.fieldSet);\n this.firstLegendDiv = document.createElement(\"div\");\n this.firstLegendDiv.innerHTML = this.question;\n this.firstLegendDiv.classList.add(\"journal-question\");\n this.firstLegendDiv.classList.add(\"exercise-statement\");\n this.fieldSet.appendChild(this.firstLegendDiv);\n this.jInputDiv = document.createElement(\"div\");\n this.jInputDiv.id = this.divid + \"_journal_input\";\n this.fieldSet.appendChild(this.jInputDiv);\n this.jOptionsDiv = document.createElement(\"div\");\n this.jOptionsDiv.classList.add(\"journal-options\");\n this.jInputDiv.appendChild(this.jOptionsDiv);\n this.jTextArea = document.createElement(\"textarea\");\n let self = this;\n this.jTextArea.onchange = function () {\n self.isAnswered = true;\n };\n this.jTextArea.id = this.divid + \"_solution\";\n this.jTextArea.setAttribute(\"aria-label\", \"textarea\");\n this.jTextArea.placeholder = this.placeholder;\n this.jTextArea.style.display = \"inline\";\n this.jTextArea.style.width = \"530px\";\n this.jTextArea.classList.add(\"form-control\");\n this.jTextArea.rows = 4;\n this.jTextArea.cols = 50;\n this.jOptionsDiv.appendChild(this.jTextArea);\n this.jTextArea.onchange = function () {\n this.isAnswered = true;\n if (this.isTimed) {\n this.feedbackDiv.innerHTML = \"Your answer is automatically saved.\";\n } else {\n this.feedbackDiv.innerHTML = \"Your answer has not been saved yet!\";\n }\n this.feedbackDiv.classList.remove(\"alert-success\");\n this.feedbackDiv.classList.add(\"alert\", \"alert-danger\");\n }.bind(this);\n this.jTextArea.addEventListener(\"input\", () => {\n this.jTextArea.style.height = \"auto\";\n this.jTextArea.style.height = `${this.jTextArea.scrollHeight}px`;\n this.renderMath(this.jTextArea.value);\n });\n this.buttonDiv = document.createElement(\"div\");\n this.fieldSet.appendChild(this.buttonDiv);\n this.submitButton = document.createElement(\"button\");\n this.submitButton.classList.add(\"btn\", \"btn-success\");\n this.submitButton.type = \"button\";\n this.submitButton.textContent = \"Save\";\n this.submitButton.onclick = function () {\n this.checkCurrentAnswer();\n this.logCurrentAnswer();\n this.renderFeedback();\n }.bind(this);\n this.buttonDiv.appendChild(this.submitButton);\n\n this.otherOptionsDiv = document.createElement(\"div\");\n this.otherOptionsDiv.style.paddingLeft = \"20px\";\n this.otherOptionsDiv.classList.add(\"journal-options\");\n this.fieldSet.appendChild(this.otherOptionsDiv);\n // add a feedback div to give user feedback\n this.feedbackDiv = document.createElement(\"div\");\n this.feedbackDiv.style.width = \"530px\";\n this.feedbackDiv.style.fontStyle = \"italic\";\n this.feedbackDiv.id = this.divid + \"_feedback\";\n this.feedbackDiv.style.display = \"none\";\n this.fieldSet.appendChild(this.feedbackDiv);\n if (this.attachment) {\n let attachDiv = document.createElement(\"div\")\n this.attachDiv = attachDiv;\n if (this.graderactive) {\n // If in grading mode make a button to create a popup with the image\n let viewButton = document.createElement(\"button\")\n viewButton.type = \"button\"\n viewButton.innerHTML = \"View Attachment\"\n viewButton.onclick = this.viewFile.bind(this);\n attachDiv.appendChild(viewButton);\n } else {\n // Otherwise make a button for the student to select a file to upload.\n this.fileUpload = document.createElement(\"input\")\n this.fileUpload.type = \"file\";\n this.fileUpload.id = `${this.divid}_fileme`;\n attachDiv.appendChild(this.fileUpload);\n }\n this.containerDiv.appendChild(attachDiv);\n }\n this.origElem.replaceWith(this.containerDiv);\n // This is a stopgap measure for when MathJax is not loaded at all. There is another\n // more difficult case that when MathJax is loaded asynchronously we will get here\n // before MathJax is loaded. In that case we will need to implement something\n // like `the solution described here `_\n if (typeof MathJax !== \"undefined\") {\n this.queueMathJax(this.containerDiv);\n }\n }\n\n renderMath(value) {\n if (looksLikeLatexMath(value)) {\n if (!this.renderedAnswer) {\n this.renderedAnswerLabel = document.createElement(\"label\");\n this.renderedAnswerLabel.innerHTML = \"Rendered Answer:\";\n this.renderedAnswerLabel.id = this.divid + \"_rendered_answer_label\";\n this.renderedAnswerLabel.style.display = \"none\";\n this.fieldSet.appendChild(this.renderedAnswerLabel);\n\n this.renderedAnswer = document.createElement(\"div\");\n this.renderedAnswer.classList.add(\"latexoutput\");\n this.renderedAnswer.setAttribute('aria-labelledby', this.renderedAnswerLabel.id);\n this.renderedAnswer.setAttribute('aria-live', \"polite\");\n this.renderedAnswer.style.display = \"none\";\n this.fieldSet.appendChild(this.renderedAnswer);\n }\n value = value.replace(/\\$\\$(.*?)\\$\\$/g, \"\\\\[ $1 \\\\]\");\n value = value.replace(/\\$(.*?)\\$/g, \"\\\\( $1 \\\\)\");\n value = value.replace(/\\n/g, \"
\");\n this.renderedAnswer.innerHTML = value;\n\n this.renderedAnswer.style.display = \"block\";\n this.renderedAnswerLabel.style.display = \"block\";\n this.queueMathJax(this.renderedAnswer);\n\n } else {\n if (this.renderedAnswer) {\n this.renderedAnswer.style.display = \"none\";\n this.renderedAnswerLabel.style.display = \"none\";\n }\n }\n }\n\n async checkCurrentAnswer() {\n let value = document.getElementById(this.divid + \"_solution\").value;\n this.renderMath(value);\n this.setLocalStorage({\n answer: value,\n timestamp: new Date(),\n });\n }\n\n async logCurrentAnswer(sid) {\n let value = document.getElementById(this.divid + \"_solution\").value;\n this.renderMath(value);\n this.setLocalStorage({\n answer: value,\n timestamp: new Date(),\n });\n let data = {\n event: \"shortanswer\",\n act: value,\n answer: value,\n div_id: this.divid,\n };\n if (typeof sid !== \"undefined\") {\n data.sid = sid;\n }\n await this.logBookEvent(data);\n if (this.attachment) {\n await this.uploadFile();\n }\n }\n\n renderFeedback() {\n this.feedbackDiv.innerHTML = \"Your answer has been saved.\";\n this.feedbackDiv.classList.remove(\"alert-danger\");\n this.feedbackDiv.classList.add(\"alert\", \"alert-success\");\n this.feedbackDiv.style.display = \"block\";\n }\n setLocalStorage(data) {\n if (!this.graderactive) {\n let key = this.localStorageKey();\n localStorage.setItem(key, JSON.stringify(data));\n }\n }\n checkLocalStorage() {\n // Repopulates the short answer text\n // which was stored into local storage.\n var answer = \"\";\n if (this.graderactive) {\n return;\n }\n var len = localStorage.length;\n if (len > 0) {\n var ex = localStorage.getItem(this.localStorageKey());\n if (ex !== null) {\n try {\n var storedData = JSON.parse(ex);\n answer = storedData.answer;\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;\n }\n let solution = document.getElementById(this.divid + \"_solution\");\n if (solution) {\n solution.value = answer;\n }\n this.renderMath(answer);\n }\n }\n }\n restoreAnswers(data) {\n // Restore answers from storage retrieval done in RunestoneBase\n // sometimes data.answer can be null\n if (!data.answer) {\n data.answer = \"\";\n }\n this.answer = data.answer;\n this.jTextArea.value = this.answer;\n this.renderMath(this.answer);\n\n let p = document.createElement(\"p\");\n p.classList.add(\"shortanswer__timestamp\");\n this.jInputDiv.appendChild(p);\n var tsString = \"\";\n if (data.timestamp) {\n tsString = new Date(data.timestamp).toLocaleString();\n } else {\n tsString = \"\";\n }\n p.textContent = tsString;\n this.jTextArea.style.height = \"auto\";\n this.jTextArea.style.height = `${this.jTextArea.scrollHeight}px`;\n\n if (data.last_answer) {\n this.current_answer = \"ontime\";\n let toggle_answer_button = document.createElement(\"button\");\n toggle_answer_button.type = \"button\";\n toggle_answer_button.textContent = \"Show Late Answer\";\n toggle_answer_button.classList.add(\"btn\", \"btn-warning\");\n toggle_answer_button.style.marginLeft = \"5px\";\n\n toggle_answer_button.addEventListener(\n \"click\",\n function () {\n var display_timestamp, button_text;\n if (this.current_answer === \"ontime\") {\n this.jTextArea.value = data.last_answer;\n this.answer = data.last_answer;\n display_timestamp = new Date(\n data.last_timestamp\n ).toLocaleString();\n button_text = \"Show on-Time Answer\";\n this.current_answer = \"late\";\n } else {\n this.jTextArea.value = data.answer;\n this.answer = data.answer;\n display_timestamp = tsString;\n button_text = \"Show Late Answer\";\n this.current_answer = \"ontime\";\n }\n this.renderMath(this.answer);\n p.textContent = `Submitted: ${display_timestamp}`;\n toggle_answer_button.textContent = button_text;\n }.bind(this)\n );\n\n this.buttonDiv.appendChild(toggle_answer_button);\n }\n let feedbackStr = \"\";\n if (typeof data.score !== \"undefined\") {\n feedbackStr = `Score: ${data.score}`;\n }\n if (data.comment) {\n feedbackStr += ` -- ${data.comment}`;\n }\n if (feedbackStr !== \"\") {\n this.feedbackDiv.innerHTML = feedbackStr;\n this.feedbackDiv.style.display = \"block\";\n this.feedbackDiv.classList.add(\"alert\", \"alert-success\");\n }\n }\n\n disableInteraction() {\n this.jTextArea.disabled = true;\n }\n\n async getAttachmentName() {\n // Get the attachment name from the /ns/assessment/has_attachment endpoint\n let requestUrl = `/ns/assessment/has_attachment/${this.divid}`;\n if (this.sid) {\n requestUrl += `?sid=${this.sid}`;\n }\n const response = await fetch(requestUrl);\n if (!response.ok) {\n console.error(\"Error fetching attachment name:\", response.statusText);\n return null;\n }\n const obj = await response.json();\n if (obj.detail.hasAttachment) {\n // Return the S3 key for the attachment\n let filename = obj.detail.hasAttachment;\n // filename is everthing after the last slash\n filename = filename.substring(filename.lastIndexOf(\"/\") + 1);\n let fmess = document.createElement(\"span\");\n fmess.innerHTML = `Attachment: ${filename}`;\n this.attachDiv.appendChild(fmess);\n }\n }\n\n async uploadFile() {\n const files = this.fileUpload.files\n // get the suffix from the file name\n const fileName = files[0].name;\n const suffix = fileName.split('.').pop();\n // if the suffix is not in the list of allowed suffixes, return\n if (!['jpg', 'jpeg', 'png', 'gif', 'pdf'].includes(suffix)) {\n alert(\"File type not allowed. Please upload a jpg, jpeg, png, gif, or pdf file.\");\n return;\n }\n // if the file size is greater than 5MB, return\n if (files[0].size > 5 * 1024 * 1024) {\n alert(\"File size exceeds 5MB limit. Please upload a smaller file.\");\n return;\n }\n const data = new FormData()\n if (this.fileUpload.files.length > 0) {\n data.append('file', files[0])\n fetch(`/ns/logger/upload/${this.divid}`, {\n method: 'POST',\n body: data\n })\n .then(response => response.json())\n .then(data => {\n console.log(data)\n })\n .catch(error => {\n console.error(error)\n })\n }\n }\n\n viewFile() {\n // Get the URL from the S3 API -- saved when we display in grader mode\n if (this.attachURL) {\n //window.open(this.attachURL, \"_blank\");\n //\n //switch to \n const image_window = window.open(\"\", \"_blank\")\n if (this.attachURL.indexOf('.pdf?') !== -1) {\n const embed = image_window.document.createElement(\"object\");\n embed.setAttribute(\"data\", this.attachURL);\n embed.setAttribute(\"type\", \"application/pdf\");\n embed.setAttribute(\"width\", \"800px\");\n embed.setAttribute(\"height\", \"1040px\");\n image_window.document.body.appendChild(embed);\n let alt = image_window.document.createElement(\"a\");\n alt.setAttribute(\"href\", this.attachURL);\n alt.innerText = \"Download PDF\";\n embed.appendChild(alt);\n }\n else {\n const img = image_window.document.createElement(\"img\");\n img.setAttribute(\"src\", this.attachURL);\n img.setAttribute(\"style\", \"width:100%; height:auto;\");\n image_window.document.body.appendChild(img);\n }\n } else {\n alert(\"No attachment for this student.\")\n }\n }\n}\n\n/*=================================\n== Find the custom HTML tags and ==\n== execute our code on them ==\n=================================*/\ndocument.addEventListener(\"runestone:login-complete\", function () {\n document.querySelectorAll(\"[data-component=shortanswer]\").forEach(function (el) {\n // If this element exists within a timed component, don't render it here\n if (!el.closest(\"[data-component=timedAssessment]\")) {\n try {\n window.componentMap[el.id] = new ShortAnswer({\n orig: el,\n useRunestoneServices: eBookConfig.useRunestoneServices,\n });\n } catch (err) {\n console.log(`Error rendering ShortAnswer Problem ${el.id}\n Details: ${err}`);\n }\n }\n });\n});\n","import ShortAnswer from \"./shortanswer.js\";\n\nexport default class TimedShortAnswer extends ShortAnswer {\n constructor(opts) {\n super(opts);\n this.renderTimedIcon(this.containerDiv);\n this.isTimed = true;\n this.hideButtons();\n }\n hideButtons() {\n if (this.submitButton) {\n this.submitButton.style.display = \"none\";\n }\n }\n renderTimedIcon(component) {\n // renders the clock icon on timed components. The component parameter\n // is the element that the icon should be appended to.\n var timeIconDiv = document.createElement(\"div\");\n var timeIcon = document.createElement(\"img\");\n\n timeIcon.src = \"../_static/clock.png\";\n timeIcon.style.width = \"15px\";\n timeIcon.style.height = \"15px\";\n\n timeIconDiv.className = \"timeTip\";\n timeIconDiv.title = \"\";\n timeIconDiv.appendChild(timeIcon);\n\n // If firstChild is null, insertBefore acts like appendChild\n component.insertBefore(timeIconDiv, component.firstChild);\n }\n checkCorrectTimed() {\n return \"I\"; // we ignore this in the grading\n }\n hideFeedback() {\n if (this.feedbackDiv) {\n this.feedbackDiv.style.display = \"none\";\n }\n }\n}\n\nif (typeof window.component_factory === \"undefined\") {\n window.component_factory = {};\n}\n\nwindow.component_factory.shortanswer = function (opts) {\n if (opts.timed) {\n return new TimedShortAnswer(opts);\n }\n return new ShortAnswer(opts);\n};\n"],"names":["ShortAnswer","constructor","opts","super","orig","this","useRunestoneServices","eBookConfig","origElem","divid","id","question","innerHTML","optional","attachURL","hasAttribute","attachment","placeholder","getAttribute","renderHTML","caption","addCaption","checkServer","Prism","highlightAllUnder","containerDiv","getAttachmentName","document","createElement","classList","add","split","filter","Boolean","newForm","name","action","appendChild","fieldSet","firstLegendDiv","jInputDiv","jOptionsDiv","jTextArea","self","onchange","isAnswered","setAttribute","style","display","width","rows","cols","isTimed","feedbackDiv","remove","bind","addEventListener","height","scrollHeight","renderMath","value","buttonDiv","submitButton","type","textContent","onclick","checkCurrentAnswer","logCurrentAnswer","renderFeedback","otherOptionsDiv","paddingLeft","fontStyle","attachDiv","graderactive","viewButton","viewFile","fileUpload","replaceWith","MathJax","queueMathJax","renderedAnswer","renderedAnswerLabel","replace","getElementById","setLocalStorage","answer","timestamp","Date","sid","data","event","act","div_id","logBookEvent","uploadFile","key","localStorageKey","localStorage","setItem","JSON","stringify","checkLocalStorage","length","ex","getItem","parse","err","console","log","message","removeItem","solution","restoreAnswers","p","tsString","toLocaleString","last_answer","current_answer","toggle_answer_button","marginLeft","display_timestamp","button_text","last_timestamp","feedbackStr","score","comment","disableInteraction","disabled","requestUrl","response","fetch","ok","error","statusText","obj","json","detail","hasAttachment","filename","substring","lastIndexOf","fmess","files","suffix","pop","includes","alert","size","FormData","append","method","body","then","catch","image_window","window","open","indexOf","embed","alt","innerText","img","querySelectorAll","forEach","el","closest","componentMap","TimedShortAnswer","renderTimedIcon","hideButtons","component","timeIconDiv","timeIcon","src","className","title","insertBefore","firstChild","checkCorrectTimed","hideFeedback","component_factory","shortanswer","timed"],"sourceRoot":""} \ No newline at end of file diff --git a/_static/819.3e20e27de12f3abf.js.map.gz b/_static/819.3e20e27de12f3abf.js.map.gz deleted file mode 100644 index 2c68cef863f7bc757d4d5192141a51304403687f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9105 zcmV;CBW~OuiwFP!000026XiW?Q`^Y0e??2}t-!|E5W

O-@O&G3HGOVac*ZWP5B2 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 PvhwsF2W+*1QG5UZW}Jz~ diff --git a/_static/819.fa7785b520e523a5.js b/_static/819.fa7785b520e523a5.js new file mode 100755 index 0000000..d781926 --- /dev/null +++ b/_static/819.fa7785b520e523a5.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkWebComponents=self.webpackChunkWebComponents||[]).push([[819],{48819:(e,t,i)=>{i.r(t),i.d(t,{default:()=>r});var s=i(78673),n=i(83057);class a extends s.A{constructor(e){if(super(e),e){var t=e.orig;this.useRunestoneServices=e.useRunestoneServices||eBookConfig.useRunestoneServices,this.origElem=t,this.divid=t.id,this.question=this.origElem.innerHTML,this.optional=!1,this.attachURL=e.attachURL,this.origElem.hasAttribute("data-optional")&&(this.optional=!0),this.origElem.hasAttribute("data-attachment")&&(this.attachment=!0),this.placeholder=this.origElem.getAttribute("data-placeholder")||"Write your answer here",this.renderHTML(),this.caption="shortanswer",this.addCaption("runestone"),this.checkServer("shortanswer",!0),"undefined"!=typeof Prism&&Prism.highlightAllUnder(this.containerDiv),this.attachment&&this.getAttachmentName()}}renderHTML(){if(this.containerDiv=document.createElement("div"),this.containerDiv.id=this.divid,this.containerDiv.classList.add(...(this.origElem.getAttribute("class")||"").split(" ").filter(Boolean)),this.newForm=document.createElement("form"),this.newForm.id=this.divid+"_journal",this.newForm.name=this.newForm.id,this.newForm.action="",this.containerDiv.appendChild(this.newForm),this.fieldSet=document.createElement("fieldset"),this.newForm.appendChild(this.fieldSet),this.firstLegendDiv=document.createElement("div"),this.firstLegendDiv.innerHTML=this.question,this.firstLegendDiv.classList.add("journal-question"),this.firstLegendDiv.classList.add("exercise-statement"),this.fieldSet.appendChild(this.firstLegendDiv),this.jInputDiv=document.createElement("div"),this.jInputDiv.id=this.divid+"_journal_input",this.fieldSet.appendChild(this.jInputDiv),this.jOptionsDiv=document.createElement("div"),this.jOptionsDiv.classList.add("journal-options"),this.jInputDiv.appendChild(this.jOptionsDiv),this.jTextArea=document.createElement("textarea"),this.jTextArea.id=this.divid+"_solution",this.jTextArea.setAttribute("aria-label","textarea"),this.jTextArea.placeholder=this.placeholder,this.jTextArea.style.display="inline",this.jTextArea.style.width="530px",this.jTextArea.classList.add("form-control"),this.jTextArea.rows=4,this.jTextArea.cols=50,this.jOptionsDiv.appendChild(this.jTextArea),this.jTextArea.onchange=function(){this.isAnswered=!0}.bind(this),this.jTextArea.addEventListener("keydown",(()=>{this.isTimed?this.feedbackDiv.innerHTML="Your answer is automatically saved.":(this.feedbackDiv.innerHTML="Your answer has not been saved yet!",this.feedbackDiv.classList.remove("alert-success"),this.feedbackDiv.classList.add("alert","alert-danger"))})),this.jTextArea.addEventListener("input",(()=>{this.jTextArea.style.height="auto",this.jTextArea.style.height=`${this.jTextArea.scrollHeight}px`,this.renderMath(this.jTextArea.value)})),this.buttonDiv=document.createElement("div"),this.fieldSet.appendChild(this.buttonDiv),this.submitButton=document.createElement("button"),this.submitButton.classList.add("btn","btn-success"),this.submitButton.type="button",this.submitButton.textContent="Save",this.submitButton.onclick=function(){this.checkCurrentAnswer(),this.logCurrentAnswer(),this.renderFeedback()}.bind(this),this.buttonDiv.appendChild(this.submitButton),this.otherOptionsDiv=document.createElement("div"),this.otherOptionsDiv.style.paddingLeft="20px",this.otherOptionsDiv.classList.add("journal-options"),this.fieldSet.appendChild(this.otherOptionsDiv),this.feedbackDiv=document.createElement("div"),this.feedbackDiv.style.width="530px",this.feedbackDiv.style.fontStyle="italic",this.feedbackDiv.id=this.divid+"_feedback",this.feedbackDiv.classList.add("shortanswer__feedback"),this.feedbackDiv.style.display="none",this.fieldSet.appendChild(this.feedbackDiv),this.attachment){let e=document.createElement("div");if(this.attachDiv=e,this.graderactive){let t=document.createElement("button");t.type="button",t.innerHTML="View Attachment",t.onclick=this.viewFile.bind(this),e.appendChild(t)}else this.fileUpload=document.createElement("input"),this.fileUpload.type="file",this.fileUpload.id=`${this.divid}_fileme`,e.appendChild(this.fileUpload);this.containerDiv.appendChild(e)}this.origElem.replaceWith(this.containerDiv),"undefined"!=typeof MathJax&&this.queueMathJax(this.containerDiv)}renderMath(e){(0,n.u)(e)?(this.renderedAnswer||(this.rederedAnswerDiv=document.createElement("div"),this.rederedAnswerDiv.classList.add("shortanswer__rendered-answer-div"),this.fieldSet.appendChild(this.rederedAnswerDiv),this.renderedAnswerLabel=document.createElement("label"),this.renderedAnswerLabel.innerHTML="Rendered Answer:",this.renderedAnswerLabel.id=this.divid+"_rendered_answer_label",this.renderedAnswerLabel.classList.add("shortanswer__rendered-answer-label"),this.rederedAnswerDiv.appendChild(this.renderedAnswerLabel),this.renderedAnswer=document.createElement("div"),this.renderedAnswer.classList.add("shortanswer__rendered-answer"),this.renderedAnswer.classList.add("latexoutput"),this.renderedAnswer.setAttribute("aria-labelledby",this.renderedAnswerLabel.id),this.renderedAnswer.setAttribute("aria-live","polite"),this.rederedAnswerDiv.appendChild(this.renderedAnswer)),e=(e=(e=e.replace(/\$\$(.*?)\$\$/g,"\\[ $1 \\]")).replace(/\$(.*?)\$/g,"\\( $1 \\)")).replace(/\n/g,"
"),this.renderedAnswer.innerHTML=e,this.rederedAnswerDiv.style.display="block",this.queueMathJax(this.renderedAnswer)):this.renderedAnswer&&(this.rederedAnswerDiv.style.display="none")}async checkCurrentAnswer(){let e=document.getElementById(this.divid+"_solution").value;this.renderMath(e),this.setLocalStorage({answer:e,timestamp:new Date})}async logCurrentAnswer(e){let t=document.getElementById(this.divid+"_solution").value;this.renderMath(t),this.setLocalStorage({answer:t,timestamp:new Date});let i={event:"shortanswer",act:t,answer:t,div_id:this.divid};void 0!==e&&(i.sid=e),await this.logBookEvent(i),this.attachment&&await this.uploadFile()}renderFeedback(){this.feedbackDiv.innerHTML="Your answer has been saved.",this.feedbackDiv.classList.remove("alert-danger"),this.feedbackDiv.classList.add("alert","alert-success"),this.feedbackDiv.style.display="block"}setLocalStorage(e){if(!this.graderactive){let t=this.localStorageKey();localStorage.setItem(t,JSON.stringify(e))}}checkLocalStorage(){var e="";if(!this.graderactive&&localStorage.length>0){var t=localStorage.getItem(this.localStorageKey());if(null!==t){try{e=JSON.parse(t).answer}catch(e){return console.log(e.message),void localStorage.removeItem(this.localStorageKey())}let i=document.getElementById(this.divid+"_solution");i&&(i.value=e),this.renderMath(e)}}}restoreAnswers(e){e.answer||(e.answer=""),this.answer=e.answer,this.jTextArea.value=this.answer,this.renderMath(this.answer);let t=document.createElement("p");t.classList.add("shortanswer__timestamp"),this.jInputDiv.appendChild(t);var i;if(i=e.timestamp?new Date(e.timestamp).toLocaleString():"",t.textContent=i,this.jTextArea.style.height="auto",this.jTextArea.style.height=`${this.jTextArea.scrollHeight}px`,e.last_answer){this.current_answer="ontime";let s=document.createElement("button");s.type="button",s.textContent="Show Late Answer",s.classList.add("btn","btn-warning"),s.style.marginLeft="5px",s.addEventListener("click",function(){var n,a;"ontime"===this.current_answer?(this.jTextArea.value=e.last_answer,this.answer=e.last_answer,n=new Date(e.last_timestamp).toLocaleString(),a="Show on-Time Answer",this.current_answer="late"):(this.jTextArea.value=e.answer,this.answer=e.answer,n=i,a="Show Late Answer",this.current_answer="ontime"),this.renderMath(this.answer),t.textContent=`Submitted: ${n}`,s.textContent=a}.bind(this)),this.buttonDiv.appendChild(s)}let s="";void 0!==e.score&&(s=`Score: ${e.score}`),e.comment&&(s+=` -- ${e.comment}`),""!==s&&(this.feedbackDiv.innerHTML=s,this.feedbackDiv.style.display="block",this.feedbackDiv.classList.add("alert","alert-success"))}disableInteraction(){this.jTextArea.disabled=!0}async getAttachmentName(){let e=`/ns/assessment/has_attachment/${this.divid}`;this.sid&&(e+=`?sid=${this.sid}`);const t=await fetch(e);if(!t.ok)return console.error("Error fetching attachment name:",t.statusText),null;const i=await t.json();if(i.detail.hasAttachment){let e=i.detail.hasAttachment;e=e.substring(e.lastIndexOf("/")+1);let t=document.createElement("span");t.innerHTML=`Attachment: ${e}`,this.attachDiv.appendChild(t)}}async uploadFile(){const e=this.fileUpload.files,t=e[0].name.split(".").pop();if(!["jpg","jpeg","png","gif","pdf"].includes(t))return void alert("File type not allowed. Please upload a jpg, jpeg, png, gif, or pdf file.");if(e[0].size>5242880)return void alert("File size exceeds 5MB limit. Please upload a smaller file.");const i=new FormData;this.fileUpload.files.length>0&&(i.append("file",e[0]),fetch(`/ns/logger/upload/${this.divid}`,{method:"POST",body:i}).then((e=>e.json())).then((e=>{console.log(e)})).catch((e=>{console.error(e)})))}viewFile(){if(this.attachURL){const e=window.open("","_blank");if(-1!==this.attachURL.indexOf(".pdf?")){const t=e.document.createElement("object");t.setAttribute("data",this.attachURL),t.setAttribute("type","application/pdf"),t.setAttribute("width","800px"),t.setAttribute("height","1040px"),e.document.body.appendChild(t);let i=e.document.createElement("a");i.setAttribute("href",this.attachURL),i.innerText="Download PDF",t.appendChild(i)}else{const t=e.document.createElement("img");t.setAttribute("src",this.attachURL),t.setAttribute("style","width:100%; height:auto;"),e.document.body.appendChild(t)}}else alert("No attachment for this student.")}}document.addEventListener("runestone:login-complete",(function(){document.querySelectorAll("[data-component=shortanswer]").forEach((function(e){if(!e.closest("[data-component=timedAssessment]"))try{window.componentMap[e.id]=new a({orig:e,useRunestoneServices:eBookConfig.useRunestoneServices})}catch(t){console.log(`Error rendering ShortAnswer Problem ${e.id}\n Details: ${t}`)}}))}));class r extends a{constructor(e){super(e),this.renderTimedIcon(this.containerDiv),this.isTimed=!0,this.hideButtons()}hideButtons(){this.submitButton&&(this.submitButton.style.display="none")}renderTimedIcon(e){var t=document.createElement("div"),i=document.createElement("img");i.src="../_static/clock.png",i.style.width="15px",i.style.height="15px",t.className="timeTip",t.title="",t.appendChild(i),e.insertBefore(t,e.firstChild)}checkCorrectTimed(){return"I"}hideFeedback(){this.feedbackDiv&&(this.feedbackDiv.style.display="none")}}void 0===window.component_factory&&(window.component_factory={}),window.component_factory.shortanswer=function(e){return e.timed?new r(e):new a(e)}}}]); +//# sourceMappingURL=819.fa7785b520e523a5.js.map \ No newline at end of file diff --git a/_static/819.fa7785b520e523a5.js.gz b/_static/819.fa7785b520e523a5.js.gz new file mode 100755 index 0000000000000000000000000000000000000000..8b3c57158f166f53bda63dad7ddfc6b086cfce52 GIT binary patch literal 3272 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 GDF6UvSaGue literal 0 HcmV?d00001 diff --git a/_static/819.fa7785b520e523a5.js.map b/_static/819.fa7785b520e523a5.js.map new file mode 100755 index 0000000..8c8e635 --- /dev/null +++ b/_static/819.fa7785b520e523a5.js.map @@ -0,0 +1 @@ +{"version":3,"file":"819.fa7785b520e523a5.js","mappings":"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","sources":["webpack://WebComponents/./runestone/shortanswer/js/shortanswer.js","webpack://WebComponents/./runestone/shortanswer/js/timed_shortanswer.js"],"sourcesContent":["/*==========================================\n======= Master shortanswer.js ========\n============================================\n=== This file contains the JS for ===\n=== the Runestone shortanswer component. ===\n============================================\n=== Created by ===\n=== Isaiah Mayerchak ===\n=== 7/2/15 ===\n=== Brad Miller ===\n=== 2019 ===\n==========================================*/\n\nimport RunestoneBase from \"../../common/js/runestonebase.js\";\nimport { looksLikeLatexMath } from \"../../common/js/bookfuncs.js\";\nimport \"./../css/shortanswer.css\";\n\nexport default class ShortAnswer extends RunestoneBase {\n constructor(opts) {\n super(opts);\n if (opts) {\n var orig = opts.orig; // entire

element that will be replaced by new HTML\n this.useRunestoneServices =\n opts.useRunestoneServices || eBookConfig.useRunestoneServices;\n this.origElem = orig;\n this.divid = orig.id;\n this.question = this.origElem.innerHTML;\n this.optional = false;\n this.attachURL = opts.attachURL;\n if (this.origElem.hasAttribute(\"data-optional\")) {\n this.optional = true;\n }\n if (this.origElem.hasAttribute(\"data-attachment\")) {\n this.attachment = true;\n }\n this.placeholder =\n this.origElem.getAttribute(\"data-placeholder\") ||\n \"Write your answer here\";\n this.renderHTML();\n this.caption = \"shortanswer\";\n this.addCaption(\"runestone\");\n this.checkServer(\"shortanswer\", true);\n if (typeof Prism !== \"undefined\") {\n Prism.highlightAllUnder(this.containerDiv);\n }\n if (this.attachment) {\n this.getAttachmentName();\n }\n }\n }\n\n renderHTML() {\n this.containerDiv = document.createElement(\"div\");\n this.containerDiv.id = this.divid;\n this.containerDiv.classList.add(...(this.origElem.getAttribute(\"class\") || \"\").split(\" \").filter(Boolean));\n this.newForm = document.createElement(\"form\");\n this.newForm.id = this.divid + \"_journal\";\n this.newForm.name = this.newForm.id;\n this.newForm.action = \"\";\n this.containerDiv.appendChild(this.newForm);\n this.fieldSet = document.createElement(\"fieldset\");\n this.newForm.appendChild(this.fieldSet);\n this.firstLegendDiv = document.createElement(\"div\");\n this.firstLegendDiv.innerHTML = this.question;\n this.firstLegendDiv.classList.add(\"journal-question\");\n this.firstLegendDiv.classList.add(\"exercise-statement\");\n this.fieldSet.appendChild(this.firstLegendDiv);\n this.jInputDiv = document.createElement(\"div\");\n this.jInputDiv.id = this.divid + \"_journal_input\";\n this.fieldSet.appendChild(this.jInputDiv);\n this.jOptionsDiv = document.createElement(\"div\");\n this.jOptionsDiv.classList.add(\"journal-options\");\n this.jInputDiv.appendChild(this.jOptionsDiv);\n this.jTextArea = document.createElement(\"textarea\");\n this.jTextArea.id = this.divid + \"_solution\";\n this.jTextArea.setAttribute(\"aria-label\", \"textarea\");\n this.jTextArea.placeholder = this.placeholder;\n this.jTextArea.style.display = \"inline\";\n this.jTextArea.style.width = \"530px\";\n this.jTextArea.classList.add(\"form-control\");\n this.jTextArea.rows = 4;\n this.jTextArea.cols = 50;\n this.jOptionsDiv.appendChild(this.jTextArea);\n\n // fires when we loose focus on the textarea after making a change\n // mark it as answered for peer/timed purposes\n this.jTextArea.onchange = function () {\n this.isAnswered = true;\n }.bind(this);\n\n // the answer has not been saved yet. Update as soon as user types in\n // the box, not just when they loose focus.\n this.jTextArea.addEventListener(\"keydown\", () => {\n if (this.isTimed) {\n // no need for danger status... nothing for user to do here\n this.feedbackDiv.innerHTML = \"Your answer is automatically saved.\";\n } else {\n this.feedbackDiv.innerHTML = \"Your answer has not been saved yet!\";\n this.feedbackDiv.classList.remove(\"alert-success\");\n this.feedbackDiv.classList.add(\"alert\", \"alert-danger\");\n }\n });\n\n this.jTextArea.addEventListener(\"input\", () => {\n this.jTextArea.style.height = \"auto\";\n this.jTextArea.style.height = `${this.jTextArea.scrollHeight}px`;\n this.renderMath(this.jTextArea.value);\n });\n this.buttonDiv = document.createElement(\"div\");\n this.fieldSet.appendChild(this.buttonDiv);\n this.submitButton = document.createElement(\"button\");\n this.submitButton.classList.add(\"btn\", \"btn-success\");\n this.submitButton.type = \"button\";\n this.submitButton.textContent = \"Save\";\n this.submitButton.onclick = function () {\n this.checkCurrentAnswer();\n this.logCurrentAnswer();\n this.renderFeedback();\n }.bind(this);\n this.buttonDiv.appendChild(this.submitButton);\n\n this.otherOptionsDiv = document.createElement(\"div\");\n this.otherOptionsDiv.style.paddingLeft = \"20px\";\n this.otherOptionsDiv.classList.add(\"journal-options\");\n this.fieldSet.appendChild(this.otherOptionsDiv);\n // add a feedback div to give user feedback\n this.feedbackDiv = document.createElement(\"div\");\n this.feedbackDiv.style.width = \"530px\";\n this.feedbackDiv.style.fontStyle = \"italic\";\n this.feedbackDiv.id = this.divid + \"_feedback\";\n this.feedbackDiv.classList.add(\"shortanswer__feedback\");\n this.feedbackDiv.style.display = \"none\";\n this.fieldSet.appendChild(this.feedbackDiv);\n if (this.attachment) {\n let attachDiv = document.createElement(\"div\")\n this.attachDiv = attachDiv;\n if (this.graderactive) {\n // If in grading mode make a button to create a popup with the image\n let viewButton = document.createElement(\"button\")\n viewButton.type = \"button\"\n viewButton.innerHTML = \"View Attachment\"\n viewButton.onclick = this.viewFile.bind(this);\n attachDiv.appendChild(viewButton);\n } else {\n // Otherwise make a button for the student to select a file to upload.\n this.fileUpload = document.createElement(\"input\")\n this.fileUpload.type = \"file\";\n this.fileUpload.id = `${this.divid}_fileme`;\n attachDiv.appendChild(this.fileUpload);\n }\n this.containerDiv.appendChild(attachDiv);\n }\n this.origElem.replaceWith(this.containerDiv);\n // This is a stopgap measure for when MathJax is not loaded at all. There is another\n // more difficult case that when MathJax is loaded asynchronously we will get here\n // before MathJax is loaded. In that case we will need to implement something\n // like `the solution described here `_\n if (typeof MathJax !== \"undefined\") {\n this.queueMathJax(this.containerDiv);\n }\n }\n\n renderMath(value) {\n if (looksLikeLatexMath(value)) {\n if (!this.renderedAnswer) {\n this.rederedAnswerDiv = document.createElement(\"div\");\n this.rederedAnswerDiv.classList.add(\"shortanswer__rendered-answer-div\");\n this.fieldSet.appendChild(this.rederedAnswerDiv);\n\n this.renderedAnswerLabel = document.createElement(\"label\");\n this.renderedAnswerLabel.innerHTML = \"Rendered Answer:\";\n this.renderedAnswerLabel.id = this.divid + \"_rendered_answer_label\";\n this.renderedAnswerLabel.classList.add(\"shortanswer__rendered-answer-label\");\n this.rederedAnswerDiv.appendChild(this.renderedAnswerLabel);\n\n this.renderedAnswer = document.createElement(\"div\");\n this.renderedAnswer.classList.add(\"shortanswer__rendered-answer\");\n this.renderedAnswer.classList.add(\"latexoutput\");\n this.renderedAnswer.setAttribute('aria-labelledby', this.renderedAnswerLabel.id);\n this.renderedAnswer.setAttribute('aria-live', \"polite\");\n this.rederedAnswerDiv.appendChild(this.renderedAnswer);\n }\n value = value.replace(/\\$\\$(.*?)\\$\\$/g, \"\\\\[ $1 \\\\]\");\n value = value.replace(/\\$(.*?)\\$/g, \"\\\\( $1 \\\\)\");\n value = value.replace(/\\n/g, \"
\");\n this.renderedAnswer.innerHTML = value;\n\n this.rederedAnswerDiv.style.display = \"block\";\n this.queueMathJax(this.renderedAnswer);\n\n } else {\n if (this.renderedAnswer) {\n this.rederedAnswerDiv.style.display = \"none\";\n }\n }\n }\n\n async checkCurrentAnswer() {\n let value = document.getElementById(this.divid + \"_solution\").value;\n this.renderMath(value);\n this.setLocalStorage({\n answer: value,\n timestamp: new Date(),\n });\n }\n\n async logCurrentAnswer(sid) {\n let value = document.getElementById(this.divid + \"_solution\").value;\n this.renderMath(value);\n this.setLocalStorage({\n answer: value,\n timestamp: new Date(),\n });\n let data = {\n event: \"shortanswer\",\n act: value,\n answer: value,\n div_id: this.divid,\n };\n if (typeof sid !== \"undefined\") {\n data.sid = sid;\n }\n await this.logBookEvent(data);\n if (this.attachment) {\n await this.uploadFile();\n }\n }\n\n renderFeedback() {\n this.feedbackDiv.innerHTML = \"Your answer has been saved.\";\n this.feedbackDiv.classList.remove(\"alert-danger\");\n this.feedbackDiv.classList.add(\"alert\", \"alert-success\");\n this.feedbackDiv.style.display = \"block\";\n }\n setLocalStorage(data) {\n if (!this.graderactive) {\n let key = this.localStorageKey();\n localStorage.setItem(key, JSON.stringify(data));\n }\n }\n checkLocalStorage() {\n // Repopulates the short answer text\n // which was stored into local storage.\n var answer = \"\";\n if (this.graderactive) {\n return;\n }\n var len = localStorage.length;\n if (len > 0) {\n var ex = localStorage.getItem(this.localStorageKey());\n if (ex !== null) {\n try {\n var storedData = JSON.parse(ex);\n answer = storedData.answer;\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;\n }\n let solution = document.getElementById(this.divid + \"_solution\");\n if (solution) {\n solution.value = answer;\n }\n this.renderMath(answer);\n }\n }\n }\n restoreAnswers(data) {\n // Restore answers from storage retrieval done in RunestoneBase\n // sometimes data.answer can be null\n if (!data.answer) {\n data.answer = \"\";\n }\n this.answer = data.answer;\n this.jTextArea.value = this.answer;\n this.renderMath(this.answer);\n\n let p = document.createElement(\"p\");\n p.classList.add(\"shortanswer__timestamp\");\n this.jInputDiv.appendChild(p);\n var tsString = \"\";\n if (data.timestamp) {\n tsString = new Date(data.timestamp).toLocaleString();\n } else {\n tsString = \"\";\n }\n p.textContent = tsString;\n this.jTextArea.style.height = \"auto\";\n this.jTextArea.style.height = `${this.jTextArea.scrollHeight}px`;\n\n if (data.last_answer) {\n this.current_answer = \"ontime\";\n let toggle_answer_button = document.createElement(\"button\");\n toggle_answer_button.type = \"button\";\n toggle_answer_button.textContent = \"Show Late Answer\";\n toggle_answer_button.classList.add(\"btn\", \"btn-warning\");\n toggle_answer_button.style.marginLeft = \"5px\";\n\n toggle_answer_button.addEventListener(\n \"click\",\n function () {\n var display_timestamp, button_text;\n if (this.current_answer === \"ontime\") {\n this.jTextArea.value = data.last_answer;\n this.answer = data.last_answer;\n display_timestamp = new Date(\n data.last_timestamp\n ).toLocaleString();\n button_text = \"Show on-Time Answer\";\n this.current_answer = \"late\";\n } else {\n this.jTextArea.value = data.answer;\n this.answer = data.answer;\n display_timestamp = tsString;\n button_text = \"Show Late Answer\";\n this.current_answer = \"ontime\";\n }\n this.renderMath(this.answer);\n p.textContent = `Submitted: ${display_timestamp}`;\n toggle_answer_button.textContent = button_text;\n }.bind(this)\n );\n\n this.buttonDiv.appendChild(toggle_answer_button);\n }\n let feedbackStr = \"\";\n if (typeof data.score !== \"undefined\") {\n feedbackStr = `Score: ${data.score}`;\n }\n if (data.comment) {\n feedbackStr += ` -- ${data.comment}`;\n }\n if (feedbackStr !== \"\") {\n this.feedbackDiv.innerHTML = feedbackStr;\n this.feedbackDiv.style.display = \"block\";\n this.feedbackDiv.classList.add(\"alert\", \"alert-success\");\n }\n }\n\n disableInteraction() {\n this.jTextArea.disabled = true;\n }\n\n async getAttachmentName() {\n // Get the attachment name from the /ns/assessment/has_attachment endpoint\n let requestUrl = `/ns/assessment/has_attachment/${this.divid}`;\n if (this.sid) {\n requestUrl += `?sid=${this.sid}`;\n }\n const response = await fetch(requestUrl);\n if (!response.ok) {\n console.error(\"Error fetching attachment name:\", response.statusText);\n return null;\n }\n const obj = await response.json();\n if (obj.detail.hasAttachment) {\n // Return the S3 key for the attachment\n let filename = obj.detail.hasAttachment;\n // filename is everthing after the last slash\n filename = filename.substring(filename.lastIndexOf(\"/\") + 1);\n let fmess = document.createElement(\"span\");\n fmess.innerHTML = `Attachment: ${filename}`;\n this.attachDiv.appendChild(fmess);\n }\n }\n\n async uploadFile() {\n const files = this.fileUpload.files\n // get the suffix from the file name\n const fileName = files[0].name;\n const suffix = fileName.split('.').pop();\n // if the suffix is not in the list of allowed suffixes, return\n if (!['jpg', 'jpeg', 'png', 'gif', 'pdf'].includes(suffix)) {\n alert(\"File type not allowed. Please upload a jpg, jpeg, png, gif, or pdf file.\");\n return;\n }\n // if the file size is greater than 5MB, return\n if (files[0].size > 5 * 1024 * 1024) {\n alert(\"File size exceeds 5MB limit. Please upload a smaller file.\");\n return;\n }\n const data = new FormData()\n if (this.fileUpload.files.length > 0) {\n data.append('file', files[0])\n fetch(`/ns/logger/upload/${this.divid}`, {\n method: 'POST',\n body: data\n })\n .then(response => response.json())\n .then(data => {\n console.log(data)\n })\n .catch(error => {\n console.error(error)\n })\n }\n }\n\n viewFile() {\n // Get the URL from the S3 API -- saved when we display in grader mode\n if (this.attachURL) {\n //window.open(this.attachURL, \"_blank\");\n //\n //switch to \n const image_window = window.open(\"\", \"_blank\")\n if (this.attachURL.indexOf('.pdf?') !== -1) {\n const embed = image_window.document.createElement(\"object\");\n embed.setAttribute(\"data\", this.attachURL);\n embed.setAttribute(\"type\", \"application/pdf\");\n embed.setAttribute(\"width\", \"800px\");\n embed.setAttribute(\"height\", \"1040px\");\n image_window.document.body.appendChild(embed);\n let alt = image_window.document.createElement(\"a\");\n alt.setAttribute(\"href\", this.attachURL);\n alt.innerText = \"Download PDF\";\n embed.appendChild(alt);\n }\n else {\n const img = image_window.document.createElement(\"img\");\n img.setAttribute(\"src\", this.attachURL);\n img.setAttribute(\"style\", \"width:100%; height:auto;\");\n image_window.document.body.appendChild(img);\n }\n } else {\n alert(\"No attachment for this student.\")\n }\n }\n}\n\n/*=================================\n== Find the custom HTML tags and ==\n== execute our code on them ==\n=================================*/\ndocument.addEventListener(\"runestone:login-complete\", function () {\n document.querySelectorAll(\"[data-component=shortanswer]\").forEach(function (el) {\n // If this element exists within a timed component, don't render it here\n if (!el.closest(\"[data-component=timedAssessment]\")) {\n try {\n window.componentMap[el.id] = new ShortAnswer({\n orig: el,\n useRunestoneServices: eBookConfig.useRunestoneServices,\n });\n } catch (err) {\n console.log(`Error rendering ShortAnswer Problem ${el.id}\n Details: ${err}`);\n }\n }\n });\n});\n","import ShortAnswer from \"./shortanswer.js\";\n\nexport default class TimedShortAnswer extends ShortAnswer {\n constructor(opts) {\n super(opts);\n this.renderTimedIcon(this.containerDiv);\n this.isTimed = true;\n this.hideButtons();\n }\n hideButtons() {\n if (this.submitButton) {\n this.submitButton.style.display = \"none\";\n }\n }\n renderTimedIcon(component) {\n // renders the clock icon on timed components. The component parameter\n // is the element that the icon should be appended to.\n var timeIconDiv = document.createElement(\"div\");\n var timeIcon = document.createElement(\"img\");\n\n timeIcon.src = \"../_static/clock.png\";\n timeIcon.style.width = \"15px\";\n timeIcon.style.height = \"15px\";\n\n timeIconDiv.className = \"timeTip\";\n timeIconDiv.title = \"\";\n timeIconDiv.appendChild(timeIcon);\n\n // If firstChild is null, insertBefore acts like appendChild\n component.insertBefore(timeIconDiv, component.firstChild);\n }\n checkCorrectTimed() {\n return \"I\"; // we ignore this in the grading\n }\n hideFeedback() {\n if (this.feedbackDiv) {\n this.feedbackDiv.style.display = \"none\";\n }\n }\n}\n\nif (typeof window.component_factory === \"undefined\") {\n window.component_factory = {};\n}\n\nwindow.component_factory.shortanswer = function (opts) {\n if (opts.timed) {\n return new TimedShortAnswer(opts);\n }\n return new ShortAnswer(opts);\n};\n"],"names":["ShortAnswer","constructor","opts","super","orig","this","useRunestoneServices","eBookConfig","origElem","divid","id","question","innerHTML","optional","attachURL","hasAttribute","attachment","placeholder","getAttribute","renderHTML","caption","addCaption","checkServer","Prism","highlightAllUnder","containerDiv","getAttachmentName","document","createElement","classList","add","split","filter","Boolean","newForm","name","action","appendChild","fieldSet","firstLegendDiv","jInputDiv","jOptionsDiv","jTextArea","setAttribute","style","display","width","rows","cols","onchange","isAnswered","bind","addEventListener","isTimed","feedbackDiv","remove","height","scrollHeight","renderMath","value","buttonDiv","submitButton","type","textContent","onclick","checkCurrentAnswer","logCurrentAnswer","renderFeedback","otherOptionsDiv","paddingLeft","fontStyle","attachDiv","graderactive","viewButton","viewFile","fileUpload","replaceWith","MathJax","queueMathJax","renderedAnswer","rederedAnswerDiv","renderedAnswerLabel","replace","getElementById","setLocalStorage","answer","timestamp","Date","sid","data","event","act","div_id","logBookEvent","uploadFile","key","localStorageKey","localStorage","setItem","JSON","stringify","checkLocalStorage","length","ex","getItem","parse","err","console","log","message","removeItem","solution","restoreAnswers","p","tsString","toLocaleString","last_answer","current_answer","toggle_answer_button","marginLeft","display_timestamp","button_text","last_timestamp","feedbackStr","score","comment","disableInteraction","disabled","requestUrl","response","fetch","ok","error","statusText","obj","json","detail","hasAttachment","filename","substring","lastIndexOf","fmess","files","suffix","pop","includes","alert","size","FormData","append","method","body","then","catch","image_window","window","open","indexOf","embed","alt","innerText","img","querySelectorAll","forEach","el","closest","componentMap","TimedShortAnswer","renderTimedIcon","hideButtons","component","timeIconDiv","timeIcon","src","className","title","insertBefore","firstChild","checkCorrectTimed","hideFeedback","component_factory","shortanswer","timed"],"sourceRoot":""} \ No newline at end of file diff --git a/_static/819.fa7785b520e523a5.js.map.gz b/_static/819.fa7785b520e523a5.js.map.gz new file mode 100755 index 0000000000000000000000000000000000000000..c51a96cf31a1f419226c2ed4f2b6c05e86439902 GIT binary patch literal 9308 zcmV-iB%|9OiwFP!000026XiW?Q`^Y0e??2}t-!|E5W

lbn)d1LhGRgs{o7MPz$y z3uMWWWU$$j|9<;1l19=&w3#LDi< ztIgNVp|i8|YP+}nVnb}d*mAa;x6w*tW#UYyu0M*PQ*>mymS~)q=84(3G|j+jbWJ<7 z8&{@j+6~(@KiiFcv-1Idwc!DFY{Rv^XEr);4L$7lFvRS3@cwiUe;;)kN2WctZ1`gy z*^O_OX}1rlrQ3)s(|mxY&j7kjO*?j*I_@_vO!Er+rDMA|;rTHQJ;7-`>zEo&sPFr1 z+(j4Aw_jUl^ynPda>bB7(31;%^7#uv`ixyY>!ULIwBeYh)0hA{Th=EP1}r{-k?Z3W5$ajj=ZC^)ufKU$R?BDDiA zg_$-}d1M>& zMP1H>P<_mya-hxugHYA%Dc^qM)eH-aOIO3~mt(uUn$Ou{WG|Zq+>t;wK~~k~M^fwl zm&|^6_7}B7N2)fNhznfE+%C6wczRHU9qTdI-cu=oOxsB)Av+wA7NFIPt6#)N*Pd&7B(=HRu*lMoD0;Tn)^w5dJ4Z8s zMBK&)`-gc-rZ}VAAkJZebBhx~bX1%*-7!Pgo16~fsrQ!&Qq-6( zm-m*sZkP?c=GdMykmm#hoa$qddasj}%Pu2p&a_`x=^7sGaVOvB-Y!}uzs}IYIN*7w zWwlhP>~C3B_D_oKr-D^zB~~HVzQJyTz1D3_BgCEt&xs)?wUotMA;~6sRUXu|uoEP}S~vysAluEijk|pJCYu z%6VOs=ehkmwOsv?il}E@(UTokBMh>D+P@PnS08C*QXao?m~^ko+T6aQAopNCn1ZA$8Ks1}fJe!lNy(dE$xibB5xh`D_>=cWY_+j&%=!(>^Q=~9Yu zg;HZ5ps@or!0UmuR~sENbniDAzze#CPGP$s^{s?HvWtuMR1I`s4bwXHf^m1GURylX z%MPt4vf?5uytbT5b_uMI#f)?~w9oR5_nor(pn7ac{Yg7ca|ol4N^NDjsI46HU?>

  • '),e(".dropdown-toggle").dropdown(),patchTables(),e("div.note").addClass("alert").addClass("alert-info"),e("div.warning").addClass("alert").addClass("alert-warning"),e("tt.docutils.literal").not(".xref").each((function(t,n){e(n).parent().hasClass("reference")||e(n).replaceWith((function(){return e("").text(e(this).text())}))}))}))}(window.jQuery)},19695:()=>{var e,t=!1;function n(){t||(function(){let t=$("[data-childcomponent]");t.addClass("runestone"),t.parent().closest("div").not("section").addClass("runestone"),t.parent().closest("div").css("max-width","none"),t.each((function(e){$(this),$(this).find(".ac_code_div, .ac_output").wrapAll("
    ")})),$("section img").wrap('
    '),e=$(".runestone").not(".runestone .runestone"),$("h1").before("
    ")}(),t=!0);let n=$("body"),o="present",a="full-height",s="bottom";n.hasClass(o)?($("section *").not("h1, .presentation-title, .btn-presenter, .runestone, .runestone *, section, .pre, code").removeClass("hidden"),$("#completionButton").removeClass("hidden"),n.removeClass(o),$("."+a).removeClass(a),$("."+s).removeClass(s),localStorage.setItem("presentMode","text"),e.removeClass("hidden"),undefined.disabled=!0):($("section *").not("h1, .presentation-title, .btn-presenter, .runestone, .runestone *, section, .pre, code").addClass("hidden"),$("#completionButton").addClass("hidden"),n.addClass(o),n.addClass(a),$("html").addClass(a),$("section .runestone").addClass(a),$(".ac-caption").addClass(s),localStorage.setItem("presentMode",o),i())}function o(){return active=e.filter(".active")}function i(t){void 0===t&&(t=0);let n=o();e.length&&(n.removeClass("active"),n=$(e[t]).addClass("active"),n.removeClass("hidden"),e.not(e.filter(".active")).addClass("hidden"))}window.nextExercise=function(){let t=o(),n=e.index(t)+1;n=0&&i(n)},$(document).on("runestone:login-complete",(function(){eBookConfig.isInstructor&&($(".navbar-right").prepend(""),$(".mode-select").change(n))}))},23836:()=>{!function(e){"use strict";e.i18n=e.i18n||{},e.extend(e.i18n.fallbacks,{ab:["ru"],ace:["id"],aln:["sq"],als:["gsw","de"],an:["es"],anp:["hi"],arn:["es"],arz:["ar"],av:["ru"],ay:["es"],ba:["ru"],bar:["de"],"bat-smg":["sgs","lt"],bcc:["fa"],"be-x-old":["be-tarask"],bh:["bho"],bjn:["id"],bm:["fr"],bpy:["bn"],bqi:["fa"],bug:["id"],"cbk-zam":["es"],ce:["ru"],crh:["crh-latn"],"crh-cyrl":["ru"],csb:["pl"],cv:["ru"],"de-at":["de"],"de-ch":["de"],"de-formal":["de"],dsb:["de"],dtp:["ms"],egl:["it"],eml:["it"],ff:["fr"],fit:["fi"],"fiu-vro":["vro","et"],frc:["fr"],frp:["fr"],frr:["de"],fur:["it"],gag:["tr"],gan:["gan-hant","zh-hant","zh-hans"],"gan-hans":["zh-hans"],"gan-hant":["zh-hant","zh-hans"],gl:["pt"],glk:["fa"],gn:["es"],gsw:["de"],hif:["hif-latn"],hsb:["de"],ht:["fr"],ii:["zh-cn","zh-hans"],inh:["ru"],iu:["ike-cans"],jut:["da"],jv:["id"],kaa:["kk-latn","kk-cyrl"],kbd:["kbd-cyrl"],khw:["ur"],kiu:["tr"],kk:["kk-cyrl"],"kk-arab":["kk-cyrl"],"kk-latn":["kk-cyrl"],"kk-cn":["kk-arab","kk-cyrl"],"kk-kz":["kk-cyrl"],"kk-tr":["kk-latn","kk-cyrl"],kl:["da"],"ko-kp":["ko"],koi:["ru"],krc:["ru"],ks:["ks-arab"],ksh:["de"],ku:["ku-latn"],"ku-arab":["ckb"],kv:["ru"],lad:["es"],lb:["de"],lbe:["ru"],lez:["ru"],li:["nl"],lij:["it"],liv:["et"],lmo:["it"],ln:["fr"],ltg:["lv"],lzz:["tr"],mai:["hi"],"map-bms":["jv","id"],mg:["fr"],mhr:["ru"],min:["id"],mo:["ro"],mrj:["ru"],mwl:["pt"],myv:["ru"],mzn:["fa"],nah:["es"],nap:["it"],nds:["de"],"nds-nl":["nl"],"nl-informal":["nl"],no:["nb"],os:["ru"],pcd:["fr"],pdc:["de"],pdt:["de"],pfl:["de"],pms:["it"],pt:["pt-br"],"pt-br":["pt"],qu:["es"],qug:["qu","es"],rgn:["it"],rmy:["ro"],"roa-rup":["rup"],rue:["uk","ru"],ruq:["ruq-latn","ro"],"ruq-cyrl":["mk"],"ruq-latn":["ro"],sa:["hi"],sah:["ru"],scn:["it"],sg:["fr"],sgs:["lt"],sli:["de"],sr:["sr-ec"],srn:["nl"],stq:["de"],su:["id"],szl:["pl"],tcy:["kn"],tg:["tg-cyrl"],tt:["tt-cyrl","ru"],"tt-cyrl":["ru"],ty:["fr"],udm:["ru"],ug:["ug-arab"],uk:["ru"],vec:["it"],vep:["et"],vls:["nl"],vmf:["de"],vot:["fi"],vro:["et"],wa:["fr"],wo:["fr"],wuu:["zh-hans"],xal:["ru"],xmf:["ka"],yi:["he"],za:["zh-hans"],zea:["nl"],zh:["zh-hans"],"zh-classical":["lzh"],"zh-cn":["zh-hans"],"zh-hant":["zh-hans"],"zh-hk":["zh-hant","zh-hans"],"zh-min-nan":["nan"],"zh-mo":["zh-hk","zh-hant","zh-hans"],"zh-my":["zh-sg","zh-hans"],"zh-sg":["zh-hans"],"zh-tw":["zh-hant","zh-hans"],"zh-yue":["yue"]})}(jQuery)},35773:()=>{!function(e){"use strict";var t={pluralRules:{ak:{one:"n = 0..1"},am:{one:"i = 0 or n = 1"},ar:{zero:"n = 0",one:"n = 1",two:"n = 2",few:"n % 100 = 3..10",many:"n % 100 = 11..99"},ars:{zero:"n = 0",one:"n = 1",two:"n = 2",few:"n % 100 = 3..10",many:"n % 100 = 11..99"},as:{one:"i = 0 or n = 1"},be:{one:"n % 10 = 1 and n % 100 != 11",few:"n % 10 = 2..4 and n % 100 != 12..14",many:"n % 10 = 0 or n % 10 = 5..9 or n % 100 = 11..14"},bh:{one:"n = 0..1"},bn:{one:"i = 0 or n = 1"},br:{one:"n % 10 = 1 and n % 100 != 11,71,91",two:"n % 10 = 2 and n % 100 != 12,72,92",few:"n % 10 = 3..4,9 and n % 100 != 10..19,70..79,90..99",many:"n != 0 and n % 1000000 = 0"},bs:{one:"v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14"},cs:{one:"i = 1 and v = 0",few:"i = 2..4 and v = 0",many:"v != 0"},cy:{zero:"n = 0",one:"n = 1",two:"n = 2",few:"n = 3",many:"n = 6"},da:{one:"n = 1 or t != 0 and i = 0,1"},dsb:{one:"v = 0 and i % 100 = 1 or f % 100 = 1",two:"v = 0 and i % 100 = 2 or f % 100 = 2",few:"v = 0 and i % 100 = 3..4 or f % 100 = 3..4"},fa:{one:"i = 0 or n = 1"},ff:{one:"i = 0,1"},fil:{one:"v = 0 and i = 1,2,3 or v = 0 and i % 10 != 4,6,9 or v != 0 and f % 10 != 4,6,9"},fr:{one:"i = 0,1"},ga:{one:"n = 1",two:"n = 2",few:"n = 3..6",many:"n = 7..10"},gd:{one:"n = 1,11",two:"n = 2,12",few:"n = 3..10,13..19"},gu:{one:"i = 0 or n = 1"},guw:{one:"n = 0..1"},gv:{one:"v = 0 and i % 10 = 1",two:"v = 0 and i % 10 = 2",few:"v = 0 and i % 100 = 0,20,40,60,80",many:"v != 0"},he:{one:"i = 1 and v = 0",two:"i = 2 and v = 0",many:"v = 0 and n != 0..10 and n % 10 = 0"},hi:{one:"i = 0 or n = 1"},hr:{one:"v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14"},hsb:{one:"v = 0 and i % 100 = 1 or f % 100 = 1",two:"v = 0 and i % 100 = 2 or f % 100 = 2",few:"v = 0 and i % 100 = 3..4 or f % 100 = 3..4"},hy:{one:"i = 0,1"},is:{one:"t = 0 and i % 10 = 1 and i % 100 != 11 or t != 0"},iu:{one:"n = 1",two:"n = 2"},iw:{one:"i = 1 and v = 0",two:"i = 2 and v = 0",many:"v = 0 and n != 0..10 and n % 10 = 0"},kab:{one:"i = 0,1"},kn:{one:"i = 0 or n = 1"},kw:{one:"n = 1",two:"n = 2"},lag:{zero:"n = 0",one:"i = 0,1 and n != 0"},ln:{one:"n = 0..1"},lt:{one:"n % 10 = 1 and n % 100 != 11..19",few:"n % 10 = 2..9 and n % 100 != 11..19",many:"f != 0"},lv:{zero:"n % 10 = 0 or n % 100 = 11..19 or v = 2 and f % 100 = 11..19",one:"n % 10 = 1 and n % 100 != 11 or v = 2 and f % 10 = 1 and f % 100 != 11 or v != 2 and f % 10 = 1"},mg:{one:"n = 0..1"},mk:{one:"v = 0 and i % 10 = 1 or f % 10 = 1"},mo:{one:"i = 1 and v = 0",few:"v != 0 or n = 0 or n != 1 and n % 100 = 1..19"},mr:{one:"i = 0 or n = 1"},mt:{one:"n = 1",few:"n = 0 or n % 100 = 2..10",many:"n % 100 = 11..19"},naq:{one:"n = 1",two:"n = 2"},nso:{one:"n = 0..1"},pa:{one:"n = 0..1"},pl:{one:"i = 1 and v = 0",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14",many:"v = 0 and i != 1 and i % 10 = 0..1 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 12..14"},prg:{zero:"n % 10 = 0 or n % 100 = 11..19 or v = 2 and f % 100 = 11..19",one:"n % 10 = 1 and n % 100 != 11 or v = 2 and f % 10 = 1 and f % 100 != 11 or v != 2 and f % 10 = 1"},pt:{one:"i = 0..1"},ro:{one:"i = 1 and v = 0",few:"v != 0 or n = 0 or n != 1 and n % 100 = 1..19"},ru:{one:"v = 0 and i % 10 = 1 and i % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14",many:"v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14"},se:{one:"n = 1",two:"n = 2"},sh:{one:"v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14"},shi:{one:"i = 0 or n = 1",few:"n = 2..10"},si:{one:"n = 0,1 or i = 0 and f = 1"},sk:{one:"i = 1 and v = 0",few:"i = 2..4 and v = 0",many:"v != 0"},sl:{one:"v = 0 and i % 100 = 1",two:"v = 0 and i % 100 = 2",few:"v = 0 and i % 100 = 3..4 or v != 0"},sma:{one:"n = 1",two:"n = 2"},smi:{one:"n = 1",two:"n = 2"},smj:{one:"n = 1",two:"n = 2"},smn:{one:"n = 1",two:"n = 2"},sms:{one:"n = 1",two:"n = 2"},sr:{one:"v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14"},ti:{one:"n = 0..1"},tl:{one:"v = 0 and i = 1,2,3 or v = 0 and i % 10 != 4,6,9 or v != 0 and f % 10 != 4,6,9"},tzm:{one:"n = 0..1 or n = 11..99"},uk:{one:"v = 0 and i % 10 = 1 and i % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14",many:"v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14"},wa:{one:"n = 0..1"},zu:{one:"i = 0 or n = 1"}},convertPlural:function(t,n){var o,i,a,s,r=new RegExp("\\d+=","i");if(!n||0===n.length)return"";for(a=0;a{!function(e){"use strict";var t;t=new RegExp("(?:([A-Za-zªµºÀ-ÖØ-öø-ʸʻ-ˁːˑˠ-ˤˮͰ-ͳͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-҂Ҋ-ԯԱ-Ֆՙ-՟ա-և։ः-हऻऽ-ीॉ-ौॎ-ॐक़-ॡ।-ঀংঃঅ-ঌএঐও-নপ-রলশ-হঽ-ীেৈোৌৎৗড়ঢ়য়-ৡ০-ৱ৴-৺ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਾ-ੀਖ਼-ੜਫ਼੦-੯ੲ-ੴઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽ-ીૉોૌૐૠૡ૦-૰ૹଂଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽାୀେୈୋୌୗଡ଼ଢ଼ୟ-ୡ୦-୷ஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹாிுூெ-ைொ-ௌௐௗ௦-௲ఁ-ఃఅ-ఌఎ-ఐఒ-నప-హఽు-ౄౘ-ౚౠౡ౦-౯౿ಂಃಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽ-ೄೆ-ೈೊೋೕೖೞೠೡ೦-೯ೱೲംഃഅ-ഌഎ-ഐഒ-ഺഽ-ീെ-ൈൊ-ൌൎൗൟ-ൡ൦-൵൹-ൿංඃඅ-ඖක-නඳ-රලව-ෆා-ෑෘ-ෟ෦-෯ෲ-෴ก-ะาำเ-ๆ๏-๛ກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆ໐-໙ໜ-ໟༀ-༗༚-༴༶༸༾-ཇཉ-ཬཿ྅ྈ-ྌ྾-࿅࿇-࿌࿎-࿚က-ာေးျြဿ-ၗၚ-ၝၡ-ၰၵ-ႁႃႄႇ-ႌႎ-ႜ႞-ჅჇჍა-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚ፠-፼ᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙿᚁ-ᚚᚠ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱ᜵᜶ᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳាើ-ៅះៈ។-៚ៜ០-៩᠐-᠙ᠠ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᤣ-ᤦᤩ-ᤫᤰᤱᤳ-ᤸ᥆-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉ᧐-᧚ᨀ-ᨖᨙᨚ᨞-ᩕᩗᩡᩣᩤᩭ-ᩲ᪀-᪉᪐-᪙᪠-᪭ᬄ-ᬳᬵᬻᬽ-ᭁᭃ-ᭋ᭐-᭪᭴-᭼ᮂ-ᮡᮦᮧ᮪ᮮ-ᯥᯧᯪ-ᯬᯮ᯲᯳᯼-ᰫᰴᰵ᰻-᱉ᱍ-᱿᳀-᳇᳓᳡ᳩ-ᳬᳮ-ᳳᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼ‎ⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎ⅏Ⅰ-ↈ⌶-⍺⎕⒜-ⓩ⚬⠀-⣿Ⰰ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯ⵰ⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〮〯〱-〵〸-〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎ㆐-ㆺㇰ-㈜㈠-㉏㉠-㉻㉿-㊰㋀-㋋㋐-㋾㌀-㍶㍻-㏝㏠-㏾㐀-䶵一-鿕ꀀ-ꒌꓐ-ꘌꘐ-ꘫꙀ-ꙮꚀ-ꚝꚠ-ꛯ꛲-꛷Ꜣ-ꞇ꞉-ꞭꞰ-ꞷꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠤꠧ꠰-꠷ꡀ-ꡳꢀ-ꣃ꣎-꣙ꣲ-ꣽ꤀-ꤥ꤮-ꥆꥒ꥓꥟-ꥼꦃ-ꦲꦴꦵꦺꦻꦽ-꧍ꧏ-꧙꧞-ꧤꧦ-ꧾꨀ-ꨨꨯꨰꨳꨴꩀ-ꩂꩄ-ꩋꩍ꩐-꩙꩜-ꩻꩽ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫫꫮ-ꫵꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭥꭰ-ꯤꯦꯧꯩ-꯬꯰-꯹가-힣ힰ-ퟆퟋ-ퟻ-舘並-龎ff-stﬓ-ﬗA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ]|\ud800[\udc00-\udc0b]|\ud800[\udc0d-\udc26]|\ud800[\udc28-\udc3a]|𐀼|𐀽|\ud800[\udc3f-\udc4d]|\ud800[\udc50-\udc5d]|\ud800[\udc80-\udcfa]|𐄀|𐄂|\ud800[\udd07-\udd33]|\ud800[\udd37-\udd3f]|\ud800[\uddd0-\uddfc]|\ud800[\ude80-\ude9c]|\ud800[\udea0-\uded0]|\ud800[\udf00-\udf23]|\ud800[\udf30-\udf4a]|\ud800[\udf50-\udf75]|\ud800[\udf80-\udf9d]|\ud800[\udf9f-\udfc3]|\ud800[\udfc8-\udfd5]|\ud801[\udc00-\udc9d]|\ud801[\udca0-\udca9]|\ud801[\udd00-\udd27]|\ud801[\udd30-\udd63]|𐕯|\ud801[\ude00-\udf36]|\ud801[\udf40-\udf55]|\ud801[\udf60-\udf67]|𑀀|\ud804[\udc02-\udc37]|\ud804[\udc47-\udc4d]|\ud804[\udc66-\udc6f]|\ud804[\udc82-\udcb2]|𑂷|𑂸|\ud804[\udcbb-\udcc1]|\ud804[\udcd0-\udce8]|\ud804[\udcf0-\udcf9]|\ud804[\udd03-\udd26]|𑄬|\ud804[\udd36-\udd43]|\ud804[\udd50-\udd72]|\ud804[\udd74-\udd76]|\ud804[\udd82-\uddb5]|\ud804[\uddbf-\uddc9]|𑇍|\ud804[\uddd0-\udddf]|\ud804[\udde1-\uddf4]|\ud804[\ude00-\ude11]|\ud804[\ude13-\ude2e]|𑈲|𑈳|𑈵|\ud804[\ude38-\ude3d]|\ud804[\ude80-\ude86]|𑊈|\ud804[\ude8a-\ude8d]|\ud804[\ude8f-\ude9d]|\ud804[\ude9f-\udea9]|\ud804[\udeb0-\udede]|\ud804[\udee0-\udee2]|\ud804[\udef0-\udef9]|𑌂|𑌃|\ud804[\udf05-\udf0c]|𑌏|𑌐|\ud804[\udf13-\udf28]|\ud804[\udf2a-\udf30]|𑌲|𑌳|\ud804[\udf35-\udf39]|\ud804[\udf3d-\udf3f]|\ud804[\udf41-\udf44]|𑍇|𑍈|\ud804[\udf4b-\udf4d]|𑍐|𑍗|\ud804[\udf5d-\udf63]|\ud805[\udc80-\udcb2]|𑒹|\ud805[\udcbb-\udcbe]|𑓁|\ud805[\udcc4-\udcc7]|\ud805[\udcd0-\udcd9]|\ud805[\udd80-\uddb1]|\ud805[\uddb8-\uddbb]|𑖾|\ud805[\uddc1-\udddb]|\ud805[\ude00-\ude32]|𑘻|𑘼|𑘾|\ud805[\ude41-\ude44]|\ud805[\ude50-\ude59]|\ud805[\ude80-\udeaa]|𑚬|𑚮|𑚯|𑚶|\ud805[\udec0-\udec9]|\ud805[\udf00-\udf19]|𑜠|𑜡|𑜦|\ud805[\udf30-\udf3f]|\ud806[\udca0-\udcf2]|𑣿|\ud806[\udec0-\udef8]|\ud808[\udc00-\udf99]|\ud809[\udc00-\udc6e]|\ud809[\udc70-\udc74]|\ud809[\udc80-\udd43]|\ud80c[\udc00-\udfff]|\ud80d[\udc00-\udc2e]|\ud811[\udc00-\ude46]|\ud81a[\udc00-\ude38]|\ud81a[\ude40-\ude5e]|\ud81a[\ude60-\ude69]|𖩮|𖩯|\ud81a[\uded0-\udeed]|𖫵|\ud81a[\udf00-\udf2f]|\ud81a[\udf37-\udf45]|\ud81a[\udf50-\udf59]|\ud81a[\udf5b-\udf61]|\ud81a[\udf63-\udf77]|\ud81a[\udf7d-\udf8f]|\ud81b[\udf00-\udf44]|\ud81b[\udf50-\udf7e]|\ud81b[\udf93-\udf9f]|𛀀|𛀁|\ud82f[\udc00-\udc6a]|\ud82f[\udc70-\udc7c]|\ud82f[\udc80-\udc88]|\ud82f[\udc90-\udc99]|𛲜|𛲟|\ud834[\udc00-\udcf5]|\ud834[\udd00-\udd26]|\ud834[\udd29-\udd66]|\ud834[\udd6a-\udd72]|𝆃|𝆄|\ud834[\udd8c-\udda9]|\ud834[\uddae-\udde8]|\ud834[\udf60-\udf71]|\ud835[\udc00-\udc54]|\ud835[\udc56-\udc9c]|𝒞|𝒟|𝒢|𝒥|𝒦|\ud835[\udca9-\udcac]|\ud835[\udcae-\udcb9]|𝒻|\ud835[\udcbd-\udcc3]|\ud835[\udcc5-\udd05]|\ud835[\udd07-\udd0a]|\ud835[\udd0d-\udd14]|\ud835[\udd16-\udd1c]|\ud835[\udd1e-\udd39]|\ud835[\udd3b-\udd3e]|\ud835[\udd40-\udd44]|𝕆|\ud835[\udd4a-\udd50]|\ud835[\udd52-\udea5]|\ud835[\udea8-\udeda]|\ud835[\udedc-\udf14]|\ud835[\udf16-\udf4e]|\ud835[\udf50-\udf88]|\ud835[\udf8a-\udfc2]|\ud835[\udfc4-\udfcb]|\ud836[\udc00-\uddff]|\ud836[\ude37-\ude3a]|\ud836[\ude6d-\ude74]|\ud836[\ude76-\ude83]|\ud836[\ude85-\ude8b]|\ud83c[\udd10-\udd2e]|\ud83c[\udd30-\udd69]|\ud83c[\udd70-\udd9a]|\ud83c[\udde6-\ude02]|\ud83c[\ude10-\ude3a]|\ud83c[\ude40-\ude48]|🉐|🉑|[\ud840-\ud868][\udc00-\udfff]|\ud869[\udc00-\uded6]|\ud869[\udf00-\udfff]|[\ud86a-\ud86c][\udc00-\udfff]|\ud86d[\udc00-\udf34]|\ud86d[\udf40-\udfff]|\ud86e[\udc00-\udc1d]|\ud86e[\udc20-\udfff]|[\ud86f-\ud872][\udc00-\udfff]|\ud873[\udc00-\udea1]|\ud87e[\udc00-\ude1d]|[\udb80-\udbbe][\udc00-\udfff]|\udbbf[\udc00-\udffd]|[\udbc0-\udbfe][\udc00-\udfff]|\udbff[\udc00-\udffd])|([֐־׀׃׆׈-׿߀-ߪߴߵߺ-ࠕࠚࠤࠨ࠮-ࡘ࡜-࢟‏יִײַ-ﬨשׁ-ﭏ؈؋؍؛-ي٭-ٯٱ-ەۥۦۮۯۺ-ܐܒ-ܯ݋-ޥޱ-޿ࢠ-࣢ﭐ-ﴽ﵀-﷏ﷰ-﷼﷾﷿ﹰ-﻾]|\ud802[\udc00-\udd1e]|\ud802[\udd20-\ude00]|𐨄|\ud802[\ude07-\ude0b]|\ud802[\ude10-\ude37]|\ud802[\ude3b-\ude3e]|\ud802[\ude40-\udee4]|\ud802[\udee7-\udf38]|\ud802[\udf40-\udfff]|\ud803[\udc00-\ude5f]|\ud803[\ude7f-\udfff]|\ud83a[\udc00-\udccf]|\ud83a[\udcd7-\udfff]|\ud83b[\udc00-\uddff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\ude00-\udeef]|\ud83b[\udef2-\udeff]))"),e.extend(e.i18n.parser.emitter,{bidi:function(e){var n,o=(n=e[0].match(t))?void 0===n[2]?"ltr":"rtl":null;return"ltr"===o?"‪"+e[0]+"‬":"rtl"===o?"‫"+e[0]+"‬":e[0]}})}(jQuery)},41669:e=>{"use strict";e.exports=jQuery},46905:()=>{!function(e){"use strict";var t=function(){this.language=e.i18n.languages[String.locale]||e.i18n.languages.default};t.prototype={constructor:t,emit:function(t,n){var o,i,a,s=this;switch(typeof t){case"string":case"number":o=t;break;case"object":if(i=e.map(t.slice(1),(function(e){return s.emit(e,n)})),a=t[0].toLowerCase(),"function"!=typeof s[a])throw new Error('unknown operation "'+a+'"');o=s[a](i,n);break;case"undefined":o="";break;default:throw new Error("unexpected type in AST: "+typeof t)}return o},concat:function(t){var n="";return e.each(t,(function(e,t){n+=t})),n},replace:function(e,t){var n=parseInt(e[0],10);return n{!function(e){"use strict";var t=function(t){this.options=e.extend({},e.i18n.parser.defaults,t),this.language=e.i18n.languages[String.locale]||e.i18n.languages.default,this.emitter=e.i18n.parser.emitter};t.prototype={constructor:t,simpleParse:function(e,t){return e.replace(/\$(\d+)/g,(function(e,n){var o=parseInt(n,10)-1;return void 0!==t[o]?t[o]:"$"+n}))},parse:function(t,n){return t.indexOf("{{")<0?this.simpleParse(t,n):(this.emitter.language=e.i18n.languages[e.i18n().locale]||e.i18n.languages.default,this.emitter.emit(this.ast(t),n))},ast:function(e){var t,n,o,i,a,s,r,d,l,u,c,f,h,g,m,p,v,w,b,y=0;function k(e){return function(){var t,n;for(t=0;t1?["CONCAT"].concat(e):e[0]}function L(){var e=C([f,n,B]);return null===e?null:[e[0],e[2]]}function T(){var e=C([f,n,p]);return null===e?null:[e[0],e[2]]}function j(){var e=C([h,c,g]);return null===e?null:e[1]}if(t=S("|"),n=S(":"),o=S("\\"),i=_(/^./),a=S("$"),s=_(/^\d+/),r=_(/^[^{}[\]$\\]/),d=_(/^[^{}[\]$\\|]/),k([x,_(/^[^{}[\]$\s]/)]),l=k([x,d]),u=k([x,r]),w=_(/^[ !"$&'()*,./0-9;=?@A-Z^_`a-z~\x80-\xFF+-]+/),b=function(e){return e.toString()},f=function(){var e=w();return null===e?null:b(e)},c=k([function(){var e=C([k([L,T]),$(0,E)]);return null===e?null:e[0].concat(e[1])},function(){var e=C([f,$(0,E)]);return null===e?null:[e[0]].concat(e[1])}]),h=S("{{"),g=S("}}"),m=k([j,B,function(){var e=$(1,u)();return null===e?null:e.join("")}]),p=k([j,B,function(){var e=$(1,l)();return null===e?null:e.join("")}]),null===(v=function(){var e=$(0,m)();return null===e?null:["CONCAT"].concat(e)}())||y!==e.length)throw new Error("Parse error at position "+y.toString()+" in input: "+e);return v}},e.extend(e.i18n.parser,new t)}(jQuery)},51399:()=>{!function(e){"use strict";var t=function(){this.messages={},this.sources={}};t.prototype={load:function(t,n){var o,i,a=null,s=[],r=this;if("string"==typeof t)return e.i18n.log("Loading messages from: "+t),(o=t,i=e.Deferred(),e.getJSON(o).done(i.resolve).fail((function(t,n,a){e.i18n.log("Error in loading messages from "+o+" Exception: "+a),i.resolve()})),i.promise()).done((function(e){r.set(n,e)})).promise();if(n)return r.set(n,t),e.Deferred().resolve();for(a in t)Object.prototype.hasOwnProperty.call(t,a)&&(n=a,s.push(r.load(t[a],n)));return e.when.apply(e,s)},set:function(t,n){this.messages[t]?this.messages[t]=e.extend(this.messages[t],n):this.messages[t]=n},get:function(e,t){return this.messages[e]&&this.messages[e][t]}},e.extend(e.i18n.messageStore,new t)}(jQuery)},52329:()=>{!function(e){"use strict";var t,n,o,i=Array.prototype.slice;(t=function(n){this.options=e.extend({},t.defaults,n),this.parser=this.options.parser,this.locale=this.options.locale,this.messageStore=this.options.messageStore,this.languages={}}).prototype={localize:function(t){var n,o,i,a,s,r;for(i=this.locale,a=0;i;){o=(n=i.split("-")).length;do{if(s=n.slice(0,o).join("-"),r=this.messageStore.get(s,t))return r;o--}while(o);if("en"===i)break;i=e.i18n.fallbacks[this.locale]&&e.i18n.fallbacks[this.locale][a]||this.options.fallbackLocale,e.i18n.log("Trying fallback locale for "+this.locale+": "+i+" ("+t+")"),a++}return""},destroy:function(){e.removeData(document,"i18n")},load:function(t,n){var o,i,a,s={};if(t||n||(t="i18n/"+e.i18n().locale+".json",n=e.i18n().locale),"string"==typeof t&&"json"!==t.split("?")[0].split(".").pop()){for(s[n]=t+"/"+n+".json",o=(e.i18n.fallbacks[n]||[]).concat(this.options.fallbackLocale),i=0;i{!function(e){e.idleTimer=function(t,n,o){o=e.extend({startImmediately:!0,idle:!1,enabled:!0,timeout:3e4,events:"mousemove keydown DOMMouseScroll mousewheel mousedown touchstart touchmove"},o),n=n||document;var i=function(t){"number"==typeof t&&(t=void 0);var a=e.data(t||n,"idleTimerObj");a.idle=!a.idle;var s=+new Date-a.olddate;if(a.olddate=+new Date,a.idle&&s{"use strict";function o(){return!!document.querySelector("body.pretext")}function i(e,t,n,i){var a=window.location.pathname;-1!==a.indexOf("?")&&(a=a.substring(0,a.lastIndexOf("?")));let s=o();var r={lastPageUrl:a,lastPageScrollLocation:Math.round($(window).scrollTop()),completionFlag:e,pageLoad:t,markingComplete:n,markingIncomplete:i,course:eBookConfig.course,isPtxBook:s};$(document).ajaxError((function(e,t,n,o){console.log("Request Failed for "+n.url),console.log(e)})),jQuery.ajax({url:`${eBookConfig.new_server_prefix}/logger/updatelastpage`,contentType:"application/json; charset=utf-8",dataType:"json",data:JSON.stringify(r),method:"POST",async:!0})}n.d(t,{w:()=>p}),n(67375),n(66495),n(52329),n(39161),n(46905),n(23836),n(51399),n(49276),n(35773),n(52754),n(3403),n(83057),$(document).on("runestone:login",(function(){var e;!function(){if(!window.location.href.match(/(\/index.html|toctree.html|genindex.html|navhelp.html|toc.html|assignments.html|Exercises.html)/)){var e=window.location.pathname;-1!==e.indexOf("?")&&(e=e.substring(0,e.lastIndexOf("?")));var t={lastPageUrl:e,isPtxBook:o()};jQuery.ajax({url:`${eBookConfig.new_server_prefix}/logger/getCompletionStatus`,data:t,async:!1}).done((function(e){if("None"!=e){var t,n;1==e.detail[0].completionStatus?(t="buttonConfirmCompletion",n=" Completed. Well Done!"):(t="buttonAskCompletion",n="Mark as Completed");let o=document.querySelector("#scprogresscontainer");o&&o.classList.add("ptx-runestone-container"),$("#scprogresscontainer").append('
    ")}}))}}(),void 0!==(e=$.getUrlVar("lastPosition"))&&($("body").append(''),$("html, body").animate({scrollTop:parseInt(e)},1e3)),function(){if(!window.location.href.match(/(index.html|genindex.html|navhelp.html|toc.html|assignments.html|Exercises.html|toctree.html)/)){var e,t=-$("#navLinkBgRight").outerWidth()-5;$("#completionButton").hasClass("buttonAskCompletion")?e=t+70:$("#completionButton").hasClass("buttonConfirmCompletion")&&(e=0);var n=$("#relations-next").css("right"),o=-(t+35);$("#navLinkBgRight").css("right",t).show();var a=!1;$(window).scroll((function(){$(window).scrollTop()+$(window).height()==$(document).height()?($("#navLinkBgRight").animate({right:e},200),$("#navLinkBgLeft").animate({left:"0px"},200),$("#completionButton").hasClass("buttonConfirmCompletion")&&$("#relations-next").animate({right:o},200),a=!0):a&&($("#navLinkBgRight").animate({right:t},200),$("#navLinkBgLeft").animate({left:"-65px"},200),$("#relations-next").animate({right:n}),a=!1)}));var s=0;i(s=$("#completionButton").hasClass("buttonAskCompletion")?0:1,!0,!1,!1),$("#completionButton").on("click",(function(){var a=!1,r=!1;$(this).hasClass("buttonAskCompletion")?($(this).removeClass("buttonAskCompletion").addClass("buttonConfirmCompletion").html(" Completed. Well Done!"),$("#navLinkBgRight").animate({right:0}),$("#relations-next").animate({right:o}),e=0,s=1,a=!0):$(this).hasClass("buttonConfirmCompletion")&&($(this).removeClass("buttonConfirmCompletion").addClass("buttonAskCompletion").html("Mark as Completed"),e=t+70,$("#navLinkBgRight").animate({right:e}),$("#relations-next").animate({right:n}),s=0,r=!0),i(s,!1,a,r)}))}}(),function(){if(-1!=window.location.href.toLowerCase().indexOf("toc.html")||-1!=window.location.href.toLowerCase().indexOf("index.html")||-1!=window.location.href.toLowerCase().indexOf("frontmatter")){o()||jQuery.get(`${eBookConfig.new_server_prefix}/logger/getAllCompletionStatus`,(function(e){var t;if("None"!=e){t=e.detail;var n=$("#main-content div li a");$.each(t,(function(e,t){for(var o=0;o- Completed this topic on '+t.endDate+"").children().first().hover((function(){$(this).next(".infoTextCompleted").show()}),(function(){$(this).next(".infoTextCompleted").hide()})):0==t.completionStatus&&$(n[o].parentElement).addClass("active").append('Last read this topic on '+t.endDate+"").children().first().hover((function(){$(this).next(".infoTextActive").show()}),(function(){$(this).next(".infoTextActive").hide()})))}))}}));var e={course:eBookConfig.course};jQuery.get(`${eBookConfig.new_server_prefix}/logger/getlastpage`,e,(function(e){var t;"None"!=e&&null!=(t=e.detail).lastPageChapter&&$("#continue-reading").show().html('
    ')}))}}()})),$.extend({getUrlVars:function(){for(var e,t=[],n=window.location.search.slice(window.location.search.indexOf("?")+1).split("&"),o=0;o{t.addEventListener("click",(function(){let n=t.getAttribute("data-knowl");e.logBookEvent({event:"knowl",act:"click",div_id:n})}))})),document.querySelectorAll("details.born-hidden-knowl").forEach((t=>{t.addEventListener("toggle",(function(){if(t.open){let n=t.id;e.logBookEvent({event:"knowl",act:"open",div_id:n})}}))})),document.querySelectorAll(".sagecell_evalButton").forEach((t=>{t.addEventListener("click",(function(){let n=t.closest(".sagecell-sage"),o=n?n.querySelector(".sagecell_input"):null;o&&o.textContent,e.logBookEvent({event:"sage",act:"run",div_id:n?n.id:null})}))})),"undefined"==typeof eBookConfig||eBookConfig.isInstructor||document.querySelectorAll(".commentary").forEach((e=>{e.style.display="none"}))}();let e=document.getElementById("primary-navbar-sticky-wrapper");e&&(e.style.overflow="visible")})),n(19695);var s=n(98098);class r extends a.A{constructor(){super(),this.initSplice()}initSplice(){window.addEventListener("message",(async e=>{var t,n,o=this.sendingIframe(e);if(console.log(`SpliceWrapper: received message subject: ${e.data.subject} from iframe: ${o?o.id:"unknown"}`),"SPLICE.reportScoreAndState"==e.data.subject)this.handleScoreAndState(e,o);else if("SPLICE.sendEvent"==e.data.subject)this.handleSpliceEvent(e,o);else if("SPLICE.getState"==e.data.subject)await this.handleGetState(e,o);else if("https://www.myopenmath.com"===e.origin&&"string"==typeof e.data&&-1!=e.data.indexOf("lti.ext.imathas.result")){let o=JSON.parse(e.data),i=(t=o.jwt.split(".")[1].replace(/-/g,"+").replace(/_/g,"/"),n=decodeURIComponent(window.atob(t).split("").map((function(e){return"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)})).join("")),JSON.parse(n));console.log("Result received from frame "+o.frame_id+" with score "+i.score)}}))}getUniqueID(e,t){if(t){let e=t.closest("[data-component]");if(e)return e.id}let n=e.data.activity_id;return n||(t?n=t.src:(n="unknown",console.error("Could not find iframe that sent the SPLICE event"))),n}handleScoreAndState(e,t){console.log("Got SPLICE.reportScoreAndState"),console.log(e.data.activity_id),console.log(e.data.score),console.log(e.data.state);let n=this.getUniqueID(e,t);this.logBookEvent({event:e.data.subject,div_id:n,act:`score: ${e.data.score}`,score:e.data.score,percent:e.data.score,correct:1==e.data.score,answer:JSON.stringify(e.data.state)})}sendingIframe(e){for(const t of document.getElementsByTagName("iframe"))if(t.contentWindow===e.source)return t}async getSavedState(e){try{const t=await fetch("/ns/assessment/results",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({div_id:e,course:eBookConfig.course,event:"SPLICE.getState"})});if(!t.ok)throw new Error(`HTTP error! status: ${t.status}`);return await t.json()}catch(e){return console.error("Error fetching SPLICE state:",e),null}}async handleGetState(e,t){console.log("Got SPLICE.getState"),console.log(e.data.activity_id),console.log(e.data.state);let n=this.getUniqueID(e,t),o=(await this.getSavedState(n)).detail.answer;e.source.postMessage({message_id:e.data.message_id,subject:"SPLICE.getState.response",state:o},"*")}handleSpliceEvent(e,t){console.log("Got SPLICE.sendEvent"),console.log(e.data.activity_id),console.log(e.data.name);let n=this.getUniqueID(e,t);this.logBookEvent({event:e.data.subject,div_id:n,act:e.data.name||"unknown"})}checkLocalStorage(){}setLocalStorage(){}restoreAnswers(){}disableInteraction(){}}const d={activecode:()=>Promise.all([n.e(249),n.e(296),n.e(625),n.e(764),n.e(877)]).then(n.bind(n,73565)),ble:()=>n.e(817).then(n.bind(n,29817)),clickablearea:()=>Promise.all([n.e(529),n.e(198)]).then(n.bind(n,58529)),codelens:()=>Promise.all([n.e(764),n.e(412)]).then(n.bind(n,76412)),datafile:()=>n.e(580).then(n.bind(n,33580)),dragndrop:()=>Promise.all([n.e(759),n.e(621)]).then(n.bind(n,56759)),fillintheblank:()=>Promise.all([n.e(466),n.e(294)]).then(n.bind(n,64466)),groupsub:()=>Promise.all([n.e(28),n.e(616)]).then(n.bind(n,24616)),khanex:()=>n.e(340).then(n.bind(n,28340)),lp_build:()=>Promise.all([n.e(296),n.e(576)]).then(n.bind(n,77576)),matching:()=>Promise.all([n.e(566),n.e(737)]).then(n.bind(n,14566)),multiplechoice:()=>Promise.all([n.e(919),n.e(350)]).then(n.bind(n,9919)),hparsons:()=>Promise.all([n.e(249),n.e(669),n.e(486)]).then(n.bind(n,71182)),parsons:()=>n.e(39).then(n.bind(n,52420)),poll:()=>n.e(168).then(n.bind(n,11168)),quizly:()=>n.e(128).then(n.bind(n,34128)),reveal:()=>n.e(460).then(n.bind(n,67460)),selectquestion:()=>Promise.all([n.e(662),n.e(380)]).then(n.bind(n,10662)),shortanswer:()=>n.e(819).then(n.bind(n,48819)),showeval:()=>n.e(824).then(n.bind(n,8824)),simple_sensor:()=>n.e(126).then(n.bind(n,50126)),spreadsheet:()=>Promise.all([n.e(131),n.e(186)]).then(n.bind(n,97186)),tabbedStuff:()=>n.e(442).then(n.bind(n,76442)),timedAssessment:()=>Promise.all([n.e(249),n.e(296),n.e(625),n.e(764),n.e(877),n.e(466),n.e(759),n.e(919),n.e(566),n.e(662),n.e(529),n.e(420),n.e(115)]).then(n.bind(n,46424)),wavedrom:()=>Promise.all([n.e(770),n.e(640)]).then(n.bind(n,45640)),webwork:()=>n.e(680).then(n.bind(n,84680)),youtube:()=>n.e(915).then(n.bind(n,86915)),doenet:()=>Promise.resolve()},l={},u=10,c=[];let f=0;async function h(){if(0===c.length)return;if(Date.now()-fe.component_name)));const t=e.map((async e=>{try{return await d[e.component_name](),console.log(`Runestone component ${e.component_name} has been loaded`),e}catch(t){e.reject(t)}})),n=await Promise.all(t);try{n.forEach((function(e){e&&e.resolve()}))}catch(e){console.error(e)}}let g=new Promise((e=>$(document).on("runestone:pre-login-complete",e)));function m(){const e=new Set($("[data-component]").map(((e,t)=>$(t).attr("data-component"))).get());document.querySelector(".webwork-button")&&e.add("webwork");const t=[...e].map((e=>{let t;console.log(`Loading Runestone component: ${e}`);try{t=(d[e]||(()=>Promise.resolve()))()}catch(t){console.error(`Error loading ${e}:`,t)}return t.error=t=>console.error(`Error in ${e}:`,t),t}));Promise.all([g,...t]).then((function(){document.body.dataset.reactInUse||document.dispatchEvent(new CustomEvent("runestone:login-complete"))}))}async function p(e){if(l[e])return l[e];console.log(`Runestone component ${e} is being queued for import`);const t=function(e){let t=null,n=null;const o=new Promise(((e,o)=>{t=e,n=o})),i={component_name:e,resolve:t,reject:n};return c.push(i),window.setTimeout(h,u+1),o}(e);return l[e]=t,t}g.then((()=>{console.log("Runestone pre-login complete")})),$(document).ready(m);const v=document.currentScript.src;n.p=v.substring(0,v.lastIndexOf("/")+1),new r;const w={};w.runestone_import=p,w.runestone_auto_import=m,w.getSwitch=function(){const e=document.querySelector('.theme-switch input[type="checkbox"]'),t=localStorage.getItem("theme")?localStorage.getItem("theme"):null;t&&(document.documentElement.setAttribute("data-theme",t),"dark"===t&&(e.checked=!0))},w.switchTheme=function(){1==document.getElementById("checkbox").checked?(document.documentElement.setAttribute("data-theme","dark"),localStorage.setItem("theme","dark")):(document.documentElement.setAttribute("data-theme","light"),localStorage.setItem("theme","light"))},w.popupScratchAC=async function(){if(await p("activecode"),!eBookConfig.scratchDiv){window.ACFactory.createScratchActivecode();let e=eBookConfig.scratchDiv;window.componentMap[e]=ACFactory.createActiveCode($(`#${e}`)[0],eBookConfig.acDefaultLanguage),eBookConfig.isLoggedIn&&window.componentMap[e].enableSaveLoad()}setTimeout((()=>{window.ACFactory.toggleScratchActivecode()}),100)},w.renderOneComponent=s.yT,window.componentMap={},window.runestoneComponents=w},78673:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var o=n(83057),i=["parsonsMove","showeval","video","poll","view_toggle","dashboard","selectquestion","codelens","peer","shortanswer"];class a{constructor(e){this.component_ready_promise=new Promise((e=>this._component_ready_resolve_fn=e)),this.optional=!1,void 0===window.allComponents&&(window.allComponents=[]),window.allComponents.push(this),e&&(this.sid=e.sid,this.graderactive=e.graderactive,this.showfeedback=!0,e.timed&&(this.isTimed=!0),e.enforceDeadline&&(this.deadline=e.deadline),this.optional=this.parseBooleanAttribute(e.orig,"data-optional"),e.selector_id&&(this.selector_id=e.selector_id),void 0!==e.assessmentTaken?this.assessmentTaken=e.assessmentTaken:this.assessmentTaken=!0,void 0!==e.timedWrapper?this.timedWrapper=e.timedWrapper:location.href.indexOf("doAssignment")>=0?this.timedWrapper=$("h1#assignment_name").text():this.timedWrapper=null,$(e.orig).data("question_label")&&(this.question_label=$(e.orig).data("question_label")),this.is_toggle=e.is_toggle,this.is_select=e.is_select),this.mjelements=[];let t=this;if(this.mjReady=new Promise((function(e,n){t.mjresolver=e})),this.aQueue=new r,e&&void 0!==e.preamble){this.preamble=e.preamble;let t=document.createElement("div");t.classList.add("hidden-content"),t.classList.add("process-math"),t.innerHTML="\\("+this.preamble+"\\)",e.orig.appendChild(t),t.id="ltx_preamble",t.style.display="none",this.aQueue.preamble=t}this.jsonHeaders=new Headers({"Content-type":"application/json; charset=utf-8",Accept:"application/json"})}parseBooleanAttribute(e,t){const n=e.getAttribute(t);if(null===n)return!1;const o=n.toLowerCase();return"false"!==o&&"no"!==o}async logBookEvent(e){if(this.graderactive)return;let t;if(e.course_name=eBookConfig.course,e.clientLoginStatus=eBookConfig.isLoggedIn,e.timezoneoffset=(new Date).getTimezoneOffset()/60,this.selector_id&&(e.selector_id=this.selector_id),"number"==typeof this.percent&&(e.percent=this.percent),window.assignmentId&&(e.assignment_id=window.assignmentId),eBookConfig.isLoggedIn&&eBookConfig.useRunestoneServices&&eBookConfig.logLevel>0&&(t=this.postLogMessage(e)),!this.isTimed||eBookConfig.debug){let t=eBookConfig.isLoggedIn?"Save":"Not";console.log(`${t} logging event `+JSON.stringify(e))}return this.selector_id&&(e.div_id=this.selector_id.replace("-toggleSelectedQuestion",""),e.event="selectquestion",e.act="interaction",this.postLogMessage(e)),"function"==typeof o.X.updateProgress&&"edit"!=e.act&&0==this.optional&&o.X.updateProgress(e.div_id),-1===i.indexOf(e.event)&&this.decorateStatus(),t}async postLogMessage(e){var t;let n=new Request(`${eBookConfig.new_server_prefix}/logger/bookevent`,{method:"POST",headers:this.jsonHeaders,body:JSON.stringify(e)});try{var o=await fetch(n);if(!o.ok){if(422===o.status)throw t=await o.json(),console.log(JSON.stringify(t.detail,null,4)),new Error("Unprocessable Request");if(401==o.status)throw t=await o.json(),console.log(`Missing authentication token ${t.detail}`),new Error("Missing authentication token");throw new Error(`Failed to save the log entry\n Status: ${o.status}`)}let e=(t=await o.json()).detail,i=null;if(this.selector_id){let e=this.selector_id.replace("-toggleSelectedQuestion","");i=document.getElementById(`${e}_score`)}else i=document.getElementById(`${this.divid}_score`);i&&!this.isTimed&&e.score&&this.updateScores(i,e)}catch(e){let n="none";t&&t.detail&&(n=t.detail),eBookConfig.useRunestoneServices&&alert(`Error: Your action was not saved!\n The error was ${e}\n Status Code: ${o.status}\n Detail: ${JSON.stringify(n,null,4)}.\n Please report this error!`),console.log(`Error: ${e} Detail: ${n} Status Code: ${o.status}`)}return t}updateScores(e,t){if(!t.assigned||null===t.score)return void(document.getElementById(`${this.divid}_message`).innerHTML="Score not updated. Submissions are closed.");let n=e.getElementsByClassName("qscore")[0];n&&(n.innerHTML=t.score.toFixed(1));let o=document.getElementsByClassName("qscore"),i=document.getElementsByClassName("qmaxscore"),a=0,s=0;for(let e=0;e0){let n=new Request(`${eBookConfig.new_server_prefix}/logger/runlog`,{method:"POST",headers:this.jsonHeaders,body:JSON.stringify(e)}),o=await fetch(n);o.ok?t=await o.json():(t=await o.json(),eBookConfig.useRunestoneServices?alert(`Failed to save your code\n Status is ${o.status}\n Detail: ${JSON.stringify(t.detail,null,4)}`):console.log(`Did not save the code.\n Status: ${o.status}\n Detail: ${JSON.stringify(t.detail,null,4)}`))}return this.isTimed&&!eBookConfig.debug||console.log("running "+JSON.stringify(e)),"function"==typeof o.X.updateProgress&&0==this.optional&&o.X.updateProgress(e.div_id),t}}async checkServer(e,t=!1){let n=this;if(this.checkServerComplete=new Promise((function(e,t){n.csresolver=e})),eBookConfig.isLoggedIn&&(this.useRunestoneServices||this.graderactive)){let t={};if(t.div_id=this.divid,t.course=eBookConfig.course,t.event=e,this.graderactive&&this.deadline&&(t.deadline=this.deadline,t.rawdeadline=this.rawdeadline,t.tzoff=this.tzoff),this.sid&&(t.sid=this.sid),t.div_id&&t.course&&t.event||console.log(`A required field is missing data ${t.div_id}:${t.course}:${t.event}`),eBookConfig.practice_mode||eBookConfig.peer||!this.assessmentTaken)this.loadData({}),console.log("resolving checkServer no answer given"),this.csresolver("not taken");else{let e=new Request(`${eBookConfig.new_server_prefix}/assessment/results`,{method:"POST",body:JSON.stringify(t),headers:this.jsonHeaders});try{let n=await fetch(e);console.log(`Response from server: ${n.status}`),n.ok?(t=await n.json(),t=t.detail,console.log(`Data from server: ${JSON.stringify(t)} calling repopulateFromStorage`),this.repopulateFromStorage(t),this.attempted=!0,void 0!==t.correct?this.correct=t.correct:this.correct=null,console.log("resolving checkServer with server data"),this.csresolver("server")):(console.log(`HTTP Error getting results: ${n.statusText}`),this.checkLocalStorage(),console.log("resolving checkServer with local data"),this.csresolver("local"))}catch(e){console.log(`Error getting results: ${e}`);try{this.checkLocalStorage()}catch(e){console.log(e)}}}}else this.checkLocalStorage(),console.log("resolving checkServer with local data"),this.csresolver("local");t&&this.indicate_component_ready()}indicate_component_ready(){this.containerDiv.classList.add("runestone-component-ready"),this._component_ready_resolve_fn()}loadData(e){return null}repopulateFromStorage(e){null!==e&&"no data"!==e&&this.shouldUseServer(e)?(this.restoreAnswers(e),this.setLocalStorage(e)):this.checkLocalStorage(),this.decorateStatus()}shouldUseServer(e){if("T"===e.correct||!0===e.correct||0===localStorage.length||!0===this.graderactive||this.isTimed)return!0;let t,n=localStorage.getItem(this.localStorageKey());if(null===n)return!0;try{t=JSON.parse(n)}catch(e){return console.log(e.message),localStorage.removeItem(this.localStorageKey()),!0}if(e.answer==t.answer)return!0;let o=new Date(t.timestamp);return new Date(e.timestamp)>=o}localStorageKey(){return eBookConfig.email+":"+eBookConfig.course+":"+this.divid+"-given"}addCaption(e){if(!this.isTimed){var t=document.createElement("p");this.question_label?(this.caption=eBookConfig.useRunestoneServices?`Activity: ${this.question_label} ${this.caption} (${this.divid})`:`Activity: ${this.question_label} ${this.caption}`,$(t).html(this.caption),$(t).addClass(`${e}_caption`)):($(t).html(eBookConfig.useRunestoneServices?this.caption+" ("+this.divid+")":this.caption),$(t).addClass(`${e}_caption`),$(t).addClass(`${e}_caption_text`)),this.capDiv=t,this.containerDiv.appendChild(t)}}hasUserActivity(){return this.isAnswered}checkCurrentAnswer(){console.log("Each component should provide an implementation of checkCurrentAnswer")}async logCurrentAnswer(){console.log("Each component should provide an implementation of logCurrentAnswer")}renderFeedback(){console.log("Each component should provide an implementation of renderFeedback")}disableInteraction(){console.log("Each component should provide an implementation of disableInteraction")}toString(){return`${this.constructor.name}: ${this.divid}`}queueMathJax(e){return"undefined"==typeof MathJax?(console.log("Error -- MathJax is not loaded"),Promise.resolve(null)):MathJax.typesetPromise?void 0!==window.runestoneMathReady?window.runestoneMathReady.then((()=>this.mjresolver(this.aQueue.enqueue(e)))):this.mjresolver(this.aQueue.enqueue(e)):(console.log(`Waiting on MathJax!! ${MathJax.typesetPromise}`),setTimeout((()=>this.queueMathJax(e)),200),console.log(`Returning mjready promise: ${this.mjReady}`),this.mjReady)}decorateStatus(){if(this.isTimed||eBookConfig.peer)return;let e=$(this.containerDiv).closest("div.runestone")[0];e&&(e.classList.remove("notAnswered"),e.classList.remove("isInCorrect"),e.classList.remove("isCorrect"),this.correct?e.classList.add("isCorrect"):null===this.correct||void 0===this.correct?e.classList.add("notAnswered"):e.classList.add("isInCorrect"))}}class s{constructor(){this._items=[]}enqueue(e){this._items.push(e)}dequeue(){return this._items.shift()}get size(){return this._items.length}}class r extends s{constructor(){super(),this._pendingPromise=!1}enqueue(e){return new Promise(((t,n)=>{super.enqueue({component:e,resolve:t,reject:n}),this.dequeue()}))}async dequeue(){if(this._pendingPromise)return!1;let e=super.dequeue();if(!e)return!1;let t=this;try{this._pendingPromise=!0;let n=await window.runestoneMathReady.then((async function(){if(console.log(`MathJax Ready -- dequeing a typesetting run for ${e.component.id} ${t.preamble?.innerHTML}`),t.preamble){await MathJax.typesetPromise([t.preamble]);let n=document.createElement("div");return n.innerHTML=t.preamble.innerHTML,e.component.insertAdjacentElement("afterbegin",n),console.log(`MathJax typeset the preamble for ${e.component.id}`),await MathJax.typesetPromise([e.component])}return await MathJax.typesetPromise([e.component])}));this._pendingPromise=!1,e.resolve(n)}catch(t){this._pendingPromise=!1,e.reject(t)}finally{this.dequeue()}return!0}}window.RunestoneBase=a},83057:(e,t,n)=>{"use strict";n.d(t,{X:()=>i,u:()=>a});class o{constructor(e){if(this.possible=0,this.total=1,e&&"assignment_spec"in e&&(this.assignment_spec=e.assignment_spec,delete e.assignment_spec),e&&Object.keys(e).length>0)this.activities=e;else{let e={page:0};document.querySelectorAll(".runestone").forEach((function(t){e[t.firstElementChild.id]=0})),this.activities=e}if(this.calculateProgress(),window.location.pathname.match(/.*\/(index.html|toctree.html|Exercises.html|search.html)$/i)){const e=document.getElementById("scprogresscontainer");e&&(e.style.display="none")}this.renderProgress()}calculateProgress(){for(let e in this.activities)void 0!==e&&(this.possible++,this.activities[e]>0&&this.total++)}renderProgress(){let e=0;const t=document.getElementById("scprogresstotal");t&&(t.textContent=this.total);const n=document.getElementById("scprogressposs");n&&(n.textContent=this.possible);try{e=100*this.total/this.possible}catch(t){e=0}let o=document.getElementById("subchapterprogress");if(o&&"PROGRESS"!==o.tagName){const t=document.createElement("progress");t.id="subchapterprogress",t.max=100,t.value=e,t.className=o.className,o.replaceWith(t),o=t}else o&&(o.max=100,o.value=e);if(this.assignment_spec&&this.total-1>=(this.assignment_spec.activities_required||0)&&this.sendCompletedReadingScore().then((()=>{console.log("Reading score sent for page"),setTimeout((()=>{let e=document.getElementById("completionButton");e&&"mark as completed"===e.textContent.toLowerCase()&&e.click()}),500)})),!eBookConfig.isLoggedIn){const e=document.getElementById("subchapterprogress");e&&e.classList.add("loggedout")}}updateProgress(e){if(this.activities[e]++,1===this.activities[e]){this.total++;let e=100*this.total/this.possible;const t=document.getElementById("scprogresstotal");t&&(t.textContent=this.total);const n=document.getElementById("scprogressposs");n&&(n.textContent=this.possible);let o=document.getElementById("subchapterprogress");o&&"PROGRESS"===o.tagName&&(o.value=e),this.assignment_spec&&null!==this.assignment_spec.activities_required&&this.total>=this.assignment_spec.activities_required&&(console.log("Required activities completed"),this.sendCompletedReadingScore().then((()=>{console.log("Reading score sent")}))),100==e&&"mark as completed"===$("#completionButton").text().toLowerCase()&&$("#completionButton").click()}}async sendCompletedReadingScore(){let e=new Headers({"Content-type":"application/json; charset=utf-8",Accept:"application/json"}),t={...this.assignment_spec},n=new Request(`${eBookConfig.new_server_prefix}/logger/update_reading_score`,{method:"POST",body:JSON.stringify(t),headers:e});try{let e=await fetch(n);e.ok||console.error(`Failed to send reading score! ${e.statusText}`),t=await e.json()}catch(e){console.error(`Error sending reading score ${e}`)}}}var i={};function a(e){return"string"==typeof e&&([/\$\$[\s\S]+?\$\$/,/\$[^$\n]+?\$/,/\\\[[\s\S]+?\\\]/,/\\\([\s\S]+?\\\)/].some((t=>t.test(e)))||/\\(frac|sqrt|sum|prod|int|lim|sin|cos|tan|log|ln|alpha|beta|gamma|pi|theta|sigma|Delta|cdot|times|leq|geq|neq)\b/.test(e)||/[a-zA-Z0-9]\s*[\^_]\s*\{?.+?\}?/.test(e))}document.addEventListener("runestone:login",(function(){$("#profilelink").show(),$("#passwordlink").show(),$("#registerlink").hide(),$("li.loginout").html('Log Out')})),document.addEventListener("runestone:logout",(function(){eBookConfig.useRunestoneServices&&(console.log("setup navbar for logged out"),$("#registerlink").show(),$("#profilelink").hide(),$("#passwordlink").hide(),$("#ip_dropdown_link").hide(),$("#inst_peer_link").hide(),$("li.loginout").html('Login'),$(".footer").html("user not logged in"))})),document.addEventListener("DOMContentLoaded",(function(){eBookConfig?(async function(){var e;if(eBookConfig.useRunestoneServices){let e=new Headers({"Content-type":"application/json; charset=utf-8",Accept:"application/json"}),n={timezoneoffset:(new Date).getTimezoneOffset()/60,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone},o=function(){const e=`; ${document.cookie}`.split("; RS_info=");if(2===e.length)return e.pop().split(";").shift()}();var t=!1;if(o)try{let e=o.replace(/\\054/g,","),i=JSON.parse(decodeURIComponent(e));i=JSON.parse(decodeURIComponent(i)),i.timezone===n.timezone&&i.tz_offset===n.timezoneoffset&&(console.log("Timezone cookie matches, not sending timezone to server"),t=!0)}catch(e){console.error("Error parsing RS_info cookie, sending timezone to server")}if(!1===t){let t=new Request(`${eBookConfig.new_server_prefix}/logger/set_tz_offset`,{method:"POST",body:JSON.stringify(n),headers:e});try{let e=await fetch(t);e.ok||console.error(`Failed to set timezone! ${e.statusText}`),n=await e.json()}catch(e){console.error(`Error setting timezone ${e}`)}}}if(console.log(`This page served by ${eBookConfig.served_by}`),eBookConfig.isLoggedIn)e=`username: ${eBookConfig.username}`,eBookConfig.isInstructor||($("#ip_dropdown_link").remove(),$("#inst_peer_link").remove()),$(document).trigger("runestone:login"),function(){if(eBookConfig.readings){var e,t,n,o;let i=window.location.pathname.split("/"),a=i[i.length-2]+"/"+i[i.length-1],s=eBookConfig.readings.indexOf(a),r=eBookConfig.readings.length;s==eBookConfig.readings.length-1?e=$("
    ",{text:`Finished reading assignment. Page ${r} of ${r}.`}):s>=0?(t=eBookConfig.readings[s+1],(n=i.slice(0,i.length-2)).push(t),o=n.join("/"),e=$("",{name:"link",class:"btn btn-lg ' + 'buttonConfirmCompletion'",href:o,text:`Continue to page ${s+2} of ${r} in the reading assignment.`})):e=$("
    ",{text:"This page is not part of the last reading assignment you visited."}),$("#main-content").append(e)}}(),-1==window.location.pathname.indexOf("/admin/grading")&&-1==window.location.pathname.indexOf("/peer/")&&($(document).on("idle.idleTimer",(function(){location.href.indexOf("index.html")<0&&(console.log("Idle timer - "+location.pathname),location.href=eBookConfig.app+"/default/user/login?_next="+location.pathname+location.search)})),$.idleTimer(9e5));else{e="Not logged in",$(document).trigger("runestone:logout");let t=document.getElementById("browsing_warning");t&&(t.innerHTML="");let n=document.getElementById("ad_warning");n&&(n.innerHTML="")}$(".loggedinuser").html(e),i=new o(eBookConfig.activities),console.log("triggering runestone:pre-login-complete"),document.dispatchEvent(new Event("runestone:pre-login-complete"))}(),function(){if("undefined"!=typeof showAd&&showAd){let e=Math.floor(2*Math.random())+1,t=document.getElementById(`adcopy_${e}`),n=document.querySelectorAll(".runestone");n.length>0&&(n[Math.floor(Math.random()*n.length)].after(t),t.style.display="block")}}()):"undefined"==typeof eBookConfig&&console.log("eBookConfig is not defined. This page must not be set up for Runestone")})),window.addEventListener("load",(function(){if(document.querySelectorAll(".video-play-overlay").forEach((function(e){e.style.backgroundImage="url('{{pathto('_static/play_overlay_icon.png', 1)}}')"})),document.querySelectorAll(".dropdown input, .dropdown label").forEach((function(e){e.addEventListener("click",(function(e){e.stopPropagation()}))})),location.href.includes("mode=browsing")){let e="?mode=browsing";document.querySelectorAll("a").forEach((t=>{let n="";if(t.href.includes("books/published")&&!t.href.includes("?mode=browsing")){if(t.href.includes("#")){let e=t.href.indexOf("#");n=t.href.substring(e),t.href=t.href.substring(0,e)}t.href=t.href.includes("?")?t.href+e.replace("?","&")+n:t.href+e+n}}))}}))},98098:(e,t,n)=>{"use strict";n.d(t,{$y:()=>a,JK:()=>i,yT:()=>s});var o=n(77394);async function i(e,t,n){if(!e)return void jQuery(`#${t}`).html("

    Sorry, no source is available for preview.

    ");e=e.replace(/..\/_images/g,`${eBookConfig.app}/books/published/${eBookConfig.basecourse}/_images`),jQuery(`#${t}`).html(e),void 0===window.componentMap&&(window.componentMap={});let i=$($(`#${t} [data-component]`)[0]).data("component");await(0,o.w)(i);let a={};if(a.orig=jQuery(`#${t} [data-component]`)[0],a.orig&&(a.lang=$(a.orig).data("lang"),a.useRunestoneServices=!0,a.graderactive=!1,a.python3=!0,void 0!==n))for(let e in n)a[e]=n[e];if("undefined"==typeof component_factory)alert("Error: Missing the component factory!");else if(window.component_factory[i]||jQuery(`#${t}`).html()){let e=window.component_factory[i](a);"activecode"===i&&(n.multiGrader?window.componentMap[`${n.gradingContainer} ${e.divid}`]=e:window.componentMap[e.divid]=e)}else jQuery(`#${t}`).html(`

    Preview not available for ${i}

    `)}function a(e,t){e=e.replace(/..\/_images/g,`${eBookConfig.app}/books/published/${eBookConfig.basecourse}/_images`);let n,o,i=$($(e).find("[data-component]")[0]).data("component"),a=$(e).find("[data-component]").first().attr("id");document.getElementById(a)||(n=$("
    ",{css:{display:"none"}}).appendTo("body"),n.html(e));let s={orig:document.getElementById(a),timed:!0};if(void 0!==t)for(let e in t)s[e]=t[e];i in window.component_factory&&(o=window.component_factory[i](s));let r={};return r.question=o,r}async function s(e){let t=e.querySelector("[data-component]");if(null==t)return void console.log("Render was called for a component, but now [data-component] attribute is present. This may mean the component has already been rendered.");let n=t.dataset.component;if(await(0,o.w)(n),0==$(this).closest("[data-component=timedAssessment]").length)try{let e=t.id;window.componentMap[e]=window.component_factory[n]({orig:t,useRunestoneServices:eBookConfig.useRunestoneServices})}catch(e){console.log(`Error rendering ${n} Problem ${this.id}\n Details: ${e}`)}}}},e=>{e.O(0,[723],(()=>e(e.s=77394))),e.O()}]); -//# sourceMappingURL=prefix-runestone.7e141ad8414abf4a.bundle.js.map \ No newline at end of file +/*! For license information please see prefix-runestone.1c010553c35c544c.bundle.js.LICENSE.txt */ +(self.webpackChunkWebComponents=self.webpackChunkWebComponents||[]).push([[222],{3403:()=>{!function(e){var t=function(t,n){var o;(o=function(t,i){i=i||0,t.find("> li > a.internal, > ul, > li > ul").each((function(t,a){var s=e(a),r=a.tagName.toLowerCase(),d=s.children("li"),l=e(s.parent("li"),s.parent().parent("li"));"ul"===r&&i>=n&&d.length>0&&(l.addClass("dropdown-submenu").children("a").first().attr("tabindex",-1),s.addClass("dropdown-menu")),o(s,i+1)}))})(t)};patchTables=function(){e("table.docutils").removeClass("docutils").addClass("table").attr("border",0)},e((function(){if(e("#navbar.navbar-fixed-top").length>0){var n=e("#navbar").height(),o=function(){scrollBy(0,-n-10)};location.hash&&o(),window.addEventListener("hashchange",o)}e(".dropdown-menu").each((function(){e(this).find("ul").each((function(t,n){e(n).addClass("unstyled")}))})),e("ul.globaltoc li").length?t(e("ul.globaltoc"),1):e(".globaltoc-container").remove(),t(e("ul.localtoc"),2),e(".dropdown-menu ul").not(".dropdown-menu").each((function(){var t=e(this),n=t.parent(),o=n[0].tagName.toLowerCase(),i=t.children().detach();"ul"===o?t.replaceWith(i):"li"===o&&(n.after(i),t.remove())})),$localLi=e("ul.localtoc li"),$localLi.length>2&&$localLi.first().after('
  • '),e(".dropdown-toggle").dropdown(),patchTables(),e("div.note").addClass("alert").addClass("alert-info"),e("div.warning").addClass("alert").addClass("alert-warning"),e("tt.docutils.literal").not(".xref").each((function(t,n){e(n).parent().hasClass("reference")||e(n).replaceWith((function(){return e("").text(e(this).text())}))}))}))}(window.jQuery)},19695:()=>{var e,t=!1;function n(){t||(function(){let t=$("[data-childcomponent]");t.addClass("runestone"),t.parent().closest("div").not("section").addClass("runestone"),t.parent().closest("div").css("max-width","none"),t.each((function(e){$(this),$(this).find(".ac_code_div, .ac_output").wrapAll("
    ")})),$("section img").wrap('
    '),e=$(".runestone").not(".runestone .runestone"),$("h1").before("
    ")}(),t=!0);let n=$("body"),o="present",a="full-height",s="bottom";n.hasClass(o)?($("section *").not("h1, .presentation-title, .btn-presenter, .runestone, .runestone *, section, .pre, code").removeClass("hidden"),$("#completionButton").removeClass("hidden"),n.removeClass(o),$("."+a).removeClass(a),$("."+s).removeClass(s),localStorage.setItem("presentMode","text"),e.removeClass("hidden"),undefined.disabled=!0):($("section *").not("h1, .presentation-title, .btn-presenter, .runestone, .runestone *, section, .pre, code").addClass("hidden"),$("#completionButton").addClass("hidden"),n.addClass(o),n.addClass(a),$("html").addClass(a),$("section .runestone").addClass(a),$(".ac-caption").addClass(s),localStorage.setItem("presentMode",o),i())}function o(){return active=e.filter(".active")}function i(t){void 0===t&&(t=0);let n=o();e.length&&(n.removeClass("active"),n=$(e[t]).addClass("active"),n.removeClass("hidden"),e.not(e.filter(".active")).addClass("hidden"))}window.nextExercise=function(){let t=o(),n=e.index(t)+1;n=0&&i(n)},$(document).on("runestone:login-complete",(function(){eBookConfig.isInstructor&&($(".navbar-right").prepend(""),$(".mode-select").change(n))}))},23836:()=>{!function(e){"use strict";e.i18n=e.i18n||{},e.extend(e.i18n.fallbacks,{ab:["ru"],ace:["id"],aln:["sq"],als:["gsw","de"],an:["es"],anp:["hi"],arn:["es"],arz:["ar"],av:["ru"],ay:["es"],ba:["ru"],bar:["de"],"bat-smg":["sgs","lt"],bcc:["fa"],"be-x-old":["be-tarask"],bh:["bho"],bjn:["id"],bm:["fr"],bpy:["bn"],bqi:["fa"],bug:["id"],"cbk-zam":["es"],ce:["ru"],crh:["crh-latn"],"crh-cyrl":["ru"],csb:["pl"],cv:["ru"],"de-at":["de"],"de-ch":["de"],"de-formal":["de"],dsb:["de"],dtp:["ms"],egl:["it"],eml:["it"],ff:["fr"],fit:["fi"],"fiu-vro":["vro","et"],frc:["fr"],frp:["fr"],frr:["de"],fur:["it"],gag:["tr"],gan:["gan-hant","zh-hant","zh-hans"],"gan-hans":["zh-hans"],"gan-hant":["zh-hant","zh-hans"],gl:["pt"],glk:["fa"],gn:["es"],gsw:["de"],hif:["hif-latn"],hsb:["de"],ht:["fr"],ii:["zh-cn","zh-hans"],inh:["ru"],iu:["ike-cans"],jut:["da"],jv:["id"],kaa:["kk-latn","kk-cyrl"],kbd:["kbd-cyrl"],khw:["ur"],kiu:["tr"],kk:["kk-cyrl"],"kk-arab":["kk-cyrl"],"kk-latn":["kk-cyrl"],"kk-cn":["kk-arab","kk-cyrl"],"kk-kz":["kk-cyrl"],"kk-tr":["kk-latn","kk-cyrl"],kl:["da"],"ko-kp":["ko"],koi:["ru"],krc:["ru"],ks:["ks-arab"],ksh:["de"],ku:["ku-latn"],"ku-arab":["ckb"],kv:["ru"],lad:["es"],lb:["de"],lbe:["ru"],lez:["ru"],li:["nl"],lij:["it"],liv:["et"],lmo:["it"],ln:["fr"],ltg:["lv"],lzz:["tr"],mai:["hi"],"map-bms":["jv","id"],mg:["fr"],mhr:["ru"],min:["id"],mo:["ro"],mrj:["ru"],mwl:["pt"],myv:["ru"],mzn:["fa"],nah:["es"],nap:["it"],nds:["de"],"nds-nl":["nl"],"nl-informal":["nl"],no:["nb"],os:["ru"],pcd:["fr"],pdc:["de"],pdt:["de"],pfl:["de"],pms:["it"],pt:["pt-br"],"pt-br":["pt"],qu:["es"],qug:["qu","es"],rgn:["it"],rmy:["ro"],"roa-rup":["rup"],rue:["uk","ru"],ruq:["ruq-latn","ro"],"ruq-cyrl":["mk"],"ruq-latn":["ro"],sa:["hi"],sah:["ru"],scn:["it"],sg:["fr"],sgs:["lt"],sli:["de"],sr:["sr-ec"],srn:["nl"],stq:["de"],su:["id"],szl:["pl"],tcy:["kn"],tg:["tg-cyrl"],tt:["tt-cyrl","ru"],"tt-cyrl":["ru"],ty:["fr"],udm:["ru"],ug:["ug-arab"],uk:["ru"],vec:["it"],vep:["et"],vls:["nl"],vmf:["de"],vot:["fi"],vro:["et"],wa:["fr"],wo:["fr"],wuu:["zh-hans"],xal:["ru"],xmf:["ka"],yi:["he"],za:["zh-hans"],zea:["nl"],zh:["zh-hans"],"zh-classical":["lzh"],"zh-cn":["zh-hans"],"zh-hant":["zh-hans"],"zh-hk":["zh-hant","zh-hans"],"zh-min-nan":["nan"],"zh-mo":["zh-hk","zh-hant","zh-hans"],"zh-my":["zh-sg","zh-hans"],"zh-sg":["zh-hans"],"zh-tw":["zh-hant","zh-hans"],"zh-yue":["yue"]})}(jQuery)},35773:()=>{!function(e){"use strict";var t={pluralRules:{ak:{one:"n = 0..1"},am:{one:"i = 0 or n = 1"},ar:{zero:"n = 0",one:"n = 1",two:"n = 2",few:"n % 100 = 3..10",many:"n % 100 = 11..99"},ars:{zero:"n = 0",one:"n = 1",two:"n = 2",few:"n % 100 = 3..10",many:"n % 100 = 11..99"},as:{one:"i = 0 or n = 1"},be:{one:"n % 10 = 1 and n % 100 != 11",few:"n % 10 = 2..4 and n % 100 != 12..14",many:"n % 10 = 0 or n % 10 = 5..9 or n % 100 = 11..14"},bh:{one:"n = 0..1"},bn:{one:"i = 0 or n = 1"},br:{one:"n % 10 = 1 and n % 100 != 11,71,91",two:"n % 10 = 2 and n % 100 != 12,72,92",few:"n % 10 = 3..4,9 and n % 100 != 10..19,70..79,90..99",many:"n != 0 and n % 1000000 = 0"},bs:{one:"v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14"},cs:{one:"i = 1 and v = 0",few:"i = 2..4 and v = 0",many:"v != 0"},cy:{zero:"n = 0",one:"n = 1",two:"n = 2",few:"n = 3",many:"n = 6"},da:{one:"n = 1 or t != 0 and i = 0,1"},dsb:{one:"v = 0 and i % 100 = 1 or f % 100 = 1",two:"v = 0 and i % 100 = 2 or f % 100 = 2",few:"v = 0 and i % 100 = 3..4 or f % 100 = 3..4"},fa:{one:"i = 0 or n = 1"},ff:{one:"i = 0,1"},fil:{one:"v = 0 and i = 1,2,3 or v = 0 and i % 10 != 4,6,9 or v != 0 and f % 10 != 4,6,9"},fr:{one:"i = 0,1"},ga:{one:"n = 1",two:"n = 2",few:"n = 3..6",many:"n = 7..10"},gd:{one:"n = 1,11",two:"n = 2,12",few:"n = 3..10,13..19"},gu:{one:"i = 0 or n = 1"},guw:{one:"n = 0..1"},gv:{one:"v = 0 and i % 10 = 1",two:"v = 0 and i % 10 = 2",few:"v = 0 and i % 100 = 0,20,40,60,80",many:"v != 0"},he:{one:"i = 1 and v = 0",two:"i = 2 and v = 0",many:"v = 0 and n != 0..10 and n % 10 = 0"},hi:{one:"i = 0 or n = 1"},hr:{one:"v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14"},hsb:{one:"v = 0 and i % 100 = 1 or f % 100 = 1",two:"v = 0 and i % 100 = 2 or f % 100 = 2",few:"v = 0 and i % 100 = 3..4 or f % 100 = 3..4"},hy:{one:"i = 0,1"},is:{one:"t = 0 and i % 10 = 1 and i % 100 != 11 or t != 0"},iu:{one:"n = 1",two:"n = 2"},iw:{one:"i = 1 and v = 0",two:"i = 2 and v = 0",many:"v = 0 and n != 0..10 and n % 10 = 0"},kab:{one:"i = 0,1"},kn:{one:"i = 0 or n = 1"},kw:{one:"n = 1",two:"n = 2"},lag:{zero:"n = 0",one:"i = 0,1 and n != 0"},ln:{one:"n = 0..1"},lt:{one:"n % 10 = 1 and n % 100 != 11..19",few:"n % 10 = 2..9 and n % 100 != 11..19",many:"f != 0"},lv:{zero:"n % 10 = 0 or n % 100 = 11..19 or v = 2 and f % 100 = 11..19",one:"n % 10 = 1 and n % 100 != 11 or v = 2 and f % 10 = 1 and f % 100 != 11 or v != 2 and f % 10 = 1"},mg:{one:"n = 0..1"},mk:{one:"v = 0 and i % 10 = 1 or f % 10 = 1"},mo:{one:"i = 1 and v = 0",few:"v != 0 or n = 0 or n != 1 and n % 100 = 1..19"},mr:{one:"i = 0 or n = 1"},mt:{one:"n = 1",few:"n = 0 or n % 100 = 2..10",many:"n % 100 = 11..19"},naq:{one:"n = 1",two:"n = 2"},nso:{one:"n = 0..1"},pa:{one:"n = 0..1"},pl:{one:"i = 1 and v = 0",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14",many:"v = 0 and i != 1 and i % 10 = 0..1 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 12..14"},prg:{zero:"n % 10 = 0 or n % 100 = 11..19 or v = 2 and f % 100 = 11..19",one:"n % 10 = 1 and n % 100 != 11 or v = 2 and f % 10 = 1 and f % 100 != 11 or v != 2 and f % 10 = 1"},pt:{one:"i = 0..1"},ro:{one:"i = 1 and v = 0",few:"v != 0 or n = 0 or n != 1 and n % 100 = 1..19"},ru:{one:"v = 0 and i % 10 = 1 and i % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14",many:"v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14"},se:{one:"n = 1",two:"n = 2"},sh:{one:"v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14"},shi:{one:"i = 0 or n = 1",few:"n = 2..10"},si:{one:"n = 0,1 or i = 0 and f = 1"},sk:{one:"i = 1 and v = 0",few:"i = 2..4 and v = 0",many:"v != 0"},sl:{one:"v = 0 and i % 100 = 1",two:"v = 0 and i % 100 = 2",few:"v = 0 and i % 100 = 3..4 or v != 0"},sma:{one:"n = 1",two:"n = 2"},smi:{one:"n = 1",two:"n = 2"},smj:{one:"n = 1",two:"n = 2"},smn:{one:"n = 1",two:"n = 2"},sms:{one:"n = 1",two:"n = 2"},sr:{one:"v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14"},ti:{one:"n = 0..1"},tl:{one:"v = 0 and i = 1,2,3 or v = 0 and i % 10 != 4,6,9 or v != 0 and f % 10 != 4,6,9"},tzm:{one:"n = 0..1 or n = 11..99"},uk:{one:"v = 0 and i % 10 = 1 and i % 100 != 11",few:"v = 0 and i % 10 = 2..4 and i % 100 != 12..14",many:"v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14"},wa:{one:"n = 0..1"},zu:{one:"i = 0 or n = 1"}},convertPlural:function(t,n){var o,i,a,s,r=new RegExp("\\d+=","i");if(!n||0===n.length)return"";for(a=0;a{!function(e){"use strict";var t;t=new RegExp("(?:([A-Za-zªµºÀ-ÖØ-öø-ʸʻ-ˁːˑˠ-ˤˮͰ-ͳͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-҂Ҋ-ԯԱ-Ֆՙ-՟ա-և։ः-हऻऽ-ीॉ-ौॎ-ॐक़-ॡ।-ঀংঃঅ-ঌএঐও-নপ-রলশ-হঽ-ীেৈোৌৎৗড়ঢ়য়-ৡ০-ৱ৴-৺ਃਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਾ-ੀਖ਼-ੜਫ਼੦-੯ੲ-ੴઃઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽ-ીૉોૌૐૠૡ૦-૰ૹଂଃଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽାୀେୈୋୌୗଡ଼ଢ଼ୟ-ୡ୦-୷ஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹாிுூெ-ைொ-ௌௐௗ௦-௲ఁ-ఃఅ-ఌఎ-ఐఒ-నప-హఽు-ౄౘ-ౚౠౡ౦-౯౿ಂಃಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽ-ೄೆ-ೈೊೋೕೖೞೠೡ೦-೯ೱೲംഃഅ-ഌഎ-ഐഒ-ഺഽ-ീെ-ൈൊ-ൌൎൗൟ-ൡ൦-൵൹-ൿංඃඅ-ඖක-නඳ-රලව-ෆා-ෑෘ-ෟ෦-෯ෲ-෴ก-ะาำเ-ๆ๏-๛ກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆ໐-໙ໜ-ໟༀ-༗༚-༴༶༸༾-ཇཉ-ཬཿ྅ྈ-ྌ྾-࿅࿇-࿌࿎-࿚က-ာေးျြဿ-ၗၚ-ၝၡ-ၰၵ-ႁႃႄႇ-ႌႎ-ႜ႞-ჅჇჍა-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚ፠-፼ᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙿᚁ-ᚚᚠ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱ᜵᜶ᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳាើ-ៅះៈ។-៚ៜ០-៩᠐-᠙ᠠ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᤣ-ᤦᤩ-ᤫᤰᤱᤳ-ᤸ᥆-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉ᧐-᧚ᨀ-ᨖᨙᨚ᨞-ᩕᩗᩡᩣᩤᩭ-ᩲ᪀-᪉᪐-᪙᪠-᪭ᬄ-ᬳᬵᬻᬽ-ᭁᭃ-ᭋ᭐-᭪᭴-᭼ᮂ-ᮡᮦᮧ᮪ᮮ-ᯥᯧᯪ-ᯬᯮ᯲᯳᯼-ᰫᰴᰵ᰻-᱉ᱍ-᱿᳀-᳇᳓᳡ᳩ-ᳬᳮ-ᳳᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼ‎ⁱⁿₐ-ₜℂℇℊ-ℓℕℙ-ℝℤΩℨK-ℭℯ-ℹℼ-ℿⅅ-ⅉⅎ⅏Ⅰ-ↈ⌶-⍺⎕⒜-ⓩ⚬⠀-⣿Ⰰ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯ⵰ⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〮〯〱-〵〸-〼ぁ-ゖゝ-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎ㆐-ㆺㇰ-㈜㈠-㉏㉠-㉻㉿-㊰㋀-㋋㋐-㋾㌀-㍶㍻-㏝㏠-㏾㐀-䶵一-鿕ꀀ-ꒌꓐ-ꘌꘐ-ꘫꙀ-ꙮꚀ-ꚝꚠ-ꛯ꛲-꛷Ꜣ-ꞇ꞉-ꞭꞰ-ꞷꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠤꠧ꠰-꠷ꡀ-ꡳꢀ-ꣃ꣎-꣙ꣲ-ꣽ꤀-ꤥ꤮-ꥆꥒ꥓꥟-ꥼꦃ-ꦲꦴꦵꦺꦻꦽ-꧍ꧏ-꧙꧞-ꧤꧦ-ꧾꨀ-ꨨꨯꨰꨳꨴꩀ-ꩂꩄ-ꩋꩍ꩐-꩙꩜-ꩻꩽ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫫꫮ-ꫵꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭥꭰ-ꯤꯦꯧꯩ-꯬꯰-꯹가-힣ힰ-ퟆퟋ-ퟻ-舘並-龎ff-stﬓ-ﬗA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ]|\ud800[\udc00-\udc0b]|\ud800[\udc0d-\udc26]|\ud800[\udc28-\udc3a]|𐀼|𐀽|\ud800[\udc3f-\udc4d]|\ud800[\udc50-\udc5d]|\ud800[\udc80-\udcfa]|𐄀|𐄂|\ud800[\udd07-\udd33]|\ud800[\udd37-\udd3f]|\ud800[\uddd0-\uddfc]|\ud800[\ude80-\ude9c]|\ud800[\udea0-\uded0]|\ud800[\udf00-\udf23]|\ud800[\udf30-\udf4a]|\ud800[\udf50-\udf75]|\ud800[\udf80-\udf9d]|\ud800[\udf9f-\udfc3]|\ud800[\udfc8-\udfd5]|\ud801[\udc00-\udc9d]|\ud801[\udca0-\udca9]|\ud801[\udd00-\udd27]|\ud801[\udd30-\udd63]|𐕯|\ud801[\ude00-\udf36]|\ud801[\udf40-\udf55]|\ud801[\udf60-\udf67]|𑀀|\ud804[\udc02-\udc37]|\ud804[\udc47-\udc4d]|\ud804[\udc66-\udc6f]|\ud804[\udc82-\udcb2]|𑂷|𑂸|\ud804[\udcbb-\udcc1]|\ud804[\udcd0-\udce8]|\ud804[\udcf0-\udcf9]|\ud804[\udd03-\udd26]|𑄬|\ud804[\udd36-\udd43]|\ud804[\udd50-\udd72]|\ud804[\udd74-\udd76]|\ud804[\udd82-\uddb5]|\ud804[\uddbf-\uddc9]|𑇍|\ud804[\uddd0-\udddf]|\ud804[\udde1-\uddf4]|\ud804[\ude00-\ude11]|\ud804[\ude13-\ude2e]|𑈲|𑈳|𑈵|\ud804[\ude38-\ude3d]|\ud804[\ude80-\ude86]|𑊈|\ud804[\ude8a-\ude8d]|\ud804[\ude8f-\ude9d]|\ud804[\ude9f-\udea9]|\ud804[\udeb0-\udede]|\ud804[\udee0-\udee2]|\ud804[\udef0-\udef9]|𑌂|𑌃|\ud804[\udf05-\udf0c]|𑌏|𑌐|\ud804[\udf13-\udf28]|\ud804[\udf2a-\udf30]|𑌲|𑌳|\ud804[\udf35-\udf39]|\ud804[\udf3d-\udf3f]|\ud804[\udf41-\udf44]|𑍇|𑍈|\ud804[\udf4b-\udf4d]|𑍐|𑍗|\ud804[\udf5d-\udf63]|\ud805[\udc80-\udcb2]|𑒹|\ud805[\udcbb-\udcbe]|𑓁|\ud805[\udcc4-\udcc7]|\ud805[\udcd0-\udcd9]|\ud805[\udd80-\uddb1]|\ud805[\uddb8-\uddbb]|𑖾|\ud805[\uddc1-\udddb]|\ud805[\ude00-\ude32]|𑘻|𑘼|𑘾|\ud805[\ude41-\ude44]|\ud805[\ude50-\ude59]|\ud805[\ude80-\udeaa]|𑚬|𑚮|𑚯|𑚶|\ud805[\udec0-\udec9]|\ud805[\udf00-\udf19]|𑜠|𑜡|𑜦|\ud805[\udf30-\udf3f]|\ud806[\udca0-\udcf2]|𑣿|\ud806[\udec0-\udef8]|\ud808[\udc00-\udf99]|\ud809[\udc00-\udc6e]|\ud809[\udc70-\udc74]|\ud809[\udc80-\udd43]|\ud80c[\udc00-\udfff]|\ud80d[\udc00-\udc2e]|\ud811[\udc00-\ude46]|\ud81a[\udc00-\ude38]|\ud81a[\ude40-\ude5e]|\ud81a[\ude60-\ude69]|𖩮|𖩯|\ud81a[\uded0-\udeed]|𖫵|\ud81a[\udf00-\udf2f]|\ud81a[\udf37-\udf45]|\ud81a[\udf50-\udf59]|\ud81a[\udf5b-\udf61]|\ud81a[\udf63-\udf77]|\ud81a[\udf7d-\udf8f]|\ud81b[\udf00-\udf44]|\ud81b[\udf50-\udf7e]|\ud81b[\udf93-\udf9f]|𛀀|𛀁|\ud82f[\udc00-\udc6a]|\ud82f[\udc70-\udc7c]|\ud82f[\udc80-\udc88]|\ud82f[\udc90-\udc99]|𛲜|𛲟|\ud834[\udc00-\udcf5]|\ud834[\udd00-\udd26]|\ud834[\udd29-\udd66]|\ud834[\udd6a-\udd72]|𝆃|𝆄|\ud834[\udd8c-\udda9]|\ud834[\uddae-\udde8]|\ud834[\udf60-\udf71]|\ud835[\udc00-\udc54]|\ud835[\udc56-\udc9c]|𝒞|𝒟|𝒢|𝒥|𝒦|\ud835[\udca9-\udcac]|\ud835[\udcae-\udcb9]|𝒻|\ud835[\udcbd-\udcc3]|\ud835[\udcc5-\udd05]|\ud835[\udd07-\udd0a]|\ud835[\udd0d-\udd14]|\ud835[\udd16-\udd1c]|\ud835[\udd1e-\udd39]|\ud835[\udd3b-\udd3e]|\ud835[\udd40-\udd44]|𝕆|\ud835[\udd4a-\udd50]|\ud835[\udd52-\udea5]|\ud835[\udea8-\udeda]|\ud835[\udedc-\udf14]|\ud835[\udf16-\udf4e]|\ud835[\udf50-\udf88]|\ud835[\udf8a-\udfc2]|\ud835[\udfc4-\udfcb]|\ud836[\udc00-\uddff]|\ud836[\ude37-\ude3a]|\ud836[\ude6d-\ude74]|\ud836[\ude76-\ude83]|\ud836[\ude85-\ude8b]|\ud83c[\udd10-\udd2e]|\ud83c[\udd30-\udd69]|\ud83c[\udd70-\udd9a]|\ud83c[\udde6-\ude02]|\ud83c[\ude10-\ude3a]|\ud83c[\ude40-\ude48]|🉐|🉑|[\ud840-\ud868][\udc00-\udfff]|\ud869[\udc00-\uded6]|\ud869[\udf00-\udfff]|[\ud86a-\ud86c][\udc00-\udfff]|\ud86d[\udc00-\udf34]|\ud86d[\udf40-\udfff]|\ud86e[\udc00-\udc1d]|\ud86e[\udc20-\udfff]|[\ud86f-\ud872][\udc00-\udfff]|\ud873[\udc00-\udea1]|\ud87e[\udc00-\ude1d]|[\udb80-\udbbe][\udc00-\udfff]|\udbbf[\udc00-\udffd]|[\udbc0-\udbfe][\udc00-\udfff]|\udbff[\udc00-\udffd])|([֐־׀׃׆׈-׿߀-ߪߴߵߺ-ࠕࠚࠤࠨ࠮-ࡘ࡜-࢟‏יִײַ-ﬨשׁ-ﭏ؈؋؍؛-ي٭-ٯٱ-ەۥۦۮۯۺ-ܐܒ-ܯ݋-ޥޱ-޿ࢠ-࣢ﭐ-ﴽ﵀-﷏ﷰ-﷼﷾﷿ﹰ-﻾]|\ud802[\udc00-\udd1e]|\ud802[\udd20-\ude00]|𐨄|\ud802[\ude07-\ude0b]|\ud802[\ude10-\ude37]|\ud802[\ude3b-\ude3e]|\ud802[\ude40-\udee4]|\ud802[\udee7-\udf38]|\ud802[\udf40-\udfff]|\ud803[\udc00-\ude5f]|\ud803[\ude7f-\udfff]|\ud83a[\udc00-\udccf]|\ud83a[\udcd7-\udfff]|\ud83b[\udc00-\uddff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\udf00-\udfff]|\ud83b[\ude00-\udeef]|\ud83b[\udef2-\udeff]))"),e.extend(e.i18n.parser.emitter,{bidi:function(e){var n,o=(n=e[0].match(t))?void 0===n[2]?"ltr":"rtl":null;return"ltr"===o?"‪"+e[0]+"‬":"rtl"===o?"‫"+e[0]+"‬":e[0]}})}(jQuery)},41669:e=>{"use strict";e.exports=jQuery},46905:()=>{!function(e){"use strict";var t=function(){this.language=e.i18n.languages[String.locale]||e.i18n.languages.default};t.prototype={constructor:t,emit:function(t,n){var o,i,a,s=this;switch(typeof t){case"string":case"number":o=t;break;case"object":if(i=e.map(t.slice(1),(function(e){return s.emit(e,n)})),a=t[0].toLowerCase(),"function"!=typeof s[a])throw new Error('unknown operation "'+a+'"');o=s[a](i,n);break;case"undefined":o="";break;default:throw new Error("unexpected type in AST: "+typeof t)}return o},concat:function(t){var n="";return e.each(t,(function(e,t){n+=t})),n},replace:function(e,t){var n=parseInt(e[0],10);return n{!function(e){"use strict";var t=function(t){this.options=e.extend({},e.i18n.parser.defaults,t),this.language=e.i18n.languages[String.locale]||e.i18n.languages.default,this.emitter=e.i18n.parser.emitter};t.prototype={constructor:t,simpleParse:function(e,t){return e.replace(/\$(\d+)/g,(function(e,n){var o=parseInt(n,10)-1;return void 0!==t[o]?t[o]:"$"+n}))},parse:function(t,n){return t.indexOf("{{")<0?this.simpleParse(t,n):(this.emitter.language=e.i18n.languages[e.i18n().locale]||e.i18n.languages.default,this.emitter.emit(this.ast(t),n))},ast:function(e){var t,n,o,i,a,s,r,d,l,u,c,f,m,h,g,p,v,w,b,y=0;function k(e){return function(){var t,n;for(t=0;t1?["CONCAT"].concat(e):e[0]}function L(){var e=C([f,n,E]);return null===e?null:[e[0],e[2]]}function T(){var e=C([f,n,p]);return null===e?null:[e[0],e[2]]}function I(){var e=C([m,c,h]);return null===e?null:e[1]}if(t=S("|"),n=S(":"),o=S("\\"),i=x(/^./),a=S("$"),s=x(/^\d+/),r=x(/^[^{}[\]$\\]/),d=x(/^[^{}[\]$\\|]/),k([_,x(/^[^{}[\]$\s]/)]),l=k([_,d]),u=k([_,r]),w=x(/^[ !"$&'()*,./0-9;=?@A-Z^_`a-z~\x80-\xFF+-]+/),b=function(e){return e.toString()},f=function(){var e=w();return null===e?null:b(e)},c=k([function(){var e=C([k([L,T]),$(0,B)]);return null===e?null:e[0].concat(e[1])},function(){var e=C([f,$(0,B)]);return null===e?null:[e[0]].concat(e[1])}]),m=S("{{"),h=S("}}"),g=k([I,E,function(){var e=$(1,u)();return null===e?null:e.join("")}]),p=k([I,E,function(){var e=$(1,l)();return null===e?null:e.join("")}]),null===(v=function(){var e=$(0,g)();return null===e?null:["CONCAT"].concat(e)}())||y!==e.length)throw new Error("Parse error at position "+y.toString()+" in input: "+e);return v}},e.extend(e.i18n.parser,new t)}(jQuery)},51399:()=>{!function(e){"use strict";var t=function(){this.messages={},this.sources={}};t.prototype={load:function(t,n){var o,i,a=null,s=[],r=this;if("string"==typeof t)return e.i18n.log("Loading messages from: "+t),(o=t,i=e.Deferred(),e.getJSON(o).done(i.resolve).fail((function(t,n,a){e.i18n.log("Error in loading messages from "+o+" Exception: "+a),i.resolve()})),i.promise()).done((function(e){r.set(n,e)})).promise();if(n)return r.set(n,t),e.Deferred().resolve();for(a in t)Object.prototype.hasOwnProperty.call(t,a)&&(n=a,s.push(r.load(t[a],n)));return e.when.apply(e,s)},set:function(t,n){this.messages[t]?this.messages[t]=e.extend(this.messages[t],n):this.messages[t]=n},get:function(e,t){return this.messages[e]&&this.messages[e][t]}},e.extend(e.i18n.messageStore,new t)}(jQuery)},52329:()=>{!function(e){"use strict";var t,n,o,i=Array.prototype.slice;(t=function(n){this.options=e.extend({},t.defaults,n),this.parser=this.options.parser,this.locale=this.options.locale,this.messageStore=this.options.messageStore,this.languages={}}).prototype={localize:function(t){var n,o,i,a,s,r;for(i=this.locale,a=0;i;){o=(n=i.split("-")).length;do{if(s=n.slice(0,o).join("-"),r=this.messageStore.get(s,t))return r;o--}while(o);if("en"===i)break;i=e.i18n.fallbacks[this.locale]&&e.i18n.fallbacks[this.locale][a]||this.options.fallbackLocale,e.i18n.log("Trying fallback locale for "+this.locale+": "+i+" ("+t+")"),a++}return""},destroy:function(){e.removeData(document,"i18n")},load:function(t,n){var o,i,a,s={};if(t||n||(t="i18n/"+e.i18n().locale+".json",n=e.i18n().locale),"string"==typeof t&&"json"!==t.split("?")[0].split(".").pop()){for(s[n]=t+"/"+n+".json",o=(e.i18n.fallbacks[n]||[]).concat(this.options.fallbackLocale),i=0;i{!function(e){e.idleTimer=function(t,n,o){o=e.extend({startImmediately:!0,idle:!1,enabled:!0,timeout:3e4,events:"mousemove keydown DOMMouseScroll mousewheel mousedown touchstart touchmove"},o),n=n||document;var i=function(t){"number"==typeof t&&(t=void 0);var a=e.data(t||n,"idleTimerObj");a.idle=!a.idle;var s=+new Date-a.olddate;if(a.olddate=+new Date,a.idle&&s{"use strict";function o(){return!!document.querySelector("body.pretext")}function i(e,t,n,i){var a=window.location.pathname;-1!==a.indexOf("?")&&(a=a.substring(0,a.lastIndexOf("?")));let s=o();var r={lastPageUrl:a,lastPageScrollLocation:Math.round($(window).scrollTop()),completionFlag:e,pageLoad:t,markingComplete:n,markingIncomplete:i,course:eBookConfig.course,isPtxBook:s};$(document).ajaxError((function(e,t,n,o){console.log("Request Failed for "+n.url),console.log(e)})),jQuery.ajax({url:`${eBookConfig.new_server_prefix}/logger/updatelastpage`,contentType:"application/json; charset=utf-8",dataType:"json",data:JSON.stringify(r),method:"POST",async:!0})}n.d(t,{w:()=>p}),n(67375),n(66495),n(52329),n(39161),n(46905),n(23836),n(51399),n(49276),n(35773),n(52754),n(3403),n(83057),$(document).on("runestone:login",(function(){var e;!function(){if(!window.location.href.match(/(\/index.html|toctree.html|genindex.html|navhelp.html|toc.html|assignments.html|Exercises.html)/)){var e=window.location.pathname;-1!==e.indexOf("?")&&(e=e.substring(0,e.lastIndexOf("?")));var t={lastPageUrl:e,isPtxBook:o()};jQuery.ajax({url:`${eBookConfig.new_server_prefix}/logger/getCompletionStatus`,data:t,async:!1}).done((function(e){if("None"!=e){var t,n;1==e.detail[0].completionStatus?(t="buttonConfirmCompletion",n=" Completed. Well Done!"):(t="buttonAskCompletion",n="Mark as Completed");let o=document.querySelector("#scprogresscontainer");o&&o.classList.add("ptx-runestone-container"),$("#scprogresscontainer").append('
    ")}}))}}(),void 0!==(e=$.getUrlVar("lastPosition"))&&($("body").append(''),$("html, body").animate({scrollTop:parseInt(e)},1e3)),function(){if(!window.location.href.match(/(index.html|genindex.html|navhelp.html|toc.html|assignments.html|Exercises.html|toctree.html)/)){var e,t=-$("#navLinkBgRight").outerWidth()-5;$("#completionButton").hasClass("buttonAskCompletion")?e=t+70:$("#completionButton").hasClass("buttonConfirmCompletion")&&(e=0);var n=$("#relations-next").css("right"),o=-(t+35);$("#navLinkBgRight").css("right",t).show();var a=!1;$(window).scroll((function(){$(window).scrollTop()+$(window).height()==$(document).height()?($("#navLinkBgRight").animate({right:e},200),$("#navLinkBgLeft").animate({left:"0px"},200),$("#completionButton").hasClass("buttonConfirmCompletion")&&$("#relations-next").animate({right:o},200),a=!0):a&&($("#navLinkBgRight").animate({right:t},200),$("#navLinkBgLeft").animate({left:"-65px"},200),$("#relations-next").animate({right:n}),a=!1)}));var s=0;i(s=$("#completionButton").hasClass("buttonAskCompletion")?0:1,!0,!1,!1),$("#completionButton").on("click",(function(){var a=!1,r=!1;$(this).hasClass("buttonAskCompletion")?($(this).removeClass("buttonAskCompletion").addClass("buttonConfirmCompletion").html(" Completed. Well Done!"),$("#navLinkBgRight").animate({right:0}),$("#relations-next").animate({right:o}),e=0,s=1,a=!0):$(this).hasClass("buttonConfirmCompletion")&&($(this).removeClass("buttonConfirmCompletion").addClass("buttonAskCompletion").html("Mark as Completed"),e=t+70,$("#navLinkBgRight").animate({right:e}),$("#relations-next").animate({right:n}),s=0,r=!0),i(s,!1,a,r)}))}}(),function(){if(-1!=window.location.href.toLowerCase().indexOf("toc.html")||-1!=window.location.href.toLowerCase().indexOf("index.html")||-1!=window.location.href.toLowerCase().indexOf("frontmatter")){o()||jQuery.get(`${eBookConfig.new_server_prefix}/logger/getAllCompletionStatus`,(function(e){var t;if("None"!=e){t=e.detail;var n=$("#main-content div li a");$.each(t,(function(e,t){for(var o=0;o- Completed this topic on '+t.endDate+"").children().first().hover((function(){$(this).next(".infoTextCompleted").show()}),(function(){$(this).next(".infoTextCompleted").hide()})):0==t.completionStatus&&$(n[o].parentElement).addClass("active").append('Last read this topic on '+t.endDate+"").children().first().hover((function(){$(this).next(".infoTextActive").show()}),(function(){$(this).next(".infoTextActive").hide()})))}))}}));var e={course:eBookConfig.course};jQuery.get(`${eBookConfig.new_server_prefix}/logger/getlastpage`,e,(function(e){var t;"None"!=e&&null!=(t=e.detail).lastPageChapter&&$("#continue-reading").show().html('
    You were Last Reading: '+t.lastPageChapter+(t.lastPageSubchapter?" > "+t.lastPageSubchapter:"")+' Continue Reading
    ')}))}}()})),$.extend({getUrlVars:function(){for(var e,t=[],n=window.location.search.slice(window.location.search.indexOf("?")+1).split("&"),o=0;o{t.addEventListener("click",(function(){let n=t.getAttribute("data-knowl");e.logBookEvent({event:"knowl",act:"click",div_id:n})}))})),document.querySelectorAll("details.born-hidden-knowl").forEach((t=>{t.addEventListener("toggle",(function(){if(t.open){let n=t.id;e.logBookEvent({event:"knowl",act:"open",div_id:n})}}))})),document.querySelectorAll(".sagecell_evalButton").forEach((t=>{t.addEventListener("click",(function(){let n=t.closest(".ptx-sagecell"),o=n?n.querySelector(".sagecell_input"):null,i=(o&&o.textContent,n?n.id:null);i?e.logBookEvent({event:"sage",act:"run",div_id:i}):console.warn("Could not find container or div_id for sagecell button")}))})),"undefined"==typeof eBookConfig||eBookConfig.isInstructor||document.querySelectorAll(".commentary").forEach((e=>{e.style.display="none"}))}();let e=document.getElementById("primary-navbar-sticky-wrapper");e&&(e.style.overflow="visible")})),n(19695);var s=n(98098);class r extends a.A{constructor(){super(),this.initSplice()}initSplice(){window.addEventListener("message",(async e=>{var t,n,o=this.sendingIframe(e);if(console.log(`SpliceWrapper: received message subject: ${e.data.subject} from iframe: ${o?o.id:"unknown"}`),"SPLICE.reportScoreAndState"==e.data.subject)this.handleScoreAndState(e,o);else if("SPLICE.sendEvent"==e.data.subject)this.handleSpliceEvent(e,o);else if("SPLICE.getState"==e.data.subject)await this.handleGetState(e,o);else if("https://www.myopenmath.com"===e.origin&&"string"==typeof e.data&&-1!=e.data.indexOf("lti.ext.imathas.result")){let o=JSON.parse(e.data),i=(t=o.jwt.split(".")[1].replace(/-/g,"+").replace(/_/g,"/"),n=decodeURIComponent(window.atob(t).split("").map((function(e){return"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)})).join("")),JSON.parse(n));console.log("Result received from frame "+o.frame_id+" with score "+i.score)}}))}getUniqueID(e,t){if(t){let e=t.closest("[data-component]");if(e)return e.id}let n=e.data.activity_id;return n||(t?n=t.src:(n="unknown",console.error("Could not find iframe that sent the SPLICE event"))),n}handleScoreAndState(e,t){console.log("Got SPLICE.reportScoreAndState"),console.log(e.data.activity_id),console.log(e.data.score),console.log(e.data.state);let n=this.getUniqueID(e,t);this.logBookEvent({event:e.data.subject,div_id:n,act:`score: ${e.data.score}`,score:e.data.score,percent:e.data.score,correct:1==e.data.score,answer:JSON.stringify(e.data.state)})}sendingIframe(e){for(const t of document.getElementsByTagName("iframe"))if(t.contentWindow===e.source)return t}async getSavedState(e){try{const t=await fetch("/ns/assessment/results",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({div_id:e,course:eBookConfig.course,event:"SPLICE.getState"})});if(!t.ok)throw new Error(`HTTP error! status: ${t.status}`);return await t.json()}catch(e){return console.error("Error fetching SPLICE state:",e),null}}async handleGetState(e,t){console.log("Got SPLICE.getState"),console.log(e.data.activity_id),console.log(e.data.state);let n=this.getUniqueID(e,t),o=(await this.getSavedState(n)).detail.answer;e.source.postMessage({message_id:e.data.message_id,subject:"SPLICE.getState.response",state:o},"*")}handleSpliceEvent(e,t){console.log("Got SPLICE.sendEvent"),console.log(e.data.activity_id),console.log(e.data.name);let n=this.getUniqueID(e,t);this.logBookEvent({event:e.data.subject,div_id:n,act:e.data.name||"unknown"})}checkLocalStorage(){}setLocalStorage(){}restoreAnswers(){}disableInteraction(){}}const d={activecode:()=>Promise.all([n.e(249),n.e(296),n.e(625),n.e(764),n.e(877)]).then(n.bind(n,73565)),ble:()=>n.e(817).then(n.bind(n,29817)),clickablearea:()=>Promise.all([n.e(529),n.e(198)]).then(n.bind(n,58529)),codelens:()=>Promise.all([n.e(764),n.e(412)]).then(n.bind(n,76412)),datafile:()=>n.e(580).then(n.bind(n,33580)),dragndrop:()=>Promise.all([n.e(759),n.e(621)]).then(n.bind(n,56759)),fillintheblank:()=>Promise.all([n.e(466),n.e(294)]).then(n.bind(n,64466)),groupsub:()=>Promise.all([n.e(28),n.e(616)]).then(n.bind(n,24616)),khanex:()=>n.e(340).then(n.bind(n,28340)),lp_build:()=>Promise.all([n.e(296),n.e(576)]).then(n.bind(n,77576)),matching:()=>Promise.all([n.e(566),n.e(737)]).then(n.bind(n,14566)),multiplechoice:()=>Promise.all([n.e(919),n.e(350)]).then(n.bind(n,9919)),hparsons:()=>Promise.all([n.e(249),n.e(669),n.e(486)]).then(n.bind(n,71182)),parsons:()=>n.e(39).then(n.bind(n,52420)),poll:()=>n.e(168).then(n.bind(n,11168)),quizly:()=>n.e(128).then(n.bind(n,34128)),reveal:()=>n.e(460).then(n.bind(n,67460)),selectquestion:()=>Promise.all([n.e(662),n.e(380)]).then(n.bind(n,10662)),shortanswer:()=>Promise.all([n.e(819),n.e(850)]).then(n.bind(n,48819)),showeval:()=>n.e(824).then(n.bind(n,8824)),simple_sensor:()=>n.e(126).then(n.bind(n,50126)),spreadsheet:()=>Promise.all([n.e(131),n.e(186)]).then(n.bind(n,97186)),tabbedStuff:()=>n.e(442).then(n.bind(n,76442)),timedAssessment:()=>Promise.all([n.e(249),n.e(296),n.e(625),n.e(764),n.e(877),n.e(466),n.e(759),n.e(919),n.e(566),n.e(662),n.e(529),n.e(819),n.e(420),n.e(268)]).then(n.bind(n,46424)),wavedrom:()=>Promise.all([n.e(770),n.e(640)]).then(n.bind(n,45640)),webwork:()=>n.e(680).then(n.bind(n,84680)),youtube:()=>n.e(915).then(n.bind(n,86915)),doenet:()=>Promise.resolve()},l={},u=10,c=[];let f=0;async function m(){if(0===c.length)return;if(Date.now()-fe.component_name)));const t=e.map((async e=>{try{return await d[e.component_name](),console.log(`Runestone component ${e.component_name} has been loaded`),e}catch(t){e.reject(t)}})),n=await Promise.all(t);try{n.forEach((function(e){e&&e.resolve()}))}catch(e){console.error(e)}}let h=new Promise((e=>$(document).on("runestone:pre-login-complete",e)));function g(){const e=new Set($("[data-component]").map(((e,t)=>$(t).attr("data-component"))).get());document.querySelector(".webwork-button")&&e.add("webwork");const t=[...e].map((e=>{let t;console.log(`Loading Runestone component: ${e}`);try{t=(d[e]||(()=>Promise.resolve()))()}catch(t){console.error(`Error loading ${e}:`,t)}return t.error=t=>console.error(`Error in ${e}:`,t),t}));Promise.all([h,...t]).then((function(){document.body.dataset.reactInUse||document.dispatchEvent(new CustomEvent("runestone:login-complete"))}))}async function p(e){if(l[e])return l[e];console.log(`Runestone component ${e} is being queued for import`);const t=function(e){let t=null,n=null;const o=new Promise(((e,o)=>{t=e,n=o})),i={component_name:e,resolve:t,reject:n};return c.push(i),window.setTimeout(m,u+1),o}(e);return l[e]=t,t}h.then((()=>{console.log("Runestone pre-login complete")})),$(document).ready(g);const v=document.currentScript.src;n.p=v.substring(0,v.lastIndexOf("/")+1),new r;const w={};w.runestone_import=p,w.runestone_auto_import=g,w.getSwitch=function(){const e=document.querySelector('.theme-switch input[type="checkbox"]'),t=localStorage.getItem("theme")?localStorage.getItem("theme"):null;t&&(document.documentElement.setAttribute("data-theme",t),"dark"===t&&(e.checked=!0))},w.switchTheme=function(){1==document.getElementById("checkbox").checked?(document.documentElement.setAttribute("data-theme","dark"),localStorage.setItem("theme","dark")):(document.documentElement.setAttribute("data-theme","light"),localStorage.setItem("theme","light"))},w.popupScratchAC=async function(){if(await p("activecode"),!eBookConfig.scratchDiv){window.ACFactory.createScratchActivecode();let e=eBookConfig.scratchDiv;window.componentMap[e]=ACFactory.createActiveCode($(`#${e}`)[0],eBookConfig.acDefaultLanguage),eBookConfig.isLoggedIn&&window.componentMap[e].enableSaveLoad()}setTimeout((()=>{window.ACFactory.toggleScratchActivecode()}),100)},w.renderOneComponent=s.yT,window.componentMap={},window.runestoneComponents=w},78673:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var o=n(83057),i=["parsonsMove","showeval","video","poll","view_toggle","dashboard","selectquestion","codelens","peer","shortanswer"];class a{constructor(e){this.component_ready_promise=new Promise((e=>this._component_ready_resolve_fn=e)),this.optional=!1,void 0===window.allComponents&&(window.allComponents=[]),window.allComponents.push(this),e&&(this.sid=e.sid,this.graderactive=e.graderactive,this.showfeedback=!0,e.timed&&(this.isTimed=!0),e.enforceDeadline&&(this.deadline=e.deadline),this.optional=this.parseBooleanAttribute(e.orig,"data-optional"),e.selector_id&&(this.selector_id=e.selector_id),void 0!==e.assessmentTaken?this.assessmentTaken=e.assessmentTaken:this.assessmentTaken=!0,void 0!==e.timedWrapper?this.timedWrapper=e.timedWrapper:location.href.indexOf("doAssignment")>=0?this.timedWrapper=$("h1#assignment_name").text():this.timedWrapper=null,$(e.orig).data("question_label")&&(this.question_label=$(e.orig).data("question_label")),this.is_toggle=e.is_toggle,this.is_select=e.is_select),this.mjelements=[];let t=this;if(this.mjReady=new Promise((function(e,n){t.mjresolver=e})),this.aQueue=new r,e&&void 0!==e.preamble){this.preamble=e.preamble;let t=document.createElement("div");t.classList.add("hidden-content"),t.classList.add("process-math"),t.innerHTML="\\("+this.preamble+"\\)",e.orig.appendChild(t),t.id="ltx_preamble",t.style.display="none",this.aQueue.preamble=t}this.jsonHeaders=new Headers({"Content-type":"application/json; charset=utf-8",Accept:"application/json"})}parseBooleanAttribute(e,t){const n=e.getAttribute(t);if(null===n)return!1;const o=n.toLowerCase();return"false"!==o&&"no"!==o}async logBookEvent(e){if(this.graderactive)return;let t;if(e.course_name=eBookConfig.course,e.clientLoginStatus=eBookConfig.isLoggedIn,e.timezoneoffset=(new Date).getTimezoneOffset()/60,this.selector_id&&(e.selector_id=this.selector_id),"number"==typeof this.percent&&(e.percent=this.percent),window.assignmentId&&(e.assignment_id=window.assignmentId),eBookConfig.isLoggedIn&&eBookConfig.useRunestoneServices&&eBookConfig.logLevel>0&&(t=this.postLogMessage(e)),!this.isTimed||eBookConfig.debug){let t=eBookConfig.isLoggedIn?"Save":"Not";console.log(`${t} logging event `+JSON.stringify(e))}return this.selector_id&&(e.div_id=this.selector_id.replace("-toggleSelectedQuestion",""),e.event="selectquestion",e.act="interaction",this.postLogMessage(e)),"function"==typeof o.X.updateProgress&&"edit"!=e.act&&0==this.optional&&o.X.updateProgress(e.div_id),-1===i.indexOf(e.event)&&this.decorateStatus(),t}async postLogMessage(e){var t;let n=new Request(`${eBookConfig.new_server_prefix}/logger/bookevent`,{method:"POST",headers:this.jsonHeaders,body:JSON.stringify(e)});try{var o=await fetch(n);if(!o.ok){if(422===o.status)throw t=await o.json(),console.log(JSON.stringify(t.detail,null,4)),new Error("Unprocessable Request");if(401==o.status)throw t=await o.json(),console.log(`Missing authentication token ${t.detail}`),new Error("Missing authentication token");throw new Error(`Failed to save the log entry\n Status: ${o.status}`)}let e=(t=await o.json()).detail,i=null;if(this.selector_id){let e=this.selector_id.replace("-toggleSelectedQuestion","");i=document.getElementById(`${e}_score`)}else i=document.getElementById(`${this.divid}_score`);i&&!this.isTimed&&e.score&&this.updateScores(i,e)}catch(e){let n="none";t&&t.detail&&(n=t.detail),eBookConfig.useRunestoneServices&&alert(`Error: Your action was not saved!\n The error was ${e}\n Status Code: ${o.status}\n Detail: ${JSON.stringify(n,null,4)}.\n Please report this error!`),console.log(`Error: ${e} Detail: ${n} Status Code: ${o.status}`)}return t}updateScores(e,t){if(!t.assigned||null===t.score)return void(document.getElementById(`${this.divid}_message`).innerHTML="Score not updated. Submissions are closed.");let n=e.getElementsByClassName("qscore")[0];n&&(n.innerHTML=t.score.toFixed(1));let o=document.getElementsByClassName("qscore"),i=document.getElementsByClassName("qmaxscore"),a=0,s=0;for(let e=0;e0){let n=new Request(`${eBookConfig.new_server_prefix}/logger/runlog`,{method:"POST",headers:this.jsonHeaders,body:JSON.stringify(e)}),o=await fetch(n);o.ok?t=await o.json():(t=await o.json(),eBookConfig.useRunestoneServices?alert(`Failed to save your code\n Status is ${o.status}\n Detail: ${JSON.stringify(t.detail,null,4)}`):console.log(`Did not save the code.\n Status: ${o.status}\n Detail: ${JSON.stringify(t.detail,null,4)}`))}return this.isTimed&&!eBookConfig.debug||console.log("running "+JSON.stringify(e)),"function"==typeof o.X.updateProgress&&0==this.optional&&o.X.updateProgress(e.div_id),t}}async checkServer(e,t=!1){let n=this;if(this.checkServerComplete=new Promise((function(e,t){n.csresolver=e})),eBookConfig.isLoggedIn&&(this.useRunestoneServices||this.graderactive)){let t={};if(t.div_id=this.divid,t.course=eBookConfig.course,t.event=e,this.graderactive&&this.deadline&&(t.deadline=this.deadline,t.rawdeadline=this.rawdeadline,t.tzoff=this.tzoff),this.sid&&(t.sid=this.sid),t.div_id&&t.course&&t.event||console.log(`A required field is missing data ${t.div_id}:${t.course}:${t.event}`),eBookConfig.practice_mode||eBookConfig.peer||!this.assessmentTaken)this.loadData({}),console.log("resolving checkServer no answer given"),this.csresolver("not taken");else{let e=new Request(`${eBookConfig.new_server_prefix}/assessment/results`,{method:"POST",body:JSON.stringify(t),headers:this.jsonHeaders});try{let n=await fetch(e);console.log(`Response from server: ${n.status}`),n.ok?(t=await n.json(),t=t.detail,console.log(`Data from server: ${JSON.stringify(t)} calling repopulateFromStorage`),this.repopulateFromStorage(t),this.attempted=!0,void 0!==t.correct?this.correct=t.correct:this.correct=null,console.log("resolving checkServer with server data"),this.csresolver("server")):(console.log(`HTTP Error getting results: ${n.statusText}`),this.checkLocalStorage(),console.log("resolving checkServer with local data"),this.csresolver("local"))}catch(e){console.log(`Error getting results: ${e}`);try{this.checkLocalStorage()}catch(e){console.log(e)}}}}else this.checkLocalStorage(),console.log("resolving checkServer with local data"),this.csresolver("local");t&&this.indicate_component_ready()}indicate_component_ready(){this.containerDiv.classList.add("runestone-component-ready"),this._component_ready_resolve_fn()}loadData(e){return null}repopulateFromStorage(e){null!==e&&"no data"!==e&&this.shouldUseServer(e)?(this.restoreAnswers(e),this.setLocalStorage(e)):this.checkLocalStorage(),this.decorateStatus()}shouldUseServer(e){if("T"===e.correct||!0===e.correct||0===localStorage.length||!0===this.graderactive||this.isTimed)return!0;let t,n=localStorage.getItem(this.localStorageKey());if(null===n)return!0;try{t=JSON.parse(n)}catch(e){return console.log(e.message),localStorage.removeItem(this.localStorageKey()),!0}if(e.answer==t.answer)return!0;let o=new Date(t.timestamp);return new Date(e.timestamp)>=o}localStorageKey(){return eBookConfig.email+":"+eBookConfig.course+":"+this.divid+"-given"}addCaption(e){if(!this.isTimed){var t=document.createElement("p");this.question_label?(this.caption=eBookConfig.useRunestoneServices?`Activity: ${this.question_label} ${this.caption} (${this.divid})`:`Activity: ${this.question_label} ${this.caption}`,$(t).html(this.caption),$(t).addClass(`${e}_caption`)):($(t).html(eBookConfig.useRunestoneServices?this.caption+" ("+this.divid+")":this.caption),$(t).addClass(`${e}_caption`),$(t).addClass(`${e}_caption_text`)),this.capDiv=t,this.containerDiv.appendChild(t)}}hasUserActivity(){return this.isAnswered}checkCurrentAnswer(){console.log("Each component should provide an implementation of checkCurrentAnswer")}async logCurrentAnswer(){console.log("Each component should provide an implementation of logCurrentAnswer")}renderFeedback(){console.log("Each component should provide an implementation of renderFeedback")}disableInteraction(){console.log("Each component should provide an implementation of disableInteraction")}toString(){return`${this.constructor.name}: ${this.divid}`}queueMathJax(e){return"undefined"==typeof MathJax?(console.log("Error -- MathJax is not loaded"),Promise.resolve(null)):MathJax.typesetPromise?void 0!==window.runestoneMathReady?window.runestoneMathReady.then((()=>this.mjresolver(this.aQueue.enqueue(e)))):this.mjresolver(this.aQueue.enqueue(e)):(console.log(`Waiting on MathJax!! ${MathJax.typesetPromise}`),setTimeout((()=>this.queueMathJax(e)),200),console.log(`Returning mjready promise: ${this.mjReady}`),this.mjReady)}decorateStatus(){if(this.isTimed||eBookConfig.peer)return;let e=$(this.containerDiv).closest("div.runestone")[0];e&&(e.classList.remove("notAnswered"),e.classList.remove("isInCorrect"),e.classList.remove("isCorrect"),this.correct?e.classList.add("isCorrect"):null===this.correct||void 0===this.correct?e.classList.add("notAnswered"):e.classList.add("isInCorrect"))}}class s{constructor(){this._items=[]}enqueue(e){this._items.push(e)}dequeue(){return this._items.shift()}get size(){return this._items.length}}class r extends s{constructor(){super(),this._pendingPromise=!1}enqueue(e){return new Promise(((t,n)=>{super.enqueue({component:e,resolve:t,reject:n}),this.dequeue()}))}async dequeue(){if(this._pendingPromise)return!1;let e=super.dequeue();if(!e)return!1;let t=this;try{this._pendingPromise=!0;let n=await window.runestoneMathReady.then((async function(){if(console.log(`MathJax Ready -- dequeing a typesetting run for ${e.component.id} ${t.preamble?.innerHTML}`),t.preamble){await MathJax.typesetPromise([t.preamble]);let n=document.createElement("div");return n.innerHTML=t.preamble.innerHTML,e.component.insertAdjacentElement("afterbegin",n),console.log(`MathJax typeset the preamble for ${e.component.id}`),await MathJax.typesetPromise([e.component])}return await MathJax.typesetPromise([e.component])}));this._pendingPromise=!1,e.resolve(n)}catch(t){this._pendingPromise=!1,e.reject(t)}finally{this.dequeue()}return!0}}window.RunestoneBase=a},83057:(e,t,n)=>{"use strict";n.d(t,{X:()=>i,u:()=>a});class o{constructor(e){if(this.possible=0,this.total=1,e&&"assignment_spec"in e&&(this.assignment_spec=e.assignment_spec,delete e.assignment_spec),e&&Object.keys(e).length>0)this.activities=e;else{let e={page:0};document.querySelectorAll(".runestone").forEach((function(t){e[t.firstElementChild.id]=0})),this.activities=e}if(this.calculateProgress(),window.location.pathname.match(/.*\/(index.html|toctree.html|Exercises.html|search.html)$/i)){const e=document.getElementById("scprogresscontainer");e&&(e.style.display="none")}this.renderProgress()}calculateProgress(){for(let e in this.activities)void 0!==e&&(this.possible++,this.activities[e]>0&&this.total++)}renderProgress(){let e=0;const t=document.getElementById("scprogresstotal");t&&(t.textContent=this.total);const n=document.getElementById("scprogressposs");n&&(n.textContent=this.possible);try{e=100*this.total/this.possible}catch(t){e=0}let o=document.getElementById("subchapterprogress");if(o&&"PROGRESS"!==o.tagName){const t=document.createElement("progress");t.id="subchapterprogress",t.max=100,t.value=e,t.className=o.className,o.replaceWith(t),o=t}else o&&(o.max=100,o.value=e);if(this.assignment_spec&&this.total-1>=(this.assignment_spec.activities_required||0)&&this.sendCompletedReadingScore().then((()=>{console.log("Reading score sent for page"),setTimeout((()=>{let e=document.getElementById("completionButton");e&&"mark as completed"===e.textContent.toLowerCase()&&e.click()}),500)})),!eBookConfig.isLoggedIn){const e=document.getElementById("subchapterprogress");e&&e.classList.add("loggedout")}}updateProgress(e){if(this.activities[e]++,1===this.activities[e]){this.total++;let e=100*this.total/this.possible;const t=document.getElementById("scprogresstotal");t&&(t.textContent=this.total);const n=document.getElementById("scprogressposs");n&&(n.textContent=this.possible);let o=document.getElementById("subchapterprogress");if(o&&"PROGRESS"===o.tagName&&(o.value=e),this.assignment_spec&&null!==this.assignment_spec.activities_required&&this.total>=this.assignment_spec.activities_required&&(console.log("Required activities completed"),this.sendCompletedReadingScore().then((()=>{console.log("Reading score sent")}))),100==e&&function(){const e=document.getElementById("completionButton");return e&&e.textContent&&"mark as completed"===e.textContent.toLowerCase()}()){const e=document.getElementById("completionButton");e&&"function"==typeof e.click&&e.click()}}}async sendCompletedReadingScore(){let e=new Headers({"Content-type":"application/json; charset=utf-8",Accept:"application/json"}),t={...this.assignment_spec},n=new Request(`${eBookConfig.new_server_prefix}/logger/update_reading_score`,{method:"POST",body:JSON.stringify(t),headers:e});try{let e=await fetch(n);e.ok||console.error(`Failed to send reading score! ${e.statusText}`),t=await e.json()}catch(e){console.error(`Error sending reading score ${e}`)}}}var i={};function a(e){return"string"==typeof e&&([/\$\$[\s\S]+?\$\$/,/\$[^$\n]+?\$/,/\\\[[\s\S]+?\\\]/,/\\\([\s\S]+?\\\)/].some((t=>t.test(e)))||/\\(frac|sqrt|sum|prod|int|lim|sin|cos|tan|log|ln|alpha|beta|gamma|pi|theta|sigma|Delta|cdot|times|leq|geq|neq)\b/.test(e)||/[a-zA-Z0-9]\s*[\^_]\s*\{?.+?\}?/.test(e))}document.addEventListener("runestone:login",(function(){const e=document.getElementById("profilelink");e&&e.style.removeProperty("display");const t=document.getElementById("passwordlink");t&&t.style.removeProperty("display");const n=document.getElementById("registerlink");n&&(n.style.display="none"),document.querySelectorAll("li.loginout").forEach((e=>{e.innerHTML='Log Out'}))})),document.addEventListener("runestone:logout",(function(){if(eBookConfig.useRunestoneServices){console.log("setup navbar for logged out");const e=document.getElementById("registerlink");e&&e.style.removeProperty("display");const t=document.getElementById("profilelink");t&&(t.style.display="none");const n=document.getElementById("passwordlink");n&&(n.style.display="none");const o=document.getElementById("ip_dropdown_link");o&&(o.style.display="none");const i=document.getElementById("inst_peer_link");i&&(i.style.display="none"),document.querySelectorAll("li.loginout").forEach((e=>{e.innerHTML='Login'})),document.querySelectorAll(".footer").forEach((e=>{e.innerHTML="user not logged in"}))}})),document.addEventListener("DOMContentLoaded",(function(){eBookConfig?(async function(){var e;if(eBookConfig.useRunestoneServices){let e=new Headers({"Content-type":"application/json; charset=utf-8",Accept:"application/json"}),n={timezoneoffset:(new Date).getTimezoneOffset()/60,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone},o=function(){const e=`; ${document.cookie}`.split("; RS_info=");if(2===e.length)return e.pop().split(";").shift()}();var t=!1;if(o)try{let e=o.replace(/\\054/g,","),i=JSON.parse(decodeURIComponent(e));i=JSON.parse(decodeURIComponent(i)),i.timezone===n.timezone&&i.tz_offset===n.timezoneoffset&&(console.log("Timezone cookie matches, not sending timezone to server"),t=!0)}catch(e){console.error("Error parsing RS_info cookie, sending timezone to server")}if(!1===t){let t=new Request(`${eBookConfig.new_server_prefix}/logger/set_tz_offset`,{method:"POST",body:JSON.stringify(n),headers:e});try{let e=await fetch(t);e.ok||console.error(`Failed to set timezone! ${e.statusText}`),n=await e.json()}catch(e){console.error(`Error setting timezone ${e}`)}}}if(console.log(`This page served by ${eBookConfig.served_by}`),eBookConfig.isLoggedIn){if(e=`username: ${eBookConfig.username}`,!eBookConfig.isInstructor){const e=document.getElementById("ip_dropdown_link");e&&"function"==typeof e.remove&&e.remove();const t=document.getElementById("inst_peer_link");t&&"function"==typeof t.remove&&t.remove()}document.dispatchEvent(new Event("runestone:login")),function(){let e=localStorage.getItem("currentAssignmentInfo");if(e&&eBookConfig.readings){var t,n,o,i,a,s,r,d,l,u;let m=JSON.parse(e),h=m.id,g=m.name,p=m.readingNames;(o=document.createElement("div")).textContent="Active assignment: ",(i=document.createElement("a")).textContent=g,i.href=`/assignment/student/doAssignment?assignment_id=${h}`,o.append(i),(a=document.createElement("a")).textContent="Exit Assignment",a.href=window.location.pathname,a.addEventListener("click",(function(e){localStorage.removeItem("currentAssignmentInfo")}));let v=window.location.pathname.split("/"),w=v[v.length-2]+"/"+v[v.length-1],b=!1,y=2;document.getElementsByTagName("body")[0].classList.contains("pretext")&&(b=!0,eBookConfig.readings=eBookConfig.readings.map((e=>e.split("/").pop())),w=w.split("/").pop(),y=1);let k=eBookConfig.readings.indexOf(w),C=eBookConfig.readings.length;if(k>0){d=eBookConfig.readings[k-1],(l=v.slice(0,v.length-y)).push(d),u=l.join("/"),s=o.cloneNode(!0);let e=document.createElement("p");e.textContent=`Page ${k+1} of ${C}, `;var c=document.createElement("a");c.href=u,c.textContent=`Back to page ${k} of ${C}: ${p[k-1]}.`,e.append(c),s.append(e)}else if(0==k){s=o.cloneNode(!0);let e=document.createElement("p");e.textContent=`Page 1 of ${C}.`,s.append(e)}else{d=eBookConfig.readings[0],(l=v.slice(0,v.length-y)).push(d),u=l.join("/"),s=o.cloneNode(!0);let e=document.createElement("p");e.textContent="Notice: this page is not part of the assignment. To remove this warning click ",e.append(a),s.append(e)}if(k==eBookConfig.readings.length-1){r=o;let e=document.createElement("p");e.textContent=`Page ${C} of ${C}: ${p[k]}`,r.append(e)}else if(k>=0){d=eBookConfig.readings[k+1],(l=v.slice(0,v.length-y)).push(d),u=l.join("/"),r=o;var f=document.createElement("a");f.href=u,f.textContent=`Continue to page ${k+2} of ${C}: ${p[k+1]}`;let e=document.createElement("p");e.append(f),r.append(e)}else{r=o.cloneNode(!0);let e=document.createElement("p");e.textContent="Notice: this page is not part of the assignment. To remove this warning click ";let t=a.cloneNode(!0);t.addEventListener("click",(function(e){localStorage.removeItem("currentAssignmentInfo")})),e.append(t),r.append(e)}if((t=document.createElement("div")).className="ptx-runestone-container",s.className="runestone assignment-nav top-assignment-nav",t.append(s),(n=document.createElement("div")).className="ptx-runestone-container",r.className="runestone assignment-nav bottom-assignment-nav",n.append(r),b){let e=document.getElementById("ptx-content");e&&e.insertBefore(t,e.firstChild);let o=document.getElementById("scprogresscontainer");return void(o&&(o.style.marginBottom="20px",o.appendChild(n)))}const $=document.getElementById("main-content");$&&r&&($.insertBefore(t,$.firstChild),$.appendChild(n))}}(),-1==window.location.pathname.indexOf("/admin/grading")&&-1==window.location.pathname.indexOf("/peer/")&&function(){let e;function t(){location.href.indexOf("index.html")<0&&(console.log("Idle timer - "+location.pathname),location.href=eBookConfig.app+"/default/user/login?_next="+location.pathname+location.search)}function n(){e&&clearTimeout(e),e=setTimeout(t,9e5)}["mousemove","keydown","scroll","click","touchstart","wheel"].forEach((e=>{window.addEventListener(e,n,{passive:!0})})),n()}()}else{e="Not logged in",document.dispatchEvent(new Event("runestone:logout"));let t=document.getElementById("browsing_warning");t&&(t.innerHTML="");let n=document.getElementById("ad_warning");n&&(n.innerHTML="")}document.querySelectorAll(".loggedinuser").forEach((t=>{t.innerHTML=e})),i=new o(eBookConfig.activities),console.log("triggering runestone:pre-login-complete"),document.dispatchEvent(new Event("runestone:pre-login-complete"))}(),function(){if("undefined"!=typeof showAd&&showAd){let e=Math.floor(2*Math.random())+1,t=document.getElementById(`adcopy_${e}`),n=document.querySelectorAll(".runestone");n.length>0&&(n[Math.floor(Math.random()*n.length)].after(t),t.style.display="block")}}()):"undefined"==typeof eBookConfig&&console.log("eBookConfig is not defined. This page must not be set up for Runestone")})),window.addEventListener("load",(function(){if(document.querySelectorAll(".video-play-overlay").forEach((function(e){e.style.backgroundImage="url('{{pathto('_static/play_overlay_icon.png', 1)}}')"})),document.querySelectorAll(".dropdown input, .dropdown label").forEach((function(e){e.addEventListener("click",(function(e){e.stopPropagation()}))})),location.href.includes("mode=browsing")){let e="?mode=browsing";document.querySelectorAll("a").forEach((t=>{let n="";if(t.href.includes("books/published")&&!t.href.includes("?mode=browsing")){if(t.href.includes("#")){let e=t.href.indexOf("#");n=t.href.substring(e),t.href=t.href.substring(0,e)}t.href=t.href.includes("?")?t.href+e.replace("?","&")+n:t.href+e+n}}))}}))},98098:(e,t,n)=>{"use strict";n.d(t,{$y:()=>a,JK:()=>i,yT:()=>s});var o=n(77394);async function i(e,t,n){if(!e)return void jQuery(`#${t}`).html("

    Sorry, no source is available for preview.

    ");e=e.replace(/..\/_images/g,`${eBookConfig.app}/books/published/${eBookConfig.basecourse}/_images`),jQuery(`#${t}`).html(e),void 0===window.componentMap&&(window.componentMap={});let i=$($(`#${t} [data-component]`)[0]).data("component");await(0,o.w)(i);let a={};if(a.orig=jQuery(`#${t} [data-component]`)[0],a.orig&&(a.lang=$(a.orig).data("lang"),a.useRunestoneServices=!0,a.graderactive=!1,a.python3=!0,void 0!==n))for(let e in n)a[e]=n[e];if("undefined"==typeof component_factory)alert("Error: Missing the component factory!");else if(window.component_factory[i]||jQuery(`#${t}`).html()){let e=window.component_factory[i](a);"activecode"===i&&(n.multiGrader?window.componentMap[`${n.gradingContainer} ${e.divid}`]=e:window.componentMap[e.divid]=e)}else jQuery(`#${t}`).html(`

    Preview not available for ${i}

    `)}function a(e,t){e=e.replace(/..\/_images/g,`${eBookConfig.app}/books/published/${eBookConfig.basecourse}/_images`);let n,o,i=$($(e).find("[data-component]")[0]).data("component"),a=$(e).find("[data-component]").first().attr("id");document.getElementById(a)||(n=$("
    ",{css:{display:"none"}}).appendTo("body"),n.html(e));let s={orig:document.getElementById(a),timed:!0};if(void 0!==t)for(let e in t)s[e]=t[e];i in window.component_factory&&(o=window.component_factory[i](s));let r={};return r.question=o,r}async function s(e){let t=e.querySelector("[data-component]");if(null==t)return void console.log("Render was called for a component, but now [data-component] attribute is present. This may mean the component has already been rendered.");let n=t.dataset.component;if(await(0,o.w)(n),0==$(this).closest("[data-component=timedAssessment]").length)try{let e=t.id;window.componentMap[e]=window.component_factory[n]({orig:t,useRunestoneServices:eBookConfig.useRunestoneServices})}catch(e){console.log(`Error rendering ${n} Problem ${this.id}\n Details: ${e}`)}}}},e=>{e.O(0,[723],(()=>e(e.s=77394))),e.O()}]); +//# sourceMappingURL=prefix-runestone.1c010553c35c544c.bundle.js.map \ No newline at end of file diff --git a/_static/prefix-runestone.7e141ad8414abf4a.bundle.js.LICENSE.txt b/_static/prefix-runestone.1c010553c35c544c.bundle.js.LICENSE.txt old mode 100644 new mode 100755 similarity index 100% rename from _static/prefix-runestone.7e141ad8414abf4a.bundle.js.LICENSE.txt rename to _static/prefix-runestone.1c010553c35c544c.bundle.js.LICENSE.txt diff --git a/_static/prefix-runestone.7e141ad8414abf4a.bundle.js.LICENSE.txt.gz b/_static/prefix-runestone.1c010553c35c544c.bundle.js.LICENSE.txt.gz old mode 100644 new mode 100755 similarity index 100% rename from _static/prefix-runestone.7e141ad8414abf4a.bundle.js.LICENSE.txt.gz rename to _static/prefix-runestone.1c010553c35c544c.bundle.js.LICENSE.txt.gz diff --git a/_static/prefix-runestone.1c010553c35c544c.bundle.js.gz b/_static/prefix-runestone.1c010553c35c544c.bundle.js.gz new file mode 100755 index 0000000000000000000000000000000000000000..f1bf6dc45ddd509fc812f938b8d6ebafe4560cbe GIT binary patch literal 22561 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 li > a.internal, > ul, > li > ul\");\n\n // Iterate everything in order.\n $items.each(function (index, item) {\n var $item = $(item),\n tag = item.tagName.toLowerCase(),\n $childrenLi = $item.children('li'),\n $parentLi = $($item.parent('li'), $item.parent().parent('li'));\n\n // Add dropdowns if more children and above minimum level.\n if (tag === 'ul' && level >= minLevel && $childrenLi.length > 0) {\n $parentLi\n .addClass('dropdown-submenu')\n .children('a').first().attr('tabindex', -1);\n\n $item.addClass('dropdown-menu');\n }\n\n findA($item, level + 1);\n });\n };\n\n findA($ul);\n };\n\n /**\n * Patch all tables to remove ``docutils`` class and add Bootstrap base\n * ``table`` class.\n */\n patchTables = function () {\n $(\"table.docutils\")\n .removeClass(\"docutils\")\n .addClass(\"table\")\n .attr(\"border\", 0);\n };\n\n$(function () {\n\n /*\n * Scroll the window to avoid the topnav bar\n * https://github.com/twitter/bootstrap/issues/1768\n */\n if ($(\"#navbar.navbar-fixed-top\").length > 0) {\n var navHeight = $(\"#navbar\").height(),\n shiftWindow = function() { scrollBy(0, -navHeight - 10); };\n\n if (location.hash) {\n shiftWindow();\n }\n\n window.addEventListener(\"hashchange\", shiftWindow);\n }\n\n // Add styling, structure to TOC's.\n $(\".dropdown-menu\").each(function () {\n $(this).find(\"ul\").each(function (index, item){\n var $item = $(item);\n $item.addClass('unstyled');\n });\n });\n\n // Global TOC.\n if ($(\"ul.globaltoc li\").length) {\n patchToc($(\"ul.globaltoc\"), 1);\n } else {\n // Remove Global TOC.\n $(\".globaltoc-container\").remove();\n }\n\n // Local TOC.\n patchToc($(\"ul.localtoc\"), 2);\n\n // Mutate sub-lists (for bs-2.3.0).\n $(\".dropdown-menu ul\").not(\".dropdown-menu\").each(function () {\n var $ul = $(this),\n $parent = $ul.parent(),\n tag = $parent[0].tagName.toLowerCase(),\n $kids = $ul.children().detach();\n\n // Replace list with items if submenu header.\n if (tag === \"ul\") {\n $ul.replaceWith($kids);\n } else if (tag === \"li\") {\n // Insert into previous list.\n $parent.after($kids);\n $ul.remove();\n }\n });\n\n // Add divider in page TOC.\n $localLi = $(\"ul.localtoc li\");\n if ($localLi.length > 2) {\n $localLi.first().after('
  • ');\n }\n\n // Enable dropdown.\n $('.dropdown-toggle').dropdown();\n\n // Patch tables.\n patchTables();\n\n // Add Note, Warning styles.\n $('div.note').addClass('alert').addClass('alert-info');\n $('div.warning').addClass('alert').addClass('alert-warning');\n\n // Inline code styles to Bootstrap style.\n $('tt.docutils.literal').not(\".xref\").each(function (i, e) {\n // ignore references\n if (!$(e).parent().hasClass(\"reference\")) {\n $(e).replaceWith(function () {\n return $(\"\").text($(this).text());\n });\n }});\n });\n}(window.jQuery));\n","var codeExercises;\nvar presenterCssLink;\nvar presentModeInitialized = false;\n\nfunction presentToggle() {\n if (!presentModeInitialized) {\n presentModeSetup();\n presentModeInitialized = true;\n }\n let bod = $(\"body\");\n let presentClass = \"present\";\n let fullHeightClass = \"full-height\";\n let bottomClass = \"bottom\";\n if (bod.hasClass(presentClass)) {\n $(\"section *\")\n .not(\n \"h1, .presentation-title, .btn-presenter, .runestone, .runestone *, section, .pre, code\"\n )\n .removeClass(\"hidden\"); //show everything\n $(\"#completionButton\").removeClass(\"hidden\");\n bod.removeClass(presentClass);\n $(\".\" + fullHeightClass).removeClass(fullHeightClass);\n $(\".\" + bottomClass).removeClass(bottomClass);\n localStorage.setItem(\"presentMode\", \"text\");\n codeExercises.removeClass(\"hidden\");\n presenterCssLink.disabled = true; // disable present_mode.css\n } else {\n $(\"section *\")\n .not(\n \"h1, .presentation-title, .btn-presenter, .runestone, .runestone *, section, .pre, code\"\n )\n .addClass(\"hidden\"); // hide extraneous stuff\n $(\"#completionButton\").addClass(\"hidden\");\n bod.addClass(presentClass);\n bod.addClass(fullHeightClass);\n $(\"html\").addClass(fullHeightClass);\n $(\"section .runestone\").addClass(fullHeightClass);\n $(\".ac-caption\").addClass(bottomClass);\n localStorage.setItem(\"presentMode\", presentClass);\n // presenter_mode.css is loaded by webpack\n //loadPresenterCss(); // present_mode.css should only apply when in presenter mode.\n activateExercise();\n }\n}\n\nfunction loadPresenterCss() {\n presenterCssLink = document.createElement(\"link\");\n presenterCssLink.type = \"text/css\";\n presenterCssLink.href = \"../_static/presenter_mode.less\";\n presenterCssLink.rel = \"stylesheet\";\n document.getElementsByTagName(\"head\")[0].appendChild(presenterCssLink);\n}\n\nfunction presentModeSetup() {\n // moved this out of configure\n let dataComponent = $(\"[data-childcomponent]\");\n\n // this still leaves some things semi-messed up when you exit presenter mode.\n // but instructors will probably just learn to refresh the page.\n dataComponent.addClass(\"runestone\");\n dataComponent.parent().closest(\"div\").not(\"section\").addClass(\"runestone\");\n dataComponent.parent().closest(\"div\").css(\"max-width\", \"none\");\n\n dataComponent.each(function (index) {\n let me = $(this);\n $(this)\n .find(\".ac_code_div, .ac_output\")\n .wrapAll(\"
    \");\n });\n\n codelensListener(500);\n $(\"section img\").wrap('
    ');\n codeExercises = $(\".runestone\").not(\".runestone .runestone\");\n // codeExercises.each(function(){\n $(\"h1\").before(\n \"
    \\\n \\\n \\\n
    \"\n );\n}\nfunction getActiveExercise() {\n return (active = codeExercises.filter(\".active\"));\n}\n\nfunction activateExercise(index) {\n if (typeof index == \"undefined\") {\n index = 0;\n }\n\n let active = getActiveExercise();\n\n if (codeExercises.length) {\n active.removeClass(\"active\");\n active = $(codeExercises[index]).addClass(\"active\");\n active.removeClass(\"hidden\");\n codeExercises.not(codeExercises.filter(\".active\")).addClass(\"hidden\");\n }\n}\n\nwindow.nextExercise = function() {\n let active = getActiveExercise();\n let nextIndex = codeExercises.index(active) + 1;\n if (nextIndex < codeExercises.length) {\n activateExercise(nextIndex);\n }\n}\n\nwindow.prevExercise = function() {\n let active = getActiveExercise();\n let prevIndex = codeExercises.index(active) - 1;\n if (prevIndex >= 0) {\n activateExercise(prevIndex);\n }\n}\n\nfunction configure() {\n let rightNav = $(\".navbar-right\");\n rightNav.prepend(\n \"\"\n );\n\n let modeSelect = $(\".mode-select\").change(presentToggle);\n}\n\nfunction codelensListener(duration) {\n // $(\".ExecutionVisualizer\").length ? configureCodelens() : setTimeout(codelensListener, duration);\n // configureCodelens();\n}\n\nfunction configureCodelens() {\n let acCodeTitle = document.createElement(\"h4\");\n acCodeTitle.textContent = \"Active Code Window\";\n let acCode = $(\".ac_code_div\");\n $(\".ac_code_div\").addClass(\"col-md-6\");\n acCode.prepend(acCodeTitle);\n\n acOutTitle = document.createElement(\"h4\");\n acOutTitle.textContent = \"Output Window\";\n let acOut = $(\".ac_output\").addClass(\"col-md-6\");\n $(\".ac_output\").prepend(acOutTitle);\n\n let sketchpadTitle = document.createElement(\"h4\");\n sketchpadTitle.textContent = \"Sketchpad\";\n let sketchpad = document.createElement(\"span\");\n $(sketchpad).addClass(\"sketchpad\");\n let sketchpadContainer = document.createElement(\"div\");\n $(sketchpadContainer).addClass(\"sketchpad-container\");\n sketchpadContainer.appendChild(sketchpadTitle);\n sketchpadContainer.appendChild(sketchpad);\n //$('.ac_output').append(sketchpadContainer);\n\n let visualizers = $(\".ExecutionVisualizer\");\n\n console.log(\"Econtainer: \", this.eContainer);\n\n $(\"[data-childcomponent]\").on(\"click\", \"button.row-mode\", function () {\n $(this).closest(\"[data-childcomponent]\").removeClass(\"card-mode\");\n $(this).closest(\"[data-childcomponent]\").addClass(\"row-mode\");\n $(this).next(\".card-mode\").removeClass(\"active-layout\");\n $(this).addClass(\"active-layout\");\n });\n\n $(\"[data-childcomponent]\").on(\"click\", \"button.card-mode\", function () {\n $(this).closest(\"[data-childcomponent]\").removeClass(\"row-mode\");\n $(this).closest(\"[data-childcomponent]\").addClass(\"card-mode\");\n $(this).prev(\".row-mode\").removeClass(\"active-layout\");\n $(this).addClass(\"active-layout\");\n });\n\n $(\"[data-childcomponent] .ac_section\").each(function () {\n $(this).prepend(\n '
    '\n );\n });\n\n visualizers.each(function (index) {\n let me = $(this);\n let col1 = me.find(\"#vizLayoutTdFirst\");\n let col2 = me.find(\"#vizLayoutTdSecond\");\n let dataVis = me.find(\"#dataViz\");\n let stackHeapTable = me.find(\"#stackHeapTable\");\n let output = me.find(\"#progOutputs\");\n output.css(\"display\", \"block\");\n me.parent().prepend(\n \"
    Example \" +\n (Number(index) + 1) +\n \"
    \"\n );\n });\n\n acCode.each(function () {\n let section = $(this).closest(\".ac-block\").parent();\n console.log(section, section.length);\n section.append(sketchpadContainer);\n });\n\n $(\"button.card-mode\").click();\n\n let modeSelect = $(\".mode-select\");\n let mode = localStorage.getItem(\"presentMode\");\n if (mode == \"present\") {\n modeSelect.val(\"present\");\n modeSelect.change();\n }\n}\n\n$(document).on(\"runestone:login-complete\", function () {\n // if user is instructor, enable presenter mode\n if (eBookConfig.isInstructor) {\n configure();\n }\n});\n","/*!\n * jQuery Internationalization library\n *\n * Copyright (C) 2012 Santhosh Thottingal\n *\n * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do anything special to\n * choose one license or the other and you don't have to notify anyone which license you are using.\n * You are free to use UniversalLanguageSelector in commercial projects as long as the copyright\n * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.\n *\n * @licence GNU General Public Licence 2.0 or later\n * @licence MIT License\n */\n( function ( $ ) {\n\t'use strict';\n\n\t$.i18n = $.i18n || {};\n\t$.extend( $.i18n.fallbacks, {\n\t\tab: [ 'ru' ],\n\t\tace: [ 'id' ],\n\t\taln: [ 'sq' ],\n\t\t// Not so standard - als is supposed to be Tosk Albanian,\n\t\t// but in Wikipedia it's used for a Germanic language.\n\t\tals: [ 'gsw', 'de' ],\n\t\tan: [ 'es' ],\n\t\tanp: [ 'hi' ],\n\t\tarn: [ 'es' ],\n\t\tarz: [ 'ar' ],\n\t\tav: [ 'ru' ],\n\t\tay: [ 'es' ],\n\t\tba: [ 'ru' ],\n\t\tbar: [ 'de' ],\n\t\t'bat-smg': [ 'sgs', 'lt' ],\n\t\tbcc: [ 'fa' ],\n\t\t'be-x-old': [ 'be-tarask' ],\n\t\tbh: [ 'bho' ],\n\t\tbjn: [ 'id' ],\n\t\tbm: [ 'fr' ],\n\t\tbpy: [ 'bn' ],\n\t\tbqi: [ 'fa' ],\n\t\tbug: [ 'id' ],\n\t\t'cbk-zam': [ 'es' ],\n\t\tce: [ 'ru' ],\n\t\tcrh: [ 'crh-latn' ],\n\t\t'crh-cyrl': [ 'ru' ],\n\t\tcsb: [ 'pl' ],\n\t\tcv: [ 'ru' ],\n\t\t'de-at': [ 'de' ],\n\t\t'de-ch': [ 'de' ],\n\t\t'de-formal': [ 'de' ],\n\t\tdsb: [ 'de' ],\n\t\tdtp: [ 'ms' ],\n\t\tegl: [ 'it' ],\n\t\teml: [ 'it' ],\n\t\tff: [ 'fr' ],\n\t\tfit: [ 'fi' ],\n\t\t'fiu-vro': [ 'vro', 'et' ],\n\t\tfrc: [ 'fr' ],\n\t\tfrp: [ 'fr' ],\n\t\tfrr: [ 'de' ],\n\t\tfur: [ 'it' ],\n\t\tgag: [ 'tr' ],\n\t\tgan: [ 'gan-hant', 'zh-hant', 'zh-hans' ],\n\t\t'gan-hans': [ 'zh-hans' ],\n\t\t'gan-hant': [ 'zh-hant', 'zh-hans' ],\n\t\tgl: [ 'pt' ],\n\t\tglk: [ 'fa' ],\n\t\tgn: [ 'es' ],\n\t\tgsw: [ 'de' ],\n\t\thif: [ 'hif-latn' ],\n\t\thsb: [ 'de' ],\n\t\tht: [ 'fr' ],\n\t\tii: [ 'zh-cn', 'zh-hans' ],\n\t\tinh: [ 'ru' ],\n\t\tiu: [ 'ike-cans' ],\n\t\tjut: [ 'da' ],\n\t\tjv: [ 'id' ],\n\t\tkaa: [ 'kk-latn', 'kk-cyrl' ],\n\t\tkbd: [ 'kbd-cyrl' ],\n\t\tkhw: [ 'ur' ],\n\t\tkiu: [ 'tr' ],\n\t\tkk: [ 'kk-cyrl' ],\n\t\t'kk-arab': [ 'kk-cyrl' ],\n\t\t'kk-latn': [ 'kk-cyrl' ],\n\t\t'kk-cn': [ 'kk-arab', 'kk-cyrl' ],\n\t\t'kk-kz': [ 'kk-cyrl' ],\n\t\t'kk-tr': [ 'kk-latn', 'kk-cyrl' ],\n\t\tkl: [ 'da' ],\n\t\t'ko-kp': [ 'ko' ],\n\t\tkoi: [ 'ru' ],\n\t\tkrc: [ 'ru' ],\n\t\tks: [ 'ks-arab' ],\n\t\tksh: [ 'de' ],\n\t\tku: [ 'ku-latn' ],\n\t\t'ku-arab': [ 'ckb' ],\n\t\tkv: [ 'ru' ],\n\t\tlad: [ 'es' ],\n\t\tlb: [ 'de' ],\n\t\tlbe: [ 'ru' ],\n\t\tlez: [ 'ru' ],\n\t\tli: [ 'nl' ],\n\t\tlij: [ 'it' ],\n\t\tliv: [ 'et' ],\n\t\tlmo: [ 'it' ],\n\t\tln: [ 'fr' ],\n\t\tltg: [ 'lv' ],\n\t\tlzz: [ 'tr' ],\n\t\tmai: [ 'hi' ],\n\t\t'map-bms': [ 'jv', 'id' ],\n\t\tmg: [ 'fr' ],\n\t\tmhr: [ 'ru' ],\n\t\tmin: [ 'id' ],\n\t\tmo: [ 'ro' ],\n\t\tmrj: [ 'ru' ],\n\t\tmwl: [ 'pt' ],\n\t\tmyv: [ 'ru' ],\n\t\tmzn: [ 'fa' ],\n\t\tnah: [ 'es' ],\n\t\tnap: [ 'it' ],\n\t\tnds: [ 'de' ],\n\t\t'nds-nl': [ 'nl' ],\n\t\t'nl-informal': [ 'nl' ],\n\t\tno: [ 'nb' ],\n\t\tos: [ 'ru' ],\n\t\tpcd: [ 'fr' ],\n\t\tpdc: [ 'de' ],\n\t\tpdt: [ 'de' ],\n\t\tpfl: [ 'de' ],\n\t\tpms: [ 'it' ],\n\t\tpt: [ 'pt-br' ],\n\t\t'pt-br': [ 'pt' ],\n\t\tqu: [ 'es' ],\n\t\tqug: [ 'qu', 'es' ],\n\t\trgn: [ 'it' ],\n\t\trmy: [ 'ro' ],\n\t\t'roa-rup': [ 'rup' ],\n\t\true: [ 'uk', 'ru' ],\n\t\truq: [ 'ruq-latn', 'ro' ],\n\t\t'ruq-cyrl': [ 'mk' ],\n\t\t'ruq-latn': [ 'ro' ],\n\t\tsa: [ 'hi' ],\n\t\tsah: [ 'ru' ],\n\t\tscn: [ 'it' ],\n\t\tsg: [ 'fr' ],\n\t\tsgs: [ 'lt' ],\n\t\tsli: [ 'de' ],\n\t\tsr: [ 'sr-ec' ],\n\t\tsrn: [ 'nl' ],\n\t\tstq: [ 'de' ],\n\t\tsu: [ 'id' ],\n\t\tszl: [ 'pl' ],\n\t\ttcy: [ 'kn' ],\n\t\ttg: [ 'tg-cyrl' ],\n\t\ttt: [ 'tt-cyrl', 'ru' ],\n\t\t'tt-cyrl': [ 'ru' ],\n\t\tty: [ 'fr' ],\n\t\tudm: [ 'ru' ],\n\t\tug: [ 'ug-arab' ],\n\t\tuk: [ 'ru' ],\n\t\tvec: [ 'it' ],\n\t\tvep: [ 'et' ],\n\t\tvls: [ 'nl' ],\n\t\tvmf: [ 'de' ],\n\t\tvot: [ 'fi' ],\n\t\tvro: [ 'et' ],\n\t\twa: [ 'fr' ],\n\t\two: [ 'fr' ],\n\t\twuu: [ 'zh-hans' ],\n\t\txal: [ 'ru' ],\n\t\txmf: [ 'ka' ],\n\t\tyi: [ 'he' ],\n\t\tza: [ 'zh-hans' ],\n\t\tzea: [ 'nl' ],\n\t\tzh: [ 'zh-hans' ],\n\t\t'zh-classical': [ 'lzh' ],\n\t\t'zh-cn': [ 'zh-hans' ],\n\t\t'zh-hant': [ 'zh-hans' ],\n\t\t'zh-hk': [ 'zh-hant', 'zh-hans' ],\n\t\t'zh-min-nan': [ 'nan' ],\n\t\t'zh-mo': [ 'zh-hk', 'zh-hant', 'zh-hans' ],\n\t\t'zh-my': [ 'zh-sg', 'zh-hans' ],\n\t\t'zh-sg': [ 'zh-hans' ],\n\t\t'zh-tw': [ 'zh-hant', 'zh-hans' ],\n\t\t'zh-yue': [ 'yue' ]\n\t} );\n}( jQuery ) );\n","/* global pluralRuleParser */\n( function ( $ ) {\n\t'use strict';\n\n\t// jscs:disable\n\tvar language = {\n\t\t// CLDR plural rules generated using\n\t\t// libs/CLDRPluralRuleParser/tools/PluralXML2JSON.html\n\t\tpluralRules: {\n\t\t\tak: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tam: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\tar: {\n\t\t\t\tzero: 'n = 0',\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2',\n\t\t\t\tfew: 'n % 100 = 3..10',\n\t\t\t\tmany: 'n % 100 = 11..99'\n\t\t\t},\n\t\t\tars: {\n\t\t\t\tzero: 'n = 0',\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2',\n\t\t\t\tfew: 'n % 100 = 3..10',\n\t\t\t\tmany: 'n % 100 = 11..99'\n\t\t\t},\n\t\t\tas: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\tbe: {\n\t\t\t\tone: 'n % 10 = 1 and n % 100 != 11',\n\t\t\t\tfew: 'n % 10 = 2..4 and n % 100 != 12..14',\n\t\t\t\tmany: 'n % 10 = 0 or n % 10 = 5..9 or n % 100 = 11..14'\n\t\t\t},\n\t\t\tbh: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tbn: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\tbr: {\n\t\t\t\tone: 'n % 10 = 1 and n % 100 != 11,71,91',\n\t\t\t\ttwo: 'n % 10 = 2 and n % 100 != 12,72,92',\n\t\t\t\tfew: 'n % 10 = 3..4,9 and n % 100 != 10..19,70..79,90..99',\n\t\t\t\tmany: 'n != 0 and n % 1000000 = 0'\n\t\t\t},\n\t\t\tbs: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',\n\t\t\t\tfew: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'\n\t\t\t},\n\t\t\tcs: {\n\t\t\t\tone: 'i = 1 and v = 0',\n\t\t\t\tfew: 'i = 2..4 and v = 0',\n\t\t\t\tmany: 'v != 0'\n\t\t\t},\n\t\t\tcy: {\n\t\t\t\tzero: 'n = 0',\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2',\n\t\t\t\tfew: 'n = 3',\n\t\t\t\tmany: 'n = 6'\n\t\t\t},\n\t\t\tda: {\n\t\t\t\tone: 'n = 1 or t != 0 and i = 0,1'\n\t\t\t},\n\t\t\tdsb: {\n\t\t\t\tone: 'v = 0 and i % 100 = 1 or f % 100 = 1',\n\t\t\t\ttwo: 'v = 0 and i % 100 = 2 or f % 100 = 2',\n\t\t\t\tfew: 'v = 0 and i % 100 = 3..4 or f % 100 = 3..4'\n\t\t\t},\n\t\t\tfa: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\tff: {\n\t\t\t\tone: 'i = 0,1'\n\t\t\t},\n\t\t\tfil: {\n\t\t\t\tone: 'v = 0 and i = 1,2,3 or v = 0 and i % 10 != 4,6,9 or v != 0 and f % 10 != 4,6,9'\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\tone: 'i = 0,1'\n\t\t\t},\n\t\t\tga: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2',\n\t\t\t\tfew: 'n = 3..6',\n\t\t\t\tmany: 'n = 7..10'\n\t\t\t},\n\t\t\tgd: {\n\t\t\t\tone: 'n = 1,11',\n\t\t\t\ttwo: 'n = 2,12',\n\t\t\t\tfew: 'n = 3..10,13..19'\n\t\t\t},\n\t\t\tgu: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\tguw: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tgv: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1',\n\t\t\t\ttwo: 'v = 0 and i % 10 = 2',\n\t\t\t\tfew: 'v = 0 and i % 100 = 0,20,40,60,80',\n\t\t\t\tmany: 'v != 0'\n\t\t\t},\n\t\t\the: {\n\t\t\t\tone: 'i = 1 and v = 0',\n\t\t\t\ttwo: 'i = 2 and v = 0',\n\t\t\t\tmany: 'v = 0 and n != 0..10 and n % 10 = 0'\n\t\t\t},\n\t\t\thi: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\thr: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',\n\t\t\t\tfew: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'\n\t\t\t},\n\t\t\thsb: {\n\t\t\t\tone: 'v = 0 and i % 100 = 1 or f % 100 = 1',\n\t\t\t\ttwo: 'v = 0 and i % 100 = 2 or f % 100 = 2',\n\t\t\t\tfew: 'v = 0 and i % 100 = 3..4 or f % 100 = 3..4'\n\t\t\t},\n\t\t\thy: {\n\t\t\t\tone: 'i = 0,1'\n\t\t\t},\n\t\t\tis: {\n\t\t\t\tone: 't = 0 and i % 10 = 1 and i % 100 != 11 or t != 0'\n\t\t\t},\n\t\t\tiu: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tiw: {\n\t\t\t\tone: 'i = 1 and v = 0',\n\t\t\t\ttwo: 'i = 2 and v = 0',\n\t\t\t\tmany: 'v = 0 and n != 0..10 and n % 10 = 0'\n\t\t\t},\n\t\t\tkab: {\n\t\t\t\tone: 'i = 0,1'\n\t\t\t},\n\t\t\tkn: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\tkw: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tlag: {\n\t\t\t\tzero: 'n = 0',\n\t\t\t\tone: 'i = 0,1 and n != 0'\n\t\t\t},\n\t\t\tln: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tlt: {\n\t\t\t\tone: 'n % 10 = 1 and n % 100 != 11..19',\n\t\t\t\tfew: 'n % 10 = 2..9 and n % 100 != 11..19',\n\t\t\t\tmany: 'f != 0'\n\t\t\t},\n\t\t\tlv: {\n\t\t\t\tzero: 'n % 10 = 0 or n % 100 = 11..19 or v = 2 and f % 100 = 11..19',\n\t\t\t\tone: 'n % 10 = 1 and n % 100 != 11 or v = 2 and f % 10 = 1 and f % 100 != 11 or v != 2 and f % 10 = 1'\n\t\t\t},\n\t\t\tmg: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tmk: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1 or f % 10 = 1'\n\t\t\t},\n\t\t\tmo: {\n\t\t\t\tone: 'i = 1 and v = 0',\n\t\t\t\tfew: 'v != 0 or n = 0 or n != 1 and n % 100 = 1..19'\n\t\t\t},\n\t\t\tmr: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\tmt: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\tfew: 'n = 0 or n % 100 = 2..10',\n\t\t\t\tmany: 'n % 100 = 11..19'\n\t\t\t},\n\t\t\tnaq: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tnso: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tpa: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tpl: {\n\t\t\t\tone: 'i = 1 and v = 0',\n\t\t\t\tfew: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14',\n\t\t\t\tmany: 'v = 0 and i != 1 and i % 10 = 0..1 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 12..14'\n\t\t\t},\n\t\t\tprg: {\n\t\t\t\tzero: 'n % 10 = 0 or n % 100 = 11..19 or v = 2 and f % 100 = 11..19',\n\t\t\t\tone: 'n % 10 = 1 and n % 100 != 11 or v = 2 and f % 10 = 1 and f % 100 != 11 or v != 2 and f % 10 = 1'\n\t\t\t},\n\t\t\tpt: {\n\t\t\t\tone: 'i = 0..1'\n\t\t\t},\n\t\t\tro: {\n\t\t\t\tone: 'i = 1 and v = 0',\n\t\t\t\tfew: 'v != 0 or n = 0 or n != 1 and n % 100 = 1..19'\n\t\t\t},\n\t\t\tru: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1 and i % 100 != 11',\n\t\t\t\tfew: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14',\n\t\t\t\tmany: 'v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14'\n\t\t\t},\n\t\t\tse: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tsh: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',\n\t\t\t\tfew: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'\n\t\t\t},\n\t\t\tshi: {\n\t\t\t\tone: 'i = 0 or n = 1',\n\t\t\t\tfew: 'n = 2..10'\n\t\t\t},\n\t\t\tsi: {\n\t\t\t\tone: 'n = 0,1 or i = 0 and f = 1'\n\t\t\t},\n\t\t\tsk: {\n\t\t\t\tone: 'i = 1 and v = 0',\n\t\t\t\tfew: 'i = 2..4 and v = 0',\n\t\t\t\tmany: 'v != 0'\n\t\t\t},\n\t\t\tsl: {\n\t\t\t\tone: 'v = 0 and i % 100 = 1',\n\t\t\t\ttwo: 'v = 0 and i % 100 = 2',\n\t\t\t\tfew: 'v = 0 and i % 100 = 3..4 or v != 0'\n\t\t\t},\n\t\t\tsma: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tsmi: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tsmj: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tsmn: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tsms: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tsr: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',\n\t\t\t\tfew: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'\n\t\t\t},\n\t\t\tti: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\ttl: {\n\t\t\t\tone: 'v = 0 and i = 1,2,3 or v = 0 and i % 10 != 4,6,9 or v != 0 and f % 10 != 4,6,9'\n\t\t\t},\n\t\t\ttzm: {\n\t\t\t\tone: 'n = 0..1 or n = 11..99'\n\t\t\t},\n\t\t\tuk: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1 and i % 100 != 11',\n\t\t\t\tfew: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14',\n\t\t\t\tmany: 'v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14'\n\t\t\t},\n\t\t\twa: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tzu: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t}\n\t\t},\n\t\t// jscs:enable\n\n\t\t/**\n\t\t * Plural form transformations, needed for some languages.\n\t\t *\n\t\t * @param {integer} count\n\t\t * Non-localized quantifier\n\t\t * @param {Array} forms\n\t\t * List of plural forms\n\t\t * @return {string} Correct form for quantifier in this language\n\t\t */\n\t\tconvertPlural: function ( count, forms ) {\n\t\t\tvar pluralRules,\n\t\t\t\tpluralFormIndex,\n\t\t\t\tindex,\n\t\t\t\texplicitPluralPattern = new RegExp( '\\\\d+=', 'i' ),\n\t\t\t\tformCount,\n\t\t\t\tform;\n\n\t\t\tif ( !forms || forms.length === 0 ) {\n\t\t\t\treturn '';\n\t\t\t}\n\n\t\t\t// Handle for Explicit 0= & 1= values\n\t\t\tfor ( index = 0; index < forms.length; index++ ) {\n\t\t\t\tform = forms[ index ];\n\t\t\t\tif ( explicitPluralPattern.test( form ) ) {\n\t\t\t\t\tformCount = parseInt( form.slice( 0, form.indexOf( '=' ) ), 10 );\n\t\t\t\t\tif ( formCount === count ) {\n\t\t\t\t\t\treturn ( form.slice( form.indexOf( '=' ) + 1 ) );\n\t\t\t\t\t}\n\t\t\t\t\tforms[ index ] = undefined;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tforms = $.map( forms, function ( form ) {\n\t\t\t\tif ( form !== undefined ) {\n\t\t\t\t\treturn form;\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tpluralRules = this.pluralRules[ $.i18n().locale ];\n\n\t\t\tif ( !pluralRules ) {\n\t\t\t\t// default fallback.\n\t\t\t\treturn ( count === 1 ) ? forms[ 0 ] : forms[ 1 ];\n\t\t\t}\n\n\t\t\tpluralFormIndex = this.getPluralForm( count, pluralRules );\n\t\t\tpluralFormIndex = Math.min( pluralFormIndex, forms.length - 1 );\n\n\t\t\treturn forms[ pluralFormIndex ];\n\t\t},\n\n\t\t/**\n\t\t * For the number, get the plural for index\n\t\t *\n\t\t * @param {integer} number\n\t\t * @param {Object} pluralRules\n\t\t * @return {integer} plural form index\n\t\t */\n\t\tgetPluralForm: function ( number, pluralRules ) {\n\t\t\tvar i,\n\t\t\t\tpluralForms = [ 'zero', 'one', 'two', 'few', 'many', 'other' ],\n\t\t\t\tpluralFormIndex = 0;\n\n\t\t\tfor ( i = 0; i < pluralForms.length; i++ ) {\n\t\t\t\tif ( pluralRules[ pluralForms[ i ] ] ) {\n\t\t\t\t\tif ( pluralRuleParser( pluralRules[ pluralForms[ i ] ], number ) ) {\n\t\t\t\t\t\treturn pluralFormIndex;\n\t\t\t\t\t}\n\n\t\t\t\t\tpluralFormIndex++;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn pluralFormIndex;\n\t\t},\n\n\t\t/**\n\t\t * Converts a number using digitTransformTable.\n\t\t *\n\t\t * @param {number} num Value to be converted\n\t\t * @param {boolean} integer Convert the return value to an integer\n\t\t * @return {string} The number converted into a String.\n\t\t */\n\t\tconvertNumber: function ( num, integer ) {\n\t\t\tvar tmp, item, i,\n\t\t\t\ttransformTable, numberString, convertedNumber;\n\n\t\t\t// Set the target Transform table:\n\t\t\ttransformTable = this.digitTransformTable( $.i18n().locale );\n\t\t\tnumberString = String( num );\n\t\t\tconvertedNumber = '';\n\n\t\t\tif ( !transformTable ) {\n\t\t\t\treturn num;\n\t\t\t}\n\n\t\t\t// Check if the restore to Latin number flag is set:\n\t\t\tif ( integer ) {\n\t\t\t\tif ( parseFloat( num, 10 ) === num ) {\n\t\t\t\t\treturn num;\n\t\t\t\t}\n\n\t\t\t\ttmp = [];\n\n\t\t\t\tfor ( item in transformTable ) {\n\t\t\t\t\ttmp[ transformTable[ item ] ] = item;\n\t\t\t\t}\n\n\t\t\t\ttransformTable = tmp;\n\t\t\t}\n\n\t\t\tfor ( i = 0; i < numberString.length; i++ ) {\n\t\t\t\tif ( transformTable[ numberString[ i ] ] ) {\n\t\t\t\t\tconvertedNumber += transformTable[ numberString[ i ] ];\n\t\t\t\t} else {\n\t\t\t\t\tconvertedNumber += numberString[ i ];\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn integer ? parseFloat( convertedNumber, 10 ) : convertedNumber;\n\t\t},\n\n\t\t/**\n\t\t * Grammatical transformations, needed for inflected languages.\n\t\t * Invoked by putting {{grammar:form|word}} in a message.\n\t\t * Override this method for languages that need special grammar rules\n\t\t * applied dynamically.\n\t\t *\n\t\t * @param {string} word\n\t\t * @param {string} form\n\t\t * @return {string}\n\t\t */\n\t\t// eslint-disable-next-line no-unused-vars\n\t\tconvertGrammar: function ( word, form ) {\n\t\t\treturn word;\n\t\t},\n\n\t\t/**\n\t\t * Provides an alternative text depending on specified gender. Usage\n\t\t * {{gender:[gender|user object]|masculine|feminine|neutral}}. If second\n\t\t * or third parameter are not specified, masculine is used.\n\t\t *\n\t\t * These details may be overriden per language.\n\t\t *\n\t\t * @param {string} gender\n\t\t * male, female, or anything else for neutral.\n\t\t * @param {Array} forms\n\t\t * List of gender forms\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tgender: function ( gender, forms ) {\n\t\t\tif ( !forms || forms.length === 0 ) {\n\t\t\t\treturn '';\n\t\t\t}\n\n\t\t\twhile ( forms.length < 2 ) {\n\t\t\t\tforms.push( forms[ forms.length - 1 ] );\n\t\t\t}\n\n\t\t\tif ( gender === 'male' ) {\n\t\t\t\treturn forms[ 0 ];\n\t\t\t}\n\n\t\t\tif ( gender === 'female' ) {\n\t\t\t\treturn forms[ 1 ];\n\t\t\t}\n\n\t\t\treturn ( forms.length === 3 ) ? forms[ 2 ] : forms[ 0 ];\n\t\t},\n\n\t\t/**\n\t\t * Get the digit transform table for the given language\n\t\t * See http://cldr.unicode.org/translation/numbering-systems\n\t\t *\n\t\t * @param {string} language\n\t\t * @return {Array|boolean} List of digits in the passed language or false\n\t\t * representation, or boolean false if there is no information.\n\t\t */\n\t\tdigitTransformTable: function ( language ) {\n\t\t\tvar tables = {\n\t\t\t\tar: '٠١٢٣٤٥٦٧٨٩',\n\t\t\t\tfa: '۰۱۲۳۴۵۶۷۸۹',\n\t\t\t\tml: '൦൧൨൩൪൫൬൭൮൯',\n\t\t\t\tkn: '೦೧೨೩೪೫೬೭೮೯',\n\t\t\t\tlo: '໐໑໒໓໔໕໖໗໘໙',\n\t\t\t\tor: '୦୧୨୩୪୫୬୭୮୯',\n\t\t\t\tkh: '០១២៣៤៥៦៧៨៩',\n\t\t\t\tpa: '੦੧੨੩੪੫੬੭੮੯',\n\t\t\t\tgu: '૦૧૨૩૪૫૬૭૮૯',\n\t\t\t\thi: '०१२३४५६७८९',\n\t\t\t\tmy: '၀၁၂၃၄၅၆၇၈၉',\n\t\t\t\tta: '௦௧௨௩௪௫௬௭௮௯',\n\t\t\t\tte: '౦౧౨౩౪౫౬౭౮౯',\n\t\t\t\tth: '๐๑๒๓๔๕๖๗๘๙', // FIXME use iso 639 codes\n\t\t\t\tbo: '༠༡༢༣༤༥༦༧༨༩' // FIXME use iso 639 codes\n\t\t\t};\n\n\t\t\tif ( !tables[ language ] ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn tables[ language ].split( '' );\n\t\t}\n\t};\n\n\t$.extend( $.i18n.languages, {\n\t\t'default': language\n\t} );\n}( jQuery ) );\n","/*!\n * BIDI embedding support for jQuery.i18n\n *\n * Copyright (C) 2015, David Chan\n *\n * This code is dual licensed GPLv2 or later and MIT. You don't have to do\n * anything special to choose one license or the other and you don't have to\n * notify anyone which license you are using. You are free to use this code\n * in commercial projects as long as the copyright header is left intact.\n * See files GPL-LICENSE and MIT-LICENSE for details.\n *\n * @licence GNU General Public Licence 2.0 or later\n * @licence MIT License\n */\n\n( function ( $ ) {\n\t'use strict';\n\tvar strongDirRegExp;\n\n\t/**\n\t * Matches the first strong directionality codepoint:\n\t * - in group 1 if it is LTR\n\t * - in group 2 if it is RTL\n\t * Does not match if there is no strong directionality codepoint.\n\t *\n\t * Generated by UnicodeJS (see tools/strongDir) from the UCD; see\n\t * https://phabricator.wikimedia.org/diffusion/GUJS/ .\n\t */\n\tstrongDirRegExp = new RegExp(\n\t\t'(?:' +\n\t\t\t'(' +\n\t\t\t\t'[\\u0041-\\u005a\\u0061-\\u007a\\u00aa\\u00b5\\u00ba\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u02b8\\u02bb-\\u02c1\\u02d0\\u02d1\\u02e0-\\u02e4\\u02ee\\u0370-\\u0373\\u0376\\u0377\\u037a-\\u037d\\u037f\\u0386\\u0388-\\u038a\\u038c\\u038e-\\u03a1\\u03a3-\\u03f5\\u03f7-\\u0482\\u048a-\\u052f\\u0531-\\u0556\\u0559-\\u055f\\u0561-\\u0587\\u0589\\u0903-\\u0939\\u093b\\u093d-\\u0940\\u0949-\\u094c\\u094e-\\u0950\\u0958-\\u0961\\u0964-\\u0980\\u0982\\u0983\\u0985-\\u098c\\u098f\\u0990\\u0993-\\u09a8\\u09aa-\\u09b0\\u09b2\\u09b6-\\u09b9\\u09bd-\\u09c0\\u09c7\\u09c8\\u09cb\\u09cc\\u09ce\\u09d7\\u09dc\\u09dd\\u09df-\\u09e1\\u09e6-\\u09f1\\u09f4-\\u09fa\\u0a03\\u0a05-\\u0a0a\\u0a0f\\u0a10\\u0a13-\\u0a28\\u0a2a-\\u0a30\\u0a32\\u0a33\\u0a35\\u0a36\\u0a38\\u0a39\\u0a3e-\\u0a40\\u0a59-\\u0a5c\\u0a5e\\u0a66-\\u0a6f\\u0a72-\\u0a74\\u0a83\\u0a85-\\u0a8d\\u0a8f-\\u0a91\\u0a93-\\u0aa8\\u0aaa-\\u0ab0\\u0ab2\\u0ab3\\u0ab5-\\u0ab9\\u0abd-\\u0ac0\\u0ac9\\u0acb\\u0acc\\u0ad0\\u0ae0\\u0ae1\\u0ae6-\\u0af0\\u0af9\\u0b02\\u0b03\\u0b05-\\u0b0c\\u0b0f\\u0b10\\u0b13-\\u0b28\\u0b2a-\\u0b30\\u0b32\\u0b33\\u0b35-\\u0b39\\u0b3d\\u0b3e\\u0b40\\u0b47\\u0b48\\u0b4b\\u0b4c\\u0b57\\u0b5c\\u0b5d\\u0b5f-\\u0b61\\u0b66-\\u0b77\\u0b83\\u0b85-\\u0b8a\\u0b8e-\\u0b90\\u0b92-\\u0b95\\u0b99\\u0b9a\\u0b9c\\u0b9e\\u0b9f\\u0ba3\\u0ba4\\u0ba8-\\u0baa\\u0bae-\\u0bb9\\u0bbe\\u0bbf\\u0bc1\\u0bc2\\u0bc6-\\u0bc8\\u0bca-\\u0bcc\\u0bd0\\u0bd7\\u0be6-\\u0bf2\\u0c01-\\u0c03\\u0c05-\\u0c0c\\u0c0e-\\u0c10\\u0c12-\\u0c28\\u0c2a-\\u0c39\\u0c3d\\u0c41-\\u0c44\\u0c58-\\u0c5a\\u0c60\\u0c61\\u0c66-\\u0c6f\\u0c7f\\u0c82\\u0c83\\u0c85-\\u0c8c\\u0c8e-\\u0c90\\u0c92-\\u0ca8\\u0caa-\\u0cb3\\u0cb5-\\u0cb9\\u0cbd-\\u0cc4\\u0cc6-\\u0cc8\\u0cca\\u0ccb\\u0cd5\\u0cd6\\u0cde\\u0ce0\\u0ce1\\u0ce6-\\u0cef\\u0cf1\\u0cf2\\u0d02\\u0d03\\u0d05-\\u0d0c\\u0d0e-\\u0d10\\u0d12-\\u0d3a\\u0d3d-\\u0d40\\u0d46-\\u0d48\\u0d4a-\\u0d4c\\u0d4e\\u0d57\\u0d5f-\\u0d61\\u0d66-\\u0d75\\u0d79-\\u0d7f\\u0d82\\u0d83\\u0d85-\\u0d96\\u0d9a-\\u0db1\\u0db3-\\u0dbb\\u0dbd\\u0dc0-\\u0dc6\\u0dcf-\\u0dd1\\u0dd8-\\u0ddf\\u0de6-\\u0def\\u0df2-\\u0df4\\u0e01-\\u0e30\\u0e32\\u0e33\\u0e40-\\u0e46\\u0e4f-\\u0e5b\\u0e81\\u0e82\\u0e84\\u0e87\\u0e88\\u0e8a\\u0e8d\\u0e94-\\u0e97\\u0e99-\\u0e9f\\u0ea1-\\u0ea3\\u0ea5\\u0ea7\\u0eaa\\u0eab\\u0ead-\\u0eb0\\u0eb2\\u0eb3\\u0ebd\\u0ec0-\\u0ec4\\u0ec6\\u0ed0-\\u0ed9\\u0edc-\\u0edf\\u0f00-\\u0f17\\u0f1a-\\u0f34\\u0f36\\u0f38\\u0f3e-\\u0f47\\u0f49-\\u0f6c\\u0f7f\\u0f85\\u0f88-\\u0f8c\\u0fbe-\\u0fc5\\u0fc7-\\u0fcc\\u0fce-\\u0fda\\u1000-\\u102c\\u1031\\u1038\\u103b\\u103c\\u103f-\\u1057\\u105a-\\u105d\\u1061-\\u1070\\u1075-\\u1081\\u1083\\u1084\\u1087-\\u108c\\u108e-\\u109c\\u109e-\\u10c5\\u10c7\\u10cd\\u10d0-\\u1248\\u124a-\\u124d\\u1250-\\u1256\\u1258\\u125a-\\u125d\\u1260-\\u1288\\u128a-\\u128d\\u1290-\\u12b0\\u12b2-\\u12b5\\u12b8-\\u12be\\u12c0\\u12c2-\\u12c5\\u12c8-\\u12d6\\u12d8-\\u1310\\u1312-\\u1315\\u1318-\\u135a\\u1360-\\u137c\\u1380-\\u138f\\u13a0-\\u13f5\\u13f8-\\u13fd\\u1401-\\u167f\\u1681-\\u169a\\u16a0-\\u16f8\\u1700-\\u170c\\u170e-\\u1711\\u1720-\\u1731\\u1735\\u1736\\u1740-\\u1751\\u1760-\\u176c\\u176e-\\u1770\\u1780-\\u17b3\\u17b6\\u17be-\\u17c5\\u17c7\\u17c8\\u17d4-\\u17da\\u17dc\\u17e0-\\u17e9\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18a8\\u18aa\\u18b0-\\u18f5\\u1900-\\u191e\\u1923-\\u1926\\u1929-\\u192b\\u1930\\u1931\\u1933-\\u1938\\u1946-\\u196d\\u1970-\\u1974\\u1980-\\u19ab\\u19b0-\\u19c9\\u19d0-\\u19da\\u1a00-\\u1a16\\u1a19\\u1a1a\\u1a1e-\\u1a55\\u1a57\\u1a61\\u1a63\\u1a64\\u1a6d-\\u1a72\\u1a80-\\u1a89\\u1a90-\\u1a99\\u1aa0-\\u1aad\\u1b04-\\u1b33\\u1b35\\u1b3b\\u1b3d-\\u1b41\\u1b43-\\u1b4b\\u1b50-\\u1b6a\\u1b74-\\u1b7c\\u1b82-\\u1ba1\\u1ba6\\u1ba7\\u1baa\\u1bae-\\u1be5\\u1be7\\u1bea-\\u1bec\\u1bee\\u1bf2\\u1bf3\\u1bfc-\\u1c2b\\u1c34\\u1c35\\u1c3b-\\u1c49\\u1c4d-\\u1c7f\\u1cc0-\\u1cc7\\u1cd3\\u1ce1\\u1ce9-\\u1cec\\u1cee-\\u1cf3\\u1cf5\\u1cf6\\u1d00-\\u1dbf\\u1e00-\\u1f15\\u1f18-\\u1f1d\\u1f20-\\u1f45\\u1f48-\\u1f4d\\u1f50-\\u1f57\\u1f59\\u1f5b\\u1f5d\\u1f5f-\\u1f7d\\u1f80-\\u1fb4\\u1fb6-\\u1fbc\\u1fbe\\u1fc2-\\u1fc4\\u1fc6-\\u1fcc\\u1fd0-\\u1fd3\\u1fd6-\\u1fdb\\u1fe0-\\u1fec\\u1ff2-\\u1ff4\\u1ff6-\\u1ffc\\u200e\\u2071\\u207f\\u2090-\\u209c\\u2102\\u2107\\u210a-\\u2113\\u2115\\u2119-\\u211d\\u2124\\u2126\\u2128\\u212a-\\u212d\\u212f-\\u2139\\u213c-\\u213f\\u2145-\\u2149\\u214e\\u214f\\u2160-\\u2188\\u2336-\\u237a\\u2395\\u249c-\\u24e9\\u26ac\\u2800-\\u28ff\\u2c00-\\u2c2e\\u2c30-\\u2c5e\\u2c60-\\u2ce4\\u2ceb-\\u2cee\\u2cf2\\u2cf3\\u2d00-\\u2d25\\u2d27\\u2d2d\\u2d30-\\u2d67\\u2d6f\\u2d70\\u2d80-\\u2d96\\u2da0-\\u2da6\\u2da8-\\u2dae\\u2db0-\\u2db6\\u2db8-\\u2dbe\\u2dc0-\\u2dc6\\u2dc8-\\u2dce\\u2dd0-\\u2dd6\\u2dd8-\\u2dde\\u3005-\\u3007\\u3021-\\u3029\\u302e\\u302f\\u3031-\\u3035\\u3038-\\u303c\\u3041-\\u3096\\u309d-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312d\\u3131-\\u318e\\u3190-\\u31ba\\u31f0-\\u321c\\u3220-\\u324f\\u3260-\\u327b\\u327f-\\u32b0\\u32c0-\\u32cb\\u32d0-\\u32fe\\u3300-\\u3376\\u337b-\\u33dd\\u33e0-\\u33fe\\u3400-\\u4db5\\u4e00-\\u9fd5\\ua000-\\ua48c\\ua4d0-\\ua60c\\ua610-\\ua62b\\ua640-\\ua66e\\ua680-\\ua69d\\ua6a0-\\ua6ef\\ua6f2-\\ua6f7\\ua722-\\ua787\\ua789-\\ua7ad\\ua7b0-\\ua7b7\\ua7f7-\\ua801\\ua803-\\ua805\\ua807-\\ua80a\\ua80c-\\ua824\\ua827\\ua830-\\ua837\\ua840-\\ua873\\ua880-\\ua8c3\\ua8ce-\\ua8d9\\ua8f2-\\ua8fd\\ua900-\\ua925\\ua92e-\\ua946\\ua952\\ua953\\ua95f-\\ua97c\\ua983-\\ua9b2\\ua9b4\\ua9b5\\ua9ba\\ua9bb\\ua9bd-\\ua9cd\\ua9cf-\\ua9d9\\ua9de-\\ua9e4\\ua9e6-\\ua9fe\\uaa00-\\uaa28\\uaa2f\\uaa30\\uaa33\\uaa34\\uaa40-\\uaa42\\uaa44-\\uaa4b\\uaa4d\\uaa50-\\uaa59\\uaa5c-\\uaa7b\\uaa7d-\\uaaaf\\uaab1\\uaab5\\uaab6\\uaab9-\\uaabd\\uaac0\\uaac2\\uaadb-\\uaaeb\\uaaee-\\uaaf5\\uab01-\\uab06\\uab09-\\uab0e\\uab11-\\uab16\\uab20-\\uab26\\uab28-\\uab2e\\uab30-\\uab65\\uab70-\\uabe4\\uabe6\\uabe7\\uabe9-\\uabec\\uabf0-\\uabf9\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\ue000-\\ufa6d\\ufa70-\\ufad9\\ufb00-\\ufb06\\ufb13-\\ufb17\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc]|\\ud800[\\udc00-\\udc0b]|\\ud800[\\udc0d-\\udc26]|\\ud800[\\udc28-\\udc3a]|\\ud800\\udc3c|\\ud800\\udc3d|\\ud800[\\udc3f-\\udc4d]|\\ud800[\\udc50-\\udc5d]|\\ud800[\\udc80-\\udcfa]|\\ud800\\udd00|\\ud800\\udd02|\\ud800[\\udd07-\\udd33]|\\ud800[\\udd37-\\udd3f]|\\ud800[\\uddd0-\\uddfc]|\\ud800[\\ude80-\\ude9c]|\\ud800[\\udea0-\\uded0]|\\ud800[\\udf00-\\udf23]|\\ud800[\\udf30-\\udf4a]|\\ud800[\\udf50-\\udf75]|\\ud800[\\udf80-\\udf9d]|\\ud800[\\udf9f-\\udfc3]|\\ud800[\\udfc8-\\udfd5]|\\ud801[\\udc00-\\udc9d]|\\ud801[\\udca0-\\udca9]|\\ud801[\\udd00-\\udd27]|\\ud801[\\udd30-\\udd63]|\\ud801\\udd6f|\\ud801[\\ude00-\\udf36]|\\ud801[\\udf40-\\udf55]|\\ud801[\\udf60-\\udf67]|\\ud804\\udc00|\\ud804[\\udc02-\\udc37]|\\ud804[\\udc47-\\udc4d]|\\ud804[\\udc66-\\udc6f]|\\ud804[\\udc82-\\udcb2]|\\ud804\\udcb7|\\ud804\\udcb8|\\ud804[\\udcbb-\\udcc1]|\\ud804[\\udcd0-\\udce8]|\\ud804[\\udcf0-\\udcf9]|\\ud804[\\udd03-\\udd26]|\\ud804\\udd2c|\\ud804[\\udd36-\\udd43]|\\ud804[\\udd50-\\udd72]|\\ud804[\\udd74-\\udd76]|\\ud804[\\udd82-\\uddb5]|\\ud804[\\uddbf-\\uddc9]|\\ud804\\uddcd|\\ud804[\\uddd0-\\udddf]|\\ud804[\\udde1-\\uddf4]|\\ud804[\\ude00-\\ude11]|\\ud804[\\ude13-\\ude2e]|\\ud804\\ude32|\\ud804\\ude33|\\ud804\\ude35|\\ud804[\\ude38-\\ude3d]|\\ud804[\\ude80-\\ude86]|\\ud804\\ude88|\\ud804[\\ude8a-\\ude8d]|\\ud804[\\ude8f-\\ude9d]|\\ud804[\\ude9f-\\udea9]|\\ud804[\\udeb0-\\udede]|\\ud804[\\udee0-\\udee2]|\\ud804[\\udef0-\\udef9]|\\ud804\\udf02|\\ud804\\udf03|\\ud804[\\udf05-\\udf0c]|\\ud804\\udf0f|\\ud804\\udf10|\\ud804[\\udf13-\\udf28]|\\ud804[\\udf2a-\\udf30]|\\ud804\\udf32|\\ud804\\udf33|\\ud804[\\udf35-\\udf39]|\\ud804[\\udf3d-\\udf3f]|\\ud804[\\udf41-\\udf44]|\\ud804\\udf47|\\ud804\\udf48|\\ud804[\\udf4b-\\udf4d]|\\ud804\\udf50|\\ud804\\udf57|\\ud804[\\udf5d-\\udf63]|\\ud805[\\udc80-\\udcb2]|\\ud805\\udcb9|\\ud805[\\udcbb-\\udcbe]|\\ud805\\udcc1|\\ud805[\\udcc4-\\udcc7]|\\ud805[\\udcd0-\\udcd9]|\\ud805[\\udd80-\\uddb1]|\\ud805[\\uddb8-\\uddbb]|\\ud805\\uddbe|\\ud805[\\uddc1-\\udddb]|\\ud805[\\ude00-\\ude32]|\\ud805\\ude3b|\\ud805\\ude3c|\\ud805\\ude3e|\\ud805[\\ude41-\\ude44]|\\ud805[\\ude50-\\ude59]|\\ud805[\\ude80-\\udeaa]|\\ud805\\udeac|\\ud805\\udeae|\\ud805\\udeaf|\\ud805\\udeb6|\\ud805[\\udec0-\\udec9]|\\ud805[\\udf00-\\udf19]|\\ud805\\udf20|\\ud805\\udf21|\\ud805\\udf26|\\ud805[\\udf30-\\udf3f]|\\ud806[\\udca0-\\udcf2]|\\ud806\\udcff|\\ud806[\\udec0-\\udef8]|\\ud808[\\udc00-\\udf99]|\\ud809[\\udc00-\\udc6e]|\\ud809[\\udc70-\\udc74]|\\ud809[\\udc80-\\udd43]|\\ud80c[\\udc00-\\udfff]|\\ud80d[\\udc00-\\udc2e]|\\ud811[\\udc00-\\ude46]|\\ud81a[\\udc00-\\ude38]|\\ud81a[\\ude40-\\ude5e]|\\ud81a[\\ude60-\\ude69]|\\ud81a\\ude6e|\\ud81a\\ude6f|\\ud81a[\\uded0-\\udeed]|\\ud81a\\udef5|\\ud81a[\\udf00-\\udf2f]|\\ud81a[\\udf37-\\udf45]|\\ud81a[\\udf50-\\udf59]|\\ud81a[\\udf5b-\\udf61]|\\ud81a[\\udf63-\\udf77]|\\ud81a[\\udf7d-\\udf8f]|\\ud81b[\\udf00-\\udf44]|\\ud81b[\\udf50-\\udf7e]|\\ud81b[\\udf93-\\udf9f]|\\ud82c\\udc00|\\ud82c\\udc01|\\ud82f[\\udc00-\\udc6a]|\\ud82f[\\udc70-\\udc7c]|\\ud82f[\\udc80-\\udc88]|\\ud82f[\\udc90-\\udc99]|\\ud82f\\udc9c|\\ud82f\\udc9f|\\ud834[\\udc00-\\udcf5]|\\ud834[\\udd00-\\udd26]|\\ud834[\\udd29-\\udd66]|\\ud834[\\udd6a-\\udd72]|\\ud834\\udd83|\\ud834\\udd84|\\ud834[\\udd8c-\\udda9]|\\ud834[\\uddae-\\udde8]|\\ud834[\\udf60-\\udf71]|\\ud835[\\udc00-\\udc54]|\\ud835[\\udc56-\\udc9c]|\\ud835\\udc9e|\\ud835\\udc9f|\\ud835\\udca2|\\ud835\\udca5|\\ud835\\udca6|\\ud835[\\udca9-\\udcac]|\\ud835[\\udcae-\\udcb9]|\\ud835\\udcbb|\\ud835[\\udcbd-\\udcc3]|\\ud835[\\udcc5-\\udd05]|\\ud835[\\udd07-\\udd0a]|\\ud835[\\udd0d-\\udd14]|\\ud835[\\udd16-\\udd1c]|\\ud835[\\udd1e-\\udd39]|\\ud835[\\udd3b-\\udd3e]|\\ud835[\\udd40-\\udd44]|\\ud835\\udd46|\\ud835[\\udd4a-\\udd50]|\\ud835[\\udd52-\\udea5]|\\ud835[\\udea8-\\udeda]|\\ud835[\\udedc-\\udf14]|\\ud835[\\udf16-\\udf4e]|\\ud835[\\udf50-\\udf88]|\\ud835[\\udf8a-\\udfc2]|\\ud835[\\udfc4-\\udfcb]|\\ud836[\\udc00-\\uddff]|\\ud836[\\ude37-\\ude3a]|\\ud836[\\ude6d-\\ude74]|\\ud836[\\ude76-\\ude83]|\\ud836[\\ude85-\\ude8b]|\\ud83c[\\udd10-\\udd2e]|\\ud83c[\\udd30-\\udd69]|\\ud83c[\\udd70-\\udd9a]|\\ud83c[\\udde6-\\ude02]|\\ud83c[\\ude10-\\ude3a]|\\ud83c[\\ude40-\\ude48]|\\ud83c\\ude50|\\ud83c\\ude51|[\\ud840-\\ud868][\\udc00-\\udfff]|\\ud869[\\udc00-\\uded6]|\\ud869[\\udf00-\\udfff]|[\\ud86a-\\ud86c][\\udc00-\\udfff]|\\ud86d[\\udc00-\\udf34]|\\ud86d[\\udf40-\\udfff]|\\ud86e[\\udc00-\\udc1d]|\\ud86e[\\udc20-\\udfff]|[\\ud86f-\\ud872][\\udc00-\\udfff]|\\ud873[\\udc00-\\udea1]|\\ud87e[\\udc00-\\ude1d]|[\\udb80-\\udbbe][\\udc00-\\udfff]|\\udbbf[\\udc00-\\udffd]|[\\udbc0-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udffd]' +\n\t\t\t')|(' +\n\t\t\t\t'[\\u0590\\u05be\\u05c0\\u05c3\\u05c6\\u05c8-\\u05ff\\u07c0-\\u07ea\\u07f4\\u07f5\\u07fa-\\u0815\\u081a\\u0824\\u0828\\u082e-\\u0858\\u085c-\\u089f\\u200f\\ufb1d\\ufb1f-\\ufb28\\ufb2a-\\ufb4f\\u0608\\u060b\\u060d\\u061b-\\u064a\\u066d-\\u066f\\u0671-\\u06d5\\u06e5\\u06e6\\u06ee\\u06ef\\u06fa-\\u0710\\u0712-\\u072f\\u074b-\\u07a5\\u07b1-\\u07bf\\u08a0-\\u08e2\\ufb50-\\ufd3d\\ufd40-\\ufdcf\\ufdf0-\\ufdfc\\ufdfe\\ufdff\\ufe70-\\ufefe]|\\ud802[\\udc00-\\udd1e]|\\ud802[\\udd20-\\ude00]|\\ud802\\ude04|\\ud802[\\ude07-\\ude0b]|\\ud802[\\ude10-\\ude37]|\\ud802[\\ude3b-\\ude3e]|\\ud802[\\ude40-\\udee4]|\\ud802[\\udee7-\\udf38]|\\ud802[\\udf40-\\udfff]|\\ud803[\\udc00-\\ude5f]|\\ud803[\\ude7f-\\udfff]|\\ud83a[\\udc00-\\udccf]|\\ud83a[\\udcd7-\\udfff]|\\ud83b[\\udc00-\\uddff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\ude00-\\udeef]|\\ud83b[\\udef2-\\udeff]' +\n\t\t\t')' +\n\t\t')'\n\t);\n\n\t/**\n\t * Gets directionality of the first strongly directional codepoint\n\t *\n\t * This is the rule the BIDI algorithm uses to determine the directionality of\n\t * paragraphs ( http://unicode.org/reports/tr9/#The_Paragraph_Level ) and\n\t * FSI isolates ( http://unicode.org/reports/tr9/#Explicit_Directional_Isolates ).\n\t *\n\t * TODO: Does not handle BIDI control characters inside the text.\n\t * TODO: Does not handle unallocated characters.\n\t *\n\t * @param {string} text The text from which to extract initial directionality.\n\t * @return {string} Directionality (either 'ltr' or 'rtl')\n\t */\n\tfunction strongDirFromContent( text ) {\n\t\tvar m = text.match( strongDirRegExp );\n\t\tif ( !m ) {\n\t\t\treturn null;\n\t\t}\n\t\tif ( m[ 2 ] === undefined ) {\n\t\t\treturn 'ltr';\n\t\t}\n\t\treturn 'rtl';\n\t}\n\n\t$.extend( $.i18n.parser.emitter, {\n\t\t/**\n\t\t * Wraps argument with unicode control characters for directionality safety\n\t\t *\n\t\t * This solves the problem where directionality-neutral characters at the edge of\n\t\t * the argument string get interpreted with the wrong directionality from the\n\t\t * enclosing context, giving renderings that look corrupted like \"(Ben_(WMF\".\n\t\t *\n\t\t * The wrapping is LRE...PDF or RLE...PDF, depending on the detected\n\t\t * directionality of the argument string, using the BIDI algorithm's own \"First\n\t\t * strong directional codepoint\" rule. Essentially, this works round the fact that\n\t\t * there is no embedding equivalent of U+2068 FSI (isolation with heuristic\n\t\t * direction inference). The latter is cleaner but still not widely supported.\n\t\t *\n\t\t * @param {string[]} nodes The text nodes from which to take the first item.\n\t\t * @return {string} Wrapped String of content as needed.\n\t\t */\n\t\tbidi: function ( nodes ) {\n\t\t\tvar dir = strongDirFromContent( nodes[ 0 ] );\n\t\t\tif ( dir === 'ltr' ) {\n\t\t\t\t// Wrap in LEFT-TO-RIGHT EMBEDDING ... POP DIRECTIONAL FORMATTING\n\t\t\t\treturn '\\u202A' + nodes[ 0 ] + '\\u202C';\n\t\t\t}\n\t\t\tif ( dir === 'rtl' ) {\n\t\t\t\t// Wrap in RIGHT-TO-LEFT EMBEDDING ... POP DIRECTIONAL FORMATTING\n\t\t\t\treturn '\\u202B' + nodes[ 0 ] + '\\u202C';\n\t\t\t}\n\t\t\t// No strong directionality: do not wrap\n\t\t\treturn nodes[ 0 ];\n\t\t}\n\t} );\n}( jQuery ) );\n","module.exports = jQuery;","/*!\n * jQuery Internationalization library\n *\n * Copyright (C) 2011-2013 Santhosh Thottingal, Neil Kandalgaonkar\n *\n * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do\n * anything special to choose one license or the other and you don't have to\n * notify anyone which license you are using. You are free to use\n * UniversalLanguageSelector in commercial projects as long as the copyright\n * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.\n *\n * @licence GNU General Public Licence 2.0 or later\n * @licence MIT License\n */\n\n( function ( $ ) {\n\t'use strict';\n\n\tvar MessageParserEmitter = function () {\n\t\tthis.language = $.i18n.languages[ String.locale ] || $.i18n.languages[ 'default' ];\n\t};\n\n\tMessageParserEmitter.prototype = {\n\t\tconstructor: MessageParserEmitter,\n\n\t\t/**\n\t\t * (We put this method definition here, and not in prototype, to make\n\t\t * sure it's not overwritten by any magic.) Walk entire node structure,\n\t\t * applying replacements and template functions when appropriate\n\t\t *\n\t\t * @param {Mixed} node abstract syntax tree (top node or subnode)\n\t\t * @param {Array} replacements for $1, $2, ... $n\n\t\t * @return {Mixed} single-string node or array of nodes suitable for\n\t\t * jQuery appending.\n\t\t */\n\t\temit: function ( node, replacements ) {\n\t\t\tvar ret, subnodes, operation,\n\t\t\t\tmessageParserEmitter = this;\n\n\t\t\tswitch ( typeof node ) {\n\t\t\t\tcase 'string':\n\t\t\t\tcase 'number':\n\t\t\t\t\tret = node;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'object':\n\t\t\t\t// node is an array of nodes\n\t\t\t\t\tsubnodes = $.map( node.slice( 1 ), function ( n ) {\n\t\t\t\t\t\treturn messageParserEmitter.emit( n, replacements );\n\t\t\t\t\t} );\n\n\t\t\t\t\toperation = node[ 0 ].toLowerCase();\n\n\t\t\t\t\tif ( typeof messageParserEmitter[ operation ] === 'function' ) {\n\t\t\t\t\t\tret = messageParserEmitter[ operation ]( subnodes, replacements );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow new Error( 'unknown operation \"' + operation + '\"' );\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'undefined':\n\t\t\t\t// Parsing the empty string (as an entire expression, or as a\n\t\t\t\t// paramExpression in a template) results in undefined\n\t\t\t\t// Perhaps a more clever parser can detect this, and return the\n\t\t\t\t// empty string? Or is that useful information?\n\t\t\t\t// The logical thing is probably to return the empty string here\n\t\t\t\t// when we encounter undefined.\n\t\t\t\t\tret = '';\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tthrow new Error( 'unexpected type in AST: ' + typeof node );\n\t\t\t}\n\n\t\t\treturn ret;\n\t\t},\n\n\t\t/**\n\t\t * Parsing has been applied depth-first we can assume that all nodes\n\t\t * here are single nodes Must return a single node to parents -- a\n\t\t * jQuery with synthetic span However, unwrap any other synthetic spans\n\t\t * in our children and pass them upwards\n\t\t *\n\t\t * @param {Array} nodes Mixed, some single nodes, some arrays of nodes.\n\t\t * @return {string}\n\t\t */\n\t\tconcat: function ( nodes ) {\n\t\t\tvar result = '';\n\n\t\t\t$.each( nodes, function ( i, node ) {\n\t\t\t\t// strings, integers, anything else\n\t\t\t\tresult += node;\n\t\t\t} );\n\n\t\t\treturn result;\n\t\t},\n\n\t\t/**\n\t\t * Return escaped replacement of correct index, or string if\n\t\t * unavailable. Note that we expect the parsed parameter to be\n\t\t * zero-based. i.e. $1 should have become [ 0 ]. if the specified\n\t\t * parameter is not found return the same string (e.g. \"$99\" ->\n\t\t * parameter 98 -> not found -> return \"$99\" ) TODO throw error if\n\t\t * nodes.length > 1 ?\n\t\t *\n\t\t * @param {Array} nodes One element, integer, n >= 0\n\t\t * @param {Array} replacements for $1, $2, ... $n\n\t\t * @return {string} replacement\n\t\t */\n\t\treplace: function ( nodes, replacements ) {\n\t\t\tvar index = parseInt( nodes[ 0 ], 10 );\n\n\t\t\tif ( index < replacements.length ) {\n\t\t\t\t// replacement is not a string, don't touch!\n\t\t\t\treturn replacements[ index ];\n\t\t\t} else {\n\t\t\t\t// index not found, fallback to displaying variable\n\t\t\t\treturn '$' + ( index + 1 );\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Transform parsed structure into pluralization n.b. The first node may\n\t\t * be a non-integer (for instance, a string representing an Arabic\n\t\t * number). So convert it back with the current language's\n\t\t * convertNumber.\n\t\t *\n\t\t * @param {Array} nodes List [ {String|Number}, {String}, {String} ... ]\n\t\t * @return {string} selected pluralized form according to current\n\t\t * language.\n\t\t */\n\t\tplural: function ( nodes ) {\n\t\t\tvar count = parseFloat( this.language.convertNumber( nodes[ 0 ], 10 ) ),\n\t\t\t\tforms = nodes.slice( 1 );\n\n\t\t\treturn forms.length ? this.language.convertPlural( count, forms ) : '';\n\t\t},\n\n\t\t/**\n\t\t * Transform parsed structure into gender Usage\n\t\t * {{gender:gender|masculine|feminine|neutral}}.\n\t\t *\n\t\t * @param {Array} nodes List [ {String}, {String}, {String} , {String} ]\n\t\t * @return {string} selected gender form according to current language\n\t\t */\n\t\tgender: function ( nodes ) {\n\t\t\tvar gender = nodes[ 0 ],\n\t\t\t\tforms = nodes.slice( 1 );\n\n\t\t\treturn this.language.gender( gender, forms );\n\t\t},\n\n\t\t/**\n\t\t * Transform parsed structure into grammar conversion. Invoked by\n\t\t * putting {{grammar:form|word}} in a message\n\t\t *\n\t\t * @param {Array} nodes List [{Grammar case eg: genitive}, {String word}]\n\t\t * @return {string} selected grammatical form according to current\n\t\t * language.\n\t\t */\n\t\tgrammar: function ( nodes ) {\n\t\t\tvar form = nodes[ 0 ],\n\t\t\t\tword = nodes[ 1 ];\n\n\t\t\treturn word && form && this.language.convertGrammar( word, form );\n\t\t}\n\t};\n\n\t$.extend( $.i18n.parser.emitter, new MessageParserEmitter() );\n}( jQuery ) );\n","/*!\n * jQuery Internationalization library\n *\n * Copyright (C) 2011-2013 Santhosh Thottingal, Neil Kandalgaonkar\n *\n * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do\n * anything special to choose one license or the other and you don't have to\n * notify anyone which license you are using. You are free to use\n * UniversalLanguageSelector in commercial projects as long as the copyright\n * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.\n *\n * @licence GNU General Public Licence 2.0 or later\n * @licence MIT License\n */\n\n( function ( $ ) {\n\t'use strict';\n\n\tvar MessageParser = function ( options ) {\n\t\tthis.options = $.extend( {}, $.i18n.parser.defaults, options );\n\t\tthis.language = $.i18n.languages[ String.locale ] || $.i18n.languages[ 'default' ];\n\t\tthis.emitter = $.i18n.parser.emitter;\n\t};\n\n\tMessageParser.prototype = {\n\n\t\tconstructor: MessageParser,\n\n\t\tsimpleParse: function ( message, parameters ) {\n\t\t\treturn message.replace( /\\$(\\d+)/g, function ( str, match ) {\n\t\t\t\tvar index = parseInt( match, 10 ) - 1;\n\n\t\t\t\treturn parameters[ index ] !== undefined ? parameters[ index ] : '$' + match;\n\t\t\t} );\n\t\t},\n\n\t\tparse: function ( message, replacements ) {\n\t\t\tif ( message.indexOf( '{{' ) < 0 ) {\n\t\t\t\treturn this.simpleParse( message, replacements );\n\t\t\t}\n\n\t\t\tthis.emitter.language = $.i18n.languages[ $.i18n().locale ] ||\n\t\t\t\t$.i18n.languages[ 'default' ];\n\n\t\t\treturn this.emitter.emit( this.ast( message ), replacements );\n\t\t},\n\n\t\tast: function ( message ) {\n\t\t\tvar pipe, colon, backslash, anyCharacter, dollar, digits, regularLiteral,\n\t\t\t\tregularLiteralWithoutBar, regularLiteralWithoutSpace, escapedOrLiteralWithoutBar,\n\t\t\t\tescapedOrRegularLiteral, templateContents, templateName, openTemplate,\n\t\t\t\tcloseTemplate, expression, paramExpression, result,\n\t\t\t\tpos = 0;\n\n\t\t\t// Try parsers until one works, if none work return null\n\t\t\tfunction choice( parserSyntax ) {\n\t\t\t\treturn function () {\n\t\t\t\t\tvar i, result;\n\n\t\t\t\t\tfor ( i = 0; i < parserSyntax.length; i++ ) {\n\t\t\t\t\t\tresult = parserSyntax[ i ]();\n\n\t\t\t\t\t\tif ( result !== null ) {\n\t\t\t\t\t\t\treturn result;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn null;\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// Try several parserSyntax-es in a row.\n\t\t\t// All must succeed; otherwise, return null.\n\t\t\t// This is the only eager one.\n\t\t\tfunction sequence( parserSyntax ) {\n\t\t\t\tvar i, res,\n\t\t\t\t\toriginalPos = pos,\n\t\t\t\t\tresult = [];\n\n\t\t\t\tfor ( i = 0; i < parserSyntax.length; i++ ) {\n\t\t\t\t\tres = parserSyntax[ i ]();\n\n\t\t\t\t\tif ( res === null ) {\n\t\t\t\t\t\tpos = originalPos;\n\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\tresult.push( res );\n\t\t\t\t}\n\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\t// Run the same parser over and over until it fails.\n\t\t\t// Must succeed a minimum of n times; otherwise, return null.\n\t\t\tfunction nOrMore( n, p ) {\n\t\t\t\treturn function () {\n\t\t\t\t\tvar originalPos = pos,\n\t\t\t\t\t\tresult = [],\n\t\t\t\t\t\tparsed = p();\n\n\t\t\t\t\twhile ( parsed !== null ) {\n\t\t\t\t\t\tresult.push( parsed );\n\t\t\t\t\t\tparsed = p();\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( result.length < n ) {\n\t\t\t\t\t\tpos = originalPos;\n\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn result;\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// Helpers -- just make parserSyntax out of simpler JS builtin types\n\n\t\t\tfunction makeStringParser( s ) {\n\t\t\t\tvar len = s.length;\n\n\t\t\t\treturn function () {\n\t\t\t\t\tvar result = null;\n\n\t\t\t\t\tif ( message.slice( pos, pos + len ) === s ) {\n\t\t\t\t\t\tresult = s;\n\t\t\t\t\t\tpos += len;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn result;\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tfunction makeRegexParser( regex ) {\n\t\t\t\treturn function () {\n\t\t\t\t\tvar matches = message.slice( pos ).match( regex );\n\n\t\t\t\t\tif ( matches === null ) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\tpos += matches[ 0 ].length;\n\n\t\t\t\t\treturn matches[ 0 ];\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tpipe = makeStringParser( '|' );\n\t\t\tcolon = makeStringParser( ':' );\n\t\t\tbackslash = makeStringParser( '\\\\' );\n\t\t\tanyCharacter = makeRegexParser( /^./ );\n\t\t\tdollar = makeStringParser( '$' );\n\t\t\tdigits = makeRegexParser( /^\\d+/ );\n\t\t\tregularLiteral = makeRegexParser( /^[^{}[\\]$\\\\]/ );\n\t\t\tregularLiteralWithoutBar = makeRegexParser( /^[^{}[\\]$\\\\|]/ );\n\t\t\tregularLiteralWithoutSpace = makeRegexParser( /^[^{}[\\]$\\s]/ );\n\n\t\t\t// There is a general pattern:\n\t\t\t// parse a thing;\n\t\t\t// if it worked, apply transform,\n\t\t\t// otherwise return null.\n\t\t\t// But using this as a combinator seems to cause problems\n\t\t\t// when combined with nOrMore().\n\t\t\t// May be some scoping issue.\n\t\t\tfunction transform( p, fn ) {\n\t\t\t\treturn function () {\n\t\t\t\t\tvar result = p();\n\n\t\t\t\t\treturn result === null ? null : fn( result );\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// Used to define \"literals\" within template parameters. The pipe\n\t\t\t// character is the parameter delimeter, so by default\n\t\t\t// it is not a literal in the parameter\n\t\t\tfunction literalWithoutBar() {\n\t\t\t\tvar result = nOrMore( 1, escapedOrLiteralWithoutBar )();\n\n\t\t\t\treturn result === null ? null : result.join( '' );\n\t\t\t}\n\n\t\t\tfunction literal() {\n\t\t\t\tvar result = nOrMore( 1, escapedOrRegularLiteral )();\n\n\t\t\t\treturn result === null ? null : result.join( '' );\n\t\t\t}\n\n\t\t\tfunction escapedLiteral() {\n\t\t\t\tvar result = sequence( [ backslash, anyCharacter ] );\n\n\t\t\t\treturn result === null ? null : result[ 1 ];\n\t\t\t}\n\n\t\t\tchoice( [ escapedLiteral, regularLiteralWithoutSpace ] );\n\t\t\tescapedOrLiteralWithoutBar = choice( [ escapedLiteral, regularLiteralWithoutBar ] );\n\t\t\tescapedOrRegularLiteral = choice( [ escapedLiteral, regularLiteral ] );\n\n\t\t\tfunction replacement() {\n\t\t\t\tvar result = sequence( [ dollar, digits ] );\n\n\t\t\t\tif ( result === null ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\treturn [ 'REPLACE', parseInt( result[ 1 ], 10 ) - 1 ];\n\t\t\t}\n\n\t\t\ttemplateName = transform(\n\t\t\t\t// see $wgLegalTitleChars\n\t\t\t\t// not allowing : due to the need to catch \"PLURAL:$1\"\n\t\t\t\tmakeRegexParser( /^[ !\"$&'()*,./0-9;=?@A-Z^_`a-z~\\x80-\\xFF+-]+/ ),\n\n\t\t\t\tfunction ( result ) {\n\t\t\t\t\treturn result.toString();\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tfunction templateParam() {\n\t\t\t\tvar expr,\n\t\t\t\t\tresult = sequence( [ pipe, nOrMore( 0, paramExpression ) ] );\n\n\t\t\t\tif ( result === null ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\texpr = result[ 1 ];\n\n\t\t\t\t// use a \"CONCAT\" operator if there are multiple nodes,\n\t\t\t\t// otherwise return the first node, raw.\n\t\t\t\treturn expr.length > 1 ? [ 'CONCAT' ].concat( expr ) : expr[ 0 ];\n\t\t\t}\n\n\t\t\tfunction templateWithReplacement() {\n\t\t\t\tvar result = sequence( [ templateName, colon, replacement ] );\n\n\t\t\t\treturn result === null ? null : [ result[ 0 ], result[ 2 ] ];\n\t\t\t}\n\n\t\t\tfunction templateWithOutReplacement() {\n\t\t\t\tvar result = sequence( [ templateName, colon, paramExpression ] );\n\n\t\t\t\treturn result === null ? null : [ result[ 0 ], result[ 2 ] ];\n\t\t\t}\n\n\t\t\ttemplateContents = choice( [\n\t\t\t\tfunction () {\n\t\t\t\t\tvar res = sequence( [\n\t\t\t\t\t\t// templates can have placeholders for dynamic\n\t\t\t\t\t\t// replacement eg: {{PLURAL:$1|one car|$1 cars}}\n\t\t\t\t\t\t// or no placeholders eg:\n\t\t\t\t\t\t// {{GRAMMAR:genitive|{{SITENAME}}}\n\t\t\t\t\t\tchoice( [ templateWithReplacement, templateWithOutReplacement ] ),\n\t\t\t\t\t\tnOrMore( 0, templateParam )\n\t\t\t\t\t] );\n\n\t\t\t\t\treturn res === null ? null : res[ 0 ].concat( res[ 1 ] );\n\t\t\t\t},\n\t\t\t\tfunction () {\n\t\t\t\t\tvar res = sequence( [ templateName, nOrMore( 0, templateParam ) ] );\n\n\t\t\t\t\tif ( res === null ) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn [ res[ 0 ] ].concat( res[ 1 ] );\n\t\t\t\t}\n\t\t\t] );\n\n\t\t\topenTemplate = makeStringParser( '{{' );\n\t\t\tcloseTemplate = makeStringParser( '}}' );\n\n\t\t\tfunction template() {\n\t\t\t\tvar result = sequence( [ openTemplate, templateContents, closeTemplate ] );\n\n\t\t\t\treturn result === null ? null : result[ 1 ];\n\t\t\t}\n\n\t\t\texpression = choice( [ template, replacement, literal ] );\n\t\t\tparamExpression = choice( [ template, replacement, literalWithoutBar ] );\n\n\t\t\tfunction start() {\n\t\t\t\tvar result = nOrMore( 0, expression )();\n\n\t\t\t\tif ( result === null ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\treturn [ 'CONCAT' ].concat( result );\n\t\t\t}\n\n\t\t\tresult = start();\n\n\t\t\t/*\n\t\t\t * For success, the pos must have gotten to the end of the input\n\t\t\t * and returned a non-null.\n\t\t\t * n.b. This is part of language infrastructure, so we do not throw an\n\t\t\t * internationalizable message.\n\t\t\t */\n\t\t\tif ( result === null || pos !== message.length ) {\n\t\t\t\tthrow new Error( 'Parse error at position ' + pos.toString() + ' in input: ' + message );\n\t\t\t}\n\n\t\t\treturn result;\n\t\t}\n\n\t};\n\n\t$.extend( $.i18n.parser, new MessageParser() );\n}( jQuery ) );","/*!\n * jQuery Internationalization library - Message Store\n *\n * Copyright (C) 2012 Santhosh Thottingal\n *\n * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do anything special to\n * choose one license or the other and you don't have to notify anyone which license you are using.\n * You are free to use UniversalLanguageSelector in commercial projects as long as the copyright\n * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.\n *\n * @licence GNU General Public Licence 2.0 or later\n * @licence MIT License\n */\n\n( function ( $ ) {\n\t'use strict';\n\n\tvar MessageStore = function () {\n\t\tthis.messages = {};\n\t\tthis.sources = {};\n\t};\n\n\tfunction jsonMessageLoader( url ) {\n\t\tvar deferred = $.Deferred();\n\n\t\t$.getJSON( url )\n\t\t\t.done( deferred.resolve )\n\t\t\t.fail( function ( jqxhr, settings, exception ) {\n\t\t\t\t$.i18n.log( 'Error in loading messages from ' + url + ' Exception: ' + exception );\n\t\t\t\t// Ignore 404 exception, because we are handling fallabacks explicitly\n\t\t\t\tdeferred.resolve();\n\t\t\t} );\n\n\t\treturn deferred.promise();\n\t}\n\n\t/**\n\t * See https://github.com/wikimedia/jquery.i18n/wiki/Specification#wiki-Message_File_Loading\n\t */\n\tMessageStore.prototype = {\n\n\t\t/**\n\t\t * General message loading API This can take a URL string for\n\t\t * the json formatted messages.\n\t\t * load('path/to/all_localizations.json');\n\t\t *\n\t\t * This can also load a localization file for a locale \n\t\t * load( 'path/to/de-messages.json', 'de' );\n\t\t * \n\t\t * A data object containing message key- message translation mappings\n\t\t * can also be passed Eg:\n\t\t * \n\t\t * load( { 'hello' : 'Hello' }, optionalLocale );\n\t\t * If the data argument is\n\t\t * null/undefined/false,\n\t\t * all cached messages for the i18n instance will get reset.\n\t\t *\n\t\t * @param {string|Object} source\n\t\t * @param {string} locale Language tag\n\t\t * @return {jQuery.Promise}\n\t\t */\n\t\tload: function ( source, locale ) {\n\t\t\tvar key = null,\n\t\t\t\tdeferred = null,\n\t\t\t\tdeferreds = [],\n\t\t\t\tmessageStore = this;\n\n\t\t\tif ( typeof source === 'string' ) {\n\t\t\t\t// This is a URL to the messages file.\n\t\t\t\t$.i18n.log( 'Loading messages from: ' + source );\n\t\t\t\tdeferred = jsonMessageLoader( source )\n\t\t\t\t\t.done( function ( localization ) {\n\t\t\t\t\t\tmessageStore.set( locale, localization );\n\t\t\t\t\t} );\n\n\t\t\t\treturn deferred.promise();\n\t\t\t}\n\n\t\t\tif ( locale ) {\n\t\t\t\t// source is an key-value pair of messages for given locale\n\t\t\t\tmessageStore.set( locale, source );\n\n\t\t\t\treturn $.Deferred().resolve();\n\t\t\t} else {\n\t\t\t\t// source is a key-value pair of locales and their source\n\t\t\t\tfor ( key in source ) {\n\t\t\t\t\tif ( Object.prototype.hasOwnProperty.call( source, key ) ) {\n\t\t\t\t\t\tlocale = key;\n\t\t\t\t\t\t// No {locale} given, assume data is a group of languages,\n\t\t\t\t\t\t// call this function again for each language.\n\t\t\t\t\t\tdeferreds.push( messageStore.load( source[ key ], locale ) );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn $.when.apply( $, deferreds );\n\t\t\t}\n\n\t\t},\n\n\t\t/**\n\t\t * Set messages to the given locale.\n\t\t * If locale exists, add messages to the locale.\n\t\t *\n\t\t * @param {string} locale\n\t\t * @param {Object} messages\n\t\t */\n\t\tset: function ( locale, messages ) {\n\t\t\tif ( !this.messages[ locale ] ) {\n\t\t\t\tthis.messages[ locale ] = messages;\n\t\t\t} else {\n\t\t\t\tthis.messages[ locale ] = $.extend( this.messages[ locale ], messages );\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t *\n\t\t * @param {string} locale\n\t\t * @param {string} messageKey\n\t\t * @return {boolean}\n\t\t */\n\t\tget: function ( locale, messageKey ) {\n\t\t\treturn this.messages[ locale ] && this.messages[ locale ][ messageKey ];\n\t\t}\n\t};\n\n\t$.extend( $.i18n.messageStore, new MessageStore() );\n}( jQuery ) );\n","/*!\n * jQuery Internationalization library\n *\n * Copyright (C) 2012 Santhosh Thottingal\n *\n * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do\n * anything special to choose one license or the other and you don't have to\n * notify anyone which license you are using. You are free to use\n * UniversalLanguageSelector in commercial projects as long as the copyright\n * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.\n *\n * @licence GNU General Public Licence 2.0 or later\n * @licence MIT License\n */\n\n( function ( $ ) {\n\t'use strict';\n\n\tvar I18N,\n\t\tslice = Array.prototype.slice;\n\t/**\n\t * @constructor\n\t * @param {Object} options\n\t */\n\tI18N = function ( options ) {\n\t\t// Load defaults\n\t\tthis.options = $.extend( {}, I18N.defaults, options );\n\n\t\tthis.parser = this.options.parser;\n\t\tthis.locale = this.options.locale;\n\t\tthis.messageStore = this.options.messageStore;\n\t\tthis.languages = {};\n\t};\n\n\tI18N.prototype = {\n\t\t/**\n\t\t * Localize a given messageKey to a locale.\n\t\t * @param {String} messageKey\n\t\t * @return {String} Localized message\n\t\t */\n\t\tlocalize: function ( messageKey ) {\n\t\t\tvar localeParts, localePartIndex, locale, fallbackIndex,\n\t\t\t\ttryingLocale, message;\n\n\t\t\tlocale = this.locale;\n\t\t\tfallbackIndex = 0;\n\n\t\t\twhile ( locale ) {\n\t\t\t\t// Iterate through locales starting at most-specific until\n\t\t\t\t// localization is found. As in fi-Latn-FI, fi-Latn and fi.\n\t\t\t\tlocaleParts = locale.split( '-' );\n\t\t\t\tlocalePartIndex = localeParts.length;\n\n\t\t\t\tdo {\n\t\t\t\t\ttryingLocale = localeParts.slice( 0, localePartIndex ).join( '-' );\n\t\t\t\t\tmessage = this.messageStore.get( tryingLocale, messageKey );\n\n\t\t\t\t\tif ( message ) {\n\t\t\t\t\t\treturn message;\n\t\t\t\t\t}\n\n\t\t\t\t\tlocalePartIndex--;\n\t\t\t\t} while ( localePartIndex );\n\n\t\t\t\tif ( locale === 'en' ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tlocale = ( $.i18n.fallbacks[ this.locale ] &&\n\t\t\t\t\t\t$.i18n.fallbacks[ this.locale ][ fallbackIndex ] ) ||\n\t\t\t\t\t\tthis.options.fallbackLocale;\n\t\t\t\t$.i18n.log( 'Trying fallback locale for ' + this.locale + ': ' + locale + ' (' + messageKey + ')' );\n\n\t\t\t\tfallbackIndex++;\n\t\t\t}\n\n\t\t\t// key not found\n\t\t\treturn '';\n\t\t},\n\n\t\t/*\n\t\t * Destroy the i18n instance.\n\t\t */\n\t\tdestroy: function () {\n\t\t\t$.removeData( document, 'i18n' );\n\t\t},\n\n\t\t/**\n\t\t * General message loading API This can take a URL string for\n\t\t * the json formatted messages. Example:\n\t\t * load('path/to/all_localizations.json');\n\t\t *\n\t\t * To load a localization file for a locale:\n\t\t * \n\t\t * load('path/to/de-messages.json', 'de' );\n\t\t * \n\t\t *\n\t\t * To load a localization file from a directory:\n\t\t * \n\t\t * load('path/to/i18n/directory', 'de' );\n\t\t * \n\t\t * The above method has the advantage of fallback resolution.\n\t\t * ie, it will automatically load the fallback locales for de.\n\t\t * For most usecases, this is the recommended method.\n\t\t * It is optional to have trailing slash at end.\n\t\t *\n\t\t * A data object containing message key- message translation mappings\n\t\t * can also be passed. Example:\n\t\t * \n\t\t * load( { 'hello' : 'Hello' }, optionalLocale );\n\t\t * \n\t\t *\n\t\t * A source map containing key-value pair of languagename and locations\n\t\t * can also be passed. Example:\n\t\t * \n\t\t * load( {\n\t\t * bn: 'i18n/bn.json',\n\t\t * he: 'i18n/he.json',\n\t\t * en: 'i18n/en.json'\n\t\t * } )\n\t\t * \n\t\t *\n\t\t * If the data argument is null/undefined/false,\n\t\t * all cached messages for the i18n instance will get reset.\n\t\t *\n\t\t * @param {string|Object} source\n\t\t * @param {string} locale Language tag\n\t\t * @return {jQuery.Promise}\n\t\t */\n\t\tload: function ( source, locale ) {\n\t\t\tvar fallbackLocales, locIndex, fallbackLocale, sourceMap = {};\n\t\t\tif ( !source && !locale ) {\n\t\t\t\tsource = 'i18n/' + $.i18n().locale + '.json';\n\t\t\t\tlocale = $.i18n().locale;\n\t\t\t}\n\t\t\tif ( typeof source === 'string' &&\n\t\t\t\t// source extension should be json, but can have query params after that.\n\t\t\t\tsource.split( '?' )[ 0 ].split( '.' ).pop() !== 'json'\n\t\t\t) {\n\t\t\t\t// Load specified locale then check for fallbacks when directory is\n\t\t\t\t// specified in load()\n\t\t\t\tsourceMap[ locale ] = source + '/' + locale + '.json';\n\t\t\t\tfallbackLocales = ( $.i18n.fallbacks[ locale ] || [] )\n\t\t\t\t\t.concat( this.options.fallbackLocale );\n\t\t\t\tfor ( locIndex = 0; locIndex < fallbackLocales.length; locIndex++ ) {\n\t\t\t\t\tfallbackLocale = fallbackLocales[ locIndex ];\n\t\t\t\t\tsourceMap[ fallbackLocale ] = source + '/' + fallbackLocale + '.json';\n\t\t\t\t}\n\t\t\t\treturn this.load( sourceMap );\n\t\t\t} else {\n\t\t\t\treturn this.messageStore.load( source, locale );\n\t\t\t}\n\n\t\t},\n\n\t\t/**\n\t\t * Does parameter and magic word substitution.\n\t\t *\n\t\t * @param {string} key Message key\n\t\t * @param {Array} parameters Message parameters\n\t\t * @return {string}\n\t\t */\n\t\tparse: function ( key, parameters ) {\n\t\t\tvar message = this.localize( key );\n\t\t\t// FIXME: This changes the state of the I18N object,\n\t\t\t// should probably not change the 'this.parser' but just\n\t\t\t// pass it to the parser.\n\t\t\tthis.parser.language = $.i18n.languages[ $.i18n().locale ] || $.i18n.languages[ 'default' ];\n\t\t\tif ( message === '' ) {\n\t\t\t\tmessage = key;\n\t\t\t}\n\t\t\treturn this.parser.parse( message, parameters );\n\t\t}\n\t};\n\n\t/**\n\t * Process a message from the $.I18N instance\n\t * for the current document, stored in jQuery.data(document).\n\t *\n\t * @param {string} key Key of the message.\n\t * @param {string} param1 [param...] Variadic list of parameters for {key}.\n\t * @return {string|$.I18N} Parsed message, or if no key was given\n\t * the instance of $.I18N is returned.\n\t */\n\t$.i18n = function ( key, param1 ) {\n\t\tvar parameters,\n\t\t\ti18n = $.data( document, 'i18n' ),\n\t\t\toptions = typeof key === 'object' && key;\n\n\t\t// If the locale option for this call is different then the setup so far,\n\t\t// update it automatically. This doesn't just change the context for this\n\t\t// call but for all future call as well.\n\t\t// If there is no i18n setup yet, don't do this. It will be taken care of\n\t\t// by the `new I18N` construction below.\n\t\t// NOTE: It should only change language for this one call.\n\t\t// Then cache instances of I18N somewhere.\n\t\tif ( options && options.locale && i18n && i18n.locale !== options.locale ) {\n\t\t\ti18n.locale = options.locale;\n\t\t}\n\n\t\tif ( !i18n ) {\n\t\t\ti18n = new I18N( options );\n\t\t\t$.data( document, 'i18n', i18n );\n\t\t}\n\n\t\tif ( typeof key === 'string' ) {\n\t\t\tif ( param1 !== undefined ) {\n\t\t\t\tparameters = slice.call( arguments, 1 );\n\t\t\t} else {\n\t\t\t\tparameters = [];\n\t\t\t}\n\n\t\t\treturn i18n.parse( key, parameters );\n\t\t} else {\n\t\t\t// FIXME: remove this feature/bug.\n\t\t\treturn i18n;\n\t\t}\n\t};\n\n\t$.fn.i18n = function () {\n\t\tvar i18n = $.data( document, 'i18n' );\n\n\t\tif ( !i18n ) {\n\t\t\ti18n = new I18N();\n\t\t\t$.data( document, 'i18n', i18n );\n\t\t}\n\n\t\treturn this.each( function () {\n\t\t\tvar $this = $( this ),\n\t\t\t\tmessageKey = $this.data( 'i18n' ),\n\t\t\t\tlBracket, rBracket, type, key;\n\n\t\t\tif ( messageKey ) {\n\t\t\t\tlBracket = messageKey.indexOf( '[' );\n\t\t\t\trBracket = messageKey.indexOf( ']' );\n\t\t\t\tif ( lBracket !== -1 && rBracket !== -1 && lBracket < rBracket ) {\n\t\t\t\t\ttype = messageKey.slice( lBracket + 1, rBracket );\n\t\t\t\t\tkey = messageKey.slice( rBracket + 1 );\n\t\t\t\t\tif ( type === 'html' ) {\n\t\t\t\t\t\t$this.html( i18n.parse( key ) );\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this.attr( type, i18n.parse( key ) );\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t$this.text( i18n.parse( messageKey ) );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t$this.find( '[data-i18n]' ).i18n();\n\t\t\t}\n\t\t} );\n\t};\n\n\tfunction getDefaultLocale() {\n\t\tvar nav, locale = $( 'html' ).attr( 'lang' );\n\n\t\tif ( !locale ) {\n\t\t\tif ( typeof window.navigator !== undefined ) {\n\t\t\t\tnav = window.navigator;\n\t\t\t\tlocale = nav.language || nav.userLanguage || '';\n\t\t\t} else {\n\t\t\t\tlocale = '';\n\t\t\t}\n\t\t}\n\t\treturn locale;\n\t}\n\n\t$.i18n.languages = {};\n\t$.i18n.messageStore = $.i18n.messageStore || {};\n\t$.i18n.parser = {\n\t\t// The default parser only handles variable substitution\n\t\tparse: function ( message, parameters ) {\n\t\t\treturn message.replace( /\\$(\\d+)/g, function ( str, match ) {\n\t\t\t\tvar index = parseInt( match, 10 ) - 1;\n\t\t\t\treturn parameters[ index ] !== undefined ? parameters[ index ] : '$' + match;\n\t\t\t} );\n\t\t},\n\t\temitter: {}\n\t};\n\t$.i18n.fallbacks = {};\n\t$.i18n.debug = false;\n\t$.i18n.log = function ( /* arguments */ ) {\n\t\tif ( window.console && $.i18n.debug ) {\n\t\t\twindow.console.log.apply( window.console, arguments );\n\t\t}\n\t};\n\t/* Static members */\n\tI18N.defaults = {\n\t\tlocale: getDefaultLocale(),\n\t\tfallbackLocale: 'en',\n\t\tparser: $.i18n.parser,\n\t\tmessageStore: $.i18n.messageStore\n\t};\n\n\t// Expose constructor\n\t$.i18n.constructor = I18N;\n}( jQuery ) );","/*!\n * jQuery idleTimer plugin\n * version 0.9.100511\n * by Paul Irish.\n * http://github.com/paulirish/yui-misc/tree/\n * MIT license\n\n * adapted from YUI idle timer by nzakas:\n * http://github.com/nzakas/yui-misc/\n*/\n/*\n * Copyright (c) 2009 Nicholas C. Zakas\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n/* updated to fix Chrome setTimeout issue by Zaid Zawaideh */\n\n // API available in <= v0.8\n /*******************************\n\n // idleTimer() takes an optional argument that defines the idle timeout\n // timeout is in milliseconds; defaults to 30000\n $.idleTimer(10000);\n\n\n $(document).bind(\"idle.idleTimer\", function(){\n // function you want to fire when the user goes idle\n });\n\n\n $(document).bind(\"active.idleTimer\", function(){\n // function you want to fire when the user becomes active again\n });\n\n // pass the string 'destroy' to stop the timer\n $.idleTimer('destroy');\n\n // you can query if the user is idle or not with data()\n $.data(document,'idleTimer'); // 'idle' or 'active'\n\n // you can get time elapsed since user when idle/active\n $.idleTimer('getElapsedTime'); // time since state change in ms\n\n ********/\n\n\n\n // API available in >= v0.9\n /*************************\n\n // bind to specific elements, allows for multiple timer instances\n $(elem).idleTimer(timeout|'destroy'|'getElapsedTime');\n $.data(elem,'idleTimer'); // 'idle' or 'active'\n\n // if you're using the old $.idleTimer api, you should not do $(document).idleTimer(...)\n\n // element bound timers will only watch for events inside of them.\n // you may just want page-level activity, in which case you may set up\n // your timers on document, document.documentElement, and document.body\n\n // You can optionally provide a second argument to override certain options.\n // Here are the defaults, so you can omit any or all of them.\n $(elem).idleTimer(timeout, {\n startImmediately: true, //starts a timeout as soon as the timer is set up; otherwise it waits for the first event.\n idle: false, //indicates if the user is idle\n enabled: true, //indicates if the idle timer is enabled\n events: 'mousemove keydown DOMMouseScroll mousewheel mousedown touchstart touchmove' // activity is one of these events\n });\n\n ********/\n\n(function($){\n\n$.idleTimer = function(newTimeout, elem, opts){\n\n // defaults that are to be stored as instance props on the elem\n\n\topts = $.extend({\n\t\tstartImmediately: true, //starts a timeout as soon as the timer is set up\n\t\tidle: false, //indicates if the user is idle\n\t\tenabled: true, //indicates if the idle timer is enabled\n\t\ttimeout: 30000, //the amount of time (ms) before the user is considered idle\n\t\tevents: 'mousemove keydown DOMMouseScroll mousewheel mousedown touchstart touchmove' // activity is one of these events\n\t}, opts);\n\n\n elem = elem || document;\n\n /* (intentionally not documented)\n * Toggles the idle state and fires an appropriate event.\n * @return {void}\n */\n var toggleIdleState = function(myelem){\n\n // curse you, mozilla setTimeout lateness bug!\n if (typeof myelem === 'number'){\n myelem = undefined;\n }\n\n var obj = $.data(myelem || elem,'idleTimerObj');\n\n //toggle the state\n obj.idle = !obj.idle;\n\n // reset timeout \n var elapsed = (+new Date()) - obj.olddate;\n obj.olddate = +new Date();\n\n // handle Chrome always triggering idle after js alert or comfirm popup\n if (obj.idle && (elapsed < opts.timeout)) {\n obj.idle = false;\n clearTimeout($.idleTimer.tId);\n if (opts.enabled)\n $.idleTimer.tId = setTimeout(toggleIdleState, opts.timeout);\n return;\n }\n \n //fire appropriate event\n\n // create a custom event, but first, store the new state on the element\n // and then append that string to a namespace\n var event = jQuery.Event( $.data(elem,'idleTimer', obj.idle ? \"idle\" : \"active\" ) + '.idleTimer' );\n\n // we do want this to bubble, at least as a temporary fix for jQuery 1.7\n // event.stopPropagation();\n $(elem).trigger(event);\n },\n\n /**\n * Stops the idle timer. This removes appropriate event handlers\n * and cancels any pending timeouts.\n * @return {void}\n * @method stop\n * @static\n */\n stop = function(elem){\n\n var obj = $.data(elem,'idleTimerObj') || {};\n\n //set to disabled\n obj.enabled = false;\n\n //clear any pending timeouts\n clearTimeout(obj.tId);\n\n //detach the event handlers\n $(elem).off('.idleTimer');\n },\n\n\n /* (intentionally not documented)\n * Handles a user event indicating that the user isn't idle.\n * @param {Event} event A DOM2-normalized event object.\n * @return {void}\n */\n handleUserEvent = function(){\n\n var obj = $.data(this,'idleTimerObj');\n\n //clear any existing timeout\n clearTimeout(obj.tId);\n\n\n\n //if the idle timer is enabled\n if (obj.enabled){\n\n\n //if it's idle, that means the user is no longer idle\n if (obj.idle){\n toggleIdleState(this);\n }\n\n //set a new timeout\n obj.tId = setTimeout(toggleIdleState, obj.timeout);\n\n }\n };\n\n\n /**\n * Starts the idle timer. This adds appropriate event handlers\n * and starts the first timeout.\n * @param {int} newTimeout (Optional) A new value for the timeout period in ms.\n * @return {void}\n * @method $.idleTimer\n * @static\n */\n\n\n var obj = $.data(elem,'idleTimerObj') || {};\n\n obj.olddate = obj.olddate || +new Date();\n\n //assign a new timeout if necessary\n if (typeof newTimeout === \"number\"){\n opts.timeout = newTimeout;\n } else if (newTimeout === 'destroy') {\n stop(elem);\n return this;\n } else if (newTimeout === 'getElapsedTime'){\n return (+new Date()) - obj.olddate;\n }\n\n //assign appropriate event handlers\n $(elem).on($.trim((opts.events+' ').split(' ').join('.idleTimer ')),handleUserEvent);\n\n\n obj.idle = opts.idle;\n obj.enabled = opts.enabled;\n obj.timeout = opts.timeout;\n\n\n //set a timeout to toggle state. May wish to omit this in some situations\n\tif (opts.startImmediately) {\n\t obj.tId = setTimeout(toggleIdleState, obj.timeout);\n\t}\n\n // assume the user is active for the first x seconds.\n $.data(elem,'idleTimer',\"active\");\n\n // store our instance on the object\n $.data(elem,'idleTimerObj',obj);\n\n\n\n}; // end of $.idleTimer()\n\n\n// v0.9 API for defining multiple timers.\n$.fn.idleTimer = function(newTimeout,opts){\n\t// Allow omission of opts for backward compatibility\n\tif (!opts) {\n\t\topts = {};\n\t}\n\n if(this[0]){\n $.idleTimer(newTimeout,this[0],opts);\n }\n\n return this;\n};\n\n\n})(jQuery);\n","/*global variable declarations*/\n\n\"use strict\";\n\nimport \"../css/user-highlights.css\";\n\nfunction getCompletions() {\n // Get the completion status\n if (\n window.location.href.match(\n /(\\/index.html|toctree.html|genindex.html|navhelp.html|toc.html|assignments.html|Exercises.html)/\n )\n ) {\n return;\n }\n\n var currentPathname = window.location.pathname;\n if (currentPathname.indexOf(\"?\") !== -1) {\n currentPathname = currentPathname.substring(\n 0,\n currentPathname.lastIndexOf(\"?\")\n );\n }\n var data = {\n lastPageUrl: currentPathname,\n isPtxBook: isPreTeXt(),\n };\n jQuery\n .ajax({\n url: `${eBookConfig.new_server_prefix}/logger/getCompletionStatus`,\n data: data,\n async: false,\n })\n .done(function (data) {\n if (data != \"None\") {\n var completionData = data.detail;\n var completionClass, completionMsg;\n if (completionData[0].completionStatus == 1) {\n completionClass = \"buttonConfirmCompletion\";\n completionMsg =\n \" Completed. Well Done!\";\n } else {\n completionClass = \"buttonAskCompletion\";\n completionMsg = \"Mark as Completed\";\n }\n let scp = document.querySelector(\"#scprogresscontainer\");\n if (scp) {\n scp.classList.add(\"ptx-runestone-container\");\n }\n $(\"#scprogresscontainer\").append(\n '
    \"\n );\n }\n });\n}\n\nfunction showLastPositionBanner() {\n var lastPositionVal = $.getUrlVar(\"lastPosition\");\n if (typeof lastPositionVal !== \"undefined\") {\n $(\"body\").append(\n ''\n );\n $(\"html, body\").animate({ scrollTop: parseInt(lastPositionVal) }, 1000);\n }\n}\n\nfunction addNavigationAndCompletionButtons() {\n if (\n window.location.href.match(\n /(index.html|genindex.html|navhelp.html|toc.html|assignments.html|Exercises.html|toctree.html)/\n )\n ) {\n return;\n }\n var navLinkBgRightHiddenPosition = -$(\"#navLinkBgRight\").outerWidth() - 5;\n var navLinkBgRightHalfOpen;\n var navLinkBgRightFullOpen = 0;\n\n if ($(\"#completionButton\").hasClass(\"buttonAskCompletion\")) {\n navLinkBgRightHalfOpen = navLinkBgRightHiddenPosition + 70;\n } else if ($(\"#completionButton\").hasClass(\"buttonConfirmCompletion\")) {\n navLinkBgRightHalfOpen = 0;\n }\n var relationsNextIconInitialPosition = $(\"#relations-next\").css(\"right\");\n var relationsNextIconNewPosition = -(navLinkBgRightHiddenPosition + 35);\n\n $(\"#navLinkBgRight\").css(\"right\", navLinkBgRightHiddenPosition).show();\n var navBgShown = false;\n $(window).scroll(function () {\n if (\n $(window).scrollTop() + $(window).height() ==\n $(document).height()\n ) {\n $(\"#navLinkBgRight\").animate(\n { right: navLinkBgRightHalfOpen },\n 200\n );\n $(\"#navLinkBgLeft\").animate({ left: \"0px\" }, 200);\n if ($(\"#completionButton\").hasClass(\"buttonConfirmCompletion\")) {\n $(\"#relations-next\").animate(\n { right: relationsNextIconNewPosition },\n 200\n );\n }\n navBgShown = true;\n } else if (navBgShown) {\n $(\"#navLinkBgRight\").animate(\n { right: navLinkBgRightHiddenPosition },\n 200\n );\n $(\"#navLinkBgLeft\").animate({ left: \"-65px\" }, 200);\n $(\"#relations-next\").animate({\n right: relationsNextIconInitialPosition,\n });\n navBgShown = false;\n }\n });\n\n var completionFlag = 0;\n if ($(\"#completionButton\").hasClass(\"buttonAskCompletion\")) {\n completionFlag = 0;\n } else {\n completionFlag = 1;\n }\n // Make sure we mark this page as visited regardless of how flakey\n // the onunload handlers become.\n processPageState(completionFlag, true, false, false);\n $(\"#completionButton\").on(\"click\", function () {\n var markingComplete = false;\n var markingIncomplete = false;\n if ($(this).hasClass(\"buttonAskCompletion\")) {\n $(this)\n .removeClass(\"buttonAskCompletion\")\n .addClass(\"buttonConfirmCompletion\")\n .html(\n \" Completed. Well Done!\"\n );\n $(\"#navLinkBgRight\").animate({ right: navLinkBgRightFullOpen });\n $(\"#relations-next\").animate({\n right: relationsNextIconNewPosition,\n });\n navLinkBgRightHalfOpen = 0;\n completionFlag = 1;\n markingComplete = true;\n } else if ($(this).hasClass(\"buttonConfirmCompletion\")) {\n $(this)\n .removeClass(\"buttonConfirmCompletion\")\n .addClass(\"buttonAskCompletion\")\n .html(\"Mark as Completed\");\n navLinkBgRightHalfOpen = navLinkBgRightHiddenPosition + 70;\n $(\"#navLinkBgRight\").animate({ right: navLinkBgRightHalfOpen });\n $(\"#relations-next\").animate({\n right: relationsNextIconInitialPosition,\n });\n completionFlag = 0;\n markingIncomplete = true;\n }\n processPageState(\n completionFlag,\n false,\n markingComplete,\n markingIncomplete\n );\n });\n\n // we cannot afford to do this at both load and unload especially as users\n // go from page to page. This just doubles the load. So, try without this one.\n // $(window).on(\"beforeunload\", function (e) {\n // if (completionFlag == 0) {\n // processPageState(completionFlag, false, false, false);\n // }\n // });\n}\n\n// _ decorateTableOfContents\n// -------------------------\nfunction decorateTableOfContents() {\n if (\n window.location.href.toLowerCase().indexOf(\"toc.html\") != -1 ||\n window.location.href.toLowerCase().indexOf(\"index.html\") != -1 ||\n window.location.href.toLowerCase().indexOf(\"frontmatter\") != -1\n ) {\n if (!isPreTeXt()) {\n jQuery.get(\n `${eBookConfig.new_server_prefix}/logger/getAllCompletionStatus`,\n function (data) {\n var subChapterList;\n if (data != \"None\") {\n subChapterList = data.detail;\n\n var allSubChapterURLs = $(\"#main-content div li a\");\n $.each(subChapterList, function (index, item) {\n for (var s = 0; s < allSubChapterURLs.length; s++) {\n if (\n allSubChapterURLs[s].href.indexOf(\n item.chapterName +\n \"/\" +\n item.subChapterName\n ) != -1\n ) {\n if (item.completionStatus == 1) {\n $(allSubChapterURLs[s].parentElement)\n .addClass(\"completed\")\n .append(\n '- Completed this topic on ' +\n item.endDate +\n \"\"\n )\n .children()\n .first()\n .hover(\n function () {\n $(this)\n .next(\n \".infoTextCompleted\"\n )\n .show();\n },\n function () {\n $(this)\n .next(\n \".infoTextCompleted\"\n )\n .hide();\n }\n );\n } else if (item.completionStatus == 0) {\n $(allSubChapterURLs[s].parentElement)\n .addClass(\"active\")\n .append(\n 'Last read this topic on ' +\n item.endDate +\n \"\"\n )\n .children()\n .first()\n .hover(\n function () {\n $(this)\n .next(\".infoTextActive\")\n .show();\n },\n function () {\n $(this)\n .next(\".infoTextActive\")\n .hide();\n }\n );\n }\n }\n }\n });\n }\n }\n );\n }\n var data = { course: eBookConfig.course };\n jQuery.get(\n `${eBookConfig.new_server_prefix}/logger/getlastpage`,\n data,\n function (data) {\n var lastPageData;\n if (data != \"None\") {\n lastPageData = data.detail;\n if (lastPageData.lastPageChapter != null) {\n $(\"#continue-reading\")\n .show()\n .html(\n '
    '\n );\n }\n }\n }\n );\n }\n}\n\nfunction enableCompletions() {\n getCompletions();\n showLastPositionBanner();\n addNavigationAndCompletionButtons();\n decorateTableOfContents();\n}\n\n// call enable user highlights after login\n$(document).on(\"runestone:login\", enableCompletions);\n\nfunction isPreTeXt() {\n let ptxMarker = document.querySelector(\"body.pretext\");\n if (ptxMarker) {\n return true;\n } else {\n return false;\n }\n}\n// _ processPageState\n// -------------------------\nfunction processPageState(\n completionFlag,\n pageLoad,\n markingComplete,\n markingIncomplete\n) {\n /*Log last page visited*/\n var currentPathname = window.location.pathname;\n if (currentPathname.indexOf(\"?\") !== -1) {\n currentPathname = currentPathname.substring(\n 0,\n currentPathname.lastIndexOf(\"?\")\n );\n }\n // Is this a ptx book?\n let isPtxBook = isPreTeXt();\n var data = {\n lastPageUrl: currentPathname,\n lastPageScrollLocation: Math.round($(window).scrollTop()),\n completionFlag: completionFlag,\n pageLoad: pageLoad,\n markingComplete: markingComplete,\n markingIncomplete: markingIncomplete,\n course: eBookConfig.course,\n isPtxBook: isPtxBook,\n };\n $(document).ajaxError(function (e, jqhxr, settings, exception) {\n console.log(\"Request Failed for \" + settings.url);\n console.log(e);\n });\n jQuery.ajax({\n url: `${eBookConfig.new_server_prefix}/logger/updatelastpage`,\n contentType: \"application/json; charset=utf-8\",\n dataType: \"json\",\n data: JSON.stringify(data),\n method: \"POST\",\n async: true,\n });\n}\n\n$.extend({\n getUrlVars: function () {\n var vars = [],\n hash;\n var hashes = window.location.search\n .slice(window.location.search.indexOf(\"?\") + 1)\n .split(\"&\");\n for (var i = 0; i < hashes.length; i++) {\n hash = hashes[i].split(\"=\");\n vars.push(hash[0]);\n vars[hash[0]] = hash[1];\n }\n return vars;\n },\n getUrlVar: function (name) {\n return $.getUrlVars()[name];\n },\n});\n","/*\n Support functions for PreTeXt books running on Runestone\n\n*/\n\nimport RunestoneBase from \"./runestonebase.js\";\n\nfunction setupPTXEvents() {\n let rb = new RunestoneBase();\n // log an event when a knowl is opened.\n document.querySelectorAll(\"[data-knowl]\").forEach((el) => {\n el.addEventListener(\"click\", function () {\n let div_id = el.getAttribute(\"data-knowl\");\n rb.logBookEvent({ event: \"knowl\", act: \"click\", div_id: div_id });\n });\n });\n let born_hidden = document.querySelectorAll(\"details.born-hidden-knowl\");\n born_hidden.forEach((el) => {\n // log an event when a knowl is opened that was born hidden\n el.addEventListener(\"toggle\", function () {\n if (el.open) {\n let div_id = el.id;\n rb.logBookEvent({ event: \"knowl\", act: \"open\", div_id: div_id });\n }\n });\n });\n // log an event when a sage cell is evaluated\n document.querySelectorAll(\".sagecell_evalButton\").forEach((btn) => {\n btn.addEventListener(\"click\", function () {\n let container = btn.closest(\".ptx-sagecell\");\n let codeInput = container ? container.querySelector(\".sagecell_input\") : null;\n let code = codeInput ? codeInput.textContent : \"\";\n let div_id = container ? container.id : null;\n if (! div_id) {\n console.warn(\"Could not find container or div_id for sagecell button\");\n return;\n }\n\n rb.logBookEvent({ event: \"sage\", act: \"run\", div_id: div_id });\n });\n });\n if (typeof eBookConfig !== \"undefined\" && !eBookConfig.isInstructor) {\n document.querySelectorAll(\".commentary\").forEach((el) => {\n el.style.display = \"none\";\n });\n }\n}\n\nwindow.addEventListener(\"load\", function () {\n console.log(\"setting up pretext\");\n setupPTXEvents();\n let wrap = document.getElementById(\"primary-navbar-sticky-wrapper\");\n if (wrap) {\n wrap.style.overflow = \"visible\";\n }\n});\n","import RunestoneBase from \"../../common/js/runestonebase.js\";\n\nexport class SpliceWrapper extends RunestoneBase {\n constructor() {\n super();\n this.initSplice();\n }\n\n initSplice() {\n // SPLICE Events\n window.addEventListener(\"message\", async (event) => {\n \n var sourceIframe = this.sendingIframe(event);\n console.log(`SpliceWrapper: received message subject: ${event.data.subject} from iframe: ${sourceIframe ? sourceIframe.id : \"unknown\"}`);\n if (event.data.subject == \"SPLICE.reportScoreAndState\") {\n this.handleScoreAndState(event, sourceIframe);\n } else if (event.data.subject == \"SPLICE.sendEvent\") {\n this.handleSpliceEvent(event, sourceIframe);\n } else if (event.data.subject == \"SPLICE.getState\") {\n await this.handleGetState(event, sourceIframe);\n } else if (\n event.origin === \"https://www.myopenmath.com\" &&\n typeof event.data === \"string\" &&\n event.data.indexOf(\"lti.ext.imathas.result\") != -1\n ) {\n // proof of concept for My Open Math\n let msgdata = JSON.parse(event.data);\n let jwt = basicParseJwt(msgdata.jwt);\n console.log(\n \"Result received from frame \" +\n msgdata.frame_id +\n \" with score \" +\n jwt.score\n );\n // todo send score to server\n // does MOM have a way to get the state?\n // todo send state to server\n }\n });\n }\n\n getUniqueID(event, frame) {\n // Determine the unique identifier for this activity\n // The SPLICE protocol allows for two possibilities\n // 1. activity_id is the unique id as assigned by the provider\n // 2. activity_id is the iframe src url\n // if the activity_id is set there may also be another attribute called domain\n // On Runestone we will try to map the activity to the div_id of the enclosing RS component\n // if possible, otherwise we will use the activity_id or iframe src\n // If an interactive is included in an exercises this allows us to map the score\n // to the id the instructor used to assign the problem.\n if (frame) {\n let rsDiv = frame.closest(\"[data-component]\");\n if (rsDiv) {\n return rsDiv.id;\n }\n }\n let location = event.data.activity_id;\n if (!location) {\n if (frame) {\n location = frame.src;\n } else {\n location = \"unknown\";\n console.error(\n \"Could not find iframe that sent the SPLICE event\"\n );\n }\n }\n return location;\n }\n\n handleScoreAndState(event, frame) {\n console.log(\"Got SPLICE.reportScoreAndState\");\n console.log(event.data.activity_id);\n console.log(event.data.score);\n console.log(event.data.state);\n let location = this.getUniqueID(event, frame);\n this.logBookEvent({\n event: event.data.subject,\n div_id: location,\n act: `score: ${event.data.score}`,\n score: event.data.score,\n percent: event.data.score,\n correct: event.data.score == 1.0 ? true : false,\n answer: JSON.stringify(event.data.state),\n });\n }\n\n sendingIframe(event) {\n // determine the iframe that sent the event\n // you would think that event.source would be the iframe\n // but it is not and getting the location out of event.source\n // creates CORS issues.\n for (const f of document.getElementsByTagName(\"iframe\")) {\n if (f.contentWindow === event.source) return f;\n }\n return undefined;\n }\n\n async getSavedState(location) {\n // fetch the state from the server\n try {\n const response = await fetch(\"/ns/assessment/results\", {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({\n div_id: location,\n course: eBookConfig.course,\n event: \"SPLICE.getState\",\n }),\n });\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n const data = await response.json();\n return data;\n } catch (error) {\n console.error(\"Error fetching SPLICE state:\", error);\n return null;\n }\n }\n\n async handleGetState(event, frame) {\n console.log(\"Got SPLICE.getState\");\n console.log(event.data.activity_id);\n console.log(event.data.state);\n // subject is SPLICE.getState.response\n let location = this.getUniqueID(event, frame);\n let res = await this.getSavedState(location);\n let state = res.detail.answer;\n event.source.postMessage(\n {\n message_id: event.data.message_id,\n subject: \"SPLICE.getState.response\",\n state: state,\n },\n \"*\"\n );\n }\n\n handleSpliceEvent(event, frame) {\n // handle generic SPLICE events, such as logged clicks\n // or other events. SPLICE does not require that we do\n // anything with them, but in keeping with our tradition\n // we will save them to the useinfo table in the database\n // in case they prove to be useful for research later\n console.log(\"Got SPLICE.sendEvent\");\n console.log(event.data.activity_id);\n console.log(event.data.name);\n //console.log(event.data.data);\n let location = this.getUniqueID(event, frame);\n this.logBookEvent({\n event: event.data.subject,\n div_id: location,\n act: event.data.name || \"unknown\",\n });\n }\n // these stubs are not implemented, but are required by the RunestoneBase class\n checkLocalStorage() {}\n setLocalStorage() {}\n restoreAnswers() {}\n disableInteraction() {}\n}\n\nfunction basicParseJwt(token) {\n var base64Url = token.split(\".\")[1];\n var base64 = base64Url.replace(/-/g, \"+\").replace(/_/g, \"/\");\n var jsonPayload = decodeURIComponent(\n window\n .atob(base64)\n .split(\"\")\n .map(function (c) {\n return \"%\" + (\"00\" + c.charCodeAt(0).toString(16)).slice(-2);\n })\n .join(\"\")\n );\n return JSON.parse(jsonPayload);\n}\n","// ***********************************************************************************\n// |docname| - A framework allowing a Runestone component to load only the JS it needs\n// ***********************************************************************************\n// The JavaScript required by all Runestone components is quite large and results in slow page loads. This approach enables a Runestone component to load only the JavaScript it needs, rather than loading JavaScript for all the components regardless of which are actually used.\n//\n// To accomplish this, webpack's split-chunks ability analyzes all JS, starting from this file. The dynamic imports below are transformed by webpack into the dynamic fetches of just the JS required by each file and all its dependencies. (If using static imports, webpack will assume that all files are already statically loaded via script tags, defeating the purpose of this framework.)\n//\n// However, this approach leads to complexity:\n//\n// - The ``data-component`` attribute of each component must be kept in sync with the keys of the ``module_map`` below.\n// - The values in the ``module_map`` must be kept in sync with the JavaScript files which implement each of the components.\n\n// Static imports\n// ==============\n// These imports are (we assume) needed by all pages. However, it would be much better to load these in the modules that actually use them.\n//\n// These are static imports; code in `dynamically loaded components`_ deals with dynamic imports.\n//\n// jQuery-related imports.\nimport \"jquery-ui/jquery-ui.js\";\nimport \"jquery-ui/themes/base/jquery.ui.all.css\";\nimport \"./runestone/common/js/jquery.idle-timer.js\";\nimport \"./runestone/common/js/jquery_i18n/jquery.i18n.js\";\nimport \"./runestone/common/js/jquery_i18n/jquery.i18n.emitter.bidi.js\";\nimport \"./runestone/common/js/jquery_i18n/jquery.i18n.emitter.js\";\nimport \"./runestone/common/js/jquery_i18n/jquery.i18n.fallbacks.js\";\nimport \"./runestone/common/js/jquery_i18n/jquery.i18n.messagestore.js\";\nimport \"./runestone/common/js/jquery_i18n/jquery.i18n.parser.js\";\nimport \"./runestone/common/js/jquery_i18n/jquery.i18n.language.js\";\n\n// Bootstrap - not needed for pxx development\nimport \"bootstrap/dist/js/bootstrap.js\";\n\n// common styles come from here\nimport \"./ptxrs-bootstrap.less\";\nimport \"./runestone/common/project_template/_templates/plugin_layouts/sphinx_bootstrap/static/bootstrap-sphinx.js\";\n\n// Misc\nimport \"./runestone/common/js/bookfuncs.js\";\nimport \"./runestone/common/js/user-highlights.js\";\nimport \"./runestone/common/js/pretext.js\";\n\n// These belong in dynamic imports for the obvious component; however, these components don't include a ``data-component`` attribute.\nimport \"./runestone/matrixeq/css/matrixeq.css\";\nimport \"./runestone/webgldemo/css/webglinteractive.css\";\n\n// These are only needed for the Runestone book, but not in a library mode (such as pretext). I would prefer to dynamically load them. However, these scripts are so small I haven't bothered to do so.\nimport { getSwitch, switchTheme } from \"./runestone/common/js/theme.js\";\nimport \"./runestone/common/js/presenter_mode.js\";\nimport \"./runestone/common/css/presenter_mode.less\";\nimport { renderOneComponent } from \"./runestone/common/js/renderComponent.js\";\nimport RunestoneBase from \"./runestone/common/js/runestonebase.js\";\nimport { SpliceWrapper } from \"./runestone/splice/js/spliceWrapper.js\";\n\n// Dynamically loaded components\n// =============================\n// This provides a list of modules that components can dynamically import. Webpack will create a list of imports for each based on its analysis.\nconst module_map = {\n // Wrap each import in a function, so that it won't occur until the function is called. While something cleaner would be nice, webpack can't analyze things like ``import(expression)``.\n //\n // The keys must match the value of each component's ``data-component`` attribute -- the ``runestone_import`` and ``runestone_auto_import`` functions assume this.\n activecode: () => import(\"./runestone/activecode/js/acfactory.js\"),\n ble: () => import(\"./runestone/cellbotics/js/ble.js\"),\n // Always import the timed version of a component if available, since the timed components also define the component's factory and include the component as well. Note that ``acfactory`` imports the timed components of ActiveCode, so it follows this pattern.\n clickablearea: () =>\n import(\"./runestone/clickableArea/js/timedclickable.js\"),\n codelens: () => import(\"./runestone/codelens/js/codelens.js\"),\n datafile: () => import(\"./runestone/datafile/js/datafile.js\"),\n dragndrop: () => import(\"./runestone/dragndrop/js/timeddnd.js\"),\n fillintheblank: () => import(\"./runestone/fitb/js/timedfitb.js\"),\n groupsub: () => import(\"./runestone/groupsub/js/groupsub.js\"),\n khanex: () => import(\"./runestone/khanex/js/khanex.js\"),\n lp_build: () => import(\"./runestone/lp/js/lp.js\"),\n matching: () => import(\"./runestone/matching/js/matching.js\"),\n multiplechoice: () => import(\"./runestone/mchoice/js/timedmc.js\"),\n hparsons: () => import(\"./runestone/hparsons/js/hparsons.js\"),\n parsons: () => import(\"./runestone/parsons/js/timedparsons.js\"),\n poll: () => import(\"./runestone/poll/js/poll.js\"),\n quizly: () => import(\"./runestone/quizly/js/quizly.js\"),\n reveal: () => import(\"./runestone/reveal/js/reveal.js\"),\n selectquestion: () => import(\"./runestone/selectquestion/js/selectone.js\"),\n shortanswer: () =>\n import(\"./runestone/shortanswer/js/timed_shortanswer.js\"),\n showeval: () => import(\"./runestone/showeval/js/showEval.js\"),\n simple_sensor: () => import(\"./runestone/cellbotics/js/simple_sensor.js\"),\n spreadsheet: () => import(\"./runestone/spreadsheet/js/spreadsheet.js\"),\n tabbedStuff: () => import(\"./runestone/tabbedStuff/js/tabbedstuff.js\"),\n timedAssessment: () => import(\"./runestone/timed/js/timed.js\"),\n wavedrom: () => import(\"./runestone/wavedrom/js/wavedrom.js\"),\n // TODO: since this isn't in a ``data-component``, need to trigger an import of this code manually.\n webwork: () => import(\"./runestone/webwork/js/webwork.js\"),\n youtube: () => import(\"./runestone/video/js/runestonevideo.js\"),\n doenet: () => Promise.resolve(), // Doenet is loaded separately\n};\n\nconst module_map_cache = {};\nconst QUEUE_FLUSH_TIME_MS = 10;\nconst queue = [];\nlet queueLastFlush = 0;\n/**\n * Queue imports that are requested within `QUEUE_FLUSH_TIME_MS` of each other.\n * All such imports are imported at once, and then a promise is fired after all\n * the imports in the queue window have completed.\n */\nfunction queueImport(component_name) {\n let resolve = null;\n let reject = null;\n const retPromise = new Promise((r, rej) => {\n resolve = r;\n reject = rej;\n });\n const item = { component_name, resolve, reject };\n queue.push(item);\n window.setTimeout(flushQueue, QUEUE_FLUSH_TIME_MS + 1);\n\n return retPromise;\n}\nasync function flushQueue() {\n if (queue.length === 0) {\n return;\n }\n if (Date.now() - queueLastFlush < QUEUE_FLUSH_TIME_MS) {\n window.setTimeout(flushQueue, QUEUE_FLUSH_TIME_MS + 1);\n return;\n }\n // If we made it here, it has been at least QUEUE_FLUSH_TIME_MS since\n // the last time we flushed the queue. Therefore, we should start flushing.\n // We copy everything we flush and empty the array first.\n queueLastFlush = Date.now();\n const toFlush = [...queue];\n queue.length = 0;\n console.log(\n \"Webpack is starting the loading process for the following Runestone modules\",\n toFlush.map((item) => item.component_name)\n );\n const flushedPromise = toFlush.map(async (item) => {\n try {\n await module_map[item.component_name]();\n console.log(\n `Runestone component ${item.component_name} has been loaded`\n );\n return item;\n } catch (e) {\n item.reject(e);\n }\n });\n const flushed = await Promise.all(flushedPromise);\n try {\n flushed.forEach(function (item) {\n if (item) {\n item.resolve();\n }\n });\n } catch (e) {\n console.error(e);\n }\n}\n\n// .. _dynamic import machinery:\n//\n// Dynamic import machinery\n// ========================\n// Fulfill a promise when the Runestone pre-login complete event occurs.\nlet pre_login_complete_promise = new Promise((resolve) =>\n $(document).on(\"runestone:pre-login-complete\", resolve)\n);\nlet loadedComponents;\n// Provide a simple function to import the JS for all components on the page.\nexport function runestone_auto_import() {\n // Create a set of ``data-component`` values, to avoid duplication.\n const s = new Set(\n // All Runestone components have a ``data-component`` attribute.\n $(\"[data-component]\")\n .map(\n // Extract the value of the data-component attribute.\n (index, element) => $(element).attr(\"data-component\")\n // Switch from a jQuery object back to an array, passing that to the Set constructor.\n )\n .get()\n );\n // webwork questions are not wrapped in div with a data-component so we have to check a different way\n if (document.querySelector(\".webwork-button\")) {\n s.add(\"webwork\");\n }\n\n // Load JS for each of the components found.\n const a = [...s].map((value) => {\n let z;\n console.log(`Loading Runestone component: ${value}`);\n try {\n z = (module_map[value] || (() => Promise.resolve()))();\n } catch (e) {\n console.error(`Error loading ${value}:`, e);\n }\n z.error = (msg) => console.error(`Error in ${value}:`, msg);\n return z;\n });\n\n // Send the Runestone login complete event when all JS is loaded and the pre-login is also complete.\n Promise.all([pre_login_complete_promise, ...a]).then(function () {\n if (!document.body.dataset.reactInUse) {\n document.dispatchEvent(new CustomEvent(\"runestone:login-complete\"));\n }\n });\n}\n\npre_login_complete_promise.then(() => {\n console.log(\"Runestone pre-login complete\");\n});\n\n// Load component JS when the document is ready.\n$(document).ready(runestone_auto_import);\n\n// Provide a function to import one specific `Runestone` component.\n// the import function inside module_map is async -- runestone_import\n// should be awaited when necessary to ensure the import completes\nexport async function runestone_import(component_name) {\n if (module_map_cache[component_name]) {\n return module_map_cache[component_name];\n }\n console.log(\n `Runestone component ${component_name} is being queued for import`\n );\n const promise = queueImport(component_name);\n module_map_cache[component_name] = promise;\n return promise;\n}\n\nasync function popupScratchAC() {\n // load the activecode bundle\n await runestone_import(\"activecode\");\n // scratchDiv will be defined if we have already created a scratch\n // activecode. If its not defined then we need to get it ready to toggle\n if (!eBookConfig.scratchDiv) {\n window.ACFactory.createScratchActivecode();\n let divid = eBookConfig.scratchDiv;\n window.componentMap[divid] = ACFactory.createActiveCode(\n $(`#${divid}`)[0],\n eBookConfig.acDefaultLanguage\n );\n if (eBookConfig.isLoggedIn) {\n window.componentMap[divid].enableSaveLoad();\n }\n }\n setTimeout(() => {\n window.ACFactory.toggleScratchActivecode();\n }, 100);\n}\n\n// Set the directory containing this script as the `path `_ for all webpacked scripts.\nconst script_src = document.currentScript.src;\n__webpack_public_path__ = script_src.substring(\n 0,\n script_src.lastIndexOf(\"/\") + 1\n);\n\nvar splice = new SpliceWrapper();\n\n// Manual exports\n// ==============\n// Webpack's ``output.library`` setting doesn't seem to work with the split chunks plugin; do all exports manually through the ``window`` object instead.\n\nconst rc = {};\nrc.runestone_import = runestone_import;\nrc.runestone_auto_import = runestone_auto_import;\nrc.getSwitch = getSwitch;\nrc.switchTheme = switchTheme;\nrc.popupScratchAC = popupScratchAC;\nrc.renderOneComponent = renderOneComponent;\nwindow.componentMap = {};\nwindow.runestoneComponents = rc;\n","export function getSwitch() {\n const toggleSwitch = document.querySelector('.theme-switch input[type=\"checkbox\"]');\n const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null;\n\n if (currentTheme) {\n document.documentElement.setAttribute('data-theme', currentTheme);\n\n if (currentTheme === 'dark') {\n toggleSwitch.checked = true;\n }\n }\n}\n\nexport function switchTheme() {\n\n\tvar checkBox = document.getElementById(\"checkbox\");\n if (checkBox.checked == true) {\n document.documentElement.setAttribute('data-theme', 'dark');\n localStorage.setItem('theme', 'dark'); //add this\n }\n else {\n document.documentElement.setAttribute('data-theme', 'light');\n localStorage.setItem('theme', 'light'); //add this\n }\n}\n","/* ********************************\n * |docname| - Runestone Base Class\n * ********************************\n * All runestone components should inherit from RunestoneBase. In addition all runestone components should do the following things:\n *\n * 1. Ensure that they are wrapped in a div with the class runestone\n * 2. Write their source AND their generated html to the database if the database is configured\n * 3. Properly save and restore their answers using the checkServer mechanism in this base class. Each component must provide an implementation of:\n *\n * - checkLocalStorage\n * - setLocalStorage\n * - restoreAnswers\n * - disableInteraction\n *\n * 4. provide a Selenium based unit test\n */\n\nimport { pageProgressTracker } from \"./bookfuncs.js\";\n//import \"./../styles/runestone-custom-sphinx-bootstrap.css\";\n\nvar NO_DECORATE = [\"parsonsMove\", \"showeval\", \"video\", \"poll\", \"view_toggle\",\n \"dashboard\", \"selectquestion\", \"codelens\", \"peer\", \"shortanswer\"]\nexport default class RunestoneBase {\n constructor(opts) {\n this.component_ready_promise = new Promise(\n (resolve) => (this._component_ready_resolve_fn = resolve)\n );\n this.optional = false;\n if (typeof window.allComponents === \"undefined\") {\n window.allComponents = [];\n }\n window.allComponents.push(this);\n if (opts) {\n this.sid = opts.sid;\n this.graderactive = opts.graderactive;\n this.showfeedback = true;\n if (opts.timed) {\n this.isTimed = true;\n }\n if (opts.enforceDeadline) {\n this.deadline = opts.deadline;\n }\n this.optional = this.parseBooleanAttribute(opts.orig, \"data-optional\");\n if (opts.selector_id) {\n this.selector_id = opts.selector_id;\n }\n if (typeof opts.assessmentTaken !== \"undefined\") {\n this.assessmentTaken = opts.assessmentTaken;\n } else {\n // default to true as this opt is only provided from a timedAssessment\n this.assessmentTaken = true;\n }\n // This is for the selectquestion points\n // If a selectquestion is part of a timed exam it will get\n // the timedWrapper options.\n if (typeof opts.timedWrapper !== \"undefined\") {\n this.timedWrapper = opts.timedWrapper;\n } else {\n // However sometimes selectquestions\n // are used in regular assignments. The hacky way to detect this\n // is to look for doAssignment in the URL and then grab\n // the assignment name from the heading.\n if (location.href.indexOf(\"doAssignment\") >= 0) {\n this.timedWrapper = $(\"h1#assignment_name\").text();\n } else {\n this.timedWrapper = null;\n }\n }\n if ($(opts.orig).data(\"question_label\")) {\n this.question_label = $(opts.orig).data(\"question_label\");\n }\n this.is_toggle = true ? opts.is_toggle : false;\n this.is_select = true ? opts.is_select : false;\n }\n this.mjelements = [];\n let self = this;\n this.mjReady = new Promise(function (resolve, reject) {\n self.mjresolver = resolve;\n });\n this.aQueue = new AutoQueue();\n if (opts && typeof opts.preamble !== \"undefined\") {\n this.preamble = opts.preamble;\n let y = document.createElement(\"div\");\n y.classList.add(\"hidden-content\");\n y.classList.add(\"process-math\");\n y.innerHTML = \"\\\\(\" + this.preamble + \"\\\\)\";\n // This is a hack to get the preamble into the DOM so that MathJax can process it.\n opts.orig.appendChild(y);\n y.id = \"ltx_preamble\";\n y.style.display = \"none\";\n // Add the preamble to the queue object so it can prepend it to\n // future MathJax processing\n this.aQueue.preamble = y\n }\n\n this.jsonHeaders = new Headers({\n \"Content-type\": \"application/json; charset=utf-8\",\n Accept: \"application/json\",\n });\n }\n\n // Helper for parsing boolean data-* attributes\n // Unset/\"false\"/\"no\" means false, anything else, including empty string means true\n parseBooleanAttribute(element, attributeName) {\n const attrValue = element.getAttribute(attributeName);\n if (attrValue === null) {\n return false;\n }\n const lowerValue = attrValue.toLowerCase();\n if (lowerValue === \"false\" || lowerValue === \"no\") {\n return false;\n }\n return true;\n }\n\n // _`logBookEvent`\n //----------------\n // This function sends the provided ``eventInfo`` to the `hsblog endpoint` of the server. Awaiting this function returns either ``undefined`` (if Runestone services are not available) or the data returned by the server as a JavaScript object (already JSON-decoded).\n async logBookEvent(eventInfo) {\n if (this.graderactive) {\n return;\n }\n let post_return;\n eventInfo.course_name = eBookConfig.course;\n eventInfo.clientLoginStatus = eBookConfig.isLoggedIn;\n eventInfo.timezoneoffset = new Date().getTimezoneOffset() / 60;\n // For selectquestions we need to log using the selector_id for real time scoring\n if (this.selector_id) {\n eventInfo.selector_id = this.selector_id;\n }\n if (typeof this.percent === \"number\") {\n eventInfo.percent = this.percent;\n }\n if (window.assignmentId) {\n eventInfo.assignment_id = window.assignmentId;\n }\n if (\n eBookConfig.isLoggedIn &&\n eBookConfig.useRunestoneServices &&\n eBookConfig.logLevel > 0\n ) {\n post_return = this.postLogMessage(eventInfo);\n }\n if (!this.isTimed || eBookConfig.debug) {\n let prefix = eBookConfig.isLoggedIn ? \"Save\" : \"Not\";\n console.log(`${prefix} logging event ` + JSON.stringify(eventInfo));\n }\n // When selectquestions are part of an assignment especially toggle questions\n // we need to count using the selector_id of the select question.\n // We also need to log an event for that selector so that we will know\n // that interaction has taken place. This is **independent** of how the\n // autograder will ultimately grade the question!\n if (this.selector_id) {\n eventInfo.div_id = this.selector_id.replace(\n \"-toggleSelectedQuestion\",\n \"\"\n );\n eventInfo.event = \"selectquestion\";\n eventInfo.act = \"interaction\";\n this.postLogMessage(eventInfo);\n }\n if (\n typeof pageProgressTracker.updateProgress === \"function\" &&\n eventInfo.act != \"edit\" &&\n this.optional == false\n ) {\n pageProgressTracker.updateProgress(eventInfo.div_id);\n }\n // if the event is in the NO_DECORATE list then don't decorate the status\n if (NO_DECORATE.indexOf(eventInfo.event) === -1) {\n this.decorateStatus();\n }\n return post_return;\n }\n\n async postLogMessage(eventInfo) {\n var post_return;\n let request = new Request(\n `${eBookConfig.new_server_prefix}/logger/bookevent`,\n {\n method: \"POST\",\n headers: this.jsonHeaders,\n body: JSON.stringify(eventInfo),\n }\n );\n try {\n var response = await fetch(request);\n if (!response.ok) {\n if (response.status === 422) {\n // Get details about why this is unprocesable.\n post_return = await response.json();\n console.log(JSON.stringify(post_return.detail, null, 4));\n throw new Error(\"Unprocessable Request\");\n } else if (response.status == 401) {\n post_return = await response.json();\n console.log(\n `Missing authentication token ${post_return.detail}`\n );\n throw new Error(\"Missing authentication token\");\n }\n throw new Error(`Failed to save the log entry\n Status: ${response.status}`);\n }\n post_return = await response.json();\n let scoreSpec = post_return.detail;\n let gradeBox = null;\n if (this.selector_id) {\n let selector_id = this.selector_id.replace(\n \"-toggleSelectedQuestion\",\n \"\"\n );\n gradeBox = document.getElementById(`${selector_id}_score`);\n } else {\n gradeBox = document.getElementById(`${this.divid}_score`);\n }\n if (gradeBox && !this.isTimed && scoreSpec.score) {\n this.updateScores(gradeBox, scoreSpec);\n }\n } catch (e) {\n let detail = \"none\";\n if (post_return && post_return.detail) {\n detail = post_return.detail;\n }\n if (eBookConfig.useRunestoneServices) {\n alert(`Error: Your action was not saved!\n The error was ${e}\n Status Code: ${response.status}\n Detail: ${JSON.stringify(detail, null, 4)}.\n Please report this error!`);\n }\n // send a request to save this error\n console.log(\n `Error: ${e} Detail: ${detail} Status Code: ${response.status}`\n );\n }\n return post_return;\n }\n // update the score for the question and the total score\n // the presence of the gradeBox is used to determine if we are on an assignment page.\n updateScores(gradeBox, scoreSpec) {\n if (!scoreSpec.assigned || scoreSpec.score === null) {\n document.getElementById(`${this.divid}_message`).innerHTML = \"Score not updated. Submissions are closed.\";\n return;\n }\n let scoreSpan = gradeBox.getElementsByClassName(\"qscore\")[0];\n if (scoreSpan) {\n scoreSpan.innerHTML = scoreSpec.score.toFixed(1);\n }\n let allScores = document.getElementsByClassName(\"qscore\");\n let allmax = document.getElementsByClassName(\"qmaxscore\");\n let total = 0;\n let max = 0;\n for (let i = 0; i < allScores.length; i++) {\n total += parseFloat(allScores[i].innerHTML);\n max += parseFloat(allmax[i].innerHTML);\n }\n let totalSpan = document.getElementById(\"total_score\");\n if (totalSpan) {\n totalSpan.innerHTML = total.toFixed(1);\n }\n let maxSpan = document.getElementById(\"total_max\");\n if (maxSpan) {\n maxSpan.innerHTML = max;\n }\n let percentSpan = document.getElementById(\"total_percent\");\n if (percentSpan) {\n percentSpan.innerHTML = ((total / max) * 100).toFixed(2);\n }\n }\n\n // .. _logRunEvent:\n //\n // logRunEvent\n // -----------\n // This function sends the provided ``eventInfo`` to the `runlog endpoint`. When awaited, this function returns the data (decoded from JSON) the server sent back.\n async logRunEvent(eventInfo) {\n let post_promise = \"done\";\n if (this.graderactive) {\n return;\n }\n eventInfo.course = eBookConfig.course;\n eventInfo.clientLoginStatus = eBookConfig.isLoggedIn;\n eventInfo.timezoneoffset = new Date().getTimezoneOffset() / 60;\n if (this.forceSave || \"to_save\" in eventInfo === false) {\n eventInfo.save_code = \"True\";\n }\n if (typeof eventInfo.errinfo !== \"undefined\") {\n eventInfo.errinfo = eventInfo.errinfo.toString();\n }\n if (\n eBookConfig.isLoggedIn &&\n eBookConfig.useRunestoneServices &&\n eBookConfig.logLevel > 0\n ) {\n let request = new Request(\n `${eBookConfig.new_server_prefix}/logger/runlog`,\n {\n method: \"POST\",\n headers: this.jsonHeaders,\n body: JSON.stringify(eventInfo),\n }\n );\n let response = await fetch(request);\n if (!response.ok) {\n post_promise = await response.json();\n if (eBookConfig.useRunestoneServices) {\n alert(`Failed to save your code\n Status is ${response.status}\n Detail: ${JSON.stringify(\n post_promise.detail,\n null,\n 4\n )}`);\n } else {\n console.log(\n `Did not save the code.\n Status: ${response.status}\n Detail: ${JSON.stringify(\n post_promise.detail,\n null,\n 4\n )}`\n );\n }\n } else {\n post_promise = await response.json();\n }\n }\n if (!this.isTimed || eBookConfig.debug) {\n console.log(\"running \" + JSON.stringify(eventInfo));\n }\n if (\n typeof pageProgressTracker.updateProgress === \"function\" &&\n this.optional == false\n ) {\n pageProgressTracker.updateProgress(eventInfo.div_id);\n }\n return post_promise;\n }\n /* Checking/loading from storage\n **WARNING:** DO NOT `await` this function!\n This function, although async, does not explicitly resolve its promise by returning a value. The reason for this is because it is called by the constructor for nearly every component. In Javascript constructors cannot be async!\n\n One of the recommended ways to handle the async requirements from within a constructor is to use an attribute as a promise and resolve that attribute at the appropriate time.\n */\n async checkServer(\n // A string specifying the event name to use for querying the :ref:`getAssessResults` endpoint.\n eventInfo,\n // If true, this function will invoke ``indicate_component_ready()`` just before it returns. This is provided since most components are ready after this function completes its work.\n //\n // TODO: This defaults to false, to avoid causing problems with any components that haven't been updated and tested. After all Runestone components have been updated, default this to true and remove the extra parameter from most calls to this function.\n will_be_ready = false\n ) {\n // Check if the server has stored answer\n let self = this;\n this.checkServerComplete = new Promise(function (resolve, reject) {\n self.csresolver = resolve;\n });\n if (\n eBookConfig.isLoggedIn &&\n (this.useRunestoneServices || this.graderactive)\n ) {\n let data = {};\n data.div_id = this.divid;\n data.course = eBookConfig.course;\n data.event = eventInfo;\n if (this.graderactive && this.deadline) {\n data.deadline = this.deadline;\n data.rawdeadline = this.rawdeadline;\n data.tzoff = this.tzoff;\n }\n if (this.sid) {\n data.sid = this.sid;\n }\n if (!(data.div_id && data.course && data.event)) {\n console.log(\n `A required field is missing data ${data.div_id}:${data.course}:${data.event}`\n );\n }\n // If we are NOT in practice mode and we are not in a peer exercise\n // and assessmentTaken is true\n if (\n !eBookConfig.practice_mode &&\n !eBookConfig.peer &&\n this.assessmentTaken\n ) {\n let request = new Request(\n `${eBookConfig.new_server_prefix}/assessment/results`,\n {\n method: \"POST\",\n body: JSON.stringify(data),\n headers: this.jsonHeaders,\n }\n );\n try {\n let response = await fetch(request);\n console.log(`Response from server: ${response.status}`);\n if (response.ok) {\n data = await response.json();\n data = data.detail;\n console.log(`Data from server: ${JSON.stringify(data)} calling repopulateFromStorage`);\n this.repopulateFromStorage(data);\n this.attempted = true;\n if (typeof data.correct !== \"undefined\") {\n this.correct = data.correct;\n } else {\n this.correct = null;\n }\n console.log(`resolving checkServer with server data`);\n this.csresolver(\"server\");\n } else {\n console.log(\n `HTTP Error getting results: ${response.statusText}`\n );\n this.checkLocalStorage(); // just go right to local storage\n console.log(`resolving checkServer with local data`);\n this.csresolver(\"local\");\n }\n } catch (err) {\n console.log(`Error getting results: ${err}`);\n try {\n this.checkLocalStorage();\n } catch (err) {\n console.log(err);\n }\n }\n } else {\n this.loadData({});\n console.log(`resolving checkServer no answer given`);\n this.csresolver(\"not taken\");\n }\n } else {\n this.checkLocalStorage(); // just go right to local storage\n console.log(`resolving checkServer with local data`);\n this.csresolver(\"local\");\n }\n\n if (will_be_ready) {\n this.indicate_component_ready();\n }\n }\n\n // This method assumes that ``this.componentDiv`` refers to the ``div`` containing the component, and that this component's ID is set.\n indicate_component_ready() {\n // Add a class to indicate the component is now ready.\n this.containerDiv.classList.add(\"runestone-component-ready\");\n // Resolve the ``this.component_ready_promise``.\n this._component_ready_resolve_fn();\n }\n\n loadData(data) {\n // for most classes, loadData doesn't do anything. But for Parsons, and perhaps others in the future,\n // initialization can happen even when there's no history to be loaded\n return null;\n }\n\n /**\n * repopulateFromStorage is called after a successful API call is made to ``getAssessResults`` in\n * the checkServer method in this class\n *\n * ``restoreAnswers,`` ``setLocalStorage`` and ``checkLocalStorage`` are defined in the child classes.\n *\n * @param {*} data - a JSON object representing the data needed to restore a previous answer for a component\n * @param {*} status - the http status\n * @param {*} whatever - ignored\n */\n repopulateFromStorage(data) {\n // decide whether to use the server's answer (if there is one) or to load from storage\n if (data !== null && data !== \"no data\" && this.shouldUseServer(data)) {\n this.restoreAnswers(data);\n this.setLocalStorage(data);\n } else {\n this.checkLocalStorage();\n }\n this.decorateStatus();\n }\n shouldUseServer(data) {\n // returns true if server data is more recent than local storage or if server storage is correct\n if (\n data.correct === \"T\" ||\n data.correct === true ||\n localStorage.length === 0 ||\n this.graderactive === true ||\n this.isTimed\n ) {\n return true;\n }\n let ex = localStorage.getItem(this.localStorageKey());\n if (ex === null) {\n return true;\n }\n let storedData;\n try {\n storedData = JSON.parse(ex);\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 // definitely don't want to use local storage here\n return true;\n }\n if (data.answer == storedData.answer) return true;\n let storageDate = new Date(storedData.timestamp);\n let serverDate = new Date(data.timestamp);\n return serverDate >= storageDate;\n }\n // Return the key which to be used when accessing local storage.\n localStorageKey() {\n return (\n eBookConfig.email +\n \":\" +\n eBookConfig.course +\n \":\" +\n this.divid +\n \"-given\"\n );\n }\n addCaption(elType) {\n //someElement.parentNode.insertBefore(newElement, someElement.nextSibling);\n if (!this.isTimed) {\n var capDiv = document.createElement(\"p\");\n if (this.question_label) {\n // Display caption based on whether Runestone services have been detected\n this.caption = eBookConfig.useRunestoneServices\n ? `Activity: ${this.question_label} ${this.caption} (${this.divid})`\n : `Activity: ${this.question_label} ${this.caption}`; // Without runestone\n $(capDiv).html(this.caption);\n $(capDiv).addClass(`${elType}_caption`);\n } else {\n // Display caption based on whether Runestone services have been detected\n $(capDiv).html(\n eBookConfig.useRunestoneServices\n ? this.caption + \" (\" + this.divid + \")\"\n : this.caption\n ); // Without runestone\n $(capDiv).addClass(`${elType}_caption`);\n $(capDiv).addClass(`${elType}_caption_text`);\n }\n this.capDiv = capDiv;\n //this.outerDiv.parentNode.insertBefore(capDiv, this.outerDiv.nextSibling);\n this.containerDiv.appendChild(capDiv);\n }\n }\n\n hasUserActivity() {\n return this.isAnswered;\n }\n\n checkCurrentAnswer() {\n console.log(\n \"Each component should provide an implementation of checkCurrentAnswer\"\n );\n }\n\n async logCurrentAnswer() {\n console.log(\n \"Each component should provide an implementation of logCurrentAnswer\"\n );\n }\n renderFeedback() {\n console.log(\n \"Each component should provide an implementation of renderFeedback\"\n );\n }\n disableInteraction() {\n console.log(\n \"Each component should provide an implementation of disableInteraction\"\n );\n }\n\n toString() {\n return `${this.constructor.name}: ${this.divid}`;\n }\n\n queueMathJax(component) {\n if (typeof MathJax === \"undefined\") {\n console.log(\"Error -- MathJax is not loaded\");\n return Promise.resolve(null);\n } else {\n // See - https://docs.mathjax.org/en/latest/advanced/typeset.html\n // Per the above we should keep track of the promises and only call this\n // a second time if all previous promises have resolved.\n // Create a queue of components\n // should wait until defaultPageReady is defined\n // If defaultPageReady is not defined then just enqueue the components.\n // Once defaultPageReady is defined\n // the window.runestoneMathReady promise will be fulfilled when the\n // initial typesetting is complete.\n if (MathJax.typesetPromise) {\n if (typeof window.runestoneMathReady !== \"undefined\") {\n return window.runestoneMathReady.then(() =>\n this.mjresolver(this.aQueue.enqueue(component))\n );\n } else {\n return this.mjresolver(this.aQueue.enqueue(component));\n }\n } else {\n console.log(`Waiting on MathJax!! ${MathJax.typesetPromise}`);\n setTimeout(() => this.queueMathJax(component), 200);\n console.log(`Returning mjready promise: ${this.mjReady}`);\n return this.mjReady;\n }\n }\n }\n\n decorateStatus() {\n if (this.isTimed || eBookConfig.peer) return;\n let rsDiv = $(this.containerDiv).closest(\"div.runestone\")[0];\n if (!rsDiv) return;\n rsDiv.classList.remove(\"notAnswered\");\n rsDiv.classList.remove(\"isInCorrect\");\n rsDiv.classList.remove(\"isCorrect\");\n if (this.correct) {\n rsDiv.classList.add(\"isCorrect\");\n } else {\n if (this.correct === null || typeof this.correct === \"undefined\") {\n rsDiv.classList.add(\"notAnswered\");\n } else {\n rsDiv.classList.add(\"isInCorrect\");\n }\n }\n }\n}\n\n// Inspiration and lots of code for this solution come from\n// https://stackoverflow.com/questions/53540348/js-async-await-tasks-queue\n// The idea here is that until MathJax is ready we can just enqueue things\n// once mathjax becomes ready then we can drain the queue and continue as usual.\n\nclass Queue {\n constructor() {\n this._items = [];\n }\n enqueue(item) {\n this._items.push(item);\n }\n dequeue() {\n return this._items.shift();\n }\n get size() {\n return this._items.length;\n }\n}\n\nclass AutoQueue extends Queue {\n constructor() {\n super();\n this._pendingPromise = false;\n }\n\n enqueue(component) {\n return new Promise((resolve, reject) => {\n super.enqueue({ component, resolve, reject });\n this.dequeue();\n });\n }\n\n async dequeue() {\n if (this._pendingPromise) return false;\n\n let item = super.dequeue();\n\n if (!item) return false;\n let qq = this;\n try {\n this._pendingPromise = true;\n\n let payload = await window.runestoneMathReady\n .then(async function () {\n console.log(\n `MathJax Ready -- dequeing a typesetting run for ${item.component.id} ${qq.preamble?.innerHTML}`\n );\n if (qq.preamble) {\n await MathJax.typesetPromise([qq.preamble])\n // Use insertAdjacentElement to preserve existing DOM elements and event listeners\n // instead of overwriting innerHTML which destroys event handlers\n let preambleDiv = document.createElement(\"div\");\n preambleDiv.innerHTML = qq.preamble.innerHTML;\n item.component.insertAdjacentElement(\"afterbegin\", preambleDiv);\n console.log(\n `MathJax typeset the preamble for ${item.component.id}`\n );\n return await MathJax.typesetPromise([item.component]);\n } else {\n return await MathJax.typesetPromise([item.component]);\n }\n });\n\n this._pendingPromise = false;\n item.resolve(payload);\n } catch (e) {\n this._pendingPromise = false;\n item.reject(e);\n } finally {\n // If there are more items in the queue, continue processing them\n this.dequeue();\n }\n\n return true;\n }\n}\n\nwindow.RunestoneBase = RunestoneBase;\n","/**\n *\n * User: bmiller\n * Original: 2011-04-20\n * Date: 2019-06-14\n * Time: 2:01 PM\n * This change marks the beginning of version 4.0 of the runestone components\n * Login/logout is no longer handled through javascript but rather server side.\n * Many of the components depend on the runestone:login event so we will keep that\n * for now to keep the churn fairly minimal.\n */\n\n/*\n\n Copyright (C) 2011 Brad Miller bonelake@gmail.com\n\n This program is free software: you can redistribute it and/or modify\n it under the terms of the GNU General Public License as published by\n the Free Software Foundation, either version 3 of the License, or\n (at your option) any later version.\n\n This program is distributed in the hope that it will be useful,\n but WITHOUT ANY WARRANTY; without even the implied warranty of\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n GNU General Public License for more details.\n\n You should have received a copy of the GNU General Public License\n along with this program. If not, see .\n\n */\n\n//\n// Page decoration functions\n//\n/*\nMaybe something like this at the top:\n\nActive assignment: [Ch 15 reading] [Exit assignment link]\nOn page (3 of 7) [Select input showing current page, can select others] \nBecoming this if not on a page in assignment\n\nActive assignment: [Ch 15 reading] [Exit assignment link]\nThis page is not part of that assignment. Select a page to return to it:\n[Select input]\n*/\nfunction addReadingList() {\n let assignment_info_string = localStorage.getItem(\"currentAssignmentInfo\")\n \n if (assignment_info_string && eBookConfig.readings) {\n var top,bottom,active,page_name,exit_link,fst,snd, new_pos, path_parts, new_pos_link;\n let assignment_info = JSON.parse(assignment_info_string);\n let assignment_id = assignment_info.id;\n let assignment_name = assignment_info.name;\n let reading_names = assignment_info.readingNames;\n\n active = document.createElement(\"div\");\n active.textContent = \"Active assignment: \"\n\n page_name = document.createElement(\"a\");\n page_name.textContent = assignment_name;\n page_name.href = `/assignment/student/doAssignment?assignment_id=${assignment_id}`;\n \n active.append(page_name);\n\n exit_link = document.createElement(\"a\");\n exit_link.textContent = \"Exit Assignment\";\n exit_link.href=window.location.pathname;\n\n exit_link.addEventListener('click',function(event) {\n localStorage.removeItem(\"currentAssignmentInfo\");\n });\n\n //active.append(exit_link)\n\n let cur_path_parts = window.location.pathname.split(\"/\");\n let name =\n cur_path_parts[cur_path_parts.length - 2] +\n \"/\" +\n cur_path_parts[cur_path_parts.length - 1];\n // if body has pretext class, then strip the leading path parts from each of the strings in eBookConfig.readings\n let body = document.getElementsByTagName(\"body\")[0];\n let ptxbook = false;\n let endLop = 2;\n if (body.classList.contains(\"pretext\")) {\n ptxbook = true;\n eBookConfig.readings = eBookConfig.readings.map(r => r.split(\"/\").pop());\n name = name.split(\"/\").pop();\n endLop = 1;\n }\n\n let position = eBookConfig.readings.indexOf(name);\n let num_readings = eBookConfig.readings.length;\n // get prev name\n if (position > 0) {\n new_pos = eBookConfig.readings[position - 1];\n path_parts = cur_path_parts.slice(0, cur_path_parts.length - endLop);\n path_parts.push(new_pos);\n new_pos_link = path_parts.join(\"/\");\n fst = active.cloneNode(true);\n let txt = document.createElement(\"p\");\n txt.textContent = `Page ${position + 1} of ${num_readings}, `;\n var fst_lnk = document.createElement(\"a\");\n //fst_lnk.className = \"btn btn-lg reading-navigation prev-reading\";\n fst_lnk.href = new_pos_link;\n fst_lnk.textContent = `Back to page ${\n position\n } of ${num_readings}: ${reading_names[position-1]}.`;\n txt.append(fst_lnk);\n fst.append(txt);\n \n } else if (position == 0){\n fst = active.cloneNode(true);\n let txt = document.createElement(\"p\");\n txt.textContent = `Page 1 of ${num_readings}.`;\n fst.append(txt);\n } else {\n new_pos = eBookConfig.readings[0];\n path_parts = cur_path_parts.slice(0, cur_path_parts.length - endLop);\n path_parts.push(new_pos);\n new_pos_link = path_parts.join(\"/\");\n fst = active.cloneNode(true);\n let txt = document.createElement(\"p\");\n txt.textContent = \"Notice: this page is not part of the assignment. To remove this warning click \";\n txt.append(exit_link);\n fst.append(txt);\n }\n if (position == eBookConfig.readings.length - 1) {\n // no more readings\n snd = active;\n let txt = document.createElement(\"p\");\n txt.textContent = `Page ${num_readings} of ${num_readings}: ${reading_names[position]}`;\n snd.append(txt);\n } else if (position >= 0) {\n // get next name\n new_pos = eBookConfig.readings[position + 1];\n path_parts = cur_path_parts.slice(0, cur_path_parts.length - endLop);\n path_parts.push(new_pos);\n new_pos_link = path_parts.join(\"/\");\n snd = active;\n var snd_lnk = document.createElement(\"a\");\n //snd_lnk.className = \"btn btn-lg reading-navigation next-reading\";\n snd_lnk.href = new_pos_link;\n snd_lnk.textContent = `Continue to page ${\n position + 2\n } of ${num_readings}: ${reading_names[position+1]}`;\n let txt = document.createElement(\"p\");\n txt.append(snd_lnk);\n snd.append(txt);\n \n } else {\n snd = active.cloneNode(true);\n let txt = document.createElement(\"p\");\n txt.textContent = \"Notice: this page is not part of the assignment. To remove this warning click \";\n let exit_clone = exit_link.cloneNode(true);\n\n exit_clone.addEventListener('click',function(event) {\n localStorage.removeItem(\"currentAssignmentInfo\");\n });\n txt.append(exit_clone);\n snd.append(txt);\n \n\n }\n\n top = document.createElement(\"div\");\n top.className = \"ptx-runestone-container\"\n fst.className = \"runestone assignment-nav top-assignment-nav\"\n //top.style.backgroundColor = \"var(--componentBgColor)\"\n //top.style.borderColor = \"var(--componentBorderColor)\"\n //top.style.borderWidth = \"1px\"\n top.append(fst);\n //top.append(snd);\n\n bottom = document.createElement(\"div\");\n bottom.className = \"ptx-runestone-container\"\n snd.className = \"runestone assignment-nav bottom-assignment-nav\"\n //bottom.style.backgroundColor = \"var(--componentBgColor)\"\n //bottom.style.borderColor = \"var(--componentBorderColor)\"\n //bottom.style.borderWidth = \"1px\"\n \n //bottom.append(active.cloneNode(true));\n //bottom.append(fst.cloneNode(true));\n bottom.append(snd);\n\n\n // check the body tag to see if it has a pretext class (no jquery)\n if (ptxbook) {\n //append parts to the header and progress container\n let content = document.getElementById(\"ptx-content\");\n if (content) {\n content.insertBefore(top, content.firstChild);\n }\n let pc = document.getElementById(\"scprogresscontainer\");\n if (pc) {\n pc.style.marginBottom = \"20px\";\n pc.appendChild(bottom);\n }\n return;\n }\n const mainContent = document.getElementById(\"main-content\");\n if (mainContent && snd) {\n mainContent.insertBefore(top,mainContent.firstChild)\n mainContent.appendChild(bottom);\n \n }\n }\n}\n\nfunction timedRefresh() {\n var timeoutPeriod = 900000; // 75 minutes\n let idleTimeoutId;\n\n function onIdle() {\n // After timeout period send the user back to the index. This will force a login\n // if needed when they want to go to a particular page. This may not be perfect\n // but its an easy way to make sure laptop users are properly logged in when they\n // take quizzes and save stuff.\n if (location.href.indexOf(\"index.html\") < 0) {\n console.log(\"Idle timer - \" + location.pathname);\n location.href =\n eBookConfig.app +\n \"/default/user/login?_next=\" +\n location.pathname +\n location.search;\n }\n }\n\n function resetIdleTimer() {\n if (idleTimeoutId) {\n clearTimeout(idleTimeoutId);\n }\n idleTimeoutId = setTimeout(onIdle, timeoutPeriod);\n }\n\n [\"mousemove\", \"keydown\", \"scroll\", \"click\", \"touchstart\", \"wheel\"].forEach(\n (eventName) => {\n window.addEventListener(eventName, resetIdleTimer, { passive: true });\n },\n );\n\n resetIdleTimer();\n}\n\nclass PageProgressBar {\n constructor(actDict) {\n this.possible = 0;\n this.total = 1;\n if (actDict && \"assignment_spec\" in actDict) {\n this.assignment_spec = actDict.assignment_spec;\n delete actDict.assignment_spec;\n }\n if (actDict && Object.keys(actDict).length > 0) {\n this.activities = actDict;\n } else {\n let activities = { page: 0 };\n document.querySelectorAll(\".runestone\").forEach(function (e) {\n activities[e.firstElementChild.id] = 0;\n });\n this.activities = activities;\n }\n this.calculateProgress();\n // Hide the progress bar on the index page.\n if (\n window.location.pathname.match(\n /.*\\/(index.html|toctree.html|Exercises.html|search.html)$/i,\n )\n ) {\n const scprogresscontainer = document.getElementById(\n \"scprogresscontainer\",\n );\n if (scprogresscontainer) scprogresscontainer.style.display = \"none\";\n }\n this.renderProgress();\n }\n\n calculateProgress() {\n for (let k in this.activities) {\n if (k !== undefined) {\n this.possible++;\n if (this.activities[k] > 0) {\n this.total++;\n }\n }\n }\n }\n\n renderProgress() {\n let value = 0;\n const scprogresstotal = document.getElementById(\"scprogresstotal\");\n if (scprogresstotal) scprogresstotal.textContent = this.total;\n const scprogressposs = document.getElementById(\"scprogressposs\");\n if (scprogressposs) scprogressposs.textContent = this.possible;\n try {\n value = (100 * this.total) / this.possible;\n } catch (e) {\n value = 0;\n }\n // Replace #subchapterprogress div with a native element if not already done\n let subchapterprogress = document.getElementById(\"subchapterprogress\");\n if (subchapterprogress && subchapterprogress.tagName !== \"PROGRESS\") {\n // Replace the div with a element\n const progressElem = document.createElement(\"progress\");\n progressElem.id = \"subchapterprogress\";\n progressElem.max = 100;\n progressElem.value = value;\n // Copy over any classes from the old div\n progressElem.className = subchapterprogress.className;\n subchapterprogress.replaceWith(progressElem);\n subchapterprogress = progressElem;\n } else if (subchapterprogress) {\n subchapterprogress.max = 100;\n subchapterprogress.value = value;\n }\n if (this.assignment_spec) {\n // If the user has completed all activities, send the reading score.\n // This handles the case where there are no activities on the page or\n // where the user completed activities on the assignment page and now\n // is viewing the reading page.\n let completeActivities = this.total - 1; // subtract 1 for the page reading which is in total but not an activity\n let requiredActivities =\n this.assignment_spec.activities_required || 0;\n if (completeActivities >= requiredActivities) {\n this.sendCompletedReadingScore().then(() => {\n console.log(\"Reading score sent for page\");\n // wait a tick then mark the page complete\n // this is needed to let the progress bar update before marking complete\n setTimeout(() => {\n let cb = document.getElementById(\"completionButton\");\n if (\n cb &&\n cb.textContent.toLowerCase() === \"mark as completed\"\n ) {\n cb.click();\n }\n }, 500);\n });\n }\n }\n if (!eBookConfig.isLoggedIn) {\n const subchapterDiv = document.getElementById(\"subchapterprogress\");\n if (subchapterDiv) subchapterDiv.classList.add(\"loggedout\");\n }\n }\n\n updateProgress(div_id) {\n this.activities[div_id]++;\n // Only update the progress bar on the first interaction with an object.\n if (this.activities[div_id] === 1) {\n this.total++;\n let val = (100 * this.total) / this.possible;\n const scprogresstotal2 = document.getElementById(\"scprogresstotal\");\n if (scprogresstotal2) scprogresstotal2.textContent = this.total;\n const scprogressposs2 = document.getElementById(\"scprogressposs\");\n if (scprogressposs2) scprogressposs2.textContent = this.possible;\n let subchapterprogress2 =\n document.getElementById(\"subchapterprogress\");\n if (\n subchapterprogress2 &&\n subchapterprogress2.tagName === \"PROGRESS\"\n ) {\n subchapterprogress2.value = val;\n }\n if (\n this.assignment_spec &&\n this.assignment_spec.activities_required !== null &&\n this.total >= this.assignment_spec.activities_required\n ) {\n console.log(\"Required activities completed\");\n this.sendCompletedReadingScore().then(() => {\n console.log(\"Reading score sent\");\n });\n }\n if (\n val == 100.0 &&\n (function () {\n const cb = document.getElementById(\"completionButton\");\n return (\n cb &&\n cb.textContent &&\n cb.textContent.toLowerCase() === \"mark as completed\"\n );\n })()\n ) {\n const cb = document.getElementById(\"completionButton\");\n if (cb && typeof cb.click === \"function\") {\n cb.click();\n }\n }\n }\n }\n\n async sendCompletedReadingScore() {\n let headers = new Headers({\n \"Content-type\": \"application/json; charset=utf-8\",\n Accept: \"application/json\",\n });\n let data = { ...this.assignment_spec };\n let request = new Request(\n `${eBookConfig.new_server_prefix}/logger/update_reading_score`,\n {\n method: \"POST\",\n body: JSON.stringify(data),\n headers: headers,\n },\n );\n try {\n let response = await fetch(request);\n if (!response.ok) {\n console.error(\n `Failed to send reading score! ${response.statusText}`,\n );\n }\n data = await response.json();\n } catch (e) {\n console.error(`Error sending reading score ${e}`);\n }\n }\n}\n\nexport var pageProgressTracker = {};\n\nfunction getCookie(name) {\n const value = `; ${document.cookie}`;\n const parts = value.split(`; ${name}=`);\n if (parts.length === 2) return parts.pop().split(\";\").shift();\n}\n\nasync function handlePageSetup() {\n var mess;\n if (eBookConfig.useRunestoneServices) {\n let headers = new Headers({\n \"Content-type\": \"application/json; charset=utf-8\",\n Accept: \"application/json\",\n });\n let data = {\n timezoneoffset: new Date().getTimezoneOffset() / 60,\n timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,\n };\n let RS_info = getCookie(\"RS_info\");\n var tz_match = false;\n if (RS_info) {\n try {\n let cleaned = RS_info.replace(/\\\\054/g, \",\"); // handle octal comma encoding\n let info = JSON.parse(decodeURIComponent(cleaned));\n info = JSON.parse(decodeURIComponent(info));\n if (\n info.timezone === data.timezone &&\n info.tz_offset === data.timezoneoffset\n ) {\n console.log(\n \"Timezone cookie matches, not sending timezone to server\",\n );\n tz_match = true;\n }\n } catch (e) {\n console.error(\n \"Error parsing RS_info cookie, sending timezone to server\",\n );\n }\n }\n if (tz_match === false) {\n // Set a cookie so we don't have to do this again for a while.\n let request = new Request(\n `${eBookConfig.new_server_prefix}/logger/set_tz_offset`,\n {\n method: \"POST\",\n body: JSON.stringify(data),\n headers: headers,\n },\n );\n try {\n let response = await fetch(request);\n if (!response.ok) {\n console.error(\n `Failed to set timezone! ${response.statusText}`,\n );\n }\n data = await response.json();\n } catch (e) {\n console.error(`Error setting timezone ${e}`);\n }\n }\n }\n console.log(`This page served by ${eBookConfig.served_by}`);\n if (eBookConfig.isLoggedIn) {\n mess = `username: ${eBookConfig.username}`;\n if (!eBookConfig.isInstructor) {\n const ipDropdown = document.getElementById(\"ip_dropdown_link\");\n if (ipDropdown && typeof ipDropdown.remove === \"function\") {\n ipDropdown.remove();\n }\n const instPeer = document.getElementById(\"inst_peer_link\");\n if (instPeer && typeof instPeer.remove === \"function\") {\n instPeer.remove();\n }\n }\n document.dispatchEvent(new Event(\"runestone:login\"));\n addReadingList();\n // Avoid the timedRefresh on the grading page.\n if (\n window.location.pathname.indexOf(\"/admin/grading\") == -1 &&\n window.location.pathname.indexOf(\"/peer/\") == -1\n ) {\n timedRefresh();\n }\n } else {\n mess = \"Not logged in\";\n document.dispatchEvent(new Event(\"runestone:logout\"));\n let bw = document.getElementById(\"browsing_warning\");\n if (bw) {\n bw.innerHTML =\n \"\";\n }\n let aw = document.getElementById(\"ad_warning\");\n if (aw) {\n aw.innerHTML =\n \"\";\n }\n }\n document.querySelectorAll(\".loggedinuser\").forEach((el) => {\n el.innerHTML = mess;\n });\n\n pageProgressTracker = new PageProgressBar(eBookConfig.activities);\n notifyRunestoneComponents();\n}\n\nfunction setupNavbarLoggedIn() {\n const profileLink = document.getElementById(\"profilelink\");\n if (profileLink) profileLink.style.removeProperty(\"display\");\n const passwordLink = document.getElementById(\"passwordlink\");\n if (passwordLink) passwordLink.style.removeProperty(\"display\");\n const registerLink = document.getElementById(\"registerlink\");\n if (registerLink) registerLink.style.display = \"none\";\n document.querySelectorAll(\"li.loginout\").forEach((el) => {\n el.innerHTML =\n 'Log Out';\n });\n}\ndocument.addEventListener(\"runestone:login\", setupNavbarLoggedIn);\n\nfunction setupNavbarLoggedOut() {\n if (eBookConfig.useRunestoneServices) {\n console.log(\"setup navbar for logged out\");\n const registerLink = document.getElementById(\"registerlink\");\n if (registerLink) registerLink.style.removeProperty(\"display\");\n const profileLink = document.getElementById(\"profilelink\");\n if (profileLink) profileLink.style.display = \"none\";\n const passwordLink = document.getElementById(\"passwordlink\");\n if (passwordLink) passwordLink.style.display = \"none\";\n const ipDropdown = document.getElementById(\"ip_dropdown_link\");\n if (ipDropdown) ipDropdown.style.display = \"none\";\n const instPeer = document.getElementById(\"inst_peer_link\");\n if (instPeer) instPeer.style.display = \"none\";\n document.querySelectorAll(\"li.loginout\").forEach((el) => {\n el.innerHTML =\n 'Login';\n });\n document.querySelectorAll(\".footer\").forEach((el) => {\n el.innerHTML = \"user not logged in\";\n });\n }\n}\ndocument.addEventListener(\"runestone:logout\", setupNavbarLoggedOut);\n\nfunction notifyRunestoneComponents() {\n // Runestone components wait until login process is over to load components because of storage issues. This triggers the `dynamic import machinery`, which then sends the login complete signal when this and all dynamic imports are finished.\n console.log(\"triggering runestone:pre-login-complete\");\n document.dispatchEvent(new Event(\"runestone:pre-login-complete\"));\n}\n\nfunction placeAdCopy() {\n if (typeof showAd !== \"undefined\" && showAd) {\n let adNum = Math.floor(Math.random() * 2) + 1;\n let adBlock = document.getElementById(`adcopy_${adNum}`);\n let rsElements = document.querySelectorAll(\".runestone\");\n if (rsElements.length > 0) {\n let randomIndex = Math.floor(Math.random() * rsElements.length);\n rsElements[randomIndex].after(adBlock);\n adBlock.style.display = \"block\";\n }\n }\n}\n\n// initialize stuff\ndocument.addEventListener(\"DOMContentLoaded\", function () {\n if (eBookConfig) {\n handlePageSetup();\n placeAdCopy();\n } else {\n if (typeof eBookConfig === \"undefined\") {\n console.log(\n \"eBookConfig is not defined. This page must not be set up for Runestone\",\n );\n }\n }\n});\n\n// misc stuff\n// todo: This could be further distributed but making a video.js file just for one function seems dumb.\nwindow.addEventListener(\"load\", function () {\n // add the video play button overlay image\n document.querySelectorAll(\".video-play-overlay\").forEach(function (el) {\n el.style.backgroundImage =\n \"url('{{pathto('_static/play_overlay_icon.png', 1)}}')\";\n });\n\n // This function is needed to allow the dropdown search bar to work;\n // The default behaviour is that the dropdown menu closes when something in\n // it (like the search bar) is clicked\n document\n .querySelectorAll(\".dropdown input, .dropdown label\")\n .forEach(function (el) {\n el.addEventListener(\"click\", function (e) {\n e.stopPropagation();\n });\n });\n\n // re-write some urls\n // This is tricker than it looks and you have to obey the rules for # anchors\n // The #anchors must come after the query string as the server basically ignores any part\n // of a url that comes after # - like a comment...\n if (location.href.includes(\"mode=browsing\")) {\n let queryString = \"?mode=browsing\";\n document.querySelectorAll(\"a\").forEach((link) => {\n let anchorText = \"\";\n if (\n link.href.includes(\"books/published\") &&\n !link.href.includes(\"?mode=browsing\")\n ) {\n if (link.href.includes(\"#\")) {\n let aPoint = link.href.indexOf(\"#\");\n anchorText = link.href.substring(aPoint);\n link.href = link.href.substring(0, aPoint);\n }\n link.href = link.href.includes(\"?\")\n ? link.href + queryString.replace(\"?\", \"&\") + anchorText\n : link.href + queryString + anchorText;\n }\n });\n }\n});\n\n/**\n * Returns true if the string appears to contain LaTeX math.\n */\nexport function looksLikeLatexMath(text) {\n if (typeof text !== \"string\") return false;\n\n // Common LaTeX math delimiters\n const mathDelimiters = [\n /\\$\\$[\\s\\S]+?\\$\\$/, // $$ ... $$\n /\\$[^$\\n]+?\\$/, // $ ... $\n /\\\\\\[[\\s\\S]+?\\\\\\]/, // \\[ ... \\]\n /\\\\\\([\\s\\S]+?\\\\\\)/, // \\( ... \\)\n ];\n\n // Common math commands (avoid generic \\text or \\ref-only cases)\n const mathCommands =\n /\\\\(frac|sqrt|sum|prod|int|lim|sin|cos|tan|log|ln|alpha|beta|gamma|pi|theta|sigma|Delta|cdot|times|leq|geq|neq)\\b/;\n\n // Superscripts/subscripts like x^2 or a_i\n const superSubScript = /[a-zA-Z0-9]\\s*[\\^_]\\s*\\{?.+?\\}?/;\n\n return (\n mathDelimiters.some((re) => re.test(text)) ||\n mathCommands.test(text) ||\n superSubScript.test(text)\n );\n}\n","import { runestone_import } from \"../../../webpack.index.js\";\n\nexport async function renderRunestoneComponent(\n componentSrc,\n whereDiv,\n moreOpts\n) {\n /**\n * The easy part is adding the componentSrc to the existing div.\n * The tedious part is calling the right functions to turn the\n * source into the actual component.\n */\n if (!componentSrc) {\n jQuery(`#${whereDiv}`).html(\n `

    Sorry, no source is available for preview.

    `\n );\n return;\n }\n let patt = /..\\/_images/g;\n componentSrc = componentSrc.replace(\n patt,\n `${eBookConfig.app}/books/published/${eBookConfig.basecourse}/_images`\n );\n jQuery(`#${whereDiv}`).html(componentSrc);\n\n if (typeof window.componentMap === \"undefined\") {\n window.componentMap = {};\n }\n\n let componentKind = $($(`#${whereDiv} [data-component]`)[0]).data(\n \"component\"\n );\n // Import the JavaScript for this component before proceeding.\n await runestone_import(componentKind);\n let opt = {};\n opt.orig = jQuery(`#${whereDiv} [data-component]`)[0];\n if (opt.orig) {\n opt.lang = $(opt.orig).data(\"lang\");\n opt.useRunestoneServices = true;\n opt.graderactive = false;\n opt.python3 = true;\n if (typeof moreOpts !== \"undefined\") {\n for (let key in moreOpts) {\n opt[key] = moreOpts[key];\n }\n }\n }\n\n if (typeof component_factory === \"undefined\") {\n alert(\"Error: Missing the component factory!\");\n } else {\n if (\n !window.component_factory[componentKind] &&\n !jQuery(`#${whereDiv}`).html()\n ) {\n jQuery(`#${whereDiv}`).html(\n `

    Preview not available for ${componentKind}

    `\n );\n } else {\n let res = window.component_factory[componentKind](opt);\n if (componentKind === \"activecode\") {\n if (moreOpts.multiGrader) {\n window.componentMap[\n `${moreOpts.gradingContainer} ${res.divid}`\n ] = res;\n } else {\n window.componentMap[res.divid] = res;\n }\n }\n }\n }\n}\n\nexport function createTimedComponent(componentSrc, moreOpts) {\n /* The important distinction is that the component does not really need to be rendered\n into the page, in fact, due to the async nature of getting the source the list of questions\n is made and the original html is replaced by the look of the exam.\n */\n\n let patt = /..\\/_images/g;\n componentSrc = componentSrc.replace(\n patt,\n `${eBookConfig.app}/books/published/${eBookConfig.basecourse}/_images`\n );\n\n let componentKind = $($(componentSrc).find(\"[data-component]\")[0]).data(\n \"component\"\n );\n\n let origId = $(componentSrc).find(\"[data-component]\").first().attr(\"id\");\n\n // Double check -- if the component source is not in the DOM, then briefly add it\n // and call the constructor.\n let hdiv;\n if (!document.getElementById(origId)) {\n hdiv = $(\"
    \", {\n css: { display: \"none\" },\n }).appendTo(\"body\");\n hdiv.html(componentSrc);\n }\n // at this point hdiv is a jquery object\n\n let ret;\n let opts = {\n orig: document.getElementById(origId),\n timed: true,\n };\n if (typeof moreOpts !== \"undefined\") {\n for (let key in moreOpts) {\n opts[key] = moreOpts[key];\n }\n }\n\n if (componentKind in window.component_factory) {\n ret = window.component_factory[componentKind](opts);\n }\n\n let rdict = {};\n rdict.question = ret;\n return rdict;\n}\n\n// For integration with the React overhault of Pretext\n// 1. Disable the automatic instantiation at the end of each component.js\n// 2. react will search for all \".runestone\" and will call this function for each of them.\nexport async function renderOneComponent(rsDiv) {\n // Find the actual component inside the runestone component.\n let component = rsDiv.querySelector(\"[data-component]\");\n if (component == null) {\n console.log(\"Render was called for a component, but now [data-component] attribute is present. This may mean the component has already been rendered.\")\n return;\n }\n let componentKind = component.dataset.component;\n await runestone_import(componentKind);\n if ($(this).closest(\"[data-component=timedAssessment]\").length == 0) {\n // If this element exists within a timed component, don't render it here\n try {\n let divid = component.id;\n window.componentMap[divid] = window.component_factory[\n componentKind\n ]({\n orig: component,\n useRunestoneServices: eBookConfig.useRunestoneServices,\n });\n } catch (err) {\n console.log(`Error rendering ${componentKind} Problem ${this.id}\n Details: ${err}`);\n }\n }\n}\n"],"names":["$","patchToc","$ul","minLevel","findA","$elem","level","find","each","index","item","$item","tag","tagName","toLowerCase","$childrenLi","children","$parentLi","parent","length","addClass","first","attr","patchTables","removeClass","navHeight","height","shiftWindow","scrollBy","location","hash","window","addEventListener","this","remove","not","$parent","$kids","detach","replaceWith","after","$localLi","dropdown","i","e","hasClass","text","jQuery","codeExercises","presentModeInitialized","presentToggle","dataComponent","closest","css","wrapAll","wrap","before","presentModeSetup","bod","presentClass","fullHeightClass","bottomClass","localStorage","setItem","presenterCssLink","disabled","activateExercise","getActiveExercise","active","filter","nextExercise","nextIndex","prevExercise","prevIndex","document","on","eBookConfig","isInstructor","prepend","change","i18n","extend","fallbacks","ab","ace","aln","als","an","anp","arn","arz","av","ay","ba","bar","bcc","bh","bjn","bm","bpy","bqi","bug","ce","crh","csb","cv","dsb","dtp","egl","eml","ff","fit","frc","frp","frr","fur","gag","gan","gl","glk","gn","gsw","hif","hsb","ht","ii","inh","iu","jut","jv","kaa","kbd","khw","kiu","kk","kl","koi","krc","ks","ksh","ku","kv","lad","lb","lbe","lez","li","lij","liv","lmo","ln","ltg","lzz","mai","mg","mhr","min","mo","mrj","mwl","myv","mzn","nah","nap","nds","no","os","pcd","pdc","pdt","pfl","pms","pt","qu","qug","rgn","rmy","rue","ruq","sa","sah","scn","sg","sgs","sli","sr","srn","stq","su","szl","tcy","tg","tt","ty","udm","ug","uk","vec","vep","vls","vmf","vot","vro","wa","wo","wuu","xal","xmf","yi","za","zea","zh","language","pluralRules","ak","one","am","ar","zero","two","few","many","ars","as","be","bn","br","bs","cs","cy","da","fa","fil","fr","ga","gd","gu","guw","gv","he","hi","hr","hy","is","iw","kab","kn","kw","lag","lt","lv","mk","mr","mt","naq","nso","pa","pl","prg","ro","ru","se","sh","shi","si","sk","sl","sma","smi","smj","smn","sms","ti","tl","tzm","zu","convertPlural","count","forms","pluralFormIndex","form","explicitPluralPattern","RegExp","test","parseInt","slice","indexOf","undefined","map","locale","getPluralForm","Math","number","pluralForms","pluralRuleParser","convertNumber","num","integer","tmp","transformTable","numberString","convertedNumber","digitTransformTable","String","parseFloat","convertGrammar","word","gender","push","tables","ml","lo","or","kh","my","ta","te","th","bo","split","languages","strongDirRegExp","parser","emitter","bidi","nodes","m","dir","match","module","exports","MessageParserEmitter","prototype","constructor","emit","node","replacements","ret","subnodes","operation","messageParserEmitter","n","Error","concat","result","replace","plural","grammar","MessageParser","options","defaults","simpleParse","message","parameters","str","parse","ast","pipe","colon","backslash","anyCharacter","dollar","digits","regularLiteral","regularLiteralWithoutBar","escapedOrLiteralWithoutBar","escapedOrRegularLiteral","templateContents","templateName","openTemplate","closeTemplate","expression","paramExpression","p","fn","pos","choice","parserSyntax","sequence","res","originalPos","nOrMore","parsed","makeStringParser","s","len","makeRegexParser","regex","matches","escapedLiteral","replacement","templateParam","expr","templateWithReplacement","templateWithOutReplacement","template","toString","join","start","MessageStore","messages","sources","load","source","url","deferred","key","deferreds","messageStore","log","Deferred","getJSON","done","resolve","fail","jqxhr","settings","exception","promise","localization","set","Object","hasOwnProperty","call","when","apply","get","messageKey","I18N","nav","Array","localize","localeParts","localePartIndex","fallbackIndex","tryingLocale","fallbackLocale","destroy","removeData","fallbackLocales","locIndex","sourceMap","pop","param1","data","arguments","lBracket","rBracket","type","$this","html","debug","console","navigator","userLanguage","idleTimer","newTimeout","elem","opts","startImmediately","idle","enabled","timeout","events","toggleIdleState","myelem","obj","elapsed","Date","olddate","clearTimeout","tId","setTimeout","event","Event","trigger","off","stop","trim","isPreTeXt","querySelector","processPageState","completionFlag","pageLoad","markingComplete","markingIncomplete","currentPathname","pathname","substring","lastIndexOf","isPtxBook","lastPageUrl","lastPageScrollLocation","round","scrollTop","course","ajaxError","jqhxr","ajax","new_server_prefix","contentType","dataType","JSON","stringify","method","async","lastPositionVal","href","completionClass","completionMsg","detail","completionStatus","scp","classList","add","append","getCompletions","getUrlVar","animate","navLinkBgRightHalfOpen","navLinkBgRightHiddenPosition","outerWidth","relationsNextIconInitialPosition","relationsNextIconNewPosition","show","navBgShown","scroll","right","left","addNavigationAndCompletionButtons","subChapterList","allSubChapterURLs","chapterName","subChapterName","parentElement","endDate","hover","next","hide","lastPageData","lastPageChapter","lastPageSubchapter","decorateTableOfContents","getUrlVars","vars","hashes","search","name","rb","querySelectorAll","forEach","el","div_id","getAttribute","logBookEvent","act","open","id","btn","container","codeInput","textContent","warn","style","display","setupPTXEvents","getElementById","overflow","SpliceWrapper","super","initSplice","base64","jsonPayload","sourceIframe","sendingIframe","subject","handleScoreAndState","handleSpliceEvent","handleGetState","origin","msgdata","jwt","decodeURIComponent","atob","c","charCodeAt","frame_id","score","getUniqueID","frame","rsDiv","activity_id","src","error","state","percent","correct","answer","f","getElementsByTagName","contentWindow","getSavedState","response","fetch","headers","body","ok","status","json","postMessage","message_id","checkLocalStorage","setLocalStorage","restoreAnswers","disableInteraction","module_map","activecode","ble","clickablearea","codelens","datafile","dragndrop","fillintheblank","groupsub","khanex","lp_build","matching","multiplechoice","hparsons","parsons","poll","quizly","reveal","selectquestion","shortanswer","showeval","simple_sensor","spreadsheet","tabbedStuff","timedAssessment","wavedrom","webwork","youtube","doenet","Promise","module_map_cache","QUEUE_FLUSH_TIME_MS","queue","queueLastFlush","flushQueue","now","toFlush","component_name","flushedPromise","reject","flushed","all","pre_login_complete_promise","runestone_auto_import","Set","element","a","value","z","msg","then","dataset","reactInUse","dispatchEvent","CustomEvent","runestone_import","retPromise","r","rej","queueImport","ready","script_src","currentScript","rc","getSwitch","toggleSwitch","currentTheme","getItem","documentElement","setAttribute","checked","switchTheme","popupScratchAC","scratchDiv","ACFactory","createScratchActivecode","divid","componentMap","createActiveCode","acDefaultLanguage","isLoggedIn","enableSaveLoad","toggleScratchActivecode","renderOneComponent","runestoneComponents","NO_DECORATE","RunestoneBase","component_ready_promise","_component_ready_resolve_fn","optional","allComponents","sid","graderactive","showfeedback","timed","isTimed","enforceDeadline","deadline","parseBooleanAttribute","orig","selector_id","assessmentTaken","timedWrapper","question_label","is_toggle","is_select","mjelements","self","mjReady","mjresolver","aQueue","AutoQueue","preamble","y","createElement","innerHTML","appendChild","jsonHeaders","Headers","Accept","attributeName","attrValue","lowerValue","eventInfo","post_return","course_name","clientLoginStatus","timezoneoffset","getTimezoneOffset","assignmentId","assignment_id","useRunestoneServices","logLevel","postLogMessage","prefix","updateProgress","decorateStatus","request","Request","scoreSpec","gradeBox","updateScores","alert","assigned","scoreSpan","getElementsByClassName","toFixed","allScores","allmax","total","max","totalSpan","maxSpan","percentSpan","logRunEvent","post_promise","forceSave","save_code","errinfo","checkServer","will_be_ready","checkServerComplete","csresolver","rawdeadline","tzoff","practice_mode","peer","loadData","repopulateFromStorage","attempted","statusText","err","indicate_component_ready","containerDiv","shouldUseServer","storedData","ex","localStorageKey","removeItem","storageDate","timestamp","email","addCaption","elType","capDiv","caption","hasUserActivity","isAnswered","checkCurrentAnswer","logCurrentAnswer","renderFeedback","queueMathJax","component","MathJax","typesetPromise","runestoneMathReady","enqueue","Queue","_items","dequeue","shift","size","_pendingPromise","qq","payload","preambleDiv","insertAdjacentElement","PageProgressBar","actDict","possible","assignment_spec","keys","activities","page","firstElementChild","calculateProgress","scprogresscontainer","renderProgress","k","scprogresstotal","scprogressposs","subchapterprogress","progressElem","className","activities_required","sendCompletedReadingScore","cb","click","subchapterDiv","val","scprogresstotal2","scprogressposs2","subchapterprogress2","pageProgressTracker","looksLikeLatexMath","some","re","profileLink","removeProperty","passwordLink","registerLink","app","ipDropdown","instPeer","mess","timezone","Intl","DateTimeFormat","resolvedOptions","timeZone","RS_info","parts","cookie","getCookie","tz_match","cleaned","info","tz_offset","served_by","username","assignment_info_string","readings","top","bottom","page_name","exit_link","fst","snd","new_pos","path_parts","new_pos_link","assignment_info","assignment_name","reading_names","readingNames","cur_path_parts","ptxbook","endLop","contains","position","num_readings","cloneNode","txt","fst_lnk","snd_lnk","exit_clone","content","insertBefore","firstChild","pc","marginBottom","mainContent","addReadingList","idleTimeoutId","onIdle","resetIdleTimer","eventName","passive","timedRefresh","bw","aw","handlePageSetup","showAd","adNum","floor","random","adBlock","rsElements","placeAdCopy","backgroundImage","stopPropagation","includes","queryString","link","anchorText","aPoint","renderRunestoneComponent","componentSrc","whereDiv","moreOpts","basecourse","componentKind","opt","lang","python3","component_factory","multiGrader","gradingContainer","createTimedComponent","hdiv","origId","appendTo","rdict","question"],"sourceRoot":""} \ No newline at end of file diff --git a/_static/prefix-runestone.1c010553c35c544c.bundle.js.map.gz b/_static/prefix-runestone.1c010553c35c544c.bundle.js.map.gz new file mode 100755 index 0000000000000000000000000000000000000000..fc924fcdb8b353f9c96ba248c9dc358942b36057 GIT binary patch literal 70241 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ª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ν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 Tm1|pTYd8N3fl$^|pvMCMil|?{ literal 0 HcmV?d00001 diff --git a/_static/prefix-runestone.f4ab138da65f4203.css b/_static/prefix-runestone.677a75a9120449ff.css old mode 100644 new mode 100755 similarity index 86% rename from _static/prefix-runestone.f4ab138da65f4203.css rename to _static/prefix-runestone.677a75a9120449ff.css index c23e42c..d455867 --- a/_static/prefix-runestone.f4ab138da65f4203.css +++ b/_static/prefix-runestone.677a75a9120449ff.css @@ -5,5 +5,5 @@ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) */ /*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ - /*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */}.ptx-runestone-container html,.runestone-sphinx html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;font-family:sans-serif}.ptx-runestone-container body,.runestone-sphinx body{margin:0}.ptx-runestone-container article,.ptx-runestone-container aside,.ptx-runestone-container details,.ptx-runestone-container figcaption,.ptx-runestone-container figure,.ptx-runestone-container footer,.ptx-runestone-container header,.ptx-runestone-container hgroup,.ptx-runestone-container main,.ptx-runestone-container menu,.ptx-runestone-container nav,.ptx-runestone-container section,.ptx-runestone-container summary,.runestone-sphinx article,.runestone-sphinx aside,.runestone-sphinx details,.runestone-sphinx figcaption,.runestone-sphinx figure,.runestone-sphinx footer,.runestone-sphinx header,.runestone-sphinx hgroup,.runestone-sphinx main,.runestone-sphinx menu,.runestone-sphinx nav,.runestone-sphinx section,.runestone-sphinx summary{display:block}.ptx-runestone-container audio,.ptx-runestone-container canvas,.ptx-runestone-container progress,.ptx-runestone-container video,.runestone-sphinx audio,.runestone-sphinx canvas,.runestone-sphinx progress,.runestone-sphinx video{display:inline-block;vertical-align:baseline}.ptx-runestone-container audio:not([controls]),.runestone-sphinx audio:not([controls]){display:none;height:0}.ptx-runestone-container [hidden],.ptx-runestone-container template,.runestone-sphinx [hidden],.runestone-sphinx template{display:none}.ptx-runestone-container a,.runestone-sphinx a{background-color:transparent}.ptx-runestone-container a:active,.ptx-runestone-container a:hover,.runestone-sphinx a:active,.runestone-sphinx a:hover{outline:0}.ptx-runestone-container abbr[title],.runestone-sphinx abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;text-decoration:underline dotted}.ptx-runestone-container b,.ptx-runestone-container strong,.runestone-sphinx b,.runestone-sphinx strong{font-weight:700}.ptx-runestone-container dfn,.runestone-sphinx dfn{font-style:italic}.ptx-runestone-container h1,.runestone-sphinx h1{font-size:2em;margin:.67em 0}.ptx-runestone-container mark,.runestone-sphinx mark{background:#ff0;color:#000}.ptx-runestone-container small,.runestone-sphinx small{font-size:80%}.ptx-runestone-container sub,.ptx-runestone-container sup,.runestone-sphinx sub,.runestone-sphinx sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.ptx-runestone-container sup,.runestone-sphinx sup{top:-.5em}.ptx-runestone-container sub,.runestone-sphinx sub{bottom:-.25em}.ptx-runestone-container img,.runestone-sphinx img{border:0}.ptx-runestone-container svg:not(:root),.runestone-sphinx svg:not(:root){overflow:hidden}.ptx-runestone-container figure,.runestone-sphinx figure{margin:1em 40px}.ptx-runestone-container hr,.runestone-sphinx hr{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;height:0}.ptx-runestone-container pre,.runestone-sphinx pre{overflow:auto}.ptx-runestone-container code,.ptx-runestone-container kbd,.ptx-runestone-container pre,.ptx-runestone-container samp,.runestone-sphinx code,.runestone-sphinx kbd,.runestone-sphinx pre,.runestone-sphinx samp{font-family:monospace,monospace;font-size:1em}.ptx-runestone-container button,.ptx-runestone-container input,.ptx-runestone-container optgroup,.ptx-runestone-container select,.ptx-runestone-container textarea,.runestone-sphinx button,.runestone-sphinx input,.runestone-sphinx optgroup,.runestone-sphinx select,.runestone-sphinx textarea{color:inherit;font:inherit;margin:0}.ptx-runestone-container button,.runestone-sphinx button{overflow:visible}.ptx-runestone-container button,.ptx-runestone-container select,.runestone-sphinx button,.runestone-sphinx select{text-transform:none}.ptx-runestone-container button,.ptx-runestone-container html input[type=button],.ptx-runestone-container input[type=reset],.ptx-runestone-container input[type=submit],.runestone-sphinx button,.runestone-sphinx html input[type=button],.runestone-sphinx input[type=reset],.runestone-sphinx input[type=submit]{-webkit-appearance:button;cursor:pointer}.ptx-runestone-container button[disabled],.ptx-runestone-container html input[disabled],.runestone-sphinx button[disabled],.runestone-sphinx html input[disabled]{cursor:default}.ptx-runestone-container button::-moz-focus-inner,.ptx-runestone-container input::-moz-focus-inner,.runestone-sphinx button::-moz-focus-inner,.runestone-sphinx input::-moz-focus-inner{border:0;padding:0}.ptx-runestone-container input,.runestone-sphinx input{line-height:normal}.ptx-runestone-container input[type=checkbox],.ptx-runestone-container input[type=radio],.runestone-sphinx input[type=checkbox],.runestone-sphinx input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}.ptx-runestone-container input[type=number]::-webkit-inner-spin-button,.ptx-runestone-container input[type=number]::-webkit-outer-spin-button,.runestone-sphinx input[type=number]::-webkit-inner-spin-button,.runestone-sphinx input[type=number]::-webkit-outer-spin-button{height:auto}.ptx-runestone-container input[type=search],.runestone-sphinx input[type=search]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.ptx-runestone-container input[type=search]::-webkit-search-cancel-button,.ptx-runestone-container input[type=search]::-webkit-search-decoration,.runestone-sphinx input[type=search]::-webkit-search-cancel-button,.runestone-sphinx input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.ptx-runestone-container fieldset,.runestone-sphinx fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.ptx-runestone-container textarea,.runestone-sphinx textarea{overflow:auto}.ptx-runestone-container optgroup,.runestone-sphinx optgroup{font-weight:700}.ptx-runestone-container table,.runestone-sphinx table{border-collapse:collapse;border-spacing:0}.ptx-runestone-container td,.ptx-runestone-container th,.runestone-sphinx td,.runestone-sphinx th{padding:0}@media print{.ptx-runestone-container *,.ptx-runestone-container :after,.ptx-runestone-container :before,.runestone-sphinx *,.runestone-sphinx :after,.runestone-sphinx :before{background:transparent!important;-webkit-box-shadow:none!important;box-shadow:none!important;color:#000!important;text-shadow:none!important}.ptx-runestone-container a,.ptx-runestone-container a:visited,.runestone-sphinx a,.runestone-sphinx a:visited{text-decoration:underline}.ptx-runestone-container a[href]:after,.runestone-sphinx a[href]:after{content:" (" attr(href) ")"}.ptx-runestone-container abbr[title]:after,.runestone-sphinx abbr[title]:after{content:" (" attr(title) ")"}.ptx-runestone-container a[href^="#"]:after,.ptx-runestone-container a[href^="javascript:"]:after,.runestone-sphinx a[href^="#"]:after,.runestone-sphinx a[href^="javascript:"]:after{content:""}.ptx-runestone-container blockquote,.ptx-runestone-container pre,.runestone-sphinx blockquote,.runestone-sphinx pre{border:1px solid #999;page-break-inside:avoid}.ptx-runestone-container thead,.runestone-sphinx thead{display:table-header-group}.ptx-runestone-container img,.ptx-runestone-container tr,.runestone-sphinx img,.runestone-sphinx tr{page-break-inside:avoid}.ptx-runestone-container img,.runestone-sphinx img{max-width:100%!important}.ptx-runestone-container h2,.ptx-runestone-container h3,.ptx-runestone-container p,.runestone-sphinx h2,.runestone-sphinx h3,.runestone-sphinx p{orphans:3;widows:3}.ptx-runestone-container h2,.ptx-runestone-container h3,.runestone-sphinx h2,.runestone-sphinx h3{page-break-after:avoid}.ptx-runestone-container .navbar,.runestone-sphinx .navbar{display:none}.ptx-runestone-container .btn>.caret,.ptx-runestone-container .dropup>.btn>.caret,.runestone-sphinx .btn>.caret,.runestone-sphinx .dropup>.btn>.caret{border-top-color:#000!important}.ptx-runestone-container .label,.runestone-sphinx .label{border:1px solid #000}.ptx-runestone-container .table,.runestone-sphinx .table{border-collapse:collapse!important}.ptx-runestone-container .table td,.ptx-runestone-container .table th,.runestone-sphinx .table td,.runestone-sphinx .table th{background-color:#fff!important}.ptx-runestone-container .table-bordered td,.ptx-runestone-container .table-bordered th,.runestone-sphinx .table-bordered td,.runestone-sphinx .table-bordered th{border:1px solid #ddd!important}}@font-face{font-family:Glyphicons Halflings;src:url(7a0f4b092e86cb52.eot);src:url(7a0f4b092e86cb52.eot?#iefix) format("embedded-opentype"),url(b70781972ce7320b.woff2) format("woff2"),url(4ba85deaf3670942.woff) format("woff"),url(009b407a9881be10.ttf) format("truetype"),url(85f0466cb4ab3a4d.svg#glyphicons_halflingsregular) format("svg")}.ptx-runestone-container .glyphicon,.runestone-sphinx .glyphicon{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;font-family:Glyphicons Halflings;font-style:normal;font-weight:400;line-height:1;position:relative;top:1px}.ptx-runestone-container .glyphicon-asterisk:before,.runestone-sphinx .glyphicon-asterisk:before{content:"\002a"}.ptx-runestone-container .glyphicon-plus:before,.runestone-sphinx .glyphicon-plus:before{content:"\002b"}.ptx-runestone-container .glyphicon-eur:before,.ptx-runestone-container .glyphicon-euro:before,.runestone-sphinx .glyphicon-eur:before,.runestone-sphinx .glyphicon-euro:before{content:"\20ac"}.ptx-runestone-container .glyphicon-minus:before,.runestone-sphinx .glyphicon-minus:before{content:"\2212"}.ptx-runestone-container .glyphicon-cloud:before,.runestone-sphinx .glyphicon-cloud:before{content:"\2601"}.ptx-runestone-container .glyphicon-envelope:before,.runestone-sphinx .glyphicon-envelope:before{content:"\2709"}.ptx-runestone-container .glyphicon-pencil:before,.runestone-sphinx .glyphicon-pencil:before{content:"\270f"}.ptx-runestone-container .glyphicon-glass:before,.runestone-sphinx .glyphicon-glass:before{content:"\e001"}.ptx-runestone-container .glyphicon-music:before,.runestone-sphinx .glyphicon-music:before{content:"\e002"}.ptx-runestone-container .glyphicon-search:before,.runestone-sphinx .glyphicon-search:before{content:"\e003"}.ptx-runestone-container .glyphicon-heart:before,.runestone-sphinx .glyphicon-heart:before{content:"\e005"}.ptx-runestone-container .glyphicon-star:before,.runestone-sphinx .glyphicon-star:before{content:"\e006"}.ptx-runestone-container .glyphicon-star-empty:before,.runestone-sphinx .glyphicon-star-empty:before{content:"\e007"}.ptx-runestone-container .glyphicon-user:before,.runestone-sphinx .glyphicon-user:before{content:"\e008"}.ptx-runestone-container .glyphicon-film:before,.runestone-sphinx .glyphicon-film:before{content:"\e009"}.ptx-runestone-container .glyphicon-th-large:before,.runestone-sphinx .glyphicon-th-large:before{content:"\e010"}.ptx-runestone-container .glyphicon-th:before,.runestone-sphinx .glyphicon-th:before{content:"\e011"}.ptx-runestone-container .glyphicon-th-list:before,.runestone-sphinx .glyphicon-th-list:before{content:"\e012"}.ptx-runestone-container .glyphicon-ok:before,.runestone-sphinx .glyphicon-ok:before{content:"\e013"}.ptx-runestone-container .glyphicon-remove:before,.runestone-sphinx .glyphicon-remove:before{content:"\e014"}.ptx-runestone-container .glyphicon-zoom-in:before,.runestone-sphinx .glyphicon-zoom-in:before{content:"\e015"}.ptx-runestone-container .glyphicon-zoom-out:before,.runestone-sphinx .glyphicon-zoom-out:before{content:"\e016"}.ptx-runestone-container .glyphicon-off:before,.runestone-sphinx .glyphicon-off:before{content:"\e017"}.ptx-runestone-container .glyphicon-signal:before,.runestone-sphinx .glyphicon-signal:before{content:"\e018"}.ptx-runestone-container .glyphicon-cog:before,.runestone-sphinx .glyphicon-cog:before{content:"\e019"}.ptx-runestone-container .glyphicon-trash:before,.runestone-sphinx .glyphicon-trash:before{content:"\e020"}.ptx-runestone-container .glyphicon-home:before,.runestone-sphinx .glyphicon-home:before{content:"\e021"}.ptx-runestone-container .glyphicon-file:before,.runestone-sphinx .glyphicon-file:before{content:"\e022"}.ptx-runestone-container .glyphicon-time:before,.runestone-sphinx .glyphicon-time:before{content:"\e023"}.ptx-runestone-container .glyphicon-road:before,.runestone-sphinx .glyphicon-road:before{content:"\e024"}.ptx-runestone-container .glyphicon-download-alt:before,.runestone-sphinx .glyphicon-download-alt:before{content:"\e025"}.ptx-runestone-container .glyphicon-download:before,.runestone-sphinx .glyphicon-download:before{content:"\e026"}.ptx-runestone-container .glyphicon-upload:before,.runestone-sphinx .glyphicon-upload:before{content:"\e027"}.ptx-runestone-container .glyphicon-inbox:before,.runestone-sphinx .glyphicon-inbox:before{content:"\e028"}.ptx-runestone-container .glyphicon-play-circle:before,.runestone-sphinx .glyphicon-play-circle:before{content:"\e029"}.ptx-runestone-container .glyphicon-repeat:before,.runestone-sphinx .glyphicon-repeat:before{content:"\e030"}.ptx-runestone-container .glyphicon-refresh:before,.runestone-sphinx .glyphicon-refresh:before{content:"\e031"}.ptx-runestone-container .glyphicon-list-alt:before,.runestone-sphinx .glyphicon-list-alt:before{content:"\e032"}.ptx-runestone-container .glyphicon-lock:before,.runestone-sphinx .glyphicon-lock:before{content:"\e033"}.ptx-runestone-container .glyphicon-flag:before,.runestone-sphinx .glyphicon-flag:before{content:"\e034"}.ptx-runestone-container .glyphicon-headphones:before,.runestone-sphinx .glyphicon-headphones:before{content:"\e035"}.ptx-runestone-container .glyphicon-volume-off:before,.runestone-sphinx .glyphicon-volume-off:before{content:"\e036"}.ptx-runestone-container .glyphicon-volume-down:before,.runestone-sphinx .glyphicon-volume-down:before{content:"\e037"}.ptx-runestone-container .glyphicon-volume-up:before,.runestone-sphinx .glyphicon-volume-up:before{content:"\e038"}.ptx-runestone-container .glyphicon-qrcode:before,.runestone-sphinx .glyphicon-qrcode:before{content:"\e039"}.ptx-runestone-container .glyphicon-barcode:before,.runestone-sphinx .glyphicon-barcode:before{content:"\e040"}.ptx-runestone-container .glyphicon-tag:before,.runestone-sphinx .glyphicon-tag:before{content:"\e041"}.ptx-runestone-container .glyphicon-tags:before,.runestone-sphinx .glyphicon-tags:before{content:"\e042"}.ptx-runestone-container .glyphicon-book:before,.runestone-sphinx .glyphicon-book:before{content:"\e043"}.ptx-runestone-container .glyphicon-bookmark:before,.runestone-sphinx .glyphicon-bookmark:before{content:"\e044"}.ptx-runestone-container .glyphicon-print:before,.runestone-sphinx .glyphicon-print:before{content:"\e045"}.ptx-runestone-container .glyphicon-camera:before,.runestone-sphinx .glyphicon-camera:before{content:"\e046"}.ptx-runestone-container .glyphicon-font:before,.runestone-sphinx .glyphicon-font:before{content:"\e047"}.ptx-runestone-container .glyphicon-bold:before,.runestone-sphinx .glyphicon-bold:before{content:"\e048"}.ptx-runestone-container .glyphicon-italic:before,.runestone-sphinx .glyphicon-italic:before{content:"\e049"}.ptx-runestone-container .glyphicon-text-height:before,.runestone-sphinx .glyphicon-text-height:before{content:"\e050"}.ptx-runestone-container .glyphicon-text-width:before,.runestone-sphinx .glyphicon-text-width:before{content:"\e051"}.ptx-runestone-container .glyphicon-align-left:before,.runestone-sphinx .glyphicon-align-left:before{content:"\e052"}.ptx-runestone-container .glyphicon-align-center:before,.runestone-sphinx .glyphicon-align-center:before{content:"\e053"}.ptx-runestone-container .glyphicon-align-right:before,.runestone-sphinx .glyphicon-align-right:before{content:"\e054"}.ptx-runestone-container .glyphicon-align-justify:before,.runestone-sphinx .glyphicon-align-justify:before{content:"\e055"}.ptx-runestone-container .glyphicon-list:before,.runestone-sphinx .glyphicon-list:before{content:"\e056"}.ptx-runestone-container .glyphicon-indent-left:before,.runestone-sphinx .glyphicon-indent-left:before{content:"\e057"}.ptx-runestone-container .glyphicon-indent-right:before,.runestone-sphinx .glyphicon-indent-right:before{content:"\e058"}.ptx-runestone-container .glyphicon-facetime-video:before,.runestone-sphinx .glyphicon-facetime-video:before{content:"\e059"}.ptx-runestone-container .glyphicon-picture:before,.runestone-sphinx .glyphicon-picture:before{content:"\e060"}.ptx-runestone-container .glyphicon-map-marker:before,.runestone-sphinx .glyphicon-map-marker:before{content:"\e062"}.ptx-runestone-container .glyphicon-adjust:before,.runestone-sphinx .glyphicon-adjust:before{content:"\e063"}.ptx-runestone-container .glyphicon-tint:before,.runestone-sphinx .glyphicon-tint:before{content:"\e064"}.ptx-runestone-container .glyphicon-edit:before,.runestone-sphinx .glyphicon-edit:before{content:"\e065"}.ptx-runestone-container .glyphicon-share:before,.runestone-sphinx .glyphicon-share:before{content:"\e066"}.ptx-runestone-container .glyphicon-check:before,.runestone-sphinx .glyphicon-check:before{content:"\e067"}.ptx-runestone-container .glyphicon-move:before,.runestone-sphinx .glyphicon-move:before{content:"\e068"}.ptx-runestone-container .glyphicon-step-backward:before,.runestone-sphinx .glyphicon-step-backward:before{content:"\e069"}.ptx-runestone-container .glyphicon-fast-backward:before,.runestone-sphinx .glyphicon-fast-backward:before{content:"\e070"}.ptx-runestone-container .glyphicon-backward:before,.runestone-sphinx .glyphicon-backward:before{content:"\e071"}.ptx-runestone-container .glyphicon-play:before,.runestone-sphinx .glyphicon-play:before{content:"\e072"}.ptx-runestone-container .glyphicon-pause:before,.runestone-sphinx .glyphicon-pause:before{content:"\e073"}.ptx-runestone-container .glyphicon-stop:before,.runestone-sphinx .glyphicon-stop:before{content:"\e074"}.ptx-runestone-container .glyphicon-forward:before,.runestone-sphinx .glyphicon-forward:before{content:"\e075"}.ptx-runestone-container .glyphicon-fast-forward:before,.runestone-sphinx .glyphicon-fast-forward:before{content:"\e076"}.ptx-runestone-container .glyphicon-step-forward:before,.runestone-sphinx .glyphicon-step-forward:before{content:"\e077"}.ptx-runestone-container .glyphicon-eject:before,.runestone-sphinx .glyphicon-eject:before{content:"\e078"}.ptx-runestone-container .glyphicon-chevron-left:before,.runestone-sphinx .glyphicon-chevron-left:before{content:"\e079"}.ptx-runestone-container .glyphicon-chevron-right:before,.runestone-sphinx .glyphicon-chevron-right:before{content:"\e080"}.ptx-runestone-container .glyphicon-plus-sign:before,.runestone-sphinx .glyphicon-plus-sign:before{content:"\e081"}.ptx-runestone-container .glyphicon-minus-sign:before,.runestone-sphinx .glyphicon-minus-sign:before{content:"\e082"}.ptx-runestone-container .glyphicon-remove-sign:before,.runestone-sphinx .glyphicon-remove-sign:before{content:"\e083"}.ptx-runestone-container .glyphicon-ok-sign:before,.runestone-sphinx .glyphicon-ok-sign:before{content:"\e084"}.ptx-runestone-container .glyphicon-question-sign:before,.runestone-sphinx .glyphicon-question-sign:before{content:"\e085"}.ptx-runestone-container .glyphicon-info-sign:before,.runestone-sphinx .glyphicon-info-sign:before{content:"\e086"}.ptx-runestone-container .glyphicon-screenshot:before,.runestone-sphinx .glyphicon-screenshot:before{content:"\e087"}.ptx-runestone-container .glyphicon-remove-circle:before,.runestone-sphinx .glyphicon-remove-circle:before{content:"\e088"}.ptx-runestone-container .glyphicon-ok-circle:before,.runestone-sphinx .glyphicon-ok-circle:before{content:"\e089"}.ptx-runestone-container .glyphicon-ban-circle:before,.runestone-sphinx .glyphicon-ban-circle:before{content:"\e090"}.ptx-runestone-container .glyphicon-arrow-left:before,.runestone-sphinx .glyphicon-arrow-left:before{content:"\e091"}.ptx-runestone-container .glyphicon-arrow-right:before,.runestone-sphinx .glyphicon-arrow-right:before{content:"\e092"}.ptx-runestone-container .glyphicon-arrow-up:before,.runestone-sphinx .glyphicon-arrow-up:before{content:"\e093"}.ptx-runestone-container .glyphicon-arrow-down:before,.runestone-sphinx .glyphicon-arrow-down:before{content:"\e094"}.ptx-runestone-container .glyphicon-share-alt:before,.runestone-sphinx .glyphicon-share-alt:before{content:"\e095"}.ptx-runestone-container .glyphicon-resize-full:before,.runestone-sphinx .glyphicon-resize-full:before{content:"\e096"}.ptx-runestone-container .glyphicon-resize-small:before,.runestone-sphinx .glyphicon-resize-small:before{content:"\e097"}.ptx-runestone-container .glyphicon-exclamation-sign:before,.runestone-sphinx .glyphicon-exclamation-sign:before{content:"\e101"}.ptx-runestone-container .glyphicon-gift:before,.runestone-sphinx .glyphicon-gift:before{content:"\e102"}.ptx-runestone-container .glyphicon-leaf:before,.runestone-sphinx .glyphicon-leaf:before{content:"\e103"}.ptx-runestone-container .glyphicon-fire:before,.runestone-sphinx .glyphicon-fire:before{content:"\e104"}.ptx-runestone-container .glyphicon-eye-open:before,.runestone-sphinx .glyphicon-eye-open:before{content:"\e105"}.ptx-runestone-container .glyphicon-eye-close:before,.runestone-sphinx .glyphicon-eye-close:before{content:"\e106"}.ptx-runestone-container .glyphicon-warning-sign:before,.runestone-sphinx .glyphicon-warning-sign:before{content:"\e107"}.ptx-runestone-container .glyphicon-plane:before,.runestone-sphinx .glyphicon-plane:before{content:"\e108"}.ptx-runestone-container .glyphicon-calendar:before,.runestone-sphinx .glyphicon-calendar:before{content:"\e109"}.ptx-runestone-container .glyphicon-random:before,.runestone-sphinx .glyphicon-random:before{content:"\e110"}.ptx-runestone-container .glyphicon-comment:before,.runestone-sphinx .glyphicon-comment:before{content:"\e111"}.ptx-runestone-container .glyphicon-magnet:before,.runestone-sphinx .glyphicon-magnet:before{content:"\e112"}.ptx-runestone-container .glyphicon-chevron-up:before,.runestone-sphinx .glyphicon-chevron-up:before{content:"\e113"}.ptx-runestone-container .glyphicon-chevron-down:before,.runestone-sphinx .glyphicon-chevron-down:before{content:"\e114"}.ptx-runestone-container .glyphicon-retweet:before,.runestone-sphinx .glyphicon-retweet:before{content:"\e115"}.ptx-runestone-container .glyphicon-shopping-cart:before,.runestone-sphinx .glyphicon-shopping-cart:before{content:"\e116"}.ptx-runestone-container .glyphicon-folder-close:before,.runestone-sphinx .glyphicon-folder-close:before{content:"\e117"}.ptx-runestone-container .glyphicon-folder-open:before,.runestone-sphinx .glyphicon-folder-open:before{content:"\e118"}.ptx-runestone-container .glyphicon-resize-vertical:before,.runestone-sphinx .glyphicon-resize-vertical:before{content:"\e119"}.ptx-runestone-container .glyphicon-resize-horizontal:before,.runestone-sphinx .glyphicon-resize-horizontal:before{content:"\e120"}.ptx-runestone-container .glyphicon-hdd:before,.runestone-sphinx .glyphicon-hdd:before{content:"\e121"}.ptx-runestone-container .glyphicon-bullhorn:before,.runestone-sphinx .glyphicon-bullhorn:before{content:"\e122"}.ptx-runestone-container .glyphicon-bell:before,.runestone-sphinx .glyphicon-bell:before{content:"\e123"}.ptx-runestone-container .glyphicon-certificate:before,.runestone-sphinx .glyphicon-certificate:before{content:"\e124"}.ptx-runestone-container .glyphicon-thumbs-up:before,.runestone-sphinx .glyphicon-thumbs-up:before{content:"\e125"}.ptx-runestone-container .glyphicon-thumbs-down:before,.runestone-sphinx .glyphicon-thumbs-down:before{content:"\e126"}.ptx-runestone-container .glyphicon-hand-right:before,.runestone-sphinx .glyphicon-hand-right:before{content:"\e127"}.ptx-runestone-container .glyphicon-hand-left:before,.runestone-sphinx .glyphicon-hand-left:before{content:"\e128"}.ptx-runestone-container .glyphicon-hand-up:before,.runestone-sphinx .glyphicon-hand-up:before{content:"\e129"}.ptx-runestone-container .glyphicon-hand-down:before,.runestone-sphinx .glyphicon-hand-down:before{content:"\e130"}.ptx-runestone-container .glyphicon-circle-arrow-right:before,.runestone-sphinx .glyphicon-circle-arrow-right:before{content:"\e131"}.ptx-runestone-container .glyphicon-circle-arrow-left:before,.runestone-sphinx .glyphicon-circle-arrow-left:before{content:"\e132"}.ptx-runestone-container .glyphicon-circle-arrow-up:before,.runestone-sphinx .glyphicon-circle-arrow-up:before{content:"\e133"}.ptx-runestone-container .glyphicon-circle-arrow-down:before,.runestone-sphinx .glyphicon-circle-arrow-down:before{content:"\e134"}.ptx-runestone-container .glyphicon-globe:before,.runestone-sphinx .glyphicon-globe:before{content:"\e135"}.ptx-runestone-container .glyphicon-wrench:before,.runestone-sphinx .glyphicon-wrench:before{content:"\e136"}.ptx-runestone-container .glyphicon-tasks:before,.runestone-sphinx .glyphicon-tasks:before{content:"\e137"}.ptx-runestone-container .glyphicon-filter:before,.runestone-sphinx .glyphicon-filter:before{content:"\e138"}.ptx-runestone-container .glyphicon-briefcase:before,.runestone-sphinx .glyphicon-briefcase:before{content:"\e139"}.ptx-runestone-container .glyphicon-fullscreen:before,.runestone-sphinx .glyphicon-fullscreen:before{content:"\e140"}.ptx-runestone-container .glyphicon-dashboard:before,.runestone-sphinx .glyphicon-dashboard:before{content:"\e141"}.ptx-runestone-container .glyphicon-paperclip:before,.runestone-sphinx .glyphicon-paperclip:before{content:"\e142"}.ptx-runestone-container .glyphicon-heart-empty:before,.runestone-sphinx .glyphicon-heart-empty:before{content:"\e143"}.ptx-runestone-container .glyphicon-link:before,.runestone-sphinx .glyphicon-link:before{content:"\e144"}.ptx-runestone-container .glyphicon-phone:before,.runestone-sphinx .glyphicon-phone:before{content:"\e145"}.ptx-runestone-container .glyphicon-pushpin:before,.runestone-sphinx .glyphicon-pushpin:before{content:"\e146"}.ptx-runestone-container .glyphicon-usd:before,.runestone-sphinx .glyphicon-usd:before{content:"\e148"}.ptx-runestone-container .glyphicon-gbp:before,.runestone-sphinx .glyphicon-gbp:before{content:"\e149"}.ptx-runestone-container .glyphicon-sort:before,.runestone-sphinx .glyphicon-sort:before{content:"\e150"}.ptx-runestone-container .glyphicon-sort-by-alphabet:before,.runestone-sphinx .glyphicon-sort-by-alphabet:before{content:"\e151"}.ptx-runestone-container .glyphicon-sort-by-alphabet-alt:before,.runestone-sphinx .glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.ptx-runestone-container .glyphicon-sort-by-order:before,.runestone-sphinx .glyphicon-sort-by-order:before{content:"\e153"}.ptx-runestone-container .glyphicon-sort-by-order-alt:before,.runestone-sphinx .glyphicon-sort-by-order-alt:before{content:"\e154"}.ptx-runestone-container .glyphicon-sort-by-attributes:before,.runestone-sphinx .glyphicon-sort-by-attributes:before{content:"\e155"}.ptx-runestone-container .glyphicon-sort-by-attributes-alt:before,.runestone-sphinx .glyphicon-sort-by-attributes-alt:before{content:"\e156"}.ptx-runestone-container .glyphicon-unchecked:before,.runestone-sphinx .glyphicon-unchecked:before{content:"\e157"}.ptx-runestone-container .glyphicon-expand:before,.runestone-sphinx .glyphicon-expand:before{content:"\e158"}.ptx-runestone-container .glyphicon-collapse-down:before,.runestone-sphinx .glyphicon-collapse-down:before{content:"\e159"}.ptx-runestone-container .glyphicon-collapse-up:before,.runestone-sphinx .glyphicon-collapse-up:before{content:"\e160"}.ptx-runestone-container .glyphicon-log-in:before,.runestone-sphinx .glyphicon-log-in:before{content:"\e161"}.ptx-runestone-container .glyphicon-flash:before,.runestone-sphinx .glyphicon-flash:before{content:"\e162"}.ptx-runestone-container .glyphicon-log-out:before,.runestone-sphinx .glyphicon-log-out:before{content:"\e163"}.ptx-runestone-container .glyphicon-new-window:before,.runestone-sphinx .glyphicon-new-window:before{content:"\e164"}.ptx-runestone-container .glyphicon-record:before,.runestone-sphinx .glyphicon-record:before{content:"\e165"}.ptx-runestone-container .glyphicon-save:before,.runestone-sphinx .glyphicon-save:before{content:"\e166"}.ptx-runestone-container .glyphicon-open:before,.runestone-sphinx .glyphicon-open:before{content:"\e167"}.ptx-runestone-container .glyphicon-saved:before,.runestone-sphinx .glyphicon-saved:before{content:"\e168"}.ptx-runestone-container .glyphicon-import:before,.runestone-sphinx .glyphicon-import:before{content:"\e169"}.ptx-runestone-container .glyphicon-export:before,.runestone-sphinx .glyphicon-export:before{content:"\e170"}.ptx-runestone-container .glyphicon-send:before,.runestone-sphinx .glyphicon-send:before{content:"\e171"}.ptx-runestone-container .glyphicon-floppy-disk:before,.runestone-sphinx .glyphicon-floppy-disk:before{content:"\e172"}.ptx-runestone-container .glyphicon-floppy-saved:before,.runestone-sphinx .glyphicon-floppy-saved:before{content:"\e173"}.ptx-runestone-container .glyphicon-floppy-remove:before,.runestone-sphinx .glyphicon-floppy-remove:before{content:"\e174"}.ptx-runestone-container .glyphicon-floppy-save:before,.runestone-sphinx .glyphicon-floppy-save:before{content:"\e175"}.ptx-runestone-container .glyphicon-floppy-open:before,.runestone-sphinx .glyphicon-floppy-open:before{content:"\e176"}.ptx-runestone-container .glyphicon-credit-card:before,.runestone-sphinx .glyphicon-credit-card:before{content:"\e177"}.ptx-runestone-container .glyphicon-transfer:before,.runestone-sphinx .glyphicon-transfer:before{content:"\e178"}.ptx-runestone-container .glyphicon-cutlery:before,.runestone-sphinx .glyphicon-cutlery:before{content:"\e179"}.ptx-runestone-container .glyphicon-header:before,.runestone-sphinx .glyphicon-header:before{content:"\e180"}.ptx-runestone-container .glyphicon-compressed:before,.runestone-sphinx .glyphicon-compressed:before{content:"\e181"}.ptx-runestone-container .glyphicon-earphone:before,.runestone-sphinx .glyphicon-earphone:before{content:"\e182"}.ptx-runestone-container .glyphicon-phone-alt:before,.runestone-sphinx .glyphicon-phone-alt:before{content:"\e183"}.ptx-runestone-container .glyphicon-tower:before,.runestone-sphinx .glyphicon-tower:before{content:"\e184"}.ptx-runestone-container .glyphicon-stats:before,.runestone-sphinx .glyphicon-stats:before{content:"\e185"}.ptx-runestone-container .glyphicon-sd-video:before,.runestone-sphinx .glyphicon-sd-video:before{content:"\e186"}.ptx-runestone-container .glyphicon-hd-video:before,.runestone-sphinx .glyphicon-hd-video:before{content:"\e187"}.ptx-runestone-container .glyphicon-subtitles:before,.runestone-sphinx .glyphicon-subtitles:before{content:"\e188"}.ptx-runestone-container .glyphicon-sound-stereo:before,.runestone-sphinx .glyphicon-sound-stereo:before{content:"\e189"}.ptx-runestone-container .glyphicon-sound-dolby:before,.runestone-sphinx .glyphicon-sound-dolby:before{content:"\e190"}.ptx-runestone-container .glyphicon-sound-5-1:before,.runestone-sphinx .glyphicon-sound-5-1:before{content:"\e191"}.ptx-runestone-container .glyphicon-sound-6-1:before,.runestone-sphinx .glyphicon-sound-6-1:before{content:"\e192"}.ptx-runestone-container .glyphicon-sound-7-1:before,.runestone-sphinx .glyphicon-sound-7-1:before{content:"\e193"}.ptx-runestone-container .glyphicon-copyright-mark:before,.runestone-sphinx .glyphicon-copyright-mark:before{content:"\e194"}.ptx-runestone-container .glyphicon-registration-mark:before,.runestone-sphinx .glyphicon-registration-mark:before{content:"\e195"}.ptx-runestone-container .glyphicon-cloud-download:before,.runestone-sphinx .glyphicon-cloud-download:before{content:"\e197"}.ptx-runestone-container .glyphicon-cloud-upload:before,.runestone-sphinx .glyphicon-cloud-upload:before{content:"\e198"}.ptx-runestone-container .glyphicon-tree-conifer:before,.runestone-sphinx .glyphicon-tree-conifer:before{content:"\e199"}.ptx-runestone-container .glyphicon-tree-deciduous:before,.runestone-sphinx .glyphicon-tree-deciduous:before{content:"\e200"}.ptx-runestone-container .glyphicon-cd:before,.runestone-sphinx .glyphicon-cd:before{content:"\e201"}.ptx-runestone-container .glyphicon-save-file:before,.runestone-sphinx .glyphicon-save-file:before{content:"\e202"}.ptx-runestone-container .glyphicon-open-file:before,.runestone-sphinx .glyphicon-open-file:before{content:"\e203"}.ptx-runestone-container .glyphicon-level-up:before,.runestone-sphinx .glyphicon-level-up:before{content:"\e204"}.ptx-runestone-container .glyphicon-copy:before,.runestone-sphinx .glyphicon-copy:before{content:"\e205"}.ptx-runestone-container .glyphicon-paste:before,.runestone-sphinx .glyphicon-paste:before{content:"\e206"}.ptx-runestone-container .glyphicon-alert:before,.runestone-sphinx .glyphicon-alert:before{content:"\e209"}.ptx-runestone-container .glyphicon-equalizer:before,.runestone-sphinx .glyphicon-equalizer:before{content:"\e210"}.ptx-runestone-container .glyphicon-king:before,.runestone-sphinx .glyphicon-king:before{content:"\e211"}.ptx-runestone-container .glyphicon-queen:before,.runestone-sphinx .glyphicon-queen:before{content:"\e212"}.ptx-runestone-container .glyphicon-pawn:before,.runestone-sphinx .glyphicon-pawn:before{content:"\e213"}.ptx-runestone-container .glyphicon-bishop:before,.runestone-sphinx .glyphicon-bishop:before{content:"\e214"}.ptx-runestone-container .glyphicon-knight:before,.runestone-sphinx .glyphicon-knight:before{content:"\e215"}.ptx-runestone-container .glyphicon-baby-formula:before,.runestone-sphinx .glyphicon-baby-formula:before{content:"\e216"}.ptx-runestone-container .glyphicon-tent:before,.runestone-sphinx .glyphicon-tent:before{content:"\26fa"}.ptx-runestone-container .glyphicon-blackboard:before,.runestone-sphinx .glyphicon-blackboard:before{content:"\e218"}.ptx-runestone-container .glyphicon-bed:before,.runestone-sphinx .glyphicon-bed:before{content:"\e219"}.ptx-runestone-container .glyphicon-apple:before,.runestone-sphinx .glyphicon-apple:before{content:"\f8ff"}.ptx-runestone-container .glyphicon-erase:before,.runestone-sphinx .glyphicon-erase:before{content:"\e221"}.ptx-runestone-container .glyphicon-hourglass:before,.runestone-sphinx .glyphicon-hourglass:before{content:"\231b"}.ptx-runestone-container .glyphicon-lamp:before,.runestone-sphinx .glyphicon-lamp:before{content:"\e223"}.ptx-runestone-container .glyphicon-duplicate:before,.runestone-sphinx .glyphicon-duplicate:before{content:"\e224"}.ptx-runestone-container .glyphicon-piggy-bank:before,.runestone-sphinx .glyphicon-piggy-bank:before{content:"\e225"}.ptx-runestone-container .glyphicon-scissors:before,.runestone-sphinx .glyphicon-scissors:before{content:"\e226"}.ptx-runestone-container .glyphicon-bitcoin:before,.ptx-runestone-container .glyphicon-btc:before,.ptx-runestone-container .glyphicon-xbt:before,.runestone-sphinx .glyphicon-bitcoin:before,.runestone-sphinx .glyphicon-btc:before,.runestone-sphinx .glyphicon-xbt:before{content:"\e227"}.ptx-runestone-container .glyphicon-jpy:before,.ptx-runestone-container .glyphicon-yen:before,.runestone-sphinx .glyphicon-jpy:before,.runestone-sphinx .glyphicon-yen:before{content:"\00a5"}.ptx-runestone-container .glyphicon-rub:before,.ptx-runestone-container .glyphicon-ruble:before,.runestone-sphinx .glyphicon-rub:before,.runestone-sphinx .glyphicon-ruble:before{content:"\20bd"}.ptx-runestone-container .glyphicon-scale:before,.runestone-sphinx .glyphicon-scale:before{content:"\e230"}.ptx-runestone-container .glyphicon-ice-lolly:before,.runestone-sphinx .glyphicon-ice-lolly:before{content:"\e231"}.ptx-runestone-container .glyphicon-ice-lolly-tasted:before,.runestone-sphinx .glyphicon-ice-lolly-tasted:before{content:"\e232"}.ptx-runestone-container .glyphicon-education:before,.runestone-sphinx .glyphicon-education:before{content:"\e233"}.ptx-runestone-container .glyphicon-option-horizontal:before,.runestone-sphinx .glyphicon-option-horizontal:before{content:"\e234"}.ptx-runestone-container .glyphicon-option-vertical:before,.runestone-sphinx .glyphicon-option-vertical:before{content:"\e235"}.ptx-runestone-container .glyphicon-menu-hamburger:before,.runestone-sphinx .glyphicon-menu-hamburger:before{content:"\e236"}.ptx-runestone-container .glyphicon-modal-window:before,.runestone-sphinx .glyphicon-modal-window:before{content:"\e237"}.ptx-runestone-container .glyphicon-oil:before,.runestone-sphinx .glyphicon-oil:before{content:"\e238"}.ptx-runestone-container .glyphicon-grain:before,.runestone-sphinx .glyphicon-grain:before{content:"\e239"}.ptx-runestone-container .glyphicon-sunglasses:before,.runestone-sphinx .glyphicon-sunglasses:before{content:"\e240"}.ptx-runestone-container .glyphicon-text-size:before,.runestone-sphinx .glyphicon-text-size:before{content:"\e241"}.ptx-runestone-container .glyphicon-text-color:before,.runestone-sphinx .glyphicon-text-color:before{content:"\e242"}.ptx-runestone-container .glyphicon-text-background:before,.runestone-sphinx .glyphicon-text-background:before{content:"\e243"}.ptx-runestone-container .glyphicon-object-align-top:before,.runestone-sphinx .glyphicon-object-align-top:before{content:"\e244"}.ptx-runestone-container .glyphicon-object-align-bottom:before,.runestone-sphinx .glyphicon-object-align-bottom:before{content:"\e245"}.ptx-runestone-container .glyphicon-object-align-horizontal:before,.runestone-sphinx .glyphicon-object-align-horizontal:before{content:"\e246"}.ptx-runestone-container .glyphicon-object-align-left:before,.runestone-sphinx .glyphicon-object-align-left:before{content:"\e247"}.ptx-runestone-container .glyphicon-object-align-vertical:before,.runestone-sphinx .glyphicon-object-align-vertical:before{content:"\e248"}.ptx-runestone-container .glyphicon-object-align-right:before,.runestone-sphinx .glyphicon-object-align-right:before{content:"\e249"}.ptx-runestone-container .glyphicon-triangle-right:before,.runestone-sphinx .glyphicon-triangle-right:before{content:"\e250"}.ptx-runestone-container .glyphicon-triangle-left:before,.runestone-sphinx .glyphicon-triangle-left:before{content:"\e251"}.ptx-runestone-container .glyphicon-triangle-bottom:before,.runestone-sphinx .glyphicon-triangle-bottom:before{content:"\e252"}.ptx-runestone-container .glyphicon-triangle-top:before,.runestone-sphinx .glyphicon-triangle-top:before{content:"\e253"}.ptx-runestone-container .glyphicon-console:before,.runestone-sphinx .glyphicon-console:before{content:"\e254"}.ptx-runestone-container .glyphicon-superscript:before,.runestone-sphinx .glyphicon-superscript:before{content:"\e255"}.ptx-runestone-container .glyphicon-subscript:before,.runestone-sphinx .glyphicon-subscript:before{content:"\e256"}.ptx-runestone-container .glyphicon-menu-left:before,.runestone-sphinx .glyphicon-menu-left:before{content:"\e257"}.ptx-runestone-container .glyphicon-menu-right:before,.runestone-sphinx .glyphicon-menu-right:before{content:"\e258"}.ptx-runestone-container .glyphicon-menu-down:before,.runestone-sphinx .glyphicon-menu-down:before{content:"\e259"}.ptx-runestone-container .glyphicon-menu-up:before,.runestone-sphinx .glyphicon-menu-up:before{content:"\e260"}.ptx-runestone-container *,.ptx-runestone-container :after,.ptx-runestone-container :before,.runestone-sphinx *,.runestone-sphinx :after,.runestone-sphinx :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.ptx-runestone-container html,.runestone-sphinx html{-webkit-tap-highlight-color:rgba(0,0,0,0);font-size:10px}.ptx-runestone-container body,.runestone-sphinx body{background-color:#fff;color:#333;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143}.ptx-runestone-container button,.ptx-runestone-container input,.ptx-runestone-container select,.ptx-runestone-container textarea,.runestone-sphinx button,.runestone-sphinx input,.runestone-sphinx select,.runestone-sphinx textarea{font-family:inherit;font-size:inherit;line-height:inherit}.ptx-runestone-container a,.runestone-sphinx a{color:#337ab7;text-decoration:none}.ptx-runestone-container a:focus,.ptx-runestone-container a:hover,.runestone-sphinx a:focus,.runestone-sphinx a:hover{color:#23527c;text-decoration:underline}.ptx-runestone-container a:focus,.runestone-sphinx a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ptx-runestone-container figure,.runestone-sphinx figure{margin:0}.ptx-runestone-container img,.runestone-sphinx img{vertical-align:middle}.ptx-runestone-container .carousel-inner>.item>a>img,.ptx-runestone-container .carousel-inner>.item>img,.ptx-runestone-container .img-responsive,.ptx-runestone-container .thumbnail a>img,.ptx-runestone-container .thumbnail>img,.runestone-sphinx .carousel-inner>.item>a>img,.runestone-sphinx .carousel-inner>.item>img,.runestone-sphinx .img-responsive,.runestone-sphinx .thumbnail a>img,.runestone-sphinx .thumbnail>img{display:block;height:auto;max-width:100%}.ptx-runestone-container .img-rounded,.runestone-sphinx .img-rounded{border-radius:6px}.ptx-runestone-container .img-thumbnail,.runestone-sphinx .img-thumbnail{background-color:#fff;border:1px solid #ddd;border-radius:4px;display:inline-block;height:auto;line-height:1.42857143;max-width:100%;padding:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.ptx-runestone-container .img-circle,.runestone-sphinx .img-circle{border-radius:50%}.ptx-runestone-container hr,.runestone-sphinx hr{border:0;border-top:1px solid #eee;margin-bottom:20px;margin-top:20px}.ptx-runestone-container .sr-only,.runestone-sphinx .sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ptx-runestone-container .sr-only-focusable:active,.ptx-runestone-container .sr-only-focusable:focus,.runestone-sphinx .sr-only-focusable:active,.runestone-sphinx .sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.ptx-runestone-container [role=button],.runestone-sphinx [role=button]{cursor:pointer}.ptx-runestone-container .h1,.ptx-runestone-container .h2,.ptx-runestone-container .h3,.ptx-runestone-container .h4,.ptx-runestone-container .h5,.ptx-runestone-container .h6,.ptx-runestone-container h1,.ptx-runestone-container h2,.ptx-runestone-container h3,.ptx-runestone-container h4,.ptx-runestone-container h5,.ptx-runestone-container h6,.runestone-sphinx .h1,.runestone-sphinx .h2,.runestone-sphinx .h3,.runestone-sphinx .h4,.runestone-sphinx .h5,.runestone-sphinx .h6,.runestone-sphinx h1,.runestone-sphinx h2,.runestone-sphinx h3,.runestone-sphinx h4,.runestone-sphinx h5,.runestone-sphinx h6{color:inherit;font-family:inherit;font-weight:500;line-height:1.1}.ptx-runestone-container .h1 .small,.ptx-runestone-container .h1 small,.ptx-runestone-container .h2 .small,.ptx-runestone-container .h2 small,.ptx-runestone-container .h3 .small,.ptx-runestone-container .h3 small,.ptx-runestone-container .h4 .small,.ptx-runestone-container .h4 small,.ptx-runestone-container .h5 .small,.ptx-runestone-container .h5 small,.ptx-runestone-container .h6 .small,.ptx-runestone-container .h6 small,.ptx-runestone-container h1 .small,.ptx-runestone-container h1 small,.ptx-runestone-container h2 .small,.ptx-runestone-container h2 small,.ptx-runestone-container h3 .small,.ptx-runestone-container h3 small,.ptx-runestone-container h4 .small,.ptx-runestone-container h4 small,.ptx-runestone-container h5 .small,.ptx-runestone-container h5 small,.ptx-runestone-container h6 .small,.ptx-runestone-container h6 small,.runestone-sphinx .h1 .small,.runestone-sphinx .h1 small,.runestone-sphinx .h2 .small,.runestone-sphinx .h2 small,.runestone-sphinx .h3 .small,.runestone-sphinx .h3 small,.runestone-sphinx .h4 .small,.runestone-sphinx .h4 small,.runestone-sphinx .h5 .small,.runestone-sphinx .h5 small,.runestone-sphinx .h6 .small,.runestone-sphinx .h6 small,.runestone-sphinx h1 .small,.runestone-sphinx h1 small,.runestone-sphinx h2 .small,.runestone-sphinx h2 small,.runestone-sphinx h3 .small,.runestone-sphinx h3 small,.runestone-sphinx h4 .small,.runestone-sphinx h4 small,.runestone-sphinx h5 .small,.runestone-sphinx h5 small,.runestone-sphinx h6 .small,.runestone-sphinx h6 small{color:#777;font-weight:400;line-height:1}.ptx-runestone-container .h1,.ptx-runestone-container .h2,.ptx-runestone-container .h3,.ptx-runestone-container h1,.ptx-runestone-container h2,.ptx-runestone-container h3,.runestone-sphinx .h1,.runestone-sphinx .h2,.runestone-sphinx .h3,.runestone-sphinx h1,.runestone-sphinx h2,.runestone-sphinx h3{margin-bottom:10px;margin-top:20px}.ptx-runestone-container .h1 .small,.ptx-runestone-container .h1 small,.ptx-runestone-container .h2 .small,.ptx-runestone-container .h2 small,.ptx-runestone-container .h3 .small,.ptx-runestone-container .h3 small,.ptx-runestone-container h1 .small,.ptx-runestone-container h1 small,.ptx-runestone-container h2 .small,.ptx-runestone-container h2 small,.ptx-runestone-container h3 .small,.ptx-runestone-container h3 small,.runestone-sphinx .h1 .small,.runestone-sphinx .h1 small,.runestone-sphinx .h2 .small,.runestone-sphinx .h2 small,.runestone-sphinx .h3 .small,.runestone-sphinx .h3 small,.runestone-sphinx h1 .small,.runestone-sphinx h1 small,.runestone-sphinx h2 .small,.runestone-sphinx h2 small,.runestone-sphinx h3 .small,.runestone-sphinx h3 small{font-size:65%}.ptx-runestone-container .h4,.ptx-runestone-container .h5,.ptx-runestone-container .h6,.ptx-runestone-container h4,.ptx-runestone-container h5,.ptx-runestone-container h6,.runestone-sphinx .h4,.runestone-sphinx .h5,.runestone-sphinx .h6,.runestone-sphinx h4,.runestone-sphinx h5,.runestone-sphinx h6{margin-bottom:10px;margin-top:10px}.ptx-runestone-container .h4 .small,.ptx-runestone-container .h4 small,.ptx-runestone-container .h5 .small,.ptx-runestone-container .h5 small,.ptx-runestone-container .h6 .small,.ptx-runestone-container .h6 small,.ptx-runestone-container h4 .small,.ptx-runestone-container h4 small,.ptx-runestone-container h5 .small,.ptx-runestone-container h5 small,.ptx-runestone-container h6 .small,.ptx-runestone-container h6 small,.runestone-sphinx .h4 .small,.runestone-sphinx .h4 small,.runestone-sphinx .h5 .small,.runestone-sphinx .h5 small,.runestone-sphinx .h6 .small,.runestone-sphinx .h6 small,.runestone-sphinx h4 .small,.runestone-sphinx h4 small,.runestone-sphinx h5 .small,.runestone-sphinx h5 small,.runestone-sphinx h6 .small,.runestone-sphinx h6 small{font-size:75%}.ptx-runestone-container .h1,.ptx-runestone-container h1,.runestone-sphinx .h1,.runestone-sphinx h1{font-size:36px}.ptx-runestone-container .h2,.ptx-runestone-container h2,.runestone-sphinx .h2,.runestone-sphinx h2{font-size:30px}.ptx-runestone-container .h3,.ptx-runestone-container h3,.runestone-sphinx .h3,.runestone-sphinx h3{font-size:24px}.ptx-runestone-container .h4,.ptx-runestone-container h4,.runestone-sphinx .h4,.runestone-sphinx h4{font-size:18px}.ptx-runestone-container .h5,.ptx-runestone-container h5,.runestone-sphinx .h5,.runestone-sphinx h5{font-size:14px}.ptx-runestone-container .h6,.ptx-runestone-container h6,.runestone-sphinx .h6,.runestone-sphinx h6{font-size:12px}.ptx-runestone-container p,.runestone-sphinx p{margin:0 0 10px}.ptx-runestone-container .lead,.runestone-sphinx .lead{font-size:16px;font-weight:300;line-height:1.4;margin-bottom:20px}@media (min-width:768px){.ptx-runestone-container .lead,.runestone-sphinx .lead{font-size:21px}}.ptx-runestone-container .small,.ptx-runestone-container small,.runestone-sphinx .small,.runestone-sphinx small{font-size:85%}.ptx-runestone-container .mark,.ptx-runestone-container mark,.runestone-sphinx .mark,.runestone-sphinx mark{background-color:#fcf8e3;padding:.2em}.ptx-runestone-container .text-left,.runestone-sphinx .text-left{text-align:left}.ptx-runestone-container .text-right,.runestone-sphinx .text-right{text-align:right}.ptx-runestone-container .text-center,.runestone-sphinx .text-center{text-align:center}.ptx-runestone-container .text-justify,.runestone-sphinx .text-justify{text-align:justify}.ptx-runestone-container .text-nowrap,.runestone-sphinx .text-nowrap{white-space:nowrap}.ptx-runestone-container .text-lowercase,.runestone-sphinx .text-lowercase{text-transform:lowercase}.ptx-runestone-container .text-uppercase,.runestone-sphinx .text-uppercase{text-transform:uppercase}.ptx-runestone-container .text-capitalize,.runestone-sphinx .text-capitalize{text-transform:capitalize}.ptx-runestone-container .text-muted,.runestone-sphinx .text-muted{color:#777}.ptx-runestone-container .text-primary,.runestone-sphinx .text-primary{color:#337ab7}.ptx-runestone-container a.text-primary:focus,.ptx-runestone-container a.text-primary:hover,.runestone-sphinx a.text-primary:focus,.runestone-sphinx a.text-primary:hover{color:#286090}.ptx-runestone-container .text-success,.runestone-sphinx .text-success{color:#3c763d}.ptx-runestone-container a.text-success:focus,.ptx-runestone-container a.text-success:hover,.runestone-sphinx a.text-success:focus,.runestone-sphinx a.text-success:hover{color:#2b542c}.ptx-runestone-container .text-info,.runestone-sphinx .text-info{color:#31708f}.ptx-runestone-container a.text-info:focus,.ptx-runestone-container a.text-info:hover,.runestone-sphinx a.text-info:focus,.runestone-sphinx a.text-info:hover{color:#245269}.ptx-runestone-container .text-warning,.runestone-sphinx .text-warning{color:#8a6d3b}.ptx-runestone-container a.text-warning:focus,.ptx-runestone-container a.text-warning:hover,.runestone-sphinx a.text-warning:focus,.runestone-sphinx a.text-warning:hover{color:#66512c}.ptx-runestone-container .text-danger,.runestone-sphinx .text-danger{color:#a94442}.ptx-runestone-container a.text-danger:focus,.ptx-runestone-container a.text-danger:hover,.runestone-sphinx a.text-danger:focus,.runestone-sphinx a.text-danger:hover{color:#843534}.ptx-runestone-container .bg-primary,.runestone-sphinx .bg-primary{background-color:#337ab7;color:#fff}.ptx-runestone-container a.bg-primary:focus,.ptx-runestone-container a.bg-primary:hover,.runestone-sphinx a.bg-primary:focus,.runestone-sphinx a.bg-primary:hover{background-color:#286090}.ptx-runestone-container .bg-success,.runestone-sphinx .bg-success{background-color:#dff0d8}.ptx-runestone-container a.bg-success:focus,.ptx-runestone-container a.bg-success:hover,.runestone-sphinx a.bg-success:focus,.runestone-sphinx a.bg-success:hover{background-color:#c1e2b3}.ptx-runestone-container .bg-info,.runestone-sphinx .bg-info{background-color:#d9edf7}.ptx-runestone-container a.bg-info:focus,.ptx-runestone-container a.bg-info:hover,.runestone-sphinx a.bg-info:focus,.runestone-sphinx a.bg-info:hover{background-color:#afd9ee}.ptx-runestone-container .bg-warning,.runestone-sphinx .bg-warning{background-color:#fcf8e3}.ptx-runestone-container a.bg-warning:focus,.ptx-runestone-container a.bg-warning:hover,.runestone-sphinx a.bg-warning:focus,.runestone-sphinx a.bg-warning:hover{background-color:#f7ecb5}.ptx-runestone-container .bg-danger,.runestone-sphinx .bg-danger{background-color:#f2dede}.ptx-runestone-container a.bg-danger:focus,.ptx-runestone-container a.bg-danger:hover,.runestone-sphinx a.bg-danger:focus,.runestone-sphinx a.bg-danger:hover{background-color:#e4b9b9}.ptx-runestone-container .page-header,.runestone-sphinx .page-header{border-bottom:1px solid #eee;margin:40px 0 20px;padding-bottom:9px}.ptx-runestone-container ol,.ptx-runestone-container ul,.runestone-sphinx ol,.runestone-sphinx ul{margin-bottom:10px;margin-top:0}.ptx-runestone-container ol ol,.ptx-runestone-container ol ul,.ptx-runestone-container ul ol,.ptx-runestone-container ul ul,.runestone-sphinx ol ol,.runestone-sphinx ol ul,.runestone-sphinx ul ol,.runestone-sphinx ul ul{margin-bottom:0}.ptx-runestone-container .list-unstyled,.runestone-sphinx .list-unstyled{list-style:none;padding-left:0}.ptx-runestone-container .list-inline,.runestone-sphinx .list-inline{list-style:none;margin-left:-5px;padding-left:0}.ptx-runestone-container .list-inline>li,.runestone-sphinx .list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}.ptx-runestone-container dl,.runestone-sphinx dl{margin-bottom:20px;margin-top:0}.ptx-runestone-container dd,.ptx-runestone-container dt,.runestone-sphinx dd,.runestone-sphinx dt{line-height:1.42857143}.ptx-runestone-container dt,.runestone-sphinx dt{font-weight:700}.ptx-runestone-container dd,.runestone-sphinx dd{margin-left:0}@media (min-width:768px){.ptx-runestone-container .dl-horizontal dt,.runestone-sphinx .dl-horizontal dt{clear:left;float:left;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap;width:160px}.ptx-runestone-container .dl-horizontal dd,.runestone-sphinx .dl-horizontal dd{margin-left:180px}}.ptx-runestone-container abbr[data-original-title],.ptx-runestone-container abbr[title],.runestone-sphinx abbr[data-original-title],.runestone-sphinx abbr[title]{cursor:help}.ptx-runestone-container .initialism,.runestone-sphinx .initialism{font-size:90%;text-transform:uppercase}.ptx-runestone-container blockquote,.runestone-sphinx blockquote{border-left:5px solid #eee;font-size:17.5px;margin:0 0 20px;padding:10px 20px}.ptx-runestone-container blockquote ol:last-child,.ptx-runestone-container blockquote p:last-child,.ptx-runestone-container blockquote ul:last-child,.runestone-sphinx blockquote ol:last-child,.runestone-sphinx blockquote p:last-child,.runestone-sphinx blockquote ul:last-child{margin-bottom:0}.ptx-runestone-container blockquote .small,.ptx-runestone-container blockquote footer,.ptx-runestone-container blockquote small,.runestone-sphinx blockquote .small,.runestone-sphinx blockquote footer,.runestone-sphinx blockquote small{color:#777;display:block;font-size:80%;line-height:1.42857143}.ptx-runestone-container blockquote .small:before,.ptx-runestone-container blockquote footer:before,.ptx-runestone-container blockquote small:before,.runestone-sphinx blockquote .small:before,.runestone-sphinx blockquote footer:before,.runestone-sphinx blockquote small:before{content:"\2014 \00A0"}.ptx-runestone-container .blockquote-reverse,.ptx-runestone-container blockquote.pull-right,.runestone-sphinx .blockquote-reverse,.runestone-sphinx blockquote.pull-right{border-left:0;border-right:5px solid #eee;padding-left:0;padding-right:15px;text-align:right}.ptx-runestone-container .blockquote-reverse .small:before,.ptx-runestone-container .blockquote-reverse footer:before,.ptx-runestone-container .blockquote-reverse small:before,.ptx-runestone-container blockquote.pull-right .small:before,.ptx-runestone-container blockquote.pull-right footer:before,.ptx-runestone-container blockquote.pull-right small:before,.runestone-sphinx .blockquote-reverse .small:before,.runestone-sphinx .blockquote-reverse footer:before,.runestone-sphinx .blockquote-reverse small:before,.runestone-sphinx blockquote.pull-right .small:before,.runestone-sphinx blockquote.pull-right footer:before,.runestone-sphinx blockquote.pull-right small:before{content:""}.ptx-runestone-container .blockquote-reverse .small:after,.ptx-runestone-container .blockquote-reverse footer:after,.ptx-runestone-container .blockquote-reverse small:after,.ptx-runestone-container blockquote.pull-right .small:after,.ptx-runestone-container blockquote.pull-right footer:after,.ptx-runestone-container blockquote.pull-right small:after,.runestone-sphinx .blockquote-reverse .small:after,.runestone-sphinx .blockquote-reverse footer:after,.runestone-sphinx .blockquote-reverse small:after,.runestone-sphinx blockquote.pull-right .small:after,.runestone-sphinx blockquote.pull-right footer:after,.runestone-sphinx blockquote.pull-right small:after{content:"\00A0 \2014"}.ptx-runestone-container address,.runestone-sphinx address{font-style:normal;line-height:1.42857143;margin-bottom:20px}.ptx-runestone-container code,.ptx-runestone-container kbd,.ptx-runestone-container pre,.ptx-runestone-container samp,.runestone-sphinx code,.runestone-sphinx kbd,.runestone-sphinx pre,.runestone-sphinx samp{font-family:Menlo,Monaco,Consolas,Courier New,monospace}.ptx-runestone-container code,.runestone-sphinx code{background-color:#f9f2f4;border-radius:4px;color:#c7254e;font-size:90%;padding:2px 4px}.ptx-runestone-container kbd,.runestone-sphinx kbd{background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);color:#fff;font-size:90%;padding:2px 4px}.ptx-runestone-container kbd kbd,.runestone-sphinx kbd kbd{-webkit-box-shadow:none;box-shadow:none;font-size:100%;font-weight:700;padding:0}.ptx-runestone-container pre,.runestone-sphinx pre{word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px;color:#333;display:block;font-size:13px;line-height:1.42857143;margin:0 0 10px;padding:9.5px;word-break:break-all}.ptx-runestone-container pre code,.runestone-sphinx pre code{background-color:transparent;border-radius:0;color:inherit;font-size:inherit;padding:0;white-space:pre-wrap}.ptx-runestone-container .pre-scrollable,.runestone-sphinx .pre-scrollable{max-height:340px;overflow-y:scroll}.ptx-runestone-container .container,.runestone-sphinx .container{margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px}@media (min-width:768px){.ptx-runestone-container .container,.runestone-sphinx .container{width:750px}}@media (min-width:992px){.ptx-runestone-container .container,.runestone-sphinx .container{width:970px}}@media (min-width:1200px){.ptx-runestone-container .container,.runestone-sphinx .container{width:1170px}}.ptx-runestone-container .container-fluid,.runestone-sphinx .container-fluid{margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px}.ptx-runestone-container .row,.runestone-sphinx .row{margin-left:-15px;margin-right:-15px}.ptx-runestone-container .row-no-gutters,.runestone-sphinx .row-no-gutters{margin-left:0;margin-right:0}.ptx-runestone-container .row-no-gutters [class*=col-],.runestone-sphinx .row-no-gutters [class*=col-]{padding-left:0;padding-right:0}.ptx-runestone-container .col-lg-1,.ptx-runestone-container .col-lg-10,.ptx-runestone-container .col-lg-11,.ptx-runestone-container .col-lg-12,.ptx-runestone-container .col-lg-2,.ptx-runestone-container .col-lg-3,.ptx-runestone-container .col-lg-4,.ptx-runestone-container .col-lg-5,.ptx-runestone-container .col-lg-6,.ptx-runestone-container .col-lg-7,.ptx-runestone-container .col-lg-8,.ptx-runestone-container .col-lg-9,.ptx-runestone-container .col-md-1,.ptx-runestone-container .col-md-10,.ptx-runestone-container .col-md-11,.ptx-runestone-container .col-md-12,.ptx-runestone-container .col-md-2,.ptx-runestone-container .col-md-3,.ptx-runestone-container .col-md-4,.ptx-runestone-container .col-md-5,.ptx-runestone-container .col-md-6,.ptx-runestone-container .col-md-7,.ptx-runestone-container .col-md-8,.ptx-runestone-container .col-md-9,.ptx-runestone-container .col-sm-1,.ptx-runestone-container .col-sm-10,.ptx-runestone-container .col-sm-11,.ptx-runestone-container .col-sm-12,.ptx-runestone-container .col-sm-2,.ptx-runestone-container .col-sm-3,.ptx-runestone-container .col-sm-4,.ptx-runestone-container .col-sm-5,.ptx-runestone-container .col-sm-6,.ptx-runestone-container .col-sm-7,.ptx-runestone-container .col-sm-8,.ptx-runestone-container .col-sm-9,.ptx-runestone-container .col-xs-1,.ptx-runestone-container .col-xs-10,.ptx-runestone-container .col-xs-11,.ptx-runestone-container .col-xs-12,.ptx-runestone-container .col-xs-2,.ptx-runestone-container .col-xs-3,.ptx-runestone-container .col-xs-4,.ptx-runestone-container .col-xs-5,.ptx-runestone-container .col-xs-6,.ptx-runestone-container .col-xs-7,.ptx-runestone-container .col-xs-8,.ptx-runestone-container .col-xs-9,.runestone-sphinx .col-lg-1,.runestone-sphinx .col-lg-10,.runestone-sphinx .col-lg-11,.runestone-sphinx .col-lg-12,.runestone-sphinx .col-lg-2,.runestone-sphinx .col-lg-3,.runestone-sphinx .col-lg-4,.runestone-sphinx .col-lg-5,.runestone-sphinx .col-lg-6,.runestone-sphinx .col-lg-7,.runestone-sphinx .col-lg-8,.runestone-sphinx .col-lg-9,.runestone-sphinx .col-md-1,.runestone-sphinx .col-md-10,.runestone-sphinx .col-md-11,.runestone-sphinx .col-md-12,.runestone-sphinx .col-md-2,.runestone-sphinx .col-md-3,.runestone-sphinx .col-md-4,.runestone-sphinx .col-md-5,.runestone-sphinx .col-md-6,.runestone-sphinx .col-md-7,.runestone-sphinx .col-md-8,.runestone-sphinx .col-md-9,.runestone-sphinx .col-sm-1,.runestone-sphinx .col-sm-10,.runestone-sphinx .col-sm-11,.runestone-sphinx .col-sm-12,.runestone-sphinx .col-sm-2,.runestone-sphinx .col-sm-3,.runestone-sphinx .col-sm-4,.runestone-sphinx .col-sm-5,.runestone-sphinx .col-sm-6,.runestone-sphinx .col-sm-7,.runestone-sphinx .col-sm-8,.runestone-sphinx .col-sm-9,.runestone-sphinx .col-xs-1,.runestone-sphinx .col-xs-10,.runestone-sphinx .col-xs-11,.runestone-sphinx .col-xs-12,.runestone-sphinx .col-xs-2,.runestone-sphinx .col-xs-3,.runestone-sphinx .col-xs-4,.runestone-sphinx .col-xs-5,.runestone-sphinx .col-xs-6,.runestone-sphinx .col-xs-7,.runestone-sphinx .col-xs-8,.runestone-sphinx .col-xs-9{min-height:1px;padding-left:15px;padding-right:15px;position:relative}.ptx-runestone-container .col-xs-1,.ptx-runestone-container .col-xs-10,.ptx-runestone-container .col-xs-11,.ptx-runestone-container .col-xs-12,.ptx-runestone-container .col-xs-2,.ptx-runestone-container .col-xs-3,.ptx-runestone-container .col-xs-4,.ptx-runestone-container .col-xs-5,.ptx-runestone-container .col-xs-6,.ptx-runestone-container .col-xs-7,.ptx-runestone-container .col-xs-8,.ptx-runestone-container .col-xs-9,.runestone-sphinx .col-xs-1,.runestone-sphinx .col-xs-10,.runestone-sphinx .col-xs-11,.runestone-sphinx .col-xs-12,.runestone-sphinx .col-xs-2,.runestone-sphinx .col-xs-3,.runestone-sphinx .col-xs-4,.runestone-sphinx .col-xs-5,.runestone-sphinx .col-xs-6,.runestone-sphinx .col-xs-7,.runestone-sphinx .col-xs-8,.runestone-sphinx .col-xs-9{float:left}.ptx-runestone-container .col-xs-12,.runestone-sphinx .col-xs-12{width:100%}.ptx-runestone-container .col-xs-11,.runestone-sphinx .col-xs-11{width:91.66666667%}.ptx-runestone-container .col-xs-10,.runestone-sphinx .col-xs-10{width:83.33333333%}.ptx-runestone-container .col-xs-9,.runestone-sphinx .col-xs-9{width:75%}.ptx-runestone-container .col-xs-8,.runestone-sphinx .col-xs-8{width:66.66666667%}.ptx-runestone-container .col-xs-7,.runestone-sphinx .col-xs-7{width:58.33333333%}.ptx-runestone-container .col-xs-6,.runestone-sphinx .col-xs-6{width:50%}.ptx-runestone-container .col-xs-5,.runestone-sphinx .col-xs-5{width:41.66666667%}.ptx-runestone-container .col-xs-4,.runestone-sphinx .col-xs-4{width:33.33333333%}.ptx-runestone-container .col-xs-3,.runestone-sphinx .col-xs-3{width:25%}.ptx-runestone-container .col-xs-2,.runestone-sphinx .col-xs-2{width:16.66666667%}.ptx-runestone-container .col-xs-1,.runestone-sphinx .col-xs-1{width:8.33333333%}.ptx-runestone-container .col-xs-pull-12,.runestone-sphinx .col-xs-pull-12{right:100%}.ptx-runestone-container .col-xs-pull-11,.runestone-sphinx .col-xs-pull-11{right:91.66666667%}.ptx-runestone-container .col-xs-pull-10,.runestone-sphinx .col-xs-pull-10{right:83.33333333%}.ptx-runestone-container .col-xs-pull-9,.runestone-sphinx .col-xs-pull-9{right:75%}.ptx-runestone-container .col-xs-pull-8,.runestone-sphinx .col-xs-pull-8{right:66.66666667%}.ptx-runestone-container .col-xs-pull-7,.runestone-sphinx .col-xs-pull-7{right:58.33333333%}.ptx-runestone-container .col-xs-pull-6,.runestone-sphinx .col-xs-pull-6{right:50%}.ptx-runestone-container .col-xs-pull-5,.runestone-sphinx .col-xs-pull-5{right:41.66666667%}.ptx-runestone-container .col-xs-pull-4,.runestone-sphinx .col-xs-pull-4{right:33.33333333%}.ptx-runestone-container .col-xs-pull-3,.runestone-sphinx .col-xs-pull-3{right:25%}.ptx-runestone-container .col-xs-pull-2,.runestone-sphinx .col-xs-pull-2{right:16.66666667%}.ptx-runestone-container .col-xs-pull-1,.runestone-sphinx .col-xs-pull-1{right:8.33333333%}.ptx-runestone-container .col-xs-pull-0,.runestone-sphinx .col-xs-pull-0{right:auto}.ptx-runestone-container .col-xs-push-12,.runestone-sphinx .col-xs-push-12{left:100%}.ptx-runestone-container .col-xs-push-11,.runestone-sphinx .col-xs-push-11{left:91.66666667%}.ptx-runestone-container .col-xs-push-10,.runestone-sphinx .col-xs-push-10{left:83.33333333%}.ptx-runestone-container .col-xs-push-9,.runestone-sphinx .col-xs-push-9{left:75%}.ptx-runestone-container .col-xs-push-8,.runestone-sphinx .col-xs-push-8{left:66.66666667%}.ptx-runestone-container .col-xs-push-7,.runestone-sphinx .col-xs-push-7{left:58.33333333%}.ptx-runestone-container .col-xs-push-6,.runestone-sphinx .col-xs-push-6{left:50%}.ptx-runestone-container .col-xs-push-5,.runestone-sphinx .col-xs-push-5{left:41.66666667%}.ptx-runestone-container .col-xs-push-4,.runestone-sphinx .col-xs-push-4{left:33.33333333%}.ptx-runestone-container .col-xs-push-3,.runestone-sphinx .col-xs-push-3{left:25%}.ptx-runestone-container .col-xs-push-2,.runestone-sphinx .col-xs-push-2{left:16.66666667%}.ptx-runestone-container .col-xs-push-1,.runestone-sphinx .col-xs-push-1{left:8.33333333%}.ptx-runestone-container .col-xs-push-0,.runestone-sphinx .col-xs-push-0{left:auto}.ptx-runestone-container .col-xs-offset-12,.runestone-sphinx .col-xs-offset-12{margin-left:100%}.ptx-runestone-container .col-xs-offset-11,.runestone-sphinx .col-xs-offset-11{margin-left:91.66666667%}.ptx-runestone-container .col-xs-offset-10,.runestone-sphinx .col-xs-offset-10{margin-left:83.33333333%}.ptx-runestone-container .col-xs-offset-9,.runestone-sphinx .col-xs-offset-9{margin-left:75%}.ptx-runestone-container .col-xs-offset-8,.runestone-sphinx .col-xs-offset-8{margin-left:66.66666667%}.ptx-runestone-container .col-xs-offset-7,.runestone-sphinx .col-xs-offset-7{margin-left:58.33333333%}.ptx-runestone-container .col-xs-offset-6,.runestone-sphinx .col-xs-offset-6{margin-left:50%}.ptx-runestone-container .col-xs-offset-5,.runestone-sphinx .col-xs-offset-5{margin-left:41.66666667%}.ptx-runestone-container .col-xs-offset-4,.runestone-sphinx .col-xs-offset-4{margin-left:33.33333333%}.ptx-runestone-container .col-xs-offset-3,.runestone-sphinx .col-xs-offset-3{margin-left:25%}.ptx-runestone-container .col-xs-offset-2,.runestone-sphinx .col-xs-offset-2{margin-left:16.66666667%}.ptx-runestone-container .col-xs-offset-1,.runestone-sphinx .col-xs-offset-1{margin-left:8.33333333%}.ptx-runestone-container .col-xs-offset-0,.runestone-sphinx .col-xs-offset-0{margin-left:0}@media (min-width:768px){.ptx-runestone-container .col-sm-1,.ptx-runestone-container .col-sm-10,.ptx-runestone-container .col-sm-11,.ptx-runestone-container .col-sm-12,.ptx-runestone-container .col-sm-2,.ptx-runestone-container .col-sm-3,.ptx-runestone-container .col-sm-4,.ptx-runestone-container .col-sm-5,.ptx-runestone-container .col-sm-6,.ptx-runestone-container .col-sm-7,.ptx-runestone-container .col-sm-8,.ptx-runestone-container .col-sm-9,.runestone-sphinx .col-sm-1,.runestone-sphinx .col-sm-10,.runestone-sphinx .col-sm-11,.runestone-sphinx .col-sm-12,.runestone-sphinx .col-sm-2,.runestone-sphinx .col-sm-3,.runestone-sphinx .col-sm-4,.runestone-sphinx .col-sm-5,.runestone-sphinx .col-sm-6,.runestone-sphinx .col-sm-7,.runestone-sphinx .col-sm-8,.runestone-sphinx .col-sm-9{float:left}.ptx-runestone-container .col-sm-12,.runestone-sphinx .col-sm-12{width:100%}.ptx-runestone-container .col-sm-11,.runestone-sphinx .col-sm-11{width:91.66666667%}.ptx-runestone-container .col-sm-10,.runestone-sphinx .col-sm-10{width:83.33333333%}.ptx-runestone-container .col-sm-9,.runestone-sphinx .col-sm-9{width:75%}.ptx-runestone-container .col-sm-8,.runestone-sphinx .col-sm-8{width:66.66666667%}.ptx-runestone-container .col-sm-7,.runestone-sphinx .col-sm-7{width:58.33333333%}.ptx-runestone-container .col-sm-6,.runestone-sphinx .col-sm-6{width:50%}.ptx-runestone-container .col-sm-5,.runestone-sphinx .col-sm-5{width:41.66666667%}.ptx-runestone-container .col-sm-4,.runestone-sphinx .col-sm-4{width:33.33333333%}.ptx-runestone-container .col-sm-3,.runestone-sphinx .col-sm-3{width:25%}.ptx-runestone-container .col-sm-2,.runestone-sphinx .col-sm-2{width:16.66666667%}.ptx-runestone-container .col-sm-1,.runestone-sphinx .col-sm-1{width:8.33333333%}.ptx-runestone-container .col-sm-pull-12,.runestone-sphinx .col-sm-pull-12{right:100%}.ptx-runestone-container .col-sm-pull-11,.runestone-sphinx .col-sm-pull-11{right:91.66666667%}.ptx-runestone-container .col-sm-pull-10,.runestone-sphinx .col-sm-pull-10{right:83.33333333%}.ptx-runestone-container .col-sm-pull-9,.runestone-sphinx .col-sm-pull-9{right:75%}.ptx-runestone-container .col-sm-pull-8,.runestone-sphinx .col-sm-pull-8{right:66.66666667%}.ptx-runestone-container .col-sm-pull-7,.runestone-sphinx .col-sm-pull-7{right:58.33333333%}.ptx-runestone-container .col-sm-pull-6,.runestone-sphinx .col-sm-pull-6{right:50%}.ptx-runestone-container .col-sm-pull-5,.runestone-sphinx .col-sm-pull-5{right:41.66666667%}.ptx-runestone-container .col-sm-pull-4,.runestone-sphinx .col-sm-pull-4{right:33.33333333%}.ptx-runestone-container .col-sm-pull-3,.runestone-sphinx .col-sm-pull-3{right:25%}.ptx-runestone-container .col-sm-pull-2,.runestone-sphinx .col-sm-pull-2{right:16.66666667%}.ptx-runestone-container .col-sm-pull-1,.runestone-sphinx .col-sm-pull-1{right:8.33333333%}.ptx-runestone-container .col-sm-pull-0,.runestone-sphinx .col-sm-pull-0{right:auto}.ptx-runestone-container .col-sm-push-12,.runestone-sphinx .col-sm-push-12{left:100%}.ptx-runestone-container .col-sm-push-11,.runestone-sphinx .col-sm-push-11{left:91.66666667%}.ptx-runestone-container .col-sm-push-10,.runestone-sphinx .col-sm-push-10{left:83.33333333%}.ptx-runestone-container .col-sm-push-9,.runestone-sphinx .col-sm-push-9{left:75%}.ptx-runestone-container .col-sm-push-8,.runestone-sphinx .col-sm-push-8{left:66.66666667%}.ptx-runestone-container .col-sm-push-7,.runestone-sphinx .col-sm-push-7{left:58.33333333%}.ptx-runestone-container .col-sm-push-6,.runestone-sphinx .col-sm-push-6{left:50%}.ptx-runestone-container .col-sm-push-5,.runestone-sphinx .col-sm-push-5{left:41.66666667%}.ptx-runestone-container .col-sm-push-4,.runestone-sphinx .col-sm-push-4{left:33.33333333%}.ptx-runestone-container .col-sm-push-3,.runestone-sphinx .col-sm-push-3{left:25%}.ptx-runestone-container .col-sm-push-2,.runestone-sphinx .col-sm-push-2{left:16.66666667%}.ptx-runestone-container .col-sm-push-1,.runestone-sphinx .col-sm-push-1{left:8.33333333%}.ptx-runestone-container .col-sm-push-0,.runestone-sphinx .col-sm-push-0{left:auto}.ptx-runestone-container .col-sm-offset-12,.runestone-sphinx .col-sm-offset-12{margin-left:100%}.ptx-runestone-container .col-sm-offset-11,.runestone-sphinx .col-sm-offset-11{margin-left:91.66666667%}.ptx-runestone-container .col-sm-offset-10,.runestone-sphinx .col-sm-offset-10{margin-left:83.33333333%}.ptx-runestone-container .col-sm-offset-9,.runestone-sphinx .col-sm-offset-9{margin-left:75%}.ptx-runestone-container .col-sm-offset-8,.runestone-sphinx .col-sm-offset-8{margin-left:66.66666667%}.ptx-runestone-container .col-sm-offset-7,.runestone-sphinx .col-sm-offset-7{margin-left:58.33333333%}.ptx-runestone-container .col-sm-offset-6,.runestone-sphinx .col-sm-offset-6{margin-left:50%}.ptx-runestone-container .col-sm-offset-5,.runestone-sphinx .col-sm-offset-5{margin-left:41.66666667%}.ptx-runestone-container .col-sm-offset-4,.runestone-sphinx .col-sm-offset-4{margin-left:33.33333333%}.ptx-runestone-container .col-sm-offset-3,.runestone-sphinx .col-sm-offset-3{margin-left:25%}.ptx-runestone-container .col-sm-offset-2,.runestone-sphinx .col-sm-offset-2{margin-left:16.66666667%}.ptx-runestone-container .col-sm-offset-1,.runestone-sphinx .col-sm-offset-1{margin-left:8.33333333%}.ptx-runestone-container .col-sm-offset-0,.runestone-sphinx .col-sm-offset-0{margin-left:0}}@media (min-width:992px){.ptx-runestone-container .col-md-1,.ptx-runestone-container .col-md-10,.ptx-runestone-container .col-md-11,.ptx-runestone-container .col-md-12,.ptx-runestone-container .col-md-2,.ptx-runestone-container .col-md-3,.ptx-runestone-container .col-md-4,.ptx-runestone-container .col-md-5,.ptx-runestone-container .col-md-6,.ptx-runestone-container .col-md-7,.ptx-runestone-container .col-md-8,.ptx-runestone-container .col-md-9,.runestone-sphinx .col-md-1,.runestone-sphinx .col-md-10,.runestone-sphinx .col-md-11,.runestone-sphinx .col-md-12,.runestone-sphinx .col-md-2,.runestone-sphinx .col-md-3,.runestone-sphinx .col-md-4,.runestone-sphinx .col-md-5,.runestone-sphinx .col-md-6,.runestone-sphinx .col-md-7,.runestone-sphinx .col-md-8,.runestone-sphinx .col-md-9{float:left}.ptx-runestone-container .col-md-12,.runestone-sphinx .col-md-12{width:100%}.ptx-runestone-container .col-md-11,.runestone-sphinx .col-md-11{width:91.66666667%}.ptx-runestone-container .col-md-10,.runestone-sphinx .col-md-10{width:83.33333333%}.ptx-runestone-container .col-md-9,.runestone-sphinx .col-md-9{width:75%}.ptx-runestone-container .col-md-8,.runestone-sphinx .col-md-8{width:66.66666667%}.ptx-runestone-container .col-md-7,.runestone-sphinx .col-md-7{width:58.33333333%}.ptx-runestone-container .col-md-6,.runestone-sphinx .col-md-6{width:50%}.ptx-runestone-container .col-md-5,.runestone-sphinx .col-md-5{width:41.66666667%}.ptx-runestone-container .col-md-4,.runestone-sphinx .col-md-4{width:33.33333333%}.ptx-runestone-container .col-md-3,.runestone-sphinx .col-md-3{width:25%}.ptx-runestone-container .col-md-2,.runestone-sphinx .col-md-2{width:16.66666667%}.ptx-runestone-container .col-md-1,.runestone-sphinx .col-md-1{width:8.33333333%}.ptx-runestone-container .col-md-pull-12,.runestone-sphinx .col-md-pull-12{right:100%}.ptx-runestone-container .col-md-pull-11,.runestone-sphinx .col-md-pull-11{right:91.66666667%}.ptx-runestone-container .col-md-pull-10,.runestone-sphinx .col-md-pull-10{right:83.33333333%}.ptx-runestone-container .col-md-pull-9,.runestone-sphinx .col-md-pull-9{right:75%}.ptx-runestone-container .col-md-pull-8,.runestone-sphinx .col-md-pull-8{right:66.66666667%}.ptx-runestone-container .col-md-pull-7,.runestone-sphinx .col-md-pull-7{right:58.33333333%}.ptx-runestone-container .col-md-pull-6,.runestone-sphinx .col-md-pull-6{right:50%}.ptx-runestone-container .col-md-pull-5,.runestone-sphinx .col-md-pull-5{right:41.66666667%}.ptx-runestone-container .col-md-pull-4,.runestone-sphinx .col-md-pull-4{right:33.33333333%}.ptx-runestone-container .col-md-pull-3,.runestone-sphinx .col-md-pull-3{right:25%}.ptx-runestone-container .col-md-pull-2,.runestone-sphinx .col-md-pull-2{right:16.66666667%}.ptx-runestone-container .col-md-pull-1,.runestone-sphinx .col-md-pull-1{right:8.33333333%}.ptx-runestone-container .col-md-pull-0,.runestone-sphinx .col-md-pull-0{right:auto}.ptx-runestone-container .col-md-push-12,.runestone-sphinx .col-md-push-12{left:100%}.ptx-runestone-container .col-md-push-11,.runestone-sphinx .col-md-push-11{left:91.66666667%}.ptx-runestone-container .col-md-push-10,.runestone-sphinx .col-md-push-10{left:83.33333333%}.ptx-runestone-container .col-md-push-9,.runestone-sphinx .col-md-push-9{left:75%}.ptx-runestone-container .col-md-push-8,.runestone-sphinx .col-md-push-8{left:66.66666667%}.ptx-runestone-container .col-md-push-7,.runestone-sphinx .col-md-push-7{left:58.33333333%}.ptx-runestone-container .col-md-push-6,.runestone-sphinx .col-md-push-6{left:50%}.ptx-runestone-container .col-md-push-5,.runestone-sphinx .col-md-push-5{left:41.66666667%}.ptx-runestone-container .col-md-push-4,.runestone-sphinx .col-md-push-4{left:33.33333333%}.ptx-runestone-container .col-md-push-3,.runestone-sphinx .col-md-push-3{left:25%}.ptx-runestone-container .col-md-push-2,.runestone-sphinx .col-md-push-2{left:16.66666667%}.ptx-runestone-container .col-md-push-1,.runestone-sphinx .col-md-push-1{left:8.33333333%}.ptx-runestone-container .col-md-push-0,.runestone-sphinx .col-md-push-0{left:auto}.ptx-runestone-container .col-md-offset-12,.runestone-sphinx .col-md-offset-12{margin-left:100%}.ptx-runestone-container .col-md-offset-11,.runestone-sphinx .col-md-offset-11{margin-left:91.66666667%}.ptx-runestone-container .col-md-offset-10,.runestone-sphinx .col-md-offset-10{margin-left:83.33333333%}.ptx-runestone-container .col-md-offset-9,.runestone-sphinx .col-md-offset-9{margin-left:75%}.ptx-runestone-container .col-md-offset-8,.runestone-sphinx .col-md-offset-8{margin-left:66.66666667%}.ptx-runestone-container .col-md-offset-7,.runestone-sphinx .col-md-offset-7{margin-left:58.33333333%}.ptx-runestone-container .col-md-offset-6,.runestone-sphinx .col-md-offset-6{margin-left:50%}.ptx-runestone-container .col-md-offset-5,.runestone-sphinx .col-md-offset-5{margin-left:41.66666667%}.ptx-runestone-container .col-md-offset-4,.runestone-sphinx .col-md-offset-4{margin-left:33.33333333%}.ptx-runestone-container .col-md-offset-3,.runestone-sphinx .col-md-offset-3{margin-left:25%}.ptx-runestone-container .col-md-offset-2,.runestone-sphinx .col-md-offset-2{margin-left:16.66666667%}.ptx-runestone-container .col-md-offset-1,.runestone-sphinx .col-md-offset-1{margin-left:8.33333333%}.ptx-runestone-container .col-md-offset-0,.runestone-sphinx .col-md-offset-0{margin-left:0}}@media (min-width:1200px){.ptx-runestone-container .col-lg-1,.ptx-runestone-container .col-lg-10,.ptx-runestone-container .col-lg-11,.ptx-runestone-container .col-lg-12,.ptx-runestone-container .col-lg-2,.ptx-runestone-container .col-lg-3,.ptx-runestone-container .col-lg-4,.ptx-runestone-container .col-lg-5,.ptx-runestone-container .col-lg-6,.ptx-runestone-container .col-lg-7,.ptx-runestone-container .col-lg-8,.ptx-runestone-container .col-lg-9,.runestone-sphinx .col-lg-1,.runestone-sphinx .col-lg-10,.runestone-sphinx .col-lg-11,.runestone-sphinx .col-lg-12,.runestone-sphinx .col-lg-2,.runestone-sphinx .col-lg-3,.runestone-sphinx .col-lg-4,.runestone-sphinx .col-lg-5,.runestone-sphinx .col-lg-6,.runestone-sphinx .col-lg-7,.runestone-sphinx .col-lg-8,.runestone-sphinx .col-lg-9{float:left}.ptx-runestone-container .col-lg-12,.runestone-sphinx .col-lg-12{width:100%}.ptx-runestone-container .col-lg-11,.runestone-sphinx .col-lg-11{width:91.66666667%}.ptx-runestone-container .col-lg-10,.runestone-sphinx .col-lg-10{width:83.33333333%}.ptx-runestone-container .col-lg-9,.runestone-sphinx .col-lg-9{width:75%}.ptx-runestone-container .col-lg-8,.runestone-sphinx .col-lg-8{width:66.66666667%}.ptx-runestone-container .col-lg-7,.runestone-sphinx .col-lg-7{width:58.33333333%}.ptx-runestone-container .col-lg-6,.runestone-sphinx .col-lg-6{width:50%}.ptx-runestone-container .col-lg-5,.runestone-sphinx .col-lg-5{width:41.66666667%}.ptx-runestone-container .col-lg-4,.runestone-sphinx .col-lg-4{width:33.33333333%}.ptx-runestone-container .col-lg-3,.runestone-sphinx .col-lg-3{width:25%}.ptx-runestone-container .col-lg-2,.runestone-sphinx .col-lg-2{width:16.66666667%}.ptx-runestone-container .col-lg-1,.runestone-sphinx .col-lg-1{width:8.33333333%}.ptx-runestone-container .col-lg-pull-12,.runestone-sphinx .col-lg-pull-12{right:100%}.ptx-runestone-container .col-lg-pull-11,.runestone-sphinx .col-lg-pull-11{right:91.66666667%}.ptx-runestone-container .col-lg-pull-10,.runestone-sphinx .col-lg-pull-10{right:83.33333333%}.ptx-runestone-container .col-lg-pull-9,.runestone-sphinx .col-lg-pull-9{right:75%}.ptx-runestone-container .col-lg-pull-8,.runestone-sphinx .col-lg-pull-8{right:66.66666667%}.ptx-runestone-container .col-lg-pull-7,.runestone-sphinx .col-lg-pull-7{right:58.33333333%}.ptx-runestone-container .col-lg-pull-6,.runestone-sphinx .col-lg-pull-6{right:50%}.ptx-runestone-container .col-lg-pull-5,.runestone-sphinx .col-lg-pull-5{right:41.66666667%}.ptx-runestone-container .col-lg-pull-4,.runestone-sphinx .col-lg-pull-4{right:33.33333333%}.ptx-runestone-container .col-lg-pull-3,.runestone-sphinx .col-lg-pull-3{right:25%}.ptx-runestone-container .col-lg-pull-2,.runestone-sphinx .col-lg-pull-2{right:16.66666667%}.ptx-runestone-container .col-lg-pull-1,.runestone-sphinx .col-lg-pull-1{right:8.33333333%}.ptx-runestone-container .col-lg-pull-0,.runestone-sphinx .col-lg-pull-0{right:auto}.ptx-runestone-container .col-lg-push-12,.runestone-sphinx .col-lg-push-12{left:100%}.ptx-runestone-container .col-lg-push-11,.runestone-sphinx .col-lg-push-11{left:91.66666667%}.ptx-runestone-container .col-lg-push-10,.runestone-sphinx .col-lg-push-10{left:83.33333333%}.ptx-runestone-container .col-lg-push-9,.runestone-sphinx .col-lg-push-9{left:75%}.ptx-runestone-container .col-lg-push-8,.runestone-sphinx .col-lg-push-8{left:66.66666667%}.ptx-runestone-container .col-lg-push-7,.runestone-sphinx .col-lg-push-7{left:58.33333333%}.ptx-runestone-container .col-lg-push-6,.runestone-sphinx .col-lg-push-6{left:50%}.ptx-runestone-container .col-lg-push-5,.runestone-sphinx .col-lg-push-5{left:41.66666667%}.ptx-runestone-container .col-lg-push-4,.runestone-sphinx .col-lg-push-4{left:33.33333333%}.ptx-runestone-container .col-lg-push-3,.runestone-sphinx .col-lg-push-3{left:25%}.ptx-runestone-container .col-lg-push-2,.runestone-sphinx .col-lg-push-2{left:16.66666667%}.ptx-runestone-container .col-lg-push-1,.runestone-sphinx .col-lg-push-1{left:8.33333333%}.ptx-runestone-container .col-lg-push-0,.runestone-sphinx .col-lg-push-0{left:auto}.ptx-runestone-container .col-lg-offset-12,.runestone-sphinx .col-lg-offset-12{margin-left:100%}.ptx-runestone-container .col-lg-offset-11,.runestone-sphinx .col-lg-offset-11{margin-left:91.66666667%}.ptx-runestone-container .col-lg-offset-10,.runestone-sphinx .col-lg-offset-10{margin-left:83.33333333%}.ptx-runestone-container .col-lg-offset-9,.runestone-sphinx .col-lg-offset-9{margin-left:75%}.ptx-runestone-container .col-lg-offset-8,.runestone-sphinx .col-lg-offset-8{margin-left:66.66666667%}.ptx-runestone-container .col-lg-offset-7,.runestone-sphinx .col-lg-offset-7{margin-left:58.33333333%}.ptx-runestone-container .col-lg-offset-6,.runestone-sphinx .col-lg-offset-6{margin-left:50%}.ptx-runestone-container .col-lg-offset-5,.runestone-sphinx .col-lg-offset-5{margin-left:41.66666667%}.ptx-runestone-container .col-lg-offset-4,.runestone-sphinx .col-lg-offset-4{margin-left:33.33333333%}.ptx-runestone-container .col-lg-offset-3,.runestone-sphinx .col-lg-offset-3{margin-left:25%}.ptx-runestone-container .col-lg-offset-2,.runestone-sphinx .col-lg-offset-2{margin-left:16.66666667%}.ptx-runestone-container .col-lg-offset-1,.runestone-sphinx .col-lg-offset-1{margin-left:8.33333333%}.ptx-runestone-container .col-lg-offset-0,.runestone-sphinx .col-lg-offset-0{margin-left:0}}.ptx-runestone-container table,.runestone-sphinx table{background-color:transparent}.ptx-runestone-container table col[class*=col-],.runestone-sphinx table col[class*=col-]{display:table-column;float:none;position:static}.ptx-runestone-container table td[class*=col-],.ptx-runestone-container table th[class*=col-],.runestone-sphinx table td[class*=col-],.runestone-sphinx table th[class*=col-]{display:table-cell;float:none;position:static}.ptx-runestone-container caption,.runestone-sphinx caption{color:#777;padding-bottom:8px;padding-top:8px;text-align:left}.ptx-runestone-container th,.runestone-sphinx th{text-align:left}.ptx-runestone-container .table,.runestone-sphinx .table{margin-bottom:20px;max-width:100%;width:100%}.ptx-runestone-container .table>tbody>tr>td,.ptx-runestone-container .table>tbody>tr>th,.ptx-runestone-container .table>tfoot>tr>td,.ptx-runestone-container .table>tfoot>tr>th,.ptx-runestone-container .table>thead>tr>td,.ptx-runestone-container .table>thead>tr>th,.runestone-sphinx .table>tbody>tr>td,.runestone-sphinx .table>tbody>tr>th,.runestone-sphinx .table>tfoot>tr>td,.runestone-sphinx .table>tfoot>tr>th,.runestone-sphinx .table>thead>tr>td,.runestone-sphinx .table>thead>tr>th{border-top:1px solid #ddd;line-height:1.42857143;padding:8px;vertical-align:top}.ptx-runestone-container .table>thead>tr>th,.runestone-sphinx .table>thead>tr>th{border-bottom:2px solid #ddd;vertical-align:bottom}.ptx-runestone-container .table>caption+thead>tr:first-child>td,.ptx-runestone-container .table>caption+thead>tr:first-child>th,.ptx-runestone-container .table>colgroup+thead>tr:first-child>td,.ptx-runestone-container .table>colgroup+thead>tr:first-child>th,.ptx-runestone-container .table>thead:first-child>tr:first-child>td,.ptx-runestone-container .table>thead:first-child>tr:first-child>th,.runestone-sphinx .table>caption+thead>tr:first-child>td,.runestone-sphinx .table>caption+thead>tr:first-child>th,.runestone-sphinx .table>colgroup+thead>tr:first-child>td,.runestone-sphinx .table>colgroup+thead>tr:first-child>th,.runestone-sphinx .table>thead:first-child>tr:first-child>td,.runestone-sphinx .table>thead:first-child>tr:first-child>th{border-top:0}.ptx-runestone-container .table>tbody+tbody,.runestone-sphinx .table>tbody+tbody{border-top:2px solid #ddd}.ptx-runestone-container .table .table,.runestone-sphinx .table .table{background-color:#fff}.ptx-runestone-container .table-condensed>tbody>tr>td,.ptx-runestone-container .table-condensed>tbody>tr>th,.ptx-runestone-container .table-condensed>tfoot>tr>td,.ptx-runestone-container .table-condensed>tfoot>tr>th,.ptx-runestone-container .table-condensed>thead>tr>td,.ptx-runestone-container .table-condensed>thead>tr>th,.runestone-sphinx .table-condensed>tbody>tr>td,.runestone-sphinx .table-condensed>tbody>tr>th,.runestone-sphinx .table-condensed>tfoot>tr>td,.runestone-sphinx .table-condensed>tfoot>tr>th,.runestone-sphinx .table-condensed>thead>tr>td,.runestone-sphinx .table-condensed>thead>tr>th{padding:5px}.ptx-runestone-container .table-bordered,.ptx-runestone-container .table-bordered>tbody>tr>td,.ptx-runestone-container .table-bordered>tbody>tr>th,.ptx-runestone-container .table-bordered>tfoot>tr>td,.ptx-runestone-container .table-bordered>tfoot>tr>th,.ptx-runestone-container .table-bordered>thead>tr>td,.ptx-runestone-container .table-bordered>thead>tr>th,.runestone-sphinx .table-bordered,.runestone-sphinx .table-bordered>tbody>tr>td,.runestone-sphinx .table-bordered>tbody>tr>th,.runestone-sphinx .table-bordered>tfoot>tr>td,.runestone-sphinx .table-bordered>tfoot>tr>th,.runestone-sphinx .table-bordered>thead>tr>td,.runestone-sphinx .table-bordered>thead>tr>th{border:1px solid #ddd}.ptx-runestone-container .table-bordered>thead>tr>td,.ptx-runestone-container .table-bordered>thead>tr>th,.runestone-sphinx .table-bordered>thead>tr>td,.runestone-sphinx .table-bordered>thead>tr>th{border-bottom-width:2px}.ptx-runestone-container .table-striped>tbody>tr:nth-of-type(odd),.runestone-sphinx .table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.ptx-runestone-container .table-hover>tbody>tr:hover,.ptx-runestone-container .table>tbody>tr.active>td,.ptx-runestone-container .table>tbody>tr.active>th,.ptx-runestone-container .table>tbody>tr>td.active,.ptx-runestone-container .table>tbody>tr>th.active,.ptx-runestone-container .table>tfoot>tr.active>td,.ptx-runestone-container .table>tfoot>tr.active>th,.ptx-runestone-container .table>tfoot>tr>td.active,.ptx-runestone-container .table>tfoot>tr>th.active,.ptx-runestone-container .table>thead>tr.active>td,.ptx-runestone-container .table>thead>tr.active>th,.ptx-runestone-container .table>thead>tr>td.active,.ptx-runestone-container .table>thead>tr>th.active,.runestone-sphinx .table-hover>tbody>tr:hover,.runestone-sphinx .table>tbody>tr.active>td,.runestone-sphinx .table>tbody>tr.active>th,.runestone-sphinx .table>tbody>tr>td.active,.runestone-sphinx .table>tbody>tr>th.active,.runestone-sphinx .table>tfoot>tr.active>td,.runestone-sphinx .table>tfoot>tr.active>th,.runestone-sphinx .table>tfoot>tr>td.active,.runestone-sphinx .table>tfoot>tr>th.active,.runestone-sphinx .table>thead>tr.active>td,.runestone-sphinx .table>thead>tr.active>th,.runestone-sphinx .table>thead>tr>td.active,.runestone-sphinx .table>thead>tr>th.active{background-color:#f5f5f5}.ptx-runestone-container .table-hover>tbody>tr.active:hover>td,.ptx-runestone-container .table-hover>tbody>tr.active:hover>th,.ptx-runestone-container .table-hover>tbody>tr:hover>.active,.ptx-runestone-container .table-hover>tbody>tr>td.active:hover,.ptx-runestone-container .table-hover>tbody>tr>th.active:hover,.runestone-sphinx .table-hover>tbody>tr.active:hover>td,.runestone-sphinx .table-hover>tbody>tr.active:hover>th,.runestone-sphinx .table-hover>tbody>tr:hover>.active,.runestone-sphinx .table-hover>tbody>tr>td.active:hover,.runestone-sphinx .table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.ptx-runestone-container .table>tbody>tr.success>td,.ptx-runestone-container .table>tbody>tr.success>th,.ptx-runestone-container .table>tbody>tr>td.success,.ptx-runestone-container .table>tbody>tr>th.success,.ptx-runestone-container .table>tfoot>tr.success>td,.ptx-runestone-container .table>tfoot>tr.success>th,.ptx-runestone-container .table>tfoot>tr>td.success,.ptx-runestone-container .table>tfoot>tr>th.success,.ptx-runestone-container .table>thead>tr.success>td,.ptx-runestone-container .table>thead>tr.success>th,.ptx-runestone-container .table>thead>tr>td.success,.ptx-runestone-container .table>thead>tr>th.success,.runestone-sphinx .table>tbody>tr.success>td,.runestone-sphinx .table>tbody>tr.success>th,.runestone-sphinx .table>tbody>tr>td.success,.runestone-sphinx .table>tbody>tr>th.success,.runestone-sphinx .table>tfoot>tr.success>td,.runestone-sphinx .table>tfoot>tr.success>th,.runestone-sphinx .table>tfoot>tr>td.success,.runestone-sphinx .table>tfoot>tr>th.success,.runestone-sphinx .table>thead>tr.success>td,.runestone-sphinx .table>thead>tr.success>th,.runestone-sphinx .table>thead>tr>td.success,.runestone-sphinx .table>thead>tr>th.success{background-color:#dff0d8}.ptx-runestone-container .table-hover>tbody>tr.success:hover>td,.ptx-runestone-container .table-hover>tbody>tr.success:hover>th,.ptx-runestone-container .table-hover>tbody>tr:hover>.success,.ptx-runestone-container .table-hover>tbody>tr>td.success:hover,.ptx-runestone-container .table-hover>tbody>tr>th.success:hover,.runestone-sphinx .table-hover>tbody>tr.success:hover>td,.runestone-sphinx .table-hover>tbody>tr.success:hover>th,.runestone-sphinx .table-hover>tbody>tr:hover>.success,.runestone-sphinx .table-hover>tbody>tr>td.success:hover,.runestone-sphinx .table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.ptx-runestone-container .table>tbody>tr.info>td,.ptx-runestone-container .table>tbody>tr.info>th,.ptx-runestone-container .table>tbody>tr>td.info,.ptx-runestone-container .table>tbody>tr>th.info,.ptx-runestone-container .table>tfoot>tr.info>td,.ptx-runestone-container .table>tfoot>tr.info>th,.ptx-runestone-container .table>tfoot>tr>td.info,.ptx-runestone-container .table>tfoot>tr>th.info,.ptx-runestone-container .table>thead>tr.info>td,.ptx-runestone-container .table>thead>tr.info>th,.ptx-runestone-container .table>thead>tr>td.info,.ptx-runestone-container .table>thead>tr>th.info,.runestone-sphinx .table>tbody>tr.info>td,.runestone-sphinx .table>tbody>tr.info>th,.runestone-sphinx .table>tbody>tr>td.info,.runestone-sphinx .table>tbody>tr>th.info,.runestone-sphinx .table>tfoot>tr.info>td,.runestone-sphinx .table>tfoot>tr.info>th,.runestone-sphinx .table>tfoot>tr>td.info,.runestone-sphinx .table>tfoot>tr>th.info,.runestone-sphinx .table>thead>tr.info>td,.runestone-sphinx .table>thead>tr.info>th,.runestone-sphinx .table>thead>tr>td.info,.runestone-sphinx .table>thead>tr>th.info{background-color:#d9edf7}.ptx-runestone-container .table-hover>tbody>tr.info:hover>td,.ptx-runestone-container .table-hover>tbody>tr.info:hover>th,.ptx-runestone-container .table-hover>tbody>tr:hover>.info,.ptx-runestone-container .table-hover>tbody>tr>td.info:hover,.ptx-runestone-container .table-hover>tbody>tr>th.info:hover,.runestone-sphinx .table-hover>tbody>tr.info:hover>td,.runestone-sphinx .table-hover>tbody>tr.info:hover>th,.runestone-sphinx .table-hover>tbody>tr:hover>.info,.runestone-sphinx .table-hover>tbody>tr>td.info:hover,.runestone-sphinx .table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.ptx-runestone-container .table>tbody>tr.warning>td,.ptx-runestone-container .table>tbody>tr.warning>th,.ptx-runestone-container .table>tbody>tr>td.warning,.ptx-runestone-container .table>tbody>tr>th.warning,.ptx-runestone-container .table>tfoot>tr.warning>td,.ptx-runestone-container .table>tfoot>tr.warning>th,.ptx-runestone-container .table>tfoot>tr>td.warning,.ptx-runestone-container .table>tfoot>tr>th.warning,.ptx-runestone-container .table>thead>tr.warning>td,.ptx-runestone-container .table>thead>tr.warning>th,.ptx-runestone-container .table>thead>tr>td.warning,.ptx-runestone-container .table>thead>tr>th.warning,.runestone-sphinx .table>tbody>tr.warning>td,.runestone-sphinx .table>tbody>tr.warning>th,.runestone-sphinx .table>tbody>tr>td.warning,.runestone-sphinx .table>tbody>tr>th.warning,.runestone-sphinx .table>tfoot>tr.warning>td,.runestone-sphinx .table>tfoot>tr.warning>th,.runestone-sphinx .table>tfoot>tr>td.warning,.runestone-sphinx .table>tfoot>tr>th.warning,.runestone-sphinx .table>thead>tr.warning>td,.runestone-sphinx .table>thead>tr.warning>th,.runestone-sphinx .table>thead>tr>td.warning,.runestone-sphinx .table>thead>tr>th.warning{background-color:#fcf8e3}.ptx-runestone-container .table-hover>tbody>tr.warning:hover>td,.ptx-runestone-container .table-hover>tbody>tr.warning:hover>th,.ptx-runestone-container .table-hover>tbody>tr:hover>.warning,.ptx-runestone-container .table-hover>tbody>tr>td.warning:hover,.ptx-runestone-container .table-hover>tbody>tr>th.warning:hover,.runestone-sphinx .table-hover>tbody>tr.warning:hover>td,.runestone-sphinx .table-hover>tbody>tr.warning:hover>th,.runestone-sphinx .table-hover>tbody>tr:hover>.warning,.runestone-sphinx .table-hover>tbody>tr>td.warning:hover,.runestone-sphinx .table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.ptx-runestone-container .table>tbody>tr.danger>td,.ptx-runestone-container .table>tbody>tr.danger>th,.ptx-runestone-container .table>tbody>tr>td.danger,.ptx-runestone-container .table>tbody>tr>th.danger,.ptx-runestone-container .table>tfoot>tr.danger>td,.ptx-runestone-container .table>tfoot>tr.danger>th,.ptx-runestone-container .table>tfoot>tr>td.danger,.ptx-runestone-container .table>tfoot>tr>th.danger,.ptx-runestone-container .table>thead>tr.danger>td,.ptx-runestone-container .table>thead>tr.danger>th,.ptx-runestone-container .table>thead>tr>td.danger,.ptx-runestone-container .table>thead>tr>th.danger,.runestone-sphinx .table>tbody>tr.danger>td,.runestone-sphinx .table>tbody>tr.danger>th,.runestone-sphinx .table>tbody>tr>td.danger,.runestone-sphinx .table>tbody>tr>th.danger,.runestone-sphinx .table>tfoot>tr.danger>td,.runestone-sphinx .table>tfoot>tr.danger>th,.runestone-sphinx .table>tfoot>tr>td.danger,.runestone-sphinx .table>tfoot>tr>th.danger,.runestone-sphinx .table>thead>tr.danger>td,.runestone-sphinx .table>thead>tr.danger>th,.runestone-sphinx .table>thead>tr>td.danger,.runestone-sphinx .table>thead>tr>th.danger{background-color:#f2dede}.ptx-runestone-container .table-hover>tbody>tr.danger:hover>td,.ptx-runestone-container .table-hover>tbody>tr.danger:hover>th,.ptx-runestone-container .table-hover>tbody>tr:hover>.danger,.ptx-runestone-container .table-hover>tbody>tr>td.danger:hover,.ptx-runestone-container .table-hover>tbody>tr>th.danger:hover,.runestone-sphinx .table-hover>tbody>tr.danger:hover>td,.runestone-sphinx .table-hover>tbody>tr.danger:hover>th,.runestone-sphinx .table-hover>tbody>tr:hover>.danger,.runestone-sphinx .table-hover>tbody>tr>td.danger:hover,.runestone-sphinx .table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.ptx-runestone-container .table-responsive,.runestone-sphinx .table-responsive{min-height:.01%;overflow-x:auto}@media screen and (max-width:767px){.ptx-runestone-container .table-responsive,.runestone-sphinx .table-responsive{-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd;margin-bottom:15px;overflow-y:hidden;width:100%}.ptx-runestone-container .table-responsive>.table,.runestone-sphinx .table-responsive>.table{margin-bottom:0}.ptx-runestone-container .table-responsive>.table>tbody>tr>td,.ptx-runestone-container .table-responsive>.table>tbody>tr>th,.ptx-runestone-container .table-responsive>.table>tfoot>tr>td,.ptx-runestone-container .table-responsive>.table>tfoot>tr>th,.ptx-runestone-container .table-responsive>.table>thead>tr>td,.ptx-runestone-container .table-responsive>.table>thead>tr>th,.runestone-sphinx .table-responsive>.table>tbody>tr>td,.runestone-sphinx .table-responsive>.table>tbody>tr>th,.runestone-sphinx .table-responsive>.table>tfoot>tr>td,.runestone-sphinx .table-responsive>.table>tfoot>tr>th,.runestone-sphinx .table-responsive>.table>thead>tr>td,.runestone-sphinx .table-responsive>.table>thead>tr>th{white-space:nowrap}.ptx-runestone-container .table-responsive>.table-bordered,.runestone-sphinx .table-responsive>.table-bordered{border:0}.ptx-runestone-container .table-responsive>.table-bordered>tbody>tr>td:first-child,.ptx-runestone-container .table-responsive>.table-bordered>tbody>tr>th:first-child,.ptx-runestone-container .table-responsive>.table-bordered>tfoot>tr>td:first-child,.ptx-runestone-container .table-responsive>.table-bordered>tfoot>tr>th:first-child,.ptx-runestone-container .table-responsive>.table-bordered>thead>tr>td:first-child,.ptx-runestone-container .table-responsive>.table-bordered>thead>tr>th:first-child,.runestone-sphinx .table-responsive>.table-bordered>tbody>tr>td:first-child,.runestone-sphinx .table-responsive>.table-bordered>tbody>tr>th:first-child,.runestone-sphinx .table-responsive>.table-bordered>tfoot>tr>td:first-child,.runestone-sphinx .table-responsive>.table-bordered>tfoot>tr>th:first-child,.runestone-sphinx .table-responsive>.table-bordered>thead>tr>td:first-child,.runestone-sphinx .table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.ptx-runestone-container .table-responsive>.table-bordered>tbody>tr>td:last-child,.ptx-runestone-container .table-responsive>.table-bordered>tbody>tr>th:last-child,.ptx-runestone-container .table-responsive>.table-bordered>tfoot>tr>td:last-child,.ptx-runestone-container .table-responsive>.table-bordered>tfoot>tr>th:last-child,.ptx-runestone-container .table-responsive>.table-bordered>thead>tr>td:last-child,.ptx-runestone-container .table-responsive>.table-bordered>thead>tr>th:last-child,.runestone-sphinx .table-responsive>.table-bordered>tbody>tr>td:last-child,.runestone-sphinx .table-responsive>.table-bordered>tbody>tr>th:last-child,.runestone-sphinx .table-responsive>.table-bordered>tfoot>tr>td:last-child,.runestone-sphinx .table-responsive>.table-bordered>tfoot>tr>th:last-child,.runestone-sphinx .table-responsive>.table-bordered>thead>tr>td:last-child,.runestone-sphinx .table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.ptx-runestone-container .table-responsive>.table-bordered>tbody>tr:last-child>td,.ptx-runestone-container .table-responsive>.table-bordered>tbody>tr:last-child>th,.ptx-runestone-container .table-responsive>.table-bordered>tfoot>tr:last-child>td,.ptx-runestone-container .table-responsive>.table-bordered>tfoot>tr:last-child>th,.runestone-sphinx .table-responsive>.table-bordered>tbody>tr:last-child>td,.runestone-sphinx .table-responsive>.table-bordered>tbody>tr:last-child>th,.runestone-sphinx .table-responsive>.table-bordered>tfoot>tr:last-child>td,.runestone-sphinx .table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}.ptx-runestone-container fieldset,.runestone-sphinx fieldset{border:0;margin:0;min-width:0;padding:0}.ptx-runestone-container legend,.runestone-sphinx legend{border:0;border-bottom:1px solid #e5e5e5;color:#333;display:block;font-size:21px;line-height:inherit;margin-bottom:20px;padding:0;width:100%}.ptx-runestone-container label,.runestone-sphinx label{display:inline-block;font-weight:700;margin-bottom:5px;max-width:100%}.ptx-runestone-container input[type=search],.runestone-sphinx input[type=search]{-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.ptx-runestone-container input[type=checkbox],.ptx-runestone-container input[type=radio],.runestone-sphinx input[type=checkbox],.runestone-sphinx input[type=radio]{line-height:normal;margin:4px 0 0;margin-top:1px\9}.ptx-runestone-container fieldset[disabled] input[type=checkbox],.ptx-runestone-container fieldset[disabled] input[type=radio],.ptx-runestone-container input[type=checkbox].disabled,.ptx-runestone-container input[type=checkbox][disabled],.ptx-runestone-container input[type=radio].disabled,.ptx-runestone-container input[type=radio][disabled],.runestone-sphinx fieldset[disabled] input[type=checkbox],.runestone-sphinx fieldset[disabled] input[type=radio],.runestone-sphinx input[type=checkbox].disabled,.runestone-sphinx input[type=checkbox][disabled],.runestone-sphinx input[type=radio].disabled,.runestone-sphinx input[type=radio][disabled]{cursor:not-allowed}.ptx-runestone-container input[type=file],.runestone-sphinx input[type=file]{display:block}.ptx-runestone-container input[type=range],.runestone-sphinx input[type=range]{display:block;width:100%}.ptx-runestone-container select[multiple],.ptx-runestone-container select[size],.runestone-sphinx select[multiple],.runestone-sphinx select[size]{height:auto}.ptx-runestone-container input[type=checkbox]:focus,.ptx-runestone-container input[type=file]:focus,.ptx-runestone-container input[type=radio]:focus,.runestone-sphinx input[type=checkbox]:focus,.runestone-sphinx input[type=file]:focus,.runestone-sphinx input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ptx-runestone-container output,.runestone-sphinx output{color:#555;display:block;font-size:14px;line-height:1.42857143;padding-top:7px}.ptx-runestone-container .form-control,.runestone-sphinx .form-control{background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);color:#555;display:block;font-size:14px;height:34px;line-height:1.42857143;padding:6px 12px;-webkit-transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;-o-transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;width:100%}.ptx-runestone-container .form-control:focus,.runestone-sphinx .form-control:focus{border-color:#66afe9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);outline:0}.ptx-runestone-container .form-control::-moz-placeholder,.runestone-sphinx .form-control::-moz-placeholder{color:#999;opacity:1}.ptx-runestone-container .form-control:-ms-input-placeholder,.runestone-sphinx .form-control:-ms-input-placeholder{color:#999}.ptx-runestone-container .form-control::-webkit-input-placeholder,.runestone-sphinx .form-control::-webkit-input-placeholder{color:#999}.ptx-runestone-container .form-control::-ms-expand,.runestone-sphinx .form-control::-ms-expand{background-color:transparent;border:0}.ptx-runestone-container .form-control[disabled],.ptx-runestone-container .form-control[readonly],.ptx-runestone-container fieldset[disabled] .form-control,.runestone-sphinx .form-control[disabled],.runestone-sphinx .form-control[readonly],.runestone-sphinx fieldset[disabled] .form-control{background-color:#eee;opacity:1}.ptx-runestone-container .form-control[disabled],.ptx-runestone-container fieldset[disabled] .form-control,.runestone-sphinx .form-control[disabled],.runestone-sphinx fieldset[disabled] .form-control{cursor:not-allowed}.ptx-runestone-container textarea.form-control,.runestone-sphinx textarea.form-control{height:auto}@media screen and (-webkit-min-device-pixel-ratio:0){.ptx-runestone-container input[type=date].form-control,.ptx-runestone-container input[type=datetime-local].form-control,.ptx-runestone-container input[type=month].form-control,.ptx-runestone-container input[type=time].form-control,.runestone-sphinx input[type=date].form-control,.runestone-sphinx input[type=datetime-local].form-control,.runestone-sphinx input[type=month].form-control,.runestone-sphinx input[type=time].form-control{line-height:34px}.ptx-runestone-container .input-group-sm input[type=date],.ptx-runestone-container .input-group-sm input[type=datetime-local],.ptx-runestone-container .input-group-sm input[type=month],.ptx-runestone-container .input-group-sm input[type=time],.ptx-runestone-container input[type=date].input-sm,.ptx-runestone-container input[type=datetime-local].input-sm,.ptx-runestone-container input[type=month].input-sm,.ptx-runestone-container input[type=time].input-sm,.runestone-sphinx .input-group-sm input[type=date],.runestone-sphinx .input-group-sm input[type=datetime-local],.runestone-sphinx .input-group-sm input[type=month],.runestone-sphinx .input-group-sm input[type=time],.runestone-sphinx input[type=date].input-sm,.runestone-sphinx input[type=datetime-local].input-sm,.runestone-sphinx input[type=month].input-sm,.runestone-sphinx input[type=time].input-sm{line-height:30px}.ptx-runestone-container .input-group-lg input[type=date],.ptx-runestone-container .input-group-lg input[type=datetime-local],.ptx-runestone-container .input-group-lg input[type=month],.ptx-runestone-container .input-group-lg input[type=time],.ptx-runestone-container input[type=date].input-lg,.ptx-runestone-container input[type=datetime-local].input-lg,.ptx-runestone-container input[type=month].input-lg,.ptx-runestone-container input[type=time].input-lg,.runestone-sphinx .input-group-lg input[type=date],.runestone-sphinx .input-group-lg input[type=datetime-local],.runestone-sphinx .input-group-lg input[type=month],.runestone-sphinx .input-group-lg input[type=time],.runestone-sphinx input[type=date].input-lg,.runestone-sphinx input[type=datetime-local].input-lg,.runestone-sphinx input[type=month].input-lg,.runestone-sphinx input[type=time].input-lg{line-height:46px}}.ptx-runestone-container .form-group,.runestone-sphinx .form-group{margin-bottom:15px}.ptx-runestone-container .checkbox,.ptx-runestone-container .radio,.runestone-sphinx .checkbox,.runestone-sphinx .radio{display:block;margin-bottom:10px;margin-top:10px;position:relative}.ptx-runestone-container .checkbox.disabled label,.ptx-runestone-container .radio.disabled label,.ptx-runestone-container fieldset[disabled] .checkbox label,.ptx-runestone-container fieldset[disabled] .radio label,.runestone-sphinx .checkbox.disabled label,.runestone-sphinx .radio.disabled label,.runestone-sphinx fieldset[disabled] .checkbox label,.runestone-sphinx fieldset[disabled] .radio label{cursor:not-allowed}.ptx-runestone-container .checkbox label,.ptx-runestone-container .radio label,.runestone-sphinx .checkbox label,.runestone-sphinx .radio label{cursor:pointer;font-weight:400;margin-bottom:0;min-height:20px;padding-left:20px}.ptx-runestone-container .checkbox input[type=checkbox],.ptx-runestone-container .checkbox-inline input[type=checkbox],.ptx-runestone-container .radio input[type=radio],.ptx-runestone-container .radio-inline input[type=radio],.runestone-sphinx .checkbox input[type=checkbox],.runestone-sphinx .checkbox-inline input[type=checkbox],.runestone-sphinx .radio input[type=radio],.runestone-sphinx .radio-inline input[type=radio]{margin-left:-20px;margin-top:4px\9;position:absolute}.ptx-runestone-container .checkbox+.checkbox,.ptx-runestone-container .radio+.radio,.runestone-sphinx .checkbox+.checkbox,.runestone-sphinx .radio+.radio{margin-top:-5px}.ptx-runestone-container .checkbox-inline,.ptx-runestone-container .radio-inline,.runestone-sphinx .checkbox-inline,.runestone-sphinx .radio-inline{cursor:pointer;display:inline-block;font-weight:400;margin-bottom:0;padding-left:20px;position:relative;vertical-align:middle}.ptx-runestone-container .checkbox-inline.disabled,.ptx-runestone-container .radio-inline.disabled,.ptx-runestone-container fieldset[disabled] .checkbox-inline,.ptx-runestone-container fieldset[disabled] .radio-inline,.runestone-sphinx .checkbox-inline.disabled,.runestone-sphinx .radio-inline.disabled,.runestone-sphinx fieldset[disabled] .checkbox-inline,.runestone-sphinx fieldset[disabled] .radio-inline{cursor:not-allowed}.ptx-runestone-container .checkbox-inline+.checkbox-inline,.ptx-runestone-container .radio-inline+.radio-inline,.runestone-sphinx .checkbox-inline+.checkbox-inline,.runestone-sphinx .radio-inline+.radio-inline{margin-left:10px;margin-top:0}.ptx-runestone-container .form-control-static,.runestone-sphinx .form-control-static{margin-bottom:0;min-height:34px;padding-bottom:7px;padding-top:7px}.ptx-runestone-container .form-control-static.input-lg,.ptx-runestone-container .form-control-static.input-sm,.runestone-sphinx .form-control-static.input-lg,.runestone-sphinx .form-control-static.input-sm{padding-left:0;padding-right:0}.ptx-runestone-container .input-sm,.runestone-sphinx .input-sm{border-radius:3px;font-size:12px;height:30px;line-height:1.5;padding:5px 10px}.ptx-runestone-container select.input-sm,.runestone-sphinx select.input-sm{height:30px;line-height:30px}.ptx-runestone-container select[multiple].input-sm,.ptx-runestone-container textarea.input-sm,.runestone-sphinx select[multiple].input-sm,.runestone-sphinx textarea.input-sm{height:auto}.ptx-runestone-container .form-group-sm .form-control,.runestone-sphinx .form-group-sm .form-control{border-radius:3px;font-size:12px;height:30px;line-height:1.5;padding:5px 10px}.ptx-runestone-container .form-group-sm select.form-control,.runestone-sphinx .form-group-sm select.form-control{height:30px;line-height:30px}.ptx-runestone-container .form-group-sm select[multiple].form-control,.ptx-runestone-container .form-group-sm textarea.form-control,.runestone-sphinx .form-group-sm select[multiple].form-control,.runestone-sphinx .form-group-sm textarea.form-control{height:auto}.ptx-runestone-container .form-group-sm .form-control-static,.runestone-sphinx .form-group-sm .form-control-static{font-size:12px;height:30px;line-height:1.5;min-height:32px;padding:6px 10px}.ptx-runestone-container .input-lg,.runestone-sphinx .input-lg{border-radius:6px;font-size:18px;height:46px;line-height:1.3333333;padding:10px 16px}.ptx-runestone-container select.input-lg,.runestone-sphinx select.input-lg{height:46px;line-height:46px}.ptx-runestone-container select[multiple].input-lg,.ptx-runestone-container textarea.input-lg,.runestone-sphinx select[multiple].input-lg,.runestone-sphinx textarea.input-lg{height:auto}.ptx-runestone-container .form-group-lg .form-control,.runestone-sphinx .form-group-lg .form-control{border-radius:6px;font-size:18px;height:46px;line-height:1.3333333;padding:10px 16px}.ptx-runestone-container .form-group-lg select.form-control,.runestone-sphinx .form-group-lg select.form-control{height:46px;line-height:46px}.ptx-runestone-container .form-group-lg select[multiple].form-control,.ptx-runestone-container .form-group-lg textarea.form-control,.runestone-sphinx .form-group-lg select[multiple].form-control,.runestone-sphinx .form-group-lg textarea.form-control{height:auto}.ptx-runestone-container .form-group-lg .form-control-static,.runestone-sphinx .form-group-lg .form-control-static{font-size:18px;height:46px;line-height:1.3333333;min-height:38px;padding:11px 16px}.ptx-runestone-container .has-feedback,.runestone-sphinx .has-feedback{position:relative}.ptx-runestone-container .has-feedback .form-control,.runestone-sphinx .has-feedback .form-control{padding-right:42.5px}.ptx-runestone-container .form-control-feedback,.runestone-sphinx .form-control-feedback{display:block;height:34px;line-height:34px;pointer-events:none;position:absolute;right:0;text-align:center;top:0;width:34px;z-index:2}.ptx-runestone-container .form-group-lg .form-control+.form-control-feedback,.ptx-runestone-container .input-group-lg+.form-control-feedback,.ptx-runestone-container .input-lg+.form-control-feedback,.runestone-sphinx .form-group-lg .form-control+.form-control-feedback,.runestone-sphinx .input-group-lg+.form-control-feedback,.runestone-sphinx .input-lg+.form-control-feedback{height:46px;line-height:46px;width:46px}.ptx-runestone-container .form-group-sm .form-control+.form-control-feedback,.ptx-runestone-container .input-group-sm+.form-control-feedback,.ptx-runestone-container .input-sm+.form-control-feedback,.runestone-sphinx .form-group-sm .form-control+.form-control-feedback,.runestone-sphinx .input-group-sm+.form-control-feedback,.runestone-sphinx .input-sm+.form-control-feedback{height:30px;line-height:30px;width:30px}.ptx-runestone-container .has-success .checkbox,.ptx-runestone-container .has-success .checkbox-inline,.ptx-runestone-container .has-success .control-label,.ptx-runestone-container .has-success .help-block,.ptx-runestone-container .has-success .radio,.ptx-runestone-container .has-success .radio-inline,.ptx-runestone-container .has-success.checkbox label,.ptx-runestone-container .has-success.checkbox-inline label,.ptx-runestone-container .has-success.radio label,.ptx-runestone-container .has-success.radio-inline label,.runestone-sphinx .has-success .checkbox,.runestone-sphinx .has-success .checkbox-inline,.runestone-sphinx .has-success .control-label,.runestone-sphinx .has-success .help-block,.runestone-sphinx .has-success .radio,.runestone-sphinx .has-success .radio-inline,.runestone-sphinx .has-success.checkbox label,.runestone-sphinx .has-success.checkbox-inline label,.runestone-sphinx .has-success.radio label,.runestone-sphinx .has-success.radio-inline label{color:#3c763d}.ptx-runestone-container .has-success .form-control,.runestone-sphinx .has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.ptx-runestone-container .has-success .form-control:focus,.runestone-sphinx .has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.ptx-runestone-container .has-success .input-group-addon,.runestone-sphinx .has-success .input-group-addon{background-color:#dff0d8;border-color:#3c763d;color:#3c763d}.ptx-runestone-container .has-success .form-control-feedback,.runestone-sphinx .has-success .form-control-feedback{color:#3c763d}.ptx-runestone-container .has-warning .checkbox,.ptx-runestone-container .has-warning .checkbox-inline,.ptx-runestone-container .has-warning .control-label,.ptx-runestone-container .has-warning .help-block,.ptx-runestone-container .has-warning .radio,.ptx-runestone-container .has-warning .radio-inline,.ptx-runestone-container .has-warning.checkbox label,.ptx-runestone-container .has-warning.checkbox-inline label,.ptx-runestone-container .has-warning.radio label,.ptx-runestone-container .has-warning.radio-inline label,.runestone-sphinx .has-warning .checkbox,.runestone-sphinx .has-warning .checkbox-inline,.runestone-sphinx .has-warning .control-label,.runestone-sphinx .has-warning .help-block,.runestone-sphinx .has-warning .radio,.runestone-sphinx .has-warning .radio-inline,.runestone-sphinx .has-warning.checkbox label,.runestone-sphinx .has-warning.checkbox-inline label,.runestone-sphinx .has-warning.radio label,.runestone-sphinx .has-warning.radio-inline label{color:#8a6d3b}.ptx-runestone-container .has-warning .form-control,.runestone-sphinx .has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.ptx-runestone-container .has-warning .form-control:focus,.runestone-sphinx .has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.ptx-runestone-container .has-warning .input-group-addon,.runestone-sphinx .has-warning .input-group-addon{background-color:#fcf8e3;border-color:#8a6d3b;color:#8a6d3b}.ptx-runestone-container .has-warning .form-control-feedback,.runestone-sphinx .has-warning .form-control-feedback{color:#8a6d3b}.ptx-runestone-container .has-error .checkbox,.ptx-runestone-container .has-error .checkbox-inline,.ptx-runestone-container .has-error .control-label,.ptx-runestone-container .has-error .help-block,.ptx-runestone-container .has-error .radio,.ptx-runestone-container .has-error .radio-inline,.ptx-runestone-container .has-error.checkbox label,.ptx-runestone-container .has-error.checkbox-inline label,.ptx-runestone-container .has-error.radio label,.ptx-runestone-container .has-error.radio-inline label,.runestone-sphinx .has-error .checkbox,.runestone-sphinx .has-error .checkbox-inline,.runestone-sphinx .has-error .control-label,.runestone-sphinx .has-error .help-block,.runestone-sphinx .has-error .radio,.runestone-sphinx .has-error .radio-inline,.runestone-sphinx .has-error.checkbox label,.runestone-sphinx .has-error.checkbox-inline label,.runestone-sphinx .has-error.radio label,.runestone-sphinx .has-error.radio-inline label{color:#a94442}.ptx-runestone-container .has-error .form-control,.runestone-sphinx .has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.ptx-runestone-container .has-error .form-control:focus,.runestone-sphinx .has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.ptx-runestone-container .has-error .input-group-addon,.runestone-sphinx .has-error .input-group-addon{background-color:#f2dede;border-color:#a94442;color:#a94442}.ptx-runestone-container .has-error .form-control-feedback,.runestone-sphinx .has-error .form-control-feedback{color:#a94442}.ptx-runestone-container .has-feedback label~.form-control-feedback,.runestone-sphinx .has-feedback label~.form-control-feedback{top:25px}.ptx-runestone-container .has-feedback label.sr-only~.form-control-feedback,.runestone-sphinx .has-feedback label.sr-only~.form-control-feedback{top:0}.ptx-runestone-container .help-block,.runestone-sphinx .help-block{color:#737373;display:block;margin-bottom:10px;margin-top:5px}@media (min-width:768px){.ptx-runestone-container .form-inline .form-group,.runestone-sphinx .form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.ptx-runestone-container .form-inline .form-control,.runestone-sphinx .form-inline .form-control{display:inline-block;vertical-align:middle;width:auto}.ptx-runestone-container .form-inline .form-control-static,.runestone-sphinx .form-inline .form-control-static{display:inline-block}.ptx-runestone-container .form-inline .input-group,.runestone-sphinx .form-inline .input-group{display:inline-table;vertical-align:middle}.ptx-runestone-container .form-inline .input-group .form-control,.ptx-runestone-container .form-inline .input-group .input-group-addon,.ptx-runestone-container .form-inline .input-group .input-group-btn,.runestone-sphinx .form-inline .input-group .form-control,.runestone-sphinx .form-inline .input-group .input-group-addon,.runestone-sphinx .form-inline .input-group .input-group-btn{width:auto}.ptx-runestone-container .form-inline .input-group>.form-control,.runestone-sphinx .form-inline .input-group>.form-control{width:100%}.ptx-runestone-container .form-inline .control-label,.runestone-sphinx .form-inline .control-label{margin-bottom:0;vertical-align:middle}.ptx-runestone-container .form-inline .checkbox,.ptx-runestone-container .form-inline .radio,.runestone-sphinx .form-inline .checkbox,.runestone-sphinx .form-inline .radio{display:inline-block;margin-bottom:0;margin-top:0;vertical-align:middle}.ptx-runestone-container .form-inline .checkbox label,.ptx-runestone-container .form-inline .radio label,.runestone-sphinx .form-inline .checkbox label,.runestone-sphinx .form-inline .radio label{padding-left:0}.ptx-runestone-container .form-inline .checkbox input[type=checkbox],.ptx-runestone-container .form-inline .radio input[type=radio],.runestone-sphinx .form-inline .checkbox input[type=checkbox],.runestone-sphinx .form-inline .radio input[type=radio]{margin-left:0;position:relative}.ptx-runestone-container .form-inline .has-feedback .form-control-feedback,.runestone-sphinx .form-inline .has-feedback .form-control-feedback{top:0}}.ptx-runestone-container .form-horizontal .checkbox,.ptx-runestone-container .form-horizontal .checkbox-inline,.ptx-runestone-container .form-horizontal .radio,.ptx-runestone-container .form-horizontal .radio-inline,.runestone-sphinx .form-horizontal .checkbox,.runestone-sphinx .form-horizontal .checkbox-inline,.runestone-sphinx .form-horizontal .radio,.runestone-sphinx .form-horizontal .radio-inline{margin-bottom:0;margin-top:0;padding-top:7px}.ptx-runestone-container .form-horizontal .checkbox,.ptx-runestone-container .form-horizontal .radio,.runestone-sphinx .form-horizontal .checkbox,.runestone-sphinx .form-horizontal .radio{min-height:27px}.ptx-runestone-container .form-horizontal .form-group,.runestone-sphinx .form-horizontal .form-group{margin-left:-15px;margin-right:-15px}@media (min-width:768px){.ptx-runestone-container .form-horizontal .control-label,.runestone-sphinx .form-horizontal .control-label{margin-bottom:0;padding-top:7px;text-align:right}}.ptx-runestone-container .form-horizontal .has-feedback .form-control-feedback,.runestone-sphinx .form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.ptx-runestone-container .form-horizontal .form-group-lg .control-label,.runestone-sphinx .form-horizontal .form-group-lg .control-label{font-size:18px;padding-top:11px}.ptx-runestone-container .form-horizontal .form-group-sm .control-label,.runestone-sphinx .form-horizontal .form-group-sm .control-label{font-size:12px;padding-top:6px}}.ptx-runestone-container .btn,.runestone-sphinx .btn{background-image:none;border:1px solid transparent;border-radius:4px;cursor:pointer;display:inline-block;font-size:14px;font-weight:400;line-height:1.42857143;margin-bottom:0;padding:6px 12px;text-align:center;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.ptx-runestone-container .btn.active.focus,.ptx-runestone-container .btn.active:focus,.ptx-runestone-container .btn.focus,.ptx-runestone-container .btn:active.focus,.ptx-runestone-container .btn:active:focus,.ptx-runestone-container .btn:focus,.runestone-sphinx .btn.active.focus,.runestone-sphinx .btn.active:focus,.runestone-sphinx .btn.focus,.runestone-sphinx .btn:active.focus,.runestone-sphinx .btn:active:focus,.runestone-sphinx .btn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ptx-runestone-container .btn.focus,.ptx-runestone-container .btn:focus,.ptx-runestone-container .btn:hover,.runestone-sphinx .btn.focus,.runestone-sphinx .btn:focus,.runestone-sphinx .btn:hover{color:#333;text-decoration:none}.ptx-runestone-container .btn.active,.ptx-runestone-container .btn:active,.runestone-sphinx .btn.active,.runestone-sphinx .btn:active{background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125);outline:0}.ptx-runestone-container .btn.disabled,.ptx-runestone-container .btn[disabled],.ptx-runestone-container fieldset[disabled] .btn,.runestone-sphinx .btn.disabled,.runestone-sphinx .btn[disabled],.runestone-sphinx fieldset[disabled] .btn{-webkit-box-shadow:none;box-shadow:none;cursor:not-allowed;filter:alpha(opacity=65);opacity:.65}.ptx-runestone-container a.btn.disabled,.ptx-runestone-container fieldset[disabled] a.btn,.runestone-sphinx a.btn.disabled,.runestone-sphinx fieldset[disabled] a.btn{pointer-events:none}.ptx-runestone-container .btn-default,.runestone-sphinx .btn-default{background-color:#fff;border-color:#ccc;color:#333}.ptx-runestone-container .btn-default.focus,.ptx-runestone-container .btn-default:focus,.runestone-sphinx .btn-default.focus,.runestone-sphinx .btn-default:focus{background-color:#e6e6e6;border-color:#8c8c8c;color:#333}.ptx-runestone-container .btn-default:hover,.runestone-sphinx .btn-default:hover{background-color:#e6e6e6;border-color:#adadad;color:#333}.ptx-runestone-container .btn-default.active,.ptx-runestone-container .btn-default:active,.ptx-runestone-container .open>.dropdown-toggle.btn-default,.runestone-sphinx .btn-default.active,.runestone-sphinx .btn-default:active,.runestone-sphinx .open>.dropdown-toggle.btn-default{background-color:#e6e6e6;background-image:none;border-color:#adadad;color:#333}.ptx-runestone-container .btn-default.active.focus,.ptx-runestone-container .btn-default.active:focus,.ptx-runestone-container .btn-default.active:hover,.ptx-runestone-container .btn-default:active.focus,.ptx-runestone-container .btn-default:active:focus,.ptx-runestone-container .btn-default:active:hover,.ptx-runestone-container .open>.dropdown-toggle.btn-default.focus,.ptx-runestone-container .open>.dropdown-toggle.btn-default:focus,.ptx-runestone-container .open>.dropdown-toggle.btn-default:hover,.runestone-sphinx .btn-default.active.focus,.runestone-sphinx .btn-default.active:focus,.runestone-sphinx .btn-default.active:hover,.runestone-sphinx .btn-default:active.focus,.runestone-sphinx .btn-default:active:focus,.runestone-sphinx .btn-default:active:hover,.runestone-sphinx .open>.dropdown-toggle.btn-default.focus,.runestone-sphinx .open>.dropdown-toggle.btn-default:focus,.runestone-sphinx .open>.dropdown-toggle.btn-default:hover{background-color:#d4d4d4;border-color:#8c8c8c;color:#333}.ptx-runestone-container .btn-default.disabled.focus,.ptx-runestone-container .btn-default.disabled:focus,.ptx-runestone-container .btn-default.disabled:hover,.ptx-runestone-container .btn-default[disabled].focus,.ptx-runestone-container .btn-default[disabled]:focus,.ptx-runestone-container .btn-default[disabled]:hover,.ptx-runestone-container fieldset[disabled] .btn-default.focus,.ptx-runestone-container fieldset[disabled] .btn-default:focus,.ptx-runestone-container fieldset[disabled] .btn-default:hover,.runestone-sphinx .btn-default.disabled.focus,.runestone-sphinx .btn-default.disabled:focus,.runestone-sphinx .btn-default.disabled:hover,.runestone-sphinx .btn-default[disabled].focus,.runestone-sphinx .btn-default[disabled]:focus,.runestone-sphinx .btn-default[disabled]:hover,.runestone-sphinx fieldset[disabled] .btn-default.focus,.runestone-sphinx fieldset[disabled] .btn-default:focus,.runestone-sphinx fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.ptx-runestone-container .btn-default .badge,.runestone-sphinx .btn-default .badge{background-color:#333;color:#fff}.ptx-runestone-container .btn-primary,.runestone-sphinx .btn-primary{background-color:#337ab7;border-color:#2e6da4;color:#fff}.ptx-runestone-container .btn-primary.focus,.ptx-runestone-container .btn-primary:focus,.runestone-sphinx .btn-primary.focus,.runestone-sphinx .btn-primary:focus{background-color:#286090;border-color:#122b40;color:#fff}.ptx-runestone-container .btn-primary:hover,.runestone-sphinx .btn-primary:hover{background-color:#286090;border-color:#204d74;color:#fff}.ptx-runestone-container .btn-primary.active,.ptx-runestone-container .btn-primary:active,.ptx-runestone-container .open>.dropdown-toggle.btn-primary,.runestone-sphinx .btn-primary.active,.runestone-sphinx .btn-primary:active,.runestone-sphinx .open>.dropdown-toggle.btn-primary{background-color:#286090;background-image:none;border-color:#204d74;color:#fff}.ptx-runestone-container .btn-primary.active.focus,.ptx-runestone-container .btn-primary.active:focus,.ptx-runestone-container .btn-primary.active:hover,.ptx-runestone-container .btn-primary:active.focus,.ptx-runestone-container .btn-primary:active:focus,.ptx-runestone-container .btn-primary:active:hover,.ptx-runestone-container .open>.dropdown-toggle.btn-primary.focus,.ptx-runestone-container .open>.dropdown-toggle.btn-primary:focus,.ptx-runestone-container .open>.dropdown-toggle.btn-primary:hover,.runestone-sphinx .btn-primary.active.focus,.runestone-sphinx .btn-primary.active:focus,.runestone-sphinx .btn-primary.active:hover,.runestone-sphinx .btn-primary:active.focus,.runestone-sphinx .btn-primary:active:focus,.runestone-sphinx .btn-primary:active:hover,.runestone-sphinx .open>.dropdown-toggle.btn-primary.focus,.runestone-sphinx .open>.dropdown-toggle.btn-primary:focus,.runestone-sphinx .open>.dropdown-toggle.btn-primary:hover{background-color:#204d74;border-color:#122b40;color:#fff}.ptx-runestone-container .btn-primary.disabled.focus,.ptx-runestone-container .btn-primary.disabled:focus,.ptx-runestone-container .btn-primary.disabled:hover,.ptx-runestone-container .btn-primary[disabled].focus,.ptx-runestone-container .btn-primary[disabled]:focus,.ptx-runestone-container .btn-primary[disabled]:hover,.ptx-runestone-container fieldset[disabled] .btn-primary.focus,.ptx-runestone-container fieldset[disabled] .btn-primary:focus,.ptx-runestone-container fieldset[disabled] .btn-primary:hover,.runestone-sphinx .btn-primary.disabled.focus,.runestone-sphinx .btn-primary.disabled:focus,.runestone-sphinx .btn-primary.disabled:hover,.runestone-sphinx .btn-primary[disabled].focus,.runestone-sphinx .btn-primary[disabled]:focus,.runestone-sphinx .btn-primary[disabled]:hover,.runestone-sphinx fieldset[disabled] .btn-primary.focus,.runestone-sphinx fieldset[disabled] .btn-primary:focus,.runestone-sphinx fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:#2e6da4}.ptx-runestone-container .btn-primary .badge,.runestone-sphinx .btn-primary .badge{background-color:#fff;color:#337ab7}.ptx-runestone-container .btn-success,.runestone-sphinx .btn-success{background-color:#5cb85c;border-color:#4cae4c;color:#fff}.ptx-runestone-container .btn-success.focus,.ptx-runestone-container .btn-success:focus,.runestone-sphinx .btn-success.focus,.runestone-sphinx .btn-success:focus{background-color:#449d44;border-color:#255625;color:#fff}.ptx-runestone-container .btn-success:hover,.runestone-sphinx .btn-success:hover{background-color:#449d44;border-color:#398439;color:#fff}.ptx-runestone-container .btn-success.active,.ptx-runestone-container .btn-success:active,.ptx-runestone-container .open>.dropdown-toggle.btn-success,.runestone-sphinx .btn-success.active,.runestone-sphinx .btn-success:active,.runestone-sphinx .open>.dropdown-toggle.btn-success{background-color:#449d44;background-image:none;border-color:#398439;color:#fff}.ptx-runestone-container .btn-success.active.focus,.ptx-runestone-container .btn-success.active:focus,.ptx-runestone-container .btn-success.active:hover,.ptx-runestone-container .btn-success:active.focus,.ptx-runestone-container .btn-success:active:focus,.ptx-runestone-container .btn-success:active:hover,.ptx-runestone-container .open>.dropdown-toggle.btn-success.focus,.ptx-runestone-container .open>.dropdown-toggle.btn-success:focus,.ptx-runestone-container .open>.dropdown-toggle.btn-success:hover,.runestone-sphinx .btn-success.active.focus,.runestone-sphinx .btn-success.active:focus,.runestone-sphinx .btn-success.active:hover,.runestone-sphinx .btn-success:active.focus,.runestone-sphinx .btn-success:active:focus,.runestone-sphinx .btn-success:active:hover,.runestone-sphinx .open>.dropdown-toggle.btn-success.focus,.runestone-sphinx .open>.dropdown-toggle.btn-success:focus,.runestone-sphinx .open>.dropdown-toggle.btn-success:hover{background-color:#398439;border-color:#255625;color:#fff}.ptx-runestone-container .btn-success.disabled.focus,.ptx-runestone-container .btn-success.disabled:focus,.ptx-runestone-container .btn-success.disabled:hover,.ptx-runestone-container .btn-success[disabled].focus,.ptx-runestone-container .btn-success[disabled]:focus,.ptx-runestone-container .btn-success[disabled]:hover,.ptx-runestone-container fieldset[disabled] .btn-success.focus,.ptx-runestone-container fieldset[disabled] .btn-success:focus,.ptx-runestone-container fieldset[disabled] .btn-success:hover,.runestone-sphinx .btn-success.disabled.focus,.runestone-sphinx .btn-success.disabled:focus,.runestone-sphinx .btn-success.disabled:hover,.runestone-sphinx .btn-success[disabled].focus,.runestone-sphinx .btn-success[disabled]:focus,.runestone-sphinx .btn-success[disabled]:hover,.runestone-sphinx fieldset[disabled] .btn-success.focus,.runestone-sphinx fieldset[disabled] .btn-success:focus,.runestone-sphinx fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.ptx-runestone-container .btn-success .badge,.runestone-sphinx .btn-success .badge{background-color:#fff;color:#5cb85c}.ptx-runestone-container .btn-info,.runestone-sphinx .btn-info{background-color:#5bc0de;border-color:#46b8da;color:#fff}.ptx-runestone-container .btn-info.focus,.ptx-runestone-container .btn-info:focus,.runestone-sphinx .btn-info.focus,.runestone-sphinx .btn-info:focus{background-color:#31b0d5;border-color:#1b6d85;color:#fff}.ptx-runestone-container .btn-info:hover,.runestone-sphinx .btn-info:hover{background-color:#31b0d5;border-color:#269abc;color:#fff}.ptx-runestone-container .btn-info.active,.ptx-runestone-container .btn-info:active,.ptx-runestone-container .open>.dropdown-toggle.btn-info,.runestone-sphinx .btn-info.active,.runestone-sphinx .btn-info:active,.runestone-sphinx .open>.dropdown-toggle.btn-info{background-color:#31b0d5;background-image:none;border-color:#269abc;color:#fff}.ptx-runestone-container .btn-info.active.focus,.ptx-runestone-container .btn-info.active:focus,.ptx-runestone-container .btn-info.active:hover,.ptx-runestone-container .btn-info:active.focus,.ptx-runestone-container .btn-info:active:focus,.ptx-runestone-container .btn-info:active:hover,.ptx-runestone-container .open>.dropdown-toggle.btn-info.focus,.ptx-runestone-container .open>.dropdown-toggle.btn-info:focus,.ptx-runestone-container .open>.dropdown-toggle.btn-info:hover,.runestone-sphinx .btn-info.active.focus,.runestone-sphinx .btn-info.active:focus,.runestone-sphinx .btn-info.active:hover,.runestone-sphinx .btn-info:active.focus,.runestone-sphinx .btn-info:active:focus,.runestone-sphinx .btn-info:active:hover,.runestone-sphinx .open>.dropdown-toggle.btn-info.focus,.runestone-sphinx .open>.dropdown-toggle.btn-info:focus,.runestone-sphinx .open>.dropdown-toggle.btn-info:hover{background-color:#269abc;border-color:#1b6d85;color:#fff}.ptx-runestone-container .btn-info.disabled.focus,.ptx-runestone-container .btn-info.disabled:focus,.ptx-runestone-container .btn-info.disabled:hover,.ptx-runestone-container .btn-info[disabled].focus,.ptx-runestone-container .btn-info[disabled]:focus,.ptx-runestone-container .btn-info[disabled]:hover,.ptx-runestone-container fieldset[disabled] .btn-info.focus,.ptx-runestone-container fieldset[disabled] .btn-info:focus,.ptx-runestone-container fieldset[disabled] .btn-info:hover,.runestone-sphinx .btn-info.disabled.focus,.runestone-sphinx .btn-info.disabled:focus,.runestone-sphinx .btn-info.disabled:hover,.runestone-sphinx .btn-info[disabled].focus,.runestone-sphinx .btn-info[disabled]:focus,.runestone-sphinx .btn-info[disabled]:hover,.runestone-sphinx fieldset[disabled] .btn-info.focus,.runestone-sphinx fieldset[disabled] .btn-info:focus,.runestone-sphinx fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.ptx-runestone-container .btn-info .badge,.runestone-sphinx .btn-info .badge{background-color:#fff;color:#5bc0de}.ptx-runestone-container .btn-warning,.runestone-sphinx .btn-warning{background-color:#f0ad4e;border-color:#eea236;color:#fff}.ptx-runestone-container .btn-warning.focus,.ptx-runestone-container .btn-warning:focus,.runestone-sphinx .btn-warning.focus,.runestone-sphinx .btn-warning:focus{background-color:#ec971f;border-color:#985f0d;color:#fff}.ptx-runestone-container .btn-warning:hover,.runestone-sphinx .btn-warning:hover{background-color:#ec971f;border-color:#d58512;color:#fff}.ptx-runestone-container .btn-warning.active,.ptx-runestone-container .btn-warning:active,.ptx-runestone-container .open>.dropdown-toggle.btn-warning,.runestone-sphinx .btn-warning.active,.runestone-sphinx .btn-warning:active,.runestone-sphinx .open>.dropdown-toggle.btn-warning{background-color:#ec971f;background-image:none;border-color:#d58512;color:#fff}.ptx-runestone-container .btn-warning.active.focus,.ptx-runestone-container .btn-warning.active:focus,.ptx-runestone-container .btn-warning.active:hover,.ptx-runestone-container .btn-warning:active.focus,.ptx-runestone-container .btn-warning:active:focus,.ptx-runestone-container .btn-warning:active:hover,.ptx-runestone-container .open>.dropdown-toggle.btn-warning.focus,.ptx-runestone-container .open>.dropdown-toggle.btn-warning:focus,.ptx-runestone-container .open>.dropdown-toggle.btn-warning:hover,.runestone-sphinx .btn-warning.active.focus,.runestone-sphinx .btn-warning.active:focus,.runestone-sphinx .btn-warning.active:hover,.runestone-sphinx .btn-warning:active.focus,.runestone-sphinx .btn-warning:active:focus,.runestone-sphinx .btn-warning:active:hover,.runestone-sphinx .open>.dropdown-toggle.btn-warning.focus,.runestone-sphinx .open>.dropdown-toggle.btn-warning:focus,.runestone-sphinx .open>.dropdown-toggle.btn-warning:hover{background-color:#d58512;border-color:#985f0d;color:#fff}.ptx-runestone-container .btn-warning.disabled.focus,.ptx-runestone-container .btn-warning.disabled:focus,.ptx-runestone-container .btn-warning.disabled:hover,.ptx-runestone-container .btn-warning[disabled].focus,.ptx-runestone-container .btn-warning[disabled]:focus,.ptx-runestone-container .btn-warning[disabled]:hover,.ptx-runestone-container fieldset[disabled] .btn-warning.focus,.ptx-runestone-container fieldset[disabled] .btn-warning:focus,.ptx-runestone-container fieldset[disabled] .btn-warning:hover,.runestone-sphinx .btn-warning.disabled.focus,.runestone-sphinx .btn-warning.disabled:focus,.runestone-sphinx .btn-warning.disabled:hover,.runestone-sphinx .btn-warning[disabled].focus,.runestone-sphinx .btn-warning[disabled]:focus,.runestone-sphinx .btn-warning[disabled]:hover,.runestone-sphinx fieldset[disabled] .btn-warning.focus,.runestone-sphinx fieldset[disabled] .btn-warning:focus,.runestone-sphinx fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.ptx-runestone-container .btn-warning .badge,.runestone-sphinx .btn-warning .badge{background-color:#fff;color:#f0ad4e}.ptx-runestone-container .btn-danger,.runestone-sphinx .btn-danger{background-color:#d9534f;border-color:#d43f3a;color:#fff}.ptx-runestone-container .btn-danger.focus,.ptx-runestone-container .btn-danger:focus,.runestone-sphinx .btn-danger.focus,.runestone-sphinx .btn-danger:focus{background-color:#c9302c;border-color:#761c19;color:#fff}.ptx-runestone-container .btn-danger:hover,.runestone-sphinx .btn-danger:hover{background-color:#c9302c;border-color:#ac2925;color:#fff}.ptx-runestone-container .btn-danger.active,.ptx-runestone-container .btn-danger:active,.ptx-runestone-container .open>.dropdown-toggle.btn-danger,.runestone-sphinx .btn-danger.active,.runestone-sphinx .btn-danger:active,.runestone-sphinx .open>.dropdown-toggle.btn-danger{background-color:#c9302c;background-image:none;border-color:#ac2925;color:#fff}.ptx-runestone-container .btn-danger.active.focus,.ptx-runestone-container .btn-danger.active:focus,.ptx-runestone-container .btn-danger.active:hover,.ptx-runestone-container .btn-danger:active.focus,.ptx-runestone-container .btn-danger:active:focus,.ptx-runestone-container .btn-danger:active:hover,.ptx-runestone-container .open>.dropdown-toggle.btn-danger.focus,.ptx-runestone-container .open>.dropdown-toggle.btn-danger:focus,.ptx-runestone-container .open>.dropdown-toggle.btn-danger:hover,.runestone-sphinx .btn-danger.active.focus,.runestone-sphinx .btn-danger.active:focus,.runestone-sphinx .btn-danger.active:hover,.runestone-sphinx .btn-danger:active.focus,.runestone-sphinx .btn-danger:active:focus,.runestone-sphinx .btn-danger:active:hover,.runestone-sphinx .open>.dropdown-toggle.btn-danger.focus,.runestone-sphinx .open>.dropdown-toggle.btn-danger:focus,.runestone-sphinx .open>.dropdown-toggle.btn-danger:hover{background-color:#ac2925;border-color:#761c19;color:#fff}.ptx-runestone-container .btn-danger.disabled.focus,.ptx-runestone-container .btn-danger.disabled:focus,.ptx-runestone-container .btn-danger.disabled:hover,.ptx-runestone-container .btn-danger[disabled].focus,.ptx-runestone-container .btn-danger[disabled]:focus,.ptx-runestone-container .btn-danger[disabled]:hover,.ptx-runestone-container fieldset[disabled] .btn-danger.focus,.ptx-runestone-container fieldset[disabled] .btn-danger:focus,.ptx-runestone-container fieldset[disabled] .btn-danger:hover,.runestone-sphinx .btn-danger.disabled.focus,.runestone-sphinx .btn-danger.disabled:focus,.runestone-sphinx .btn-danger.disabled:hover,.runestone-sphinx .btn-danger[disabled].focus,.runestone-sphinx .btn-danger[disabled]:focus,.runestone-sphinx .btn-danger[disabled]:hover,.runestone-sphinx fieldset[disabled] .btn-danger.focus,.runestone-sphinx fieldset[disabled] .btn-danger:focus,.runestone-sphinx fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.ptx-runestone-container .btn-danger .badge,.runestone-sphinx .btn-danger .badge{background-color:#fff;color:#d9534f}.ptx-runestone-container .btn-link,.runestone-sphinx .btn-link{border-radius:0;color:#337ab7;font-weight:400}.ptx-runestone-container .btn-link,.ptx-runestone-container .btn-link.active,.ptx-runestone-container .btn-link:active,.ptx-runestone-container .btn-link[disabled],.ptx-runestone-container fieldset[disabled] .btn-link,.runestone-sphinx .btn-link,.runestone-sphinx .btn-link.active,.runestone-sphinx .btn-link:active,.runestone-sphinx .btn-link[disabled],.runestone-sphinx fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.ptx-runestone-container .btn-link,.ptx-runestone-container .btn-link:active,.ptx-runestone-container .btn-link:focus,.ptx-runestone-container .btn-link:hover,.runestone-sphinx .btn-link,.runestone-sphinx .btn-link:active,.runestone-sphinx .btn-link:focus,.runestone-sphinx .btn-link:hover{border-color:transparent}.ptx-runestone-container .btn-link:focus,.ptx-runestone-container .btn-link:hover,.runestone-sphinx .btn-link:focus,.runestone-sphinx .btn-link:hover{background-color:transparent;color:#23527c;text-decoration:underline}.ptx-runestone-container .btn-link[disabled]:focus,.ptx-runestone-container .btn-link[disabled]:hover,.ptx-runestone-container fieldset[disabled] .btn-link:focus,.ptx-runestone-container fieldset[disabled] .btn-link:hover,.runestone-sphinx .btn-link[disabled]:focus,.runestone-sphinx .btn-link[disabled]:hover,.runestone-sphinx fieldset[disabled] .btn-link:focus,.runestone-sphinx fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.ptx-runestone-container .btn-group-lg>.btn,.ptx-runestone-container .btn-lg,.runestone-sphinx .btn-group-lg>.btn,.runestone-sphinx .btn-lg{border-radius:6px;font-size:18px;line-height:1.3333333;padding:10px 16px}.ptx-runestone-container .btn-group-sm>.btn,.ptx-runestone-container .btn-sm,.runestone-sphinx .btn-group-sm>.btn,.runestone-sphinx .btn-sm{border-radius:3px;font-size:12px;line-height:1.5;padding:5px 10px}.ptx-runestone-container .btn-group-xs>.btn,.ptx-runestone-container .btn-xs,.runestone-sphinx .btn-group-xs>.btn,.runestone-sphinx .btn-xs{border-radius:3px;font-size:12px;line-height:1.5;padding:1px 5px}.ptx-runestone-container .btn-block,.runestone-sphinx .btn-block{display:block;width:100%}.ptx-runestone-container .btn-block+.btn-block,.runestone-sphinx .btn-block+.btn-block{margin-top:5px}.ptx-runestone-container input[type=button].btn-block,.ptx-runestone-container input[type=reset].btn-block,.ptx-runestone-container input[type=submit].btn-block,.runestone-sphinx input[type=button].btn-block,.runestone-sphinx input[type=reset].btn-block,.runestone-sphinx input[type=submit].btn-block{width:100%}.ptx-runestone-container .fade,.runestone-sphinx .fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.ptx-runestone-container .fade.in,.runestone-sphinx .fade.in{opacity:1}.ptx-runestone-container .collapse,.runestone-sphinx .collapse{display:none}.ptx-runestone-container .collapse.in,.runestone-sphinx .collapse.in{display:block}.ptx-runestone-container tr.collapse.in,.runestone-sphinx tr.collapse.in{display:table-row}.ptx-runestone-container tbody.collapse.in,.runestone-sphinx tbody.collapse.in{display:table-row-group}.ptx-runestone-container .collapsing,.runestone-sphinx .collapsing{height:0;overflow:hidden;position:relative;-webkit-transition-duration:.35s;-o-transition-duration:.35s;transition-duration:.35s;-webkit-transition-property:height,visibility;-o-transition-property:height,visibility;transition-property:height,visibility;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease}.ptx-runestone-container .caret,.runestone-sphinx .caret{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px dashed;border-top:4px solid\9;display:inline-block;height:0;margin-left:2px;vertical-align:middle;width:0}.ptx-runestone-container .dropdown,.ptx-runestone-container .dropup,.runestone-sphinx .dropdown,.runestone-sphinx .dropup{position:relative}.ptx-runestone-container .dropdown-toggle:focus,.runestone-sphinx .dropdown-toggle:focus{outline:0}.ptx-runestone-container .dropdown-menu,.runestone-sphinx .dropdown-menu{background-clip:padding-box;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175);display:none;float:left;font-size:14px;left:0;list-style:none;margin:2px 0 0;min-width:160px;padding:5px 0;position:absolute;text-align:left;top:100%;z-index:1000}.ptx-runestone-container .dropdown-menu.pull-right,.runestone-sphinx .dropdown-menu.pull-right{left:auto;right:0}.ptx-runestone-container .dropdown-menu .divider,.runestone-sphinx .dropdown-menu .divider{background-color:#e5e5e5;height:1px;margin:9px 0;overflow:hidden}.ptx-runestone-container .dropdown-menu>li>a,.runestone-sphinx .dropdown-menu>li>a{clear:both;color:#333;display:block;font-weight:400;line-height:1.42857143;padding:3px 20px;white-space:nowrap}.ptx-runestone-container .dropdown-menu>li>a:focus,.ptx-runestone-container .dropdown-menu>li>a:hover,.runestone-sphinx .dropdown-menu>li>a:focus,.runestone-sphinx .dropdown-menu>li>a:hover{background-color:#f5f5f5;color:#262626;text-decoration:none}.ptx-runestone-container .dropdown-menu>.active>a,.ptx-runestone-container .dropdown-menu>.active>a:focus,.ptx-runestone-container .dropdown-menu>.active>a:hover,.runestone-sphinx .dropdown-menu>.active>a,.runestone-sphinx .dropdown-menu>.active>a:focus,.runestone-sphinx .dropdown-menu>.active>a:hover{background-color:#337ab7;color:#fff;outline:0;text-decoration:none}.ptx-runestone-container .dropdown-menu>.disabled>a,.ptx-runestone-container .dropdown-menu>.disabled>a:focus,.ptx-runestone-container .dropdown-menu>.disabled>a:hover,.runestone-sphinx .dropdown-menu>.disabled>a,.runestone-sphinx .dropdown-menu>.disabled>a:focus,.runestone-sphinx .dropdown-menu>.disabled>a:hover{color:#777}.ptx-runestone-container .dropdown-menu>.disabled>a:focus,.ptx-runestone-container .dropdown-menu>.disabled>a:hover,.runestone-sphinx .dropdown-menu>.disabled>a:focus,.runestone-sphinx .dropdown-menu>.disabled>a:hover{background-color:transparent;background-image:none;cursor:not-allowed;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);text-decoration:none}.ptx-runestone-container .open>.dropdown-menu,.runestone-sphinx .open>.dropdown-menu{display:block}.ptx-runestone-container .open>a,.runestone-sphinx .open>a{outline:0}.ptx-runestone-container .dropdown-menu-right,.runestone-sphinx .dropdown-menu-right{left:auto;right:0}.ptx-runestone-container .dropdown-menu-left,.runestone-sphinx .dropdown-menu-left{left:0;right:auto}.ptx-runestone-container .dropdown-header,.runestone-sphinx .dropdown-header{color:#777;display:block;font-size:12px;line-height:1.42857143;padding:3px 20px;white-space:nowrap}.ptx-runestone-container .dropdown-backdrop,.runestone-sphinx .dropdown-backdrop{bottom:0;left:0;position:fixed;right:0;top:0;z-index:990}.ptx-runestone-container .pull-right>.dropdown-menu,.runestone-sphinx .pull-right>.dropdown-menu{left:auto;right:0}.ptx-runestone-container .dropup .caret,.ptx-runestone-container .navbar-fixed-bottom .dropdown .caret,.runestone-sphinx .dropup .caret,.runestone-sphinx .navbar-fixed-bottom .dropdown .caret{border-bottom:4px dashed;border-bottom:4px solid\9;border-top:0;content:""}.ptx-runestone-container .dropup .dropdown-menu,.ptx-runestone-container .navbar-fixed-bottom .dropdown .dropdown-menu,.runestone-sphinx .dropup .dropdown-menu,.runestone-sphinx .navbar-fixed-bottom .dropdown .dropdown-menu{bottom:100%;margin-bottom:2px;top:auto}@media (min-width:768px){.ptx-runestone-container .navbar-right .dropdown-menu,.runestone-sphinx .navbar-right .dropdown-menu{left:auto;right:0}.ptx-runestone-container .navbar-right .dropdown-menu-left,.runestone-sphinx .navbar-right .dropdown-menu-left{left:0;right:auto}}.ptx-runestone-container .btn-group,.ptx-runestone-container .btn-group-vertical,.runestone-sphinx .btn-group,.runestone-sphinx .btn-group-vertical{display:inline-block;position:relative;vertical-align:middle}.ptx-runestone-container .btn-group-vertical>.btn,.ptx-runestone-container .btn-group>.btn,.runestone-sphinx .btn-group-vertical>.btn,.runestone-sphinx .btn-group>.btn{float:left;position:relative}.ptx-runestone-container .btn-group-vertical>.btn.active,.ptx-runestone-container .btn-group-vertical>.btn:active,.ptx-runestone-container .btn-group-vertical>.btn:focus,.ptx-runestone-container .btn-group-vertical>.btn:hover,.ptx-runestone-container .btn-group>.btn.active,.ptx-runestone-container .btn-group>.btn:active,.ptx-runestone-container .btn-group>.btn:focus,.ptx-runestone-container .btn-group>.btn:hover,.runestone-sphinx .btn-group-vertical>.btn.active,.runestone-sphinx .btn-group-vertical>.btn:active,.runestone-sphinx .btn-group-vertical>.btn:focus,.runestone-sphinx .btn-group-vertical>.btn:hover,.runestone-sphinx .btn-group>.btn.active,.runestone-sphinx .btn-group>.btn:active,.runestone-sphinx .btn-group>.btn:focus,.runestone-sphinx .btn-group>.btn:hover{z-index:2}.ptx-runestone-container .btn-group .btn+.btn,.ptx-runestone-container .btn-group .btn+.btn-group,.ptx-runestone-container .btn-group .btn-group+.btn,.ptx-runestone-container .btn-group .btn-group+.btn-group,.runestone-sphinx .btn-group .btn+.btn,.runestone-sphinx .btn-group .btn+.btn-group,.runestone-sphinx .btn-group .btn-group+.btn,.runestone-sphinx .btn-group .btn-group+.btn-group{margin-left:-1px}.ptx-runestone-container .btn-toolbar,.runestone-sphinx .btn-toolbar{margin-left:-5px}.ptx-runestone-container .btn-toolbar .btn,.ptx-runestone-container .btn-toolbar .btn-group,.ptx-runestone-container .btn-toolbar .input-group,.runestone-sphinx .btn-toolbar .btn,.runestone-sphinx .btn-toolbar .btn-group,.runestone-sphinx .btn-toolbar .input-group{float:left}.ptx-runestone-container .btn-toolbar>.btn,.ptx-runestone-container .btn-toolbar>.btn-group,.ptx-runestone-container .btn-toolbar>.input-group,.runestone-sphinx .btn-toolbar>.btn,.runestone-sphinx .btn-toolbar>.btn-group,.runestone-sphinx .btn-toolbar>.input-group{margin-left:5px}.ptx-runestone-container .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle),.runestone-sphinx .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.ptx-runestone-container .btn-group>.btn:first-child,.runestone-sphinx .btn-group>.btn:first-child{margin-left:0}.ptx-runestone-container .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle),.runestone-sphinx .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.ptx-runestone-container .btn-group>.btn:last-child:not(:first-child),.ptx-runestone-container .btn-group>.dropdown-toggle:not(:first-child),.runestone-sphinx .btn-group>.btn:last-child:not(:first-child),.runestone-sphinx .btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.ptx-runestone-container .btn-group>.btn-group,.runestone-sphinx .btn-group>.btn-group{float:left}.ptx-runestone-container .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn,.runestone-sphinx .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.ptx-runestone-container .btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.ptx-runestone-container .btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle,.runestone-sphinx .btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.runestone-sphinx .btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.ptx-runestone-container .btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child,.runestone-sphinx .btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.ptx-runestone-container .btn-group .dropdown-toggle:active,.ptx-runestone-container .btn-group.open .dropdown-toggle,.runestone-sphinx .btn-group .dropdown-toggle:active,.runestone-sphinx .btn-group.open .dropdown-toggle{outline:0}.ptx-runestone-container .btn-group>.btn+.dropdown-toggle,.runestone-sphinx .btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.ptx-runestone-container .btn-group>.btn-lg+.dropdown-toggle,.runestone-sphinx .btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.ptx-runestone-container .btn-group.open .dropdown-toggle,.runestone-sphinx .btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ptx-runestone-container .btn-group.open .dropdown-toggle.btn-link,.runestone-sphinx .btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.ptx-runestone-container .btn .caret,.runestone-sphinx .btn .caret{margin-left:0}.ptx-runestone-container .btn-lg .caret,.runestone-sphinx .btn-lg .caret{border-width:5px 5px 0}.ptx-runestone-container .dropup .btn-lg .caret,.runestone-sphinx .dropup .btn-lg .caret{border-width:0 5px 5px}.ptx-runestone-container .btn-group-vertical>.btn,.ptx-runestone-container .btn-group-vertical>.btn-group,.ptx-runestone-container .btn-group-vertical>.btn-group>.btn,.runestone-sphinx .btn-group-vertical>.btn,.runestone-sphinx .btn-group-vertical>.btn-group,.runestone-sphinx .btn-group-vertical>.btn-group>.btn{display:block;float:none;max-width:100%;width:100%}.ptx-runestone-container .btn-group-vertical>.btn-group>.btn,.runestone-sphinx .btn-group-vertical>.btn-group>.btn{float:none}.ptx-runestone-container .btn-group-vertical>.btn+.btn,.ptx-runestone-container .btn-group-vertical>.btn+.btn-group,.ptx-runestone-container .btn-group-vertical>.btn-group+.btn,.ptx-runestone-container .btn-group-vertical>.btn-group+.btn-group,.runestone-sphinx .btn-group-vertical>.btn+.btn,.runestone-sphinx .btn-group-vertical>.btn+.btn-group,.runestone-sphinx .btn-group-vertical>.btn-group+.btn,.runestone-sphinx .btn-group-vertical>.btn-group+.btn-group{margin-left:0;margin-top:-1px}.ptx-runestone-container .btn-group-vertical>.btn:not(:first-child):not(:last-child),.runestone-sphinx .btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.ptx-runestone-container .btn-group-vertical>.btn:first-child:not(:last-child),.runestone-sphinx .btn-group-vertical>.btn:first-child:not(:last-child){border-bottom-left-radius:0;border-bottom-right-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}.ptx-runestone-container .btn-group-vertical>.btn:last-child:not(:first-child),.runestone-sphinx .btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-top-left-radius:0;border-top-right-radius:0}.ptx-runestone-container .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn,.runestone-sphinx .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.ptx-runestone-container .btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.ptx-runestone-container .btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle,.runestone-sphinx .btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.runestone-sphinx .btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-left-radius:0;border-bottom-right-radius:0}.ptx-runestone-container .btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child,.runestone-sphinx .btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.ptx-runestone-container .btn-group-justified,.runestone-sphinx .btn-group-justified{border-collapse:separate;display:table;table-layout:fixed;width:100%}.ptx-runestone-container .btn-group-justified>.btn,.ptx-runestone-container .btn-group-justified>.btn-group,.runestone-sphinx .btn-group-justified>.btn,.runestone-sphinx .btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.ptx-runestone-container .btn-group-justified>.btn-group .btn,.runestone-sphinx .btn-group-justified>.btn-group .btn{width:100%}.ptx-runestone-container .btn-group-justified>.btn-group .dropdown-menu,.runestone-sphinx .btn-group-justified>.btn-group .dropdown-menu{left:auto}.ptx-runestone-container [data-toggle=buttons]>.btn input[type=checkbox],.ptx-runestone-container [data-toggle=buttons]>.btn input[type=radio],.ptx-runestone-container [data-toggle=buttons]>.btn-group>.btn input[type=checkbox],.ptx-runestone-container [data-toggle=buttons]>.btn-group>.btn input[type=radio],.runestone-sphinx [data-toggle=buttons]>.btn input[type=checkbox],.runestone-sphinx [data-toggle=buttons]>.btn input[type=radio],.runestone-sphinx [data-toggle=buttons]>.btn-group>.btn input[type=checkbox],.runestone-sphinx [data-toggle=buttons]>.btn-group>.btn input[type=radio]{clip:rect(0,0,0,0);pointer-events:none;position:absolute}.ptx-runestone-container .input-group,.runestone-sphinx .input-group{border-collapse:separate;display:table;position:relative}.ptx-runestone-container .input-group[class*=col-],.runestone-sphinx .input-group[class*=col-]{float:none;padding-left:0;padding-right:0}.ptx-runestone-container .input-group .form-control,.runestone-sphinx .input-group .form-control{float:left;margin-bottom:0;position:relative;width:100%;z-index:2}.ptx-runestone-container .input-group .form-control:focus,.runestone-sphinx .input-group .form-control:focus{z-index:3}.ptx-runestone-container .input-group-lg>.form-control,.ptx-runestone-container .input-group-lg>.input-group-addon,.ptx-runestone-container .input-group-lg>.input-group-btn>.btn,.runestone-sphinx .input-group-lg>.form-control,.runestone-sphinx .input-group-lg>.input-group-addon,.runestone-sphinx .input-group-lg>.input-group-btn>.btn{border-radius:6px;font-size:18px;height:46px;line-height:1.3333333;padding:10px 16px}.ptx-runestone-container select.input-group-lg>.form-control,.ptx-runestone-container select.input-group-lg>.input-group-addon,.ptx-runestone-container select.input-group-lg>.input-group-btn>.btn,.runestone-sphinx select.input-group-lg>.form-control,.runestone-sphinx select.input-group-lg>.input-group-addon,.runestone-sphinx select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}.ptx-runestone-container select[multiple].input-group-lg>.form-control,.ptx-runestone-container select[multiple].input-group-lg>.input-group-addon,.ptx-runestone-container select[multiple].input-group-lg>.input-group-btn>.btn,.ptx-runestone-container textarea.input-group-lg>.form-control,.ptx-runestone-container textarea.input-group-lg>.input-group-addon,.ptx-runestone-container textarea.input-group-lg>.input-group-btn>.btn,.runestone-sphinx select[multiple].input-group-lg>.form-control,.runestone-sphinx select[multiple].input-group-lg>.input-group-addon,.runestone-sphinx select[multiple].input-group-lg>.input-group-btn>.btn,.runestone-sphinx textarea.input-group-lg>.form-control,.runestone-sphinx textarea.input-group-lg>.input-group-addon,.runestone-sphinx textarea.input-group-lg>.input-group-btn>.btn{height:auto}.ptx-runestone-container .input-group-sm>.form-control,.ptx-runestone-container .input-group-sm>.input-group-addon,.ptx-runestone-container .input-group-sm>.input-group-btn>.btn,.runestone-sphinx .input-group-sm>.form-control,.runestone-sphinx .input-group-sm>.input-group-addon,.runestone-sphinx .input-group-sm>.input-group-btn>.btn{border-radius:3px;font-size:12px;height:30px;line-height:1.5;padding:5px 10px}.ptx-runestone-container select.input-group-sm>.form-control,.ptx-runestone-container select.input-group-sm>.input-group-addon,.ptx-runestone-container select.input-group-sm>.input-group-btn>.btn,.runestone-sphinx select.input-group-sm>.form-control,.runestone-sphinx select.input-group-sm>.input-group-addon,.runestone-sphinx select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}.ptx-runestone-container select[multiple].input-group-sm>.form-control,.ptx-runestone-container select[multiple].input-group-sm>.input-group-addon,.ptx-runestone-container select[multiple].input-group-sm>.input-group-btn>.btn,.ptx-runestone-container textarea.input-group-sm>.form-control,.ptx-runestone-container textarea.input-group-sm>.input-group-addon,.ptx-runestone-container textarea.input-group-sm>.input-group-btn>.btn,.runestone-sphinx select[multiple].input-group-sm>.form-control,.runestone-sphinx select[multiple].input-group-sm>.input-group-addon,.runestone-sphinx select[multiple].input-group-sm>.input-group-btn>.btn,.runestone-sphinx textarea.input-group-sm>.form-control,.runestone-sphinx textarea.input-group-sm>.input-group-addon,.runestone-sphinx textarea.input-group-sm>.input-group-btn>.btn{height:auto}.ptx-runestone-container .input-group .form-control,.ptx-runestone-container .input-group-addon,.ptx-runestone-container .input-group-btn,.runestone-sphinx .input-group .form-control,.runestone-sphinx .input-group-addon,.runestone-sphinx .input-group-btn{display:table-cell}.ptx-runestone-container .input-group .form-control:not(:first-child):not(:last-child),.ptx-runestone-container .input-group-addon:not(:first-child):not(:last-child),.ptx-runestone-container .input-group-btn:not(:first-child):not(:last-child),.runestone-sphinx .input-group .form-control:not(:first-child):not(:last-child),.runestone-sphinx .input-group-addon:not(:first-child):not(:last-child),.runestone-sphinx .input-group-btn:not(:first-child):not(:last-child){border-radius:0}.ptx-runestone-container .input-group-addon,.ptx-runestone-container .input-group-btn,.runestone-sphinx .input-group-addon,.runestone-sphinx .input-group-btn{vertical-align:middle;white-space:nowrap;width:1%}.ptx-runestone-container .input-group-addon,.runestone-sphinx .input-group-addon{background-color:#eee;border:1px solid #ccc;border-radius:4px;color:#555;font-size:14px;font-weight:400;line-height:1;padding:6px 12px;text-align:center}.ptx-runestone-container .input-group-addon.input-sm,.runestone-sphinx .input-group-addon.input-sm{border-radius:3px;font-size:12px;padding:5px 10px}.ptx-runestone-container .input-group-addon.input-lg,.runestone-sphinx .input-group-addon.input-lg{border-radius:6px;font-size:18px;padding:10px 16px}.ptx-runestone-container .input-group-addon input[type=checkbox],.ptx-runestone-container .input-group-addon input[type=radio],.runestone-sphinx .input-group-addon input[type=checkbox],.runestone-sphinx .input-group-addon input[type=radio]{margin-top:0}.ptx-runestone-container .input-group .form-control:first-child,.ptx-runestone-container .input-group-addon:first-child,.ptx-runestone-container .input-group-btn:first-child>.btn,.ptx-runestone-container .input-group-btn:first-child>.btn-group>.btn,.ptx-runestone-container .input-group-btn:first-child>.dropdown-toggle,.ptx-runestone-container .input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.ptx-runestone-container .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.runestone-sphinx .input-group .form-control:first-child,.runestone-sphinx .input-group-addon:first-child,.runestone-sphinx .input-group-btn:first-child>.btn,.runestone-sphinx .input-group-btn:first-child>.btn-group>.btn,.runestone-sphinx .input-group-btn:first-child>.dropdown-toggle,.runestone-sphinx .input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.runestone-sphinx .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.ptx-runestone-container .input-group-addon:first-child,.runestone-sphinx .input-group-addon:first-child{border-right:0}.ptx-runestone-container .input-group .form-control:last-child,.ptx-runestone-container .input-group-addon:last-child,.ptx-runestone-container .input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.ptx-runestone-container .input-group-btn:first-child>.btn:not(:first-child),.ptx-runestone-container .input-group-btn:last-child>.btn,.ptx-runestone-container .input-group-btn:last-child>.btn-group>.btn,.ptx-runestone-container .input-group-btn:last-child>.dropdown-toggle,.runestone-sphinx .input-group .form-control:last-child,.runestone-sphinx .input-group-addon:last-child,.runestone-sphinx .input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.runestone-sphinx .input-group-btn:first-child>.btn:not(:first-child),.runestone-sphinx .input-group-btn:last-child>.btn,.runestone-sphinx .input-group-btn:last-child>.btn-group>.btn,.runestone-sphinx .input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.ptx-runestone-container .input-group-addon:last-child,.runestone-sphinx .input-group-addon:last-child{border-left:0}.ptx-runestone-container .input-group-btn,.runestone-sphinx .input-group-btn{font-size:0;position:relative;white-space:nowrap}.ptx-runestone-container .input-group-btn>.btn,.runestone-sphinx .input-group-btn>.btn{position:relative}.ptx-runestone-container .input-group-btn>.btn+.btn,.runestone-sphinx .input-group-btn>.btn+.btn{margin-left:-1px}.ptx-runestone-container .input-group-btn>.btn:active,.ptx-runestone-container .input-group-btn>.btn:focus,.ptx-runestone-container .input-group-btn>.btn:hover,.runestone-sphinx .input-group-btn>.btn:active,.runestone-sphinx .input-group-btn>.btn:focus,.runestone-sphinx .input-group-btn>.btn:hover{z-index:2}.ptx-runestone-container .input-group-btn:first-child>.btn,.ptx-runestone-container .input-group-btn:first-child>.btn-group,.runestone-sphinx .input-group-btn:first-child>.btn,.runestone-sphinx .input-group-btn:first-child>.btn-group{margin-right:-1px}.ptx-runestone-container .input-group-btn:last-child>.btn,.ptx-runestone-container .input-group-btn:last-child>.btn-group,.runestone-sphinx .input-group-btn:last-child>.btn,.runestone-sphinx .input-group-btn:last-child>.btn-group{margin-left:-1px;z-index:2}.ptx-runestone-container .nav,.runestone-sphinx .nav{list-style:none;margin-bottom:0;padding-left:0}.ptx-runestone-container .nav>li,.runestone-sphinx .nav>li{display:block;position:relative}.ptx-runestone-container .nav>li>a,.runestone-sphinx .nav>li>a{display:block;padding:10px 15px;position:relative}.ptx-runestone-container .nav>li>a:focus,.ptx-runestone-container .nav>li>a:hover,.runestone-sphinx .nav>li>a:focus,.runestone-sphinx .nav>li>a:hover{background-color:#eee;text-decoration:none}.ptx-runestone-container .nav>li.disabled>a,.runestone-sphinx .nav>li.disabled>a{color:#777}.ptx-runestone-container .nav>li.disabled>a:focus,.ptx-runestone-container .nav>li.disabled>a:hover,.runestone-sphinx .nav>li.disabled>a:focus,.runestone-sphinx .nav>li.disabled>a:hover{background-color:transparent;color:#777;cursor:not-allowed;text-decoration:none}.ptx-runestone-container .nav .open>a,.ptx-runestone-container .nav .open>a:focus,.ptx-runestone-container .nav .open>a:hover,.runestone-sphinx .nav .open>a,.runestone-sphinx .nav .open>a:focus,.runestone-sphinx .nav .open>a:hover{background-color:#eee;border-color:#337ab7}.ptx-runestone-container .nav .nav-divider,.runestone-sphinx .nav .nav-divider{background-color:#e5e5e5;height:1px;margin:9px 0;overflow:hidden}.ptx-runestone-container .nav>li>a>img,.runestone-sphinx .nav>li>a>img{max-width:none}.ptx-runestone-container .nav-tabs,.runestone-sphinx .nav-tabs{border-bottom:1px solid #ddd}.ptx-runestone-container .nav-tabs>li,.runestone-sphinx .nav-tabs>li{float:left;margin-bottom:-1px}.ptx-runestone-container .nav-tabs>li>a,.runestone-sphinx .nav-tabs>li>a{border:1px solid transparent;border-radius:4px 4px 0 0;line-height:1.42857143;margin-right:2px}.ptx-runestone-container .nav-tabs>li>a:hover,.runestone-sphinx .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.ptx-runestone-container .nav-tabs>li.active>a,.ptx-runestone-container .nav-tabs>li.active>a:focus,.ptx-runestone-container .nav-tabs>li.active>a:hover,.runestone-sphinx .nav-tabs>li.active>a,.runestone-sphinx .nav-tabs>li.active>a:focus,.runestone-sphinx .nav-tabs>li.active>a:hover{background-color:#fff;border:1px solid;border-color:#ddd #ddd transparent;color:#555;cursor:default}.ptx-runestone-container .nav-tabs.nav-justified,.runestone-sphinx .nav-tabs.nav-justified{border-bottom:0;width:100%}.ptx-runestone-container .nav-tabs.nav-justified>li,.runestone-sphinx .nav-tabs.nav-justified>li{float:none}.ptx-runestone-container .nav-tabs.nav-justified>li>a,.runestone-sphinx .nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.ptx-runestone-container .nav-tabs.nav-justified>.dropdown .dropdown-menu,.runestone-sphinx .nav-tabs.nav-justified>.dropdown .dropdown-menu{left:auto;top:auto}@media (min-width:768px){.ptx-runestone-container .nav-tabs.nav-justified>li,.runestone-sphinx .nav-tabs.nav-justified>li{display:table-cell;width:1%}.ptx-runestone-container .nav-tabs.nav-justified>li>a,.runestone-sphinx .nav-tabs.nav-justified>li>a{margin-bottom:0}}.ptx-runestone-container .nav-tabs.nav-justified>li>a,.runestone-sphinx .nav-tabs.nav-justified>li>a{border-radius:4px;margin-right:0}.ptx-runestone-container .nav-tabs.nav-justified>.active>a,.ptx-runestone-container .nav-tabs.nav-justified>.active>a:focus,.ptx-runestone-container .nav-tabs.nav-justified>.active>a:hover,.runestone-sphinx .nav-tabs.nav-justified>.active>a,.runestone-sphinx .nav-tabs.nav-justified>.active>a:focus,.runestone-sphinx .nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.ptx-runestone-container .nav-tabs.nav-justified>li>a,.runestone-sphinx .nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.ptx-runestone-container .nav-tabs.nav-justified>.active>a,.ptx-runestone-container .nav-tabs.nav-justified>.active>a:focus,.ptx-runestone-container .nav-tabs.nav-justified>.active>a:hover,.runestone-sphinx .nav-tabs.nav-justified>.active>a,.runestone-sphinx .nav-tabs.nav-justified>.active>a:focus,.runestone-sphinx .nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.ptx-runestone-container .nav-pills>li,.runestone-sphinx .nav-pills>li{float:left}.ptx-runestone-container .nav-pills>li>a,.runestone-sphinx .nav-pills>li>a{border-radius:4px}.ptx-runestone-container .nav-pills>li+li,.runestone-sphinx .nav-pills>li+li{margin-left:2px}.ptx-runestone-container .nav-pills>li.active>a,.ptx-runestone-container .nav-pills>li.active>a:focus,.ptx-runestone-container .nav-pills>li.active>a:hover,.runestone-sphinx .nav-pills>li.active>a,.runestone-sphinx .nav-pills>li.active>a:focus,.runestone-sphinx .nav-pills>li.active>a:hover{background-color:#337ab7;color:#fff}.ptx-runestone-container .nav-stacked>li,.runestone-sphinx .nav-stacked>li{float:none}.ptx-runestone-container .nav-stacked>li+li,.runestone-sphinx .nav-stacked>li+li{margin-left:0;margin-top:2px}.ptx-runestone-container .nav-justified,.runestone-sphinx .nav-justified{width:100%}.ptx-runestone-container .nav-justified>li,.runestone-sphinx .nav-justified>li{float:none}.ptx-runestone-container .nav-justified>li>a,.runestone-sphinx .nav-justified>li>a{margin-bottom:5px;text-align:center}.ptx-runestone-container .nav-justified>.dropdown .dropdown-menu,.runestone-sphinx .nav-justified>.dropdown .dropdown-menu{left:auto;top:auto}@media (min-width:768px){.ptx-runestone-container .nav-justified>li,.runestone-sphinx .nav-justified>li{display:table-cell;width:1%}.ptx-runestone-container .nav-justified>li>a,.runestone-sphinx .nav-justified>li>a{margin-bottom:0}}.ptx-runestone-container .nav-tabs-justified,.runestone-sphinx .nav-tabs-justified{border-bottom:0}.ptx-runestone-container .nav-tabs-justified>li>a,.runestone-sphinx .nav-tabs-justified>li>a{border-radius:4px;margin-right:0}.ptx-runestone-container .nav-tabs-justified>.active>a,.ptx-runestone-container .nav-tabs-justified>.active>a:focus,.ptx-runestone-container .nav-tabs-justified>.active>a:hover,.runestone-sphinx .nav-tabs-justified>.active>a,.runestone-sphinx .nav-tabs-justified>.active>a:focus,.runestone-sphinx .nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.ptx-runestone-container .nav-tabs-justified>li>a,.runestone-sphinx .nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.ptx-runestone-container .nav-tabs-justified>.active>a,.ptx-runestone-container .nav-tabs-justified>.active>a:focus,.ptx-runestone-container .nav-tabs-justified>.active>a:hover,.runestone-sphinx .nav-tabs-justified>.active>a,.runestone-sphinx .nav-tabs-justified>.active>a:focus,.runestone-sphinx .nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.ptx-runestone-container .tab-content>.tab-pane,.runestone-sphinx .tab-content>.tab-pane{display:none}.ptx-runestone-container .tab-content>.active,.runestone-sphinx .tab-content>.active{display:block}.ptx-runestone-container .nav-tabs .dropdown-menu,.runestone-sphinx .nav-tabs .dropdown-menu{border-top-left-radius:0;border-top-right-radius:0;margin-top:-1px}.ptx-runestone-container .navbar,.runestone-sphinx .navbar{border:1px solid transparent;margin-bottom:20px;min-height:50px;position:relative}@media (min-width:768px){.ptx-runestone-container .navbar,.runestone-sphinx .navbar{border-radius:4px}.ptx-runestone-container .navbar-header,.runestone-sphinx .navbar-header{float:left}}.ptx-runestone-container .navbar-collapse,.runestone-sphinx .navbar-collapse{-webkit-overflow-scrolling:touch;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1);overflow-x:visible;padding-left:15px;padding-right:15px}.ptx-runestone-container .navbar-collapse.in,.runestone-sphinx .navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.ptx-runestone-container .navbar-collapse,.runestone-sphinx .navbar-collapse{border-top:0;-webkit-box-shadow:none;box-shadow:none;width:auto}.ptx-runestone-container .navbar-collapse.collapse,.runestone-sphinx .navbar-collapse.collapse{display:block!important;height:auto!important;overflow:visible!important;padding-bottom:0}.ptx-runestone-container .navbar-collapse.in,.runestone-sphinx .navbar-collapse.in{overflow-y:visible}.ptx-runestone-container .navbar-fixed-bottom .navbar-collapse,.ptx-runestone-container .navbar-fixed-top .navbar-collapse,.ptx-runestone-container .navbar-static-top .navbar-collapse,.runestone-sphinx .navbar-fixed-bottom .navbar-collapse,.runestone-sphinx .navbar-fixed-top .navbar-collapse,.runestone-sphinx .navbar-static-top .navbar-collapse{padding-left:0;padding-right:0}}.ptx-runestone-container .navbar-fixed-bottom,.ptx-runestone-container .navbar-fixed-top,.runestone-sphinx .navbar-fixed-bottom,.runestone-sphinx .navbar-fixed-top{left:0;position:fixed;right:0;z-index:1030}.ptx-runestone-container .navbar-fixed-bottom .navbar-collapse,.ptx-runestone-container .navbar-fixed-top .navbar-collapse,.runestone-sphinx .navbar-fixed-bottom .navbar-collapse,.runestone-sphinx .navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.ptx-runestone-container .navbar-fixed-bottom .navbar-collapse,.ptx-runestone-container .navbar-fixed-top .navbar-collapse,.runestone-sphinx .navbar-fixed-bottom .navbar-collapse,.runestone-sphinx .navbar-fixed-top .navbar-collapse{max-height:200px}}@media (min-width:768px){.ptx-runestone-container .navbar-fixed-bottom,.ptx-runestone-container .navbar-fixed-top,.runestone-sphinx .navbar-fixed-bottom,.runestone-sphinx .navbar-fixed-top{border-radius:0}}.ptx-runestone-container .navbar-fixed-top,.runestone-sphinx .navbar-fixed-top{border-width:0 0 1px;top:0}.ptx-runestone-container .navbar-fixed-bottom,.runestone-sphinx .navbar-fixed-bottom{border-width:1px 0 0;bottom:0;margin-bottom:0}.ptx-runestone-container .container-fluid>.navbar-collapse,.ptx-runestone-container .container-fluid>.navbar-header,.ptx-runestone-container .container>.navbar-collapse,.ptx-runestone-container .container>.navbar-header,.runestone-sphinx .container-fluid>.navbar-collapse,.runestone-sphinx .container-fluid>.navbar-header,.runestone-sphinx .container>.navbar-collapse,.runestone-sphinx .container>.navbar-header{margin-left:-15px;margin-right:-15px}@media (min-width:768px){.ptx-runestone-container .container-fluid>.navbar-collapse,.ptx-runestone-container .container-fluid>.navbar-header,.ptx-runestone-container .container>.navbar-collapse,.ptx-runestone-container .container>.navbar-header,.runestone-sphinx .container-fluid>.navbar-collapse,.runestone-sphinx .container-fluid>.navbar-header,.runestone-sphinx .container>.navbar-collapse,.runestone-sphinx .container>.navbar-header{margin-left:0;margin-right:0}}.ptx-runestone-container .navbar-static-top,.runestone-sphinx .navbar-static-top{border-width:0 0 1px;z-index:1000}@media (min-width:768px){.ptx-runestone-container .navbar-static-top,.runestone-sphinx .navbar-static-top{border-radius:0}}.ptx-runestone-container .navbar-brand,.runestone-sphinx .navbar-brand{float:left;font-size:18px;height:50px;line-height:20px;padding:15px}.ptx-runestone-container .navbar-brand:focus,.ptx-runestone-container .navbar-brand:hover,.runestone-sphinx .navbar-brand:focus,.runestone-sphinx .navbar-brand:hover{text-decoration:none}.ptx-runestone-container .navbar-brand>img,.runestone-sphinx .navbar-brand>img{display:block}@media (min-width:768px){.ptx-runestone-container .navbar>.container .navbar-brand,.ptx-runestone-container .navbar>.container-fluid .navbar-brand,.runestone-sphinx .navbar>.container .navbar-brand,.runestone-sphinx .navbar>.container-fluid .navbar-brand{margin-left:-15px}}.ptx-runestone-container .navbar-toggle,.runestone-sphinx .navbar-toggle{background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px;float:right;margin-bottom:8px;margin-right:15px;margin-top:8px;padding:9px 10px;position:relative}.ptx-runestone-container .navbar-toggle:focus,.runestone-sphinx .navbar-toggle:focus{outline:0}.ptx-runestone-container .navbar-toggle .icon-bar,.runestone-sphinx .navbar-toggle .icon-bar{border-radius:1px;display:block;height:2px;width:22px}.ptx-runestone-container .navbar-toggle .icon-bar+.icon-bar,.runestone-sphinx .navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.ptx-runestone-container .navbar-toggle,.runestone-sphinx .navbar-toggle{display:none}}.ptx-runestone-container .navbar-nav,.runestone-sphinx .navbar-nav{margin:7.5px -15px}.ptx-runestone-container .navbar-nav>li>a,.runestone-sphinx .navbar-nav>li>a{line-height:20px;padding-bottom:10px;padding-top:10px}@media (max-width:767px){.ptx-runestone-container .navbar-nav .open .dropdown-menu,.runestone-sphinx .navbar-nav .open .dropdown-menu{background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none;float:none;margin-top:0;position:static;width:auto}.ptx-runestone-container .navbar-nav .open .dropdown-menu .dropdown-header,.ptx-runestone-container .navbar-nav .open .dropdown-menu>li>a,.runestone-sphinx .navbar-nav .open .dropdown-menu .dropdown-header,.runestone-sphinx .navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.ptx-runestone-container .navbar-nav .open .dropdown-menu>li>a,.runestone-sphinx .navbar-nav .open .dropdown-menu>li>a{line-height:20px}.ptx-runestone-container .navbar-nav .open .dropdown-menu>li>a:focus,.ptx-runestone-container .navbar-nav .open .dropdown-menu>li>a:hover,.runestone-sphinx .navbar-nav .open .dropdown-menu>li>a:focus,.runestone-sphinx .navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.ptx-runestone-container .navbar-nav,.runestone-sphinx .navbar-nav{float:left;margin:0}.ptx-runestone-container .navbar-nav>li,.runestone-sphinx .navbar-nav>li{float:left}.ptx-runestone-container .navbar-nav>li>a,.runestone-sphinx .navbar-nav>li>a{padding-bottom:15px;padding-top:15px}}.ptx-runestone-container .navbar-form,.runestone-sphinx .navbar-form{border-bottom:1px solid transparent;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1),0 1px 0 hsla(0,0%,100%,.1);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1),0 1px 0 hsla(0,0%,100%,.1);margin:8px -15px;padding:10px 15px}@media (min-width:768px){.ptx-runestone-container .navbar-form .form-group,.runestone-sphinx .navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.ptx-runestone-container .navbar-form .form-control,.runestone-sphinx .navbar-form .form-control{display:inline-block;vertical-align:middle;width:auto}.ptx-runestone-container .navbar-form .form-control-static,.runestone-sphinx .navbar-form .form-control-static{display:inline-block}.ptx-runestone-container .navbar-form .input-group,.runestone-sphinx .navbar-form .input-group{display:inline-table;vertical-align:middle}.ptx-runestone-container .navbar-form .input-group .form-control,.ptx-runestone-container .navbar-form .input-group .input-group-addon,.ptx-runestone-container .navbar-form .input-group .input-group-btn,.runestone-sphinx .navbar-form .input-group .form-control,.runestone-sphinx .navbar-form .input-group .input-group-addon,.runestone-sphinx .navbar-form .input-group .input-group-btn{width:auto}.ptx-runestone-container .navbar-form .input-group>.form-control,.runestone-sphinx .navbar-form .input-group>.form-control{width:100%}.ptx-runestone-container .navbar-form .control-label,.runestone-sphinx .navbar-form .control-label{margin-bottom:0;vertical-align:middle}.ptx-runestone-container .navbar-form .checkbox,.ptx-runestone-container .navbar-form .radio,.runestone-sphinx .navbar-form .checkbox,.runestone-sphinx .navbar-form .radio{display:inline-block;margin-bottom:0;margin-top:0;vertical-align:middle}.ptx-runestone-container .navbar-form .checkbox label,.ptx-runestone-container .navbar-form .radio label,.runestone-sphinx .navbar-form .checkbox label,.runestone-sphinx .navbar-form .radio label{padding-left:0}.ptx-runestone-container .navbar-form .checkbox input[type=checkbox],.ptx-runestone-container .navbar-form .radio input[type=radio],.runestone-sphinx .navbar-form .checkbox input[type=checkbox],.runestone-sphinx .navbar-form .radio input[type=radio]{margin-left:0;position:relative}.ptx-runestone-container .navbar-form .has-feedback .form-control-feedback,.runestone-sphinx .navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.ptx-runestone-container .navbar-form .form-group,.runestone-sphinx .navbar-form .form-group{margin-bottom:5px}.ptx-runestone-container .navbar-form .form-group:last-child,.runestone-sphinx .navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.ptx-runestone-container .navbar-form,.runestone-sphinx .navbar-form{border:0;-webkit-box-shadow:none;box-shadow:none;margin-left:0;margin-right:0;padding-bottom:0;padding-top:0;width:auto}}.ptx-runestone-container .navbar-nav>li>.dropdown-menu,.runestone-sphinx .navbar-nav>li>.dropdown-menu{border-top-left-radius:0;border-top-right-radius:0;margin-top:0}.ptx-runestone-container .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu,.runestone-sphinx .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-left-radius:0;border-bottom-right-radius:0;border-top-left-radius:4px;border-top-right-radius:4px;margin-bottom:0}.ptx-runestone-container .navbar-btn,.runestone-sphinx .navbar-btn{margin-bottom:8px;margin-top:8px}.ptx-runestone-container .navbar-btn.btn-sm,.runestone-sphinx .navbar-btn.btn-sm{margin-bottom:10px;margin-top:10px}.ptx-runestone-container .navbar-btn.btn-xs,.runestone-sphinx .navbar-btn.btn-xs{margin-bottom:14px;margin-top:14px}.ptx-runestone-container .navbar-text,.runestone-sphinx .navbar-text{margin-bottom:15px;margin-top:15px}@media (min-width:768px){.ptx-runestone-container .navbar-text,.runestone-sphinx .navbar-text{float:left;margin-left:15px;margin-right:15px}.ptx-runestone-container .navbar-left,.runestone-sphinx .navbar-left{float:left!important}.ptx-runestone-container .navbar-right,.runestone-sphinx .navbar-right{float:right!important;margin-right:-15px}.ptx-runestone-container .navbar-right~.navbar-right,.runestone-sphinx .navbar-right~.navbar-right{margin-right:0}}.ptx-runestone-container .navbar-default,.runestone-sphinx .navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.ptx-runestone-container .navbar-default .navbar-brand,.runestone-sphinx .navbar-default .navbar-brand{color:#777}.ptx-runestone-container .navbar-default .navbar-brand:focus,.ptx-runestone-container .navbar-default .navbar-brand:hover,.runestone-sphinx .navbar-default .navbar-brand:focus,.runestone-sphinx .navbar-default .navbar-brand:hover{background-color:transparent;color:#5e5e5e}.ptx-runestone-container .navbar-default .navbar-nav>li>a,.ptx-runestone-container .navbar-default .navbar-text,.runestone-sphinx .navbar-default .navbar-nav>li>a,.runestone-sphinx .navbar-default .navbar-text{color:#777}.ptx-runestone-container .navbar-default .navbar-nav>li>a:focus,.ptx-runestone-container .navbar-default .navbar-nav>li>a:hover,.runestone-sphinx .navbar-default .navbar-nav>li>a:focus,.runestone-sphinx .navbar-default .navbar-nav>li>a:hover{background-color:transparent;color:#333}.ptx-runestone-container .navbar-default .navbar-nav>.active>a,.ptx-runestone-container .navbar-default .navbar-nav>.active>a:focus,.ptx-runestone-container .navbar-default .navbar-nav>.active>a:hover,.runestone-sphinx .navbar-default .navbar-nav>.active>a,.runestone-sphinx .navbar-default .navbar-nav>.active>a:focus,.runestone-sphinx .navbar-default .navbar-nav>.active>a:hover{background-color:#e7e7e7;color:#555}.ptx-runestone-container .navbar-default .navbar-nav>.disabled>a,.ptx-runestone-container .navbar-default .navbar-nav>.disabled>a:focus,.ptx-runestone-container .navbar-default .navbar-nav>.disabled>a:hover,.runestone-sphinx .navbar-default .navbar-nav>.disabled>a,.runestone-sphinx .navbar-default .navbar-nav>.disabled>a:focus,.runestone-sphinx .navbar-default .navbar-nav>.disabled>a:hover{background-color:transparent;color:#ccc}.ptx-runestone-container .navbar-default .navbar-nav>.open>a,.ptx-runestone-container .navbar-default .navbar-nav>.open>a:focus,.ptx-runestone-container .navbar-default .navbar-nav>.open>a:hover,.runestone-sphinx .navbar-default .navbar-nav>.open>a,.runestone-sphinx .navbar-default .navbar-nav>.open>a:focus,.runestone-sphinx .navbar-default .navbar-nav>.open>a:hover{background-color:#e7e7e7;color:#555}@media (max-width:767px){.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>li>a,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{background-color:transparent;color:#333}.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>.active>a,.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>.active>a,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{background-color:#e7e7e7;color:#555}.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{background-color:transparent;color:#ccc}}.ptx-runestone-container .navbar-default .navbar-toggle,.runestone-sphinx .navbar-default .navbar-toggle{border-color:#ddd}.ptx-runestone-container .navbar-default .navbar-toggle:focus,.ptx-runestone-container .navbar-default .navbar-toggle:hover,.runestone-sphinx .navbar-default .navbar-toggle:focus,.runestone-sphinx .navbar-default .navbar-toggle:hover{background-color:#ddd}.ptx-runestone-container .navbar-default .navbar-toggle .icon-bar,.runestone-sphinx .navbar-default .navbar-toggle .icon-bar{background-color:#888}.ptx-runestone-container .navbar-default .navbar-collapse,.ptx-runestone-container .navbar-default .navbar-form,.runestone-sphinx .navbar-default .navbar-collapse,.runestone-sphinx .navbar-default .navbar-form{border-color:#e7e7e7}.ptx-runestone-container .navbar-default .navbar-link,.runestone-sphinx .navbar-default .navbar-link{color:#777}.ptx-runestone-container .navbar-default .navbar-link:hover,.runestone-sphinx .navbar-default .navbar-link:hover{color:#333}.ptx-runestone-container .navbar-default .btn-link,.runestone-sphinx .navbar-default .btn-link{color:#777}.ptx-runestone-container .navbar-default .btn-link:focus,.ptx-runestone-container .navbar-default .btn-link:hover,.runestone-sphinx .navbar-default .btn-link:focus,.runestone-sphinx .navbar-default .btn-link:hover{color:#333}.ptx-runestone-container .navbar-default .btn-link[disabled]:focus,.ptx-runestone-container .navbar-default .btn-link[disabled]:hover,.ptx-runestone-container fieldset[disabled] .navbar-default .btn-link:focus,.ptx-runestone-container fieldset[disabled] .navbar-default .btn-link:hover,.runestone-sphinx .navbar-default .btn-link[disabled]:focus,.runestone-sphinx .navbar-default .btn-link[disabled]:hover,.runestone-sphinx fieldset[disabled] .navbar-default .btn-link:focus,.runestone-sphinx fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.ptx-runestone-container .navbar-inverse,.runestone-sphinx .navbar-inverse{background-color:#222;border-color:#080808}.ptx-runestone-container .navbar-inverse .navbar-brand,.runestone-sphinx .navbar-inverse .navbar-brand{color:#9d9d9d}.ptx-runestone-container .navbar-inverse .navbar-brand:focus,.ptx-runestone-container .navbar-inverse .navbar-brand:hover,.runestone-sphinx .navbar-inverse .navbar-brand:focus,.runestone-sphinx .navbar-inverse .navbar-brand:hover{background-color:transparent;color:#fff}.ptx-runestone-container .navbar-inverse .navbar-nav>li>a,.ptx-runestone-container .navbar-inverse .navbar-text,.runestone-sphinx .navbar-inverse .navbar-nav>li>a,.runestone-sphinx .navbar-inverse .navbar-text{color:#9d9d9d}.ptx-runestone-container .navbar-inverse .navbar-nav>li>a:focus,.ptx-runestone-container .navbar-inverse .navbar-nav>li>a:hover,.runestone-sphinx .navbar-inverse .navbar-nav>li>a:focus,.runestone-sphinx .navbar-inverse .navbar-nav>li>a:hover{background-color:transparent;color:#fff}.ptx-runestone-container .navbar-inverse .navbar-nav>.active>a,.ptx-runestone-container .navbar-inverse .navbar-nav>.active>a:focus,.ptx-runestone-container .navbar-inverse .navbar-nav>.active>a:hover,.runestone-sphinx .navbar-inverse .navbar-nav>.active>a,.runestone-sphinx .navbar-inverse .navbar-nav>.active>a:focus,.runestone-sphinx .navbar-inverse .navbar-nav>.active>a:hover{background-color:#080808;color:#fff}.ptx-runestone-container .navbar-inverse .navbar-nav>.disabled>a,.ptx-runestone-container .navbar-inverse .navbar-nav>.disabled>a:focus,.ptx-runestone-container .navbar-inverse .navbar-nav>.disabled>a:hover,.runestone-sphinx .navbar-inverse .navbar-nav>.disabled>a,.runestone-sphinx .navbar-inverse .navbar-nav>.disabled>a:focus,.runestone-sphinx .navbar-inverse .navbar-nav>.disabled>a:hover{background-color:transparent;color:#444}.ptx-runestone-container .navbar-inverse .navbar-nav>.open>a,.ptx-runestone-container .navbar-inverse .navbar-nav>.open>a:focus,.ptx-runestone-container .navbar-inverse .navbar-nav>.open>a:hover,.runestone-sphinx .navbar-inverse .navbar-nav>.open>a,.runestone-sphinx .navbar-inverse .navbar-nav>.open>a:focus,.runestone-sphinx .navbar-inverse .navbar-nav>.open>a:hover{background-color:#080808;color:#fff}@media (max-width:767px){.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu .divider,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>li>a,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{background-color:transparent;color:#fff}.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{background-color:#080808;color:#fff}.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{background-color:transparent;color:#444}}.ptx-runestone-container .navbar-inverse .navbar-toggle,.runestone-sphinx .navbar-inverse .navbar-toggle{border-color:#333}.ptx-runestone-container .navbar-inverse .navbar-toggle:focus,.ptx-runestone-container .navbar-inverse .navbar-toggle:hover,.runestone-sphinx .navbar-inverse .navbar-toggle:focus,.runestone-sphinx .navbar-inverse .navbar-toggle:hover{background-color:#333}.ptx-runestone-container .navbar-inverse .navbar-toggle .icon-bar,.runestone-sphinx .navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.ptx-runestone-container .navbar-inverse .navbar-collapse,.ptx-runestone-container .navbar-inverse .navbar-form,.runestone-sphinx .navbar-inverse .navbar-collapse,.runestone-sphinx .navbar-inverse .navbar-form{border-color:#101010}.ptx-runestone-container .navbar-inverse .navbar-link,.runestone-sphinx .navbar-inverse .navbar-link{color:#9d9d9d}.ptx-runestone-container .navbar-inverse .navbar-link:hover,.runestone-sphinx .navbar-inverse .navbar-link:hover{color:#fff}.ptx-runestone-container .navbar-inverse .btn-link,.runestone-sphinx .navbar-inverse .btn-link{color:#9d9d9d}.ptx-runestone-container .navbar-inverse .btn-link:focus,.ptx-runestone-container .navbar-inverse .btn-link:hover,.runestone-sphinx .navbar-inverse .btn-link:focus,.runestone-sphinx .navbar-inverse .btn-link:hover{color:#fff}.ptx-runestone-container .navbar-inverse .btn-link[disabled]:focus,.ptx-runestone-container .navbar-inverse .btn-link[disabled]:hover,.ptx-runestone-container fieldset[disabled] .navbar-inverse .btn-link:focus,.ptx-runestone-container fieldset[disabled] .navbar-inverse .btn-link:hover,.runestone-sphinx .navbar-inverse .btn-link[disabled]:focus,.runestone-sphinx .navbar-inverse .btn-link[disabled]:hover,.runestone-sphinx fieldset[disabled] .navbar-inverse .btn-link:focus,.runestone-sphinx fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.ptx-runestone-container .breadcrumb,.runestone-sphinx .breadcrumb{background-color:#f5f5f5;border-radius:4px;list-style:none;margin-bottom:20px;padding:8px 15px}.ptx-runestone-container .breadcrumb>li,.runestone-sphinx .breadcrumb>li{display:inline-block}.ptx-runestone-container .breadcrumb>li+li:before,.runestone-sphinx .breadcrumb>li+li:before{color:#ccc;content:"/\00a0";padding:0 5px}.ptx-runestone-container .breadcrumb>.active,.runestone-sphinx .breadcrumb>.active{color:#777}.ptx-runestone-container .pagination,.runestone-sphinx .pagination{border-radius:4px;display:inline-block;margin:20px 0;padding-left:0}.ptx-runestone-container .pagination>li,.runestone-sphinx .pagination>li{display:inline}.ptx-runestone-container .pagination>li>a,.ptx-runestone-container .pagination>li>span,.runestone-sphinx .pagination>li>a,.runestone-sphinx .pagination>li>span{background-color:#fff;border:1px solid #ddd;color:#337ab7;float:left;line-height:1.42857143;margin-left:-1px;padding:6px 12px;position:relative;text-decoration:none}.ptx-runestone-container .pagination>li>a:focus,.ptx-runestone-container .pagination>li>a:hover,.ptx-runestone-container .pagination>li>span:focus,.ptx-runestone-container .pagination>li>span:hover,.runestone-sphinx .pagination>li>a:focus,.runestone-sphinx .pagination>li>a:hover,.runestone-sphinx .pagination>li>span:focus,.runestone-sphinx .pagination>li>span:hover{background-color:#eee;border-color:#ddd;color:#23527c;z-index:2}.ptx-runestone-container .pagination>li:first-child>a,.ptx-runestone-container .pagination>li:first-child>span,.runestone-sphinx .pagination>li:first-child>a,.runestone-sphinx .pagination>li:first-child>span{border-bottom-left-radius:4px;border-top-left-radius:4px;margin-left:0}.ptx-runestone-container .pagination>li:last-child>a,.ptx-runestone-container .pagination>li:last-child>span,.runestone-sphinx .pagination>li:last-child>a,.runestone-sphinx .pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.ptx-runestone-container .pagination>.active>a,.ptx-runestone-container .pagination>.active>a:focus,.ptx-runestone-container .pagination>.active>a:hover,.ptx-runestone-container .pagination>.active>span,.ptx-runestone-container .pagination>.active>span:focus,.ptx-runestone-container .pagination>.active>span:hover,.runestone-sphinx .pagination>.active>a,.runestone-sphinx .pagination>.active>a:focus,.runestone-sphinx .pagination>.active>a:hover,.runestone-sphinx .pagination>.active>span,.runestone-sphinx .pagination>.active>span:focus,.runestone-sphinx .pagination>.active>span:hover{background-color:#337ab7;border-color:#337ab7;color:#fff;cursor:default;z-index:3}.ptx-runestone-container .pagination>.disabled>a,.ptx-runestone-container .pagination>.disabled>a:focus,.ptx-runestone-container .pagination>.disabled>a:hover,.ptx-runestone-container .pagination>.disabled>span,.ptx-runestone-container .pagination>.disabled>span:focus,.ptx-runestone-container .pagination>.disabled>span:hover,.runestone-sphinx .pagination>.disabled>a,.runestone-sphinx .pagination>.disabled>a:focus,.runestone-sphinx .pagination>.disabled>a:hover,.runestone-sphinx .pagination>.disabled>span,.runestone-sphinx .pagination>.disabled>span:focus,.runestone-sphinx .pagination>.disabled>span:hover{background-color:#fff;border-color:#ddd;color:#777;cursor:not-allowed}.ptx-runestone-container .pagination-lg>li>a,.ptx-runestone-container .pagination-lg>li>span,.runestone-sphinx .pagination-lg>li>a,.runestone-sphinx .pagination-lg>li>span{font-size:18px;line-height:1.3333333;padding:10px 16px}.ptx-runestone-container .pagination-lg>li:first-child>a,.ptx-runestone-container .pagination-lg>li:first-child>span,.runestone-sphinx .pagination-lg>li:first-child>a,.runestone-sphinx .pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.ptx-runestone-container .pagination-lg>li:last-child>a,.ptx-runestone-container .pagination-lg>li:last-child>span,.runestone-sphinx .pagination-lg>li:last-child>a,.runestone-sphinx .pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.ptx-runestone-container .pagination-sm>li>a,.ptx-runestone-container .pagination-sm>li>span,.runestone-sphinx .pagination-sm>li>a,.runestone-sphinx .pagination-sm>li>span{font-size:12px;line-height:1.5;padding:5px 10px}.ptx-runestone-container .pagination-sm>li:first-child>a,.ptx-runestone-container .pagination-sm>li:first-child>span,.runestone-sphinx .pagination-sm>li:first-child>a,.runestone-sphinx .pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.ptx-runestone-container .pagination-sm>li:last-child>a,.ptx-runestone-container .pagination-sm>li:last-child>span,.runestone-sphinx .pagination-sm>li:last-child>a,.runestone-sphinx .pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.ptx-runestone-container .pager,.runestone-sphinx .pager{list-style:none;margin:20px 0;padding-left:0;text-align:center}.ptx-runestone-container .pager li,.runestone-sphinx .pager li{display:inline}.ptx-runestone-container .pager li>a,.ptx-runestone-container .pager li>span,.runestone-sphinx .pager li>a,.runestone-sphinx .pager li>span{background-color:#fff;border:1px solid #ddd;border-radius:15px;display:inline-block;padding:5px 14px}.ptx-runestone-container .pager li>a:focus,.ptx-runestone-container .pager li>a:hover,.runestone-sphinx .pager li>a:focus,.runestone-sphinx .pager li>a:hover{background-color:#eee;text-decoration:none}.ptx-runestone-container .pager .next>a,.ptx-runestone-container .pager .next>span,.runestone-sphinx .pager .next>a,.runestone-sphinx .pager .next>span{float:right}.ptx-runestone-container .pager .previous>a,.ptx-runestone-container .pager .previous>span,.runestone-sphinx .pager .previous>a,.runestone-sphinx .pager .previous>span{float:left}.ptx-runestone-container .pager .disabled>a,.ptx-runestone-container .pager .disabled>a:focus,.ptx-runestone-container .pager .disabled>a:hover,.ptx-runestone-container .pager .disabled>span,.runestone-sphinx .pager .disabled>a,.runestone-sphinx .pager .disabled>a:focus,.runestone-sphinx .pager .disabled>a:hover,.runestone-sphinx .pager .disabled>span{background-color:#fff;color:#777;cursor:not-allowed}.ptx-runestone-container .label,.runestone-sphinx .label{border-radius:.25em;color:#fff;display:inline;font-size:75%;font-weight:700;line-height:1;padding:.2em .6em .3em;text-align:center;vertical-align:baseline;white-space:nowrap}.ptx-runestone-container a.label:focus,.ptx-runestone-container a.label:hover,.runestone-sphinx a.label:focus,.runestone-sphinx a.label:hover{color:#fff;cursor:pointer;text-decoration:none}.ptx-runestone-container .label:empty,.runestone-sphinx .label:empty{display:none}.ptx-runestone-container .btn .label,.runestone-sphinx .btn .label{position:relative;top:-1px}.ptx-runestone-container .label-default,.runestone-sphinx .label-default{background-color:#777}.ptx-runestone-container .label-default[href]:focus,.ptx-runestone-container .label-default[href]:hover,.runestone-sphinx .label-default[href]:focus,.runestone-sphinx .label-default[href]:hover{background-color:#5e5e5e}.ptx-runestone-container .label-primary,.runestone-sphinx .label-primary{background-color:#337ab7}.ptx-runestone-container .label-primary[href]:focus,.ptx-runestone-container .label-primary[href]:hover,.runestone-sphinx .label-primary[href]:focus,.runestone-sphinx .label-primary[href]:hover{background-color:#286090}.ptx-runestone-container .label-success,.runestone-sphinx .label-success{background-color:#5cb85c}.ptx-runestone-container .label-success[href]:focus,.ptx-runestone-container .label-success[href]:hover,.runestone-sphinx .label-success[href]:focus,.runestone-sphinx .label-success[href]:hover{background-color:#449d44}.ptx-runestone-container .label-info,.runestone-sphinx .label-info{background-color:#5bc0de}.ptx-runestone-container .label-info[href]:focus,.ptx-runestone-container .label-info[href]:hover,.runestone-sphinx .label-info[href]:focus,.runestone-sphinx .label-info[href]:hover{background-color:#31b0d5}.ptx-runestone-container .label-warning,.runestone-sphinx .label-warning{background-color:#f0ad4e}.ptx-runestone-container .label-warning[href]:focus,.ptx-runestone-container .label-warning[href]:hover,.runestone-sphinx .label-warning[href]:focus,.runestone-sphinx .label-warning[href]:hover{background-color:#ec971f}.ptx-runestone-container .label-danger,.runestone-sphinx .label-danger{background-color:#d9534f}.ptx-runestone-container .label-danger[href]:focus,.ptx-runestone-container .label-danger[href]:hover,.runestone-sphinx .label-danger[href]:focus,.runestone-sphinx .label-danger[href]:hover{background-color:#c9302c}.ptx-runestone-container .badge,.runestone-sphinx .badge{background-color:#777;border-radius:10px;color:#fff;display:inline-block;font-size:12px;font-weight:700;line-height:1;min-width:10px;padding:3px 7px;text-align:center;vertical-align:middle;white-space:nowrap}.ptx-runestone-container .badge:empty,.runestone-sphinx .badge:empty{display:none}.ptx-runestone-container .btn .badge,.runestone-sphinx .btn .badge{position:relative;top:-1px}.ptx-runestone-container .btn-group-xs>.btn .badge,.ptx-runestone-container .btn-xs .badge,.runestone-sphinx .btn-group-xs>.btn .badge,.runestone-sphinx .btn-xs .badge{padding:1px 5px;top:0}.ptx-runestone-container a.badge:focus,.ptx-runestone-container a.badge:hover,.runestone-sphinx a.badge:focus,.runestone-sphinx a.badge:hover{color:#fff;cursor:pointer;text-decoration:none}.ptx-runestone-container .list-group-item.active>.badge,.ptx-runestone-container .nav-pills>.active>a>.badge,.runestone-sphinx .list-group-item.active>.badge,.runestone-sphinx .nav-pills>.active>a>.badge{background-color:#fff;color:#337ab7}.ptx-runestone-container .list-group-item>.badge,.runestone-sphinx .list-group-item>.badge{float:right}.ptx-runestone-container .list-group-item>.badge+.badge,.runestone-sphinx .list-group-item>.badge+.badge{margin-right:5px}.ptx-runestone-container .nav-pills>li>a>.badge,.runestone-sphinx .nav-pills>li>a>.badge{margin-left:3px}.ptx-runestone-container .jumbotron,.runestone-sphinx .jumbotron{background-color:#eee;color:inherit;margin-bottom:30px;padding-bottom:30px;padding-top:30px}.ptx-runestone-container .jumbotron .h1,.ptx-runestone-container .jumbotron h1,.runestone-sphinx .jumbotron .h1,.runestone-sphinx .jumbotron h1{color:inherit}.ptx-runestone-container .jumbotron p,.runestone-sphinx .jumbotron p{font-size:21px;font-weight:200;margin-bottom:15px}.ptx-runestone-container .jumbotron>hr,.runestone-sphinx .jumbotron>hr{border-top-color:#d5d5d5}.ptx-runestone-container .container .jumbotron,.ptx-runestone-container .container-fluid .jumbotron,.runestone-sphinx .container .jumbotron,.runestone-sphinx .container-fluid .jumbotron{border-radius:6px;padding-left:15px;padding-right:15px}.ptx-runestone-container .jumbotron .container,.runestone-sphinx .jumbotron .container{max-width:100%}@media screen and (min-width:768px){.ptx-runestone-container .jumbotron,.runestone-sphinx .jumbotron{padding-bottom:48px;padding-top:48px}.ptx-runestone-container .container .jumbotron,.ptx-runestone-container .container-fluid .jumbotron,.runestone-sphinx .container .jumbotron,.runestone-sphinx .container-fluid .jumbotron{padding-left:60px;padding-right:60px}.ptx-runestone-container .jumbotron .h1,.ptx-runestone-container .jumbotron h1,.runestone-sphinx .jumbotron .h1,.runestone-sphinx .jumbotron h1{font-size:63px}}.ptx-runestone-container .thumbnail,.runestone-sphinx .thumbnail{background-color:#fff;border:1px solid #ddd;border-radius:4px;display:block;line-height:1.42857143;margin-bottom:20px;padding:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.ptx-runestone-container .thumbnail a>img,.ptx-runestone-container .thumbnail>img,.runestone-sphinx .thumbnail a>img,.runestone-sphinx .thumbnail>img{margin-left:auto;margin-right:auto}.ptx-runestone-container a.thumbnail.active,.ptx-runestone-container a.thumbnail:focus,.ptx-runestone-container a.thumbnail:hover,.runestone-sphinx a.thumbnail.active,.runestone-sphinx a.thumbnail:focus,.runestone-sphinx a.thumbnail:hover{border-color:#337ab7}.ptx-runestone-container .thumbnail .caption,.runestone-sphinx .thumbnail .caption{color:#333;padding:9px}.ptx-runestone-container .alert,.runestone-sphinx .alert{border:1px solid transparent;border-radius:4px;margin-bottom:20px;padding:15px}.ptx-runestone-container .alert h4,.runestone-sphinx .alert h4{color:inherit;margin-top:0}.ptx-runestone-container .alert .alert-link,.runestone-sphinx .alert .alert-link{font-weight:700}.ptx-runestone-container .alert>p,.ptx-runestone-container .alert>ul,.runestone-sphinx .alert>p,.runestone-sphinx .alert>ul{margin-bottom:0}.ptx-runestone-container .alert>p+p,.runestone-sphinx .alert>p+p{margin-top:5px}.ptx-runestone-container .alert-dismissable,.ptx-runestone-container .alert-dismissible,.runestone-sphinx .alert-dismissable,.runestone-sphinx .alert-dismissible{padding-right:35px}.ptx-runestone-container .alert-dismissable .close,.ptx-runestone-container .alert-dismissible .close,.runestone-sphinx .alert-dismissable .close,.runestone-sphinx .alert-dismissible .close{color:inherit;position:relative;right:-21px;top:-2px}.ptx-runestone-container .alert-success,.runestone-sphinx .alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.ptx-runestone-container .alert-success hr,.runestone-sphinx .alert-success hr{border-top-color:#c9e2b3}.ptx-runestone-container .alert-success .alert-link,.runestone-sphinx .alert-success .alert-link{color:#2b542c}.ptx-runestone-container .alert-info,.runestone-sphinx .alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.ptx-runestone-container .alert-info hr,.runestone-sphinx .alert-info hr{border-top-color:#a6e1ec}.ptx-runestone-container .alert-info .alert-link,.runestone-sphinx .alert-info .alert-link{color:#245269}.ptx-runestone-container .alert-warning,.runestone-sphinx .alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.ptx-runestone-container .alert-warning hr,.runestone-sphinx .alert-warning hr{border-top-color:#f7e1b5}.ptx-runestone-container .alert-warning .alert-link,.runestone-sphinx .alert-warning .alert-link{color:#66512c}.ptx-runestone-container .alert-danger,.runestone-sphinx .alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.ptx-runestone-container .alert-danger hr,.runestone-sphinx .alert-danger hr{border-top-color:#e4b9c0}.ptx-runestone-container .alert-danger .alert-link,.runestone-sphinx .alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{0%{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{0%{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{0%{background-position:40px 0}to{background-position:0 0}}.ptx-runestone-container .progress,.runestone-sphinx .progress{background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);height:20px;margin-bottom:20px;overflow:hidden}.ptx-runestone-container .progress-bar,.runestone-sphinx .progress-bar{background-color:#337ab7;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);color:#fff;float:left;font-size:12px;height:100%;line-height:20px;text-align:center;-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease;width:0}.ptx-runestone-container .progress-bar-striped,.ptx-runestone-container .progress-striped .progress-bar,.runestone-sphinx .progress-bar-striped,.runestone-sphinx .progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);-webkit-background-size:40px 40px;background-size:40px 40px}.ptx-runestone-container .progress-bar.active,.ptx-runestone-container .progress.active .progress-bar,.runestone-sphinx .progress-bar.active,.runestone-sphinx .progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.ptx-runestone-container .progress-bar-success,.runestone-sphinx .progress-bar-success{background-color:#5cb85c}.ptx-runestone-container .progress-striped .progress-bar-success,.runestone-sphinx .progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.ptx-runestone-container .progress-bar-info,.runestone-sphinx .progress-bar-info{background-color:#5bc0de}.ptx-runestone-container .progress-striped .progress-bar-info,.runestone-sphinx .progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.ptx-runestone-container .progress-bar-warning,.runestone-sphinx .progress-bar-warning{background-color:#f0ad4e}.ptx-runestone-container .progress-striped .progress-bar-warning,.runestone-sphinx .progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.ptx-runestone-container .progress-bar-danger,.runestone-sphinx .progress-bar-danger{background-color:#d9534f}.ptx-runestone-container .progress-striped .progress-bar-danger,.runestone-sphinx .progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.ptx-runestone-container .media,.runestone-sphinx .media{margin-top:15px}.ptx-runestone-container .media:first-child,.runestone-sphinx .media:first-child{margin-top:0}.ptx-runestone-container .media,.ptx-runestone-container .media-body,.runestone-sphinx .media,.runestone-sphinx .media-body{zoom:1;overflow:hidden}.ptx-runestone-container .media-body,.runestone-sphinx .media-body{width:10000px}.ptx-runestone-container .media-object,.runestone-sphinx .media-object{display:block}.ptx-runestone-container .media-object.img-thumbnail,.runestone-sphinx .media-object.img-thumbnail{max-width:none}.ptx-runestone-container .media-right,.ptx-runestone-container .media>.pull-right,.runestone-sphinx .media-right,.runestone-sphinx .media>.pull-right{padding-left:10px}.ptx-runestone-container .media-left,.ptx-runestone-container .media>.pull-left,.runestone-sphinx .media-left,.runestone-sphinx .media>.pull-left{padding-right:10px}.ptx-runestone-container .media-body,.ptx-runestone-container .media-left,.ptx-runestone-container .media-right,.runestone-sphinx .media-body,.runestone-sphinx .media-left,.runestone-sphinx .media-right{display:table-cell;vertical-align:top}.ptx-runestone-container .media-middle,.runestone-sphinx .media-middle{vertical-align:middle}.ptx-runestone-container .media-bottom,.runestone-sphinx .media-bottom{vertical-align:bottom}.ptx-runestone-container .media-heading,.runestone-sphinx .media-heading{margin-bottom:5px;margin-top:0}.ptx-runestone-container .media-list,.runestone-sphinx .media-list{list-style:none;padding-left:0}.ptx-runestone-container .list-group,.runestone-sphinx .list-group{margin-bottom:20px;padding-left:0}.ptx-runestone-container .list-group-item,.runestone-sphinx .list-group-item{background-color:#fff;border:1px solid #ddd;display:block;margin-bottom:-1px;padding:10px 15px;position:relative}.ptx-runestone-container .list-group-item:first-child,.runestone-sphinx .list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.ptx-runestone-container .list-group-item:last-child,.runestone-sphinx .list-group-item:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;margin-bottom:0}.ptx-runestone-container .list-group-item.disabled,.ptx-runestone-container .list-group-item.disabled:focus,.ptx-runestone-container .list-group-item.disabled:hover,.runestone-sphinx .list-group-item.disabled,.runestone-sphinx .list-group-item.disabled:focus,.runestone-sphinx .list-group-item.disabled:hover{background-color:#eee;color:#777;cursor:not-allowed}.ptx-runestone-container .list-group-item.disabled .list-group-item-heading,.ptx-runestone-container .list-group-item.disabled:focus .list-group-item-heading,.ptx-runestone-container .list-group-item.disabled:hover .list-group-item-heading,.runestone-sphinx .list-group-item.disabled .list-group-item-heading,.runestone-sphinx .list-group-item.disabled:focus .list-group-item-heading,.runestone-sphinx .list-group-item.disabled:hover .list-group-item-heading{color:inherit}.ptx-runestone-container .list-group-item.disabled .list-group-item-text,.ptx-runestone-container .list-group-item.disabled:focus .list-group-item-text,.ptx-runestone-container .list-group-item.disabled:hover .list-group-item-text,.runestone-sphinx .list-group-item.disabled .list-group-item-text,.runestone-sphinx .list-group-item.disabled:focus .list-group-item-text,.runestone-sphinx .list-group-item.disabled:hover .list-group-item-text{color:#777}.ptx-runestone-container .list-group-item.active,.ptx-runestone-container .list-group-item.active:focus,.ptx-runestone-container .list-group-item.active:hover,.runestone-sphinx .list-group-item.active,.runestone-sphinx .list-group-item.active:focus,.runestone-sphinx .list-group-item.active:hover{background-color:#337ab7;border-color:#337ab7;color:#fff;z-index:2}.ptx-runestone-container .list-group-item.active .list-group-item-heading,.ptx-runestone-container .list-group-item.active .list-group-item-heading>.small,.ptx-runestone-container .list-group-item.active .list-group-item-heading>small,.ptx-runestone-container .list-group-item.active:focus .list-group-item-heading,.ptx-runestone-container .list-group-item.active:focus .list-group-item-heading>.small,.ptx-runestone-container .list-group-item.active:focus .list-group-item-heading>small,.ptx-runestone-container .list-group-item.active:hover .list-group-item-heading,.ptx-runestone-container .list-group-item.active:hover .list-group-item-heading>.small,.ptx-runestone-container .list-group-item.active:hover .list-group-item-heading>small,.runestone-sphinx .list-group-item.active .list-group-item-heading,.runestone-sphinx .list-group-item.active .list-group-item-heading>.small,.runestone-sphinx .list-group-item.active .list-group-item-heading>small,.runestone-sphinx .list-group-item.active:focus .list-group-item-heading,.runestone-sphinx .list-group-item.active:focus .list-group-item-heading>.small,.runestone-sphinx .list-group-item.active:focus .list-group-item-heading>small,.runestone-sphinx .list-group-item.active:hover .list-group-item-heading,.runestone-sphinx .list-group-item.active:hover .list-group-item-heading>.small,.runestone-sphinx .list-group-item.active:hover .list-group-item-heading>small{color:inherit}.ptx-runestone-container .list-group-item.active .list-group-item-text,.ptx-runestone-container .list-group-item.active:focus .list-group-item-text,.ptx-runestone-container .list-group-item.active:hover .list-group-item-text,.runestone-sphinx .list-group-item.active .list-group-item-text,.runestone-sphinx .list-group-item.active:focus .list-group-item-text,.runestone-sphinx .list-group-item.active:hover .list-group-item-text{color:#c7ddef}.ptx-runestone-container a.list-group-item,.ptx-runestone-container button.list-group-item,.runestone-sphinx a.list-group-item,.runestone-sphinx button.list-group-item{color:#555}.ptx-runestone-container a.list-group-item .list-group-item-heading,.ptx-runestone-container button.list-group-item .list-group-item-heading,.runestone-sphinx a.list-group-item .list-group-item-heading,.runestone-sphinx button.list-group-item .list-group-item-heading{color:#333}.ptx-runestone-container a.list-group-item:focus,.ptx-runestone-container a.list-group-item:hover,.ptx-runestone-container button.list-group-item:focus,.ptx-runestone-container button.list-group-item:hover,.runestone-sphinx a.list-group-item:focus,.runestone-sphinx a.list-group-item:hover,.runestone-sphinx button.list-group-item:focus,.runestone-sphinx button.list-group-item:hover{background-color:#f5f5f5;color:#555;text-decoration:none}.ptx-runestone-container button.list-group-item,.runestone-sphinx button.list-group-item{text-align:left;width:100%}.ptx-runestone-container .list-group-item-success,.runestone-sphinx .list-group-item-success{background-color:#dff0d8;color:#3c763d}.ptx-runestone-container a.list-group-item-success,.ptx-runestone-container button.list-group-item-success,.runestone-sphinx a.list-group-item-success,.runestone-sphinx button.list-group-item-success{color:#3c763d}.ptx-runestone-container a.list-group-item-success .list-group-item-heading,.ptx-runestone-container button.list-group-item-success .list-group-item-heading,.runestone-sphinx a.list-group-item-success .list-group-item-heading,.runestone-sphinx button.list-group-item-success .list-group-item-heading{color:inherit}.ptx-runestone-container a.list-group-item-success:focus,.ptx-runestone-container a.list-group-item-success:hover,.ptx-runestone-container button.list-group-item-success:focus,.ptx-runestone-container button.list-group-item-success:hover,.runestone-sphinx a.list-group-item-success:focus,.runestone-sphinx a.list-group-item-success:hover,.runestone-sphinx button.list-group-item-success:focus,.runestone-sphinx button.list-group-item-success:hover{background-color:#d0e9c6;color:#3c763d}.ptx-runestone-container a.list-group-item-success.active,.ptx-runestone-container a.list-group-item-success.active:focus,.ptx-runestone-container a.list-group-item-success.active:hover,.ptx-runestone-container button.list-group-item-success.active,.ptx-runestone-container button.list-group-item-success.active:focus,.ptx-runestone-container button.list-group-item-success.active:hover,.runestone-sphinx a.list-group-item-success.active,.runestone-sphinx a.list-group-item-success.active:focus,.runestone-sphinx a.list-group-item-success.active:hover,.runestone-sphinx button.list-group-item-success.active,.runestone-sphinx button.list-group-item-success.active:focus,.runestone-sphinx button.list-group-item-success.active:hover{background-color:#3c763d;border-color:#3c763d;color:#fff}.ptx-runestone-container .list-group-item-info,.runestone-sphinx .list-group-item-info{background-color:#d9edf7;color:#31708f}.ptx-runestone-container a.list-group-item-info,.ptx-runestone-container button.list-group-item-info,.runestone-sphinx a.list-group-item-info,.runestone-sphinx button.list-group-item-info{color:#31708f}.ptx-runestone-container a.list-group-item-info .list-group-item-heading,.ptx-runestone-container button.list-group-item-info .list-group-item-heading,.runestone-sphinx a.list-group-item-info .list-group-item-heading,.runestone-sphinx button.list-group-item-info .list-group-item-heading{color:inherit}.ptx-runestone-container a.list-group-item-info:focus,.ptx-runestone-container a.list-group-item-info:hover,.ptx-runestone-container button.list-group-item-info:focus,.ptx-runestone-container button.list-group-item-info:hover,.runestone-sphinx a.list-group-item-info:focus,.runestone-sphinx a.list-group-item-info:hover,.runestone-sphinx button.list-group-item-info:focus,.runestone-sphinx button.list-group-item-info:hover{background-color:#c4e3f3;color:#31708f}.ptx-runestone-container a.list-group-item-info.active,.ptx-runestone-container a.list-group-item-info.active:focus,.ptx-runestone-container a.list-group-item-info.active:hover,.ptx-runestone-container button.list-group-item-info.active,.ptx-runestone-container button.list-group-item-info.active:focus,.ptx-runestone-container button.list-group-item-info.active:hover,.runestone-sphinx a.list-group-item-info.active,.runestone-sphinx a.list-group-item-info.active:focus,.runestone-sphinx a.list-group-item-info.active:hover,.runestone-sphinx button.list-group-item-info.active,.runestone-sphinx button.list-group-item-info.active:focus,.runestone-sphinx button.list-group-item-info.active:hover{background-color:#31708f;border-color:#31708f;color:#fff}.ptx-runestone-container .list-group-item-warning,.runestone-sphinx .list-group-item-warning{background-color:#fcf8e3;color:#8a6d3b}.ptx-runestone-container a.list-group-item-warning,.ptx-runestone-container button.list-group-item-warning,.runestone-sphinx a.list-group-item-warning,.runestone-sphinx button.list-group-item-warning{color:#8a6d3b}.ptx-runestone-container a.list-group-item-warning .list-group-item-heading,.ptx-runestone-container button.list-group-item-warning .list-group-item-heading,.runestone-sphinx a.list-group-item-warning .list-group-item-heading,.runestone-sphinx button.list-group-item-warning .list-group-item-heading{color:inherit}.ptx-runestone-container a.list-group-item-warning:focus,.ptx-runestone-container a.list-group-item-warning:hover,.ptx-runestone-container button.list-group-item-warning:focus,.ptx-runestone-container button.list-group-item-warning:hover,.runestone-sphinx a.list-group-item-warning:focus,.runestone-sphinx a.list-group-item-warning:hover,.runestone-sphinx button.list-group-item-warning:focus,.runestone-sphinx button.list-group-item-warning:hover{background-color:#faf2cc;color:#8a6d3b}.ptx-runestone-container a.list-group-item-warning.active,.ptx-runestone-container a.list-group-item-warning.active:focus,.ptx-runestone-container a.list-group-item-warning.active:hover,.ptx-runestone-container button.list-group-item-warning.active,.ptx-runestone-container button.list-group-item-warning.active:focus,.ptx-runestone-container button.list-group-item-warning.active:hover,.runestone-sphinx a.list-group-item-warning.active,.runestone-sphinx a.list-group-item-warning.active:focus,.runestone-sphinx a.list-group-item-warning.active:hover,.runestone-sphinx button.list-group-item-warning.active,.runestone-sphinx button.list-group-item-warning.active:focus,.runestone-sphinx button.list-group-item-warning.active:hover{background-color:#8a6d3b;border-color:#8a6d3b;color:#fff}.ptx-runestone-container .list-group-item-danger,.runestone-sphinx .list-group-item-danger{background-color:#f2dede;color:#a94442}.ptx-runestone-container a.list-group-item-danger,.ptx-runestone-container button.list-group-item-danger,.runestone-sphinx a.list-group-item-danger,.runestone-sphinx button.list-group-item-danger{color:#a94442}.ptx-runestone-container a.list-group-item-danger .list-group-item-heading,.ptx-runestone-container button.list-group-item-danger .list-group-item-heading,.runestone-sphinx a.list-group-item-danger .list-group-item-heading,.runestone-sphinx button.list-group-item-danger .list-group-item-heading{color:inherit}.ptx-runestone-container a.list-group-item-danger:focus,.ptx-runestone-container a.list-group-item-danger:hover,.ptx-runestone-container button.list-group-item-danger:focus,.ptx-runestone-container button.list-group-item-danger:hover,.runestone-sphinx a.list-group-item-danger:focus,.runestone-sphinx a.list-group-item-danger:hover,.runestone-sphinx button.list-group-item-danger:focus,.runestone-sphinx button.list-group-item-danger:hover{background-color:#ebcccc;color:#a94442}.ptx-runestone-container a.list-group-item-danger.active,.ptx-runestone-container a.list-group-item-danger.active:focus,.ptx-runestone-container a.list-group-item-danger.active:hover,.ptx-runestone-container button.list-group-item-danger.active,.ptx-runestone-container button.list-group-item-danger.active:focus,.ptx-runestone-container button.list-group-item-danger.active:hover,.runestone-sphinx a.list-group-item-danger.active,.runestone-sphinx a.list-group-item-danger.active:focus,.runestone-sphinx a.list-group-item-danger.active:hover,.runestone-sphinx button.list-group-item-danger.active,.runestone-sphinx button.list-group-item-danger.active:focus,.runestone-sphinx button.list-group-item-danger.active:hover{background-color:#a94442;border-color:#a94442;color:#fff}.ptx-runestone-container .list-group-item-heading,.runestone-sphinx .list-group-item-heading{margin-bottom:5px;margin-top:0}.ptx-runestone-container .list-group-item-text,.runestone-sphinx .list-group-item-text{line-height:1.3;margin-bottom:0}.ptx-runestone-container .panel,.runestone-sphinx .panel{background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05);margin-bottom:20px}.ptx-runestone-container .panel-body,.runestone-sphinx .panel-body{padding:15px}.ptx-runestone-container .panel-heading,.runestone-sphinx .panel-heading{border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px;padding:10px 15px}.ptx-runestone-container .panel-heading>.dropdown .dropdown-toggle,.runestone-sphinx .panel-heading>.dropdown .dropdown-toggle{color:inherit}.ptx-runestone-container .panel-title,.runestone-sphinx .panel-title{color:inherit;font-size:16px;margin-bottom:0;margin-top:0}.ptx-runestone-container .panel-title>.small,.ptx-runestone-container .panel-title>.small>a,.ptx-runestone-container .panel-title>a,.ptx-runestone-container .panel-title>small,.ptx-runestone-container .panel-title>small>a,.runestone-sphinx .panel-title>.small,.runestone-sphinx .panel-title>.small>a,.runestone-sphinx .panel-title>a,.runestone-sphinx .panel-title>small,.runestone-sphinx .panel-title>small>a{color:inherit}.ptx-runestone-container .panel-footer,.runestone-sphinx .panel-footer{background-color:#f5f5f5;border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-top:1px solid #ddd;padding:10px 15px}.ptx-runestone-container .panel>.list-group,.ptx-runestone-container .panel>.panel-collapse>.list-group,.runestone-sphinx .panel>.list-group,.runestone-sphinx .panel>.panel-collapse>.list-group{margin-bottom:0}.ptx-runestone-container .panel>.list-group .list-group-item,.ptx-runestone-container .panel>.panel-collapse>.list-group .list-group-item,.runestone-sphinx .panel>.list-group .list-group-item,.runestone-sphinx .panel>.panel-collapse>.list-group .list-group-item{border-radius:0;border-width:1px 0}.ptx-runestone-container .panel>.list-group:first-child .list-group-item:first-child,.ptx-runestone-container .panel>.panel-collapse>.list-group:first-child .list-group-item:first-child,.runestone-sphinx .panel>.list-group:first-child .list-group-item:first-child,.runestone-sphinx .panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.ptx-runestone-container .panel>.list-group:last-child .list-group-item:last-child,.ptx-runestone-container .panel>.panel-collapse>.list-group:last-child .list-group-item:last-child,.runestone-sphinx .panel>.list-group:last-child .list-group-item:last-child,.runestone-sphinx .panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.ptx-runestone-container .panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child,.runestone-sphinx .panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-left-radius:0;border-top-right-radius:0}.ptx-runestone-container .list-group+.panel-footer,.ptx-runestone-container .panel-heading+.list-group .list-group-item:first-child,.runestone-sphinx .list-group+.panel-footer,.runestone-sphinx .panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.ptx-runestone-container .panel>.panel-collapse>.table,.ptx-runestone-container .panel>.table,.ptx-runestone-container .panel>.table-responsive>.table,.runestone-sphinx .panel>.panel-collapse>.table,.runestone-sphinx .panel>.table,.runestone-sphinx .panel>.table-responsive>.table{margin-bottom:0}.ptx-runestone-container .panel>.panel-collapse>.table caption,.ptx-runestone-container .panel>.table caption,.ptx-runestone-container .panel>.table-responsive>.table caption,.runestone-sphinx .panel>.panel-collapse>.table caption,.runestone-sphinx .panel>.table caption,.runestone-sphinx .panel>.table-responsive>.table caption{padding-left:15px;padding-right:15px}.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.ptx-runestone-container .panel>.table:first-child,.ptx-runestone-container .panel>.table:first-child>tbody:first-child>tr:first-child,.ptx-runestone-container .panel>.table:first-child>thead:first-child>tr:first-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.runestone-sphinx .panel>.table:first-child,.runestone-sphinx .panel>.table:first-child>tbody:first-child>tr:first-child,.runestone-sphinx .panel>.table:first-child>thead:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.ptx-runestone-container .panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.ptx-runestone-container .panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.ptx-runestone-container .panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.ptx-runestone-container .panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.runestone-sphinx .panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.runestone-sphinx .panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.runestone-sphinx .panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.runestone-sphinx .panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.ptx-runestone-container .panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.ptx-runestone-container .panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.ptx-runestone-container .panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.ptx-runestone-container .panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.runestone-sphinx .panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.runestone-sphinx .panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.runestone-sphinx .panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.runestone-sphinx .panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.ptx-runestone-container .panel>.table:last-child,.ptx-runestone-container .panel>.table:last-child>tbody:last-child>tr:last-child,.ptx-runestone-container .panel>.table:last-child>tfoot:last-child>tr:last-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.runestone-sphinx .panel>.table:last-child,.runestone-sphinx .panel>.table:last-child>tbody:last-child>tr:last-child,.runestone-sphinx .panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:3px;border-bottom-right-radius:3px}.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.ptx-runestone-container .panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.ptx-runestone-container .panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.ptx-runestone-container .panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.ptx-runestone-container .panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.runestone-sphinx .panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.runestone-sphinx .panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.runestone-sphinx .panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.runestone-sphinx .panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.ptx-runestone-container .panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.ptx-runestone-container .panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.ptx-runestone-container .panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.ptx-runestone-container .panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.runestone-sphinx .panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.runestone-sphinx .panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.runestone-sphinx .panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.runestone-sphinx .panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.ptx-runestone-container .panel>.panel-body+.table,.ptx-runestone-container .panel>.panel-body+.table-responsive,.ptx-runestone-container .panel>.table+.panel-body,.ptx-runestone-container .panel>.table-responsive+.panel-body,.runestone-sphinx .panel>.panel-body+.table,.runestone-sphinx .panel>.panel-body+.table-responsive,.runestone-sphinx .panel>.table+.panel-body,.runestone-sphinx .panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.ptx-runestone-container .panel>.table>tbody:first-child>tr:first-child td,.ptx-runestone-container .panel>.table>tbody:first-child>tr:first-child th,.runestone-sphinx .panel>.table>tbody:first-child>tr:first-child td,.runestone-sphinx .panel>.table>tbody:first-child>tr:first-child th{border-top:0}.ptx-runestone-container .panel>.table-bordered,.ptx-runestone-container .panel>.table-responsive>.table-bordered,.runestone-sphinx .panel>.table-bordered,.runestone-sphinx .panel>.table-responsive>.table-bordered{border:0}.ptx-runestone-container .panel>.table-bordered>tbody>tr>td:first-child,.ptx-runestone-container .panel>.table-bordered>tbody>tr>th:first-child,.ptx-runestone-container .panel>.table-bordered>tfoot>tr>td:first-child,.ptx-runestone-container .panel>.table-bordered>tfoot>tr>th:first-child,.ptx-runestone-container .panel>.table-bordered>thead>tr>td:first-child,.ptx-runestone-container .panel>.table-bordered>thead>tr>th:first-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.runestone-sphinx .panel>.table-bordered>tbody>tr>td:first-child,.runestone-sphinx .panel>.table-bordered>tbody>tr>th:first-child,.runestone-sphinx .panel>.table-bordered>tfoot>tr>td:first-child,.runestone-sphinx .panel>.table-bordered>tfoot>tr>th:first-child,.runestone-sphinx .panel>.table-bordered>thead>tr>td:first-child,.runestone-sphinx .panel>.table-bordered>thead>tr>th:first-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.ptx-runestone-container .panel>.table-bordered>tbody>tr>td:last-child,.ptx-runestone-container .panel>.table-bordered>tbody>tr>th:last-child,.ptx-runestone-container .panel>.table-bordered>tfoot>tr>td:last-child,.ptx-runestone-container .panel>.table-bordered>tfoot>tr>th:last-child,.ptx-runestone-container .panel>.table-bordered>thead>tr>td:last-child,.ptx-runestone-container .panel>.table-bordered>thead>tr>th:last-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.runestone-sphinx .panel>.table-bordered>tbody>tr>td:last-child,.runestone-sphinx .panel>.table-bordered>tbody>tr>th:last-child,.runestone-sphinx .panel>.table-bordered>tfoot>tr>td:last-child,.runestone-sphinx .panel>.table-bordered>tfoot>tr>th:last-child,.runestone-sphinx .panel>.table-bordered>thead>tr>td:last-child,.runestone-sphinx .panel>.table-bordered>thead>tr>th:last-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.ptx-runestone-container .panel>.table-bordered>tbody>tr:first-child>td,.ptx-runestone-container .panel>.table-bordered>tbody>tr:first-child>th,.ptx-runestone-container .panel>.table-bordered>tbody>tr:last-child>td,.ptx-runestone-container .panel>.table-bordered>tbody>tr:last-child>th,.ptx-runestone-container .panel>.table-bordered>tfoot>tr:last-child>td,.ptx-runestone-container .panel>.table-bordered>tfoot>tr:last-child>th,.ptx-runestone-container .panel>.table-bordered>thead>tr:first-child>td,.ptx-runestone-container .panel>.table-bordered>thead>tr:first-child>th,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.ptx-runestone-container .panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.ptx-runestone-container .panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.runestone-sphinx .panel>.table-bordered>tbody>tr:first-child>td,.runestone-sphinx .panel>.table-bordered>tbody>tr:first-child>th,.runestone-sphinx .panel>.table-bordered>tbody>tr:last-child>td,.runestone-sphinx .panel>.table-bordered>tbody>tr:last-child>th,.runestone-sphinx .panel>.table-bordered>tfoot>tr:last-child>td,.runestone-sphinx .panel>.table-bordered>tfoot>tr:last-child>th,.runestone-sphinx .panel>.table-bordered>thead>tr:first-child>td,.runestone-sphinx .panel>.table-bordered>thead>tr:first-child>th,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.runestone-sphinx .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.runestone-sphinx .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.runestone-sphinx .panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.runestone-sphinx .panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.ptx-runestone-container .panel>.table-responsive,.runestone-sphinx .panel>.table-responsive{border:0;margin-bottom:0}.ptx-runestone-container .panel-group,.runestone-sphinx .panel-group{margin-bottom:20px}.ptx-runestone-container .panel-group .panel,.runestone-sphinx .panel-group .panel{border-radius:4px;margin-bottom:0}.ptx-runestone-container .panel-group .panel+.panel,.runestone-sphinx .panel-group .panel+.panel{margin-top:5px}.ptx-runestone-container .panel-group .panel-heading,.runestone-sphinx .panel-group .panel-heading{border-bottom:0}.ptx-runestone-container .panel-group .panel-heading+.panel-collapse>.list-group,.ptx-runestone-container .panel-group .panel-heading+.panel-collapse>.panel-body,.runestone-sphinx .panel-group .panel-heading+.panel-collapse>.list-group,.runestone-sphinx .panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.ptx-runestone-container .panel-group .panel-footer,.runestone-sphinx .panel-group .panel-footer{border-top:0}.ptx-runestone-container .panel-group .panel-footer+.panel-collapse .panel-body,.runestone-sphinx .panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.ptx-runestone-container .panel-default,.runestone-sphinx .panel-default{border-color:#ddd}.ptx-runestone-container .panel-default>.panel-heading,.runestone-sphinx .panel-default>.panel-heading{background-color:#f5f5f5;border-color:#ddd;color:#333}.ptx-runestone-container .panel-default>.panel-heading+.panel-collapse>.panel-body,.runestone-sphinx .panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.ptx-runestone-container .panel-default>.panel-heading .badge,.runestone-sphinx .panel-default>.panel-heading .badge{background-color:#333;color:#f5f5f5}.ptx-runestone-container .panel-default>.panel-footer+.panel-collapse>.panel-body,.runestone-sphinx .panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.ptx-runestone-container .panel-primary,.runestone-sphinx .panel-primary{border-color:#337ab7}.ptx-runestone-container .panel-primary>.panel-heading,.runestone-sphinx .panel-primary>.panel-heading{background-color:#337ab7;border-color:#337ab7;color:#fff}.ptx-runestone-container .panel-primary>.panel-heading+.panel-collapse>.panel-body,.runestone-sphinx .panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.ptx-runestone-container .panel-primary>.panel-heading .badge,.runestone-sphinx .panel-primary>.panel-heading .badge{background-color:#fff;color:#337ab7}.ptx-runestone-container .panel-primary>.panel-footer+.panel-collapse>.panel-body,.runestone-sphinx .panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.ptx-runestone-container .panel-success,.runestone-sphinx .panel-success{border-color:#d6e9c6}.ptx-runestone-container .panel-success>.panel-heading,.runestone-sphinx .panel-success>.panel-heading{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.ptx-runestone-container .panel-success>.panel-heading+.panel-collapse>.panel-body,.runestone-sphinx .panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.ptx-runestone-container .panel-success>.panel-heading .badge,.runestone-sphinx .panel-success>.panel-heading .badge{background-color:#3c763d;color:#dff0d8}.ptx-runestone-container .panel-success>.panel-footer+.panel-collapse>.panel-body,.runestone-sphinx .panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.ptx-runestone-container .panel-info,.runestone-sphinx .panel-info{border-color:#bce8f1}.ptx-runestone-container .panel-info>.panel-heading,.runestone-sphinx .panel-info>.panel-heading{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.ptx-runestone-container .panel-info>.panel-heading+.panel-collapse>.panel-body,.runestone-sphinx .panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.ptx-runestone-container .panel-info>.panel-heading .badge,.runestone-sphinx .panel-info>.panel-heading .badge{background-color:#31708f;color:#d9edf7}.ptx-runestone-container .panel-info>.panel-footer+.panel-collapse>.panel-body,.runestone-sphinx .panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.ptx-runestone-container .panel-warning,.runestone-sphinx .panel-warning{border-color:#faebcc}.ptx-runestone-container .panel-warning>.panel-heading,.runestone-sphinx .panel-warning>.panel-heading{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.ptx-runestone-container .panel-warning>.panel-heading+.panel-collapse>.panel-body,.runestone-sphinx .panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.ptx-runestone-container .panel-warning>.panel-heading .badge,.runestone-sphinx .panel-warning>.panel-heading .badge{background-color:#8a6d3b;color:#fcf8e3}.ptx-runestone-container .panel-warning>.panel-footer+.panel-collapse>.panel-body,.runestone-sphinx .panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.ptx-runestone-container .panel-danger,.runestone-sphinx .panel-danger{border-color:#ebccd1}.ptx-runestone-container .panel-danger>.panel-heading,.runestone-sphinx .panel-danger>.panel-heading{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.ptx-runestone-container .panel-danger>.panel-heading+.panel-collapse>.panel-body,.runestone-sphinx .panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.ptx-runestone-container .panel-danger>.panel-heading .badge,.runestone-sphinx .panel-danger>.panel-heading .badge{background-color:#a94442;color:#f2dede}.ptx-runestone-container .panel-danger>.panel-footer+.panel-collapse>.panel-body,.runestone-sphinx .panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.ptx-runestone-container .embed-responsive,.runestone-sphinx .embed-responsive{display:block;height:0;overflow:hidden;padding:0;position:relative}.ptx-runestone-container .embed-responsive .embed-responsive-item,.ptx-runestone-container .embed-responsive embed,.ptx-runestone-container .embed-responsive iframe,.ptx-runestone-container .embed-responsive object,.ptx-runestone-container .embed-responsive video,.runestone-sphinx .embed-responsive .embed-responsive-item,.runestone-sphinx .embed-responsive embed,.runestone-sphinx .embed-responsive iframe,.runestone-sphinx .embed-responsive object,.runestone-sphinx .embed-responsive video{border:0;bottom:0;height:100%;left:0;position:absolute;top:0;width:100%}.ptx-runestone-container .embed-responsive-16by9,.runestone-sphinx .embed-responsive-16by9{padding-bottom:56.25%}.ptx-runestone-container .embed-responsive-4by3,.runestone-sphinx .embed-responsive-4by3{padding-bottom:75%}.ptx-runestone-container .well,.runestone-sphinx .well{background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05);margin-bottom:20px;min-height:20px;padding:19px}.ptx-runestone-container .well blockquote,.runestone-sphinx .well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.ptx-runestone-container .well-lg,.runestone-sphinx .well-lg{border-radius:6px;padding:24px}.ptx-runestone-container .well-sm,.runestone-sphinx .well-sm{border-radius:3px;padding:9px}.ptx-runestone-container .close,.runestone-sphinx .close{color:#000;filter:alpha(opacity=20);float:right;font-size:21px;font-weight:700;line-height:1;opacity:.2;text-shadow:0 1px 0 #fff}.ptx-runestone-container .close:focus,.ptx-runestone-container .close:hover,.runestone-sphinx .close:focus,.runestone-sphinx .close:hover{color:#000;cursor:pointer;filter:alpha(opacity=50);opacity:.5;text-decoration:none}.ptx-runestone-container button.close,.runestone-sphinx button.close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;cursor:pointer;padding:0}.ptx-runestone-container .modal-open,.runestone-sphinx .modal-open{overflow:hidden}.ptx-runestone-container .modal,.runestone-sphinx .modal{-webkit-overflow-scrolling:touch;bottom:0;display:none;left:0;outline:0;overflow:hidden;position:fixed;right:0;top:0;z-index:1050}.ptx-runestone-container .modal.fade .modal-dialog,.runestone-sphinx .modal.fade .modal-dialog{-webkit-transform:translateY(-25%);-ms-transform:translateY(-25%);-o-transform:translateY(-25%);transform:translateY(-25%);-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out,-o-transform .3s ease-out}.ptx-runestone-container .modal.in .modal-dialog,.runestone-sphinx .modal.in .modal-dialog{-webkit-transform:translate(0);-ms-transform:translate(0);-o-transform:translate(0);transform:translate(0)}.ptx-runestone-container .modal-open .modal,.runestone-sphinx .modal-open .modal{overflow-x:hidden;overflow-y:auto}.ptx-runestone-container .modal-dialog,.runestone-sphinx .modal-dialog{margin:10px;position:relative;width:auto}.ptx-runestone-container .modal-content,.runestone-sphinx .modal-content{background-clip:padding-box;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);outline:0;position:relative}.ptx-runestone-container .modal-backdrop,.runestone-sphinx .modal-backdrop{background-color:#000;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1040}.ptx-runestone-container .modal-backdrop.fade,.runestone-sphinx .modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.ptx-runestone-container .modal-backdrop.in,.runestone-sphinx .modal-backdrop.in{filter:alpha(opacity=50);opacity:.5}.ptx-runestone-container .modal-header,.runestone-sphinx .modal-header{border-bottom:1px solid #e5e5e5;padding:15px}.ptx-runestone-container .modal-header .close,.runestone-sphinx .modal-header .close{margin-top:-2px}.ptx-runestone-container .modal-title,.runestone-sphinx .modal-title{line-height:1.42857143;margin:0}.ptx-runestone-container .modal-body,.runestone-sphinx .modal-body{padding:15px;position:relative}.ptx-runestone-container .modal-footer,.runestone-sphinx .modal-footer{border-top:1px solid #e5e5e5;padding:15px;text-align:right}.ptx-runestone-container .modal-footer .btn+.btn,.runestone-sphinx .modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.ptx-runestone-container .modal-footer .btn-group .btn+.btn,.runestone-sphinx .modal-footer .btn-group .btn+.btn{margin-left:-1px}.ptx-runestone-container .modal-footer .btn-block+.btn-block,.runestone-sphinx .modal-footer .btn-block+.btn-block{margin-left:0}.ptx-runestone-container .modal-scrollbar-measure,.runestone-sphinx .modal-scrollbar-measure{height:50px;overflow:scroll;position:absolute;top:-9999px;width:50px}@media (min-width:768px){.ptx-runestone-container .modal-dialog,.runestone-sphinx .modal-dialog{margin:30px auto;width:600px}.ptx-runestone-container .modal-content,.runestone-sphinx .modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.ptx-runestone-container .modal-sm,.runestone-sphinx .modal-sm{width:300px}}@media (min-width:992px){.ptx-runestone-container .modal-lg,.runestone-sphinx .modal-lg{width:900px}}.ptx-runestone-container .tooltip,.runestone-sphinx .tooltip{word-wrap:normal;display:block;filter:alpha(opacity=0);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:12px;font-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.42857143;opacity:0;position:absolute;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;z-index:1070}.ptx-runestone-container .tooltip.in,.runestone-sphinx .tooltip.in{filter:alpha(opacity=90);opacity:.9}.ptx-runestone-container .tooltip.top,.runestone-sphinx .tooltip.top{margin-top:-3px;padding:5px 0}.ptx-runestone-container .tooltip.right,.runestone-sphinx .tooltip.right{margin-left:3px;padding:0 5px}.ptx-runestone-container .tooltip.bottom,.runestone-sphinx .tooltip.bottom{margin-top:3px;padding:5px 0}.ptx-runestone-container .tooltip.left,.runestone-sphinx .tooltip.left{margin-left:-3px;padding:0 5px}.ptx-runestone-container .tooltip.top .tooltip-arrow,.runestone-sphinx .tooltip.top .tooltip-arrow{border-top-color:#000;border-width:5px 5px 0;bottom:0;left:50%;margin-left:-5px}.ptx-runestone-container .tooltip.top-left .tooltip-arrow,.runestone-sphinx .tooltip.top-left .tooltip-arrow{border-top-color:#000;border-width:5px 5px 0;bottom:0;margin-bottom:-5px;right:5px}.ptx-runestone-container .tooltip.top-right .tooltip-arrow,.runestone-sphinx .tooltip.top-right .tooltip-arrow{border-top-color:#000;border-width:5px 5px 0;bottom:0;left:5px;margin-bottom:-5px}.ptx-runestone-container .tooltip.right .tooltip-arrow,.runestone-sphinx .tooltip.right .tooltip-arrow{border-right-color:#000;border-width:5px 5px 5px 0;left:0;margin-top:-5px;top:50%}.ptx-runestone-container .tooltip.left .tooltip-arrow,.runestone-sphinx .tooltip.left .tooltip-arrow{border-left-color:#000;border-width:5px 0 5px 5px;margin-top:-5px;right:0;top:50%}.ptx-runestone-container .tooltip.bottom .tooltip-arrow,.runestone-sphinx .tooltip.bottom .tooltip-arrow{border-bottom-color:#000;border-width:0 5px 5px;left:50%;margin-left:-5px;top:0}.ptx-runestone-container .tooltip.bottom-left .tooltip-arrow,.runestone-sphinx .tooltip.bottom-left .tooltip-arrow{border-bottom-color:#000;border-width:0 5px 5px;margin-top:-5px;right:5px;top:0}.ptx-runestone-container .tooltip.bottom-right .tooltip-arrow,.runestone-sphinx .tooltip.bottom-right .tooltip-arrow{border-bottom-color:#000;border-width:0 5px 5px;left:5px;margin-top:-5px;top:0}.ptx-runestone-container .tooltip-inner,.runestone-sphinx .tooltip-inner{background-color:#000;border-radius:4px;color:#fff;max-width:200px;padding:3px 8px;text-align:center}.ptx-runestone-container .tooltip-arrow,.runestone-sphinx .tooltip-arrow{border-color:transparent;border-style:solid;height:0;position:absolute;width:0}.ptx-runestone-container .popover,.runestone-sphinx .popover{word-wrap:normal;background-clip:padding-box;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);display:none;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;left:0;letter-spacing:normal;line-break:auto;line-height:1.42857143;max-width:276px;padding:1px;position:absolute;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;top:0;white-space:normal;word-break:normal;word-spacing:normal;z-index:1060}.ptx-runestone-container .popover.top,.runestone-sphinx .popover.top{margin-top:-10px}.ptx-runestone-container .popover.right,.runestone-sphinx .popover.right{margin-left:10px}.ptx-runestone-container .popover.bottom,.runestone-sphinx .popover.bottom{margin-top:10px}.ptx-runestone-container .popover.left,.runestone-sphinx .popover.left{margin-left:-10px}.ptx-runestone-container .popover>.arrow,.runestone-sphinx .popover>.arrow{border-width:11px}.ptx-runestone-container .popover>.arrow,.ptx-runestone-container .popover>.arrow:after,.runestone-sphinx .popover>.arrow,.runestone-sphinx .popover>.arrow:after{border-color:transparent;border-style:solid;display:block;height:0;position:absolute;width:0}.ptx-runestone-container .popover>.arrow:after,.runestone-sphinx .popover>.arrow:after{border-width:10px;content:""}.ptx-runestone-container .popover.top>.arrow,.runestone-sphinx .popover.top>.arrow{border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px;left:50%;margin-left:-11px}.ptx-runestone-container .popover.top>.arrow:after,.runestone-sphinx .popover.top>.arrow:after{border-bottom-width:0;border-top-color:#fff;bottom:1px;content:" ";margin-left:-10px}.ptx-runestone-container .popover.right>.arrow,.runestone-sphinx .popover.right>.arrow{border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25);left:-11px;margin-top:-11px;top:50%}.ptx-runestone-container .popover.right>.arrow:after,.runestone-sphinx .popover.right>.arrow:after{border-left-width:0;border-right-color:#fff;bottom:-10px;content:" ";left:1px}.ptx-runestone-container .popover.bottom>.arrow,.runestone-sphinx .popover.bottom>.arrow{border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);border-top-width:0;left:50%;margin-left:-11px;top:-11px}.ptx-runestone-container .popover.bottom>.arrow:after,.runestone-sphinx .popover.bottom>.arrow:after{border-bottom-color:#fff;border-top-width:0;content:" ";margin-left:-10px;top:1px}.ptx-runestone-container .popover.left>.arrow,.runestone-sphinx .popover.left>.arrow{border-left-color:#999;border-left-color:rgba(0,0,0,.25);border-right-width:0;margin-top:-11px;right:-11px;top:50%}.ptx-runestone-container .popover.left>.arrow:after,.runestone-sphinx .popover.left>.arrow:after{border-left-color:#fff;border-right-width:0;bottom:-10px;content:" ";right:1px}.ptx-runestone-container .popover-title,.runestone-sphinx .popover-title{background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0;font-size:14px;margin:0;padding:8px 14px}.ptx-runestone-container .popover-content,.runestone-sphinx .popover-content{padding:9px 14px}.ptx-runestone-container .carousel,.runestone-sphinx .carousel{position:relative}.ptx-runestone-container .carousel-inner,.runestone-sphinx .carousel-inner{overflow:hidden;position:relative;width:100%}.ptx-runestone-container .carousel-inner>.item,.runestone-sphinx .carousel-inner>.item{display:none;position:relative;-webkit-transition:left .6s ease-in-out;-o-transition:left .6s ease-in-out;transition:left .6s ease-in-out}.ptx-runestone-container .carousel-inner>.item>a>img,.ptx-runestone-container .carousel-inner>.item>img,.runestone-sphinx .carousel-inner>.item>a>img,.runestone-sphinx .carousel-inner>.item>img{line-height:1}@media (-webkit-transform-3d),(transform-3d){.ptx-runestone-container .carousel-inner>.item,.runestone-sphinx .carousel-inner>.item{-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px;-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out,-o-transform .6s ease-in-out}.ptx-runestone-container .carousel-inner>.item.active.right,.ptx-runestone-container .carousel-inner>.item.next,.runestone-sphinx .carousel-inner>.item.active.right,.runestone-sphinx .carousel-inner>.item.next{left:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.ptx-runestone-container .carousel-inner>.item.active.left,.ptx-runestone-container .carousel-inner>.item.prev,.runestone-sphinx .carousel-inner>.item.active.left,.runestone-sphinx .carousel-inner>.item.prev{left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.ptx-runestone-container .carousel-inner>.item.active,.ptx-runestone-container .carousel-inner>.item.next.left,.ptx-runestone-container .carousel-inner>.item.prev.right,.runestone-sphinx .carousel-inner>.item.active,.runestone-sphinx .carousel-inner>.item.next.left,.runestone-sphinx .carousel-inner>.item.prev.right{left:0;-webkit-transform:translateZ(0);transform:translateZ(0)}}.ptx-runestone-container .carousel-inner>.active,.ptx-runestone-container .carousel-inner>.next,.ptx-runestone-container .carousel-inner>.prev,.runestone-sphinx .carousel-inner>.active,.runestone-sphinx .carousel-inner>.next,.runestone-sphinx .carousel-inner>.prev{display:block}.ptx-runestone-container .carousel-inner>.active,.runestone-sphinx .carousel-inner>.active{left:0}.ptx-runestone-container .carousel-inner>.next,.ptx-runestone-container .carousel-inner>.prev,.runestone-sphinx .carousel-inner>.next,.runestone-sphinx .carousel-inner>.prev{position:absolute;top:0;width:100%}.ptx-runestone-container .carousel-inner>.next,.runestone-sphinx .carousel-inner>.next{left:100%}.ptx-runestone-container .carousel-inner>.prev,.runestone-sphinx .carousel-inner>.prev{left:-100%}.ptx-runestone-container .carousel-inner>.next.left,.ptx-runestone-container .carousel-inner>.prev.right,.runestone-sphinx .carousel-inner>.next.left,.runestone-sphinx .carousel-inner>.prev.right{left:0}.ptx-runestone-container .carousel-inner>.active.left,.runestone-sphinx .carousel-inner>.active.left{left:-100%}.ptx-runestone-container .carousel-inner>.active.right,.runestone-sphinx .carousel-inner>.active.right{left:100%}.ptx-runestone-container .carousel-control,.runestone-sphinx .carousel-control{background-color:transparent;bottom:0;color:#fff;filter:alpha(opacity=50);font-size:20px;left:0;opacity:.5;position:absolute;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);top:0;width:15%}.ptx-runestone-container .carousel-control.left,.runestone-sphinx .carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,transparent 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:linear-gradient(90deg,rgba(0,0,0,.5) 0,transparent);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#80000000",endColorstr="#00000000",GradientType=1)}.ptx-runestone-container .carousel-control.right,.runestone-sphinx .carousel-control.right{background-image:-webkit-linear-gradient(left,transparent,rgba(0,0,0,.5));background-image:-o-linear-gradient(left,transparent 0,rgba(0,0,0,.5) 100%);background-image:-webkit-gradient(linear,left top,right top,from(transparent),to(rgba(0,0,0,.5)));background-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.5));background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#00000000",endColorstr="#80000000",GradientType=1);left:auto;right:0}.ptx-runestone-container .carousel-control:focus,.ptx-runestone-container .carousel-control:hover,.runestone-sphinx .carousel-control:focus,.runestone-sphinx .carousel-control:hover{color:#fff;filter:alpha(opacity=90);opacity:.9;outline:0;text-decoration:none}.ptx-runestone-container .carousel-control .glyphicon-chevron-left,.ptx-runestone-container .carousel-control .glyphicon-chevron-right,.ptx-runestone-container .carousel-control .icon-next,.ptx-runestone-container .carousel-control .icon-prev,.runestone-sphinx .carousel-control .glyphicon-chevron-left,.runestone-sphinx .carousel-control .glyphicon-chevron-right,.runestone-sphinx .carousel-control .icon-next,.runestone-sphinx .carousel-control .icon-prev{display:inline-block;margin-top:-10px;position:absolute;top:50%;z-index:5}.ptx-runestone-container .carousel-control .glyphicon-chevron-left,.ptx-runestone-container .carousel-control .icon-prev,.runestone-sphinx .carousel-control .glyphicon-chevron-left,.runestone-sphinx .carousel-control .icon-prev{left:50%;margin-left:-10px}.ptx-runestone-container .carousel-control .glyphicon-chevron-right,.ptx-runestone-container .carousel-control .icon-next,.runestone-sphinx .carousel-control .glyphicon-chevron-right,.runestone-sphinx .carousel-control .icon-next{margin-right:-10px;right:50%}.ptx-runestone-container .carousel-control .icon-next,.ptx-runestone-container .carousel-control .icon-prev,.runestone-sphinx .carousel-control .icon-next,.runestone-sphinx .carousel-control .icon-prev{font-family:serif;height:20px;line-height:1;width:20px}.ptx-runestone-container .carousel-control .icon-prev:before,.runestone-sphinx .carousel-control .icon-prev:before{content:"\2039"}.ptx-runestone-container .carousel-control .icon-next:before,.runestone-sphinx .carousel-control .icon-next:before{content:"\203a"}.ptx-runestone-container .carousel-indicators,.runestone-sphinx .carousel-indicators{bottom:10px;left:50%;list-style:none;margin-left:-30%;padding-left:0;position:absolute;text-align:center;width:60%;z-index:15}.ptx-runestone-container .carousel-indicators li,.runestone-sphinx .carousel-indicators li{background-color:#000\9;background-color:transparent;border:1px solid #fff;border-radius:10px;cursor:pointer;display:inline-block;height:10px;margin:1px;text-indent:-999px;width:10px}.ptx-runestone-container .carousel-indicators .active,.runestone-sphinx .carousel-indicators .active{background-color:#fff;height:12px;margin:0;width:12px}.ptx-runestone-container .carousel-caption,.runestone-sphinx .carousel-caption{bottom:20px;color:#fff;left:15%;padding-bottom:20px;padding-top:20px;position:absolute;right:15%;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);z-index:10}.ptx-runestone-container .carousel-caption .btn,.runestone-sphinx .carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.ptx-runestone-container .carousel-control .glyphicon-chevron-left,.ptx-runestone-container .carousel-control .glyphicon-chevron-right,.ptx-runestone-container .carousel-control .icon-next,.ptx-runestone-container .carousel-control .icon-prev,.runestone-sphinx .carousel-control .glyphicon-chevron-left,.runestone-sphinx .carousel-control .glyphicon-chevron-right,.runestone-sphinx .carousel-control .icon-next,.runestone-sphinx .carousel-control .icon-prev{font-size:30px;height:30px;margin-top:-10px;width:30px}.ptx-runestone-container .carousel-control .glyphicon-chevron-left,.ptx-runestone-container .carousel-control .icon-prev,.runestone-sphinx .carousel-control .glyphicon-chevron-left,.runestone-sphinx .carousel-control .icon-prev{margin-left:-10px}.ptx-runestone-container .carousel-control .glyphicon-chevron-right,.ptx-runestone-container .carousel-control .icon-next,.runestone-sphinx .carousel-control .glyphicon-chevron-right,.runestone-sphinx .carousel-control .icon-next{margin-right:-10px}.ptx-runestone-container .carousel-caption,.runestone-sphinx .carousel-caption{left:20%;padding-bottom:30px;right:20%}.ptx-runestone-container .carousel-indicators,.runestone-sphinx .carousel-indicators{bottom:20px}}.ptx-runestone-container .btn-group-vertical>.btn-group:after,.ptx-runestone-container .btn-group-vertical>.btn-group:before,.ptx-runestone-container .btn-toolbar:after,.ptx-runestone-container .btn-toolbar:before,.ptx-runestone-container .clearfix:after,.ptx-runestone-container .clearfix:before,.ptx-runestone-container .container-fluid:after,.ptx-runestone-container .container-fluid:before,.ptx-runestone-container .container:after,.ptx-runestone-container .container:before,.ptx-runestone-container .dl-horizontal dd:after,.ptx-runestone-container .dl-horizontal dd:before,.ptx-runestone-container .form-horizontal .form-group:after,.ptx-runestone-container .form-horizontal .form-group:before,.ptx-runestone-container .modal-footer:after,.ptx-runestone-container .modal-footer:before,.ptx-runestone-container .modal-header:after,.ptx-runestone-container .modal-header:before,.ptx-runestone-container .nav:after,.ptx-runestone-container .nav:before,.ptx-runestone-container .navbar-collapse:after,.ptx-runestone-container .navbar-collapse:before,.ptx-runestone-container .navbar-header:after,.ptx-runestone-container .navbar-header:before,.ptx-runestone-container .navbar:after,.ptx-runestone-container .navbar:before,.ptx-runestone-container .pager:after,.ptx-runestone-container .pager:before,.ptx-runestone-container .panel-body:after,.ptx-runestone-container .panel-body:before,.ptx-runestone-container .row:after,.ptx-runestone-container .row:before,.runestone-sphinx .btn-group-vertical>.btn-group:after,.runestone-sphinx .btn-group-vertical>.btn-group:before,.runestone-sphinx .btn-toolbar:after,.runestone-sphinx .btn-toolbar:before,.runestone-sphinx .clearfix:after,.runestone-sphinx .clearfix:before,.runestone-sphinx .container-fluid:after,.runestone-sphinx .container-fluid:before,.runestone-sphinx .container:after,.runestone-sphinx .container:before,.runestone-sphinx .dl-horizontal dd:after,.runestone-sphinx .dl-horizontal dd:before,.runestone-sphinx .form-horizontal .form-group:after,.runestone-sphinx .form-horizontal .form-group:before,.runestone-sphinx .modal-footer:after,.runestone-sphinx .modal-footer:before,.runestone-sphinx .modal-header:after,.runestone-sphinx .modal-header:before,.runestone-sphinx .nav:after,.runestone-sphinx .nav:before,.runestone-sphinx .navbar-collapse:after,.runestone-sphinx .navbar-collapse:before,.runestone-sphinx .navbar-header:after,.runestone-sphinx .navbar-header:before,.runestone-sphinx .navbar:after,.runestone-sphinx .navbar:before,.runestone-sphinx .pager:after,.runestone-sphinx .pager:before,.runestone-sphinx .panel-body:after,.runestone-sphinx .panel-body:before,.runestone-sphinx .row:after,.runestone-sphinx .row:before{content:" ";display:table}.ptx-runestone-container .btn-group-vertical>.btn-group:after,.ptx-runestone-container .btn-toolbar:after,.ptx-runestone-container .clearfix:after,.ptx-runestone-container .container-fluid:after,.ptx-runestone-container .container:after,.ptx-runestone-container .dl-horizontal dd:after,.ptx-runestone-container .form-horizontal .form-group:after,.ptx-runestone-container .modal-footer:after,.ptx-runestone-container .modal-header:after,.ptx-runestone-container .nav:after,.ptx-runestone-container .navbar-collapse:after,.ptx-runestone-container .navbar-header:after,.ptx-runestone-container .navbar:after,.ptx-runestone-container .pager:after,.ptx-runestone-container .panel-body:after,.ptx-runestone-container .row:after,.runestone-sphinx .btn-group-vertical>.btn-group:after,.runestone-sphinx .btn-toolbar:after,.runestone-sphinx .clearfix:after,.runestone-sphinx .container-fluid:after,.runestone-sphinx .container:after,.runestone-sphinx .dl-horizontal dd:after,.runestone-sphinx .form-horizontal .form-group:after,.runestone-sphinx .modal-footer:after,.runestone-sphinx .modal-header:after,.runestone-sphinx .nav:after,.runestone-sphinx .navbar-collapse:after,.runestone-sphinx .navbar-header:after,.runestone-sphinx .navbar:after,.runestone-sphinx .pager:after,.runestone-sphinx .panel-body:after,.runestone-sphinx .row:after{clear:both}.ptx-runestone-container .center-block,.runestone-sphinx .center-block{display:block;margin-left:auto;margin-right:auto}.ptx-runestone-container .pull-right,.runestone-sphinx .pull-right{float:right!important}.ptx-runestone-container .pull-left,.runestone-sphinx .pull-left{float:left!important}.ptx-runestone-container .hide,.runestone-sphinx .hide{display:none!important}.ptx-runestone-container .show,.runestone-sphinx .show{display:block!important}.ptx-runestone-container .invisible,.runestone-sphinx .invisible{visibility:hidden}.ptx-runestone-container .text-hide,.runestone-sphinx .text-hide{background-color:transparent;border:0;color:transparent;font:0/0 a;text-shadow:none}.ptx-runestone-container .hidden,.runestone-sphinx .hidden{display:none!important}.ptx-runestone-container .affix,.runestone-sphinx .affix{position:fixed}@-ms-viewport{width:device-width}.ptx-runestone-container .visible-lg,.ptx-runestone-container .visible-lg-block,.ptx-runestone-container .visible-lg-inline,.ptx-runestone-container .visible-lg-inline-block,.ptx-runestone-container .visible-md,.ptx-runestone-container .visible-md-block,.ptx-runestone-container .visible-md-inline,.ptx-runestone-container .visible-md-inline-block,.ptx-runestone-container .visible-sm,.ptx-runestone-container .visible-sm-block,.ptx-runestone-container .visible-sm-inline,.ptx-runestone-container .visible-sm-inline-block,.ptx-runestone-container .visible-xs,.ptx-runestone-container .visible-xs-block,.ptx-runestone-container .visible-xs-inline,.ptx-runestone-container .visible-xs-inline-block,.runestone-sphinx .visible-lg,.runestone-sphinx .visible-lg-block,.runestone-sphinx .visible-lg-inline,.runestone-sphinx .visible-lg-inline-block,.runestone-sphinx .visible-md,.runestone-sphinx .visible-md-block,.runestone-sphinx .visible-md-inline,.runestone-sphinx .visible-md-inline-block,.runestone-sphinx .visible-sm,.runestone-sphinx .visible-sm-block,.runestone-sphinx .visible-sm-inline,.runestone-sphinx .visible-sm-inline-block,.runestone-sphinx .visible-xs,.runestone-sphinx .visible-xs-block,.runestone-sphinx .visible-xs-inline,.runestone-sphinx .visible-xs-inline-block{display:none!important}@media (max-width:767px){.ptx-runestone-container .visible-xs,.runestone-sphinx .visible-xs{display:block!important}.ptx-runestone-container table.visible-xs,.runestone-sphinx table.visible-xs{display:table!important}.ptx-runestone-container tr.visible-xs,.runestone-sphinx tr.visible-xs{display:table-row!important}.ptx-runestone-container td.visible-xs,.ptx-runestone-container th.visible-xs,.runestone-sphinx td.visible-xs,.runestone-sphinx th.visible-xs{display:table-cell!important}.ptx-runestone-container .visible-xs-block,.runestone-sphinx .visible-xs-block{display:block!important}.ptx-runestone-container .visible-xs-inline,.runestone-sphinx .visible-xs-inline{display:inline!important}.ptx-runestone-container .visible-xs-inline-block,.runestone-sphinx .visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.ptx-runestone-container .visible-sm,.runestone-sphinx .visible-sm{display:block!important}.ptx-runestone-container table.visible-sm,.runestone-sphinx table.visible-sm{display:table!important}.ptx-runestone-container tr.visible-sm,.runestone-sphinx tr.visible-sm{display:table-row!important}.ptx-runestone-container td.visible-sm,.ptx-runestone-container th.visible-sm,.runestone-sphinx td.visible-sm,.runestone-sphinx th.visible-sm{display:table-cell!important}.ptx-runestone-container .visible-sm-block,.runestone-sphinx .visible-sm-block{display:block!important}.ptx-runestone-container .visible-sm-inline,.runestone-sphinx .visible-sm-inline{display:inline!important}.ptx-runestone-container .visible-sm-inline-block,.runestone-sphinx .visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.ptx-runestone-container .visible-md,.runestone-sphinx .visible-md{display:block!important}.ptx-runestone-container table.visible-md,.runestone-sphinx table.visible-md{display:table!important}.ptx-runestone-container tr.visible-md,.runestone-sphinx tr.visible-md{display:table-row!important}.ptx-runestone-container td.visible-md,.ptx-runestone-container th.visible-md,.runestone-sphinx td.visible-md,.runestone-sphinx th.visible-md{display:table-cell!important}.ptx-runestone-container .visible-md-block,.runestone-sphinx .visible-md-block{display:block!important}.ptx-runestone-container .visible-md-inline,.runestone-sphinx .visible-md-inline{display:inline!important}.ptx-runestone-container .visible-md-inline-block,.runestone-sphinx .visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.ptx-runestone-container .visible-lg,.runestone-sphinx .visible-lg{display:block!important}.ptx-runestone-container table.visible-lg,.runestone-sphinx table.visible-lg{display:table!important}.ptx-runestone-container tr.visible-lg,.runestone-sphinx tr.visible-lg{display:table-row!important}.ptx-runestone-container td.visible-lg,.ptx-runestone-container th.visible-lg,.runestone-sphinx td.visible-lg,.runestone-sphinx th.visible-lg{display:table-cell!important}.ptx-runestone-container .visible-lg-block,.runestone-sphinx .visible-lg-block{display:block!important}.ptx-runestone-container .visible-lg-inline,.runestone-sphinx .visible-lg-inline{display:inline!important}.ptx-runestone-container .visible-lg-inline-block,.runestone-sphinx .visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.ptx-runestone-container .hidden-xs,.runestone-sphinx .hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.ptx-runestone-container .hidden-sm,.runestone-sphinx .hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.ptx-runestone-container .hidden-md,.runestone-sphinx .hidden-md{display:none!important}}@media (min-width:1200px){.ptx-runestone-container .hidden-lg,.runestone-sphinx .hidden-lg{display:none!important}}.ptx-runestone-container .visible-print,.runestone-sphinx .visible-print{display:none!important}@media print{.ptx-runestone-container .visible-print,.runestone-sphinx .visible-print{display:block!important}.ptx-runestone-container table.visible-print,.runestone-sphinx table.visible-print{display:table!important}.ptx-runestone-container tr.visible-print,.runestone-sphinx tr.visible-print{display:table-row!important}.ptx-runestone-container td.visible-print,.ptx-runestone-container th.visible-print,.runestone-sphinx td.visible-print,.runestone-sphinx th.visible-print{display:table-cell!important}}.ptx-runestone-container .visible-print-block,.runestone-sphinx .visible-print-block{display:none!important}@media print{.ptx-runestone-container .visible-print-block,.runestone-sphinx .visible-print-block{display:block!important}}.ptx-runestone-container .visible-print-inline,.runestone-sphinx .visible-print-inline{display:none!important}@media print{.ptx-runestone-container .visible-print-inline,.runestone-sphinx .visible-print-inline{display:inline!important}}.ptx-runestone-container .visible-print-inline-block,.runestone-sphinx .visible-print-inline-block{display:none!important}@media print{.ptx-runestone-container .visible-print-inline-block,.runestone-sphinx .visible-print-inline-block{display:inline-block!important}.ptx-runestone-container .hidden-print,.runestone-sphinx .hidden-print{display:none!important}}.ptx-runestone-container :root,.runestone-sphinx :root{--background:#fff;--outerBackground:#eee;--links:#0645ad;--bodyFont:#000;--tooltip:#fff;--grayToWhite:#333;--navbar:#f8f8f8;--navbarFont:#707070;--navbarFontHover:#000;--alerts:#d9edf7;--completionButton:#f19711;--completionButtonHover:#ff9f19;--admonition:#fcf8e3;--admonitionBorder:#fbeed5;--codeButtons:#474949;--codeButtonsBorder:#474949;--dangerAlerts:#f2dede;--successAlerts:#dff0d8;--contentWidthRegular:660px;--contentWidthWide:1060px;--componentBgColor:#f0f8ff;--componentBorderColor:#000;--questionBgColor:#e1efff}.ptx-runestone-container [data-theme=dark],.runestone-sphinx [data-theme=dark]{--background:#2c2f33;--outerBackground:#23272a;--links:#7289da;--bodyFont:#99aab5;--tooltip:#000;--grayToWhite:#fff;--navbar:#3d3d3d;--navbarFont:#fff;--navbarFontHover:#d6d6d6;--alerts:#714082;--completionButton:#650087;--completionButtonHover:#560073;--admonition:#3d3d3d;--admonitionBorder:#262626;--codeButtons:#7289da;--codeButtonsBorder:#fff;--dangerAlerts:#8c2626;--successAlerts:#217300;--componentBgColor:#07467d;--componentBorderColor:#939090;--questionBgColor:#17555d}.ptx-runestone-container td.linenos pre,.runestone-sphinx td.linenos pre{color:#6b6b6b}.ptx-runestone-container .str,.runestone-sphinx .str{color:#006b00}.ptx-runestone-container .parsons .block,.runestone-sphinx .parsons .block{background-color:#fafafa}.ptx-runestone-container .highlight .c1,.runestone-sphinx .highlight .c1{color:#376a7b}.ptx-runestone-container .highlight .nn,.runestone-sphinx .highlight .nn{color:#0f6c95}.ptx-runestone-container .highlight .gp,.runestone-sphinx .highlight .gp{color:#a14c08}.ptx-runestone-container .highlight .si,.runestone-sphinx .highlight .si{color:#3c773d}.ptx-runestone-container .highlight .nc,.runestone-sphinx .highlight .nc{color:#0b719d}.ptx-runestone-container ul.search li div.context,.runestone-sphinx ul.search li div.context{color:#6b6b6b}.ptx-runestone-container span.highlighted,.runestone-sphinx span.highlighted{color:#4d4d4d}.ptx-runestone-container .CodeMirror-linenumber,.runestone-sphinx .CodeMirror-linenumber{color:#6b6b6b}.ptx-runestone-container .alert-warning,.runestone-sphinx .alert-warning{background-color:var(--admonition);border-color:var(--admonitionBorder)}.ptx-runestone-container div.ExecutionVisualizer table#pyCodeOutput .lineNo,.runestone-sphinx div.ExecutionVisualizer table#pyCodeOutput .lineNo{color:#6b6b6b}.ptx-runestone-container body,.runestone-sphinx body{background-color:var(--outerBackground);counter-reset:rscomponent;padding-top:60px}.ptx-runestone-container h5,.runestone-sphinx h5{font-weight:700;padding:10px 0}.ptx-runestone-container #table-of-contents a,.runestone-sphinx #table-of-contents a{color:var(--links)}.ptx-runestone-container #table-of-contents a:hover,.runestone-sphinx #table-of-contents a:hover{color:var(--links);text-decoration:underline}.ptx-runestone-container #table-of-contents.section,.runestone-sphinx #table-of-contents.section{font-size:16px}.ptx-runestone-container .navbar-default,.runestone-sphinx .navbar-default{background-color:var(--navbar)}.ptx-runestone-container .navbar-default .navbar-nav>li,.ptx-runestone-container .navbar-default .navbar-nav>li>a,.runestone-sphinx .navbar-default .navbar-nav>li,.runestone-sphinx .navbar-default .navbar-nav>li>a{color:var(--navbarFont)}.ptx-runestone-container .navbar-default .navbar-nav>li>a:hover,.runestone-sphinx .navbar-default .navbar-nav>li>a:hover{color:var(--navbarFontHover)}.ptx-runestone-container .navbar-default .navbar-brand,.runestone-sphinx .navbar-default .navbar-brand{color:var(--navbarFont)}.ptx-runestone-container .toctree-wrapper,.runestone-sphinx .toctree-wrapper{font-size:16px}.ptx-runestone-container .toctree-wrapper a,.runestone-sphinx .toctree-wrapper a{color:var(--links)}.ptx-runestone-container .toctree-wrapper a:hover,.runestone-sphinx .toctree-wrapper a:hover{color:var(--links);text-decoration:underline}.ptx-runestone-container #index-and-search.section,.runestone-sphinx #index-and-search.section{font-size:16px}.ptx-runestone-container #index-and-search.section a,.runestone-sphinx #index-and-search.section a{color:var(--links)}.ptx-runestone-container #index-and-search.section a:hover,.runestone-sphinx #index-and-search.section a:hover{color:var(--links);text-decoration:underline}.ptx-runestone-container a,.runestone-sphinx a{color:var(--links)}@media (max-width:768px){.ptx-runestone-container body,.runestone-sphinx body{padding-top:0}.ptx-runestone-container .navbar-fixed-top,.runestone-sphinx .navbar-fixed-top{position:static}}@media (min-width:768px){.ptx-runestone-container .navbar .divider-vertical,.runestone-sphinx .navbar .divider-vertical{border-left:1px solid #f2f2f2;margin:0 3px}.ptx-runestone-container .navbar-fixed-top .container,.runestone-sphinx .navbar-fixed-top .container{padding:0}}.ptx-runestone-container div.container,.runestone-sphinx div.container{background-color:var(--background)}.ptx-runestone-container .container,.runestone-sphinx .container{padding-left:10px;padding-right:10px}.ptx-runestone-container .runestone,.runestone-sphinx .runestone{background-color:var(--componentBgColor);border-color:var(--componentBorderColor);border-radius:10px;border-style:solid;clear:both;margin-bottom:20px;margin-top:20px;padding:15px}.ptx-runestone-container #main-content section>:not(section),.runestone-sphinx #main-content section>:not(section){margin-left:auto;margin-right:auto;max-width:var(--contentWidthRegular)}.ptx-runestone-container #main-content section>.codelens,.ptx-runestone-container #main-content section>.jupyterlite_sphinx_iframe_container,.ptx-runestone-container #main-content section>.question,.ptx-runestone-container #main-content section>.runestone.ac_section,.ptx-runestone-container #main-content section>.runestone.codelens,.ptx-runestone-container #main-content section>.runestone.parsons-container,.ptx-runestone-container #main-content section>.runestone.parsons-problems,.ptx-runestone-container #main-content section>.timedAssessment,.ptx-runestone-container #main-content section>section,.runestone-sphinx #main-content section>.codelens,.runestone-sphinx #main-content section>.jupyterlite_sphinx_iframe_container,.runestone-sphinx #main-content section>.question,.runestone-sphinx #main-content section>.runestone.ac_section,.runestone-sphinx #main-content section>.runestone.codelens,.runestone-sphinx #main-content section>.runestone.parsons-container,.runestone-sphinx #main-content section>.runestone.parsons-problems,.runestone-sphinx #main-content section>.timedAssessment,.runestone-sphinx #main-content section>section{margin-left:auto;margin-right:auto;max-width:var(--contentWidthWide)}.ptx-runestone-container #main-content section>.full-width,.runestone-sphinx #main-content section>.full-width{max-width:var(--contentWidthWide)}.ptx-runestone-container .container section>img,.runestone-sphinx .container section>img{display:block;margin-left:auto;margin-right:auto}.ptx-runestone-container .container-fluid>.navbar-collapse,.ptx-runestone-container .container-fluid>.navbar-header,.ptx-runestone-container .container>.navbar-collapse,.ptx-runestone-container .container>.navbar-header,.runestone-sphinx .container-fluid>.navbar-collapse,.runestone-sphinx .container-fluid>.navbar-header,.runestone-sphinx .container>.navbar-collapse,.runestone-sphinx .container>.navbar-header{margin-left:0;margin-right:0}.ptx-runestone-container .navbar>.container .navbar-brand,.runestone-sphinx .navbar>.container .navbar-brand{margin-left:0}.ptx-runestone-container .navbar>.container,.runestone-sphinx .navbar>.container{background-color:var(--navbar)}.ptx-runestone-container .navbar-toggle,.runestone-sphinx .navbar-toggle{margin-right:0}.ptx-runestone-container .footer>.container,.runestone-sphinx .footer>.container{background-color:var(--outerBackground)}.ptx-runestone-container .footer>.container p>a,.runestone-sphinx .footer>.container p>a{color:var(--links)}.ptx-runestone-container .brand-logo,.runestone-sphinx .brand-logo{display:block;float:left;margin-top:4px}.ptx-runestone-container .brand-logo img,.runestone-sphinx .brand-logo img{height:40px}.ptx-runestone-container .social-menu,.runestone-sphinx .social-menu{padding:10px 10px 15px 20px;width:220px}.ptx-runestone-container .fb-like,.runestone-sphinx .fb-like{margin-top:7px}.ptx-runestone-container .fb_iframe_widget iframe,.ptx-runestone-container .fb_iframe_widget span,.runestone-sphinx .fb_iframe_widget iframe,.runestone-sphinx .fb_iframe_widget span{height:20px!important;width:82px!important}.ptx-runestone-container .twitter-follow-button,.runestone-sphinx .twitter-follow-button{margin-top:10px}.ptx-runestone-container .gittip,.runestone-sphinx .gittip{margin-top:8px}.ptx-runestone-container .gittip-button,.runestone-sphinx .gittip-button{margin-bottom:-6px}.ptx-runestone-container .dropdown-menu>li>div,.ptx-runestone-container .dropdown-menu>li>label,.ptx-runestone-container .dropdown-menu>li>span,.runestone-sphinx .dropdown-menu>li>div,.runestone-sphinx .dropdown-menu>li>label,.runestone-sphinx .dropdown-menu>li>span{clear:both;color:var(--grayToWhite);display:block;font-weight:700;line-height:20px;padding:3px 20px;white-space:nowrap}.ptx-runestone-container .dropdown-menu>li>label:focus,.ptx-runestone-container .dropdown-menu>li>label:hover,.runestone-sphinx .dropdown-menu>li>label:focus,.runestone-sphinx .dropdown-menu>li>label:hover{background-color:#f5f5f5;color:#262626;text-decoration:none}.ptx-runestone-container .dropdown-menu>li>a,.runestone-sphinx .dropdown-menu>li>a{color:var(--grayToWhite)}.ptx-runestone-container .loggedinuser,.runestone-sphinx .loggedinuser{font-weight:700}.ptx-runestone-container .CodeMirror,.runestone-sphinx .CodeMirror{background-color:var(--background);clear:both;margin:0 0 1em}.ptx-runestone-container .ac_section .CodeMirror pre,.runestone-sphinx .ac_section .CodeMirror pre{word-wrap:normal;background:transparent;-moz-border-radius:0;-webkit-border-radius:0;-o-border-radius:0;border-radius:0;border-width:0;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:inherit;margin:0;padding:0;white-space:pre}.ptx-runestone-container btn.btn-sm,.ptx-runestone-container button.btn,.ptx-runestone-container input[type=button].btn.btn-sm,.ptx-runestone-container input[type=submit].btn.btn-sm,.runestone-sphinx btn.btn-sm,.runestone-sphinx button.btn,.runestone-sphinx input[type=button].btn.btn-sm,.runestone-sphinx input[type=submit].btn.btn-sm{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1em}.ptx-runestone-container .dropdown-menu .input-group .input-group-btn button.btn,.runestone-sphinx .dropdown-menu .input-group .input-group-btn button.btn{font-size:14px}.ptx-runestone-container .btn,.runestone-sphinx .btn{margin:5px}.ptx-runestone-container .btn.disabled,.runestone-sphinx .btn.disabled{pointer-events:auto}.ptx-runestone-container .btn-default,.ptx-runestone-container .btn-default.disabled,.ptx-runestone-container .btn-default.disabled:hover,.ptx-runestone-container .btn-default[disabled],.ptx-runestone-container .btn-default[disabled]:hover,.runestone-sphinx .btn-default,.runestone-sphinx .btn-default.disabled,.runestone-sphinx .btn-default.disabled:hover,.runestone-sphinx .btn-default[disabled],.runestone-sphinx .btn-default[disabled]:hover{background-color:var(--codeButtons);border-color:var(codeButtonsBorder);color:#fff}.ptx-runestone-container .btn-default.active,.ptx-runestone-container .btn-default:active,.ptx-runestone-container .btn-default:focus,.ptx-runestone-container .btn-default:hover,.runestone-sphinx .btn-default.active,.runestone-sphinx .btn-default:active,.runestone-sphinx .btn-default:focus,.runestone-sphinx .btn-default:hover{background-color:#3a3c3c;border-color:#2e2f2f;color:#fff}.ptx-runestone-container input[type=checkbox],.ptx-runestone-container input[type=radio],.runestone-sphinx input[type=checkbox],.runestone-sphinx input[type=radio]{margin-right:5px}.ptx-runestone-container .tooltip,.runestone-sphinx .tooltip{z-index:2000!important}.ptx-runestone-container .tooltip.in,.runestone-sphinx .tooltip.in{filter:alpha(opacity=80);opacity:.8}.ptx-runestone-container h2,.runestone-sphinx h2{margin-top:20px}.ptx-runestone-container .alert form,.runestone-sphinx .alert form{margin-bottom:0}.ptx-runestone-container .alert,.runestone-sphinx .alert{color:var(--grayToWhite);padding:10px}.ptx-runestone-container .alert-info,.runestone-sphinx .alert-info{background-color:var(--alerts)}.ptx-runestone-container .alert-danger,.runestone-sphinx .alert-danger{background-color:var(--dangerAlerts)}.ptx-runestone-container .alert-success,.runestone-sphinx .alert-success{background-color:var(--successAlerts)}.ptx-runestone-container .unittest-results.alert-danger,.runestone-sphinx .unittest-results.alert-danger{background-color:var(--dangerAlerts)!important}.ptx-runestone-container .unittest-results.alert-success,.runestone-sphinx .unittest-results.alert-success{background-color:var(--successAlerts)!important}.ptx-runestone-container .alert label,.runestone-sphinx .alert label{font-weight:400}.ptx-runestone-container .navbar_message,.runestone-sphinx .navbar_message{font-weight:700;margin-top:15px}.ptx-runestone-container dt.label>span.brackets:not(span.brackets>a),.ptx-runestone-container dt.label>span.fn-backref:not(span.fn-backref>a),.runestone-sphinx dt.label>span.brackets:not(span.brackets>a),.runestone-sphinx dt.label>span.fn-backref:not(span.fn-backref>a){color:#000}.ptx-runestone-container .admonition,.runestone-sphinx .admonition{background-color:var(--admonition);border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;margin-bottom:20px!important;margin-top:20px!important;padding:8px 35px 8px 14px!important;text-shadow:0 1px 0 hsla(0,0%,100%,.5)}.ptx-runestone-container .admonition.caution,.runestone-sphinx .admonition.caution{background-color:#f2dede;border-color:#eed3d7;color:#a33f3e}.ptx-runestone-container .admonition.note,.ptx-runestone-container .admonition.tip,.runestone-sphinx .admonition.note,.runestone-sphinx .admonition.tip{background-color:#d9edf7;border-color:#bce8f1;color:#333}.ptx-runestone-container div.flash,.runestone-sphinx div.flash{-webkit-font-smoothing:antialiased;background-color:#000;background-image:-webkit-linear-gradient(top,#222,#000);background-image:-o-linear-gradient(top,#222,#000);background-image:-moz-linear-gradient(90deg,#222,#000);background-image:linear-gradient(top,#222,#000);background-repeat:repeat-x;border:2px solid #fff;border-radius:8px;-moz-border-radius:8px;-webkit-border-radius:8px;color:#fff;cursor:pointer;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:700;margin:0 0 10px 10px;opacity:.95;padding:10px;position:fixed;right:45px;top:55px;vertical-align:middle;z-index:2000}.ptx-runestone-container #web2py_user_form,.runestone-sphinx #web2py_user_form{margin-top:10px}.ptx-runestone-container #web2py_user_form form,.runestone-sphinx #web2py_user_form form{float:left;margin-right:150px;padding-top:3px}.ptx-runestone-container #web2py_user_form td,.runestone-sphinx #web2py_user_form td{padding-bottom:15px}.ptx-runestone-container #web2py_user_form td.w2p_fw,.runestone-sphinx #web2py_user_form td.w2p_fw{width:299px}.ptx-runestone-container #auth-actions,.runestone-sphinx #auth-actions{margin-top:50px}.ptx-runestone-container #sign_in_text td,.runestone-sphinx #sign_in_text td{color:#333;font-family:lucida grande,Verdana,sans-serif;font-size:17px;padding-bottom:13px}.ptx-runestone-container #auth_user_remember,.runestone-sphinx #auth_user_remember{margin-top:-20px}.ptx-runestone-container #exercises>ol>li,.ptx-runestone-container #programming-exercises>ol>li,.runestone-sphinx #exercises>ol>li,.runestone-sphinx #programming-exercises>ol>li{margin-bottom:30px}.ptx-runestone-container #exercises>ol>li:nth-child(2n),.ptx-runestone-container #programming-exercises>ol>li:nth-child(2n),.runestone-sphinx #exercises>ol>li:nth-child(2n),.runestone-sphinx #programming-exercises>ol>li:nth-child(2n){background:#faf7df;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;padding:1.2em 1.4em}.ptx-runestone-container .scratch-ac-modal,.runestone-sphinx .scratch-ac-modal{max-height:90%;overflow-y:scroll;width:90%}.ptx-runestone-container .compare-modal .progress,.runestone-sphinx .compare-modal .progress{margin-bottom:0}.ptx-runestone-container .compare-me-progress,.runestone-sphinx .compare-me-progress{width:100%}.ptx-runestone-container .compare-me-progress .progress-bar,.ptx-runestone-container .unittest-results-progress .progress-bar,.runestone-sphinx .compare-me-progress .progress-bar,.runestone-sphinx .unittest-results-progress .progress-bar{color:#333}.ptx-runestone-container .unittest-results-progress,.runestone-sphinx .unittest-results-progress{width:25%}.ptx-runestone-container .compare-modal,.runestone-sphinx .compare-modal{width:350px}.ptx-runestone-container .compare-modal table,.runestone-sphinx .compare-modal table{border-collapse:separate;border-spacing:10px 5px}.ptx-runestone-container .codelens-modal,.runestone-sphinx .codelens-modal{bottom:auto;left:auto;right:20%;top:20%}@media (max-width:768px){.ptx-runestone-container .codelens-modal,.runestone-sphinx .codelens-modal{bottom:0!important;left:0!important;right:0!important;top:0!important}}.ptx-runestone-container .codelens-modal>.modal-dialog,.runestone-sphinx .codelens-modal>.modal-dialog{width:400px}.ptx-runestone-container .footnote.table,.runestone-sphinx .footnote.table{margin-bottom:10px;width:auto}.ptx-runestone-container .footnote.table td.label,.runestone-sphinx .footnote.table td.label{background-color:#d9edf7;padding:2px 5px}.ptx-runestone-container .ac-canvas,.runestone-sphinx .ac-canvas{background-color:#fff;display:inline-block}.ptx-runestone-container .video-play-overlay,.runestone-sphinx .video-play-overlay{background-position:50%;background-repeat:no-repeat;height:85px;left:44%;position:relative;top:-150px;width:130px}.ptx-runestone-container .video_popup video,.runestone-sphinx .video_popup video{cursor:pointer;width:var(--contentWidthRegular)}.ptx-runestone-container .ui-sortable-helper,.runestone-sphinx .ui-sortable-helper{height:auto!important;width:auto!important}.ptx-runestone-container .navLink,.runestone-sphinx .navLink{bottom:65px;display:inline;opacity:.4;position:fixed;z-index:2}.ptx-runestone-container .navLink:hover,.runestone-sphinx .navLink:hover{opacity:1}.ptx-runestone-container .navLink a,.runestone-sphinx .navLink a{background-color:#fff;border:2px solid #d3d3d3;display:inline-block;height:50px;width:100px}.ptx-runestone-container #relations-next,.runestone-sphinx #relations-next{right:35px}.ptx-runestone-container #relations-prev,.runestone-sphinx #relations-prev{left:35px}.ptx-runestone-container .nextprev-list,.runestone-sphinx .nextprev-list{height:50px;margin:10px;padding-left:0}@media (max-width:600px){.ptx-runestone-container .navLink,.runestone-sphinx .navLink{bottom:auto;display:inline-block;position:absolute}.ptx-runestone-container #relations-next,.ptx-runestone-container #relations-prev,.runestone-sphinx #relations-next,.runestone-sphinx #relations-prev{display:inline;padding:0 20px;width:25%}}.ptx-runestone-container #completionButton,.runestone-sphinx #completionButton{color:var(--completionButtonText);font-weight:700;margin-bottom:15px;margin-top:25px;padding-left:70px;padding-right:70px}.ptx-runestone-container .buttonAskCompletion,.runestone-sphinx .buttonAskCompletion{background-color:var(--completionButton);border-color:var(--completionButtonHover);font-weight:700}.ptx-runestone-container .buttonAskCompletion:hover,.runestone-sphinx .buttonAskCompletion:hover{background-color:var(--completionButtonHover);border-color:var(--completionButtonHover)}.ptx-runestone-container .buttonConfirmCompletion,.runestone-sphinx .buttonConfirmCompletion{background-color:#377e22;border-color:#3dc682;color:#fff!important}.ptx-runestone-container .buttonConfirmCompletion:hover,.runestone-sphinx .buttonConfirmCompletion:hover{background-color:#3dc682;border-color:#3dc682}.ptx-runestone-container .navLinkBg,.runestone-sphinx .navLinkBg{background-color:#fff;bottom:55px;-webkit-box-shadow:0 0 3px rgba(50,50,50,.5);-moz-box-shadow:0 0 3px rgba(50,50,50,.5);box-shadow:0 0 3px rgba(50,50,50,.5);color:#999;font-weight:700;height:40px;position:fixed;z-index:1}.ptx-runestone-container .navLinkBg:hover,.runestone-sphinx .navLinkBg:hover{color:#999}.ptx-runestone-container #navLinkBgRight,.runestone-sphinx #navLinkBgRight{padding:10px 15px 0 65px;right:-1000px}.ptx-runestone-container #navLinkBgLeft,.runestone-sphinx #navLinkBgLeft{left:-65px;padding-left:15px;padding-right:50px}.ptx-runestone-container .activehtml,.runestone-sphinx .activehtml{background-color:#fff;height:400px;width:100%}.ptx-runestone-container .container section>div.sidebar,.runestone-sphinx .container section>div.sidebar{margin:0 0 .5em 1em}.ptx-runestone-container a.disqus_thread_link,.runestone-sphinx a.disqus_thread_link{display:block}.ptx-runestone-container .reveal_button,.runestone-sphinx .reveal_button{display:block;margin-left:0}.ptx-runestone-container iframe[seamless],.runestone-sphinx iframe[seamless]{display:block}@media (min-width:768px){.ptx-runestone-container .container section>div.sidebar,.runestone-sphinx .container section>div.sidebar{margin:0 3em .5em 1em}}@media (min-width:992px){.ptx-runestone-container .container section>div.sidebar,.runestone-sphinx .container section>div.sidebar{margin:0 11em .5em 1em}}@media (min-width:1200px){.ptx-runestone-container .container section>div.sidebar,.runestone-sphinx .container section>div.sidebar{margin:0 18em .5em 1em}}.ptx-runestone-container div.ExecutionVisualizer table.visualizer,.runestone-sphinx div.ExecutionVisualizer table.visualizer{background-color:#fff;margin-left:auto;margin-right:auto;width:auto}.ptx-runestone-container .sltooltip,.runestone-sphinx .sltooltip{bottom:120%;display:block;font-size:11px;margin-left:-2em;margin-top:-2px;padding-bottom:5px;position:absolute;visibility:visible;z-index:1020}.ptx-runestone-container .sltooltip .sltooltip-arrow,.runestone-sphinx .sltooltip .sltooltip-arrow{border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #000;bottom:0;height:0;left:50%;margin-left:-5px;position:absolute;width:0}.ptx-runestone-container .sltooltip-inner,.runestone-sphinx .sltooltip-inner{background-color:#000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;color:var(--tooltip);max-width:200px;padding:3px 8px;text-align:center;text-decoration:none}.ptx-runestone-container ul.dropdown-menu.globaltoc,.runestone-sphinx ul.dropdown-menu.globaltoc{max-height:700px;overflow:auto}.ptx-runestone-container .globaltoc span.caption-text,.runestone-sphinx .globaltoc span.caption-text{display:inline-block;font-size:large;font-weight:700}.ptx-runestone-container textarea.lp-result,.runestone-sphinx textarea.lp-result{font-family:monospace;height:10em;width:100%}.ptx-runestone-container .visuallyhidden,.runestone-sphinx .visuallyhidden{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.ptx-runestone-container .visuallyhidden.focusable:active,.ptx-runestone-container .visuallyhidden.focusable:focus,.runestone-sphinx .visuallyhidden.focusable:active,.runestone-sphinx .visuallyhidden.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;white-space:inherit;width:auto}.ptx-runestone-container .blockquote,.runestone-sphinx .blockquote{font-size:large;font-style:italic;padding-left:2em;padding-right:2em;text-align:center}.ptx-runestone-container #subchapterprogress.ui-progressbar .ui-progressbar-value,.runestone-sphinx #subchapterprogress.ui-progressbar .ui-progressbar-value{border-radius:0;margin:0}.ptx-runestone-container #subchapterprogress>div,.runestone-sphinx #subchapterprogress>div{background:green}.ptx-runestone-container #subchapterprogress>div.loggedout,.runestone-sphinx #subchapterprogress>div.loggedout{background:#d3d3d3}.ptx-runestone-container .runestone_caption,.runestone-sphinx .runestone_caption{text-align:center}.ptx-runestone-container .runestone_caption_divid,.runestone-sphinx .runestone_caption_divid{opacity:50%}.ptx-runestone-container #questions .runestone_caption:before,.runestone-sphinx #questions .runestone_caption:before{content:"Problem: " counter(rscomponent) " -- ";counter-increment:rscomponent}.ptx-runestone-container body,.runestone-sphinx body{color:var(--bodyFont)}.ptx-runestone-container .jupyter_container .output,.runestone-sphinx .jupyter_container .output{margin-top:10px}.ptx-runestone-container .jupyter_container .output td,.ptx-runestone-container .jupyter_container .output th,.runestone-sphinx .jupyter_container .output td,.runestone-sphinx .jupyter_container .output th{padding-left:5px;padding-right:5px}.ptx-runestone-container .dropdown-menu>li>label.theme-switch,.runestone-sphinx .dropdown-menu>li>label.theme-switch{align-items:center;cursor:pointer;display:flex;font-weight:400}.ptx-runestone-container .theme-switch input,.runestone-sphinx .theme-switch input{display:none}.ptx-runestone-container .theme-switch .slider,.runestone-sphinx .theme-switch .slider{background-color:#ccc;height:1.25em;margin-right:3px;position:relative;transition:.4s;width:2em}.ptx-runestone-container .theme-switch .slider:before,.runestone-sphinx .theme-switch .slider:before{background-color:#fff;bottom:2px;content:"";height:calc(1.25em - 4px);left:2px;position:absolute;transition:.4s;width:calc(1.25em - 4px)}.ptx-runestone-container .theme-switch input:checked+.slider,.runestone-sphinx .theme-switch input:checked+.slider{background-color:#66bb6a}.ptx-runestone-container .theme-switch input:checked+.slider:before,.runestone-sphinx .theme-switch input:checked+.slider:before{transform:translateX(calc(.75em - 1px))}.ptx-runestone-container .theme-switch .slider.round,.ptx-runestone-container .theme-switch .slider.round:before,.runestone-sphinx .theme-switch .slider.round,.runestone-sphinx .theme-switch .slider.round:before{border-radius:1.25em}.ptx-runestone-container .adcopy,.runestone-sphinx .adcopy{background-color:#f2e0c3;border:2px solid #000;border-radius:10px;margin-left:auto;margin-right:auto;margin-top:10px;padding:10px;width:60%}.ptx-runestone-container .adcopy .donateb,.runestone-sphinx .adcopy .donateb{margin-left:30%}.ptx-runestone-container .isCorrect:before,.runestone-sphinx .isCorrect:before{content:"✅ ";float:right;padding-left:4px}.ptx-runestone-container .isInCorrect:before,.runestone-sphinx .isInCorrect:before{content:"⚠️ ";float:right;padding-left:4px}.ptx-runestone-container pre,.runestone-sphinx pre{background:inherit;color:inherit}.ptx-runestone-container summary.ptx-footnote__number,.runestone-sphinx summary.ptx-footnote__number{display:inline}.ptx-runestone-container summary.knowl__link,.runestone-sphinx summary.knowl__link{display:list-item inline}.ptx-runestone-container details.ptx-footnote,.runestone-sphinx details.ptx-footnote{display:inline}.ptx-runestone-container .handsontable td,.ptx-runestone-container .handsontable th,.runestone-sphinx .handsontable td,.runestone-sphinx .handsontable th{background-color:var(--content-background,#fff);color:var(--bodyFont,#000)}.ptx-runestone-container legend,.runestone-sphinx legend{border-bottom-color:var(--grayToWhite,#333);color:var(--grayToWhite,#333)}.ptx-runestone-container .autopermalink,.runestone-sphinx .autopermalink{display:none}.ptx-runestone-container :root,.runestone-sphinx :root{--codebuttons:#474949}.ptx-runestone-container [data-theme=dark],.runestone-sphinx [data-theme=dark]{--codebuttons:#2c0aa6}.ptx-runestone-container li.dropdown.open a.dropdown-toggle,.ptx-runestone-container li.dropdown.open a.dropdown-toggle:focus,.runestone-sphinx li.dropdown.open a.dropdown-toggle,.runestone-sphinx li.dropdown.open a.dropdown-toggle:focus{background-color:#2a5659!important;border:0!important;color:#f8f8f8!important}.ptx-runestone-container a.dropdown-toggle:focus,.runestone-sphinx a.dropdown-toggle:focus{background-color:#52a6ac!important;color:#f8f8f8!important}.ptx-runestone-container li.divider-vertical,.runestone-sphinx li.divider-vertical{margin:0!important}.ptx-runestone-container li.dropdown a.dropdown-toggle,.runestone-sphinx li.dropdown a.dropdown-toggle{padding:15px 18px!important}.ptx-runestone-container button.btn.btn-default:active,.ptx-runestone-container button.btn.btn-default:focus,.runestone-sphinx button.btn.btn-default:active,.runestone-sphinx button.btn.btn-default:focus{background-color:#fff!important;color:#474949!important}.ptx-runestone-container button.btn.btn-default,.runestone-sphinx button.btn.btn-default{background-color:#474949!important;color:#fff!important}.ptx-runestone-container button.btn.btn-default.btn-sm.disabled:active,.ptx-runestone-container button.btn.btn-default.btn-sm.disabled:focus,.runestone-sphinx button.btn.btn-default.btn-sm.disabled:active,.runestone-sphinx button.btn.btn-default.btn-sm.disabled:focus{background-color:#fff!important;color:#474949!important}.ptx-runestone-container button.btn.btn-default.btn-sm.disabled,.runestone-sphinx button.btn.btn-default.btn-sm.disabled{background-color:#474949!important;color:#fff!important}.ptx-runestone-container button.btn.btn-success:active,.ptx-runestone-container button.btn.btn-success:focus,.runestone-sphinx button.btn.btn-success:active,.runestone-sphinx button.btn.btn-success:focus{background-color:#fff!important;color:#427e44!important}.ptx-runestone-container button.btn.btn-success,.runestone-sphinx button.btn.btn-success{background-color:#427e44!important;color:#fff!important}.ptx-runestone-container button.btn.btn-primary:active,.ptx-runestone-container button.btn.btn-primary:focus,.runestone-sphinx button.btn.btn-primary:active,.runestone-sphinx button.btn.btn-primary:focus{background-color:#fff!important;color:#3379b6!important}.ptx-runestone-container button.btn.btn-primary,.runestone-sphinx button.btn.btn-primary{background-color:#3379b6!important;color:#fff!important}.ptx-runestone-container button.btn.btn-info:active,.ptx-runestone-container button.btn.btn-info:focus,.runestone-sphinx button.btn.btn-info:active,.runestone-sphinx button.btn.btn-info:focus{background-color:#fff!important;color:#1a6a83!important}.ptx-runestone-container button.btn.btn-info,.runestone-sphinx button.btn.btn-info{background-color:#1a6a83!important;color:#fff!important}.ptx-runestone-container button.btn.btn-warning:active,.ptx-runestone-container button.btn.btn-warning:focus,.runestone-sphinx button.btn.btn-warning:active,.runestone-sphinx button.btn.btn-warning:focus{background-color:#fff!important;color:#945c0e!important}.ptx-runestone-container button.btn.btn-warning,.runestone-sphinx button.btn.btn-warning{background-color:#945c0e!important;color:#fff!important}.ptx-runestone-container button.btn.btn-danger:active,.ptx-runestone-container button.btn.btn-danger:focus,.runestone-sphinx button.btn.btn-danger:active,.runestone-sphinx button.btn.btn-danger:focus{background-color:#fff!important;color:#d33a35!important}.ptx-runestone-container button.btn.btn-danger,.runestone-sphinx button.btn.btn-danger{background-color:#d33a35!important;color:#fff!important}.ptx-runestone-container button.btn.btn-link:active,.ptx-runestone-container button.btn.btn-link:focus,.runestone-sphinx button.btn.btn-link:active,.runestone-sphinx button.btn.btn-link:focus{background-color:#1a6a83!important;color:#fff!important}.ptx-runestone-container button.btn.btn-link,.runestone-sphinx button.btn.btn-link{background-color:#fff!important;color:#1a6a83!important}:root{--background:#fff;--outerBackground:#eee;--links:#0645ad;--bodyFont:var(--body-text-color,#000);--tooltip:#fff;--grayToWhite:#333;--navbar:#f8f8f8;--navbarFont:#707070;--navbarFontHover:#000;--alerts:#d9edf7;--completionButton:#f19711;--completionButtonHover:#ff9f19;--completionButtonText:#000;--admonition:#fcf8e3;--admonitionBorder:#fbeed5;--codeButtons:#474949;--codeButtonsBorder:#474949;--dangerAlerts:#f2dede;--successAlerts:#dff0d8;--contentWidthRegular:660px;--contentWidthWide:1060px;--componentBgColor:#f0f8ff;--componentBorderColor:#000;--questionBgColor:#e1efff;--parsonsBgColor:#ffa;--parsonsBorderColor:#ee0;--parsonsCorrectBgColor:#dff0d8;--parsonsCorrectBorderColor:#ade595;--parsonsIncorrectBgColor:#f2dede;--parsonsIncorrectBorderColor:#f2b6b6}:root.dark-mode{--background:#2c2f33;--outerBackground:#23272a;--links:#7289da;--bodyFont:var(--body-text-color,#99aab5);--tooltip:#000;--grayToWhite:#aaa;--navbar:#3d3d3d;--navbarFont:#fff;--navbarFontHover:#d6d6d6;--alerts:#714082;--completionButton:#650087;--completionButtonHover:#560073;--completionButtonText:#fff;--admonition:#3d3d3d;--admonitionBorder:#262626;--codeButtons:#67739d;--codeButtonsBorder:#fff;--dangerAlerts:#8c2626;--successAlerts:#217300;--componentBgColor:var(--rs-component-bg,var(--knowl-background,#07467d));--componentBorderColor:var(--rs-component-border,var(--knowl-border-color,#939090));--questionBgColor:var(--rs-component-bg,var(--knowl-nested-1-background,#0f5a9b));--parsonsBgColor:#e8e8b2;--parsonsBorderColor:#a8a82d;--parsonsCorrectBgColor:#a3c097;--parsonsCorrectBorderColor:#60904c;--parsonsIncorrectBgColor:#ae9090;--parsonsIncorrectBorderColor:#c16b6b}[data-theme=dark]{--background:#2c2f33;--outerBackground:#23272a;--links:#7289da;--bodyFont:#99aab5;--tooltip:#000;--grayToWhite:#fff;--navbar:#3d3d3d;--navbarFont:#fff;--navbarFontHover:#d6d6d6;--alerts:#714082;--completionButton:#650087;--completionButtonHover:#560073;--completionButtonText:#fff;--admonition:#3d3d3d;--admonitionBorder:#262626;--codeButtons:#7289da;--codeButtonsBorder:#fff;--dangerAlerts:#8c2626;--successAlerts:#217300;--componentBgColor:#07467d;--componentBorderColor:#939090;--questionBgColor:#17555d}#scprogresscontainer{margin:10px auto;max-width:500px;width:100%}#subchapterprogress{background-color:var(--alerts);border:1px solid var(--grayToWhite);border-radius:5px;height:20px;position:relative;width:100%}.exercise-statement{display:block;margin-bottom:1em}:root{--menu:#fff}[data-theme=dark]{--menu:#000}.my-highlighted-text{background-color:#ff9}.social-highlighted-text{background-color:#fcc}.highlight-option-box{left:0;position:absolute;top:0}.highlight-option-box li{height:24px}#continue-reading{display:none;padding-top:20px}#continue-reading a{float:right;margin-right:20px}li.completed{list-style-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAO5JREFUeNpi/P//PwMlgImBQjAwBthc4osH4skgNguJGrmA1BQgjgPiUJIMAGpWBVKrgNgAiL2P6H3aRrQBQM12QGo1EIsBcQxMM0oYABXxAjETFs2+QGobVHM9UPNSjEAEKgoEUjeBuBhNcwDUZm4gXg/U3IRuAcwLSkAsCcRdQE16QDoRiG2BGGQbOxA/BOIcbN5jhKVEoMYiINULFT8PxCJALAvlhwBtX4vXAKghpSBXoKlZCtQcQ1RCAirsBlJVSEIfgLiRpJQINKQdSNVCuTOB/Nt44xjkBWzY+iJvGRBr4pKHYUZKszNAgAEAln9yGpx/ZXMAAAAASUVORK5CYII=)}li.active{list-style-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIlJREFUeNpi/P//PwMlgImBQjAMDGCBsxZIkaYz4RmaAZhAHYjNoOxTQHwTvwsQgAeIe4E4DU18FhAXAPF3QgbMB+IQLOIgA4WAOBRfIOri0AwDIDktfAbYEBF89jRNB0eI0HMEnwGXgXgNHs1roGrweiERGmUMWKIxkZh08AWI04G4j5iEBBBgAPddF58mobqdAAAAAElFTkSuQmCC)}.infoTextCompleted{color:#3dc682}.infoTextActive,.infoTextCompleted{display:none;font-size:.9em;font-style:italic;margin-left:10px;opacity:.7}.infoTextActive{color:#ff9f19}.dropdown-menu{background-clip:padding-box;background-color:var(--menu);border:1px solid rgba(0,0,0,.2);border-radius:5px 5px 5px 5px;box-shadow:0 5px 10px rgba(0,0,0,.2);display:none;list-style:none outside none;margin:1px 0 0;min-width:160px;padding:4px 0;position:absolute;top:100%;z-index:1000}.dropdown-menu ul{list-style:disc none outside;margin:0 0 9px 25px;padding:0}.sidebar-highlights{background-color:#ff9}div.documentwrapper{border:0}div.bodywrapper{border-right:0}div.sphinxsidebar{border-left:1px solid #ccc;padding-left:10px}.body>.section .section{padding-top:1px}#jump-to-chapter{border:1px solid #ccc;letter-spacing:.015em;line-height:120%;margin-left:auto;margin-right:auto;padding:.5em;width:80%}#navigation-links{background-color:#f8f8f8;border:1px solid #ccc;margin:10px;padding:10px}.matrixeq_container{margin:0 0 6px;padding:6px}span.matrix_table{border:2px solid #000;margin:0 0 4px;overflow:visible;padding:0 1px;text-align:center}span.matrix_column,span.matrix_table{background-color:inherit;display:inline-table}span.matrix_column{border-width:0;font-family:monospace;font-size:12px;margin:0 1px;padding:2px 8px;vertical-align:middle}span.matrix_column div{background-color:inherit;display:block;margin:1px;padding:2px}span.matrix_table .matrix_column{border-style:none;margin-left:5px;margin-right:5px}span.matrix_table:before{top:-2px}span.matrix_table:after,span.matrix_table:before{background-color:inherit;content:" ";display:block;height:2px;margin:0 auto;position:relative;text-align:center;width:85%;z-index:100}span.matrix_table:after{top:2px}span.matrix_column:before{top:-2px}span.matrix_column:after,span.matrix_column:before{content:" ";display:block;height:2px;position:relative;width:85%;z-index:100}span.matrix_column:after{top:2px}span.matrix_table span.matrix_column:after,span.matrix_table span.matrix_column:before{height:0}span.matrix_table input[type=text]{appearance:none;background-color:inherit;box-shadow:none;display:block;font-family:sans-serif;font-size:12px;height:24px;margin:0;text-align:right;width:50px}span.matrix_operator{font-family:monospace;font-size:18px;margin:0 4px;padding:0}span.matrix_label,span.matrix_operator{display:inline-table;vertical-align:middle}span.matrix_label{font-family:sans-serif;font-size:12px;margin:0 1px;padding:0 0 0 20px}.lightcyanColor{background-color:#e0ffff}.lightgreyColor{background-color:#d3d3d3}.purpleColor{background-color:#dfb5e8}.yellowColor{background-color:#fdff9d}.webgl_container{background-color:#fcf8e3;display:block;margin-bottom:1em}.webgl_cmds,.webgl_container{box-sizing:border-box;width:100%}.webgl_cmds{padding:6px;text-align:center}.webgl_row2{box-sizing:border-box;display:block;height:550px;padding:0 4px;width:100%}.webgl_canvas,.webgl_editors{box-sizing:border-box;display:block;float:left;visibility:visible;width:50%}.webgl_canvas{font-size:12px;font-weight:400;padding-left:5px}.webgl_output{box-sizing:border-box;float:left;margin-top:6px;padding:4px;width:100%}.webgl_nav_tabs{background-color:#cfccb8;border-color:#fbeed5;display:inline-flex;height:31px;margin:0;overflow:hidden;padding:6px 0 0;width:100%}.webgl_nav_tabs,.webgl_nav_tabs li{border-top-left-radius:4px;border-top-right-radius:4px;list-style-type:none}.webgl_nav_tabs li{background-color:#e6e2cc;float:left;font-size:9pt;margin:0 0 0 4px;padding:4px 1px 4px 4px;position:relative}.webgl_nav_tabs li>a{color:#555;padding:8px;text-decoration:none}.webgl_nav_tabs>li>a:hover{border-bottom-width:0;border-color:#b4b19d}.webgl_nav_tabs li.active{background-color:#fff;list-style-image:none;list-style-type:none}.webgl_tab_content{background-color:#fcf8e3;border:0;clear:both;color:#c09853;margin:0 0 20px;position:absolute;width:100%;z-index:1}.webgl_tab_content.active{z-index:2}.webgl_tab_content>*{margin-left:auto;margin-right:auto}.webgl_tab_content .clearfix{position:static}.webgl_tab_editor{background-color:#fcf8e3;border:0;clear:both;color:#c09853;margin:0 0 20px;padding:10px 4px;position:absolute;width:100%}.webgl_code{float:left;width:100%}.webgl_tab_contents_text{background-color:#fcf8e3;border:0;clear:both;color:#c09853;margin:0 0 20px;padding:10px 4px;position:absolute;width:100%;z-index:1}.webgl_errorMessages{color:red}.webgl_warningMessages{color:#aa22a4}.webgl_infoMessages{color:#189040}.webgl_output_div{background-color:#fff;border:1px solid #d3d3d3;font-size:12px;font-weight:400;height:14em;margin:2px;overflow:auto;padding-bottom:4px;padding-left:4px;padding-top:4px;width:100%}.webgl_editor_highlight{background-color:#eee}.webgl_btn{background-color:thistle;border:1px solid transparent;border-radius:4px;cursor:pointer;display:inline-block;font-size:12px;font-weight:400;margin-bottom:0;padding:3px 6px;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.webgl_tabbed_editor{font-family:monospace,sans-serif;font-size:9pt;font-style:normal;resize:none;width:100%}.canvas3D{height:100%;width:100%}.CodeMirror.webgl-default{border:1px solid #eee;font-family:monospace,sans-serif;font-size:8pt;font-style:normal}button.btn.webgl-default{font-size:8pt}.runestone-sphinx .hidden{display:none}.runestone-sphinx .view-toggle{padding:.85em}.runestone-sphinx .presentation-mode section *{display:none}.runestone-sphinx .presentation-mode section .runestone,.runestone-sphinx .presentation-mode section .runestone *{display:initial}.runestone-sphinx .full-height,.runestone-sphinx .present{height:100vh}.runestone-sphinx .bottom{bottom:0;position:absolute}.runestone-sphinx #codeDisplayDiv{width:auto!important}.runestone-sphinx div.ExecutionVisualizer #dataViz{margin:0}.runestone-sphinx div.ExecutionVisualizer div#stackHeader{text-align:center}.runestone-sphinx #stackFrame{display:block!important}.runestone-sphinx #stackHeapTable{width:100%}.runestone-sphinx #stackHeapTable tr{justify-content:space-around}.runestone-sphinx div.ExecutionVisualizer td#heap_td,.runestone-sphinx div.ExecutionVisualizer td#stack_td{flex:1}.runestone-sphinx .presentation-title{display:none}.runestone-sphinx .present .presentation-title{display:block}.runestone-sphinx div.ExecutionVisualizer div#heap{float:none;padding-left:0}.runestone-sphinx #heap_td tr,.runestone-sphinx #stack_td tr{display:table-row}.runestone-sphinx #codeDisplayDiv{margin:0 auto}.runestone-sphinx #vizLayoutTd{flex:1}.runestone-sphinx #vizLayoutTdFirst{flex:2}.runestone-sphinx #vizLayoutTdSecond{flex:1}.runestone-sphinx #vizLayoutTdThird{flex:2}.runestone-sphinx #progOutputs{display:block!important;margin:0 20px;width:60%}.runestone-sphinx #pyStdout{width:100%!important}.runestone-sphinx div.ExecutionVisualizer #pyStdout{margin-bottom:1em}.runestone-sphinx div.ExecutionVisualizer table.visualizer{width:100%}.runestone-sphinx .present #vizLayoutTdThird{text-align:left}.runestone-sphinx .ac-block{display:flex;margin-bottom:1em}.runestone-sphinx .row-mode .ac-block{display:block;margin-bottom:0}.runestone-sphinx .row-mode .ac_code_div,.runestone-sphinx .row-mode .ac_output{display:block;float:none;max-width:none;width:auto}.runestone-sphinx .row-mode .ac_code_div{margin-bottom:1em}.runestone-sphinx .ac_section>*{max-width:100%}.runestone-sphinx .ac_output{display:block;max-width:100%}.runestone-sphinx .ac_output pre{min-height:60px;visibility:visible!important}.runestone-sphinx .CodeMirror{border-radius:3px;margin:0;max-width:100%;min-height:60px}.runestone-sphinx .container section>runestone:not(.ac_section){margin:0;max-width:none}.runestone-sphinx .presentation-options{align-items:center;display:flex;justify-content:flex-end}.runestone-sphinx .layout-btn{align-items:center;background-color:#fbeed5;border:2px solid #dfd4be;border-radius:2px;display:flex;justify-content:center;margin:0 .5rem;padding:.25rem;transition:all .2s ease}.runestone-sphinx .layout-btn.active-layout,.runestone-sphinx .layout-btn:focus{border:2px solid #979797;outline:none}.runestone-sphinx .sketchpad-container{min-height:300px;min-width:50%;padding:0 15px}.runestone-sphinx .card-mode .sketchpad-container{display:inline-block;margin:0;vertical-align:top;width:50%}.runestone-sphinx .row-mode .error{margin:20px 15px}.runestone-sphinx .card-mode .error{display:inline-block;margin:28px 0 0;padding:0 15px;vertical-align:top;width:50%}.runestone-sphinx .sketchpad{background:#fff;border:2px solid grey;border-radius:3px;display:block;min-height:300px;width:100%}.runestone-sphinx .btn-presenter{border-radius:3px;font-weight:500;margin:1.5rem 0 1.5rem 1.5rem;padding:.5rem 1rem}.runestone-sphinx .btn-grey-outline{background:#fff;border:2px solid grey;color:grey}.runestone-sphinx .btn-grey-solid{background:grey;border:2px solid grey;color:#fff}.runestone-sphinx body.present .ac_section>*{max-width:none}.runestone-sphinx body.present iframe{width:100%}.runestone-sphinx body.present #relations-next,.runestone-sphinx body.present #relations-prev,.runestone-sphinx body.present .navLinkBg{display:none}.runestone-sphinx body.present .btn-presenter{position:absolute}.runestone-sphinx body.present .btn-presenter.prev-exercise{left:0}.runestone-sphinx body.present .btn-presenter.next-exercise{right:0} -/*# sourceMappingURL=prefix-runestone.f4ab138da65f4203.css.map*/ \ No newline at end of file + /*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */}.ptx-runestone-container html,.runestone-sphinx html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;font-family:sans-serif}.ptx-runestone-container body,.runestone-sphinx body{margin:0}.ptx-runestone-container article,.ptx-runestone-container aside,.ptx-runestone-container details,.ptx-runestone-container figcaption,.ptx-runestone-container figure,.ptx-runestone-container footer,.ptx-runestone-container header,.ptx-runestone-container hgroup,.ptx-runestone-container main,.ptx-runestone-container menu,.ptx-runestone-container nav,.ptx-runestone-container section,.ptx-runestone-container summary,.runestone-sphinx article,.runestone-sphinx aside,.runestone-sphinx details,.runestone-sphinx figcaption,.runestone-sphinx figure,.runestone-sphinx footer,.runestone-sphinx header,.runestone-sphinx hgroup,.runestone-sphinx main,.runestone-sphinx menu,.runestone-sphinx nav,.runestone-sphinx section,.runestone-sphinx summary{display:block}.ptx-runestone-container audio,.ptx-runestone-container canvas,.ptx-runestone-container progress,.ptx-runestone-container video,.runestone-sphinx audio,.runestone-sphinx canvas,.runestone-sphinx progress,.runestone-sphinx video{display:inline-block;vertical-align:baseline}.ptx-runestone-container audio:not([controls]),.runestone-sphinx audio:not([controls]){display:none;height:0}.ptx-runestone-container [hidden],.ptx-runestone-container template,.runestone-sphinx [hidden],.runestone-sphinx template{display:none}.ptx-runestone-container a,.runestone-sphinx a{background-color:transparent}.ptx-runestone-container a:active,.ptx-runestone-container a:hover,.runestone-sphinx a:active,.runestone-sphinx a:hover{outline:0}.ptx-runestone-container abbr[title],.runestone-sphinx abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;text-decoration:underline dotted}.ptx-runestone-container b,.ptx-runestone-container strong,.runestone-sphinx b,.runestone-sphinx strong{font-weight:700}.ptx-runestone-container dfn,.runestone-sphinx dfn{font-style:italic}.ptx-runestone-container h1,.runestone-sphinx h1{font-size:2em;margin:.67em 0}.ptx-runestone-container mark,.runestone-sphinx mark{background:#ff0;color:#000}.ptx-runestone-container small,.runestone-sphinx small{font-size:80%}.ptx-runestone-container sub,.ptx-runestone-container sup,.runestone-sphinx sub,.runestone-sphinx sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.ptx-runestone-container sup,.runestone-sphinx sup{top:-.5em}.ptx-runestone-container sub,.runestone-sphinx sub{bottom:-.25em}.ptx-runestone-container img,.runestone-sphinx img{border:0}.ptx-runestone-container svg:not(:root),.runestone-sphinx svg:not(:root){overflow:hidden}.ptx-runestone-container figure,.runestone-sphinx figure{margin:1em 40px}.ptx-runestone-container hr,.runestone-sphinx hr{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;height:0}.ptx-runestone-container pre,.runestone-sphinx pre{overflow:auto}.ptx-runestone-container code,.ptx-runestone-container kbd,.ptx-runestone-container pre,.ptx-runestone-container samp,.runestone-sphinx code,.runestone-sphinx kbd,.runestone-sphinx pre,.runestone-sphinx samp{font-family:monospace,monospace;font-size:1em}.ptx-runestone-container button,.ptx-runestone-container input,.ptx-runestone-container optgroup,.ptx-runestone-container select,.ptx-runestone-container textarea,.runestone-sphinx button,.runestone-sphinx input,.runestone-sphinx optgroup,.runestone-sphinx select,.runestone-sphinx textarea{color:inherit;font:inherit;margin:0}.ptx-runestone-container button,.runestone-sphinx button{overflow:visible}.ptx-runestone-container button,.ptx-runestone-container select,.runestone-sphinx button,.runestone-sphinx select{text-transform:none}.ptx-runestone-container button,.ptx-runestone-container html input[type=button],.ptx-runestone-container input[type=reset],.ptx-runestone-container input[type=submit],.runestone-sphinx button,.runestone-sphinx html input[type=button],.runestone-sphinx input[type=reset],.runestone-sphinx input[type=submit]{-webkit-appearance:button;cursor:pointer}.ptx-runestone-container button[disabled],.ptx-runestone-container html input[disabled],.runestone-sphinx button[disabled],.runestone-sphinx html input[disabled]{cursor:default}.ptx-runestone-container button::-moz-focus-inner,.ptx-runestone-container input::-moz-focus-inner,.runestone-sphinx button::-moz-focus-inner,.runestone-sphinx input::-moz-focus-inner{border:0;padding:0}.ptx-runestone-container input,.runestone-sphinx input{line-height:normal}.ptx-runestone-container input[type=checkbox],.ptx-runestone-container input[type=radio],.runestone-sphinx input[type=checkbox],.runestone-sphinx input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}.ptx-runestone-container input[type=number]::-webkit-inner-spin-button,.ptx-runestone-container input[type=number]::-webkit-outer-spin-button,.runestone-sphinx input[type=number]::-webkit-inner-spin-button,.runestone-sphinx input[type=number]::-webkit-outer-spin-button{height:auto}.ptx-runestone-container input[type=search],.runestone-sphinx input[type=search]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.ptx-runestone-container input[type=search]::-webkit-search-cancel-button,.ptx-runestone-container input[type=search]::-webkit-search-decoration,.runestone-sphinx input[type=search]::-webkit-search-cancel-button,.runestone-sphinx input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.ptx-runestone-container fieldset,.runestone-sphinx fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.ptx-runestone-container textarea,.runestone-sphinx textarea{overflow:auto}.ptx-runestone-container optgroup,.runestone-sphinx optgroup{font-weight:700}.ptx-runestone-container table,.runestone-sphinx table{border-collapse:collapse;border-spacing:0}.ptx-runestone-container td,.ptx-runestone-container th,.runestone-sphinx td,.runestone-sphinx th{padding:0}@media print{.ptx-runestone-container *,.ptx-runestone-container :after,.ptx-runestone-container :before,.runestone-sphinx *,.runestone-sphinx :after,.runestone-sphinx :before{background:transparent!important;-webkit-box-shadow:none!important;box-shadow:none!important;color:#000!important;text-shadow:none!important}.ptx-runestone-container a,.ptx-runestone-container a:visited,.runestone-sphinx a,.runestone-sphinx a:visited{text-decoration:underline}.ptx-runestone-container a[href]:after,.runestone-sphinx a[href]:after{content:" (" attr(href) ")"}.ptx-runestone-container abbr[title]:after,.runestone-sphinx abbr[title]:after{content:" (" attr(title) ")"}.ptx-runestone-container a[href^="#"]:after,.ptx-runestone-container a[href^="javascript:"]:after,.runestone-sphinx a[href^="#"]:after,.runestone-sphinx a[href^="javascript:"]:after{content:""}.ptx-runestone-container blockquote,.ptx-runestone-container pre,.runestone-sphinx blockquote,.runestone-sphinx pre{border:1px solid #999;page-break-inside:avoid}.ptx-runestone-container thead,.runestone-sphinx thead{display:table-header-group}.ptx-runestone-container img,.ptx-runestone-container tr,.runestone-sphinx img,.runestone-sphinx tr{page-break-inside:avoid}.ptx-runestone-container img,.runestone-sphinx img{max-width:100%!important}.ptx-runestone-container h2,.ptx-runestone-container h3,.ptx-runestone-container p,.runestone-sphinx h2,.runestone-sphinx h3,.runestone-sphinx p{orphans:3;widows:3}.ptx-runestone-container h2,.ptx-runestone-container h3,.runestone-sphinx h2,.runestone-sphinx h3{page-break-after:avoid}.ptx-runestone-container .navbar,.runestone-sphinx .navbar{display:none}.ptx-runestone-container .btn>.caret,.ptx-runestone-container .dropup>.btn>.caret,.runestone-sphinx .btn>.caret,.runestone-sphinx .dropup>.btn>.caret{border-top-color:#000!important}.ptx-runestone-container .label,.runestone-sphinx .label{border:1px solid #000}.ptx-runestone-container .table,.runestone-sphinx .table{border-collapse:collapse!important}.ptx-runestone-container .table td,.ptx-runestone-container .table th,.runestone-sphinx .table td,.runestone-sphinx .table th{background-color:#fff!important}.ptx-runestone-container .table-bordered td,.ptx-runestone-container .table-bordered th,.runestone-sphinx .table-bordered td,.runestone-sphinx .table-bordered th{border:1px solid #ddd!important}}@font-face{font-family:Glyphicons Halflings;src:url(7a0f4b092e86cb52.eot);src:url(7a0f4b092e86cb52.eot?#iefix) format("embedded-opentype"),url(b70781972ce7320b.woff2) format("woff2"),url(4ba85deaf3670942.woff) format("woff"),url(009b407a9881be10.ttf) format("truetype"),url(85f0466cb4ab3a4d.svg#glyphicons_halflingsregular) format("svg")}.ptx-runestone-container .glyphicon,.runestone-sphinx .glyphicon{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;font-family:Glyphicons Halflings;font-style:normal;font-weight:400;line-height:1;position:relative;top:1px}.ptx-runestone-container .glyphicon-asterisk:before,.runestone-sphinx .glyphicon-asterisk:before{content:"\002a"}.ptx-runestone-container .glyphicon-plus:before,.runestone-sphinx .glyphicon-plus:before{content:"\002b"}.ptx-runestone-container .glyphicon-eur:before,.ptx-runestone-container .glyphicon-euro:before,.runestone-sphinx .glyphicon-eur:before,.runestone-sphinx .glyphicon-euro:before{content:"\20ac"}.ptx-runestone-container .glyphicon-minus:before,.runestone-sphinx .glyphicon-minus:before{content:"\2212"}.ptx-runestone-container .glyphicon-cloud:before,.runestone-sphinx .glyphicon-cloud:before{content:"\2601"}.ptx-runestone-container .glyphicon-envelope:before,.runestone-sphinx .glyphicon-envelope:before{content:"\2709"}.ptx-runestone-container .glyphicon-pencil:before,.runestone-sphinx .glyphicon-pencil:before{content:"\270f"}.ptx-runestone-container .glyphicon-glass:before,.runestone-sphinx .glyphicon-glass:before{content:"\e001"}.ptx-runestone-container .glyphicon-music:before,.runestone-sphinx .glyphicon-music:before{content:"\e002"}.ptx-runestone-container .glyphicon-search:before,.runestone-sphinx .glyphicon-search:before{content:"\e003"}.ptx-runestone-container .glyphicon-heart:before,.runestone-sphinx .glyphicon-heart:before{content:"\e005"}.ptx-runestone-container .glyphicon-star:before,.runestone-sphinx .glyphicon-star:before{content:"\e006"}.ptx-runestone-container .glyphicon-star-empty:before,.runestone-sphinx .glyphicon-star-empty:before{content:"\e007"}.ptx-runestone-container .glyphicon-user:before,.runestone-sphinx .glyphicon-user:before{content:"\e008"}.ptx-runestone-container .glyphicon-film:before,.runestone-sphinx .glyphicon-film:before{content:"\e009"}.ptx-runestone-container .glyphicon-th-large:before,.runestone-sphinx .glyphicon-th-large:before{content:"\e010"}.ptx-runestone-container .glyphicon-th:before,.runestone-sphinx .glyphicon-th:before{content:"\e011"}.ptx-runestone-container .glyphicon-th-list:before,.runestone-sphinx .glyphicon-th-list:before{content:"\e012"}.ptx-runestone-container .glyphicon-ok:before,.runestone-sphinx .glyphicon-ok:before{content:"\e013"}.ptx-runestone-container .glyphicon-remove:before,.runestone-sphinx .glyphicon-remove:before{content:"\e014"}.ptx-runestone-container .glyphicon-zoom-in:before,.runestone-sphinx .glyphicon-zoom-in:before{content:"\e015"}.ptx-runestone-container .glyphicon-zoom-out:before,.runestone-sphinx .glyphicon-zoom-out:before{content:"\e016"}.ptx-runestone-container .glyphicon-off:before,.runestone-sphinx .glyphicon-off:before{content:"\e017"}.ptx-runestone-container .glyphicon-signal:before,.runestone-sphinx .glyphicon-signal:before{content:"\e018"}.ptx-runestone-container .glyphicon-cog:before,.runestone-sphinx .glyphicon-cog:before{content:"\e019"}.ptx-runestone-container .glyphicon-trash:before,.runestone-sphinx .glyphicon-trash:before{content:"\e020"}.ptx-runestone-container .glyphicon-home:before,.runestone-sphinx .glyphicon-home:before{content:"\e021"}.ptx-runestone-container .glyphicon-file:before,.runestone-sphinx .glyphicon-file:before{content:"\e022"}.ptx-runestone-container .glyphicon-time:before,.runestone-sphinx .glyphicon-time:before{content:"\e023"}.ptx-runestone-container .glyphicon-road:before,.runestone-sphinx .glyphicon-road:before{content:"\e024"}.ptx-runestone-container .glyphicon-download-alt:before,.runestone-sphinx .glyphicon-download-alt:before{content:"\e025"}.ptx-runestone-container .glyphicon-download:before,.runestone-sphinx .glyphicon-download:before{content:"\e026"}.ptx-runestone-container .glyphicon-upload:before,.runestone-sphinx .glyphicon-upload:before{content:"\e027"}.ptx-runestone-container .glyphicon-inbox:before,.runestone-sphinx .glyphicon-inbox:before{content:"\e028"}.ptx-runestone-container .glyphicon-play-circle:before,.runestone-sphinx .glyphicon-play-circle:before{content:"\e029"}.ptx-runestone-container .glyphicon-repeat:before,.runestone-sphinx .glyphicon-repeat:before{content:"\e030"}.ptx-runestone-container .glyphicon-refresh:before,.runestone-sphinx .glyphicon-refresh:before{content:"\e031"}.ptx-runestone-container .glyphicon-list-alt:before,.runestone-sphinx .glyphicon-list-alt:before{content:"\e032"}.ptx-runestone-container .glyphicon-lock:before,.runestone-sphinx .glyphicon-lock:before{content:"\e033"}.ptx-runestone-container .glyphicon-flag:before,.runestone-sphinx .glyphicon-flag:before{content:"\e034"}.ptx-runestone-container .glyphicon-headphones:before,.runestone-sphinx .glyphicon-headphones:before{content:"\e035"}.ptx-runestone-container .glyphicon-volume-off:before,.runestone-sphinx .glyphicon-volume-off:before{content:"\e036"}.ptx-runestone-container .glyphicon-volume-down:before,.runestone-sphinx .glyphicon-volume-down:before{content:"\e037"}.ptx-runestone-container .glyphicon-volume-up:before,.runestone-sphinx .glyphicon-volume-up:before{content:"\e038"}.ptx-runestone-container .glyphicon-qrcode:before,.runestone-sphinx .glyphicon-qrcode:before{content:"\e039"}.ptx-runestone-container .glyphicon-barcode:before,.runestone-sphinx .glyphicon-barcode:before{content:"\e040"}.ptx-runestone-container .glyphicon-tag:before,.runestone-sphinx .glyphicon-tag:before{content:"\e041"}.ptx-runestone-container .glyphicon-tags:before,.runestone-sphinx .glyphicon-tags:before{content:"\e042"}.ptx-runestone-container .glyphicon-book:before,.runestone-sphinx .glyphicon-book:before{content:"\e043"}.ptx-runestone-container .glyphicon-bookmark:before,.runestone-sphinx .glyphicon-bookmark:before{content:"\e044"}.ptx-runestone-container .glyphicon-print:before,.runestone-sphinx .glyphicon-print:before{content:"\e045"}.ptx-runestone-container .glyphicon-camera:before,.runestone-sphinx .glyphicon-camera:before{content:"\e046"}.ptx-runestone-container .glyphicon-font:before,.runestone-sphinx .glyphicon-font:before{content:"\e047"}.ptx-runestone-container .glyphicon-bold:before,.runestone-sphinx .glyphicon-bold:before{content:"\e048"}.ptx-runestone-container .glyphicon-italic:before,.runestone-sphinx .glyphicon-italic:before{content:"\e049"}.ptx-runestone-container .glyphicon-text-height:before,.runestone-sphinx .glyphicon-text-height:before{content:"\e050"}.ptx-runestone-container .glyphicon-text-width:before,.runestone-sphinx .glyphicon-text-width:before{content:"\e051"}.ptx-runestone-container .glyphicon-align-left:before,.runestone-sphinx .glyphicon-align-left:before{content:"\e052"}.ptx-runestone-container .glyphicon-align-center:before,.runestone-sphinx .glyphicon-align-center:before{content:"\e053"}.ptx-runestone-container .glyphicon-align-right:before,.runestone-sphinx .glyphicon-align-right:before{content:"\e054"}.ptx-runestone-container .glyphicon-align-justify:before,.runestone-sphinx .glyphicon-align-justify:before{content:"\e055"}.ptx-runestone-container .glyphicon-list:before,.runestone-sphinx .glyphicon-list:before{content:"\e056"}.ptx-runestone-container .glyphicon-indent-left:before,.runestone-sphinx .glyphicon-indent-left:before{content:"\e057"}.ptx-runestone-container .glyphicon-indent-right:before,.runestone-sphinx .glyphicon-indent-right:before{content:"\e058"}.ptx-runestone-container .glyphicon-facetime-video:before,.runestone-sphinx .glyphicon-facetime-video:before{content:"\e059"}.ptx-runestone-container .glyphicon-picture:before,.runestone-sphinx .glyphicon-picture:before{content:"\e060"}.ptx-runestone-container .glyphicon-map-marker:before,.runestone-sphinx .glyphicon-map-marker:before{content:"\e062"}.ptx-runestone-container .glyphicon-adjust:before,.runestone-sphinx .glyphicon-adjust:before{content:"\e063"}.ptx-runestone-container .glyphicon-tint:before,.runestone-sphinx .glyphicon-tint:before{content:"\e064"}.ptx-runestone-container .glyphicon-edit:before,.runestone-sphinx .glyphicon-edit:before{content:"\e065"}.ptx-runestone-container .glyphicon-share:before,.runestone-sphinx .glyphicon-share:before{content:"\e066"}.ptx-runestone-container .glyphicon-check:before,.runestone-sphinx .glyphicon-check:before{content:"\e067"}.ptx-runestone-container .glyphicon-move:before,.runestone-sphinx .glyphicon-move:before{content:"\e068"}.ptx-runestone-container .glyphicon-step-backward:before,.runestone-sphinx .glyphicon-step-backward:before{content:"\e069"}.ptx-runestone-container .glyphicon-fast-backward:before,.runestone-sphinx .glyphicon-fast-backward:before{content:"\e070"}.ptx-runestone-container .glyphicon-backward:before,.runestone-sphinx .glyphicon-backward:before{content:"\e071"}.ptx-runestone-container .glyphicon-play:before,.runestone-sphinx .glyphicon-play:before{content:"\e072"}.ptx-runestone-container .glyphicon-pause:before,.runestone-sphinx .glyphicon-pause:before{content:"\e073"}.ptx-runestone-container .glyphicon-stop:before,.runestone-sphinx .glyphicon-stop:before{content:"\e074"}.ptx-runestone-container .glyphicon-forward:before,.runestone-sphinx .glyphicon-forward:before{content:"\e075"}.ptx-runestone-container .glyphicon-fast-forward:before,.runestone-sphinx .glyphicon-fast-forward:before{content:"\e076"}.ptx-runestone-container .glyphicon-step-forward:before,.runestone-sphinx .glyphicon-step-forward:before{content:"\e077"}.ptx-runestone-container .glyphicon-eject:before,.runestone-sphinx .glyphicon-eject:before{content:"\e078"}.ptx-runestone-container .glyphicon-chevron-left:before,.runestone-sphinx .glyphicon-chevron-left:before{content:"\e079"}.ptx-runestone-container .glyphicon-chevron-right:before,.runestone-sphinx .glyphicon-chevron-right:before{content:"\e080"}.ptx-runestone-container .glyphicon-plus-sign:before,.runestone-sphinx .glyphicon-plus-sign:before{content:"\e081"}.ptx-runestone-container .glyphicon-minus-sign:before,.runestone-sphinx .glyphicon-minus-sign:before{content:"\e082"}.ptx-runestone-container .glyphicon-remove-sign:before,.runestone-sphinx .glyphicon-remove-sign:before{content:"\e083"}.ptx-runestone-container .glyphicon-ok-sign:before,.runestone-sphinx .glyphicon-ok-sign:before{content:"\e084"}.ptx-runestone-container .glyphicon-question-sign:before,.runestone-sphinx .glyphicon-question-sign:before{content:"\e085"}.ptx-runestone-container .glyphicon-info-sign:before,.runestone-sphinx .glyphicon-info-sign:before{content:"\e086"}.ptx-runestone-container .glyphicon-screenshot:before,.runestone-sphinx .glyphicon-screenshot:before{content:"\e087"}.ptx-runestone-container .glyphicon-remove-circle:before,.runestone-sphinx .glyphicon-remove-circle:before{content:"\e088"}.ptx-runestone-container .glyphicon-ok-circle:before,.runestone-sphinx .glyphicon-ok-circle:before{content:"\e089"}.ptx-runestone-container .glyphicon-ban-circle:before,.runestone-sphinx .glyphicon-ban-circle:before{content:"\e090"}.ptx-runestone-container .glyphicon-arrow-left:before,.runestone-sphinx .glyphicon-arrow-left:before{content:"\e091"}.ptx-runestone-container .glyphicon-arrow-right:before,.runestone-sphinx .glyphicon-arrow-right:before{content:"\e092"}.ptx-runestone-container .glyphicon-arrow-up:before,.runestone-sphinx .glyphicon-arrow-up:before{content:"\e093"}.ptx-runestone-container .glyphicon-arrow-down:before,.runestone-sphinx .glyphicon-arrow-down:before{content:"\e094"}.ptx-runestone-container .glyphicon-share-alt:before,.runestone-sphinx .glyphicon-share-alt:before{content:"\e095"}.ptx-runestone-container .glyphicon-resize-full:before,.runestone-sphinx .glyphicon-resize-full:before{content:"\e096"}.ptx-runestone-container .glyphicon-resize-small:before,.runestone-sphinx .glyphicon-resize-small:before{content:"\e097"}.ptx-runestone-container .glyphicon-exclamation-sign:before,.runestone-sphinx .glyphicon-exclamation-sign:before{content:"\e101"}.ptx-runestone-container .glyphicon-gift:before,.runestone-sphinx .glyphicon-gift:before{content:"\e102"}.ptx-runestone-container .glyphicon-leaf:before,.runestone-sphinx .glyphicon-leaf:before{content:"\e103"}.ptx-runestone-container .glyphicon-fire:before,.runestone-sphinx .glyphicon-fire:before{content:"\e104"}.ptx-runestone-container .glyphicon-eye-open:before,.runestone-sphinx .glyphicon-eye-open:before{content:"\e105"}.ptx-runestone-container .glyphicon-eye-close:before,.runestone-sphinx .glyphicon-eye-close:before{content:"\e106"}.ptx-runestone-container .glyphicon-warning-sign:before,.runestone-sphinx .glyphicon-warning-sign:before{content:"\e107"}.ptx-runestone-container .glyphicon-plane:before,.runestone-sphinx .glyphicon-plane:before{content:"\e108"}.ptx-runestone-container .glyphicon-calendar:before,.runestone-sphinx .glyphicon-calendar:before{content:"\e109"}.ptx-runestone-container .glyphicon-random:before,.runestone-sphinx .glyphicon-random:before{content:"\e110"}.ptx-runestone-container .glyphicon-comment:before,.runestone-sphinx .glyphicon-comment:before{content:"\e111"}.ptx-runestone-container .glyphicon-magnet:before,.runestone-sphinx .glyphicon-magnet:before{content:"\e112"}.ptx-runestone-container .glyphicon-chevron-up:before,.runestone-sphinx .glyphicon-chevron-up:before{content:"\e113"}.ptx-runestone-container .glyphicon-chevron-down:before,.runestone-sphinx .glyphicon-chevron-down:before{content:"\e114"}.ptx-runestone-container .glyphicon-retweet:before,.runestone-sphinx .glyphicon-retweet:before{content:"\e115"}.ptx-runestone-container .glyphicon-shopping-cart:before,.runestone-sphinx .glyphicon-shopping-cart:before{content:"\e116"}.ptx-runestone-container .glyphicon-folder-close:before,.runestone-sphinx .glyphicon-folder-close:before{content:"\e117"}.ptx-runestone-container .glyphicon-folder-open:before,.runestone-sphinx .glyphicon-folder-open:before{content:"\e118"}.ptx-runestone-container .glyphicon-resize-vertical:before,.runestone-sphinx .glyphicon-resize-vertical:before{content:"\e119"}.ptx-runestone-container .glyphicon-resize-horizontal:before,.runestone-sphinx .glyphicon-resize-horizontal:before{content:"\e120"}.ptx-runestone-container .glyphicon-hdd:before,.runestone-sphinx .glyphicon-hdd:before{content:"\e121"}.ptx-runestone-container .glyphicon-bullhorn:before,.runestone-sphinx .glyphicon-bullhorn:before{content:"\e122"}.ptx-runestone-container .glyphicon-bell:before,.runestone-sphinx .glyphicon-bell:before{content:"\e123"}.ptx-runestone-container .glyphicon-certificate:before,.runestone-sphinx .glyphicon-certificate:before{content:"\e124"}.ptx-runestone-container .glyphicon-thumbs-up:before,.runestone-sphinx .glyphicon-thumbs-up:before{content:"\e125"}.ptx-runestone-container .glyphicon-thumbs-down:before,.runestone-sphinx .glyphicon-thumbs-down:before{content:"\e126"}.ptx-runestone-container .glyphicon-hand-right:before,.runestone-sphinx .glyphicon-hand-right:before{content:"\e127"}.ptx-runestone-container .glyphicon-hand-left:before,.runestone-sphinx .glyphicon-hand-left:before{content:"\e128"}.ptx-runestone-container .glyphicon-hand-up:before,.runestone-sphinx .glyphicon-hand-up:before{content:"\e129"}.ptx-runestone-container .glyphicon-hand-down:before,.runestone-sphinx .glyphicon-hand-down:before{content:"\e130"}.ptx-runestone-container .glyphicon-circle-arrow-right:before,.runestone-sphinx .glyphicon-circle-arrow-right:before{content:"\e131"}.ptx-runestone-container .glyphicon-circle-arrow-left:before,.runestone-sphinx .glyphicon-circle-arrow-left:before{content:"\e132"}.ptx-runestone-container .glyphicon-circle-arrow-up:before,.runestone-sphinx .glyphicon-circle-arrow-up:before{content:"\e133"}.ptx-runestone-container .glyphicon-circle-arrow-down:before,.runestone-sphinx .glyphicon-circle-arrow-down:before{content:"\e134"}.ptx-runestone-container .glyphicon-globe:before,.runestone-sphinx .glyphicon-globe:before{content:"\e135"}.ptx-runestone-container .glyphicon-wrench:before,.runestone-sphinx .glyphicon-wrench:before{content:"\e136"}.ptx-runestone-container .glyphicon-tasks:before,.runestone-sphinx .glyphicon-tasks:before{content:"\e137"}.ptx-runestone-container .glyphicon-filter:before,.runestone-sphinx .glyphicon-filter:before{content:"\e138"}.ptx-runestone-container .glyphicon-briefcase:before,.runestone-sphinx .glyphicon-briefcase:before{content:"\e139"}.ptx-runestone-container .glyphicon-fullscreen:before,.runestone-sphinx .glyphicon-fullscreen:before{content:"\e140"}.ptx-runestone-container .glyphicon-dashboard:before,.runestone-sphinx .glyphicon-dashboard:before{content:"\e141"}.ptx-runestone-container .glyphicon-paperclip:before,.runestone-sphinx .glyphicon-paperclip:before{content:"\e142"}.ptx-runestone-container .glyphicon-heart-empty:before,.runestone-sphinx .glyphicon-heart-empty:before{content:"\e143"}.ptx-runestone-container .glyphicon-link:before,.runestone-sphinx .glyphicon-link:before{content:"\e144"}.ptx-runestone-container .glyphicon-phone:before,.runestone-sphinx .glyphicon-phone:before{content:"\e145"}.ptx-runestone-container .glyphicon-pushpin:before,.runestone-sphinx .glyphicon-pushpin:before{content:"\e146"}.ptx-runestone-container .glyphicon-usd:before,.runestone-sphinx .glyphicon-usd:before{content:"\e148"}.ptx-runestone-container .glyphicon-gbp:before,.runestone-sphinx .glyphicon-gbp:before{content:"\e149"}.ptx-runestone-container .glyphicon-sort:before,.runestone-sphinx .glyphicon-sort:before{content:"\e150"}.ptx-runestone-container .glyphicon-sort-by-alphabet:before,.runestone-sphinx .glyphicon-sort-by-alphabet:before{content:"\e151"}.ptx-runestone-container .glyphicon-sort-by-alphabet-alt:before,.runestone-sphinx .glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.ptx-runestone-container .glyphicon-sort-by-order:before,.runestone-sphinx .glyphicon-sort-by-order:before{content:"\e153"}.ptx-runestone-container .glyphicon-sort-by-order-alt:before,.runestone-sphinx .glyphicon-sort-by-order-alt:before{content:"\e154"}.ptx-runestone-container .glyphicon-sort-by-attributes:before,.runestone-sphinx .glyphicon-sort-by-attributes:before{content:"\e155"}.ptx-runestone-container .glyphicon-sort-by-attributes-alt:before,.runestone-sphinx .glyphicon-sort-by-attributes-alt:before{content:"\e156"}.ptx-runestone-container .glyphicon-unchecked:before,.runestone-sphinx .glyphicon-unchecked:before{content:"\e157"}.ptx-runestone-container .glyphicon-expand:before,.runestone-sphinx .glyphicon-expand:before{content:"\e158"}.ptx-runestone-container .glyphicon-collapse-down:before,.runestone-sphinx .glyphicon-collapse-down:before{content:"\e159"}.ptx-runestone-container .glyphicon-collapse-up:before,.runestone-sphinx .glyphicon-collapse-up:before{content:"\e160"}.ptx-runestone-container .glyphicon-log-in:before,.runestone-sphinx .glyphicon-log-in:before{content:"\e161"}.ptx-runestone-container .glyphicon-flash:before,.runestone-sphinx .glyphicon-flash:before{content:"\e162"}.ptx-runestone-container .glyphicon-log-out:before,.runestone-sphinx .glyphicon-log-out:before{content:"\e163"}.ptx-runestone-container .glyphicon-new-window:before,.runestone-sphinx .glyphicon-new-window:before{content:"\e164"}.ptx-runestone-container .glyphicon-record:before,.runestone-sphinx .glyphicon-record:before{content:"\e165"}.ptx-runestone-container .glyphicon-save:before,.runestone-sphinx .glyphicon-save:before{content:"\e166"}.ptx-runestone-container .glyphicon-open:before,.runestone-sphinx .glyphicon-open:before{content:"\e167"}.ptx-runestone-container .glyphicon-saved:before,.runestone-sphinx .glyphicon-saved:before{content:"\e168"}.ptx-runestone-container .glyphicon-import:before,.runestone-sphinx .glyphicon-import:before{content:"\e169"}.ptx-runestone-container .glyphicon-export:before,.runestone-sphinx .glyphicon-export:before{content:"\e170"}.ptx-runestone-container .glyphicon-send:before,.runestone-sphinx .glyphicon-send:before{content:"\e171"}.ptx-runestone-container .glyphicon-floppy-disk:before,.runestone-sphinx .glyphicon-floppy-disk:before{content:"\e172"}.ptx-runestone-container .glyphicon-floppy-saved:before,.runestone-sphinx .glyphicon-floppy-saved:before{content:"\e173"}.ptx-runestone-container .glyphicon-floppy-remove:before,.runestone-sphinx .glyphicon-floppy-remove:before{content:"\e174"}.ptx-runestone-container .glyphicon-floppy-save:before,.runestone-sphinx .glyphicon-floppy-save:before{content:"\e175"}.ptx-runestone-container .glyphicon-floppy-open:before,.runestone-sphinx .glyphicon-floppy-open:before{content:"\e176"}.ptx-runestone-container .glyphicon-credit-card:before,.runestone-sphinx .glyphicon-credit-card:before{content:"\e177"}.ptx-runestone-container .glyphicon-transfer:before,.runestone-sphinx .glyphicon-transfer:before{content:"\e178"}.ptx-runestone-container .glyphicon-cutlery:before,.runestone-sphinx .glyphicon-cutlery:before{content:"\e179"}.ptx-runestone-container .glyphicon-header:before,.runestone-sphinx .glyphicon-header:before{content:"\e180"}.ptx-runestone-container .glyphicon-compressed:before,.runestone-sphinx .glyphicon-compressed:before{content:"\e181"}.ptx-runestone-container .glyphicon-earphone:before,.runestone-sphinx .glyphicon-earphone:before{content:"\e182"}.ptx-runestone-container .glyphicon-phone-alt:before,.runestone-sphinx .glyphicon-phone-alt:before{content:"\e183"}.ptx-runestone-container .glyphicon-tower:before,.runestone-sphinx .glyphicon-tower:before{content:"\e184"}.ptx-runestone-container .glyphicon-stats:before,.runestone-sphinx .glyphicon-stats:before{content:"\e185"}.ptx-runestone-container .glyphicon-sd-video:before,.runestone-sphinx .glyphicon-sd-video:before{content:"\e186"}.ptx-runestone-container .glyphicon-hd-video:before,.runestone-sphinx .glyphicon-hd-video:before{content:"\e187"}.ptx-runestone-container .glyphicon-subtitles:before,.runestone-sphinx .glyphicon-subtitles:before{content:"\e188"}.ptx-runestone-container .glyphicon-sound-stereo:before,.runestone-sphinx .glyphicon-sound-stereo:before{content:"\e189"}.ptx-runestone-container .glyphicon-sound-dolby:before,.runestone-sphinx .glyphicon-sound-dolby:before{content:"\e190"}.ptx-runestone-container .glyphicon-sound-5-1:before,.runestone-sphinx .glyphicon-sound-5-1:before{content:"\e191"}.ptx-runestone-container .glyphicon-sound-6-1:before,.runestone-sphinx .glyphicon-sound-6-1:before{content:"\e192"}.ptx-runestone-container .glyphicon-sound-7-1:before,.runestone-sphinx .glyphicon-sound-7-1:before{content:"\e193"}.ptx-runestone-container .glyphicon-copyright-mark:before,.runestone-sphinx .glyphicon-copyright-mark:before{content:"\e194"}.ptx-runestone-container .glyphicon-registration-mark:before,.runestone-sphinx .glyphicon-registration-mark:before{content:"\e195"}.ptx-runestone-container .glyphicon-cloud-download:before,.runestone-sphinx .glyphicon-cloud-download:before{content:"\e197"}.ptx-runestone-container .glyphicon-cloud-upload:before,.runestone-sphinx .glyphicon-cloud-upload:before{content:"\e198"}.ptx-runestone-container .glyphicon-tree-conifer:before,.runestone-sphinx .glyphicon-tree-conifer:before{content:"\e199"}.ptx-runestone-container .glyphicon-tree-deciduous:before,.runestone-sphinx .glyphicon-tree-deciduous:before{content:"\e200"}.ptx-runestone-container .glyphicon-cd:before,.runestone-sphinx .glyphicon-cd:before{content:"\e201"}.ptx-runestone-container .glyphicon-save-file:before,.runestone-sphinx .glyphicon-save-file:before{content:"\e202"}.ptx-runestone-container .glyphicon-open-file:before,.runestone-sphinx .glyphicon-open-file:before{content:"\e203"}.ptx-runestone-container .glyphicon-level-up:before,.runestone-sphinx .glyphicon-level-up:before{content:"\e204"}.ptx-runestone-container .glyphicon-copy:before,.runestone-sphinx .glyphicon-copy:before{content:"\e205"}.ptx-runestone-container .glyphicon-paste:before,.runestone-sphinx .glyphicon-paste:before{content:"\e206"}.ptx-runestone-container .glyphicon-alert:before,.runestone-sphinx .glyphicon-alert:before{content:"\e209"}.ptx-runestone-container .glyphicon-equalizer:before,.runestone-sphinx .glyphicon-equalizer:before{content:"\e210"}.ptx-runestone-container .glyphicon-king:before,.runestone-sphinx .glyphicon-king:before{content:"\e211"}.ptx-runestone-container .glyphicon-queen:before,.runestone-sphinx .glyphicon-queen:before{content:"\e212"}.ptx-runestone-container .glyphicon-pawn:before,.runestone-sphinx .glyphicon-pawn:before{content:"\e213"}.ptx-runestone-container .glyphicon-bishop:before,.runestone-sphinx .glyphicon-bishop:before{content:"\e214"}.ptx-runestone-container .glyphicon-knight:before,.runestone-sphinx .glyphicon-knight:before{content:"\e215"}.ptx-runestone-container .glyphicon-baby-formula:before,.runestone-sphinx .glyphicon-baby-formula:before{content:"\e216"}.ptx-runestone-container .glyphicon-tent:before,.runestone-sphinx .glyphicon-tent:before{content:"\26fa"}.ptx-runestone-container .glyphicon-blackboard:before,.runestone-sphinx .glyphicon-blackboard:before{content:"\e218"}.ptx-runestone-container .glyphicon-bed:before,.runestone-sphinx .glyphicon-bed:before{content:"\e219"}.ptx-runestone-container .glyphicon-apple:before,.runestone-sphinx .glyphicon-apple:before{content:"\f8ff"}.ptx-runestone-container .glyphicon-erase:before,.runestone-sphinx .glyphicon-erase:before{content:"\e221"}.ptx-runestone-container .glyphicon-hourglass:before,.runestone-sphinx .glyphicon-hourglass:before{content:"\231b"}.ptx-runestone-container .glyphicon-lamp:before,.runestone-sphinx .glyphicon-lamp:before{content:"\e223"}.ptx-runestone-container .glyphicon-duplicate:before,.runestone-sphinx .glyphicon-duplicate:before{content:"\e224"}.ptx-runestone-container .glyphicon-piggy-bank:before,.runestone-sphinx .glyphicon-piggy-bank:before{content:"\e225"}.ptx-runestone-container .glyphicon-scissors:before,.runestone-sphinx .glyphicon-scissors:before{content:"\e226"}.ptx-runestone-container .glyphicon-bitcoin:before,.ptx-runestone-container .glyphicon-btc:before,.ptx-runestone-container .glyphicon-xbt:before,.runestone-sphinx .glyphicon-bitcoin:before,.runestone-sphinx .glyphicon-btc:before,.runestone-sphinx .glyphicon-xbt:before{content:"\e227"}.ptx-runestone-container .glyphicon-jpy:before,.ptx-runestone-container .glyphicon-yen:before,.runestone-sphinx .glyphicon-jpy:before,.runestone-sphinx .glyphicon-yen:before{content:"\00a5"}.ptx-runestone-container .glyphicon-rub:before,.ptx-runestone-container .glyphicon-ruble:before,.runestone-sphinx .glyphicon-rub:before,.runestone-sphinx .glyphicon-ruble:before{content:"\20bd"}.ptx-runestone-container .glyphicon-scale:before,.runestone-sphinx .glyphicon-scale:before{content:"\e230"}.ptx-runestone-container .glyphicon-ice-lolly:before,.runestone-sphinx .glyphicon-ice-lolly:before{content:"\e231"}.ptx-runestone-container .glyphicon-ice-lolly-tasted:before,.runestone-sphinx .glyphicon-ice-lolly-tasted:before{content:"\e232"}.ptx-runestone-container .glyphicon-education:before,.runestone-sphinx .glyphicon-education:before{content:"\e233"}.ptx-runestone-container .glyphicon-option-horizontal:before,.runestone-sphinx .glyphicon-option-horizontal:before{content:"\e234"}.ptx-runestone-container .glyphicon-option-vertical:before,.runestone-sphinx .glyphicon-option-vertical:before{content:"\e235"}.ptx-runestone-container .glyphicon-menu-hamburger:before,.runestone-sphinx .glyphicon-menu-hamburger:before{content:"\e236"}.ptx-runestone-container .glyphicon-modal-window:before,.runestone-sphinx .glyphicon-modal-window:before{content:"\e237"}.ptx-runestone-container .glyphicon-oil:before,.runestone-sphinx .glyphicon-oil:before{content:"\e238"}.ptx-runestone-container .glyphicon-grain:before,.runestone-sphinx .glyphicon-grain:before{content:"\e239"}.ptx-runestone-container .glyphicon-sunglasses:before,.runestone-sphinx .glyphicon-sunglasses:before{content:"\e240"}.ptx-runestone-container .glyphicon-text-size:before,.runestone-sphinx .glyphicon-text-size:before{content:"\e241"}.ptx-runestone-container .glyphicon-text-color:before,.runestone-sphinx .glyphicon-text-color:before{content:"\e242"}.ptx-runestone-container .glyphicon-text-background:before,.runestone-sphinx .glyphicon-text-background:before{content:"\e243"}.ptx-runestone-container .glyphicon-object-align-top:before,.runestone-sphinx .glyphicon-object-align-top:before{content:"\e244"}.ptx-runestone-container .glyphicon-object-align-bottom:before,.runestone-sphinx .glyphicon-object-align-bottom:before{content:"\e245"}.ptx-runestone-container .glyphicon-object-align-horizontal:before,.runestone-sphinx .glyphicon-object-align-horizontal:before{content:"\e246"}.ptx-runestone-container .glyphicon-object-align-left:before,.runestone-sphinx .glyphicon-object-align-left:before{content:"\e247"}.ptx-runestone-container .glyphicon-object-align-vertical:before,.runestone-sphinx .glyphicon-object-align-vertical:before{content:"\e248"}.ptx-runestone-container .glyphicon-object-align-right:before,.runestone-sphinx .glyphicon-object-align-right:before{content:"\e249"}.ptx-runestone-container .glyphicon-triangle-right:before,.runestone-sphinx .glyphicon-triangle-right:before{content:"\e250"}.ptx-runestone-container .glyphicon-triangle-left:before,.runestone-sphinx .glyphicon-triangle-left:before{content:"\e251"}.ptx-runestone-container .glyphicon-triangle-bottom:before,.runestone-sphinx .glyphicon-triangle-bottom:before{content:"\e252"}.ptx-runestone-container .glyphicon-triangle-top:before,.runestone-sphinx .glyphicon-triangle-top:before{content:"\e253"}.ptx-runestone-container .glyphicon-console:before,.runestone-sphinx .glyphicon-console:before{content:"\e254"}.ptx-runestone-container .glyphicon-superscript:before,.runestone-sphinx .glyphicon-superscript:before{content:"\e255"}.ptx-runestone-container .glyphicon-subscript:before,.runestone-sphinx .glyphicon-subscript:before{content:"\e256"}.ptx-runestone-container .glyphicon-menu-left:before,.runestone-sphinx .glyphicon-menu-left:before{content:"\e257"}.ptx-runestone-container .glyphicon-menu-right:before,.runestone-sphinx .glyphicon-menu-right:before{content:"\e258"}.ptx-runestone-container .glyphicon-menu-down:before,.runestone-sphinx .glyphicon-menu-down:before{content:"\e259"}.ptx-runestone-container .glyphicon-menu-up:before,.runestone-sphinx .glyphicon-menu-up:before{content:"\e260"}.ptx-runestone-container *,.ptx-runestone-container :after,.ptx-runestone-container :before,.runestone-sphinx *,.runestone-sphinx :after,.runestone-sphinx :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.ptx-runestone-container html,.runestone-sphinx html{-webkit-tap-highlight-color:rgba(0,0,0,0);font-size:10px}.ptx-runestone-container body,.runestone-sphinx body{background-color:#fff;color:#333;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143}.ptx-runestone-container button,.ptx-runestone-container input,.ptx-runestone-container select,.ptx-runestone-container textarea,.runestone-sphinx button,.runestone-sphinx input,.runestone-sphinx select,.runestone-sphinx textarea{font-family:inherit;font-size:inherit;line-height:inherit}.ptx-runestone-container a,.runestone-sphinx a{color:#337ab7;text-decoration:none}.ptx-runestone-container a:focus,.ptx-runestone-container a:hover,.runestone-sphinx a:focus,.runestone-sphinx a:hover{color:#23527c;text-decoration:underline}.ptx-runestone-container a:focus,.runestone-sphinx a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ptx-runestone-container figure,.runestone-sphinx figure{margin:0}.ptx-runestone-container img,.runestone-sphinx img{vertical-align:middle}.ptx-runestone-container .carousel-inner>.item>a>img,.ptx-runestone-container .carousel-inner>.item>img,.ptx-runestone-container .img-responsive,.ptx-runestone-container .thumbnail a>img,.ptx-runestone-container .thumbnail>img,.runestone-sphinx .carousel-inner>.item>a>img,.runestone-sphinx .carousel-inner>.item>img,.runestone-sphinx .img-responsive,.runestone-sphinx .thumbnail a>img,.runestone-sphinx .thumbnail>img{display:block;height:auto;max-width:100%}.ptx-runestone-container .img-rounded,.runestone-sphinx .img-rounded{border-radius:6px}.ptx-runestone-container .img-thumbnail,.runestone-sphinx .img-thumbnail{background-color:#fff;border:1px solid #ddd;border-radius:4px;display:inline-block;height:auto;line-height:1.42857143;max-width:100%;padding:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.ptx-runestone-container .img-circle,.runestone-sphinx .img-circle{border-radius:50%}.ptx-runestone-container hr,.runestone-sphinx hr{border:0;border-top:1px solid #eee;margin-bottom:20px;margin-top:20px}.ptx-runestone-container .sr-only,.runestone-sphinx .sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ptx-runestone-container .sr-only-focusable:active,.ptx-runestone-container .sr-only-focusable:focus,.runestone-sphinx .sr-only-focusable:active,.runestone-sphinx .sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.ptx-runestone-container [role=button],.runestone-sphinx [role=button]{cursor:pointer}.ptx-runestone-container .h1,.ptx-runestone-container .h2,.ptx-runestone-container .h3,.ptx-runestone-container .h4,.ptx-runestone-container .h5,.ptx-runestone-container .h6,.ptx-runestone-container h1,.ptx-runestone-container h2,.ptx-runestone-container h3,.ptx-runestone-container h4,.ptx-runestone-container h5,.ptx-runestone-container h6,.runestone-sphinx .h1,.runestone-sphinx .h2,.runestone-sphinx .h3,.runestone-sphinx .h4,.runestone-sphinx .h5,.runestone-sphinx .h6,.runestone-sphinx h1,.runestone-sphinx h2,.runestone-sphinx h3,.runestone-sphinx h4,.runestone-sphinx h5,.runestone-sphinx h6{color:inherit;font-family:inherit;font-weight:500;line-height:1.1}.ptx-runestone-container .h1 .small,.ptx-runestone-container .h1 small,.ptx-runestone-container .h2 .small,.ptx-runestone-container .h2 small,.ptx-runestone-container .h3 .small,.ptx-runestone-container .h3 small,.ptx-runestone-container .h4 .small,.ptx-runestone-container .h4 small,.ptx-runestone-container .h5 .small,.ptx-runestone-container .h5 small,.ptx-runestone-container .h6 .small,.ptx-runestone-container .h6 small,.ptx-runestone-container h1 .small,.ptx-runestone-container h1 small,.ptx-runestone-container h2 .small,.ptx-runestone-container h2 small,.ptx-runestone-container h3 .small,.ptx-runestone-container h3 small,.ptx-runestone-container h4 .small,.ptx-runestone-container h4 small,.ptx-runestone-container h5 .small,.ptx-runestone-container h5 small,.ptx-runestone-container h6 .small,.ptx-runestone-container h6 small,.runestone-sphinx .h1 .small,.runestone-sphinx .h1 small,.runestone-sphinx .h2 .small,.runestone-sphinx .h2 small,.runestone-sphinx .h3 .small,.runestone-sphinx .h3 small,.runestone-sphinx .h4 .small,.runestone-sphinx .h4 small,.runestone-sphinx .h5 .small,.runestone-sphinx .h5 small,.runestone-sphinx .h6 .small,.runestone-sphinx .h6 small,.runestone-sphinx h1 .small,.runestone-sphinx h1 small,.runestone-sphinx h2 .small,.runestone-sphinx h2 small,.runestone-sphinx h3 .small,.runestone-sphinx h3 small,.runestone-sphinx h4 .small,.runestone-sphinx h4 small,.runestone-sphinx h5 .small,.runestone-sphinx h5 small,.runestone-sphinx h6 .small,.runestone-sphinx h6 small{color:#777;font-weight:400;line-height:1}.ptx-runestone-container .h1,.ptx-runestone-container .h2,.ptx-runestone-container .h3,.ptx-runestone-container h1,.ptx-runestone-container h2,.ptx-runestone-container h3,.runestone-sphinx .h1,.runestone-sphinx .h2,.runestone-sphinx .h3,.runestone-sphinx h1,.runestone-sphinx h2,.runestone-sphinx h3{margin-bottom:10px;margin-top:20px}.ptx-runestone-container .h1 .small,.ptx-runestone-container .h1 small,.ptx-runestone-container .h2 .small,.ptx-runestone-container .h2 small,.ptx-runestone-container .h3 .small,.ptx-runestone-container .h3 small,.ptx-runestone-container h1 .small,.ptx-runestone-container h1 small,.ptx-runestone-container h2 .small,.ptx-runestone-container h2 small,.ptx-runestone-container h3 .small,.ptx-runestone-container h3 small,.runestone-sphinx .h1 .small,.runestone-sphinx .h1 small,.runestone-sphinx .h2 .small,.runestone-sphinx .h2 small,.runestone-sphinx .h3 .small,.runestone-sphinx .h3 small,.runestone-sphinx h1 .small,.runestone-sphinx h1 small,.runestone-sphinx h2 .small,.runestone-sphinx h2 small,.runestone-sphinx h3 .small,.runestone-sphinx h3 small{font-size:65%}.ptx-runestone-container .h4,.ptx-runestone-container .h5,.ptx-runestone-container .h6,.ptx-runestone-container h4,.ptx-runestone-container h5,.ptx-runestone-container h6,.runestone-sphinx .h4,.runestone-sphinx .h5,.runestone-sphinx .h6,.runestone-sphinx h4,.runestone-sphinx h5,.runestone-sphinx h6{margin-bottom:10px;margin-top:10px}.ptx-runestone-container .h4 .small,.ptx-runestone-container .h4 small,.ptx-runestone-container .h5 .small,.ptx-runestone-container .h5 small,.ptx-runestone-container .h6 .small,.ptx-runestone-container .h6 small,.ptx-runestone-container h4 .small,.ptx-runestone-container h4 small,.ptx-runestone-container h5 .small,.ptx-runestone-container h5 small,.ptx-runestone-container h6 .small,.ptx-runestone-container h6 small,.runestone-sphinx .h4 .small,.runestone-sphinx .h4 small,.runestone-sphinx .h5 .small,.runestone-sphinx .h5 small,.runestone-sphinx .h6 .small,.runestone-sphinx .h6 small,.runestone-sphinx h4 .small,.runestone-sphinx h4 small,.runestone-sphinx h5 .small,.runestone-sphinx h5 small,.runestone-sphinx h6 .small,.runestone-sphinx h6 small{font-size:75%}.ptx-runestone-container .h1,.ptx-runestone-container h1,.runestone-sphinx .h1,.runestone-sphinx h1{font-size:36px}.ptx-runestone-container .h2,.ptx-runestone-container h2,.runestone-sphinx .h2,.runestone-sphinx h2{font-size:30px}.ptx-runestone-container .h3,.ptx-runestone-container h3,.runestone-sphinx .h3,.runestone-sphinx h3{font-size:24px}.ptx-runestone-container .h4,.ptx-runestone-container h4,.runestone-sphinx .h4,.runestone-sphinx h4{font-size:18px}.ptx-runestone-container .h5,.ptx-runestone-container h5,.runestone-sphinx .h5,.runestone-sphinx h5{font-size:14px}.ptx-runestone-container .h6,.ptx-runestone-container h6,.runestone-sphinx .h6,.runestone-sphinx h6{font-size:12px}.ptx-runestone-container p,.runestone-sphinx p{margin:0 0 10px}.ptx-runestone-container .lead,.runestone-sphinx .lead{font-size:16px;font-weight:300;line-height:1.4;margin-bottom:20px}@media (min-width:768px){.ptx-runestone-container .lead,.runestone-sphinx .lead{font-size:21px}}.ptx-runestone-container .small,.ptx-runestone-container small,.runestone-sphinx .small,.runestone-sphinx small{font-size:85%}.ptx-runestone-container .mark,.ptx-runestone-container mark,.runestone-sphinx .mark,.runestone-sphinx mark{background-color:#fcf8e3;padding:.2em}.ptx-runestone-container .text-left,.runestone-sphinx .text-left{text-align:left}.ptx-runestone-container .text-right,.runestone-sphinx .text-right{text-align:right}.ptx-runestone-container .text-center,.runestone-sphinx .text-center{text-align:center}.ptx-runestone-container .text-justify,.runestone-sphinx .text-justify{text-align:justify}.ptx-runestone-container .text-nowrap,.runestone-sphinx .text-nowrap{white-space:nowrap}.ptx-runestone-container .text-lowercase,.runestone-sphinx .text-lowercase{text-transform:lowercase}.ptx-runestone-container .text-uppercase,.runestone-sphinx .text-uppercase{text-transform:uppercase}.ptx-runestone-container .text-capitalize,.runestone-sphinx .text-capitalize{text-transform:capitalize}.ptx-runestone-container .text-muted,.runestone-sphinx .text-muted{color:#777}.ptx-runestone-container .text-primary,.runestone-sphinx .text-primary{color:#337ab7}.ptx-runestone-container a.text-primary:focus,.ptx-runestone-container a.text-primary:hover,.runestone-sphinx a.text-primary:focus,.runestone-sphinx a.text-primary:hover{color:#286090}.ptx-runestone-container .text-success,.runestone-sphinx .text-success{color:#3c763d}.ptx-runestone-container a.text-success:focus,.ptx-runestone-container a.text-success:hover,.runestone-sphinx a.text-success:focus,.runestone-sphinx a.text-success:hover{color:#2b542c}.ptx-runestone-container .text-info,.runestone-sphinx .text-info{color:#31708f}.ptx-runestone-container a.text-info:focus,.ptx-runestone-container a.text-info:hover,.runestone-sphinx a.text-info:focus,.runestone-sphinx a.text-info:hover{color:#245269}.ptx-runestone-container .text-warning,.runestone-sphinx .text-warning{color:#8a6d3b}.ptx-runestone-container a.text-warning:focus,.ptx-runestone-container a.text-warning:hover,.runestone-sphinx a.text-warning:focus,.runestone-sphinx a.text-warning:hover{color:#66512c}.ptx-runestone-container .text-danger,.runestone-sphinx .text-danger{color:#a94442}.ptx-runestone-container a.text-danger:focus,.ptx-runestone-container a.text-danger:hover,.runestone-sphinx a.text-danger:focus,.runestone-sphinx a.text-danger:hover{color:#843534}.ptx-runestone-container .bg-primary,.runestone-sphinx .bg-primary{background-color:#337ab7;color:#fff}.ptx-runestone-container a.bg-primary:focus,.ptx-runestone-container a.bg-primary:hover,.runestone-sphinx a.bg-primary:focus,.runestone-sphinx a.bg-primary:hover{background-color:#286090}.ptx-runestone-container .bg-success,.runestone-sphinx .bg-success{background-color:#dff0d8}.ptx-runestone-container a.bg-success:focus,.ptx-runestone-container a.bg-success:hover,.runestone-sphinx a.bg-success:focus,.runestone-sphinx a.bg-success:hover{background-color:#c1e2b3}.ptx-runestone-container .bg-info,.runestone-sphinx .bg-info{background-color:#d9edf7}.ptx-runestone-container a.bg-info:focus,.ptx-runestone-container a.bg-info:hover,.runestone-sphinx a.bg-info:focus,.runestone-sphinx a.bg-info:hover{background-color:#afd9ee}.ptx-runestone-container .bg-warning,.runestone-sphinx .bg-warning{background-color:#fcf8e3}.ptx-runestone-container a.bg-warning:focus,.ptx-runestone-container a.bg-warning:hover,.runestone-sphinx a.bg-warning:focus,.runestone-sphinx a.bg-warning:hover{background-color:#f7ecb5}.ptx-runestone-container .bg-danger,.runestone-sphinx .bg-danger{background-color:#f2dede}.ptx-runestone-container a.bg-danger:focus,.ptx-runestone-container a.bg-danger:hover,.runestone-sphinx a.bg-danger:focus,.runestone-sphinx a.bg-danger:hover{background-color:#e4b9b9}.ptx-runestone-container .page-header,.runestone-sphinx .page-header{border-bottom:1px solid #eee;margin:40px 0 20px;padding-bottom:9px}.ptx-runestone-container ol,.ptx-runestone-container ul,.runestone-sphinx ol,.runestone-sphinx ul{margin-bottom:10px;margin-top:0}.ptx-runestone-container ol ol,.ptx-runestone-container ol ul,.ptx-runestone-container ul ol,.ptx-runestone-container ul ul,.runestone-sphinx ol ol,.runestone-sphinx ol ul,.runestone-sphinx ul ol,.runestone-sphinx ul ul{margin-bottom:0}.ptx-runestone-container .list-unstyled,.runestone-sphinx .list-unstyled{list-style:none;padding-left:0}.ptx-runestone-container .list-inline,.runestone-sphinx .list-inline{list-style:none;margin-left:-5px;padding-left:0}.ptx-runestone-container .list-inline>li,.runestone-sphinx .list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}.ptx-runestone-container dl,.runestone-sphinx dl{margin-bottom:20px;margin-top:0}.ptx-runestone-container dd,.ptx-runestone-container dt,.runestone-sphinx dd,.runestone-sphinx dt{line-height:1.42857143}.ptx-runestone-container dt,.runestone-sphinx dt{font-weight:700}.ptx-runestone-container dd,.runestone-sphinx dd{margin-left:0}@media (min-width:768px){.ptx-runestone-container .dl-horizontal dt,.runestone-sphinx .dl-horizontal dt{clear:left;float:left;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap;width:160px}.ptx-runestone-container .dl-horizontal dd,.runestone-sphinx .dl-horizontal dd{margin-left:180px}}.ptx-runestone-container abbr[data-original-title],.ptx-runestone-container abbr[title],.runestone-sphinx abbr[data-original-title],.runestone-sphinx abbr[title]{cursor:help}.ptx-runestone-container .initialism,.runestone-sphinx .initialism{font-size:90%;text-transform:uppercase}.ptx-runestone-container blockquote,.runestone-sphinx blockquote{border-left:5px solid #eee;font-size:17.5px;margin:0 0 20px;padding:10px 20px}.ptx-runestone-container blockquote ol:last-child,.ptx-runestone-container blockquote p:last-child,.ptx-runestone-container blockquote ul:last-child,.runestone-sphinx blockquote ol:last-child,.runestone-sphinx blockquote p:last-child,.runestone-sphinx blockquote ul:last-child{margin-bottom:0}.ptx-runestone-container blockquote .small,.ptx-runestone-container blockquote footer,.ptx-runestone-container blockquote small,.runestone-sphinx blockquote .small,.runestone-sphinx blockquote footer,.runestone-sphinx blockquote small{color:#777;display:block;font-size:80%;line-height:1.42857143}.ptx-runestone-container blockquote .small:before,.ptx-runestone-container blockquote footer:before,.ptx-runestone-container blockquote small:before,.runestone-sphinx blockquote .small:before,.runestone-sphinx blockquote footer:before,.runestone-sphinx blockquote small:before{content:"\2014 \00A0"}.ptx-runestone-container .blockquote-reverse,.ptx-runestone-container blockquote.pull-right,.runestone-sphinx .blockquote-reverse,.runestone-sphinx blockquote.pull-right{border-left:0;border-right:5px solid #eee;padding-left:0;padding-right:15px;text-align:right}.ptx-runestone-container .blockquote-reverse .small:before,.ptx-runestone-container .blockquote-reverse footer:before,.ptx-runestone-container .blockquote-reverse small:before,.ptx-runestone-container blockquote.pull-right .small:before,.ptx-runestone-container blockquote.pull-right footer:before,.ptx-runestone-container blockquote.pull-right small:before,.runestone-sphinx .blockquote-reverse .small:before,.runestone-sphinx .blockquote-reverse footer:before,.runestone-sphinx .blockquote-reverse small:before,.runestone-sphinx blockquote.pull-right .small:before,.runestone-sphinx blockquote.pull-right footer:before,.runestone-sphinx blockquote.pull-right small:before{content:""}.ptx-runestone-container .blockquote-reverse .small:after,.ptx-runestone-container .blockquote-reverse footer:after,.ptx-runestone-container .blockquote-reverse small:after,.ptx-runestone-container blockquote.pull-right .small:after,.ptx-runestone-container blockquote.pull-right footer:after,.ptx-runestone-container blockquote.pull-right small:after,.runestone-sphinx .blockquote-reverse .small:after,.runestone-sphinx .blockquote-reverse footer:after,.runestone-sphinx .blockquote-reverse small:after,.runestone-sphinx blockquote.pull-right .small:after,.runestone-sphinx blockquote.pull-right footer:after,.runestone-sphinx blockquote.pull-right small:after{content:"\00A0 \2014"}.ptx-runestone-container address,.runestone-sphinx address{font-style:normal;line-height:1.42857143;margin-bottom:20px}.ptx-runestone-container code,.ptx-runestone-container kbd,.ptx-runestone-container pre,.ptx-runestone-container samp,.runestone-sphinx code,.runestone-sphinx kbd,.runestone-sphinx pre,.runestone-sphinx samp{font-family:Menlo,Monaco,Consolas,Courier New,monospace}.ptx-runestone-container code,.runestone-sphinx code{background-color:#f9f2f4;border-radius:4px;color:#c7254e;font-size:90%;padding:2px 4px}.ptx-runestone-container kbd,.runestone-sphinx kbd{background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);color:#fff;font-size:90%;padding:2px 4px}.ptx-runestone-container kbd kbd,.runestone-sphinx kbd kbd{-webkit-box-shadow:none;box-shadow:none;font-size:100%;font-weight:700;padding:0}.ptx-runestone-container pre,.runestone-sphinx pre{word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px;color:#333;display:block;font-size:13px;line-height:1.42857143;margin:0 0 10px;padding:9.5px;word-break:break-all}.ptx-runestone-container pre code,.runestone-sphinx pre code{background-color:transparent;border-radius:0;color:inherit;font-size:inherit;padding:0;white-space:pre-wrap}.ptx-runestone-container .pre-scrollable,.runestone-sphinx .pre-scrollable{max-height:340px;overflow-y:scroll}.ptx-runestone-container .container,.runestone-sphinx .container{margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px}@media (min-width:768px){.ptx-runestone-container .container,.runestone-sphinx .container{width:750px}}@media (min-width:992px){.ptx-runestone-container .container,.runestone-sphinx .container{width:970px}}@media (min-width:1200px){.ptx-runestone-container .container,.runestone-sphinx .container{width:1170px}}.ptx-runestone-container .container-fluid,.runestone-sphinx .container-fluid{margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px}.ptx-runestone-container .row,.runestone-sphinx .row{margin-left:-15px;margin-right:-15px}.ptx-runestone-container .row-no-gutters,.runestone-sphinx .row-no-gutters{margin-left:0;margin-right:0}.ptx-runestone-container .row-no-gutters [class*=col-],.runestone-sphinx .row-no-gutters [class*=col-]{padding-left:0;padding-right:0}.ptx-runestone-container .col-lg-1,.ptx-runestone-container .col-lg-10,.ptx-runestone-container .col-lg-11,.ptx-runestone-container .col-lg-12,.ptx-runestone-container .col-lg-2,.ptx-runestone-container .col-lg-3,.ptx-runestone-container .col-lg-4,.ptx-runestone-container .col-lg-5,.ptx-runestone-container .col-lg-6,.ptx-runestone-container .col-lg-7,.ptx-runestone-container .col-lg-8,.ptx-runestone-container .col-lg-9,.ptx-runestone-container .col-md-1,.ptx-runestone-container .col-md-10,.ptx-runestone-container .col-md-11,.ptx-runestone-container .col-md-12,.ptx-runestone-container .col-md-2,.ptx-runestone-container .col-md-3,.ptx-runestone-container .col-md-4,.ptx-runestone-container .col-md-5,.ptx-runestone-container .col-md-6,.ptx-runestone-container .col-md-7,.ptx-runestone-container .col-md-8,.ptx-runestone-container .col-md-9,.ptx-runestone-container .col-sm-1,.ptx-runestone-container .col-sm-10,.ptx-runestone-container .col-sm-11,.ptx-runestone-container .col-sm-12,.ptx-runestone-container .col-sm-2,.ptx-runestone-container .col-sm-3,.ptx-runestone-container .col-sm-4,.ptx-runestone-container .col-sm-5,.ptx-runestone-container .col-sm-6,.ptx-runestone-container .col-sm-7,.ptx-runestone-container .col-sm-8,.ptx-runestone-container .col-sm-9,.ptx-runestone-container .col-xs-1,.ptx-runestone-container .col-xs-10,.ptx-runestone-container .col-xs-11,.ptx-runestone-container .col-xs-12,.ptx-runestone-container .col-xs-2,.ptx-runestone-container .col-xs-3,.ptx-runestone-container .col-xs-4,.ptx-runestone-container .col-xs-5,.ptx-runestone-container .col-xs-6,.ptx-runestone-container .col-xs-7,.ptx-runestone-container .col-xs-8,.ptx-runestone-container .col-xs-9,.runestone-sphinx .col-lg-1,.runestone-sphinx .col-lg-10,.runestone-sphinx .col-lg-11,.runestone-sphinx .col-lg-12,.runestone-sphinx .col-lg-2,.runestone-sphinx .col-lg-3,.runestone-sphinx .col-lg-4,.runestone-sphinx .col-lg-5,.runestone-sphinx .col-lg-6,.runestone-sphinx .col-lg-7,.runestone-sphinx .col-lg-8,.runestone-sphinx .col-lg-9,.runestone-sphinx .col-md-1,.runestone-sphinx .col-md-10,.runestone-sphinx .col-md-11,.runestone-sphinx .col-md-12,.runestone-sphinx .col-md-2,.runestone-sphinx .col-md-3,.runestone-sphinx .col-md-4,.runestone-sphinx .col-md-5,.runestone-sphinx .col-md-6,.runestone-sphinx .col-md-7,.runestone-sphinx .col-md-8,.runestone-sphinx .col-md-9,.runestone-sphinx .col-sm-1,.runestone-sphinx .col-sm-10,.runestone-sphinx .col-sm-11,.runestone-sphinx .col-sm-12,.runestone-sphinx .col-sm-2,.runestone-sphinx .col-sm-3,.runestone-sphinx .col-sm-4,.runestone-sphinx .col-sm-5,.runestone-sphinx .col-sm-6,.runestone-sphinx .col-sm-7,.runestone-sphinx .col-sm-8,.runestone-sphinx .col-sm-9,.runestone-sphinx .col-xs-1,.runestone-sphinx .col-xs-10,.runestone-sphinx .col-xs-11,.runestone-sphinx .col-xs-12,.runestone-sphinx .col-xs-2,.runestone-sphinx .col-xs-3,.runestone-sphinx .col-xs-4,.runestone-sphinx .col-xs-5,.runestone-sphinx .col-xs-6,.runestone-sphinx .col-xs-7,.runestone-sphinx .col-xs-8,.runestone-sphinx .col-xs-9{min-height:1px;padding-left:15px;padding-right:15px;position:relative}.ptx-runestone-container .col-xs-1,.ptx-runestone-container .col-xs-10,.ptx-runestone-container .col-xs-11,.ptx-runestone-container .col-xs-12,.ptx-runestone-container .col-xs-2,.ptx-runestone-container .col-xs-3,.ptx-runestone-container .col-xs-4,.ptx-runestone-container .col-xs-5,.ptx-runestone-container .col-xs-6,.ptx-runestone-container .col-xs-7,.ptx-runestone-container .col-xs-8,.ptx-runestone-container .col-xs-9,.runestone-sphinx .col-xs-1,.runestone-sphinx .col-xs-10,.runestone-sphinx .col-xs-11,.runestone-sphinx .col-xs-12,.runestone-sphinx .col-xs-2,.runestone-sphinx .col-xs-3,.runestone-sphinx .col-xs-4,.runestone-sphinx .col-xs-5,.runestone-sphinx .col-xs-6,.runestone-sphinx .col-xs-7,.runestone-sphinx .col-xs-8,.runestone-sphinx .col-xs-9{float:left}.ptx-runestone-container .col-xs-12,.runestone-sphinx .col-xs-12{width:100%}.ptx-runestone-container .col-xs-11,.runestone-sphinx .col-xs-11{width:91.66666667%}.ptx-runestone-container .col-xs-10,.runestone-sphinx .col-xs-10{width:83.33333333%}.ptx-runestone-container .col-xs-9,.runestone-sphinx .col-xs-9{width:75%}.ptx-runestone-container .col-xs-8,.runestone-sphinx .col-xs-8{width:66.66666667%}.ptx-runestone-container .col-xs-7,.runestone-sphinx .col-xs-7{width:58.33333333%}.ptx-runestone-container .col-xs-6,.runestone-sphinx .col-xs-6{width:50%}.ptx-runestone-container .col-xs-5,.runestone-sphinx .col-xs-5{width:41.66666667%}.ptx-runestone-container .col-xs-4,.runestone-sphinx .col-xs-4{width:33.33333333%}.ptx-runestone-container .col-xs-3,.runestone-sphinx .col-xs-3{width:25%}.ptx-runestone-container .col-xs-2,.runestone-sphinx .col-xs-2{width:16.66666667%}.ptx-runestone-container .col-xs-1,.runestone-sphinx .col-xs-1{width:8.33333333%}.ptx-runestone-container .col-xs-pull-12,.runestone-sphinx .col-xs-pull-12{right:100%}.ptx-runestone-container .col-xs-pull-11,.runestone-sphinx .col-xs-pull-11{right:91.66666667%}.ptx-runestone-container .col-xs-pull-10,.runestone-sphinx .col-xs-pull-10{right:83.33333333%}.ptx-runestone-container .col-xs-pull-9,.runestone-sphinx .col-xs-pull-9{right:75%}.ptx-runestone-container .col-xs-pull-8,.runestone-sphinx .col-xs-pull-8{right:66.66666667%}.ptx-runestone-container .col-xs-pull-7,.runestone-sphinx .col-xs-pull-7{right:58.33333333%}.ptx-runestone-container .col-xs-pull-6,.runestone-sphinx .col-xs-pull-6{right:50%}.ptx-runestone-container .col-xs-pull-5,.runestone-sphinx .col-xs-pull-5{right:41.66666667%}.ptx-runestone-container .col-xs-pull-4,.runestone-sphinx .col-xs-pull-4{right:33.33333333%}.ptx-runestone-container .col-xs-pull-3,.runestone-sphinx .col-xs-pull-3{right:25%}.ptx-runestone-container .col-xs-pull-2,.runestone-sphinx .col-xs-pull-2{right:16.66666667%}.ptx-runestone-container .col-xs-pull-1,.runestone-sphinx .col-xs-pull-1{right:8.33333333%}.ptx-runestone-container .col-xs-pull-0,.runestone-sphinx .col-xs-pull-0{right:auto}.ptx-runestone-container .col-xs-push-12,.runestone-sphinx .col-xs-push-12{left:100%}.ptx-runestone-container .col-xs-push-11,.runestone-sphinx .col-xs-push-11{left:91.66666667%}.ptx-runestone-container .col-xs-push-10,.runestone-sphinx .col-xs-push-10{left:83.33333333%}.ptx-runestone-container .col-xs-push-9,.runestone-sphinx .col-xs-push-9{left:75%}.ptx-runestone-container .col-xs-push-8,.runestone-sphinx .col-xs-push-8{left:66.66666667%}.ptx-runestone-container .col-xs-push-7,.runestone-sphinx .col-xs-push-7{left:58.33333333%}.ptx-runestone-container .col-xs-push-6,.runestone-sphinx .col-xs-push-6{left:50%}.ptx-runestone-container .col-xs-push-5,.runestone-sphinx .col-xs-push-5{left:41.66666667%}.ptx-runestone-container .col-xs-push-4,.runestone-sphinx .col-xs-push-4{left:33.33333333%}.ptx-runestone-container .col-xs-push-3,.runestone-sphinx .col-xs-push-3{left:25%}.ptx-runestone-container .col-xs-push-2,.runestone-sphinx .col-xs-push-2{left:16.66666667%}.ptx-runestone-container .col-xs-push-1,.runestone-sphinx .col-xs-push-1{left:8.33333333%}.ptx-runestone-container .col-xs-push-0,.runestone-sphinx .col-xs-push-0{left:auto}.ptx-runestone-container .col-xs-offset-12,.runestone-sphinx .col-xs-offset-12{margin-left:100%}.ptx-runestone-container .col-xs-offset-11,.runestone-sphinx .col-xs-offset-11{margin-left:91.66666667%}.ptx-runestone-container .col-xs-offset-10,.runestone-sphinx .col-xs-offset-10{margin-left:83.33333333%}.ptx-runestone-container .col-xs-offset-9,.runestone-sphinx .col-xs-offset-9{margin-left:75%}.ptx-runestone-container .col-xs-offset-8,.runestone-sphinx .col-xs-offset-8{margin-left:66.66666667%}.ptx-runestone-container .col-xs-offset-7,.runestone-sphinx .col-xs-offset-7{margin-left:58.33333333%}.ptx-runestone-container .col-xs-offset-6,.runestone-sphinx .col-xs-offset-6{margin-left:50%}.ptx-runestone-container .col-xs-offset-5,.runestone-sphinx .col-xs-offset-5{margin-left:41.66666667%}.ptx-runestone-container .col-xs-offset-4,.runestone-sphinx .col-xs-offset-4{margin-left:33.33333333%}.ptx-runestone-container .col-xs-offset-3,.runestone-sphinx .col-xs-offset-3{margin-left:25%}.ptx-runestone-container .col-xs-offset-2,.runestone-sphinx .col-xs-offset-2{margin-left:16.66666667%}.ptx-runestone-container .col-xs-offset-1,.runestone-sphinx .col-xs-offset-1{margin-left:8.33333333%}.ptx-runestone-container .col-xs-offset-0,.runestone-sphinx .col-xs-offset-0{margin-left:0}@media (min-width:768px){.ptx-runestone-container .col-sm-1,.ptx-runestone-container .col-sm-10,.ptx-runestone-container .col-sm-11,.ptx-runestone-container .col-sm-12,.ptx-runestone-container .col-sm-2,.ptx-runestone-container .col-sm-3,.ptx-runestone-container .col-sm-4,.ptx-runestone-container .col-sm-5,.ptx-runestone-container .col-sm-6,.ptx-runestone-container .col-sm-7,.ptx-runestone-container .col-sm-8,.ptx-runestone-container .col-sm-9,.runestone-sphinx .col-sm-1,.runestone-sphinx .col-sm-10,.runestone-sphinx .col-sm-11,.runestone-sphinx .col-sm-12,.runestone-sphinx .col-sm-2,.runestone-sphinx .col-sm-3,.runestone-sphinx .col-sm-4,.runestone-sphinx .col-sm-5,.runestone-sphinx .col-sm-6,.runestone-sphinx .col-sm-7,.runestone-sphinx .col-sm-8,.runestone-sphinx .col-sm-9{float:left}.ptx-runestone-container .col-sm-12,.runestone-sphinx .col-sm-12{width:100%}.ptx-runestone-container .col-sm-11,.runestone-sphinx .col-sm-11{width:91.66666667%}.ptx-runestone-container .col-sm-10,.runestone-sphinx .col-sm-10{width:83.33333333%}.ptx-runestone-container .col-sm-9,.runestone-sphinx .col-sm-9{width:75%}.ptx-runestone-container .col-sm-8,.runestone-sphinx .col-sm-8{width:66.66666667%}.ptx-runestone-container .col-sm-7,.runestone-sphinx .col-sm-7{width:58.33333333%}.ptx-runestone-container .col-sm-6,.runestone-sphinx .col-sm-6{width:50%}.ptx-runestone-container .col-sm-5,.runestone-sphinx .col-sm-5{width:41.66666667%}.ptx-runestone-container .col-sm-4,.runestone-sphinx .col-sm-4{width:33.33333333%}.ptx-runestone-container .col-sm-3,.runestone-sphinx .col-sm-3{width:25%}.ptx-runestone-container .col-sm-2,.runestone-sphinx .col-sm-2{width:16.66666667%}.ptx-runestone-container .col-sm-1,.runestone-sphinx .col-sm-1{width:8.33333333%}.ptx-runestone-container .col-sm-pull-12,.runestone-sphinx .col-sm-pull-12{right:100%}.ptx-runestone-container .col-sm-pull-11,.runestone-sphinx .col-sm-pull-11{right:91.66666667%}.ptx-runestone-container .col-sm-pull-10,.runestone-sphinx .col-sm-pull-10{right:83.33333333%}.ptx-runestone-container .col-sm-pull-9,.runestone-sphinx .col-sm-pull-9{right:75%}.ptx-runestone-container .col-sm-pull-8,.runestone-sphinx .col-sm-pull-8{right:66.66666667%}.ptx-runestone-container .col-sm-pull-7,.runestone-sphinx .col-sm-pull-7{right:58.33333333%}.ptx-runestone-container .col-sm-pull-6,.runestone-sphinx .col-sm-pull-6{right:50%}.ptx-runestone-container .col-sm-pull-5,.runestone-sphinx .col-sm-pull-5{right:41.66666667%}.ptx-runestone-container .col-sm-pull-4,.runestone-sphinx .col-sm-pull-4{right:33.33333333%}.ptx-runestone-container .col-sm-pull-3,.runestone-sphinx .col-sm-pull-3{right:25%}.ptx-runestone-container .col-sm-pull-2,.runestone-sphinx .col-sm-pull-2{right:16.66666667%}.ptx-runestone-container .col-sm-pull-1,.runestone-sphinx .col-sm-pull-1{right:8.33333333%}.ptx-runestone-container .col-sm-pull-0,.runestone-sphinx .col-sm-pull-0{right:auto}.ptx-runestone-container .col-sm-push-12,.runestone-sphinx .col-sm-push-12{left:100%}.ptx-runestone-container .col-sm-push-11,.runestone-sphinx .col-sm-push-11{left:91.66666667%}.ptx-runestone-container .col-sm-push-10,.runestone-sphinx .col-sm-push-10{left:83.33333333%}.ptx-runestone-container .col-sm-push-9,.runestone-sphinx .col-sm-push-9{left:75%}.ptx-runestone-container .col-sm-push-8,.runestone-sphinx .col-sm-push-8{left:66.66666667%}.ptx-runestone-container .col-sm-push-7,.runestone-sphinx .col-sm-push-7{left:58.33333333%}.ptx-runestone-container .col-sm-push-6,.runestone-sphinx .col-sm-push-6{left:50%}.ptx-runestone-container .col-sm-push-5,.runestone-sphinx .col-sm-push-5{left:41.66666667%}.ptx-runestone-container .col-sm-push-4,.runestone-sphinx .col-sm-push-4{left:33.33333333%}.ptx-runestone-container .col-sm-push-3,.runestone-sphinx .col-sm-push-3{left:25%}.ptx-runestone-container .col-sm-push-2,.runestone-sphinx .col-sm-push-2{left:16.66666667%}.ptx-runestone-container .col-sm-push-1,.runestone-sphinx .col-sm-push-1{left:8.33333333%}.ptx-runestone-container .col-sm-push-0,.runestone-sphinx .col-sm-push-0{left:auto}.ptx-runestone-container .col-sm-offset-12,.runestone-sphinx .col-sm-offset-12{margin-left:100%}.ptx-runestone-container .col-sm-offset-11,.runestone-sphinx .col-sm-offset-11{margin-left:91.66666667%}.ptx-runestone-container .col-sm-offset-10,.runestone-sphinx .col-sm-offset-10{margin-left:83.33333333%}.ptx-runestone-container .col-sm-offset-9,.runestone-sphinx .col-sm-offset-9{margin-left:75%}.ptx-runestone-container .col-sm-offset-8,.runestone-sphinx .col-sm-offset-8{margin-left:66.66666667%}.ptx-runestone-container .col-sm-offset-7,.runestone-sphinx .col-sm-offset-7{margin-left:58.33333333%}.ptx-runestone-container .col-sm-offset-6,.runestone-sphinx .col-sm-offset-6{margin-left:50%}.ptx-runestone-container .col-sm-offset-5,.runestone-sphinx .col-sm-offset-5{margin-left:41.66666667%}.ptx-runestone-container .col-sm-offset-4,.runestone-sphinx .col-sm-offset-4{margin-left:33.33333333%}.ptx-runestone-container .col-sm-offset-3,.runestone-sphinx .col-sm-offset-3{margin-left:25%}.ptx-runestone-container .col-sm-offset-2,.runestone-sphinx .col-sm-offset-2{margin-left:16.66666667%}.ptx-runestone-container .col-sm-offset-1,.runestone-sphinx .col-sm-offset-1{margin-left:8.33333333%}.ptx-runestone-container .col-sm-offset-0,.runestone-sphinx .col-sm-offset-0{margin-left:0}}@media (min-width:992px){.ptx-runestone-container .col-md-1,.ptx-runestone-container .col-md-10,.ptx-runestone-container .col-md-11,.ptx-runestone-container .col-md-12,.ptx-runestone-container .col-md-2,.ptx-runestone-container .col-md-3,.ptx-runestone-container .col-md-4,.ptx-runestone-container .col-md-5,.ptx-runestone-container .col-md-6,.ptx-runestone-container .col-md-7,.ptx-runestone-container .col-md-8,.ptx-runestone-container .col-md-9,.runestone-sphinx .col-md-1,.runestone-sphinx .col-md-10,.runestone-sphinx .col-md-11,.runestone-sphinx .col-md-12,.runestone-sphinx .col-md-2,.runestone-sphinx .col-md-3,.runestone-sphinx .col-md-4,.runestone-sphinx .col-md-5,.runestone-sphinx .col-md-6,.runestone-sphinx .col-md-7,.runestone-sphinx .col-md-8,.runestone-sphinx .col-md-9{float:left}.ptx-runestone-container .col-md-12,.runestone-sphinx .col-md-12{width:100%}.ptx-runestone-container .col-md-11,.runestone-sphinx .col-md-11{width:91.66666667%}.ptx-runestone-container .col-md-10,.runestone-sphinx .col-md-10{width:83.33333333%}.ptx-runestone-container .col-md-9,.runestone-sphinx .col-md-9{width:75%}.ptx-runestone-container .col-md-8,.runestone-sphinx .col-md-8{width:66.66666667%}.ptx-runestone-container .col-md-7,.runestone-sphinx .col-md-7{width:58.33333333%}.ptx-runestone-container .col-md-6,.runestone-sphinx .col-md-6{width:50%}.ptx-runestone-container .col-md-5,.runestone-sphinx .col-md-5{width:41.66666667%}.ptx-runestone-container .col-md-4,.runestone-sphinx .col-md-4{width:33.33333333%}.ptx-runestone-container .col-md-3,.runestone-sphinx .col-md-3{width:25%}.ptx-runestone-container .col-md-2,.runestone-sphinx .col-md-2{width:16.66666667%}.ptx-runestone-container .col-md-1,.runestone-sphinx .col-md-1{width:8.33333333%}.ptx-runestone-container .col-md-pull-12,.runestone-sphinx .col-md-pull-12{right:100%}.ptx-runestone-container .col-md-pull-11,.runestone-sphinx .col-md-pull-11{right:91.66666667%}.ptx-runestone-container .col-md-pull-10,.runestone-sphinx .col-md-pull-10{right:83.33333333%}.ptx-runestone-container .col-md-pull-9,.runestone-sphinx .col-md-pull-9{right:75%}.ptx-runestone-container .col-md-pull-8,.runestone-sphinx .col-md-pull-8{right:66.66666667%}.ptx-runestone-container .col-md-pull-7,.runestone-sphinx .col-md-pull-7{right:58.33333333%}.ptx-runestone-container .col-md-pull-6,.runestone-sphinx .col-md-pull-6{right:50%}.ptx-runestone-container .col-md-pull-5,.runestone-sphinx .col-md-pull-5{right:41.66666667%}.ptx-runestone-container .col-md-pull-4,.runestone-sphinx .col-md-pull-4{right:33.33333333%}.ptx-runestone-container .col-md-pull-3,.runestone-sphinx .col-md-pull-3{right:25%}.ptx-runestone-container .col-md-pull-2,.runestone-sphinx .col-md-pull-2{right:16.66666667%}.ptx-runestone-container .col-md-pull-1,.runestone-sphinx .col-md-pull-1{right:8.33333333%}.ptx-runestone-container .col-md-pull-0,.runestone-sphinx .col-md-pull-0{right:auto}.ptx-runestone-container .col-md-push-12,.runestone-sphinx .col-md-push-12{left:100%}.ptx-runestone-container .col-md-push-11,.runestone-sphinx .col-md-push-11{left:91.66666667%}.ptx-runestone-container .col-md-push-10,.runestone-sphinx .col-md-push-10{left:83.33333333%}.ptx-runestone-container .col-md-push-9,.runestone-sphinx .col-md-push-9{left:75%}.ptx-runestone-container .col-md-push-8,.runestone-sphinx .col-md-push-8{left:66.66666667%}.ptx-runestone-container .col-md-push-7,.runestone-sphinx .col-md-push-7{left:58.33333333%}.ptx-runestone-container .col-md-push-6,.runestone-sphinx .col-md-push-6{left:50%}.ptx-runestone-container .col-md-push-5,.runestone-sphinx .col-md-push-5{left:41.66666667%}.ptx-runestone-container .col-md-push-4,.runestone-sphinx .col-md-push-4{left:33.33333333%}.ptx-runestone-container .col-md-push-3,.runestone-sphinx .col-md-push-3{left:25%}.ptx-runestone-container .col-md-push-2,.runestone-sphinx .col-md-push-2{left:16.66666667%}.ptx-runestone-container .col-md-push-1,.runestone-sphinx .col-md-push-1{left:8.33333333%}.ptx-runestone-container .col-md-push-0,.runestone-sphinx .col-md-push-0{left:auto}.ptx-runestone-container .col-md-offset-12,.runestone-sphinx .col-md-offset-12{margin-left:100%}.ptx-runestone-container .col-md-offset-11,.runestone-sphinx .col-md-offset-11{margin-left:91.66666667%}.ptx-runestone-container .col-md-offset-10,.runestone-sphinx .col-md-offset-10{margin-left:83.33333333%}.ptx-runestone-container .col-md-offset-9,.runestone-sphinx .col-md-offset-9{margin-left:75%}.ptx-runestone-container .col-md-offset-8,.runestone-sphinx .col-md-offset-8{margin-left:66.66666667%}.ptx-runestone-container .col-md-offset-7,.runestone-sphinx .col-md-offset-7{margin-left:58.33333333%}.ptx-runestone-container .col-md-offset-6,.runestone-sphinx .col-md-offset-6{margin-left:50%}.ptx-runestone-container .col-md-offset-5,.runestone-sphinx .col-md-offset-5{margin-left:41.66666667%}.ptx-runestone-container .col-md-offset-4,.runestone-sphinx .col-md-offset-4{margin-left:33.33333333%}.ptx-runestone-container .col-md-offset-3,.runestone-sphinx .col-md-offset-3{margin-left:25%}.ptx-runestone-container .col-md-offset-2,.runestone-sphinx .col-md-offset-2{margin-left:16.66666667%}.ptx-runestone-container .col-md-offset-1,.runestone-sphinx .col-md-offset-1{margin-left:8.33333333%}.ptx-runestone-container .col-md-offset-0,.runestone-sphinx .col-md-offset-0{margin-left:0}}@media (min-width:1200px){.ptx-runestone-container .col-lg-1,.ptx-runestone-container .col-lg-10,.ptx-runestone-container .col-lg-11,.ptx-runestone-container .col-lg-12,.ptx-runestone-container .col-lg-2,.ptx-runestone-container .col-lg-3,.ptx-runestone-container .col-lg-4,.ptx-runestone-container .col-lg-5,.ptx-runestone-container .col-lg-6,.ptx-runestone-container .col-lg-7,.ptx-runestone-container .col-lg-8,.ptx-runestone-container .col-lg-9,.runestone-sphinx .col-lg-1,.runestone-sphinx .col-lg-10,.runestone-sphinx .col-lg-11,.runestone-sphinx .col-lg-12,.runestone-sphinx .col-lg-2,.runestone-sphinx .col-lg-3,.runestone-sphinx .col-lg-4,.runestone-sphinx .col-lg-5,.runestone-sphinx .col-lg-6,.runestone-sphinx .col-lg-7,.runestone-sphinx .col-lg-8,.runestone-sphinx .col-lg-9{float:left}.ptx-runestone-container .col-lg-12,.runestone-sphinx .col-lg-12{width:100%}.ptx-runestone-container .col-lg-11,.runestone-sphinx .col-lg-11{width:91.66666667%}.ptx-runestone-container .col-lg-10,.runestone-sphinx .col-lg-10{width:83.33333333%}.ptx-runestone-container .col-lg-9,.runestone-sphinx .col-lg-9{width:75%}.ptx-runestone-container .col-lg-8,.runestone-sphinx .col-lg-8{width:66.66666667%}.ptx-runestone-container .col-lg-7,.runestone-sphinx .col-lg-7{width:58.33333333%}.ptx-runestone-container .col-lg-6,.runestone-sphinx .col-lg-6{width:50%}.ptx-runestone-container .col-lg-5,.runestone-sphinx .col-lg-5{width:41.66666667%}.ptx-runestone-container .col-lg-4,.runestone-sphinx .col-lg-4{width:33.33333333%}.ptx-runestone-container .col-lg-3,.runestone-sphinx .col-lg-3{width:25%}.ptx-runestone-container .col-lg-2,.runestone-sphinx .col-lg-2{width:16.66666667%}.ptx-runestone-container .col-lg-1,.runestone-sphinx .col-lg-1{width:8.33333333%}.ptx-runestone-container .col-lg-pull-12,.runestone-sphinx .col-lg-pull-12{right:100%}.ptx-runestone-container .col-lg-pull-11,.runestone-sphinx .col-lg-pull-11{right:91.66666667%}.ptx-runestone-container .col-lg-pull-10,.runestone-sphinx .col-lg-pull-10{right:83.33333333%}.ptx-runestone-container .col-lg-pull-9,.runestone-sphinx .col-lg-pull-9{right:75%}.ptx-runestone-container .col-lg-pull-8,.runestone-sphinx .col-lg-pull-8{right:66.66666667%}.ptx-runestone-container .col-lg-pull-7,.runestone-sphinx .col-lg-pull-7{right:58.33333333%}.ptx-runestone-container .col-lg-pull-6,.runestone-sphinx .col-lg-pull-6{right:50%}.ptx-runestone-container .col-lg-pull-5,.runestone-sphinx .col-lg-pull-5{right:41.66666667%}.ptx-runestone-container .col-lg-pull-4,.runestone-sphinx .col-lg-pull-4{right:33.33333333%}.ptx-runestone-container .col-lg-pull-3,.runestone-sphinx .col-lg-pull-3{right:25%}.ptx-runestone-container .col-lg-pull-2,.runestone-sphinx .col-lg-pull-2{right:16.66666667%}.ptx-runestone-container .col-lg-pull-1,.runestone-sphinx .col-lg-pull-1{right:8.33333333%}.ptx-runestone-container .col-lg-pull-0,.runestone-sphinx .col-lg-pull-0{right:auto}.ptx-runestone-container .col-lg-push-12,.runestone-sphinx .col-lg-push-12{left:100%}.ptx-runestone-container .col-lg-push-11,.runestone-sphinx .col-lg-push-11{left:91.66666667%}.ptx-runestone-container .col-lg-push-10,.runestone-sphinx .col-lg-push-10{left:83.33333333%}.ptx-runestone-container .col-lg-push-9,.runestone-sphinx .col-lg-push-9{left:75%}.ptx-runestone-container .col-lg-push-8,.runestone-sphinx .col-lg-push-8{left:66.66666667%}.ptx-runestone-container .col-lg-push-7,.runestone-sphinx .col-lg-push-7{left:58.33333333%}.ptx-runestone-container .col-lg-push-6,.runestone-sphinx .col-lg-push-6{left:50%}.ptx-runestone-container .col-lg-push-5,.runestone-sphinx .col-lg-push-5{left:41.66666667%}.ptx-runestone-container .col-lg-push-4,.runestone-sphinx .col-lg-push-4{left:33.33333333%}.ptx-runestone-container .col-lg-push-3,.runestone-sphinx .col-lg-push-3{left:25%}.ptx-runestone-container .col-lg-push-2,.runestone-sphinx .col-lg-push-2{left:16.66666667%}.ptx-runestone-container .col-lg-push-1,.runestone-sphinx .col-lg-push-1{left:8.33333333%}.ptx-runestone-container .col-lg-push-0,.runestone-sphinx .col-lg-push-0{left:auto}.ptx-runestone-container .col-lg-offset-12,.runestone-sphinx .col-lg-offset-12{margin-left:100%}.ptx-runestone-container .col-lg-offset-11,.runestone-sphinx .col-lg-offset-11{margin-left:91.66666667%}.ptx-runestone-container .col-lg-offset-10,.runestone-sphinx .col-lg-offset-10{margin-left:83.33333333%}.ptx-runestone-container .col-lg-offset-9,.runestone-sphinx .col-lg-offset-9{margin-left:75%}.ptx-runestone-container .col-lg-offset-8,.runestone-sphinx .col-lg-offset-8{margin-left:66.66666667%}.ptx-runestone-container .col-lg-offset-7,.runestone-sphinx .col-lg-offset-7{margin-left:58.33333333%}.ptx-runestone-container .col-lg-offset-6,.runestone-sphinx .col-lg-offset-6{margin-left:50%}.ptx-runestone-container .col-lg-offset-5,.runestone-sphinx .col-lg-offset-5{margin-left:41.66666667%}.ptx-runestone-container .col-lg-offset-4,.runestone-sphinx .col-lg-offset-4{margin-left:33.33333333%}.ptx-runestone-container .col-lg-offset-3,.runestone-sphinx .col-lg-offset-3{margin-left:25%}.ptx-runestone-container .col-lg-offset-2,.runestone-sphinx .col-lg-offset-2{margin-left:16.66666667%}.ptx-runestone-container .col-lg-offset-1,.runestone-sphinx .col-lg-offset-1{margin-left:8.33333333%}.ptx-runestone-container .col-lg-offset-0,.runestone-sphinx .col-lg-offset-0{margin-left:0}}.ptx-runestone-container table,.runestone-sphinx table{background-color:transparent}.ptx-runestone-container table col[class*=col-],.runestone-sphinx table col[class*=col-]{display:table-column;float:none;position:static}.ptx-runestone-container table td[class*=col-],.ptx-runestone-container table th[class*=col-],.runestone-sphinx table td[class*=col-],.runestone-sphinx table th[class*=col-]{display:table-cell;float:none;position:static}.ptx-runestone-container caption,.runestone-sphinx caption{color:#777;padding-bottom:8px;padding-top:8px;text-align:left}.ptx-runestone-container th,.runestone-sphinx th{text-align:left}.ptx-runestone-container .table,.runestone-sphinx .table{margin-bottom:20px;max-width:100%;width:100%}.ptx-runestone-container .table>tbody>tr>td,.ptx-runestone-container .table>tbody>tr>th,.ptx-runestone-container .table>tfoot>tr>td,.ptx-runestone-container .table>tfoot>tr>th,.ptx-runestone-container .table>thead>tr>td,.ptx-runestone-container .table>thead>tr>th,.runestone-sphinx .table>tbody>tr>td,.runestone-sphinx .table>tbody>tr>th,.runestone-sphinx .table>tfoot>tr>td,.runestone-sphinx .table>tfoot>tr>th,.runestone-sphinx .table>thead>tr>td,.runestone-sphinx .table>thead>tr>th{border-top:1px solid #ddd;line-height:1.42857143;padding:8px;vertical-align:top}.ptx-runestone-container .table>thead>tr>th,.runestone-sphinx .table>thead>tr>th{border-bottom:2px solid #ddd;vertical-align:bottom}.ptx-runestone-container .table>caption+thead>tr:first-child>td,.ptx-runestone-container .table>caption+thead>tr:first-child>th,.ptx-runestone-container .table>colgroup+thead>tr:first-child>td,.ptx-runestone-container .table>colgroup+thead>tr:first-child>th,.ptx-runestone-container .table>thead:first-child>tr:first-child>td,.ptx-runestone-container .table>thead:first-child>tr:first-child>th,.runestone-sphinx .table>caption+thead>tr:first-child>td,.runestone-sphinx .table>caption+thead>tr:first-child>th,.runestone-sphinx .table>colgroup+thead>tr:first-child>td,.runestone-sphinx .table>colgroup+thead>tr:first-child>th,.runestone-sphinx .table>thead:first-child>tr:first-child>td,.runestone-sphinx .table>thead:first-child>tr:first-child>th{border-top:0}.ptx-runestone-container .table>tbody+tbody,.runestone-sphinx .table>tbody+tbody{border-top:2px solid #ddd}.ptx-runestone-container .table .table,.runestone-sphinx .table .table{background-color:#fff}.ptx-runestone-container .table-condensed>tbody>tr>td,.ptx-runestone-container .table-condensed>tbody>tr>th,.ptx-runestone-container .table-condensed>tfoot>tr>td,.ptx-runestone-container .table-condensed>tfoot>tr>th,.ptx-runestone-container .table-condensed>thead>tr>td,.ptx-runestone-container .table-condensed>thead>tr>th,.runestone-sphinx .table-condensed>tbody>tr>td,.runestone-sphinx .table-condensed>tbody>tr>th,.runestone-sphinx .table-condensed>tfoot>tr>td,.runestone-sphinx .table-condensed>tfoot>tr>th,.runestone-sphinx .table-condensed>thead>tr>td,.runestone-sphinx .table-condensed>thead>tr>th{padding:5px}.ptx-runestone-container .table-bordered,.ptx-runestone-container .table-bordered>tbody>tr>td,.ptx-runestone-container .table-bordered>tbody>tr>th,.ptx-runestone-container .table-bordered>tfoot>tr>td,.ptx-runestone-container .table-bordered>tfoot>tr>th,.ptx-runestone-container .table-bordered>thead>tr>td,.ptx-runestone-container .table-bordered>thead>tr>th,.runestone-sphinx .table-bordered,.runestone-sphinx .table-bordered>tbody>tr>td,.runestone-sphinx .table-bordered>tbody>tr>th,.runestone-sphinx .table-bordered>tfoot>tr>td,.runestone-sphinx .table-bordered>tfoot>tr>th,.runestone-sphinx .table-bordered>thead>tr>td,.runestone-sphinx .table-bordered>thead>tr>th{border:1px solid #ddd}.ptx-runestone-container .table-bordered>thead>tr>td,.ptx-runestone-container .table-bordered>thead>tr>th,.runestone-sphinx .table-bordered>thead>tr>td,.runestone-sphinx .table-bordered>thead>tr>th{border-bottom-width:2px}.ptx-runestone-container .table-striped>tbody>tr:nth-of-type(odd),.runestone-sphinx .table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.ptx-runestone-container .table-hover>tbody>tr:hover,.ptx-runestone-container .table>tbody>tr.active>td,.ptx-runestone-container .table>tbody>tr.active>th,.ptx-runestone-container .table>tbody>tr>td.active,.ptx-runestone-container .table>tbody>tr>th.active,.ptx-runestone-container .table>tfoot>tr.active>td,.ptx-runestone-container .table>tfoot>tr.active>th,.ptx-runestone-container .table>tfoot>tr>td.active,.ptx-runestone-container .table>tfoot>tr>th.active,.ptx-runestone-container .table>thead>tr.active>td,.ptx-runestone-container .table>thead>tr.active>th,.ptx-runestone-container .table>thead>tr>td.active,.ptx-runestone-container .table>thead>tr>th.active,.runestone-sphinx .table-hover>tbody>tr:hover,.runestone-sphinx .table>tbody>tr.active>td,.runestone-sphinx .table>tbody>tr.active>th,.runestone-sphinx .table>tbody>tr>td.active,.runestone-sphinx .table>tbody>tr>th.active,.runestone-sphinx .table>tfoot>tr.active>td,.runestone-sphinx .table>tfoot>tr.active>th,.runestone-sphinx .table>tfoot>tr>td.active,.runestone-sphinx .table>tfoot>tr>th.active,.runestone-sphinx .table>thead>tr.active>td,.runestone-sphinx .table>thead>tr.active>th,.runestone-sphinx .table>thead>tr>td.active,.runestone-sphinx .table>thead>tr>th.active{background-color:#f5f5f5}.ptx-runestone-container .table-hover>tbody>tr.active:hover>td,.ptx-runestone-container .table-hover>tbody>tr.active:hover>th,.ptx-runestone-container .table-hover>tbody>tr:hover>.active,.ptx-runestone-container .table-hover>tbody>tr>td.active:hover,.ptx-runestone-container .table-hover>tbody>tr>th.active:hover,.runestone-sphinx .table-hover>tbody>tr.active:hover>td,.runestone-sphinx .table-hover>tbody>tr.active:hover>th,.runestone-sphinx .table-hover>tbody>tr:hover>.active,.runestone-sphinx .table-hover>tbody>tr>td.active:hover,.runestone-sphinx .table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.ptx-runestone-container .table>tbody>tr.success>td,.ptx-runestone-container .table>tbody>tr.success>th,.ptx-runestone-container .table>tbody>tr>td.success,.ptx-runestone-container .table>tbody>tr>th.success,.ptx-runestone-container .table>tfoot>tr.success>td,.ptx-runestone-container .table>tfoot>tr.success>th,.ptx-runestone-container .table>tfoot>tr>td.success,.ptx-runestone-container .table>tfoot>tr>th.success,.ptx-runestone-container .table>thead>tr.success>td,.ptx-runestone-container .table>thead>tr.success>th,.ptx-runestone-container .table>thead>tr>td.success,.ptx-runestone-container .table>thead>tr>th.success,.runestone-sphinx .table>tbody>tr.success>td,.runestone-sphinx .table>tbody>tr.success>th,.runestone-sphinx .table>tbody>tr>td.success,.runestone-sphinx .table>tbody>tr>th.success,.runestone-sphinx .table>tfoot>tr.success>td,.runestone-sphinx .table>tfoot>tr.success>th,.runestone-sphinx .table>tfoot>tr>td.success,.runestone-sphinx .table>tfoot>tr>th.success,.runestone-sphinx .table>thead>tr.success>td,.runestone-sphinx .table>thead>tr.success>th,.runestone-sphinx .table>thead>tr>td.success,.runestone-sphinx .table>thead>tr>th.success{background-color:#dff0d8}.ptx-runestone-container .table-hover>tbody>tr.success:hover>td,.ptx-runestone-container .table-hover>tbody>tr.success:hover>th,.ptx-runestone-container .table-hover>tbody>tr:hover>.success,.ptx-runestone-container .table-hover>tbody>tr>td.success:hover,.ptx-runestone-container .table-hover>tbody>tr>th.success:hover,.runestone-sphinx .table-hover>tbody>tr.success:hover>td,.runestone-sphinx .table-hover>tbody>tr.success:hover>th,.runestone-sphinx .table-hover>tbody>tr:hover>.success,.runestone-sphinx .table-hover>tbody>tr>td.success:hover,.runestone-sphinx .table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.ptx-runestone-container .table>tbody>tr.info>td,.ptx-runestone-container .table>tbody>tr.info>th,.ptx-runestone-container .table>tbody>tr>td.info,.ptx-runestone-container .table>tbody>tr>th.info,.ptx-runestone-container .table>tfoot>tr.info>td,.ptx-runestone-container .table>tfoot>tr.info>th,.ptx-runestone-container .table>tfoot>tr>td.info,.ptx-runestone-container .table>tfoot>tr>th.info,.ptx-runestone-container .table>thead>tr.info>td,.ptx-runestone-container .table>thead>tr.info>th,.ptx-runestone-container .table>thead>tr>td.info,.ptx-runestone-container .table>thead>tr>th.info,.runestone-sphinx .table>tbody>tr.info>td,.runestone-sphinx .table>tbody>tr.info>th,.runestone-sphinx .table>tbody>tr>td.info,.runestone-sphinx .table>tbody>tr>th.info,.runestone-sphinx .table>tfoot>tr.info>td,.runestone-sphinx .table>tfoot>tr.info>th,.runestone-sphinx .table>tfoot>tr>td.info,.runestone-sphinx .table>tfoot>tr>th.info,.runestone-sphinx .table>thead>tr.info>td,.runestone-sphinx .table>thead>tr.info>th,.runestone-sphinx .table>thead>tr>td.info,.runestone-sphinx .table>thead>tr>th.info{background-color:#d9edf7}.ptx-runestone-container .table-hover>tbody>tr.info:hover>td,.ptx-runestone-container .table-hover>tbody>tr.info:hover>th,.ptx-runestone-container .table-hover>tbody>tr:hover>.info,.ptx-runestone-container .table-hover>tbody>tr>td.info:hover,.ptx-runestone-container .table-hover>tbody>tr>th.info:hover,.runestone-sphinx .table-hover>tbody>tr.info:hover>td,.runestone-sphinx .table-hover>tbody>tr.info:hover>th,.runestone-sphinx .table-hover>tbody>tr:hover>.info,.runestone-sphinx .table-hover>tbody>tr>td.info:hover,.runestone-sphinx .table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.ptx-runestone-container .table>tbody>tr.warning>td,.ptx-runestone-container .table>tbody>tr.warning>th,.ptx-runestone-container .table>tbody>tr>td.warning,.ptx-runestone-container .table>tbody>tr>th.warning,.ptx-runestone-container .table>tfoot>tr.warning>td,.ptx-runestone-container .table>tfoot>tr.warning>th,.ptx-runestone-container .table>tfoot>tr>td.warning,.ptx-runestone-container .table>tfoot>tr>th.warning,.ptx-runestone-container .table>thead>tr.warning>td,.ptx-runestone-container .table>thead>tr.warning>th,.ptx-runestone-container .table>thead>tr>td.warning,.ptx-runestone-container .table>thead>tr>th.warning,.runestone-sphinx .table>tbody>tr.warning>td,.runestone-sphinx .table>tbody>tr.warning>th,.runestone-sphinx .table>tbody>tr>td.warning,.runestone-sphinx .table>tbody>tr>th.warning,.runestone-sphinx .table>tfoot>tr.warning>td,.runestone-sphinx .table>tfoot>tr.warning>th,.runestone-sphinx .table>tfoot>tr>td.warning,.runestone-sphinx .table>tfoot>tr>th.warning,.runestone-sphinx .table>thead>tr.warning>td,.runestone-sphinx .table>thead>tr.warning>th,.runestone-sphinx .table>thead>tr>td.warning,.runestone-sphinx .table>thead>tr>th.warning{background-color:#fcf8e3}.ptx-runestone-container .table-hover>tbody>tr.warning:hover>td,.ptx-runestone-container .table-hover>tbody>tr.warning:hover>th,.ptx-runestone-container .table-hover>tbody>tr:hover>.warning,.ptx-runestone-container .table-hover>tbody>tr>td.warning:hover,.ptx-runestone-container .table-hover>tbody>tr>th.warning:hover,.runestone-sphinx .table-hover>tbody>tr.warning:hover>td,.runestone-sphinx .table-hover>tbody>tr.warning:hover>th,.runestone-sphinx .table-hover>tbody>tr:hover>.warning,.runestone-sphinx .table-hover>tbody>tr>td.warning:hover,.runestone-sphinx .table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.ptx-runestone-container .table>tbody>tr.danger>td,.ptx-runestone-container .table>tbody>tr.danger>th,.ptx-runestone-container .table>tbody>tr>td.danger,.ptx-runestone-container .table>tbody>tr>th.danger,.ptx-runestone-container .table>tfoot>tr.danger>td,.ptx-runestone-container .table>tfoot>tr.danger>th,.ptx-runestone-container .table>tfoot>tr>td.danger,.ptx-runestone-container .table>tfoot>tr>th.danger,.ptx-runestone-container .table>thead>tr.danger>td,.ptx-runestone-container .table>thead>tr.danger>th,.ptx-runestone-container .table>thead>tr>td.danger,.ptx-runestone-container .table>thead>tr>th.danger,.runestone-sphinx .table>tbody>tr.danger>td,.runestone-sphinx .table>tbody>tr.danger>th,.runestone-sphinx .table>tbody>tr>td.danger,.runestone-sphinx .table>tbody>tr>th.danger,.runestone-sphinx .table>tfoot>tr.danger>td,.runestone-sphinx .table>tfoot>tr.danger>th,.runestone-sphinx .table>tfoot>tr>td.danger,.runestone-sphinx .table>tfoot>tr>th.danger,.runestone-sphinx .table>thead>tr.danger>td,.runestone-sphinx .table>thead>tr.danger>th,.runestone-sphinx .table>thead>tr>td.danger,.runestone-sphinx .table>thead>tr>th.danger{background-color:#f2dede}.ptx-runestone-container .table-hover>tbody>tr.danger:hover>td,.ptx-runestone-container .table-hover>tbody>tr.danger:hover>th,.ptx-runestone-container .table-hover>tbody>tr:hover>.danger,.ptx-runestone-container .table-hover>tbody>tr>td.danger:hover,.ptx-runestone-container .table-hover>tbody>tr>th.danger:hover,.runestone-sphinx .table-hover>tbody>tr.danger:hover>td,.runestone-sphinx .table-hover>tbody>tr.danger:hover>th,.runestone-sphinx .table-hover>tbody>tr:hover>.danger,.runestone-sphinx .table-hover>tbody>tr>td.danger:hover,.runestone-sphinx .table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.ptx-runestone-container .table-responsive,.runestone-sphinx .table-responsive{min-height:.01%;overflow-x:auto}@media screen and (max-width:767px){.ptx-runestone-container .table-responsive,.runestone-sphinx .table-responsive{-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd;margin-bottom:15px;overflow-y:hidden;width:100%}.ptx-runestone-container .table-responsive>.table,.runestone-sphinx .table-responsive>.table{margin-bottom:0}.ptx-runestone-container .table-responsive>.table>tbody>tr>td,.ptx-runestone-container .table-responsive>.table>tbody>tr>th,.ptx-runestone-container .table-responsive>.table>tfoot>tr>td,.ptx-runestone-container .table-responsive>.table>tfoot>tr>th,.ptx-runestone-container .table-responsive>.table>thead>tr>td,.ptx-runestone-container .table-responsive>.table>thead>tr>th,.runestone-sphinx .table-responsive>.table>tbody>tr>td,.runestone-sphinx .table-responsive>.table>tbody>tr>th,.runestone-sphinx .table-responsive>.table>tfoot>tr>td,.runestone-sphinx .table-responsive>.table>tfoot>tr>th,.runestone-sphinx .table-responsive>.table>thead>tr>td,.runestone-sphinx .table-responsive>.table>thead>tr>th{white-space:nowrap}.ptx-runestone-container .table-responsive>.table-bordered,.runestone-sphinx .table-responsive>.table-bordered{border:0}.ptx-runestone-container .table-responsive>.table-bordered>tbody>tr>td:first-child,.ptx-runestone-container .table-responsive>.table-bordered>tbody>tr>th:first-child,.ptx-runestone-container .table-responsive>.table-bordered>tfoot>tr>td:first-child,.ptx-runestone-container .table-responsive>.table-bordered>tfoot>tr>th:first-child,.ptx-runestone-container .table-responsive>.table-bordered>thead>tr>td:first-child,.ptx-runestone-container .table-responsive>.table-bordered>thead>tr>th:first-child,.runestone-sphinx .table-responsive>.table-bordered>tbody>tr>td:first-child,.runestone-sphinx .table-responsive>.table-bordered>tbody>tr>th:first-child,.runestone-sphinx .table-responsive>.table-bordered>tfoot>tr>td:first-child,.runestone-sphinx .table-responsive>.table-bordered>tfoot>tr>th:first-child,.runestone-sphinx .table-responsive>.table-bordered>thead>tr>td:first-child,.runestone-sphinx .table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.ptx-runestone-container .table-responsive>.table-bordered>tbody>tr>td:last-child,.ptx-runestone-container .table-responsive>.table-bordered>tbody>tr>th:last-child,.ptx-runestone-container .table-responsive>.table-bordered>tfoot>tr>td:last-child,.ptx-runestone-container .table-responsive>.table-bordered>tfoot>tr>th:last-child,.ptx-runestone-container .table-responsive>.table-bordered>thead>tr>td:last-child,.ptx-runestone-container .table-responsive>.table-bordered>thead>tr>th:last-child,.runestone-sphinx .table-responsive>.table-bordered>tbody>tr>td:last-child,.runestone-sphinx .table-responsive>.table-bordered>tbody>tr>th:last-child,.runestone-sphinx .table-responsive>.table-bordered>tfoot>tr>td:last-child,.runestone-sphinx .table-responsive>.table-bordered>tfoot>tr>th:last-child,.runestone-sphinx .table-responsive>.table-bordered>thead>tr>td:last-child,.runestone-sphinx .table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.ptx-runestone-container .table-responsive>.table-bordered>tbody>tr:last-child>td,.ptx-runestone-container .table-responsive>.table-bordered>tbody>tr:last-child>th,.ptx-runestone-container .table-responsive>.table-bordered>tfoot>tr:last-child>td,.ptx-runestone-container .table-responsive>.table-bordered>tfoot>tr:last-child>th,.runestone-sphinx .table-responsive>.table-bordered>tbody>tr:last-child>td,.runestone-sphinx .table-responsive>.table-bordered>tbody>tr:last-child>th,.runestone-sphinx .table-responsive>.table-bordered>tfoot>tr:last-child>td,.runestone-sphinx .table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}.ptx-runestone-container fieldset,.runestone-sphinx fieldset{border:0;margin:0;min-width:0;padding:0}.ptx-runestone-container legend,.runestone-sphinx legend{border:0;border-bottom:1px solid #e5e5e5;color:#333;display:block;font-size:21px;line-height:inherit;margin-bottom:20px;padding:0;width:100%}.ptx-runestone-container label,.runestone-sphinx label{display:inline-block;font-weight:700;margin-bottom:5px;max-width:100%}.ptx-runestone-container input[type=search],.runestone-sphinx input[type=search]{-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.ptx-runestone-container input[type=checkbox],.ptx-runestone-container input[type=radio],.runestone-sphinx input[type=checkbox],.runestone-sphinx input[type=radio]{line-height:normal;margin:4px 0 0;margin-top:1px\9}.ptx-runestone-container fieldset[disabled] input[type=checkbox],.ptx-runestone-container fieldset[disabled] input[type=radio],.ptx-runestone-container input[type=checkbox].disabled,.ptx-runestone-container input[type=checkbox][disabled],.ptx-runestone-container input[type=radio].disabled,.ptx-runestone-container input[type=radio][disabled],.runestone-sphinx fieldset[disabled] input[type=checkbox],.runestone-sphinx fieldset[disabled] input[type=radio],.runestone-sphinx input[type=checkbox].disabled,.runestone-sphinx input[type=checkbox][disabled],.runestone-sphinx input[type=radio].disabled,.runestone-sphinx input[type=radio][disabled]{cursor:not-allowed}.ptx-runestone-container input[type=file],.runestone-sphinx input[type=file]{display:block}.ptx-runestone-container input[type=range],.runestone-sphinx input[type=range]{display:block;width:100%}.ptx-runestone-container select[multiple],.ptx-runestone-container select[size],.runestone-sphinx select[multiple],.runestone-sphinx select[size]{height:auto}.ptx-runestone-container input[type=checkbox]:focus,.ptx-runestone-container input[type=file]:focus,.ptx-runestone-container input[type=radio]:focus,.runestone-sphinx input[type=checkbox]:focus,.runestone-sphinx input[type=file]:focus,.runestone-sphinx input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ptx-runestone-container output,.runestone-sphinx output{color:#555;display:block;font-size:14px;line-height:1.42857143;padding-top:7px}.ptx-runestone-container .form-control,.runestone-sphinx .form-control{background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);color:#555;display:block;font-size:14px;height:34px;line-height:1.42857143;padding:6px 12px;-webkit-transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;-o-transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;width:100%}.ptx-runestone-container .form-control:focus,.runestone-sphinx .form-control:focus{border-color:#66afe9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);outline:0}.ptx-runestone-container .form-control::-moz-placeholder,.runestone-sphinx .form-control::-moz-placeholder{color:#999;opacity:1}.ptx-runestone-container .form-control:-ms-input-placeholder,.runestone-sphinx .form-control:-ms-input-placeholder{color:#999}.ptx-runestone-container .form-control::-webkit-input-placeholder,.runestone-sphinx .form-control::-webkit-input-placeholder{color:#999}.ptx-runestone-container .form-control::-ms-expand,.runestone-sphinx .form-control::-ms-expand{background-color:transparent;border:0}.ptx-runestone-container .form-control[disabled],.ptx-runestone-container .form-control[readonly],.ptx-runestone-container fieldset[disabled] .form-control,.runestone-sphinx .form-control[disabled],.runestone-sphinx .form-control[readonly],.runestone-sphinx fieldset[disabled] .form-control{background-color:#eee;opacity:1}.ptx-runestone-container .form-control[disabled],.ptx-runestone-container fieldset[disabled] .form-control,.runestone-sphinx .form-control[disabled],.runestone-sphinx fieldset[disabled] .form-control{cursor:not-allowed}.ptx-runestone-container textarea.form-control,.runestone-sphinx textarea.form-control{height:auto}@media screen and (-webkit-min-device-pixel-ratio:0){.ptx-runestone-container input[type=date].form-control,.ptx-runestone-container input[type=datetime-local].form-control,.ptx-runestone-container input[type=month].form-control,.ptx-runestone-container input[type=time].form-control,.runestone-sphinx input[type=date].form-control,.runestone-sphinx input[type=datetime-local].form-control,.runestone-sphinx input[type=month].form-control,.runestone-sphinx input[type=time].form-control{line-height:34px}.ptx-runestone-container .input-group-sm input[type=date],.ptx-runestone-container .input-group-sm input[type=datetime-local],.ptx-runestone-container .input-group-sm input[type=month],.ptx-runestone-container .input-group-sm input[type=time],.ptx-runestone-container input[type=date].input-sm,.ptx-runestone-container input[type=datetime-local].input-sm,.ptx-runestone-container input[type=month].input-sm,.ptx-runestone-container input[type=time].input-sm,.runestone-sphinx .input-group-sm input[type=date],.runestone-sphinx .input-group-sm input[type=datetime-local],.runestone-sphinx .input-group-sm input[type=month],.runestone-sphinx .input-group-sm input[type=time],.runestone-sphinx input[type=date].input-sm,.runestone-sphinx input[type=datetime-local].input-sm,.runestone-sphinx input[type=month].input-sm,.runestone-sphinx input[type=time].input-sm{line-height:30px}.ptx-runestone-container .input-group-lg input[type=date],.ptx-runestone-container .input-group-lg input[type=datetime-local],.ptx-runestone-container .input-group-lg input[type=month],.ptx-runestone-container .input-group-lg input[type=time],.ptx-runestone-container input[type=date].input-lg,.ptx-runestone-container input[type=datetime-local].input-lg,.ptx-runestone-container input[type=month].input-lg,.ptx-runestone-container input[type=time].input-lg,.runestone-sphinx .input-group-lg input[type=date],.runestone-sphinx .input-group-lg input[type=datetime-local],.runestone-sphinx .input-group-lg input[type=month],.runestone-sphinx .input-group-lg input[type=time],.runestone-sphinx input[type=date].input-lg,.runestone-sphinx input[type=datetime-local].input-lg,.runestone-sphinx input[type=month].input-lg,.runestone-sphinx input[type=time].input-lg{line-height:46px}}.ptx-runestone-container .form-group,.runestone-sphinx .form-group{margin-bottom:15px}.ptx-runestone-container .checkbox,.ptx-runestone-container .radio,.runestone-sphinx .checkbox,.runestone-sphinx .radio{display:block;margin-bottom:10px;margin-top:10px;position:relative}.ptx-runestone-container .checkbox.disabled label,.ptx-runestone-container .radio.disabled label,.ptx-runestone-container fieldset[disabled] .checkbox label,.ptx-runestone-container fieldset[disabled] .radio label,.runestone-sphinx .checkbox.disabled label,.runestone-sphinx .radio.disabled label,.runestone-sphinx fieldset[disabled] .checkbox label,.runestone-sphinx fieldset[disabled] .radio label{cursor:not-allowed}.ptx-runestone-container .checkbox label,.ptx-runestone-container .radio label,.runestone-sphinx .checkbox label,.runestone-sphinx .radio label{cursor:pointer;font-weight:400;margin-bottom:0;min-height:20px;padding-left:20px}.ptx-runestone-container .checkbox input[type=checkbox],.ptx-runestone-container .checkbox-inline input[type=checkbox],.ptx-runestone-container .radio input[type=radio],.ptx-runestone-container .radio-inline input[type=radio],.runestone-sphinx .checkbox input[type=checkbox],.runestone-sphinx .checkbox-inline input[type=checkbox],.runestone-sphinx .radio input[type=radio],.runestone-sphinx .radio-inline input[type=radio]{margin-left:-20px;margin-top:4px\9;position:absolute}.ptx-runestone-container .checkbox+.checkbox,.ptx-runestone-container .radio+.radio,.runestone-sphinx .checkbox+.checkbox,.runestone-sphinx .radio+.radio{margin-top:-5px}.ptx-runestone-container .checkbox-inline,.ptx-runestone-container .radio-inline,.runestone-sphinx .checkbox-inline,.runestone-sphinx .radio-inline{cursor:pointer;display:inline-block;font-weight:400;margin-bottom:0;padding-left:20px;position:relative;vertical-align:middle}.ptx-runestone-container .checkbox-inline.disabled,.ptx-runestone-container .radio-inline.disabled,.ptx-runestone-container fieldset[disabled] .checkbox-inline,.ptx-runestone-container fieldset[disabled] .radio-inline,.runestone-sphinx .checkbox-inline.disabled,.runestone-sphinx .radio-inline.disabled,.runestone-sphinx fieldset[disabled] .checkbox-inline,.runestone-sphinx fieldset[disabled] .radio-inline{cursor:not-allowed}.ptx-runestone-container .checkbox-inline+.checkbox-inline,.ptx-runestone-container .radio-inline+.radio-inline,.runestone-sphinx .checkbox-inline+.checkbox-inline,.runestone-sphinx .radio-inline+.radio-inline{margin-left:10px;margin-top:0}.ptx-runestone-container .form-control-static,.runestone-sphinx .form-control-static{margin-bottom:0;min-height:34px;padding-bottom:7px;padding-top:7px}.ptx-runestone-container .form-control-static.input-lg,.ptx-runestone-container .form-control-static.input-sm,.runestone-sphinx .form-control-static.input-lg,.runestone-sphinx .form-control-static.input-sm{padding-left:0;padding-right:0}.ptx-runestone-container .input-sm,.runestone-sphinx .input-sm{border-radius:3px;font-size:12px;height:30px;line-height:1.5;padding:5px 10px}.ptx-runestone-container select.input-sm,.runestone-sphinx select.input-sm{height:30px;line-height:30px}.ptx-runestone-container select[multiple].input-sm,.ptx-runestone-container textarea.input-sm,.runestone-sphinx select[multiple].input-sm,.runestone-sphinx textarea.input-sm{height:auto}.ptx-runestone-container .form-group-sm .form-control,.runestone-sphinx .form-group-sm .form-control{border-radius:3px;font-size:12px;height:30px;line-height:1.5;padding:5px 10px}.ptx-runestone-container .form-group-sm select.form-control,.runestone-sphinx .form-group-sm select.form-control{height:30px;line-height:30px}.ptx-runestone-container .form-group-sm select[multiple].form-control,.ptx-runestone-container .form-group-sm textarea.form-control,.runestone-sphinx .form-group-sm select[multiple].form-control,.runestone-sphinx .form-group-sm textarea.form-control{height:auto}.ptx-runestone-container .form-group-sm .form-control-static,.runestone-sphinx .form-group-sm .form-control-static{font-size:12px;height:30px;line-height:1.5;min-height:32px;padding:6px 10px}.ptx-runestone-container .input-lg,.runestone-sphinx .input-lg{border-radius:6px;font-size:18px;height:46px;line-height:1.3333333;padding:10px 16px}.ptx-runestone-container select.input-lg,.runestone-sphinx select.input-lg{height:46px;line-height:46px}.ptx-runestone-container select[multiple].input-lg,.ptx-runestone-container textarea.input-lg,.runestone-sphinx select[multiple].input-lg,.runestone-sphinx textarea.input-lg{height:auto}.ptx-runestone-container .form-group-lg .form-control,.runestone-sphinx .form-group-lg .form-control{border-radius:6px;font-size:18px;height:46px;line-height:1.3333333;padding:10px 16px}.ptx-runestone-container .form-group-lg select.form-control,.runestone-sphinx .form-group-lg select.form-control{height:46px;line-height:46px}.ptx-runestone-container .form-group-lg select[multiple].form-control,.ptx-runestone-container .form-group-lg textarea.form-control,.runestone-sphinx .form-group-lg select[multiple].form-control,.runestone-sphinx .form-group-lg textarea.form-control{height:auto}.ptx-runestone-container .form-group-lg .form-control-static,.runestone-sphinx .form-group-lg .form-control-static{font-size:18px;height:46px;line-height:1.3333333;min-height:38px;padding:11px 16px}.ptx-runestone-container .has-feedback,.runestone-sphinx .has-feedback{position:relative}.ptx-runestone-container .has-feedback .form-control,.runestone-sphinx .has-feedback .form-control{padding-right:42.5px}.ptx-runestone-container .form-control-feedback,.runestone-sphinx .form-control-feedback{display:block;height:34px;line-height:34px;pointer-events:none;position:absolute;right:0;text-align:center;top:0;width:34px;z-index:2}.ptx-runestone-container .form-group-lg .form-control+.form-control-feedback,.ptx-runestone-container .input-group-lg+.form-control-feedback,.ptx-runestone-container .input-lg+.form-control-feedback,.runestone-sphinx .form-group-lg .form-control+.form-control-feedback,.runestone-sphinx .input-group-lg+.form-control-feedback,.runestone-sphinx .input-lg+.form-control-feedback{height:46px;line-height:46px;width:46px}.ptx-runestone-container .form-group-sm .form-control+.form-control-feedback,.ptx-runestone-container .input-group-sm+.form-control-feedback,.ptx-runestone-container .input-sm+.form-control-feedback,.runestone-sphinx .form-group-sm .form-control+.form-control-feedback,.runestone-sphinx .input-group-sm+.form-control-feedback,.runestone-sphinx .input-sm+.form-control-feedback{height:30px;line-height:30px;width:30px}.ptx-runestone-container .has-success .checkbox,.ptx-runestone-container .has-success .checkbox-inline,.ptx-runestone-container .has-success .control-label,.ptx-runestone-container .has-success .help-block,.ptx-runestone-container .has-success .radio,.ptx-runestone-container .has-success .radio-inline,.ptx-runestone-container .has-success.checkbox label,.ptx-runestone-container .has-success.checkbox-inline label,.ptx-runestone-container .has-success.radio label,.ptx-runestone-container .has-success.radio-inline label,.runestone-sphinx .has-success .checkbox,.runestone-sphinx .has-success .checkbox-inline,.runestone-sphinx .has-success .control-label,.runestone-sphinx .has-success .help-block,.runestone-sphinx .has-success .radio,.runestone-sphinx .has-success .radio-inline,.runestone-sphinx .has-success.checkbox label,.runestone-sphinx .has-success.checkbox-inline label,.runestone-sphinx .has-success.radio label,.runestone-sphinx .has-success.radio-inline label{color:#3c763d}.ptx-runestone-container .has-success .form-control,.runestone-sphinx .has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.ptx-runestone-container .has-success .form-control:focus,.runestone-sphinx .has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.ptx-runestone-container .has-success .input-group-addon,.runestone-sphinx .has-success .input-group-addon{background-color:#dff0d8;border-color:#3c763d;color:#3c763d}.ptx-runestone-container .has-success .form-control-feedback,.runestone-sphinx .has-success .form-control-feedback{color:#3c763d}.ptx-runestone-container .has-warning .checkbox,.ptx-runestone-container .has-warning .checkbox-inline,.ptx-runestone-container .has-warning .control-label,.ptx-runestone-container .has-warning .help-block,.ptx-runestone-container .has-warning .radio,.ptx-runestone-container .has-warning .radio-inline,.ptx-runestone-container .has-warning.checkbox label,.ptx-runestone-container .has-warning.checkbox-inline label,.ptx-runestone-container .has-warning.radio label,.ptx-runestone-container .has-warning.radio-inline label,.runestone-sphinx .has-warning .checkbox,.runestone-sphinx .has-warning .checkbox-inline,.runestone-sphinx .has-warning .control-label,.runestone-sphinx .has-warning .help-block,.runestone-sphinx .has-warning .radio,.runestone-sphinx .has-warning .radio-inline,.runestone-sphinx .has-warning.checkbox label,.runestone-sphinx .has-warning.checkbox-inline label,.runestone-sphinx .has-warning.radio label,.runestone-sphinx .has-warning.radio-inline label{color:#8a6d3b}.ptx-runestone-container .has-warning .form-control,.runestone-sphinx .has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.ptx-runestone-container .has-warning .form-control:focus,.runestone-sphinx .has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.ptx-runestone-container .has-warning .input-group-addon,.runestone-sphinx .has-warning .input-group-addon{background-color:#fcf8e3;border-color:#8a6d3b;color:#8a6d3b}.ptx-runestone-container .has-warning .form-control-feedback,.runestone-sphinx .has-warning .form-control-feedback{color:#8a6d3b}.ptx-runestone-container .has-error .checkbox,.ptx-runestone-container .has-error .checkbox-inline,.ptx-runestone-container .has-error .control-label,.ptx-runestone-container .has-error .help-block,.ptx-runestone-container .has-error .radio,.ptx-runestone-container .has-error .radio-inline,.ptx-runestone-container .has-error.checkbox label,.ptx-runestone-container .has-error.checkbox-inline label,.ptx-runestone-container .has-error.radio label,.ptx-runestone-container .has-error.radio-inline label,.runestone-sphinx .has-error .checkbox,.runestone-sphinx .has-error .checkbox-inline,.runestone-sphinx .has-error .control-label,.runestone-sphinx .has-error .help-block,.runestone-sphinx .has-error .radio,.runestone-sphinx .has-error .radio-inline,.runestone-sphinx .has-error.checkbox label,.runestone-sphinx .has-error.checkbox-inline label,.runestone-sphinx .has-error.radio label,.runestone-sphinx .has-error.radio-inline label{color:#a94442}.ptx-runestone-container .has-error .form-control,.runestone-sphinx .has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.ptx-runestone-container .has-error .form-control:focus,.runestone-sphinx .has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.ptx-runestone-container .has-error .input-group-addon,.runestone-sphinx .has-error .input-group-addon{background-color:#f2dede;border-color:#a94442;color:#a94442}.ptx-runestone-container .has-error .form-control-feedback,.runestone-sphinx .has-error .form-control-feedback{color:#a94442}.ptx-runestone-container .has-feedback label~.form-control-feedback,.runestone-sphinx .has-feedback label~.form-control-feedback{top:25px}.ptx-runestone-container .has-feedback label.sr-only~.form-control-feedback,.runestone-sphinx .has-feedback label.sr-only~.form-control-feedback{top:0}.ptx-runestone-container .help-block,.runestone-sphinx .help-block{color:#737373;display:block;margin-bottom:10px;margin-top:5px}@media (min-width:768px){.ptx-runestone-container .form-inline .form-group,.runestone-sphinx .form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.ptx-runestone-container .form-inline .form-control,.runestone-sphinx .form-inline .form-control{display:inline-block;vertical-align:middle;width:auto}.ptx-runestone-container .form-inline .form-control-static,.runestone-sphinx .form-inline .form-control-static{display:inline-block}.ptx-runestone-container .form-inline .input-group,.runestone-sphinx .form-inline .input-group{display:inline-table;vertical-align:middle}.ptx-runestone-container .form-inline .input-group .form-control,.ptx-runestone-container .form-inline .input-group .input-group-addon,.ptx-runestone-container .form-inline .input-group .input-group-btn,.runestone-sphinx .form-inline .input-group .form-control,.runestone-sphinx .form-inline .input-group .input-group-addon,.runestone-sphinx .form-inline .input-group .input-group-btn{width:auto}.ptx-runestone-container .form-inline .input-group>.form-control,.runestone-sphinx .form-inline .input-group>.form-control{width:100%}.ptx-runestone-container .form-inline .control-label,.runestone-sphinx .form-inline .control-label{margin-bottom:0;vertical-align:middle}.ptx-runestone-container .form-inline .checkbox,.ptx-runestone-container .form-inline .radio,.runestone-sphinx .form-inline .checkbox,.runestone-sphinx .form-inline .radio{display:inline-block;margin-bottom:0;margin-top:0;vertical-align:middle}.ptx-runestone-container .form-inline .checkbox label,.ptx-runestone-container .form-inline .radio label,.runestone-sphinx .form-inline .checkbox label,.runestone-sphinx .form-inline .radio label{padding-left:0}.ptx-runestone-container .form-inline .checkbox input[type=checkbox],.ptx-runestone-container .form-inline .radio input[type=radio],.runestone-sphinx .form-inline .checkbox input[type=checkbox],.runestone-sphinx .form-inline .radio input[type=radio]{margin-left:0;position:relative}.ptx-runestone-container .form-inline .has-feedback .form-control-feedback,.runestone-sphinx .form-inline .has-feedback .form-control-feedback{top:0}}.ptx-runestone-container .form-horizontal .checkbox,.ptx-runestone-container .form-horizontal .checkbox-inline,.ptx-runestone-container .form-horizontal .radio,.ptx-runestone-container .form-horizontal .radio-inline,.runestone-sphinx .form-horizontal .checkbox,.runestone-sphinx .form-horizontal .checkbox-inline,.runestone-sphinx .form-horizontal .radio,.runestone-sphinx .form-horizontal .radio-inline{margin-bottom:0;margin-top:0;padding-top:7px}.ptx-runestone-container .form-horizontal .checkbox,.ptx-runestone-container .form-horizontal .radio,.runestone-sphinx .form-horizontal .checkbox,.runestone-sphinx .form-horizontal .radio{min-height:27px}.ptx-runestone-container .form-horizontal .form-group,.runestone-sphinx .form-horizontal .form-group{margin-left:-15px;margin-right:-15px}@media (min-width:768px){.ptx-runestone-container .form-horizontal .control-label,.runestone-sphinx .form-horizontal .control-label{margin-bottom:0;padding-top:7px;text-align:right}}.ptx-runestone-container .form-horizontal .has-feedback .form-control-feedback,.runestone-sphinx .form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.ptx-runestone-container .form-horizontal .form-group-lg .control-label,.runestone-sphinx .form-horizontal .form-group-lg .control-label{font-size:18px;padding-top:11px}.ptx-runestone-container .form-horizontal .form-group-sm .control-label,.runestone-sphinx .form-horizontal .form-group-sm .control-label{font-size:12px;padding-top:6px}}.ptx-runestone-container .btn,.runestone-sphinx .btn{background-image:none;border:1px solid transparent;border-radius:4px;cursor:pointer;display:inline-block;font-size:14px;font-weight:400;line-height:1.42857143;margin-bottom:0;padding:6px 12px;text-align:center;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.ptx-runestone-container .btn.active.focus,.ptx-runestone-container .btn.active:focus,.ptx-runestone-container .btn.focus,.ptx-runestone-container .btn:active.focus,.ptx-runestone-container .btn:active:focus,.ptx-runestone-container .btn:focus,.runestone-sphinx .btn.active.focus,.runestone-sphinx .btn.active:focus,.runestone-sphinx .btn.focus,.runestone-sphinx .btn:active.focus,.runestone-sphinx .btn:active:focus,.runestone-sphinx .btn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.ptx-runestone-container .btn.focus,.ptx-runestone-container .btn:focus,.ptx-runestone-container .btn:hover,.runestone-sphinx .btn.focus,.runestone-sphinx .btn:focus,.runestone-sphinx .btn:hover{color:#333;text-decoration:none}.ptx-runestone-container .btn.active,.ptx-runestone-container .btn:active,.runestone-sphinx .btn.active,.runestone-sphinx .btn:active{background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125);outline:0}.ptx-runestone-container .btn.disabled,.ptx-runestone-container .btn[disabled],.ptx-runestone-container fieldset[disabled] .btn,.runestone-sphinx .btn.disabled,.runestone-sphinx .btn[disabled],.runestone-sphinx fieldset[disabled] .btn{-webkit-box-shadow:none;box-shadow:none;cursor:not-allowed;filter:alpha(opacity=65);opacity:.65}.ptx-runestone-container a.btn.disabled,.ptx-runestone-container fieldset[disabled] a.btn,.runestone-sphinx a.btn.disabled,.runestone-sphinx fieldset[disabled] a.btn{pointer-events:none}.ptx-runestone-container .btn-default,.runestone-sphinx .btn-default{background-color:#fff;border-color:#ccc;color:#333}.ptx-runestone-container .btn-default.focus,.ptx-runestone-container .btn-default:focus,.runestone-sphinx .btn-default.focus,.runestone-sphinx .btn-default:focus{background-color:#e6e6e6;border-color:#8c8c8c;color:#333}.ptx-runestone-container .btn-default:hover,.runestone-sphinx .btn-default:hover{background-color:#e6e6e6;border-color:#adadad;color:#333}.ptx-runestone-container .btn-default.active,.ptx-runestone-container .btn-default:active,.ptx-runestone-container .open>.dropdown-toggle.btn-default,.runestone-sphinx .btn-default.active,.runestone-sphinx .btn-default:active,.runestone-sphinx .open>.dropdown-toggle.btn-default{background-color:#e6e6e6;background-image:none;border-color:#adadad;color:#333}.ptx-runestone-container .btn-default.active.focus,.ptx-runestone-container .btn-default.active:focus,.ptx-runestone-container .btn-default.active:hover,.ptx-runestone-container .btn-default:active.focus,.ptx-runestone-container .btn-default:active:focus,.ptx-runestone-container .btn-default:active:hover,.ptx-runestone-container .open>.dropdown-toggle.btn-default.focus,.ptx-runestone-container .open>.dropdown-toggle.btn-default:focus,.ptx-runestone-container .open>.dropdown-toggle.btn-default:hover,.runestone-sphinx .btn-default.active.focus,.runestone-sphinx .btn-default.active:focus,.runestone-sphinx .btn-default.active:hover,.runestone-sphinx .btn-default:active.focus,.runestone-sphinx .btn-default:active:focus,.runestone-sphinx .btn-default:active:hover,.runestone-sphinx .open>.dropdown-toggle.btn-default.focus,.runestone-sphinx .open>.dropdown-toggle.btn-default:focus,.runestone-sphinx .open>.dropdown-toggle.btn-default:hover{background-color:#d4d4d4;border-color:#8c8c8c;color:#333}.ptx-runestone-container .btn-default.disabled.focus,.ptx-runestone-container .btn-default.disabled:focus,.ptx-runestone-container .btn-default.disabled:hover,.ptx-runestone-container .btn-default[disabled].focus,.ptx-runestone-container .btn-default[disabled]:focus,.ptx-runestone-container .btn-default[disabled]:hover,.ptx-runestone-container fieldset[disabled] .btn-default.focus,.ptx-runestone-container fieldset[disabled] .btn-default:focus,.ptx-runestone-container fieldset[disabled] .btn-default:hover,.runestone-sphinx .btn-default.disabled.focus,.runestone-sphinx .btn-default.disabled:focus,.runestone-sphinx .btn-default.disabled:hover,.runestone-sphinx .btn-default[disabled].focus,.runestone-sphinx .btn-default[disabled]:focus,.runestone-sphinx .btn-default[disabled]:hover,.runestone-sphinx fieldset[disabled] .btn-default.focus,.runestone-sphinx fieldset[disabled] .btn-default:focus,.runestone-sphinx fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.ptx-runestone-container .btn-default .badge,.runestone-sphinx .btn-default .badge{background-color:#333;color:#fff}.ptx-runestone-container .btn-primary,.runestone-sphinx .btn-primary{background-color:#337ab7;border-color:#2e6da4;color:#fff}.ptx-runestone-container .btn-primary.focus,.ptx-runestone-container .btn-primary:focus,.runestone-sphinx .btn-primary.focus,.runestone-sphinx .btn-primary:focus{background-color:#286090;border-color:#122b40;color:#fff}.ptx-runestone-container .btn-primary:hover,.runestone-sphinx .btn-primary:hover{background-color:#286090;border-color:#204d74;color:#fff}.ptx-runestone-container .btn-primary.active,.ptx-runestone-container .btn-primary:active,.ptx-runestone-container .open>.dropdown-toggle.btn-primary,.runestone-sphinx .btn-primary.active,.runestone-sphinx .btn-primary:active,.runestone-sphinx .open>.dropdown-toggle.btn-primary{background-color:#286090;background-image:none;border-color:#204d74;color:#fff}.ptx-runestone-container .btn-primary.active.focus,.ptx-runestone-container .btn-primary.active:focus,.ptx-runestone-container .btn-primary.active:hover,.ptx-runestone-container .btn-primary:active.focus,.ptx-runestone-container .btn-primary:active:focus,.ptx-runestone-container .btn-primary:active:hover,.ptx-runestone-container .open>.dropdown-toggle.btn-primary.focus,.ptx-runestone-container .open>.dropdown-toggle.btn-primary:focus,.ptx-runestone-container .open>.dropdown-toggle.btn-primary:hover,.runestone-sphinx .btn-primary.active.focus,.runestone-sphinx .btn-primary.active:focus,.runestone-sphinx .btn-primary.active:hover,.runestone-sphinx .btn-primary:active.focus,.runestone-sphinx .btn-primary:active:focus,.runestone-sphinx .btn-primary:active:hover,.runestone-sphinx .open>.dropdown-toggle.btn-primary.focus,.runestone-sphinx .open>.dropdown-toggle.btn-primary:focus,.runestone-sphinx .open>.dropdown-toggle.btn-primary:hover{background-color:#204d74;border-color:#122b40;color:#fff}.ptx-runestone-container .btn-primary.disabled.focus,.ptx-runestone-container .btn-primary.disabled:focus,.ptx-runestone-container .btn-primary.disabled:hover,.ptx-runestone-container .btn-primary[disabled].focus,.ptx-runestone-container .btn-primary[disabled]:focus,.ptx-runestone-container .btn-primary[disabled]:hover,.ptx-runestone-container fieldset[disabled] .btn-primary.focus,.ptx-runestone-container fieldset[disabled] .btn-primary:focus,.ptx-runestone-container fieldset[disabled] .btn-primary:hover,.runestone-sphinx .btn-primary.disabled.focus,.runestone-sphinx .btn-primary.disabled:focus,.runestone-sphinx .btn-primary.disabled:hover,.runestone-sphinx .btn-primary[disabled].focus,.runestone-sphinx .btn-primary[disabled]:focus,.runestone-sphinx .btn-primary[disabled]:hover,.runestone-sphinx fieldset[disabled] .btn-primary.focus,.runestone-sphinx fieldset[disabled] .btn-primary:focus,.runestone-sphinx fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:#2e6da4}.ptx-runestone-container .btn-primary .badge,.runestone-sphinx .btn-primary .badge{background-color:#fff;color:#337ab7}.ptx-runestone-container .btn-success,.runestone-sphinx .btn-success{background-color:#5cb85c;border-color:#4cae4c;color:#fff}.ptx-runestone-container .btn-success.focus,.ptx-runestone-container .btn-success:focus,.runestone-sphinx .btn-success.focus,.runestone-sphinx .btn-success:focus{background-color:#449d44;border-color:#255625;color:#fff}.ptx-runestone-container .btn-success:hover,.runestone-sphinx .btn-success:hover{background-color:#449d44;border-color:#398439;color:#fff}.ptx-runestone-container .btn-success.active,.ptx-runestone-container .btn-success:active,.ptx-runestone-container .open>.dropdown-toggle.btn-success,.runestone-sphinx .btn-success.active,.runestone-sphinx .btn-success:active,.runestone-sphinx .open>.dropdown-toggle.btn-success{background-color:#449d44;background-image:none;border-color:#398439;color:#fff}.ptx-runestone-container .btn-success.active.focus,.ptx-runestone-container .btn-success.active:focus,.ptx-runestone-container .btn-success.active:hover,.ptx-runestone-container .btn-success:active.focus,.ptx-runestone-container .btn-success:active:focus,.ptx-runestone-container .btn-success:active:hover,.ptx-runestone-container .open>.dropdown-toggle.btn-success.focus,.ptx-runestone-container .open>.dropdown-toggle.btn-success:focus,.ptx-runestone-container .open>.dropdown-toggle.btn-success:hover,.runestone-sphinx .btn-success.active.focus,.runestone-sphinx .btn-success.active:focus,.runestone-sphinx .btn-success.active:hover,.runestone-sphinx .btn-success:active.focus,.runestone-sphinx .btn-success:active:focus,.runestone-sphinx .btn-success:active:hover,.runestone-sphinx .open>.dropdown-toggle.btn-success.focus,.runestone-sphinx .open>.dropdown-toggle.btn-success:focus,.runestone-sphinx .open>.dropdown-toggle.btn-success:hover{background-color:#398439;border-color:#255625;color:#fff}.ptx-runestone-container .btn-success.disabled.focus,.ptx-runestone-container .btn-success.disabled:focus,.ptx-runestone-container .btn-success.disabled:hover,.ptx-runestone-container .btn-success[disabled].focus,.ptx-runestone-container .btn-success[disabled]:focus,.ptx-runestone-container .btn-success[disabled]:hover,.ptx-runestone-container fieldset[disabled] .btn-success.focus,.ptx-runestone-container fieldset[disabled] .btn-success:focus,.ptx-runestone-container fieldset[disabled] .btn-success:hover,.runestone-sphinx .btn-success.disabled.focus,.runestone-sphinx .btn-success.disabled:focus,.runestone-sphinx .btn-success.disabled:hover,.runestone-sphinx .btn-success[disabled].focus,.runestone-sphinx .btn-success[disabled]:focus,.runestone-sphinx .btn-success[disabled]:hover,.runestone-sphinx fieldset[disabled] .btn-success.focus,.runestone-sphinx fieldset[disabled] .btn-success:focus,.runestone-sphinx fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.ptx-runestone-container .btn-success .badge,.runestone-sphinx .btn-success .badge{background-color:#fff;color:#5cb85c}.ptx-runestone-container .btn-info,.runestone-sphinx .btn-info{background-color:#5bc0de;border-color:#46b8da;color:#fff}.ptx-runestone-container .btn-info.focus,.ptx-runestone-container .btn-info:focus,.runestone-sphinx .btn-info.focus,.runestone-sphinx .btn-info:focus{background-color:#31b0d5;border-color:#1b6d85;color:#fff}.ptx-runestone-container .btn-info:hover,.runestone-sphinx .btn-info:hover{background-color:#31b0d5;border-color:#269abc;color:#fff}.ptx-runestone-container .btn-info.active,.ptx-runestone-container .btn-info:active,.ptx-runestone-container .open>.dropdown-toggle.btn-info,.runestone-sphinx .btn-info.active,.runestone-sphinx .btn-info:active,.runestone-sphinx .open>.dropdown-toggle.btn-info{background-color:#31b0d5;background-image:none;border-color:#269abc;color:#fff}.ptx-runestone-container .btn-info.active.focus,.ptx-runestone-container .btn-info.active:focus,.ptx-runestone-container .btn-info.active:hover,.ptx-runestone-container .btn-info:active.focus,.ptx-runestone-container .btn-info:active:focus,.ptx-runestone-container .btn-info:active:hover,.ptx-runestone-container .open>.dropdown-toggle.btn-info.focus,.ptx-runestone-container .open>.dropdown-toggle.btn-info:focus,.ptx-runestone-container .open>.dropdown-toggle.btn-info:hover,.runestone-sphinx .btn-info.active.focus,.runestone-sphinx .btn-info.active:focus,.runestone-sphinx .btn-info.active:hover,.runestone-sphinx .btn-info:active.focus,.runestone-sphinx .btn-info:active:focus,.runestone-sphinx .btn-info:active:hover,.runestone-sphinx .open>.dropdown-toggle.btn-info.focus,.runestone-sphinx .open>.dropdown-toggle.btn-info:focus,.runestone-sphinx .open>.dropdown-toggle.btn-info:hover{background-color:#269abc;border-color:#1b6d85;color:#fff}.ptx-runestone-container .btn-info.disabled.focus,.ptx-runestone-container .btn-info.disabled:focus,.ptx-runestone-container .btn-info.disabled:hover,.ptx-runestone-container .btn-info[disabled].focus,.ptx-runestone-container .btn-info[disabled]:focus,.ptx-runestone-container .btn-info[disabled]:hover,.ptx-runestone-container fieldset[disabled] .btn-info.focus,.ptx-runestone-container fieldset[disabled] .btn-info:focus,.ptx-runestone-container fieldset[disabled] .btn-info:hover,.runestone-sphinx .btn-info.disabled.focus,.runestone-sphinx .btn-info.disabled:focus,.runestone-sphinx .btn-info.disabled:hover,.runestone-sphinx .btn-info[disabled].focus,.runestone-sphinx .btn-info[disabled]:focus,.runestone-sphinx .btn-info[disabled]:hover,.runestone-sphinx fieldset[disabled] .btn-info.focus,.runestone-sphinx fieldset[disabled] .btn-info:focus,.runestone-sphinx fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.ptx-runestone-container .btn-info .badge,.runestone-sphinx .btn-info .badge{background-color:#fff;color:#5bc0de}.ptx-runestone-container .btn-warning,.runestone-sphinx .btn-warning{background-color:#f0ad4e;border-color:#eea236;color:#fff}.ptx-runestone-container .btn-warning.focus,.ptx-runestone-container .btn-warning:focus,.runestone-sphinx .btn-warning.focus,.runestone-sphinx .btn-warning:focus{background-color:#ec971f;border-color:#985f0d;color:#fff}.ptx-runestone-container .btn-warning:hover,.runestone-sphinx .btn-warning:hover{background-color:#ec971f;border-color:#d58512;color:#fff}.ptx-runestone-container .btn-warning.active,.ptx-runestone-container .btn-warning:active,.ptx-runestone-container .open>.dropdown-toggle.btn-warning,.runestone-sphinx .btn-warning.active,.runestone-sphinx .btn-warning:active,.runestone-sphinx .open>.dropdown-toggle.btn-warning{background-color:#ec971f;background-image:none;border-color:#d58512;color:#fff}.ptx-runestone-container .btn-warning.active.focus,.ptx-runestone-container .btn-warning.active:focus,.ptx-runestone-container .btn-warning.active:hover,.ptx-runestone-container .btn-warning:active.focus,.ptx-runestone-container .btn-warning:active:focus,.ptx-runestone-container .btn-warning:active:hover,.ptx-runestone-container .open>.dropdown-toggle.btn-warning.focus,.ptx-runestone-container .open>.dropdown-toggle.btn-warning:focus,.ptx-runestone-container .open>.dropdown-toggle.btn-warning:hover,.runestone-sphinx .btn-warning.active.focus,.runestone-sphinx .btn-warning.active:focus,.runestone-sphinx .btn-warning.active:hover,.runestone-sphinx .btn-warning:active.focus,.runestone-sphinx .btn-warning:active:focus,.runestone-sphinx .btn-warning:active:hover,.runestone-sphinx .open>.dropdown-toggle.btn-warning.focus,.runestone-sphinx .open>.dropdown-toggle.btn-warning:focus,.runestone-sphinx .open>.dropdown-toggle.btn-warning:hover{background-color:#d58512;border-color:#985f0d;color:#fff}.ptx-runestone-container .btn-warning.disabled.focus,.ptx-runestone-container .btn-warning.disabled:focus,.ptx-runestone-container .btn-warning.disabled:hover,.ptx-runestone-container .btn-warning[disabled].focus,.ptx-runestone-container .btn-warning[disabled]:focus,.ptx-runestone-container .btn-warning[disabled]:hover,.ptx-runestone-container fieldset[disabled] .btn-warning.focus,.ptx-runestone-container fieldset[disabled] .btn-warning:focus,.ptx-runestone-container fieldset[disabled] .btn-warning:hover,.runestone-sphinx .btn-warning.disabled.focus,.runestone-sphinx .btn-warning.disabled:focus,.runestone-sphinx .btn-warning.disabled:hover,.runestone-sphinx .btn-warning[disabled].focus,.runestone-sphinx .btn-warning[disabled]:focus,.runestone-sphinx .btn-warning[disabled]:hover,.runestone-sphinx fieldset[disabled] .btn-warning.focus,.runestone-sphinx fieldset[disabled] .btn-warning:focus,.runestone-sphinx fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.ptx-runestone-container .btn-warning .badge,.runestone-sphinx .btn-warning .badge{background-color:#fff;color:#f0ad4e}.ptx-runestone-container .btn-danger,.runestone-sphinx .btn-danger{background-color:#d9534f;border-color:#d43f3a;color:#fff}.ptx-runestone-container .btn-danger.focus,.ptx-runestone-container .btn-danger:focus,.runestone-sphinx .btn-danger.focus,.runestone-sphinx .btn-danger:focus{background-color:#c9302c;border-color:#761c19;color:#fff}.ptx-runestone-container .btn-danger:hover,.runestone-sphinx .btn-danger:hover{background-color:#c9302c;border-color:#ac2925;color:#fff}.ptx-runestone-container .btn-danger.active,.ptx-runestone-container .btn-danger:active,.ptx-runestone-container .open>.dropdown-toggle.btn-danger,.runestone-sphinx .btn-danger.active,.runestone-sphinx .btn-danger:active,.runestone-sphinx .open>.dropdown-toggle.btn-danger{background-color:#c9302c;background-image:none;border-color:#ac2925;color:#fff}.ptx-runestone-container .btn-danger.active.focus,.ptx-runestone-container .btn-danger.active:focus,.ptx-runestone-container .btn-danger.active:hover,.ptx-runestone-container .btn-danger:active.focus,.ptx-runestone-container .btn-danger:active:focus,.ptx-runestone-container .btn-danger:active:hover,.ptx-runestone-container .open>.dropdown-toggle.btn-danger.focus,.ptx-runestone-container .open>.dropdown-toggle.btn-danger:focus,.ptx-runestone-container .open>.dropdown-toggle.btn-danger:hover,.runestone-sphinx .btn-danger.active.focus,.runestone-sphinx .btn-danger.active:focus,.runestone-sphinx .btn-danger.active:hover,.runestone-sphinx .btn-danger:active.focus,.runestone-sphinx .btn-danger:active:focus,.runestone-sphinx .btn-danger:active:hover,.runestone-sphinx .open>.dropdown-toggle.btn-danger.focus,.runestone-sphinx .open>.dropdown-toggle.btn-danger:focus,.runestone-sphinx .open>.dropdown-toggle.btn-danger:hover{background-color:#ac2925;border-color:#761c19;color:#fff}.ptx-runestone-container .btn-danger.disabled.focus,.ptx-runestone-container .btn-danger.disabled:focus,.ptx-runestone-container .btn-danger.disabled:hover,.ptx-runestone-container .btn-danger[disabled].focus,.ptx-runestone-container .btn-danger[disabled]:focus,.ptx-runestone-container .btn-danger[disabled]:hover,.ptx-runestone-container fieldset[disabled] .btn-danger.focus,.ptx-runestone-container fieldset[disabled] .btn-danger:focus,.ptx-runestone-container fieldset[disabled] .btn-danger:hover,.runestone-sphinx .btn-danger.disabled.focus,.runestone-sphinx .btn-danger.disabled:focus,.runestone-sphinx .btn-danger.disabled:hover,.runestone-sphinx .btn-danger[disabled].focus,.runestone-sphinx .btn-danger[disabled]:focus,.runestone-sphinx .btn-danger[disabled]:hover,.runestone-sphinx fieldset[disabled] .btn-danger.focus,.runestone-sphinx fieldset[disabled] .btn-danger:focus,.runestone-sphinx fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.ptx-runestone-container .btn-danger .badge,.runestone-sphinx .btn-danger .badge{background-color:#fff;color:#d9534f}.ptx-runestone-container .btn-link,.runestone-sphinx .btn-link{border-radius:0;color:#337ab7;font-weight:400}.ptx-runestone-container .btn-link,.ptx-runestone-container .btn-link.active,.ptx-runestone-container .btn-link:active,.ptx-runestone-container .btn-link[disabled],.ptx-runestone-container fieldset[disabled] .btn-link,.runestone-sphinx .btn-link,.runestone-sphinx .btn-link.active,.runestone-sphinx .btn-link:active,.runestone-sphinx .btn-link[disabled],.runestone-sphinx fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.ptx-runestone-container .btn-link,.ptx-runestone-container .btn-link:active,.ptx-runestone-container .btn-link:focus,.ptx-runestone-container .btn-link:hover,.runestone-sphinx .btn-link,.runestone-sphinx .btn-link:active,.runestone-sphinx .btn-link:focus,.runestone-sphinx .btn-link:hover{border-color:transparent}.ptx-runestone-container .btn-link:focus,.ptx-runestone-container .btn-link:hover,.runestone-sphinx .btn-link:focus,.runestone-sphinx .btn-link:hover{background-color:transparent;color:#23527c;text-decoration:underline}.ptx-runestone-container .btn-link[disabled]:focus,.ptx-runestone-container .btn-link[disabled]:hover,.ptx-runestone-container fieldset[disabled] .btn-link:focus,.ptx-runestone-container fieldset[disabled] .btn-link:hover,.runestone-sphinx .btn-link[disabled]:focus,.runestone-sphinx .btn-link[disabled]:hover,.runestone-sphinx fieldset[disabled] .btn-link:focus,.runestone-sphinx fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.ptx-runestone-container .btn-group-lg>.btn,.ptx-runestone-container .btn-lg,.runestone-sphinx .btn-group-lg>.btn,.runestone-sphinx .btn-lg{border-radius:6px;font-size:18px;line-height:1.3333333;padding:10px 16px}.ptx-runestone-container .btn-group-sm>.btn,.ptx-runestone-container .btn-sm,.runestone-sphinx .btn-group-sm>.btn,.runestone-sphinx .btn-sm{border-radius:3px;font-size:12px;line-height:1.5;padding:5px 10px}.ptx-runestone-container .btn-group-xs>.btn,.ptx-runestone-container .btn-xs,.runestone-sphinx .btn-group-xs>.btn,.runestone-sphinx .btn-xs{border-radius:3px;font-size:12px;line-height:1.5;padding:1px 5px}.ptx-runestone-container .btn-block,.runestone-sphinx .btn-block{display:block;width:100%}.ptx-runestone-container .btn-block+.btn-block,.runestone-sphinx .btn-block+.btn-block{margin-top:5px}.ptx-runestone-container input[type=button].btn-block,.ptx-runestone-container input[type=reset].btn-block,.ptx-runestone-container input[type=submit].btn-block,.runestone-sphinx input[type=button].btn-block,.runestone-sphinx input[type=reset].btn-block,.runestone-sphinx input[type=submit].btn-block{width:100%}.ptx-runestone-container .fade,.runestone-sphinx .fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.ptx-runestone-container .fade.in,.runestone-sphinx .fade.in{opacity:1}.ptx-runestone-container .collapse,.runestone-sphinx .collapse{display:none}.ptx-runestone-container .collapse.in,.runestone-sphinx .collapse.in{display:block}.ptx-runestone-container tr.collapse.in,.runestone-sphinx tr.collapse.in{display:table-row}.ptx-runestone-container tbody.collapse.in,.runestone-sphinx tbody.collapse.in{display:table-row-group}.ptx-runestone-container .collapsing,.runestone-sphinx .collapsing{height:0;overflow:hidden;position:relative;-webkit-transition-duration:.35s;-o-transition-duration:.35s;transition-duration:.35s;-webkit-transition-property:height,visibility;-o-transition-property:height,visibility;transition-property:height,visibility;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease}.ptx-runestone-container .caret,.runestone-sphinx .caret{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px dashed;border-top:4px solid\9;display:inline-block;height:0;margin-left:2px;vertical-align:middle;width:0}.ptx-runestone-container .dropdown,.ptx-runestone-container .dropup,.runestone-sphinx .dropdown,.runestone-sphinx .dropup{position:relative}.ptx-runestone-container .dropdown-toggle:focus,.runestone-sphinx .dropdown-toggle:focus{outline:0}.ptx-runestone-container .dropdown-menu,.runestone-sphinx .dropdown-menu{background-clip:padding-box;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175);display:none;float:left;font-size:14px;left:0;list-style:none;margin:2px 0 0;min-width:160px;padding:5px 0;position:absolute;text-align:left;top:100%;z-index:1000}.ptx-runestone-container .dropdown-menu.pull-right,.runestone-sphinx .dropdown-menu.pull-right{left:auto;right:0}.ptx-runestone-container .dropdown-menu .divider,.runestone-sphinx .dropdown-menu .divider{background-color:#e5e5e5;height:1px;margin:9px 0;overflow:hidden}.ptx-runestone-container .dropdown-menu>li>a,.runestone-sphinx .dropdown-menu>li>a{clear:both;color:#333;display:block;font-weight:400;line-height:1.42857143;padding:3px 20px;white-space:nowrap}.ptx-runestone-container .dropdown-menu>li>a:focus,.ptx-runestone-container .dropdown-menu>li>a:hover,.runestone-sphinx .dropdown-menu>li>a:focus,.runestone-sphinx .dropdown-menu>li>a:hover{background-color:#f5f5f5;color:#262626;text-decoration:none}.ptx-runestone-container .dropdown-menu>.active>a,.ptx-runestone-container .dropdown-menu>.active>a:focus,.ptx-runestone-container .dropdown-menu>.active>a:hover,.runestone-sphinx .dropdown-menu>.active>a,.runestone-sphinx .dropdown-menu>.active>a:focus,.runestone-sphinx .dropdown-menu>.active>a:hover{background-color:#337ab7;color:#fff;outline:0;text-decoration:none}.ptx-runestone-container .dropdown-menu>.disabled>a,.ptx-runestone-container .dropdown-menu>.disabled>a:focus,.ptx-runestone-container .dropdown-menu>.disabled>a:hover,.runestone-sphinx .dropdown-menu>.disabled>a,.runestone-sphinx .dropdown-menu>.disabled>a:focus,.runestone-sphinx .dropdown-menu>.disabled>a:hover{color:#777}.ptx-runestone-container .dropdown-menu>.disabled>a:focus,.ptx-runestone-container .dropdown-menu>.disabled>a:hover,.runestone-sphinx .dropdown-menu>.disabled>a:focus,.runestone-sphinx .dropdown-menu>.disabled>a:hover{background-color:transparent;background-image:none;cursor:not-allowed;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);text-decoration:none}.ptx-runestone-container .open>.dropdown-menu,.runestone-sphinx .open>.dropdown-menu{display:block}.ptx-runestone-container .open>a,.runestone-sphinx .open>a{outline:0}.ptx-runestone-container .dropdown-menu-right,.runestone-sphinx .dropdown-menu-right{left:auto;right:0}.ptx-runestone-container .dropdown-menu-left,.runestone-sphinx .dropdown-menu-left{left:0;right:auto}.ptx-runestone-container .dropdown-header,.runestone-sphinx .dropdown-header{color:#777;display:block;font-size:12px;line-height:1.42857143;padding:3px 20px;white-space:nowrap}.ptx-runestone-container .dropdown-backdrop,.runestone-sphinx .dropdown-backdrop{bottom:0;left:0;position:fixed;right:0;top:0;z-index:990}.ptx-runestone-container .pull-right>.dropdown-menu,.runestone-sphinx .pull-right>.dropdown-menu{left:auto;right:0}.ptx-runestone-container .dropup .caret,.ptx-runestone-container .navbar-fixed-bottom .dropdown .caret,.runestone-sphinx .dropup .caret,.runestone-sphinx .navbar-fixed-bottom .dropdown .caret{border-bottom:4px dashed;border-bottom:4px solid\9;border-top:0;content:""}.ptx-runestone-container .dropup .dropdown-menu,.ptx-runestone-container .navbar-fixed-bottom .dropdown .dropdown-menu,.runestone-sphinx .dropup .dropdown-menu,.runestone-sphinx .navbar-fixed-bottom .dropdown .dropdown-menu{bottom:100%;margin-bottom:2px;top:auto}@media (min-width:768px){.ptx-runestone-container .navbar-right .dropdown-menu,.runestone-sphinx .navbar-right .dropdown-menu{left:auto;right:0}.ptx-runestone-container .navbar-right .dropdown-menu-left,.runestone-sphinx .navbar-right .dropdown-menu-left{left:0;right:auto}}.ptx-runestone-container .btn-group,.ptx-runestone-container .btn-group-vertical,.runestone-sphinx .btn-group,.runestone-sphinx .btn-group-vertical{display:inline-block;position:relative;vertical-align:middle}.ptx-runestone-container .btn-group-vertical>.btn,.ptx-runestone-container .btn-group>.btn,.runestone-sphinx .btn-group-vertical>.btn,.runestone-sphinx .btn-group>.btn{float:left;position:relative}.ptx-runestone-container .btn-group-vertical>.btn.active,.ptx-runestone-container .btn-group-vertical>.btn:active,.ptx-runestone-container .btn-group-vertical>.btn:focus,.ptx-runestone-container .btn-group-vertical>.btn:hover,.ptx-runestone-container .btn-group>.btn.active,.ptx-runestone-container .btn-group>.btn:active,.ptx-runestone-container .btn-group>.btn:focus,.ptx-runestone-container .btn-group>.btn:hover,.runestone-sphinx .btn-group-vertical>.btn.active,.runestone-sphinx .btn-group-vertical>.btn:active,.runestone-sphinx .btn-group-vertical>.btn:focus,.runestone-sphinx .btn-group-vertical>.btn:hover,.runestone-sphinx .btn-group>.btn.active,.runestone-sphinx .btn-group>.btn:active,.runestone-sphinx .btn-group>.btn:focus,.runestone-sphinx .btn-group>.btn:hover{z-index:2}.ptx-runestone-container .btn-group .btn+.btn,.ptx-runestone-container .btn-group .btn+.btn-group,.ptx-runestone-container .btn-group .btn-group+.btn,.ptx-runestone-container .btn-group .btn-group+.btn-group,.runestone-sphinx .btn-group .btn+.btn,.runestone-sphinx .btn-group .btn+.btn-group,.runestone-sphinx .btn-group .btn-group+.btn,.runestone-sphinx .btn-group .btn-group+.btn-group{margin-left:-1px}.ptx-runestone-container .btn-toolbar,.runestone-sphinx .btn-toolbar{margin-left:-5px}.ptx-runestone-container .btn-toolbar .btn,.ptx-runestone-container .btn-toolbar .btn-group,.ptx-runestone-container .btn-toolbar .input-group,.runestone-sphinx .btn-toolbar .btn,.runestone-sphinx .btn-toolbar .btn-group,.runestone-sphinx .btn-toolbar .input-group{float:left}.ptx-runestone-container .btn-toolbar>.btn,.ptx-runestone-container .btn-toolbar>.btn-group,.ptx-runestone-container .btn-toolbar>.input-group,.runestone-sphinx .btn-toolbar>.btn,.runestone-sphinx .btn-toolbar>.btn-group,.runestone-sphinx .btn-toolbar>.input-group{margin-left:5px}.ptx-runestone-container .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle),.runestone-sphinx .btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.ptx-runestone-container .btn-group>.btn:first-child,.runestone-sphinx .btn-group>.btn:first-child{margin-left:0}.ptx-runestone-container .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle),.runestone-sphinx .btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.ptx-runestone-container .btn-group>.btn:last-child:not(:first-child),.ptx-runestone-container .btn-group>.dropdown-toggle:not(:first-child),.runestone-sphinx .btn-group>.btn:last-child:not(:first-child),.runestone-sphinx .btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.ptx-runestone-container .btn-group>.btn-group,.runestone-sphinx .btn-group>.btn-group{float:left}.ptx-runestone-container .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn,.runestone-sphinx .btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.ptx-runestone-container .btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.ptx-runestone-container .btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle,.runestone-sphinx .btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.runestone-sphinx .btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.ptx-runestone-container .btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child,.runestone-sphinx .btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.ptx-runestone-container .btn-group .dropdown-toggle:active,.ptx-runestone-container .btn-group.open .dropdown-toggle,.runestone-sphinx .btn-group .dropdown-toggle:active,.runestone-sphinx .btn-group.open .dropdown-toggle{outline:0}.ptx-runestone-container .btn-group>.btn+.dropdown-toggle,.runestone-sphinx .btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.ptx-runestone-container .btn-group>.btn-lg+.dropdown-toggle,.runestone-sphinx .btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.ptx-runestone-container .btn-group.open .dropdown-toggle,.runestone-sphinx .btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.ptx-runestone-container .btn-group.open .dropdown-toggle.btn-link,.runestone-sphinx .btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.ptx-runestone-container .btn .caret,.runestone-sphinx .btn .caret{margin-left:0}.ptx-runestone-container .btn-lg .caret,.runestone-sphinx .btn-lg .caret{border-width:5px 5px 0}.ptx-runestone-container .dropup .btn-lg .caret,.runestone-sphinx .dropup .btn-lg .caret{border-width:0 5px 5px}.ptx-runestone-container .btn-group-vertical>.btn,.ptx-runestone-container .btn-group-vertical>.btn-group,.ptx-runestone-container .btn-group-vertical>.btn-group>.btn,.runestone-sphinx .btn-group-vertical>.btn,.runestone-sphinx .btn-group-vertical>.btn-group,.runestone-sphinx .btn-group-vertical>.btn-group>.btn{display:block;float:none;max-width:100%;width:100%}.ptx-runestone-container .btn-group-vertical>.btn-group>.btn,.runestone-sphinx .btn-group-vertical>.btn-group>.btn{float:none}.ptx-runestone-container .btn-group-vertical>.btn+.btn,.ptx-runestone-container .btn-group-vertical>.btn+.btn-group,.ptx-runestone-container .btn-group-vertical>.btn-group+.btn,.ptx-runestone-container .btn-group-vertical>.btn-group+.btn-group,.runestone-sphinx .btn-group-vertical>.btn+.btn,.runestone-sphinx .btn-group-vertical>.btn+.btn-group,.runestone-sphinx .btn-group-vertical>.btn-group+.btn,.runestone-sphinx .btn-group-vertical>.btn-group+.btn-group{margin-left:0;margin-top:-1px}.ptx-runestone-container .btn-group-vertical>.btn:not(:first-child):not(:last-child),.runestone-sphinx .btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.ptx-runestone-container .btn-group-vertical>.btn:first-child:not(:last-child),.runestone-sphinx .btn-group-vertical>.btn:first-child:not(:last-child){border-bottom-left-radius:0;border-bottom-right-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}.ptx-runestone-container .btn-group-vertical>.btn:last-child:not(:first-child),.runestone-sphinx .btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-top-left-radius:0;border-top-right-radius:0}.ptx-runestone-container .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn,.runestone-sphinx .btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.ptx-runestone-container .btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.ptx-runestone-container .btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle,.runestone-sphinx .btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.runestone-sphinx .btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-left-radius:0;border-bottom-right-radius:0}.ptx-runestone-container .btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child,.runestone-sphinx .btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.ptx-runestone-container .btn-group-justified,.runestone-sphinx .btn-group-justified{border-collapse:separate;display:table;table-layout:fixed;width:100%}.ptx-runestone-container .btn-group-justified>.btn,.ptx-runestone-container .btn-group-justified>.btn-group,.runestone-sphinx .btn-group-justified>.btn,.runestone-sphinx .btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.ptx-runestone-container .btn-group-justified>.btn-group .btn,.runestone-sphinx .btn-group-justified>.btn-group .btn{width:100%}.ptx-runestone-container .btn-group-justified>.btn-group .dropdown-menu,.runestone-sphinx .btn-group-justified>.btn-group .dropdown-menu{left:auto}.ptx-runestone-container [data-toggle=buttons]>.btn input[type=checkbox],.ptx-runestone-container [data-toggle=buttons]>.btn input[type=radio],.ptx-runestone-container [data-toggle=buttons]>.btn-group>.btn input[type=checkbox],.ptx-runestone-container [data-toggle=buttons]>.btn-group>.btn input[type=radio],.runestone-sphinx [data-toggle=buttons]>.btn input[type=checkbox],.runestone-sphinx [data-toggle=buttons]>.btn input[type=radio],.runestone-sphinx [data-toggle=buttons]>.btn-group>.btn input[type=checkbox],.runestone-sphinx [data-toggle=buttons]>.btn-group>.btn input[type=radio]{clip:rect(0,0,0,0);pointer-events:none;position:absolute}.ptx-runestone-container .input-group,.runestone-sphinx .input-group{border-collapse:separate;display:table;position:relative}.ptx-runestone-container .input-group[class*=col-],.runestone-sphinx .input-group[class*=col-]{float:none;padding-left:0;padding-right:0}.ptx-runestone-container .input-group .form-control,.runestone-sphinx .input-group .form-control{float:left;margin-bottom:0;position:relative;width:100%;z-index:2}.ptx-runestone-container .input-group .form-control:focus,.runestone-sphinx .input-group .form-control:focus{z-index:3}.ptx-runestone-container .input-group-lg>.form-control,.ptx-runestone-container .input-group-lg>.input-group-addon,.ptx-runestone-container .input-group-lg>.input-group-btn>.btn,.runestone-sphinx .input-group-lg>.form-control,.runestone-sphinx .input-group-lg>.input-group-addon,.runestone-sphinx .input-group-lg>.input-group-btn>.btn{border-radius:6px;font-size:18px;height:46px;line-height:1.3333333;padding:10px 16px}.ptx-runestone-container select.input-group-lg>.form-control,.ptx-runestone-container select.input-group-lg>.input-group-addon,.ptx-runestone-container select.input-group-lg>.input-group-btn>.btn,.runestone-sphinx select.input-group-lg>.form-control,.runestone-sphinx select.input-group-lg>.input-group-addon,.runestone-sphinx select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}.ptx-runestone-container select[multiple].input-group-lg>.form-control,.ptx-runestone-container select[multiple].input-group-lg>.input-group-addon,.ptx-runestone-container select[multiple].input-group-lg>.input-group-btn>.btn,.ptx-runestone-container textarea.input-group-lg>.form-control,.ptx-runestone-container textarea.input-group-lg>.input-group-addon,.ptx-runestone-container textarea.input-group-lg>.input-group-btn>.btn,.runestone-sphinx select[multiple].input-group-lg>.form-control,.runestone-sphinx select[multiple].input-group-lg>.input-group-addon,.runestone-sphinx select[multiple].input-group-lg>.input-group-btn>.btn,.runestone-sphinx textarea.input-group-lg>.form-control,.runestone-sphinx textarea.input-group-lg>.input-group-addon,.runestone-sphinx textarea.input-group-lg>.input-group-btn>.btn{height:auto}.ptx-runestone-container .input-group-sm>.form-control,.ptx-runestone-container .input-group-sm>.input-group-addon,.ptx-runestone-container .input-group-sm>.input-group-btn>.btn,.runestone-sphinx .input-group-sm>.form-control,.runestone-sphinx .input-group-sm>.input-group-addon,.runestone-sphinx .input-group-sm>.input-group-btn>.btn{border-radius:3px;font-size:12px;height:30px;line-height:1.5;padding:5px 10px}.ptx-runestone-container select.input-group-sm>.form-control,.ptx-runestone-container select.input-group-sm>.input-group-addon,.ptx-runestone-container select.input-group-sm>.input-group-btn>.btn,.runestone-sphinx select.input-group-sm>.form-control,.runestone-sphinx select.input-group-sm>.input-group-addon,.runestone-sphinx select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}.ptx-runestone-container select[multiple].input-group-sm>.form-control,.ptx-runestone-container select[multiple].input-group-sm>.input-group-addon,.ptx-runestone-container select[multiple].input-group-sm>.input-group-btn>.btn,.ptx-runestone-container textarea.input-group-sm>.form-control,.ptx-runestone-container textarea.input-group-sm>.input-group-addon,.ptx-runestone-container textarea.input-group-sm>.input-group-btn>.btn,.runestone-sphinx select[multiple].input-group-sm>.form-control,.runestone-sphinx select[multiple].input-group-sm>.input-group-addon,.runestone-sphinx select[multiple].input-group-sm>.input-group-btn>.btn,.runestone-sphinx textarea.input-group-sm>.form-control,.runestone-sphinx textarea.input-group-sm>.input-group-addon,.runestone-sphinx textarea.input-group-sm>.input-group-btn>.btn{height:auto}.ptx-runestone-container .input-group .form-control,.ptx-runestone-container .input-group-addon,.ptx-runestone-container .input-group-btn,.runestone-sphinx .input-group .form-control,.runestone-sphinx .input-group-addon,.runestone-sphinx .input-group-btn{display:table-cell}.ptx-runestone-container .input-group .form-control:not(:first-child):not(:last-child),.ptx-runestone-container .input-group-addon:not(:first-child):not(:last-child),.ptx-runestone-container .input-group-btn:not(:first-child):not(:last-child),.runestone-sphinx .input-group .form-control:not(:first-child):not(:last-child),.runestone-sphinx .input-group-addon:not(:first-child):not(:last-child),.runestone-sphinx .input-group-btn:not(:first-child):not(:last-child){border-radius:0}.ptx-runestone-container .input-group-addon,.ptx-runestone-container .input-group-btn,.runestone-sphinx .input-group-addon,.runestone-sphinx .input-group-btn{vertical-align:middle;white-space:nowrap;width:1%}.ptx-runestone-container .input-group-addon,.runestone-sphinx .input-group-addon{background-color:#eee;border:1px solid #ccc;border-radius:4px;color:#555;font-size:14px;font-weight:400;line-height:1;padding:6px 12px;text-align:center}.ptx-runestone-container .input-group-addon.input-sm,.runestone-sphinx .input-group-addon.input-sm{border-radius:3px;font-size:12px;padding:5px 10px}.ptx-runestone-container .input-group-addon.input-lg,.runestone-sphinx .input-group-addon.input-lg{border-radius:6px;font-size:18px;padding:10px 16px}.ptx-runestone-container .input-group-addon input[type=checkbox],.ptx-runestone-container .input-group-addon input[type=radio],.runestone-sphinx .input-group-addon input[type=checkbox],.runestone-sphinx .input-group-addon input[type=radio]{margin-top:0}.ptx-runestone-container .input-group .form-control:first-child,.ptx-runestone-container .input-group-addon:first-child,.ptx-runestone-container .input-group-btn:first-child>.btn,.ptx-runestone-container .input-group-btn:first-child>.btn-group>.btn,.ptx-runestone-container .input-group-btn:first-child>.dropdown-toggle,.ptx-runestone-container .input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.ptx-runestone-container .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.runestone-sphinx .input-group .form-control:first-child,.runestone-sphinx .input-group-addon:first-child,.runestone-sphinx .input-group-btn:first-child>.btn,.runestone-sphinx .input-group-btn:first-child>.btn-group>.btn,.runestone-sphinx .input-group-btn:first-child>.dropdown-toggle,.runestone-sphinx .input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.runestone-sphinx .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.ptx-runestone-container .input-group-addon:first-child,.runestone-sphinx .input-group-addon:first-child{border-right:0}.ptx-runestone-container .input-group .form-control:last-child,.ptx-runestone-container .input-group-addon:last-child,.ptx-runestone-container .input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.ptx-runestone-container .input-group-btn:first-child>.btn:not(:first-child),.ptx-runestone-container .input-group-btn:last-child>.btn,.ptx-runestone-container .input-group-btn:last-child>.btn-group>.btn,.ptx-runestone-container .input-group-btn:last-child>.dropdown-toggle,.runestone-sphinx .input-group .form-control:last-child,.runestone-sphinx .input-group-addon:last-child,.runestone-sphinx .input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.runestone-sphinx .input-group-btn:first-child>.btn:not(:first-child),.runestone-sphinx .input-group-btn:last-child>.btn,.runestone-sphinx .input-group-btn:last-child>.btn-group>.btn,.runestone-sphinx .input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.ptx-runestone-container .input-group-addon:last-child,.runestone-sphinx .input-group-addon:last-child{border-left:0}.ptx-runestone-container .input-group-btn,.runestone-sphinx .input-group-btn{font-size:0;position:relative;white-space:nowrap}.ptx-runestone-container .input-group-btn>.btn,.runestone-sphinx .input-group-btn>.btn{position:relative}.ptx-runestone-container .input-group-btn>.btn+.btn,.runestone-sphinx .input-group-btn>.btn+.btn{margin-left:-1px}.ptx-runestone-container .input-group-btn>.btn:active,.ptx-runestone-container .input-group-btn>.btn:focus,.ptx-runestone-container .input-group-btn>.btn:hover,.runestone-sphinx .input-group-btn>.btn:active,.runestone-sphinx .input-group-btn>.btn:focus,.runestone-sphinx .input-group-btn>.btn:hover{z-index:2}.ptx-runestone-container .input-group-btn:first-child>.btn,.ptx-runestone-container .input-group-btn:first-child>.btn-group,.runestone-sphinx .input-group-btn:first-child>.btn,.runestone-sphinx .input-group-btn:first-child>.btn-group{margin-right:-1px}.ptx-runestone-container .input-group-btn:last-child>.btn,.ptx-runestone-container .input-group-btn:last-child>.btn-group,.runestone-sphinx .input-group-btn:last-child>.btn,.runestone-sphinx .input-group-btn:last-child>.btn-group{margin-left:-1px;z-index:2}.ptx-runestone-container .nav,.runestone-sphinx .nav{list-style:none;margin-bottom:0;padding-left:0}.ptx-runestone-container .nav>li,.runestone-sphinx .nav>li{display:block;position:relative}.ptx-runestone-container .nav>li>a,.runestone-sphinx .nav>li>a{display:block;padding:10px 15px;position:relative}.ptx-runestone-container .nav>li>a:focus,.ptx-runestone-container .nav>li>a:hover,.runestone-sphinx .nav>li>a:focus,.runestone-sphinx .nav>li>a:hover{background-color:#eee;text-decoration:none}.ptx-runestone-container .nav>li.disabled>a,.runestone-sphinx .nav>li.disabled>a{color:#777}.ptx-runestone-container .nav>li.disabled>a:focus,.ptx-runestone-container .nav>li.disabled>a:hover,.runestone-sphinx .nav>li.disabled>a:focus,.runestone-sphinx .nav>li.disabled>a:hover{background-color:transparent;color:#777;cursor:not-allowed;text-decoration:none}.ptx-runestone-container .nav .open>a,.ptx-runestone-container .nav .open>a:focus,.ptx-runestone-container .nav .open>a:hover,.runestone-sphinx .nav .open>a,.runestone-sphinx .nav .open>a:focus,.runestone-sphinx .nav .open>a:hover{background-color:#eee;border-color:#337ab7}.ptx-runestone-container .nav .nav-divider,.runestone-sphinx .nav .nav-divider{background-color:#e5e5e5;height:1px;margin:9px 0;overflow:hidden}.ptx-runestone-container .nav>li>a>img,.runestone-sphinx .nav>li>a>img{max-width:none}.ptx-runestone-container .nav-tabs,.runestone-sphinx .nav-tabs{border-bottom:1px solid #ddd}.ptx-runestone-container .nav-tabs>li,.runestone-sphinx .nav-tabs>li{float:left;margin-bottom:-1px}.ptx-runestone-container .nav-tabs>li>a,.runestone-sphinx .nav-tabs>li>a{border:1px solid transparent;border-radius:4px 4px 0 0;line-height:1.42857143;margin-right:2px}.ptx-runestone-container .nav-tabs>li>a:hover,.runestone-sphinx .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.ptx-runestone-container .nav-tabs>li.active>a,.ptx-runestone-container .nav-tabs>li.active>a:focus,.ptx-runestone-container .nav-tabs>li.active>a:hover,.runestone-sphinx .nav-tabs>li.active>a,.runestone-sphinx .nav-tabs>li.active>a:focus,.runestone-sphinx .nav-tabs>li.active>a:hover{background-color:#fff;border:1px solid;border-color:#ddd #ddd transparent;color:#555;cursor:default}.ptx-runestone-container .nav-tabs.nav-justified,.runestone-sphinx .nav-tabs.nav-justified{border-bottom:0;width:100%}.ptx-runestone-container .nav-tabs.nav-justified>li,.runestone-sphinx .nav-tabs.nav-justified>li{float:none}.ptx-runestone-container .nav-tabs.nav-justified>li>a,.runestone-sphinx .nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.ptx-runestone-container .nav-tabs.nav-justified>.dropdown .dropdown-menu,.runestone-sphinx .nav-tabs.nav-justified>.dropdown .dropdown-menu{left:auto;top:auto}@media (min-width:768px){.ptx-runestone-container .nav-tabs.nav-justified>li,.runestone-sphinx .nav-tabs.nav-justified>li{display:table-cell;width:1%}.ptx-runestone-container .nav-tabs.nav-justified>li>a,.runestone-sphinx .nav-tabs.nav-justified>li>a{margin-bottom:0}}.ptx-runestone-container .nav-tabs.nav-justified>li>a,.runestone-sphinx .nav-tabs.nav-justified>li>a{border-radius:4px;margin-right:0}.ptx-runestone-container .nav-tabs.nav-justified>.active>a,.ptx-runestone-container .nav-tabs.nav-justified>.active>a:focus,.ptx-runestone-container .nav-tabs.nav-justified>.active>a:hover,.runestone-sphinx .nav-tabs.nav-justified>.active>a,.runestone-sphinx .nav-tabs.nav-justified>.active>a:focus,.runestone-sphinx .nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.ptx-runestone-container .nav-tabs.nav-justified>li>a,.runestone-sphinx .nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.ptx-runestone-container .nav-tabs.nav-justified>.active>a,.ptx-runestone-container .nav-tabs.nav-justified>.active>a:focus,.ptx-runestone-container .nav-tabs.nav-justified>.active>a:hover,.runestone-sphinx .nav-tabs.nav-justified>.active>a,.runestone-sphinx .nav-tabs.nav-justified>.active>a:focus,.runestone-sphinx .nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.ptx-runestone-container .nav-pills>li,.runestone-sphinx .nav-pills>li{float:left}.ptx-runestone-container .nav-pills>li>a,.runestone-sphinx .nav-pills>li>a{border-radius:4px}.ptx-runestone-container .nav-pills>li+li,.runestone-sphinx .nav-pills>li+li{margin-left:2px}.ptx-runestone-container .nav-pills>li.active>a,.ptx-runestone-container .nav-pills>li.active>a:focus,.ptx-runestone-container .nav-pills>li.active>a:hover,.runestone-sphinx .nav-pills>li.active>a,.runestone-sphinx .nav-pills>li.active>a:focus,.runestone-sphinx .nav-pills>li.active>a:hover{background-color:#337ab7;color:#fff}.ptx-runestone-container .nav-stacked>li,.runestone-sphinx .nav-stacked>li{float:none}.ptx-runestone-container .nav-stacked>li+li,.runestone-sphinx .nav-stacked>li+li{margin-left:0;margin-top:2px}.ptx-runestone-container .nav-justified,.runestone-sphinx .nav-justified{width:100%}.ptx-runestone-container .nav-justified>li,.runestone-sphinx .nav-justified>li{float:none}.ptx-runestone-container .nav-justified>li>a,.runestone-sphinx .nav-justified>li>a{margin-bottom:5px;text-align:center}.ptx-runestone-container .nav-justified>.dropdown .dropdown-menu,.runestone-sphinx .nav-justified>.dropdown .dropdown-menu{left:auto;top:auto}@media (min-width:768px){.ptx-runestone-container .nav-justified>li,.runestone-sphinx .nav-justified>li{display:table-cell;width:1%}.ptx-runestone-container .nav-justified>li>a,.runestone-sphinx .nav-justified>li>a{margin-bottom:0}}.ptx-runestone-container .nav-tabs-justified,.runestone-sphinx .nav-tabs-justified{border-bottom:0}.ptx-runestone-container .nav-tabs-justified>li>a,.runestone-sphinx .nav-tabs-justified>li>a{border-radius:4px;margin-right:0}.ptx-runestone-container .nav-tabs-justified>.active>a,.ptx-runestone-container .nav-tabs-justified>.active>a:focus,.ptx-runestone-container .nav-tabs-justified>.active>a:hover,.runestone-sphinx .nav-tabs-justified>.active>a,.runestone-sphinx .nav-tabs-justified>.active>a:focus,.runestone-sphinx .nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.ptx-runestone-container .nav-tabs-justified>li>a,.runestone-sphinx .nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.ptx-runestone-container .nav-tabs-justified>.active>a,.ptx-runestone-container .nav-tabs-justified>.active>a:focus,.ptx-runestone-container .nav-tabs-justified>.active>a:hover,.runestone-sphinx .nav-tabs-justified>.active>a,.runestone-sphinx .nav-tabs-justified>.active>a:focus,.runestone-sphinx .nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.ptx-runestone-container .tab-content>.tab-pane,.runestone-sphinx .tab-content>.tab-pane{display:none}.ptx-runestone-container .tab-content>.active,.runestone-sphinx .tab-content>.active{display:block}.ptx-runestone-container .nav-tabs .dropdown-menu,.runestone-sphinx .nav-tabs .dropdown-menu{border-top-left-radius:0;border-top-right-radius:0;margin-top:-1px}.ptx-runestone-container .navbar,.runestone-sphinx .navbar{border:1px solid transparent;margin-bottom:20px;min-height:50px;position:relative}@media (min-width:768px){.ptx-runestone-container .navbar,.runestone-sphinx .navbar{border-radius:4px}.ptx-runestone-container .navbar-header,.runestone-sphinx .navbar-header{float:left}}.ptx-runestone-container .navbar-collapse,.runestone-sphinx .navbar-collapse{-webkit-overflow-scrolling:touch;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1);overflow-x:visible;padding-left:15px;padding-right:15px}.ptx-runestone-container .navbar-collapse.in,.runestone-sphinx .navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.ptx-runestone-container .navbar-collapse,.runestone-sphinx .navbar-collapse{border-top:0;-webkit-box-shadow:none;box-shadow:none;width:auto}.ptx-runestone-container .navbar-collapse.collapse,.runestone-sphinx .navbar-collapse.collapse{display:block!important;height:auto!important;overflow:visible!important;padding-bottom:0}.ptx-runestone-container .navbar-collapse.in,.runestone-sphinx .navbar-collapse.in{overflow-y:visible}.ptx-runestone-container .navbar-fixed-bottom .navbar-collapse,.ptx-runestone-container .navbar-fixed-top .navbar-collapse,.ptx-runestone-container .navbar-static-top .navbar-collapse,.runestone-sphinx .navbar-fixed-bottom .navbar-collapse,.runestone-sphinx .navbar-fixed-top .navbar-collapse,.runestone-sphinx .navbar-static-top .navbar-collapse{padding-left:0;padding-right:0}}.ptx-runestone-container .navbar-fixed-bottom,.ptx-runestone-container .navbar-fixed-top,.runestone-sphinx .navbar-fixed-bottom,.runestone-sphinx .navbar-fixed-top{left:0;position:fixed;right:0;z-index:1030}.ptx-runestone-container .navbar-fixed-bottom .navbar-collapse,.ptx-runestone-container .navbar-fixed-top .navbar-collapse,.runestone-sphinx .navbar-fixed-bottom .navbar-collapse,.runestone-sphinx .navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.ptx-runestone-container .navbar-fixed-bottom .navbar-collapse,.ptx-runestone-container .navbar-fixed-top .navbar-collapse,.runestone-sphinx .navbar-fixed-bottom .navbar-collapse,.runestone-sphinx .navbar-fixed-top .navbar-collapse{max-height:200px}}@media (min-width:768px){.ptx-runestone-container .navbar-fixed-bottom,.ptx-runestone-container .navbar-fixed-top,.runestone-sphinx .navbar-fixed-bottom,.runestone-sphinx .navbar-fixed-top{border-radius:0}}.ptx-runestone-container .navbar-fixed-top,.runestone-sphinx .navbar-fixed-top{border-width:0 0 1px;top:0}.ptx-runestone-container .navbar-fixed-bottom,.runestone-sphinx .navbar-fixed-bottom{border-width:1px 0 0;bottom:0;margin-bottom:0}.ptx-runestone-container .container-fluid>.navbar-collapse,.ptx-runestone-container .container-fluid>.navbar-header,.ptx-runestone-container .container>.navbar-collapse,.ptx-runestone-container .container>.navbar-header,.runestone-sphinx .container-fluid>.navbar-collapse,.runestone-sphinx .container-fluid>.navbar-header,.runestone-sphinx .container>.navbar-collapse,.runestone-sphinx .container>.navbar-header{margin-left:-15px;margin-right:-15px}@media (min-width:768px){.ptx-runestone-container .container-fluid>.navbar-collapse,.ptx-runestone-container .container-fluid>.navbar-header,.ptx-runestone-container .container>.navbar-collapse,.ptx-runestone-container .container>.navbar-header,.runestone-sphinx .container-fluid>.navbar-collapse,.runestone-sphinx .container-fluid>.navbar-header,.runestone-sphinx .container>.navbar-collapse,.runestone-sphinx .container>.navbar-header{margin-left:0;margin-right:0}}.ptx-runestone-container .navbar-static-top,.runestone-sphinx .navbar-static-top{border-width:0 0 1px;z-index:1000}@media (min-width:768px){.ptx-runestone-container .navbar-static-top,.runestone-sphinx .navbar-static-top{border-radius:0}}.ptx-runestone-container .navbar-brand,.runestone-sphinx .navbar-brand{float:left;font-size:18px;height:50px;line-height:20px;padding:15px}.ptx-runestone-container .navbar-brand:focus,.ptx-runestone-container .navbar-brand:hover,.runestone-sphinx .navbar-brand:focus,.runestone-sphinx .navbar-brand:hover{text-decoration:none}.ptx-runestone-container .navbar-brand>img,.runestone-sphinx .navbar-brand>img{display:block}@media (min-width:768px){.ptx-runestone-container .navbar>.container .navbar-brand,.ptx-runestone-container .navbar>.container-fluid .navbar-brand,.runestone-sphinx .navbar>.container .navbar-brand,.runestone-sphinx .navbar>.container-fluid .navbar-brand{margin-left:-15px}}.ptx-runestone-container .navbar-toggle,.runestone-sphinx .navbar-toggle{background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px;float:right;margin-bottom:8px;margin-right:15px;margin-top:8px;padding:9px 10px;position:relative}.ptx-runestone-container .navbar-toggle:focus,.runestone-sphinx .navbar-toggle:focus{outline:0}.ptx-runestone-container .navbar-toggle .icon-bar,.runestone-sphinx .navbar-toggle .icon-bar{border-radius:1px;display:block;height:2px;width:22px}.ptx-runestone-container .navbar-toggle .icon-bar+.icon-bar,.runestone-sphinx .navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.ptx-runestone-container .navbar-toggle,.runestone-sphinx .navbar-toggle{display:none}}.ptx-runestone-container .navbar-nav,.runestone-sphinx .navbar-nav{margin:7.5px -15px}.ptx-runestone-container .navbar-nav>li>a,.runestone-sphinx .navbar-nav>li>a{line-height:20px;padding-bottom:10px;padding-top:10px}@media (max-width:767px){.ptx-runestone-container .navbar-nav .open .dropdown-menu,.runestone-sphinx .navbar-nav .open .dropdown-menu{background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none;float:none;margin-top:0;position:static;width:auto}.ptx-runestone-container .navbar-nav .open .dropdown-menu .dropdown-header,.ptx-runestone-container .navbar-nav .open .dropdown-menu>li>a,.runestone-sphinx .navbar-nav .open .dropdown-menu .dropdown-header,.runestone-sphinx .navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.ptx-runestone-container .navbar-nav .open .dropdown-menu>li>a,.runestone-sphinx .navbar-nav .open .dropdown-menu>li>a{line-height:20px}.ptx-runestone-container .navbar-nav .open .dropdown-menu>li>a:focus,.ptx-runestone-container .navbar-nav .open .dropdown-menu>li>a:hover,.runestone-sphinx .navbar-nav .open .dropdown-menu>li>a:focus,.runestone-sphinx .navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.ptx-runestone-container .navbar-nav,.runestone-sphinx .navbar-nav{float:left;margin:0}.ptx-runestone-container .navbar-nav>li,.runestone-sphinx .navbar-nav>li{float:left}.ptx-runestone-container .navbar-nav>li>a,.runestone-sphinx .navbar-nav>li>a{padding-bottom:15px;padding-top:15px}}.ptx-runestone-container .navbar-form,.runestone-sphinx .navbar-form{border-bottom:1px solid transparent;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1),0 1px 0 hsla(0,0%,100%,.1);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1),0 1px 0 hsla(0,0%,100%,.1);margin:8px -15px;padding:10px 15px}@media (min-width:768px){.ptx-runestone-container .navbar-form .form-group,.runestone-sphinx .navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.ptx-runestone-container .navbar-form .form-control,.runestone-sphinx .navbar-form .form-control{display:inline-block;vertical-align:middle;width:auto}.ptx-runestone-container .navbar-form .form-control-static,.runestone-sphinx .navbar-form .form-control-static{display:inline-block}.ptx-runestone-container .navbar-form .input-group,.runestone-sphinx .navbar-form .input-group{display:inline-table;vertical-align:middle}.ptx-runestone-container .navbar-form .input-group .form-control,.ptx-runestone-container .navbar-form .input-group .input-group-addon,.ptx-runestone-container .navbar-form .input-group .input-group-btn,.runestone-sphinx .navbar-form .input-group .form-control,.runestone-sphinx .navbar-form .input-group .input-group-addon,.runestone-sphinx .navbar-form .input-group .input-group-btn{width:auto}.ptx-runestone-container .navbar-form .input-group>.form-control,.runestone-sphinx .navbar-form .input-group>.form-control{width:100%}.ptx-runestone-container .navbar-form .control-label,.runestone-sphinx .navbar-form .control-label{margin-bottom:0;vertical-align:middle}.ptx-runestone-container .navbar-form .checkbox,.ptx-runestone-container .navbar-form .radio,.runestone-sphinx .navbar-form .checkbox,.runestone-sphinx .navbar-form .radio{display:inline-block;margin-bottom:0;margin-top:0;vertical-align:middle}.ptx-runestone-container .navbar-form .checkbox label,.ptx-runestone-container .navbar-form .radio label,.runestone-sphinx .navbar-form .checkbox label,.runestone-sphinx .navbar-form .radio label{padding-left:0}.ptx-runestone-container .navbar-form .checkbox input[type=checkbox],.ptx-runestone-container .navbar-form .radio input[type=radio],.runestone-sphinx .navbar-form .checkbox input[type=checkbox],.runestone-sphinx .navbar-form .radio input[type=radio]{margin-left:0;position:relative}.ptx-runestone-container .navbar-form .has-feedback .form-control-feedback,.runestone-sphinx .navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.ptx-runestone-container .navbar-form .form-group,.runestone-sphinx .navbar-form .form-group{margin-bottom:5px}.ptx-runestone-container .navbar-form .form-group:last-child,.runestone-sphinx .navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.ptx-runestone-container .navbar-form,.runestone-sphinx .navbar-form{border:0;-webkit-box-shadow:none;box-shadow:none;margin-left:0;margin-right:0;padding-bottom:0;padding-top:0;width:auto}}.ptx-runestone-container .navbar-nav>li>.dropdown-menu,.runestone-sphinx .navbar-nav>li>.dropdown-menu{border-top-left-radius:0;border-top-right-radius:0;margin-top:0}.ptx-runestone-container .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu,.runestone-sphinx .navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-left-radius:0;border-bottom-right-radius:0;border-top-left-radius:4px;border-top-right-radius:4px;margin-bottom:0}.ptx-runestone-container .navbar-btn,.runestone-sphinx .navbar-btn{margin-bottom:8px;margin-top:8px}.ptx-runestone-container .navbar-btn.btn-sm,.runestone-sphinx .navbar-btn.btn-sm{margin-bottom:10px;margin-top:10px}.ptx-runestone-container .navbar-btn.btn-xs,.runestone-sphinx .navbar-btn.btn-xs{margin-bottom:14px;margin-top:14px}.ptx-runestone-container .navbar-text,.runestone-sphinx .navbar-text{margin-bottom:15px;margin-top:15px}@media (min-width:768px){.ptx-runestone-container .navbar-text,.runestone-sphinx .navbar-text{float:left;margin-left:15px;margin-right:15px}.ptx-runestone-container .navbar-left,.runestone-sphinx .navbar-left{float:left!important}.ptx-runestone-container .navbar-right,.runestone-sphinx .navbar-right{float:right!important;margin-right:-15px}.ptx-runestone-container .navbar-right~.navbar-right,.runestone-sphinx .navbar-right~.navbar-right{margin-right:0}}.ptx-runestone-container .navbar-default,.runestone-sphinx .navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.ptx-runestone-container .navbar-default .navbar-brand,.runestone-sphinx .navbar-default .navbar-brand{color:#777}.ptx-runestone-container .navbar-default .navbar-brand:focus,.ptx-runestone-container .navbar-default .navbar-brand:hover,.runestone-sphinx .navbar-default .navbar-brand:focus,.runestone-sphinx .navbar-default .navbar-brand:hover{background-color:transparent;color:#5e5e5e}.ptx-runestone-container .navbar-default .navbar-nav>li>a,.ptx-runestone-container .navbar-default .navbar-text,.runestone-sphinx .navbar-default .navbar-nav>li>a,.runestone-sphinx .navbar-default .navbar-text{color:#777}.ptx-runestone-container .navbar-default .navbar-nav>li>a:focus,.ptx-runestone-container .navbar-default .navbar-nav>li>a:hover,.runestone-sphinx .navbar-default .navbar-nav>li>a:focus,.runestone-sphinx .navbar-default .navbar-nav>li>a:hover{background-color:transparent;color:#333}.ptx-runestone-container .navbar-default .navbar-nav>.active>a,.ptx-runestone-container .navbar-default .navbar-nav>.active>a:focus,.ptx-runestone-container .navbar-default .navbar-nav>.active>a:hover,.runestone-sphinx .navbar-default .navbar-nav>.active>a,.runestone-sphinx .navbar-default .navbar-nav>.active>a:focus,.runestone-sphinx .navbar-default .navbar-nav>.active>a:hover{background-color:#e7e7e7;color:#555}.ptx-runestone-container .navbar-default .navbar-nav>.disabled>a,.ptx-runestone-container .navbar-default .navbar-nav>.disabled>a:focus,.ptx-runestone-container .navbar-default .navbar-nav>.disabled>a:hover,.runestone-sphinx .navbar-default .navbar-nav>.disabled>a,.runestone-sphinx .navbar-default .navbar-nav>.disabled>a:focus,.runestone-sphinx .navbar-default .navbar-nav>.disabled>a:hover{background-color:transparent;color:#ccc}.ptx-runestone-container .navbar-default .navbar-nav>.open>a,.ptx-runestone-container .navbar-default .navbar-nav>.open>a:focus,.ptx-runestone-container .navbar-default .navbar-nav>.open>a:hover,.runestone-sphinx .navbar-default .navbar-nav>.open>a,.runestone-sphinx .navbar-default .navbar-nav>.open>a:focus,.runestone-sphinx .navbar-default .navbar-nav>.open>a:hover{background-color:#e7e7e7;color:#555}@media (max-width:767px){.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>li>a,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{background-color:transparent;color:#333}.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>.active>a,.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>.active>a,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{background-color:#e7e7e7;color:#555}.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.ptx-runestone-container .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.runestone-sphinx .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{background-color:transparent;color:#ccc}}.ptx-runestone-container .navbar-default .navbar-toggle,.runestone-sphinx .navbar-default .navbar-toggle{border-color:#ddd}.ptx-runestone-container .navbar-default .navbar-toggle:focus,.ptx-runestone-container .navbar-default .navbar-toggle:hover,.runestone-sphinx .navbar-default .navbar-toggle:focus,.runestone-sphinx .navbar-default .navbar-toggle:hover{background-color:#ddd}.ptx-runestone-container .navbar-default .navbar-toggle .icon-bar,.runestone-sphinx .navbar-default .navbar-toggle .icon-bar{background-color:#888}.ptx-runestone-container .navbar-default .navbar-collapse,.ptx-runestone-container .navbar-default .navbar-form,.runestone-sphinx .navbar-default .navbar-collapse,.runestone-sphinx .navbar-default .navbar-form{border-color:#e7e7e7}.ptx-runestone-container .navbar-default .navbar-link,.runestone-sphinx .navbar-default .navbar-link{color:#777}.ptx-runestone-container .navbar-default .navbar-link:hover,.runestone-sphinx .navbar-default .navbar-link:hover{color:#333}.ptx-runestone-container .navbar-default .btn-link,.runestone-sphinx .navbar-default .btn-link{color:#777}.ptx-runestone-container .navbar-default .btn-link:focus,.ptx-runestone-container .navbar-default .btn-link:hover,.runestone-sphinx .navbar-default .btn-link:focus,.runestone-sphinx .navbar-default .btn-link:hover{color:#333}.ptx-runestone-container .navbar-default .btn-link[disabled]:focus,.ptx-runestone-container .navbar-default .btn-link[disabled]:hover,.ptx-runestone-container fieldset[disabled] .navbar-default .btn-link:focus,.ptx-runestone-container fieldset[disabled] .navbar-default .btn-link:hover,.runestone-sphinx .navbar-default .btn-link[disabled]:focus,.runestone-sphinx .navbar-default .btn-link[disabled]:hover,.runestone-sphinx fieldset[disabled] .navbar-default .btn-link:focus,.runestone-sphinx fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.ptx-runestone-container .navbar-inverse,.runestone-sphinx .navbar-inverse{background-color:#222;border-color:#080808}.ptx-runestone-container .navbar-inverse .navbar-brand,.runestone-sphinx .navbar-inverse .navbar-brand{color:#9d9d9d}.ptx-runestone-container .navbar-inverse .navbar-brand:focus,.ptx-runestone-container .navbar-inverse .navbar-brand:hover,.runestone-sphinx .navbar-inverse .navbar-brand:focus,.runestone-sphinx .navbar-inverse .navbar-brand:hover{background-color:transparent;color:#fff}.ptx-runestone-container .navbar-inverse .navbar-nav>li>a,.ptx-runestone-container .navbar-inverse .navbar-text,.runestone-sphinx .navbar-inverse .navbar-nav>li>a,.runestone-sphinx .navbar-inverse .navbar-text{color:#9d9d9d}.ptx-runestone-container .navbar-inverse .navbar-nav>li>a:focus,.ptx-runestone-container .navbar-inverse .navbar-nav>li>a:hover,.runestone-sphinx .navbar-inverse .navbar-nav>li>a:focus,.runestone-sphinx .navbar-inverse .navbar-nav>li>a:hover{background-color:transparent;color:#fff}.ptx-runestone-container .navbar-inverse .navbar-nav>.active>a,.ptx-runestone-container .navbar-inverse .navbar-nav>.active>a:focus,.ptx-runestone-container .navbar-inverse .navbar-nav>.active>a:hover,.runestone-sphinx .navbar-inverse .navbar-nav>.active>a,.runestone-sphinx .navbar-inverse .navbar-nav>.active>a:focus,.runestone-sphinx .navbar-inverse .navbar-nav>.active>a:hover{background-color:#080808;color:#fff}.ptx-runestone-container .navbar-inverse .navbar-nav>.disabled>a,.ptx-runestone-container .navbar-inverse .navbar-nav>.disabled>a:focus,.ptx-runestone-container .navbar-inverse .navbar-nav>.disabled>a:hover,.runestone-sphinx .navbar-inverse .navbar-nav>.disabled>a,.runestone-sphinx .navbar-inverse .navbar-nav>.disabled>a:focus,.runestone-sphinx .navbar-inverse .navbar-nav>.disabled>a:hover{background-color:transparent;color:#444}.ptx-runestone-container .navbar-inverse .navbar-nav>.open>a,.ptx-runestone-container .navbar-inverse .navbar-nav>.open>a:focus,.ptx-runestone-container .navbar-inverse .navbar-nav>.open>a:hover,.runestone-sphinx .navbar-inverse .navbar-nav>.open>a,.runestone-sphinx .navbar-inverse .navbar-nav>.open>a:focus,.runestone-sphinx .navbar-inverse .navbar-nav>.open>a:hover{background-color:#080808;color:#fff}@media (max-width:767px){.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu .divider,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>li>a,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{background-color:transparent;color:#fff}.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{background-color:#080808;color:#fff}.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.ptx-runestone-container .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.runestone-sphinx .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{background-color:transparent;color:#444}}.ptx-runestone-container .navbar-inverse .navbar-toggle,.runestone-sphinx .navbar-inverse .navbar-toggle{border-color:#333}.ptx-runestone-container .navbar-inverse .navbar-toggle:focus,.ptx-runestone-container .navbar-inverse .navbar-toggle:hover,.runestone-sphinx .navbar-inverse .navbar-toggle:focus,.runestone-sphinx .navbar-inverse .navbar-toggle:hover{background-color:#333}.ptx-runestone-container .navbar-inverse .navbar-toggle .icon-bar,.runestone-sphinx .navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.ptx-runestone-container .navbar-inverse .navbar-collapse,.ptx-runestone-container .navbar-inverse .navbar-form,.runestone-sphinx .navbar-inverse .navbar-collapse,.runestone-sphinx .navbar-inverse .navbar-form{border-color:#101010}.ptx-runestone-container .navbar-inverse .navbar-link,.runestone-sphinx .navbar-inverse .navbar-link{color:#9d9d9d}.ptx-runestone-container .navbar-inverse .navbar-link:hover,.runestone-sphinx .navbar-inverse .navbar-link:hover{color:#fff}.ptx-runestone-container .navbar-inverse .btn-link,.runestone-sphinx .navbar-inverse .btn-link{color:#9d9d9d}.ptx-runestone-container .navbar-inverse .btn-link:focus,.ptx-runestone-container .navbar-inverse .btn-link:hover,.runestone-sphinx .navbar-inverse .btn-link:focus,.runestone-sphinx .navbar-inverse .btn-link:hover{color:#fff}.ptx-runestone-container .navbar-inverse .btn-link[disabled]:focus,.ptx-runestone-container .navbar-inverse .btn-link[disabled]:hover,.ptx-runestone-container fieldset[disabled] .navbar-inverse .btn-link:focus,.ptx-runestone-container fieldset[disabled] .navbar-inverse .btn-link:hover,.runestone-sphinx .navbar-inverse .btn-link[disabled]:focus,.runestone-sphinx .navbar-inverse .btn-link[disabled]:hover,.runestone-sphinx fieldset[disabled] .navbar-inverse .btn-link:focus,.runestone-sphinx fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.ptx-runestone-container .breadcrumb,.runestone-sphinx .breadcrumb{background-color:#f5f5f5;border-radius:4px;list-style:none;margin-bottom:20px;padding:8px 15px}.ptx-runestone-container .breadcrumb>li,.runestone-sphinx .breadcrumb>li{display:inline-block}.ptx-runestone-container .breadcrumb>li+li:before,.runestone-sphinx .breadcrumb>li+li:before{color:#ccc;content:"/\00a0";padding:0 5px}.ptx-runestone-container .breadcrumb>.active,.runestone-sphinx .breadcrumb>.active{color:#777}.ptx-runestone-container .pagination,.runestone-sphinx .pagination{border-radius:4px;display:inline-block;margin:20px 0;padding-left:0}.ptx-runestone-container .pagination>li,.runestone-sphinx .pagination>li{display:inline}.ptx-runestone-container .pagination>li>a,.ptx-runestone-container .pagination>li>span,.runestone-sphinx .pagination>li>a,.runestone-sphinx .pagination>li>span{background-color:#fff;border:1px solid #ddd;color:#337ab7;float:left;line-height:1.42857143;margin-left:-1px;padding:6px 12px;position:relative;text-decoration:none}.ptx-runestone-container .pagination>li>a:focus,.ptx-runestone-container .pagination>li>a:hover,.ptx-runestone-container .pagination>li>span:focus,.ptx-runestone-container .pagination>li>span:hover,.runestone-sphinx .pagination>li>a:focus,.runestone-sphinx .pagination>li>a:hover,.runestone-sphinx .pagination>li>span:focus,.runestone-sphinx .pagination>li>span:hover{background-color:#eee;border-color:#ddd;color:#23527c;z-index:2}.ptx-runestone-container .pagination>li:first-child>a,.ptx-runestone-container .pagination>li:first-child>span,.runestone-sphinx .pagination>li:first-child>a,.runestone-sphinx .pagination>li:first-child>span{border-bottom-left-radius:4px;border-top-left-radius:4px;margin-left:0}.ptx-runestone-container .pagination>li:last-child>a,.ptx-runestone-container .pagination>li:last-child>span,.runestone-sphinx .pagination>li:last-child>a,.runestone-sphinx .pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.ptx-runestone-container .pagination>.active>a,.ptx-runestone-container .pagination>.active>a:focus,.ptx-runestone-container .pagination>.active>a:hover,.ptx-runestone-container .pagination>.active>span,.ptx-runestone-container .pagination>.active>span:focus,.ptx-runestone-container .pagination>.active>span:hover,.runestone-sphinx .pagination>.active>a,.runestone-sphinx .pagination>.active>a:focus,.runestone-sphinx .pagination>.active>a:hover,.runestone-sphinx .pagination>.active>span,.runestone-sphinx .pagination>.active>span:focus,.runestone-sphinx .pagination>.active>span:hover{background-color:#337ab7;border-color:#337ab7;color:#fff;cursor:default;z-index:3}.ptx-runestone-container .pagination>.disabled>a,.ptx-runestone-container .pagination>.disabled>a:focus,.ptx-runestone-container .pagination>.disabled>a:hover,.ptx-runestone-container .pagination>.disabled>span,.ptx-runestone-container .pagination>.disabled>span:focus,.ptx-runestone-container .pagination>.disabled>span:hover,.runestone-sphinx .pagination>.disabled>a,.runestone-sphinx .pagination>.disabled>a:focus,.runestone-sphinx .pagination>.disabled>a:hover,.runestone-sphinx .pagination>.disabled>span,.runestone-sphinx .pagination>.disabled>span:focus,.runestone-sphinx .pagination>.disabled>span:hover{background-color:#fff;border-color:#ddd;color:#777;cursor:not-allowed}.ptx-runestone-container .pagination-lg>li>a,.ptx-runestone-container .pagination-lg>li>span,.runestone-sphinx .pagination-lg>li>a,.runestone-sphinx .pagination-lg>li>span{font-size:18px;line-height:1.3333333;padding:10px 16px}.ptx-runestone-container .pagination-lg>li:first-child>a,.ptx-runestone-container .pagination-lg>li:first-child>span,.runestone-sphinx .pagination-lg>li:first-child>a,.runestone-sphinx .pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.ptx-runestone-container .pagination-lg>li:last-child>a,.ptx-runestone-container .pagination-lg>li:last-child>span,.runestone-sphinx .pagination-lg>li:last-child>a,.runestone-sphinx .pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.ptx-runestone-container .pagination-sm>li>a,.ptx-runestone-container .pagination-sm>li>span,.runestone-sphinx .pagination-sm>li>a,.runestone-sphinx .pagination-sm>li>span{font-size:12px;line-height:1.5;padding:5px 10px}.ptx-runestone-container .pagination-sm>li:first-child>a,.ptx-runestone-container .pagination-sm>li:first-child>span,.runestone-sphinx .pagination-sm>li:first-child>a,.runestone-sphinx .pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.ptx-runestone-container .pagination-sm>li:last-child>a,.ptx-runestone-container .pagination-sm>li:last-child>span,.runestone-sphinx .pagination-sm>li:last-child>a,.runestone-sphinx .pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.ptx-runestone-container .pager,.runestone-sphinx .pager{list-style:none;margin:20px 0;padding-left:0;text-align:center}.ptx-runestone-container .pager li,.runestone-sphinx .pager li{display:inline}.ptx-runestone-container .pager li>a,.ptx-runestone-container .pager li>span,.runestone-sphinx .pager li>a,.runestone-sphinx .pager li>span{background-color:#fff;border:1px solid #ddd;border-radius:15px;display:inline-block;padding:5px 14px}.ptx-runestone-container .pager li>a:focus,.ptx-runestone-container .pager li>a:hover,.runestone-sphinx .pager li>a:focus,.runestone-sphinx .pager li>a:hover{background-color:#eee;text-decoration:none}.ptx-runestone-container .pager .next>a,.ptx-runestone-container .pager .next>span,.runestone-sphinx .pager .next>a,.runestone-sphinx .pager .next>span{float:right}.ptx-runestone-container .pager .previous>a,.ptx-runestone-container .pager .previous>span,.runestone-sphinx .pager .previous>a,.runestone-sphinx .pager .previous>span{float:left}.ptx-runestone-container .pager .disabled>a,.ptx-runestone-container .pager .disabled>a:focus,.ptx-runestone-container .pager .disabled>a:hover,.ptx-runestone-container .pager .disabled>span,.runestone-sphinx .pager .disabled>a,.runestone-sphinx .pager .disabled>a:focus,.runestone-sphinx .pager .disabled>a:hover,.runestone-sphinx .pager .disabled>span{background-color:#fff;color:#777;cursor:not-allowed}.ptx-runestone-container .label,.runestone-sphinx .label{border-radius:.25em;color:#fff;display:inline;font-size:75%;font-weight:700;line-height:1;padding:.2em .6em .3em;text-align:center;vertical-align:baseline;white-space:nowrap}.ptx-runestone-container a.label:focus,.ptx-runestone-container a.label:hover,.runestone-sphinx a.label:focus,.runestone-sphinx a.label:hover{color:#fff;cursor:pointer;text-decoration:none}.ptx-runestone-container .label:empty,.runestone-sphinx .label:empty{display:none}.ptx-runestone-container .btn .label,.runestone-sphinx .btn .label{position:relative;top:-1px}.ptx-runestone-container .label-default,.runestone-sphinx .label-default{background-color:#777}.ptx-runestone-container .label-default[href]:focus,.ptx-runestone-container .label-default[href]:hover,.runestone-sphinx .label-default[href]:focus,.runestone-sphinx .label-default[href]:hover{background-color:#5e5e5e}.ptx-runestone-container .label-primary,.runestone-sphinx .label-primary{background-color:#337ab7}.ptx-runestone-container .label-primary[href]:focus,.ptx-runestone-container .label-primary[href]:hover,.runestone-sphinx .label-primary[href]:focus,.runestone-sphinx .label-primary[href]:hover{background-color:#286090}.ptx-runestone-container .label-success,.runestone-sphinx .label-success{background-color:#5cb85c}.ptx-runestone-container .label-success[href]:focus,.ptx-runestone-container .label-success[href]:hover,.runestone-sphinx .label-success[href]:focus,.runestone-sphinx .label-success[href]:hover{background-color:#449d44}.ptx-runestone-container .label-info,.runestone-sphinx .label-info{background-color:#5bc0de}.ptx-runestone-container .label-info[href]:focus,.ptx-runestone-container .label-info[href]:hover,.runestone-sphinx .label-info[href]:focus,.runestone-sphinx .label-info[href]:hover{background-color:#31b0d5}.ptx-runestone-container .label-warning,.runestone-sphinx .label-warning{background-color:#f0ad4e}.ptx-runestone-container .label-warning[href]:focus,.ptx-runestone-container .label-warning[href]:hover,.runestone-sphinx .label-warning[href]:focus,.runestone-sphinx .label-warning[href]:hover{background-color:#ec971f}.ptx-runestone-container .label-danger,.runestone-sphinx .label-danger{background-color:#d9534f}.ptx-runestone-container .label-danger[href]:focus,.ptx-runestone-container .label-danger[href]:hover,.runestone-sphinx .label-danger[href]:focus,.runestone-sphinx .label-danger[href]:hover{background-color:#c9302c}.ptx-runestone-container .badge,.runestone-sphinx .badge{background-color:#777;border-radius:10px;color:#fff;display:inline-block;font-size:12px;font-weight:700;line-height:1;min-width:10px;padding:3px 7px;text-align:center;vertical-align:middle;white-space:nowrap}.ptx-runestone-container .badge:empty,.runestone-sphinx .badge:empty{display:none}.ptx-runestone-container .btn .badge,.runestone-sphinx .btn .badge{position:relative;top:-1px}.ptx-runestone-container .btn-group-xs>.btn .badge,.ptx-runestone-container .btn-xs .badge,.runestone-sphinx .btn-group-xs>.btn .badge,.runestone-sphinx .btn-xs .badge{padding:1px 5px;top:0}.ptx-runestone-container a.badge:focus,.ptx-runestone-container a.badge:hover,.runestone-sphinx a.badge:focus,.runestone-sphinx a.badge:hover{color:#fff;cursor:pointer;text-decoration:none}.ptx-runestone-container .list-group-item.active>.badge,.ptx-runestone-container .nav-pills>.active>a>.badge,.runestone-sphinx .list-group-item.active>.badge,.runestone-sphinx .nav-pills>.active>a>.badge{background-color:#fff;color:#337ab7}.ptx-runestone-container .list-group-item>.badge,.runestone-sphinx .list-group-item>.badge{float:right}.ptx-runestone-container .list-group-item>.badge+.badge,.runestone-sphinx .list-group-item>.badge+.badge{margin-right:5px}.ptx-runestone-container .nav-pills>li>a>.badge,.runestone-sphinx .nav-pills>li>a>.badge{margin-left:3px}.ptx-runestone-container .jumbotron,.runestone-sphinx .jumbotron{background-color:#eee;color:inherit;margin-bottom:30px;padding-bottom:30px;padding-top:30px}.ptx-runestone-container .jumbotron .h1,.ptx-runestone-container .jumbotron h1,.runestone-sphinx .jumbotron .h1,.runestone-sphinx .jumbotron h1{color:inherit}.ptx-runestone-container .jumbotron p,.runestone-sphinx .jumbotron p{font-size:21px;font-weight:200;margin-bottom:15px}.ptx-runestone-container .jumbotron>hr,.runestone-sphinx .jumbotron>hr{border-top-color:#d5d5d5}.ptx-runestone-container .container .jumbotron,.ptx-runestone-container .container-fluid .jumbotron,.runestone-sphinx .container .jumbotron,.runestone-sphinx .container-fluid .jumbotron{border-radius:6px;padding-left:15px;padding-right:15px}.ptx-runestone-container .jumbotron .container,.runestone-sphinx .jumbotron .container{max-width:100%}@media screen and (min-width:768px){.ptx-runestone-container .jumbotron,.runestone-sphinx .jumbotron{padding-bottom:48px;padding-top:48px}.ptx-runestone-container .container .jumbotron,.ptx-runestone-container .container-fluid .jumbotron,.runestone-sphinx .container .jumbotron,.runestone-sphinx .container-fluid .jumbotron{padding-left:60px;padding-right:60px}.ptx-runestone-container .jumbotron .h1,.ptx-runestone-container .jumbotron h1,.runestone-sphinx .jumbotron .h1,.runestone-sphinx .jumbotron h1{font-size:63px}}.ptx-runestone-container .thumbnail,.runestone-sphinx .thumbnail{background-color:#fff;border:1px solid #ddd;border-radius:4px;display:block;line-height:1.42857143;margin-bottom:20px;padding:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.ptx-runestone-container .thumbnail a>img,.ptx-runestone-container .thumbnail>img,.runestone-sphinx .thumbnail a>img,.runestone-sphinx .thumbnail>img{margin-left:auto;margin-right:auto}.ptx-runestone-container a.thumbnail.active,.ptx-runestone-container a.thumbnail:focus,.ptx-runestone-container a.thumbnail:hover,.runestone-sphinx a.thumbnail.active,.runestone-sphinx a.thumbnail:focus,.runestone-sphinx a.thumbnail:hover{border-color:#337ab7}.ptx-runestone-container .thumbnail .caption,.runestone-sphinx .thumbnail .caption{color:#333;padding:9px}.ptx-runestone-container .alert,.runestone-sphinx .alert{border:1px solid transparent;border-radius:4px;margin-bottom:20px;padding:15px}.ptx-runestone-container .alert h4,.runestone-sphinx .alert h4{color:inherit;margin-top:0}.ptx-runestone-container .alert .alert-link,.runestone-sphinx .alert .alert-link{font-weight:700}.ptx-runestone-container .alert>p,.ptx-runestone-container .alert>ul,.runestone-sphinx .alert>p,.runestone-sphinx .alert>ul{margin-bottom:0}.ptx-runestone-container .alert>p+p,.runestone-sphinx .alert>p+p{margin-top:5px}.ptx-runestone-container .alert-dismissable,.ptx-runestone-container .alert-dismissible,.runestone-sphinx .alert-dismissable,.runestone-sphinx .alert-dismissible{padding-right:35px}.ptx-runestone-container .alert-dismissable .close,.ptx-runestone-container .alert-dismissible .close,.runestone-sphinx .alert-dismissable .close,.runestone-sphinx .alert-dismissible .close{color:inherit;position:relative;right:-21px;top:-2px}.ptx-runestone-container .alert-success,.runestone-sphinx .alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.ptx-runestone-container .alert-success hr,.runestone-sphinx .alert-success hr{border-top-color:#c9e2b3}.ptx-runestone-container .alert-success .alert-link,.runestone-sphinx .alert-success .alert-link{color:#2b542c}.ptx-runestone-container .alert-info,.runestone-sphinx .alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.ptx-runestone-container .alert-info hr,.runestone-sphinx .alert-info hr{border-top-color:#a6e1ec}.ptx-runestone-container .alert-info .alert-link,.runestone-sphinx .alert-info .alert-link{color:#245269}.ptx-runestone-container .alert-warning,.runestone-sphinx .alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.ptx-runestone-container .alert-warning hr,.runestone-sphinx .alert-warning hr{border-top-color:#f7e1b5}.ptx-runestone-container .alert-warning .alert-link,.runestone-sphinx .alert-warning .alert-link{color:#66512c}.ptx-runestone-container .alert-danger,.runestone-sphinx .alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.ptx-runestone-container .alert-danger hr,.runestone-sphinx .alert-danger hr{border-top-color:#e4b9c0}.ptx-runestone-container .alert-danger .alert-link,.runestone-sphinx .alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{0%{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{0%{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{0%{background-position:40px 0}to{background-position:0 0}}.ptx-runestone-container .progress,.runestone-sphinx .progress{background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);height:20px;margin-bottom:20px;overflow:hidden}.ptx-runestone-container .progress-bar,.runestone-sphinx .progress-bar{background-color:#337ab7;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);color:#fff;float:left;font-size:12px;height:100%;line-height:20px;text-align:center;-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease;width:0}.ptx-runestone-container .progress-bar-striped,.ptx-runestone-container .progress-striped .progress-bar,.runestone-sphinx .progress-bar-striped,.runestone-sphinx .progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);-webkit-background-size:40px 40px;background-size:40px 40px}.ptx-runestone-container .progress-bar.active,.ptx-runestone-container .progress.active .progress-bar,.runestone-sphinx .progress-bar.active,.runestone-sphinx .progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.ptx-runestone-container .progress-bar-success,.runestone-sphinx .progress-bar-success{background-color:#5cb85c}.ptx-runestone-container .progress-striped .progress-bar-success,.runestone-sphinx .progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.ptx-runestone-container .progress-bar-info,.runestone-sphinx .progress-bar-info{background-color:#5bc0de}.ptx-runestone-container .progress-striped .progress-bar-info,.runestone-sphinx .progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.ptx-runestone-container .progress-bar-warning,.runestone-sphinx .progress-bar-warning{background-color:#f0ad4e}.ptx-runestone-container .progress-striped .progress-bar-warning,.runestone-sphinx .progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.ptx-runestone-container .progress-bar-danger,.runestone-sphinx .progress-bar-danger{background-color:#d9534f}.ptx-runestone-container .progress-striped .progress-bar-danger,.runestone-sphinx .progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.ptx-runestone-container .media,.runestone-sphinx .media{margin-top:15px}.ptx-runestone-container .media:first-child,.runestone-sphinx .media:first-child{margin-top:0}.ptx-runestone-container .media,.ptx-runestone-container .media-body,.runestone-sphinx .media,.runestone-sphinx .media-body{zoom:1;overflow:hidden}.ptx-runestone-container .media-body,.runestone-sphinx .media-body{width:10000px}.ptx-runestone-container .media-object,.runestone-sphinx .media-object{display:block}.ptx-runestone-container .media-object.img-thumbnail,.runestone-sphinx .media-object.img-thumbnail{max-width:none}.ptx-runestone-container .media-right,.ptx-runestone-container .media>.pull-right,.runestone-sphinx .media-right,.runestone-sphinx .media>.pull-right{padding-left:10px}.ptx-runestone-container .media-left,.ptx-runestone-container .media>.pull-left,.runestone-sphinx .media-left,.runestone-sphinx .media>.pull-left{padding-right:10px}.ptx-runestone-container .media-body,.ptx-runestone-container .media-left,.ptx-runestone-container .media-right,.runestone-sphinx .media-body,.runestone-sphinx .media-left,.runestone-sphinx .media-right{display:table-cell;vertical-align:top}.ptx-runestone-container .media-middle,.runestone-sphinx .media-middle{vertical-align:middle}.ptx-runestone-container .media-bottom,.runestone-sphinx .media-bottom{vertical-align:bottom}.ptx-runestone-container .media-heading,.runestone-sphinx .media-heading{margin-bottom:5px;margin-top:0}.ptx-runestone-container .media-list,.runestone-sphinx .media-list{list-style:none;padding-left:0}.ptx-runestone-container .list-group,.runestone-sphinx .list-group{margin-bottom:20px;padding-left:0}.ptx-runestone-container .list-group-item,.runestone-sphinx .list-group-item{background-color:#fff;border:1px solid #ddd;display:block;margin-bottom:-1px;padding:10px 15px;position:relative}.ptx-runestone-container .list-group-item:first-child,.runestone-sphinx .list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.ptx-runestone-container .list-group-item:last-child,.runestone-sphinx .list-group-item:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;margin-bottom:0}.ptx-runestone-container .list-group-item.disabled,.ptx-runestone-container .list-group-item.disabled:focus,.ptx-runestone-container .list-group-item.disabled:hover,.runestone-sphinx .list-group-item.disabled,.runestone-sphinx .list-group-item.disabled:focus,.runestone-sphinx .list-group-item.disabled:hover{background-color:#eee;color:#777;cursor:not-allowed}.ptx-runestone-container .list-group-item.disabled .list-group-item-heading,.ptx-runestone-container .list-group-item.disabled:focus .list-group-item-heading,.ptx-runestone-container .list-group-item.disabled:hover .list-group-item-heading,.runestone-sphinx .list-group-item.disabled .list-group-item-heading,.runestone-sphinx .list-group-item.disabled:focus .list-group-item-heading,.runestone-sphinx .list-group-item.disabled:hover .list-group-item-heading{color:inherit}.ptx-runestone-container .list-group-item.disabled .list-group-item-text,.ptx-runestone-container .list-group-item.disabled:focus .list-group-item-text,.ptx-runestone-container .list-group-item.disabled:hover .list-group-item-text,.runestone-sphinx .list-group-item.disabled .list-group-item-text,.runestone-sphinx .list-group-item.disabled:focus .list-group-item-text,.runestone-sphinx .list-group-item.disabled:hover .list-group-item-text{color:#777}.ptx-runestone-container .list-group-item.active,.ptx-runestone-container .list-group-item.active:focus,.ptx-runestone-container .list-group-item.active:hover,.runestone-sphinx .list-group-item.active,.runestone-sphinx .list-group-item.active:focus,.runestone-sphinx .list-group-item.active:hover{background-color:#337ab7;border-color:#337ab7;color:#fff;z-index:2}.ptx-runestone-container .list-group-item.active .list-group-item-heading,.ptx-runestone-container .list-group-item.active .list-group-item-heading>.small,.ptx-runestone-container .list-group-item.active .list-group-item-heading>small,.ptx-runestone-container .list-group-item.active:focus .list-group-item-heading,.ptx-runestone-container .list-group-item.active:focus .list-group-item-heading>.small,.ptx-runestone-container .list-group-item.active:focus .list-group-item-heading>small,.ptx-runestone-container .list-group-item.active:hover .list-group-item-heading,.ptx-runestone-container .list-group-item.active:hover .list-group-item-heading>.small,.ptx-runestone-container .list-group-item.active:hover .list-group-item-heading>small,.runestone-sphinx .list-group-item.active .list-group-item-heading,.runestone-sphinx .list-group-item.active .list-group-item-heading>.small,.runestone-sphinx .list-group-item.active .list-group-item-heading>small,.runestone-sphinx .list-group-item.active:focus .list-group-item-heading,.runestone-sphinx .list-group-item.active:focus .list-group-item-heading>.small,.runestone-sphinx .list-group-item.active:focus .list-group-item-heading>small,.runestone-sphinx .list-group-item.active:hover .list-group-item-heading,.runestone-sphinx .list-group-item.active:hover .list-group-item-heading>.small,.runestone-sphinx .list-group-item.active:hover .list-group-item-heading>small{color:inherit}.ptx-runestone-container .list-group-item.active .list-group-item-text,.ptx-runestone-container .list-group-item.active:focus .list-group-item-text,.ptx-runestone-container .list-group-item.active:hover .list-group-item-text,.runestone-sphinx .list-group-item.active .list-group-item-text,.runestone-sphinx .list-group-item.active:focus .list-group-item-text,.runestone-sphinx .list-group-item.active:hover .list-group-item-text{color:#c7ddef}.ptx-runestone-container a.list-group-item,.ptx-runestone-container button.list-group-item,.runestone-sphinx a.list-group-item,.runestone-sphinx button.list-group-item{color:#555}.ptx-runestone-container a.list-group-item .list-group-item-heading,.ptx-runestone-container button.list-group-item .list-group-item-heading,.runestone-sphinx a.list-group-item .list-group-item-heading,.runestone-sphinx button.list-group-item .list-group-item-heading{color:#333}.ptx-runestone-container a.list-group-item:focus,.ptx-runestone-container a.list-group-item:hover,.ptx-runestone-container button.list-group-item:focus,.ptx-runestone-container button.list-group-item:hover,.runestone-sphinx a.list-group-item:focus,.runestone-sphinx a.list-group-item:hover,.runestone-sphinx button.list-group-item:focus,.runestone-sphinx button.list-group-item:hover{background-color:#f5f5f5;color:#555;text-decoration:none}.ptx-runestone-container button.list-group-item,.runestone-sphinx button.list-group-item{text-align:left;width:100%}.ptx-runestone-container .list-group-item-success,.runestone-sphinx .list-group-item-success{background-color:#dff0d8;color:#3c763d}.ptx-runestone-container a.list-group-item-success,.ptx-runestone-container button.list-group-item-success,.runestone-sphinx a.list-group-item-success,.runestone-sphinx button.list-group-item-success{color:#3c763d}.ptx-runestone-container a.list-group-item-success .list-group-item-heading,.ptx-runestone-container button.list-group-item-success .list-group-item-heading,.runestone-sphinx a.list-group-item-success .list-group-item-heading,.runestone-sphinx button.list-group-item-success .list-group-item-heading{color:inherit}.ptx-runestone-container a.list-group-item-success:focus,.ptx-runestone-container a.list-group-item-success:hover,.ptx-runestone-container button.list-group-item-success:focus,.ptx-runestone-container button.list-group-item-success:hover,.runestone-sphinx a.list-group-item-success:focus,.runestone-sphinx a.list-group-item-success:hover,.runestone-sphinx button.list-group-item-success:focus,.runestone-sphinx button.list-group-item-success:hover{background-color:#d0e9c6;color:#3c763d}.ptx-runestone-container a.list-group-item-success.active,.ptx-runestone-container a.list-group-item-success.active:focus,.ptx-runestone-container a.list-group-item-success.active:hover,.ptx-runestone-container button.list-group-item-success.active,.ptx-runestone-container button.list-group-item-success.active:focus,.ptx-runestone-container button.list-group-item-success.active:hover,.runestone-sphinx a.list-group-item-success.active,.runestone-sphinx a.list-group-item-success.active:focus,.runestone-sphinx a.list-group-item-success.active:hover,.runestone-sphinx button.list-group-item-success.active,.runestone-sphinx button.list-group-item-success.active:focus,.runestone-sphinx button.list-group-item-success.active:hover{background-color:#3c763d;border-color:#3c763d;color:#fff}.ptx-runestone-container .list-group-item-info,.runestone-sphinx .list-group-item-info{background-color:#d9edf7;color:#31708f}.ptx-runestone-container a.list-group-item-info,.ptx-runestone-container button.list-group-item-info,.runestone-sphinx a.list-group-item-info,.runestone-sphinx button.list-group-item-info{color:#31708f}.ptx-runestone-container a.list-group-item-info .list-group-item-heading,.ptx-runestone-container button.list-group-item-info .list-group-item-heading,.runestone-sphinx a.list-group-item-info .list-group-item-heading,.runestone-sphinx button.list-group-item-info .list-group-item-heading{color:inherit}.ptx-runestone-container a.list-group-item-info:focus,.ptx-runestone-container a.list-group-item-info:hover,.ptx-runestone-container button.list-group-item-info:focus,.ptx-runestone-container button.list-group-item-info:hover,.runestone-sphinx a.list-group-item-info:focus,.runestone-sphinx a.list-group-item-info:hover,.runestone-sphinx button.list-group-item-info:focus,.runestone-sphinx button.list-group-item-info:hover{background-color:#c4e3f3;color:#31708f}.ptx-runestone-container a.list-group-item-info.active,.ptx-runestone-container a.list-group-item-info.active:focus,.ptx-runestone-container a.list-group-item-info.active:hover,.ptx-runestone-container button.list-group-item-info.active,.ptx-runestone-container button.list-group-item-info.active:focus,.ptx-runestone-container button.list-group-item-info.active:hover,.runestone-sphinx a.list-group-item-info.active,.runestone-sphinx a.list-group-item-info.active:focus,.runestone-sphinx a.list-group-item-info.active:hover,.runestone-sphinx button.list-group-item-info.active,.runestone-sphinx button.list-group-item-info.active:focus,.runestone-sphinx button.list-group-item-info.active:hover{background-color:#31708f;border-color:#31708f;color:#fff}.ptx-runestone-container .list-group-item-warning,.runestone-sphinx .list-group-item-warning{background-color:#fcf8e3;color:#8a6d3b}.ptx-runestone-container a.list-group-item-warning,.ptx-runestone-container button.list-group-item-warning,.runestone-sphinx a.list-group-item-warning,.runestone-sphinx button.list-group-item-warning{color:#8a6d3b}.ptx-runestone-container a.list-group-item-warning .list-group-item-heading,.ptx-runestone-container button.list-group-item-warning .list-group-item-heading,.runestone-sphinx a.list-group-item-warning .list-group-item-heading,.runestone-sphinx button.list-group-item-warning .list-group-item-heading{color:inherit}.ptx-runestone-container a.list-group-item-warning:focus,.ptx-runestone-container a.list-group-item-warning:hover,.ptx-runestone-container button.list-group-item-warning:focus,.ptx-runestone-container button.list-group-item-warning:hover,.runestone-sphinx a.list-group-item-warning:focus,.runestone-sphinx a.list-group-item-warning:hover,.runestone-sphinx button.list-group-item-warning:focus,.runestone-sphinx button.list-group-item-warning:hover{background-color:#faf2cc;color:#8a6d3b}.ptx-runestone-container a.list-group-item-warning.active,.ptx-runestone-container a.list-group-item-warning.active:focus,.ptx-runestone-container a.list-group-item-warning.active:hover,.ptx-runestone-container button.list-group-item-warning.active,.ptx-runestone-container button.list-group-item-warning.active:focus,.ptx-runestone-container button.list-group-item-warning.active:hover,.runestone-sphinx a.list-group-item-warning.active,.runestone-sphinx a.list-group-item-warning.active:focus,.runestone-sphinx a.list-group-item-warning.active:hover,.runestone-sphinx button.list-group-item-warning.active,.runestone-sphinx button.list-group-item-warning.active:focus,.runestone-sphinx button.list-group-item-warning.active:hover{background-color:#8a6d3b;border-color:#8a6d3b;color:#fff}.ptx-runestone-container .list-group-item-danger,.runestone-sphinx .list-group-item-danger{background-color:#f2dede;color:#a94442}.ptx-runestone-container a.list-group-item-danger,.ptx-runestone-container button.list-group-item-danger,.runestone-sphinx a.list-group-item-danger,.runestone-sphinx button.list-group-item-danger{color:#a94442}.ptx-runestone-container a.list-group-item-danger .list-group-item-heading,.ptx-runestone-container button.list-group-item-danger .list-group-item-heading,.runestone-sphinx a.list-group-item-danger .list-group-item-heading,.runestone-sphinx button.list-group-item-danger .list-group-item-heading{color:inherit}.ptx-runestone-container a.list-group-item-danger:focus,.ptx-runestone-container a.list-group-item-danger:hover,.ptx-runestone-container button.list-group-item-danger:focus,.ptx-runestone-container button.list-group-item-danger:hover,.runestone-sphinx a.list-group-item-danger:focus,.runestone-sphinx a.list-group-item-danger:hover,.runestone-sphinx button.list-group-item-danger:focus,.runestone-sphinx button.list-group-item-danger:hover{background-color:#ebcccc;color:#a94442}.ptx-runestone-container a.list-group-item-danger.active,.ptx-runestone-container a.list-group-item-danger.active:focus,.ptx-runestone-container a.list-group-item-danger.active:hover,.ptx-runestone-container button.list-group-item-danger.active,.ptx-runestone-container button.list-group-item-danger.active:focus,.ptx-runestone-container button.list-group-item-danger.active:hover,.runestone-sphinx a.list-group-item-danger.active,.runestone-sphinx a.list-group-item-danger.active:focus,.runestone-sphinx a.list-group-item-danger.active:hover,.runestone-sphinx button.list-group-item-danger.active,.runestone-sphinx button.list-group-item-danger.active:focus,.runestone-sphinx button.list-group-item-danger.active:hover{background-color:#a94442;border-color:#a94442;color:#fff}.ptx-runestone-container .list-group-item-heading,.runestone-sphinx .list-group-item-heading{margin-bottom:5px;margin-top:0}.ptx-runestone-container .list-group-item-text,.runestone-sphinx .list-group-item-text{line-height:1.3;margin-bottom:0}.ptx-runestone-container .panel,.runestone-sphinx .panel{background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05);margin-bottom:20px}.ptx-runestone-container .panel-body,.runestone-sphinx .panel-body{padding:15px}.ptx-runestone-container .panel-heading,.runestone-sphinx .panel-heading{border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px;padding:10px 15px}.ptx-runestone-container .panel-heading>.dropdown .dropdown-toggle,.runestone-sphinx .panel-heading>.dropdown .dropdown-toggle{color:inherit}.ptx-runestone-container .panel-title,.runestone-sphinx .panel-title{color:inherit;font-size:16px;margin-bottom:0;margin-top:0}.ptx-runestone-container .panel-title>.small,.ptx-runestone-container .panel-title>.small>a,.ptx-runestone-container .panel-title>a,.ptx-runestone-container .panel-title>small,.ptx-runestone-container .panel-title>small>a,.runestone-sphinx .panel-title>.small,.runestone-sphinx .panel-title>.small>a,.runestone-sphinx .panel-title>a,.runestone-sphinx .panel-title>small,.runestone-sphinx .panel-title>small>a{color:inherit}.ptx-runestone-container .panel-footer,.runestone-sphinx .panel-footer{background-color:#f5f5f5;border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-top:1px solid #ddd;padding:10px 15px}.ptx-runestone-container .panel>.list-group,.ptx-runestone-container .panel>.panel-collapse>.list-group,.runestone-sphinx .panel>.list-group,.runestone-sphinx .panel>.panel-collapse>.list-group{margin-bottom:0}.ptx-runestone-container .panel>.list-group .list-group-item,.ptx-runestone-container .panel>.panel-collapse>.list-group .list-group-item,.runestone-sphinx .panel>.list-group .list-group-item,.runestone-sphinx .panel>.panel-collapse>.list-group .list-group-item{border-radius:0;border-width:1px 0}.ptx-runestone-container .panel>.list-group:first-child .list-group-item:first-child,.ptx-runestone-container .panel>.panel-collapse>.list-group:first-child .list-group-item:first-child,.runestone-sphinx .panel>.list-group:first-child .list-group-item:first-child,.runestone-sphinx .panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.ptx-runestone-container .panel>.list-group:last-child .list-group-item:last-child,.ptx-runestone-container .panel>.panel-collapse>.list-group:last-child .list-group-item:last-child,.runestone-sphinx .panel>.list-group:last-child .list-group-item:last-child,.runestone-sphinx .panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.ptx-runestone-container .panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child,.runestone-sphinx .panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-left-radius:0;border-top-right-radius:0}.ptx-runestone-container .list-group+.panel-footer,.ptx-runestone-container .panel-heading+.list-group .list-group-item:first-child,.runestone-sphinx .list-group+.panel-footer,.runestone-sphinx .panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.ptx-runestone-container .panel>.panel-collapse>.table,.ptx-runestone-container .panel>.table,.ptx-runestone-container .panel>.table-responsive>.table,.runestone-sphinx .panel>.panel-collapse>.table,.runestone-sphinx .panel>.table,.runestone-sphinx .panel>.table-responsive>.table{margin-bottom:0}.ptx-runestone-container .panel>.panel-collapse>.table caption,.ptx-runestone-container .panel>.table caption,.ptx-runestone-container .panel>.table-responsive>.table caption,.runestone-sphinx .panel>.panel-collapse>.table caption,.runestone-sphinx .panel>.table caption,.runestone-sphinx .panel>.table-responsive>.table caption{padding-left:15px;padding-right:15px}.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.ptx-runestone-container .panel>.table:first-child,.ptx-runestone-container .panel>.table:first-child>tbody:first-child>tr:first-child,.ptx-runestone-container .panel>.table:first-child>thead:first-child>tr:first-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.runestone-sphinx .panel>.table:first-child,.runestone-sphinx .panel>.table:first-child>tbody:first-child>tr:first-child,.runestone-sphinx .panel>.table:first-child>thead:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.ptx-runestone-container .panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.ptx-runestone-container .panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.ptx-runestone-container .panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.ptx-runestone-container .panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.runestone-sphinx .panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.runestone-sphinx .panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.runestone-sphinx .panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.runestone-sphinx .panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.ptx-runestone-container .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.ptx-runestone-container .panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.ptx-runestone-container .panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.ptx-runestone-container .panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.ptx-runestone-container .panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.runestone-sphinx .panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.runestone-sphinx .panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.runestone-sphinx .panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.runestone-sphinx .panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.runestone-sphinx .panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.ptx-runestone-container .panel>.table:last-child,.ptx-runestone-container .panel>.table:last-child>tbody:last-child>tr:last-child,.ptx-runestone-container .panel>.table:last-child>tfoot:last-child>tr:last-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.runestone-sphinx .panel>.table:last-child,.runestone-sphinx .panel>.table:last-child>tbody:last-child>tr:last-child,.runestone-sphinx .panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:3px;border-bottom-right-radius:3px}.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.ptx-runestone-container .panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.ptx-runestone-container .panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.ptx-runestone-container .panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.ptx-runestone-container .panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.runestone-sphinx .panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.runestone-sphinx .panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.runestone-sphinx .panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.runestone-sphinx .panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.ptx-runestone-container .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.ptx-runestone-container .panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.ptx-runestone-container .panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.ptx-runestone-container .panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.ptx-runestone-container .panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.runestone-sphinx .panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.runestone-sphinx .panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.runestone-sphinx .panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.runestone-sphinx .panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.runestone-sphinx .panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.ptx-runestone-container .panel>.panel-body+.table,.ptx-runestone-container .panel>.panel-body+.table-responsive,.ptx-runestone-container .panel>.table+.panel-body,.ptx-runestone-container .panel>.table-responsive+.panel-body,.runestone-sphinx .panel>.panel-body+.table,.runestone-sphinx .panel>.panel-body+.table-responsive,.runestone-sphinx .panel>.table+.panel-body,.runestone-sphinx .panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.ptx-runestone-container .panel>.table>tbody:first-child>tr:first-child td,.ptx-runestone-container .panel>.table>tbody:first-child>tr:first-child th,.runestone-sphinx .panel>.table>tbody:first-child>tr:first-child td,.runestone-sphinx .panel>.table>tbody:first-child>tr:first-child th{border-top:0}.ptx-runestone-container .panel>.table-bordered,.ptx-runestone-container .panel>.table-responsive>.table-bordered,.runestone-sphinx .panel>.table-bordered,.runestone-sphinx .panel>.table-responsive>.table-bordered{border:0}.ptx-runestone-container .panel>.table-bordered>tbody>tr>td:first-child,.ptx-runestone-container .panel>.table-bordered>tbody>tr>th:first-child,.ptx-runestone-container .panel>.table-bordered>tfoot>tr>td:first-child,.ptx-runestone-container .panel>.table-bordered>tfoot>tr>th:first-child,.ptx-runestone-container .panel>.table-bordered>thead>tr>td:first-child,.ptx-runestone-container .panel>.table-bordered>thead>tr>th:first-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.runestone-sphinx .panel>.table-bordered>tbody>tr>td:first-child,.runestone-sphinx .panel>.table-bordered>tbody>tr>th:first-child,.runestone-sphinx .panel>.table-bordered>tfoot>tr>td:first-child,.runestone-sphinx .panel>.table-bordered>tfoot>tr>th:first-child,.runestone-sphinx .panel>.table-bordered>thead>tr>td:first-child,.runestone-sphinx .panel>.table-bordered>thead>tr>th:first-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.ptx-runestone-container .panel>.table-bordered>tbody>tr>td:last-child,.ptx-runestone-container .panel>.table-bordered>tbody>tr>th:last-child,.ptx-runestone-container .panel>.table-bordered>tfoot>tr>td:last-child,.ptx-runestone-container .panel>.table-bordered>tfoot>tr>th:last-child,.ptx-runestone-container .panel>.table-bordered>thead>tr>td:last-child,.ptx-runestone-container .panel>.table-bordered>thead>tr>th:last-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.ptx-runestone-container .panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.runestone-sphinx .panel>.table-bordered>tbody>tr>td:last-child,.runestone-sphinx .panel>.table-bordered>tbody>tr>th:last-child,.runestone-sphinx .panel>.table-bordered>tfoot>tr>td:last-child,.runestone-sphinx .panel>.table-bordered>tfoot>tr>th:last-child,.runestone-sphinx .panel>.table-bordered>thead>tr>td:last-child,.runestone-sphinx .panel>.table-bordered>thead>tr>th:last-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.runestone-sphinx .panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.ptx-runestone-container .panel>.table-bordered>tbody>tr:first-child>td,.ptx-runestone-container .panel>.table-bordered>tbody>tr:first-child>th,.ptx-runestone-container .panel>.table-bordered>tbody>tr:last-child>td,.ptx-runestone-container .panel>.table-bordered>tbody>tr:last-child>th,.ptx-runestone-container .panel>.table-bordered>tfoot>tr:last-child>td,.ptx-runestone-container .panel>.table-bordered>tfoot>tr:last-child>th,.ptx-runestone-container .panel>.table-bordered>thead>tr:first-child>td,.ptx-runestone-container .panel>.table-bordered>thead>tr:first-child>th,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.ptx-runestone-container .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.ptx-runestone-container .panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.ptx-runestone-container .panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.runestone-sphinx .panel>.table-bordered>tbody>tr:first-child>td,.runestone-sphinx .panel>.table-bordered>tbody>tr:first-child>th,.runestone-sphinx .panel>.table-bordered>tbody>tr:last-child>td,.runestone-sphinx .panel>.table-bordered>tbody>tr:last-child>th,.runestone-sphinx .panel>.table-bordered>tfoot>tr:last-child>td,.runestone-sphinx .panel>.table-bordered>tfoot>tr:last-child>th,.runestone-sphinx .panel>.table-bordered>thead>tr:first-child>td,.runestone-sphinx .panel>.table-bordered>thead>tr:first-child>th,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.runestone-sphinx .panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.runestone-sphinx .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.runestone-sphinx .panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.runestone-sphinx .panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.runestone-sphinx .panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.ptx-runestone-container .panel>.table-responsive,.runestone-sphinx .panel>.table-responsive{border:0;margin-bottom:0}.ptx-runestone-container .panel-group,.runestone-sphinx .panel-group{margin-bottom:20px}.ptx-runestone-container .panel-group .panel,.runestone-sphinx .panel-group .panel{border-radius:4px;margin-bottom:0}.ptx-runestone-container .panel-group .panel+.panel,.runestone-sphinx .panel-group .panel+.panel{margin-top:5px}.ptx-runestone-container .panel-group .panel-heading,.runestone-sphinx .panel-group .panel-heading{border-bottom:0}.ptx-runestone-container .panel-group .panel-heading+.panel-collapse>.list-group,.ptx-runestone-container .panel-group .panel-heading+.panel-collapse>.panel-body,.runestone-sphinx .panel-group .panel-heading+.panel-collapse>.list-group,.runestone-sphinx .panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.ptx-runestone-container .panel-group .panel-footer,.runestone-sphinx .panel-group .panel-footer{border-top:0}.ptx-runestone-container .panel-group .panel-footer+.panel-collapse .panel-body,.runestone-sphinx .panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.ptx-runestone-container .panel-default,.runestone-sphinx .panel-default{border-color:#ddd}.ptx-runestone-container .panel-default>.panel-heading,.runestone-sphinx .panel-default>.panel-heading{background-color:#f5f5f5;border-color:#ddd;color:#333}.ptx-runestone-container .panel-default>.panel-heading+.panel-collapse>.panel-body,.runestone-sphinx .panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.ptx-runestone-container .panel-default>.panel-heading .badge,.runestone-sphinx .panel-default>.panel-heading .badge{background-color:#333;color:#f5f5f5}.ptx-runestone-container .panel-default>.panel-footer+.panel-collapse>.panel-body,.runestone-sphinx .panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.ptx-runestone-container .panel-primary,.runestone-sphinx .panel-primary{border-color:#337ab7}.ptx-runestone-container .panel-primary>.panel-heading,.runestone-sphinx .panel-primary>.panel-heading{background-color:#337ab7;border-color:#337ab7;color:#fff}.ptx-runestone-container .panel-primary>.panel-heading+.panel-collapse>.panel-body,.runestone-sphinx .panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.ptx-runestone-container .panel-primary>.panel-heading .badge,.runestone-sphinx .panel-primary>.panel-heading .badge{background-color:#fff;color:#337ab7}.ptx-runestone-container .panel-primary>.panel-footer+.panel-collapse>.panel-body,.runestone-sphinx .panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.ptx-runestone-container .panel-success,.runestone-sphinx .panel-success{border-color:#d6e9c6}.ptx-runestone-container .panel-success>.panel-heading,.runestone-sphinx .panel-success>.panel-heading{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.ptx-runestone-container .panel-success>.panel-heading+.panel-collapse>.panel-body,.runestone-sphinx .panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.ptx-runestone-container .panel-success>.panel-heading .badge,.runestone-sphinx .panel-success>.panel-heading .badge{background-color:#3c763d;color:#dff0d8}.ptx-runestone-container .panel-success>.panel-footer+.panel-collapse>.panel-body,.runestone-sphinx .panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.ptx-runestone-container .panel-info,.runestone-sphinx .panel-info{border-color:#bce8f1}.ptx-runestone-container .panel-info>.panel-heading,.runestone-sphinx .panel-info>.panel-heading{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.ptx-runestone-container .panel-info>.panel-heading+.panel-collapse>.panel-body,.runestone-sphinx .panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.ptx-runestone-container .panel-info>.panel-heading .badge,.runestone-sphinx .panel-info>.panel-heading .badge{background-color:#31708f;color:#d9edf7}.ptx-runestone-container .panel-info>.panel-footer+.panel-collapse>.panel-body,.runestone-sphinx .panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.ptx-runestone-container .panel-warning,.runestone-sphinx .panel-warning{border-color:#faebcc}.ptx-runestone-container .panel-warning>.panel-heading,.runestone-sphinx .panel-warning>.panel-heading{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.ptx-runestone-container .panel-warning>.panel-heading+.panel-collapse>.panel-body,.runestone-sphinx .panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.ptx-runestone-container .panel-warning>.panel-heading .badge,.runestone-sphinx .panel-warning>.panel-heading .badge{background-color:#8a6d3b;color:#fcf8e3}.ptx-runestone-container .panel-warning>.panel-footer+.panel-collapse>.panel-body,.runestone-sphinx .panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.ptx-runestone-container .panel-danger,.runestone-sphinx .panel-danger{border-color:#ebccd1}.ptx-runestone-container .panel-danger>.panel-heading,.runestone-sphinx .panel-danger>.panel-heading{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.ptx-runestone-container .panel-danger>.panel-heading+.panel-collapse>.panel-body,.runestone-sphinx .panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.ptx-runestone-container .panel-danger>.panel-heading .badge,.runestone-sphinx .panel-danger>.panel-heading .badge{background-color:#a94442;color:#f2dede}.ptx-runestone-container .panel-danger>.panel-footer+.panel-collapse>.panel-body,.runestone-sphinx .panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.ptx-runestone-container .embed-responsive,.runestone-sphinx .embed-responsive{display:block;height:0;overflow:hidden;padding:0;position:relative}.ptx-runestone-container .embed-responsive .embed-responsive-item,.ptx-runestone-container .embed-responsive embed,.ptx-runestone-container .embed-responsive iframe,.ptx-runestone-container .embed-responsive object,.ptx-runestone-container .embed-responsive video,.runestone-sphinx .embed-responsive .embed-responsive-item,.runestone-sphinx .embed-responsive embed,.runestone-sphinx .embed-responsive iframe,.runestone-sphinx .embed-responsive object,.runestone-sphinx .embed-responsive video{border:0;bottom:0;height:100%;left:0;position:absolute;top:0;width:100%}.ptx-runestone-container .embed-responsive-16by9,.runestone-sphinx .embed-responsive-16by9{padding-bottom:56.25%}.ptx-runestone-container .embed-responsive-4by3,.runestone-sphinx .embed-responsive-4by3{padding-bottom:75%}.ptx-runestone-container .well,.runestone-sphinx .well{background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05);margin-bottom:20px;min-height:20px;padding:19px}.ptx-runestone-container .well blockquote,.runestone-sphinx .well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.ptx-runestone-container .well-lg,.runestone-sphinx .well-lg{border-radius:6px;padding:24px}.ptx-runestone-container .well-sm,.runestone-sphinx .well-sm{border-radius:3px;padding:9px}.ptx-runestone-container .close,.runestone-sphinx .close{color:#000;filter:alpha(opacity=20);float:right;font-size:21px;font-weight:700;line-height:1;opacity:.2;text-shadow:0 1px 0 #fff}.ptx-runestone-container .close:focus,.ptx-runestone-container .close:hover,.runestone-sphinx .close:focus,.runestone-sphinx .close:hover{color:#000;cursor:pointer;filter:alpha(opacity=50);opacity:.5;text-decoration:none}.ptx-runestone-container button.close,.runestone-sphinx button.close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;cursor:pointer;padding:0}.ptx-runestone-container .modal-open,.runestone-sphinx .modal-open{overflow:hidden}.ptx-runestone-container .modal,.runestone-sphinx .modal{-webkit-overflow-scrolling:touch;bottom:0;display:none;left:0;outline:0;overflow:hidden;position:fixed;right:0;top:0;z-index:1050}.ptx-runestone-container .modal.fade .modal-dialog,.runestone-sphinx .modal.fade .modal-dialog{-webkit-transform:translateY(-25%);-ms-transform:translateY(-25%);-o-transform:translateY(-25%);transform:translateY(-25%);-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out,-o-transform .3s ease-out}.ptx-runestone-container .modal.in .modal-dialog,.runestone-sphinx .modal.in .modal-dialog{-webkit-transform:translate(0);-ms-transform:translate(0);-o-transform:translate(0);transform:translate(0)}.ptx-runestone-container .modal-open .modal,.runestone-sphinx .modal-open .modal{overflow-x:hidden;overflow-y:auto}.ptx-runestone-container .modal-dialog,.runestone-sphinx .modal-dialog{margin:10px;position:relative;width:auto}.ptx-runestone-container .modal-content,.runestone-sphinx .modal-content{background-clip:padding-box;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);outline:0;position:relative}.ptx-runestone-container .modal-backdrop,.runestone-sphinx .modal-backdrop{background-color:#000;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1040}.ptx-runestone-container .modal-backdrop.fade,.runestone-sphinx .modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.ptx-runestone-container .modal-backdrop.in,.runestone-sphinx .modal-backdrop.in{filter:alpha(opacity=50);opacity:.5}.ptx-runestone-container .modal-header,.runestone-sphinx .modal-header{border-bottom:1px solid #e5e5e5;padding:15px}.ptx-runestone-container .modal-header .close,.runestone-sphinx .modal-header .close{margin-top:-2px}.ptx-runestone-container .modal-title,.runestone-sphinx .modal-title{line-height:1.42857143;margin:0}.ptx-runestone-container .modal-body,.runestone-sphinx .modal-body{padding:15px;position:relative}.ptx-runestone-container .modal-footer,.runestone-sphinx .modal-footer{border-top:1px solid #e5e5e5;padding:15px;text-align:right}.ptx-runestone-container .modal-footer .btn+.btn,.runestone-sphinx .modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.ptx-runestone-container .modal-footer .btn-group .btn+.btn,.runestone-sphinx .modal-footer .btn-group .btn+.btn{margin-left:-1px}.ptx-runestone-container .modal-footer .btn-block+.btn-block,.runestone-sphinx .modal-footer .btn-block+.btn-block{margin-left:0}.ptx-runestone-container .modal-scrollbar-measure,.runestone-sphinx .modal-scrollbar-measure{height:50px;overflow:scroll;position:absolute;top:-9999px;width:50px}@media (min-width:768px){.ptx-runestone-container .modal-dialog,.runestone-sphinx .modal-dialog{margin:30px auto;width:600px}.ptx-runestone-container .modal-content,.runestone-sphinx .modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.ptx-runestone-container .modal-sm,.runestone-sphinx .modal-sm{width:300px}}@media (min-width:992px){.ptx-runestone-container .modal-lg,.runestone-sphinx .modal-lg{width:900px}}.ptx-runestone-container .tooltip,.runestone-sphinx .tooltip{word-wrap:normal;display:block;filter:alpha(opacity=0);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:12px;font-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.42857143;opacity:0;position:absolute;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;z-index:1070}.ptx-runestone-container .tooltip.in,.runestone-sphinx .tooltip.in{filter:alpha(opacity=90);opacity:.9}.ptx-runestone-container .tooltip.top,.runestone-sphinx .tooltip.top{margin-top:-3px;padding:5px 0}.ptx-runestone-container .tooltip.right,.runestone-sphinx .tooltip.right{margin-left:3px;padding:0 5px}.ptx-runestone-container .tooltip.bottom,.runestone-sphinx .tooltip.bottom{margin-top:3px;padding:5px 0}.ptx-runestone-container .tooltip.left,.runestone-sphinx .tooltip.left{margin-left:-3px;padding:0 5px}.ptx-runestone-container .tooltip.top .tooltip-arrow,.runestone-sphinx .tooltip.top .tooltip-arrow{border-top-color:#000;border-width:5px 5px 0;bottom:0;left:50%;margin-left:-5px}.ptx-runestone-container .tooltip.top-left .tooltip-arrow,.runestone-sphinx .tooltip.top-left .tooltip-arrow{border-top-color:#000;border-width:5px 5px 0;bottom:0;margin-bottom:-5px;right:5px}.ptx-runestone-container .tooltip.top-right .tooltip-arrow,.runestone-sphinx .tooltip.top-right .tooltip-arrow{border-top-color:#000;border-width:5px 5px 0;bottom:0;left:5px;margin-bottom:-5px}.ptx-runestone-container .tooltip.right .tooltip-arrow,.runestone-sphinx .tooltip.right .tooltip-arrow{border-right-color:#000;border-width:5px 5px 5px 0;left:0;margin-top:-5px;top:50%}.ptx-runestone-container .tooltip.left .tooltip-arrow,.runestone-sphinx .tooltip.left .tooltip-arrow{border-left-color:#000;border-width:5px 0 5px 5px;margin-top:-5px;right:0;top:50%}.ptx-runestone-container .tooltip.bottom .tooltip-arrow,.runestone-sphinx .tooltip.bottom .tooltip-arrow{border-bottom-color:#000;border-width:0 5px 5px;left:50%;margin-left:-5px;top:0}.ptx-runestone-container .tooltip.bottom-left .tooltip-arrow,.runestone-sphinx .tooltip.bottom-left .tooltip-arrow{border-bottom-color:#000;border-width:0 5px 5px;margin-top:-5px;right:5px;top:0}.ptx-runestone-container .tooltip.bottom-right .tooltip-arrow,.runestone-sphinx .tooltip.bottom-right .tooltip-arrow{border-bottom-color:#000;border-width:0 5px 5px;left:5px;margin-top:-5px;top:0}.ptx-runestone-container .tooltip-inner,.runestone-sphinx .tooltip-inner{background-color:#000;border-radius:4px;color:#fff;max-width:200px;padding:3px 8px;text-align:center}.ptx-runestone-container .tooltip-arrow,.runestone-sphinx .tooltip-arrow{border-color:transparent;border-style:solid;height:0;position:absolute;width:0}.ptx-runestone-container .popover,.runestone-sphinx .popover{word-wrap:normal;background-clip:padding-box;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);display:none;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;left:0;letter-spacing:normal;line-break:auto;line-height:1.42857143;max-width:276px;padding:1px;position:absolute;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;top:0;white-space:normal;word-break:normal;word-spacing:normal;z-index:1060}.ptx-runestone-container .popover.top,.runestone-sphinx .popover.top{margin-top:-10px}.ptx-runestone-container .popover.right,.runestone-sphinx .popover.right{margin-left:10px}.ptx-runestone-container .popover.bottom,.runestone-sphinx .popover.bottom{margin-top:10px}.ptx-runestone-container .popover.left,.runestone-sphinx .popover.left{margin-left:-10px}.ptx-runestone-container .popover>.arrow,.runestone-sphinx .popover>.arrow{border-width:11px}.ptx-runestone-container .popover>.arrow,.ptx-runestone-container .popover>.arrow:after,.runestone-sphinx .popover>.arrow,.runestone-sphinx .popover>.arrow:after{border-color:transparent;border-style:solid;display:block;height:0;position:absolute;width:0}.ptx-runestone-container .popover>.arrow:after,.runestone-sphinx .popover>.arrow:after{border-width:10px;content:""}.ptx-runestone-container .popover.top>.arrow,.runestone-sphinx .popover.top>.arrow{border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px;left:50%;margin-left:-11px}.ptx-runestone-container .popover.top>.arrow:after,.runestone-sphinx .popover.top>.arrow:after{border-bottom-width:0;border-top-color:#fff;bottom:1px;content:" ";margin-left:-10px}.ptx-runestone-container .popover.right>.arrow,.runestone-sphinx .popover.right>.arrow{border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25);left:-11px;margin-top:-11px;top:50%}.ptx-runestone-container .popover.right>.arrow:after,.runestone-sphinx .popover.right>.arrow:after{border-left-width:0;border-right-color:#fff;bottom:-10px;content:" ";left:1px}.ptx-runestone-container .popover.bottom>.arrow,.runestone-sphinx .popover.bottom>.arrow{border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);border-top-width:0;left:50%;margin-left:-11px;top:-11px}.ptx-runestone-container .popover.bottom>.arrow:after,.runestone-sphinx .popover.bottom>.arrow:after{border-bottom-color:#fff;border-top-width:0;content:" ";margin-left:-10px;top:1px}.ptx-runestone-container .popover.left>.arrow,.runestone-sphinx .popover.left>.arrow{border-left-color:#999;border-left-color:rgba(0,0,0,.25);border-right-width:0;margin-top:-11px;right:-11px;top:50%}.ptx-runestone-container .popover.left>.arrow:after,.runestone-sphinx .popover.left>.arrow:after{border-left-color:#fff;border-right-width:0;bottom:-10px;content:" ";right:1px}.ptx-runestone-container .popover-title,.runestone-sphinx .popover-title{background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0;font-size:14px;margin:0;padding:8px 14px}.ptx-runestone-container .popover-content,.runestone-sphinx .popover-content{padding:9px 14px}.ptx-runestone-container .carousel,.runestone-sphinx .carousel{position:relative}.ptx-runestone-container .carousel-inner,.runestone-sphinx .carousel-inner{overflow:hidden;position:relative;width:100%}.ptx-runestone-container .carousel-inner>.item,.runestone-sphinx .carousel-inner>.item{display:none;position:relative;-webkit-transition:left .6s ease-in-out;-o-transition:left .6s ease-in-out;transition:left .6s ease-in-out}.ptx-runestone-container .carousel-inner>.item>a>img,.ptx-runestone-container .carousel-inner>.item>img,.runestone-sphinx .carousel-inner>.item>a>img,.runestone-sphinx .carousel-inner>.item>img{line-height:1}@media (-webkit-transform-3d),(transform-3d){.ptx-runestone-container .carousel-inner>.item,.runestone-sphinx .carousel-inner>.item{-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px;-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out,-o-transform .6s ease-in-out}.ptx-runestone-container .carousel-inner>.item.active.right,.ptx-runestone-container .carousel-inner>.item.next,.runestone-sphinx .carousel-inner>.item.active.right,.runestone-sphinx .carousel-inner>.item.next{left:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.ptx-runestone-container .carousel-inner>.item.active.left,.ptx-runestone-container .carousel-inner>.item.prev,.runestone-sphinx .carousel-inner>.item.active.left,.runestone-sphinx .carousel-inner>.item.prev{left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.ptx-runestone-container .carousel-inner>.item.active,.ptx-runestone-container .carousel-inner>.item.next.left,.ptx-runestone-container .carousel-inner>.item.prev.right,.runestone-sphinx .carousel-inner>.item.active,.runestone-sphinx .carousel-inner>.item.next.left,.runestone-sphinx .carousel-inner>.item.prev.right{left:0;-webkit-transform:translateZ(0);transform:translateZ(0)}}.ptx-runestone-container .carousel-inner>.active,.ptx-runestone-container .carousel-inner>.next,.ptx-runestone-container .carousel-inner>.prev,.runestone-sphinx .carousel-inner>.active,.runestone-sphinx .carousel-inner>.next,.runestone-sphinx .carousel-inner>.prev{display:block}.ptx-runestone-container .carousel-inner>.active,.runestone-sphinx .carousel-inner>.active{left:0}.ptx-runestone-container .carousel-inner>.next,.ptx-runestone-container .carousel-inner>.prev,.runestone-sphinx .carousel-inner>.next,.runestone-sphinx .carousel-inner>.prev{position:absolute;top:0;width:100%}.ptx-runestone-container .carousel-inner>.next,.runestone-sphinx .carousel-inner>.next{left:100%}.ptx-runestone-container .carousel-inner>.prev,.runestone-sphinx .carousel-inner>.prev{left:-100%}.ptx-runestone-container .carousel-inner>.next.left,.ptx-runestone-container .carousel-inner>.prev.right,.runestone-sphinx .carousel-inner>.next.left,.runestone-sphinx .carousel-inner>.prev.right{left:0}.ptx-runestone-container .carousel-inner>.active.left,.runestone-sphinx .carousel-inner>.active.left{left:-100%}.ptx-runestone-container .carousel-inner>.active.right,.runestone-sphinx .carousel-inner>.active.right{left:100%}.ptx-runestone-container .carousel-control,.runestone-sphinx .carousel-control{background-color:transparent;bottom:0;color:#fff;filter:alpha(opacity=50);font-size:20px;left:0;opacity:.5;position:absolute;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);top:0;width:15%}.ptx-runestone-container .carousel-control.left,.runestone-sphinx .carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,transparent 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:linear-gradient(90deg,rgba(0,0,0,.5) 0,transparent);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#80000000",endColorstr="#00000000",GradientType=1)}.ptx-runestone-container .carousel-control.right,.runestone-sphinx .carousel-control.right{background-image:-webkit-linear-gradient(left,transparent,rgba(0,0,0,.5));background-image:-o-linear-gradient(left,transparent 0,rgba(0,0,0,.5) 100%);background-image:-webkit-gradient(linear,left top,right top,from(transparent),to(rgba(0,0,0,.5)));background-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.5));background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#00000000",endColorstr="#80000000",GradientType=1);left:auto;right:0}.ptx-runestone-container .carousel-control:focus,.ptx-runestone-container .carousel-control:hover,.runestone-sphinx .carousel-control:focus,.runestone-sphinx .carousel-control:hover{color:#fff;filter:alpha(opacity=90);opacity:.9;outline:0;text-decoration:none}.ptx-runestone-container .carousel-control .glyphicon-chevron-left,.ptx-runestone-container .carousel-control .glyphicon-chevron-right,.ptx-runestone-container .carousel-control .icon-next,.ptx-runestone-container .carousel-control .icon-prev,.runestone-sphinx .carousel-control .glyphicon-chevron-left,.runestone-sphinx .carousel-control .glyphicon-chevron-right,.runestone-sphinx .carousel-control .icon-next,.runestone-sphinx .carousel-control .icon-prev{display:inline-block;margin-top:-10px;position:absolute;top:50%;z-index:5}.ptx-runestone-container .carousel-control .glyphicon-chevron-left,.ptx-runestone-container .carousel-control .icon-prev,.runestone-sphinx .carousel-control .glyphicon-chevron-left,.runestone-sphinx .carousel-control .icon-prev{left:50%;margin-left:-10px}.ptx-runestone-container .carousel-control .glyphicon-chevron-right,.ptx-runestone-container .carousel-control .icon-next,.runestone-sphinx .carousel-control .glyphicon-chevron-right,.runestone-sphinx .carousel-control .icon-next{margin-right:-10px;right:50%}.ptx-runestone-container .carousel-control .icon-next,.ptx-runestone-container .carousel-control .icon-prev,.runestone-sphinx .carousel-control .icon-next,.runestone-sphinx .carousel-control .icon-prev{font-family:serif;height:20px;line-height:1;width:20px}.ptx-runestone-container .carousel-control .icon-prev:before,.runestone-sphinx .carousel-control .icon-prev:before{content:"\2039"}.ptx-runestone-container .carousel-control .icon-next:before,.runestone-sphinx .carousel-control .icon-next:before{content:"\203a"}.ptx-runestone-container .carousel-indicators,.runestone-sphinx .carousel-indicators{bottom:10px;left:50%;list-style:none;margin-left:-30%;padding-left:0;position:absolute;text-align:center;width:60%;z-index:15}.ptx-runestone-container .carousel-indicators li,.runestone-sphinx .carousel-indicators li{background-color:#000\9;background-color:transparent;border:1px solid #fff;border-radius:10px;cursor:pointer;display:inline-block;height:10px;margin:1px;text-indent:-999px;width:10px}.ptx-runestone-container .carousel-indicators .active,.runestone-sphinx .carousel-indicators .active{background-color:#fff;height:12px;margin:0;width:12px}.ptx-runestone-container .carousel-caption,.runestone-sphinx .carousel-caption{bottom:20px;color:#fff;left:15%;padding-bottom:20px;padding-top:20px;position:absolute;right:15%;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);z-index:10}.ptx-runestone-container .carousel-caption .btn,.runestone-sphinx .carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.ptx-runestone-container .carousel-control .glyphicon-chevron-left,.ptx-runestone-container .carousel-control .glyphicon-chevron-right,.ptx-runestone-container .carousel-control .icon-next,.ptx-runestone-container .carousel-control .icon-prev,.runestone-sphinx .carousel-control .glyphicon-chevron-left,.runestone-sphinx .carousel-control .glyphicon-chevron-right,.runestone-sphinx .carousel-control .icon-next,.runestone-sphinx .carousel-control .icon-prev{font-size:30px;height:30px;margin-top:-10px;width:30px}.ptx-runestone-container .carousel-control .glyphicon-chevron-left,.ptx-runestone-container .carousel-control .icon-prev,.runestone-sphinx .carousel-control .glyphicon-chevron-left,.runestone-sphinx .carousel-control .icon-prev{margin-left:-10px}.ptx-runestone-container .carousel-control .glyphicon-chevron-right,.ptx-runestone-container .carousel-control .icon-next,.runestone-sphinx .carousel-control .glyphicon-chevron-right,.runestone-sphinx .carousel-control .icon-next{margin-right:-10px}.ptx-runestone-container .carousel-caption,.runestone-sphinx .carousel-caption{left:20%;padding-bottom:30px;right:20%}.ptx-runestone-container .carousel-indicators,.runestone-sphinx .carousel-indicators{bottom:20px}}.ptx-runestone-container .btn-group-vertical>.btn-group:after,.ptx-runestone-container .btn-group-vertical>.btn-group:before,.ptx-runestone-container .btn-toolbar:after,.ptx-runestone-container .btn-toolbar:before,.ptx-runestone-container .clearfix:after,.ptx-runestone-container .clearfix:before,.ptx-runestone-container .container-fluid:after,.ptx-runestone-container .container-fluid:before,.ptx-runestone-container .container:after,.ptx-runestone-container .container:before,.ptx-runestone-container .dl-horizontal dd:after,.ptx-runestone-container .dl-horizontal dd:before,.ptx-runestone-container .form-horizontal .form-group:after,.ptx-runestone-container .form-horizontal .form-group:before,.ptx-runestone-container .modal-footer:after,.ptx-runestone-container .modal-footer:before,.ptx-runestone-container .modal-header:after,.ptx-runestone-container .modal-header:before,.ptx-runestone-container .nav:after,.ptx-runestone-container .nav:before,.ptx-runestone-container .navbar-collapse:after,.ptx-runestone-container .navbar-collapse:before,.ptx-runestone-container .navbar-header:after,.ptx-runestone-container .navbar-header:before,.ptx-runestone-container .navbar:after,.ptx-runestone-container .navbar:before,.ptx-runestone-container .pager:after,.ptx-runestone-container .pager:before,.ptx-runestone-container .panel-body:after,.ptx-runestone-container .panel-body:before,.ptx-runestone-container .row:after,.ptx-runestone-container .row:before,.runestone-sphinx .btn-group-vertical>.btn-group:after,.runestone-sphinx .btn-group-vertical>.btn-group:before,.runestone-sphinx .btn-toolbar:after,.runestone-sphinx .btn-toolbar:before,.runestone-sphinx .clearfix:after,.runestone-sphinx .clearfix:before,.runestone-sphinx .container-fluid:after,.runestone-sphinx .container-fluid:before,.runestone-sphinx .container:after,.runestone-sphinx .container:before,.runestone-sphinx .dl-horizontal dd:after,.runestone-sphinx .dl-horizontal dd:before,.runestone-sphinx .form-horizontal .form-group:after,.runestone-sphinx .form-horizontal .form-group:before,.runestone-sphinx .modal-footer:after,.runestone-sphinx .modal-footer:before,.runestone-sphinx .modal-header:after,.runestone-sphinx .modal-header:before,.runestone-sphinx .nav:after,.runestone-sphinx .nav:before,.runestone-sphinx .navbar-collapse:after,.runestone-sphinx .navbar-collapse:before,.runestone-sphinx .navbar-header:after,.runestone-sphinx .navbar-header:before,.runestone-sphinx .navbar:after,.runestone-sphinx .navbar:before,.runestone-sphinx .pager:after,.runestone-sphinx .pager:before,.runestone-sphinx .panel-body:after,.runestone-sphinx .panel-body:before,.runestone-sphinx .row:after,.runestone-sphinx .row:before{content:" ";display:table}.ptx-runestone-container .btn-group-vertical>.btn-group:after,.ptx-runestone-container .btn-toolbar:after,.ptx-runestone-container .clearfix:after,.ptx-runestone-container .container-fluid:after,.ptx-runestone-container .container:after,.ptx-runestone-container .dl-horizontal dd:after,.ptx-runestone-container .form-horizontal .form-group:after,.ptx-runestone-container .modal-footer:after,.ptx-runestone-container .modal-header:after,.ptx-runestone-container .nav:after,.ptx-runestone-container .navbar-collapse:after,.ptx-runestone-container .navbar-header:after,.ptx-runestone-container .navbar:after,.ptx-runestone-container .pager:after,.ptx-runestone-container .panel-body:after,.ptx-runestone-container .row:after,.runestone-sphinx .btn-group-vertical>.btn-group:after,.runestone-sphinx .btn-toolbar:after,.runestone-sphinx .clearfix:after,.runestone-sphinx .container-fluid:after,.runestone-sphinx .container:after,.runestone-sphinx .dl-horizontal dd:after,.runestone-sphinx .form-horizontal .form-group:after,.runestone-sphinx .modal-footer:after,.runestone-sphinx .modal-header:after,.runestone-sphinx .nav:after,.runestone-sphinx .navbar-collapse:after,.runestone-sphinx .navbar-header:after,.runestone-sphinx .navbar:after,.runestone-sphinx .pager:after,.runestone-sphinx .panel-body:after,.runestone-sphinx .row:after{clear:both}.ptx-runestone-container .center-block,.runestone-sphinx .center-block{display:block;margin-left:auto;margin-right:auto}.ptx-runestone-container .pull-right,.runestone-sphinx .pull-right{float:right!important}.ptx-runestone-container .pull-left,.runestone-sphinx .pull-left{float:left!important}.ptx-runestone-container .hide,.runestone-sphinx .hide{display:none!important}.ptx-runestone-container .show,.runestone-sphinx .show{display:block!important}.ptx-runestone-container .invisible,.runestone-sphinx .invisible{visibility:hidden}.ptx-runestone-container .text-hide,.runestone-sphinx .text-hide{background-color:transparent;border:0;color:transparent;font:0/0 a;text-shadow:none}.ptx-runestone-container .hidden,.runestone-sphinx .hidden{display:none!important}.ptx-runestone-container .affix,.runestone-sphinx .affix{position:fixed}@-ms-viewport{width:device-width}.ptx-runestone-container .visible-lg,.ptx-runestone-container .visible-lg-block,.ptx-runestone-container .visible-lg-inline,.ptx-runestone-container .visible-lg-inline-block,.ptx-runestone-container .visible-md,.ptx-runestone-container .visible-md-block,.ptx-runestone-container .visible-md-inline,.ptx-runestone-container .visible-md-inline-block,.ptx-runestone-container .visible-sm,.ptx-runestone-container .visible-sm-block,.ptx-runestone-container .visible-sm-inline,.ptx-runestone-container .visible-sm-inline-block,.ptx-runestone-container .visible-xs,.ptx-runestone-container .visible-xs-block,.ptx-runestone-container .visible-xs-inline,.ptx-runestone-container .visible-xs-inline-block,.runestone-sphinx .visible-lg,.runestone-sphinx .visible-lg-block,.runestone-sphinx .visible-lg-inline,.runestone-sphinx .visible-lg-inline-block,.runestone-sphinx .visible-md,.runestone-sphinx .visible-md-block,.runestone-sphinx .visible-md-inline,.runestone-sphinx .visible-md-inline-block,.runestone-sphinx .visible-sm,.runestone-sphinx .visible-sm-block,.runestone-sphinx .visible-sm-inline,.runestone-sphinx .visible-sm-inline-block,.runestone-sphinx .visible-xs,.runestone-sphinx .visible-xs-block,.runestone-sphinx .visible-xs-inline,.runestone-sphinx .visible-xs-inline-block{display:none!important}@media (max-width:767px){.ptx-runestone-container .visible-xs,.runestone-sphinx .visible-xs{display:block!important}.ptx-runestone-container table.visible-xs,.runestone-sphinx table.visible-xs{display:table!important}.ptx-runestone-container tr.visible-xs,.runestone-sphinx tr.visible-xs{display:table-row!important}.ptx-runestone-container td.visible-xs,.ptx-runestone-container th.visible-xs,.runestone-sphinx td.visible-xs,.runestone-sphinx th.visible-xs{display:table-cell!important}.ptx-runestone-container .visible-xs-block,.runestone-sphinx .visible-xs-block{display:block!important}.ptx-runestone-container .visible-xs-inline,.runestone-sphinx .visible-xs-inline{display:inline!important}.ptx-runestone-container .visible-xs-inline-block,.runestone-sphinx .visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.ptx-runestone-container .visible-sm,.runestone-sphinx .visible-sm{display:block!important}.ptx-runestone-container table.visible-sm,.runestone-sphinx table.visible-sm{display:table!important}.ptx-runestone-container tr.visible-sm,.runestone-sphinx tr.visible-sm{display:table-row!important}.ptx-runestone-container td.visible-sm,.ptx-runestone-container th.visible-sm,.runestone-sphinx td.visible-sm,.runestone-sphinx th.visible-sm{display:table-cell!important}.ptx-runestone-container .visible-sm-block,.runestone-sphinx .visible-sm-block{display:block!important}.ptx-runestone-container .visible-sm-inline,.runestone-sphinx .visible-sm-inline{display:inline!important}.ptx-runestone-container .visible-sm-inline-block,.runestone-sphinx .visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.ptx-runestone-container .visible-md,.runestone-sphinx .visible-md{display:block!important}.ptx-runestone-container table.visible-md,.runestone-sphinx table.visible-md{display:table!important}.ptx-runestone-container tr.visible-md,.runestone-sphinx tr.visible-md{display:table-row!important}.ptx-runestone-container td.visible-md,.ptx-runestone-container th.visible-md,.runestone-sphinx td.visible-md,.runestone-sphinx th.visible-md{display:table-cell!important}.ptx-runestone-container .visible-md-block,.runestone-sphinx .visible-md-block{display:block!important}.ptx-runestone-container .visible-md-inline,.runestone-sphinx .visible-md-inline{display:inline!important}.ptx-runestone-container .visible-md-inline-block,.runestone-sphinx .visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.ptx-runestone-container .visible-lg,.runestone-sphinx .visible-lg{display:block!important}.ptx-runestone-container table.visible-lg,.runestone-sphinx table.visible-lg{display:table!important}.ptx-runestone-container tr.visible-lg,.runestone-sphinx tr.visible-lg{display:table-row!important}.ptx-runestone-container td.visible-lg,.ptx-runestone-container th.visible-lg,.runestone-sphinx td.visible-lg,.runestone-sphinx th.visible-lg{display:table-cell!important}.ptx-runestone-container .visible-lg-block,.runestone-sphinx .visible-lg-block{display:block!important}.ptx-runestone-container .visible-lg-inline,.runestone-sphinx .visible-lg-inline{display:inline!important}.ptx-runestone-container .visible-lg-inline-block,.runestone-sphinx .visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.ptx-runestone-container .hidden-xs,.runestone-sphinx .hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.ptx-runestone-container .hidden-sm,.runestone-sphinx .hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.ptx-runestone-container .hidden-md,.runestone-sphinx .hidden-md{display:none!important}}@media (min-width:1200px){.ptx-runestone-container .hidden-lg,.runestone-sphinx .hidden-lg{display:none!important}}.ptx-runestone-container .visible-print,.runestone-sphinx .visible-print{display:none!important}@media print{.ptx-runestone-container .visible-print,.runestone-sphinx .visible-print{display:block!important}.ptx-runestone-container table.visible-print,.runestone-sphinx table.visible-print{display:table!important}.ptx-runestone-container tr.visible-print,.runestone-sphinx tr.visible-print{display:table-row!important}.ptx-runestone-container td.visible-print,.ptx-runestone-container th.visible-print,.runestone-sphinx td.visible-print,.runestone-sphinx th.visible-print{display:table-cell!important}}.ptx-runestone-container .visible-print-block,.runestone-sphinx .visible-print-block{display:none!important}@media print{.ptx-runestone-container .visible-print-block,.runestone-sphinx .visible-print-block{display:block!important}}.ptx-runestone-container .visible-print-inline,.runestone-sphinx .visible-print-inline{display:none!important}@media print{.ptx-runestone-container .visible-print-inline,.runestone-sphinx .visible-print-inline{display:inline!important}}.ptx-runestone-container .visible-print-inline-block,.runestone-sphinx .visible-print-inline-block{display:none!important}@media print{.ptx-runestone-container .visible-print-inline-block,.runestone-sphinx .visible-print-inline-block{display:inline-block!important}.ptx-runestone-container .hidden-print,.runestone-sphinx .hidden-print{display:none!important}}.ptx-runestone-container :root,.runestone-sphinx :root{--background:#fff;--outerBackground:#eee;--links:#0645ad;--bodyFont:#000;--tooltip:#fff;--grayToWhite:#333;--navbar:#f8f8f8;--navbarFont:#707070;--navbarFontHover:#000;--alerts:#d9edf7;--completionButton:#f19711;--completionButtonHover:#ff9f19;--admonition:#fcf8e3;--admonitionBorder:#fbeed5;--codeButtons:#474949;--codeButtonsBorder:#474949;--dangerAlerts:#f2dede;--successAlerts:#dff0d8;--contentWidthRegular:660px;--contentWidthWide:1060px;--componentBgColor:#f0f8ff;--componentBorderColor:#000;--questionBgColor:#e1efff}.ptx-runestone-container [data-theme=dark],.runestone-sphinx [data-theme=dark]{--background:#2c2f33;--outerBackground:#23272a;--links:#7289da;--bodyFont:#99aab5;--tooltip:#000;--grayToWhite:#fff;--navbar:#3d3d3d;--navbarFont:#fff;--navbarFontHover:#d6d6d6;--alerts:#714082;--completionButton:#650087;--completionButtonHover:#560073;--admonition:#3d3d3d;--admonitionBorder:#262626;--codeButtons:#7289da;--codeButtonsBorder:#fff;--dangerAlerts:#8c2626;--successAlerts:#217300;--componentBgColor:#07467d;--componentBorderColor:#939090;--questionBgColor:#17555d}.ptx-runestone-container div.assignment-nav,.runestone-sphinx div.assignment-nav{background-color:var(--componentBgColor);border-color:var(--componentBorderColor);border-style:solid;border-width:1px;padding-bottom:5px;padding-top:5px}.ptx-runestone-container td.linenos pre,.runestone-sphinx td.linenos pre{color:#6b6b6b}.ptx-runestone-container .str,.runestone-sphinx .str{color:#006b00}.ptx-runestone-container .parsons .block,.runestone-sphinx .parsons .block{background-color:#fafafa}.ptx-runestone-container .highlight .c1,.runestone-sphinx .highlight .c1{color:#376a7b}.ptx-runestone-container .highlight .nn,.runestone-sphinx .highlight .nn{color:#0f6c95}.ptx-runestone-container .highlight .gp,.runestone-sphinx .highlight .gp{color:#a14c08}.ptx-runestone-container .highlight .si,.runestone-sphinx .highlight .si{color:#3c773d}.ptx-runestone-container .highlight .nc,.runestone-sphinx .highlight .nc{color:#0b719d}.ptx-runestone-container ul.search li div.context,.runestone-sphinx ul.search li div.context{color:#6b6b6b}.ptx-runestone-container span.highlighted,.runestone-sphinx span.highlighted{color:#4d4d4d}.ptx-runestone-container .CodeMirror-linenumber,.runestone-sphinx .CodeMirror-linenumber{color:#6b6b6b}.ptx-runestone-container .alert-warning,.runestone-sphinx .alert-warning{background-color:var(--admonition);border-color:var(--admonitionBorder)}.ptx-runestone-container div.ExecutionVisualizer table#pyCodeOutput .lineNo,.runestone-sphinx div.ExecutionVisualizer table#pyCodeOutput .lineNo{color:#6b6b6b}.ptx-runestone-container body,.runestone-sphinx body{background-color:var(--outerBackground);counter-reset:rscomponent;padding-top:60px}.ptx-runestone-container h5,.runestone-sphinx h5{font-weight:700;padding:10px 0}.ptx-runestone-container #table-of-contents a,.runestone-sphinx #table-of-contents a{color:var(--links)}.ptx-runestone-container #table-of-contents a:hover,.runestone-sphinx #table-of-contents a:hover{color:var(--links);text-decoration:underline}.ptx-runestone-container #table-of-contents.section,.runestone-sphinx #table-of-contents.section{font-size:16px}.ptx-runestone-container .navbar-default,.runestone-sphinx .navbar-default{background-color:var(--navbar)}.ptx-runestone-container .navbar-default .navbar-nav>li,.ptx-runestone-container .navbar-default .navbar-nav>li>a,.runestone-sphinx .navbar-default .navbar-nav>li,.runestone-sphinx .navbar-default .navbar-nav>li>a{color:var(--navbarFont)}.ptx-runestone-container .navbar-default .navbar-nav>li>a:hover,.runestone-sphinx .navbar-default .navbar-nav>li>a:hover{color:var(--navbarFontHover)}.ptx-runestone-container .navbar-default .navbar-brand,.runestone-sphinx .navbar-default .navbar-brand{color:var(--navbarFont)}.ptx-runestone-container .toctree-wrapper,.runestone-sphinx .toctree-wrapper{font-size:16px}.ptx-runestone-container .toctree-wrapper a,.runestone-sphinx .toctree-wrapper a{color:var(--links)}.ptx-runestone-container .toctree-wrapper a:hover,.runestone-sphinx .toctree-wrapper a:hover{color:var(--links);text-decoration:underline}.ptx-runestone-container #index-and-search.section,.runestone-sphinx #index-and-search.section{font-size:16px}.ptx-runestone-container #index-and-search.section a,.runestone-sphinx #index-and-search.section a{color:var(--links)}.ptx-runestone-container #index-and-search.section a:hover,.runestone-sphinx #index-and-search.section a:hover{color:var(--links);text-decoration:underline}.ptx-runestone-container a,.runestone-sphinx a{color:var(--links)}@media (max-width:768px){.ptx-runestone-container body,.runestone-sphinx body{padding-top:0}.ptx-runestone-container .navbar-fixed-top,.runestone-sphinx .navbar-fixed-top{position:static}}@media (min-width:768px){.ptx-runestone-container .navbar .divider-vertical,.runestone-sphinx .navbar .divider-vertical{border-left:1px solid #f2f2f2;margin:0 3px}.ptx-runestone-container .navbar-fixed-top .container,.runestone-sphinx .navbar-fixed-top .container{padding:0}}.ptx-runestone-container div.container,.runestone-sphinx div.container{background-color:var(--background)}.ptx-runestone-container .container,.runestone-sphinx .container{padding-left:10px;padding-right:10px}.ptx-runestone-container .runestone,.runestone-sphinx .runestone{background-color:var(--componentBgColor);border-color:var(--componentBorderColor);border-radius:10px;border-style:solid;clear:both;margin-bottom:20px;margin-top:20px;padding:15px}.ptx-runestone-container #main-content section>:not(section),.runestone-sphinx #main-content section>:not(section){margin-left:auto;margin-right:auto;max-width:var(--contentWidthRegular)}.ptx-runestone-container #main-content section>.codelens,.ptx-runestone-container #main-content section>.jupyterlite_sphinx_iframe_container,.ptx-runestone-container #main-content section>.question,.ptx-runestone-container #main-content section>.runestone.ac_section,.ptx-runestone-container #main-content section>.runestone.codelens,.ptx-runestone-container #main-content section>.runestone.parsons-container,.ptx-runestone-container #main-content section>.runestone.parsons-problems,.ptx-runestone-container #main-content section>.timedAssessment,.ptx-runestone-container #main-content section>section,.runestone-sphinx #main-content section>.codelens,.runestone-sphinx #main-content section>.jupyterlite_sphinx_iframe_container,.runestone-sphinx #main-content section>.question,.runestone-sphinx #main-content section>.runestone.ac_section,.runestone-sphinx #main-content section>.runestone.codelens,.runestone-sphinx #main-content section>.runestone.parsons-container,.runestone-sphinx #main-content section>.runestone.parsons-problems,.runestone-sphinx #main-content section>.timedAssessment,.runestone-sphinx #main-content section>section{margin-left:auto;margin-right:auto;max-width:var(--contentWidthWide)}.ptx-runestone-container #main-content section>.full-width,.runestone-sphinx #main-content section>.full-width{max-width:var(--contentWidthWide)}.ptx-runestone-container .container section>img,.runestone-sphinx .container section>img{display:block;margin-left:auto;margin-right:auto}.ptx-runestone-container .container-fluid>.navbar-collapse,.ptx-runestone-container .container-fluid>.navbar-header,.ptx-runestone-container .container>.navbar-collapse,.ptx-runestone-container .container>.navbar-header,.runestone-sphinx .container-fluid>.navbar-collapse,.runestone-sphinx .container-fluid>.navbar-header,.runestone-sphinx .container>.navbar-collapse,.runestone-sphinx .container>.navbar-header{margin-left:0;margin-right:0}.ptx-runestone-container .navbar>.container .navbar-brand,.runestone-sphinx .navbar>.container .navbar-brand{margin-left:0}.ptx-runestone-container .navbar>.container,.runestone-sphinx .navbar>.container{background-color:var(--navbar)}.ptx-runestone-container .navbar-toggle,.runestone-sphinx .navbar-toggle{margin-right:0}.ptx-runestone-container .footer>.container,.runestone-sphinx .footer>.container{background-color:var(--outerBackground)}.ptx-runestone-container .footer>.container p>a,.runestone-sphinx .footer>.container p>a{color:var(--links)}.ptx-runestone-container .brand-logo,.runestone-sphinx .brand-logo{display:block;float:left;margin-top:4px}.ptx-runestone-container .brand-logo img,.runestone-sphinx .brand-logo img{height:40px}.ptx-runestone-container .social-menu,.runestone-sphinx .social-menu{padding:10px 10px 15px 20px;width:220px}.ptx-runestone-container .fb-like,.runestone-sphinx .fb-like{margin-top:7px}.ptx-runestone-container .fb_iframe_widget iframe,.ptx-runestone-container .fb_iframe_widget span,.runestone-sphinx .fb_iframe_widget iframe,.runestone-sphinx .fb_iframe_widget span{height:20px!important;width:82px!important}.ptx-runestone-container .twitter-follow-button,.runestone-sphinx .twitter-follow-button{margin-top:10px}.ptx-runestone-container .gittip,.runestone-sphinx .gittip{margin-top:8px}.ptx-runestone-container .gittip-button,.runestone-sphinx .gittip-button{margin-bottom:-6px}.ptx-runestone-container .dropdown-menu>li>div,.ptx-runestone-container .dropdown-menu>li>label,.ptx-runestone-container .dropdown-menu>li>span,.runestone-sphinx .dropdown-menu>li>div,.runestone-sphinx .dropdown-menu>li>label,.runestone-sphinx .dropdown-menu>li>span{clear:both;color:var(--grayToWhite);display:block;font-weight:700;line-height:20px;padding:3px 20px;white-space:nowrap}.ptx-runestone-container .dropdown-menu>li>label:focus,.ptx-runestone-container .dropdown-menu>li>label:hover,.runestone-sphinx .dropdown-menu>li>label:focus,.runestone-sphinx .dropdown-menu>li>label:hover{background-color:#f5f5f5;color:#262626;text-decoration:none}.ptx-runestone-container .dropdown-menu>li>a,.runestone-sphinx .dropdown-menu>li>a{color:var(--grayToWhite)}.ptx-runestone-container .loggedinuser,.runestone-sphinx .loggedinuser{font-weight:700}.ptx-runestone-container .CodeMirror,.runestone-sphinx .CodeMirror{background-color:var(--background);clear:both;margin:0 0 1em}.ptx-runestone-container .ac_section .CodeMirror pre,.runestone-sphinx .ac_section .CodeMirror pre{word-wrap:normal;background:transparent;-moz-border-radius:0;-webkit-border-radius:0;-o-border-radius:0;border-radius:0;border-width:0;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:inherit;margin:0;padding:0;white-space:pre}.ptx-runestone-container btn.btn-sm,.ptx-runestone-container button.btn,.ptx-runestone-container input[type=button].btn.btn-sm,.ptx-runestone-container input[type=submit].btn.btn-sm,.runestone-sphinx btn.btn-sm,.runestone-sphinx button.btn,.runestone-sphinx input[type=button].btn.btn-sm,.runestone-sphinx input[type=submit].btn.btn-sm{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1em}.ptx-runestone-container .dropdown-menu .input-group .input-group-btn button.btn,.runestone-sphinx .dropdown-menu .input-group .input-group-btn button.btn{font-size:14px}.ptx-runestone-container .btn,.runestone-sphinx .btn{margin:5px}.ptx-runestone-container .btn.disabled,.runestone-sphinx .btn.disabled{pointer-events:auto}.ptx-runestone-container .btn-default,.ptx-runestone-container .btn-default.disabled,.ptx-runestone-container .btn-default.disabled:hover,.ptx-runestone-container .btn-default[disabled],.ptx-runestone-container .btn-default[disabled]:hover,.runestone-sphinx .btn-default,.runestone-sphinx .btn-default.disabled,.runestone-sphinx .btn-default.disabled:hover,.runestone-sphinx .btn-default[disabled],.runestone-sphinx .btn-default[disabled]:hover{background-color:var(--codeButtons);border-color:var(codeButtonsBorder);color:#fff}.ptx-runestone-container .btn-default.active,.ptx-runestone-container .btn-default:active,.ptx-runestone-container .btn-default:focus,.ptx-runestone-container .btn-default:hover,.runestone-sphinx .btn-default.active,.runestone-sphinx .btn-default:active,.runestone-sphinx .btn-default:focus,.runestone-sphinx .btn-default:hover{background-color:#3a3c3c;border-color:#2e2f2f;color:#fff}.ptx-runestone-container input[type=checkbox],.ptx-runestone-container input[type=radio],.runestone-sphinx input[type=checkbox],.runestone-sphinx input[type=radio]{margin-right:5px}.ptx-runestone-container .tooltip,.runestone-sphinx .tooltip{z-index:2000!important}.ptx-runestone-container .tooltip.in,.runestone-sphinx .tooltip.in{filter:alpha(opacity=80);opacity:.8}.ptx-runestone-container h2,.runestone-sphinx h2{margin-top:20px}.ptx-runestone-container .alert form,.runestone-sphinx .alert form{margin-bottom:0}.ptx-runestone-container .alert,.runestone-sphinx .alert{color:var(--grayToWhite);padding:10px}.ptx-runestone-container .alert-info,.runestone-sphinx .alert-info{background-color:var(--alerts)}.ptx-runestone-container .alert-danger,.runestone-sphinx .alert-danger{background-color:var(--dangerAlerts)}.ptx-runestone-container .alert-success,.runestone-sphinx .alert-success{background-color:var(--successAlerts)}.ptx-runestone-container .unittest-results.alert-danger,.runestone-sphinx .unittest-results.alert-danger{background-color:var(--dangerAlerts)!important}.ptx-runestone-container .unittest-results.alert-success,.runestone-sphinx .unittest-results.alert-success{background-color:var(--successAlerts)!important}.ptx-runestone-container .alert label,.runestone-sphinx .alert label{font-weight:400}.ptx-runestone-container .navbar_message,.runestone-sphinx .navbar_message{font-weight:700;margin-top:15px}.ptx-runestone-container dt.label>span.brackets:not(span.brackets>a),.ptx-runestone-container dt.label>span.fn-backref:not(span.fn-backref>a),.runestone-sphinx dt.label>span.brackets:not(span.brackets>a),.runestone-sphinx dt.label>span.fn-backref:not(span.fn-backref>a){color:#000}.ptx-runestone-container .admonition,.runestone-sphinx .admonition{background-color:var(--admonition);border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;margin-bottom:20px!important;margin-top:20px!important;padding:8px 35px 8px 14px!important;text-shadow:0 1px 0 hsla(0,0%,100%,.5)}.ptx-runestone-container .admonition.caution,.runestone-sphinx .admonition.caution{background-color:#f2dede;border-color:#eed3d7;color:#a33f3e}.ptx-runestone-container .admonition.note,.ptx-runestone-container .admonition.tip,.runestone-sphinx .admonition.note,.runestone-sphinx .admonition.tip{background-color:#d9edf7;border-color:#bce8f1;color:#333}.ptx-runestone-container div.flash,.runestone-sphinx div.flash{-webkit-font-smoothing:antialiased;background-color:#000;background-image:-webkit-linear-gradient(top,#222,#000);background-image:-o-linear-gradient(top,#222,#000);background-image:-moz-linear-gradient(90deg,#222,#000);background-image:linear-gradient(top,#222,#000);background-repeat:repeat-x;border:2px solid #fff;border-radius:8px;-moz-border-radius:8px;-webkit-border-radius:8px;color:#fff;cursor:pointer;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:700;margin:0 0 10px 10px;opacity:.95;padding:10px;position:fixed;right:45px;top:55px;vertical-align:middle;z-index:2000}.ptx-runestone-container #web2py_user_form,.runestone-sphinx #web2py_user_form{margin-top:10px}.ptx-runestone-container #web2py_user_form form,.runestone-sphinx #web2py_user_form form{float:left;margin-right:150px;padding-top:3px}.ptx-runestone-container #web2py_user_form td,.runestone-sphinx #web2py_user_form td{padding-bottom:15px}.ptx-runestone-container #web2py_user_form td.w2p_fw,.runestone-sphinx #web2py_user_form td.w2p_fw{width:299px}.ptx-runestone-container #auth-actions,.runestone-sphinx #auth-actions{margin-top:50px}.ptx-runestone-container #sign_in_text td,.runestone-sphinx #sign_in_text td{color:#333;font-family:lucida grande,Verdana,sans-serif;font-size:17px;padding-bottom:13px}.ptx-runestone-container #auth_user_remember,.runestone-sphinx #auth_user_remember{margin-top:-20px}.ptx-runestone-container #exercises>ol>li,.ptx-runestone-container #programming-exercises>ol>li,.runestone-sphinx #exercises>ol>li,.runestone-sphinx #programming-exercises>ol>li{margin-bottom:30px}.ptx-runestone-container #exercises>ol>li:nth-child(2n),.ptx-runestone-container #programming-exercises>ol>li:nth-child(2n),.runestone-sphinx #exercises>ol>li:nth-child(2n),.runestone-sphinx #programming-exercises>ol>li:nth-child(2n){background:#faf7df;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;padding:1.2em 1.4em}.ptx-runestone-container .scratch-ac-modal,.runestone-sphinx .scratch-ac-modal{max-height:90%;overflow-y:scroll;width:90%}.ptx-runestone-container .compare-modal .progress,.runestone-sphinx .compare-modal .progress{margin-bottom:0}.ptx-runestone-container .compare-me-progress,.runestone-sphinx .compare-me-progress{width:100%}.ptx-runestone-container .compare-me-progress .progress-bar,.ptx-runestone-container .unittest-results-progress .progress-bar,.runestone-sphinx .compare-me-progress .progress-bar,.runestone-sphinx .unittest-results-progress .progress-bar{color:#333}.ptx-runestone-container .unittest-results-progress,.runestone-sphinx .unittest-results-progress{width:25%}.ptx-runestone-container .compare-modal,.runestone-sphinx .compare-modal{width:350px}.ptx-runestone-container .compare-modal table,.runestone-sphinx .compare-modal table{border-collapse:separate;border-spacing:10px 5px}.ptx-runestone-container .codelens-modal,.runestone-sphinx .codelens-modal{bottom:auto;left:auto;right:20%;top:20%}@media (max-width:768px){.ptx-runestone-container .codelens-modal,.runestone-sphinx .codelens-modal{bottom:0!important;left:0!important;right:0!important;top:0!important}}.ptx-runestone-container .codelens-modal>.modal-dialog,.runestone-sphinx .codelens-modal>.modal-dialog{width:400px}.ptx-runestone-container .footnote.table,.runestone-sphinx .footnote.table{margin-bottom:10px;width:auto}.ptx-runestone-container .footnote.table td.label,.runestone-sphinx .footnote.table td.label{background-color:#d9edf7;padding:2px 5px}.ptx-runestone-container .ac-canvas,.runestone-sphinx .ac-canvas{background-color:#fff;display:inline-block}.ptx-runestone-container .video-play-overlay,.runestone-sphinx .video-play-overlay{background-position:50%;background-repeat:no-repeat;height:85px;left:44%;position:relative;top:-150px;width:130px}.ptx-runestone-container .video_popup video,.runestone-sphinx .video_popup video{cursor:pointer;width:var(--contentWidthRegular)}.ptx-runestone-container .ui-sortable-helper,.runestone-sphinx .ui-sortable-helper{height:auto!important;width:auto!important}.ptx-runestone-container .navLink,.runestone-sphinx .navLink{bottom:65px;display:inline;opacity:.4;position:fixed;z-index:2}.ptx-runestone-container .navLink:hover,.runestone-sphinx .navLink:hover{opacity:1}.ptx-runestone-container .navLink a,.runestone-sphinx .navLink a{background-color:#fff;border:2px solid #d3d3d3;display:inline-block;height:50px;width:100px}.ptx-runestone-container #relations-next,.runestone-sphinx #relations-next{right:35px}.ptx-runestone-container #relations-prev,.runestone-sphinx #relations-prev{left:35px}.ptx-runestone-container .nextprev-list,.runestone-sphinx .nextprev-list{height:50px;margin:10px;padding-left:0}@media (max-width:600px){.ptx-runestone-container .navLink,.runestone-sphinx .navLink{bottom:auto;display:inline-block;position:absolute}.ptx-runestone-container #relations-next,.ptx-runestone-container #relations-prev,.runestone-sphinx #relations-next,.runestone-sphinx #relations-prev{display:inline;padding:0 20px;width:25%}}.ptx-runestone-container #completionButton,.runestone-sphinx #completionButton{color:var(--completionButtonText);font-weight:700;margin-bottom:15px;margin-top:25px;padding-left:70px;padding-right:70px}.ptx-runestone-container .buttonAskCompletion,.runestone-sphinx .buttonAskCompletion{background-color:var(--completionButton);border-color:var(--completionButtonHover);font-weight:700}.ptx-runestone-container .buttonAskCompletion:hover,.runestone-sphinx .buttonAskCompletion:hover{background-color:var(--completionButtonHover);border-color:var(--completionButtonHover)}.ptx-runestone-container .buttonConfirmCompletion,.runestone-sphinx .buttonConfirmCompletion{background-color:#377e22;border-color:#3dc682;color:#fff!important}.ptx-runestone-container .buttonConfirmCompletion:hover,.runestone-sphinx .buttonConfirmCompletion:hover{background-color:#3dc682;border-color:#3dc682}.ptx-runestone-container .navLinkBg,.runestone-sphinx .navLinkBg{background-color:#fff;bottom:55px;-webkit-box-shadow:0 0 3px rgba(50,50,50,.5);-moz-box-shadow:0 0 3px rgba(50,50,50,.5);box-shadow:0 0 3px rgba(50,50,50,.5);color:#999;font-weight:700;height:40px;position:fixed;z-index:1}.ptx-runestone-container .navLinkBg:hover,.runestone-sphinx .navLinkBg:hover{color:#999}.ptx-runestone-container #navLinkBgRight,.runestone-sphinx #navLinkBgRight{padding:10px 15px 0 65px;right:-1000px}.ptx-runestone-container #navLinkBgLeft,.runestone-sphinx #navLinkBgLeft{left:-65px;padding-left:15px;padding-right:50px}.ptx-runestone-container .activehtml,.runestone-sphinx .activehtml{background-color:#fff;height:400px;width:100%}.ptx-runestone-container .container section>div.sidebar,.runestone-sphinx .container section>div.sidebar{margin:0 0 .5em 1em}.ptx-runestone-container a.disqus_thread_link,.runestone-sphinx a.disqus_thread_link{display:block}.ptx-runestone-container .reveal_button,.runestone-sphinx .reveal_button{display:block;margin-left:0}.ptx-runestone-container iframe[seamless],.runestone-sphinx iframe[seamless]{display:block}@media (min-width:768px){.ptx-runestone-container .container section>div.sidebar,.runestone-sphinx .container section>div.sidebar{margin:0 3em .5em 1em}}@media (min-width:992px){.ptx-runestone-container .container section>div.sidebar,.runestone-sphinx .container section>div.sidebar{margin:0 11em .5em 1em}}@media (min-width:1200px){.ptx-runestone-container .container section>div.sidebar,.runestone-sphinx .container section>div.sidebar{margin:0 18em .5em 1em}}.ptx-runestone-container div.ExecutionVisualizer table.visualizer,.runestone-sphinx div.ExecutionVisualizer table.visualizer{background-color:#fff;margin-left:auto;margin-right:auto;width:auto}.ptx-runestone-container .sltooltip,.runestone-sphinx .sltooltip{bottom:120%;display:block;font-size:11px;margin-left:-2em;margin-top:-2px;padding-bottom:5px;position:absolute;visibility:visible;z-index:1020}.ptx-runestone-container .sltooltip .sltooltip-arrow,.runestone-sphinx .sltooltip .sltooltip-arrow{border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #000;bottom:0;height:0;left:50%;margin-left:-5px;position:absolute;width:0}.ptx-runestone-container .sltooltip-inner,.runestone-sphinx .sltooltip-inner{background-color:#000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;color:var(--tooltip);max-width:200px;padding:3px 8px;text-align:center;text-decoration:none}.ptx-runestone-container ul.dropdown-menu.globaltoc,.runestone-sphinx ul.dropdown-menu.globaltoc{max-height:700px;overflow:auto}.ptx-runestone-container .globaltoc span.caption-text,.runestone-sphinx .globaltoc span.caption-text{display:inline-block;font-size:large;font-weight:700}.ptx-runestone-container textarea.lp-result,.runestone-sphinx textarea.lp-result{font-family:monospace;height:10em;width:100%}.ptx-runestone-container .visuallyhidden,.runestone-sphinx .visuallyhidden{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.ptx-runestone-container .visuallyhidden.focusable:active,.ptx-runestone-container .visuallyhidden.focusable:focus,.runestone-sphinx .visuallyhidden.focusable:active,.runestone-sphinx .visuallyhidden.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;white-space:inherit;width:auto}.ptx-runestone-container .blockquote,.runestone-sphinx .blockquote{font-size:large;font-style:italic;padding-left:2em;padding-right:2em;text-align:center}.ptx-runestone-container #subchapterprogress.ui-progressbar .ui-progressbar-value,.runestone-sphinx #subchapterprogress.ui-progressbar .ui-progressbar-value{border-radius:0;margin:0}.ptx-runestone-container #subchapterprogress>div,.runestone-sphinx #subchapterprogress>div{background:green}.ptx-runestone-container #subchapterprogress>div.loggedout,.runestone-sphinx #subchapterprogress>div.loggedout{background:#d3d3d3}.ptx-runestone-container .runestone_caption,.runestone-sphinx .runestone_caption{text-align:center}.ptx-runestone-container .runestone_caption_divid,.runestone-sphinx .runestone_caption_divid{opacity:50%}.ptx-runestone-container #questions .runestone_caption:before,.runestone-sphinx #questions .runestone_caption:before{content:"Problem: " counter(rscomponent) " -- ";counter-increment:rscomponent}.ptx-runestone-container body,.runestone-sphinx body{color:var(--bodyFont)}.ptx-runestone-container .jupyter_container .output,.runestone-sphinx .jupyter_container .output{margin-top:10px}.ptx-runestone-container .jupyter_container .output td,.ptx-runestone-container .jupyter_container .output th,.runestone-sphinx .jupyter_container .output td,.runestone-sphinx .jupyter_container .output th{padding-left:5px;padding-right:5px}.ptx-runestone-container .dropdown-menu>li>label.theme-switch,.runestone-sphinx .dropdown-menu>li>label.theme-switch{align-items:center;cursor:pointer;display:flex;font-weight:400}.ptx-runestone-container .theme-switch input,.runestone-sphinx .theme-switch input{display:none}.ptx-runestone-container .theme-switch .slider,.runestone-sphinx .theme-switch .slider{background-color:#ccc;height:1.25em;margin-right:3px;position:relative;transition:.4s;width:2em}.ptx-runestone-container .theme-switch .slider:before,.runestone-sphinx .theme-switch .slider:before{background-color:#fff;bottom:2px;content:"";height:calc(1.25em - 4px);left:2px;position:absolute;transition:.4s;width:calc(1.25em - 4px)}.ptx-runestone-container .theme-switch input:checked+.slider,.runestone-sphinx .theme-switch input:checked+.slider{background-color:#66bb6a}.ptx-runestone-container .theme-switch input:checked+.slider:before,.runestone-sphinx .theme-switch input:checked+.slider:before{transform:translateX(calc(.75em - 1px))}.ptx-runestone-container .theme-switch .slider.round,.ptx-runestone-container .theme-switch .slider.round:before,.runestone-sphinx .theme-switch .slider.round,.runestone-sphinx .theme-switch .slider.round:before{border-radius:1.25em}.ptx-runestone-container .adcopy,.runestone-sphinx .adcopy{background-color:#f2e0c3;border:2px solid #000;border-radius:10px;margin-left:auto;margin-right:auto;margin-top:10px;padding:10px;width:60%}.ptx-runestone-container .adcopy .donateb,.runestone-sphinx .adcopy .donateb{margin-left:30%}.ptx-runestone-container .isCorrect:before,.runestone-sphinx .isCorrect:before{content:"✅ ";float:right;padding-left:4px}.ptx-runestone-container .isInCorrect:before,.runestone-sphinx .isInCorrect:before{content:"⚠️ ";float:right;padding-left:4px}.ptx-runestone-container pre,.runestone-sphinx pre{background:inherit;color:inherit}.ptx-runestone-container summary.ptx-footnote__number,.runestone-sphinx summary.ptx-footnote__number{display:inline}.ptx-runestone-container summary.knowl__link,.runestone-sphinx summary.knowl__link{display:list-item inline}.ptx-runestone-container details.ptx-footnote,.runestone-sphinx details.ptx-footnote{display:inline}.ptx-runestone-container .handsontable td,.ptx-runestone-container .handsontable th,.runestone-sphinx .handsontable td,.runestone-sphinx .handsontable th{background-color:var(--content-background,#fff);color:var(--bodyFont,#000)}.ptx-runestone-container legend,.runestone-sphinx legend{border-bottom-color:var(--grayToWhite,#333);color:var(--grayToWhite,#333)}.ptx-runestone-container .autopermalink,.runestone-sphinx .autopermalink{display:none}.ptx-runestone-container :root,.runestone-sphinx :root{--codebuttons:#474949}.ptx-runestone-container [data-theme=dark],.runestone-sphinx [data-theme=dark]{--codebuttons:#2c0aa6}.ptx-runestone-container li.dropdown.open a.dropdown-toggle,.ptx-runestone-container li.dropdown.open a.dropdown-toggle:focus,.runestone-sphinx li.dropdown.open a.dropdown-toggle,.runestone-sphinx li.dropdown.open a.dropdown-toggle:focus{background-color:#2a5659!important;border:0!important;color:#f8f8f8!important}.ptx-runestone-container a.dropdown-toggle:focus,.runestone-sphinx a.dropdown-toggle:focus{background-color:#52a6ac!important;color:#f8f8f8!important}.ptx-runestone-container li.divider-vertical,.runestone-sphinx li.divider-vertical{margin:0!important}.ptx-runestone-container li.dropdown a.dropdown-toggle,.runestone-sphinx li.dropdown a.dropdown-toggle{padding:15px 18px!important}.ptx-runestone-container button.btn.btn-default:active,.ptx-runestone-container button.btn.btn-default:focus,.runestone-sphinx button.btn.btn-default:active,.runestone-sphinx button.btn.btn-default:focus{background-color:#fff!important;color:#474949!important}.ptx-runestone-container button.btn.btn-default,.runestone-sphinx button.btn.btn-default{background-color:#474949!important;color:#fff!important}.ptx-runestone-container button.btn.btn-default.btn-sm.disabled:active,.ptx-runestone-container button.btn.btn-default.btn-sm.disabled:focus,.runestone-sphinx button.btn.btn-default.btn-sm.disabled:active,.runestone-sphinx button.btn.btn-default.btn-sm.disabled:focus{background-color:#fff!important;color:#474949!important}.ptx-runestone-container button.btn.btn-default.btn-sm.disabled,.runestone-sphinx button.btn.btn-default.btn-sm.disabled{background-color:#474949!important;color:#fff!important}.ptx-runestone-container button.btn.btn-success:active,.ptx-runestone-container button.btn.btn-success:focus,.runestone-sphinx button.btn.btn-success:active,.runestone-sphinx button.btn.btn-success:focus{background-color:#fff!important;color:#427e44!important}.ptx-runestone-container button.btn.btn-success,.runestone-sphinx button.btn.btn-success{background-color:#427e44!important;color:#fff!important}.ptx-runestone-container button.btn.btn-primary:active,.ptx-runestone-container button.btn.btn-primary:focus,.runestone-sphinx button.btn.btn-primary:active,.runestone-sphinx button.btn.btn-primary:focus{background-color:#fff!important;color:#3379b6!important}.ptx-runestone-container button.btn.btn-primary,.runestone-sphinx button.btn.btn-primary{background-color:#3379b6!important;color:#fff!important}.ptx-runestone-container button.btn.btn-info:active,.ptx-runestone-container button.btn.btn-info:focus,.runestone-sphinx button.btn.btn-info:active,.runestone-sphinx button.btn.btn-info:focus{background-color:#fff!important;color:#1a6a83!important}.ptx-runestone-container button.btn.btn-info,.runestone-sphinx button.btn.btn-info{background-color:#1a6a83!important;color:#fff!important}.ptx-runestone-container button.btn.btn-warning:active,.ptx-runestone-container button.btn.btn-warning:focus,.runestone-sphinx button.btn.btn-warning:active,.runestone-sphinx button.btn.btn-warning:focus{background-color:#fff!important;color:#945c0e!important}.ptx-runestone-container button.btn.btn-warning,.runestone-sphinx button.btn.btn-warning{background-color:#945c0e!important;color:#fff!important}.ptx-runestone-container button.btn.btn-danger:active,.ptx-runestone-container button.btn.btn-danger:focus,.runestone-sphinx button.btn.btn-danger:active,.runestone-sphinx button.btn.btn-danger:focus{background-color:#fff!important;color:#d33a35!important}.ptx-runestone-container button.btn.btn-danger,.runestone-sphinx button.btn.btn-danger{background-color:#d33a35!important;color:#fff!important}.ptx-runestone-container button.btn.btn-link:active,.ptx-runestone-container button.btn.btn-link:focus,.runestone-sphinx button.btn.btn-link:active,.runestone-sphinx button.btn.btn-link:focus{background-color:#1a6a83!important;color:#fff!important}.ptx-runestone-container button.btn.btn-link,.runestone-sphinx button.btn.btn-link{background-color:#fff!important;color:#1a6a83!important}:root{--background:#fff;--outerBackground:#eee;--links:#0645ad;--bodyFont:var(--body-text-color,#000);--tooltip:#fff;--grayToWhite:#333;--navbar:#f8f8f8;--navbarFont:#707070;--navbarFontHover:#000;--alerts:#d9edf7;--completionButton:#f19711;--completionButtonHover:#ff9f19;--completionButtonText:#000;--admonition:#fcf8e3;--admonitionBorder:#fbeed5;--codeButtons:#474949;--codeButtonsBorder:#474949;--dangerAlerts:#f2dede;--successAlerts:#dff0d8;--contentWidthRegular:660px;--contentWidthWide:1060px;--componentBgColor:#f0f8ff;--componentBorderColor:#000;--questionBgColor:#e1efff;--parsonsBgColor:#ffa;--parsonsBorderColor:#ee0;--parsonsCorrectBgColor:#dff0d8;--parsonsCorrectBorderColor:#ade595;--parsonsIncorrectBgColor:#f2dede;--parsonsIncorrectBorderColor:#f2b6b6}:root.dark-mode{--background:#2c2f33;--outerBackground:#23272a;--links:#7289da;--bodyFont:var(--body-text-color,#99aab5);--tooltip:#000;--grayToWhite:#aaa;--navbar:#3d3d3d;--navbarFont:#fff;--navbarFontHover:#d6d6d6;--alerts:#714082;--completionButton:#650087;--completionButtonHover:#560073;--completionButtonText:#fff;--admonition:#3d3d3d;--admonitionBorder:#262626;--codeButtons:#67739d;--codeButtonsBorder:#fff;--dangerAlerts:#8c2626;--successAlerts:#217300;--componentBgColor:var(--rs-component-bg,var(--knowl-background,#07467d));--componentBorderColor:var(--rs-component-border,var(--knowl-border-color,#939090));--questionBgColor:var(--rs-component-bg,var(--knowl-nested-1-background,#0f5a9b));--parsonsBgColor:#e8e8b2;--parsonsBorderColor:#a8a82d;--parsonsCorrectBgColor:#a3c097;--parsonsCorrectBorderColor:#60904c;--parsonsIncorrectBgColor:#ae9090;--parsonsIncorrectBorderColor:#c16b6b}[data-theme=dark]{--background:#2c2f33;--outerBackground:#23272a;--links:#7289da;--bodyFont:#99aab5;--tooltip:#000;--grayToWhite:#fff;--navbar:#3d3d3d;--navbarFont:#fff;--navbarFontHover:#d6d6d6;--alerts:#714082;--completionButton:#650087;--completionButtonHover:#560073;--completionButtonText:#fff;--admonition:#3d3d3d;--admonitionBorder:#262626;--codeButtons:#7289da;--codeButtonsBorder:#fff;--dangerAlerts:#8c2626;--successAlerts:#217300;--componentBgColor:#07467d;--componentBorderColor:#939090;--questionBgColor:#17555d}#scprogresscontainer{margin:10px auto;max-width:500px;width:100%}#subchapterprogress{background-color:var(--alerts);border:1px solid var(--grayToWhite);border-radius:5px;height:20px;position:relative;width:100%}.exercise-statement{display:block;margin-bottom:1em}:root{--menu:#fff}[data-theme=dark]{--menu:#000}.my-highlighted-text{background-color:#ff9}.social-highlighted-text{background-color:#fcc}.highlight-option-box{left:0;position:absolute;top:0}.highlight-option-box li{height:24px}#continue-reading{display:none;padding-top:20px}#continue-reading a{float:right;margin-right:20px}li.completed{list-style-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAO5JREFUeNpi/P//PwMlgImBQjAwBthc4osH4skgNguJGrmA1BQgjgPiUJIMAGpWBVKrgNgAiL2P6H3aRrQBQM12QGo1EIsBcQxMM0oYABXxAjETFs2+QGobVHM9UPNSjEAEKgoEUjeBuBhNcwDUZm4gXg/U3IRuAcwLSkAsCcRdQE16QDoRiG2BGGQbOxA/BOIcbN5jhKVEoMYiINULFT8PxCJALAvlhwBtX4vXAKghpSBXoKlZCtQcQ1RCAirsBlJVSEIfgLiRpJQINKQdSNVCuTOB/Nt44xjkBWzY+iJvGRBr4pKHYUZKszNAgAEAln9yGpx/ZXMAAAAASUVORK5CYII=)}li.active{list-style-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIlJREFUeNpi/P//PwMlgImBQjAMDGCBsxZIkaYz4RmaAZhAHYjNoOxTQHwTvwsQgAeIe4E4DU18FhAXAPF3QgbMB+IQLOIgA4WAOBRfIOri0AwDIDktfAbYEBF89jRNB0eI0HMEnwGXgXgNHs1roGrweiERGmUMWKIxkZh08AWI04G4j5iEBBBgAPddF58mobqdAAAAAElFTkSuQmCC)}.infoTextCompleted{color:#3dc682}.infoTextActive,.infoTextCompleted{display:none;font-size:.9em;font-style:italic;margin-left:10px;opacity:.7}.infoTextActive{color:#ff9f19}.dropdown-menu{background-clip:padding-box;background-color:var(--menu);border:1px solid rgba(0,0,0,.2);border-radius:5px 5px 5px 5px;box-shadow:0 5px 10px rgba(0,0,0,.2);display:none;list-style:none outside none;margin:1px 0 0;min-width:160px;padding:4px 0;position:absolute;top:100%;z-index:1000}.dropdown-menu ul{list-style:disc none outside;margin:0 0 9px 25px;padding:0}.sidebar-highlights{background-color:#ff9}div.documentwrapper{border:0}div.bodywrapper{border-right:0}div.sphinxsidebar{border-left:1px solid #ccc;padding-left:10px}.body>.section .section{padding-top:1px}#jump-to-chapter{border:1px solid #ccc;letter-spacing:.015em;line-height:120%;margin-left:auto;margin-right:auto;padding:.5em;width:80%}#navigation-links{background-color:#f8f8f8;border:1px solid #ccc;margin:10px;padding:10px}.matrixeq_container{margin:0 0 6px;padding:6px}span.matrix_table{border:2px solid #000;margin:0 0 4px;overflow:visible;padding:0 1px;text-align:center}span.matrix_column,span.matrix_table{background-color:inherit;display:inline-table}span.matrix_column{border-width:0;font-family:monospace;font-size:12px;margin:0 1px;padding:2px 8px;vertical-align:middle}span.matrix_column div{background-color:inherit;display:block;margin:1px;padding:2px}span.matrix_table .matrix_column{border-style:none;margin-left:5px;margin-right:5px}span.matrix_table:before{top:-2px}span.matrix_table:after,span.matrix_table:before{background-color:inherit;content:" ";display:block;height:2px;margin:0 auto;position:relative;text-align:center;width:85%;z-index:100}span.matrix_table:after{top:2px}span.matrix_column:before{top:-2px}span.matrix_column:after,span.matrix_column:before{content:" ";display:block;height:2px;position:relative;width:85%;z-index:100}span.matrix_column:after{top:2px}span.matrix_table span.matrix_column:after,span.matrix_table span.matrix_column:before{height:0}span.matrix_table input[type=text]{appearance:none;background-color:inherit;box-shadow:none;display:block;font-family:sans-serif;font-size:12px;height:24px;margin:0;text-align:right;width:50px}span.matrix_operator{font-family:monospace;font-size:18px;margin:0 4px;padding:0}span.matrix_label,span.matrix_operator{display:inline-table;vertical-align:middle}span.matrix_label{font-family:sans-serif;font-size:12px;margin:0 1px;padding:0 0 0 20px}.lightcyanColor{background-color:#e0ffff}.lightgreyColor{background-color:#d3d3d3}.purpleColor{background-color:#dfb5e8}.yellowColor{background-color:#fdff9d}.webgl_container{background-color:#fcf8e3;display:block;margin-bottom:1em}.webgl_cmds,.webgl_container{box-sizing:border-box;width:100%}.webgl_cmds{padding:6px;text-align:center}.webgl_row2{box-sizing:border-box;display:block;height:550px;padding:0 4px;width:100%}.webgl_canvas,.webgl_editors{box-sizing:border-box;display:block;float:left;visibility:visible;width:50%}.webgl_canvas{font-size:12px;font-weight:400;padding-left:5px}.webgl_output{box-sizing:border-box;float:left;margin-top:6px;padding:4px;width:100%}.webgl_nav_tabs{background-color:#cfccb8;border-color:#fbeed5;display:inline-flex;height:31px;margin:0;overflow:hidden;padding:6px 0 0;width:100%}.webgl_nav_tabs,.webgl_nav_tabs li{border-top-left-radius:4px;border-top-right-radius:4px;list-style-type:none}.webgl_nav_tabs li{background-color:#e6e2cc;float:left;font-size:9pt;margin:0 0 0 4px;padding:4px 1px 4px 4px;position:relative}.webgl_nav_tabs li>a{color:#555;padding:8px;text-decoration:none}.webgl_nav_tabs>li>a:hover{border-bottom-width:0;border-color:#b4b19d}.webgl_nav_tabs li.active{background-color:#fff;list-style-image:none;list-style-type:none}.webgl_tab_content{background-color:#fcf8e3;border:0;clear:both;color:#c09853;margin:0 0 20px;position:absolute;width:100%;z-index:1}.webgl_tab_content.active{z-index:2}.webgl_tab_content>*{margin-left:auto;margin-right:auto}.webgl_tab_content .clearfix{position:static}.webgl_tab_editor{background-color:#fcf8e3;border:0;clear:both;color:#c09853;margin:0 0 20px;padding:10px 4px;position:absolute;width:100%}.webgl_code{float:left;width:100%}.webgl_tab_contents_text{background-color:#fcf8e3;border:0;clear:both;color:#c09853;margin:0 0 20px;padding:10px 4px;position:absolute;width:100%;z-index:1}.webgl_errorMessages{color:red}.webgl_warningMessages{color:#aa22a4}.webgl_infoMessages{color:#189040}.webgl_output_div{background-color:#fff;border:1px solid #d3d3d3;font-size:12px;font-weight:400;height:14em;margin:2px;overflow:auto;padding-bottom:4px;padding-left:4px;padding-top:4px;width:100%}.webgl_editor_highlight{background-color:#eee}.webgl_btn{background-color:thistle;border:1px solid transparent;border-radius:4px;cursor:pointer;display:inline-block;font-size:12px;font-weight:400;margin-bottom:0;padding:3px 6px;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.webgl_tabbed_editor{font-family:monospace,sans-serif;font-size:9pt;font-style:normal;resize:none;width:100%}.canvas3D{height:100%;width:100%}.CodeMirror.webgl-default{border:1px solid #eee;font-family:monospace,sans-serif;font-size:8pt;font-style:normal}button.btn.webgl-default{font-size:8pt}.runestone-sphinx .hidden{display:none}.runestone-sphinx .view-toggle{padding:.85em}.runestone-sphinx .presentation-mode section *{display:none}.runestone-sphinx .presentation-mode section .runestone,.runestone-sphinx .presentation-mode section .runestone *{display:initial}.runestone-sphinx .full-height,.runestone-sphinx .present{height:100vh}.runestone-sphinx .bottom{bottom:0;position:absolute}.runestone-sphinx #codeDisplayDiv{width:auto!important}.runestone-sphinx div.ExecutionVisualizer #dataViz{margin:0}.runestone-sphinx div.ExecutionVisualizer div#stackHeader{text-align:center}.runestone-sphinx #stackFrame{display:block!important}.runestone-sphinx #stackHeapTable{width:100%}.runestone-sphinx #stackHeapTable tr{justify-content:space-around}.runestone-sphinx div.ExecutionVisualizer td#heap_td,.runestone-sphinx div.ExecutionVisualizer td#stack_td{flex:1}.runestone-sphinx .presentation-title{display:none}.runestone-sphinx .present .presentation-title{display:block}.runestone-sphinx div.ExecutionVisualizer div#heap{float:none;padding-left:0}.runestone-sphinx #heap_td tr,.runestone-sphinx #stack_td tr{display:table-row}.runestone-sphinx #codeDisplayDiv{margin:0 auto}.runestone-sphinx #vizLayoutTd{flex:1}.runestone-sphinx #vizLayoutTdFirst{flex:2}.runestone-sphinx #vizLayoutTdSecond{flex:1}.runestone-sphinx #vizLayoutTdThird{flex:2}.runestone-sphinx #progOutputs{display:block!important;margin:0 20px;width:60%}.runestone-sphinx #pyStdout{width:100%!important}.runestone-sphinx div.ExecutionVisualizer #pyStdout{margin-bottom:1em}.runestone-sphinx div.ExecutionVisualizer table.visualizer{width:100%}.runestone-sphinx .present #vizLayoutTdThird{text-align:left}.runestone-sphinx .ac-block{display:flex;margin-bottom:1em}.runestone-sphinx .row-mode .ac-block{display:block;margin-bottom:0}.runestone-sphinx .row-mode .ac_code_div,.runestone-sphinx .row-mode .ac_output{display:block;float:none;max-width:none;width:auto}.runestone-sphinx .row-mode .ac_code_div{margin-bottom:1em}.runestone-sphinx .ac_section>*{max-width:100%}.runestone-sphinx .ac_output{display:block;max-width:100%}.runestone-sphinx .ac_output pre{min-height:60px;visibility:visible!important}.runestone-sphinx .CodeMirror{border-radius:3px;margin:0;max-width:100%;min-height:60px}.runestone-sphinx .container section>runestone:not(.ac_section){margin:0;max-width:none}.runestone-sphinx .presentation-options{align-items:center;display:flex;justify-content:flex-end}.runestone-sphinx .layout-btn{align-items:center;background-color:#fbeed5;border:2px solid #dfd4be;border-radius:2px;display:flex;justify-content:center;margin:0 .5rem;padding:.25rem;transition:all .2s ease}.runestone-sphinx .layout-btn.active-layout,.runestone-sphinx .layout-btn:focus{border:2px solid #979797;outline:none}.runestone-sphinx .sketchpad-container{min-height:300px;min-width:50%;padding:0 15px}.runestone-sphinx .card-mode .sketchpad-container{display:inline-block;margin:0;vertical-align:top;width:50%}.runestone-sphinx .row-mode .error{margin:20px 15px}.runestone-sphinx .card-mode .error{display:inline-block;margin:28px 0 0;padding:0 15px;vertical-align:top;width:50%}.runestone-sphinx .sketchpad{background:#fff;border:2px solid grey;border-radius:3px;display:block;min-height:300px;width:100%}.runestone-sphinx .btn-presenter{border-radius:3px;font-weight:500;margin:1.5rem 0 1.5rem 1.5rem;padding:.5rem 1rem}.runestone-sphinx .btn-grey-outline{background:#fff;border:2px solid grey;color:grey}.runestone-sphinx .btn-grey-solid{background:grey;border:2px solid grey;color:#fff}.runestone-sphinx body.present .ac_section>*{max-width:none}.runestone-sphinx body.present iframe{width:100%}.runestone-sphinx body.present #relations-next,.runestone-sphinx body.present #relations-prev,.runestone-sphinx body.present .navLinkBg{display:none}.runestone-sphinx body.present .btn-presenter{position:absolute}.runestone-sphinx body.present .btn-presenter.prev-exercise{left:0}.runestone-sphinx body.present .btn-presenter.next-exercise{right:0} +/*# sourceMappingURL=prefix-runestone.677a75a9120449ff.css.map*/ \ No newline at end of file diff --git a/_static/prefix-runestone.f4ab138da65f4203.css.gz b/_static/prefix-runestone.677a75a9120449ff.css.gz old mode 100644 new mode 100755 similarity index 78% rename from _static/prefix-runestone.f4ab138da65f4203.css.gz rename to _static/prefix-runestone.677a75a9120449ff.css.gz index 14a8fe249ed9341f167b1ed90f7302ded67ba5ea..506a516f262356f78848e3661595a57dc906c449 GIT binary patch delta 7723 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 diff --git a/_static/prefix-runestone.677a75a9120449ff.css.map b/_static/prefix-runestone.677a75a9120449ff.css.map new file mode 100755 index 0000000..fcf11e3 --- /dev/null +++ b/_static/prefix-runestone.677a75a9120449ff.css.map @@ -0,0 +1 @@ +{"version":3,"file":"prefix-runestone.677a75a9120449ff.css","mappings":"AAAA;EAEE;;;;EAIA;EACA,2EAA2E;EAC3E,oFAAoF,CA6LtF,CArMA,qDCQE,yBAA0B,CAC1B,6BAA8B,CAF9B,sBDoMF,CA3MA,qDCYE,QDmMF,CA/MA,quBC2BE,aDgNF,CA3OA,oOCiCE,oBAAqB,CACrB,uBDoNF,CAtPA,uFCqCE,YAAa,CACb,QDqNF,CA3PA,0HC0CE,YDuNF,CAjQA,+CC6CE,4BDwNF,CArQA,wHCiDE,SD0NF,CA3QA,mECoDE,kBAAmB,CACnB,yBAA0B,CAC1B,wCAAyC,CACzC,qCAAsC,CACtC,gCD2NF,CAnRA,wGC4DE,eD6NF,CAzRA,mDC+DE,iBD8NF,CA7RA,iDCkEE,aAAc,CACd,cD+NF,CAlSA,qDCsEE,eAAgB,CAChB,UDgOF,CAvSA,uDC0EE,aDiOF,CA3SA,sGC8EE,aAAc,CACd,aAAc,CACd,iBAAkB,CAClB,uBDmOF,CApTA,mDCoFE,SDoOF,CAxTA,mDCuFE,aDqOF,CA5TA,mDC0FE,QDsOF,CAhUA,yEC6FE,eDuOF,CApUA,yDCgGE,eDwOF,CAxUA,iDCmGE,8BAA+B,CAC/B,2BAA4B,CAC5B,sBAAuB,CACvB,QDyOF,CA/UA,mDCyGE,aD0OF,CAnVA,gNC+GE,+BAAiC,CACjC,aD8OF,CA9VA,mSCuHE,aAAc,CACd,YAAa,CACb,QDmPF,CA5WA,yDC4HE,gBDoPF,CAhXA,kHCgIE,mBDsPF,CAtXA,oTCsIE,yBAA0B,CAC1B,cD0PF,CAjYA,kKC2IE,cD4PF,CAvYA,wLC+IE,QAAS,CACT,SD8PF,CA9YA,uDCmJE,kBD+PF,CAlZA,oKCuJE,6BAA8B,CAC9B,0BAA2B,CAC3B,qBAAsB,CACtB,SDiQF,CA3ZA,8QC8JE,WDmQF,CAjaA,iFCiKE,4BAA6B,CAC7B,8BAA+B,CAC/B,2BAA4B,CAC5B,sBDoQF,CAxaA,oRCwKE,uBDsQF,CA9aA,6DC2KE,uBAAyB,CACzB,YAAa,CACb,0BDuQF,CApbA,6DCoLE,aDyQF,CA7bA,6DCuLE,eD0QF,CAjcA,uDC0LE,wBAAyB,CACzB,gBD2QF,CAtcA,kGC+LE,SD6QF,CC1QA,gLAMI,gCAAkC,CAClC,iCAAmC,CACnC,yBAA2B,CAJ3B,oBAAsB,CACtB,0BDkRF,CCvRF,8GAYI,yBDiRF,CC7RF,uEAeI,2BDkRF,CCjSF,+EAkBI,4BDmRF,CCrSF,sLAsBI,UDqRF,CC3SF,oHA0BI,qBAAsB,CACtB,uBDuRF,CClTF,uDA8BI,0BDwRF,CCtTF,oGAkCI,uBD0RF,CC5TF,mDAqCI,wBD2RF,CChUF,iJA0CI,SAAU,CACV,QD8RF,CCzUF,kGA+CI,sBDgSF,CC/UF,2DAkDI,YDiSF,CCnVF,sJAsDI,+BDmSF,CCzVF,yDAyDI,qBDoSF,CC7VF,yDA4DI,kCDqSF,CCjWF,8HAgEI,+BDuSF,CCvWF,kKAoEI,+BDySF,CACF,CCvSA,WACE,gCAAmC,CACnC,8BACA,uQDySF,CArjBA,iECsRE,kCAAmC,CACnC,iCAAkC,CANlC,oBAAqB,CACrB,gCAAmC,CACnC,iBAAkB,CAClB,eAAgB,CAChB,aAAc,CANd,iBAAkB,CAClB,ODiTF,CAjkBA,iGC0RE,eD2SF,CArkBA,yFC6RE,eD4SF,CAzkBA,gLCiSE,eD8SF,CA/kBA,2FCoSE,eD+SF,CAnlBA,2FCuSE,eDgTF,CAvlBA,iGC0SE,eDiTF,CA3lBA,6FC6SE,eDkTF,CA/lBA,2FCgTE,eDmTF,CAnmBA,2FCmTE,eDoTF,CAvmBA,6FCsTE,eDqTF,CA3mBA,2FCyTE,eDsTF,CA/mBA,yFC4TE,eDuTF,CAnnBA,qGC+TE,eDwTF,CAvnBA,yFCkUE,eDyTF,CA3nBA,yFCqUE,eD0TF,CA/nBA,iGCwUE,eD2TF,CAnoBA,qFC2UE,eD4TF,CAvoBA,+FC8UE,eD6TF,CA3oBA,qFCiVE,eD8TF,CA/oBA,6FCoVE,eD+TF,CAnpBA,+FCuVE,eDgUF,CAvpBA,iGC0VE,eDiUF,CA3pBA,uFC6VE,eDkUF,CA/pBA,6FCgWE,eDmUF,CAnqBA,uFCmWE,eDoUF,CAvqBA,2FCsWE,eDqUF,CA3qBA,yFCyWE,eDsUF,CA/qBA,yFC4WE,eDuUF,CAnrBA,yFC+WE,eDwUF,CAvrBA,yFCkXE,eDyUF,CA3rBA,yGCqXE,eD0UF,CA/rBA,iGCwXE,eD2UF,CAnsBA,6FC2XE,eD4UF,CAvsBA,2FC8XE,eD6UF,CA3sBA,uGCiYE,eD8UF,CA/sBA,6FCoYE,eD+UF,CAntBA,+FCuYE,eDgVF,CAvtBA,iGC0YE,eDiVF,CA3tBA,yFC6YE,eDkVF,CA/tBA,yFCgZE,eDmVF,CAnuBA,qGCmZE,eDoVF,CAvuBA,qGCsZE,eDqVF,CA3uBA,uGCyZE,eDsVF,CA/uBA,mGC4ZE,eDuVF,CAnvBA,6FC+ZE,eDwVF,CAvvBA,+FCkaE,eDyVF,CA3vBA,uFCqaE,eD0VF,CA/vBA,yFCwaE,eD2VF,CAnwBA,yFC2aE,eD4VF,CAvwBA,iGC8aE,eD6VF,CA3wBA,2FCibE,eD8VF,CA/wBA,6FCobE,eD+VF,CAnxBA,yFCubE,eDgWF,CAvxBA,yFC0bE,eDiWF,CA3xBA,6FC6bE,eDkWF,CA/xBA,uGCgcE,eDmWF,CAnyBA,qGCmcE,eDoWF,CAvyBA,qGCscE,eDqWF,CA3yBA,yGCycE,eDsWF,CA/yBA,uGC4cE,eDuWF,CAnzBA,2GC+cE,eDwWF,CAvzBA,yFCkdE,eDyWF,CA3zBA,uGCqdE,eD0WF,CA/zBA,yGCwdE,eD2WF,CAn0BA,6GC2dE,eD4WF,CAv0BA,+FC8dE,eD6WF,CA30BA,qGCieE,eD8WF,CA/0BA,6FCoeE,eD+WF,CAn1BA,yFCueE,eDgXF,CAv1BA,yFC0eE,eDiXF,CA31BA,2FC6eE,eDkXF,CA/1BA,2FCgfE,eDmXF,CAn2BA,yFCmfE,eDoXF,CAv2BA,2GCsfE,eDqXF,CA32BA,2GCyfE,eDsXF,CA/2BA,iGC4fE,eDuXF,CAn3BA,yFC+fE,eDwXF,CAv3BA,2FCkgBE,eDyXF,CA33BA,yFCqgBE,eD0XF,CA/3BA,+FCwgBE,eD2XF,CAn4BA,yGC2gBE,eD4XF,CAv4BA,yGC8gBE,eD6XF,CA34BA,2FCihBE,eD8XF,CA/4BA,yGCohBE,eD+XF,CAn5BA,2GCuhBE,eDgYF,CAv5BA,mGC0hBE,eDiYF,CA35BA,qGC6hBE,eDkYF,CA/5BA,uGCgiBE,eDmYF,CAn6BA,+FCmiBE,eDoYF,CAv6BA,2GCsiBE,eDqYF,CA36BA,mGCyiBE,eDsYF,CA/6BA,qGC4iBE,eDuYF,CAn7BA,2GC+iBE,eDwYF,CAv7BA,mGCkjBE,eDyYF,CA37BA,qGCqjBE,eD0YF,CA/7BA,qGCwjBE,eD2YF,CAn8BA,uGC2jBE,eD4YF,CAv8BA,iGC8jBE,eD6YF,CA38BA,qGCikBE,eD8YF,CA/8BA,mGCokBE,eD+YF,CAn9BA,uGCukBE,eDgZF,CAv9BA,yGC0kBE,eDiZF,CA39BA,iHC6kBE,eDkZF,CA/9BA,yFCglBE,eDmZF,CAn+BA,yFCmlBE,eDoZF,CAv+BA,yFCslBE,eDqZF,CA3+BA,iGCylBE,eDsZF,CA/+BA,mGC4lBE,eDuZF,CAn/BA,yGC+lBE,eDwZF,CAv/BA,2FCkmBE,eDyZF,CA3/BA,iGCqmBE,eD0ZF,CA//BA,6FCwmBE,eD2ZF,CAngCA,+FC2mBE,eD4ZF,CAvgCA,6FC8mBE,eD6ZF,CA3gCA,qGCinBE,eD8ZF,CA/gCA,yGConBE,eD+ZF,CAnhCA,+FCunBE,eDgaF,CAvhCA,2GC0nBE,eDiaF,CA3hCA,yGC6nBE,eDkaF,CA/hCA,uGCgoBE,eDmaF,CAniCA,+GCmoBE,eDoaF,CAviCA,mHCsoBE,eDqaF,CA3iCA,uFCyoBE,eDsaF,CA/iCA,iGC4oBE,eDuaF,CAnjCA,yFC+oBE,eDwaF,CAvjCA,uGCkpBE,eDyaF,CA3jCA,mGCqpBE,eD0aF,CA/jCA,uGCwpBE,eD2aF,CAnkCA,qGC2pBE,eD4aF,CAvkCA,mGC8pBE,eD6aF,CA3kCA,+FCiqBE,eD8aF,CA/kCA,mGCoqBE,eD+aF,CAnlCA,qHCuqBE,eDgbF,CAvlCA,mHC0qBE,eDibF,CA3lCA,+GC6qBE,eDkbF,CA/lCA,mHCgrBE,eDmbF,CAnmCA,2FCmrBE,eDobF,CAvmCA,6FCsrBE,eDqbF,CA3mCA,2FCyrBE,eDsbF,CA/mCA,6FC4rBE,eDubF,CAnnCA,mGC+rBE,eDwbF,CAvnCA,qGCksBE,eDybF,CA3nCA,mGCqsBE,eD0bF,CA/nCA,mGCwsBE,eD2bF,CAnoCA,uGC2sBE,eD4bF,CAvoCA,yFC8sBE,eD6bF,CA3oCA,2FCitBE,eD8bF,CA/oCA,+FCotBE,eD+bF,CAnpCA,uFCutBE,eDgcF,CAvpCA,uFC0tBE,eDicF,CA3pCA,yFC6tBE,eDkcF,CA/pCA,iHCguBE,eDmcF,CAnqCA,yHCmuBE,eDocF,CAvqCA,2GCsuBE,eDqcF,CA3qCA,mHCyuBE,eDscF,CA/qCA,qHC4uBE,eDucF,CAnrCA,6HC+uBE,eDwcF,CAvrCA,mGCkvBE,eDycF,CA3rCA,6FCqvBE,eD0cF,CA/rCA,2GCwvBE,eD2cF,CAnsCA,uGC2vBE,eD4cF,CAvsCA,6FC8vBE,eD6cF,CA3sCA,2FCiwBE,eD8cF,CA/sCA,+FCowBE,eD+cF,CAntCA,qGCuwBE,eDgdF,CAvtCA,6FC0wBE,eDidF,CA3tCA,yFC6wBE,eDkdF,CA/tCA,yFCgxBE,eDmdF,CAnuCA,2FCmxBE,eDodF,CAvuCA,6FCsxBE,eDqdF,CA3uCA,6FCyxBE,eDsdF,CA/uCA,yFC4xBE,eDudF,CAnvCA,uGC+xBE,eDwdF,CAvvCA,yGCkyBE,eDydF,CA3vCA,2GCqyBE,eD0dF,CA/vCA,uGCwyBE,eD2dF,CAnwCA,uGC2yBE,eD4dF,CAvwCA,uGC8yBE,eD6dF,CA3wCA,iGCizBE,eD8dF,CA/wCA,+FCozBE,eD+dF,CAnxCA,6FCuzBE,eDgeF,CAvxCA,qGC0zBE,eDieF,CA3xCA,iGC6zBE,eDkeF,CA/xCA,mGCg0BE,eDmeF,CAnyCA,2FCm0BE,eDoeF,CAvyCA,2FCs0BE,eDqeF,CA3yCA,iGCy0BE,eDseF,CA/yCA,iGC40BE,eDueF,CAnzCA,mGC+0BE,eDweF,CAvzCA,yGCk1BE,eDyeF,CA3zCA,uGCq1BE,eD0eF,CA/zCA,mGCw1BE,eD2eF,CAn0CA,mGC21BE,eD4eF,CAv0CA,mGC81BE,eD6eF,CA30CA,6GCi2BE,eD8eF,CA/0CA,mHCo2BE,eD+eF,CAn1CA,6GCu2BE,eDgfF,CAv1CA,yGC02BE,eDifF,CA31CA,yGC62BE,eDkfF,CA/1CA,6GCg3BE,eDmfF,CAn2CA,qFCm3BE,eDofF,CAv2CA,mGCs3BE,eDqfF,CA32CA,mGCy3BE,eDsfF,CA/2CA,iGC43BE,eDufF,CAn3CA,yFC+3BE,eDwfF,CAv3CA,2FCk4BE,eDyfF,CA33CA,2FCq4BE,eD0fF,CA/3CA,mGCw4BE,eD2fF,CAn4CA,yFC24BE,eD4fF,CAv4CA,2FC84BE,eD6fF,CA34CA,yFCi5BE,eD8fF,CA/4CA,6FCo5BE,eD+fF,CAn5CA,6FCu5BE,eDggBF,CAv5CA,yGC05BE,eDigBF,CA35CA,yFC65BE,eDkgBF,CA/5CA,qGCg6BE,eDmgBF,CAn6CA,uFCm6BE,eDogBF,CAv6CA,2FCs6BE,eDqgBF,CA36CA,2FCy6BE,eDsgBF,CA/6CA,mGC46BE,eDugBF,CAn7CA,yFC+6BE,eDwgBF,CAv7CA,mGCk7BE,eDygBF,CA37CA,qGCq7BE,eD0gBF,CA/7CA,iGCw7BE,eD2gBF,CAn8CA,6QCi8BE,eD8gBF,CA/8CA,8KCu8BE,eDghBF,CAv9CA,kLC68BE,eDkhBF,CA/9CA,2FCg9BE,eDmhBF,CAn+CA,mGCm9BE,eDohBF,CAv+CA,iHCs9BE,eDqhBF,CA3+CA,mGCy9BE,eDshBF,CA/+CA,mHC49BE,eDuhBF,CAn/CA,+GC+9BE,eDwhBF,CAv/CA,6GCk+BE,eDyhBF,CA3/CA,yGCq+BE,eD0hBF,CA//CA,uFCw+BE,eD2hBF,CAngDA,2FC2+BE,eD4hBF,CAvgDA,qGC8+BE,eD6hBF,CA3gDA,mGCi/BE,eD8hBF,CA/gDA,qGCo/BE,eD+hBF,CAnhDA,+GCu/BE,eDgiBF,CAvhDA,iHC0/BE,eDiiBF,CA3hDA,uHC6/BE,eDkiBF,CA/hDA,+HCggCE,eDmiBF,CAniDA,mHCmgCE,eDoiBF,CAviDA,2HCsgCE,eDqiBF,CA3iDA,qHCygCE,eDsiBF,CA/iDA,6GC4gCE,eDuiBF,CAnjDA,2GC+gCE,eDwiBF,CAvjDA,+GCkhCE,eDyiBF,CA3jDA,yGCqhCE,eD0iBF,CA/jDA,+FCwhCE,eD2iBF,CAnkDA,uGC2hCE,eD4iBF,CAvkDA,mGC8hCE,eD6iBF,CA3kDA,mGCiiCE,eD8iBF,CA/kDA,qGCoiCE,eD+iBF,CAnlDA,mGCuiCE,eDgjBF,CAvlDA,+FC0iCE,eDijBF,CA3lDA,mKCmjCE,6BAA8B,CAC9B,0BAA2B,CAC3B,qBDojBF,CAzmDA,qDCyjCE,yCAA6C,CAD7C,cDsjBF,CA9mDA,qDCgkCE,qBAAsB,CADtB,UAAc,CAHd,qDAA2D,CAC3D,cAAe,CACf,sBDwjBF,CAtnDA,sOCskCE,mBAAoB,CACpB,iBAAkB,CAClB,mBD0jBF,CAloDA,+CC2kCE,aAAc,CACd,oBD2jBF,CAvoDA,sHCglCE,aAAc,CACd,yBD6jBF,CA9oDA,2DColCE,yCAA0C,CAC1C,mBD8jBF,CAnpDA,yDCwlCE,QD+jBF,CAvpDA,mDC2lCE,qBDgkBF,CA3pDA,maCkmCE,aAAc,CAEd,WAAY,CADZ,cDskBF,CAzqDA,qECumCE,iBDskBF,CA7qDA,yEC4mCE,qBAAsB,CACtB,qBAAsB,CACtB,iBAAkB,CAIlB,oBAAqB,CAErB,WAAY,CATZ,sBAAuB,CAQvB,cAAe,CATf,WAAY,CAKZ,sCAAwC,CACxC,iCAAmC,CACnC,8BD0kBF,CA3rDA,mECunCE,iBDwkBF,CA/rDA,iDC4nCE,QAAS,CACT,yBAA6B,CAF7B,kBAAmB,CADnB,eD4kBF,CAtsDA,6DCsoCE,kBAAsB,CACtB,QAAS,CALT,UAAW,CAEX,WAAY,CACZ,eAAgB,CAFhB,SAAU,CAHV,iBAAkB,CAClB,SDglBF,CAjtDA,4LCgpCE,SAAU,CAHV,WAAY,CACZ,QAAS,CACT,gBAAiB,CAJjB,eAAgB,CAChB,UDglBF,CA5tDA,uECmpCE,cD6kBF,CAhuDA,wlBCoqCE,aAAc,CAHd,mBAAoB,CACpB,eAAgB,CAChB,eD0lBF,CA7vDA,w+CCgsCE,UAAc,CAFd,eAAgB,CAChB,aDknBF,CAjzDA,4SCysCE,kBAAmB,CADnB,eDwnBF,CAh0DA,ovBCutCE,aDmoBF,CA11DA,4SCguCE,kBAAmB,CADnB,eD0oBF,CAz2DA,ovBC8uCE,aDqpBF,CAn4DA,oGCkvCE,cDupBF,CAz4DA,oGCsvCE,cDypBF,CA/4DA,oGC0vCE,cD2pBF,CAr5DA,oGC8vCE,cD6pBF,CA35DA,oGCkwCE,cD+pBF,CAj6DA,oGCswCE,cDiqBF,CAv6DA,+CCywCE,eDkqBF,CA36DA,uDC6wCE,cAAe,CACf,eAAgB,CAChB,eAAgB,CAHhB,kBDsqBF,CCjqBA,gFAEI,cDoqBF,CACF,CAx7DA,gHCwxCE,aDsqBF,CA97DA,4GC6xCE,wBAAyB,CADzB,YDyqBF,CAr8DA,iECgyCE,eDyqBF,CAz8DA,mECmyCE,gBD0qBF,CA78DA,qECsyCE,iBD2qBF,CAj9DA,uECyyCE,kBD4qBF,CAr9DA,qEC4yCE,kBD6qBF,CAz9DA,2EC+yCE,wBD8qBF,CA79DA,2ECkzCE,wBD+qBF,CAj+DA,6ECqzCE,yBDgrBF,CAr+DA,mECwzCE,UDirBF,CAz+DA,uEC2zCE,aDkrBF,CA7+DA,0KC+zCE,aDorBF,CAn/DA,uECk0CE,aDqrBF,CAv/DA,0KCs0CE,aDurBF,CA7/DA,iECy0CE,aDwrBF,CAjgEA,8JC60CE,aD0rBF,CAvgEA,uECg1CE,aD2rBF,CA3gEA,0KCo1CE,aD6rBF,CAjhEA,qECu1CE,aD8rBF,CArhEA,sKC21CE,aDgsBF,CA3hEA,mEC+1CE,wBAAyB,CADzB,UDksBF,CAhiEA,kKCm2CE,wBDmsBF,CAtiEA,mECs2CE,wBDosBF,CA1iEA,kKC02CE,wBDssBF,CAhjEA,6DC62CE,wBDusBF,CApjEA,sJCi3CE,wBDysBF,CA1jEA,mECo3CE,wBD0sBF,CA9jEA,kKCw3CE,wBD4sBF,CApkEA,iEC23CE,wBD6sBF,CAxkEA,8JC+3CE,wBD+sBF,CA9kEA,qECo4CE,4BAAgC,CADhC,kBAAmB,CADnB,kBDktBF,CAplEA,kGCy4CE,kBAAmB,CADnB,YDmtBF,CA3lEA,4NC+4CE,eDstBF,CArmEA,yECm5CE,eAAgB,CADhB,cDwtBF,CA1mEA,qECu5CE,eAAgB,CAChB,gBAAiB,CAFjB,cD0tBF,CAhnEA,2EC25CE,oBAAqB,CAErB,gBAAiB,CADjB,iBD0tBF,CAtnEA,iDCi6CE,kBAAmB,CADnB,YD2tBF,CA3nEA,kGCq6CE,sBD4tBF,CAjoEA,iDCw6CE,eD6tBF,CAroEA,iDC26CE,aD8tBF,CC5tBA,wGAII,UAAW,CAFX,UAAW,CAIX,eAAgB,CADhB,gBAAiB,CAEjB,sBAAuB,CACvB,kBAAmB,CALnB,WDouBF,CCvuBF,+EAWI,iBDguBF,CACF,CAzpEA,kKC67CE,WDkuBF,CA/pEA,mECg8CE,aAAc,CACd,wBDmuBF,CApqEA,iECu8CE,0BAA8B,CAD9B,gBAAiB,CADjB,eAAgB,CADhB,iBDuuBF,CA3qEA,qRC48CE,eDuuBF,CAnrEA,2OCo9CE,UAAc,CAHd,aAAc,CACd,aAAc,CACd,sBD2uBF,CA9rEA,qRCy9CE,qBD6uBF,CAtsEA,0KCi+CE,aAAc,CADd,2BAA+B,CAF/B,cAAe,CADf,kBAAmB,CAEnB,gBDivBF,CAhtEA,kqBCy+CE,UDqvBF,CA9tEA,spBCi/CE,qBD2vBF,CA5uEA,2DCq/CE,iBAAkB,CAClB,sBAAuB,CAFvB,kBD8vBF,CAlvEA,gNC4/CE,uDDgwBF,CA5vEA,qDCkgDE,wBAAyB,CACzB,iBAAkB,CAFlB,aAAc,CADd,aAAc,CADd,eDqwBF,CApwEA,mDCygDE,qBAAsB,CACtB,iBAAkB,CAClB,iDAAsD,CACtD,yCAA8C,CAJ9C,UAAW,CADX,aAAc,CADd,eDwwBF,CA9wEA,2DCkhDE,uBAAwB,CACxB,eAAgB,CAHhB,cAAe,CACf,eAAgB,CAFhB,SDuwBF,CAtxEA,mDC6hDE,oBAAqB,CACrB,wBAAyB,CACzB,qBAAsB,CACtB,iBAAkB,CALlB,UAAc,CALd,aAAc,CAGd,cAAe,CACf,sBAAuB,CAFvB,eAAgB,CADhB,aAAc,CAKd,oBDwwBF,CApyEA,6DCuiDE,4BAA6B,CAC7B,eAAgB,CAHhB,aAAc,CADd,iBAAkB,CADlB,SAAU,CAGV,oBDuwBF,CA7yEA,2EC2iDE,gBAAiB,CACjB,iBDswBF,CAlzEA,iECkjDE,gBAAiB,CADjB,iBAAkB,CADlB,iBAAkB,CADlB,kBD0wBF,CCrwBA,0FAEI,WDwwBF,CACF,CCtwBA,0FAEI,WDywBF,CACF,CCvwBA,2FAEI,YD0wBF,CACF,CA30EA,6ECukDE,gBAAiB,CADjB,iBAAkB,CADlB,iBAAkB,CADlB,kBD8wBF,CAl1EA,qDC2kDE,iBAAkB,CADlB,kBD6wBF,CAv1EA,2EC+kDE,aAAc,CADd,cD8wBF,CA51EA,uGCmlDE,cAAe,CADf,eD+wBF,CAj2EA,w+FCsoDE,cAAe,CAEf,iBAAkB,CADlB,kBAAmB,CAFnB,iBDi0BF,CAt8EA,0vBCspDE,UD00BF,CAh+EA,iECypDE,UD20BF,CAp+EA,iEC4pDE,kBD40BF,CAx+EA,iEC+pDE,kBD60BF,CA5+EA,+DCkqDE,SD80BF,CAh/EA,+DCqqDE,kBD+0BF,CAp/EA,+DCwqDE,kBDg1BF,CAx/EA,+DC2qDE,SDi1BF,CA5/EA,+DC8qDE,kBDk1BF,CAhgFA,+DCirDE,kBDm1BF,CApgFA,+DCorDE,SDo1BF,CAxgFA,+DCurDE,kBDq1BF,CA5gFA,+DC0rDE,iBDs1BF,CAhhFA,2EC6rDE,UDu1BF,CAphFA,2ECgsDE,kBDw1BF,CAxhFA,2ECmsDE,kBDy1BF,CA5hFA,yECssDE,SD01BF,CAhiFA,yECysDE,kBD21BF,CApiFA,yEC4sDE,kBD41BF,CAxiFA,yEC+sDE,SD61BF,CA5iFA,yECktDE,kBD81BF,CAhjFA,yECqtDE,kBD+1BF,CApjFA,yECwtDE,SDg2BF,CAxjFA,yEC2tDE,kBDi2BF,CA5jFA,yEC8tDE,iBDk2BF,CAhkFA,yECiuDE,UDm2BF,CApkFA,2ECouDE,SDo2BF,CAxkFA,2ECuuDE,iBDq2BF,CA5kFA,2EC0uDE,iBDs2BF,CAhlFA,yEC6uDE,QDu2BF,CAplFA,yECgvDE,iBDw2BF,CAxlFA,yECmvDE,iBDy2BF,CA5lFA,yECsvDE,QD02BF,CAhmFA,yECyvDE,iBD22BF,CApmFA,yEC4vDE,iBD42BF,CAxmFA,yEC+vDE,QD62BF,CA5mFA,yECkwDE,iBD82BF,CAhnFA,yECqwDE,gBD+2BF,CApnFA,yECwwDE,SDg3BF,CAxnFA,+EC2wDE,gBDi3BF,CA5nFA,+EC8wDE,wBDk3BF,CAhoFA,+ECixDE,wBDm3BF,CApoFA,6ECoxDE,eDo3BF,CAxoFA,6ECuxDE,wBDq3BF,CA5oFA,6EC0xDE,wBDs3BF,CAhpFA,6EC6xDE,eDu3BF,CAppFA,6ECgyDE,wBDw3BF,CAxpFA,6ECmyDE,wBDy3BF,CA5pFA,6ECsyDE,eD03BF,CAhqFA,6ECyyDE,wBD23BF,CApqFA,6EC4yDE,uBD43BF,CAxqFA,6EC+yDE,aD63BF,CC33BA,mxBAaI,UDy4BF,CCt5BF,iEAgBI,UD04BF,CC15BF,iEAmBI,kBD24BF,CC95BF,iEAsBI,kBD44BF,CCl6BF,+DAyBI,SD64BF,CCt6BF,+DA4BI,kBD84BF,CC16BF,+DA+BI,kBD+4BF,CC96BF,+DAkCI,SDg5BF,CCl7BF,+DAqCI,kBDi5BF,CCt7BF,+DAwCI,kBDk5BF,CC17BF,+DA2CI,SDm5BF,CC97BF,+DA8CI,kBDo5BF,CCl8BF,+DAiDI,iBDq5BF,CCt8BF,2EAoDI,UDs5BF,CC18BF,2EAuDI,kBDu5BF,CC98BF,2EA0DI,kBDw5BF,CCl9BF,yEA6DI,SDy5BF,CCt9BF,yEAgEI,kBD05BF,CC19BF,yEAmEI,kBD25BF,CC99BF,yEAsEI,SD45BF,CCl+BF,yEAyEI,kBD65BF,CCt+BF,yEA4EI,kBD85BF,CC1+BF,yEA+EI,SD+5BF,CC9+BF,yEAkFI,kBDg6BF,CCl/BF,yEAqFI,iBDi6BF,CCt/BF,yEAwFI,UDk6BF,CC1/BF,2EA2FI,SDm6BF,CC9/BF,2EA8FI,iBDo6BF,CClgCF,2EAiGI,iBDq6BF,CCtgCF,yEAoGI,QDs6BF,CC1gCF,yEAuGI,iBDu6BF,CC9gCF,yEA0GI,iBDw6BF,CClhCF,yEA6GI,QDy6BF,CCthCF,yEAgHI,iBD06BF,CC1hCF,yEAmHI,iBD26BF,CC9hCF,yEAsHI,QD46BF,CCliCF,yEAyHI,iBD66BF,CCtiCF,yEA4HI,gBD86BF,CC1iCF,yEA+HI,SD+6BF,CC9iCF,+EAkII,gBDg7BF,CCljCF,+EAqII,wBDi7BF,CCtjCF,+EAwII,wBDk7BF,CC1jCF,6EA2II,eDm7BF,CC9jCF,6EA8II,wBDo7BF,CClkCF,6EAiJI,wBDq7BF,CCtkCF,6EAoJI,eDs7BF,CC1kCF,6EAuJI,wBDu7BF,CC9kCF,6EA0JI,wBDw7BF,CCllCF,6EA6JI,eDy7BF,CCtlCF,6EAgKI,wBD07BF,CC1lCF,6EAmKI,uBD27BF,CC9lCF,6EAsKI,aD47BF,CACF,CC17BA,mxBAaI,UDw8BF,CCr9BF,iEAgBI,UDy8BF,CCz9BF,iEAmBI,kBD08BF,CC79BF,iEAsBI,kBD28BF,CCj+BF,+DAyBI,SD48BF,CCr+BF,+DA4BI,kBD68BF,CCz+BF,+DA+BI,kBD88BF,CC7+BF,+DAkCI,SD+8BF,CCj/BF,+DAqCI,kBDg9BF,CCr/BF,+DAwCI,kBDi9BF,CCz/BF,+DA2CI,SDk9BF,CC7/BF,+DA8CI,kBDm9BF,CCjgCF,+DAiDI,iBDo9BF,CCrgCF,2EAoDI,UDq9BF,CCzgCF,2EAuDI,kBDs9BF,CC7gCF,2EA0DI,kBDu9BF,CCjhCF,yEA6DI,SDw9BF,CCrhCF,yEAgEI,kBDy9BF,CCzhCF,yEAmEI,kBD09BF,CC7hCF,yEAsEI,SD29BF,CCjiCF,yEAyEI,kBD49BF,CCriCF,yEA4EI,kBD69BF,CCziCF,yEA+EI,SD89BF,CC7iCF,yEAkFI,kBD+9BF,CCjjCF,yEAqFI,iBDg+BF,CCrjCF,yEAwFI,UDi+BF,CCzjCF,2EA2FI,SDk+BF,CC7jCF,2EA8FI,iBDm+BF,CCjkCF,2EAiGI,iBDo+BF,CCrkCF,yEAoGI,QDq+BF,CCzkCF,yEAuGI,iBDs+BF,CC7kCF,yEA0GI,iBDu+BF,CCjlCF,yEA6GI,QDw+BF,CCrlCF,yEAgHI,iBDy+BF,CCzlCF,yEAmHI,iBD0+BF,CC7lCF,yEAsHI,QD2+BF,CCjmCF,yEAyHI,iBD4+BF,CCrmCF,yEA4HI,gBD6+BF,CCzmCF,yEA+HI,SD8+BF,CC7mCF,+EAkII,gBD++BF,CCjnCF,+EAqII,wBDg/BF,CCrnCF,+EAwII,wBDi/BF,CCznCF,6EA2II,eDk/BF,CC7nCF,6EA8II,wBDm/BF,CCjoCF,6EAiJI,wBDo/BF,CCroCF,6EAoJI,eDq/BF,CCzoCF,6EAuJI,wBDs/BF,CC7oCF,6EA0JI,wBDu/BF,CCjpCF,6EA6JI,eDw/BF,CCrpCF,6EAgKI,wBDy/BF,CCzpCF,6EAmKI,uBD0/BF,CC7pCF,6EAsKI,aD2/BF,CACF,CCz/BA,oxBAaI,UDugCF,CCphCF,iEAgBI,UDwgCF,CCxhCF,iEAmBI,kBDygCF,CC5hCF,iEAsBI,kBD0gCF,CChiCF,+DAyBI,SD2gCF,CCpiCF,+DA4BI,kBD4gCF,CCxiCF,+DA+BI,kBD6gCF,CC5iCF,+DAkCI,SD8gCF,CChjCF,+DAqCI,kBD+gCF,CCpjCF,+DAwCI,kBDghCF,CCxjCF,+DA2CI,SDihCF,CC5jCF,+DA8CI,kBDkhCF,CChkCF,+DAiDI,iBDmhCF,CCpkCF,2EAoDI,UDohCF,CCxkCF,2EAuDI,kBDqhCF,CC5kCF,2EA0DI,kBDshCF,CChlCF,yEA6DI,SDuhCF,CCplCF,yEAgEI,kBDwhCF,CCxlCF,yEAmEI,kBDyhCF,CC5lCF,yEAsEI,SD0hCF,CChmCF,yEAyEI,kBD2hCF,CCpmCF,yEA4EI,kBD4hCF,CCxmCF,yEA+EI,SD6hCF,CC5mCF,yEAkFI,kBD8hCF,CChnCF,yEAqFI,iBD+hCF,CCpnCF,yEAwFI,UDgiCF,CCxnCF,2EA2FI,SDiiCF,CC5nCF,2EA8FI,iBDkiCF,CChoCF,2EAiGI,iBDmiCF,CCpoCF,yEAoGI,QDoiCF,CCxoCF,yEAuGI,iBDqiCF,CC5oCF,yEA0GI,iBDsiCF,CChpCF,yEA6GI,QDuiCF,CCppCF,yEAgHI,iBDwiCF,CCxpCF,yEAmHI,iBDyiCF,CC5pCF,yEAsHI,QD0iCF,CChqCF,yEAyHI,iBD2iCF,CCpqCF,yEA4HI,gBD4iCF,CCxqCF,yEA+HI,SD6iCF,CC5qCF,+EAkII,gBD8iCF,CChrCF,+EAqII,wBD+iCF,CCprCF,+EAwII,wBDgjCF,CCxrCF,6EA2II,eDijCF,CC5rCF,6EA8II,wBDkjCF,CChsCF,6EAiJI,wBDmjCF,CCpsCF,6EAoJI,eDojCF,CCxsCF,6EAuJI,wBDqjCF,CC5sCF,6EA0JI,wBDsjCF,CChtCF,6EA6JI,eDujCF,CCptCF,6EAgKI,wBDwjCF,CCxtCF,6EAmKI,uBDyjCF,CC5tCF,6EAsKI,aD0jCF,CACF,CAp2GA,uDC6yEE,4BD2jCF,CAx2GA,yFCizEE,oBAAqB,CACrB,UAAW,CAFX,eD8jCF,CA92GA,8KCuzEE,kBAAmB,CACnB,UAAW,CAFX,eDgkCF,CAt3GA,2DC6zEE,UAAc,CADd,kBAAmB,CADnB,eAAgB,CAGhB,eD+jCF,CA73GA,iDCi0EE,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,kBD6/EF,CC7gFF,+EAoBI,QAAS,CACT,mBAAoB,CAFpB,SDggFF,CCnhFF,qFAwBI,WD+/EF,CACF,CAt4RA,woFC06ME,WAAY,CADZ,aDgiFF,CAz8RA,ozCC47ME,UD+iFF,CA3+RA,uEC+7ME,aAAc,CAEd,gBAAiB,CADjB,iBDijFF,CAj/RA,mECo8ME,qBDijFF,CAr/RA,iECu8ME,oBDkjFF,CAz/RA,uDC08ME,sBDmjFF,CA7/RA,uDC68ME,uBDojFF,CAjgSA,iECg9ME,iBDqjFF,CArgSA,iECs9ME,4BAA6B,CAC7B,QAAS,CAHT,iBAAkB,CADlB,UAAW,CAEX,gBDwjFF,CA7gSA,2DC09ME,sBDujFF,CAjhSA,yDC69ME,cDwjFF,CCtjFA,cACE,kBDwjFF,CAxhSA,gwCCo/ME,sBDwkFF,CCtkFA,4FAEI,uBDykFF,CC3kFF,6EAKI,uBD0kFF,CC/kFF,uEAQI,2BD2kFF,CCnlFF,8IAYI,4BD6kFF,CC1kFF,+EAEI,uBD8kFF,CC3kFF,iFAEI,wBD+kFF,CC5kFF,6FAEI,8BDglFF,CAjBF,CC5jFA,kHAEI,uBDilFF,CCnlFF,6EAKI,uBDklFF,CCvlFF,uEAQI,2BDmlFF,CC3lFF,8IAYI,4BDqlFF,CCllFF,+EAEI,uBDslFF,CCnlFF,iFAEI,wBDulFF,CCplFF,6FAEI,8BDwlFF,CAjBF,CCpkFA,mHAEI,uBDylFF,CC3lFF,6EAKI,uBD0lFF,CC/lFF,uEAQI,2BD2lFF,CCnmFF,8IAYI,4BD6lFF,CC1lFF,+EAEI,uBD8lFF,CC3lFF,iFAEI,wBD+lFF,CC5lFF,6FAEI,8BDgmFF,CAjBF,CC5kFA,6FAEI,uBDimFF,CCnmFF,6EAKI,uBDkmFF,CCvmFF,uEAQI,2BDmmFF,CC3mFF,8IAYI,4BDqmFF,CClmFF,+EAEI,uBDsmFF,CCnmFF,iFAEI,wBDumFF,CCpmFF,6FAEI,8BDwmFF,CAjBF,CCplFA,0FAEI,sBDymFF,CACF,CCvmFA,gHAEI,sBD0mFF,CACF,CCxmFA,iHAEI,sBD2mFF,CACF,CCzmFA,2FAEI,sBD4mFF,CACF,CA5uSA,yECmoNE,sBD6mFF,CC3mFA,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","sources":["webpack://WebComponents/./ptxrs-bootstrap.less","webpack://WebComponents/./node_modules/bootstrap/dist/css/bootstrap.css","webpack://WebComponents/./runestone/common/css/runestone-custom-sphinx-bootstrap.css","webpack://WebComponents/./runestone/accessibility/css/accessibility.css","webpack://WebComponents/./runestone/common/css/user-highlights.css","webpack://WebComponents/./runestone/matrixeq/css/matrixeq.css","webpack://WebComponents/./runestone/webgldemo/css/webglinteractive.css","webpack://WebComponents/./runestone/common/css/presenter_mode.less","webpack://WebComponents/./runestone/common/css/presenter_mode.css"],"sourcesContent":[".ptx-runestone-container,\n.runestone-sphinx {\n @import (less) url(\"./node_modules/bootstrap/dist/css/bootstrap.css\");\n @import (less) url(\"./runestone/common/css/runestone-custom-sphinx-bootstrap.css\");\n @import (less) url(\"./runestone/accessibility/css/accessibility.css\");\n}\n\n:root {\n --background: #ffffff;\n --outerBackground: #eeeeee;\n --links: #0645ad;\n --bodyFont: var(--body-text-color, #000000);\n --tooltip: #ffffff;\n --grayToWhite: #333333;\n --navbar: #f8f8f8;\n --navbarFont: #707070;\n --navbarFontHover: #000000;\n --alerts: #d9edf7;\n --completionButton: #f19711;\n --completionButtonHover: #ff9f19;\n --completionButtonText: #000000;\n --admonition: #fcf8e3;\n --admonitionBorder: #fbeed5;\n --codeButtons: #474949;\n --codeButtonsBorder: #474949;\n --dangerAlerts: #f2dede;\n --successAlerts: #dff0d8;\n --contentWidthRegular: 660px;\n --contentWidthWide: 1060px;\n --componentBgColor: #f0f8ff;\n --componentBorderColor: #000000;\n --questionBgColor: #e1efff;\n --parsonsBgColor: #ffa;\n --parsonsBorderColor: #ee0;\n --parsonsCorrectBgColor: #dff0d8;\n --parsonsCorrectBorderColor: #ade595;\n --parsonsIncorrectBgColor: #f2dede;\n --parsonsIncorrectBorderColor: #f2b6b6;\n}\n\n:root.dark-mode {\n --background: #2c2f33;\n --outerBackground: #23272a;\n --links: #7289da;\n --bodyFont: var(--body-text-color, #99aab5);\n --tooltip: #000000;\n --grayToWhite: #aaa;\n --navbar: #3d3d3d;\n --navbarFont: #ffffff;\n --navbarFontHover: #d6d6d6;\n --alerts: #714082;\n --completionButton: #650087;\n --completionButtonHover: #560073;\n --completionButtonText: #ffffff;\n --admonition: #3d3d3d;\n --admonitionBorder: #262626;\n --codeButtons: #67739d;\n --codeButtonsBorder: #ffffff;\n --dangerAlerts: #8c2626;\n --successAlerts: #217300;\n --componentBgColor: var(--rs-component-bg, var(--knowl-background, #07467d));\n --componentBorderColor: var(--rs-component-border, var(--knowl-border-color, #939090));\n --questionBgColor: var(--rs-component-bg, var(--knowl-nested-1-background, #0f5a9b));\n --parsonsBgColor: rgb(232, 232, 178);\n --parsonsBorderColor: rgb(168, 168, 45);\n --parsonsCorrectBgColor: #a3c097;\n --parsonsCorrectBorderColor: #60904c;\n --parsonsIncorrectBgColor: #ae9090;\n --parsonsIncorrectBorderColor: #c16b6b;\n}\n\n[data-theme=\"dark\"] {\n --background: #2c2f33;\n --outerBackground: #23272a;\n --links: #7289da;\n --bodyFont: #99aab5;\n --tooltip: #000000;\n --grayToWhite: #ffffff;\n --navbar: #3d3d3d;\n --navbarFont: #ffffff;\n --navbarFontHover: #d6d6d6;\n --alerts: #714082;\n --completionButton: #650087;\n --completionButtonHover: #560073;\n --completionButtonText: #ffffff;\n --admonition: #3d3d3d;\n --admonitionBorder: #262626;\n --codeButtons: #7289da;\n --codeButtonsBorder: #ffffff;\n --dangerAlerts: #8c2626;\n --successAlerts: #217300;\n --componentBgColor: #07467d;\n --componentBorderColor: #939090;\n --questionBgColor: rgb(23, 85, 93);\n}\n\n#scprogresscontainer {\n width: 100%;\n max-width: 500px;\n margin: 10px auto;\n}\n\n#subchapterprogress {\n width: 100%;\n background-color: var(--alerts);\n border: 1px solid var(--grayToWhite);\n border-radius: 5px;\n height: 20px;\n position: relative;\n}\n\n\n.exercise-statement {\n display: block;\n margin-bottom: 1em;\n}\n","/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\nhtml {\n font-family: sans-serif;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\nbody {\n margin: 0;\n}\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n vertical-align: baseline;\n}\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n[hidden],\ntemplate {\n display: none;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nabbr[title] {\n border-bottom: none;\n text-decoration: underline;\n -webkit-text-decoration: underline dotted;\n -moz-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\nb,\nstrong {\n font-weight: bold;\n}\ndfn {\n font-style: italic;\n}\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\nmark {\n background: #ff0;\n color: #000;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nfigure {\n margin: 1em 40px;\n}\nhr {\n -webkit-box-sizing: content-box;\n -moz-box-sizing: content-box;\n box-sizing: content-box;\n height: 0;\n}\npre {\n overflow: auto;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n font: inherit;\n margin: 0;\n}\nbutton {\n overflow: visible;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\ninput {\n line-height: normal;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n padding: 0;\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n -webkit-box-sizing: content-box;\n -moz-box-sizing: content-box;\n box-sizing: content-box;\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\nlegend {\n border: 0;\n padding: 0;\n}\ntextarea {\n overflow: auto;\n}\noptgroup {\n font-weight: bold;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntd,\nth {\n padding: 0;\n}\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n@media print {\n *,\n *:before,\n *:after {\n color: #000 !important;\n text-shadow: none !important;\n background: transparent !important;\n -webkit-box-shadow: none !important;\n box-shadow: none !important;\n }\n a,\n a:visited {\n text-decoration: underline;\n }\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n img {\n max-width: 100% !important;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n .navbar {\n display: none;\n }\n .btn > .caret,\n .dropup > .btn > .caret {\n border-top-color: #000 !important;\n }\n .label {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #ddd !important;\n }\n}\n@font-face {\n font-family: \"Glyphicons Halflings\";\n src: url(\"../fonts/glyphicons-halflings-regular.eot\");\n src: url(\"../fonts/glyphicons-halflings-regular.eot?#iefix\") format(\"embedded-opentype\"), url(\"../fonts/glyphicons-halflings-regular.woff2\") format(\"woff2\"), url(\"../fonts/glyphicons-halflings-regular.woff\") format(\"woff\"), url(\"../fonts/glyphicons-halflings-regular.ttf\") format(\"truetype\"), url(\"../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular\") format(\"svg\");\n}\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: \"Glyphicons Halflings\";\n font-style: normal;\n font-weight: 400;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.glyphicon-asterisk:before {\n content: \"\\002a\";\n}\n.glyphicon-plus:before {\n content: \"\\002b\";\n}\n.glyphicon-euro:before,\n.glyphicon-eur:before {\n content: \"\\20ac\";\n}\n.glyphicon-minus:before {\n content: \"\\2212\";\n}\n.glyphicon-cloud:before {\n content: \"\\2601\";\n}\n.glyphicon-envelope:before {\n content: \"\\2709\";\n}\n.glyphicon-pencil:before {\n content: \"\\270f\";\n}\n.glyphicon-glass:before {\n content: \"\\e001\";\n}\n.glyphicon-music:before {\n content: \"\\e002\";\n}\n.glyphicon-search:before {\n content: \"\\e003\";\n}\n.glyphicon-heart:before {\n content: \"\\e005\";\n}\n.glyphicon-star:before {\n content: \"\\e006\";\n}\n.glyphicon-star-empty:before {\n content: \"\\e007\";\n}\n.glyphicon-user:before {\n content: \"\\e008\";\n}\n.glyphicon-film:before {\n content: \"\\e009\";\n}\n.glyphicon-th-large:before {\n content: \"\\e010\";\n}\n.glyphicon-th:before {\n content: \"\\e011\";\n}\n.glyphicon-th-list:before {\n content: \"\\e012\";\n}\n.glyphicon-ok:before {\n content: \"\\e013\";\n}\n.glyphicon-remove:before {\n content: \"\\e014\";\n}\n.glyphicon-zoom-in:before {\n content: \"\\e015\";\n}\n.glyphicon-zoom-out:before {\n content: \"\\e016\";\n}\n.glyphicon-off:before {\n content: \"\\e017\";\n}\n.glyphicon-signal:before {\n content: \"\\e018\";\n}\n.glyphicon-cog:before {\n content: \"\\e019\";\n}\n.glyphicon-trash:before {\n content: \"\\e020\";\n}\n.glyphicon-home:before {\n content: \"\\e021\";\n}\n.glyphicon-file:before {\n content: \"\\e022\";\n}\n.glyphicon-time:before {\n content: \"\\e023\";\n}\n.glyphicon-road:before {\n content: \"\\e024\";\n}\n.glyphicon-download-alt:before {\n content: \"\\e025\";\n}\n.glyphicon-download:before {\n content: \"\\e026\";\n}\n.glyphicon-upload:before {\n content: \"\\e027\";\n}\n.glyphicon-inbox:before {\n content: \"\\e028\";\n}\n.glyphicon-play-circle:before {\n content: \"\\e029\";\n}\n.glyphicon-repeat:before {\n content: \"\\e030\";\n}\n.glyphicon-refresh:before {\n content: \"\\e031\";\n}\n.glyphicon-list-alt:before {\n content: \"\\e032\";\n}\n.glyphicon-lock:before {\n content: \"\\e033\";\n}\n.glyphicon-flag:before {\n content: \"\\e034\";\n}\n.glyphicon-headphones:before {\n content: \"\\e035\";\n}\n.glyphicon-volume-off:before {\n content: \"\\e036\";\n}\n.glyphicon-volume-down:before {\n content: \"\\e037\";\n}\n.glyphicon-volume-up:before {\n content: \"\\e038\";\n}\n.glyphicon-qrcode:before {\n content: \"\\e039\";\n}\n.glyphicon-barcode:before {\n content: \"\\e040\";\n}\n.glyphicon-tag:before {\n content: \"\\e041\";\n}\n.glyphicon-tags:before {\n content: \"\\e042\";\n}\n.glyphicon-book:before {\n content: \"\\e043\";\n}\n.glyphicon-bookmark:before {\n content: \"\\e044\";\n}\n.glyphicon-print:before {\n content: \"\\e045\";\n}\n.glyphicon-camera:before {\n content: \"\\e046\";\n}\n.glyphicon-font:before {\n content: \"\\e047\";\n}\n.glyphicon-bold:before {\n content: \"\\e048\";\n}\n.glyphicon-italic:before {\n content: \"\\e049\";\n}\n.glyphicon-text-height:before {\n content: \"\\e050\";\n}\n.glyphicon-text-width:before {\n content: \"\\e051\";\n}\n.glyphicon-align-left:before {\n content: \"\\e052\";\n}\n.glyphicon-align-center:before {\n content: \"\\e053\";\n}\n.glyphicon-align-right:before {\n content: \"\\e054\";\n}\n.glyphicon-align-justify:before {\n content: \"\\e055\";\n}\n.glyphicon-list:before {\n content: \"\\e056\";\n}\n.glyphicon-indent-left:before {\n content: \"\\e057\";\n}\n.glyphicon-indent-right:before {\n content: \"\\e058\";\n}\n.glyphicon-facetime-video:before {\n content: \"\\e059\";\n}\n.glyphicon-picture:before {\n content: \"\\e060\";\n}\n.glyphicon-map-marker:before {\n content: \"\\e062\";\n}\n.glyphicon-adjust:before {\n content: \"\\e063\";\n}\n.glyphicon-tint:before {\n content: \"\\e064\";\n}\n.glyphicon-edit:before {\n content: \"\\e065\";\n}\n.glyphicon-share:before {\n content: \"\\e066\";\n}\n.glyphicon-check:before {\n content: \"\\e067\";\n}\n.glyphicon-move:before {\n content: \"\\e068\";\n}\n.glyphicon-step-backward:before {\n content: \"\\e069\";\n}\n.glyphicon-fast-backward:before {\n content: \"\\e070\";\n}\n.glyphicon-backward:before {\n content: \"\\e071\";\n}\n.glyphicon-play:before {\n content: \"\\e072\";\n}\n.glyphicon-pause:before {\n content: \"\\e073\";\n}\n.glyphicon-stop:before {\n content: \"\\e074\";\n}\n.glyphicon-forward:before {\n content: \"\\e075\";\n}\n.glyphicon-fast-forward:before {\n content: \"\\e076\";\n}\n.glyphicon-step-forward:before {\n content: \"\\e077\";\n}\n.glyphicon-eject:before {\n content: \"\\e078\";\n}\n.glyphicon-chevron-left:before {\n content: \"\\e079\";\n}\n.glyphicon-chevron-right:before {\n content: \"\\e080\";\n}\n.glyphicon-plus-sign:before {\n content: \"\\e081\";\n}\n.glyphicon-minus-sign:before {\n content: \"\\e082\";\n}\n.glyphicon-remove-sign:before {\n content: \"\\e083\";\n}\n.glyphicon-ok-sign:before {\n content: \"\\e084\";\n}\n.glyphicon-question-sign:before {\n content: \"\\e085\";\n}\n.glyphicon-info-sign:before {\n content: \"\\e086\";\n}\n.glyphicon-screenshot:before {\n content: \"\\e087\";\n}\n.glyphicon-remove-circle:before {\n content: \"\\e088\";\n}\n.glyphicon-ok-circle:before {\n content: \"\\e089\";\n}\n.glyphicon-ban-circle:before {\n content: \"\\e090\";\n}\n.glyphicon-arrow-left:before {\n content: \"\\e091\";\n}\n.glyphicon-arrow-right:before {\n content: \"\\e092\";\n}\n.glyphicon-arrow-up:before {\n content: \"\\e093\";\n}\n.glyphicon-arrow-down:before {\n content: \"\\e094\";\n}\n.glyphicon-share-alt:before {\n content: \"\\e095\";\n}\n.glyphicon-resize-full:before {\n content: \"\\e096\";\n}\n.glyphicon-resize-small:before {\n content: \"\\e097\";\n}\n.glyphicon-exclamation-sign:before {\n content: \"\\e101\";\n}\n.glyphicon-gift:before {\n content: \"\\e102\";\n}\n.glyphicon-leaf:before {\n content: \"\\e103\";\n}\n.glyphicon-fire:before {\n content: \"\\e104\";\n}\n.glyphicon-eye-open:before {\n content: \"\\e105\";\n}\n.glyphicon-eye-close:before {\n content: \"\\e106\";\n}\n.glyphicon-warning-sign:before {\n content: \"\\e107\";\n}\n.glyphicon-plane:before {\n content: \"\\e108\";\n}\n.glyphicon-calendar:before {\n content: \"\\e109\";\n}\n.glyphicon-random:before {\n content: \"\\e110\";\n}\n.glyphicon-comment:before {\n content: \"\\e111\";\n}\n.glyphicon-magnet:before {\n content: \"\\e112\";\n}\n.glyphicon-chevron-up:before {\n content: \"\\e113\";\n}\n.glyphicon-chevron-down:before {\n content: \"\\e114\";\n}\n.glyphicon-retweet:before {\n content: \"\\e115\";\n}\n.glyphicon-shopping-cart:before {\n content: \"\\e116\";\n}\n.glyphicon-folder-close:before {\n content: \"\\e117\";\n}\n.glyphicon-folder-open:before {\n content: \"\\e118\";\n}\n.glyphicon-resize-vertical:before {\n content: \"\\e119\";\n}\n.glyphicon-resize-horizontal:before {\n content: \"\\e120\";\n}\n.glyphicon-hdd:before {\n content: \"\\e121\";\n}\n.glyphicon-bullhorn:before {\n content: \"\\e122\";\n}\n.glyphicon-bell:before {\n content: \"\\e123\";\n}\n.glyphicon-certificate:before {\n content: \"\\e124\";\n}\n.glyphicon-thumbs-up:before {\n content: \"\\e125\";\n}\n.glyphicon-thumbs-down:before {\n content: \"\\e126\";\n}\n.glyphicon-hand-right:before {\n content: \"\\e127\";\n}\n.glyphicon-hand-left:before {\n content: \"\\e128\";\n}\n.glyphicon-hand-up:before {\n content: \"\\e129\";\n}\n.glyphicon-hand-down:before {\n content: \"\\e130\";\n}\n.glyphicon-circle-arrow-right:before {\n content: \"\\e131\";\n}\n.glyphicon-circle-arrow-left:before {\n content: \"\\e132\";\n}\n.glyphicon-circle-arrow-up:before {\n content: \"\\e133\";\n}\n.glyphicon-circle-arrow-down:before {\n content: \"\\e134\";\n}\n.glyphicon-globe:before {\n content: \"\\e135\";\n}\n.glyphicon-wrench:before {\n content: \"\\e136\";\n}\n.glyphicon-tasks:before {\n content: \"\\e137\";\n}\n.glyphicon-filter:before {\n content: \"\\e138\";\n}\n.glyphicon-briefcase:before {\n content: \"\\e139\";\n}\n.glyphicon-fullscreen:before {\n content: \"\\e140\";\n}\n.glyphicon-dashboard:before {\n content: \"\\e141\";\n}\n.glyphicon-paperclip:before {\n content: \"\\e142\";\n}\n.glyphicon-heart-empty:before {\n content: \"\\e143\";\n}\n.glyphicon-link:before {\n content: \"\\e144\";\n}\n.glyphicon-phone:before {\n content: \"\\e145\";\n}\n.glyphicon-pushpin:before {\n content: \"\\e146\";\n}\n.glyphicon-usd:before {\n content: \"\\e148\";\n}\n.glyphicon-gbp:before {\n content: \"\\e149\";\n}\n.glyphicon-sort:before {\n content: \"\\e150\";\n}\n.glyphicon-sort-by-alphabet:before {\n content: \"\\e151\";\n}\n.glyphicon-sort-by-alphabet-alt:before {\n content: \"\\e152\";\n}\n.glyphicon-sort-by-order:before {\n content: \"\\e153\";\n}\n.glyphicon-sort-by-order-alt:before {\n content: \"\\e154\";\n}\n.glyphicon-sort-by-attributes:before {\n content: \"\\e155\";\n}\n.glyphicon-sort-by-attributes-alt:before {\n content: \"\\e156\";\n}\n.glyphicon-unchecked:before {\n content: \"\\e157\";\n}\n.glyphicon-expand:before {\n content: \"\\e158\";\n}\n.glyphicon-collapse-down:before {\n content: \"\\e159\";\n}\n.glyphicon-collapse-up:before {\n content: \"\\e160\";\n}\n.glyphicon-log-in:before {\n content: \"\\e161\";\n}\n.glyphicon-flash:before {\n content: \"\\e162\";\n}\n.glyphicon-log-out:before {\n content: \"\\e163\";\n}\n.glyphicon-new-window:before {\n content: \"\\e164\";\n}\n.glyphicon-record:before {\n content: \"\\e165\";\n}\n.glyphicon-save:before {\n content: \"\\e166\";\n}\n.glyphicon-open:before {\n content: \"\\e167\";\n}\n.glyphicon-saved:before {\n content: \"\\e168\";\n}\n.glyphicon-import:before {\n content: \"\\e169\";\n}\n.glyphicon-export:before {\n content: \"\\e170\";\n}\n.glyphicon-send:before {\n content: \"\\e171\";\n}\n.glyphicon-floppy-disk:before {\n content: \"\\e172\";\n}\n.glyphicon-floppy-saved:before {\n content: \"\\e173\";\n}\n.glyphicon-floppy-remove:before {\n content: \"\\e174\";\n}\n.glyphicon-floppy-save:before {\n content: \"\\e175\";\n}\n.glyphicon-floppy-open:before {\n content: \"\\e176\";\n}\n.glyphicon-credit-card:before {\n content: \"\\e177\";\n}\n.glyphicon-transfer:before {\n content: \"\\e178\";\n}\n.glyphicon-cutlery:before {\n content: \"\\e179\";\n}\n.glyphicon-header:before {\n content: \"\\e180\";\n}\n.glyphicon-compressed:before {\n content: \"\\e181\";\n}\n.glyphicon-earphone:before {\n content: \"\\e182\";\n}\n.glyphicon-phone-alt:before {\n content: \"\\e183\";\n}\n.glyphicon-tower:before {\n content: \"\\e184\";\n}\n.glyphicon-stats:before {\n content: \"\\e185\";\n}\n.glyphicon-sd-video:before {\n content: \"\\e186\";\n}\n.glyphicon-hd-video:before {\n content: \"\\e187\";\n}\n.glyphicon-subtitles:before {\n content: \"\\e188\";\n}\n.glyphicon-sound-stereo:before {\n content: \"\\e189\";\n}\n.glyphicon-sound-dolby:before {\n content: \"\\e190\";\n}\n.glyphicon-sound-5-1:before {\n content: \"\\e191\";\n}\n.glyphicon-sound-6-1:before {\n content: \"\\e192\";\n}\n.glyphicon-sound-7-1:before {\n content: \"\\e193\";\n}\n.glyphicon-copyright-mark:before {\n content: \"\\e194\";\n}\n.glyphicon-registration-mark:before {\n content: \"\\e195\";\n}\n.glyphicon-cloud-download:before {\n content: \"\\e197\";\n}\n.glyphicon-cloud-upload:before {\n content: \"\\e198\";\n}\n.glyphicon-tree-conifer:before {\n content: \"\\e199\";\n}\n.glyphicon-tree-deciduous:before {\n content: \"\\e200\";\n}\n.glyphicon-cd:before {\n content: \"\\e201\";\n}\n.glyphicon-save-file:before {\n content: \"\\e202\";\n}\n.glyphicon-open-file:before {\n content: \"\\e203\";\n}\n.glyphicon-level-up:before {\n content: \"\\e204\";\n}\n.glyphicon-copy:before {\n content: \"\\e205\";\n}\n.glyphicon-paste:before {\n content: \"\\e206\";\n}\n.glyphicon-alert:before {\n content: \"\\e209\";\n}\n.glyphicon-equalizer:before {\n content: \"\\e210\";\n}\n.glyphicon-king:before {\n content: \"\\e211\";\n}\n.glyphicon-queen:before {\n content: \"\\e212\";\n}\n.glyphicon-pawn:before {\n content: \"\\e213\";\n}\n.glyphicon-bishop:before {\n content: \"\\e214\";\n}\n.glyphicon-knight:before {\n content: \"\\e215\";\n}\n.glyphicon-baby-formula:before {\n content: \"\\e216\";\n}\n.glyphicon-tent:before {\n content: \"\\26fa\";\n}\n.glyphicon-blackboard:before {\n content: \"\\e218\";\n}\n.glyphicon-bed:before {\n content: \"\\e219\";\n}\n.glyphicon-apple:before {\n content: \"\\f8ff\";\n}\n.glyphicon-erase:before {\n content: \"\\e221\";\n}\n.glyphicon-hourglass:before {\n content: \"\\231b\";\n}\n.glyphicon-lamp:before {\n content: \"\\e223\";\n}\n.glyphicon-duplicate:before {\n content: \"\\e224\";\n}\n.glyphicon-piggy-bank:before {\n content: \"\\e225\";\n}\n.glyphicon-scissors:before {\n content: \"\\e226\";\n}\n.glyphicon-bitcoin:before {\n content: \"\\e227\";\n}\n.glyphicon-btc:before {\n content: \"\\e227\";\n}\n.glyphicon-xbt:before {\n content: \"\\e227\";\n}\n.glyphicon-yen:before {\n content: \"\\00a5\";\n}\n.glyphicon-jpy:before {\n content: \"\\00a5\";\n}\n.glyphicon-ruble:before {\n content: \"\\20bd\";\n}\n.glyphicon-rub:before {\n content: \"\\20bd\";\n}\n.glyphicon-scale:before {\n content: \"\\e230\";\n}\n.glyphicon-ice-lolly:before {\n content: \"\\e231\";\n}\n.glyphicon-ice-lolly-tasted:before {\n content: \"\\e232\";\n}\n.glyphicon-education:before {\n content: \"\\e233\";\n}\n.glyphicon-option-horizontal:before {\n content: \"\\e234\";\n}\n.glyphicon-option-vertical:before {\n content: \"\\e235\";\n}\n.glyphicon-menu-hamburger:before {\n content: \"\\e236\";\n}\n.glyphicon-modal-window:before {\n content: \"\\e237\";\n}\n.glyphicon-oil:before {\n content: \"\\e238\";\n}\n.glyphicon-grain:before {\n content: \"\\e239\";\n}\n.glyphicon-sunglasses:before {\n content: \"\\e240\";\n}\n.glyphicon-text-size:before {\n content: \"\\e241\";\n}\n.glyphicon-text-color:before {\n content: \"\\e242\";\n}\n.glyphicon-text-background:before {\n content: \"\\e243\";\n}\n.glyphicon-object-align-top:before {\n content: \"\\e244\";\n}\n.glyphicon-object-align-bottom:before {\n content: \"\\e245\";\n}\n.glyphicon-object-align-horizontal:before {\n content: \"\\e246\";\n}\n.glyphicon-object-align-left:before {\n content: \"\\e247\";\n}\n.glyphicon-object-align-vertical:before {\n content: \"\\e248\";\n}\n.glyphicon-object-align-right:before {\n content: \"\\e249\";\n}\n.glyphicon-triangle-right:before {\n content: \"\\e250\";\n}\n.glyphicon-triangle-left:before {\n content: \"\\e251\";\n}\n.glyphicon-triangle-bottom:before {\n content: \"\\e252\";\n}\n.glyphicon-triangle-top:before {\n content: \"\\e253\";\n}\n.glyphicon-console:before {\n content: \"\\e254\";\n}\n.glyphicon-superscript:before {\n content: \"\\e255\";\n}\n.glyphicon-subscript:before {\n content: \"\\e256\";\n}\n.glyphicon-menu-left:before {\n content: \"\\e257\";\n}\n.glyphicon-menu-right:before {\n content: \"\\e258\";\n}\n.glyphicon-menu-down:before {\n content: \"\\e259\";\n}\n.glyphicon-menu-up:before {\n content: \"\\e260\";\n}\n* {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n*:before,\n*:after {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-size: 14px;\n line-height: 1.42857143;\n color: #333333;\n background-color: #fff;\n}\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\na {\n color: #337ab7;\n text-decoration: none;\n}\na:hover,\na:focus {\n color: #23527c;\n text-decoration: underline;\n}\na:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\nfigure {\n margin: 0;\n}\nimg {\n vertical-align: middle;\n}\n.img-responsive,\n.thumbnail > img,\n.thumbnail a > img,\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n display: block;\n max-width: 100%;\n height: auto;\n}\n.img-rounded {\n border-radius: 6px;\n}\n.img-thumbnail {\n padding: 4px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n display: inline-block;\n max-width: 100%;\n height: auto;\n}\n.img-circle {\n border-radius: 50%;\n}\nhr {\n margin-top: 20px;\n margin-bottom: 20px;\n border: 0;\n border-top: 1px solid #eeeeee;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n}\n[role=\"button\"] {\n cursor: pointer;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h1,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n font-family: inherit;\n font-weight: 500;\n line-height: 1.1;\n color: inherit;\n}\nh1 small,\nh2 small,\nh3 small,\nh4 small,\nh5 small,\nh6 small,\n.h1 small,\n.h2 small,\n.h3 small,\n.h4 small,\n.h5 small,\n.h6 small,\nh1 .small,\nh2 .small,\nh3 .small,\nh4 .small,\nh5 .small,\nh6 .small,\n.h1 .small,\n.h2 .small,\n.h3 .small,\n.h4 .small,\n.h5 .small,\n.h6 .small {\n font-weight: 400;\n line-height: 1;\n color: #777777;\n}\nh1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-top: 20px;\n margin-bottom: 10px;\n}\nh1 small,\n.h1 small,\nh2 small,\n.h2 small,\nh3 small,\n.h3 small,\nh1 .small,\n.h1 .small,\nh2 .small,\n.h2 .small,\nh3 .small,\n.h3 .small {\n font-size: 65%;\n}\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-top: 10px;\n margin-bottom: 10px;\n}\nh4 small,\n.h4 small,\nh5 small,\n.h5 small,\nh6 small,\n.h6 small,\nh4 .small,\n.h4 .small,\nh5 .small,\n.h5 .small,\nh6 .small,\n.h6 .small {\n font-size: 75%;\n}\nh1,\n.h1 {\n font-size: 36px;\n}\nh2,\n.h2 {\n font-size: 30px;\n}\nh3,\n.h3 {\n font-size: 24px;\n}\nh4,\n.h4 {\n font-size: 18px;\n}\nh5,\n.h5 {\n font-size: 14px;\n}\nh6,\n.h6 {\n font-size: 12px;\n}\np {\n margin: 0 0 10px;\n}\n.lead {\n margin-bottom: 20px;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n}\n@media (min-width: 768px) {\n .lead {\n font-size: 21px;\n }\n}\nsmall,\n.small {\n font-size: 85%;\n}\nmark,\n.mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n.text-left {\n text-align: left;\n}\n.text-right {\n text-align: right;\n}\n.text-center {\n text-align: center;\n}\n.text-justify {\n text-align: justify;\n}\n.text-nowrap {\n white-space: nowrap;\n}\n.text-lowercase {\n text-transform: lowercase;\n}\n.text-uppercase {\n text-transform: uppercase;\n}\n.text-capitalize {\n text-transform: capitalize;\n}\n.text-muted {\n color: #777777;\n}\n.text-primary {\n color: #337ab7;\n}\na.text-primary:hover,\na.text-primary:focus {\n color: #286090;\n}\n.text-success {\n color: #3c763d;\n}\na.text-success:hover,\na.text-success:focus {\n color: #2b542c;\n}\n.text-info {\n color: #31708f;\n}\na.text-info:hover,\na.text-info:focus {\n color: #245269;\n}\n.text-warning {\n color: #8a6d3b;\n}\na.text-warning:hover,\na.text-warning:focus {\n color: #66512c;\n}\n.text-danger {\n color: #a94442;\n}\na.text-danger:hover,\na.text-danger:focus {\n color: #843534;\n}\n.bg-primary {\n color: #fff;\n background-color: #337ab7;\n}\na.bg-primary:hover,\na.bg-primary:focus {\n background-color: #286090;\n}\n.bg-success {\n background-color: #dff0d8;\n}\na.bg-success:hover,\na.bg-success:focus {\n background-color: #c1e2b3;\n}\n.bg-info {\n background-color: #d9edf7;\n}\na.bg-info:hover,\na.bg-info:focus {\n background-color: #afd9ee;\n}\n.bg-warning {\n background-color: #fcf8e3;\n}\na.bg-warning:hover,\na.bg-warning:focus {\n background-color: #f7ecb5;\n}\n.bg-danger {\n background-color: #f2dede;\n}\na.bg-danger:hover,\na.bg-danger:focus {\n background-color: #e4b9b9;\n}\n.page-header {\n padding-bottom: 9px;\n margin: 40px 0 20px;\n border-bottom: 1px solid #eeeeee;\n}\nul,\nol {\n margin-top: 0;\n margin-bottom: 10px;\n}\nul ul,\nol ul,\nul ol,\nol ol {\n margin-bottom: 0;\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n margin-left: -5px;\n}\n.list-inline > li {\n display: inline-block;\n padding-right: 5px;\n padding-left: 5px;\n}\ndl {\n margin-top: 0;\n margin-bottom: 20px;\n}\ndt,\ndd {\n line-height: 1.42857143;\n}\ndt {\n font-weight: 700;\n}\ndd {\n margin-left: 0;\n}\n@media (min-width: 768px) {\n .dl-horizontal dt {\n float: left;\n width: 160px;\n clear: left;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .dl-horizontal dd {\n margin-left: 180px;\n }\n}\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n}\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\nblockquote {\n padding: 10px 20px;\n margin: 0 0 20px;\n font-size: 17.5px;\n border-left: 5px solid #eeeeee;\n}\nblockquote p:last-child,\nblockquote ul:last-child,\nblockquote ol:last-child {\n margin-bottom: 0;\n}\nblockquote footer,\nblockquote small,\nblockquote .small {\n display: block;\n font-size: 80%;\n line-height: 1.42857143;\n color: #777777;\n}\nblockquote footer:before,\nblockquote small:before,\nblockquote .small:before {\n content: \"\\2014 \\00A0\";\n}\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n text-align: right;\n border-right: 5px solid #eeeeee;\n border-left: 0;\n}\n.blockquote-reverse footer:before,\nblockquote.pull-right footer:before,\n.blockquote-reverse small:before,\nblockquote.pull-right small:before,\n.blockquote-reverse .small:before,\nblockquote.pull-right .small:before {\n content: \"\";\n}\n.blockquote-reverse footer:after,\nblockquote.pull-right footer:after,\n.blockquote-reverse small:after,\nblockquote.pull-right small:after,\n.blockquote-reverse .small:after,\nblockquote.pull-right .small:after {\n content: \"\\00A0 \\2014\";\n}\naddress {\n margin-bottom: 20px;\n font-style: normal;\n line-height: 1.42857143;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n}\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: #c7254e;\n background-color: #f9f2f4;\n border-radius: 4px;\n}\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: #fff;\n background-color: #333;\n border-radius: 3px;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\npre {\n display: block;\n padding: 9.5px;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n color: #333333;\n word-break: break-all;\n word-wrap: break-word;\n background-color: #f5f5f5;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\npre code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n}\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n.container {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n@media (min-width: 768px) {\n .container {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .container {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .container {\n width: 1170px;\n }\n}\n.container-fluid {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n.row {\n margin-right: -15px;\n margin-left: -15px;\n}\n.row-no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n.row-no-gutters [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n.col-xs-1,\n.col-sm-1,\n.col-md-1,\n.col-lg-1,\n.col-xs-2,\n.col-sm-2,\n.col-md-2,\n.col-lg-2,\n.col-xs-3,\n.col-sm-3,\n.col-md-3,\n.col-lg-3,\n.col-xs-4,\n.col-sm-4,\n.col-md-4,\n.col-lg-4,\n.col-xs-5,\n.col-sm-5,\n.col-md-5,\n.col-lg-5,\n.col-xs-6,\n.col-sm-6,\n.col-md-6,\n.col-lg-6,\n.col-xs-7,\n.col-sm-7,\n.col-md-7,\n.col-lg-7,\n.col-xs-8,\n.col-sm-8,\n.col-md-8,\n.col-lg-8,\n.col-xs-9,\n.col-sm-9,\n.col-md-9,\n.col-lg-9,\n.col-xs-10,\n.col-sm-10,\n.col-md-10,\n.col-lg-10,\n.col-xs-11,\n.col-sm-11,\n.col-md-11,\n.col-lg-11,\n.col-xs-12,\n.col-sm-12,\n.col-md-12,\n.col-lg-12 {\n position: relative;\n min-height: 1px;\n padding-right: 15px;\n padding-left: 15px;\n}\n.col-xs-1,\n.col-xs-2,\n.col-xs-3,\n.col-xs-4,\n.col-xs-5,\n.col-xs-6,\n.col-xs-7,\n.col-xs-8,\n.col-xs-9,\n.col-xs-10,\n.col-xs-11,\n.col-xs-12 {\n float: left;\n}\n.col-xs-12 {\n width: 100%;\n}\n.col-xs-11 {\n width: 91.66666667%;\n}\n.col-xs-10 {\n width: 83.33333333%;\n}\n.col-xs-9 {\n width: 75%;\n}\n.col-xs-8 {\n width: 66.66666667%;\n}\n.col-xs-7 {\n width: 58.33333333%;\n}\n.col-xs-6 {\n width: 50%;\n}\n.col-xs-5 {\n width: 41.66666667%;\n}\n.col-xs-4 {\n width: 33.33333333%;\n}\n.col-xs-3 {\n width: 25%;\n}\n.col-xs-2 {\n width: 16.66666667%;\n}\n.col-xs-1 {\n width: 8.33333333%;\n}\n.col-xs-pull-12 {\n right: 100%;\n}\n.col-xs-pull-11 {\n right: 91.66666667%;\n}\n.col-xs-pull-10 {\n right: 83.33333333%;\n}\n.col-xs-pull-9 {\n right: 75%;\n}\n.col-xs-pull-8 {\n right: 66.66666667%;\n}\n.col-xs-pull-7 {\n right: 58.33333333%;\n}\n.col-xs-pull-6 {\n right: 50%;\n}\n.col-xs-pull-5 {\n right: 41.66666667%;\n}\n.col-xs-pull-4 {\n right: 33.33333333%;\n}\n.col-xs-pull-3 {\n right: 25%;\n}\n.col-xs-pull-2 {\n right: 16.66666667%;\n}\n.col-xs-pull-1 {\n right: 8.33333333%;\n}\n.col-xs-pull-0 {\n right: auto;\n}\n.col-xs-push-12 {\n left: 100%;\n}\n.col-xs-push-11 {\n left: 91.66666667%;\n}\n.col-xs-push-10 {\n left: 83.33333333%;\n}\n.col-xs-push-9 {\n left: 75%;\n}\n.col-xs-push-8 {\n left: 66.66666667%;\n}\n.col-xs-push-7 {\n left: 58.33333333%;\n}\n.col-xs-push-6 {\n left: 50%;\n}\n.col-xs-push-5 {\n left: 41.66666667%;\n}\n.col-xs-push-4 {\n left: 33.33333333%;\n}\n.col-xs-push-3 {\n left: 25%;\n}\n.col-xs-push-2 {\n left: 16.66666667%;\n}\n.col-xs-push-1 {\n left: 8.33333333%;\n}\n.col-xs-push-0 {\n left: auto;\n}\n.col-xs-offset-12 {\n margin-left: 100%;\n}\n.col-xs-offset-11 {\n margin-left: 91.66666667%;\n}\n.col-xs-offset-10 {\n margin-left: 83.33333333%;\n}\n.col-xs-offset-9 {\n margin-left: 75%;\n}\n.col-xs-offset-8 {\n margin-left: 66.66666667%;\n}\n.col-xs-offset-7 {\n margin-left: 58.33333333%;\n}\n.col-xs-offset-6 {\n margin-left: 50%;\n}\n.col-xs-offset-5 {\n margin-left: 41.66666667%;\n}\n.col-xs-offset-4 {\n margin-left: 33.33333333%;\n}\n.col-xs-offset-3 {\n margin-left: 25%;\n}\n.col-xs-offset-2 {\n margin-left: 16.66666667%;\n}\n.col-xs-offset-1 {\n margin-left: 8.33333333%;\n}\n.col-xs-offset-0 {\n margin-left: 0%;\n}\n@media (min-width: 768px) {\n .col-sm-1,\n .col-sm-2,\n .col-sm-3,\n .col-sm-4,\n .col-sm-5,\n .col-sm-6,\n .col-sm-7,\n .col-sm-8,\n .col-sm-9,\n .col-sm-10,\n .col-sm-11,\n .col-sm-12 {\n float: left;\n }\n .col-sm-12 {\n width: 100%;\n }\n .col-sm-11 {\n width: 91.66666667%;\n }\n .col-sm-10 {\n width: 83.33333333%;\n }\n .col-sm-9 {\n width: 75%;\n }\n .col-sm-8 {\n width: 66.66666667%;\n }\n .col-sm-7 {\n width: 58.33333333%;\n }\n .col-sm-6 {\n width: 50%;\n }\n .col-sm-5 {\n width: 41.66666667%;\n }\n .col-sm-4 {\n width: 33.33333333%;\n }\n .col-sm-3 {\n width: 25%;\n }\n .col-sm-2 {\n width: 16.66666667%;\n }\n .col-sm-1 {\n width: 8.33333333%;\n }\n .col-sm-pull-12 {\n right: 100%;\n }\n .col-sm-pull-11 {\n right: 91.66666667%;\n }\n .col-sm-pull-10 {\n right: 83.33333333%;\n }\n .col-sm-pull-9 {\n right: 75%;\n }\n .col-sm-pull-8 {\n right: 66.66666667%;\n }\n .col-sm-pull-7 {\n right: 58.33333333%;\n }\n .col-sm-pull-6 {\n right: 50%;\n }\n .col-sm-pull-5 {\n right: 41.66666667%;\n }\n .col-sm-pull-4 {\n right: 33.33333333%;\n }\n .col-sm-pull-3 {\n right: 25%;\n }\n .col-sm-pull-2 {\n right: 16.66666667%;\n }\n .col-sm-pull-1 {\n right: 8.33333333%;\n }\n .col-sm-pull-0 {\n right: auto;\n }\n .col-sm-push-12 {\n left: 100%;\n }\n .col-sm-push-11 {\n left: 91.66666667%;\n }\n .col-sm-push-10 {\n left: 83.33333333%;\n }\n .col-sm-push-9 {\n left: 75%;\n }\n .col-sm-push-8 {\n left: 66.66666667%;\n }\n .col-sm-push-7 {\n left: 58.33333333%;\n }\n .col-sm-push-6 {\n left: 50%;\n }\n .col-sm-push-5 {\n left: 41.66666667%;\n }\n .col-sm-push-4 {\n left: 33.33333333%;\n }\n .col-sm-push-3 {\n left: 25%;\n }\n .col-sm-push-2 {\n left: 16.66666667%;\n }\n .col-sm-push-1 {\n left: 8.33333333%;\n }\n .col-sm-push-0 {\n left: auto;\n }\n .col-sm-offset-12 {\n margin-left: 100%;\n }\n .col-sm-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-sm-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-sm-offset-9 {\n margin-left: 75%;\n }\n .col-sm-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-sm-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-sm-offset-6 {\n margin-left: 50%;\n }\n .col-sm-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-sm-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-sm-offset-3 {\n margin-left: 25%;\n }\n .col-sm-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-sm-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-sm-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 992px) {\n .col-md-1,\n .col-md-2,\n .col-md-3,\n .col-md-4,\n .col-md-5,\n .col-md-6,\n .col-md-7,\n .col-md-8,\n .col-md-9,\n .col-md-10,\n .col-md-11,\n .col-md-12 {\n float: left;\n }\n .col-md-12 {\n width: 100%;\n }\n .col-md-11 {\n width: 91.66666667%;\n }\n .col-md-10 {\n width: 83.33333333%;\n }\n .col-md-9 {\n width: 75%;\n }\n .col-md-8 {\n width: 66.66666667%;\n }\n .col-md-7 {\n width: 58.33333333%;\n }\n .col-md-6 {\n width: 50%;\n }\n .col-md-5 {\n width: 41.66666667%;\n }\n .col-md-4 {\n width: 33.33333333%;\n }\n .col-md-3 {\n width: 25%;\n }\n .col-md-2 {\n width: 16.66666667%;\n }\n .col-md-1 {\n width: 8.33333333%;\n }\n .col-md-pull-12 {\n right: 100%;\n }\n .col-md-pull-11 {\n right: 91.66666667%;\n }\n .col-md-pull-10 {\n right: 83.33333333%;\n }\n .col-md-pull-9 {\n right: 75%;\n }\n .col-md-pull-8 {\n right: 66.66666667%;\n }\n .col-md-pull-7 {\n right: 58.33333333%;\n }\n .col-md-pull-6 {\n right: 50%;\n }\n .col-md-pull-5 {\n right: 41.66666667%;\n }\n .col-md-pull-4 {\n right: 33.33333333%;\n }\n .col-md-pull-3 {\n right: 25%;\n }\n .col-md-pull-2 {\n right: 16.66666667%;\n }\n .col-md-pull-1 {\n right: 8.33333333%;\n }\n .col-md-pull-0 {\n right: auto;\n }\n .col-md-push-12 {\n left: 100%;\n }\n .col-md-push-11 {\n left: 91.66666667%;\n }\n .col-md-push-10 {\n left: 83.33333333%;\n }\n .col-md-push-9 {\n left: 75%;\n }\n .col-md-push-8 {\n left: 66.66666667%;\n }\n .col-md-push-7 {\n left: 58.33333333%;\n }\n .col-md-push-6 {\n left: 50%;\n }\n .col-md-push-5 {\n left: 41.66666667%;\n }\n .col-md-push-4 {\n left: 33.33333333%;\n }\n .col-md-push-3 {\n left: 25%;\n }\n .col-md-push-2 {\n left: 16.66666667%;\n }\n .col-md-push-1 {\n left: 8.33333333%;\n }\n .col-md-push-0 {\n left: auto;\n }\n .col-md-offset-12 {\n margin-left: 100%;\n }\n .col-md-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-md-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-md-offset-9 {\n margin-left: 75%;\n }\n .col-md-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-md-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-md-offset-6 {\n margin-left: 50%;\n }\n .col-md-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-md-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-md-offset-3 {\n margin-left: 25%;\n }\n .col-md-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-md-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-md-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 1200px) {\n .col-lg-1,\n .col-lg-2,\n .col-lg-3,\n .col-lg-4,\n .col-lg-5,\n .col-lg-6,\n .col-lg-7,\n .col-lg-8,\n .col-lg-9,\n .col-lg-10,\n .col-lg-11,\n .col-lg-12 {\n float: left;\n }\n .col-lg-12 {\n width: 100%;\n }\n .col-lg-11 {\n width: 91.66666667%;\n }\n .col-lg-10 {\n width: 83.33333333%;\n }\n .col-lg-9 {\n width: 75%;\n }\n .col-lg-8 {\n width: 66.66666667%;\n }\n .col-lg-7 {\n width: 58.33333333%;\n }\n .col-lg-6 {\n width: 50%;\n }\n .col-lg-5 {\n width: 41.66666667%;\n }\n .col-lg-4 {\n width: 33.33333333%;\n }\n .col-lg-3 {\n width: 25%;\n }\n .col-lg-2 {\n width: 16.66666667%;\n }\n .col-lg-1 {\n width: 8.33333333%;\n }\n .col-lg-pull-12 {\n right: 100%;\n }\n .col-lg-pull-11 {\n right: 91.66666667%;\n }\n .col-lg-pull-10 {\n right: 83.33333333%;\n }\n .col-lg-pull-9 {\n right: 75%;\n }\n .col-lg-pull-8 {\n right: 66.66666667%;\n }\n .col-lg-pull-7 {\n right: 58.33333333%;\n }\n .col-lg-pull-6 {\n right: 50%;\n }\n .col-lg-pull-5 {\n right: 41.66666667%;\n }\n .col-lg-pull-4 {\n right: 33.33333333%;\n }\n .col-lg-pull-3 {\n right: 25%;\n }\n .col-lg-pull-2 {\n right: 16.66666667%;\n }\n .col-lg-pull-1 {\n right: 8.33333333%;\n }\n .col-lg-pull-0 {\n right: auto;\n }\n .col-lg-push-12 {\n left: 100%;\n }\n .col-lg-push-11 {\n left: 91.66666667%;\n }\n .col-lg-push-10 {\n left: 83.33333333%;\n }\n .col-lg-push-9 {\n left: 75%;\n }\n .col-lg-push-8 {\n left: 66.66666667%;\n }\n .col-lg-push-7 {\n left: 58.33333333%;\n }\n .col-lg-push-6 {\n left: 50%;\n }\n .col-lg-push-5 {\n left: 41.66666667%;\n }\n .col-lg-push-4 {\n left: 33.33333333%;\n }\n .col-lg-push-3 {\n left: 25%;\n }\n .col-lg-push-2 {\n left: 16.66666667%;\n }\n .col-lg-push-1 {\n left: 8.33333333%;\n }\n .col-lg-push-0 {\n left: auto;\n }\n .col-lg-offset-12 {\n margin-left: 100%;\n }\n .col-lg-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-lg-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-lg-offset-9 {\n margin-left: 75%;\n }\n .col-lg-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-lg-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-lg-offset-6 {\n margin-left: 50%;\n }\n .col-lg-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-lg-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-lg-offset-3 {\n margin-left: 25%;\n }\n .col-lg-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-lg-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-lg-offset-0 {\n margin-left: 0%;\n }\n}\ntable {\n background-color: transparent;\n}\ntable col[class*=\"col-\"] {\n position: static;\n display: table-column;\n float: none;\n}\ntable td[class*=\"col-\"],\ntable th[class*=\"col-\"] {\n position: static;\n display: table-cell;\n float: none;\n}\ncaption {\n padding-top: 8px;\n padding-bottom: 8px;\n color: #777777;\n text-align: left;\n}\nth {\n text-align: left;\n}\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: 20px;\n}\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n padding: 8px;\n line-height: 1.42857143;\n vertical-align: top;\n border-top: 1px solid #ddd;\n}\n.table > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid #ddd;\n}\n.table > caption + thead > tr:first-child > th,\n.table > colgroup + thead > tr:first-child > th,\n.table > thead:first-child > tr:first-child > th,\n.table > caption + thead > tr:first-child > td,\n.table > colgroup + thead > tr:first-child > td,\n.table > thead:first-child > tr:first-child > td {\n border-top: 0;\n}\n.table > tbody + tbody {\n border-top: 2px solid #ddd;\n}\n.table .table {\n background-color: #fff;\n}\n.table-condensed > thead > tr > th,\n.table-condensed > tbody > tr > th,\n.table-condensed > tfoot > tr > th,\n.table-condensed > thead > tr > td,\n.table-condensed > tbody > tr > td,\n.table-condensed > tfoot > tr > td {\n padding: 5px;\n}\n.table-bordered {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > td {\n border-bottom-width: 2px;\n}\n.table-striped > tbody > tr:nth-of-type(odd) {\n background-color: #f9f9f9;\n}\n.table-hover > tbody > tr:hover {\n background-color: #f5f5f5;\n}\n.table > thead > tr > td.active,\n.table > tbody > tr > td.active,\n.table > tfoot > tr > td.active,\n.table > thead > tr > th.active,\n.table > tbody > tr > th.active,\n.table > tfoot > tr > th.active,\n.table > thead > tr.active > td,\n.table > tbody > tr.active > td,\n.table > tfoot > tr.active > td,\n.table > thead > tr.active > th,\n.table > tbody > tr.active > th,\n.table > tfoot > tr.active > th {\n background-color: #f5f5f5;\n}\n.table-hover > tbody > tr > td.active:hover,\n.table-hover > tbody > tr > th.active:hover,\n.table-hover > tbody > tr.active:hover > td,\n.table-hover > tbody > tr:hover > .active,\n.table-hover > tbody > tr.active:hover > th {\n background-color: #e8e8e8;\n}\n.table > thead > tr > td.success,\n.table > tbody > tr > td.success,\n.table > tfoot > tr > td.success,\n.table > thead > tr > th.success,\n.table > tbody > tr > th.success,\n.table > tfoot > tr > th.success,\n.table > thead > tr.success > td,\n.table > tbody > tr.success > td,\n.table > tfoot > tr.success > td,\n.table > thead > tr.success > th,\n.table > tbody > tr.success > th,\n.table > tfoot > tr.success > th {\n background-color: #dff0d8;\n}\n.table-hover > tbody > tr > td.success:hover,\n.table-hover > tbody > tr > th.success:hover,\n.table-hover > tbody > tr.success:hover > td,\n.table-hover > tbody > tr:hover > .success,\n.table-hover > tbody > tr.success:hover > th {\n background-color: #d0e9c6;\n}\n.table > thead > tr > td.info,\n.table > tbody > tr > td.info,\n.table > tfoot > tr > td.info,\n.table > thead > tr > th.info,\n.table > tbody > tr > th.info,\n.table > tfoot > tr > th.info,\n.table > thead > tr.info > td,\n.table > tbody > tr.info > td,\n.table > tfoot > tr.info > td,\n.table > thead > tr.info > th,\n.table > tbody > tr.info > th,\n.table > tfoot > tr.info > th {\n background-color: #d9edf7;\n}\n.table-hover > tbody > tr > td.info:hover,\n.table-hover > tbody > tr > th.info:hover,\n.table-hover > tbody > tr.info:hover > td,\n.table-hover > tbody > tr:hover > .info,\n.table-hover > tbody > tr.info:hover > th {\n background-color: #c4e3f3;\n}\n.table > thead > tr > td.warning,\n.table > tbody > tr > td.warning,\n.table > tfoot > tr > td.warning,\n.table > thead > tr > th.warning,\n.table > tbody > tr > th.warning,\n.table > tfoot > tr > th.warning,\n.table > thead > tr.warning > td,\n.table > tbody > tr.warning > td,\n.table > tfoot > tr.warning > td,\n.table > thead > tr.warning > th,\n.table > tbody > tr.warning > th,\n.table > tfoot > tr.warning > th {\n background-color: #fcf8e3;\n}\n.table-hover > tbody > tr > td.warning:hover,\n.table-hover > tbody > tr > th.warning:hover,\n.table-hover > tbody > tr.warning:hover > td,\n.table-hover > tbody > tr:hover > .warning,\n.table-hover > tbody > tr.warning:hover > th {\n background-color: #faf2cc;\n}\n.table > thead > tr > td.danger,\n.table > tbody > tr > td.danger,\n.table > tfoot > tr > td.danger,\n.table > thead > tr > th.danger,\n.table > tbody > tr > th.danger,\n.table > tfoot > tr > th.danger,\n.table > thead > tr.danger > td,\n.table > tbody > tr.danger > td,\n.table > tfoot > tr.danger > td,\n.table > thead > tr.danger > th,\n.table > tbody > tr.danger > th,\n.table > tfoot > tr.danger > th {\n background-color: #f2dede;\n}\n.table-hover > tbody > tr > td.danger:hover,\n.table-hover > tbody > tr > th.danger:hover,\n.table-hover > tbody > tr.danger:hover > td,\n.table-hover > tbody > tr:hover > .danger,\n.table-hover > tbody > tr.danger:hover > th {\n background-color: #ebcccc;\n}\n.table-responsive {\n min-height: 0.01%;\n overflow-x: auto;\n}\n@media screen and (max-width: 767px) {\n .table-responsive {\n width: 100%;\n margin-bottom: 15px;\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid #ddd;\n }\n .table-responsive > .table {\n margin-bottom: 0;\n }\n .table-responsive > .table > thead > tr > th,\n .table-responsive > .table > tbody > tr > th,\n .table-responsive > .table > tfoot > tr > th,\n .table-responsive > .table > thead > tr > td,\n .table-responsive > .table > tbody > tr > td,\n .table-responsive > .table > tfoot > tr > td {\n white-space: nowrap;\n }\n .table-responsive > .table-bordered {\n border: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:first-child,\n .table-responsive > .table-bordered > tbody > tr > th:first-child,\n .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n .table-responsive > .table-bordered > thead > tr > td:first-child,\n .table-responsive > .table-bordered > tbody > tr > td:first-child,\n .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:last-child,\n .table-responsive > .table-bordered > tbody > tr > th:last-child,\n .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n .table-responsive > .table-bordered > thead > tr > td:last-child,\n .table-responsive > .table-bordered > tbody > tr > td:last-child,\n .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n }\n .table-responsive > .table-bordered > tbody > tr:last-child > th,\n .table-responsive > .table-bordered > tfoot > tr:last-child > th,\n .table-responsive > .table-bordered > tbody > tr:last-child > td,\n .table-responsive > .table-bordered > tfoot > tr:last-child > td {\n border-bottom: 0;\n }\n}\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: 20px;\n font-size: 21px;\n line-height: inherit;\n color: #333333;\n border: 0;\n border-bottom: 1px solid #e5e5e5;\n}\nlabel {\n display: inline-block;\n max-width: 100%;\n margin-bottom: 5px;\n font-weight: 700;\n}\ninput[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal;\n}\ninput[type=\"radio\"][disabled],\ninput[type=\"checkbox\"][disabled],\ninput[type=\"radio\"].disabled,\ninput[type=\"checkbox\"].disabled,\nfieldset[disabled] input[type=\"radio\"],\nfieldset[disabled] input[type=\"checkbox\"] {\n cursor: not-allowed;\n}\ninput[type=\"file\"] {\n display: block;\n}\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\nselect[multiple],\nselect[size] {\n height: auto;\n}\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\noutput {\n display: block;\n padding-top: 7px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n}\n.form-control {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;\n}\n.form-control:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);\n}\n.form-control::-moz-placeholder {\n color: #999;\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: #999;\n}\n.form-control::-webkit-input-placeholder {\n color: #999;\n}\n.form-control::-ms-expand {\n background-color: transparent;\n border: 0;\n}\n.form-control[disabled],\n.form-control[readonly],\nfieldset[disabled] .form-control {\n background-color: #eeeeee;\n opacity: 1;\n}\n.form-control[disabled],\nfieldset[disabled] .form-control {\n cursor: not-allowed;\n}\ntextarea.form-control {\n height: auto;\n}\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"].form-control,\n input[type=\"time\"].form-control,\n input[type=\"datetime-local\"].form-control,\n input[type=\"month\"].form-control {\n line-height: 34px;\n }\n input[type=\"date\"].input-sm,\n input[type=\"time\"].input-sm,\n input[type=\"datetime-local\"].input-sm,\n input[type=\"month\"].input-sm,\n .input-group-sm input[type=\"date\"],\n .input-group-sm input[type=\"time\"],\n .input-group-sm input[type=\"datetime-local\"],\n .input-group-sm input[type=\"month\"] {\n line-height: 30px;\n }\n input[type=\"date\"].input-lg,\n input[type=\"time\"].input-lg,\n input[type=\"datetime-local\"].input-lg,\n input[type=\"month\"].input-lg,\n .input-group-lg input[type=\"date\"],\n .input-group-lg input[type=\"time\"],\n .input-group-lg input[type=\"datetime-local\"],\n .input-group-lg input[type=\"month\"] {\n line-height: 46px;\n }\n}\n.form-group {\n margin-bottom: 15px;\n}\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.radio.disabled label,\n.checkbox.disabled label,\nfieldset[disabled] .radio label,\nfieldset[disabled] .checkbox label {\n cursor: not-allowed;\n}\n.radio label,\n.checkbox label {\n min-height: 20px;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n cursor: pointer;\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-top: 4px \\9;\n margin-left: -20px;\n}\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px;\n}\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n vertical-align: middle;\n cursor: pointer;\n}\n.radio-inline.disabled,\n.checkbox-inline.disabled,\nfieldset[disabled] .radio-inline,\nfieldset[disabled] .checkbox-inline {\n cursor: not-allowed;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px;\n}\n.form-control-static {\n min-height: 34px;\n padding-top: 7px;\n padding-bottom: 7px;\n margin-bottom: 0;\n}\n.form-control-static.input-lg,\n.form-control-static.input-sm {\n padding-right: 0;\n padding-left: 0;\n}\n.input-sm {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-sm {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-sm,\nselect[multiple].input-sm {\n height: auto;\n}\n.form-group-sm .form-control {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.form-group-sm select.form-control {\n height: 30px;\n line-height: 30px;\n}\n.form-group-sm textarea.form-control,\n.form-group-sm select[multiple].form-control {\n height: auto;\n}\n.form-group-sm .form-control-static {\n height: 30px;\n min-height: 32px;\n padding: 6px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.input-lg {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-lg {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-lg,\nselect[multiple].input-lg {\n height: auto;\n}\n.form-group-lg .form-control {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.form-group-lg select.form-control {\n height: 46px;\n line-height: 46px;\n}\n.form-group-lg textarea.form-control,\n.form-group-lg select[multiple].form-control {\n height: auto;\n}\n.form-group-lg .form-control-static {\n height: 46px;\n min-height: 38px;\n padding: 11px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.has-feedback {\n position: relative;\n}\n.has-feedback .form-control {\n padding-right: 42.5px;\n}\n.form-control-feedback {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n display: block;\n width: 34px;\n height: 34px;\n line-height: 34px;\n text-align: center;\n pointer-events: none;\n}\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback {\n width: 46px;\n height: 46px;\n line-height: 46px;\n}\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback {\n width: 30px;\n height: 30px;\n line-height: 30px;\n}\n.has-success .help-block,\n.has-success .control-label,\n.has-success .radio,\n.has-success .checkbox,\n.has-success .radio-inline,\n.has-success .checkbox-inline,\n.has-success.radio label,\n.has-success.checkbox label,\n.has-success.radio-inline label,\n.has-success.checkbox-inline label {\n color: #3c763d;\n}\n.has-success .form-control {\n border-color: #3c763d;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-success .form-control:focus {\n border-color: #2b542c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n}\n.has-success .input-group-addon {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #3c763d;\n}\n.has-success .form-control-feedback {\n color: #3c763d;\n}\n.has-warning .help-block,\n.has-warning .control-label,\n.has-warning .radio,\n.has-warning .checkbox,\n.has-warning .radio-inline,\n.has-warning .checkbox-inline,\n.has-warning.radio label,\n.has-warning.checkbox label,\n.has-warning.radio-inline label,\n.has-warning.checkbox-inline label {\n color: #8a6d3b;\n}\n.has-warning .form-control {\n border-color: #8a6d3b;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-warning .form-control:focus {\n border-color: #66512c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n}\n.has-warning .input-group-addon {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #8a6d3b;\n}\n.has-warning .form-control-feedback {\n color: #8a6d3b;\n}\n.has-error .help-block,\n.has-error .control-label,\n.has-error .radio,\n.has-error .checkbox,\n.has-error .radio-inline,\n.has-error .checkbox-inline,\n.has-error.radio label,\n.has-error.checkbox label,\n.has-error.radio-inline label,\n.has-error.checkbox-inline label {\n color: #a94442;\n}\n.has-error .form-control {\n border-color: #a94442;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-error .form-control:focus {\n border-color: #843534;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n}\n.has-error .input-group-addon {\n color: #a94442;\n background-color: #f2dede;\n border-color: #a94442;\n}\n.has-error .form-control-feedback {\n color: #a94442;\n}\n.has-feedback label ~ .form-control-feedback {\n top: 25px;\n}\n.has-feedback label.sr-only ~ .form-control-feedback {\n top: 0;\n}\n.help-block {\n display: block;\n margin-top: 5px;\n margin-bottom: 10px;\n color: #737373;\n}\n@media (min-width: 768px) {\n .form-inline .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-static {\n display: inline-block;\n }\n .form-inline .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .form-inline .input-group .input-group-addon,\n .form-inline .input-group .input-group-btn,\n .form-inline .input-group .form-control {\n width: auto;\n }\n .form-inline .input-group > .form-control {\n width: 100%;\n }\n .form-inline .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio,\n .form-inline .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio label,\n .form-inline .checkbox label {\n padding-left: 0;\n }\n .form-inline .radio input[type=\"radio\"],\n .form-inline .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .form-inline .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox,\n.form-horizontal .radio-inline,\n.form-horizontal .checkbox-inline {\n padding-top: 7px;\n margin-top: 0;\n margin-bottom: 0;\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox {\n min-height: 27px;\n}\n.form-horizontal .form-group {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .control-label {\n padding-top: 7px;\n margin-bottom: 0;\n text-align: right;\n }\n}\n.form-horizontal .has-feedback .form-control-feedback {\n right: 15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-lg .control-label {\n padding-top: 11px;\n font-size: 18px;\n }\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-sm .control-label {\n padding-top: 6px;\n font-size: 12px;\n }\n}\n.btn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: normal;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n -ms-touch-action: manipulation;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n border-radius: 4px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.btn:focus,\n.btn:active:focus,\n.btn.active:focus,\n.btn.focus,\n.btn:active.focus,\n.btn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n.btn:hover,\n.btn:focus,\n.btn.focus {\n color: #333;\n text-decoration: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n outline: 0;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n cursor: not-allowed;\n filter: alpha(opacity=65);\n opacity: 0.65;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\na.btn.disabled,\nfieldset[disabled] a.btn {\n pointer-events: none;\n}\n.btn-default {\n color: #333;\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default:focus,\n.btn-default.focus {\n color: #333;\n background-color: #e6e6e6;\n border-color: #8c8c8c;\n}\n.btn-default:hover {\n color: #333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n color: #333;\n background-color: #e6e6e6;\n background-image: none;\n border-color: #adadad;\n}\n.btn-default:active:hover,\n.btn-default.active:hover,\n.open > .dropdown-toggle.btn-default:hover,\n.btn-default:active:focus,\n.btn-default.active:focus,\n.open > .dropdown-toggle.btn-default:focus,\n.btn-default:active.focus,\n.btn-default.active.focus,\n.open > .dropdown-toggle.btn-default.focus {\n color: #333;\n background-color: #d4d4d4;\n border-color: #8c8c8c;\n}\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus {\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default .badge {\n color: #fff;\n background-color: #333;\n}\n.btn-primary {\n color: #fff;\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary:focus,\n.btn-primary.focus {\n color: #fff;\n background-color: #286090;\n border-color: #122b40;\n}\n.btn-primary:hover {\n color: #fff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n color: #fff;\n background-color: #286090;\n background-image: none;\n border-color: #204d74;\n}\n.btn-primary:active:hover,\n.btn-primary.active:hover,\n.open > .dropdown-toggle.btn-primary:hover,\n.btn-primary:active:focus,\n.btn-primary.active:focus,\n.open > .dropdown-toggle.btn-primary:focus,\n.btn-primary:active.focus,\n.btn-primary.active.focus,\n.open > .dropdown-toggle.btn-primary.focus {\n color: #fff;\n background-color: #204d74;\n border-color: #122b40;\n}\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus {\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.btn-success {\n color: #fff;\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success:focus,\n.btn-success.focus {\n color: #fff;\n background-color: #449d44;\n border-color: #255625;\n}\n.btn-success:hover {\n color: #fff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n color: #fff;\n background-color: #449d44;\n background-image: none;\n border-color: #398439;\n}\n.btn-success:active:hover,\n.btn-success.active:hover,\n.open > .dropdown-toggle.btn-success:hover,\n.btn-success:active:focus,\n.btn-success.active:focus,\n.open > .dropdown-toggle.btn-success:focus,\n.btn-success:active.focus,\n.btn-success.active.focus,\n.open > .dropdown-toggle.btn-success.focus {\n color: #fff;\n background-color: #398439;\n border-color: #255625;\n}\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus {\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success .badge {\n color: #5cb85c;\n background-color: #fff;\n}\n.btn-info {\n color: #fff;\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info:focus,\n.btn-info.focus {\n color: #fff;\n background-color: #31b0d5;\n border-color: #1b6d85;\n}\n.btn-info:hover {\n color: #fff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n color: #fff;\n background-color: #31b0d5;\n background-image: none;\n border-color: #269abc;\n}\n.btn-info:active:hover,\n.btn-info.active:hover,\n.open > .dropdown-toggle.btn-info:hover,\n.btn-info:active:focus,\n.btn-info.active:focus,\n.open > .dropdown-toggle.btn-info:focus,\n.btn-info:active.focus,\n.btn-info.active.focus,\n.open > .dropdown-toggle.btn-info.focus {\n color: #fff;\n background-color: #269abc;\n border-color: #1b6d85;\n}\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus {\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info .badge {\n color: #5bc0de;\n background-color: #fff;\n}\n.btn-warning {\n color: #fff;\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning:focus,\n.btn-warning.focus {\n color: #fff;\n background-color: #ec971f;\n border-color: #985f0d;\n}\n.btn-warning:hover {\n color: #fff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n color: #fff;\n background-color: #ec971f;\n background-image: none;\n border-color: #d58512;\n}\n.btn-warning:active:hover,\n.btn-warning.active:hover,\n.open > .dropdown-toggle.btn-warning:hover,\n.btn-warning:active:focus,\n.btn-warning.active:focus,\n.open > .dropdown-toggle.btn-warning:focus,\n.btn-warning:active.focus,\n.btn-warning.active.focus,\n.open > .dropdown-toggle.btn-warning.focus {\n color: #fff;\n background-color: #d58512;\n border-color: #985f0d;\n}\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus {\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning .badge {\n color: #f0ad4e;\n background-color: #fff;\n}\n.btn-danger {\n color: #fff;\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger:focus,\n.btn-danger.focus {\n color: #fff;\n background-color: #c9302c;\n border-color: #761c19;\n}\n.btn-danger:hover {\n color: #fff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n color: #fff;\n background-color: #c9302c;\n background-image: none;\n border-color: #ac2925;\n}\n.btn-danger:active:hover,\n.btn-danger.active:hover,\n.open > .dropdown-toggle.btn-danger:hover,\n.btn-danger:active:focus,\n.btn-danger.active:focus,\n.open > .dropdown-toggle.btn-danger:focus,\n.btn-danger:active.focus,\n.btn-danger.active.focus,\n.open > .dropdown-toggle.btn-danger.focus {\n color: #fff;\n background-color: #ac2925;\n border-color: #761c19;\n}\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus {\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger .badge {\n color: #d9534f;\n background-color: #fff;\n}\n.btn-link {\n font-weight: 400;\n color: #337ab7;\n border-radius: 0;\n}\n.btn-link,\n.btn-link:active,\n.btn-link.active,\n.btn-link[disabled],\nfieldset[disabled] .btn-link {\n background-color: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-link,\n.btn-link:hover,\n.btn-link:focus,\n.btn-link:active {\n border-color: transparent;\n}\n.btn-link:hover,\n.btn-link:focus {\n color: #23527c;\n text-decoration: underline;\n background-color: transparent;\n}\n.btn-link[disabled]:hover,\nfieldset[disabled] .btn-link:hover,\n.btn-link[disabled]:focus,\nfieldset[disabled] .btn-link:focus {\n color: #777777;\n text-decoration: none;\n}\n.btn-lg,\n.btn-group-lg > .btn {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.btn-sm,\n.btn-group-sm > .btn {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-xs,\n.btn-group-xs > .btn {\n padding: 1px 5px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-block {\n display: block;\n width: 100%;\n}\n.btn-block + .btn-block {\n margin-top: 5px;\n}\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n.fade {\n opacity: 0;\n -webkit-transition: opacity 0.15s linear;\n -o-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n.fade.in {\n opacity: 1;\n}\n.collapse {\n display: none;\n}\n.collapse.in {\n display: block;\n}\ntr.collapse.in {\n display: table-row;\n}\ntbody.collapse.in {\n display: table-row-group;\n}\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n -webkit-transition-property: height, visibility;\n -o-transition-property: height, visibility;\n transition-property: height, visibility;\n -webkit-transition-duration: 0.35s;\n -o-transition-duration: 0.35s;\n transition-duration: 0.35s;\n -webkit-transition-timing-function: ease;\n -o-transition-timing-function: ease;\n transition-timing-function: ease;\n}\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: 4px dashed;\n border-top: 4px solid \\9;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n.dropup,\n.dropdown {\n position: relative;\n}\n.dropdown-toggle:focus {\n outline: 0;\n}\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0;\n font-size: 14px;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n}\n.dropdown-menu.pull-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu .divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.dropdown-menu > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: 400;\n line-height: 1.42857143;\n color: #333333;\n white-space: nowrap;\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n color: #262626;\n text-decoration: none;\n background-color: #f5f5f5;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n color: #fff;\n text-decoration: none;\n background-color: #337ab7;\n outline: 0;\n}\n.dropdown-menu > .disabled > a,\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n color: #777777;\n}\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n text-decoration: none;\n cursor: not-allowed;\n background-color: transparent;\n background-image: none;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n}\n.open > .dropdown-menu {\n display: block;\n}\n.open > a {\n outline: 0;\n}\n.dropdown-menu-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu-left {\n right: auto;\n left: 0;\n}\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: 12px;\n line-height: 1.42857143;\n color: #777777;\n white-space: nowrap;\n}\n.dropdown-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 990;\n}\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n.dropup .caret,\n.navbar-fixed-bottom .dropdown .caret {\n content: \"\";\n border-top: 0;\n border-bottom: 4px dashed;\n border-bottom: 4px solid \\9;\n}\n.dropup .dropdown-menu,\n.navbar-fixed-bottom .dropdown .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n}\n@media (min-width: 768px) {\n .navbar-right .dropdown-menu {\n right: 0;\n left: auto;\n }\n .navbar-right .dropdown-menu-left {\n right: auto;\n left: 0;\n }\n}\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n float: left;\n}\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group-vertical > .btn:focus,\n.btn-group > .btn:active,\n.btn-group-vertical > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn.active {\n z-index: 2;\n}\n.btn-group .btn + .btn,\n.btn-group .btn + .btn-group,\n.btn-group .btn-group + .btn,\n.btn-group .btn-group + .btn-group {\n margin-left: -1px;\n}\n.btn-toolbar {\n margin-left: -5px;\n}\n.btn-toolbar .btn,\n.btn-toolbar .btn-group,\n.btn-toolbar .input-group {\n float: left;\n}\n.btn-toolbar > .btn,\n.btn-toolbar > .btn-group,\n.btn-toolbar > .input-group {\n margin-left: 5px;\n}\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n.btn-group > .btn:first-child {\n margin-left: 0;\n}\n.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n.btn-group > .btn + .dropdown-toggle {\n padding-right: 8px;\n padding-left: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-right: 12px;\n padding-left: 12px;\n}\n.btn-group.open .dropdown-toggle {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-group.open .dropdown-toggle.btn-link {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn .caret {\n margin-left: 0;\n}\n.btn-lg .caret {\n border-width: 5px 5px 0;\n border-bottom-width: 0;\n}\n.dropup .btn-lg .caret {\n border-width: 0 5px 5px;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group,\n.btn-group-vertical > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n}\n.btn-group-vertical > .btn-group > .btn {\n float: none;\n}\n.btn-group-vertical > .btn + .btn,\n.btn-group-vertical > .btn + .btn-group,\n.btn-group-vertical > .btn-group + .btn,\n.btn-group-vertical > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n}\n.btn-group-vertical > .btn:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.btn-group-vertical > .btn:first-child:not(:last-child) {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn:last-child:not(:first-child) {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n}\n.btn-group-justified > .btn,\n.btn-group-justified > .btn-group {\n display: table-cell;\n float: none;\n width: 1%;\n}\n.btn-group-justified > .btn-group .btn {\n width: 100%;\n}\n.btn-group-justified > .btn-group .dropdown-menu {\n left: auto;\n}\n[data-toggle=\"buttons\"] > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn input[type=\"checkbox\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.input-group {\n position: relative;\n display: table;\n border-collapse: separate;\n}\n.input-group[class*=\"col-\"] {\n float: none;\n padding-right: 0;\n padding-left: 0;\n}\n.input-group .form-control {\n position: relative;\n z-index: 2;\n float: left;\n width: 100%;\n margin-bottom: 0;\n}\n.input-group .form-control:focus {\n z-index: 3;\n}\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-group-lg > .form-control,\nselect.input-group-lg > .input-group-addon,\nselect.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-group-lg > .form-control,\ntextarea.input-group-lg > .input-group-addon,\ntextarea.input-group-lg > .input-group-btn > .btn,\nselect[multiple].input-group-lg > .form-control,\nselect[multiple].input-group-lg > .input-group-addon,\nselect[multiple].input-group-lg > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-group-sm > .form-control,\nselect.input-group-sm > .input-group-addon,\nselect.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-group-sm > .form-control,\ntextarea.input-group-sm > .input-group-addon,\ntextarea.input-group-sm > .input-group-btn > .btn,\nselect[multiple].input-group-sm > .form-control,\nselect[multiple].input-group-sm > .input-group-addon,\nselect[multiple].input-group-sm > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n}\n.input-group-addon:not(:first-child):not(:last-child),\n.input-group-btn:not(:first-child):not(:last-child),\n.input-group .form-control:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle;\n}\n.input-group-addon {\n padding: 6px 12px;\n font-size: 14px;\n font-weight: 400;\n line-height: 1;\n color: #555555;\n text-align: center;\n background-color: #eeeeee;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\n.input-group-addon.input-sm {\n padding: 5px 10px;\n font-size: 12px;\n border-radius: 3px;\n}\n.input-group-addon.input-lg {\n padding: 10px 16px;\n font-size: 18px;\n border-radius: 6px;\n}\n.input-group-addon input[type=\"radio\"],\n.input-group-addon input[type=\"checkbox\"] {\n margin-top: 0;\n}\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n.input-group-btn {\n position: relative;\n font-size: 0;\n white-space: nowrap;\n}\n.input-group-btn > .btn {\n position: relative;\n}\n.input-group-btn > .btn + .btn {\n margin-left: -1px;\n}\n.input-group-btn > .btn:hover,\n.input-group-btn > .btn:focus,\n.input-group-btn > .btn:active {\n z-index: 2;\n}\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group {\n margin-right: -1px;\n}\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group {\n z-index: 2;\n margin-left: -1px;\n}\n.nav {\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.nav > li {\n position: relative;\n display: block;\n}\n.nav > li > a {\n position: relative;\n display: block;\n padding: 10px 15px;\n}\n.nav > li > a:hover,\n.nav > li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.nav > li.disabled > a {\n color: #777777;\n}\n.nav > li.disabled > a:hover,\n.nav > li.disabled > a:focus {\n color: #777777;\n text-decoration: none;\n cursor: not-allowed;\n background-color: transparent;\n}\n.nav .open > a,\n.nav .open > a:hover,\n.nav .open > a:focus {\n background-color: #eeeeee;\n border-color: #337ab7;\n}\n.nav .nav-divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.nav > li > a > img {\n max-width: none;\n}\n.nav-tabs {\n border-bottom: 1px solid #ddd;\n}\n.nav-tabs > li {\n float: left;\n margin-bottom: -1px;\n}\n.nav-tabs > li > a {\n margin-right: 2px;\n line-height: 1.42857143;\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0;\n}\n.nav-tabs > li > a:hover {\n border-color: #eeeeee #eeeeee #ddd;\n}\n.nav-tabs > li.active > a,\n.nav-tabs > li.active > a:hover,\n.nav-tabs > li.active > a:focus {\n color: #555555;\n cursor: default;\n background-color: #fff;\n border: 1px solid #ddd;\n border-bottom-color: transparent;\n}\n.nav-tabs.nav-justified {\n width: 100%;\n border-bottom: 0;\n}\n.nav-tabs.nav-justified > li {\n float: none;\n}\n.nav-tabs.nav-justified > li > a {\n margin-bottom: 5px;\n text-align: center;\n}\n.nav-tabs.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-tabs.nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs.nav-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs.nav-justified > .active > a,\n.nav-tabs.nav-justified > .active > a:hover,\n.nav-tabs.nav-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs.nav-justified > .active > a,\n .nav-tabs.nav-justified > .active > a:hover,\n .nav-tabs.nav-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.nav-pills > li {\n float: left;\n}\n.nav-pills > li > a {\n border-radius: 4px;\n}\n.nav-pills > li + li {\n margin-left: 2px;\n}\n.nav-pills > li.active > a,\n.nav-pills > li.active > a:hover,\n.nav-pills > li.active > a:focus {\n color: #fff;\n background-color: #337ab7;\n}\n.nav-stacked > li {\n float: none;\n}\n.nav-stacked > li + li {\n margin-top: 2px;\n margin-left: 0;\n}\n.nav-justified {\n width: 100%;\n}\n.nav-justified > li {\n float: none;\n}\n.nav-justified > li > a {\n margin-bottom: 5px;\n text-align: center;\n}\n.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs-justified {\n border-bottom: 0;\n}\n.nav-tabs-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs-justified > .active > a,\n.nav-tabs-justified > .active > a:hover,\n.nav-tabs-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs-justified > .active > a,\n .nav-tabs-justified > .active > a:hover,\n .nav-tabs-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.navbar {\n position: relative;\n min-height: 50px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n}\n@media (min-width: 768px) {\n .navbar {\n border-radius: 4px;\n }\n}\n@media (min-width: 768px) {\n .navbar-header {\n float: left;\n }\n}\n.navbar-collapse {\n padding-right: 15px;\n padding-left: 15px;\n overflow-x: visible;\n border-top: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n -webkit-overflow-scrolling: touch;\n}\n.navbar-collapse.in {\n overflow-y: auto;\n}\n@media (min-width: 768px) {\n .navbar-collapse {\n width: auto;\n border-top: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n .navbar-collapse.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0;\n overflow: visible !important;\n }\n .navbar-collapse.in {\n overflow-y: visible;\n }\n .navbar-fixed-top .navbar-collapse,\n .navbar-static-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n padding-right: 0;\n padding-left: 0;\n }\n}\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n.navbar-fixed-top .navbar-collapse,\n.navbar-fixed-bottom .navbar-collapse {\n max-height: 340px;\n}\n@media (max-device-width: 480px) and (orientation: landscape) {\n .navbar-fixed-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n max-height: 200px;\n }\n}\n@media (min-width: 768px) {\n .navbar-fixed-top,\n .navbar-fixed-bottom {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0;\n border-width: 1px 0 0;\n}\n.container > .navbar-header,\n.container-fluid > .navbar-header,\n.container > .navbar-collapse,\n.container-fluid > .navbar-collapse {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .container > .navbar-header,\n .container-fluid > .navbar-header,\n .container > .navbar-collapse,\n .container-fluid > .navbar-collapse {\n margin-right: 0;\n margin-left: 0;\n }\n}\n.navbar-static-top {\n z-index: 1000;\n border-width: 0 0 1px;\n}\n@media (min-width: 768px) {\n .navbar-static-top {\n border-radius: 0;\n }\n}\n.navbar-brand {\n float: left;\n height: 50px;\n padding: 15px 15px;\n font-size: 18px;\n line-height: 20px;\n}\n.navbar-brand:hover,\n.navbar-brand:focus {\n text-decoration: none;\n}\n.navbar-brand > img {\n display: block;\n}\n@media (min-width: 768px) {\n .navbar > .container .navbar-brand,\n .navbar > .container-fluid .navbar-brand {\n margin-left: -15px;\n }\n}\n.navbar-toggle {\n position: relative;\n float: right;\n padding: 9px 10px;\n margin-right: 15px;\n margin-top: 8px;\n margin-bottom: 8px;\n background-color: transparent;\n background-image: none;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.navbar-toggle:focus {\n outline: 0;\n}\n.navbar-toggle .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n}\n.navbar-toggle .icon-bar + .icon-bar {\n margin-top: 4px;\n}\n@media (min-width: 768px) {\n .navbar-toggle {\n display: none;\n }\n}\n.navbar-nav {\n margin: 7.5px -15px;\n}\n.navbar-nav > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: 20px;\n}\n@media (max-width: 767px) {\n .navbar-nav .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n .navbar-nav .open .dropdown-menu > li > a,\n .navbar-nav .open .dropdown-menu .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n .navbar-nav .open .dropdown-menu > li > a {\n line-height: 20px;\n }\n .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-nav .open .dropdown-menu > li > a:focus {\n background-image: none;\n }\n}\n@media (min-width: 768px) {\n .navbar-nav {\n float: left;\n margin: 0;\n }\n .navbar-nav > li {\n float: left;\n }\n .navbar-nav > li > a {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n}\n.navbar-form {\n padding: 10px 15px;\n margin-right: -15px;\n margin-left: -15px;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n margin-top: 8px;\n margin-bottom: 8px;\n}\n@media (min-width: 768px) {\n .navbar-form .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .navbar-form .form-control-static {\n display: inline-block;\n }\n .navbar-form .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .navbar-form .input-group .input-group-addon,\n .navbar-form .input-group .input-group-btn,\n .navbar-form .input-group .form-control {\n width: auto;\n }\n .navbar-form .input-group > .form-control {\n width: 100%;\n }\n .navbar-form .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio,\n .navbar-form .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio label,\n .navbar-form .checkbox label {\n padding-left: 0;\n }\n .navbar-form .radio input[type=\"radio\"],\n .navbar-form .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .navbar-form .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n@media (max-width: 767px) {\n .navbar-form .form-group {\n margin-bottom: 5px;\n }\n .navbar-form .form-group:last-child {\n margin-bottom: 0;\n }\n}\n@media (min-width: 768px) {\n .navbar-form {\n width: auto;\n padding-top: 0;\n padding-bottom: 0;\n margin-right: 0;\n margin-left: 0;\n border: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.navbar-btn {\n margin-top: 8px;\n margin-bottom: 8px;\n}\n.navbar-btn.btn-sm {\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.navbar-btn.btn-xs {\n margin-top: 14px;\n margin-bottom: 14px;\n}\n.navbar-text {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n@media (min-width: 768px) {\n .navbar-text {\n float: left;\n margin-right: 15px;\n margin-left: 15px;\n }\n}\n@media (min-width: 768px) {\n .navbar-left {\n float: left !important;\n }\n .navbar-right {\n float: right !important;\n margin-right: -15px;\n }\n .navbar-right ~ .navbar-right {\n margin-right: 0;\n }\n}\n.navbar-default {\n background-color: #f8f8f8;\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-brand {\n color: #777;\n}\n.navbar-default .navbar-brand:hover,\n.navbar-default .navbar-brand:focus {\n color: #5e5e5e;\n background-color: transparent;\n}\n.navbar-default .navbar-text {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a:hover,\n.navbar-default .navbar-nav > li > a:focus {\n color: #333;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .active > a,\n.navbar-default .navbar-nav > .active > a:hover,\n.navbar-default .navbar-nav > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .disabled > a,\n.navbar-default .navbar-nav > .disabled > a:hover,\n.navbar-default .navbar-nav > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .open > a:hover,\n.navbar-default .navbar-nav > .open > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n@media (max-width: 767px) {\n .navbar-default .navbar-nav .open .dropdown-menu > li > a {\n color: #777;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #333;\n background-color: transparent;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n }\n}\n.navbar-default .navbar-toggle {\n border-color: #ddd;\n}\n.navbar-default .navbar-toggle:hover,\n.navbar-default .navbar-toggle:focus {\n background-color: #ddd;\n}\n.navbar-default .navbar-toggle .icon-bar {\n background-color: #888;\n}\n.navbar-default .navbar-collapse,\n.navbar-default .navbar-form {\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-link {\n color: #777;\n}\n.navbar-default .navbar-link:hover {\n color: #333;\n}\n.navbar-default .btn-link {\n color: #777;\n}\n.navbar-default .btn-link:hover,\n.navbar-default .btn-link:focus {\n color: #333;\n}\n.navbar-default .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-default .btn-link:hover,\n.navbar-default .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-default .btn-link:focus {\n color: #ccc;\n}\n.navbar-inverse {\n background-color: #222;\n border-color: #080808;\n}\n.navbar-inverse .navbar-brand {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-brand:hover,\n.navbar-inverse .navbar-brand:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-text {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a:hover,\n.navbar-inverse .navbar-nav > li > a:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .active > a,\n.navbar-inverse .navbar-nav > .active > a:hover,\n.navbar-inverse .navbar-nav > .active > a:focus {\n color: #fff;\n background-color: #080808;\n}\n.navbar-inverse .navbar-nav > .disabled > a,\n.navbar-inverse .navbar-nav > .disabled > a:hover,\n.navbar-inverse .navbar-nav > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .open > a:hover,\n.navbar-inverse .navbar-nav > .open > a:focus {\n color: #fff;\n background-color: #080808;\n}\n@media (max-width: 767px) {\n .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {\n border-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu .divider {\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {\n color: #9d9d9d;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #fff;\n background-color: transparent;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n }\n}\n.navbar-inverse .navbar-toggle {\n border-color: #333;\n}\n.navbar-inverse .navbar-toggle:hover,\n.navbar-inverse .navbar-toggle:focus {\n background-color: #333;\n}\n.navbar-inverse .navbar-toggle .icon-bar {\n background-color: #fff;\n}\n.navbar-inverse .navbar-collapse,\n.navbar-inverse .navbar-form {\n border-color: #101010;\n}\n.navbar-inverse .navbar-link {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-link:hover {\n color: #fff;\n}\n.navbar-inverse .btn-link {\n color: #9d9d9d;\n}\n.navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link:focus {\n color: #fff;\n}\n.navbar-inverse .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-inverse .btn-link:focus {\n color: #444;\n}\n.breadcrumb {\n padding: 8px 15px;\n margin-bottom: 20px;\n list-style: none;\n background-color: #f5f5f5;\n border-radius: 4px;\n}\n.breadcrumb > li {\n display: inline-block;\n}\n.breadcrumb > li + li:before {\n padding: 0 5px;\n color: #ccc;\n content: \"/\\00a0\";\n}\n.breadcrumb > .active {\n color: #777777;\n}\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: 20px 0;\n border-radius: 4px;\n}\n.pagination > li {\n display: inline;\n}\n.pagination > li > a,\n.pagination > li > span {\n position: relative;\n float: left;\n padding: 6px 12px;\n margin-left: -1px;\n line-height: 1.42857143;\n color: #337ab7;\n text-decoration: none;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.pagination > li > a:hover,\n.pagination > li > span:hover,\n.pagination > li > a:focus,\n.pagination > li > span:focus {\n z-index: 2;\n color: #23527c;\n background-color: #eeeeee;\n border-color: #ddd;\n}\n.pagination > li:first-child > a,\n.pagination > li:first-child > span {\n margin-left: 0;\n border-top-left-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.pagination > li:last-child > a,\n.pagination > li:last-child > span {\n border-top-right-radius: 4px;\n border-bottom-right-radius: 4px;\n}\n.pagination > .active > a,\n.pagination > .active > span,\n.pagination > .active > a:hover,\n.pagination > .active > span:hover,\n.pagination > .active > a:focus,\n.pagination > .active > span:focus {\n z-index: 3;\n color: #fff;\n cursor: default;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.pagination > .disabled > span,\n.pagination > .disabled > span:hover,\n.pagination > .disabled > span:focus,\n.pagination > .disabled > a,\n.pagination > .disabled > a:hover,\n.pagination > .disabled > a:focus {\n color: #777777;\n cursor: not-allowed;\n background-color: #fff;\n border-color: #ddd;\n}\n.pagination-lg > li > a,\n.pagination-lg > li > span {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.pagination-lg > li:first-child > a,\n.pagination-lg > li:first-child > span {\n border-top-left-radius: 6px;\n border-bottom-left-radius: 6px;\n}\n.pagination-lg > li:last-child > a,\n.pagination-lg > li:last-child > span {\n border-top-right-radius: 6px;\n border-bottom-right-radius: 6px;\n}\n.pagination-sm > li > a,\n.pagination-sm > li > span {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.pagination-sm > li:first-child > a,\n.pagination-sm > li:first-child > span {\n border-top-left-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.pagination-sm > li:last-child > a,\n.pagination-sm > li:last-child > span {\n border-top-right-radius: 3px;\n border-bottom-right-radius: 3px;\n}\n.pager {\n padding-left: 0;\n margin: 20px 0;\n text-align: center;\n list-style: none;\n}\n.pager li {\n display: inline;\n}\n.pager li > a,\n.pager li > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 15px;\n}\n.pager li > a:hover,\n.pager li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.pager .next > a,\n.pager .next > span {\n float: right;\n}\n.pager .previous > a,\n.pager .previous > span {\n float: left;\n}\n.pager .disabled > a,\n.pager .disabled > a:hover,\n.pager .disabled > a:focus,\n.pager .disabled > span {\n color: #777777;\n cursor: not-allowed;\n background-color: #fff;\n}\n.label {\n display: inline;\n padding: 0.2em 0.6em 0.3em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25em;\n}\na.label:hover,\na.label:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.label:empty {\n display: none;\n}\n.btn .label {\n position: relative;\n top: -1px;\n}\n.label-default {\n background-color: #777777;\n}\n.label-default[href]:hover,\n.label-default[href]:focus {\n background-color: #5e5e5e;\n}\n.label-primary {\n background-color: #337ab7;\n}\n.label-primary[href]:hover,\n.label-primary[href]:focus {\n background-color: #286090;\n}\n.label-success {\n background-color: #5cb85c;\n}\n.label-success[href]:hover,\n.label-success[href]:focus {\n background-color: #449d44;\n}\n.label-info {\n background-color: #5bc0de;\n}\n.label-info[href]:hover,\n.label-info[href]:focus {\n background-color: #31b0d5;\n}\n.label-warning {\n background-color: #f0ad4e;\n}\n.label-warning[href]:hover,\n.label-warning[href]:focus {\n background-color: #ec971f;\n}\n.label-danger {\n background-color: #d9534f;\n}\n.label-danger[href]:hover,\n.label-danger[href]:focus {\n background-color: #c9302c;\n}\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: 12px;\n font-weight: bold;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n background-color: #777777;\n border-radius: 10px;\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.btn-xs .badge,\n.btn-group-xs > .btn .badge {\n top: 0;\n padding: 1px 5px;\n}\na.badge:hover,\na.badge:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.list-group-item.active > .badge,\n.nav-pills > .active > a > .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.list-group-item > .badge {\n float: right;\n}\n.list-group-item > .badge + .badge {\n margin-right: 5px;\n}\n.nav-pills > li > a > .badge {\n margin-left: 3px;\n}\n.jumbotron {\n padding-top: 30px;\n padding-bottom: 30px;\n margin-bottom: 30px;\n color: inherit;\n background-color: #eeeeee;\n}\n.jumbotron h1,\n.jumbotron .h1 {\n color: inherit;\n}\n.jumbotron p {\n margin-bottom: 15px;\n font-size: 21px;\n font-weight: 200;\n}\n.jumbotron > hr {\n border-top-color: #d5d5d5;\n}\n.container .jumbotron,\n.container-fluid .jumbotron {\n padding-right: 15px;\n padding-left: 15px;\n border-radius: 6px;\n}\n.jumbotron .container {\n max-width: 100%;\n}\n@media screen and (min-width: 768px) {\n .jumbotron {\n padding-top: 48px;\n padding-bottom: 48px;\n }\n .container .jumbotron,\n .container-fluid .jumbotron {\n padding-right: 60px;\n padding-left: 60px;\n }\n .jumbotron h1,\n .jumbotron .h1 {\n font-size: 63px;\n }\n}\n.thumbnail {\n display: block;\n padding: 4px;\n margin-bottom: 20px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: border 0.2s ease-in-out;\n -o-transition: border 0.2s ease-in-out;\n transition: border 0.2s ease-in-out;\n}\n.thumbnail > img,\n.thumbnail a > img {\n margin-right: auto;\n margin-left: auto;\n}\na.thumbnail:hover,\na.thumbnail:focus,\na.thumbnail.active {\n border-color: #337ab7;\n}\n.thumbnail .caption {\n padding: 9px;\n color: #333333;\n}\n.alert {\n padding: 15px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.alert h4 {\n margin-top: 0;\n color: inherit;\n}\n.alert .alert-link {\n font-weight: bold;\n}\n.alert > p,\n.alert > ul {\n margin-bottom: 0;\n}\n.alert > p + p {\n margin-top: 5px;\n}\n.alert-dismissable,\n.alert-dismissible {\n padding-right: 35px;\n}\n.alert-dismissable .close,\n.alert-dismissible .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n}\n.alert-success {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.alert-success hr {\n border-top-color: #c9e2b3;\n}\n.alert-success .alert-link {\n color: #2b542c;\n}\n.alert-info {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.alert-info hr {\n border-top-color: #a6e1ec;\n}\n.alert-info .alert-link {\n color: #245269;\n}\n.alert-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.alert-warning hr {\n border-top-color: #f7e1b5;\n}\n.alert-warning .alert-link {\n color: #66512c;\n}\n.alert-danger {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.alert-danger hr {\n border-top-color: #e4b9c0;\n}\n.alert-danger .alert-link {\n color: #843534;\n}\n@-webkit-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@-o-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n.progress {\n height: 20px;\n margin-bottom: 20px;\n overflow: hidden;\n background-color: #f5f5f5;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: 12px;\n line-height: 20px;\n color: #fff;\n text-align: center;\n background-color: #337ab7;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n -webkit-transition: width 0.6s ease;\n -o-transition: width 0.6s ease;\n transition: width 0.6s ease;\n}\n.progress-striped .progress-bar,\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n -webkit-background-size: 40px 40px;\n background-size: 40px 40px;\n}\n.progress.active .progress-bar,\n.progress-bar.active {\n -webkit-animation: progress-bar-stripes 2s linear infinite;\n -o-animation: progress-bar-stripes 2s linear infinite;\n animation: progress-bar-stripes 2s linear infinite;\n}\n.progress-bar-success {\n background-color: #5cb85c;\n}\n.progress-striped .progress-bar-success {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-info {\n background-color: #5bc0de;\n}\n.progress-striped .progress-bar-info {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-warning {\n background-color: #f0ad4e;\n}\n.progress-striped .progress-bar-warning {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-danger {\n background-color: #d9534f;\n}\n.progress-striped .progress-bar-danger {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.media {\n margin-top: 15px;\n}\n.media:first-child {\n margin-top: 0;\n}\n.media,\n.media-body {\n overflow: hidden;\n zoom: 1;\n}\n.media-body {\n width: 10000px;\n}\n.media-object {\n display: block;\n}\n.media-object.img-thumbnail {\n max-width: none;\n}\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n.media-middle {\n vertical-align: middle;\n}\n.media-bottom {\n vertical-align: bottom;\n}\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n.list-group {\n padding-left: 0;\n margin-bottom: 20px;\n}\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.list-group-item:first-child {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n}\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.list-group-item.disabled,\n.list-group-item.disabled:hover,\n.list-group-item.disabled:focus {\n color: #777777;\n cursor: not-allowed;\n background-color: #eeeeee;\n}\n.list-group-item.disabled .list-group-item-heading,\n.list-group-item.disabled:hover .list-group-item-heading,\n.list-group-item.disabled:focus .list-group-item-heading {\n color: inherit;\n}\n.list-group-item.disabled .list-group-item-text,\n.list-group-item.disabled:hover .list-group-item-text,\n.list-group-item.disabled:focus .list-group-item-text {\n color: #777777;\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n z-index: 2;\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.list-group-item.active .list-group-item-heading,\n.list-group-item.active:hover .list-group-item-heading,\n.list-group-item.active:focus .list-group-item-heading,\n.list-group-item.active .list-group-item-heading > small,\n.list-group-item.active:hover .list-group-item-heading > small,\n.list-group-item.active:focus .list-group-item-heading > small,\n.list-group-item.active .list-group-item-heading > .small,\n.list-group-item.active:hover .list-group-item-heading > .small,\n.list-group-item.active:focus .list-group-item-heading > .small {\n color: inherit;\n}\n.list-group-item.active .list-group-item-text,\n.list-group-item.active:hover .list-group-item-text,\n.list-group-item.active:focus .list-group-item-text {\n color: #c7ddef;\n}\na.list-group-item,\nbutton.list-group-item {\n color: #555;\n}\na.list-group-item .list-group-item-heading,\nbutton.list-group-item .list-group-item-heading {\n color: #333;\n}\na.list-group-item:hover,\nbutton.list-group-item:hover,\na.list-group-item:focus,\nbutton.list-group-item:focus {\n color: #555;\n text-decoration: none;\n background-color: #f5f5f5;\n}\nbutton.list-group-item {\n width: 100%;\n text-align: left;\n}\n.list-group-item-success {\n color: #3c763d;\n background-color: #dff0d8;\n}\na.list-group-item-success,\nbutton.list-group-item-success {\n color: #3c763d;\n}\na.list-group-item-success .list-group-item-heading,\nbutton.list-group-item-success .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-success:hover,\nbutton.list-group-item-success:hover,\na.list-group-item-success:focus,\nbutton.list-group-item-success:focus {\n color: #3c763d;\n background-color: #d0e9c6;\n}\na.list-group-item-success.active,\nbutton.list-group-item-success.active,\na.list-group-item-success.active:hover,\nbutton.list-group-item-success.active:hover,\na.list-group-item-success.active:focus,\nbutton.list-group-item-success.active:focus {\n color: #fff;\n background-color: #3c763d;\n border-color: #3c763d;\n}\n.list-group-item-info {\n color: #31708f;\n background-color: #d9edf7;\n}\na.list-group-item-info,\nbutton.list-group-item-info {\n color: #31708f;\n}\na.list-group-item-info .list-group-item-heading,\nbutton.list-group-item-info .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-info:hover,\nbutton.list-group-item-info:hover,\na.list-group-item-info:focus,\nbutton.list-group-item-info:focus {\n color: #31708f;\n background-color: #c4e3f3;\n}\na.list-group-item-info.active,\nbutton.list-group-item-info.active,\na.list-group-item-info.active:hover,\nbutton.list-group-item-info.active:hover,\na.list-group-item-info.active:focus,\nbutton.list-group-item-info.active:focus {\n color: #fff;\n background-color: #31708f;\n border-color: #31708f;\n}\n.list-group-item-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n}\na.list-group-item-warning,\nbutton.list-group-item-warning {\n color: #8a6d3b;\n}\na.list-group-item-warning .list-group-item-heading,\nbutton.list-group-item-warning .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-warning:hover,\nbutton.list-group-item-warning:hover,\na.list-group-item-warning:focus,\nbutton.list-group-item-warning:focus {\n color: #8a6d3b;\n background-color: #faf2cc;\n}\na.list-group-item-warning.active,\nbutton.list-group-item-warning.active,\na.list-group-item-warning.active:hover,\nbutton.list-group-item-warning.active:hover,\na.list-group-item-warning.active:focus,\nbutton.list-group-item-warning.active:focus {\n color: #fff;\n background-color: #8a6d3b;\n border-color: #8a6d3b;\n}\n.list-group-item-danger {\n color: #a94442;\n background-color: #f2dede;\n}\na.list-group-item-danger,\nbutton.list-group-item-danger {\n color: #a94442;\n}\na.list-group-item-danger .list-group-item-heading,\nbutton.list-group-item-danger .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-danger:hover,\nbutton.list-group-item-danger:hover,\na.list-group-item-danger:focus,\nbutton.list-group-item-danger:focus {\n color: #a94442;\n background-color: #ebcccc;\n}\na.list-group-item-danger.active,\nbutton.list-group-item-danger.active,\na.list-group-item-danger.active:hover,\nbutton.list-group-item-danger.active:hover,\na.list-group-item-danger.active:focus,\nbutton.list-group-item-danger.active:focus {\n color: #fff;\n background-color: #a94442;\n border-color: #a94442;\n}\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n.panel {\n margin-bottom: 20px;\n background-color: #fff;\n border: 1px solid transparent;\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.panel-body {\n padding: 15px;\n}\n.panel-heading {\n padding: 10px 15px;\n border-bottom: 1px solid transparent;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel-heading > .dropdown .dropdown-toggle {\n color: inherit;\n}\n.panel-title {\n margin-top: 0;\n margin-bottom: 0;\n font-size: 16px;\n color: inherit;\n}\n.panel-title > a,\n.panel-title > small,\n.panel-title > .small,\n.panel-title > small > a,\n.panel-title > .small > a {\n color: inherit;\n}\n.panel-footer {\n padding: 10px 15px;\n background-color: #f5f5f5;\n border-top: 1px solid #ddd;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .list-group,\n.panel > .panel-collapse > .list-group {\n margin-bottom: 0;\n}\n.panel > .list-group .list-group-item,\n.panel > .panel-collapse > .list-group .list-group-item {\n border-width: 1px 0;\n border-radius: 0;\n}\n.panel > .list-group:first-child .list-group-item:first-child,\n.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {\n border-top: 0;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .list-group:last-child .list-group-item:last-child,\n.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {\n border-bottom: 0;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.panel-heading + .list-group .list-group-item:first-child {\n border-top-width: 0;\n}\n.list-group + .panel-footer {\n border-top-width: 0;\n}\n.panel > .table,\n.panel > .table-responsive > .table,\n.panel > .panel-collapse > .table {\n margin-bottom: 0;\n}\n.panel > .table caption,\n.panel > .table-responsive > .table caption,\n.panel > .panel-collapse > .table caption {\n padding-right: 15px;\n padding-left: 15px;\n}\n.panel > .table:first-child,\n.panel > .table-responsive:first-child > .table:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {\n border-top-right-radius: 3px;\n}\n.panel > .table:last-child,\n.panel > .table-responsive:last-child > .table:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {\n border-bottom-right-radius: 3px;\n}\n.panel > .panel-body + .table,\n.panel > .panel-body + .table-responsive,\n.panel > .table + .panel-body,\n.panel > .table-responsive + .panel-body {\n border-top: 1px solid #ddd;\n}\n.panel > .table > tbody:first-child > tr:first-child th,\n.panel > .table > tbody:first-child > tr:first-child td {\n border-top: 0;\n}\n.panel > .table-bordered,\n.panel > .table-responsive > .table-bordered {\n border: 0;\n}\n.panel > .table-bordered > thead > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,\n.panel > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-bordered > thead > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,\n.panel > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-bordered > tfoot > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n}\n.panel > .table-bordered > thead > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,\n.panel > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-bordered > thead > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,\n.panel > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-bordered > tfoot > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n}\n.panel > .table-bordered > thead > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,\n.panel > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-bordered > thead > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,\n.panel > .table-bordered > tbody > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {\n border-bottom: 0;\n}\n.panel > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-bordered > tfoot > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {\n border-bottom: 0;\n}\n.panel > .table-responsive {\n margin-bottom: 0;\n border: 0;\n}\n.panel-group {\n margin-bottom: 20px;\n}\n.panel-group .panel {\n margin-bottom: 0;\n border-radius: 4px;\n}\n.panel-group .panel + .panel {\n margin-top: 5px;\n}\n.panel-group .panel-heading {\n border-bottom: 0;\n}\n.panel-group .panel-heading + .panel-collapse > .panel-body,\n.panel-group .panel-heading + .panel-collapse > .list-group {\n border-top: 1px solid #ddd;\n}\n.panel-group .panel-footer {\n border-top: 0;\n}\n.panel-group .panel-footer + .panel-collapse .panel-body {\n border-bottom: 1px solid #ddd;\n}\n.panel-default {\n border-color: #ddd;\n}\n.panel-default > .panel-heading {\n color: #333333;\n background-color: #f5f5f5;\n border-color: #ddd;\n}\n.panel-default > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ddd;\n}\n.panel-default > .panel-heading .badge {\n color: #f5f5f5;\n background-color: #333333;\n}\n.panel-default > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ddd;\n}\n.panel-primary {\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading {\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #337ab7;\n}\n.panel-primary > .panel-heading .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.panel-primary > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #337ab7;\n}\n.panel-success {\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #d6e9c6;\n}\n.panel-success > .panel-heading .badge {\n color: #dff0d8;\n background-color: #3c763d;\n}\n.panel-success > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #d6e9c6;\n}\n.panel-info {\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #bce8f1;\n}\n.panel-info > .panel-heading .badge {\n color: #d9edf7;\n background-color: #31708f;\n}\n.panel-info > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #bce8f1;\n}\n.panel-warning {\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #faebcc;\n}\n.panel-warning > .panel-heading .badge {\n color: #fcf8e3;\n background-color: #8a6d3b;\n}\n.panel-warning > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #faebcc;\n}\n.panel-danger {\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ebccd1;\n}\n.panel-danger > .panel-heading .badge {\n color: #f2dede;\n background-color: #a94442;\n}\n.panel-danger > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ebccd1;\n}\n.embed-responsive {\n position: relative;\n display: block;\n height: 0;\n padding: 0;\n overflow: hidden;\n}\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 0;\n}\n.embed-responsive-16by9 {\n padding-bottom: 56.25%;\n}\n.embed-responsive-4by3 {\n padding-bottom: 75%;\n}\n.well {\n min-height: 20px;\n padding: 19px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border: 1px solid #e3e3e3;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.well blockquote {\n border-color: #ddd;\n border-color: rgba(0, 0, 0, 0.15);\n}\n.well-lg {\n padding: 24px;\n border-radius: 6px;\n}\n.well-sm {\n padding: 9px;\n border-radius: 3px;\n}\n.close {\n float: right;\n font-size: 21px;\n font-weight: bold;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n filter: alpha(opacity=20);\n opacity: 0.2;\n}\n.close:hover,\n.close:focus {\n color: #000;\n text-decoration: none;\n cursor: pointer;\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\nbutton.close {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.modal-open {\n overflow: hidden;\n}\n.modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1050;\n display: none;\n overflow: hidden;\n -webkit-overflow-scrolling: touch;\n outline: 0;\n}\n.modal.fade .modal-dialog {\n -webkit-transform: translate(0, -25%);\n -ms-transform: translate(0, -25%);\n -o-transform: translate(0, -25%);\n transform: translate(0, -25%);\n -webkit-transition: -webkit-transform 0.3s ease-out;\n -o-transition: -o-transform 0.3s ease-out;\n transition: -webkit-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out, -o-transform 0.3s ease-out;\n}\n.modal.in .modal-dialog {\n -webkit-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n -o-transform: translate(0, 0);\n transform: translate(0, 0);\n}\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 10px;\n}\n.modal-content {\n position: relative;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #999;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n outline: 0;\n}\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1040;\n background-color: #000;\n}\n.modal-backdrop.fade {\n filter: alpha(opacity=0);\n opacity: 0;\n}\n.modal-backdrop.in {\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\n.modal-header {\n padding: 15px;\n border-bottom: 1px solid #e5e5e5;\n}\n.modal-header .close {\n margin-top: -2px;\n}\n.modal-title {\n margin: 0;\n line-height: 1.42857143;\n}\n.modal-body {\n position: relative;\n padding: 15px;\n}\n.modal-footer {\n padding: 15px;\n text-align: right;\n border-top: 1px solid #e5e5e5;\n}\n.modal-footer .btn + .btn {\n margin-bottom: 0;\n margin-left: 5px;\n}\n.modal-footer .btn-group .btn + .btn {\n margin-left: -1px;\n}\n.modal-footer .btn-block + .btn-block {\n margin-left: 0;\n}\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n@media (min-width: 768px) {\n .modal-dialog {\n width: 600px;\n margin: 30px auto;\n }\n .modal-content {\n -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n }\n .modal-sm {\n width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg {\n width: 900px;\n }\n}\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: 400;\n line-height: 1.42857143;\n line-break: auto;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n font-size: 12px;\n filter: alpha(opacity=0);\n opacity: 0;\n}\n.tooltip.in {\n filter: alpha(opacity=90);\n opacity: 0.9;\n}\n.tooltip.top {\n padding: 5px 0;\n margin-top: -3px;\n}\n.tooltip.right {\n padding: 0 5px;\n margin-left: 3px;\n}\n.tooltip.bottom {\n padding: 5px 0;\n margin-top: 3px;\n}\n.tooltip.left {\n padding: 0 5px;\n margin-left: -3px;\n}\n.tooltip.top .tooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-left .tooltip-arrow {\n right: 5px;\n bottom: 0;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-right .tooltip-arrow {\n bottom: 0;\n left: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.right .tooltip-arrow {\n top: 50%;\n left: 0;\n margin-top: -5px;\n border-width: 5px 5px 5px 0;\n border-right-color: #000;\n}\n.tooltip.left .tooltip-arrow {\n top: 50%;\n right: 0;\n margin-top: -5px;\n border-width: 5px 0 5px 5px;\n border-left-color: #000;\n}\n.tooltip.bottom .tooltip-arrow {\n top: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-left .tooltip-arrow {\n top: 0;\n right: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-right .tooltip-arrow {\n top: 0;\n left: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip-inner {\n max-width: 200px;\n padding: 3px 8px;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 4px;\n}\n.tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: none;\n max-width: 276px;\n padding: 1px;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: 400;\n line-height: 1.42857143;\n line-break: auto;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n font-size: 14px;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n}\n.popover.top {\n margin-top: -10px;\n}\n.popover.right {\n margin-left: 10px;\n}\n.popover.bottom {\n margin-top: 10px;\n}\n.popover.left {\n margin-left: -10px;\n}\n.popover > .arrow {\n border-width: 11px;\n}\n.popover > .arrow,\n.popover > .arrow:after {\n position: absolute;\n display: block;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover > .arrow:after {\n content: \"\";\n border-width: 10px;\n}\n.popover.top > .arrow {\n bottom: -11px;\n left: 50%;\n margin-left: -11px;\n border-top-color: #999999;\n border-top-color: rgba(0, 0, 0, 0.25);\n border-bottom-width: 0;\n}\n.popover.top > .arrow:after {\n bottom: 1px;\n margin-left: -10px;\n content: \" \";\n border-top-color: #fff;\n border-bottom-width: 0;\n}\n.popover.right > .arrow {\n top: 50%;\n left: -11px;\n margin-top: -11px;\n border-right-color: #999999;\n border-right-color: rgba(0, 0, 0, 0.25);\n border-left-width: 0;\n}\n.popover.right > .arrow:after {\n bottom: -10px;\n left: 1px;\n content: \" \";\n border-right-color: #fff;\n border-left-width: 0;\n}\n.popover.bottom > .arrow {\n top: -11px;\n left: 50%;\n margin-left: -11px;\n border-top-width: 0;\n border-bottom-color: #999999;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n}\n.popover.bottom > .arrow:after {\n top: 1px;\n margin-left: -10px;\n content: \" \";\n border-top-width: 0;\n border-bottom-color: #fff;\n}\n.popover.left > .arrow {\n top: 50%;\n right: -11px;\n margin-top: -11px;\n border-right-width: 0;\n border-left-color: #999999;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n.popover.left > .arrow:after {\n right: 1px;\n bottom: -10px;\n content: \" \";\n border-right-width: 0;\n border-left-color: #fff;\n}\n.popover-title {\n padding: 8px 14px;\n margin: 0;\n font-size: 14px;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-radius: 5px 5px 0 0;\n}\n.popover-content {\n padding: 9px 14px;\n}\n.carousel {\n position: relative;\n}\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n.carousel-inner > .item {\n position: relative;\n display: none;\n -webkit-transition: 0.6s ease-in-out left;\n -o-transition: 0.6s ease-in-out left;\n transition: 0.6s ease-in-out left;\n}\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n line-height: 1;\n}\n@media all and (transform-3d), (-webkit-transform-3d) {\n .carousel-inner > .item {\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n -o-transition: -o-transform 0.6s ease-in-out;\n transition: -webkit-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out, -o-transform 0.6s ease-in-out;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-perspective: 1000px;\n perspective: 1000px;\n }\n .carousel-inner > .item.next,\n .carousel-inner > .item.active.right {\n -webkit-transform: translate3d(100%, 0, 0);\n transform: translate3d(100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.prev,\n .carousel-inner > .item.active.left {\n -webkit-transform: translate3d(-100%, 0, 0);\n transform: translate3d(-100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.next.left,\n .carousel-inner > .item.prev.right,\n .carousel-inner > .item.active {\n -webkit-transform: translate3d(0, 0, 0);\n transform: translate3d(0, 0, 0);\n left: 0;\n }\n}\n.carousel-inner > .active,\n.carousel-inner > .next,\n.carousel-inner > .prev {\n display: block;\n}\n.carousel-inner > .active {\n left: 0;\n}\n.carousel-inner > .next,\n.carousel-inner > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n}\n.carousel-inner > .next {\n left: 100%;\n}\n.carousel-inner > .prev {\n left: -100%;\n}\n.carousel-inner > .next.left,\n.carousel-inner > .prev.right {\n left: 0;\n}\n.carousel-inner > .active.left {\n left: -100%;\n}\n.carousel-inner > .active.right {\n left: 100%;\n}\n.carousel-control {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 15%;\n font-size: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n background-color: rgba(0, 0, 0, 0);\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\n.carousel-control.left {\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001)));\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);\n background-repeat: repeat-x;\n}\n.carousel-control.right {\n right: 0;\n left: auto;\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5)));\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);\n background-repeat: repeat-x;\n}\n.carousel-control:hover,\n.carousel-control:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n filter: alpha(opacity=90);\n opacity: 0.9;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-left,\n.carousel-control .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n z-index: 5;\n display: inline-block;\n margin-top: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n}\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next {\n width: 20px;\n height: 20px;\n font-family: serif;\n line-height: 1;\n}\n.carousel-control .icon-prev:before {\n content: \"\\2039\";\n}\n.carousel-control .icon-next:before {\n content: \"\\203a\";\n}\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n padding-left: 0;\n margin-left: -30%;\n text-align: center;\n list-style: none;\n}\n.carousel-indicators li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #000 \\9;\n background-color: rgba(0, 0, 0, 0);\n border: 1px solid #fff;\n border-radius: 10px;\n}\n.carousel-indicators .active {\n width: 12px;\n height: 12px;\n margin: 0;\n background-color: #fff;\n}\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 20px;\n left: 15%;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n}\n.carousel-caption .btn {\n text-shadow: none;\n}\n@media screen and (min-width: 768px) {\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-prev,\n .carousel-control .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -10px;\n font-size: 30px;\n }\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .icon-prev {\n margin-left: -10px;\n }\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-next {\n margin-right: -10px;\n }\n .carousel-caption {\n right: 20%;\n left: 20%;\n padding-bottom: 30px;\n }\n .carousel-indicators {\n bottom: 20px;\n }\n}\n.clearfix:before,\n.clearfix:after,\n.dl-horizontal dd:before,\n.dl-horizontal dd:after,\n.container:before,\n.container:after,\n.container-fluid:before,\n.container-fluid:after,\n.row:before,\n.row:after,\n.form-horizontal .form-group:before,\n.form-horizontal .form-group:after,\n.btn-toolbar:before,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:before,\n.btn-group-vertical > .btn-group:after,\n.nav:before,\n.nav:after,\n.navbar:before,\n.navbar:after,\n.navbar-header:before,\n.navbar-header:after,\n.navbar-collapse:before,\n.navbar-collapse:after,\n.pager:before,\n.pager:after,\n.panel-body:before,\n.panel-body:after,\n.modal-header:before,\n.modal-header:after,\n.modal-footer:before,\n.modal-footer:after {\n display: table;\n content: \" \";\n}\n.clearfix:after,\n.dl-horizontal dd:after,\n.container:after,\n.container-fluid:after,\n.row:after,\n.form-horizontal .form-group:after,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:after,\n.nav:after,\n.navbar:after,\n.navbar-header:after,\n.navbar-collapse:after,\n.pager:after,\n.panel-body:after,\n.modal-header:after,\n.modal-footer:after {\n clear: both;\n}\n.center-block {\n display: block;\n margin-right: auto;\n margin-left: auto;\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n.hidden {\n display: none !important;\n}\n.affix {\n position: fixed;\n}\n@-ms-viewport {\n width: device-width;\n}\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n display: none !important;\n}\n.visible-xs-block,\n.visible-xs-inline,\n.visible-xs-inline-block,\n.visible-sm-block,\n.visible-sm-inline,\n.visible-sm-inline-block,\n.visible-md-block,\n.visible-md-inline,\n.visible-md-inline-block,\n.visible-lg-block,\n.visible-lg-inline,\n.visible-lg-inline-block {\n display: none !important;\n}\n@media (max-width: 767px) {\n .visible-xs {\n display: block !important;\n }\n table.visible-xs {\n display: table !important;\n }\n tr.visible-xs {\n display: table-row !important;\n }\n th.visible-xs,\n td.visible-xs {\n display: table-cell !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-block {\n display: block !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline {\n display: inline !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm {\n display: block !important;\n }\n table.visible-sm {\n display: table !important;\n }\n tr.visible-sm {\n display: table-row !important;\n }\n th.visible-sm,\n td.visible-sm {\n display: table-cell !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-block {\n display: block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline {\n display: inline !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md {\n display: block !important;\n }\n table.visible-md {\n display: table !important;\n }\n tr.visible-md {\n display: table-row !important;\n }\n th.visible-md,\n td.visible-md {\n display: table-cell !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-block {\n display: block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline {\n display: inline !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg {\n display: block !important;\n }\n table.visible-lg {\n display: table !important;\n }\n tr.visible-lg {\n display: table-row !important;\n }\n th.visible-lg,\n td.visible-lg {\n display: table-cell !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-block {\n display: block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline {\n display: inline !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline-block {\n display: inline-block !important;\n }\n}\n@media (max-width: 767px) {\n .hidden-xs {\n display: none !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .hidden-sm {\n display: none !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .hidden-md {\n display: none !important;\n }\n}\n@media (min-width: 1200px) {\n .hidden-lg {\n display: none !important;\n }\n}\n.visible-print {\n display: none !important;\n}\n@media print {\n .visible-print {\n display: block !important;\n }\n table.visible-print {\n display: table !important;\n }\n tr.visible-print {\n display: table-row !important;\n }\n th.visible-print,\n td.visible-print {\n display: table-cell !important;\n }\n}\n.visible-print-block {\n display: none !important;\n}\n@media print {\n .visible-print-block {\n display: block !important;\n }\n}\n.visible-print-inline {\n display: none !important;\n}\n@media print {\n .visible-print-inline {\n display: inline !important;\n }\n}\n.visible-print-inline-block {\n display: none !important;\n}\n@media print {\n .visible-print-inline-block {\n display: inline-block !important;\n }\n}\n@media print {\n .hidden-print {\n display: none !important;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */","/* Variables holding theme colors */\n:root {\n --background: #ffffff;\n --outerBackground: #eeeeee;\n --links: #0645ad;\n --bodyFont: #000000;\n --tooltip: #ffffff;\n --grayToWhite: #333333;\n --navbar: #f8f8f8;\n --navbarFont: #707070;\n --navbarFontHover: #000000;\n --alerts: #d9edf7;\n --completionButton: #f19711;\n --completionButtonHover: #ff9f19;\n --admonition: #fcf8e3;\n --admonitionBorder: #fbeed5;\n --codeButtons: #474949;\n --codeButtonsBorder: #474949;\n --dangerAlerts: #f2dede;\n --successAlerts: #dff0d8;\n --contentWidthRegular: 660px;\n --contentWidthWide: 1060px;\n --componentBgColor: #f0f8ff;\n --componentBorderColor: #000000;\n --questionBgColor: #e1efff;\n}\n\n/* @media (prefers-color-scheme: dark) {\n :root {\n --background: #2c2f33;\n --outerBackground: #23272a;\n --links: #7289da;\n --bodyFont: #99aab5;\n --tooltip: #000000;\n --grayToWhite: #ffffff;\n --navbar: #3d3d3d;\n --navbarFont: #ffffff;\n --navbarFontHover: #d6d6d6;\n --alerts: #714082;\n --completionButton: #650087;\n --completionButtonHover: #560073;\n --admonition: #3d3d3d;\n --admonitionBorder: #262626;\n --codeButtons: #7289da;\n --codeButtonsBorder: #ffffff;\n --dangerAlerts: #8c2626;\n --successAlerts: #217300;\n --componentBgColor: #07467d;\n --componentBorderColor: #939090;\n --questionBgColor: rgb(23, 85, 93);\n }\n}\n\nNeeded??? */\n[data-theme=\"dark\"] {\n --background: #2c2f33;\n --outerBackground: #23272a;\n --links: #7289da;\n --bodyFont: #99aab5;\n --tooltip: #000000;\n --grayToWhite: #ffffff;\n --navbar: #3d3d3d;\n --navbarFont: #ffffff;\n --navbarFontHover: #d6d6d6;\n --alerts: #714082;\n --completionButton: #650087;\n --completionButtonHover: #560073;\n --admonition: #3d3d3d;\n --admonitionBorder: #262626;\n --codeButtons: #7289da;\n --codeButtonsBorder: #ffffff;\n --dangerAlerts: #8c2626;\n --successAlerts: #217300;\n --componentBgColor: #07467d;\n --componentBorderColor: #939090;\n --questionBgColor: rgb(23, 85, 93);\n}\n\n/* for assignment navigation */\ndiv.assignment-nav {\n background-color: var(--componentBgColor);\n border-style: solid;\n border-color: var(--componentBorderColor);\n border-width: 1px;\n padding-bottom: 5px;\n padding-top: 5px;\n\n}\n\n/* custom modification of basic.css for color-contrast (AA compliant) */\ntd.linenos pre {\n color: #6b6b6b;\n}\n\n/* custom modification of prettify.css for color-contrast (AA compliant) */\n.str {\n color: #006b00;\n}\n\n/* custom modification of parsons.css for color-contrast (AA compliant) */\n.parsons .block {\n background-color: #fafafa;\n}\n\n/* custom modification of pygments.css for color-contrast (AA compliant) */\n.highlight .c1 {\n color: #376a7b;\n}\n\n.highlight .nn {\n color: #0f6c95;\n}\n\n.highlight .gp {\n color: #a14c08;\n}\n\n.highlight .si {\n color: #3c773d;\n}\n\n.highlight .nc {\n color: #0b719d;\n}\n\n/* `Search` functionality's result custom modification for color-contrast (AA compliant) */\nul.search li div.context {\n color: #6b6b6b;\n}\n\nspan.highlighted {\n color: #4d4d4d;\n}\n\n/* ActiveCode gutter custom modification for color-contrast (AA compliant) */\n\n.CodeMirror-linenumber {\n color: #6b6b6b;\n}\n\n.alert-warning {\n background-color: var(--admonition);\n border-color: var(--admonitionBorder);\n}\n\n/* Python code output custom modification for color-contrast (AA compliant) */\ndiv.ExecutionVisualizer table#pyCodeOutput .lineNo {\n color: #6b6b6b;\n}\n\n/* Runestone custom modifications */\n\nbody {\n counter-reset: rscomponent;\n padding-top: 60px;\n background-color: var(--outerBackground);\n}\n\nh5 {\n font-weight: bold;\n padding: 10px 0;\n}\n\n/* table-of-contents related styles for color-contrast (AA compliant) */\n#table-of-contents a {\n color: var(--links);\n}\n\n#table-of-contents a:hover {\n color: var(--links);\n text-decoration: underline;\n}\n\n#table-of-contents.section {\n font-size: 16px;\n}\n\n/* navbar-brand color contrast (AA compliant) */\n.navbar-default {\n background-color: var(--navbar);\n}\n\n.navbar-default .navbar-nav > li {\n color: var(--navbarFont);\n}\n\n.navbar-default .navbar-nav > li > a {\n color: var(--navbarFont);\n}\n\n.navbar-default .navbar-nav > li > a:hover {\n color: var(--navbarFontHover);\n}\n\n.navbar-default .navbar-brand {\n color: var(--navbarFont);\n}\n\n/* acknowledgement related styles for color-contrast (AA compliant) */\n.toctree-wrapper {\n font-size: 16px;\n}\n\n.toctree-wrapper a {\n color: var(--links);\n}\n\n.toctree-wrapper a:hover {\n color: var(--links);\n text-decoration: underline;\n}\n\n/* index and search related styles for color-contrast (AA compliant) */\n#index-and-search.section {\n font-size: 16px;\n}\n\n#index-and-search.section a {\n color: var(--links);\n}\n\n#index-and-search.section a:hover {\n color: var(--links);\n text-decoration: underline;\n}\n\n/* custom style for `a` tag for color-contrast (AA compliant) */\n\na {\n color: var(--links);\n}\n\n/* navbar and menu related styles */\n@media (max-width: 768px) {\n /* Remove top padding when top navbar goes collapsed in narrow viewports */\n body {\n padding-top: 0;\n }\n\n .navbar-fixed-top {\n position: static;\n }\n}\n\n@media (min-width: 768px) {\n /* when navbar is collapsed we don't want any vertical dividers taking up space */\n .navbar .divider-vertical {\n margin: 0 3px;\n border-left: 1px solid #f2f2f2;\n }\n\n .navbar-fixed-top .container {\n padding: 0;\n }\n}\n\ndiv.container {\n background-color: var(--background);\n}\n\n.container {\n padding-left: 10px;\n padding-right: 10px;\n}\n\n.runestone {\n clear: both;\n background-color: var(--componentBgColor);\n padding: 15px;\n border-style: solid;\n border-color: var(--componentBorderColor);\n border-radius: 10px;\n margin-bottom: 20px;\n margin-top: 20px;\n }\n\n/* Sets width of content \"column\" */\n#main-content section > *:not(section) {\n max-width: var(--contentWidthRegular);\n margin-left: auto;\n margin-right: auto;\n\n}\n\n/* Handle content in nested sections by allowing them to grow*/\n#main-content section > section,\n/* And then make sure a few items are wider by default */\n#main-content section > .runestone.ac_section,\n#main-content section > .runestone.codelens,\n#main-content section > .question,\n#main-content section > .runestone.parsons-container,\n#main-content section > .runestone.parsons-problems,\n#main-content section > .codelens,\n#main-content section > .timedAssessment,\n#main-content section > .jupyterlite_sphinx_iframe_container\n{\n max-width: var(--contentWidthWide);\n margin-left: auto;\n margin-right: auto;\n}\n\n/* Allow individual elements to request being larger */\n#main-content section > .full-width {\n max-width: var(--contentWidthWide);\n}\n\n.container section > img {\n display: block;\n margin-left: auto;\n margin-right: auto;\n}\n\n.container-fluid > .navbar-collapse,\n.container-fluid > .navbar-header,\n.container > .navbar-collapse,\n.container > .navbar-header {\n margin-left: 0;\n margin-right: 0;\n}\n\n.navbar > .container .navbar-brand {\n margin-left: 0;\n}\n\n.navbar > .container {\n background-color: var(--navbar);\n}\n\n.navbar-toggle {\n margin-right: 0px;\n}\n\n.footer > .container {\n background-color: var(--outerBackground);\n}\n\n.footer > .container p > a {\n color: var(--links);\n}\n\n.brand-logo {\n float: left;\n display: block;\n margin-top: 4px;\n}\n\n.brand-logo img {\n height: 40px;\n}\n\n.social-menu {\n width: 220px;\n padding: 10px 10px 15px 20px;\n}\n\n.fb-like {\n margin-top: 7px;\n}\n\n.fb_iframe_widget span,\n.fb_iframe_widget iframe {\n height: 20px !important;\n width: 82px !important;\n}\n\n.twitter-follow-button {\n margin-top: 10px;\n}\n\n.gittip {\n margin-top: 8px;\n}\n\n.gittip-button {\n margin-bottom: -6px;\n}\n\n.dropdown-menu > li > span,\n.dropdown-menu > li > div,\n.dropdown-menu > li > label {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: bold;\n line-height: 20px;\n color: var(--grayToWhite);\n white-space: nowrap;\n}\n\n.dropdown-menu > li > label:hover, .dropdown-menu > li > label:focus {\n color: #262626;\n text-decoration: none;\n background-color: #f5f5f5;\n}\n\n.dropdown-menu > li > a {\n color: var(--grayToWhite);\n}\n\n.loggedinuser {\n font-weight: bold;\n}\n\n/* end navbar and menu related styles */\n.CodeMirror {\n margin: 0 0 1em 0;\n background-color: var(--background);\n clear: both;\n}\n\n.ac_section .CodeMirror pre {\n -moz-border-radius: 0;\n -webkit-border-radius: 0;\n -o-border-radius: 0;\n border-radius: 0;\n border-width: 0;\n margin: 0;\n padding: 0;\n background: transparent;\n font-family: Menlo, Monaco, Consolas,\"Courier New\", monospace;\n font-size: inherit;\n padding: 0;\n margin: 0;\n white-space: pre;\n word-wrap: normal;\n}\n\nbutton.btn,\nbtn.btn-sm,\ninput[type=\"submit\"].btn.btn-sm,\ninput[type=\"button\"].btn.btn-sm {\n font-size: 1em;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n}\n\n/* Fix search menu button */\n.dropdown-menu .input-group .input-group-btn button.btn {\n font-size: 14px;\n}\n\n.btn {\n margin: 5px;\n}\n\n.btn.disabled {\n /* needed in Bootstrap 3 to allow tooltips on disabled buttons */\n pointer-events: auto;\n}\n\n.btn-default,\n.btn-default.disabled,\n.btn-default[disabled],\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover {\n color: #ffffff;\n background-color: var(--codeButtons);\n border-color: var(codeButtonsBorder);\n}\n\n.btn-default:hover,\n.btn-default:focus,\n.btn-default:active,\n.btn-default.active {\n background-color: #3a3c3c;\n border-color: #2e2f2f;\n color: #ffffff;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin-right: 5px;\n}\n\n.tooltip {\n z-index: 2000 !important;\n}\n\n.tooltip.in {\n opacity: 0.8;\n filter: alpha(opacity=80);\n}\n\nh2 {\n margin-top: 20px;\n}\n\n.alert form {\n margin-bottom: 0;\n}\n\n/* default bookstrap alert color is hard to read (low contrast). */\n.alert {\n color: var(--grayToWhite);\n padding: 10px;\n}\n\n.alert-info {\n background-color: var(--alerts);\n}\n\n.alert-danger {\n background-color: var(--dangerAlerts);\n}\n\n.alert-success {\n background-color: var(--successAlerts);\n}\n\n/* override the color styles applied by Skulpt to the unittest results divs */\n.unittest-results.alert-danger {\n background-color: var(--dangerAlerts) !important;\n}\n\n.unittest-results.alert-success {\n background-color: var(--successAlerts) !important;\n}\n\n.alert label {\n font-weight: normal;\n}\n\n.navbar_message {\n margin-top: 15px;\n font-weight: bold;\n}\n/*\nMissing brackets\n================\nThe default styling from Sphinx's ``basic.css`` doesn't style multiple references to the same reference with brackets. Here's the relevant snippet of CSS:\n\n.. code-block:: CSS\n :number-lines:\n\n a.brackets:before,\n span.brackets > a:before{\n content: \"[\";\n }\n\n a.brackets:after,\n span.brackets > a:after {\n content: \"]\";\n }\n\nThe HTML for a footnote reference is:\n\n.. code-block:: HTML\n :number-lines:\n\n 2\n\nThe HTML for a typical footnote is:\n\n.. code-block:: HTML\n :number-lines:\n\n
    \n
    \n \n 1\n \n
    \n
    Omitted this...
    \n
    \n\nThe HTML for a footnote referenced multiple times is:\n\n.. code-block:: HTML\n :number-lines:\n\n
    \n
    \n 1\n \n (1,2,3)\n \n
    \n
    Omitted this...
    \n
    \n\nHowever, there's no (current) CSS selector that will add a ``content`` to the multiply-referenced footnote without adding an additional ``content`` to the typical footnote: we want to select ``dt.label > span.brackets > text-only content`` or ``dt.label > span.brackets > :not(:has a)`` (see the unsupported `:has selector `_. So, I see no solution for this (outside JS).\n\n\nIncorrect color\n===============\nSecond, the Bootstrap theme (v3.4.1) contains the following CSS, from ``node_modules/bootstrap/dist/css/less/labels.less``:\n\n.. code-block:: CSS\n :number-lines:\n\n .label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n color: @label-color;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n\n ...more here omitted...\n }\n\nALL this therefore gets applied to footnotes, since they have the ``label`` class. Because the ``@label-color`` is white, this CSS makes the reference invisible against the default (light mode) white background. I like the rest of the styling changes (even though they differ from the standard Sphinx settings), so only the color is changed.\n*/\ndt.label > span.brackets:not(span.brackets > a),\ndt.label > span.fn-backref:not(span.fn-backref > a) {\n color: black;\n}\n\n/* These admonition styles styles are copied from the Bootstrap .alert classes.\n Most of the !important declarations are to override the Sphinx basic.css styles */\n.admonition {\n padding: 8px 35px 8px 14px !important;\n margin-bottom: 20px !important;\n margin-top: 20px !important;\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);\n background-color: var(--admonition);\n border: 1px solid #fbeed5;\n -webkit-border-radius: 4px;\n -moz-border-radius: 4px;\n border-radius: 4px;\n}\n\n/* .alert-danger */\n.admonition.caution {\n color: #a33f3e;\n background-color: #f2dede;\n border-color: #eed3d7;\n}\n\n/* .alert-info */\n.admonition.tip,\n.admonition.note {\n color: #333;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n\n/* from web2py.css */\ndiv.flash {\n font-weight: bold;\n position: fixed;\n padding: 10px;\n top: 55px;\n right: 45px;\n opacity: 0.95;\n margin: 0 0 10px 10px;\n vertical-align: middle;\n cursor: pointer;\n color: #ffffff;\n background-color: #000;\n border: 2px solid #fff;\n border-radius: 8px;\n -moz-border-radius: 8px;\n -webkit-border-radius: 8px;\n background-image: -webkit-linear-gradient(top, #222, #000);\n background-image: -o-linear-gradient(top, #222, #000);\n background-image: -moz-linear-gradient(90deg, #222, #000);\n background-image: linear-gradient(top, #222, #000);\n background-repeat: repeat-x;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n -webkit-font-smoothing: antialiased;\n z-index: 2000;\n}\n\n/* Styles for the login, registration, and Janrain forms */\n#web2py_user_form {\n margin-top: 10px;\n}\n\n#web2py_user_form form {\n float: left;\n margin-right: 150px;\n padding-top: 3px;\n}\n\n#web2py_user_form td {\n padding-bottom: 15px;\n}\n\n#web2py_user_form td.w2p_fw {\n width: 299px;\n}\n\n#auth-actions {\n margin-top: 50px;\n}\n\n#sign_in_text td {\n font-size: 17px;\n color: #333;\n font-family: \"lucida grande\", Verdana, sans-serif;\n padding-bottom: 13px;\n}\n\n#auth_user_remember {\n margin-top: -20px;\n}\n\n/* End login, registration, Janrain styles */\n\n/* end-of-chapter exercises styles */\n#exercises > ol > li,\n#programming-exercises > ol > li {\n margin-bottom: 30px;\n}\n\n#exercises > ol > li:nth-child(even),\n#programming-exercises > ol > li:nth-child(even) {\n padding: 1.2em 1.4em;\n background: #faf7df;\n border: 1px solid #fbeed5;\n -webkit-border-radius: 4px;\n -moz-border-radius: 4px;\n border-radius: 4px;\n}\n\n/* End chapter exercises styles */\n\n/* Modal dialog styles (scratch activecode, compare me, etc) */\n.scratch-ac-modal {\n width: 90%;\n max-height: 90%;\n overflow-y: scroll;\n}\n\n.compare-modal .progress {\n margin-bottom: 0;\n}\n\n.compare-me-progress {\n width: 100%;\n}\n\n.compare-me-progress .progress-bar,\n.unittest-results-progress .progress-bar {\n color: #333;\n}\n\n\n.unittest-results-progress {\n width: 25%;\n}\n\n.compare-modal {\n width: 350px;\n}\n\n.compare-modal table {\n border-collapse: separate;\n border-spacing: 10px 5px;\n}\n\n.codelens-modal {\n /* we set some custom position styles so that the modal doesn't obscure the codelens visualizer */\n top: 20%;\n right: 20%;\n left: auto;\n bottom: auto;\n}\n\n@media (max-width: 768px) {\n /* remove any custom position styles when the screen is small (mobile devices)\n to prevent the modal from being partially off the screen */\n .codelens-modal {\n top: 0 !important;\n right: 0 !important;\n bottom: 0 !important;\n left: 0 !important;\n }\n}\n\n.codelens-modal > .modal-dialog {\n width: 400px;\n}\n\n/* End modal dialog styles */\n\n.footnote.table {\n width: auto;\n margin-bottom: 10px;\n}\n\n.footnote.table td.label {\n padding: 2px 5px 2px 5px;\n background-color: #d9edf7;\n}\n\n.ac-canvas {\n background-color: white;\n display: inline-block;\n}\n\n.video-play-overlay {\n position: relative;\n top: -150px;\n left: 44%;\n height: 85px;\n width: 130px;\n background-position: center;\n background-repeat: no-repeat;\n}\n\n.video_popup video {\n width: var(--contentWidthRegular);\n cursor: pointer;\n}\n\n.ui-sortable-helper {\n height: auto !important;\n width: auto !important;\n}\n\n.navLink {\n z-index: 2;\n display: inline;\n bottom: 65px;\n position: fixed;\n opacity: 0.4;\n}\n\n.navLink:hover {\n opacity: 1;\n}\n\n.navLink a {\n display: inline-block;\n background-color: white;\n border-style: solid;\n border-color: lightgrey;\n border-width: 2px;\n width: 100px;\n height: 50px;\n}\n\n#relations-next {\n right: 35px;\n}\n\n#relations-prev {\n left: 35px;\n}\n\n.nextprev-list {\n margin: 10px;\n padding-left: 0;\n height: 50px;\n}\n\n@media (max-width: 600px) {\n .navLink {\n display: inline-block;\n bottom: auto;\n position: absolute;\n }\n\n #relations-next,\n #relations-prev {\n width: 25%;\n padding: 0 20px;\n display: inline;\n }\n}\n\n#completionButton {\n margin-top: 25px;\n margin-bottom: 15px;\n padding-left: 70px;\n padding-right: 70px;\n color: var(--completionButtonText);\n font-weight: bold;\n}\n\n.buttonAskCompletion {\n background-color: var(--completionButton);\n border-color: var(--completionButtonHover);\n font-weight: bold;\n}\n\n.buttonAskCompletion:hover {\n background-color: var(--completionButtonHover);\n border-color: var(--completionButtonHover);\n}\n\n.buttonConfirmCompletion {\n background-color: #377e22;\n border-color: #3dc682;\n color: #ffffff !important;\n}\n\n.buttonConfirmCompletion:hover {\n background-color: #3dc682;\n border-color: #3dc682;\n}\n\n.navLinkBg {\n height: 40px;\n background-color: #ffffff;\n z-index: 1;\n position: fixed;\n bottom: 55px;\n color: #999;\n font-weight: bold;\n -webkit-box-shadow: 0px 0px 3px rgba(50, 50, 50, 0.5);\n -moz-box-shadow: 0px 0px 3px rgba(50, 50, 50, 0.5);\n box-shadow: 0px 0px 3px rgba(50, 50, 50, 0.5);\n}\n\n.navLinkBg:hover {\n color: #999;\n}\n\n#navLinkBgRight {\n right: -1000px;\n padding: 10px 15px 0 65px;\n}\n\n#navLinkBgLeft {\n left: -65px;\n padding-left: 15px;\n padding-right: 50px;\n}\n\n.activehtml {\n width: 100%;\n height: 400px;\n background-color: #ffffff;\n}\n\n.container section > div.sidebar {\n margin: 0 0 0.5em 1em;\n}\n\na.disqus_thread_link {\n display: block;\n}\n\n.reveal_button {\n display: block;\n margin-left: 0;\n}\n\niframe[seamless] {\n display: block;\n}\n\n@media (min-width: 768px) {\n .container section > div.sidebar {\n margin: 0 3em 0.5em 1em;\n }\n}\n\n@media (min-width: 992px) {\n .container section > div.sidebar {\n margin: 0 11em 0.5em 1em;\n }\n}\n\n@media (min-width: 1200px) {\n .container section > div.sidebar {\n margin: 0 18em 0.5em 1em;\n }\n}\n\ndiv.ExecutionVisualizer table.visualizer {\n width: auto;\n margin-left: auto;\n margin-right: auto;\n background-color: #ffffff;\n}\n\n.sltooltip {\n position: absolute;\n z-index: 1020;\n display: block;\n padding-bottom: 5px;\n font-size: 11px;\n visibility: visible;\n margin-top: -2px;\n bottom: 120%;\n margin-left: -2em;\n}\n\n.sltooltip .sltooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n border-top: 5px solid #000000;\n border-right: 5px solid transparent;\n border-left: 5px solid transparent;\n position: absolute;\n width: 0;\n height: 0;\n}\n\n.sltooltip-inner {\n max-width: 200px;\n padding: 3px 8px;\n color: var(--tooltip);\n text-align: center;\n text-decoration: none;\n background-color: #000000;\n -webkit-border-radius: 4px;\n -moz-border-radius: 4px;\n border-radius: 4px;\n}\n\nul.dropdown-menu.globaltoc {\n max-height: 700px;\n overflow: auto;\n}\n\n.globaltoc span.caption-text {\n display: inline-block;\n font-weight: bold;\n font-size: large;\n}\n\n/* Style lp textareas. */\ntextarea.lp-result {\n width: 100%;\n height: 10em;\n font-family: monospace;\n}\n\n/*\n * Hide only visually, but have it available for screen readers:\n * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility\n *\n * 1. For long content, line feeds are not interpreted as spaces and small width\n * causes content to wrap 1 word per line:\n * https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe\n */\n\n.visuallyhidden {\n border: 0;\n clip: rect(0 0 0 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n width: 1px;\n white-space: nowrap;\n /* 1 */\n}\n\n/*\n * Extends the .visuallyhidden class to allow the element\n * to be focusable when navigated to via the keyboard:\n * https://www.drupal.org/node/897638\n */\n\n.visuallyhidden.focusable:active,\n.visuallyhidden.focusable:focus {\n clip: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n position: static;\n width: auto;\n white-space: inherit;\n}\n\n.blockquote {\n text-align: center;\n font-size: large;\n font-style: italic;\n padding-left: 2em;\n padding-right: 2em;\n}\n\n\n#subchapterprogress.ui-progressbar .ui-progressbar-value {\n margin: 0;\n border-radius: 0px;\n}\n\n#subchapterprogress > div {\n background: green;\n}\n\n#subchapterprogress > div.loggedout {\n background: lightgray;\n}\n\n.runestone_caption {\n text-align: center;\n}\n\n.runestone_caption_divid {\n opacity: 50%;\n}\n\n#questions .runestone_caption:before {\n counter-increment: rscomponent;\n content: \"Problem: \" counter(rscomponent) \" -- \";\n}\n\nbody {\n color: var(--bodyFont);\n}\n\n.jupyter_container .output {\n margin-top: 10px;\n}\n\n.jupyter_container .output td {\n padding-left: 5px;\n padding-right: 5px;\n}\n\n.jupyter_container .output th {\n padding-left: 5px;\n padding-right: 5px;\n}\n\n/*Theme toggle*/\n.dropdown-menu > li > label.theme-switch {\n display: flex;\n align-items: center;\n font-weight: normal;\n cursor: pointer;\n}\n\n.theme-switch input {\n display: none;\n}\n\n.theme-switch .slider {\nbackground-color: #ccc;\nheight: 1.25em;\nwidth: 2em;\ntransition: 0.4s;\nposition: relative;\nmargin-right: 3px;\n}\n\n.theme-switch .slider:before {\n background-color: #fff;\n bottom: 2px;\n content: \"\";\n height: calc(1.25em - 4px);\n left: 2px;\n position: absolute;\n transition: 0.4s;\n width: calc(1.25em - 4px);\n}\n\n.theme-switch input:checked + .slider {\n background-color: #66bb6a;\n}\n\n.theme-switch input:checked + .slider:before {\n transform: translateX( calc(0.75em - 1px) );\n}\n\n.theme-switch .slider.round {\n border-radius: 1.25em;\n}\n\n.theme-switch .slider.round:before {\n border-radius: 1.25em;\n}\n/*End theme toggle*/\n\n/* for ads */\n.adcopy {\n width: 60%;\n background-color: #f2e0c3;\n padding: 10px;\n margin-left: auto;\n margin-right: auto;\n margin-top: 10px;\n border: solid black 2px;\n border-radius: 10px;\n}\n\n.adcopy .donateb {\n\n margin-left: 30%;\n}\n\n.isCorrect:before {\n /*content: url(https://em-content.zobj.net/thumbs/240/apple/325/check-mark_2714-fe0f.png);*/\n content: \"✅ \";\n float:right;\n padding-left: 4px;\n}\n\n.isInCorrect:before {\n /*content: url(https://em-content.zobj.net/thumbs/240/apple/325/check-mark_2714-fe0f.png);*/\n content: \"⚠️ \";\n float:right;\n padding-left: 4px;\n}\n\n/* ---------------------------------------------------------- */\n/* Redo some PreTeXt styles undone by Bootstrap */\npre {\n color: inherit;\n background: inherit;\n}\n\nsummary.ptx-footnote__number {\n display: inline;\n}\n\nsummary.knowl__link {\n display: list-item inline;\n}\n\ndetails.ptx-footnote {\n display: inline;\n}\n/* ---------------------------------------------------------- */\n\n.handsontable td, .handsontable th {\n background-color: var(--content-background, #fff);\n color: var(--bodyFont, #000);\n}\n\n\nlegend {\n /* allow darkmode to override legend color */\n color: var(--grayToWhite, #333);\n border-bottom-color: var(--grayToWhite, #333);\n}\n\n.autopermalink {\n display: none;\n}","/*\n**********************************************\n|docname| - a WCAG 2.0 AA compliant stylesheet\n**********************************************\n*/\n\n/* Variables holding theme colors */\n:root {\n\t--codebuttons: #474949;\n}\n[data-theme=\"dark\"] {\n\t--codebuttons: #2c0aa6;\n}\n/*Navigation Tabbing Styling*/\nli.dropdown.open a.dropdown-toggle, li.dropdown.open a.dropdown-toggle:focus {\n\tborder:0px !important;\n\t/*background-color: #346A6E!important;*/\n\tbackground-color: #2A5659 !important;\n\tcolor:#F8F8F8 !important;\n}\na.dropdown-toggle:focus {\n\t /*border:1px solid #5B9DD9 !important;\n\t color:#5B9DD9 !important;\n\t width:48px !important;*/\n\t background-color: #52A6AC!important;\n\t color:#F8F8F8 !important;\n}\n/* Border Manipulation */\nli.divider-vertical {\n\tmargin:0px !important;\n}\nli.dropdown a.dropdown-toggle {\n\tpadding:15px 18px !important;\n}\n\n/*\nBootstrap button styling\n*/\n\n/* Default Button */\n/* Passes WCAG 2.0 */\nbutton.btn.btn-default:active {\n\tcolor:#474949 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-default:focus {\n\tcolor:#474949 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-default{\n\tcolor:#FFFFFF !important;\n\tbackground-color: rgb(71, 73, 73) !important;\n}\nbutton.btn.btn-default.btn-sm.disabled:active {\n\tcolor:#474949 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-default.btn-sm.disabled:focus {\n\tcolor:#474949 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-default.btn-sm.disabled{\n\tcolor:#FFFFFF !important;\n\tbackground-color:#474949 !important;\n}\n/* Sucess Button */\n/* Failed WCAG 2.0, #255425 passes */\nbutton.btn.btn-success:active {\n\tcolor:#427e44 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-success:focus {\n\tcolor:#427e44!important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-success {\n\tcolor:#FFFFFF !important;\n\tbackground-color:#427e44!important;\n}\n\n/*Primary Button*/\n/* fails WCAG 2.0, #265986 passes */\nbutton.btn.btn-primary:active {\n\tcolor:#3379b6!important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-primary:focus {\n\tcolor:#3379b6 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-primary {\n\tcolor:#FFFFFF !important;\n\tbackground-color:#3379b6 !important;\n}\n\n\n/*Info Button */\n/* Fails, WCAG 2.0, #155569 passes*/\nbutton.btn.btn-info:active {\n\tcolor:#1a6a83!important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-info:focus {\n\tcolor:#1a6a83 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-info{\n\tcolor:#FFFFFF !important;\n\tbackground-color:#1a6a83 !important;\n}\n\n/*Warning Button*/\n/*Fails WCAG 2.0, #794b0b*/\nbutton.btn.btn-warning:active {\n\tcolor:#945c0e !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-warning:focus {\n\tcolor:#945c0e !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-warning {\n\tcolor:#FFFFFF !important;\n\tbackground-color:#945c0e !important;\n}\n\n/*Danger Button */\n/*Fails, #a62924 passes*/\nbutton.btn.btn-danger:active {\n\tcolor:#d33a35 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-danger:focus {\n\tcolor:#d33a35 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-danger{\n\tcolor:#FFFFFF !important;\n\tbackground-color:#d33a35 !important;\n}\n\n/*Link Button*/\n/*Fails AAA, passes with #265986*/\nbutton.btn.btn-link:active {\n\tcolor:#FFFFFF!important;\n\tbackground-color:#1a6a83 !important;\n}\nbutton.btn.btn-link:focus {\n\tcolor:#FFFFFF !important;\n\tbackground-color:#1a6a83 !important;\n}\nbutton.btn.btn-link {\n\tcolor:#1a6a83 !important;\n\tbackground-color:#FFFFFF !important;\n}","/* Variables holding theme colors */\n:root {\n\t--menu: #FFFFFF;\n}\n\n[data-theme=\"dark\"] {\n\t--menu: #000000;\n}\n\n.my-highlighted-text{\n\tbackground-color:#FFFF99;\n}\n.social-highlighted-text{\n\tbackground-color:#FFCCCC;\n}\n.highlight-option-box{\n\tposition:absolute;\n\ttop:0px;\n\tleft:0px;\n}\n.highlight-option-box li{ \n\theight:24px;\n}\n#continue-reading{\n\tpadding-top:20px;\n\tdisplay: none;\n}\n#continue-reading a{\n\tfloat:right;\n\tmargin-right:20px;\n}\nli.completed\n{\nlist-style-image: url('completed.png');\n}\nli.active\n{\nlist-style-image: url('active.png');\n}\n.infoTextCompleted{\n\tmargin-left:10px;\n\tfont-size:0.9em;\n\tcolor:#3dc682;\n\tdisplay:none;\n\tfont-style:italic;\n\topacity: 0.7;\n}\n.infoTextActive{\n\tmargin-left:10px;\n\tfont-size:0.9em;\n\tcolor:#ff9f19;\n\tdisplay:none;\n\tfont-style:italic;\n\topacity: 0.7;\n}\n.dropdown-menu{\n\tbackground-clip: padding-box;\n background-color: var(--menu);\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 5px 5px 5px 5px;\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n display: none;\n list-style: none outside none;\n margin: 1px 0 0;\n min-width: 160px;\n padding: 4px 0;\n position: absolute;\n top: 100%;\n z-index: 1000;\n}\n.dropdown-menu ul {\n list-style: disc outside none;\n margin: 0 0 9px 25px;\n padding: 0;\n}\n\n.sidebar-highlights{\n background-color:#FFFF99;\n}\ndiv.documentwrapper {\n\tborder : 0 none;\n}\ndiv.bodywrapper {\n\tborder-right: 0 none;\n}\ndiv.sphinxsidebar {\n\tborder-left: 1px solid #CCCCCC;\n\tpadding-left: 10px;\n}\n.body>.section .section{\n\tpadding-top: 1px;\n}\n#jump-to-chapter{\n border: 1px solid #CCCCCC;\n letter-spacing: 0.015em;\n line-height: 120%;\n padding: 0.5em;\n\twidth: 80%;\n\tmargin-left: auto;\n\tmargin-right: auto;\n}\n#navigation-links{\n\tbackground-color: #F8F8F8;\n border: 1px solid #CCCCCC;\n\tpadding:10px;\n\tmargin:10px;\n}\n",".matrixeq_container {\n padding: 6px 6px 6px 6px;\n margin: 0px 0px 6px 0px;\n}\n\nspan.matrix_table {\n display: inline-table;\n background-color: inherit;\n border-width: 2px 2px;\n border-style: solid;\n border-color: black;\n text-align: center;\n padding: 0px 1px;\n margin: 0px 0px 4px 0px;\n overflow: visible;\n}\n\nspan.matrix_column {\n display: inline-table;\n background-color: inherit;\n padding: 2px 8px 2px 8px;\n margin: 0px 1px;\n border-width: 0px 0px 0px 0px;\n font-family: monospace;\n font-size: 12px;\n vertical-align: middle;\n}\n\nspan.matrix_column div {\n display: block;\n margin: 1px;\n padding: 2px;\n background-color: inherit;\n}\n\nspan.matrix_table .matrix_column {\n border-style: none;\n margin-left: 5px;\n margin-right: 5px;\n}\n\nspan.matrix_table:before {\n content: \" \";\n background-color: inherit;\n width: 85%;\n text-align: center;\n height: 2px;\n position: relative;\n top: -2px;\n z-index: 100;\n display: block;\n margin: 0px auto;\n}\n\nspan.matrix_table:after {\n content: \" \";\n background-color: inherit;\n width: 85%;\n text-align: center;\n height: 2px;\n position: relative;\n top: 2px;\n z-index: 100;\n display: block;\n margin: 0px auto;\n}\n\nspan.matrix_column:before {\n content: \" \";\n width: 85%;\n height: 2px;\n position: relative;\n top: -2px;\n z-index: 100;\n display: block;\n}\n\nspan.matrix_column:after {\n content: \" \";\n width: 85%;\n height: 2px;\n position: relative;\n top: 2px;\n z-index: 100;\n display: block;\n}\n\nspan.matrix_table span.matrix_column:before {\n height: 0px;\n}\n\nspan.matrix_table span.matrix_column:after {\n height: 0px;\n}\n\nspan.matrix_table input[type=\"text\"] {\n display: block;\n margin: 0;\n width: 50px;\n height: 24px;\n font-family: sans-serif;\n font-size: 12px;\n appearance: none;\n box-shadow: none;\n text-align: right;\n background-color: inherit;\n}\n\nspan.matrix_operator {\n display: inline-table;\n padding: 0px;\n margin: 0px 4px 0px 4px;\n font-family: monospace;\n font-size: 18px;\n vertical-align: middle;\n}\n\nspan.matrix_label {\n display: inline-table;\n padding: 0px 0px 0px 20px;\n margin: 0px 1px;\n font-family: sans-serif;\n font-size: 12px;\n vertical-align: middle;\n}\n\n/* Colors for matrix highlighting */\n\n.lightcyanColor {\n background-color: lightcyan;\n}\n\n.lightgreyColor {\n background-color: lightgrey;\n}\n\n.purpleColor {\n background-color: #DFB5E8;\n}\n\n.yellowColor {\n background-color: #FDFF9D;\n}\n\n\n\n","/********************* Colour reference chart****************\nelememt ********* property ********* colour ********\n\nwebgl_container background-color #fcf8e3\n\n*/\n\n/* Major sections */\n.webgl_container {\n background-color: #fcf8e3;\n box-sizing: border-box;\n width: 100%;\n display: block;\n margin-bottom: 1em;\n}\n\n.webgl_cmds {\n box-sizing: border-box;\n width: 100%;\n text-align: center;\n padding: 6px;\n}\n\n.webgl_row2 {\n box-sizing: border-box;\n width: 100%;\n padding: 0px 4px 0px 4px;\n display: block;\n height: 550px;\n}\n\n.webgl_editors {\n box-sizing: border-box;\n float: left;\n display: block;\n visibility: visible;\n width: 50%;\n}\n\n.webgl_canvas {\n box-sizing: border-box;\n float: left;\n display: block;\n visibility: visible;\n font-size: 12px;\n font-weight: normal;\n padding-left: 5px;\n width: 50%;\n}\n\n.webgl_output {\n box-sizing: border-box;\n width: 100%;\n padding: 4px;\n margin-top: 6px;\n float: left;\n}\n\n/* Details within each section */\n/* Tabbed titles, ul horizontal list */\n.webgl_nav_tabs {\n height: 31px;\n width: 100%;\n margin: 0px;\n padding: 6px 0px 0px 0px;\n background-color: #CFCCB8;\n border-color: #fbeed5;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n list-style-type: none;\n overflow: hidden;\n display: inline-flex;\n}\n\n.webgl_nav_tabs li {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n margin: 0px 0px 0px 4px;\n padding: 4px 1px 4px 4px;\n list-style-type: none;\n position: relative;\n float: left;\n background-color: #E6E2CC;\n font-size: 9pt;\n}\n\n.webgl_nav_tabs li > a {\n padding: 8px 8px 8px 8px;\n color: #555;\n text-decoration: none;\n}\n\n.webgl_nav_tabs > li > a:hover {\n border-color: #b4b19d;\n border-bottom-width: 0;\n}\n\n.webgl_nav_tabs li.active {\n background-color: #ffffff;\n list-style-type: none;\n list-style-image: none;\n}\n\n/* Webgl editors */\n.webgl_tab_content {\n width: 100%;\n position: absolute;\n clear: both;\n margin: 0px 0px 20px 0px;\n border: 0px;\n color: #c09853;\n background-color: #fcf8e3;\n z-index: 1;\n}\n\n.webgl_tab_content.active {\n z-index: 2;\n}\n\n.webgl_tab_content > * {\n margin-left: auto;\n margin-right: auto;\n /*\tposition:relative; */\n}\n\n.webgl_tab_content .clearfix {\n position: initial;\n}\n\n.webgl_tab_editor {\n width: 100%;\n position: absolute;\n clear: both;\n padding: 10px 4px 10px 4px;\n margin: 0px 0px 20px 0px;\n border: 0px;\n color: #c09853;\n background-color: #fcf8e3;\n}\n\n/* span that contains the tabbed text editors */\n.webgl_code {\n width: 100%;\n float: left;\n}\n\n.webgl_tab_contents_text {\n width: 100%;\n position: absolute;\n clear: both;\n padding: 10px 4px 10px 4px;\n margin: 0px 0px 20px 0px;\n border: 0px;\n color: #c09853;\n background-color: #fcf8e3;\n z-index: 1;\n}\n\n.webgl_errorMessages {\n color: red;\n}\n\n.webgl_warningMessages {\n color: rgb(170, 34, 164);\n}\n\n.webgl_infoMessages {\n color: rgb(24, 144, 64);\n}\n\n.webgl_output_div {\n width: 100%;\n margin: 2px;\n border: 1px solid lightgrey;\n padding-bottom: 4px;\n padding-top: 4px;\n padding-left: 4px;\n background-color: white;\n overflow: auto;\n height: 14em;\n font-size: 12px;\n font-weight: normal;\n}\n\n.webgl_editor_highlight {\n background-color: #EEEEEE; /* very light grey */\n}\n\n/* \nRemoved as these rules apply to entire browser window and not just webgl interactives\n::-webkit-scrollbar {\n -webkit-appearance: none;\n width: 7px;\n}\n::-webkit-scrollbar-thumb {\n border-radius: 4px;\n background-color: rgba(0,0,0,.5);\n -webkit-box-shadow: 0 0 1px rgba(255,255,255,.5);\n}\n*/\n\n.webgl_btn {\n display: inline-block;\n padding: 3px 6px;\n margin-bottom: 0;\n background-color: thistle;\n font-size: 12px;\n font-weight: normal;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n cursor: pointer;\n border: 1px solid transparent;\n border-radius: 4px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n -o-user-select: none;\n user-select: none;\n}\n\n.webgl_checkbox {\n}\n\n.webgl_tabbed_editor {\n width: 100%;\n resize: none;\n font-family: monospace, sans-serif;\n font-size: 9pt;\n font-style: normal;\n}\n\n.canvas3D {\n width: 100%;\n height: 100%;\n}\n\n.CodeMirror.webgl-default {\n border: 1px solid #eee;\n font-family: monospace, sans-serif;\n font-size: 8pt;\n font-style: normal;\n}\n\nbutton.btn.webgl-default {\n font-size: 8pt;\n}\n\n\n",".runestone-sphinx {\n @import (less) url(\"./presenter_mode.css\");\n}\n",".hidden{\n display: none;\n}\n\n.view-toggle{\n padding: 0.85em;\n}\n\n.presentation-mode section *{\n display: none;\n}\n\n.presentation-mode section .runestone, .presentation-mode section .runestone *{\n display: initial;\n}\n\n.present{\n height: 100vh;\n}\n\n.full-height{\n height: 100vh;\n}\n\n.bottom{\n position: absolute;\n bottom: 0;\n}\n\n#codeDisplayDiv{\n width: auto!important;\n}\n\ndiv.ExecutionVisualizer #dataViz{\n margin: 0;\n}\n\ndiv.ExecutionVisualizer div#stackHeader {\n text-align: center;\n}\n\n#stackFrame{\n display: block!important;\n}\n\n#stackHeapTable {\n width: 100%;\n}\n\n#stackHeapTable tr {\n justify-content: space-around;\n}\n\ndiv.ExecutionVisualizer td#stack_td, div.ExecutionVisualizer td#heap_td {\n flex: 1;\n}\n\n.presentation-title {\n display: none;\n}\n\n.present .presentation-title {\n display: block;\n}\n\ndiv.ExecutionVisualizer div#heap {\n float: none;\n padding-left: 0;\n}\n\n#stack_td tr {\n display: table-row;\n}\n\n#heap_td tr {\n display: table-row;\n}\n\n#codeDisplayDiv{\n margin: 0 auto;\n}\n\n/* bnm -- comment this out for now as it breaks codelens indentation and arrows\n.visualizer tr{\n display: flex;\n}\n*/\n\n#vizLayoutTd{\n flex: 1;\n}\n\n#vizLayoutTdFirst {\n flex: 2;\n}\n\n#vizLayoutTdSecond {\n flex: 1;\n}\n\n#vizLayoutTdThird {\n flex: 2;\n}\n\n#progOutputs {\n display: block!important;\n margin: 0 20px;\n width: 60%;\n}\n\n#pyStdout {\n width: 100%!important;\n}\n\ndiv.ExecutionVisualizer #pyStdout {\n margin-bottom: 1em;\n}\n\ndiv.ExecutionVisualizer table.visualizer {\n width: 100%;\n}\n\n.present #vizLayoutTdThird{\n text-align: left;\n}\n\n.ac-block{\n display: flex;\n margin-bottom: 1em;\n}\n\n.row-mode .ac-block{\n display: block;\n margin-bottom: 0;\n}\n\n.row-mode .ac_output, .row-mode .ac_code_div{\n float: none;\n display: block;\n width: auto;\n max-width: none;\n}\n\n.row-mode .ac_code_div{\n margin-bottom: 1em;\n}\n\n.ac_section>* {\n max-width: 100%;\n}\n\n.ac_output{\n display: block;\n max-width: 100%;\n}\n\n.ac_output pre {\n visibility: visible!important;\n min-height: 60px;\n}\n\n.CodeMirror{\n margin: 0;\n max-width: 100%;\n border-radius: 3px;\n min-height: 60px;\n}\n\n.container section > runestone:not(.ac_section){\n max-width:none;\n margin: 0;\n}\n\n.presentation-options {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n}\n\n.layout-btn {\n background-color: #FBEED5;\n border: 2px solid #DFD4BE;\n border-radius: 2px;\n padding: .25rem;\n display: flex;\n justify-content: center;\n align-items: center;\n margin: 0 .5rem;\n transition: all .2s ease;\n}\n\n.layout-btn.active-layout, .layout-btn:focus {\n border: 2px solid #979797;\n outline: none;\n}\n\n.sketchpad-container {\n min-width: 50%;\n min-height: 300px;\n padding: 0 15px;\n}\n\n.card-mode .sketchpad-container {\n width: 50%;\n margin: 0;\n display: inline-block;\n /*margin: 0 -15px;*/\n vertical-align: top;\n}\n\n.row-mode .error {\n margin: 20px 15px;\n}\n\n.card-mode .error {\n margin: 28px 0 0;\n width: 50%;\n display: inline-block;\n padding: 0 15px;\n vertical-align: top;\n margin-top: 28px;\n}\n\n.sketchpad {\n background: white;\n border: 2px solid grey;\n border-radius: 3px;\n width: 100%;\n min-height: 300px;\n display: block;\n}\n\n.btn-presenter {\n padding: .5rem 1rem;\n border-radius: 3px;\n font-weight: 500;\n margin: 1.5rem 0 1.5rem 1.5rem;\n}\n\n.btn-grey-outline {\n border: 2px solid grey;\n color: grey;\n background: white;\n}\n\n.btn-grey-solid {\n border: 2px solid grey;\n color: white;\n background: grey;\n}\n\nbody.present .ac_section>* {\n max-width: none;\n}\nbody.present iframe {\n width: 100%;\n}\n\nbody.present {\n /* font-size: 2.0em; */\n}\n\nbody.present #relations-prev, body.present #relations-next, body.present .navLinkBg {\n display: none;\n}\n\nbody.present .btn-presenter {\n position: absolute;\n}\nbody.present .btn-presenter.prev-exercise { left: 0px; }\nbody.present .btn-presenter.next-exercise { right: 0px; }\n\n/* .col-md-12 {\n width: 58.333333333333336%;\n}\n\n.card-mode .col-md-7 {\n width: 50%;\n} */\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/_static/prefix-runestone.677a75a9120449ff.css.map.gz b/_static/prefix-runestone.677a75a9120449ff.css.map.gz new file mode 100755 index 0000000000000000000000000000000000000000..a71597ee0421bd8a080f5f205dd74d0e283850a5 GIT binary patch literal 52921 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 Ik0K`EO1S#HTGvBtYd(GB%4w>f7 zWP$tT!E7G;Cp`B!@~SM5Qg_dLZT4tjWo8^65gzUy9uXcMUC(r+Ua;&`#V8WfAt}Qw zTXt1<4a-c`Dny4MhmcgwCS~K0YS&HTxRyyW10>g*(@Q&hbG>?@+^c5_b+c3dr)ZWTd;hdsLb2>CN`!)3UaEwxe7(i&)h(k!PoLJLPJAh^v?^%o<8t;b23aH8f*x zE~~hivSF6e(r##dYIjP{7^X{XQ?DrSRj0o+qF#~Y4AF}d>2wH=&cHhwN$av=YkJ1j z$A797m$~hm6GOUiW5eqWD_$jRSZd1Dv-y?)N}}Od654pN5bVH2};*A z&ECG<*sYn{x0f;%Vvf5LyR+N3rz;t~RN7n79Vac7Y^zqXrcKqU7plapL!E*R|7Pre8mda*eTjprSj}dI;*Irnu9`zDprw_e`Z2= zCbn<4Aj>ph%9_S1KR*Rs^OE7X#3WEzOj4ZC&2b_rmfU~>GcoMN=?0PHP8g2NX)l?! zOiX5mkyJMwccwy066*ySa07WW;}xr*S6r)@LTcd{7n&yki&0h9Y*3CY6jS1BrI`uC9u)dq)gmt~EYR30#Cg+d>SKrpW;W;*&%;L$46q zZ4FUTNK1aUY27vrbNs1t`e`w<>-vnEsTj~GJ?Pa#An>=MOkY|73-A&k2Z6vMv|(CGJ>oVKYB?t*KO_~7MEDaqNK_!8agb;=LEUfwV^j{SuHjb5j@>Eo zZ&#u20*p}FDU}=|cF_Q3rQn(>&rNLlHExp`6|hnPS+^r)nMF`_CRw)Ud9Jj)WB0S5 ze(dUEpxc&Z0$Dz>EXS%CrBF$jDO}P|;X7WEk9d^9T1QqMLTWV;qXnxpBcZ62cv+I7 zYf`yhsimuBVh68(0VZG0_Y<-+$ z9OAy{l4@FD?q#f}BB5|W3D~9%pvZ!0IOV}a#e_vb%qU1@4Oh{=4fmY;; zA#TF0R>B$e2(w2xIF<$kj9S!dadG!_c!#PODARozZ3RPt4k1%SBOul)IJ#m<7$Sv| z8=!j5PFY4Nm4!jxg+bocd`1CSLxhjoboh_-tpKJVN0AYCG%_;!k!=Wq(7sNnTN3i+ z1|O-yY_GKpL#S4QhMJ)|I5ey?H)QS#8eqWi*${eXSX4b3k_wP^YgqwfTN=lB(9K*q z1Gxg3ov&EqhN*Ijg8qppsn1&0r2s>eqs;1s z{0MZTG^&7Z1+PX4Un?fOI&aWd2VTdWX%Kb5cMyP4#G!9Bc%3lt)eb`K!|)2TBzT?j zVb6%@f-b_K&*7EAlnT15I-nO|spAe5RdF#zu?PWWou(k_A=RpsFbTZ7x~)5tm}UY4 zCM$ecTJiW z-itGKMe>t4h`(9|U;WlXqg36M{MNx|aU$|bmqjXmP>DieuP!3BiWMQ_6|5v;f>iz2 za#=L3Y`FM}_=n%RI%Qi35g&>~Xj;4IC$?+BtB?3{-4<}ibwr74(^o_!{Hj2Gpbw^3$27;ngTd7)ps42R+;v#ugrttOfVS)6jZU_+sQ=ghzs8Vu#eG2eFyR|wl08}Sz zQGu%A3kq74jku}Wulw=SK8;pq{1#RZn}S?TeL^(W)N7)$X36n+9NtxvGB|B0{HlC0 zGzc`YY!lIFIiiqSu_P*7D-{K}TFLca%N75%>WHFiF0HUyz>NGwG~tc9sOuY4>b+4% z@qphpWjhMMuFeQVz^|^_^%|3LHH@rdH`XU1AFZTae}l%oAxMwsg8(5MtCJ!`kULG| z=%TwE-RDoI=vTw>y9~9)K35GV=!9H|sl@#fRDNyOSZ}>^-qHmqU6(O75A~tUl ziI~!nJ1%&|Ma;P_`{eEOzeNq*8BwizsVV{~GV9}lZR(REVu}<+d!|TDQ1uiYNNH`S zs%25zDa)7PAh$)@XIkrcQz3g9ln7%VfJD22;)ORL*!yoHO29 z5qEm4ipj;MmI5I?02oqN zb#o>hoXcf0gM$>V^G5>gv}+28cF}Omg`p|kETsgH4uldZ4=a$#^tPmez+7*%4nbl3 zs}JfE1c)j^wgzf|Ej>^$+g96tifStZIb|?FoTz+j&6R;}Ww1NmNo%wi zz++%g8O%})`>pQ4dWLe~KiZQ}Wzh#yDUryCR^A9#9$QBA~5}A z<(5utfI=L?JS%;QQ6w$Z2IV=dJwy@|A#Q+RN)igv z0;=7~n9YiO<=~SSo|LpZnzXwOiUn;%Q)38JrmVLkS;#a7+GR|N)z*z1l^V*vJv z^-Kbg%rw3bjVFcb!i=*8P1VV*cs9bJnA+NM2<6h7cQJqIh_?v7xfre5?MS2QMoGgL z#4-GKw^tHr38wzW7Bpr$Rx3todO}#`3GMy?BC3_6i~vV|ek?d~vVs0M`c{2dHMWd>eal#L%UEZt*gqwe%{5vj zv-?MzZMcW4vEqDU6-yBH$v;_%GMzBW9d0+PftjymP7&LEm98)46O2z4L(vsSu{D!S zr(PrD&mXF#r2_{_of@upOY)FWPIs7dbGW5#^6g)lZHi0MP}#E6x|SW%cZs+my|Yt> zJdS3L=%b3AanYX0k*RrPO}8ELq6yy_2Mv1DS;b-d!mpIml7_aNxvY$v=e&rNNEl7l znUjYQyvBCh8$2;?P*(L?+EgNzNl-9L*P&@d048Wcl(sZ9R?38y-$vMeW?E*3cVtu^ zP8%%MIN^AF!LqA>LNr|%F|?O;cOp|Y%(S5hB&a!gRL5SMwGo!;m+x#^TulO<~2xvG|Yzd3amwa6OnXOl=x*h8`pPZm~ zfkNZa$UQFO9ygJDhD7kL?jhM_hUD&u>l4zb%qs`oUm<8cN`_q|DIkh)NNzOW6DkBk zx<~Vvu%RUMO1{-FeHNM~eRuA=^WS~_-8bJ|`0nC&m%h9F-TZe860Rdj-(UUy+V|JL zU;F;X_v_!^{QlPW-+q4^WLzaLdFz+F^~>J+ytlsKtuK1(SG@HlZ++QYU-8ygC7ee} z-r6N^?XtHv@2xF(Ym4666>n|HTU++lR=hPxQ-Pt)yL;NZ`;m9|WAE-Syt{wn-TlP7 z`>A*LGw<#%y}O@-LJRftmM?kBm%ZhAZ+XF6Ui6l)c*{%P^0K$Q;w@uY6M3n5_FVJq z`R3WLn`ggip1sgKd$D=;QuFNP=Gpn?S!fN+6C`iplDBZ#TbTD27QBT;Z{do!u;eW) zdkZVx0>BxsLz*j>yepTzEA!r!1@FqDcjbzAWy!m;>|I&$u0R@4h$QdgCGX;8@8Z07 zalyN|=v}g3L`-C=#l2pqs^nonn#Z}kDh2AeY1J=t>)3Un@3MJ zkG=!rI@V|PlDB%+wdDkv`*XF%z3*NOw z@7fjb+LCu|*}JylUBficcJKCS@AgOD?T@|NzwmDVjd%MK@AjwO?a#d1zw~Yc4hx9q zd*{4+=e>Jhd-uNa?p^TiUG(l<^6p*s?#+Am7NiEJw~h{Xgp6+Aj=veFRx#YPB*~4& zP~7sPqMPG&eVjPTY>AZhI!xf*=tjt3u0Quw8zDn(WEe^h=hGv5)W6cz!+*Q@x9fj< z=kJcFfA{I%{ZjqAn}7GM`rp6(?|0Q-AN}>|Uw`!LbLy`z{Ced#SJmIF{pRLxZvEzt z`kVW|dHCD6etS~=?YqA{_1h2B-=6>NH|qab{~x#1|9R|xzN`MP)&F%({rgY<{&V&3 z&;I>+^&j5;hj+XS$5rpbZSTTe@4|i6yLiOA_zpZyc^5x`$7%24FX3_CyLdtME*-X(x``G|Myesc`SKjlkobs-m_O6`s zuAB#cfQYN!mD}FZF>mR(w*(NEPI*fodP}FhB>=cI?=1nqrK{f3b#H0STLOSfkovy2 z^uSv_;w``JEuZw3-}9DFdCQ-9%V)ghFTG`G{_=TXYM?KiE!A5+ z>8-vCk5k_2X>av2U@`c(?p-~qdRLEoSD}=vr@X6B%GJ}}RVd}^ymu99fAzL^^}crv zQe8XYU4uTq_Jw!toOkU!@E?4vdeUY`_x2=m51{%V zeAxT|zCK)Ueh3ggyx%;1RBe9#u=xc%zWAc~1;qX8+vXWadFE8}4Al9|N6j-3c;;I3 z%zE?8&E}U7_2oy+FCpy9rRJ9_@VMIi3Ie}cYkqaJ`PBopdG^ib*|(c#Pd3l~4Samj zJbMO4Pk38so`W`=`@DG$zRurjehs<4o^O7=*!=pc+Wcm{c>w}0eAT@04LmM2FD$_0 zO7p_i=7np`3v2N4ZS&$=YV+c9^CG0bc%yj<(qFpLyaZpD-)UY3;FrH>&O_k*r_K4# zoAdAi=wA4wx$s$Y;e2!9o94oW=E5=rU2iTzvc-3ri;!vY^X4MdXmPo@bV6+|tu>d{ zn@e|_OZV00^3mq^-Z?0Twu3T=eEH*(}G*>S+S1&hL z7vXKGxw_I^z2011Yp&i?n^&(iuij{0U2k5!t2VE_)4cXRJRUaJpbBemH`jjATsz-f zgVwGsHP-;p+FEmMy}5R?c>@yMeAxUJ9``b_up^chicvb zta<6U~Q!zlW!q4+7)=LY^+`1SXE@-4 zoAdBk*|-TQZr(-|mAf+~Lef8+bo9d$@Z$CP6 z9v%yij;uU7vij)AHTYP6bmUuj+%}C zQoi@#(JA@9Wk+|kW*$Kmnj=DD}w@$TliQ}DR3dG7M&IY@Qx*5-MDcYbXX*mLunJ741T7rfTsQ%b z_cj;a-&}xpE_}YZa0VWCHx~ff;_Bw&wavx#&BdFWi?`wX{^pegLj0n@iC8r4KfjK7z-mn@fP8rAwPj^YB>NT!O|fU))@V$LfX6)k~YJ zmp4}z;A3fX6~k_C0y+NMSKs^_;O^hfzV&Zs--E~9{~J2u@xt=sg{$i0E1y4Jg0H2w z9)q6pclF@A1R8A3uB-9v?n__%S>_d;IVV zc$^uXJ5Vp}%w|X6QOssl`Y1$0OEk2*KN8x#lZN)_qjSGIedHeg+z-e1lxci#DUz#? zmCzRr-N{1B6xN9&_;V~2U&;<(e5t1=oU7EsL(7rS5`|SN7sH{1l|Tlgp*jmKWy7Im zhJ|u>q_lDm3+>e-p{zaSfxbv6E3G^jX=QnkVx(M*!YxufmP-OcF5DA71QyEbThs@` zp(U2K)IAUhW%Vuf_aII`Sq()I-oT#zaE5X(3+;aaK=w+e(kx*9sQlT#rTAow5J1HvOJsFA8SyU`T znej|Clu=9djDjCr;iw`by;32ZL6BY#t>`cB;?F(&31=k?N2Iqml9jO!>5J4$ke-h6{i83I@Mi^o zR`KU%IAxKgEJpGRiJYSpbLJfWoX4L_;Y3_O`(4=|7MW$*mTw-0qC{C`K}S17lD9l4 zYA_g<$NeM{I>15)dLyB{7kt4|48tvp>XpK9yE)ukSo)J*E^cyqIJ9SHIF$5qjFU(x z6WgR8G4|=g3jVBy<4c?~k%B+HvL1@^hreV2@bw*z{lA*7g$*@SJiOz=FQl!$PRAllhQt2|Qbh$TD z5kb^~k;}#INGKZ%%0(`&d-_9NTN09mg%ZZFq(_g0_EU5cA+dPqKtCJ*dm^Db z`&g(bt;mqf$(lq$g|;~u31v)H8q_19gq4=<4u_IlHd^0eSi1EBc7AvEozwX9(HzF? zWHCGYcaA2B*Z#2BCZ+yxXgQRYf@0jav%i=ODlDnXJ-y*jp)~txNtoGkrATOZyjZG9 z?F6PzDt4eJ+yb3*^FX)&f(77rfyu1`=nn~?3WahcRAge~U!k0wsT|KF&!tEH;q*T| z_{Ssvc>EvV`p1*%KR*1|BkI2{{_Bl@UH{iRs(0=a@7x#OxeMO8dGFkc>Ye|kcm9m( zeSLQ0$cK-YzI?oN7AC0kkCztJ$IBo7)5(8&@1NfPr(dbxz5Cs=`rYbx*VOMn`TpYf zm%d;5e)ao1>OY_U=a1EYUj0AcQ~%}Szg$!Q<)QcWIo12->&MHd)yFsPKVFAP@2w9X z--0Rdt$UAeJ$QWU;p5xzarXfqUc1Arkt5;I66*+1b8u=je!VS3F`#KVl=cg5KUW1loN$GGyMOd z@lc@(lW1s}jRlZamZ_V9=*A)4Yqv9`YPjfvVzywEjFydQw24TY8bLQqRdh;}c4c|k z_p)G)bdL^86+E~q*=|M3oApXX?3iOPb;KlX99fh)5k@DxF7dP?>PjREUmKDA%idgn z|6rbIyW?l#$)TEMyN{dDD%Ckk?A(BIjm-6((q~;(} z-qPHmf=%?vAsTEIUPspgd83>*xCxHS?RIi<)E37#>%khO2~-5_aCFV3Znh%swIq>G z>d<(loDqFgb|-9WI)(eh&)c?Tr+3uNNfRA8ST$lZ$AHp~PQ7!7v_l@UG|YphIdZth zz6%v>izM+VfBQOC0wjm7h9;6y3TuLfCwuno&!?nLA6vq9#-jEjMLmpe;qMI!66PYz zfsz|W4w{RYotldXF&hf^O_gLOr1^GKNUUh4;v2B+3K@Wyqj_nY)R{KXHJ(z7nSl9* zA7M+IFezptHb8z+%$bMiUB6(z*d!3l>WR`_UXl__Wqc=WSV$85C|H)C!UJF}b~$lq zBe}rBXZv;+{*o%m?R(ND;JMLwlC(nVa3fM;uzR5Y2Qt6Qxu1FVa5TS6>R=;WEGJC| z>ZbgG1O|h{+oL76a!Z-w80eUVT9mc1i4y+R(p?9(r4N)k<*xAv!3!xA(6fmYrshO% z`DT0Wh&4KlKa`?P>bRs9Etv{6K`nu`;Owj<@5(Z=4Aq#?Vmge1El?V_34BVVG9gDp zbjL+|H*~t9z!;TQ_8ebP-f8NPq-VJ49U~DH$%mw z#$_&~cYUutLoPE7#32%JN=H?9G%fo^fTqtSkfISdHrgAhr8c7&+Q?|T0%my$T2cu! znx)VY+F+J$rX1KD`o(RFP*JF9SRxaEGYU2QGc-3X5ApUGL$bx78ZwU&GFh0|k>T`= zX3`qSc`MYyeSwe`0(2-DwU!prFj7KL%_uXSrp&!Q!RQE|nkg&cBF55gyY31E-i+)k zIpMxQMQ0da@@WK&Va0r8gGBL>YY&aK?V7pu+(reGZ z`qG}g&r3>Z2+EBzt_=ZvUH}B~3m{!(TRN-Mr5A_LJ+nM9q!T~keXd+GK=pce?8k6IWW5Iz=6>&G@Xrx z&0*kVdgPE233niP6g~RVD43oqb@pn*>okLr>X5c=-;tJ|Q8Hawb#O=<{!e?s|`)NXo2`4E|!@D?d$Ja;9XNByE5S_rC?QQ}Vg{n6N*#gnDnzGm=sFR!G=hnPq|9ue zV?d;Fu|YxWf^yiY5v-^yze1;uL0_PE&{w9-S8bfkxicA1w<^?^Ir>c0baX?GBRnW; z(8jcjM@&Gcl7sPhdV-i4y;iHtfEMA%cmyv#^NkP(=qJPRfIttA$Dq>KlG>yvJCb$a zXkuzl9SZ>n3GBcVpu#K)9kE>7OItkXG1_+ zoTV#EhA?hd(O)Ll{Yus>JHzCkQv!};A{UZzK@h1bvThouXFeMYS*qHYo-ir|*qI6q zV&a;UA+yy6LyNmk90^qtC}qoNp!~VH2;xM#mslgil3~9+gYrP6NHG{Gzzhnb0BWa% zQo#T*k%sV230LiO|6CBx+)D(=%bLlDU2$@+q|fQD?)&moBrF|Xb6CJC-Ra!UtvOJW;DG-o9O;sd3^cdUsfoQAglk8FUJ2)j-J6 zNrf|Fj%v_eDA@Fi0_te#0dthy_rOQXE$}bX^I1l4F3X@NkaW$W2bEZ1x+pBV%z>iK z@n=S@q{d_)UHnLz1hZ*M(5=8Aq4`9Jeg7~sUP-vLhcYA5fj!a|R#dEKgai(-6s;;! z0m+n-s0SELEH3)JYi{4}&r|K~+ihOM?b{vr;~&uRL3rAiMz&8g4iK9|&ziVt8^@`n z;$iqmpe}Pbt!w_mgf(oiF-o_`XHR2(e&#smzAir&Ewe0grS{}&M3nDoKNU`AD^Ms zP0bA{TmAjLgGswOkgZf9`;974OGGWVP_qd1C&$%o_r+?JlnmV^m6?1;R>7Qk>^hVB zZ^s}P09i0o>LI-f!CPFMyi~QI@i?}oCdmwSR{h*7FTad|`{=zeDVhLOUcz5#8rP~9 zCuphc6#>A|jmMQWkR?KPPzBM5EJlkBp72l#a)I@tOf%?0TH%n59#J_8K#>PAqEnn` z9qc*8?jPzz(FNK8QT2>fDM4<6W4`|pBv4pB5acj!a)bzdN`THO#R}2w{VX;e>V=H^ zVo6r8vS};BF$?vNrO;qPATk?DP>jslXY<{>482Jw%^MqTsl;nJOoODn@1Gq8^B|Et zL~j^@!DD=!*dW3hijTS$yrKMwqQrljn+veh+C8#gf6W~t6^EeODsd%E3ZI#7-Hj6c zm{=K8Ag~4DCPOo-6d9`wrG*>aNb?B-)ptQ9e!imDfGjaOT%81xXi$71Ya!CAY3xJF z2B3|CaN&v@zA`;LC^m(D0}?Lu;q8Okw9sj!MJ{WR8=@JP)1kq~OShGB+<pwFj72oqi9cN&miTslDEdTU{NP?(ZPlEEbbZDKh%94|>@(uj{8{-szo-JLM?DjA|miXJF1Fabc^LXcB0Fr^Nrbvg_+j{9OLk<4yv zaOjNx%edGWaE4a-RBuu&p}C{B3*~1+t}S_S30`5?qe)0(wa! zFkp=nTqMf7N>#Tfp-OxCZ3lT%guG~q8xZmaK&Ycu62AR_1u2H}s(T27LDw7#->IO# zt{-B{c9FeiHco}c|FrZPflhGT)C)SySxbC&2;;9^!Kw!d>Ee&V#Uz4H&qA8~!EKRS z8GysbVEmmT_87aIuh9jWK^At^Ysl}2MQr~;gbgF5yB}m42vg8P42IDzoEi8=Z@MT(K3j_3t*9dUY}0NnCDqptLUE=ulH&7O0uqH7bvKE{a| ziULh*f>dgLI`)G8n#WD5?XduHrw99#yJUYge@mt#ai&9^JIr(>iRri(iZH8%sT#Pk zG4$hU4u+z=KKJc&b+_&uWTfK?;>b0URy=VW`ziWj>Cl2r(4ic*5-)r+Ds1N=3K}O< z61zZ&*37O3h2t8Aw9CJSWV|v{n=pU{QvRE2P2x>g#_p7m2Bl2u=LFQf=b$1T67E|I z@Ozxe80eQlY@~E2$SW~{W@+tY?N6Ly&9=sEP>Mr$?hU~N&&tqR;(da6lT2EwxuH8Y z!#DKN%YPE#;JgC$V0JMVyVZ-{aHQ%LAh&#x-fkl8j^1P?6*4D>nXZRsJdx?1AL<0tm`FsJN*bpbQ8eFMrJU_0{ZP+yUWI7hYAyFF{gLqDH0xJWkTH{&Na-C>{6ZekWQhH9yxJ`-t9?UlZjK7B?n@$ed6;N! z=Rh|9l(}0uk;x`Lv7vXF{ltcGi7w}c|bnwSvexO`^)s8H9@KK{YKrh=@>nky>koe6pdH%EMf@JDX*^>Zg4PXfm9X z(x?O^Duq)2So9{MG*&B%m!s2L%yhZ_USXwX zfzYr5zlc_6r;G?ON32nX1<`K2MOd#vqw$Vmx-aCSy1X|CM2gMfW>$-$xh+lMu?t+E zuMj@x^U1XskYb?LI5pkZv+xQbyqqqe+1+YDz;w3=RTZO{0%iwIECV2L;Rcm1gtI$* zjdyT|_XKd29UI^n$01GQ>P<_zV!&)f7jvE>--J5spt5jz?2-;UK@WO_r)b??A2zSvFV)K#&N_}dV zoi8V2d(YkgIV20%=BGq zQp2jBPp~%(P34@lJVNlq4p+3z^uW&kfgX8?*B!W=F6HASmY8@wDsG=gm8{4zm_u9_ zttINUl)nI}#BMbubURkh>={a)RMUH{*-j;%O{w5kC1Cz}x;yJ?yJy{mdL?Lo?Cw|> zTf4_~Z3DCqyj0zXE7413t#M>iwqY?#7tQk$i&j9gI1v8T-l=Tj5VE1 z!Lm)2T^%b*d~!qhh4PV>ppi$$0_hqw$|yZePLpn8sxDZS!r*uPH) z_!p!5uvL7a1aA(T@gu!gbCB3FijS=U(dO};(m_ zo-_t%!gXs-zN>3`dOA~`LE%uveHWlt>Ipex!5qmjw{LH;+hOG~;}u@EKa5pe1BcBF zPP1VCh^DIbii>j)wsK0h7nm&y%Zk=rY23(recBD#l)(rVn1-lbF)JSpu_(nBla41EKE)G4K=4R<2tApM}> zV1~Xi5sd@1X@F>X@j2fWwkt-@kU(XlWKp1Dl)0QIA$#glgGpiDYgAb`+!?4q*h0!3 zMmg=+#e5o6DZv*0#uZ_f>wB$wrIa!)H-*+joS%T~bT@_9Y{MH#F7mfXc8g(E4m(GAB5P|^wBpega8Ud262sdax7FJrVyGjXiU@-87;Z259! zAud``HK4aPfW9@^a(3h3pYPxQDm%K-k#gw#7`xiduy+_n1XFQ|Obt|FkSx-TgFpq3 zF%~;~K#_#XGv^`Nt9eNw?2t->qq{}IZ^21^yM7$|JdsJz&NnppL@B|-2y|w*!-hV zgd4Yi1ThkVJ~tPrDL_aQgq!W5{T-rDo&~OV<3Tp=GNSlIygL{IDkqxKyoeiyy3o)Y z4aTP>ZI&(L;J`{Z_g`hlQ!;3tJ7Q)?y1N(m>+xlV_pz6O{$BR7b6`Log&}l; zm}xUpK$BBb8R+Tj?}LE=Z%#nSG+}Nao~(Ni0|Ci6kHDJhHqn!-($~$ak^|+nrM$kK z7>~VG04)VUvnWxB~-HbNEe+nJ50?diclNDH_(OSV;OQ()hqKwB=M z()}1O<3*ws!-Tj(MK>ptA@%n6i=OChh1B1R@v<^*TlE?cSDW74$twd|P78?cUJRC% zN#G@N$Zva3Z%f;|cVeKdRBB^|x=|^$DNImI-#|iX0|OW=D|B-emy(kETr_&1CxOOt zy?wONRTxi<8qCEeEMWg+NP{`v5j}m`R!D;wEh`hK+*$32$LEFqe*V(CGpS{{+)kvT zFf3Z|U`zLR_jV&5YZe~p<;imWJ6qbB!$4Viqi!6o%mgXBTT=G)VxX+pAZ+viW^aE> zANCJmpsYA_4oj_=a4SBs;r;#H9CtetaF@$sJV2TN^^Gem0mrvAx_9SJifde%#I=SX zZFg@x?M@7nx!Z&>5ZaDqhnnBtg3v4mLWUZyfI1U|xXCTb_2jrLN$SDD0Sty|uU;tN zuvRaZ161~QCy0$+L;%_wmiG9H&hIBsl?c!KV#Ft7pELZ<@#P~D6>D6sueEW#{k;^a z(>P?~;mTyWHNau?_a<~X@EsKZ)1)wM*^@qU`dj7X&fb11Cugj>TQ3A6br9+nPuh=x zxJ*UNSjPniE|m(}^VhXpRw<%O1ssIScySTcl6<4b3ATQQ{*H>#ON3C*!~KSgi7Vr3 zc~@NypD^H4%8)7Pgi^=Lv&veKYlw}XL>tLuGR4s$QG}L_XbaNMNuh>^#|$S$jaE_3 z!|9SZZCbOfB2Wvp8^rK32m)&wV_p*$L#e7&!b`S5A!M^!qU|Obf9^L%RS{X#$mPC- zLhCK4mPgdn(nvi2XgaFp91KeL6Vka&G+P6dQYTd)gdLwHrGv6UxYFygLvE~KeG@u8z2^fiLRJUKg^@wpOfSN%ccQHqiRAo`Dxt!y6Sppcr=sYnS+#l% z2oUASp1oRBC@^J%4R1AJ8-X)XD54|04COEY&lywxuF0OgFX%`#GnpbVfJ;OfJ`8`4 zC>hX@fBcZM`pbF^IWrEI0mKz=7{m_#gh_wur6&YdFFwc4EBdDgmFQ;JOK84OdeICW zhl~`dQ5EX0tGq~1xvR}m?tvrf&j5@ftd+Co)nr-NuzwTPLFKR5$=E@kn&W7j&Ua= zEy@s0JQh#QhlH`RsS$A|njO&BD`-XOI}R1QEzC}gp%X+$QZQ)d{xA}W;J0mMjLq` z)Kj=@Q3dhI`C5F2Vt7>o&4|i&KH@A-6P54p+PLoLVO_7u^7Q_?**VxT12)9*yN%`4vNJKHp#=?UcRM8c}z>%>Vhsd z&>91^Zf4b~C6DD?ejbJ{vC3scTw0tprW4lvJn|J90U{OM>Y0|i`m;)0urVu?kf4hv zkQ0t#Q<7rap)@~#*TNCOFyf1q7g=c`IRoV-q-w9bgu`L%_opfQh&^QhA4F3?|GY$| zNM(1H9_?qfvmC^%*v-O$vm-qCM2(232MIBiORm(gggO(D^G_{MLLzg?ZL@9ziDVq7 zjdT|&b+9wOB`ims-^9Cy?K8FXif?Eksay-AaisK@fo8(okYll0i`qhPs|?M3{p}^r z)Cu?roKyQ0U}gSmh8=Bvm7jtG<{%}*MY~r7y?r~HCx=I6GzW`k^4o|0R?uyVKWy=e z%iM<;nvmG2V^elO!zRvxE!E{lxNM7$U9e1B{qz>T1xQ2-KiF=gJ1*uDceQbYpRUm` zH8i}jZn8aV3-_#1X!Le>qgx@qEzP&F#a_I{H>D#BeX+7!zHv)8o)ugq4mmLVnaRfp z)b9m4nB_@tHuuBIJ@~Q#dt#wurw9pDwVXIs??8W!(`KfHz zN;$w=eB~8b$OL>IFjEQt_W8T}RR%zL2tQ5-}8-keiYvg8Exm< zNQR9uY9s;`WTswQC1&Jr!2HC|HDqkx9+6qN)=1+xw=gE7202dJKnI5Y@+;#DHj3jC zgy=Bpa!`Ckfw>>kc(K!mcZIBzM>T3E@%`QzJ^Y>edua zej|OGoccLhdrTPP4^uEkBa@u-RZt_KCzvG@JLM^q zq+f)cScl8UJ{)_vcH(kVsL=jK`YCCI+hQD)!-^m+l6DHKLMa2Ntrx1ume9JC4zbio zt(1|3c?5|X9nsSx%GCsG$DTvLPMT?|M1GFkitJoJF)8~y#4;FiPEBypgJ-fA1d=LgXa^+hG9N5 z#0K#h93rqYk|l6R+8fT3Mg5lIKCTXd5Y9)W_;W_dAEKysf%VF?FDXgA*dp~0saRC| z_XqTjmRZQ$Tx5p^=)gpkN=leeJgvt5166cam^9Kof_;=caTvqX|{viT1dg*odeS@{D_5jm)U%poxnrZ3UUjXHcYdiPN8(1PheG z>SQDepxF9!G%gf?{4N@r~Z&kT6j;n7>Wv9Rzd3@(bBk4N@h?;yDEj8NsA{na!%S0#3xcogg*O9ca zDf`Y|spnkuxD};l+V5Da5YYgOrr0uiY8=pwK2jN7`DBuokc(ZNO(UpJxZuRv(~H(t z8|N1Jnj}VDxvkjcQ$NNOVL40W*mg5Fi)F_SSiPu58R(CSiGtae!={kKuCK30RaC@q z99&Dy8!7bUiU>!Yw^pwJ%fA45_?Fs1j_Sn7v{-A!)9clmOIPfJp%saU8pRLuJr4R2 z1m`2cR1!V~EwIBE>>VjLi5OTk-CK-cgqndftA%lX;F0%p7}a>3xFH&zV7U9#wWNEK zZ7WG*r6iM>V1kiU&A{fPP5qJqqJ>R^%`^Xf8a5>EoHEQ3PV`B9--;eWYZoQ<#kfnQ z=ZvZNf_K;@6VFVKP0xrrZLv=VMf)-+ugs%Rw#uNoC_*1HCrrwUB$Z$g+=c{@HF%sV4E`4AC7nPM}2wSbL&6e{c^!R6)Eth5NoQ*xDP9 zJcz?Yknf3T2m|Jq284P{mhwNKXqtIBEvH(6N}<(- zKXhqvkP=R#(9q-sZe8#PC?g6GN=Q7C^ZS<43KU8TRv&mDibcMV5eYqQ)bLq^G10*W zwN6C$tbd^&3Z0)#I62P~4X2|`p!$cZifEiMppwlDg<*`18=2Az=Hxt2of%4FKjV=AG?EISoAv8PEy?F$L~mPpWthv{2RzGrU>}k&51jgI2jA? zJ>&IQEiyz7jwS>B1YN+^cA1BQK>cC^EuC`-SwgoMTT`I#g}qGiXqzI456=gNNnGCx zrOb=v@lb}jIp54_YdDcw=M#zvRT-oyGuv`veifL4X@IVQ<|U1Qpu#cS;S2T{i;hZS zp2(Rn%5IvT9ZxxUZAoG(rlg7L1TG((tsFj#)!4aWPOn-=E?m=)IujTnbAvhx#^;m3 z3OU&T+1F5cGXtaRpyh%{V|5D5FBoyMg8giC)j5`k+wu5Qpq5r2}L~NB>9D#vhQ?FDw(FL?FrVfn;r!-$>d{ze_ zdPAXhr%$j}{jbzo)lllb)hgq3D{e0;_^4(%)I*HMO?l|HkCsDwG$~|Qsq#7^K)2NmWO!GoDX!z^TdZkEb^!{45Z zUxFY6A$4}fQ8+?I(PAnfug*@PUWbYkTdm^g%Tu(O0%I#gIKvKnLuo--;t+}XGyt&; z0FP}#x4;uEWXonm%Vo3A1O;_P(u7XG0a>-(vE~)HmFlbcuL)Z*>o6;+Fg1Zt-k-<_lD|lBdVX5+S!^L)? z+a|UQNUtyRAz1>F?C;ye_&-buYHqidm?%U(V`9r;ZZ0eAx6o~a@5Pck^`k}!X}SFw zB$kYO+@T(8a9F7^S7a@x6Q1CXtJMoJvYk}rZfpbJp>)+OL`zYtP&BonE)VD-hdw;y zAjgi11UpqvBM_2EiLg>4`YGN1Em`PatLJTpM9oEyS{vNd#*s$$Y_=hM$%n!i=>02joh(++0F8^n$b@>h+hI{}B8}Px{fL zJZ$|tky+Zf_-023;>^<~vEV2^d)T7(q5Zu-ie0(lYO{E7HKB7F%8xYJVB9*!eY3NJ2Y`ByPDuGS+0U@k?54C;^=*JKVb+R5_1rdvU0w#R*d4@n7z`DhiixQ#Be5 zcHi1;BRG^D+Hq<1R|iBs(sf|lfo&rPoCEttJBRVTOM#$~zutDhqyhMO;J}EV0BKV{RP& zo8%4oK%q;N4rPz%>ft@=UuD(7(F4viBM1I^44(&Phci&?#;~7MZusJ>)hXkaH|QW| zL4(lyO~o)LeGkIa%X$q+dD^l|tuZ!C?f|~cW0)6ZjHwtIS_&O;gd5_(xo_m`VXfA= zql@2{*o9XZBIRSo-7pfSUa7n2zjsH}lj#$hhq)u|d$O@rI_}xFUQ03On^bRL189o2 zC#mUSbVcwO;3SU6P>fLLLVIE~szw+Ey zKPKgixD*G5DalXjjptr@nTyqz*vfCa-WYCONny7+;f~uAI_-}y&P{DLYF(IriX$>S zEdQeERx+3rQ@vo>Fh>mTb}zlc?n1^v4x;}GGBiNRPB?3Ra0ujLp!fqy43Lt->E%%B zwS8mM`jAZ`x~T#h@qCgZ>;h*$3nf>!e3%xuNpw#=vFM8xusC{i{ z(>1|4C&3-tC!{gZO@VK?i5t8A$M)?Iad?aybB1GBP@Gdm7o-?wQgkLx9EDlv@nJ@Q zVB;Ax^FYh9Y};{)?_^*Ls3#4EWL}7}C16}Z=%AXj@5SNAjQh~mF&`06HQ<|1GvK>V zG2pv?yOM@_^M?-gY@yRfl|RbImrVDg;e3rc_eG49QiYjR6k9BOtS}R|D+|q50+y zIyu4HUDTr87%{jAP`gLzH5s9h+^7;YrWWP-r>Ath^*S*HH;Q+(t)kW3Fm4w~^xA>0 z-I6kk+I;@t3x;Vp6C_Y30}VNoLQnqCTXq9?HSw7_*pTxM9ym_BiKUG=ozRrDsTtgF zZ&nFfEzA7GIrTcueff6LOJ=ZUI;$6@5sCJoLMP1m$YpA&&eV=J7v1cT6dYsomcrWR zUpWB$Q)5kWI=lVGur)Q3)bfLP8AlSnq<|gxCTb1uDW(S~Nva}l)`)^bJLwd90moAs z62B!Ud@W0Ga|dBJ;NZ!*wp8UG1MkvHRm1E;6CZlP1UiR)s(i>JUHl%Qs7ofiC^d8; zZq%22@?rGwojJR*@sZ#~fJLQ@ol;X$XG^V^;g1hiiz`P`f^sxGhBt<23D7!YH$Ctx zC4%c;2T7mItxAc8$2&v%(^Cius?o)dea9Ci3br+kX-AnwKDIVo{j@cBHc6HTuOD&s5@ha%0P~q|OJX;k0yR%hg_Ja-0<1`45Bt>X$IL>35DX<$Bw z6S>!d79q#}fU8fSceX+m^#P+|>r}ju0iKClQt01~BLfYC#_2W4FIJ((npC%8`Zha@ zBF44SJH$Pj2y=|X9K#Fb@H)*MN-78F+aXI&y5d79GRz;9k_rO2%Zzrle2Qy7cx$ZM zs{m6U*BPq#g&T1xUaZth#7RqN`>zSnC9V#D<_||Bw%Yg8%VNkX^G0>;o4|qs6LWB%mO<} zaBg@Q=3v_;xzo&xxK6Xd@2qMl^oEZo>=|!ko@909Fa9&%J)YT5U!0KBBYHi#9QUrt zuM}stq>=NbDRvnabufjK1aS>wZTCLQwr6lQmSWz(k!AHMm~7}`rynFEI!wy&@dn+V z_%qK;=0Mk&f!yK1{4+LpfC5f5Z49qvpp2*=0Q)!SOSRVNB9#fe-N1G zRmK{07>hE^wppWr388kSu6lDrmcBqR?$`lyTj{0zua7)s3WO0Ce)_2!w`{wMLrPy&VrA}}Fo5Y>W zCSM=Jj3V8LFpq8Qq3H(ow19`cxbIRu;8i6BlVl*#=@#jf(uMmZl=>j&9Xi*iI$Bkq zNmYq%#`qpx3+okT+e%#wGs}^%YXR5y`s!yJ5^flUEHz~%t7+oa$96a9XffB_NP1j% z4HnPn?Q3nEEw=4Eb2QC}$yJhMZvIJ2+l{Rccrm0f$Gc_&4KYD3RD}&N$et%2FZK_G z;rT9w-B$JrU~gogyJu9P`@48l#nG51fX8VeUT%!aL;snD6L2Q<{67C(FKC5^3K q23Ou^21u?qrUdX2=5+^s7ymzd4F!*_@&Ew98kb=J diff --git a/_static/prefix-runestone.7e141ad8414abf4a.bundle.js.map b/_static/prefix-runestone.7e141ad8414abf4a.bundle.js.map deleted file mode 100644 index 61e9510..0000000 --- a/_static/prefix-runestone.7e141ad8414abf4a.bundle.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"prefix-runestone.7e141ad8414abf4a.bundle.js","mappings":"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","sources":["webpack://WebComponents/./runestone/common/project_template/_templates/plugin_layouts/sphinx_bootstrap/static/bootstrap-sphinx.js","webpack://WebComponents/./runestone/common/js/presenter_mode.js","webpack://WebComponents/./runestone/common/js/jquery_i18n/jquery.i18n.fallbacks.js","webpack://WebComponents/./runestone/common/js/jquery_i18n/jquery.i18n.language.js","webpack://WebComponents/./runestone/common/js/jquery_i18n/jquery.i18n.emitter.bidi.js","webpack://WebComponents/external var \"jQuery\"","webpack://WebComponents/./runestone/common/js/jquery_i18n/jquery.i18n.emitter.js","webpack://WebComponents/./runestone/common/js/jquery_i18n/jquery.i18n.parser.js","webpack://WebComponents/./runestone/common/js/jquery_i18n/jquery.i18n.messagestore.js","webpack://WebComponents/./runestone/common/js/jquery_i18n/jquery.i18n.js","webpack://WebComponents/./runestone/common/js/jquery.idle-timer.js","webpack://WebComponents/./runestone/common/js/user-highlights.js","webpack://WebComponents/./runestone/common/js/pretext.js","webpack://WebComponents/./runestone/splice/js/spliceWrapper.js","webpack://WebComponents/./webpack.index.js","webpack://WebComponents/./runestone/common/js/theme.js","webpack://WebComponents/./runestone/common/js/runestonebase.js","webpack://WebComponents/./runestone/common/js/bookfuncs.js","webpack://WebComponents/./runestone/common/js/renderComponent.js"],"sourcesContent":["(function ($) {\n /**\n * Patch TOC list.\n *\n * Will mutate the underlying span to have a correct ul for nav.\n *\n * @param $span: Span containing nested UL's to mutate.\n * @param minLevel: Starting level for nested lists. (1: global, 2: local).\n */\n var patchToc = function ($ul, minLevel) {\n var findA,\n patchTables,\n $localLi;\n\n // Find all a \"internal\" tags, traversing recursively.\n findA = function ($elem, level) {\n level = level || 0;\n var $items = $elem.find(\"> li > a.internal, > ul, > li > ul\");\n\n // Iterate everything in order.\n $items.each(function (index, item) {\n var $item = $(item),\n tag = item.tagName.toLowerCase(),\n $childrenLi = $item.children('li'),\n $parentLi = $($item.parent('li'), $item.parent().parent('li'));\n\n // Add dropdowns if more children and above minimum level.\n if (tag === 'ul' && level >= minLevel && $childrenLi.length > 0) {\n $parentLi\n .addClass('dropdown-submenu')\n .children('a').first().attr('tabindex', -1);\n\n $item.addClass('dropdown-menu');\n }\n\n findA($item, level + 1);\n });\n };\n\n findA($ul);\n };\n\n /**\n * Patch all tables to remove ``docutils`` class and add Bootstrap base\n * ``table`` class.\n */\n patchTables = function () {\n $(\"table.docutils\")\n .removeClass(\"docutils\")\n .addClass(\"table\")\n .attr(\"border\", 0);\n };\n\n$(function () {\n\n /*\n * Scroll the window to avoid the topnav bar\n * https://github.com/twitter/bootstrap/issues/1768\n */\n if ($(\"#navbar.navbar-fixed-top\").length > 0) {\n var navHeight = $(\"#navbar\").height(),\n shiftWindow = function() { scrollBy(0, -navHeight - 10); };\n\n if (location.hash) {\n shiftWindow();\n }\n\n window.addEventListener(\"hashchange\", shiftWindow);\n }\n\n // Add styling, structure to TOC's.\n $(\".dropdown-menu\").each(function () {\n $(this).find(\"ul\").each(function (index, item){\n var $item = $(item);\n $item.addClass('unstyled');\n });\n });\n\n // Global TOC.\n if ($(\"ul.globaltoc li\").length) {\n patchToc($(\"ul.globaltoc\"), 1);\n } else {\n // Remove Global TOC.\n $(\".globaltoc-container\").remove();\n }\n\n // Local TOC.\n patchToc($(\"ul.localtoc\"), 2);\n\n // Mutate sub-lists (for bs-2.3.0).\n $(\".dropdown-menu ul\").not(\".dropdown-menu\").each(function () {\n var $ul = $(this),\n $parent = $ul.parent(),\n tag = $parent[0].tagName.toLowerCase(),\n $kids = $ul.children().detach();\n\n // Replace list with items if submenu header.\n if (tag === \"ul\") {\n $ul.replaceWith($kids);\n } else if (tag === \"li\") {\n // Insert into previous list.\n $parent.after($kids);\n $ul.remove();\n }\n });\n\n // Add divider in page TOC.\n $localLi = $(\"ul.localtoc li\");\n if ($localLi.length > 2) {\n $localLi.first().after('
  • ');\n }\n\n // Enable dropdown.\n $('.dropdown-toggle').dropdown();\n\n // Patch tables.\n patchTables();\n\n // Add Note, Warning styles.\n $('div.note').addClass('alert').addClass('alert-info');\n $('div.warning').addClass('alert').addClass('alert-warning');\n\n // Inline code styles to Bootstrap style.\n $('tt.docutils.literal').not(\".xref\").each(function (i, e) {\n // ignore references\n if (!$(e).parent().hasClass(\"reference\")) {\n $(e).replaceWith(function () {\n return $(\"\").text($(this).text());\n });\n }});\n });\n}(window.jQuery));\n","var codeExercises;\nvar presenterCssLink;\nvar presentModeInitialized = false;\n\nfunction presentToggle() {\n if (!presentModeInitialized) {\n presentModeSetup();\n presentModeInitialized = true;\n }\n let bod = $(\"body\");\n let presentClass = \"present\";\n let fullHeightClass = \"full-height\";\n let bottomClass = \"bottom\";\n if (bod.hasClass(presentClass)) {\n $(\"section *\")\n .not(\n \"h1, .presentation-title, .btn-presenter, .runestone, .runestone *, section, .pre, code\"\n )\n .removeClass(\"hidden\"); //show everything\n $(\"#completionButton\").removeClass(\"hidden\");\n bod.removeClass(presentClass);\n $(\".\" + fullHeightClass).removeClass(fullHeightClass);\n $(\".\" + bottomClass).removeClass(bottomClass);\n localStorage.setItem(\"presentMode\", \"text\");\n codeExercises.removeClass(\"hidden\");\n presenterCssLink.disabled = true; // disable present_mode.css\n } else {\n $(\"section *\")\n .not(\n \"h1, .presentation-title, .btn-presenter, .runestone, .runestone *, section, .pre, code\"\n )\n .addClass(\"hidden\"); // hide extraneous stuff\n $(\"#completionButton\").addClass(\"hidden\");\n bod.addClass(presentClass);\n bod.addClass(fullHeightClass);\n $(\"html\").addClass(fullHeightClass);\n $(\"section .runestone\").addClass(fullHeightClass);\n $(\".ac-caption\").addClass(bottomClass);\n localStorage.setItem(\"presentMode\", presentClass);\n // presenter_mode.css is loaded by webpack\n //loadPresenterCss(); // present_mode.css should only apply when in presenter mode.\n activateExercise();\n }\n}\n\nfunction loadPresenterCss() {\n presenterCssLink = document.createElement(\"link\");\n presenterCssLink.type = \"text/css\";\n presenterCssLink.href = \"../_static/presenter_mode.less\";\n presenterCssLink.rel = \"stylesheet\";\n document.getElementsByTagName(\"head\")[0].appendChild(presenterCssLink);\n}\n\nfunction presentModeSetup() {\n // moved this out of configure\n let dataComponent = $(\"[data-childcomponent]\");\n\n // this still leaves some things semi-messed up when you exit presenter mode.\n // but instructors will probably just learn to refresh the page.\n dataComponent.addClass(\"runestone\");\n dataComponent.parent().closest(\"div\").not(\"section\").addClass(\"runestone\");\n dataComponent.parent().closest(\"div\").css(\"max-width\", \"none\");\n\n dataComponent.each(function (index) {\n let me = $(this);\n $(this)\n .find(\".ac_code_div, .ac_output\")\n .wrapAll(\"
    \");\n });\n\n codelensListener(500);\n $(\"section img\").wrap('
    ');\n codeExercises = $(\".runestone\").not(\".runestone .runestone\");\n // codeExercises.each(function(){\n $(\"h1\").before(\n \"
    \\\n \\\n \\\n
    \"\n );\n}\nfunction getActiveExercise() {\n return (active = codeExercises.filter(\".active\"));\n}\n\nfunction activateExercise(index) {\n if (typeof index == \"undefined\") {\n index = 0;\n }\n\n let active = getActiveExercise();\n\n if (codeExercises.length) {\n active.removeClass(\"active\");\n active = $(codeExercises[index]).addClass(\"active\");\n active.removeClass(\"hidden\");\n codeExercises.not(codeExercises.filter(\".active\")).addClass(\"hidden\");\n }\n}\n\nwindow.nextExercise = function() {\n let active = getActiveExercise();\n let nextIndex = codeExercises.index(active) + 1;\n if (nextIndex < codeExercises.length) {\n activateExercise(nextIndex);\n }\n}\n\nwindow.prevExercise = function() {\n let active = getActiveExercise();\n let prevIndex = codeExercises.index(active) - 1;\n if (prevIndex >= 0) {\n activateExercise(prevIndex);\n }\n}\n\nfunction configure() {\n let rightNav = $(\".navbar-right\");\n rightNav.prepend(\n \"\"\n );\n\n let modeSelect = $(\".mode-select\").change(presentToggle);\n}\n\nfunction codelensListener(duration) {\n // $(\".ExecutionVisualizer\").length ? configureCodelens() : setTimeout(codelensListener, duration);\n // configureCodelens();\n}\n\nfunction configureCodelens() {\n let acCodeTitle = document.createElement(\"h4\");\n acCodeTitle.textContent = \"Active Code Window\";\n let acCode = $(\".ac_code_div\");\n $(\".ac_code_div\").addClass(\"col-md-6\");\n acCode.prepend(acCodeTitle);\n\n acOutTitle = document.createElement(\"h4\");\n acOutTitle.textContent = \"Output Window\";\n let acOut = $(\".ac_output\").addClass(\"col-md-6\");\n $(\".ac_output\").prepend(acOutTitle);\n\n let sketchpadTitle = document.createElement(\"h4\");\n sketchpadTitle.textContent = \"Sketchpad\";\n let sketchpad = document.createElement(\"span\");\n $(sketchpad).addClass(\"sketchpad\");\n let sketchpadContainer = document.createElement(\"div\");\n $(sketchpadContainer).addClass(\"sketchpad-container\");\n sketchpadContainer.appendChild(sketchpadTitle);\n sketchpadContainer.appendChild(sketchpad);\n //$('.ac_output').append(sketchpadContainer);\n\n let visualizers = $(\".ExecutionVisualizer\");\n\n console.log(\"Econtainer: \", this.eContainer);\n\n $(\"[data-childcomponent]\").on(\"click\", \"button.row-mode\", function () {\n $(this).closest(\"[data-childcomponent]\").removeClass(\"card-mode\");\n $(this).closest(\"[data-childcomponent]\").addClass(\"row-mode\");\n $(this).next(\".card-mode\").removeClass(\"active-layout\");\n $(this).addClass(\"active-layout\");\n });\n\n $(\"[data-childcomponent]\").on(\"click\", \"button.card-mode\", function () {\n $(this).closest(\"[data-childcomponent]\").removeClass(\"row-mode\");\n $(this).closest(\"[data-childcomponent]\").addClass(\"card-mode\");\n $(this).prev(\".row-mode\").removeClass(\"active-layout\");\n $(this).addClass(\"active-layout\");\n });\n\n $(\"[data-childcomponent] .ac_section\").each(function () {\n $(this).prepend(\n '
    '\n );\n });\n\n visualizers.each(function (index) {\n let me = $(this);\n let col1 = me.find(\"#vizLayoutTdFirst\");\n let col2 = me.find(\"#vizLayoutTdSecond\");\n let dataVis = me.find(\"#dataViz\");\n let stackHeapTable = me.find(\"#stackHeapTable\");\n let output = me.find(\"#progOutputs\");\n output.css(\"display\", \"block\");\n me.parent().prepend(\n \"
    Example \" +\n (Number(index) + 1) +\n \"
    \"\n );\n });\n\n acCode.each(function () {\n let section = $(this).closest(\".ac-block\").parent();\n console.log(section, section.length);\n section.append(sketchpadContainer);\n });\n\n $(\"button.card-mode\").click();\n\n let modeSelect = $(\".mode-select\");\n let mode = localStorage.getItem(\"presentMode\");\n if (mode == \"present\") {\n modeSelect.val(\"present\");\n modeSelect.change();\n }\n}\n\n$(document).on(\"runestone:login-complete\", function () {\n // if user is instructor, enable presenter mode\n if (eBookConfig.isInstructor) {\n configure();\n }\n});\n","/*!\n * jQuery Internationalization library\n *\n * Copyright (C) 2012 Santhosh Thottingal\n *\n * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do anything special to\n * choose one license or the other and you don't have to notify anyone which license you are using.\n * You are free to use UniversalLanguageSelector in commercial projects as long as the copyright\n * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.\n *\n * @licence GNU General Public Licence 2.0 or later\n * @licence MIT License\n */\n( function ( $ ) {\n\t'use strict';\n\n\t$.i18n = $.i18n || {};\n\t$.extend( $.i18n.fallbacks, {\n\t\tab: [ 'ru' ],\n\t\tace: [ 'id' ],\n\t\taln: [ 'sq' ],\n\t\t// Not so standard - als is supposed to be Tosk Albanian,\n\t\t// but in Wikipedia it's used for a Germanic language.\n\t\tals: [ 'gsw', 'de' ],\n\t\tan: [ 'es' ],\n\t\tanp: [ 'hi' ],\n\t\tarn: [ 'es' ],\n\t\tarz: [ 'ar' ],\n\t\tav: [ 'ru' ],\n\t\tay: [ 'es' ],\n\t\tba: [ 'ru' ],\n\t\tbar: [ 'de' ],\n\t\t'bat-smg': [ 'sgs', 'lt' ],\n\t\tbcc: [ 'fa' ],\n\t\t'be-x-old': [ 'be-tarask' ],\n\t\tbh: [ 'bho' ],\n\t\tbjn: [ 'id' ],\n\t\tbm: [ 'fr' ],\n\t\tbpy: [ 'bn' ],\n\t\tbqi: [ 'fa' ],\n\t\tbug: [ 'id' ],\n\t\t'cbk-zam': [ 'es' ],\n\t\tce: [ 'ru' ],\n\t\tcrh: [ 'crh-latn' ],\n\t\t'crh-cyrl': [ 'ru' ],\n\t\tcsb: [ 'pl' ],\n\t\tcv: [ 'ru' ],\n\t\t'de-at': [ 'de' ],\n\t\t'de-ch': [ 'de' ],\n\t\t'de-formal': [ 'de' ],\n\t\tdsb: [ 'de' ],\n\t\tdtp: [ 'ms' ],\n\t\tegl: [ 'it' ],\n\t\teml: [ 'it' ],\n\t\tff: [ 'fr' ],\n\t\tfit: [ 'fi' ],\n\t\t'fiu-vro': [ 'vro', 'et' ],\n\t\tfrc: [ 'fr' ],\n\t\tfrp: [ 'fr' ],\n\t\tfrr: [ 'de' ],\n\t\tfur: [ 'it' ],\n\t\tgag: [ 'tr' ],\n\t\tgan: [ 'gan-hant', 'zh-hant', 'zh-hans' ],\n\t\t'gan-hans': [ 'zh-hans' ],\n\t\t'gan-hant': [ 'zh-hant', 'zh-hans' ],\n\t\tgl: [ 'pt' ],\n\t\tglk: [ 'fa' ],\n\t\tgn: [ 'es' ],\n\t\tgsw: [ 'de' ],\n\t\thif: [ 'hif-latn' ],\n\t\thsb: [ 'de' ],\n\t\tht: [ 'fr' ],\n\t\tii: [ 'zh-cn', 'zh-hans' ],\n\t\tinh: [ 'ru' ],\n\t\tiu: [ 'ike-cans' ],\n\t\tjut: [ 'da' ],\n\t\tjv: [ 'id' ],\n\t\tkaa: [ 'kk-latn', 'kk-cyrl' ],\n\t\tkbd: [ 'kbd-cyrl' ],\n\t\tkhw: [ 'ur' ],\n\t\tkiu: [ 'tr' ],\n\t\tkk: [ 'kk-cyrl' ],\n\t\t'kk-arab': [ 'kk-cyrl' ],\n\t\t'kk-latn': [ 'kk-cyrl' ],\n\t\t'kk-cn': [ 'kk-arab', 'kk-cyrl' ],\n\t\t'kk-kz': [ 'kk-cyrl' ],\n\t\t'kk-tr': [ 'kk-latn', 'kk-cyrl' ],\n\t\tkl: [ 'da' ],\n\t\t'ko-kp': [ 'ko' ],\n\t\tkoi: [ 'ru' ],\n\t\tkrc: [ 'ru' ],\n\t\tks: [ 'ks-arab' ],\n\t\tksh: [ 'de' ],\n\t\tku: [ 'ku-latn' ],\n\t\t'ku-arab': [ 'ckb' ],\n\t\tkv: [ 'ru' ],\n\t\tlad: [ 'es' ],\n\t\tlb: [ 'de' ],\n\t\tlbe: [ 'ru' ],\n\t\tlez: [ 'ru' ],\n\t\tli: [ 'nl' ],\n\t\tlij: [ 'it' ],\n\t\tliv: [ 'et' ],\n\t\tlmo: [ 'it' ],\n\t\tln: [ 'fr' ],\n\t\tltg: [ 'lv' ],\n\t\tlzz: [ 'tr' ],\n\t\tmai: [ 'hi' ],\n\t\t'map-bms': [ 'jv', 'id' ],\n\t\tmg: [ 'fr' ],\n\t\tmhr: [ 'ru' ],\n\t\tmin: [ 'id' ],\n\t\tmo: [ 'ro' ],\n\t\tmrj: [ 'ru' ],\n\t\tmwl: [ 'pt' ],\n\t\tmyv: [ 'ru' ],\n\t\tmzn: [ 'fa' ],\n\t\tnah: [ 'es' ],\n\t\tnap: [ 'it' ],\n\t\tnds: [ 'de' ],\n\t\t'nds-nl': [ 'nl' ],\n\t\t'nl-informal': [ 'nl' ],\n\t\tno: [ 'nb' ],\n\t\tos: [ 'ru' ],\n\t\tpcd: [ 'fr' ],\n\t\tpdc: [ 'de' ],\n\t\tpdt: [ 'de' ],\n\t\tpfl: [ 'de' ],\n\t\tpms: [ 'it' ],\n\t\tpt: [ 'pt-br' ],\n\t\t'pt-br': [ 'pt' ],\n\t\tqu: [ 'es' ],\n\t\tqug: [ 'qu', 'es' ],\n\t\trgn: [ 'it' ],\n\t\trmy: [ 'ro' ],\n\t\t'roa-rup': [ 'rup' ],\n\t\true: [ 'uk', 'ru' ],\n\t\truq: [ 'ruq-latn', 'ro' ],\n\t\t'ruq-cyrl': [ 'mk' ],\n\t\t'ruq-latn': [ 'ro' ],\n\t\tsa: [ 'hi' ],\n\t\tsah: [ 'ru' ],\n\t\tscn: [ 'it' ],\n\t\tsg: [ 'fr' ],\n\t\tsgs: [ 'lt' ],\n\t\tsli: [ 'de' ],\n\t\tsr: [ 'sr-ec' ],\n\t\tsrn: [ 'nl' ],\n\t\tstq: [ 'de' ],\n\t\tsu: [ 'id' ],\n\t\tszl: [ 'pl' ],\n\t\ttcy: [ 'kn' ],\n\t\ttg: [ 'tg-cyrl' ],\n\t\ttt: [ 'tt-cyrl', 'ru' ],\n\t\t'tt-cyrl': [ 'ru' ],\n\t\tty: [ 'fr' ],\n\t\tudm: [ 'ru' ],\n\t\tug: [ 'ug-arab' ],\n\t\tuk: [ 'ru' ],\n\t\tvec: [ 'it' ],\n\t\tvep: [ 'et' ],\n\t\tvls: [ 'nl' ],\n\t\tvmf: [ 'de' ],\n\t\tvot: [ 'fi' ],\n\t\tvro: [ 'et' ],\n\t\twa: [ 'fr' ],\n\t\two: [ 'fr' ],\n\t\twuu: [ 'zh-hans' ],\n\t\txal: [ 'ru' ],\n\t\txmf: [ 'ka' ],\n\t\tyi: [ 'he' ],\n\t\tza: [ 'zh-hans' ],\n\t\tzea: [ 'nl' ],\n\t\tzh: [ 'zh-hans' ],\n\t\t'zh-classical': [ 'lzh' ],\n\t\t'zh-cn': [ 'zh-hans' ],\n\t\t'zh-hant': [ 'zh-hans' ],\n\t\t'zh-hk': [ 'zh-hant', 'zh-hans' ],\n\t\t'zh-min-nan': [ 'nan' ],\n\t\t'zh-mo': [ 'zh-hk', 'zh-hant', 'zh-hans' ],\n\t\t'zh-my': [ 'zh-sg', 'zh-hans' ],\n\t\t'zh-sg': [ 'zh-hans' ],\n\t\t'zh-tw': [ 'zh-hant', 'zh-hans' ],\n\t\t'zh-yue': [ 'yue' ]\n\t} );\n}( jQuery ) );\n","/* global pluralRuleParser */\n( function ( $ ) {\n\t'use strict';\n\n\t// jscs:disable\n\tvar language = {\n\t\t// CLDR plural rules generated using\n\t\t// libs/CLDRPluralRuleParser/tools/PluralXML2JSON.html\n\t\tpluralRules: {\n\t\t\tak: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tam: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\tar: {\n\t\t\t\tzero: 'n = 0',\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2',\n\t\t\t\tfew: 'n % 100 = 3..10',\n\t\t\t\tmany: 'n % 100 = 11..99'\n\t\t\t},\n\t\t\tars: {\n\t\t\t\tzero: 'n = 0',\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2',\n\t\t\t\tfew: 'n % 100 = 3..10',\n\t\t\t\tmany: 'n % 100 = 11..99'\n\t\t\t},\n\t\t\tas: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\tbe: {\n\t\t\t\tone: 'n % 10 = 1 and n % 100 != 11',\n\t\t\t\tfew: 'n % 10 = 2..4 and n % 100 != 12..14',\n\t\t\t\tmany: 'n % 10 = 0 or n % 10 = 5..9 or n % 100 = 11..14'\n\t\t\t},\n\t\t\tbh: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tbn: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\tbr: {\n\t\t\t\tone: 'n % 10 = 1 and n % 100 != 11,71,91',\n\t\t\t\ttwo: 'n % 10 = 2 and n % 100 != 12,72,92',\n\t\t\t\tfew: 'n % 10 = 3..4,9 and n % 100 != 10..19,70..79,90..99',\n\t\t\t\tmany: 'n != 0 and n % 1000000 = 0'\n\t\t\t},\n\t\t\tbs: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',\n\t\t\t\tfew: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'\n\t\t\t},\n\t\t\tcs: {\n\t\t\t\tone: 'i = 1 and v = 0',\n\t\t\t\tfew: 'i = 2..4 and v = 0',\n\t\t\t\tmany: 'v != 0'\n\t\t\t},\n\t\t\tcy: {\n\t\t\t\tzero: 'n = 0',\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2',\n\t\t\t\tfew: 'n = 3',\n\t\t\t\tmany: 'n = 6'\n\t\t\t},\n\t\t\tda: {\n\t\t\t\tone: 'n = 1 or t != 0 and i = 0,1'\n\t\t\t},\n\t\t\tdsb: {\n\t\t\t\tone: 'v = 0 and i % 100 = 1 or f % 100 = 1',\n\t\t\t\ttwo: 'v = 0 and i % 100 = 2 or f % 100 = 2',\n\t\t\t\tfew: 'v = 0 and i % 100 = 3..4 or f % 100 = 3..4'\n\t\t\t},\n\t\t\tfa: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\tff: {\n\t\t\t\tone: 'i = 0,1'\n\t\t\t},\n\t\t\tfil: {\n\t\t\t\tone: 'v = 0 and i = 1,2,3 or v = 0 and i % 10 != 4,6,9 or v != 0 and f % 10 != 4,6,9'\n\t\t\t},\n\t\t\tfr: {\n\t\t\t\tone: 'i = 0,1'\n\t\t\t},\n\t\t\tga: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2',\n\t\t\t\tfew: 'n = 3..6',\n\t\t\t\tmany: 'n = 7..10'\n\t\t\t},\n\t\t\tgd: {\n\t\t\t\tone: 'n = 1,11',\n\t\t\t\ttwo: 'n = 2,12',\n\t\t\t\tfew: 'n = 3..10,13..19'\n\t\t\t},\n\t\t\tgu: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\tguw: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tgv: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1',\n\t\t\t\ttwo: 'v = 0 and i % 10 = 2',\n\t\t\t\tfew: 'v = 0 and i % 100 = 0,20,40,60,80',\n\t\t\t\tmany: 'v != 0'\n\t\t\t},\n\t\t\the: {\n\t\t\t\tone: 'i = 1 and v = 0',\n\t\t\t\ttwo: 'i = 2 and v = 0',\n\t\t\t\tmany: 'v = 0 and n != 0..10 and n % 10 = 0'\n\t\t\t},\n\t\t\thi: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\thr: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',\n\t\t\t\tfew: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'\n\t\t\t},\n\t\t\thsb: {\n\t\t\t\tone: 'v = 0 and i % 100 = 1 or f % 100 = 1',\n\t\t\t\ttwo: 'v = 0 and i % 100 = 2 or f % 100 = 2',\n\t\t\t\tfew: 'v = 0 and i % 100 = 3..4 or f % 100 = 3..4'\n\t\t\t},\n\t\t\thy: {\n\t\t\t\tone: 'i = 0,1'\n\t\t\t},\n\t\t\tis: {\n\t\t\t\tone: 't = 0 and i % 10 = 1 and i % 100 != 11 or t != 0'\n\t\t\t},\n\t\t\tiu: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tiw: {\n\t\t\t\tone: 'i = 1 and v = 0',\n\t\t\t\ttwo: 'i = 2 and v = 0',\n\t\t\t\tmany: 'v = 0 and n != 0..10 and n % 10 = 0'\n\t\t\t},\n\t\t\tkab: {\n\t\t\t\tone: 'i = 0,1'\n\t\t\t},\n\t\t\tkn: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\tkw: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tlag: {\n\t\t\t\tzero: 'n = 0',\n\t\t\t\tone: 'i = 0,1 and n != 0'\n\t\t\t},\n\t\t\tln: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tlt: {\n\t\t\t\tone: 'n % 10 = 1 and n % 100 != 11..19',\n\t\t\t\tfew: 'n % 10 = 2..9 and n % 100 != 11..19',\n\t\t\t\tmany: 'f != 0'\n\t\t\t},\n\t\t\tlv: {\n\t\t\t\tzero: 'n % 10 = 0 or n % 100 = 11..19 or v = 2 and f % 100 = 11..19',\n\t\t\t\tone: 'n % 10 = 1 and n % 100 != 11 or v = 2 and f % 10 = 1 and f % 100 != 11 or v != 2 and f % 10 = 1'\n\t\t\t},\n\t\t\tmg: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tmk: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1 or f % 10 = 1'\n\t\t\t},\n\t\t\tmo: {\n\t\t\t\tone: 'i = 1 and v = 0',\n\t\t\t\tfew: 'v != 0 or n = 0 or n != 1 and n % 100 = 1..19'\n\t\t\t},\n\t\t\tmr: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t},\n\t\t\tmt: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\tfew: 'n = 0 or n % 100 = 2..10',\n\t\t\t\tmany: 'n % 100 = 11..19'\n\t\t\t},\n\t\t\tnaq: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tnso: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tpa: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tpl: {\n\t\t\t\tone: 'i = 1 and v = 0',\n\t\t\t\tfew: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14',\n\t\t\t\tmany: 'v = 0 and i != 1 and i % 10 = 0..1 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 12..14'\n\t\t\t},\n\t\t\tprg: {\n\t\t\t\tzero: 'n % 10 = 0 or n % 100 = 11..19 or v = 2 and f % 100 = 11..19',\n\t\t\t\tone: 'n % 10 = 1 and n % 100 != 11 or v = 2 and f % 10 = 1 and f % 100 != 11 or v != 2 and f % 10 = 1'\n\t\t\t},\n\t\t\tpt: {\n\t\t\t\tone: 'i = 0..1'\n\t\t\t},\n\t\t\tro: {\n\t\t\t\tone: 'i = 1 and v = 0',\n\t\t\t\tfew: 'v != 0 or n = 0 or n != 1 and n % 100 = 1..19'\n\t\t\t},\n\t\t\tru: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1 and i % 100 != 11',\n\t\t\t\tfew: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14',\n\t\t\t\tmany: 'v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14'\n\t\t\t},\n\t\t\tse: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tsh: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',\n\t\t\t\tfew: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'\n\t\t\t},\n\t\t\tshi: {\n\t\t\t\tone: 'i = 0 or n = 1',\n\t\t\t\tfew: 'n = 2..10'\n\t\t\t},\n\t\t\tsi: {\n\t\t\t\tone: 'n = 0,1 or i = 0 and f = 1'\n\t\t\t},\n\t\t\tsk: {\n\t\t\t\tone: 'i = 1 and v = 0',\n\t\t\t\tfew: 'i = 2..4 and v = 0',\n\t\t\t\tmany: 'v != 0'\n\t\t\t},\n\t\t\tsl: {\n\t\t\t\tone: 'v = 0 and i % 100 = 1',\n\t\t\t\ttwo: 'v = 0 and i % 100 = 2',\n\t\t\t\tfew: 'v = 0 and i % 100 = 3..4 or v != 0'\n\t\t\t},\n\t\t\tsma: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tsmi: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tsmj: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tsmn: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tsms: {\n\t\t\t\tone: 'n = 1',\n\t\t\t\ttwo: 'n = 2'\n\t\t\t},\n\t\t\tsr: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',\n\t\t\t\tfew: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'\n\t\t\t},\n\t\t\tti: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\ttl: {\n\t\t\t\tone: 'v = 0 and i = 1,2,3 or v = 0 and i % 10 != 4,6,9 or v != 0 and f % 10 != 4,6,9'\n\t\t\t},\n\t\t\ttzm: {\n\t\t\t\tone: 'n = 0..1 or n = 11..99'\n\t\t\t},\n\t\t\tuk: {\n\t\t\t\tone: 'v = 0 and i % 10 = 1 and i % 100 != 11',\n\t\t\t\tfew: 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14',\n\t\t\t\tmany: 'v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14'\n\t\t\t},\n\t\t\twa: {\n\t\t\t\tone: 'n = 0..1'\n\t\t\t},\n\t\t\tzu: {\n\t\t\t\tone: 'i = 0 or n = 1'\n\t\t\t}\n\t\t},\n\t\t// jscs:enable\n\n\t\t/**\n\t\t * Plural form transformations, needed for some languages.\n\t\t *\n\t\t * @param {integer} count\n\t\t * Non-localized quantifier\n\t\t * @param {Array} forms\n\t\t * List of plural forms\n\t\t * @return {string} Correct form for quantifier in this language\n\t\t */\n\t\tconvertPlural: function ( count, forms ) {\n\t\t\tvar pluralRules,\n\t\t\t\tpluralFormIndex,\n\t\t\t\tindex,\n\t\t\t\texplicitPluralPattern = new RegExp( '\\\\d+=', 'i' ),\n\t\t\t\tformCount,\n\t\t\t\tform;\n\n\t\t\tif ( !forms || forms.length === 0 ) {\n\t\t\t\treturn '';\n\t\t\t}\n\n\t\t\t// Handle for Explicit 0= & 1= values\n\t\t\tfor ( index = 0; index < forms.length; index++ ) {\n\t\t\t\tform = forms[ index ];\n\t\t\t\tif ( explicitPluralPattern.test( form ) ) {\n\t\t\t\t\tformCount = parseInt( form.slice( 0, form.indexOf( '=' ) ), 10 );\n\t\t\t\t\tif ( formCount === count ) {\n\t\t\t\t\t\treturn ( form.slice( form.indexOf( '=' ) + 1 ) );\n\t\t\t\t\t}\n\t\t\t\t\tforms[ index ] = undefined;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tforms = $.map( forms, function ( form ) {\n\t\t\t\tif ( form !== undefined ) {\n\t\t\t\t\treturn form;\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tpluralRules = this.pluralRules[ $.i18n().locale ];\n\n\t\t\tif ( !pluralRules ) {\n\t\t\t\t// default fallback.\n\t\t\t\treturn ( count === 1 ) ? forms[ 0 ] : forms[ 1 ];\n\t\t\t}\n\n\t\t\tpluralFormIndex = this.getPluralForm( count, pluralRules );\n\t\t\tpluralFormIndex = Math.min( pluralFormIndex, forms.length - 1 );\n\n\t\t\treturn forms[ pluralFormIndex ];\n\t\t},\n\n\t\t/**\n\t\t * For the number, get the plural for index\n\t\t *\n\t\t * @param {integer} number\n\t\t * @param {Object} pluralRules\n\t\t * @return {integer} plural form index\n\t\t */\n\t\tgetPluralForm: function ( number, pluralRules ) {\n\t\t\tvar i,\n\t\t\t\tpluralForms = [ 'zero', 'one', 'two', 'few', 'many', 'other' ],\n\t\t\t\tpluralFormIndex = 0;\n\n\t\t\tfor ( i = 0; i < pluralForms.length; i++ ) {\n\t\t\t\tif ( pluralRules[ pluralForms[ i ] ] ) {\n\t\t\t\t\tif ( pluralRuleParser( pluralRules[ pluralForms[ i ] ], number ) ) {\n\t\t\t\t\t\treturn pluralFormIndex;\n\t\t\t\t\t}\n\n\t\t\t\t\tpluralFormIndex++;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn pluralFormIndex;\n\t\t},\n\n\t\t/**\n\t\t * Converts a number using digitTransformTable.\n\t\t *\n\t\t * @param {number} num Value to be converted\n\t\t * @param {boolean} integer Convert the return value to an integer\n\t\t * @return {string} The number converted into a String.\n\t\t */\n\t\tconvertNumber: function ( num, integer ) {\n\t\t\tvar tmp, item, i,\n\t\t\t\ttransformTable, numberString, convertedNumber;\n\n\t\t\t// Set the target Transform table:\n\t\t\ttransformTable = this.digitTransformTable( $.i18n().locale );\n\t\t\tnumberString = String( num );\n\t\t\tconvertedNumber = '';\n\n\t\t\tif ( !transformTable ) {\n\t\t\t\treturn num;\n\t\t\t}\n\n\t\t\t// Check if the restore to Latin number flag is set:\n\t\t\tif ( integer ) {\n\t\t\t\tif ( parseFloat( num, 10 ) === num ) {\n\t\t\t\t\treturn num;\n\t\t\t\t}\n\n\t\t\t\ttmp = [];\n\n\t\t\t\tfor ( item in transformTable ) {\n\t\t\t\t\ttmp[ transformTable[ item ] ] = item;\n\t\t\t\t}\n\n\t\t\t\ttransformTable = tmp;\n\t\t\t}\n\n\t\t\tfor ( i = 0; i < numberString.length; i++ ) {\n\t\t\t\tif ( transformTable[ numberString[ i ] ] ) {\n\t\t\t\t\tconvertedNumber += transformTable[ numberString[ i ] ];\n\t\t\t\t} else {\n\t\t\t\t\tconvertedNumber += numberString[ i ];\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn integer ? parseFloat( convertedNumber, 10 ) : convertedNumber;\n\t\t},\n\n\t\t/**\n\t\t * Grammatical transformations, needed for inflected languages.\n\t\t * Invoked by putting {{grammar:form|word}} in a message.\n\t\t * Override this method for languages that need special grammar rules\n\t\t * applied dynamically.\n\t\t *\n\t\t * @param {string} word\n\t\t * @param {string} form\n\t\t * @return {string}\n\t\t */\n\t\t// eslint-disable-next-line no-unused-vars\n\t\tconvertGrammar: function ( word, form ) {\n\t\t\treturn word;\n\t\t},\n\n\t\t/**\n\t\t * Provides an alternative text depending on specified gender. Usage\n\t\t * {{gender:[gender|user object]|masculine|feminine|neutral}}. If second\n\t\t * or third parameter are not specified, masculine is used.\n\t\t *\n\t\t * These details may be overriden per language.\n\t\t *\n\t\t * @param {string} gender\n\t\t * male, female, or anything else for neutral.\n\t\t * @param {Array} forms\n\t\t * List of gender forms\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tgender: function ( gender, forms ) {\n\t\t\tif ( !forms || forms.length === 0 ) {\n\t\t\t\treturn '';\n\t\t\t}\n\n\t\t\twhile ( forms.length < 2 ) {\n\t\t\t\tforms.push( forms[ forms.length - 1 ] );\n\t\t\t}\n\n\t\t\tif ( gender === 'male' ) {\n\t\t\t\treturn forms[ 0 ];\n\t\t\t}\n\n\t\t\tif ( gender === 'female' ) {\n\t\t\t\treturn forms[ 1 ];\n\t\t\t}\n\n\t\t\treturn ( forms.length === 3 ) ? forms[ 2 ] : forms[ 0 ];\n\t\t},\n\n\t\t/**\n\t\t * Get the digit transform table for the given language\n\t\t * See http://cldr.unicode.org/translation/numbering-systems\n\t\t *\n\t\t * @param {string} language\n\t\t * @return {Array|boolean} List of digits in the passed language or false\n\t\t * representation, or boolean false if there is no information.\n\t\t */\n\t\tdigitTransformTable: function ( language ) {\n\t\t\tvar tables = {\n\t\t\t\tar: '٠١٢٣٤٥٦٧٨٩',\n\t\t\t\tfa: '۰۱۲۳۴۵۶۷۸۹',\n\t\t\t\tml: '൦൧൨൩൪൫൬൭൮൯',\n\t\t\t\tkn: '೦೧೨೩೪೫೬೭೮೯',\n\t\t\t\tlo: '໐໑໒໓໔໕໖໗໘໙',\n\t\t\t\tor: '୦୧୨୩୪୫୬୭୮୯',\n\t\t\t\tkh: '០១២៣៤៥៦៧៨៩',\n\t\t\t\tpa: '੦੧੨੩੪੫੬੭੮੯',\n\t\t\t\tgu: '૦૧૨૩૪૫૬૭૮૯',\n\t\t\t\thi: '०१२३४५६७८९',\n\t\t\t\tmy: '၀၁၂၃၄၅၆၇၈၉',\n\t\t\t\tta: '௦௧௨௩௪௫௬௭௮௯',\n\t\t\t\tte: '౦౧౨౩౪౫౬౭౮౯',\n\t\t\t\tth: '๐๑๒๓๔๕๖๗๘๙', // FIXME use iso 639 codes\n\t\t\t\tbo: '༠༡༢༣༤༥༦༧༨༩' // FIXME use iso 639 codes\n\t\t\t};\n\n\t\t\tif ( !tables[ language ] ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn tables[ language ].split( '' );\n\t\t}\n\t};\n\n\t$.extend( $.i18n.languages, {\n\t\t'default': language\n\t} );\n}( jQuery ) );\n","/*!\n * BIDI embedding support for jQuery.i18n\n *\n * Copyright (C) 2015, David Chan\n *\n * This code is dual licensed GPLv2 or later and MIT. You don't have to do\n * anything special to choose one license or the other and you don't have to\n * notify anyone which license you are using. You are free to use this code\n * in commercial projects as long as the copyright header is left intact.\n * See files GPL-LICENSE and MIT-LICENSE for details.\n *\n * @licence GNU General Public Licence 2.0 or later\n * @licence MIT License\n */\n\n( function ( $ ) {\n\t'use strict';\n\tvar strongDirRegExp;\n\n\t/**\n\t * Matches the first strong directionality codepoint:\n\t * - in group 1 if it is LTR\n\t * - in group 2 if it is RTL\n\t * Does not match if there is no strong directionality codepoint.\n\t *\n\t * Generated by UnicodeJS (see tools/strongDir) from the UCD; see\n\t * https://phabricator.wikimedia.org/diffusion/GUJS/ .\n\t */\n\tstrongDirRegExp = new RegExp(\n\t\t'(?:' +\n\t\t\t'(' +\n\t\t\t\t'[\\u0041-\\u005a\\u0061-\\u007a\\u00aa\\u00b5\\u00ba\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u02b8\\u02bb-\\u02c1\\u02d0\\u02d1\\u02e0-\\u02e4\\u02ee\\u0370-\\u0373\\u0376\\u0377\\u037a-\\u037d\\u037f\\u0386\\u0388-\\u038a\\u038c\\u038e-\\u03a1\\u03a3-\\u03f5\\u03f7-\\u0482\\u048a-\\u052f\\u0531-\\u0556\\u0559-\\u055f\\u0561-\\u0587\\u0589\\u0903-\\u0939\\u093b\\u093d-\\u0940\\u0949-\\u094c\\u094e-\\u0950\\u0958-\\u0961\\u0964-\\u0980\\u0982\\u0983\\u0985-\\u098c\\u098f\\u0990\\u0993-\\u09a8\\u09aa-\\u09b0\\u09b2\\u09b6-\\u09b9\\u09bd-\\u09c0\\u09c7\\u09c8\\u09cb\\u09cc\\u09ce\\u09d7\\u09dc\\u09dd\\u09df-\\u09e1\\u09e6-\\u09f1\\u09f4-\\u09fa\\u0a03\\u0a05-\\u0a0a\\u0a0f\\u0a10\\u0a13-\\u0a28\\u0a2a-\\u0a30\\u0a32\\u0a33\\u0a35\\u0a36\\u0a38\\u0a39\\u0a3e-\\u0a40\\u0a59-\\u0a5c\\u0a5e\\u0a66-\\u0a6f\\u0a72-\\u0a74\\u0a83\\u0a85-\\u0a8d\\u0a8f-\\u0a91\\u0a93-\\u0aa8\\u0aaa-\\u0ab0\\u0ab2\\u0ab3\\u0ab5-\\u0ab9\\u0abd-\\u0ac0\\u0ac9\\u0acb\\u0acc\\u0ad0\\u0ae0\\u0ae1\\u0ae6-\\u0af0\\u0af9\\u0b02\\u0b03\\u0b05-\\u0b0c\\u0b0f\\u0b10\\u0b13-\\u0b28\\u0b2a-\\u0b30\\u0b32\\u0b33\\u0b35-\\u0b39\\u0b3d\\u0b3e\\u0b40\\u0b47\\u0b48\\u0b4b\\u0b4c\\u0b57\\u0b5c\\u0b5d\\u0b5f-\\u0b61\\u0b66-\\u0b77\\u0b83\\u0b85-\\u0b8a\\u0b8e-\\u0b90\\u0b92-\\u0b95\\u0b99\\u0b9a\\u0b9c\\u0b9e\\u0b9f\\u0ba3\\u0ba4\\u0ba8-\\u0baa\\u0bae-\\u0bb9\\u0bbe\\u0bbf\\u0bc1\\u0bc2\\u0bc6-\\u0bc8\\u0bca-\\u0bcc\\u0bd0\\u0bd7\\u0be6-\\u0bf2\\u0c01-\\u0c03\\u0c05-\\u0c0c\\u0c0e-\\u0c10\\u0c12-\\u0c28\\u0c2a-\\u0c39\\u0c3d\\u0c41-\\u0c44\\u0c58-\\u0c5a\\u0c60\\u0c61\\u0c66-\\u0c6f\\u0c7f\\u0c82\\u0c83\\u0c85-\\u0c8c\\u0c8e-\\u0c90\\u0c92-\\u0ca8\\u0caa-\\u0cb3\\u0cb5-\\u0cb9\\u0cbd-\\u0cc4\\u0cc6-\\u0cc8\\u0cca\\u0ccb\\u0cd5\\u0cd6\\u0cde\\u0ce0\\u0ce1\\u0ce6-\\u0cef\\u0cf1\\u0cf2\\u0d02\\u0d03\\u0d05-\\u0d0c\\u0d0e-\\u0d10\\u0d12-\\u0d3a\\u0d3d-\\u0d40\\u0d46-\\u0d48\\u0d4a-\\u0d4c\\u0d4e\\u0d57\\u0d5f-\\u0d61\\u0d66-\\u0d75\\u0d79-\\u0d7f\\u0d82\\u0d83\\u0d85-\\u0d96\\u0d9a-\\u0db1\\u0db3-\\u0dbb\\u0dbd\\u0dc0-\\u0dc6\\u0dcf-\\u0dd1\\u0dd8-\\u0ddf\\u0de6-\\u0def\\u0df2-\\u0df4\\u0e01-\\u0e30\\u0e32\\u0e33\\u0e40-\\u0e46\\u0e4f-\\u0e5b\\u0e81\\u0e82\\u0e84\\u0e87\\u0e88\\u0e8a\\u0e8d\\u0e94-\\u0e97\\u0e99-\\u0e9f\\u0ea1-\\u0ea3\\u0ea5\\u0ea7\\u0eaa\\u0eab\\u0ead-\\u0eb0\\u0eb2\\u0eb3\\u0ebd\\u0ec0-\\u0ec4\\u0ec6\\u0ed0-\\u0ed9\\u0edc-\\u0edf\\u0f00-\\u0f17\\u0f1a-\\u0f34\\u0f36\\u0f38\\u0f3e-\\u0f47\\u0f49-\\u0f6c\\u0f7f\\u0f85\\u0f88-\\u0f8c\\u0fbe-\\u0fc5\\u0fc7-\\u0fcc\\u0fce-\\u0fda\\u1000-\\u102c\\u1031\\u1038\\u103b\\u103c\\u103f-\\u1057\\u105a-\\u105d\\u1061-\\u1070\\u1075-\\u1081\\u1083\\u1084\\u1087-\\u108c\\u108e-\\u109c\\u109e-\\u10c5\\u10c7\\u10cd\\u10d0-\\u1248\\u124a-\\u124d\\u1250-\\u1256\\u1258\\u125a-\\u125d\\u1260-\\u1288\\u128a-\\u128d\\u1290-\\u12b0\\u12b2-\\u12b5\\u12b8-\\u12be\\u12c0\\u12c2-\\u12c5\\u12c8-\\u12d6\\u12d8-\\u1310\\u1312-\\u1315\\u1318-\\u135a\\u1360-\\u137c\\u1380-\\u138f\\u13a0-\\u13f5\\u13f8-\\u13fd\\u1401-\\u167f\\u1681-\\u169a\\u16a0-\\u16f8\\u1700-\\u170c\\u170e-\\u1711\\u1720-\\u1731\\u1735\\u1736\\u1740-\\u1751\\u1760-\\u176c\\u176e-\\u1770\\u1780-\\u17b3\\u17b6\\u17be-\\u17c5\\u17c7\\u17c8\\u17d4-\\u17da\\u17dc\\u17e0-\\u17e9\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18a8\\u18aa\\u18b0-\\u18f5\\u1900-\\u191e\\u1923-\\u1926\\u1929-\\u192b\\u1930\\u1931\\u1933-\\u1938\\u1946-\\u196d\\u1970-\\u1974\\u1980-\\u19ab\\u19b0-\\u19c9\\u19d0-\\u19da\\u1a00-\\u1a16\\u1a19\\u1a1a\\u1a1e-\\u1a55\\u1a57\\u1a61\\u1a63\\u1a64\\u1a6d-\\u1a72\\u1a80-\\u1a89\\u1a90-\\u1a99\\u1aa0-\\u1aad\\u1b04-\\u1b33\\u1b35\\u1b3b\\u1b3d-\\u1b41\\u1b43-\\u1b4b\\u1b50-\\u1b6a\\u1b74-\\u1b7c\\u1b82-\\u1ba1\\u1ba6\\u1ba7\\u1baa\\u1bae-\\u1be5\\u1be7\\u1bea-\\u1bec\\u1bee\\u1bf2\\u1bf3\\u1bfc-\\u1c2b\\u1c34\\u1c35\\u1c3b-\\u1c49\\u1c4d-\\u1c7f\\u1cc0-\\u1cc7\\u1cd3\\u1ce1\\u1ce9-\\u1cec\\u1cee-\\u1cf3\\u1cf5\\u1cf6\\u1d00-\\u1dbf\\u1e00-\\u1f15\\u1f18-\\u1f1d\\u1f20-\\u1f45\\u1f48-\\u1f4d\\u1f50-\\u1f57\\u1f59\\u1f5b\\u1f5d\\u1f5f-\\u1f7d\\u1f80-\\u1fb4\\u1fb6-\\u1fbc\\u1fbe\\u1fc2-\\u1fc4\\u1fc6-\\u1fcc\\u1fd0-\\u1fd3\\u1fd6-\\u1fdb\\u1fe0-\\u1fec\\u1ff2-\\u1ff4\\u1ff6-\\u1ffc\\u200e\\u2071\\u207f\\u2090-\\u209c\\u2102\\u2107\\u210a-\\u2113\\u2115\\u2119-\\u211d\\u2124\\u2126\\u2128\\u212a-\\u212d\\u212f-\\u2139\\u213c-\\u213f\\u2145-\\u2149\\u214e\\u214f\\u2160-\\u2188\\u2336-\\u237a\\u2395\\u249c-\\u24e9\\u26ac\\u2800-\\u28ff\\u2c00-\\u2c2e\\u2c30-\\u2c5e\\u2c60-\\u2ce4\\u2ceb-\\u2cee\\u2cf2\\u2cf3\\u2d00-\\u2d25\\u2d27\\u2d2d\\u2d30-\\u2d67\\u2d6f\\u2d70\\u2d80-\\u2d96\\u2da0-\\u2da6\\u2da8-\\u2dae\\u2db0-\\u2db6\\u2db8-\\u2dbe\\u2dc0-\\u2dc6\\u2dc8-\\u2dce\\u2dd0-\\u2dd6\\u2dd8-\\u2dde\\u3005-\\u3007\\u3021-\\u3029\\u302e\\u302f\\u3031-\\u3035\\u3038-\\u303c\\u3041-\\u3096\\u309d-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312d\\u3131-\\u318e\\u3190-\\u31ba\\u31f0-\\u321c\\u3220-\\u324f\\u3260-\\u327b\\u327f-\\u32b0\\u32c0-\\u32cb\\u32d0-\\u32fe\\u3300-\\u3376\\u337b-\\u33dd\\u33e0-\\u33fe\\u3400-\\u4db5\\u4e00-\\u9fd5\\ua000-\\ua48c\\ua4d0-\\ua60c\\ua610-\\ua62b\\ua640-\\ua66e\\ua680-\\ua69d\\ua6a0-\\ua6ef\\ua6f2-\\ua6f7\\ua722-\\ua787\\ua789-\\ua7ad\\ua7b0-\\ua7b7\\ua7f7-\\ua801\\ua803-\\ua805\\ua807-\\ua80a\\ua80c-\\ua824\\ua827\\ua830-\\ua837\\ua840-\\ua873\\ua880-\\ua8c3\\ua8ce-\\ua8d9\\ua8f2-\\ua8fd\\ua900-\\ua925\\ua92e-\\ua946\\ua952\\ua953\\ua95f-\\ua97c\\ua983-\\ua9b2\\ua9b4\\ua9b5\\ua9ba\\ua9bb\\ua9bd-\\ua9cd\\ua9cf-\\ua9d9\\ua9de-\\ua9e4\\ua9e6-\\ua9fe\\uaa00-\\uaa28\\uaa2f\\uaa30\\uaa33\\uaa34\\uaa40-\\uaa42\\uaa44-\\uaa4b\\uaa4d\\uaa50-\\uaa59\\uaa5c-\\uaa7b\\uaa7d-\\uaaaf\\uaab1\\uaab5\\uaab6\\uaab9-\\uaabd\\uaac0\\uaac2\\uaadb-\\uaaeb\\uaaee-\\uaaf5\\uab01-\\uab06\\uab09-\\uab0e\\uab11-\\uab16\\uab20-\\uab26\\uab28-\\uab2e\\uab30-\\uab65\\uab70-\\uabe4\\uabe6\\uabe7\\uabe9-\\uabec\\uabf0-\\uabf9\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\ue000-\\ufa6d\\ufa70-\\ufad9\\ufb00-\\ufb06\\ufb13-\\ufb17\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc]|\\ud800[\\udc00-\\udc0b]|\\ud800[\\udc0d-\\udc26]|\\ud800[\\udc28-\\udc3a]|\\ud800\\udc3c|\\ud800\\udc3d|\\ud800[\\udc3f-\\udc4d]|\\ud800[\\udc50-\\udc5d]|\\ud800[\\udc80-\\udcfa]|\\ud800\\udd00|\\ud800\\udd02|\\ud800[\\udd07-\\udd33]|\\ud800[\\udd37-\\udd3f]|\\ud800[\\uddd0-\\uddfc]|\\ud800[\\ude80-\\ude9c]|\\ud800[\\udea0-\\uded0]|\\ud800[\\udf00-\\udf23]|\\ud800[\\udf30-\\udf4a]|\\ud800[\\udf50-\\udf75]|\\ud800[\\udf80-\\udf9d]|\\ud800[\\udf9f-\\udfc3]|\\ud800[\\udfc8-\\udfd5]|\\ud801[\\udc00-\\udc9d]|\\ud801[\\udca0-\\udca9]|\\ud801[\\udd00-\\udd27]|\\ud801[\\udd30-\\udd63]|\\ud801\\udd6f|\\ud801[\\ude00-\\udf36]|\\ud801[\\udf40-\\udf55]|\\ud801[\\udf60-\\udf67]|\\ud804\\udc00|\\ud804[\\udc02-\\udc37]|\\ud804[\\udc47-\\udc4d]|\\ud804[\\udc66-\\udc6f]|\\ud804[\\udc82-\\udcb2]|\\ud804\\udcb7|\\ud804\\udcb8|\\ud804[\\udcbb-\\udcc1]|\\ud804[\\udcd0-\\udce8]|\\ud804[\\udcf0-\\udcf9]|\\ud804[\\udd03-\\udd26]|\\ud804\\udd2c|\\ud804[\\udd36-\\udd43]|\\ud804[\\udd50-\\udd72]|\\ud804[\\udd74-\\udd76]|\\ud804[\\udd82-\\uddb5]|\\ud804[\\uddbf-\\uddc9]|\\ud804\\uddcd|\\ud804[\\uddd0-\\udddf]|\\ud804[\\udde1-\\uddf4]|\\ud804[\\ude00-\\ude11]|\\ud804[\\ude13-\\ude2e]|\\ud804\\ude32|\\ud804\\ude33|\\ud804\\ude35|\\ud804[\\ude38-\\ude3d]|\\ud804[\\ude80-\\ude86]|\\ud804\\ude88|\\ud804[\\ude8a-\\ude8d]|\\ud804[\\ude8f-\\ude9d]|\\ud804[\\ude9f-\\udea9]|\\ud804[\\udeb0-\\udede]|\\ud804[\\udee0-\\udee2]|\\ud804[\\udef0-\\udef9]|\\ud804\\udf02|\\ud804\\udf03|\\ud804[\\udf05-\\udf0c]|\\ud804\\udf0f|\\ud804\\udf10|\\ud804[\\udf13-\\udf28]|\\ud804[\\udf2a-\\udf30]|\\ud804\\udf32|\\ud804\\udf33|\\ud804[\\udf35-\\udf39]|\\ud804[\\udf3d-\\udf3f]|\\ud804[\\udf41-\\udf44]|\\ud804\\udf47|\\ud804\\udf48|\\ud804[\\udf4b-\\udf4d]|\\ud804\\udf50|\\ud804\\udf57|\\ud804[\\udf5d-\\udf63]|\\ud805[\\udc80-\\udcb2]|\\ud805\\udcb9|\\ud805[\\udcbb-\\udcbe]|\\ud805\\udcc1|\\ud805[\\udcc4-\\udcc7]|\\ud805[\\udcd0-\\udcd9]|\\ud805[\\udd80-\\uddb1]|\\ud805[\\uddb8-\\uddbb]|\\ud805\\uddbe|\\ud805[\\uddc1-\\udddb]|\\ud805[\\ude00-\\ude32]|\\ud805\\ude3b|\\ud805\\ude3c|\\ud805\\ude3e|\\ud805[\\ude41-\\ude44]|\\ud805[\\ude50-\\ude59]|\\ud805[\\ude80-\\udeaa]|\\ud805\\udeac|\\ud805\\udeae|\\ud805\\udeaf|\\ud805\\udeb6|\\ud805[\\udec0-\\udec9]|\\ud805[\\udf00-\\udf19]|\\ud805\\udf20|\\ud805\\udf21|\\ud805\\udf26|\\ud805[\\udf30-\\udf3f]|\\ud806[\\udca0-\\udcf2]|\\ud806\\udcff|\\ud806[\\udec0-\\udef8]|\\ud808[\\udc00-\\udf99]|\\ud809[\\udc00-\\udc6e]|\\ud809[\\udc70-\\udc74]|\\ud809[\\udc80-\\udd43]|\\ud80c[\\udc00-\\udfff]|\\ud80d[\\udc00-\\udc2e]|\\ud811[\\udc00-\\ude46]|\\ud81a[\\udc00-\\ude38]|\\ud81a[\\ude40-\\ude5e]|\\ud81a[\\ude60-\\ude69]|\\ud81a\\ude6e|\\ud81a\\ude6f|\\ud81a[\\uded0-\\udeed]|\\ud81a\\udef5|\\ud81a[\\udf00-\\udf2f]|\\ud81a[\\udf37-\\udf45]|\\ud81a[\\udf50-\\udf59]|\\ud81a[\\udf5b-\\udf61]|\\ud81a[\\udf63-\\udf77]|\\ud81a[\\udf7d-\\udf8f]|\\ud81b[\\udf00-\\udf44]|\\ud81b[\\udf50-\\udf7e]|\\ud81b[\\udf93-\\udf9f]|\\ud82c\\udc00|\\ud82c\\udc01|\\ud82f[\\udc00-\\udc6a]|\\ud82f[\\udc70-\\udc7c]|\\ud82f[\\udc80-\\udc88]|\\ud82f[\\udc90-\\udc99]|\\ud82f\\udc9c|\\ud82f\\udc9f|\\ud834[\\udc00-\\udcf5]|\\ud834[\\udd00-\\udd26]|\\ud834[\\udd29-\\udd66]|\\ud834[\\udd6a-\\udd72]|\\ud834\\udd83|\\ud834\\udd84|\\ud834[\\udd8c-\\udda9]|\\ud834[\\uddae-\\udde8]|\\ud834[\\udf60-\\udf71]|\\ud835[\\udc00-\\udc54]|\\ud835[\\udc56-\\udc9c]|\\ud835\\udc9e|\\ud835\\udc9f|\\ud835\\udca2|\\ud835\\udca5|\\ud835\\udca6|\\ud835[\\udca9-\\udcac]|\\ud835[\\udcae-\\udcb9]|\\ud835\\udcbb|\\ud835[\\udcbd-\\udcc3]|\\ud835[\\udcc5-\\udd05]|\\ud835[\\udd07-\\udd0a]|\\ud835[\\udd0d-\\udd14]|\\ud835[\\udd16-\\udd1c]|\\ud835[\\udd1e-\\udd39]|\\ud835[\\udd3b-\\udd3e]|\\ud835[\\udd40-\\udd44]|\\ud835\\udd46|\\ud835[\\udd4a-\\udd50]|\\ud835[\\udd52-\\udea5]|\\ud835[\\udea8-\\udeda]|\\ud835[\\udedc-\\udf14]|\\ud835[\\udf16-\\udf4e]|\\ud835[\\udf50-\\udf88]|\\ud835[\\udf8a-\\udfc2]|\\ud835[\\udfc4-\\udfcb]|\\ud836[\\udc00-\\uddff]|\\ud836[\\ude37-\\ude3a]|\\ud836[\\ude6d-\\ude74]|\\ud836[\\ude76-\\ude83]|\\ud836[\\ude85-\\ude8b]|\\ud83c[\\udd10-\\udd2e]|\\ud83c[\\udd30-\\udd69]|\\ud83c[\\udd70-\\udd9a]|\\ud83c[\\udde6-\\ude02]|\\ud83c[\\ude10-\\ude3a]|\\ud83c[\\ude40-\\ude48]|\\ud83c\\ude50|\\ud83c\\ude51|[\\ud840-\\ud868][\\udc00-\\udfff]|\\ud869[\\udc00-\\uded6]|\\ud869[\\udf00-\\udfff]|[\\ud86a-\\ud86c][\\udc00-\\udfff]|\\ud86d[\\udc00-\\udf34]|\\ud86d[\\udf40-\\udfff]|\\ud86e[\\udc00-\\udc1d]|\\ud86e[\\udc20-\\udfff]|[\\ud86f-\\ud872][\\udc00-\\udfff]|\\ud873[\\udc00-\\udea1]|\\ud87e[\\udc00-\\ude1d]|[\\udb80-\\udbbe][\\udc00-\\udfff]|\\udbbf[\\udc00-\\udffd]|[\\udbc0-\\udbfe][\\udc00-\\udfff]|\\udbff[\\udc00-\\udffd]' +\n\t\t\t')|(' +\n\t\t\t\t'[\\u0590\\u05be\\u05c0\\u05c3\\u05c6\\u05c8-\\u05ff\\u07c0-\\u07ea\\u07f4\\u07f5\\u07fa-\\u0815\\u081a\\u0824\\u0828\\u082e-\\u0858\\u085c-\\u089f\\u200f\\ufb1d\\ufb1f-\\ufb28\\ufb2a-\\ufb4f\\u0608\\u060b\\u060d\\u061b-\\u064a\\u066d-\\u066f\\u0671-\\u06d5\\u06e5\\u06e6\\u06ee\\u06ef\\u06fa-\\u0710\\u0712-\\u072f\\u074b-\\u07a5\\u07b1-\\u07bf\\u08a0-\\u08e2\\ufb50-\\ufd3d\\ufd40-\\ufdcf\\ufdf0-\\ufdfc\\ufdfe\\ufdff\\ufe70-\\ufefe]|\\ud802[\\udc00-\\udd1e]|\\ud802[\\udd20-\\ude00]|\\ud802\\ude04|\\ud802[\\ude07-\\ude0b]|\\ud802[\\ude10-\\ude37]|\\ud802[\\ude3b-\\ude3e]|\\ud802[\\ude40-\\udee4]|\\ud802[\\udee7-\\udf38]|\\ud802[\\udf40-\\udfff]|\\ud803[\\udc00-\\ude5f]|\\ud803[\\ude7f-\\udfff]|\\ud83a[\\udc00-\\udccf]|\\ud83a[\\udcd7-\\udfff]|\\ud83b[\\udc00-\\uddff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\udf00-\\udfff]|\\ud83b[\\ude00-\\udeef]|\\ud83b[\\udef2-\\udeff]' +\n\t\t\t')' +\n\t\t')'\n\t);\n\n\t/**\n\t * Gets directionality of the first strongly directional codepoint\n\t *\n\t * This is the rule the BIDI algorithm uses to determine the directionality of\n\t * paragraphs ( http://unicode.org/reports/tr9/#The_Paragraph_Level ) and\n\t * FSI isolates ( http://unicode.org/reports/tr9/#Explicit_Directional_Isolates ).\n\t *\n\t * TODO: Does not handle BIDI control characters inside the text.\n\t * TODO: Does not handle unallocated characters.\n\t *\n\t * @param {string} text The text from which to extract initial directionality.\n\t * @return {string} Directionality (either 'ltr' or 'rtl')\n\t */\n\tfunction strongDirFromContent( text ) {\n\t\tvar m = text.match( strongDirRegExp );\n\t\tif ( !m ) {\n\t\t\treturn null;\n\t\t}\n\t\tif ( m[ 2 ] === undefined ) {\n\t\t\treturn 'ltr';\n\t\t}\n\t\treturn 'rtl';\n\t}\n\n\t$.extend( $.i18n.parser.emitter, {\n\t\t/**\n\t\t * Wraps argument with unicode control characters for directionality safety\n\t\t *\n\t\t * This solves the problem where directionality-neutral characters at the edge of\n\t\t * the argument string get interpreted with the wrong directionality from the\n\t\t * enclosing context, giving renderings that look corrupted like \"(Ben_(WMF\".\n\t\t *\n\t\t * The wrapping is LRE...PDF or RLE...PDF, depending on the detected\n\t\t * directionality of the argument string, using the BIDI algorithm's own \"First\n\t\t * strong directional codepoint\" rule. Essentially, this works round the fact that\n\t\t * there is no embedding equivalent of U+2068 FSI (isolation with heuristic\n\t\t * direction inference). The latter is cleaner but still not widely supported.\n\t\t *\n\t\t * @param {string[]} nodes The text nodes from which to take the first item.\n\t\t * @return {string} Wrapped String of content as needed.\n\t\t */\n\t\tbidi: function ( nodes ) {\n\t\t\tvar dir = strongDirFromContent( nodes[ 0 ] );\n\t\t\tif ( dir === 'ltr' ) {\n\t\t\t\t// Wrap in LEFT-TO-RIGHT EMBEDDING ... POP DIRECTIONAL FORMATTING\n\t\t\t\treturn '\\u202A' + nodes[ 0 ] + '\\u202C';\n\t\t\t}\n\t\t\tif ( dir === 'rtl' ) {\n\t\t\t\t// Wrap in RIGHT-TO-LEFT EMBEDDING ... POP DIRECTIONAL FORMATTING\n\t\t\t\treturn '\\u202B' + nodes[ 0 ] + '\\u202C';\n\t\t\t}\n\t\t\t// No strong directionality: do not wrap\n\t\t\treturn nodes[ 0 ];\n\t\t}\n\t} );\n}( jQuery ) );\n","module.exports = jQuery;","/*!\n * jQuery Internationalization library\n *\n * Copyright (C) 2011-2013 Santhosh Thottingal, Neil Kandalgaonkar\n *\n * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do\n * anything special to choose one license or the other and you don't have to\n * notify anyone which license you are using. You are free to use\n * UniversalLanguageSelector in commercial projects as long as the copyright\n * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.\n *\n * @licence GNU General Public Licence 2.0 or later\n * @licence MIT License\n */\n\n( function ( $ ) {\n\t'use strict';\n\n\tvar MessageParserEmitter = function () {\n\t\tthis.language = $.i18n.languages[ String.locale ] || $.i18n.languages[ 'default' ];\n\t};\n\n\tMessageParserEmitter.prototype = {\n\t\tconstructor: MessageParserEmitter,\n\n\t\t/**\n\t\t * (We put this method definition here, and not in prototype, to make\n\t\t * sure it's not overwritten by any magic.) Walk entire node structure,\n\t\t * applying replacements and template functions when appropriate\n\t\t *\n\t\t * @param {Mixed} node abstract syntax tree (top node or subnode)\n\t\t * @param {Array} replacements for $1, $2, ... $n\n\t\t * @return {Mixed} single-string node or array of nodes suitable for\n\t\t * jQuery appending.\n\t\t */\n\t\temit: function ( node, replacements ) {\n\t\t\tvar ret, subnodes, operation,\n\t\t\t\tmessageParserEmitter = this;\n\n\t\t\tswitch ( typeof node ) {\n\t\t\t\tcase 'string':\n\t\t\t\tcase 'number':\n\t\t\t\t\tret = node;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'object':\n\t\t\t\t// node is an array of nodes\n\t\t\t\t\tsubnodes = $.map( node.slice( 1 ), function ( n ) {\n\t\t\t\t\t\treturn messageParserEmitter.emit( n, replacements );\n\t\t\t\t\t} );\n\n\t\t\t\t\toperation = node[ 0 ].toLowerCase();\n\n\t\t\t\t\tif ( typeof messageParserEmitter[ operation ] === 'function' ) {\n\t\t\t\t\t\tret = messageParserEmitter[ operation ]( subnodes, replacements );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow new Error( 'unknown operation \"' + operation + '\"' );\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'undefined':\n\t\t\t\t// Parsing the empty string (as an entire expression, or as a\n\t\t\t\t// paramExpression in a template) results in undefined\n\t\t\t\t// Perhaps a more clever parser can detect this, and return the\n\t\t\t\t// empty string? Or is that useful information?\n\t\t\t\t// The logical thing is probably to return the empty string here\n\t\t\t\t// when we encounter undefined.\n\t\t\t\t\tret = '';\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tthrow new Error( 'unexpected type in AST: ' + typeof node );\n\t\t\t}\n\n\t\t\treturn ret;\n\t\t},\n\n\t\t/**\n\t\t * Parsing has been applied depth-first we can assume that all nodes\n\t\t * here are single nodes Must return a single node to parents -- a\n\t\t * jQuery with synthetic span However, unwrap any other synthetic spans\n\t\t * in our children and pass them upwards\n\t\t *\n\t\t * @param {Array} nodes Mixed, some single nodes, some arrays of nodes.\n\t\t * @return {string}\n\t\t */\n\t\tconcat: function ( nodes ) {\n\t\t\tvar result = '';\n\n\t\t\t$.each( nodes, function ( i, node ) {\n\t\t\t\t// strings, integers, anything else\n\t\t\t\tresult += node;\n\t\t\t} );\n\n\t\t\treturn result;\n\t\t},\n\n\t\t/**\n\t\t * Return escaped replacement of correct index, or string if\n\t\t * unavailable. Note that we expect the parsed parameter to be\n\t\t * zero-based. i.e. $1 should have become [ 0 ]. if the specified\n\t\t * parameter is not found return the same string (e.g. \"$99\" ->\n\t\t * parameter 98 -> not found -> return \"$99\" ) TODO throw error if\n\t\t * nodes.length > 1 ?\n\t\t *\n\t\t * @param {Array} nodes One element, integer, n >= 0\n\t\t * @param {Array} replacements for $1, $2, ... $n\n\t\t * @return {string} replacement\n\t\t */\n\t\treplace: function ( nodes, replacements ) {\n\t\t\tvar index = parseInt( nodes[ 0 ], 10 );\n\n\t\t\tif ( index < replacements.length ) {\n\t\t\t\t// replacement is not a string, don't touch!\n\t\t\t\treturn replacements[ index ];\n\t\t\t} else {\n\t\t\t\t// index not found, fallback to displaying variable\n\t\t\t\treturn '$' + ( index + 1 );\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Transform parsed structure into pluralization n.b. The first node may\n\t\t * be a non-integer (for instance, a string representing an Arabic\n\t\t * number). So convert it back with the current language's\n\t\t * convertNumber.\n\t\t *\n\t\t * @param {Array} nodes List [ {String|Number}, {String}, {String} ... ]\n\t\t * @return {string} selected pluralized form according to current\n\t\t * language.\n\t\t */\n\t\tplural: function ( nodes ) {\n\t\t\tvar count = parseFloat( this.language.convertNumber( nodes[ 0 ], 10 ) ),\n\t\t\t\tforms = nodes.slice( 1 );\n\n\t\t\treturn forms.length ? this.language.convertPlural( count, forms ) : '';\n\t\t},\n\n\t\t/**\n\t\t * Transform parsed structure into gender Usage\n\t\t * {{gender:gender|masculine|feminine|neutral}}.\n\t\t *\n\t\t * @param {Array} nodes List [ {String}, {String}, {String} , {String} ]\n\t\t * @return {string} selected gender form according to current language\n\t\t */\n\t\tgender: function ( nodes ) {\n\t\t\tvar gender = nodes[ 0 ],\n\t\t\t\tforms = nodes.slice( 1 );\n\n\t\t\treturn this.language.gender( gender, forms );\n\t\t},\n\n\t\t/**\n\t\t * Transform parsed structure into grammar conversion. Invoked by\n\t\t * putting {{grammar:form|word}} in a message\n\t\t *\n\t\t * @param {Array} nodes List [{Grammar case eg: genitive}, {String word}]\n\t\t * @return {string} selected grammatical form according to current\n\t\t * language.\n\t\t */\n\t\tgrammar: function ( nodes ) {\n\t\t\tvar form = nodes[ 0 ],\n\t\t\t\tword = nodes[ 1 ];\n\n\t\t\treturn word && form && this.language.convertGrammar( word, form );\n\t\t}\n\t};\n\n\t$.extend( $.i18n.parser.emitter, new MessageParserEmitter() );\n}( jQuery ) );\n","/*!\n * jQuery Internationalization library\n *\n * Copyright (C) 2011-2013 Santhosh Thottingal, Neil Kandalgaonkar\n *\n * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do\n * anything special to choose one license or the other and you don't have to\n * notify anyone which license you are using. You are free to use\n * UniversalLanguageSelector in commercial projects as long as the copyright\n * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.\n *\n * @licence GNU General Public Licence 2.0 or later\n * @licence MIT License\n */\n\n( function ( $ ) {\n\t'use strict';\n\n\tvar MessageParser = function ( options ) {\n\t\tthis.options = $.extend( {}, $.i18n.parser.defaults, options );\n\t\tthis.language = $.i18n.languages[ String.locale ] || $.i18n.languages[ 'default' ];\n\t\tthis.emitter = $.i18n.parser.emitter;\n\t};\n\n\tMessageParser.prototype = {\n\n\t\tconstructor: MessageParser,\n\n\t\tsimpleParse: function ( message, parameters ) {\n\t\t\treturn message.replace( /\\$(\\d+)/g, function ( str, match ) {\n\t\t\t\tvar index = parseInt( match, 10 ) - 1;\n\n\t\t\t\treturn parameters[ index ] !== undefined ? parameters[ index ] : '$' + match;\n\t\t\t} );\n\t\t},\n\n\t\tparse: function ( message, replacements ) {\n\t\t\tif ( message.indexOf( '{{' ) < 0 ) {\n\t\t\t\treturn this.simpleParse( message, replacements );\n\t\t\t}\n\n\t\t\tthis.emitter.language = $.i18n.languages[ $.i18n().locale ] ||\n\t\t\t\t$.i18n.languages[ 'default' ];\n\n\t\t\treturn this.emitter.emit( this.ast( message ), replacements );\n\t\t},\n\n\t\tast: function ( message ) {\n\t\t\tvar pipe, colon, backslash, anyCharacter, dollar, digits, regularLiteral,\n\t\t\t\tregularLiteralWithoutBar, regularLiteralWithoutSpace, escapedOrLiteralWithoutBar,\n\t\t\t\tescapedOrRegularLiteral, templateContents, templateName, openTemplate,\n\t\t\t\tcloseTemplate, expression, paramExpression, result,\n\t\t\t\tpos = 0;\n\n\t\t\t// Try parsers until one works, if none work return null\n\t\t\tfunction choice( parserSyntax ) {\n\t\t\t\treturn function () {\n\t\t\t\t\tvar i, result;\n\n\t\t\t\t\tfor ( i = 0; i < parserSyntax.length; i++ ) {\n\t\t\t\t\t\tresult = parserSyntax[ i ]();\n\n\t\t\t\t\t\tif ( result !== null ) {\n\t\t\t\t\t\t\treturn result;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn null;\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// Try several parserSyntax-es in a row.\n\t\t\t// All must succeed; otherwise, return null.\n\t\t\t// This is the only eager one.\n\t\t\tfunction sequence( parserSyntax ) {\n\t\t\t\tvar i, res,\n\t\t\t\t\toriginalPos = pos,\n\t\t\t\t\tresult = [];\n\n\t\t\t\tfor ( i = 0; i < parserSyntax.length; i++ ) {\n\t\t\t\t\tres = parserSyntax[ i ]();\n\n\t\t\t\t\tif ( res === null ) {\n\t\t\t\t\t\tpos = originalPos;\n\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\tresult.push( res );\n\t\t\t\t}\n\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\t// Run the same parser over and over until it fails.\n\t\t\t// Must succeed a minimum of n times; otherwise, return null.\n\t\t\tfunction nOrMore( n, p ) {\n\t\t\t\treturn function () {\n\t\t\t\t\tvar originalPos = pos,\n\t\t\t\t\t\tresult = [],\n\t\t\t\t\t\tparsed = p();\n\n\t\t\t\t\twhile ( parsed !== null ) {\n\t\t\t\t\t\tresult.push( parsed );\n\t\t\t\t\t\tparsed = p();\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( result.length < n ) {\n\t\t\t\t\t\tpos = originalPos;\n\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn result;\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// Helpers -- just make parserSyntax out of simpler JS builtin types\n\n\t\t\tfunction makeStringParser( s ) {\n\t\t\t\tvar len = s.length;\n\n\t\t\t\treturn function () {\n\t\t\t\t\tvar result = null;\n\n\t\t\t\t\tif ( message.slice( pos, pos + len ) === s ) {\n\t\t\t\t\t\tresult = s;\n\t\t\t\t\t\tpos += len;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn result;\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tfunction makeRegexParser( regex ) {\n\t\t\t\treturn function () {\n\t\t\t\t\tvar matches = message.slice( pos ).match( regex );\n\n\t\t\t\t\tif ( matches === null ) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\tpos += matches[ 0 ].length;\n\n\t\t\t\t\treturn matches[ 0 ];\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tpipe = makeStringParser( '|' );\n\t\t\tcolon = makeStringParser( ':' );\n\t\t\tbackslash = makeStringParser( '\\\\' );\n\t\t\tanyCharacter = makeRegexParser( /^./ );\n\t\t\tdollar = makeStringParser( '$' );\n\t\t\tdigits = makeRegexParser( /^\\d+/ );\n\t\t\tregularLiteral = makeRegexParser( /^[^{}[\\]$\\\\]/ );\n\t\t\tregularLiteralWithoutBar = makeRegexParser( /^[^{}[\\]$\\\\|]/ );\n\t\t\tregularLiteralWithoutSpace = makeRegexParser( /^[^{}[\\]$\\s]/ );\n\n\t\t\t// There is a general pattern:\n\t\t\t// parse a thing;\n\t\t\t// if it worked, apply transform,\n\t\t\t// otherwise return null.\n\t\t\t// But using this as a combinator seems to cause problems\n\t\t\t// when combined with nOrMore().\n\t\t\t// May be some scoping issue.\n\t\t\tfunction transform( p, fn ) {\n\t\t\t\treturn function () {\n\t\t\t\t\tvar result = p();\n\n\t\t\t\t\treturn result === null ? null : fn( result );\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t// Used to define \"literals\" within template parameters. The pipe\n\t\t\t// character is the parameter delimeter, so by default\n\t\t\t// it is not a literal in the parameter\n\t\t\tfunction literalWithoutBar() {\n\t\t\t\tvar result = nOrMore( 1, escapedOrLiteralWithoutBar )();\n\n\t\t\t\treturn result === null ? null : result.join( '' );\n\t\t\t}\n\n\t\t\tfunction literal() {\n\t\t\t\tvar result = nOrMore( 1, escapedOrRegularLiteral )();\n\n\t\t\t\treturn result === null ? null : result.join( '' );\n\t\t\t}\n\n\t\t\tfunction escapedLiteral() {\n\t\t\t\tvar result = sequence( [ backslash, anyCharacter ] );\n\n\t\t\t\treturn result === null ? null : result[ 1 ];\n\t\t\t}\n\n\t\t\tchoice( [ escapedLiteral, regularLiteralWithoutSpace ] );\n\t\t\tescapedOrLiteralWithoutBar = choice( [ escapedLiteral, regularLiteralWithoutBar ] );\n\t\t\tescapedOrRegularLiteral = choice( [ escapedLiteral, regularLiteral ] );\n\n\t\t\tfunction replacement() {\n\t\t\t\tvar result = sequence( [ dollar, digits ] );\n\n\t\t\t\tif ( result === null ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\treturn [ 'REPLACE', parseInt( result[ 1 ], 10 ) - 1 ];\n\t\t\t}\n\n\t\t\ttemplateName = transform(\n\t\t\t\t// see $wgLegalTitleChars\n\t\t\t\t// not allowing : due to the need to catch \"PLURAL:$1\"\n\t\t\t\tmakeRegexParser( /^[ !\"$&'()*,./0-9;=?@A-Z^_`a-z~\\x80-\\xFF+-]+/ ),\n\n\t\t\t\tfunction ( result ) {\n\t\t\t\t\treturn result.toString();\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tfunction templateParam() {\n\t\t\t\tvar expr,\n\t\t\t\t\tresult = sequence( [ pipe, nOrMore( 0, paramExpression ) ] );\n\n\t\t\t\tif ( result === null ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\texpr = result[ 1 ];\n\n\t\t\t\t// use a \"CONCAT\" operator if there are multiple nodes,\n\t\t\t\t// otherwise return the first node, raw.\n\t\t\t\treturn expr.length > 1 ? [ 'CONCAT' ].concat( expr ) : expr[ 0 ];\n\t\t\t}\n\n\t\t\tfunction templateWithReplacement() {\n\t\t\t\tvar result = sequence( [ templateName, colon, replacement ] );\n\n\t\t\t\treturn result === null ? null : [ result[ 0 ], result[ 2 ] ];\n\t\t\t}\n\n\t\t\tfunction templateWithOutReplacement() {\n\t\t\t\tvar result = sequence( [ templateName, colon, paramExpression ] );\n\n\t\t\t\treturn result === null ? null : [ result[ 0 ], result[ 2 ] ];\n\t\t\t}\n\n\t\t\ttemplateContents = choice( [\n\t\t\t\tfunction () {\n\t\t\t\t\tvar res = sequence( [\n\t\t\t\t\t\t// templates can have placeholders for dynamic\n\t\t\t\t\t\t// replacement eg: {{PLURAL:$1|one car|$1 cars}}\n\t\t\t\t\t\t// or no placeholders eg:\n\t\t\t\t\t\t// {{GRAMMAR:genitive|{{SITENAME}}}\n\t\t\t\t\t\tchoice( [ templateWithReplacement, templateWithOutReplacement ] ),\n\t\t\t\t\t\tnOrMore( 0, templateParam )\n\t\t\t\t\t] );\n\n\t\t\t\t\treturn res === null ? null : res[ 0 ].concat( res[ 1 ] );\n\t\t\t\t},\n\t\t\t\tfunction () {\n\t\t\t\t\tvar res = sequence( [ templateName, nOrMore( 0, templateParam ) ] );\n\n\t\t\t\t\tif ( res === null ) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn [ res[ 0 ] ].concat( res[ 1 ] );\n\t\t\t\t}\n\t\t\t] );\n\n\t\t\topenTemplate = makeStringParser( '{{' );\n\t\t\tcloseTemplate = makeStringParser( '}}' );\n\n\t\t\tfunction template() {\n\t\t\t\tvar result = sequence( [ openTemplate, templateContents, closeTemplate ] );\n\n\t\t\t\treturn result === null ? null : result[ 1 ];\n\t\t\t}\n\n\t\t\texpression = choice( [ template, replacement, literal ] );\n\t\t\tparamExpression = choice( [ template, replacement, literalWithoutBar ] );\n\n\t\t\tfunction start() {\n\t\t\t\tvar result = nOrMore( 0, expression )();\n\n\t\t\t\tif ( result === null ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\treturn [ 'CONCAT' ].concat( result );\n\t\t\t}\n\n\t\t\tresult = start();\n\n\t\t\t/*\n\t\t\t * For success, the pos must have gotten to the end of the input\n\t\t\t * and returned a non-null.\n\t\t\t * n.b. This is part of language infrastructure, so we do not throw an\n\t\t\t * internationalizable message.\n\t\t\t */\n\t\t\tif ( result === null || pos !== message.length ) {\n\t\t\t\tthrow new Error( 'Parse error at position ' + pos.toString() + ' in input: ' + message );\n\t\t\t}\n\n\t\t\treturn result;\n\t\t}\n\n\t};\n\n\t$.extend( $.i18n.parser, new MessageParser() );\n}( jQuery ) );","/*!\n * jQuery Internationalization library - Message Store\n *\n * Copyright (C) 2012 Santhosh Thottingal\n *\n * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do anything special to\n * choose one license or the other and you don't have to notify anyone which license you are using.\n * You are free to use UniversalLanguageSelector in commercial projects as long as the copyright\n * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.\n *\n * @licence GNU General Public Licence 2.0 or later\n * @licence MIT License\n */\n\n( function ( $ ) {\n\t'use strict';\n\n\tvar MessageStore = function () {\n\t\tthis.messages = {};\n\t\tthis.sources = {};\n\t};\n\n\tfunction jsonMessageLoader( url ) {\n\t\tvar deferred = $.Deferred();\n\n\t\t$.getJSON( url )\n\t\t\t.done( deferred.resolve )\n\t\t\t.fail( function ( jqxhr, settings, exception ) {\n\t\t\t\t$.i18n.log( 'Error in loading messages from ' + url + ' Exception: ' + exception );\n\t\t\t\t// Ignore 404 exception, because we are handling fallabacks explicitly\n\t\t\t\tdeferred.resolve();\n\t\t\t} );\n\n\t\treturn deferred.promise();\n\t}\n\n\t/**\n\t * See https://github.com/wikimedia/jquery.i18n/wiki/Specification#wiki-Message_File_Loading\n\t */\n\tMessageStore.prototype = {\n\n\t\t/**\n\t\t * General message loading API This can take a URL string for\n\t\t * the json formatted messages.\n\t\t * load('path/to/all_localizations.json');\n\t\t *\n\t\t * This can also load a localization file for a locale \n\t\t * load( 'path/to/de-messages.json', 'de' );\n\t\t * \n\t\t * A data object containing message key- message translation mappings\n\t\t * can also be passed Eg:\n\t\t * \n\t\t * load( { 'hello' : 'Hello' }, optionalLocale );\n\t\t * If the data argument is\n\t\t * null/undefined/false,\n\t\t * all cached messages for the i18n instance will get reset.\n\t\t *\n\t\t * @param {string|Object} source\n\t\t * @param {string} locale Language tag\n\t\t * @return {jQuery.Promise}\n\t\t */\n\t\tload: function ( source, locale ) {\n\t\t\tvar key = null,\n\t\t\t\tdeferred = null,\n\t\t\t\tdeferreds = [],\n\t\t\t\tmessageStore = this;\n\n\t\t\tif ( typeof source === 'string' ) {\n\t\t\t\t// This is a URL to the messages file.\n\t\t\t\t$.i18n.log( 'Loading messages from: ' + source );\n\t\t\t\tdeferred = jsonMessageLoader( source )\n\t\t\t\t\t.done( function ( localization ) {\n\t\t\t\t\t\tmessageStore.set( locale, localization );\n\t\t\t\t\t} );\n\n\t\t\t\treturn deferred.promise();\n\t\t\t}\n\n\t\t\tif ( locale ) {\n\t\t\t\t// source is an key-value pair of messages for given locale\n\t\t\t\tmessageStore.set( locale, source );\n\n\t\t\t\treturn $.Deferred().resolve();\n\t\t\t} else {\n\t\t\t\t// source is a key-value pair of locales and their source\n\t\t\t\tfor ( key in source ) {\n\t\t\t\t\tif ( Object.prototype.hasOwnProperty.call( source, key ) ) {\n\t\t\t\t\t\tlocale = key;\n\t\t\t\t\t\t// No {locale} given, assume data is a group of languages,\n\t\t\t\t\t\t// call this function again for each language.\n\t\t\t\t\t\tdeferreds.push( messageStore.load( source[ key ], locale ) );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn $.when.apply( $, deferreds );\n\t\t\t}\n\n\t\t},\n\n\t\t/**\n\t\t * Set messages to the given locale.\n\t\t * If locale exists, add messages to the locale.\n\t\t *\n\t\t * @param {string} locale\n\t\t * @param {Object} messages\n\t\t */\n\t\tset: function ( locale, messages ) {\n\t\t\tif ( !this.messages[ locale ] ) {\n\t\t\t\tthis.messages[ locale ] = messages;\n\t\t\t} else {\n\t\t\t\tthis.messages[ locale ] = $.extend( this.messages[ locale ], messages );\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t *\n\t\t * @param {string} locale\n\t\t * @param {string} messageKey\n\t\t * @return {boolean}\n\t\t */\n\t\tget: function ( locale, messageKey ) {\n\t\t\treturn this.messages[ locale ] && this.messages[ locale ][ messageKey ];\n\t\t}\n\t};\n\n\t$.extend( $.i18n.messageStore, new MessageStore() );\n}( jQuery ) );\n","/*!\n * jQuery Internationalization library\n *\n * Copyright (C) 2012 Santhosh Thottingal\n *\n * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do\n * anything special to choose one license or the other and you don't have to\n * notify anyone which license you are using. You are free to use\n * UniversalLanguageSelector in commercial projects as long as the copyright\n * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.\n *\n * @licence GNU General Public Licence 2.0 or later\n * @licence MIT License\n */\n\n( function ( $ ) {\n\t'use strict';\n\n\tvar I18N,\n\t\tslice = Array.prototype.slice;\n\t/**\n\t * @constructor\n\t * @param {Object} options\n\t */\n\tI18N = function ( options ) {\n\t\t// Load defaults\n\t\tthis.options = $.extend( {}, I18N.defaults, options );\n\n\t\tthis.parser = this.options.parser;\n\t\tthis.locale = this.options.locale;\n\t\tthis.messageStore = this.options.messageStore;\n\t\tthis.languages = {};\n\t};\n\n\tI18N.prototype = {\n\t\t/**\n\t\t * Localize a given messageKey to a locale.\n\t\t * @param {String} messageKey\n\t\t * @return {String} Localized message\n\t\t */\n\t\tlocalize: function ( messageKey ) {\n\t\t\tvar localeParts, localePartIndex, locale, fallbackIndex,\n\t\t\t\ttryingLocale, message;\n\n\t\t\tlocale = this.locale;\n\t\t\tfallbackIndex = 0;\n\n\t\t\twhile ( locale ) {\n\t\t\t\t// Iterate through locales starting at most-specific until\n\t\t\t\t// localization is found. As in fi-Latn-FI, fi-Latn and fi.\n\t\t\t\tlocaleParts = locale.split( '-' );\n\t\t\t\tlocalePartIndex = localeParts.length;\n\n\t\t\t\tdo {\n\t\t\t\t\ttryingLocale = localeParts.slice( 0, localePartIndex ).join( '-' );\n\t\t\t\t\tmessage = this.messageStore.get( tryingLocale, messageKey );\n\n\t\t\t\t\tif ( message ) {\n\t\t\t\t\t\treturn message;\n\t\t\t\t\t}\n\n\t\t\t\t\tlocalePartIndex--;\n\t\t\t\t} while ( localePartIndex );\n\n\t\t\t\tif ( locale === 'en' ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tlocale = ( $.i18n.fallbacks[ this.locale ] &&\n\t\t\t\t\t\t$.i18n.fallbacks[ this.locale ][ fallbackIndex ] ) ||\n\t\t\t\t\t\tthis.options.fallbackLocale;\n\t\t\t\t$.i18n.log( 'Trying fallback locale for ' + this.locale + ': ' + locale + ' (' + messageKey + ')' );\n\n\t\t\t\tfallbackIndex++;\n\t\t\t}\n\n\t\t\t// key not found\n\t\t\treturn '';\n\t\t},\n\n\t\t/*\n\t\t * Destroy the i18n instance.\n\t\t */\n\t\tdestroy: function () {\n\t\t\t$.removeData( document, 'i18n' );\n\t\t},\n\n\t\t/**\n\t\t * General message loading API This can take a URL string for\n\t\t * the json formatted messages. Example:\n\t\t * load('path/to/all_localizations.json');\n\t\t *\n\t\t * To load a localization file for a locale:\n\t\t * \n\t\t * load('path/to/de-messages.json', 'de' );\n\t\t * \n\t\t *\n\t\t * To load a localization file from a directory:\n\t\t * \n\t\t * load('path/to/i18n/directory', 'de' );\n\t\t * \n\t\t * The above method has the advantage of fallback resolution.\n\t\t * ie, it will automatically load the fallback locales for de.\n\t\t * For most usecases, this is the recommended method.\n\t\t * It is optional to have trailing slash at end.\n\t\t *\n\t\t * A data object containing message key- message translation mappings\n\t\t * can also be passed. Example:\n\t\t * \n\t\t * load( { 'hello' : 'Hello' }, optionalLocale );\n\t\t * \n\t\t *\n\t\t * A source map containing key-value pair of languagename and locations\n\t\t * can also be passed. Example:\n\t\t * \n\t\t * load( {\n\t\t * bn: 'i18n/bn.json',\n\t\t * he: 'i18n/he.json',\n\t\t * en: 'i18n/en.json'\n\t\t * } )\n\t\t * \n\t\t *\n\t\t * If the data argument is null/undefined/false,\n\t\t * all cached messages for the i18n instance will get reset.\n\t\t *\n\t\t * @param {string|Object} source\n\t\t * @param {string} locale Language tag\n\t\t * @return {jQuery.Promise}\n\t\t */\n\t\tload: function ( source, locale ) {\n\t\t\tvar fallbackLocales, locIndex, fallbackLocale, sourceMap = {};\n\t\t\tif ( !source && !locale ) {\n\t\t\t\tsource = 'i18n/' + $.i18n().locale + '.json';\n\t\t\t\tlocale = $.i18n().locale;\n\t\t\t}\n\t\t\tif ( typeof source === 'string' &&\n\t\t\t\t// source extension should be json, but can have query params after that.\n\t\t\t\tsource.split( '?' )[ 0 ].split( '.' ).pop() !== 'json'\n\t\t\t) {\n\t\t\t\t// Load specified locale then check for fallbacks when directory is\n\t\t\t\t// specified in load()\n\t\t\t\tsourceMap[ locale ] = source + '/' + locale + '.json';\n\t\t\t\tfallbackLocales = ( $.i18n.fallbacks[ locale ] || [] )\n\t\t\t\t\t.concat( this.options.fallbackLocale );\n\t\t\t\tfor ( locIndex = 0; locIndex < fallbackLocales.length; locIndex++ ) {\n\t\t\t\t\tfallbackLocale = fallbackLocales[ locIndex ];\n\t\t\t\t\tsourceMap[ fallbackLocale ] = source + '/' + fallbackLocale + '.json';\n\t\t\t\t}\n\t\t\t\treturn this.load( sourceMap );\n\t\t\t} else {\n\t\t\t\treturn this.messageStore.load( source, locale );\n\t\t\t}\n\n\t\t},\n\n\t\t/**\n\t\t * Does parameter and magic word substitution.\n\t\t *\n\t\t * @param {string} key Message key\n\t\t * @param {Array} parameters Message parameters\n\t\t * @return {string}\n\t\t */\n\t\tparse: function ( key, parameters ) {\n\t\t\tvar message = this.localize( key );\n\t\t\t// FIXME: This changes the state of the I18N object,\n\t\t\t// should probably not change the 'this.parser' but just\n\t\t\t// pass it to the parser.\n\t\t\tthis.parser.language = $.i18n.languages[ $.i18n().locale ] || $.i18n.languages[ 'default' ];\n\t\t\tif ( message === '' ) {\n\t\t\t\tmessage = key;\n\t\t\t}\n\t\t\treturn this.parser.parse( message, parameters );\n\t\t}\n\t};\n\n\t/**\n\t * Process a message from the $.I18N instance\n\t * for the current document, stored in jQuery.data(document).\n\t *\n\t * @param {string} key Key of the message.\n\t * @param {string} param1 [param...] Variadic list of parameters for {key}.\n\t * @return {string|$.I18N} Parsed message, or if no key was given\n\t * the instance of $.I18N is returned.\n\t */\n\t$.i18n = function ( key, param1 ) {\n\t\tvar parameters,\n\t\t\ti18n = $.data( document, 'i18n' ),\n\t\t\toptions = typeof key === 'object' && key;\n\n\t\t// If the locale option for this call is different then the setup so far,\n\t\t// update it automatically. This doesn't just change the context for this\n\t\t// call but for all future call as well.\n\t\t// If there is no i18n setup yet, don't do this. It will be taken care of\n\t\t// by the `new I18N` construction below.\n\t\t// NOTE: It should only change language for this one call.\n\t\t// Then cache instances of I18N somewhere.\n\t\tif ( options && options.locale && i18n && i18n.locale !== options.locale ) {\n\t\t\ti18n.locale = options.locale;\n\t\t}\n\n\t\tif ( !i18n ) {\n\t\t\ti18n = new I18N( options );\n\t\t\t$.data( document, 'i18n', i18n );\n\t\t}\n\n\t\tif ( typeof key === 'string' ) {\n\t\t\tif ( param1 !== undefined ) {\n\t\t\t\tparameters = slice.call( arguments, 1 );\n\t\t\t} else {\n\t\t\t\tparameters = [];\n\t\t\t}\n\n\t\t\treturn i18n.parse( key, parameters );\n\t\t} else {\n\t\t\t// FIXME: remove this feature/bug.\n\t\t\treturn i18n;\n\t\t}\n\t};\n\n\t$.fn.i18n = function () {\n\t\tvar i18n = $.data( document, 'i18n' );\n\n\t\tif ( !i18n ) {\n\t\t\ti18n = new I18N();\n\t\t\t$.data( document, 'i18n', i18n );\n\t\t}\n\n\t\treturn this.each( function () {\n\t\t\tvar $this = $( this ),\n\t\t\t\tmessageKey = $this.data( 'i18n' ),\n\t\t\t\tlBracket, rBracket, type, key;\n\n\t\t\tif ( messageKey ) {\n\t\t\t\tlBracket = messageKey.indexOf( '[' );\n\t\t\t\trBracket = messageKey.indexOf( ']' );\n\t\t\t\tif ( lBracket !== -1 && rBracket !== -1 && lBracket < rBracket ) {\n\t\t\t\t\ttype = messageKey.slice( lBracket + 1, rBracket );\n\t\t\t\t\tkey = messageKey.slice( rBracket + 1 );\n\t\t\t\t\tif ( type === 'html' ) {\n\t\t\t\t\t\t$this.html( i18n.parse( key ) );\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this.attr( type, i18n.parse( key ) );\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t$this.text( i18n.parse( messageKey ) );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t$this.find( '[data-i18n]' ).i18n();\n\t\t\t}\n\t\t} );\n\t};\n\n\tfunction getDefaultLocale() {\n\t\tvar nav, locale = $( 'html' ).attr( 'lang' );\n\n\t\tif ( !locale ) {\n\t\t\tif ( typeof window.navigator !== undefined ) {\n\t\t\t\tnav = window.navigator;\n\t\t\t\tlocale = nav.language || nav.userLanguage || '';\n\t\t\t} else {\n\t\t\t\tlocale = '';\n\t\t\t}\n\t\t}\n\t\treturn locale;\n\t}\n\n\t$.i18n.languages = {};\n\t$.i18n.messageStore = $.i18n.messageStore || {};\n\t$.i18n.parser = {\n\t\t// The default parser only handles variable substitution\n\t\tparse: function ( message, parameters ) {\n\t\t\treturn message.replace( /\\$(\\d+)/g, function ( str, match ) {\n\t\t\t\tvar index = parseInt( match, 10 ) - 1;\n\t\t\t\treturn parameters[ index ] !== undefined ? parameters[ index ] : '$' + match;\n\t\t\t} );\n\t\t},\n\t\temitter: {}\n\t};\n\t$.i18n.fallbacks = {};\n\t$.i18n.debug = false;\n\t$.i18n.log = function ( /* arguments */ ) {\n\t\tif ( window.console && $.i18n.debug ) {\n\t\t\twindow.console.log.apply( window.console, arguments );\n\t\t}\n\t};\n\t/* Static members */\n\tI18N.defaults = {\n\t\tlocale: getDefaultLocale(),\n\t\tfallbackLocale: 'en',\n\t\tparser: $.i18n.parser,\n\t\tmessageStore: $.i18n.messageStore\n\t};\n\n\t// Expose constructor\n\t$.i18n.constructor = I18N;\n}( jQuery ) );","/*!\n * jQuery idleTimer plugin\n * version 0.9.100511\n * by Paul Irish.\n * http://github.com/paulirish/yui-misc/tree/\n * MIT license\n\n * adapted from YUI idle timer by nzakas:\n * http://github.com/nzakas/yui-misc/\n*/\n/*\n * Copyright (c) 2009 Nicholas C. Zakas\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n/* updated to fix Chrome setTimeout issue by Zaid Zawaideh */\n\n // API available in <= v0.8\n /*******************************\n\n // idleTimer() takes an optional argument that defines the idle timeout\n // timeout is in milliseconds; defaults to 30000\n $.idleTimer(10000);\n\n\n $(document).bind(\"idle.idleTimer\", function(){\n // function you want to fire when the user goes idle\n });\n\n\n $(document).bind(\"active.idleTimer\", function(){\n // function you want to fire when the user becomes active again\n });\n\n // pass the string 'destroy' to stop the timer\n $.idleTimer('destroy');\n\n // you can query if the user is idle or not with data()\n $.data(document,'idleTimer'); // 'idle' or 'active'\n\n // you can get time elapsed since user when idle/active\n $.idleTimer('getElapsedTime'); // time since state change in ms\n\n ********/\n\n\n\n // API available in >= v0.9\n /*************************\n\n // bind to specific elements, allows for multiple timer instances\n $(elem).idleTimer(timeout|'destroy'|'getElapsedTime');\n $.data(elem,'idleTimer'); // 'idle' or 'active'\n\n // if you're using the old $.idleTimer api, you should not do $(document).idleTimer(...)\n\n // element bound timers will only watch for events inside of them.\n // you may just want page-level activity, in which case you may set up\n // your timers on document, document.documentElement, and document.body\n\n // You can optionally provide a second argument to override certain options.\n // Here are the defaults, so you can omit any or all of them.\n $(elem).idleTimer(timeout, {\n startImmediately: true, //starts a timeout as soon as the timer is set up; otherwise it waits for the first event.\n idle: false, //indicates if the user is idle\n enabled: true, //indicates if the idle timer is enabled\n events: 'mousemove keydown DOMMouseScroll mousewheel mousedown touchstart touchmove' // activity is one of these events\n });\n\n ********/\n\n(function($){\n\n$.idleTimer = function(newTimeout, elem, opts){\n\n // defaults that are to be stored as instance props on the elem\n\n\topts = $.extend({\n\t\tstartImmediately: true, //starts a timeout as soon as the timer is set up\n\t\tidle: false, //indicates if the user is idle\n\t\tenabled: true, //indicates if the idle timer is enabled\n\t\ttimeout: 30000, //the amount of time (ms) before the user is considered idle\n\t\tevents: 'mousemove keydown DOMMouseScroll mousewheel mousedown touchstart touchmove' // activity is one of these events\n\t}, opts);\n\n\n elem = elem || document;\n\n /* (intentionally not documented)\n * Toggles the idle state and fires an appropriate event.\n * @return {void}\n */\n var toggleIdleState = function(myelem){\n\n // curse you, mozilla setTimeout lateness bug!\n if (typeof myelem === 'number'){\n myelem = undefined;\n }\n\n var obj = $.data(myelem || elem,'idleTimerObj');\n\n //toggle the state\n obj.idle = !obj.idle;\n\n // reset timeout \n var elapsed = (+new Date()) - obj.olddate;\n obj.olddate = +new Date();\n\n // handle Chrome always triggering idle after js alert or comfirm popup\n if (obj.idle && (elapsed < opts.timeout)) {\n obj.idle = false;\n clearTimeout($.idleTimer.tId);\n if (opts.enabled)\n $.idleTimer.tId = setTimeout(toggleIdleState, opts.timeout);\n return;\n }\n \n //fire appropriate event\n\n // create a custom event, but first, store the new state on the element\n // and then append that string to a namespace\n var event = jQuery.Event( $.data(elem,'idleTimer', obj.idle ? \"idle\" : \"active\" ) + '.idleTimer' );\n\n // we do want this to bubble, at least as a temporary fix for jQuery 1.7\n // event.stopPropagation();\n $(elem).trigger(event);\n },\n\n /**\n * Stops the idle timer. This removes appropriate event handlers\n * and cancels any pending timeouts.\n * @return {void}\n * @method stop\n * @static\n */\n stop = function(elem){\n\n var obj = $.data(elem,'idleTimerObj') || {};\n\n //set to disabled\n obj.enabled = false;\n\n //clear any pending timeouts\n clearTimeout(obj.tId);\n\n //detach the event handlers\n $(elem).off('.idleTimer');\n },\n\n\n /* (intentionally not documented)\n * Handles a user event indicating that the user isn't idle.\n * @param {Event} event A DOM2-normalized event object.\n * @return {void}\n */\n handleUserEvent = function(){\n\n var obj = $.data(this,'idleTimerObj');\n\n //clear any existing timeout\n clearTimeout(obj.tId);\n\n\n\n //if the idle timer is enabled\n if (obj.enabled){\n\n\n //if it's idle, that means the user is no longer idle\n if (obj.idle){\n toggleIdleState(this);\n }\n\n //set a new timeout\n obj.tId = setTimeout(toggleIdleState, obj.timeout);\n\n }\n };\n\n\n /**\n * Starts the idle timer. This adds appropriate event handlers\n * and starts the first timeout.\n * @param {int} newTimeout (Optional) A new value for the timeout period in ms.\n * @return {void}\n * @method $.idleTimer\n * @static\n */\n\n\n var obj = $.data(elem,'idleTimerObj') || {};\n\n obj.olddate = obj.olddate || +new Date();\n\n //assign a new timeout if necessary\n if (typeof newTimeout === \"number\"){\n opts.timeout = newTimeout;\n } else if (newTimeout === 'destroy') {\n stop(elem);\n return this;\n } else if (newTimeout === 'getElapsedTime'){\n return (+new Date()) - obj.olddate;\n }\n\n //assign appropriate event handlers\n $(elem).on($.trim((opts.events+' ').split(' ').join('.idleTimer ')),handleUserEvent);\n\n\n obj.idle = opts.idle;\n obj.enabled = opts.enabled;\n obj.timeout = opts.timeout;\n\n\n //set a timeout to toggle state. May wish to omit this in some situations\n\tif (opts.startImmediately) {\n\t obj.tId = setTimeout(toggleIdleState, obj.timeout);\n\t}\n\n // assume the user is active for the first x seconds.\n $.data(elem,'idleTimer',\"active\");\n\n // store our instance on the object\n $.data(elem,'idleTimerObj',obj);\n\n\n\n}; // end of $.idleTimer()\n\n\n// v0.9 API for defining multiple timers.\n$.fn.idleTimer = function(newTimeout,opts){\n\t// Allow omission of opts for backward compatibility\n\tif (!opts) {\n\t\topts = {};\n\t}\n\n if(this[0]){\n $.idleTimer(newTimeout,this[0],opts);\n }\n\n return this;\n};\n\n\n})(jQuery);\n","/*global variable declarations*/\n\n\"use strict\";\n\nimport \"../css/user-highlights.css\";\n\nfunction getCompletions() {\n // Get the completion status\n if (\n window.location.href.match(\n /(\\/index.html|toctree.html|genindex.html|navhelp.html|toc.html|assignments.html|Exercises.html)/\n )\n ) {\n return;\n }\n\n var currentPathname = window.location.pathname;\n if (currentPathname.indexOf(\"?\") !== -1) {\n currentPathname = currentPathname.substring(\n 0,\n currentPathname.lastIndexOf(\"?\")\n );\n }\n var data = {\n lastPageUrl: currentPathname,\n isPtxBook: isPreTeXt(),\n };\n jQuery\n .ajax({\n url: `${eBookConfig.new_server_prefix}/logger/getCompletionStatus`,\n data: data,\n async: false,\n })\n .done(function (data) {\n if (data != \"None\") {\n var completionData = data.detail;\n var completionClass, completionMsg;\n if (completionData[0].completionStatus == 1) {\n completionClass = \"buttonConfirmCompletion\";\n completionMsg =\n \" Completed. Well Done!\";\n } else {\n completionClass = \"buttonAskCompletion\";\n completionMsg = \"Mark as Completed\";\n }\n let scp = document.querySelector(\"#scprogresscontainer\");\n if (scp) {\n scp.classList.add(\"ptx-runestone-container\");\n }\n $(\"#scprogresscontainer\").append(\n '
    \"\n );\n }\n });\n}\n\nfunction showLastPositionBanner() {\n var lastPositionVal = $.getUrlVar(\"lastPosition\");\n if (typeof lastPositionVal !== \"undefined\") {\n $(\"body\").append(\n ''\n );\n $(\"html, body\").animate({ scrollTop: parseInt(lastPositionVal) }, 1000);\n }\n}\n\nfunction addNavigationAndCompletionButtons() {\n if (\n window.location.href.match(\n /(index.html|genindex.html|navhelp.html|toc.html|assignments.html|Exercises.html|toctree.html)/\n )\n ) {\n return;\n }\n var navLinkBgRightHiddenPosition = -$(\"#navLinkBgRight\").outerWidth() - 5;\n var navLinkBgRightHalfOpen;\n var navLinkBgRightFullOpen = 0;\n\n if ($(\"#completionButton\").hasClass(\"buttonAskCompletion\")) {\n navLinkBgRightHalfOpen = navLinkBgRightHiddenPosition + 70;\n } else if ($(\"#completionButton\").hasClass(\"buttonConfirmCompletion\")) {\n navLinkBgRightHalfOpen = 0;\n }\n var relationsNextIconInitialPosition = $(\"#relations-next\").css(\"right\");\n var relationsNextIconNewPosition = -(navLinkBgRightHiddenPosition + 35);\n\n $(\"#navLinkBgRight\").css(\"right\", navLinkBgRightHiddenPosition).show();\n var navBgShown = false;\n $(window).scroll(function () {\n if (\n $(window).scrollTop() + $(window).height() ==\n $(document).height()\n ) {\n $(\"#navLinkBgRight\").animate(\n { right: navLinkBgRightHalfOpen },\n 200\n );\n $(\"#navLinkBgLeft\").animate({ left: \"0px\" }, 200);\n if ($(\"#completionButton\").hasClass(\"buttonConfirmCompletion\")) {\n $(\"#relations-next\").animate(\n { right: relationsNextIconNewPosition },\n 200\n );\n }\n navBgShown = true;\n } else if (navBgShown) {\n $(\"#navLinkBgRight\").animate(\n { right: navLinkBgRightHiddenPosition },\n 200\n );\n $(\"#navLinkBgLeft\").animate({ left: \"-65px\" }, 200);\n $(\"#relations-next\").animate({\n right: relationsNextIconInitialPosition,\n });\n navBgShown = false;\n }\n });\n\n var completionFlag = 0;\n if ($(\"#completionButton\").hasClass(\"buttonAskCompletion\")) {\n completionFlag = 0;\n } else {\n completionFlag = 1;\n }\n // Make sure we mark this page as visited regardless of how flakey\n // the onunload handlers become.\n processPageState(completionFlag, true, false, false);\n $(\"#completionButton\").on(\"click\", function () {\n var markingComplete = false;\n var markingIncomplete = false;\n if ($(this).hasClass(\"buttonAskCompletion\")) {\n $(this)\n .removeClass(\"buttonAskCompletion\")\n .addClass(\"buttonConfirmCompletion\")\n .html(\n \" Completed. Well Done!\"\n );\n $(\"#navLinkBgRight\").animate({ right: navLinkBgRightFullOpen });\n $(\"#relations-next\").animate({\n right: relationsNextIconNewPosition,\n });\n navLinkBgRightHalfOpen = 0;\n completionFlag = 1;\n markingComplete = true;\n } else if ($(this).hasClass(\"buttonConfirmCompletion\")) {\n $(this)\n .removeClass(\"buttonConfirmCompletion\")\n .addClass(\"buttonAskCompletion\")\n .html(\"Mark as Completed\");\n navLinkBgRightHalfOpen = navLinkBgRightHiddenPosition + 70;\n $(\"#navLinkBgRight\").animate({ right: navLinkBgRightHalfOpen });\n $(\"#relations-next\").animate({\n right: relationsNextIconInitialPosition,\n });\n completionFlag = 0;\n markingIncomplete = true;\n }\n processPageState(\n completionFlag,\n false,\n markingComplete,\n markingIncomplete\n );\n });\n\n // we cannot afford to do this at both load and unload especially as users\n // go from page to page. This just doubles the load. So, try without this one.\n // $(window).on(\"beforeunload\", function (e) {\n // if (completionFlag == 0) {\n // processPageState(completionFlag, false, false, false);\n // }\n // });\n}\n\n// _ decorateTableOfContents\n// -------------------------\nfunction decorateTableOfContents() {\n if (\n window.location.href.toLowerCase().indexOf(\"toc.html\") != -1 ||\n window.location.href.toLowerCase().indexOf(\"index.html\") != -1 ||\n window.location.href.toLowerCase().indexOf(\"frontmatter\") != -1\n ) {\n if (!isPreTeXt()) {\n jQuery.get(\n `${eBookConfig.new_server_prefix}/logger/getAllCompletionStatus`,\n function (data) {\n var subChapterList;\n if (data != \"None\") {\n subChapterList = data.detail;\n\n var allSubChapterURLs = $(\"#main-content div li a\");\n $.each(subChapterList, function (index, item) {\n for (var s = 0; s < allSubChapterURLs.length; s++) {\n if (\n allSubChapterURLs[s].href.indexOf(\n item.chapterName +\n \"/\" +\n item.subChapterName\n ) != -1\n ) {\n if (item.completionStatus == 1) {\n $(allSubChapterURLs[s].parentElement)\n .addClass(\"completed\")\n .append(\n '- Completed this topic on ' +\n item.endDate +\n \"\"\n )\n .children()\n .first()\n .hover(\n function () {\n $(this)\n .next(\n \".infoTextCompleted\"\n )\n .show();\n },\n function () {\n $(this)\n .next(\n \".infoTextCompleted\"\n )\n .hide();\n }\n );\n } else if (item.completionStatus == 0) {\n $(allSubChapterURLs[s].parentElement)\n .addClass(\"active\")\n .append(\n 'Last read this topic on ' +\n item.endDate +\n \"\"\n )\n .children()\n .first()\n .hover(\n function () {\n $(this)\n .next(\".infoTextActive\")\n .show();\n },\n function () {\n $(this)\n .next(\".infoTextActive\")\n .hide();\n }\n );\n }\n }\n }\n });\n }\n }\n );\n }\n var data = { course: eBookConfig.course };\n jQuery.get(\n `${eBookConfig.new_server_prefix}/logger/getlastpage`,\n data,\n function (data) {\n var lastPageData;\n if (data != \"None\") {\n lastPageData = data.detail;\n if (lastPageData.lastPageChapter != null) {\n $(\"#continue-reading\")\n .show()\n .html(\n '
    '\n );\n }\n }\n }\n );\n }\n}\n\nfunction enableCompletions() {\n getCompletions();\n showLastPositionBanner();\n addNavigationAndCompletionButtons();\n decorateTableOfContents();\n}\n\n// call enable user highlights after login\n$(document).on(\"runestone:login\", enableCompletions);\n\nfunction isPreTeXt() {\n let ptxMarker = document.querySelector(\"body.pretext\");\n if (ptxMarker) {\n return true;\n } else {\n return false;\n }\n}\n// _ processPageState\n// -------------------------\nfunction processPageState(\n completionFlag,\n pageLoad,\n markingComplete,\n markingIncomplete\n) {\n /*Log last page visited*/\n var currentPathname = window.location.pathname;\n if (currentPathname.indexOf(\"?\") !== -1) {\n currentPathname = currentPathname.substring(\n 0,\n currentPathname.lastIndexOf(\"?\")\n );\n }\n // Is this a ptx book?\n let isPtxBook = isPreTeXt();\n var data = {\n lastPageUrl: currentPathname,\n lastPageScrollLocation: Math.round($(window).scrollTop()),\n completionFlag: completionFlag,\n pageLoad: pageLoad,\n markingComplete: markingComplete,\n markingIncomplete: markingIncomplete,\n course: eBookConfig.course,\n isPtxBook: isPtxBook,\n };\n $(document).ajaxError(function (e, jqhxr, settings, exception) {\n console.log(\"Request Failed for \" + settings.url);\n console.log(e);\n });\n jQuery.ajax({\n url: `${eBookConfig.new_server_prefix}/logger/updatelastpage`,\n contentType: \"application/json; charset=utf-8\",\n dataType: \"json\",\n data: JSON.stringify(data),\n method: \"POST\",\n async: true,\n });\n}\n\n$.extend({\n getUrlVars: function () {\n var vars = [],\n hash;\n var hashes = window.location.search\n .slice(window.location.search.indexOf(\"?\") + 1)\n .split(\"&\");\n for (var i = 0; i < hashes.length; i++) {\n hash = hashes[i].split(\"=\");\n vars.push(hash[0]);\n vars[hash[0]] = hash[1];\n }\n return vars;\n },\n getUrlVar: function (name) {\n return $.getUrlVars()[name];\n },\n});\n","/*\n Support functions for PreTeXt books running on Runestone\n\n*/\n\nimport RunestoneBase from \"./runestonebase.js\";\n\nfunction setupPTXEvents() {\n let rb = new RunestoneBase();\n // log an event when a knowl is opened.\n document.querySelectorAll(\"[data-knowl]\").forEach((el) => {\n el.addEventListener(\"click\", function () {\n let div_id = el.getAttribute(\"data-knowl\");\n rb.logBookEvent({ event: \"knowl\", act: \"click\", div_id: div_id });\n });\n });\n let born_hidden = document.querySelectorAll(\"details.born-hidden-knowl\");\n born_hidden.forEach((el) => {\n // log an event when a knowl is opened that was born hidden\n el.addEventListener(\"toggle\", function () {\n if (el.open) {\n let div_id = el.id;\n rb.logBookEvent({ event: \"knowl\", act: \"open\", div_id: div_id });\n }\n });\n });\n // log an event when a sage cell is evaluated\n document.querySelectorAll(\".sagecell_evalButton\").forEach((btn) => {\n btn.addEventListener(\"click\", function () {\n let container = btn.closest(\".sagecell-sage\");\n let codeInput = container ? container.querySelector(\".sagecell_input\") : null;\n let code = codeInput ? codeInput.textContent : \"\";\n rb.logBookEvent({ event: \"sage\", act: \"run\", div_id: container ? container.id : null });\n });\n });\n if (typeof eBookConfig !== \"undefined\" && !eBookConfig.isInstructor) {\n document.querySelectorAll(\".commentary\").forEach((el) => {\n el.style.display = \"none\";\n });\n }\n}\n\nwindow.addEventListener(\"load\", function () {\n console.log(\"setting up pretext\");\n setupPTXEvents();\n let wrap = document.getElementById(\"primary-navbar-sticky-wrapper\");\n if (wrap) {\n wrap.style.overflow = \"visible\";\n }\n});\n","import RunestoneBase from \"../../common/js/runestonebase.js\";\n\nexport class SpliceWrapper extends RunestoneBase {\n constructor() {\n super();\n this.initSplice();\n }\n\n initSplice() {\n // SPLICE Events\n window.addEventListener(\"message\", async (event) => {\n \n var sourceIframe = this.sendingIframe(event);\n console.log(`SpliceWrapper: received message subject: ${event.data.subject} from iframe: ${sourceIframe ? sourceIframe.id : \"unknown\"}`);\n if (event.data.subject == \"SPLICE.reportScoreAndState\") {\n this.handleScoreAndState(event, sourceIframe);\n } else if (event.data.subject == \"SPLICE.sendEvent\") {\n this.handleSpliceEvent(event, sourceIframe);\n } else if (event.data.subject == \"SPLICE.getState\") {\n await this.handleGetState(event, sourceIframe);\n } else if (\n event.origin === \"https://www.myopenmath.com\" &&\n typeof event.data === \"string\" &&\n event.data.indexOf(\"lti.ext.imathas.result\") != -1\n ) {\n // proof of concept for My Open Math\n let msgdata = JSON.parse(event.data);\n let jwt = basicParseJwt(msgdata.jwt);\n console.log(\n \"Result received from frame \" +\n msgdata.frame_id +\n \" with score \" +\n jwt.score\n );\n // todo send score to server\n // does MOM have a way to get the state?\n // todo send state to server\n }\n });\n }\n\n getUniqueID(event, frame) {\n // Determine the unique identifier for this activity\n // The SPLICE protocol allows for two possibilities\n // 1. activity_id is the unique id as assigned by the provider\n // 2. activity_id is the iframe src url\n // if the activity_id is set there may also be another attribute called domain\n // On Runestone we will try to map the activity to the div_id of the enclosing RS component\n // if possible, otherwise we will use the activity_id or iframe src\n // If an interactive is included in an exercises this allows us to map the score\n // to the id the instructor used to assign the problem.\n if (frame) {\n let rsDiv = frame.closest(\"[data-component]\");\n if (rsDiv) {\n return rsDiv.id;\n }\n }\n let location = event.data.activity_id;\n if (!location) {\n if (frame) {\n location = frame.src;\n } else {\n location = \"unknown\";\n console.error(\n \"Could not find iframe that sent the SPLICE event\"\n );\n }\n }\n return location;\n }\n\n handleScoreAndState(event, frame) {\n console.log(\"Got SPLICE.reportScoreAndState\");\n console.log(event.data.activity_id);\n console.log(event.data.score);\n console.log(event.data.state);\n let location = this.getUniqueID(event, frame);\n this.logBookEvent({\n event: event.data.subject,\n div_id: location,\n act: `score: ${event.data.score}`,\n score: event.data.score,\n percent: event.data.score,\n correct: event.data.score == 1.0 ? true : false,\n answer: JSON.stringify(event.data.state),\n });\n }\n\n sendingIframe(event) {\n // determine the iframe that sent the event\n // you would think that event.source would be the iframe\n // but it is not and getting the location out of event.source\n // creates CORS issues.\n for (const f of document.getElementsByTagName(\"iframe\")) {\n if (f.contentWindow === event.source) return f;\n }\n return undefined;\n }\n\n async getSavedState(location) {\n // fetch the state from the server\n try {\n const response = await fetch(\"/ns/assessment/results\", {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({\n div_id: location,\n course: eBookConfig.course,\n event: \"SPLICE.getState\",\n }),\n });\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n const data = await response.json();\n return data;\n } catch (error) {\n console.error(\"Error fetching SPLICE state:\", error);\n return null;\n }\n }\n\n async handleGetState(event, frame) {\n console.log(\"Got SPLICE.getState\");\n console.log(event.data.activity_id);\n console.log(event.data.state);\n // subject is SPLICE.getState.response\n let location = this.getUniqueID(event, frame);\n let res = await this.getSavedState(location);\n let state = res.detail.answer;\n event.source.postMessage(\n {\n message_id: event.data.message_id,\n subject: \"SPLICE.getState.response\",\n state: state,\n },\n \"*\"\n );\n }\n\n handleSpliceEvent(event, frame) {\n // handle generic SPLICE events, such as logged clicks\n // or other events. SPLICE does not require that we do\n // anything with them, but in keeping with our tradition\n // we will save them to the useinfo table in the database\n // in case they prove to be useful for research later\n console.log(\"Got SPLICE.sendEvent\");\n console.log(event.data.activity_id);\n console.log(event.data.name);\n //console.log(event.data.data);\n let location = this.getUniqueID(event, frame);\n this.logBookEvent({\n event: event.data.subject,\n div_id: location,\n act: event.data.name || \"unknown\",\n });\n }\n // these stubs are not implemented, but are required by the RunestoneBase class\n checkLocalStorage() {}\n setLocalStorage() {}\n restoreAnswers() {}\n disableInteraction() {}\n}\n\nfunction basicParseJwt(token) {\n var base64Url = token.split(\".\")[1];\n var base64 = base64Url.replace(/-/g, \"+\").replace(/_/g, \"/\");\n var jsonPayload = decodeURIComponent(\n window\n .atob(base64)\n .split(\"\")\n .map(function (c) {\n return \"%\" + (\"00\" + c.charCodeAt(0).toString(16)).slice(-2);\n })\n .join(\"\")\n );\n return JSON.parse(jsonPayload);\n}\n","// ***********************************************************************************\n// |docname| - A framework allowing a Runestone component to load only the JS it needs\n// ***********************************************************************************\n// The JavaScript required by all Runestone components is quite large and results in slow page loads. This approach enables a Runestone component to load only the JavaScript it needs, rather than loading JavaScript for all the components regardless of which are actually used.\n//\n// To accomplish this, webpack's split-chunks ability analyzes all JS, starting from this file. The dynamic imports below are transformed by webpack into the dynamic fetches of just the JS required by each file and all its dependencies. (If using static imports, webpack will assume that all files are already statically loaded via script tags, defeating the purpose of this framework.)\n//\n// However, this approach leads to complexity:\n//\n// - The ``data-component`` attribute of each component must be kept in sync with the keys of the ``module_map`` below.\n// - The values in the ``module_map`` must be kept in sync with the JavaScript files which implement each of the components.\n\n// Static imports\n// ==============\n// These imports are (we assume) needed by all pages. However, it would be much better to load these in the modules that actually use them.\n//\n// These are static imports; code in `dynamically loaded components`_ deals with dynamic imports.\n//\n// jQuery-related imports.\nimport \"jquery-ui/jquery-ui.js\";\nimport \"jquery-ui/themes/base/jquery.ui.all.css\";\nimport \"./runestone/common/js/jquery.idle-timer.js\";\nimport \"./runestone/common/js/jquery_i18n/jquery.i18n.js\";\nimport \"./runestone/common/js/jquery_i18n/jquery.i18n.emitter.bidi.js\";\nimport \"./runestone/common/js/jquery_i18n/jquery.i18n.emitter.js\";\nimport \"./runestone/common/js/jquery_i18n/jquery.i18n.fallbacks.js\";\nimport \"./runestone/common/js/jquery_i18n/jquery.i18n.messagestore.js\";\nimport \"./runestone/common/js/jquery_i18n/jquery.i18n.parser.js\";\nimport \"./runestone/common/js/jquery_i18n/jquery.i18n.language.js\";\n\n// Bootstrap - not needed for pxx development\nimport \"bootstrap/dist/js/bootstrap.js\";\n\n// common styles come from here\nimport \"./ptxrs-bootstrap.less\";\nimport \"./runestone/common/project_template/_templates/plugin_layouts/sphinx_bootstrap/static/bootstrap-sphinx.js\";\n\n// Misc\nimport \"./runestone/common/js/bookfuncs.js\";\nimport \"./runestone/common/js/user-highlights.js\";\nimport \"./runestone/common/js/pretext.js\";\n\n// These belong in dynamic imports for the obvious component; however, these components don't include a ``data-component`` attribute.\nimport \"./runestone/matrixeq/css/matrixeq.css\";\nimport \"./runestone/webgldemo/css/webglinteractive.css\";\n\n// These are only needed for the Runestone book, but not in a library mode (such as pretext). I would prefer to dynamically load them. However, these scripts are so small I haven't bothered to do so.\nimport { getSwitch, switchTheme } from \"./runestone/common/js/theme.js\";\nimport \"./runestone/common/js/presenter_mode.js\";\nimport \"./runestone/common/css/presenter_mode.less\";\nimport { renderOneComponent } from \"./runestone/common/js/renderComponent.js\";\nimport RunestoneBase from \"./runestone/common/js/runestonebase.js\";\nimport { SpliceWrapper } from \"./runestone/splice/js/spliceWrapper.js\";\n\n// Dynamically loaded components\n// =============================\n// This provides a list of modules that components can dynamically import. Webpack will create a list of imports for each based on its analysis.\nconst module_map = {\n // Wrap each import in a function, so that it won't occur until the function is called. While something cleaner would be nice, webpack can't analyze things like ``import(expression)``.\n //\n // The keys must match the value of each component's ``data-component`` attribute -- the ``runestone_import`` and ``runestone_auto_import`` functions assume this.\n activecode: () => import(\"./runestone/activecode/js/acfactory.js\"),\n ble: () => import(\"./runestone/cellbotics/js/ble.js\"),\n // Always import the timed version of a component if available, since the timed components also define the component's factory and include the component as well. Note that ``acfactory`` imports the timed components of ActiveCode, so it follows this pattern.\n clickablearea: () =>\n import(\"./runestone/clickableArea/js/timedclickable.js\"),\n codelens: () => import(\"./runestone/codelens/js/codelens.js\"),\n datafile: () => import(\"./runestone/datafile/js/datafile.js\"),\n dragndrop: () => import(\"./runestone/dragndrop/js/timeddnd.js\"),\n fillintheblank: () => import(\"./runestone/fitb/js/timedfitb.js\"),\n groupsub: () => import(\"./runestone/groupsub/js/groupsub.js\"),\n khanex: () => import(\"./runestone/khanex/js/khanex.js\"),\n lp_build: () => import(\"./runestone/lp/js/lp.js\"),\n matching: () => import(\"./runestone/matching/js/matching.js\"),\n multiplechoice: () => import(\"./runestone/mchoice/js/timedmc.js\"),\n hparsons: () => import(\"./runestone/hparsons/js/hparsons.js\"),\n parsons: () => import(\"./runestone/parsons/js/timedparsons.js\"),\n poll: () => import(\"./runestone/poll/js/poll.js\"),\n quizly: () => import(\"./runestone/quizly/js/quizly.js\"),\n reveal: () => import(\"./runestone/reveal/js/reveal.js\"),\n selectquestion: () => import(\"./runestone/selectquestion/js/selectone.js\"),\n shortanswer: () =>\n import(\"./runestone/shortanswer/js/timed_shortanswer.js\"),\n showeval: () => import(\"./runestone/showeval/js/showEval.js\"),\n simple_sensor: () => import(\"./runestone/cellbotics/js/simple_sensor.js\"),\n spreadsheet: () => import(\"./runestone/spreadsheet/js/spreadsheet.js\"),\n tabbedStuff: () => import(\"./runestone/tabbedStuff/js/tabbedstuff.js\"),\n timedAssessment: () => import(\"./runestone/timed/js/timed.js\"),\n wavedrom: () => import(\"./runestone/wavedrom/js/wavedrom.js\"),\n // TODO: since this isn't in a ``data-component``, need to trigger an import of this code manually.\n webwork: () => import(\"./runestone/webwork/js/webwork.js\"),\n youtube: () => import(\"./runestone/video/js/runestonevideo.js\"),\n doenet: () => Promise.resolve(), // Doenet is loaded separately\n};\n\nconst module_map_cache = {};\nconst QUEUE_FLUSH_TIME_MS = 10;\nconst queue = [];\nlet queueLastFlush = 0;\n/**\n * Queue imports that are requested within `QUEUE_FLUSH_TIME_MS` of each other.\n * All such imports are imported at once, and then a promise is fired after all\n * the imports in the queue window have completed.\n */\nfunction queueImport(component_name) {\n let resolve = null;\n let reject = null;\n const retPromise = new Promise((r, rej) => {\n resolve = r;\n reject = rej;\n });\n const item = { component_name, resolve, reject };\n queue.push(item);\n window.setTimeout(flushQueue, QUEUE_FLUSH_TIME_MS + 1);\n\n return retPromise;\n}\nasync function flushQueue() {\n if (queue.length === 0) {\n return;\n }\n if (Date.now() - queueLastFlush < QUEUE_FLUSH_TIME_MS) {\n window.setTimeout(flushQueue, QUEUE_FLUSH_TIME_MS + 1);\n return;\n }\n // If we made it here, it has been at least QUEUE_FLUSH_TIME_MS since\n // the last time we flushed the queue. Therefore, we should start flushing.\n // We copy everything we flush and empty the array first.\n queueLastFlush = Date.now();\n const toFlush = [...queue];\n queue.length = 0;\n console.log(\n \"Webpack is starting the loading process for the following Runestone modules\",\n toFlush.map((item) => item.component_name)\n );\n const flushedPromise = toFlush.map(async (item) => {\n try {\n await module_map[item.component_name]();\n console.log(\n `Runestone component ${item.component_name} has been loaded`\n );\n return item;\n } catch (e) {\n item.reject(e);\n }\n });\n const flushed = await Promise.all(flushedPromise);\n try {\n flushed.forEach(function (item) {\n if (item) {\n item.resolve();\n }\n });\n } catch (e) {\n console.error(e);\n }\n}\n\n// .. _dynamic import machinery:\n//\n// Dynamic import machinery\n// ========================\n// Fulfill a promise when the Runestone pre-login complete event occurs.\nlet pre_login_complete_promise = new Promise((resolve) =>\n $(document).on(\"runestone:pre-login-complete\", resolve)\n);\nlet loadedComponents;\n// Provide a simple function to import the JS for all components on the page.\nexport function runestone_auto_import() {\n // Create a set of ``data-component`` values, to avoid duplication.\n const s = new Set(\n // All Runestone components have a ``data-component`` attribute.\n $(\"[data-component]\")\n .map(\n // Extract the value of the data-component attribute.\n (index, element) => $(element).attr(\"data-component\")\n // Switch from a jQuery object back to an array, passing that to the Set constructor.\n )\n .get()\n );\n // webwork questions are not wrapped in div with a data-component so we have to check a different way\n if (document.querySelector(\".webwork-button\")) {\n s.add(\"webwork\");\n }\n\n // Load JS for each of the components found.\n const a = [...s].map((value) => {\n let z;\n console.log(`Loading Runestone component: ${value}`);\n try {\n z = (module_map[value] || (() => Promise.resolve()))();\n } catch (e) {\n console.error(`Error loading ${value}:`, e);\n }\n z.error = (msg) => console.error(`Error in ${value}:`, msg);\n return z;\n });\n\n // Send the Runestone login complete event when all JS is loaded and the pre-login is also complete.\n Promise.all([pre_login_complete_promise, ...a]).then(function () {\n if (!document.body.dataset.reactInUse) {\n document.dispatchEvent(new CustomEvent(\"runestone:login-complete\"));\n }\n });\n}\n\npre_login_complete_promise.then(() => {\n console.log(\"Runestone pre-login complete\");\n});\n\n// Load component JS when the document is ready.\n$(document).ready(runestone_auto_import);\n\n// Provide a function to import one specific `Runestone` component.\n// the import function inside module_map is async -- runestone_import\n// should be awaited when necessary to ensure the import completes\nexport async function runestone_import(component_name) {\n if (module_map_cache[component_name]) {\n return module_map_cache[component_name];\n }\n console.log(\n `Runestone component ${component_name} is being queued for import`\n );\n const promise = queueImport(component_name);\n module_map_cache[component_name] = promise;\n return promise;\n}\n\nasync function popupScratchAC() {\n // load the activecode bundle\n await runestone_import(\"activecode\");\n // scratchDiv will be defined if we have already created a scratch\n // activecode. If its not defined then we need to get it ready to toggle\n if (!eBookConfig.scratchDiv) {\n window.ACFactory.createScratchActivecode();\n let divid = eBookConfig.scratchDiv;\n window.componentMap[divid] = ACFactory.createActiveCode(\n $(`#${divid}`)[0],\n eBookConfig.acDefaultLanguage\n );\n if (eBookConfig.isLoggedIn) {\n window.componentMap[divid].enableSaveLoad();\n }\n }\n setTimeout(() => {\n window.ACFactory.toggleScratchActivecode();\n }, 100);\n}\n\n// Set the directory containing this script as the `path `_ for all webpacked scripts.\nconst script_src = document.currentScript.src;\n__webpack_public_path__ = script_src.substring(\n 0,\n script_src.lastIndexOf(\"/\") + 1\n);\n\nvar splice = new SpliceWrapper();\n\n// Manual exports\n// ==============\n// Webpack's ``output.library`` setting doesn't seem to work with the split chunks plugin; do all exports manually through the ``window`` object instead.\n\nconst rc = {};\nrc.runestone_import = runestone_import;\nrc.runestone_auto_import = runestone_auto_import;\nrc.getSwitch = getSwitch;\nrc.switchTheme = switchTheme;\nrc.popupScratchAC = popupScratchAC;\nrc.renderOneComponent = renderOneComponent;\nwindow.componentMap = {};\nwindow.runestoneComponents = rc;\n","export function getSwitch() {\n const toggleSwitch = document.querySelector('.theme-switch input[type=\"checkbox\"]');\n const currentTheme = localStorage.getItem('theme') ? localStorage.getItem('theme') : null;\n\n if (currentTheme) {\n document.documentElement.setAttribute('data-theme', currentTheme);\n\n if (currentTheme === 'dark') {\n toggleSwitch.checked = true;\n }\n }\n}\n\nexport function switchTheme() {\n\n\tvar checkBox = document.getElementById(\"checkbox\");\n if (checkBox.checked == true) {\n document.documentElement.setAttribute('data-theme', 'dark');\n localStorage.setItem('theme', 'dark'); //add this\n }\n else {\n document.documentElement.setAttribute('data-theme', 'light');\n localStorage.setItem('theme', 'light'); //add this\n }\n}\n","/* ********************************\n * |docname| - Runestone Base Class\n * ********************************\n * All runestone components should inherit from RunestoneBase. In addition all runestone components should do the following things:\n *\n * 1. Ensure that they are wrapped in a div with the class runestone\n * 2. Write their source AND their generated html to the database if the database is configured\n * 3. Properly save and restore their answers using the checkServer mechanism in this base class. Each component must provide an implementation of:\n *\n * - checkLocalStorage\n * - setLocalStorage\n * - restoreAnswers\n * - disableInteraction\n *\n * 4. provide a Selenium based unit test\n */\n\nimport { pageProgressTracker } from \"./bookfuncs.js\";\n//import \"./../styles/runestone-custom-sphinx-bootstrap.css\";\n\nvar NO_DECORATE = [\"parsonsMove\", \"showeval\", \"video\", \"poll\", \"view_toggle\",\n \"dashboard\", \"selectquestion\", \"codelens\", \"peer\", \"shortanswer\"]\nexport default class RunestoneBase {\n constructor(opts) {\n this.component_ready_promise = new Promise(\n (resolve) => (this._component_ready_resolve_fn = resolve)\n );\n this.optional = false;\n if (typeof window.allComponents === \"undefined\") {\n window.allComponents = [];\n }\n window.allComponents.push(this);\n if (opts) {\n this.sid = opts.sid;\n this.graderactive = opts.graderactive;\n this.showfeedback = true;\n if (opts.timed) {\n this.isTimed = true;\n }\n if (opts.enforceDeadline) {\n this.deadline = opts.deadline;\n }\n this.optional = this.parseBooleanAttribute(opts.orig, \"data-optional\");\n if (opts.selector_id) {\n this.selector_id = opts.selector_id;\n }\n if (typeof opts.assessmentTaken !== \"undefined\") {\n this.assessmentTaken = opts.assessmentTaken;\n } else {\n // default to true as this opt is only provided from a timedAssessment\n this.assessmentTaken = true;\n }\n // This is for the selectquestion points\n // If a selectquestion is part of a timed exam it will get\n // the timedWrapper options.\n if (typeof opts.timedWrapper !== \"undefined\") {\n this.timedWrapper = opts.timedWrapper;\n } else {\n // However sometimes selectquestions\n // are used in regular assignments. The hacky way to detect this\n // is to look for doAssignment in the URL and then grab\n // the assignment name from the heading.\n if (location.href.indexOf(\"doAssignment\") >= 0) {\n this.timedWrapper = $(\"h1#assignment_name\").text();\n } else {\n this.timedWrapper = null;\n }\n }\n if ($(opts.orig).data(\"question_label\")) {\n this.question_label = $(opts.orig).data(\"question_label\");\n }\n this.is_toggle = true ? opts.is_toggle : false;\n this.is_select = true ? opts.is_select : false;\n }\n this.mjelements = [];\n let self = this;\n this.mjReady = new Promise(function (resolve, reject) {\n self.mjresolver = resolve;\n });\n this.aQueue = new AutoQueue();\n if (opts && typeof opts.preamble !== \"undefined\") {\n this.preamble = opts.preamble;\n let y = document.createElement(\"div\");\n y.classList.add(\"hidden-content\");\n y.classList.add(\"process-math\");\n y.innerHTML = \"\\\\(\" + this.preamble + \"\\\\)\";\n // This is a hack to get the preamble into the DOM so that MathJax can process it.\n opts.orig.appendChild(y);\n y.id = \"ltx_preamble\";\n y.style.display = \"none\";\n // Add the preamble to the queue object so it can prepend it to\n // future MathJax processing\n this.aQueue.preamble = y\n }\n\n this.jsonHeaders = new Headers({\n \"Content-type\": \"application/json; charset=utf-8\",\n Accept: \"application/json\",\n });\n }\n\n // Helper for parsing boolean data-* attributes\n // Unset/\"false\"/\"no\" means false, anything else, including empty string means true\n parseBooleanAttribute(element, attributeName) {\n const attrValue = element.getAttribute(attributeName);\n if (attrValue === null) {\n return false;\n }\n const lowerValue = attrValue.toLowerCase();\n if (lowerValue === \"false\" || lowerValue === \"no\") {\n return false;\n }\n return true;\n }\n\n // _`logBookEvent`\n //----------------\n // This function sends the provided ``eventInfo`` to the `hsblog endpoint` of the server. Awaiting this function returns either ``undefined`` (if Runestone services are not available) or the data returned by the server as a JavaScript object (already JSON-decoded).\n async logBookEvent(eventInfo) {\n if (this.graderactive) {\n return;\n }\n let post_return;\n eventInfo.course_name = eBookConfig.course;\n eventInfo.clientLoginStatus = eBookConfig.isLoggedIn;\n eventInfo.timezoneoffset = new Date().getTimezoneOffset() / 60;\n // For selectquestions we need to log using the selector_id for real time scoring\n if (this.selector_id) {\n eventInfo.selector_id = this.selector_id;\n }\n if (typeof this.percent === \"number\") {\n eventInfo.percent = this.percent;\n }\n if (window.assignmentId) {\n eventInfo.assignment_id = window.assignmentId;\n }\n if (\n eBookConfig.isLoggedIn &&\n eBookConfig.useRunestoneServices &&\n eBookConfig.logLevel > 0\n ) {\n post_return = this.postLogMessage(eventInfo);\n }\n if (!this.isTimed || eBookConfig.debug) {\n let prefix = eBookConfig.isLoggedIn ? \"Save\" : \"Not\";\n console.log(`${prefix} logging event ` + JSON.stringify(eventInfo));\n }\n // When selectquestions are part of an assignment especially toggle questions\n // we need to count using the selector_id of the select question.\n // We also need to log an event for that selector so that we will know\n // that interaction has taken place. This is **independent** of how the\n // autograder will ultimately grade the question!\n if (this.selector_id) {\n eventInfo.div_id = this.selector_id.replace(\n \"-toggleSelectedQuestion\",\n \"\"\n );\n eventInfo.event = \"selectquestion\";\n eventInfo.act = \"interaction\";\n this.postLogMessage(eventInfo);\n }\n if (\n typeof pageProgressTracker.updateProgress === \"function\" &&\n eventInfo.act != \"edit\" &&\n this.optional == false\n ) {\n pageProgressTracker.updateProgress(eventInfo.div_id);\n }\n // if the event is in the NO_DECORATE list then don't decorate the status\n if (NO_DECORATE.indexOf(eventInfo.event) === -1) {\n this.decorateStatus();\n }\n return post_return;\n }\n\n async postLogMessage(eventInfo) {\n var post_return;\n let request = new Request(\n `${eBookConfig.new_server_prefix}/logger/bookevent`,\n {\n method: \"POST\",\n headers: this.jsonHeaders,\n body: JSON.stringify(eventInfo),\n }\n );\n try {\n var response = await fetch(request);\n if (!response.ok) {\n if (response.status === 422) {\n // Get details about why this is unprocesable.\n post_return = await response.json();\n console.log(JSON.stringify(post_return.detail, null, 4));\n throw new Error(\"Unprocessable Request\");\n } else if (response.status == 401) {\n post_return = await response.json();\n console.log(\n `Missing authentication token ${post_return.detail}`\n );\n throw new Error(\"Missing authentication token\");\n }\n throw new Error(`Failed to save the log entry\n Status: ${response.status}`);\n }\n post_return = await response.json();\n let scoreSpec = post_return.detail;\n let gradeBox = null;\n if (this.selector_id) {\n let selector_id = this.selector_id.replace(\n \"-toggleSelectedQuestion\",\n \"\"\n );\n gradeBox = document.getElementById(`${selector_id}_score`);\n } else {\n gradeBox = document.getElementById(`${this.divid}_score`);\n }\n if (gradeBox && !this.isTimed && scoreSpec.score) {\n this.updateScores(gradeBox, scoreSpec);\n }\n } catch (e) {\n let detail = \"none\";\n if (post_return && post_return.detail) {\n detail = post_return.detail;\n }\n if (eBookConfig.useRunestoneServices) {\n alert(`Error: Your action was not saved!\n The error was ${e}\n Status Code: ${response.status}\n Detail: ${JSON.stringify(detail, null, 4)}.\n Please report this error!`);\n }\n // send a request to save this error\n console.log(\n `Error: ${e} Detail: ${detail} Status Code: ${response.status}`\n );\n }\n return post_return;\n }\n // update the score for the question and the total score\n // the presence of the gradeBox is used to determine if we are on an assignment page.\n updateScores(gradeBox, scoreSpec) {\n if (!scoreSpec.assigned || scoreSpec.score === null) {\n document.getElementById(`${this.divid}_message`).innerHTML = \"Score not updated. Submissions are closed.\";\n return;\n }\n let scoreSpan = gradeBox.getElementsByClassName(\"qscore\")[0];\n if (scoreSpan) {\n scoreSpan.innerHTML = scoreSpec.score.toFixed(1);\n }\n let allScores = document.getElementsByClassName(\"qscore\");\n let allmax = document.getElementsByClassName(\"qmaxscore\");\n let total = 0;\n let max = 0;\n for (let i = 0; i < allScores.length; i++) {\n total += parseFloat(allScores[i].innerHTML);\n max += parseFloat(allmax[i].innerHTML);\n }\n let totalSpan = document.getElementById(\"total_score\");\n if (totalSpan) {\n totalSpan.innerHTML = total.toFixed(1);\n }\n let maxSpan = document.getElementById(\"total_max\");\n if (maxSpan) {\n maxSpan.innerHTML = max;\n }\n let percentSpan = document.getElementById(\"total_percent\");\n if (percentSpan) {\n percentSpan.innerHTML = ((total / max) * 100).toFixed(2);\n }\n }\n\n // .. _logRunEvent:\n //\n // logRunEvent\n // -----------\n // This function sends the provided ``eventInfo`` to the `runlog endpoint`. When awaited, this function returns the data (decoded from JSON) the server sent back.\n async logRunEvent(eventInfo) {\n let post_promise = \"done\";\n if (this.graderactive) {\n return;\n }\n eventInfo.course = eBookConfig.course;\n eventInfo.clientLoginStatus = eBookConfig.isLoggedIn;\n eventInfo.timezoneoffset = new Date().getTimezoneOffset() / 60;\n if (this.forceSave || \"to_save\" in eventInfo === false) {\n eventInfo.save_code = \"True\";\n }\n if (typeof eventInfo.errinfo !== \"undefined\") {\n eventInfo.errinfo = eventInfo.errinfo.toString();\n }\n if (\n eBookConfig.isLoggedIn &&\n eBookConfig.useRunestoneServices &&\n eBookConfig.logLevel > 0\n ) {\n let request = new Request(\n `${eBookConfig.new_server_prefix}/logger/runlog`,\n {\n method: \"POST\",\n headers: this.jsonHeaders,\n body: JSON.stringify(eventInfo),\n }\n );\n let response = await fetch(request);\n if (!response.ok) {\n post_promise = await response.json();\n if (eBookConfig.useRunestoneServices) {\n alert(`Failed to save your code\n Status is ${response.status}\n Detail: ${JSON.stringify(\n post_promise.detail,\n null,\n 4\n )}`);\n } else {\n console.log(\n `Did not save the code.\n Status: ${response.status}\n Detail: ${JSON.stringify(\n post_promise.detail,\n null,\n 4\n )}`\n );\n }\n } else {\n post_promise = await response.json();\n }\n }\n if (!this.isTimed || eBookConfig.debug) {\n console.log(\"running \" + JSON.stringify(eventInfo));\n }\n if (\n typeof pageProgressTracker.updateProgress === \"function\" &&\n this.optional == false\n ) {\n pageProgressTracker.updateProgress(eventInfo.div_id);\n }\n return post_promise;\n }\n /* Checking/loading from storage\n **WARNING:** DO NOT `await` this function!\n This function, although async, does not explicitly resolve its promise by returning a value. The reason for this is because it is called by the constructor for nearly every component. In Javascript constructors cannot be async!\n\n One of the recommended ways to handle the async requirements from within a constructor is to use an attribute as a promise and resolve that attribute at the appropriate time.\n */\n async checkServer(\n // A string specifying the event name to use for querying the :ref:`getAssessResults` endpoint.\n eventInfo,\n // If true, this function will invoke ``indicate_component_ready()`` just before it returns. This is provided since most components are ready after this function completes its work.\n //\n // TODO: This defaults to false, to avoid causing problems with any components that haven't been updated and tested. After all Runestone components have been updated, default this to true and remove the extra parameter from most calls to this function.\n will_be_ready = false\n ) {\n // Check if the server has stored answer\n let self = this;\n this.checkServerComplete = new Promise(function (resolve, reject) {\n self.csresolver = resolve;\n });\n if (\n eBookConfig.isLoggedIn &&\n (this.useRunestoneServices || this.graderactive)\n ) {\n let data = {};\n data.div_id = this.divid;\n data.course = eBookConfig.course;\n data.event = eventInfo;\n if (this.graderactive && this.deadline) {\n data.deadline = this.deadline;\n data.rawdeadline = this.rawdeadline;\n data.tzoff = this.tzoff;\n }\n if (this.sid) {\n data.sid = this.sid;\n }\n if (!(data.div_id && data.course && data.event)) {\n console.log(\n `A required field is missing data ${data.div_id}:${data.course}:${data.event}`\n );\n }\n // If we are NOT in practice mode and we are not in a peer exercise\n // and assessmentTaken is true\n if (\n !eBookConfig.practice_mode &&\n !eBookConfig.peer &&\n this.assessmentTaken\n ) {\n let request = new Request(\n `${eBookConfig.new_server_prefix}/assessment/results`,\n {\n method: \"POST\",\n body: JSON.stringify(data),\n headers: this.jsonHeaders,\n }\n );\n try {\n let response = await fetch(request);\n console.log(`Response from server: ${response.status}`);\n if (response.ok) {\n data = await response.json();\n data = data.detail;\n console.log(`Data from server: ${JSON.stringify(data)} calling repopulateFromStorage`);\n this.repopulateFromStorage(data);\n this.attempted = true;\n if (typeof data.correct !== \"undefined\") {\n this.correct = data.correct;\n } else {\n this.correct = null;\n }\n console.log(`resolving checkServer with server data`);\n this.csresolver(\"server\");\n } else {\n console.log(\n `HTTP Error getting results: ${response.statusText}`\n );\n this.checkLocalStorage(); // just go right to local storage\n console.log(`resolving checkServer with local data`);\n this.csresolver(\"local\");\n }\n } catch (err) {\n console.log(`Error getting results: ${err}`);\n try {\n this.checkLocalStorage();\n } catch (err) {\n console.log(err);\n }\n }\n } else {\n this.loadData({});\n console.log(`resolving checkServer no answer given`);\n this.csresolver(\"not taken\");\n }\n } else {\n this.checkLocalStorage(); // just go right to local storage\n console.log(`resolving checkServer with local data`);\n this.csresolver(\"local\");\n }\n\n if (will_be_ready) {\n this.indicate_component_ready();\n }\n }\n\n // This method assumes that ``this.componentDiv`` refers to the ``div`` containing the component, and that this component's ID is set.\n indicate_component_ready() {\n // Add a class to indicate the component is now ready.\n this.containerDiv.classList.add(\"runestone-component-ready\");\n // Resolve the ``this.component_ready_promise``.\n this._component_ready_resolve_fn();\n }\n\n loadData(data) {\n // for most classes, loadData doesn't do anything. But for Parsons, and perhaps others in the future,\n // initialization can happen even when there's no history to be loaded\n return null;\n }\n\n /**\n * repopulateFromStorage is called after a successful API call is made to ``getAssessResults`` in\n * the checkServer method in this class\n *\n * ``restoreAnswers,`` ``setLocalStorage`` and ``checkLocalStorage`` are defined in the child classes.\n *\n * @param {*} data - a JSON object representing the data needed to restore a previous answer for a component\n * @param {*} status - the http status\n * @param {*} whatever - ignored\n */\n repopulateFromStorage(data) {\n // decide whether to use the server's answer (if there is one) or to load from storage\n if (data !== null && data !== \"no data\" && this.shouldUseServer(data)) {\n this.restoreAnswers(data);\n this.setLocalStorage(data);\n } else {\n this.checkLocalStorage();\n }\n this.decorateStatus();\n }\n shouldUseServer(data) {\n // returns true if server data is more recent than local storage or if server storage is correct\n if (\n data.correct === \"T\" ||\n data.correct === true ||\n localStorage.length === 0 ||\n this.graderactive === true ||\n this.isTimed\n ) {\n return true;\n }\n let ex = localStorage.getItem(this.localStorageKey());\n if (ex === null) {\n return true;\n }\n let storedData;\n try {\n storedData = JSON.parse(ex);\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 // definitely don't want to use local storage here\n return true;\n }\n if (data.answer == storedData.answer) return true;\n let storageDate = new Date(storedData.timestamp);\n let serverDate = new Date(data.timestamp);\n return serverDate >= storageDate;\n }\n // Return the key which to be used when accessing local storage.\n localStorageKey() {\n return (\n eBookConfig.email +\n \":\" +\n eBookConfig.course +\n \":\" +\n this.divid +\n \"-given\"\n );\n }\n addCaption(elType) {\n //someElement.parentNode.insertBefore(newElement, someElement.nextSibling);\n if (!this.isTimed) {\n var capDiv = document.createElement(\"p\");\n if (this.question_label) {\n // Display caption based on whether Runestone services have been detected\n this.caption = eBookConfig.useRunestoneServices\n ? `Activity: ${this.question_label} ${this.caption} (${this.divid})`\n : `Activity: ${this.question_label} ${this.caption}`; // Without runestone\n $(capDiv).html(this.caption);\n $(capDiv).addClass(`${elType}_caption`);\n } else {\n // Display caption based on whether Runestone services have been detected\n $(capDiv).html(\n eBookConfig.useRunestoneServices\n ? this.caption + \" (\" + this.divid + \")\"\n : this.caption\n ); // Without runestone\n $(capDiv).addClass(`${elType}_caption`);\n $(capDiv).addClass(`${elType}_caption_text`);\n }\n this.capDiv = capDiv;\n //this.outerDiv.parentNode.insertBefore(capDiv, this.outerDiv.nextSibling);\n this.containerDiv.appendChild(capDiv);\n }\n }\n\n hasUserActivity() {\n return this.isAnswered;\n }\n\n checkCurrentAnswer() {\n console.log(\n \"Each component should provide an implementation of checkCurrentAnswer\"\n );\n }\n\n async logCurrentAnswer() {\n console.log(\n \"Each component should provide an implementation of logCurrentAnswer\"\n );\n }\n renderFeedback() {\n console.log(\n \"Each component should provide an implementation of renderFeedback\"\n );\n }\n disableInteraction() {\n console.log(\n \"Each component should provide an implementation of disableInteraction\"\n );\n }\n\n toString() {\n return `${this.constructor.name}: ${this.divid}`;\n }\n\n queueMathJax(component) {\n if (typeof MathJax === \"undefined\") {\n console.log(\"Error -- MathJax is not loaded\");\n return Promise.resolve(null);\n } else {\n // See - https://docs.mathjax.org/en/latest/advanced/typeset.html\n // Per the above we should keep track of the promises and only call this\n // a second time if all previous promises have resolved.\n // Create a queue of components\n // should wait until defaultPageReady is defined\n // If defaultPageReady is not defined then just enqueue the components.\n // Once defaultPageReady is defined\n // the window.runestoneMathReady promise will be fulfilled when the\n // initial typesetting is complete.\n if (MathJax.typesetPromise) {\n if (typeof window.runestoneMathReady !== \"undefined\") {\n return window.runestoneMathReady.then(() =>\n this.mjresolver(this.aQueue.enqueue(component))\n );\n } else {\n return this.mjresolver(this.aQueue.enqueue(component));\n }\n } else {\n console.log(`Waiting on MathJax!! ${MathJax.typesetPromise}`);\n setTimeout(() => this.queueMathJax(component), 200);\n console.log(`Returning mjready promise: ${this.mjReady}`);\n return this.mjReady;\n }\n }\n }\n\n decorateStatus() {\n if (this.isTimed || eBookConfig.peer) return;\n let rsDiv = $(this.containerDiv).closest(\"div.runestone\")[0];\n if (!rsDiv) return;\n rsDiv.classList.remove(\"notAnswered\");\n rsDiv.classList.remove(\"isInCorrect\");\n rsDiv.classList.remove(\"isCorrect\");\n if (this.correct) {\n rsDiv.classList.add(\"isCorrect\");\n } else {\n if (this.correct === null || typeof this.correct === \"undefined\") {\n rsDiv.classList.add(\"notAnswered\");\n } else {\n rsDiv.classList.add(\"isInCorrect\");\n }\n }\n }\n}\n\n// Inspiration and lots of code for this solution come from\n// https://stackoverflow.com/questions/53540348/js-async-await-tasks-queue\n// The idea here is that until MathJax is ready we can just enqueue things\n// once mathjax becomes ready then we can drain the queue and continue as usual.\n\nclass Queue {\n constructor() {\n this._items = [];\n }\n enqueue(item) {\n this._items.push(item);\n }\n dequeue() {\n return this._items.shift();\n }\n get size() {\n return this._items.length;\n }\n}\n\nclass AutoQueue extends Queue {\n constructor() {\n super();\n this._pendingPromise = false;\n }\n\n enqueue(component) {\n return new Promise((resolve, reject) => {\n super.enqueue({ component, resolve, reject });\n this.dequeue();\n });\n }\n\n async dequeue() {\n if (this._pendingPromise) return false;\n\n let item = super.dequeue();\n\n if (!item) return false;\n let qq = this;\n try {\n this._pendingPromise = true;\n\n let payload = await window.runestoneMathReady\n .then(async function () {\n console.log(\n `MathJax Ready -- dequeing a typesetting run for ${item.component.id} ${qq.preamble?.innerHTML}`\n );\n if (qq.preamble) {\n await MathJax.typesetPromise([qq.preamble])\n // Use insertAdjacentElement to preserve existing DOM elements and event listeners\n // instead of overwriting innerHTML which destroys event handlers\n let preambleDiv = document.createElement(\"div\");\n preambleDiv.innerHTML = qq.preamble.innerHTML;\n item.component.insertAdjacentElement(\"afterbegin\", preambleDiv);\n console.log(\n `MathJax typeset the preamble for ${item.component.id}`\n );\n return await MathJax.typesetPromise([item.component]);\n } else {\n return await MathJax.typesetPromise([item.component]);\n }\n });\n\n this._pendingPromise = false;\n item.resolve(payload);\n } catch (e) {\n this._pendingPromise = false;\n item.reject(e);\n } finally {\n // If there are more items in the queue, continue processing them\n this.dequeue();\n }\n\n return true;\n }\n}\n\nwindow.RunestoneBase = RunestoneBase;\n","/**\n *\n * User: bmiller\n * Original: 2011-04-20\n * Date: 2019-06-14\n * Time: 2:01 PM\n * This change marks the beginning of version 4.0 of the runestone components\n * Login/logout is no longer handled through javascript but rather server side.\n * Many of the components depend on the runestone:login event so we will keep that\n * for now to keep the churn fairly minimal.\n */\n\n/*\n\n Copyright (C) 2011 Brad Miller bonelake@gmail.com\n\n This program is free software: you can redistribute it and/or modify\n it under the terms of the GNU General Public License as published by\n the Free Software Foundation, either version 3 of the License, or\n (at your option) any later version.\n\n This program is distributed in the hope that it will be useful,\n but WITHOUT ANY WARRANTY; without even the implied warranty of\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n GNU General Public License for more details.\n\n You should have received a copy of the GNU General Public License\n along with this program. If not, see .\n\n */\n\n//\n// Page decoration functions\n//\n\nfunction addReadingList() {\n if (eBookConfig.readings) {\n var l, nxt, path_parts, nxt_link;\n let cur_path_parts = window.location.pathname.split(\"/\");\n let name =\n cur_path_parts[cur_path_parts.length - 2] +\n \"/\" +\n cur_path_parts[cur_path_parts.length - 1];\n let position = eBookConfig.readings.indexOf(name);\n let num_readings = eBookConfig.readings.length;\n if (position == eBookConfig.readings.length - 1) {\n // no more readings\n l = $(\"
    \", {\n text: `Finished reading assignment. Page ${num_readings} of ${num_readings}.`,\n });\n } else if (position >= 0) {\n // get next name\n nxt = eBookConfig.readings[position + 1];\n path_parts = cur_path_parts.slice(0, cur_path_parts.length - 2);\n path_parts.push(nxt);\n nxt_link = path_parts.join(\"/\");\n l = $(\"\", {\n name: \"link\",\n class: \"btn btn-lg ' + 'buttonConfirmCompletion'\",\n href: nxt_link,\n text: `Continue to page ${\n position + 2\n } of ${num_readings} in the reading assignment.`,\n });\n } else {\n l = $(\"
    \", {\n text: \"This page is not part of the last reading assignment you visited.\",\n });\n }\n $(\"#main-content\").append(l);\n }\n}\n\nfunction timedRefresh() {\n var timeoutPeriod = 900000; // 75 minutes\n $(document).on(\"idle.idleTimer\", function () {\n // After timeout period send the user back to the index. This will force a login\n // if needed when they want to go to a particular page. This may not be perfect\n // but its an easy way to make sure laptop users are properly logged in when they\n // take quizzes and save stuff.\n if (location.href.indexOf(\"index.html\") < 0) {\n console.log(\"Idle timer - \" + location.pathname);\n location.href =\n eBookConfig.app +\n \"/default/user/login?_next=\" +\n location.pathname +\n location.search;\n }\n });\n $.idleTimer(timeoutPeriod);\n}\n\nclass PageProgressBar {\n constructor(actDict) {\n this.possible = 0;\n this.total = 1;\n if (actDict && \"assignment_spec\" in actDict) {\n this.assignment_spec = actDict.assignment_spec;\n delete actDict.assignment_spec;\n }\n if (actDict && Object.keys(actDict).length > 0) {\n this.activities = actDict;\n } else {\n let activities = { page: 0 };\n document.querySelectorAll(\".runestone\").forEach(function (e) {\n activities[e.firstElementChild.id] = 0;\n });\n this.activities = activities;\n }\n this.calculateProgress();\n // Hide the progress bar on the index page.\n if (\n window.location.pathname.match(\n /.*\\/(index.html|toctree.html|Exercises.html|search.html)$/i,\n )\n ) {\n const scprogresscontainer = document.getElementById(\n \"scprogresscontainer\",\n );\n if (scprogresscontainer) scprogresscontainer.style.display = \"none\";\n }\n this.renderProgress();\n }\n\n calculateProgress() {\n for (let k in this.activities) {\n if (k !== undefined) {\n this.possible++;\n if (this.activities[k] > 0) {\n this.total++;\n }\n }\n }\n }\n\n renderProgress() {\n let value = 0;\n const scprogresstotal = document.getElementById(\"scprogresstotal\");\n if (scprogresstotal) scprogresstotal.textContent = this.total;\n const scprogressposs = document.getElementById(\"scprogressposs\");\n if (scprogressposs) scprogressposs.textContent = this.possible;\n try {\n value = (100 * this.total) / this.possible;\n } catch (e) {\n value = 0;\n }\n // Replace #subchapterprogress div with a native element if not already done\n let subchapterprogress = document.getElementById(\"subchapterprogress\");\n if (subchapterprogress && subchapterprogress.tagName !== \"PROGRESS\") {\n // Replace the div with a element\n const progressElem = document.createElement(\"progress\");\n progressElem.id = \"subchapterprogress\";\n progressElem.max = 100;\n progressElem.value = value;\n // Copy over any classes from the old div\n progressElem.className = subchapterprogress.className;\n subchapterprogress.replaceWith(progressElem);\n subchapterprogress = progressElem;\n } else if (subchapterprogress) {\n subchapterprogress.max = 100;\n subchapterprogress.value = value;\n }\n if (this.assignment_spec) {\n // If the user has completed all activities, send the reading score.\n // This handles the case where there are no activities on the page or\n // where the user completed activities on the assignment page and now\n // is viewing the reading page.\n let completeActivities = this.total - 1; // subtract 1 for the page reading which is in total but not an activity\n let requiredActivities =\n this.assignment_spec.activities_required || 0;\n if (completeActivities >= requiredActivities) {\n this.sendCompletedReadingScore().then(() => {\n console.log(\"Reading score sent for page\");\n // wait a tick then mark the page complete\n // this is needed to let the progress bar update before marking complete\n setTimeout(() => {\n let cb = document.getElementById(\"completionButton\");\n if (\n cb &&\n cb.textContent.toLowerCase() === \"mark as completed\"\n ) {\n cb.click();\n }\n }, 500);\n });\n }\n }\n if (!eBookConfig.isLoggedIn) {\n const subchapterDiv = document.getElementById(\"subchapterprogress\");\n if (subchapterDiv) subchapterDiv.classList.add(\"loggedout\");\n }\n }\n\n updateProgress(div_id) {\n this.activities[div_id]++;\n // Only update the progress bar on the first interaction with an object.\n if (this.activities[div_id] === 1) {\n this.total++;\n let val = (100 * this.total) / this.possible;\n const scprogresstotal2 = document.getElementById(\"scprogresstotal\");\n if (scprogresstotal2) scprogresstotal2.textContent = this.total;\n const scprogressposs2 = document.getElementById(\"scprogressposs\");\n if (scprogressposs2) scprogressposs2.textContent = this.possible;\n let subchapterprogress2 =\n document.getElementById(\"subchapterprogress\");\n if (\n subchapterprogress2 &&\n subchapterprogress2.tagName === \"PROGRESS\"\n ) {\n subchapterprogress2.value = val;\n }\n if (\n this.assignment_spec &&\n this.assignment_spec.activities_required !== null &&\n this.total >= this.assignment_spec.activities_required\n ) {\n console.log(\"Required activities completed\");\n this.sendCompletedReadingScore().then(() => {\n console.log(\"Reading score sent\");\n });\n }\n if (\n val == 100.0 &&\n $(\"#completionButton\").text().toLowerCase() ===\n \"mark as completed\"\n ) {\n $(\"#completionButton\").click();\n }\n }\n }\n\n async sendCompletedReadingScore() {\n let headers = new Headers({\n \"Content-type\": \"application/json; charset=utf-8\",\n Accept: \"application/json\",\n });\n let data = { ...this.assignment_spec };\n let request = new Request(\n `${eBookConfig.new_server_prefix}/logger/update_reading_score`,\n {\n method: \"POST\",\n body: JSON.stringify(data),\n headers: headers,\n },\n );\n try {\n let response = await fetch(request);\n if (!response.ok) {\n console.error(\n `Failed to send reading score! ${response.statusText}`,\n );\n }\n data = await response.json();\n } catch (e) {\n console.error(`Error sending reading score ${e}`);\n }\n }\n}\n\nexport var pageProgressTracker = {};\n\nfunction getCookie(name) {\n const value = `; ${document.cookie}`;\n const parts = value.split(`; ${name}=`);\n if (parts.length === 2) return parts.pop().split(\";\").shift();\n}\n\nasync function handlePageSetup() {\n var mess;\n if (eBookConfig.useRunestoneServices) {\n let headers = new Headers({\n \"Content-type\": \"application/json; charset=utf-8\",\n Accept: \"application/json\",\n });\n let data = {\n timezoneoffset: new Date().getTimezoneOffset() / 60,\n timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,\n };\n let RS_info = getCookie(\"RS_info\");\n var tz_match = false;\n if (RS_info) {\n try {\n let cleaned = RS_info.replace(/\\\\054/g, \",\"); // handle octal comma encoding\n let info = JSON.parse(decodeURIComponent(cleaned));\n info = JSON.parse(decodeURIComponent(info));\n if (\n info.timezone === data.timezone &&\n info.tz_offset === data.timezoneoffset\n ) {\n console.log(\n \"Timezone cookie matches, not sending timezone to server\",\n );\n tz_match = true;\n }\n } catch (e) {\n console.error(\n \"Error parsing RS_info cookie, sending timezone to server\",\n );\n }\n }\n if (tz_match === false) {\n // Set a cookie so we don't have to do this again for a while.\n let request = new Request(\n `${eBookConfig.new_server_prefix}/logger/set_tz_offset`,\n {\n method: \"POST\",\n body: JSON.stringify(data),\n headers: headers,\n },\n );\n try {\n let response = await fetch(request);\n if (!response.ok) {\n console.error(\n `Failed to set timezone! ${response.statusText}`,\n );\n }\n data = await response.json();\n } catch (e) {\n console.error(`Error setting timezone ${e}`);\n }\n }\n }\n console.log(`This page served by ${eBookConfig.served_by}`);\n if (eBookConfig.isLoggedIn) {\n mess = `username: ${eBookConfig.username}`;\n if (!eBookConfig.isInstructor) {\n $(\"#ip_dropdown_link\").remove();\n $(\"#inst_peer_link\").remove();\n }\n $(document).trigger(\"runestone:login\");\n addReadingList();\n // Avoid the timedRefresh on the grading page.\n if (\n window.location.pathname.indexOf(\"/admin/grading\") == -1 &&\n window.location.pathname.indexOf(\"/peer/\") == -1\n ) {\n timedRefresh();\n }\n } else {\n mess = \"Not logged in\";\n $(document).trigger(\"runestone:logout\");\n let bw = document.getElementById(\"browsing_warning\");\n if (bw) {\n bw.innerHTML =\n \"\";\n }\n let aw = document.getElementById(\"ad_warning\");\n if (aw) {\n aw.innerHTML =\n \"\";\n }\n }\n $(\".loggedinuser\").html(mess);\n\n pageProgressTracker = new PageProgressBar(eBookConfig.activities);\n notifyRunestoneComponents();\n}\n\nfunction setupNavbarLoggedIn() {\n $(\"#profilelink\").show();\n $(\"#passwordlink\").show();\n $(\"#registerlink\").hide();\n $(\"li.loginout\").html(\n 'Log Out',\n );\n}\ndocument.addEventListener(\"runestone:login\", setupNavbarLoggedIn);\n\nfunction setupNavbarLoggedOut() {\n if (eBookConfig.useRunestoneServices) {\n console.log(\"setup navbar for logged out\");\n $(\"#registerlink\").show();\n $(\"#profilelink\").hide();\n $(\"#passwordlink\").hide();\n $(\"#ip_dropdown_link\").hide();\n $(\"#inst_peer_link\").hide();\n $(\"li.loginout\").html(\n 'Login',\n );\n $(\".footer\").html(\"user not logged in\");\n }\n}\ndocument.addEventListener(\"runestone:logout\", setupNavbarLoggedOut);\n\nfunction notifyRunestoneComponents() {\n // Runestone components wait until login process is over to load components because of storage issues. This triggers the `dynamic import machinery`, which then sends the login complete signal when this and all dynamic imports are finished.\n console.log(\"triggering runestone:pre-login-complete\");\n document.dispatchEvent(new Event(\"runestone:pre-login-complete\"));\n}\n\nfunction placeAdCopy() {\n if (typeof showAd !== \"undefined\" && showAd) {\n let adNum = Math.floor(Math.random() * 2) + 1;\n let adBlock = document.getElementById(`adcopy_${adNum}`);\n let rsElements = document.querySelectorAll(\".runestone\");\n if (rsElements.length > 0) {\n let randomIndex = Math.floor(Math.random() * rsElements.length);\n rsElements[randomIndex].after(adBlock);\n adBlock.style.display = \"block\";\n }\n }\n}\n\n// initialize stuff\ndocument.addEventListener(\"DOMContentLoaded\", function () {\n if (eBookConfig) {\n handlePageSetup();\n placeAdCopy();\n } else {\n if (typeof eBookConfig === \"undefined\") {\n console.log(\n \"eBookConfig is not defined. This page must not be set up for Runestone\",\n );\n }\n }\n});\n\n// misc stuff\n// todo: This could be further distributed but making a video.js file just for one function seems dumb.\nwindow.addEventListener(\"load\", function () {\n // add the video play button overlay image\n document.querySelectorAll(\".video-play-overlay\").forEach(function (el) {\n el.style.backgroundImage =\n \"url('{{pathto('_static/play_overlay_icon.png', 1)}}')\";\n });\n\n // This function is needed to allow the dropdown search bar to work;\n // The default behaviour is that the dropdown menu closes when something in\n // it (like the search bar) is clicked\n document\n .querySelectorAll(\".dropdown input, .dropdown label\")\n .forEach(function (el) {\n el.addEventListener(\"click\", function (e) {\n e.stopPropagation();\n });\n });\n\n // re-write some urls\n // This is tricker than it looks and you have to obey the rules for # anchors\n // The #anchors must come after the query string as the server basically ignores any part\n // of a url that comes after # - like a comment...\n if (location.href.includes(\"mode=browsing\")) {\n let queryString = \"?mode=browsing\";\n document.querySelectorAll(\"a\").forEach((link) => {\n let anchorText = \"\";\n if (\n link.href.includes(\"books/published\") &&\n !link.href.includes(\"?mode=browsing\")\n ) {\n if (link.href.includes(\"#\")) {\n let aPoint = link.href.indexOf(\"#\");\n anchorText = link.href.substring(aPoint);\n link.href = link.href.substring(0, aPoint);\n }\n link.href = link.href.includes(\"?\")\n ? link.href + queryString.replace(\"?\", \"&\") + anchorText\n : link.href + queryString + anchorText;\n }\n });\n }\n});\n\n/**\n * Returns true if the string appears to contain LaTeX math.\n */\nexport function looksLikeLatexMath(text) {\n if (typeof text !== \"string\") return false;\n\n // Common LaTeX math delimiters\n const mathDelimiters = [\n /\\$\\$[\\s\\S]+?\\$\\$/, // $$ ... $$\n /\\$[^$\\n]+?\\$/, // $ ... $\n /\\\\\\[[\\s\\S]+?\\\\\\]/, // \\[ ... \\]\n /\\\\\\([\\s\\S]+?\\\\\\)/, // \\( ... \\)\n ];\n\n // Common math commands (avoid generic \\text or \\ref-only cases)\n const mathCommands =\n /\\\\(frac|sqrt|sum|prod|int|lim|sin|cos|tan|log|ln|alpha|beta|gamma|pi|theta|sigma|Delta|cdot|times|leq|geq|neq)\\b/;\n\n // Superscripts/subscripts like x^2 or a_i\n const superSubScript = /[a-zA-Z0-9]\\s*[\\^_]\\s*\\{?.+?\\}?/;\n\n return (\n mathDelimiters.some((re) => re.test(text)) ||\n mathCommands.test(text) ||\n superSubScript.test(text)\n );\n}\n","import { runestone_import } from \"../../../webpack.index.js\";\n\nexport async function renderRunestoneComponent(\n componentSrc,\n whereDiv,\n moreOpts\n) {\n /**\n * The easy part is adding the componentSrc to the existing div.\n * The tedious part is calling the right functions to turn the\n * source into the actual component.\n */\n if (!componentSrc) {\n jQuery(`#${whereDiv}`).html(\n `

    Sorry, no source is available for preview.

    `\n );\n return;\n }\n let patt = /..\\/_images/g;\n componentSrc = componentSrc.replace(\n patt,\n `${eBookConfig.app}/books/published/${eBookConfig.basecourse}/_images`\n );\n jQuery(`#${whereDiv}`).html(componentSrc);\n\n if (typeof window.componentMap === \"undefined\") {\n window.componentMap = {};\n }\n\n let componentKind = $($(`#${whereDiv} [data-component]`)[0]).data(\n \"component\"\n );\n // Import the JavaScript for this component before proceeding.\n await runestone_import(componentKind);\n let opt = {};\n opt.orig = jQuery(`#${whereDiv} [data-component]`)[0];\n if (opt.orig) {\n opt.lang = $(opt.orig).data(\"lang\");\n opt.useRunestoneServices = true;\n opt.graderactive = false;\n opt.python3 = true;\n if (typeof moreOpts !== \"undefined\") {\n for (let key in moreOpts) {\n opt[key] = moreOpts[key];\n }\n }\n }\n\n if (typeof component_factory === \"undefined\") {\n alert(\"Error: Missing the component factory!\");\n } else {\n if (\n !window.component_factory[componentKind] &&\n !jQuery(`#${whereDiv}`).html()\n ) {\n jQuery(`#${whereDiv}`).html(\n `

    Preview not available for ${componentKind}

    `\n );\n } else {\n let res = window.component_factory[componentKind](opt);\n if (componentKind === \"activecode\") {\n if (moreOpts.multiGrader) {\n window.componentMap[\n `${moreOpts.gradingContainer} ${res.divid}`\n ] = res;\n } else {\n window.componentMap[res.divid] = res;\n }\n }\n }\n }\n}\n\nexport function createTimedComponent(componentSrc, moreOpts) {\n /* The important distinction is that the component does not really need to be rendered\n into the page, in fact, due to the async nature of getting the source the list of questions\n is made and the original html is replaced by the look of the exam.\n */\n\n let patt = /..\\/_images/g;\n componentSrc = componentSrc.replace(\n patt,\n `${eBookConfig.app}/books/published/${eBookConfig.basecourse}/_images`\n );\n\n let componentKind = $($(componentSrc).find(\"[data-component]\")[0]).data(\n \"component\"\n );\n\n let origId = $(componentSrc).find(\"[data-component]\").first().attr(\"id\");\n\n // Double check -- if the component source is not in the DOM, then briefly add it\n // and call the constructor.\n let hdiv;\n if (!document.getElementById(origId)) {\n hdiv = $(\"
    \", {\n css: { display: \"none\" },\n }).appendTo(\"body\");\n hdiv.html(componentSrc);\n }\n // at this point hdiv is a jquery object\n\n let ret;\n let opts = {\n orig: document.getElementById(origId),\n timed: true,\n };\n if (typeof moreOpts !== \"undefined\") {\n for (let key in moreOpts) {\n opts[key] = moreOpts[key];\n }\n }\n\n if (componentKind in window.component_factory) {\n ret = window.component_factory[componentKind](opts);\n }\n\n let rdict = {};\n rdict.question = ret;\n return rdict;\n}\n\n// For integration with the React overhault of Pretext\n// 1. Disable the automatic instantiation at the end of each component.js\n// 2. react will search for all \".runestone\" and will call this function for each of them.\nexport async function renderOneComponent(rsDiv) {\n // Find the actual component inside the runestone component.\n let component = rsDiv.querySelector(\"[data-component]\");\n if (component == null) {\n console.log(\"Render was called for a component, but now [data-component] attribute is present. This may mean the component has already been rendered.\")\n return;\n }\n let componentKind = component.dataset.component;\n await runestone_import(componentKind);\n if ($(this).closest(\"[data-component=timedAssessment]\").length == 0) {\n // If this element exists within a timed component, don't render it here\n try {\n let divid = component.id;\n window.componentMap[divid] = window.component_factory[\n componentKind\n ]({\n orig: component,\n useRunestoneServices: eBookConfig.useRunestoneServices,\n });\n } catch (err) {\n console.log(`Error rendering ${componentKind} Problem ${this.id}\n Details: ${err}`);\n }\n }\n}\n"],"names":["$","patchToc","$ul","minLevel","findA","$elem","level","find","each","index","item","$item","tag","tagName","toLowerCase","$childrenLi","children","$parentLi","parent","length","addClass","first","attr","patchTables","removeClass","navHeight","height","shiftWindow","scrollBy","location","hash","window","addEventListener","this","remove","not","$parent","$kids","detach","replaceWith","after","$localLi","dropdown","i","e","hasClass","text","jQuery","codeExercises","presentModeInitialized","presentToggle","dataComponent","closest","css","wrapAll","wrap","before","presentModeSetup","bod","presentClass","fullHeightClass","bottomClass","localStorage","setItem","presenterCssLink","disabled","activateExercise","getActiveExercise","active","filter","nextExercise","nextIndex","prevExercise","prevIndex","document","on","eBookConfig","isInstructor","prepend","change","i18n","extend","fallbacks","ab","ace","aln","als","an","anp","arn","arz","av","ay","ba","bar","bcc","bh","bjn","bm","bpy","bqi","bug","ce","crh","csb","cv","dsb","dtp","egl","eml","ff","fit","frc","frp","frr","fur","gag","gan","gl","glk","gn","gsw","hif","hsb","ht","ii","inh","iu","jut","jv","kaa","kbd","khw","kiu","kk","kl","koi","krc","ks","ksh","ku","kv","lad","lb","lbe","lez","li","lij","liv","lmo","ln","ltg","lzz","mai","mg","mhr","min","mo","mrj","mwl","myv","mzn","nah","nap","nds","no","os","pcd","pdc","pdt","pfl","pms","pt","qu","qug","rgn","rmy","rue","ruq","sa","sah","scn","sg","sgs","sli","sr","srn","stq","su","szl","tcy","tg","tt","ty","udm","ug","uk","vec","vep","vls","vmf","vot","vro","wa","wo","wuu","xal","xmf","yi","za","zea","zh","language","pluralRules","ak","one","am","ar","zero","two","few","many","ars","as","be","bn","br","bs","cs","cy","da","fa","fil","fr","ga","gd","gu","guw","gv","he","hi","hr","hy","is","iw","kab","kn","kw","lag","lt","lv","mk","mr","mt","naq","nso","pa","pl","prg","ro","ru","se","sh","shi","si","sk","sl","sma","smi","smj","smn","sms","ti","tl","tzm","zu","convertPlural","count","forms","pluralFormIndex","form","explicitPluralPattern","RegExp","test","parseInt","slice","indexOf","undefined","map","locale","getPluralForm","Math","number","pluralForms","pluralRuleParser","convertNumber","num","integer","tmp","transformTable","numberString","convertedNumber","digitTransformTable","String","parseFloat","convertGrammar","word","gender","push","tables","ml","lo","or","kh","my","ta","te","th","bo","split","languages","strongDirRegExp","parser","emitter","bidi","nodes","m","dir","match","module","exports","MessageParserEmitter","prototype","constructor","emit","node","replacements","ret","subnodes","operation","messageParserEmitter","n","Error","concat","result","replace","plural","grammar","MessageParser","options","defaults","simpleParse","message","parameters","str","parse","ast","pipe","colon","backslash","anyCharacter","dollar","digits","regularLiteral","regularLiteralWithoutBar","escapedOrLiteralWithoutBar","escapedOrRegularLiteral","templateContents","templateName","openTemplate","closeTemplate","expression","paramExpression","p","fn","pos","choice","parserSyntax","sequence","res","originalPos","nOrMore","parsed","makeStringParser","s","len","makeRegexParser","regex","matches","escapedLiteral","replacement","templateParam","expr","templateWithReplacement","templateWithOutReplacement","template","toString","join","start","MessageStore","messages","sources","load","source","url","deferred","key","deferreds","messageStore","log","Deferred","getJSON","done","resolve","fail","jqxhr","settings","exception","promise","localization","set","Object","hasOwnProperty","call","when","apply","get","messageKey","I18N","nav","Array","localize","localeParts","localePartIndex","fallbackIndex","tryingLocale","fallbackLocale","destroy","removeData","fallbackLocales","locIndex","sourceMap","pop","param1","data","arguments","lBracket","rBracket","type","$this","html","debug","console","navigator","userLanguage","idleTimer","newTimeout","elem","opts","startImmediately","idle","enabled","timeout","events","toggleIdleState","myelem","obj","elapsed","Date","olddate","clearTimeout","tId","setTimeout","event","Event","trigger","off","stop","trim","isPreTeXt","querySelector","processPageState","completionFlag","pageLoad","markingComplete","markingIncomplete","currentPathname","pathname","substring","lastIndexOf","isPtxBook","lastPageUrl","lastPageScrollLocation","round","scrollTop","course","ajaxError","jqhxr","ajax","new_server_prefix","contentType","dataType","JSON","stringify","method","async","lastPositionVal","href","completionClass","completionMsg","detail","completionStatus","scp","classList","add","append","getCompletions","getUrlVar","animate","navLinkBgRightHalfOpen","navLinkBgRightHiddenPosition","outerWidth","relationsNextIconInitialPosition","relationsNextIconNewPosition","show","navBgShown","scroll","right","left","addNavigationAndCompletionButtons","subChapterList","allSubChapterURLs","chapterName","subChapterName","parentElement","endDate","hover","next","hide","lastPageData","lastPageChapter","lastPageSubchapter","decorateTableOfContents","getUrlVars","vars","hashes","search","name","rb","querySelectorAll","forEach","el","div_id","getAttribute","logBookEvent","act","open","id","btn","container","codeInput","textContent","style","display","setupPTXEvents","getElementById","overflow","SpliceWrapper","super","initSplice","base64","jsonPayload","sourceIframe","sendingIframe","subject","handleScoreAndState","handleSpliceEvent","handleGetState","origin","msgdata","jwt","decodeURIComponent","atob","c","charCodeAt","frame_id","score","getUniqueID","frame","rsDiv","activity_id","src","error","state","percent","correct","answer","f","getElementsByTagName","contentWindow","getSavedState","response","fetch","headers","body","ok","status","json","postMessage","message_id","checkLocalStorage","setLocalStorage","restoreAnswers","disableInteraction","module_map","activecode","ble","clickablearea","codelens","datafile","dragndrop","fillintheblank","groupsub","khanex","lp_build","matching","multiplechoice","hparsons","parsons","poll","quizly","reveal","selectquestion","shortanswer","showeval","simple_sensor","spreadsheet","tabbedStuff","timedAssessment","wavedrom","webwork","youtube","doenet","Promise","module_map_cache","QUEUE_FLUSH_TIME_MS","queue","queueLastFlush","flushQueue","now","toFlush","component_name","flushedPromise","reject","flushed","all","pre_login_complete_promise","runestone_auto_import","Set","element","a","value","z","msg","then","dataset","reactInUse","dispatchEvent","CustomEvent","runestone_import","retPromise","r","rej","queueImport","ready","script_src","currentScript","rc","getSwitch","toggleSwitch","currentTheme","getItem","documentElement","setAttribute","checked","switchTheme","popupScratchAC","scratchDiv","ACFactory","createScratchActivecode","divid","componentMap","createActiveCode","acDefaultLanguage","isLoggedIn","enableSaveLoad","toggleScratchActivecode","renderOneComponent","runestoneComponents","NO_DECORATE","RunestoneBase","component_ready_promise","_component_ready_resolve_fn","optional","allComponents","sid","graderactive","showfeedback","timed","isTimed","enforceDeadline","deadline","parseBooleanAttribute","orig","selector_id","assessmentTaken","timedWrapper","question_label","is_toggle","is_select","mjelements","self","mjReady","mjresolver","aQueue","AutoQueue","preamble","y","createElement","innerHTML","appendChild","jsonHeaders","Headers","Accept","attributeName","attrValue","lowerValue","eventInfo","post_return","course_name","clientLoginStatus","timezoneoffset","getTimezoneOffset","assignmentId","assignment_id","useRunestoneServices","logLevel","postLogMessage","prefix","updateProgress","decorateStatus","request","Request","scoreSpec","gradeBox","updateScores","alert","assigned","scoreSpan","getElementsByClassName","toFixed","allScores","allmax","total","max","totalSpan","maxSpan","percentSpan","logRunEvent","post_promise","forceSave","save_code","errinfo","checkServer","will_be_ready","checkServerComplete","csresolver","rawdeadline","tzoff","practice_mode","peer","loadData","repopulateFromStorage","attempted","statusText","err","indicate_component_ready","containerDiv","shouldUseServer","storedData","ex","localStorageKey","removeItem","storageDate","timestamp","email","addCaption","elType","capDiv","caption","hasUserActivity","isAnswered","checkCurrentAnswer","logCurrentAnswer","renderFeedback","queueMathJax","component","MathJax","typesetPromise","runestoneMathReady","enqueue","Queue","_items","dequeue","shift","size","_pendingPromise","qq","payload","preambleDiv","insertAdjacentElement","PageProgressBar","actDict","possible","assignment_spec","keys","activities","page","firstElementChild","calculateProgress","scprogresscontainer","renderProgress","k","scprogresstotal","scprogressposs","subchapterprogress","progressElem","className","activities_required","sendCompletedReadingScore","cb","click","subchapterDiv","val","scprogresstotal2","scprogressposs2","subchapterprogress2","pageProgressTracker","looksLikeLatexMath","some","re","app","mess","timezone","Intl","DateTimeFormat","resolvedOptions","timeZone","RS_info","parts","cookie","getCookie","tz_match","cleaned","info","tz_offset","served_by","username","readings","l","nxt","path_parts","nxt_link","cur_path_parts","position","num_readings","class","addReadingList","bw","aw","handlePageSetup","showAd","adNum","floor","random","adBlock","rsElements","placeAdCopy","backgroundImage","stopPropagation","includes","queryString","link","anchorText","aPoint","renderRunestoneComponent","componentSrc","whereDiv","moreOpts","basecourse","componentKind","opt","lang","python3","component_factory","multiGrader","gradingContainer","createTimedComponent","hdiv","origId","appendTo","rdict","question"],"sourceRoot":""} \ No newline at end of file diff --git a/_static/prefix-runestone.7e141ad8414abf4a.bundle.js.map.gz b/_static/prefix-runestone.7e141ad8414abf4a.bundle.js.map.gz deleted file mode 100644 index ee131e1150e990079e8066d6c2a89ed508ffb69b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67581 zcmV(wKEzS6Ih%Qt zejpqEd{HnAaZ)pkx^dzdwZ{|JFkEqB8%6_5@z0Ww-$c&jkB(6)8c<%1t5mSc(xh_e z%c#jeMbUzSvVBsL-JAr%aE7KhDZ`JQw&!L%cJ&$lYuBOt)y5tQ2#9l1m0!h4+Yl2I ztG0{y8M~{=j>Q#~zYI<6qk*3*Clxskj9a>>_P~g z%a#pT68V>FP)`@8VO*GFlV&N4oD(6ZDsV~4h=DB++K{A?F=32zUI8d-3K|;vyuteL zX9)&fS}uNrWf#vkvP-9c=#=a3$#FgNq$zs=42ZRm<2uH9JV9e*R*7C3fSU*W;2{Z> zvnEXv{(g_Bo?=RRs1uB`qah<%!s5<&u(2F$OgNAO`B+-B=v$xQbPOkFGRju6Xl0II z-fqqu3cY$4hzM$*tJ-g}_M15-gz~)PEY-vY7Jj&kNuA~>o*ej5_py7ok9hA;wUtRU zBk}A=iikGG)?Cn+2{pp?X#~*JX(5$o;kzgxYTP%0^aBJZXcKH8B;SOB)m>& zPE0u&$56BmFiuTH->`M@PnfSzD=5+4Jy1synUjkuE#xSRXeFS6S_hz=F~Z^i@z_Hv zN040zL~@q8J~N}Cv*uNz#w}3t3oK|434AGH;ID}%9@Z@BKlqPl0YZfM@qoCjQ?Er(WXF6VF0#Dv!dmSJVV zIuuWWs!@87c+c8Zgw1$h6g!AwXpP*loaJt-lB=BI-`$hCTy^Yo1e7a$#T{YCB1?2z zh@>_wQtO<1kXUpOFyWkJ3Wk02OzgZ4b6lG`_fVW(ewv68ZAG7U@0d}kdX4)p7kj zb87)A;n*=A4d~(CP(0juMe-tIs#(Z^C)DQ^aeWUzRdOPx0`r27of%=gPg{D4bY5*l zIL(Uwfwsio+btZonSdTD4K3B)mfgcl8u)R6IO+nE^Jz;IB9O(Si)TMEZ2$yz*BMe7 ziXmCy=oPNuIFM*R7K9&^7f{f!jWy!6ve_H1s12u!CI^QrA%P>g+|wA9XpE_2Yzc80 z8_2g#Oq_)wV4o8~2osW4CXRK*ge?yg@oVH_MISU45Tk; z2wY9vAsLjS-}lMi&dzTXk45MEIyv-vxBb_CC)=y}XfVypy-E$BV!=!%0dwUb%ztc7 z37ACdqwZdk&=E#Ih6b2TE&BPq`x6gP^|SZ=%kh1v_$KuKnZFyvkK~|ohv!WVck*{f z`>E<|zk$xbeYs!0lZ30RK=eLp^zxlRsj2zq*Fk%~*9Op1ynOO!YxieNT58D9)CwC( z@{8+yg=D`M%I}y(cuDeaE_0cB&uj19=xN?#_v@cR>7CFMSd>|CRkWcGenEh7|D~hv?Tj z{qLdoZztf!AMEd&cp}-96!rOgeEVBiJ=oczE(UrRRTA~7W_s^S11*T(a8hV&K`Q+n z`B$z4mW+#%Gb^1`q#V4yMa80#7D^6w43z7qcVu=JhSL#B>=CaKBE${j=*6(_v{H*o zM^dZ5v-QfjDW!~lcSAKmTzBI?Mbr-d#>!LKN4#>PSp2XI z>XuP2V@vjObraWL+{BZw$Hh-t?~S;4DOqV;SH>Kq-%h;95;QXDjPcnY$cWV zyJ}perOleFylEJa8smLchvnOlSdDwA$sROZ^&(u^cUMllJeU0ULYwA7o94AhVr5`z z*xEYrhYfcmRlYmVj0YI127rK(88`6FxWQN}pO_!buo2HtYJd0bxZTW*Yq)x4{1Zs( zuCEO<*C!Ha0EcEwB@3;=lFJvShAC4UK_r(?pX=JxmfO|-=3`G{+`iY5u+^c_7WJa=4T~CRy`F1paiNvxxO^(N(%rfce^?dv7D*D^-9~GB^(}K=X^78jKpblw zrFC5NHLf)f2Z6Xu_PM)r0_bL_aTm{y7ks33?{oKKahSirB43&baIpN?iU%7zu-~k> z(xnv-Hq{23iD&@(E~_=jSo@s9vvx2s7dkO(A3_a9-1uyl(Rv!UULHp2RI9Sqj*yKu z)K)9cXysY4KY_l+JdY*y-oGUWIE=@0t=BVcv@`{IXDCytxckOi46XB4n6w_h%B!M;9h{n!f1dy>cK$2ST!V z=V~*uW#e`QT?+RYae=mHkh$$gIhJiq&^Fzk-J-#GdW)j<{7zYsp|%Gmm&#T=k^3sV z$EqH=Kw1dp0ETly;X!YOdv$aND9HOrfqWCAgyFeNK=`6@~p8YV^o!`QvIhwu_XkZ<6|ED}K@GIKKbr>`TlEf9^chl@smRw7%)^^rSbihj0y zZD-ZNv1eh3OxMBL6U69<0kp}z^NQgv=<2G#0=wuFE#a7;>4^^huAor^X%%U{2Dk;_ zX_huPRssF_2MJQ)u1^zzeNe^8kcW@D?VCfS_6D?bhQg~U!csfLMwPLgzTaI-4^h(G z>T5X=Nkk2+Q0j{jDk)>Lu=mj(TI!>vN+rXYkW1_B_sW^IzlHmy}`|v&tqkE3vU<;3D4n(Ax136=?f$TPCIzZbOrhu}X zX<7K|l6Fl6%g#-Qfp+c{VQs$#I^2a{K#w=_VGgAL^RO6@`?(39 zUs{g70yc)c;SSf12V%;Cq!2;CPEZP1br#L*4&jgGCxQB%P5r(U)p;N#$GU{oma05N zW?r2*z)X3O%2vIcwZvb5if4U$A!B@bXCU>D7kK8VGG25+s7p-<%nM` zux|6}Q5M?1dHG0j6kuO;I(VcQO1h?yi5J6ril;i)r%I7l)iZK-q^sKIsErFK+FY9& zFeORfcACO{iHyo?p*W>Y!Gj#E%Li3k@3N0EUENskpoovTjk46G8ACbJq2#d6Q3Q#Y zm|p`Tcdrk8OdK;hsELr_YWSuWshk4({6G=(&36M8)kJ$gk zBQnpcCmjS8zaqEnAz&`ZQ-Ew@ZgEF{l$FYTJ1nFhXq*}XHK`xOL)H@t09>~V-zC>YPejCZYeJLah~)1Hu^3qe^$@rciF;(naOuQXoAQDQ!KDMrrU<=b zldMo{6Ln_eWsS<-%3M8ZKkFzH9wTR1+oVmvJkD4c1OSj1)&@$5gbm-PU|!$WR8|Z& zzak2|e#ChS)e>dGbWKBLHSN5=I)nO-Vj&L{-+FhM!E#!*S>p+R->J#bfc(>T@SJAK6UMrVhq%4 z#SZbDMaC+tW;qcWEBdS?ox9P3kQOl*8;8ixk;2#TdA5DV7=sD3snkMCm)nY z`SZ*SRIz6o3y~9SQ-`So*r6Dk%FZ={8hJsZT$+t!O-YI9{S`|KWtfav->ZN;E^Q73 ze7cr0a#O)%8F^891)G>fktB^gp8ijf5z(kjExc$U|Gu|yrL&?MGbF-Y4ZWy#OIxBV zeThg9aZv&kb6Dpy+alDA&6)xjm~jI%LDDrNjtnFrPp?8eG0#+TgbPKg)WFAu z5Geeo#NomBBklKt`-_Y11o3uJu8^9aO_Du^I=#^hB;$)+ATR*ef2cukrvd-bgn z5JOtzOk{YCIkn5YLMX`4%+k-ZSJb=EyYfiJA2e;$&`s6jCDk3Nwz?nZi(&H+C}fYi zr73oSf#Ox;rTrRrjLy$8ng(i32~Z$j@8Y4@5`nT-lN`Pi+E*j^hi+usU0}ElUYIpX zL-^npQF3409B2sZA!V?Mh6SVHKo1n+R7Q0Z9ZBMz_FiRMz}q(&v~F}s)+WPN6?TeL zB_z9z_xJy*PJyDZm(in*ic8vo?SJezg9dK@yz`!= z2)aJ2(C#bcVAO2o5$(HGuZZO5JGkO$IEG4F^VlVO2zF=V)!T2hEuCR`DQ`#CBs(X# zsfU_eZCKMfs-C04{oLfzK3NtSUtA|=Q5`N_JmU>CWEfE$sn;~&bmY?G2gRp|i=h?I zF1@JI^1vKB6dN1aE@(rL@uJCU)*wO?%8#UqPhfRQVCuLr(j=TRXb8UOV08mcJodw| zsA3r0f!Qx&-~(UvB{W}~(bXP12RO3HD~MDF%G-_6N9yR3O?^^~;~u8i`N(9A7?gKwpsrS=NCwcF@oa4*O-XcY z4lRX*8c4$*R{<)LcyeLUhOhckE`aZd-mG|fO0DB(sg zmMKu7;oqPq+#C@nCEMuhj?u0{U!+J(vm5S*3)n6nmB{Gd@ILN<)~GTo(2PrL<9Chd zclqoF=xvV5wuO|8G}%~_l}~{MCxjn?DCMpIzfa9&YkzT%Q3!g$iCF;&QQ_mx(t@Hh zByq73Tdf)v;cSMYa`ml=Q9@|+vy59puA^}5LhP7`0rW(qTG?qjUnWFR9>qGNNe6g< z;FJoL^{c)&^ur2g>uf3dWn{-jT)LlMnp>Ke&(b&AHCmhNTVOTdh^QDvWB#nMzDoZ4 zEVdun)wd{mz4i$kh{Jk-{I-}JlM)+LZrE0Cb12P=HEigYT@f(y?3L)=Ig@r49gsIe za?A47*NYZn%zvhh0`QpQ2U5C_9v?Oq(Fs5{GDE=nV~L#p98;0Akm!e)+lAaWC7O1F zO*Ck*5kq@;r#`}lh(A_A3>x0y&2J;J;In6>%z;WKA5}Xb1C^m;ngWI%0#ps2=0HAH z*T*Q{=L=+ewLJMkC0l_W0=_u|vK{6WxxYe8mLviI(=na62;T!meu251u@^k!z2=a( z72Vy4w3c^KTtSk$Ete0@S3KvMAI@_IZZ)8bE$8}ZaMA`_1g*$T&HpWD;h)0NJflr9 zL=DuTBoLhp>Jv>eQj~91P_#2QDUC~!G{6R%{;pgVXD8C8hg^~Uq|qn5u_ouz>7zbO zLBw#Wg24K!vOwjXdT;sc@fBq7bQ)QT~(iTcX~G>p2*AA<=`9t0*e(J>xC8 zmM-|}2@U1*CfS`4)8)Z#Re7YORaIg@Winc+IxE<;&X&zP-an|1JL0s`+1$9u8CDTKnq&cYu z#NTSLbasxi#E{jRMP!UC>RkaZ^F>WRT;1t2_Qs|2U$SQLXieaFj z3G%Pc#>#U3MU~3Q7(*hR4f0V}vgod1qqOT3=U{ExnD^r%$Hze!fGH0_z>&Z2tQEbW zfZE6bI&(uaS$cVoIkJum7>5T$xPCzQ_Jecvj7m$od_yV`F60yCUs$wh1tZ_xOB`S0 zu1OZEWZRksQb9Cko;i_|inmc-)kjW-MSrr_9sWepzXsJ868$(N1644Gu@6e$F(x~J-_dw-=?!)EI>%(n4eksCS^v=pP%ZP{CA5o? zgUlg;3Oo@d44ARe_*unFGoTvWa7m5Qy?{(2+xH4_zco}9>bNUQz;H`z5>DK>4sOk7 zijt6TN0h*-5am?s+wT1V+;it1<`j!$@+{%77Gc$> zD}2@!;t`(@*s_Nv+g;^`UWNUj(I+lk1olC5&@A zHC!ANMO=v1k+Q|IqoZQXDWRI^<`%}-azVT|N*G@$>@}QTqDY4-#&Y!*O`MPlJ2l*w z1eH}V78F#cd19nI2{7lBWaYYp0tFrEr4sE&nA(7h3nUzK{yRBO-|~T0><&3j?E^?T zC-EHjNNB#bcBWox-7s79oLzTBDVwYbe5f#Rqx?|k4=#gHxwWSoY4j>T77f=ie&-jDQL@yl+P*CU<55( zg@Lm^`Cms}PG_q!r+*5hfrQY zA5b*T%QGqK4wmS0`6%sVs^s-$&ffAnoWaFxn4CB1v zKNYeta>h4nEOZfuBRG+6Yp-Zif`nCC4b*rDA#%}h3C0u+h#rkRU+4rXS=SL($!Riz za@Sz|)<|H^0cB@-+LCi8W3fRPpg*T*H1mQ?2~h8W)OQNc6DJoplA9RY-hrf15@ioP zIs0t|DZP3O)Vj1DR2Dwro_93bxyJCy(&UztBa9uR0GeBs$nCoLUrcWf)7#a1)aBwL zqm!gJ02h`hX(%roM)@(Kd`Y-P61uyzR3wu9bXACR|Ml5yi~5v_lyhe_U+ip zB~X|t%sIJSX#^L4?0Xy^X;ungH!L(|Ocnkt+!Ie8kCcQ~ehH#4Fw&dJVySZPhOGpb zfcu75CIL#Rx?I6aj%0ggLLi&pH}!;|V>Drc^m$>)X7}XBg?p>aRPdfFdg9<{JeU6! z#s&SiA_cIjv9270SZs0b(vg`ZdV53BNYbw)H7T9X)wq~YlSaKec>`FNl->6F4&60%NMJ4%X-5guRw;--oPL;6HCyV#HUolkAlSMmv# z4ct}uf?`S(lNo>$&VJ1%fTDGz2q}nLE2E1Smt5}J;k?G1Tj?Lyf8jSa)Km^{y#+V{6v<>ZM%IXGg7% zjj0pZQ+2KkxwcWAquuAuB@?jUeUC1Cs8oYy_(GRW91iKuM`)r(XEq%SD&;WWa@xF- z2Sw?OXtgA5V&2tL!;&C{OlYXm%yL%LN8;iDj!O9q4Ce6~C2r@W4}KuO{SImf=~osw zhp(-~9#|D=xcu?4gaC-u^zt1)PpD3D_=I<>=seryMP@03dUkY?Wn*+!@4MD1BP zrn8(Mo7|Zh%5g%M4C;J1(4}&fVgiA9-i<*Xv$!-M|6%nK_(ORBEsJ;R;{?HW&Ta@f zc=h)V^RM%#-`jcivX$8dXx6DY@jb;QkCU6CiT;+lV1w+6J zk-}+@tsP|sP9ZU9f3OK4?@W*A--sSb;H_|sTLB%*4{1!-KLusMnhE@3bkor$s8YfQ zpqW-qJ7|S-K}a#OHZ9X}LH^hjI3xfXyrS&dL=Gmv#4QR1tpvfo!<(N}EG2~($o~ax z4GIEorUf$A7GzLz(K@39P+^qakwtsjH5QhUR|^x{Id8Aql(4R0lmV-^B<2lqSuA7J zkFPLMT7a5Q+mN}@8_jWT&hegpIe)+R(WuO-#H84FEOLU+55P--HmSbj1EjY~o;N&Q z^iGr2urg+l!XB>Y^dahLX?hh3OCgg{_@II!MUN*^Vu8NIm#;ZO(&pgz5%IcbJOj?z zHwUC~ZF0Ce`hz_d^ad#IHZk-D0$)$MVp%WFc-GMa2srl!ys^VLPxNxsDP_C{>fY>T9nZI5vU|htZXZhA*c~B^U(H zPJWPtM^Pdr$Z%cZhd(I92s4b^FZo^QE={`Es-Uy^`nV1qYB_kv7Q+Y@1f5eN@lVi> zj}t)?gmEhQuYn7IYT%w*N*P0#ox44lNwXuEs}$W#RG8n#DBs{XCYWC+Z@JXIaD_)G z1zq&wPcP(3Pm^YbV#*sjMez9F7-+O|vxA-O2S(Bjnw2Y~%+191y^wRd5M;Gv6YrPaHtJNK43tW2XwkJgHB!Dvdj`bBIYvd3s{MwZiux59_$fH89Neg;WthMU zA|x-}S1_PlxqWhO;KiK_H&o}4vMh_Ij2Rt1RB9xCi5lVz6__pV()fXr2QBa()3X*E6~&L)WS_@VDt8+{B9tZ@Ctt&n9g03lt)L>`ZybH< zD-cJ*;@$ElraZ~bBn=6d($`c$WtOr-7hTylzUWgnN@!(6LBKX}6QTF!g~G2YV~~aF zz4(zJvJq-;G*OzL^?;E#H6w<-8IaL2zP16fI4R#ku>%%88yBqveHG=7ZD0t%Q)!3+ zBf>c*z063{soJ35aKpa@=Z8-&ZeSJSc|qsrg^T_f$aLx6PKJDD<5YpHjgg1;hj{zk zP)zOGP3&JV8^4|FR@LC6;K^Iplr`%_#4MLy0{4C==FPx+@jk4p}mv z;}?(chG?yXvG@?ZY>i2}s{uE#2O`e;j|o#C$c8lcAHc-sz zl!x7A86mx_SlM8}f1{6lmr}4G@Ym>v^rD_y_Wm zcTYi34Q1vQz#l(03#xL$#(hHa0=c9+NBLI72pXL2si6bd~$+fiw`Soj#}qHVPzSNs;jx z%7yYW;fiC*YFE3O@RND6p|ccINF3qZ4jKv1Hgvi)2YB+>BUe4`=aTR+D#qZ*O?P}4$d60B7AA_1Dr32S)aaoKFJu2FLZZZz^)UD{9Y;(imRHIXbV#MunCE+ z(UWDdWl<}#bB8zF=pL5Are`h7TVRIEnHmE*4^QM7H4HL$F^R>E z!EuyNh|nx)&2JwwPWwu1B4%>tOikP)FPMExq6g_h!I5fE2$Y7(raxS3-hcL^**H)XZwREX0(AxkO{|nL#b}5Hq#k_MyXxsmNnkrll)~iH=}nz z-O(Jm80Cgk-EAmp*M8k{K?eU7uggQ-S1@|krtC~c`VLxPl*awGm6$*k^<@mw5yZD( zNu|b4*LT3#8e75FW;QukH=_2XIpa@fGqQIEko!cO99wqwUR`==Q~fsOBOs@BjpW8Q zn*LEZr5w&wp~Aj$$^%&DYz1f_OJn|mmrIm79yoUOVnz;v4BubFOJsQyyFsfrW?FysH6>ja$m_liDW;zgCM8S-bq2Bv+PvBLOf@)NFkYH)nd`RXB%&!Y6t za4lD^eniM;g+PR`V8Fqu>!mAebJajq;+ zKZ&i^bFO;Exb(HJQnOFf+@t6WI$%^JKHm4{WPGZFTwvMQ3-;s)~2eO zX)8QoFmN@J1?9oSQSKLSCgqE``mhab{hZ)7muO9saL#B>(<&TUSLT&kIQ4x_-``Nl zABsGGKUPUeoP_vjR0ha-O3#?J+#pgU9||cvX*(9@Ly8dY-;<<0wK-@WIu0NC&JU10 z@2&CNjBgrH#`JS!&~)F=CpD^cfxVLfFE8eEHt5imy+*DYR}ym#boYwi4!)kUkcZb7 z$kG_z>4BmnRF>cF4t(nCpZF#jD3R+OFu;Hl3I^tw^Yas1z9FTS917VIIg%s;yC>_v zJum70xe6RLK1;2Pp^D8H%_-?LNYo*ZpPAEU;(4p!sdJO<1tX!^Ho&@xS3z6@O|S;q z`++Z0)&dNP6X%-B`H~~8E$iS(@^;IXMMov(>4?~q01EZ9X62#V(8JIqS2cVYBN_Ha zC;%E8gbR~q!}TRhfe419a(D}HH5a#(LlQ*oL7+22%y(}W$(APYd;-;5%8E27KIz_u zgHW@~iV-D-cW{uYxt_)6CU}Mg-PNqSn*GBa(p62V_R$fBF=y61h_28wNa>eA$~Tz9x(@c3&NQ(q83ejb*_h2^U|JUBs#c8Evl}YS*si4!fEKj z4O&Nkm_8J!`7<;2_!#sj#26N$QEL%Xr>mlv5~kSO0YEOEHFPLYYkE)q)RJP3z+<%? z&}1WgltiGtBYW`{Nt@ah*}PK1kGG_r2K4e)WLKTs$?i(LTW`k47N`8e2) zb~<>@EX=b)w9=4|M5yy}>Z-l$U|5eqKJRG$QG#;Hidn}iKYctidA9%x%b4sGtk{G8 z$4f#6x&^;qa4d%%l6pyj9WQDFl9h_wo*=qdRvi3OzoJCkD>EM7C|{RI@_+>PmUd50 ziPRvTM!kxhpqE4j^S!U2)Cf1q(D@LhZWd2*eDRRdVkVLtlc-z|7ka#*FZv{C)Xv)! zLqxnaPtOxN*C_Rhp%|k?Q^`>+lD8}AL@k@2&7z!)FOzu^*IhUYS7i-RGr}{c8NP`S zM2{`GWvaB(4a66Tjn++dPTe4c_FB6%)1L3Ng+nbA8LjaPW?MAcBQ4Q3#Z_|bj_eZC z$X3YFS4Ios3%*gru9rR;oM4}Evi!j!p^-jPqFl##1p6Dz$*23n39oqC{8MBvNRb@L zUfzO*4B&V}T){S7PNW4GF`-KdtU~G_`7i2Yf%ZIe68*$%OZug#umYtdgoO+cg;PE#*`XMh3%*5+!yuT=orEfD-GhJaN;#56gkmLoGi&pTl2~11 z=xcS$pEr0=*uJR>!2VVSOITze0i{5h-}?Bk-Qlknlp7-FsL3J&iDm~6ISD<|RMPtt z(}9kKYF|&ZuP55qjB?h#dO_SBW59)YO_QSk(nrNlw9Xd^%h;K?RhF=e1xGvcEq>A4 z))QL+9+`aQlz9tcq75L|9D7n}{V9|0N33gch;>b!eIBJQZXXx-*jgLkMTnFK|Df`4 zUQ5D{_UVXsplEu_d=8=^hRDyFm&KT!h32FbzpO?VpCmU=Tw+(32@6Tc;pydprR;1A zW$^T$7&iKFy@<@yf?r*mQ0~hGOj^A9Jn0byr`4Cm_^Z?rc0U8PP0VyM*eG*o;as5%3f_J8j+VF|;0I7F9o=Gr5JKN}q>}*Ih7`Z3K zC63~LQGW-Dmc~ov%vyugD{_kZ#v_jArX1v|{%EA?FYyhjx%$8uvmb{eGqNJ|8G3o1 zLLgUw8Ws+Pd1)NH%3qG24Fn36JM4vMI;Pqh-fhH`U30!fa}JRcqDHb-TR&HBhnf$f z${1jKp=-DUHr_At|L`&p*$LCD$t%UW_!SDx{FI7G0QP|@axs_u& z1lwZi79HCMXi*BEElgW#`jluV6B1=DmoYR`OfaC7I1IZq+;iIYD@p_7l_@=HISysz zxCo4uFOv@pMS(hD43Db@zEqBB5-k>nL;6k$y-L?`vWq8+oRCC}u$)Np7|-mU2gIq5 z15+g>5=J`EO`=qmZ|i3`iZl;2AGnf{L6<$|+oK0@O1Y)Jm=r)ud9mnbTx}NaSl%It zm{_vO`hrd@`!=VX6HDTGlQ1c9&WR3`i~{ZGI)vVEY#GMb$}eL%1T%_~y?QwNsA(Nc zLuo>&eZ8g^y>b-ZFl93|R?DvVkj2b5D|8Wu=GCFj#9jEDnAe?}k(xM05$IDW zlddR9UCn?1v3p;IqX~!I)z@l)^C)Yog}kI()fjqacdmB0;TD~+FDPaTG}EhqVjwtM z5u8+*xnX~WxE(NAMxmg>%|9iMsg)gt+`^$+&R_!gLONM1up@eeIMXw%*-2G zUbqx0BlfzwMxQ$$-rk(zBgBxQAy1>TWQ7}=O@~nVFzBJGHn#*^5Yl4nsX_B6}z0>On zm9ou7GvCl;v13HR@E3xP;iR-Em5oE4U{c33``{M`@B38gY((b`<&QM-9mH>r?m3;U z;s{pXj4YQ1BycpU0}2u;vV6srE9;&L5VQGa7`Ga4%$Ql^R>@X2-><>iRZiK$M|*y! z?sknQ6+XM+&>TjThId3M4j}cPHk+MmhsUcZR3LV!B7}E1uObEiRa8RVNhyx5i*;{& zAZT8o(eLB@7De0#+ZPo-*8t04Zp;T!%!o;Hpu02phP0qJl@($DO16b5VToT^59vLk z%C$$Xg*S}SAm>kMLLbYKsKI`K1(lZuYYg1M`}?l3iw`@xhG0`L?_`~1L!sh2=_0h@ zeDw3AZHLZejw`;P3`X@Wg)dAg-tC;Co#2?Z=Y>^46{-Ya_g;b7OIHOI)l{7ZJ~PYS zAM|c4_B{RNt-$wO$@cz|rQCOkacY>nawgJbJB|QtvxbK;WMqYhcOdqa`TYsLfH5d@ zzYBSO9gon!*J?m%)}qqhtxM)~yEtE&`%48^)_7IN)v(Vg|FuX})a0J%QPf?u_}G zMe22ILmikQmu5nihrn2LMj6BTjdFutk5}y%YZW9!aq>1^WLihRz<=5+&=Vl^Uf-1T zBupz&gPo(8-ByrHyjhct88uO~b=+{Mv8`@+i|7@itvOtpJ6E#X_+n*by36*+W_P{f zOw{zR-CrvKHC^yiiw@1;sv!&)vfM{2VJlohHIB%p2PR(338LJ|O_{g%M0#>fqv4W{?53x!T zxo^lalwQZPf)=;uWD>peJPHy@Yg8dOjTNpFXlRrvkOmD)X^mE@QkBvKhN&G5?`BJp zXNdy)FG`%oZ<%zZj8UYyz`1)WUEkn=!qx`ySQUJxuB@KHly%oTJ%Mm^E-tYr%I|1& zhsllt0S|l_ zL)=sDH9o-i1~(6lG(kEx!!1fiD@5p!2xdW+!EScB!*yQ}Y4qOD@`0A;4I?cU7-rI3 z+eF)Voo{86nvNbs%=d54&13c23UKQJ!C;fmkbmXYtRzxG84l=zSJ_DuF5}}7l!X}^ zEaO49CN0z0%&Soyjb@$&8r^eZzTsus zP*CZGNt49Lbzkg9t~;;CRveE@em6=cpWj(8usB@7(+Uo13UE*jRrV01s+S3dE8D%y zRz;A*X-c`$alDe@qKc=*>Ab|aD^K~glEG@9QnKRhA$GO5w{=~peBoC!m2!x>8oCd< zbIdsLjLd48#K)(>>lP_mC@9&oy#wwMgM*zmA zzuMpQS7L#Qi8x26XPzJ2^jX^UBYtsmvfAJDIk9?3u#eoqUB9MPS}eL*ZzK9Q6+sSc;s8sH0g~p+|wZG;V>07_gF=EgYA+bB8 z@S#uFg*>^%L^=hz5{5^TGTHqd-- z^+H4@L%fYYuk9Wh;+5|?y$d8wih=ZFAm0O?b`+N{<8rb#aryk)CkwYpXJVp~q5?l3 zaf;#q?T?Vs%rw@|`)B}?X@G=t0bK9geYnI+AS%b!QGVn=q6drQ zM2WagDSEHfs1Ez_eKEXuu zvP={7oN%3p>UyO#=@oM0@J3ybK6j47H6=5Xhd}Gf)|t=#(U>Sqy(pueIOEIq*~|egT1EDPN6W(KQen_D zX(SYP!z^17q7*DfKpgO3g+-PP0gMa=wifb3CU5i>x>(T|>78mr>9 zu(M)Bqq*}l=E-$_a;SC9W{fvUDsSSF)V?vs-`nSwMG0l`=~#OFEW0xfxj88l!42oX z1b}lR=4XKL3o^gQC;-oe<<%lvHs%Pl;|Bm6*^Wx91zE#7N#K?5@pdm_yF_kxm)&wbaI_RIww#u#ih-u`EO4IhzJi_rUS7!y{Tv;0uESm%`p`esZ z3P7&WXYCb(rO3A9PQ-1xsh#cO6=NU_unt5}ibrliDMKldw=jIpw29A#^hThxY^p7^ zq+PxccL4Lx{VbVKU2SSW471`foe#6ko=PmP%*|sQ_Ug^o&+Gx+B9Wv$Z!$s%eh-=+ljNGI9?v^#S_Ue6(6q zKA<(7*7frp{J=_FK2oj-GI{1U`xZ_~EZ!5n@OKt%Y zp4)DM*TBq~bdM|}cIHVZo@UEMi7IXBIX2}d=WC7kgkh~jV2YgH$2mQi}R zZfVI(mk6mf#HbZ|qvfg^@pmHhr4rY+81ZO_*6iI;jM6n^H=;0mDV?9iDFLKt*O?tm z5#SgOT?=!)JAUk!QkU39ocO@IpmgmU?7B1$IbF+{ayJ#pE zc3rr;P2LQO2diLizU-M!2As?Nm||3`tn~9+7w+Pb47N*rD7VN1s)QEnM^y=9(BYSJ z1$tA*&DB5H33Op^1Sv(j1571J5AjsUh49S#Qf{%dDEzVg;-EXHickF2jB`wXI5ds% z&^$!zeGF?c+S~IuIg~NwcNq}+H27s4!=r0&SKRuYc5QYlmna2iDQ`_J{ajx?5f`J& z2RZI6Qj&V~nhqwev9Eh7*^1=7yb!juC#xtQM0#TGjE@KV zwj90Q^~`Q2RKsuS6~cG+!J3|)oLPGt!QGnISk*Jp{IqqB!-t+#!jr%g&SQPIqMP?(env)dN#Rw2^Rz*XtZWnWnzxkXa+wM^azO} zI!@iMQUOsk1HJ=j&#c%WaZIV9s?!^~>_YcVOwQ@Qlf7m#ORyFx#udo|59j_lJqnHC z8shHCVoRO6JjJ)ED4Q%>Dpul9s5x7YFd6#B1c?zH-x4A)!_37LL$A^D3#aO*lTX2P zF>iN+Pe1+pr&YH#Yqm!}rPGaWOH9YJ>7+XegY;>7zL<1_Q2tD}r{nQ-lAg_{!)`nL zN7xeTD_-7ldx{(bXYNc?;mc>RGd{~rdwa}$Mn@~|YohryyDar69hJO3xO^8kY_9+!M`@u;{o>9y0Jb-ydC3C%i!EyY;)h5!A}|4e0mR-XXyA3S-02J$;LKZR~T|MuxuiL2DF zsphEy>O}rp;D7PMLPGgtG!vYQD=Pva$YJK2Z~#zylhkxBN#ZoZ0SQuy)Q;D)46CZWVAa0CKC)JrxXPxP45~RFdYAjEIlo~$O z1S)7v*5n7d z->~(m8dL5qHLp_wh>-Q$r$aR&Tyi&wZ?GW0eQM!0{O!|;Bn1r_KYZQ+hZ)mfx&2>L zwf1}p_>s(gCDA!u0gjr>sn@}>a5|H$Tq0r~wHSoqERY9O-wOwe)~P&=(%}l_vsmy> zdqJ>}0((@a(;q7Oq>Z{6*Dk;BQ!9j0qw7P9h97sL_Vv{5I} zW`N}ho)8SYUf7^n#R~(7NCh};bMrYPNjUEHODZezr;!-J3yd9_o(`J9AhFf7AwFxg z8aF4T!V=m`+>!E}nsi~wps)5o%I#fPHm#$G(6w^}_)8FOe93fW-Eh8Whl@EZ4;)5LxQ%EN*q zvpP-E%fdgUBR!Nyw(rGcqRmGg>3a=i?UR_9{43SaQlsz;#|faDgGYR=M|E&@$})^T^*>`CUhJCXt=K|x4E`HyzrE4TL41_mFcp4ZA0)MstqZ1oE1gCmuL{_?};?vJr>D-RpA{=EHR# zkx1joA>I!6lR$u0r6w^k`>fCMT{z^S-i@+DeX`8zU)=zpjFDup8&mHIhB3i<6*a;#lw zk`nm9>vXykz_i>%!9dE6vBI02;J-=PcP8;Bhcg!vQ?mzw<5m*_KdLkDLc5!lci7ojJ z*x22!ryVZ{YrhcGBM`9r}b%5O5x2J^pI%whbZ|yG{{xh@dQb# zOLXuSHP+Lq_KK_+B#P)$uJ7jmu$(;t`#u#MP_Ph(d`(60;8D!tdC?=o1%^GfI zT|6p)5u{;9etNI!KnfOE_4G9T5BAjU;8w~-A9OHBE2ktM6rcv(ZhUw};P<;B!ycHM zN76)qLZyx%X94O7I20xw0gA`x-62rgI3x*ZN4Y|xTu)$aU?!2|FkOVHX%9@=J+Ch{ z^Y~2dG{a_Oq35Ig-=XjeDnD)Y>F>I|Rd$Zu1|b;W{cdw9CB|Sn1}nTghUDMfvG)Z$ zP7;8{jL2p)T}W=>g@=hpcG+5h!a~-A={%77lq_Y$W(Q+1M^v$hf+j;9CKQW9lSUP!FK=N~l#>L3ffwz@s3 z(`bix5>NYQ_tCGZ-+qg$|E-0mq*j0VrOTtI5{Eqg>d(8IFLJ3sdpnYRy6t=I5jBe$ z@X@cPN@vEvqUoNjx5=cY}6Vs32#L?8pxYgfM-?lzFO+~HWnV-Hd z|LFXnuWy;(m&E+yR=@tTHt=bw_yEs#e`J5(KkuQ$^VrwNl{a^2AUWZ_kQ4u&J){H|I4`Z<#HFCXkTd1#Wc`tR~F%SPExhln_~rq zy~ER!-?Z69V&TU#*smT>MnRFJ=U~(g+k;uN^IdaFw%VIlO?^(xDQfi5C=dsv&nIe> zn0XKn@Z+Hog!0CHG}I2U>^D9w6o;+Z0?S(dvSa0jnQ^Jh8^h zh;u|D`C+c2X$KQ2ZA!&^+LyKMXvUJyOLYkpn$zxq!9LPqPvvmS1pojVb5d;vc4|!06{6bO6hkMzR z7x!xa>yKeu1MkmA_s1CeK5Tzw=|Dz8H8LLZ{}i@SZP%<6@B7me;O~fD@V}&fozPiH zlnKDSn$R3$q^Ah>FH&8ET2gOM1@rbVWLERW5P_VAx}Z+BiC3S_CQ`XiHT_Uldzh}U zd!<0`juS1&w+w`p-y2EDkBN~`KRt?ZaRB=o3;RRX82BWQ&8+-5?kX$Hzb(D(El%pO zQvertl3cjW*}H9OT{+Fpej}h3$zPN0sBpVqI|!TY(M`8GLuYofQS#eBOMP??bj_W`gbh)LUMk}UN^x@kpfrLzTf5Z z-D2F5qA@QpMExDACdWqtN}4&|p(7UYKH8(W7Hs|cQ?K5-$Qu6!H->0zroU97*!n$Xqf7mmk2aiy*gr7Nq&=`VKsj+?5 ztNnbi7OPOZ>hBMql_fO zJcz)N$og{Y3j3~RD@;YdA>s}q(jWpSLjC{7`Lw$!=dPY|K*yHA+%HfcjG^Tko>?~gXk7b*7D!Rd@zzGnXey}<^NgZ{%8l(hhH_(e_ST^vqviX5}^DUM&=UUlvA3vMD zmaXPqtyXi6Wjbs}t!DTo8266|m;C^M_d~5wyN#cEO}$a~%lgaI?@%lGO9I*qMp~-@ zeHl!(vf*TJ5nE>$^5NMw4kxw6ZsE4~W*Hzt`PSyEXc z*W(S}+ab2Wf#n^9dsy^51#x?F5MFOG*ds%4L0BG1s!LQJE@*^~Hk09UZ$FKi#6?CU z0{R61#GMh>X?3VhtF!xMKzLYa(-<*G`XY};YLH}mD3N@nb@cvcgzEjz?f4^hbn;HU z(e{H*B&c6Ug1?8(qtW!sXvR%7HaMDkd+Rjft&}LE^JEkd=vw(;k6uQE)X`#>k;#%6 zgYA*t%|6reo1Hyc_Vp6=J1?Cl9ZB#z-P zwX*GYkHE%FZ|}4{8aHQOT4QDu!zC=MPWt2i-f-i=d~cFtZ~stZ;OE++kLSbvrmKAp zGv4ek%XmB4<2sY(U~j1=&DkE(CY@matdWIZCVbH7t0RA4G0c)_tBFQK(_jzS zS-Z1`w^^sX2gIxs?w9ra{jzbeH>p|3c>B`QM&aLkD1BS(Vd{-VhqncuY1)@LvvYm8 z`FOLpp7KZY%X~3Y0>VtIzM$=~7(wScZsvluNqU#qQAq97o)wZ%WiuQ)64E`kI5}r zW6+Vc9QXE+wVdt?XHp#7>u=TEo5^arU$j^p7LC?Te{U*l24|$Po(=O-4Z>~naF^R| zb8m**!8?)}NH$=K^V*90_}jtG_sP-wjd!KG-Or=1i+oTb8Tyw=lLvx7l3%BBFQcyt zqtIXzH3<6e)(ZL`Kpw8X4f4&ROBLad)ZgL5zbLBev$F5}n2PK^oNpjC^B41`|FH18 z_n2Yi`xJetF%N@w@Dsk5oy|@P--C7#Mh`45j0P>xP^Jd|3yl6A^f0s2(~G?ZvM_t` z?u=sa_*YKOE-p|LmOUH*eeivB*_!+=1kJw_K_^$)ll;N8S7_SD(aF`>N&f5u)JnRz zILYrdgqh|~uH-*g`ICGGDdP~T{{oZL8pHpPa1YG)5E(5~ssk@Mb5EZ+ps|=jp@j)nVK&5x0lN-24}^3rP?M*ZG&! zjT2X2OwL%RTtXkR6ZjOw!&|JrwVaz?smy2+5a(R-ckI|C!l3x!EJO3^y`|lFN_tD?! z>E$~lc!g)!fss4!jeL@QZ}5}s`{QTj1mT}UNa-(r&w}?CtM5Bf`pa)*mS5im-%jfJ`aqKm%k9M^wZ{@gJ$6Uo+TR0|NnP94gTL| zu7k~YF(B{IVH|$*3Wo1dx3~CS#&)2O)&EU9WYlbZ7iLGlOTZni{y5%z@I8IAw8Jyd z@NuZi$@j5hKm1NP9Z!xAm6`n48}a(~-krtrFkbd`pGeioEAikg!9Wg;{`E;7>gzD~ zi{y^ost0B@?tkCfj7Q(fv=c1)P*2m}BgwNo#hZZt_{%QB+>E#q-!Q@&B>+ zZtZa#N21_gDbZY`A$B*=xHlk51CgKv4@htb&>9cH0qY8s*yw6kbrXb1?6=Dcjn?>7t%*KSvGKtf4v74C@zALlRDq=OMD+9m1ZCM7=9WTyC0u>kK&V^mxG2kcLe{UTery+ zZO)rF_X0F=hq`C~wxzHDT1;RF?{Mc|zvfXWZ+r|3yJ!vxcuStqIl9T$*d~7hrhN?f z--~H(ccky$;%)ESUgtK)Hz>6J9*Q)K5GeBJdsY|Z*IT#jUeNm8=8{jO;?pf-8gWpy zbJrfC*ApYaybaWtE`UuBr|kBnY`Z}Bh6b=Y{7FsjCouW9=MYX4Nx}S<35@z+K)ijM zF~x0E&#B!~T{E|U_RTxZT)G1&Cj>^JBhMIhE^Ahf*B>1(&iny4UYJftYQkPQb4)+K zbK7Xh9i9wMVO^yU5|6^%7_?n5EF$`48$Ue}=a0rbNB)g@%`HSWAy_@Z=!$XTk9tE- z`Hr+JXf2zW77M5P1BGIXFq@m|qhsLOrQ3PEtJMHbV!=Sn(bU4~=hkEp_x<5%`z-A@ zJeO$LTeXG#HD<$@cIdGSSM{Hch{|zrPu!sTUX-4s!$ZZ-kgM@zo`q`?%6i|$gGwB} zWX^aN8?KWMMWFkUD~eqR-v%$*$SJy*8Mk=K3ifXcM%nG$v^c2U2n zJLcg0@NB>j9W*WUA6he|uz(wGmObLewyabCKq$n}&yiT@Ip@&kn_57yT2KVCW|bf2j?V$86BwO4r*Zfk-D!EX={Yo9=sn<@`)V1J zo_|74gz<3GYP)7-)ON*9dasxHLs>**Ea*U@5!N2AW-px$2y2bB%sePH1;SS?kn5c? z4FuqcQ{)L(eM%e#{yDMn%6gv-w(7YLnbuUCSmI=9-e00sBQ{!{2_Hmdu$7M zw*S?jFqCi#rJ{?ze};piH^nBh>J|~$fHS)$x%PYxfzxnX?hwe(n*}M>Jq}a2)j+()SES$`gxtx7oa@w|gkQHuWBDr5ldbAEV_M%uoHf+e+^V@RhQ%<|SpLyaxNReZlEl|TATKhqF!sT++OLYbs zAl;q&!{7YjZ~yRjfB5@9{KFqU`@@g_@RL9M^bem~3S=J&{qev4@mGKRzyA2^KmOl; z{LLT#pFjS;fBgUc_*+X&+=D{n-~4#|o1ct-^V9KfJ|F+)XXD>|G5*cZ$G`b<{F`5l zfAdSTIGQNUjeq^)@vna}{`F7Czy5su>z|E({l)m#KOg`4%ki&&G5)nxyoVPY$q{JVcY{@s5V|L#AIfA^opzx&VQ-~E^I@BUBgIvj^J{_@A;FMl%r@~7i3 zKOcYjv+I-Kl{b_Gpjf{RnC3&!~fx{AO7&GAO4SD{qTSK>WBaH zS3mq;zWU++`qdBrx37Nqzkl_^|HHZ}qQ3v~$KzlAWcf>Mic>JrMjDPjh@vlA~|LSMsUwtwD)z8Pj`f~iMUyOfc7srVl z|MuUEfBSF8zx{XP-~RjYZ~w#ixBqec+y6BF?SCHs_P>mO3(G{$qwfCY{T+(^k`|e_ zw%nzFsYMAXpauW^-;96%x8vXc-T3!^KmPqcjDP>x`1d~^|NbZA-~V*{`_JcQ0CZWE zacCDjDR;@!dcvq42bw?=t6jrQ@K zyIa7<#{xt>fjT(#1DHY|4x09P`aC_u5J$v?L}`)$>H!b((c|wNEO^ohI=Y={wr{P3 z0yI9@oWme^Ol;;F#s_>pIXW6GF0OQ1l&<=etjXs(fBKvRtDNvxxX5LqHBL78GvUvK zKbL|HP6GZ6JCsC=obXr7ke1>VPGU@!*ZJ4w^<_@hI9cb!m&}Nhgpv&|v%zgIZ}^;q zoW%UA-{EALKa*8X*6DL)V~G=nzq&+#SC@G{R#(?J>B=YP%51G}taH-Eq`SxsbeH*a zIp8GXUso16>B?uw3HPzP%DJmNknUQClNJ8l;9Tx%cVn58Rmo&X8`QOKmy33#Fa8E6 zJi2bcxd8(T*5p_2a3DPmxlp*y2}1~ZG$A(@(u#E>E)wyNQN&5YU}7FaER7`mnaGe5 zS}K2WnG+t1zbL=bSp3c+Cp;E^X@e6Ui@(gd%S)UvpygFg);QrBydeHE&$Z7h;mex( zt05;eB!7*&>#uPa)|dEmoiNqssrO~-{f&qd9nj&aGNsAe!{;dR54gw;$)c^#-3m~4?U^(K1CNSXH4OZ4UVQ?z}C*1NX=dH>YS6}5x3>ftTS%-kP zf4~zT$ixS{(F57x0V93TU6RjLPPltrF5BhSy4=ey58h|6{t73&`vRtZfiKW`ZGwPn z23(WrS`hNYgwk8yEI}x<$14`_iUqt|0$Hjcp{n5`(~^)EDU?MDd6B|J?nB6{6n1!o zA+J&>s}%A=guD=;koIteMimN837OJ|YYd5}Ih1J*8QnuBt05DbkS9HqNe`LOgfi(N zPkJbm9x}Fvg6$#WcPRKB@*IYO-(kpIlW7Zi+QN`~$mkwMtDLNHLbD$-)`yJsp-g2M zbGMnqggmj)q9n_la7QAZ*GT3y;(3i^UZZ876YgfjxE!sl$>#5%1Ku~slyS^bHwu;$vj8hHBO|NfFT9T@)>YKYaPj%9EDsbl-Bv2jpT@q zB5qEmE8^*j5*c(tixCSV#=PZY-tsYT`FMrfiC5M*;dbIx>P)=R;e@MfFg!jS8YKbH+Zm?DI;+Ok86ot}!ED%ySgW9L0=u zF;7(-$*)nDlTbdX3&|qqCY^OocrB9U6;9ST+2Dk6DPfYA$O)gU5qc!N)XBywC%hsF z@1-P=sv+lw>+;FDq2xw5WOTG|QMwdTvfSZhgOh+0$xFB>AtfZfd`6To`_frlU*u$! zKQ|a4VIw3foUBVG1Ln=&S?uy>S3ar#kZ^M$H^VdBS)y$Ni7%g&yR<5~#9=|gg`}rT z+|#8sDYU`48({uCMTB>#PxWbk;WHlg_Hnn$%rOXxQtr z@asgoAmK@0@6dX!FG()r!#Z(5kkEkES0rB70zT7U5^-UEP!I%Tb+##e{OX6Q#!msM|)>OTHT-n1QLR@5y-DReO;M? zZig1LyR^)oOKY5T<&!o+mnaw{9ZsYyZR($P2)%86>Nm1e`G7V5P&!vV3x`?7(1+IvlJEBu3|8gKoB_m3HLK0a@z@c#X_R1kgReNaOO&v6CMRKC!LVVIi%ED7!g3` z2q0lh2)XSr<_?D3YRJeGlEm7HWcecE=sK}{CcN1b+3ZP&<~b3hO;$K}MRJ*#B{G!> zuX3{58iTu9I{;VDQW$&I*K*@OvC zMUn`pgh3@zIKkYd#l@JC^$sTqC5(AXOzf9B#85%9&IzsZQm3=b$tovZ`8A?sX@!$D zPBu7^noCk9;ZI^>AqnM^`p{Wf<le=(kdtG zoX}V!fg7#yuf%mPMMQq#?2%03|CSz&J86uB$u z#1{E-%==y1JdkkVE=e7JcXf%AWlj>#r1Q$}Zg9_8w*|=xCk%-21d@Q0h>M2YXefZV zOWjBsjTr(9O@5cw*q1ZkXJr&5v;wS)@>vN53DxvvBK(ylPFCbI;Dj3YSEUdg8IbS{ z`|Dh2oqOv0+zg3=kgRgD#tE;lA27g>yApDvQNWoo!{hT1z!8Lixll;gIO)nK4K?UU zZijPuS3xSD8}iA81qp&RhP*DHJc&Wfb%;TLMB1T~$qy1KOG+zWNO81I(qAO_8m$v4 zgCyY31P2t$rb>L`<`REhK4~eFKyrC}iRic>#csfXNaITq68hm>l+RWEWXV0@lQ@x+ z7*ejw8Xia!N+QXPI5(2qD17=Fdkd!xYTY9>ws0|UGa}AdT5~dZnxk;p*BSgB+MkhK zjRn96cqa$ms`Oyh&DfBP#BK=AGy8MNsunSYh@$0X8(y@mG7=|)311W?&g8_>gShKv z_>vJV+8H9HN6C`Yc(N=RE54HinXrW^0@cVd-`)kG|>*#MFi$yjwdnXF01nr?DMI^ln@2Z}PpPDU&lv9nOI;6|L-)1E9Y*`Lc+wS?JGNJFPuVtsb(-IK_SCrb{B zCM*LXp|auGOOY%)-B^}xEISjCu%r*EgC%mRLAqi$w6bo0ZaCEfsTSGQRu}Ehb-UWC zbfctKtM=(q?)_E%?%L(lW)EV!T-dS8g)2f7)}4kFQHZ*BhDcYi?>bHfi%yURR+At~ z+2umnZ&6?a(EDxK9$UN|*q@>OX@ietq2h9(BtvLUyy}cd?>FDK+x6{+{Mi0Xtj}Q0 z1{w;`&}mJdwVkfjTC%ige|GFo8@xW4OFUh(&&EVg;u?P^Ryp0jMDM5#>(ouUx_@2! zI9`jLjCILaUvV-Ns+8nEwA)B@?<2bnO<6lOFA%RNn%ME}jO7hGLvC7Nxnn0oPV9KC zt26jJwm%cQTBImpWLHa8t#TzVmDuej!pJ2nt4@aErB=Ich7ganj+3z_|W_zp)xch7dshUX``z^(RE45*r-pz)1}1061ACBhQ^Z6$xtM1W5dblD*msl zGx$5SKV_koSL_}nYMz%@9PV(<$zZiNaD#5fn(weF%gkGBEZd(ecD0R=tLbA_Ww4$X zSdI-lLvxYqYNeM~?ZK?BI2o(L9cm_jnF)M1wm%c=(_gYbSMAR=yA8i9e0JzGF5`ex z$8J0b>~eufW18nz86ls)(c-F|p~av@-_2l9QOB8xs3SaPCv-DpvX{F~2CKy(jh&1Y zMXy$@VMQxzPB}q~)kO!u>XMu!&ah%%c)iFOmRy&@Y2XYikzpk(PABz-)!Rj72s;Q8 zwv!=ed=jbycX`c1u1J$%$%uti#adWa8GOSM#hTQsjP*6)MVFlnzKn-dHy+CJsNEPl z8Cq8BIvGMiqOR{`#M1cUlARHE7Ts}#_TjLiCovQr!T#*Lrt+eTi#FCao=!Ny*6dR< zj@Imq#H_(Ug}Q94g%g3=$6~U)VrOWvw5$=^bfXhF8B5h}uu!l8L~cSi)|c(E`HD)d z+pWde8vPOoQ4fIstOptdiIbu03TqN16YD0`x~8G#{OdYX%~dwES!Mg9RW=Po-eM8#lw0`wi4@X;IYnzkLwBBGHlR|%_6e{i>%UxWP=m7JlI&}Pu5B< zZglxxh%CpFfbMu8Nm#2!RTHrsO9E29FRm?aa1wAr78z?DHV$1|p|;m}cS6cl*4g}H zjSYa-VoBCGi8|jTxTI>ah(lF)&qvS&K6u7%yBMm#7op)rcX&k zMpTK=)FfgBUzErvU6(-;b3&Q1XdUB3bC^puq3Sppkzg~34myLsSFCce94m3DFI;jc z#JZCqheW*WG^t5Pyy9fU!ry65R5GfYbkW&Qt4>C|o;Wp@ZEiOV-Hd46tr1M3@j;ay z{VC(kGPKAVyBUda0#L)EO!@=<#6RXM_Wd8l!@@PA&ytF{fA7L9R2te_cJ|~olCrM= zdMDE#~5o}Qr-MnTRY=mUF(uCDA6=yX6JqNmb?)K)QLktEUrE_B_EWt*DKwMv z{>7o#)m09TjdCt0ICN2Tg1jA{r5IUDdv%%Kub%)~7M`D<&@=bmIn19Y$XACW{jir&I2s%^T(5^U;7p zFQm_7@90M3!?=Ik_~ib*qZ_rJ@z4!_FhF?dYV>HQ-EKd;dk?Ym(Vl!X?I-|5d|)V{ z8Pukp96EE+l)ySw8aG#X*?Awjdk+byhFW!5GRWu+BA9J&r$9&H6vH<(*;(y8%byos zo&n}ERmQ!Gb7U@*_KPY#0pstF(ieUYI}8JOd~0cOZG%W)gJ~e{Oj^Fvc$BBbFb%8Y zM^|Kk-4EmWHqCF30>@!nA^I=FpZM52RPObNWSs+9gQG&c5bNR>*p%wY(@Us_@ftL- z;!m4o4gKe_aU@}wmGo2Sy(<(Lskkj_l$3RR?L5+989e7mgP-%nOjH zdU8e;I5t}8<4@FwYN0beQA#%s8+H~w;r4d!9kvelTaR`>`uNb>x&PtL-MhOFKJox- zy@&e`y}P@QcJ3VR?myVx^X~0Gy1#vR2-(#L2E^$vZNtHDcIlSNxMN2+sOcq=x{1A{ z-eEVfyI;GPA6}=I(2EBX{Qfq*C}Z@4Zn{T;25&j$PI9X~%Oc!|@k?R^V70lxmf>+L zRd)LlU4%OE1Kv=*G|2t@VzRq!rv?96_7431@H8t<0qrvi8{_wy-h(*pd4CRvK2Q=r z>p%B%4d>JEYggWXWgfW%;&DHH0Vk2)+Y{I4gBWA(Q1qQ^dFT?fdN197i5|M*qkEs@ z264!`9cD2w;-`k7w=2aEGhPmL-OZn<*l8+eBnC&R7Shh>vTKwddtFD`uqeZ9crh?u zDg}BAqZox0jG?YlZFrEzCox7*vVtKIx0cc<@sw+F)c*`u)zb|(5tq*3j403A5uS*{ zIcB6WJkEKJ4foLl7%&w|pQK@X-uuMwJ@@d$rC>Y}%|7%SsyD6BN*Bze40?VTBNI?i zN8lV9;DYO=D3IyuV~so;1^qYaM& z{BwR%$Q`R|h{HEKP4DJXlPL4ee)X`F=5b&4;+C*?sx=>h;=#$sU@=N{h?X*}kI+Fp zYl)q5&s5}vD`#rc?x}OYLg$)ls72Gu2I#hpF;k3~7xjAqamI-EPylBGWC)}TKo1#* zeW-;#Y_&Na_uQuYI|q?5f2RWl-L?Ue72+|-WB>V<3xMN9nE>GY>PtWcj7??DunA8M zzYIW&pDGe=2gB={b2>3BW!*%Pd;*o+Rj^}LTCr0pq>5Sx89yDT?P0c;oyYkd7;nR^ z!O`e=?&~`8q+DAO%;waf=4wX-Enf+zVW7^`@l^xXA?3`ob8^bx$@464cypuv^FH$N zWeZ0)kYOpmkzctnR}+KyO7zfTsDmLmI3-j7Z9$ojcV@#Uv=K@L>`4x@p`r<4o&|e7P4wKUidgWTjA_*JW2}kEU6^RZ7TcAT1Nbbu9?TNxu!h%Eu z`8-D16Qd1dKvXs6c6ECj5y0wJPtHY)F4SQTED*;Gq;nDGdHdjS(?jgB2-1`wGmuOV zbSIc{3X31aeCBWfz<4k`ZLy#P!^YL}ivlE9o_L=mwaADZNYW#6WqcM0&A&f_`qCHQ z%)-eBOrVX`YAM7k`C^hO@fl+G7>!L07*c$znUDc-yEX+M3lJDq_{n6G&9s8)`lAahq(q_$R1$fN8D0CoO+IU7}K2yk|7H>I+)n#2wY%V($ z(;jijxCniestwA@qBXxFz`^>7RpE`8mYSqd-+uuNHN_kTA#NzBcus_j=}64f#f*FcQQet|lK%Dio~_t*F72;8W%e6H=@g)THpw zVoi19Hb^Z;H*R*jM>o9I`!!&?8}PdU2|fgvsy0u0U608`j3mOG8%8<_ulGKj?;p&D z)%zf8fslmDpiu%a$9w;_xA@kWM5R$NDmuGBa;n>4I-{pvIw&6&DCP9>`2ageFh7W3 zLRHh|ZWR+nWtn}gwPOKxn2o~IcPfer6MFS6g(~L&jd3B308JfHp9Jo-0DvSsz_3$! zbHq`G+{AN1jqsL=U0->$HQcd*R0qgMiXdoJM=4)*-h7tAQ z*M3Wd+--35+hXX05Zlx;O}ApQ6T&LOpXJ%yh$BI6Au7z-QU! z7fvi$7y8kZ_?{LIUoRq1L1A}VUdK{7s+V$fzsiTd>=(H{s4cT8TsSr1O3c>bIG8*s zlLQ{NL6J!*Uom_23RRu&O$bF#D{rjB#CGa*NG94$$IHqiVt|=tU#>*a8g?VLRL%60 zkFU&0_fdacJAiVEp?KW{SDq70@#ZJYdZ-0O@uKMY#VKh;?kM9H6!&^PA5)6ij%}Ze z;D^0*h(xJr&byiM2}mm0X!s#kt<5LR%E}Xp7C&@D)h*1T&rZoil8Wec>pL% z7a;vZ`Ne>TMl`Yh-O>g-n%|}e3Fh3Zx~pqZ)^uvdm~uF~0rrYB8Qru5aP zXINV47i-i~!I?+tr&(^A$2fD`mgu=R6f=G&A{O977{^+p0pZ&{S?N zWV=d@cj&31UatzWUV~Qq5TSD;P_GAjPJS~WF=%&p&rrl=N?_GGYj|u=-^LAy8ix^m|{`6HYSFvebBLT~i z0`vEfFc9#tX-|u+QT_W&*I)LW?$EAYakbv^u2kJ(^PVyKUqPDsMXgzT9HhJwlE?Pd z)Md?q=3tkN8;?eY%2IA;@UEMfH2Q=0a*EG9GJ~e;-ZyXrr7w`J&qimY2KR<3klZT~ zN25f4Kfj;lG2JT;uD{=>qlJYSPL7DAP^q%0>dh7@GI<|cD|?CQ9cvX z|3=ZNo&-%ICLhPW0h0Ju%lj19A8jV=eGF$8;s7%qx%Zs|FBqjge8mmf$ijH0Of4zG zVD45usaRC00n7$k&Z+HMgXmLHM5BP35O>lQcO}XYL?ZkTaCF!*KN(j{ITwnp>I&Vu zjg{Zp^ji}Kj6nQS%~y^e*WWj15}E&Y&FH;(WkfB&YbQ+sn6f!$LPMD?fyY-cH7i{T z2u8uHrVY6~9AX8_=3dWPZyff>JfWuCrddw&iS=di^=PxW$xBKNYv~sLy1if&XJ)e= z^i314ydYEy5d|d^sLg)X*Lm{SuP&b)9X-8?19&>QcFCU30O$49fQSpe5>%l8nJkCc zEc>Xl6Yho{rQS435otox1=PN585#Uu1Tv&}wMzzC<$F?1qo6*+ChbFW?%=AYL7a^VWgOPqpzibeM^idNHcuvGhn_ zFN3_?zdmg!8Q#jtXc4V)?|;Av2wr{7{m##Dq&&uxk^Fg3zV?o8^cX>kqZ>3CcycH! zxl;1xn<(7d1}N>4pm@>pmNkldDgA|)_GrT=VyKA{#$BKEp?slB;8bS1=WdHe<>)HU z9>wN#rip#tyffoh&A0FipJw>3_1s*&K<{?=y4|z|&u_So((2xoT`gsaCzAwtWln$1 zu1`a$l5<}xM<9gV7lgcufLh>a3 zVS=Drvzkx5xkoz>_qOls%ry;#pRtyu+OK|HO}&X{JYn0gZD``yyLo=H7oYgO!*tk- z5zh+8Mw4u$vU8-*n_k2(R?`dcF;lvb^p!_99_~GUw7s`^vvYLAFi)*H2)%cXZruF# zTx0&-W_w|=)!n-N!Jlon{_3xfpZTpH{P#ykFUfoT<-L2iT2JxhZ(8DSsRvV3xptOi ziw-k+1A4yhecf8zP*aDllV?@zKVZ%W?+w(}6Y*vp`h%h@oXk0sGKDZ&&adyJp$;Af|IK z=72|L6S4*sqZ@VnW8&kUl?6j8^61(d+tx6O`qZ?Txh}$x?1WVRFr=%*Sf$expK6KS$evtFc~Mfv6DN?mhp@s9k} zD^0mxqgprg^Vc^!m=u?nmD>2+Z)P_JKq|#vz53|U_Wk?Yk2cj6{Oeb*4t5WB9&F#= zxpd){$Jqp2ZcafCTv106WYQgroO$zR!KdD2X1Jb}U|Ck}(_Aj&ZN|9yrmO7W@03A! zPrWzLT3%0y^hA&M$`PwS?OvIe74;%8-FTHEyLpRIU*Ym{&YOB>%}6M$dz6}67rQHO zndL06XDmi;sQZ(fc;B-bIi-KJNZRaRs*GkupFi~T;Vk0BqIuC&ks#hWKUh5_D?+Jd zG_O{jhhr)m-c^5L2ncee3PTu0lSRX<;Oi2isV5ovhzY|NqZXYFiPQdIG&JCpE)S$V zN3%&wv4CbCY;VaoE3ks3SJij1X+O#R($@^7+Vfbsv9hVK-#4J8j`a+BV=1*?S!}_& za(0*F^=ld~>cUmkIs@9OKLhPYFU)`C^9$eS16A*}=3z z=jhJf@AfIo~U8zwE)*(AMv`=dJBBWmG|?2oQtdqj=Yy`cLi z+oM@*j|h9F_~^>6peNZcO=F)T8|9(-yV?gD(x*k%msa*NpDa2@dCv}|62%E@SGu#h z*}f|u23fq>K8c6lIoN+7b=7`s1G)gMSJm6FF)^-)Q2;LztqJ+``!7#XEf>=sDDadB zW3rF3$%?Wi$xeWx?64aI>^m3%Vz-_T3jBa{1N(*4WJiHxa$-Q=vLv+KlRi%Q%Hm2{ zripGLq_{n25syOZV0&n!?~~36Pc@43)4QI?<4fa z+`u26E)25;Sb<}*IuaUOv=PkQ{MLI5RJuOS4f(V6;J8F!sOmK!5Xm5_Aiu}bum(Xr z@N^fVxTX6_jW^N2sbo^I=XPhjZ7=eNzQ_K(6j;PZvviHY-t+jPr9VgyCBatCI5dsn z>7a%Z#N^usGqu#o|}hr?O9XfaAx$irmNhlgr_)-;YV|8l?GLa-*En_&e_XDQ^i}e zJVV;2ezAYvhwU|p^WjAs+Ub?M2;t3Fms#ffHs)_tv_=my?-iH0_)NZ;*PTw4 zEzSISd{I5#f-J+BYnK(DvZ+)3=d>?h)mduS%!TqJs%AYg0Y06{g~;4Ymbgy8e8Y}I z|48!rpZtUV1*z~kO1;7G|oEueajZ#{><>4apJBjawv{LhCGICUEzWR z2N-fz%BH25!7&M;PVz@8YY&tIlnG0IwLF*9A#Ii8U$?4C3zL`CrOmuLuc#W01`VPn zdYF0a?J+Zm@+Y5m1{DH?_baELT9JbpD5@%>8i`ydR4qDiew|l}Ltn|*mAdrM&v9wW zk6n(Cq3E*;6Tm+k$5f8t0`_bwZt#xwVp)p>yqyWuar00n(GytUUA!=$&>X;Uot$b$ zk~He%>JJP^Rt#GbR3l{LatnsVx+6D+5fR$nHn}P!X=~3P_FMOMo9b_(7D;L_Wyah= z_hoU5K@WY2=2~{FC1+}Nd8%D!fEr~sdumR#Q(H`F7b^?s%_}pgmK*s=3H`Ud%5Fh* z8*mqOOG^ke#iseH0AJIt_ME=ATIRirXCs6$!s^YALOPU9<7$X5H%yY%4UMpxF;G|v z?1f2xko~YndPVss_9h~3(R5#P$*2ajXYU$ER6e9-D&u%ab9j8jC%p+W z=~?z7z6;V=16Y-C#J7uc2y^a=&;j4DZqeI$>7$dv=37=W&Zt?OuBZDN8phdrf?9H4 z!r*54#f-fn#j>t6gSHc`bo~G@K*i%c6%NslUI2UTQ^fFcr;r9?gxxF;sym39-<-;L&kNYip;8Ig4?qld6>^l+_6R1HV&VjJ^rzhO-+Wtq$l ztjL1R_*53iL7xd6pcxY5$y4W2LD~LH;o>YNoORm@P1$Eyf4%1-wDulWMXFB3PFuHK z5Kl_*Pc2T|m^=qY%_KS{>L&BDK0<`4qsHAg?e3sP_g7VPm$YD3%{0ANQ@ZNlX+hDo zIYLn}3W{Mmw3&j5G!8l5`{mI(DF~Diengcnf0{LbXEl-sv^XiW2{~Na@}1HO@LkHh z>7I6P_b>17Yzmiq3ItnTW`Xlz7%Q7H(hMfK?x>VZ1 zNr={dWq>jLDh-T=mOvfbQb8T*DwJC(^%S^Sh*HWaiws0V< zG<|lwCzQ6^?Wf*%F??hMyQ+tw&j5-s1=!_R(7@${$D3aBNG~a9aLK+{ckQu`)PYK^SfEbWYyPE?L` zx~fMslc4L!Xb55{{i<+$g3Am+R+kv}0kY1GLUebVL_)C>cb! zkztov5{=kT5ct3*+{LIs8Zk(hb?&$y{cw@VN z2!suQ3YnsCAu>iyPxQpHdx6>cL*i4Ai`KYBv6l(8&^MMIt!f*Ocd6xuMYT24_zMkQ zQuQ;kP)qlSvZ3CY z^qQI2i!*5eRs%Jea#^p09bn}{Om|C@+?w-Kjnjc&o{+3wlB@gJN3356 zMkno>M(VE|lYW)%Sfu7ky0Ue>)qe9uwt{3)@b6lk8+Q68O$hXwIbX})#n3F?=7Q3X z3ZVoM>BAhjN~8+8{)-<>G3ldyVmlWaC6Mx#9f}xn%%0eK@cfG6PwnEYURHGwsaqY~ z(RuYJUFy9u*J0P?BFSi26#2UDE%b{nt6Mxf+k90k=SF3xir%@rXHSP`y_yFsc$qM> z;cl3!B}wh`6b!*14)cbr;FWMpReu#E1H|*l?vjNCwO&6}XbcMo5!zNhL2PUxNL*>* zA}dA{0=i<{d=d}uGDpd>kiD7v{tGRi(C$zZE;BQSM^JT7*PH?d!99n5!x0Ct(-U$E zokCfm5H#%8s8dQnX31a!>x|zcU}g7=-;Bp5s*|cA%~c*lvmd84&My5rrOl?7I++^F zjFS7eeueJYb@XNOEAuc{m)1J`6!HW7aA~1Ko?AlTm0=YBxx|+IM~o~fuO$sJHuS6V zgsa?tRTeUe;k0C}L=l@Az3jy1#TVW!Pk&(9%Q>N~AQ+9DU&fr3)qpX9c1dhU*|pg@ zO{2N0hz0_hcQ8c08CDb{niqz-gf?s_kxlMgYRH33pRGaJq+80Sfod?Zw)+t0nJB+m zw+}3#a>3hqIY6r(#}Gv78NWi$aU?T%Bc-rY4%0JyUZ*!YN&A#1p|rilcDLPGTwLvR z=x1QnAHvwZ-8?N$*+a)u&lns21Oq6OVv&W5QQA67i*NxS6kDJQXgt$X#xrca6#4YV zD#^v)d%R0sq8M;Fw%GrH|J*M&C$`422I(c#dKZ>Zbgn$ikFfQ&yZ?d9hY_4HSlsZX8IJqZ{*04sXNOV=APK%BL7N7&I-9 z+0KZ(PSSqZ8_{K_%I>AGzquW{vBEi_k&D?@lX?vVD+3`E)0hT1K$|Fxi4vs<9%RIr z9!QfFq_>wAC`?h0yN7{=SfVm}$!|2_lMpz?Lzy(P1wB6%ZHOLG%Kb`!>Os>I-6w-d zq?YL-Oms_0rUGRE>PO@g$cRD!%DY2tPDZwEVJybU=oeWoxnvcmK1-`Shoo;|G{x%| z8C}jNicc@)diYc)31H5sOMA1!k9WL-{dY(LuZb`QLVkM_U2dw1t9EcEsP{BU%m z>3y<$`0@VZLl4S4+J12OJ#YV>xBcLI-k*5A06)AdAzs%$b0zs(Zl_N9q7hg0R3S1!M#V&($4*z2ZtcoKY-u7o$tbj zckuD{-X1nb@U|brNFHHdy*v94zsE1ie!RbTcL#p_a0hz0{o&pYHwOc}v$wr_zvjXvc`|-h!2I}42+1>+qux1Y`3)|MlfN;35 zhK6uANnd(*PIHR86%Uct;)bNqTS(vj%1^Z?)Qg0 zw@3n&vJClK?*y*{5E|6HoYt%#Vwi}j4PT>Ke*Xz(n4q%xf7t_1DaKg~PlhIQV*4_O z5DR>46Eo@Db7oMNEP-Kf@CuM`|KzzT>PX6?=fD~A%sUC_^90q>88_#2BLJJmOTWx{ zSbdJiGUv95H_O;f5E=Xdy~&ZHik4cZNkI?`T-hB7)ZO7)_yaa7*d;*thC&p2h-w9M z3G#1&mvh1nd7pMjcj^vNl@SSO;*~X_JZ6RN3V5opR$GVUVRl5T3<;yK#=J2&*(9&^ za=oq&w_F3PeZBdIRfZ*)Q|8xf%-xI33HJO!+N6aN{V1XU9G)inmmO}m+w%&z4Brd* zp?AzLSaVAv)j0_=G*SSF!U8u2rPY_p;J{Zp+&t72v zeUIswK@BqsU7TZX80W~=X*Df_`&b2R8kX`Wz2>KPNQO)fJu=ApbYqq#qD|9dT1WP- zyJzH(JB)i5n;!7=z(Fl6P!8TCDQfH^Yl*%_MM*kv|MN^50hGxA%1?)-!3c+rqP1*O zv)G?aB(-dH;;DZN3$Rhp0T`)jmCR7xxQ{z9Qaznk*Wm2|f>dN6gjdjoxw8yfAieDK z_#(n5Q19;FzmGp2gn5SX#qn>TG_m|iW#~mUnj-!a0nFiYDZKOKLVyYf29dU? zOhcaqH|NQB+1zHOXxr$==Z9(qX-^}z6kJ7)uJVMW7cldf-xgFCdVW#fbK$$qgzyvq z1i-QAhagQOd=X3E8m@>a{-!uU3WTqX1f)Ra?rt(CVRnJ6{?6!~GF(ACG8$*aJj`Q~ z$zD{QLO~d|FI|?F{re}wFI2KHQYdZ&(H+(nR+N(0uQlD;(rELp*GMTokRn-3%DGq^ z&2urb(>yupnVcJ+p={coGt*~02ySkA&%CRBk)_e4`gwu>KxNgC;O_$DgCR#s(zt(i zLBvesy5M^_%9*aCJoy7SLwu9-MUR?3UWo^zlXuE`s0UInHec}UphjC>!d8r+`lpJN z`me3Bz@^zA3h^F%THe7(RhV?=2;L7qRUB4{bu{?Wc%sY$m_!f&@H^^nr!w2$=`CpY zNik2iy~ZuP-MLHQq)_{Z(BNE00bJ< zq1dN@96fv>F~b+s&H!D`K$;!UDQql@9_qKh?KM=t-y@W6%i!kcJ!gfSIZ_%zw@BEF z{ajF^VUXDNa5tK-DNp^uhJ|d*SBrR_1Baqy1=q=fjThrTHwxM|kU{s~uT|4-)ltlp$ zr0jeX4tj8g{B&#WWE;zzB}v0XLwlvKd$@iqS4loI7u>ioG%SPpLzDMF+ZWPjlUA=j0Tks=a}zo^6a0*e!sBzzkWvE#Q32^6tC_)o3A;toYR4($~_b= ztNp?~;uFEH%#zwEGaN)%syv6P2hQb|iNhwnB5uEyVEIurGqoy8I4mGaZ>rdwA}*Jr zkJs22*?Jyu8>fN&Ih44mSfBy0AX&tUotep>ahgw|f@)sggwEN#mH7qb>R7FX1-~fL zlfJ#?WXu?&xhIDPu(?`ewve+uy1}gN(G3#~O$g+lF;PD@LXWR zXyCA633N4BSB3Se0_SS}^|Cr|S0JRO<{*CK$$i!ku8(A@TXWvrytpsWpX3s2P<{Aq zzUk0MQ~J`}4E(#zlP>&w^;|Q#O`|}$NamWE8&rsbDu|a>EKLwk*QOUa&eP(QR8FWd zVxO|UywQ;kN2SY?W_w+cU#`aAoX8A~#Zl33OkyeuZCi2lQq*Q@6Hj6rOa9Q@JHq0k zhOad6We%4Qz-d5n|2CmmdC**v5?P|9n%d@h&WB7?3zNQ>J^K=IqO-KSI2JbOyF$&Q z^*i$3U3QMk$G3>k1Jc!CJ7^DZ?&lGTRs&edAO(EAP^x3e;Ss2^~OB z7N45?&K#rBFDcnnss?N4*?V3cB$x9I=Bst+lapQ+_`T9}CW^xzkbFW!A+tBis1`>z z2vCa5ItaKo+U9WRTBqsBX^-xi+whx|G!3opWaz9%kQ;Q`d&)VZ8%IYAWEDe(aIc41h*k;wfkDH|tiJ!^H0}*_IsStw z7u^x?4?8b0j7bsm=lnw1p74(rCAOrF10C;u03^&P5axe*8{O_*J|IGigLtiyyW+I+w2+wc<7(RkMrK9 z3*BftEglYEewby?H}TIrK8*izNESGXH^P+hxvbRoKlNWW98Pb94L!U0Dn@8`vVM}D zv|%S51Kz%f^Wy;^QTp<7p_ie=xM1Px0iohEXG(BPoAh5N!!IuS;ijj2IWf9Uu7abBLx6k5p0|1P}@MUk9= zZhzNDBr@~MwKaqw7r;9t327z1L(_28=^}U1D$l)_o}G9_9^NM2k>>|92I>h!TH+P99!)#q63v90`jO_tiiNn`+ zKf2@Kp}}~)FB{sO*;!sKrPK*1Vzu3zI^FYaq^ON~8%aJqIXK1ZWcx|X2vskX@`6YrxNK)r$P1ASa7$)h=oZxQRQu2s=>@&s9vG!=R4 zrmA+jt~mB(la@$`#v10$rlAMa#lAUAus7g0iVv-|)hQTp#nRO*_M}yFsF*XPOSj>P z6v0@y%aSVDlG?qVe_{~Vw|KrxY@;giREl`-QY5j}qntfZ38YF5-Jwc8ITm*b_RyQgce9FK%* zR*_c1=}iY$Qw`Y2t7&3QJ@Po6D8PIzY5Z!kcLkN2K$A4*cKOZG2!pcEKp&=aR99|8 zZ823r&dIcYBI?a_7G4kiW<;e53eJGGjDB@mlbNS^R(|^HAzjH5{j)ikCY}HeK3QbU z#i;Vn3SFMon$tH|cUptZ%`5s=qmQ;Oq|Px;NT1$bP7(|o#Xe_rO!;UOKRlISnEl9; z11Oeg>%9v^F1+$6G`y3H-5KeKL%%ol8Rq+VvW<_jQJ`!#5m?*v4l+EPF0{v<3SiRK zKueaMP9!#b<<8g#Q*7R*RCTqyps=EDv6&7~^XPO=PytgO{H2x&K92D&DZ?1ghj_EJ zpQ!gQDYrH0pP|i|Q2$ywjA6EyoyYkdAD?M4ZcUVaf-g@n;sZwVeIrn%3gj&S12pOn zDfVoxq19+Y=tj}F6sZtpG4sPX&{djootu#DUhk^Q5ZbiUuQN=Bs2BxzPSFQAM}_eO zW%$hZA6g4-L9N_@Ospy<9S14`7nVsBPAoom-RML)PVSiuPr@^$`A6d`8r zJaWp7H?Pm@+OEOAH;4IkhGVIcuk&w`=I~Do_>a4Qr)dc!=irdRXz+C0;W(+jf^#nLl12>hG2$(*WyxQ_Ax4Pa20R%d?cY7MVeKxm65fQSZ+ z6KvgPRy&xmt~9z-(9KG1^&w{{wu+B}Ox=BQZ`B{B{ZZV)0|{SbziN93A-ST^lnb1y zksVpOeL6ZDw1!zr7Trh5jxH>tOgybk9Z85aHMhe zY-j4!nVg}1{Zar&qsB7RR!09=@7pKCEpK)O#an3@Z@CdUXJ~WId(Zb!YXi&j=2QDP z@6A&8=*9=8-P-Nhrlo#L$i!t&6sI$d6d1KTvNsf7y|>_t(d6880B=q=FKZ3pZQDF{ zDXMjXaGfIr#3Tz%$)3U3PfAWyq#Npb3jWT0WM81tpF^St09nQuSEd;eT})^@-%T!Y zqgfs6yzLEQXs*>9pvm%J_!2Mg$P;Ix;WC;|w&AE4^4*wW456#n7!8_tRaK(~DPvyC z^ZL;}hI>ac^99C)Td>;OuYo*xFQ4@nUNsk8<)zNMd)W!?Bff?bGYd1c$A3$nC-`zf zAvb!6SY7};#|I^@Y3CB?o`H^AZ^3V+o_uY3_n~Mz$ADXnS~I@+<|H$l&B-^W3U4-D z464DR%_;Y&71Y|S{$%xU5*IkpfrtNe+;>cBf}T4&c@DeWxZ7-cpML-JW!^+5M|4Xs zfV#X4V{$)sY?yS2V8D$>G0+Xz3ip5;!(g*nPUo|R(jMhKlir)PW9!n`U}jy{qU*U8 zag4}1mR2s94lf2V#n>1OdMP8#0=~<%ML}qx=eI}0q_qJAwycUss_J3cO6I2borC=c zZQgEaa>4Aex$xw5jrAYy9~@fs#hHn0sEir8PZToUh-@m1N|CW01Nx$@^ zTUvAJhDD$Pmwb{w)!=Ve?+$TB+JjMX+Q8!I`dL%piR3*Ms82di>qRv=$*_(Q2*X++ zbA6C<)t#1xn+LE7Pq5fi1Ky?fALZW;Mg#H)Re;$cR){K5-ogVmfxK{`*++_FKty6M zQ*kNPIUi!EK(eVgy3tjsmKF)Ps4)UFpL;5c)8yf zzjTUd>3h%n*?Etj@{IZEA=*&2Ov!c+&5rmX0;=~EZFXP=cJLy&5raH;`+akg;~r`{ zsk3-Fj1Sk&U~;Gi1f1+~8c{GYT&3-yL}~^QWf!V=mIp}OkWz8%pI1C!-1t(XiO%2n zt$V^vZK@_M&BA4cN@C}NEbkwmlHJrqCXVNeCFP=xHCkN5?YaSM+H}sggd9BtU!6j* z9)rDVP1v3OibX*#394f=wUWELXlYazb!ztI!G^9{9fvGb7i+?#(UWCi%nww>7}W#g z8efh5ZLEm(j}3UPaI-Tl{G+-RxONop_6HQv zp@j57`FBO|D2JG0Jv>M@NnJAmIssOVd{F*Pub_wwCQ|(DTa^c-Q2_{}i3#-s0o>q@ zUbTS@$326ksXFb^)2b%ZlNP)BEdpz;rlJhLqCCXlDbwkt>`(IQYey*@rv3#v$o5G= zS34$QQ-mR?L9?nIo$k5KN(#&9jRsyt>~s$vgA$(SzU6>RfmP^M?8A#)@{!F`;IJ=R zeg8$^=dEH0Xn)bdY6H_#78eD7wB{9mkomwHlLUiO;Dn&i7xcsV8iE0Yf>! zdJxMw>Aa0!5(v`pc?Za(#-DI^`SseUaKIb$DcE6e5#!UDuFG` zJm(NNc(}KFXUE%7ab9ivyBZXbmp5oXA*<_2u(%rZtFUD9e(7$KvxrL_FF5KM|7b^^ zs}nSyS#yX+ykVTaC|^ue4eb`?02R4xSj8I>|IqAP<=85(s;}q|PB*RT z485S4W^(#g`vBW|+C*TW|DoBDkEHxHdr^hV{mSz6B<)LtDSR!Z*j!jRKR<7uT_Brq zhAIcx*F>{xCP;|A9-;tZX>md&V?s)~sy9qgAZ(+ZItVC$D#fTbbWB*Mn$BU!{5->e zItgwP6!A%lxPRf1tvqT^>UpcP;zV>cBb1uG&((mz=}lEDV?L#EVO8$5HBemEw6MEC5m3oX9xdmsb77o*Y42ppID64`5 zVst7MyfAr8Vfg)CLBYxWK826>d?ilOjR3t`bjEL6lyLVA5gvUh=-mKxW`G4e^9NR= z>hT^CQsm8?xR2aAa#fEGNVf@)oItnGd7e^?{8)yzSIuEiDtB=7zOb4N3)pUgk`BfI z%_YDYg@DjQRm%d6EkQiBm*gj({ht3Zpq|+jjg_ zbk(Yh;%y`u z<2$NCt;k$IZfdJ+hldW!S${N6uWax;Q;2y?D(6Y${EmKC10S4J_{C9|<>_Wc894s) zH3PF$RBx*PE}@&kO;u;omS8@D-cM!WCMm*e7kP%#v`uCyhwYo?94sTgX(EMp#Rgku zcEm>(psUQBYgr6UX!0rMYLx>r*Ue#%K4aLbV= zL3@_o3%c4e!nO&i zUV?oShb*~)3DtstA=T3%#{(XcLaLMrsN(=0E8t_j#)cz5tgGkUeFXgl`- zB+h!osMbjL#fKM%{s}sqpl=xWv&L(dC}3M|em)@)m6&g{WAplAdaAPDeG@@177Mi~ zp#WzlB%_uj-zVBq5wf1q#C~^$AabQ8F z#raua(V#%7yM}yExsKAeE3pr(QL#D6N(zZKO=}Bp#*S{(-Ko_AuCtj$bA!sBnb7bR z#N%3br!~Z@M&_&=#QashzH~IJ)oN$YC&bqZ{v<+~fQN4zQ}psug(UU6>Qpb*7=kqvGpjBiKD4c#>^G8!gmr5>%r|MB!dJv7@JppO!c^nUP4!!)A`~0A*`+Nw= zdIc&L5P*`lK(<1YQg5i90wf6&))4j8wiMatSLdJrzXGQo;{p)Ls7D7nKHGz40`yc- zKEq};^^R|QxAvV)w6HLtpsU*Y7r{C^1I2jzhLARa^Hh>Hy|PsdM?pc4sv!!dXqd#0 zcrbEdhTx@Err389bbBH95~r~|;f;@PBk7o@_t52LXF?7>y-ea0(xbx2kQY;Sm6icd zGs?6LL2ZrWFnexX8{@?S;_%uETHC@ZVy?CxX#>8MmLFwVR%3D{{Z#!z3ty-|x^W9H z*YuCa{NsWhNe@rnhyDe{xwuW{qEY<#(e53kVW>n|aI9ziVHPyF3zH0MDi-SPGk;(h zdWF+86-PJzJF?yaIE#z)SBReE`5oxz_OP)y-yUWMY*5%)o1YhBpw?1_8FBkS4+$8Z zQx&9LL!WF+k=Q_?{mX*)?%V%I_NA{uw7@O$+G}~+ylc-h3~Zy`!1fItoK^)PaidkF zS3D8bAQ zzjyJ2n3RyPf=zy@1$!rA8B7GeAK#{Fk1haF;E3lNUW|~2Ge_@E=D;<m{;{kkC%^g z{ptk1jtSogl}WnaLw}YFsZMi=%K|-kk@^@S7guHIqY)^Gys@vv`@tv&4p1Ir#K}?n z1z)_Cb@(_thvO%2ih5V!Q4d-q9WPtCzJ&ST)OA`&3~-L0J+pPL&z>2Ya?~dvs1p6o za25l6adJQm4+#m155jjS_3QD^o}FdUs23jtIRv1zc5Src5dP^oU(=0Q# z>SL4pEnO*5ye&=v2i7vuPq(dqYU|@IrC=YfW8*xQRi3AV*CEeP>Agbz!Ll_3n5@qyMA>Vic&ou2kYftF*nGXeC z#^0wmf7Hix+63qRNiT}eGO9yg#wD!rP>@BniD@$s))L~#oScO{k^s?awU-9;c<33D z_lDAK$mGtqy^C%#J(-y=rlcjRE1-|xp- z{JW~tTtgRkdUBOb|5bK}x?{G*VQrrZDuSR2v#_f)KEv zYbA?AF}7dm_brs;F=2>XgD=)^1uJOgjweP9rv+si;=M^oC{koNSgT(0g{9jX^cClT ztIJH%mQj*7TA*=vi4{Y%&cbk%d!zm^WzolQ+Z3Y^==dp$0{C(r>-g|(P_#SN%v>L4 zzvTO2{BuJk*3cE-Ndd!rj_fS=su90L%*0pK=AS*&Q84u=4i(=_3@<%RL7n4=Co3E{ zNLEu>_Et-nX^lI_+z%`T0*;yCkA_*9Tl%)-nG(-pblZFMIR=wD&O)u5aOW?BR>QzpVq~csXUFRDTOA4Pa z{Iutjy$uL)VQf?~P?-#d_`=ba8eqz0AT)#Otg*@$*+Idw~wxJ49WbB0g)tY5o z!Cu@irZ1EfLRji=3kqT>3TIQHs6q%u{cS_Z{gZx_0(6pRqd_qWrh-s~5RCfUg7W+n$jZy9Ft`Xp;J>W;y}@xXN_){% z2tAsP-oUC!BnHD$OslC1VSV+t4MpCZ3{Nv4h|^(l89k$Cp#|v_WrgetWK)F@i2B=t zG7As`26dzs4s5#VK%f9IDUez!SL1B2#IZ<~uSXM%rO^$T)B zA@5-F%ANwpE=pVld$9EFy;qz5B>cVe!W}m0 ze2#(jE3*6=CyQ0jhB!cFU2z)6!|7cs%Q0i7KP_-WKM3$zc$6el!5QUf?&!0?Pa7Q0 z>9)2ynGO=m>V>etoa0?J@R?KVt3n7u{p}vdhx>Q;H}$!S)~Ebo$o6Iy!%n~02T~UI zOU!tf*gO867ckk~U-#@??5f*g;*utZj+|J=AyeOp~Ft*CQ-iTbau`EBa{;u~IRJvqD z{PJ261`EAJwIC`HYubILSy7S=+XQeM@32Rj0cUxV{|0CP9^D<9#5E1s4RgTL<&mBr zB}@*%0xL}b$plVdiEfmK$hUKBiLayiQYRLS8%Qd<%L}WK?%47L7uyY7EAO^x1H&2Y z24nuNY`})H(&BV2UyTOH)KJZJtty+ytq02mKK$YOC~`X(KT)EQncZ(HfK3HM#hIWX zvzt8y-j<)mH_UiIJ3)jX3~1Kk6~+$Oa$Z?3N6j~bY!jrXy98;6uID~+909WZTfFkM zJFJE=Bint9=H<0qM1HTX&$j2_n~r!|x7fm-Ui(4)`j8ZXq})G6f9n`=dWbhI6E-W6 zMeE%kierQ17@<-R0AmZ(DI6YZJ05-xRQqKB|dDx`;W@6MZm=(~yrYY+kZE?mrAc@4_lZGsc;Ne%SX zRC7_b1}jPWlbSv}ZA^2Vta;L)?h^Rss~X6cB~J38^KANyW3tB)Qmp}E)v_1cWb)I9 z=O?`HRhd|AC8thGAD;!ZCSBEYrc?@P2WsP`fx0IKR0!Z&dkg8ioYAwy6R4jD+W<3m zy|Q6Xw%gvZt=R_Rf$|e<(enQF?t~Ik)pV43Z`4cZvRR*{6yd;DB?BwkqM&8^u#{*B zqyj^&4ut?wK(4LPmLl|0=guf z3=&E==)OByMTQ43ts@#km_;Bz3V1m8pvpqS>Yw#Pb>ItB2OJ8%2 z{s6ksFpg2G^%QL?8xw@C`FV?|PdUVF0{)B*=oJT|I=BgPYCIuk@DI2ub+I_1?$p8r zJTbvx*$T6%=h1$}>mX)<$(Y4jV$Pv$$dbwsHAUJo&VW>u+p4;(xp^QznS2&B;Ye%y zPv_ex!cBY7_Z^MU6v`5}29Qx$Bp@@p{l`UhF?0oteS#~-cDhJ4?~GvJXZ&3W#c7-@ z^OG16+6x-t5JDa2RA_(3)p4GzK_H{kXiiyu-J z1jYrR7mU#VLhc3G(aBvr^~wd7FOMh09&Y6>9iTwC0FA`O4_8(loyuC0?~NnRSM@ZU z5`5c32_3JE@sL))NZSP9l(G?HHl+N@1v~C@_%n@CR?w%ilXVJ)?K}76R+GD@CQkRL z;W{q>yTB3BYTMYVw4fLDKAe4285h=Vx4bW`yrll@TQ^@(JveEfEV>aX&2ISN-8k__ zz2TmiT2;MtbO;?QEY=>m*X&ju;3tov&4$hBB!%>{F<8#wUyF^0M@0&7ViUN&=;Pyxrs z0_B(+JjMo(kD*!#qY{N!MISbb*a3$ZBzPzbXGeVs14VWwN`^6wP8#}Px=%`ak4gGO zGultIP585Cu%;L(PVAaMvQa_E(D@4Q4T_k(p@<9D=DuW1?ujuuo62pWWfH~q=GOI% z0eN_iPEN%Rf)NH<5?KNxSpXSmmpXWwb<(=S#JIE!m9@@KZb9S7wn`hna}{kl1;zB= zoMl>4-8Sv2INK)CNan2{q(@czrrR|}Pg^>8oViKW6iAjHMJb;nu#iKpxq`JGj2&uj zD0Eg2dV<6=*Cy+*77yE_D1=WigwyS#8ze&o*~_CFPv`7|Q?`eiv!3D9gfqQ6jL#Z# z1bA-V`{0Uv9q_OcADrOV$Np1)h=V-pp39)6b0iuv{HE2}dF$Cuw<%JXL*@MWT!pxr z)7hq(A^lqYbHz$0=#m5X00T}X>Tks9+d+%mvfLO7q~DVblzsS0H1Z9ljxKak5Xag_KTj1J%= z?zJkaRQZip(a7&W&mwAKxy@oT9D;DpkoT_mb`7&!HOrO`g*XgRZ*fx`P`C;2EDlfo zep;OI{U!?bLYN43zZOFWp-tRCI)6I(jsvKZYde8DnN>$n-Tn$r zjqa+4w7s8>&cw2F)JHdY04+DRhVd)vYGF!G&_?nwNB+n%fvuRUFDw{_!0q+|+v=AW z_N|aK2Vx&@nCO=_*+}dj>>uCVxwHRh`)~)9UPm{?80dcXg7no#Hc{x}Scg*PEsgrl;xx$oJQ6sTu?_#G?BxVtjB!z=O=T(r2cD+g5i{w6_E&}?&49PG zC@)!Zma-y=K@(K{_JLz6{ylmDt$pmmks`-QpW_;cn!iqtAOIOXap0pDu=y^D6Q@@N zH|1Bl6$j!5?42ZjIMvubqDGllSDY`?>9sefYn6G`V=73%!+iX6tER+Bjm&&O$I)bV}+*0A(@=k0=b+3Gwy@r62^C7m3uJVlc7gaLXAs( zPjAOX2KpwyA&@lD>bg9C2`WYeZF+K@pz75}h~tG2_7cMrOzgT*NH1Xd)729t*h&@4 zP(X+N^SECPFFm;%Zq?hh5N8e*N5QI?WRRuRC}vrfV#bpyk~~p_Tu18C#W5|Lxvy8_ zl=3V{%iDdMEP_CjTEUHt_=av#vW8}RG3hhNfc_cT`J++^c-9IWZFQ}@EEs``_VgvS zs$63|t$Mesu&%R`;=02=2>_#T=A)>sh5QpmYE03L=Va7_Gmj%So=MabbUZi(%5tFs zn__&kaA}v1lpi;1 z*S}$?A3(uZ-;6N5W@m6=-k$kUs`Wqa`9a*P3&p0pVHc&*&H!%)@|_mK{sh!o39)~7CL ze@Q$4LJT&s(e2SN6YIGeMg!j>Fi8G%MB@IKo`MM$wncT4i- zE1^)0Gsh=FX9jQ9^>xUIyZiUG#~6m>{*M2WyxWvjS~_${lHNh`H1{2RQMz$aGmwZz z&>OxyR?SvAdojx+5Xyce`v0r@*7dfLB+FNURsP1LOQLLd^=yw_c8x6CRhscdEy-Qe zV|gf$gd|wJ82}~Awq9iZ>;vq}?IUcS6OoAokf116)$G^)swfi3`z10WGUCLj+6V1{ zSjwuJQ(TCo1H`hx&tldn?08W?@U}hH-U1}Oxuj(E`YY?QvNLOo9mq1j2&AE|c>Pre zVk&VBi&k92WwFBWZ)*r(^=lCkuR^vGza- z^gOnPIn{7V)dFgy$IJb=C1`ITsAP>aOGCznad9ni<@So%OT5_jgH@Hsdzpn~PDdBE zAB}ey?{8>aAa16&7Wzj%WZ02?-VBE6lNc{v7h;8YK<99{q_M`15vGog>{dNG%?F55 zWRjEdJ+kIG0!rG8ws5iP?xV_Ua<)B>l9c#9M@Q}$FlBel2$niQl#~vW(tyc%L3Sf$ z!HHHWMV6pq(gI?)`zR|)Ryy`>76?)s0;o0W_I$|53gnvWd&63!Ar-ew<)c>AZa^dU z8;M+v3O(A_P@PRs(r~76idZTz_t+=$XDw@a^%=|#hVQc({@L*{ObCVS!Lqv3#U?z^ z*Khc`(~UNxf4)~muzX=Ar^ev>H`!P4?Uh;ejbqw(mUYSF?b)e7?)IwM@6gK?(TFPI zCo{sB+noD$Z!XJVX8I+-Orj^zJx`rh@1M5|+_;%XrcD+$wA_R3-Mdv$6B%mjw`7zI z7AHX^Y#P8%uNlUjQ!{>$Iz1gdlZsFz` zVrYFcfgU>j!PFN-6WUS99kNI-0U2B1JMDHfl*D8VZ%9YdDa+WRdes&tk=W+>``g8? z6I}@b#-&)tp;`n{08CcHHW2ZkRM68YprE3LNQo5ug)6>$7xJ^ha*SRJn!gU+H$loXC`}bFp6lj^2M=0xkY-K)4BJ2n z78}I_#BaDby|g~m(PApHIKer>WmJ#;RY2!Mhi+|{y+ReCe4S$8dh|oLt++a-{^8nN zZ9SWBS7KAkQws*y9K`5{d-q$%@b~F|dw{W{SE+cJm?Q8M0ksr_n&8Ee;Z+(#b#)Xj zZS{d$R%Ofhtq|itqs1c*nL>_7B7PRxWw>Sg-y8|y=CeXoEyBI*8~%&NZS`>tWFYS$ z)=B}j`bx})rzTz^>n!0vZq9>*`H;3H;`Oo3BFm6-udP>oj^j~x0pb)i$`H=m>BC(?&HG3D zrqZq2;Pr~xi}X`6>fGiGV#+_StG&*Gxva=uI7mjhZSFK9(0pLy7t=_=4W zT^8*Y)=bq83=nx5TST~9jRnD{D=h=lj}@C{QZ^f=*&EH$=aoj8XG^sDqV!#{Et=QS#+C7HfqU~fLSD-7_GLDqp@U2}M~s&eNWHqO=W zc|}}B)G%a^F4nZ-yXkH2A9@S+|M70im-nmK4OZa48*Rg*3t-F^r-m$A?)t!s=DWkQhOkg+lY6gw&ht8=KzVMazgGj2FWl+R3iyzEs*=x?#OdsVxDOd!^w`& zh8~tl1m{E8C8>|TmyOW~&}M*>pc}U=cm8JTR2^A@s0_IC9!12FH>6!7ii%k}*jkMb zCU(UfY(++mE6o&xcytI_5eLCf(L18~6U5arotUCBVAniLsnaogOG)6}O`p;B zTnKAmV%CaKFkmjNA%fhL()LN)h(V>_wN3KSa3v3qU>Zn|jy;J`cjP39UVz4ITdFs&*htOx%ib3^kjfWUGn3F1a;wal5o0r*!d91lft4JOTGD6nMLmo6s4Z9V*@)gYJ%6m=wx>>;?QPG!yTDZ(0dIBui85p4 zPl){~HYLGIuVn~Gw+(iJm zixjQ}SQDhnBcVk4-UYCNYqOzANj6OLq){LvZr0ohQ{NQ6eUsu}1+~exh0&iHo3)u7 z4GX0T`8d|3-nM(>RTTxRDGSOrY-;e>qZaw%OS@dLqUNAg8^B=POETS5<#4sy#dpAV z=i7A*K}*v;TZHh^9Qu{49fC$bEs6`DqTJ9z#mlC&G;n*|+Pi1SS?gJ7X0ON!WSl+VnZA)Yn{;NP_|AzgnM|86^MRVw0WhsxaBHI%K+WAqDO9{W}E$SrL-mW zFV}apl-=U&xnw52SBLsTEpXZ#mN5U|?2NjIrs^rhrg( zzFdXsSYhI)GZl5B6T=x#g9F)|a4<)-$Y1JX9d7*Zw#0vjWxdi;zN%xLRiw>a zQ6-Jhs^SH?7?!RHOAvuN4R>3&>BuA0h65@p(N&De{jR&@4j&SrkLp$1i=HmTM`l;B zn`DaSNp>2~bBR;rJO#whxvIW0vs|R{IQ=X(ws4j{r7t%nVu#_JC3i3Zk?AYZLd`@C z5=Gl?D0011zg(JxT%%Gi%x8JpP>qL#uu3qWK3JiBiR)`OBvWY&Wit>Kdkq@bMB+v(Nha)Sxr;(Is+qZjOa;Dc z)la07_QLFZ;;?K)>B)4Kxw*HB+9j-TZJCdfAyCrH`l1)F>Ss$;+8x)2j;PqOL@;~Q zb$2GX%*|T>OJg}kx72XXY9EwaHVYZQcnjiSrWWJT+dNVIGMgNx%+>V~ z%~+9SNm3(T$XjNXUeDm*# zIVc8(Dc}5FD$BC-ZIt1_;};o^#ZiM;qZ~d-B+? zzhRNRr>&My-k5d-@g|!R9$HUsRi*KoEl^_Y}zl4hP@YaaA7TuDv~% zs;5`UR$e?blW$P^@ts;~bl7mC+cB@#JIVOqa-P(PFrdvW@UGb{=Fe-`f}~S31;ta| z4k9SXa|?mur=KRDiv4r|C03ngR4f*{A!op0JVz{oCGbb{Fv4H}R;$~B-}X!)eTFgu zWvqL9{s%BS%F90iW%KE8^|aJNA75(?7Z##_ijIhxpB9%;2L!rxWglx*S5fq14&z+1 zbdNnDqpvCYTqcKWPdXJ#{O*sN$oHg0x%2SmEjgmp`)dl*g`$E6T>E#sBNN^20rJMB5wVs8C_S=?*ERV`61K3vNp>QcZh!E3jt-X|o zl~O`C05_h;n@r5gIs1V6J6Z+z&e09|(l|@SplDHuSl&j`B=dSyP2ED!!Vz;e{gl{-Ld^R<)!}O-S!Qv|RxN@n!Q_+KvZSs&(}8WBxG&lRG~& z2u{6J0_7>K&s3rBc;>axRQAE=?IK^jZ$2g zPK7)?_6(<*E}+tG-n}lSg<+G`j%wGi+5!S9MqixOfXzcFc_Y{qb??bk8dMFm*lhnB z*s|TE6)3PCnFY&AGP*#p8dB?6Ld06ZqXOttReeUf1gKq8rM4F#(BBQZihG*FhVE^{ z!>Gcz2O7Ql-K}nn)}p*ne%D-9m3XZkAJ9^#%_9Zf8yI6Ry(;w&)zxeNEjHhki=AH; zMbHpmoxfYR3~>z4W%wen5sb@n<{=Wg9zBp)Ti4iLSc_o{iMN6s;Z}6saEq#A%7oV% zu{+vdR~QCi30sWZVKdZ?!pJ+h@PoHI4IZuAqZ@IqV7lc34to6FVo8Bo_}shU5e<)A zCt7B$dZ@JKNb{ZPwkjxB%@IuR22AynP0d^$x|V7wExe}dbvQL3tt>sX!Ky0tI>Hie zS?gFX-*au_8M>tlMzlm_)?LoKYGv)C~)v*iHt!kp1& z`m*D(#QNHFXm*=_{?ng-xc8?Y{<8TY-yqMtLEEH_BF@k94Q_6h1v`Gj%f*qsgW&zA zoT46EBb(Up2)IJ4orDPX!?I>H;1-Sqo&Ymk&uT$977m62)MV zFXFL8Z{xM8AZiDqpfn?(^brNV0u*keLMaJugpc>KNmvl3sBzGVWNsCvG=F}Y9vAf+ z3gA)a>F4Wnt4DivsmKU89B~+b(_478G07J;m|wNKkSNWp?K;09A57N~(&n)h=s_rm zd}+E}jqK=}NS7 zDT#w7UPL}qYFbE&cl!&5t~5&M8Ntpx{P@wqk^fZs^4}DO3sd8jwA4CD#xKl4b>4ZU zyzjOb0{n3JK~WpDHTn<_%g}SUIN+Ukc8(ow&J&CS;OSkc1JFb<-UsL*qMGGP>(ZE) zI6`nBTx7x(me>b!V=*#oA)8(1TDG`FEh}0fVAsuE{6|lc;L4Tv&qmq;5E3;bL`){}W{9S7c z2s+&c0bAi%s?5GsohZ=@-`jRqB&kbk!8z1Ps>K_glK{eBLYf3I<$#gQL>%70j`-Zp zddcdPkr?oLvg%pqk6jSyo+*_4S0l+iu11!7q=6~#x)^`Z9Y2f)6X+H)K6#U+C+P4) zBlq3Ezj5z}jR*Jm0@tK`_%9px{(0m64}1ur$~=5{?|!uVN}kXd$qx3Wc?K<1RfmIWE`I*|9XPkU~E6;;~>xB zmy94;aA-{u)4b#2!mPxHz%(G^ZDgJ_x4x-nYnu_e1m-fdCdh=s({JL}S%bT|c z(bns~N55|E?QOk2`1>PT$6}e$R1hUW*`3m>ILqQ`fpudFc=dd5`xldA>*>zRorAx_ zVCcop!RzPy`_YRxd(l?3yR~<)v;Fqv)?T#xc5nC1{&N74C5fu-mW-`fOVZ+wAhOcu zznke)m8WV^he>*#(9YB>pzG)C5HVfNuCdWp%OQmG^)XbR>j={=5z!G4{o5|#3LwaPAC~sgS16J^p zX(z*@1MNNMgZ?<3p4B++;Uepo$;!9@F4P!a;$ET0DC8P0y;g_>nW$X{R0@7q{b`M~ zHlhdbn-&$DO#_S-OS@l>fi<7yX~0Clj+{fjp4NiFuvd#o-zIF!UlC009F>(W&4u=c ztfvg!R=Yb%UXy1uT-%Qb3B36P{9DMx-w4AGqoWswn3DKtSsr>}PZs3uFMc<#ut92% zdUeOUtAN_7((PdQInyzS`?%lbda1rOtFvW@-??JHuTHNZQFtr2wkUG!#?HOVmHas8FU!`au5G#HS)jy41TGM%yqkCMbK_j4bZ zXx-k)T{`>9lNkXfI3MYdp*jhyswGe2%Sd5OOp}f)X2qstuqY{&0#Op@E}G}WFoF?- zs*mG&F`Kjb8vVpZFee@vSs~Y`YA_L$@o|xU{;apV#A?cm#qn{k9=IzUms5s_7tCwj z=*Iw6tX`V$5QqgcWyli^jT*;r$nMouT|a~C=1*o3)(=)aarHWO6T`I0`TMC4QvJAj z6jy4s&03l$PvUHN8nDc@>JsX z-K#5oE%567dN?>K488(~YhC~)pv?$2VW>LakKWG#^`j)Ozp2AhBm@DuKJis+bKlT^ zq<5BF=59#r$@e6%4yCvHC;u5Rdx_lyQ1?$)+F9)P7{-+$i%`BEdI^fV8UDX_A84M))E?*3Wr-rjiGDq9M zg$o{-k!a{z^`m|F#9rQz5kxdjjiWiL7&_BirCIROp>HG)41cpogy3jA?G^C}K-$$f zYj^L>&wJ1J_X8#r-bm0Xv+Q}Z%OR?16QM6l-7kWDlKY~v1RG*GG#1OU39P(XJIfN; zHNn44uc>V+)fh4rC~)HET86WqjYk-rCFKt-G(PW-8&l$5KdN7qHkyYY9+A>Wm z&(q|>x=h<%)mSa30M#nDeE!dq3O0;XKttNa0CvAcbl*iBVKZ#;a*3?L`Ir-;DT&?G z_U1ASuMJQ$zxsAqE`QR!Q@-z@(Y}6du)A0^flfYo9H_gU@xUUn@Pt-7&7cvTu4jR| zl3B#sp1;lnTVJA&pCs+KIlP+;||24_6ugK@jb&n#5;Bs&UHIs*uC& zlagg_PuGG`nF@#F6rLbA$BDXHkNzAswY|Clq;nYRvQ5%)6uV~YabupO$(PXPwequJ zPASSNv%VStGZi+x2E(l2%ME3SCm=|Y_Z9Y^M*8DRKh{!6gr&e;3Ad|wunJ$%3!Pkz znz^`IVvL3*6O|`!%K5g691p%-=4g>S9yA1x2dhXPZPLesZx%noBFKZf4Dw(_A*7v4 ze-Jvhe)}E?SmXz)4$-ziI>+EYt}*y4AY6uu^EkHaAyQX6)R%&CUVHj`peHS*2xs!- z@ycbcFf{eUT^r+ZaNdE@3KI6mG8iqvL%ZKHZ|8!NZ%9w?UT~y&0TejGxyjI-`q|nR zDf8L`H#i@y)rXJUB}yGJdtEX!buEtqqAJjYf}wW4)Gzpz&}_hN?r;sabMYKN`&4mm z0vYrX?4mNmRXtu5#~XiXXau*0!(?8Ba#oUF)$jBz&UDo4^@98F>W>U6E$6Ad57k(r zze{}S8^PB)*xJ(|TJ6>P$|0ryppZ9qHzyJnI1C}|1*b`-qpI+Fs|{Ln{l>`8E27sf zQL9yZqiB@5SXx$_&DfepVg8PrGWoH|5N$*W&;LdK5O0x;Ey~KNQWX@yC_OYY$fmytW=L;bF8hEyg`$ zMz$BTY!c&`vL489Xl9t>;4-iO)8z15TWjpzeqUpul}pbY$nvy$3e&dXbDtMk0aIg4 zrsiu32VrbhO4j2fo)T7BGrI`Zn}_D#y+8l3d9og1#McCQL*t*!hTx149wm;F>2QW! z8LmP5=b>Xs@W8iwJKNSuwxi7mdb6%nKw1w6biK5n`VslK^Bl?(pR}m}B;V)04dPeN zD9;0w^S61y9In|_8VSvbxD=q0WMnL*kgoZp^n%>He#1cX)c)+6iGitIJU%W%O$BR29KrHq1jH@ z!9M)5IEGZu{^*6|uy0rfTXL;PxAaR=QFS*IpAsN9`6X*SjlBLPL8D;xo8ds$3jovkRPG z{fn5O70v7Q!9}BkgA3n@F=X}g<6IH+?o8wJL7dq@^>?1^$An_X?H)D_zZ=QunLsCv ze%zctX|vs-DcbVx#H03(#LbSxzo8@l_kaKQ|3Mcvcp+#`MMf$6F{UB*<2##fYMk+9 zJj(Ap*&5}ye%y?oM9lwB(?LFe)Yj=MYxR4$){|9{PC+!VWr>J~#*`j~VUdwu>Q%$a z3i0wxm$U_jJ2MBSldK%inwJ8c7r@&HY_B;qmIjvM8>!7an;o08$C8@-bavr3g(NV; zdojyK?J2V41fIZ|O>vrzl1hqk+9MH?9Z*LLykjTja1Cbl4U5_6PQyNy1wAo6iry>= zOxGPf5p@LI3N(a{0m5IZt8$1iu7^gc`)K(%ntIzkgRT{PtNKzF9?1eGtEVKUK`?@& zU73%zX{}62>(qu*h0d>*l#P=sm~Q!U_{JrHnS4SYOn*Jpxgze>wy|9*FmwuqXY}C2#OqW2bqUmdo|GuV0dBtBOu^(7yep>*2)>bg^Cv7= zP?L&Mfw47$wN-V~D+Ca>;MS;#Dn>&$zH6wx;?e5`jL+c1-a8)84ExNlnHj0s#ME*Z zdb{r{Ht~}0so{domYlLj@d&<_{o7wyN0svyxTxnA%i;0rM&Y&7x-4XwT|28|k9KHp zy|llLA{!uuF2Osm(DyyUDRgvX>Y4O$zz%tU=Pl>D1w(RCI@I%IIVE`Z=9TIxUnuU3!(=6hSh;Yx$*BQ3$QG5CydfAehu;2*Rv6+Hj`r zm1}8+vJsK^JtH&Kh8|6ZOl5qro07q7I@TXpj?IbC;NtxRbTl>~=QFaSG0h zt3I917sYy1J|I#!@TkiIuAMHOvcNiH+o}sKtc8JYXf`(jgxP5hdNZ)clDud^m-Rj;St8g z%Wic)-?bZPRz|DLn=b~k#yV1PTXvVDCHKAcsJ(!zCDTyrNja*GfwcdA@-lz#FFSX` z#@x7E`zOrg_g>%Iq8_xASjoFYZ|loQdRz-)j|L?v0~>K0>!zO14Gm_ ze-NJ0;?C$zyQ6$0IWNureHj@V5Ey-Qi(=c)0)m`=8|Z<~l04eH*qe=1(>KyZ+iuCe!lvEV51A{N43C#Ev^1ZR?w+YS#o zyoRE{B@8N@z;~s6!~?Yel^R<{4`Rg`Dv!bd>@Wx#a9N@`8rNM zemyb&Pm_<`!^6R*-^YDmBntLYzKLxtU*%}{^j{Cqv$&u7eIcyk{$j8%h)s{9&3Ey} z=dF$ZytnZ$@69;hHG}-xO!fDEHdHx)PAG^)AwL1W@@5WDt&*+wVi=NzAl3j8B%oUujT!+nP3aaW z!J!xe|F~L=krD*@T}!g@sL90;?8>18u{4ddR2GsO)^rGGVy!D477H>Bo+KoIly0W!WX}>Rl_$P@KoAzj!~(vuNtUx)h$oSG$BZr@_@`jStzZ zCPBCw2^Mu_n{rex=j#TpGTLraHc{eTx>xc18eut@Lu|h)_M6tfiHZK*WFlh9?P@!t zcesu%W2C-60x);Cho{~sic^XNlU%Fz9^PiMb+H8h&8z_>RSvAV43nW=HPjd4y5dAv zsNMzFXhEmadRrg5H6tZ-T{b^^vkY2>;9P|J=-t-Z{FPzG!*NWu`gWN@2WAa#s%#&U zgf#C>vlFDOMj>pNKOxEdvN)Yh|J2OytsYCQRtPCj`lTB|$#6Y3Ymo0X^}jRe0H9#g z@%QT1!(JoH7`eyskYQw(FYtJrWQC0)@-T{Cr49?yTT5EjEl*b-R7O=>e5<~DY@6Oy z7Tf!VBywxnE?)+fusT__q;*#ar??MRNb2n`l~!KWNNYo#)r#4XB_7(_bz_0m-)-?L z^oR@RR8}Hokp>e{6 zV993{_fO`JrCn zGkS)q!rq~N?n%^*RS$RXxHUt)BQ>pBkKplix;--}8KKC8PCK6A*=zx-#vo_FKu>E( zvmRTC<)_$j&)&RRm&?CFmL|t$K|S~a#8EZ5VzfANw2GV zA>{Rd=YqI%L%{WYiS(}Lp@W>M7ztikP`HB`HDUF*^r$GzL3*?S{Vf!xl=>+)4~%&9 zK{T1-is{d#VY#b}R9>|%N3S17*NlnR5t=hSB#WX?uO2lxfEC%4m06UTj_v7=y0>cGVg|X@oWTmE{|>H0~hF%M}(almD-u&QF$Nu0x`FzMRKAjvIyty!AZn%hox;K;We$Sdv2_aq-vk5L+h>mX#f>h(J2=ynv^Rba~{SbE$ zyiwGH9*%;c0tV}S1`UMG&+4TuHzSj|plId!g)FQ=C^V?^GKv0;FUxD3pz_x1MXHBF zT>?f2Ee=-zI=dGjs+b4Hw5h1c!&L53U};66P~CM8MS@9R#3J*XBTFo-y^tRQA92wT zT_Vs^#i`CERszsm9a!QdiKjI}3j7ZXxxS~~2MnDr%K63+wyoaWP6w#0#M?fv>1takIYhws*I zudT1qKIdRIG+%Eo#^!U9PG2VH3BH1}*}@B~A@g_aJvVf%ll6eNTP-&oN_7SFfFWBq3Sh~BDN1r22IZst|tX2=`>GVb=t zU{;tz*Z%TD-eU@qVn>#amSYwR06?Z^XssGQW5^&~10+m)Z5|m0jR-#eGZDhMP{uOG zKy&pH;OCC6U8rfjSNLgPSuW6g<(lxw17^r`J&=sxXSt*i)B-8)|ApBYnhVV_haJp9 zFaq&_4P|r3Q-1O>zfLi*amMf2XMCRH1Cu_8`GFb-Lu}mv*3#eu(he|!gE^CZ!~z;D z&`?$~%uYGKsCJ0bM*KP|P*rk*$xbHR;l~^}bow|O@^jA5jPr`m6YlR5wv{=e1rnB)v)o}u`&8FHVoH5|M% z?#(l%LJ{K_na2ZuB%~S`wQ|BSkdA+gJmi907HJI~Og3pC?`-xetTQ;gz2G2JCv@fis|C;U9+WK2&MvajdkMHY|u z7DAchGj1d<`3aXcGqRR~H5?}woQ~-wUo#Vl2l5QK#JTWuE@gaNlALjG$$sZjko#zm{ zOj^K+opCNn-+1cC(SuKZoN*%YG2v8C_;m7tpPW>#mjaIq&go|i+vf#o|I`RO#V!Y! zzZaxahEB^O;|q8*TVjScBu4PQPBrJQIYJXIpuObe`KLKg8J+}m&D~*{j3r=C`!|?( zC%|&H=9ZuGS7o8K@Nzz8iS15)C$VR>bN?4rJ`?AdFZ!Q^D!M(UGOcfwX?@ia%5 zc<#Fj#DJnKB^kMLM(Igf9MrS94D9cV@hmRN+&^cy@y@vZGcG0aY)HM}Y!;U3AmtpB z0AwU%q!vuUAtkrKQxM|`-+ynTa6=c_YUU4ac z10uy5E!Zs)C6VZrc;v|NK6gdUvsp2Nc0zjVonxp@D=AqPn*H)87sO&<+W<6q%Q8*E zRpAv`Ua4xx5jMyCVqBCJxV3;$cEet2JZqyulspwp6ghMZHP19ECx=wDxPoo|aXCvay$5+&jxE+mhvxHHnZpoM_-S(mPIU%=O2PAvXWfU7 zpLmL?*Dpu!6OcA^jwP0zCD7?-yH|5=WC6+-DdWw>beF*)$SFWC1G;z0NdsiZrL?DP z^}n+_JNN(cTI4MAxs_${Wm%c47gJT_m0#{yQl8lUF0xDb#oFVv9cxbahZ2a-6IUzJwgR-q57X|_gLY?1F}Akvdq zNGTkfUY6XD3-dq;s?~sy>tA&YLMap&U;-_Vd0OYY znW04gA)KzKMwBH9XDRwvXhTc5t{1{?;STMkY$rt^wGdq8lbz|Xd^TKU5W08OFmP;!vqYv>Xd(?gS zc={>RXENbcxCdD^pzH^-w6GNQt8RJ+&%jLwa0i}Um(!tbp#~xP8>u8LNh_mirS0;` zE6NZOG_LYupYR6k7kgv@I7RazBtV2%BHP$(xjZmq_BWnpF~S!Xx(^_~KRwxl7T}k7 zeEepfOq(y#(I}bPeqcE*4AK8J9TlQ58FSq8*AUpvaH(FyOW#QHI=S#(!~aVveR{Hg zDykKkI^PFI^*%ad-itkr5vUF_1Z1J?aBjD z5b3oNxAjPOg*=#Di%RP3Pc776tPZA;lgway2|3+2#~v5q0lx-7`6i44 zpZtNkOU^UiXsn5<5Mwl`?_tplsj)oi3K=87nW{dU95oo6-y zW)`U%urhP)JRen9KYkrxaUtV51i&#DV)=_nq>R& zdE&;!!k(3slRL}7;8^5X!bEj=tN$s z8FxxRUnfxYMaC^{d(gPC9GvO!4B5<ovMbi1OW7#m^sG#ME2 zk6JTxqRh?uq1YHt$*_#){lOv~k1SU#XBVx73`KIB`YBj$p-bL3p=}7=H5NAMJmK+> zbN|}wR-uhBgV9+8rA*ExB_%3zTp6Z@uMoX@WC(w-uU$=1VPq!Q@SXUY z4B%Y`O_8DN3#xHOvt-J0b{%h8j&gr!XbK+v_3iVw&-*W4zTN+&f3WlFdH>bE&>foi&S=`aF*_;raw4MCQ4jXcW>3@<;j*; z4+HK@j&9DvY!QYhU(8MY=u1lHI-R|ABr>rVM2G%v5FQlt^6e zD@A;Bo&(;`pIDq+j>60`p~JBw3I|5!pW52W^VgE1J{>pNihg15sLXdM4jbl!ZYE(+ z#>afNr;B;=K}UoPs3ihhW=q=dAYT(9*ySQBSE&QJacnLFsOe$zi#w0XZvtkiH;^0z zJ@4@QZ@SgTxbw6>C_n9(vDLGyFXjeLc(A0&94Pc(Hzdcg*>Y8gOBrp2^4%F# ze#&HoZnK3wvp2qIm8rKpRGpYoh1K_1OV>gLYoi+3ek1d-Kj#et7va-cSs3{vs`p{* z?An`*%8YWm#pp-+F@VF!vU27GHQ9t@tcr^_)9* zXwF8d5a=$dYEo$+OF%uLz`#m+FmlY(fd~~zCOq#57_3R1y7;`fkY5QX zZcZiFJ2FnTe&JU<-b&O$qMXr#K@m?>$f2895mSwyOhgdH<$i3HR>@e!;9)$MHVoZ6 zBd3_AWE!+Zu5N^fOC0aFEeF(=iu)ewN9IH*S-bOY@rJF6tM z`?MO6K?JH=!~szqxj0o;Nnr_Z6TDx=v>wdHpEkztl#-sbtvQBvcSVbu=^}!aUSTp^nWKz&oIkyW@1Of5XDsl9? zg-lgFpb%lr=wL`WmHq9+>Y>g=*jWwpJT;TX@HQ<=wng)%d}(?d%F^ z@W2uwdC?r_!b#8$twq_JEuIRv_#;CB5a4^ip^Gq3NIL)0};B;MQ4&@{ySMs(Qky8!KjG!VK!QB6=k5 zQx)Fw*fG+c=ZT)rzNd&|lB)g{81fNYBzDk_UpnAT_ecnhlQ7>~waMOWR;)c-Tf6#y LgI`7AYnTH72OU*t diff --git a/_static/prefix-runestone.f4ab138da65f4203.css.map b/_static/prefix-runestone.f4ab138da65f4203.css.map deleted file mode 100644 index 19c3288..0000000 --- a/_static/prefix-runestone.f4ab138da65f4203.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"prefix-runestone.f4ab138da65f4203.css","mappings":"AAAA;EAEE;;;;EAIA;EACA,2EAA2E;EAC3E,oFAAoF,CA4LtF,CApMA,qDCQE,yBAA0B,CAC1B,6BAA8B,CAF9B,sBDmMF,CA1MA,qDCYE,QDkMF,CA9MA,quBC2BE,aD+MF,CA1OA,oOCiCE,oBAAqB,CACrB,uBDmNF,CArPA,uFCqCE,YAAa,CACb,QDoNF,CA1PA,0HC0CE,YDsNF,CAhQA,+CC6CE,4BDuNF,CApQA,wHCiDE,SDyNF,CA1QA,mECoDE,kBAAmB,CACnB,yBAA0B,CAC1B,wCAAyC,CACzC,qCAAsC,CACtC,gCD0NF,CAlRA,wGC4DE,eD4NF,CAxRA,mDC+DE,iBD6NF,CA5RA,iDCkEE,aAAc,CACd,cD8NF,CAjSA,qDCsEE,eAAgB,CAChB,UD+NF,CAtSA,uDC0EE,aDgOF,CA1SA,sGC8EE,aAAc,CACd,aAAc,CACd,iBAAkB,CAClB,uBDkOF,CAnTA,mDCoFE,SDmOF,CAvTA,mDCuFE,aDoOF,CA3TA,mDC0FE,QDqOF,CA/TA,yEC6FE,eDsOF,CAnUA,yDCgGE,eDuOF,CAvUA,iDCmGE,8BAA+B,CAC/B,2BAA4B,CAC5B,sBAAuB,CACvB,QDwOF,CA9UA,mDCyGE,aDyOF,CAlVA,gNC+GE,+BAAiC,CACjC,aD6OF,CA7VA,mSCuHE,aAAc,CACd,YAAa,CACb,QDkPF,CA3WA,yDC4HE,gBDmPF,CA/WA,kHCgIE,mBDqPF,CArXA,oTCsIE,yBAA0B,CAC1B,cDyPF,CAhYA,kKC2IE,cD2PF,CAtYA,wLC+IE,QAAS,CACT,SD6PF,CA7YA,uDCmJE,kBD8PF,CAjZA,oKCuJE,6BAA8B,CAC9B,0BAA2B,CAC3B,qBAAsB,CACtB,SDgQF,CA1ZA,8QC8JE,WDkQF,CAhaA,iFCiKE,4BAA6B,CAC7B,8BAA+B,CAC/B,2BAA4B,CAC5B,sBDmQF,CAvaA,oRCwKE,uBDqQF,CA7aA,6DC2KE,uBAAyB,CACzB,YAAa,CACb,0BDsQF,CAnbA,6DCoLE,aDwQF,CA5bA,6DCuLE,eDyQF,CAhcA,uDC0LE,wBAAyB,CACzB,gBD0QF,CArcA,kGC+LE,SD4QF,CCzQA,gLAMI,gCAAkC,CAClC,iCAAmC,CACnC,yBAA2B,CAJ3B,oBAAsB,CACtB,0BDiRF,CCtRF,8GAYI,yBDgRF,CC5RF,uEAeI,2BDiRF,CChSF,+EAkBI,4BDkRF,CCpSF,sLAsBI,UDoRF,CC1SF,oHA0BI,qBAAsB,CACtB,uBDsRF,CCjTF,uDA8BI,0BDuRF,CCrTF,oGAkCI,uBDyRF,CC3TF,mDAqCI,wBD0RF,CC/TF,iJA0CI,SAAU,CACV,QD6RF,CCxUF,kGA+CI,sBD+RF,CC9UF,2DAkDI,YDgSF,CClVF,sJAsDI,+BDkSF,CCxVF,yDAyDI,qBDmSF,CC5VF,yDA4DI,kCDoSF,CChWF,8HAgEI,+BDsSF,CCtWF,kKAoEI,+BDwSF,CACF,CCtSA,WACE,gCAAmC,CACnC,8BACA,uQDwSF,CApjBA,iECsRE,kCAAmC,CACnC,iCAAkC,CANlC,oBAAqB,CACrB,gCAAmC,CACnC,iBAAkB,CAClB,eAAgB,CAChB,aAAc,CANd,iBAAkB,CAClB,ODgTF,CAhkBA,iGC0RE,eD0SF,CApkBA,yFC6RE,eD2SF,CAxkBA,gLCiSE,eD6SF,CA9kBA,2FCoSE,eD8SF,CAllBA,2FCuSE,eD+SF,CAtlBA,iGC0SE,eDgTF,CA1lBA,6FC6SE,eDiTF,CA9lBA,2FCgTE,eDkTF,CAlmBA,2FCmTE,eDmTF,CAtmBA,6FCsTE,eDoTF,CA1mBA,2FCyTE,eDqTF,CA9mBA,yFC4TE,eDsTF,CAlnBA,qGC+TE,eDuTF,CAtnBA,yFCkUE,eDwTF,CA1nBA,yFCqUE,eDyTF,CA9nBA,iGCwUE,eD0TF,CAloBA,qFC2UE,eD2TF,CAtoBA,+FC8UE,eD4TF,CA1oBA,qFCiVE,eD6TF,CA9oBA,6FCoVE,eD8TF,CAlpBA,+FCuVE,eD+TF,CAtpBA,iGC0VE,eDgUF,CA1pBA,uFC6VE,eDiUF,CA9pBA,6FCgWE,eDkUF,CAlqBA,uFCmWE,eDmUF,CAtqBA,2FCsWE,eDoUF,CA1qBA,yFCyWE,eDqUF,CA9qBA,yFC4WE,eDsUF,CAlrBA,yFC+WE,eDuUF,CAtrBA,yFCkXE,eDwUF,CA1rBA,yGCqXE,eDyUF,CA9rBA,iGCwXE,eD0UF,CAlsBA,6FC2XE,eD2UF,CAtsBA,2FC8XE,eD4UF,CA1sBA,uGCiYE,eD6UF,CA9sBA,6FCoYE,eD8UF,CAltBA,+FCuYE,eD+UF,CAttBA,iGC0YE,eDgVF,CA1tBA,yFC6YE,eDiVF,CA9tBA,yFCgZE,eDkVF,CAluBA,qGCmZE,eDmVF,CAtuBA,qGCsZE,eDoVF,CA1uBA,uGCyZE,eDqVF,CA9uBA,mGC4ZE,eDsVF,CAlvBA,6FC+ZE,eDuVF,CAtvBA,+FCkaE,eDwVF,CA1vBA,uFCqaE,eDyVF,CA9vBA,yFCwaE,eD0VF,CAlwBA,yFC2aE,eD2VF,CAtwBA,iGC8aE,eD4VF,CA1wBA,2FCibE,eD6VF,CA9wBA,6FCobE,eD8VF,CAlxBA,yFCubE,eD+VF,CAtxBA,yFC0bE,eDgWF,CA1xBA,6FC6bE,eDiWF,CA9xBA,uGCgcE,eDkWF,CAlyBA,qGCmcE,eDmWF,CAtyBA,qGCscE,eDoWF,CA1yBA,yGCycE,eDqWF,CA9yBA,uGC4cE,eDsWF,CAlzBA,2GC+cE,eDuWF,CAtzBA,yFCkdE,eDwWF,CA1zBA,uGCqdE,eDyWF,CA9zBA,yGCwdE,eD0WF,CAl0BA,6GC2dE,eD2WF,CAt0BA,+FC8dE,eD4WF,CA10BA,qGCieE,eD6WF,CA90BA,6FCoeE,eD8WF,CAl1BA,yFCueE,eD+WF,CAt1BA,yFC0eE,eDgXF,CA11BA,2FC6eE,eDiXF,CA91BA,2FCgfE,eDkXF,CAl2BA,yFCmfE,eDmXF,CAt2BA,2GCsfE,eDoXF,CA12BA,2GCyfE,eDqXF,CA92BA,iGC4fE,eDsXF,CAl3BA,yFC+fE,eDuXF,CAt3BA,2FCkgBE,eDwXF,CA13BA,yFCqgBE,eDyXF,CA93BA,+FCwgBE,eD0XF,CAl4BA,yGC2gBE,eD2XF,CAt4BA,yGC8gBE,eD4XF,CA14BA,2FCihBE,eD6XF,CA94BA,yGCohBE,eD8XF,CAl5BA,2GCuhBE,eD+XF,CAt5BA,mGC0hBE,eDgYF,CA15BA,qGC6hBE,eDiYF,CA95BA,uGCgiBE,eDkYF,CAl6BA,+FCmiBE,eDmYF,CAt6BA,2GCsiBE,eDoYF,CA16BA,mGCyiBE,eDqYF,CA96BA,qGC4iBE,eDsYF,CAl7BA,2GC+iBE,eDuYF,CAt7BA,mGCkjBE,eDwYF,CA17BA,qGCqjBE,eDyYF,CA97BA,qGCwjBE,eD0YF,CAl8BA,uGC2jBE,eD2YF,CAt8BA,iGC8jBE,eD4YF,CA18BA,qGCikBE,eD6YF,CA98BA,mGCokBE,eD8YF,CAl9BA,uGCukBE,eD+YF,CAt9BA,yGC0kBE,eDgZF,CA19BA,iHC6kBE,eDiZF,CA99BA,yFCglBE,eDkZF,CAl+BA,yFCmlBE,eDmZF,CAt+BA,yFCslBE,eDoZF,CA1+BA,iGCylBE,eDqZF,CA9+BA,mGC4lBE,eDsZF,CAl/BA,yGC+lBE,eDuZF,CAt/BA,2FCkmBE,eDwZF,CA1/BA,iGCqmBE,eDyZF,CA9/BA,6FCwmBE,eD0ZF,CAlgCA,+FC2mBE,eD2ZF,CAtgCA,6FC8mBE,eD4ZF,CA1gCA,qGCinBE,eD6ZF,CA9gCA,yGConBE,eD8ZF,CAlhCA,+FCunBE,eD+ZF,CAthCA,2GC0nBE,eDgaF,CA1hCA,yGC6nBE,eDiaF,CA9hCA,uGCgoBE,eDkaF,CAliCA,+GCmoBE,eDmaF,CAtiCA,mHCsoBE,eDoaF,CA1iCA,uFCyoBE,eDqaF,CA9iCA,iGC4oBE,eDsaF,CAljCA,yFC+oBE,eDuaF,CAtjCA,uGCkpBE,eDwaF,CA1jCA,mGCqpBE,eDyaF,CA9jCA,uGCwpBE,eD0aF,CAlkCA,qGC2pBE,eD2aF,CAtkCA,mGC8pBE,eD4aF,CA1kCA,+FCiqBE,eD6aF,CA9kCA,mGCoqBE,eD8aF,CAllCA,qHCuqBE,eD+aF,CAtlCA,mHC0qBE,eDgbF,CA1lCA,+GC6qBE,eDibF,CA9lCA,mHCgrBE,eDkbF,CAlmCA,2FCmrBE,eDmbF,CAtmCA,6FCsrBE,eDobF,CA1mCA,2FCyrBE,eDqbF,CA9mCA,6FC4rBE,eDsbF,CAlnCA,mGC+rBE,eDubF,CAtnCA,qGCksBE,eDwbF,CA1nCA,mGCqsBE,eDybF,CA9nCA,mGCwsBE,eD0bF,CAloCA,uGC2sBE,eD2bF,CAtoCA,yFC8sBE,eD4bF,CA1oCA,2FCitBE,eD6bF,CA9oCA,+FCotBE,eD8bF,CAlpCA,uFCutBE,eD+bF,CAtpCA,uFC0tBE,eDgcF,CA1pCA,yFC6tBE,eDicF,CA9pCA,iHCguBE,eDkcF,CAlqCA,yHCmuBE,eDmcF,CAtqCA,2GCsuBE,eDocF,CA1qCA,mHCyuBE,eDqcF,CA9qCA,qHC4uBE,eDscF,CAlrCA,6HC+uBE,eDucF,CAtrCA,mGCkvBE,eDwcF,CA1rCA,6FCqvBE,eDycF,CA9rCA,2GCwvBE,eD0cF,CAlsCA,uGC2vBE,eD2cF,CAtsCA,6FC8vBE,eD4cF,CA1sCA,2FCiwBE,eD6cF,CA9sCA,+FCowBE,eD8cF,CAltCA,qGCuwBE,eD+cF,CAttCA,6FC0wBE,eDgdF,CA1tCA,yFC6wBE,eDidF,CA9tCA,yFCgxBE,eDkdF,CAluCA,2FCmxBE,eDmdF,CAtuCA,6FCsxBE,eDodF,CA1uCA,6FCyxBE,eDqdF,CA9uCA,yFC4xBE,eDsdF,CAlvCA,uGC+xBE,eDudF,CAtvCA,yGCkyBE,eDwdF,CA1vCA,2GCqyBE,eDydF,CA9vCA,uGCwyBE,eD0dF,CAlwCA,uGC2yBE,eD2dF,CAtwCA,uGC8yBE,eD4dF,CA1wCA,iGCizBE,eD6dF,CA9wCA,+FCozBE,eD8dF,CAlxCA,6FCuzBE,eD+dF,CAtxCA,qGC0zBE,eDgeF,CA1xCA,iGC6zBE,eDieF,CA9xCA,mGCg0BE,eDkeF,CAlyCA,2FCm0BE,eDmeF,CAtyCA,2FCs0BE,eDoeF,CA1yCA,iGCy0BE,eDqeF,CA9yCA,iGC40BE,eDseF,CAlzCA,mGC+0BE,eDueF,CAtzCA,yGCk1BE,eDweF,CA1zCA,uGCq1BE,eDyeF,CA9zCA,mGCw1BE,eD0eF,CAl0CA,mGC21BE,eD2eF,CAt0CA,mGC81BE,eD4eF,CA10CA,6GCi2BE,eD6eF,CA90CA,mHCo2BE,eD8eF,CAl1CA,6GCu2BE,eD+eF,CAt1CA,yGC02BE,eDgfF,CA11CA,yGC62BE,eDifF,CA91CA,6GCg3BE,eDkfF,CAl2CA,qFCm3BE,eDmfF,CAt2CA,mGCs3BE,eDofF,CA12CA,mGCy3BE,eDqfF,CA92CA,iGC43BE,eDsfF,CAl3CA,yFC+3BE,eDufF,CAt3CA,2FCk4BE,eDwfF,CA13CA,2FCq4BE,eDyfF,CA93CA,mGCw4BE,eD0fF,CAl4CA,yFC24BE,eD2fF,CAt4CA,2FC84BE,eD4fF,CA14CA,yFCi5BE,eD6fF,CA94CA,6FCo5BE,eD8fF,CAl5CA,6FCu5BE,eD+fF,CAt5CA,yGC05BE,eDggBF,CA15CA,yFC65BE,eDigBF,CA95CA,qGCg6BE,eDkgBF,CAl6CA,uFCm6BE,eDmgBF,CAt6CA,2FCs6BE,eDogBF,CA16CA,2FCy6BE,eDqgBF,CA96CA,mGC46BE,eDsgBF,CAl7CA,yFC+6BE,eDugBF,CAt7CA,mGCk7BE,eDwgBF,CA17CA,qGCq7BE,eDygBF,CA97CA,iGCw7BE,eD0gBF,CAl8CA,6QCi8BE,eD6gBF,CA98CA,8KCu8BE,eD+gBF,CAt9CA,kLC68BE,eDihBF,CA99CA,2FCg9BE,eDkhBF,CAl+CA,mGCm9BE,eDmhBF,CAt+CA,iHCs9BE,eDohBF,CA1+CA,mGCy9BE,eDqhBF,CA9+CA,mHC49BE,eDshBF,CAl/CA,+GC+9BE,eDuhBF,CAt/CA,6GCk+BE,eDwhBF,CA1/CA,yGCq+BE,eDyhBF,CA9/CA,uFCw+BE,eD0hBF,CAlgDA,2FC2+BE,eD2hBF,CAtgDA,qGC8+BE,eD4hBF,CA1gDA,mGCi/BE,eD6hBF,CA9gDA,qGCo/BE,eD8hBF,CAlhDA,+GCu/BE,eD+hBF,CAthDA,iHC0/BE,eDgiBF,CA1hDA,uHC6/BE,eDiiBF,CA9hDA,+HCggCE,eDkiBF,CAliDA,mHCmgCE,eDmiBF,CAtiDA,2HCsgCE,eDoiBF,CA1iDA,qHCygCE,eDqiBF,CA9iDA,6GC4gCE,eDsiBF,CAljDA,2GC+gCE,eDuiBF,CAtjDA,+GCkhCE,eDwiBF,CA1jDA,yGCqhCE,eDyiBF,CA9jDA,+FCwhCE,eD0iBF,CAlkDA,uGC2hCE,eD2iBF,CAtkDA,mGC8hCE,eD4iBF,CA1kDA,mGCiiCE,eD6iBF,CA9kDA,qGCoiCE,eD8iBF,CAllDA,mGCuiCE,eD+iBF,CAtlDA,+FC0iCE,eDgjBF,CA1lDA,mKCmjCE,6BAA8B,CAC9B,0BAA2B,CAC3B,qBDmjBF,CAxmDA,qDCyjCE,yCAA6C,CAD7C,cDqjBF,CA7mDA,qDCgkCE,qBAAsB,CADtB,UAAc,CAHd,qDAA2D,CAC3D,cAAe,CACf,sBDujBF,CArnDA,sOCskCE,mBAAoB,CACpB,iBAAkB,CAClB,mBDyjBF,CAjoDA,+CC2kCE,aAAc,CACd,oBD0jBF,CAtoDA,sHCglCE,aAAc,CACd,yBD4jBF,CA7oDA,2DColCE,yCAA0C,CAC1C,mBD6jBF,CAlpDA,yDCwlCE,QD8jBF,CAtpDA,mDC2lCE,qBD+jBF,CA1pDA,maCkmCE,aAAc,CAEd,WAAY,CADZ,cDqkBF,CAxqDA,qECumCE,iBDqkBF,CA5qDA,yEC4mCE,qBAAsB,CACtB,qBAAsB,CACtB,iBAAkB,CAIlB,oBAAqB,CAErB,WAAY,CATZ,sBAAuB,CAQvB,cAAe,CATf,WAAY,CAKZ,sCAAwC,CACxC,iCAAmC,CACnC,8BDykBF,CA1rDA,mECunCE,iBDukBF,CA9rDA,iDC4nCE,QAAS,CACT,yBAA6B,CAF7B,kBAAmB,CADnB,eD2kBF,CArsDA,6DCsoCE,kBAAsB,CACtB,QAAS,CALT,UAAW,CAEX,WAAY,CACZ,eAAgB,CAFhB,SAAU,CAHV,iBAAkB,CAClB,SD+kBF,CAhtDA,4LCgpCE,SAAU,CAHV,WAAY,CACZ,QAAS,CACT,gBAAiB,CAJjB,eAAgB,CAChB,UD+kBF,CA3tDA,uECmpCE,cD4kBF,CA/tDA,wlBCoqCE,aAAc,CAHd,mBAAoB,CACpB,eAAgB,CAChB,eDylBF,CA5vDA,w+CCgsCE,UAAc,CAFd,eAAgB,CAChB,aDinBF,CAhzDA,4SCysCE,kBAAmB,CADnB,eDunBF,CA/zDA,ovBCutCE,aDkoBF,CAz1DA,4SCguCE,kBAAmB,CADnB,eDyoBF,CAx2DA,ovBC8uCE,aDopBF,CAl4DA,oGCkvCE,cDspBF,CAx4DA,oGCsvCE,cDwpBF,CA94DA,oGC0vCE,cD0pBF,CAp5DA,oGC8vCE,cD4pBF,CA15DA,oGCkwCE,cD8pBF,CAh6DA,oGCswCE,cDgqBF,CAt6DA,+CCywCE,eDiqBF,CA16DA,uDC6wCE,cAAe,CACf,eAAgB,CAChB,eAAgB,CAHhB,kBDqqBF,CChqBA,gFAEI,cDmqBF,CACF,CAv7DA,gHCwxCE,aDqqBF,CA77DA,4GC6xCE,wBAAyB,CADzB,YDwqBF,CAp8DA,iECgyCE,eDwqBF,CAx8DA,mECmyCE,gBDyqBF,CA58DA,qECsyCE,iBD0qBF,CAh9DA,uECyyCE,kBD2qBF,CAp9DA,qEC4yCE,kBD4qBF,CAx9DA,2EC+yCE,wBD6qBF,CA59DA,2ECkzCE,wBD8qBF,CAh+DA,6ECqzCE,yBD+qBF,CAp+DA,mECwzCE,UDgrBF,CAx+DA,uEC2zCE,aDirBF,CA5+DA,0KC+zCE,aDmrBF,CAl/DA,uECk0CE,aDorBF,CAt/DA,0KCs0CE,aDsrBF,CA5/DA,iECy0CE,aDurBF,CAhgEA,8JC60CE,aDyrBF,CAtgEA,uECg1CE,aD0rBF,CA1gEA,0KCo1CE,aD4rBF,CAhhEA,qECu1CE,aD6rBF,CAphEA,sKC21CE,aD+rBF,CA1hEA,mEC+1CE,wBAAyB,CADzB,UDisBF,CA/hEA,kKCm2CE,wBDksBF,CAriEA,mECs2CE,wBDmsBF,CAziEA,kKC02CE,wBDqsBF,CA/iEA,6DC62CE,wBDssBF,CAnjEA,sJCi3CE,wBDwsBF,CAzjEA,mECo3CE,wBDysBF,CA7jEA,kKCw3CE,wBD2sBF,CAnkEA,iEC23CE,wBD4sBF,CAvkEA,8JC+3CE,wBD8sBF,CA7kEA,qECo4CE,4BAAgC,CADhC,kBAAmB,CADnB,kBDitBF,CAnlEA,kGCy4CE,kBAAmB,CADnB,YDktBF,CA1lEA,4NC+4CE,eDqtBF,CApmEA,yECm5CE,eAAgB,CADhB,cDutBF,CAzmEA,qECu5CE,eAAgB,CAChB,gBAAiB,CAFjB,cDytBF,CA/mEA,2EC25CE,oBAAqB,CAErB,gBAAiB,CADjB,iBDytBF,CArnEA,iDCi6CE,kBAAmB,CADnB,YD0tBF,CA1nEA,kGCq6CE,sBD2tBF,CAhoEA,iDCw6CE,eD4tBF,CApoEA,iDC26CE,aD6tBF,CC3tBA,wGAII,UAAW,CAFX,UAAW,CAIX,eAAgB,CADhB,gBAAiB,CAEjB,sBAAuB,CACvB,kBAAmB,CALnB,WDmuBF,CCtuBF,+EAWI,iBD+tBF,CACF,CAxpEA,kKC67CE,WDiuBF,CA9pEA,mECg8CE,aAAc,CACd,wBDkuBF,CAnqEA,iECu8CE,0BAA8B,CAD9B,gBAAiB,CADjB,eAAgB,CADhB,iBDsuBF,CA1qEA,qRC48CE,eDsuBF,CAlrEA,2OCo9CE,UAAc,CAHd,aAAc,CACd,aAAc,CACd,sBD0uBF,CA7rEA,qRCy9CE,qBD4uBF,CArsEA,0KCi+CE,aAAc,CADd,2BAA+B,CAF/B,cAAe,CADf,kBAAmB,CAEnB,gBDgvBF,CA/sEA,kqBCy+CE,UDovBF,CA7tEA,spBCi/CE,qBD0vBF,CA3uEA,2DCq/CE,iBAAkB,CAClB,sBAAuB,CAFvB,kBD6vBF,CAjvEA,gNC4/CE,uDD+vBF,CA3vEA,qDCkgDE,wBAAyB,CACzB,iBAAkB,CAFlB,aAAc,CADd,aAAc,CADd,eDowBF,CAnwEA,mDCygDE,qBAAsB,CACtB,iBAAkB,CAClB,iDAAsD,CACtD,yCAA8C,CAJ9C,UAAW,CADX,aAAc,CADd,eDuwBF,CA7wEA,2DCkhDE,uBAAwB,CACxB,eAAgB,CAHhB,cAAe,CACf,eAAgB,CAFhB,SDswBF,CArxEA,mDC6hDE,oBAAqB,CACrB,wBAAyB,CACzB,qBAAsB,CACtB,iBAAkB,CALlB,UAAc,CALd,aAAc,CAGd,cAAe,CACf,sBAAuB,CAFvB,eAAgB,CADhB,aAAc,CAKd,oBDuwBF,CAnyEA,6DCuiDE,4BAA6B,CAC7B,eAAgB,CAHhB,aAAc,CADd,iBAAkB,CADlB,SAAU,CAGV,oBDswBF,CA5yEA,2EC2iDE,gBAAiB,CACjB,iBDqwBF,CAjzEA,iECkjDE,gBAAiB,CADjB,iBAAkB,CADlB,iBAAkB,CADlB,kBDywBF,CCpwBA,0FAEI,WDuwBF,CACF,CCrwBA,0FAEI,WDwwBF,CACF,CCtwBA,2FAEI,YDywBF,CACF,CA10EA,6ECukDE,gBAAiB,CADjB,iBAAkB,CADlB,iBAAkB,CADlB,kBD6wBF,CAj1EA,qDC2kDE,iBAAkB,CADlB,kBD4wBF,CAt1EA,2EC+kDE,aAAc,CADd,cD6wBF,CA31EA,uGCmlDE,cAAe,CADf,eD8wBF,CAh2EA,w+FCsoDE,cAAe,CAEf,iBAAkB,CADlB,kBAAmB,CAFnB,iBDg0BF,CAr8EA,0vBCspDE,UDy0BF,CA/9EA,iECypDE,UD00BF,CAn+EA,iEC4pDE,kBD20BF,CAv+EA,iEC+pDE,kBD40BF,CA3+EA,+DCkqDE,SD60BF,CA/+EA,+DCqqDE,kBD80BF,CAn/EA,+DCwqDE,kBD+0BF,CAv/EA,+DC2qDE,SDg1BF,CA3/EA,+DC8qDE,kBDi1BF,CA//EA,+DCirDE,kBDk1BF,CAngFA,+DCorDE,SDm1BF,CAvgFA,+DCurDE,kBDo1BF,CA3gFA,+DC0rDE,iBDq1BF,CA/gFA,2EC6rDE,UDs1BF,CAnhFA,2ECgsDE,kBDu1BF,CAvhFA,2ECmsDE,kBDw1BF,CA3hFA,yECssDE,SDy1BF,CA/hFA,yECysDE,kBD01BF,CAniFA,yEC4sDE,kBD21BF,CAviFA,yEC+sDE,SD41BF,CA3iFA,yECktDE,kBD61BF,CA/iFA,yECqtDE,kBD81BF,CAnjFA,yECwtDE,SD+1BF,CAvjFA,yEC2tDE,kBDg2BF,CA3jFA,yEC8tDE,iBDi2BF,CA/jFA,yECiuDE,UDk2BF,CAnkFA,2ECouDE,SDm2BF,CAvkFA,2ECuuDE,iBDo2BF,CA3kFA,2EC0uDE,iBDq2BF,CA/kFA,yEC6uDE,QDs2BF,CAnlFA,yECgvDE,iBDu2BF,CAvlFA,yECmvDE,iBDw2BF,CA3lFA,yECsvDE,QDy2BF,CA/lFA,yECyvDE,iBD02BF,CAnmFA,yEC4vDE,iBD22BF,CAvmFA,yEC+vDE,QD42BF,CA3mFA,yECkwDE,iBD62BF,CA/mFA,yECqwDE,gBD82BF,CAnnFA,yECwwDE,SD+2BF,CAvnFA,+EC2wDE,gBDg3BF,CA3nFA,+EC8wDE,wBDi3BF,CA/nFA,+ECixDE,wBDk3BF,CAnoFA,6ECoxDE,eDm3BF,CAvoFA,6ECuxDE,wBDo3BF,CA3oFA,6EC0xDE,wBDq3BF,CA/oFA,6EC6xDE,eDs3BF,CAnpFA,6ECgyDE,wBDu3BF,CAvpFA,6ECmyDE,wBDw3BF,CA3pFA,6ECsyDE,eDy3BF,CA/pFA,6ECyyDE,wBD03BF,CAnqFA,6EC4yDE,uBD23BF,CAvqFA,6EC+yDE,aD43BF,CC13BA,mxBAaI,UDw4BF,CCr5BF,iEAgBI,UDy4BF,CCz5BF,iEAmBI,kBD04BF,CC75BF,iEAsBI,kBD24BF,CCj6BF,+DAyBI,SD44BF,CCr6BF,+DA4BI,kBD64BF,CCz6BF,+DA+BI,kBD84BF,CC76BF,+DAkCI,SD+4BF,CCj7BF,+DAqCI,kBDg5BF,CCr7BF,+DAwCI,kBDi5BF,CCz7BF,+DA2CI,SDk5BF,CC77BF,+DA8CI,kBDm5BF,CCj8BF,+DAiDI,iBDo5BF,CCr8BF,2EAoDI,UDq5BF,CCz8BF,2EAuDI,kBDs5BF,CC78BF,2EA0DI,kBDu5BF,CCj9BF,yEA6DI,SDw5BF,CCr9BF,yEAgEI,kBDy5BF,CCz9BF,yEAmEI,kBD05BF,CC79BF,yEAsEI,SD25BF,CCj+BF,yEAyEI,kBD45BF,CCr+BF,yEA4EI,kBD65BF,CCz+BF,yEA+EI,SD85BF,CC7+BF,yEAkFI,kBD+5BF,CCj/BF,yEAqFI,iBDg6BF,CCr/BF,yEAwFI,UDi6BF,CCz/BF,2EA2FI,SDk6BF,CC7/BF,2EA8FI,iBDm6BF,CCjgCF,2EAiGI,iBDo6BF,CCrgCF,yEAoGI,QDq6BF,CCzgCF,yEAuGI,iBDs6BF,CC7gCF,yEA0GI,iBDu6BF,CCjhCF,yEA6GI,QDw6BF,CCrhCF,yEAgHI,iBDy6BF,CCzhCF,yEAmHI,iBD06BF,CC7hCF,yEAsHI,QD26BF,CCjiCF,yEAyHI,iBD46BF,CCriCF,yEA4HI,gBD66BF,CCziCF,yEA+HI,SD86BF,CC7iCF,+EAkII,gBD+6BF,CCjjCF,+EAqII,wBDg7BF,CCrjCF,+EAwII,wBDi7BF,CCzjCF,6EA2II,eDk7BF,CC7jCF,6EA8II,wBDm7BF,CCjkCF,6EAiJI,wBDo7BF,CCrkCF,6EAoJI,eDq7BF,CCzkCF,6EAuJI,wBDs7BF,CC7kCF,6EA0JI,wBDu7BF,CCjlCF,6EA6JI,eDw7BF,CCrlCF,6EAgKI,wBDy7BF,CCzlCF,6EAmKI,uBD07BF,CC7lCF,6EAsKI,aD27BF,CACF,CCz7BA,mxBAaI,UDu8BF,CCp9BF,iEAgBI,UDw8BF,CCx9BF,iEAmBI,kBDy8BF,CC59BF,iEAsBI,kBD08BF,CCh+BF,+DAyBI,SD28BF,CCp+BF,+DA4BI,kBD48BF,CCx+BF,+DA+BI,kBD68BF,CC5+BF,+DAkCI,SD88BF,CCh/BF,+DAqCI,kBD+8BF,CCp/BF,+DAwCI,kBDg9BF,CCx/BF,+DA2CI,SDi9BF,CC5/BF,+DA8CI,kBDk9BF,CChgCF,+DAiDI,iBDm9BF,CCpgCF,2EAoDI,UDo9BF,CCxgCF,2EAuDI,kBDq9BF,CC5gCF,2EA0DI,kBDs9BF,CChhCF,yEA6DI,SDu9BF,CCphCF,yEAgEI,kBDw9BF,CCxhCF,yEAmEI,kBDy9BF,CC5hCF,yEAsEI,SD09BF,CChiCF,yEAyEI,kBD29BF,CCpiCF,yEA4EI,kBD49BF,CCxiCF,yEA+EI,SD69BF,CC5iCF,yEAkFI,kBD89BF,CChjCF,yEAqFI,iBD+9BF,CCpjCF,yEAwFI,UDg+BF,CCxjCF,2EA2FI,SDi+BF,CC5jCF,2EA8FI,iBDk+BF,CChkCF,2EAiGI,iBDm+BF,CCpkCF,yEAoGI,QDo+BF,CCxkCF,yEAuGI,iBDq+BF,CC5kCF,yEA0GI,iBDs+BF,CChlCF,yEA6GI,QDu+BF,CCplCF,yEAgHI,iBDw+BF,CCxlCF,yEAmHI,iBDy+BF,CC5lCF,yEAsHI,QD0+BF,CChmCF,yEAyHI,iBD2+BF,CCpmCF,yEA4HI,gBD4+BF,CCxmCF,yEA+HI,SD6+BF,CC5mCF,+EAkII,gBD8+BF,CChnCF,+EAqII,wBD++BF,CCpnCF,+EAwII,wBDg/BF,CCxnCF,6EA2II,eDi/BF,CC5nCF,6EA8II,wBDk/BF,CChoCF,6EAiJI,wBDm/BF,CCpoCF,6EAoJI,eDo/BF,CCxoCF,6EAuJI,wBDq/BF,CC5oCF,6EA0JI,wBDs/BF,CChpCF,6EA6JI,eDu/BF,CCppCF,6EAgKI,wBDw/BF,CCxpCF,6EAmKI,uBDy/BF,CC5pCF,6EAsKI,aD0/BF,CACF,CCx/BA,oxBAaI,UDsgCF,CCnhCF,iEAgBI,UDugCF,CCvhCF,iEAmBI,kBDwgCF,CC3hCF,iEAsBI,kBDygCF,CC/hCF,+DAyBI,SD0gCF,CCniCF,+DA4BI,kBD2gCF,CCviCF,+DA+BI,kBD4gCF,CC3iCF,+DAkCI,SD6gCF,CC/iCF,+DAqCI,kBD8gCF,CCnjCF,+DAwCI,kBD+gCF,CCvjCF,+DA2CI,SDghCF,CC3jCF,+DA8CI,kBDihCF,CC/jCF,+DAiDI,iBDkhCF,CCnkCF,2EAoDI,UDmhCF,CCvkCF,2EAuDI,kBDohCF,CC3kCF,2EA0DI,kBDqhCF,CC/kCF,yEA6DI,SDshCF,CCnlCF,yEAgEI,kBDuhCF,CCvlCF,yEAmEI,kBDwhCF,CC3lCF,yEAsEI,SDyhCF,CC/lCF,yEAyEI,kBD0hCF,CCnmCF,yEA4EI,kBD2hCF,CCvmCF,yEA+EI,SD4hCF,CC3mCF,yEAkFI,kBD6hCF,CC/mCF,yEAqFI,iBD8hCF,CCnnCF,yEAwFI,UD+hCF,CCvnCF,2EA2FI,SDgiCF,CC3nCF,2EA8FI,iBDiiCF,CC/nCF,2EAiGI,iBDkiCF,CCnoCF,yEAoGI,QDmiCF,CCvoCF,yEAuGI,iBDoiCF,CC3oCF,yEA0GI,iBDqiCF,CC/oCF,yEA6GI,QDsiCF,CCnpCF,yEAgHI,iBDuiCF,CCvpCF,yEAmHI,iBDwiCF,CC3pCF,yEAsHI,QDyiCF,CC/pCF,yEAyHI,iBD0iCF,CCnqCF,yEA4HI,gBD2iCF,CCvqCF,yEA+HI,SD4iCF,CC3qCF,+EAkII,gBD6iCF,CC/qCF,+EAqII,wBD8iCF,CCnrCF,+EAwII,wBD+iCF,CCvrCF,6EA2II,eDgjCF,CC3rCF,6EA8II,wBDijCF,CC/rCF,6EAiJI,wBDkjCF,CCnsCF,6EAoJI,eDmjCF,CCvsCF,6EAuJI,wBDojCF,CC3sCF,6EA0JI,wBDqjCF,CC/sCF,6EA6JI,eDsjCF,CCntCF,6EAgKI,wBDujCF,CCvtCF,6EAmKI,uBDwjCF,CC3tCF,6EAsKI,aDyjCF,CACF,CAn2GA,uDC6yEE,4BD0jCF,CAv2GA,yFCizEE,oBAAqB,CACrB,UAAW,CAFX,eD6jCF,CA72GA,8KCuzEE,kBAAmB,CACnB,UAAW,CAFX,eD+jCF,CAr3GA,2DC6zEE,UAAc,CADd,kBAAmB,CADnB,eAAgB,CAGhB,eD8jCF,CA53GA,iDCi0EE,e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kBD4/EF,CC5gFF,+EAoBI,QAAS,CACT,mBAAoB,CAFpB,SD+/EF,CClhFF,qFAwBI,WD8/EF,CACF,CAr4RA,woFC06ME,WAAY,CADZ,aD+hFF,CAx8RA,ozCC47ME,UD8iFF,CA1+RA,uEC+7ME,aAAc,CAEd,gBAAiB,CADjB,iBDgjFF,CAh/RA,mECo8ME,qBDgjFF,CAp/RA,iECu8ME,oBDijFF,CAx/RA,uDC08ME,sBDkjFF,CA5/RA,uDC68ME,uBDmjFF,CAhgSA,iECg9ME,iBDojFF,CApgSA,iECs9ME,4BAA6B,CAC7B,QAAS,CAHT,iBAAkB,CADlB,UAAW,CAEX,gBDujFF,CA5gSA,2DC09ME,sBDsjFF,CAhhSA,yDC69ME,cDujFF,CCrjFA,cACE,kBDujFF,CAvhSA,gwCCo/ME,sBDukFF,CCrkFA,4FAEI,uBDwkFF,CC1kFF,6EAKI,uBDykFF,CC9kFF,uEAQI,2BD0kFF,CCllFF,8IAYI,4BD4kFF,CCzkFF,+EAEI,uBD6kFF,CC1kFF,iFAEI,wBD8kFF,CC3kFF,6FAEI,8BD+kFF,CAjBF,CC3jFA,kHAEI,uBDglFF,CCllFF,6EAKI,uBDilFF,CCtlFF,uEAQI,2BDklFF,CC1lFF,8IAYI,4BDolFF,CCjlFF,+EAEI,uBDqlFF,CCllFF,iFAEI,wBDslFF,CCnlFF,6FAEI,8BDulFF,CAjBF,CCnkFA,mHAEI,uBDwlFF,CC1lFF,6EAKI,uBDylFF,CC9lFF,uEAQI,2BD0lFF,CClmFF,8IAYI,4BD4lFF,CCzlFF,+EAEI,uBD6lFF,CC1lFF,iFAEI,wBD8lFF,CC3lFF,6FAEI,8BD+lFF,CAjBF,CC3kFA,6FAEI,uBDgmFF,CClmFF,6EAKI,uBDimFF,CCtmFF,uEAQI,2BDkmFF,CC1mFF,8IAYI,4BDomFF,CCjmFF,+EAEI,uBDqmFF,CClmFF,iFAEI,wBDsmFF,CCnmFF,6FAEI,8BDumFF,CAjBF,CCnlFA,0FAEI,sBDwmFF,CACF,CCtmFA,gHAEI,sBDymFF,CACF,CCvmFA,iHAEI,sBD0mFF,CACF,CCxmFA,2FAEI,sBD2mFF,CACF,CA3uSA,yECmoNE,sBD4mFF,CC1mFA,s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","sources":["webpack://WebComponents/./ptxrs-bootstrap.less","webpack://WebComponents/./node_modules/bootstrap/dist/css/bootstrap.css","webpack://WebComponents/./runestone/common/css/runestone-custom-sphinx-bootstrap.css","webpack://WebComponents/./runestone/accessibility/css/accessibility.css","webpack://WebComponents/./runestone/common/css/user-highlights.css","webpack://WebComponents/./runestone/matrixeq/css/matrixeq.css","webpack://WebComponents/./runestone/webgldemo/css/webglinteractive.css","webpack://WebComponents/./runestone/common/css/presenter_mode.less","webpack://WebComponents/./runestone/common/css/presenter_mode.css"],"sourcesContent":[".ptx-runestone-container,\n.runestone-sphinx {\n @import (less) url(\"./node_modules/bootstrap/dist/css/bootstrap.css\");\n @import (less) url(\"./runestone/common/css/runestone-custom-sphinx-bootstrap.css\");\n @import (less) url(\"./runestone/accessibility/css/accessibility.css\");\n}\n\n:root {\n --background: #ffffff;\n --outerBackground: #eeeeee;\n --links: #0645ad;\n --bodyFont: var(--body-text-color, #000000);\n --tooltip: #ffffff;\n --grayToWhite: #333333;\n --navbar: #f8f8f8;\n --navbarFont: #707070;\n --navbarFontHover: #000000;\n --alerts: #d9edf7;\n --completionButton: #f19711;\n --completionButtonHover: #ff9f19;\n --completionButtonText: #000000;\n --admonition: #fcf8e3;\n --admonitionBorder: #fbeed5;\n --codeButtons: #474949;\n --codeButtonsBorder: #474949;\n --dangerAlerts: #f2dede;\n --successAlerts: #dff0d8;\n --contentWidthRegular: 660px;\n --contentWidthWide: 1060px;\n --componentBgColor: #f0f8ff;\n --componentBorderColor: #000000;\n --questionBgColor: #e1efff;\n --parsonsBgColor: #ffa;\n --parsonsBorderColor: #ee0;\n --parsonsCorrectBgColor: #dff0d8;\n --parsonsCorrectBorderColor: #ade595;\n --parsonsIncorrectBgColor: #f2dede;\n --parsonsIncorrectBorderColor: #f2b6b6;\n}\n\n:root.dark-mode {\n --background: #2c2f33;\n --outerBackground: #23272a;\n --links: #7289da;\n --bodyFont: var(--body-text-color, #99aab5);\n --tooltip: #000000;\n --grayToWhite: #aaa;\n --navbar: #3d3d3d;\n --navbarFont: #ffffff;\n --navbarFontHover: #d6d6d6;\n --alerts: #714082;\n --completionButton: #650087;\n --completionButtonHover: #560073;\n --completionButtonText: #ffffff;\n --admonition: #3d3d3d;\n --admonitionBorder: #262626;\n --codeButtons: #67739d;\n --codeButtonsBorder: #ffffff;\n --dangerAlerts: #8c2626;\n --successAlerts: #217300;\n --componentBgColor: var(--rs-component-bg, var(--knowl-background, #07467d));\n --componentBorderColor: var(--rs-component-border, var(--knowl-border-color, #939090));\n --questionBgColor: var(--rs-component-bg, var(--knowl-nested-1-background, #0f5a9b));\n --parsonsBgColor: rgb(232, 232, 178);\n --parsonsBorderColor: rgb(168, 168, 45);\n --parsonsCorrectBgColor: #a3c097;\n --parsonsCorrectBorderColor: #60904c;\n --parsonsIncorrectBgColor: #ae9090;\n --parsonsIncorrectBorderColor: #c16b6b;\n}\n\n[data-theme=\"dark\"] {\n --background: #2c2f33;\n --outerBackground: #23272a;\n --links: #7289da;\n --bodyFont: #99aab5;\n --tooltip: #000000;\n --grayToWhite: #ffffff;\n --navbar: #3d3d3d;\n --navbarFont: #ffffff;\n --navbarFontHover: #d6d6d6;\n --alerts: #714082;\n --completionButton: #650087;\n --completionButtonHover: #560073;\n --completionButtonText: #ffffff;\n --admonition: #3d3d3d;\n --admonitionBorder: #262626;\n --codeButtons: #7289da;\n --codeButtonsBorder: #ffffff;\n --dangerAlerts: #8c2626;\n --successAlerts: #217300;\n --componentBgColor: #07467d;\n --componentBorderColor: #939090;\n --questionBgColor: rgb(23, 85, 93);\n}\n\n#scprogresscontainer {\n width: 100%;\n max-width: 500px;\n margin: 10px auto;\n}\n\n#subchapterprogress {\n width: 100%;\n background-color: var(--alerts);\n border: 1px solid var(--grayToWhite);\n border-radius: 5px;\n height: 20px;\n position: relative;\n}\n\n\n.exercise-statement {\n display: block;\n margin-bottom: 1em;\n}\n","/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\nhtml {\n font-family: sans-serif;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\nbody {\n margin: 0;\n}\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n vertical-align: baseline;\n}\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n[hidden],\ntemplate {\n display: none;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nabbr[title] {\n border-bottom: none;\n text-decoration: underline;\n -webkit-text-decoration: underline dotted;\n -moz-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\nb,\nstrong {\n font-weight: bold;\n}\ndfn {\n font-style: italic;\n}\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\nmark {\n background: #ff0;\n color: #000;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nfigure {\n margin: 1em 40px;\n}\nhr {\n -webkit-box-sizing: content-box;\n -moz-box-sizing: content-box;\n box-sizing: content-box;\n height: 0;\n}\npre {\n overflow: auto;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n font: inherit;\n margin: 0;\n}\nbutton {\n overflow: visible;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\ninput {\n line-height: normal;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n padding: 0;\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n -webkit-box-sizing: content-box;\n -moz-box-sizing: content-box;\n box-sizing: content-box;\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\nlegend {\n border: 0;\n padding: 0;\n}\ntextarea {\n overflow: auto;\n}\noptgroup {\n font-weight: bold;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntd,\nth {\n padding: 0;\n}\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n@media print {\n *,\n *:before,\n *:after {\n color: #000 !important;\n text-shadow: none !important;\n background: transparent !important;\n -webkit-box-shadow: none !important;\n box-shadow: none !important;\n }\n a,\n a:visited {\n text-decoration: underline;\n }\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n img {\n max-width: 100% !important;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n .navbar {\n display: none;\n }\n .btn > .caret,\n .dropup > .btn > .caret {\n border-top-color: #000 !important;\n }\n .label {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #ddd !important;\n }\n}\n@font-face {\n font-family: \"Glyphicons Halflings\";\n src: url(\"../fonts/glyphicons-halflings-regular.eot\");\n src: url(\"../fonts/glyphicons-halflings-regular.eot?#iefix\") format(\"embedded-opentype\"), url(\"../fonts/glyphicons-halflings-regular.woff2\") format(\"woff2\"), url(\"../fonts/glyphicons-halflings-regular.woff\") format(\"woff\"), url(\"../fonts/glyphicons-halflings-regular.ttf\") format(\"truetype\"), url(\"../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular\") format(\"svg\");\n}\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: \"Glyphicons Halflings\";\n font-style: normal;\n font-weight: 400;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.glyphicon-asterisk:before {\n content: \"\\002a\";\n}\n.glyphicon-plus:before {\n content: \"\\002b\";\n}\n.glyphicon-euro:before,\n.glyphicon-eur:before {\n content: \"\\20ac\";\n}\n.glyphicon-minus:before {\n content: \"\\2212\";\n}\n.glyphicon-cloud:before {\n content: \"\\2601\";\n}\n.glyphicon-envelope:before {\n content: \"\\2709\";\n}\n.glyphicon-pencil:before {\n content: \"\\270f\";\n}\n.glyphicon-glass:before {\n content: \"\\e001\";\n}\n.glyphicon-music:before {\n content: \"\\e002\";\n}\n.glyphicon-search:before {\n content: \"\\e003\";\n}\n.glyphicon-heart:before {\n content: \"\\e005\";\n}\n.glyphicon-star:before {\n content: \"\\e006\";\n}\n.glyphicon-star-empty:before {\n content: \"\\e007\";\n}\n.glyphicon-user:before {\n content: \"\\e008\";\n}\n.glyphicon-film:before {\n content: \"\\e009\";\n}\n.glyphicon-th-large:before {\n content: \"\\e010\";\n}\n.glyphicon-th:before {\n content: \"\\e011\";\n}\n.glyphicon-th-list:before {\n content: \"\\e012\";\n}\n.glyphicon-ok:before {\n content: \"\\e013\";\n}\n.glyphicon-remove:before {\n content: \"\\e014\";\n}\n.glyphicon-zoom-in:before {\n content: \"\\e015\";\n}\n.glyphicon-zoom-out:before {\n content: \"\\e016\";\n}\n.glyphicon-off:before {\n content: \"\\e017\";\n}\n.glyphicon-signal:before {\n content: \"\\e018\";\n}\n.glyphicon-cog:before {\n content: \"\\e019\";\n}\n.glyphicon-trash:before {\n content: \"\\e020\";\n}\n.glyphicon-home:before {\n content: \"\\e021\";\n}\n.glyphicon-file:before {\n content: \"\\e022\";\n}\n.glyphicon-time:before {\n content: \"\\e023\";\n}\n.glyphicon-road:before {\n content: \"\\e024\";\n}\n.glyphicon-download-alt:before {\n content: \"\\e025\";\n}\n.glyphicon-download:before {\n content: \"\\e026\";\n}\n.glyphicon-upload:before {\n content: \"\\e027\";\n}\n.glyphicon-inbox:before {\n content: \"\\e028\";\n}\n.glyphicon-play-circle:before {\n content: \"\\e029\";\n}\n.glyphicon-repeat:before {\n content: \"\\e030\";\n}\n.glyphicon-refresh:before {\n content: \"\\e031\";\n}\n.glyphicon-list-alt:before {\n content: \"\\e032\";\n}\n.glyphicon-lock:before {\n content: \"\\e033\";\n}\n.glyphicon-flag:before {\n content: \"\\e034\";\n}\n.glyphicon-headphones:before {\n content: \"\\e035\";\n}\n.glyphicon-volume-off:before {\n content: \"\\e036\";\n}\n.glyphicon-volume-down:before {\n content: \"\\e037\";\n}\n.glyphicon-volume-up:before {\n content: \"\\e038\";\n}\n.glyphicon-qrcode:before {\n content: \"\\e039\";\n}\n.glyphicon-barcode:before {\n content: \"\\e040\";\n}\n.glyphicon-tag:before {\n content: \"\\e041\";\n}\n.glyphicon-tags:before {\n content: \"\\e042\";\n}\n.glyphicon-book:before {\n content: \"\\e043\";\n}\n.glyphicon-bookmark:before {\n content: \"\\e044\";\n}\n.glyphicon-print:before {\n content: \"\\e045\";\n}\n.glyphicon-camera:before {\n content: \"\\e046\";\n}\n.glyphicon-font:before {\n content: \"\\e047\";\n}\n.glyphicon-bold:before {\n content: \"\\e048\";\n}\n.glyphicon-italic:before {\n content: \"\\e049\";\n}\n.glyphicon-text-height:before {\n content: \"\\e050\";\n}\n.glyphicon-text-width:before {\n content: \"\\e051\";\n}\n.glyphicon-align-left:before {\n content: \"\\e052\";\n}\n.glyphicon-align-center:before {\n content: \"\\e053\";\n}\n.glyphicon-align-right:before {\n content: \"\\e054\";\n}\n.glyphicon-align-justify:before {\n content: \"\\e055\";\n}\n.glyphicon-list:before {\n content: \"\\e056\";\n}\n.glyphicon-indent-left:before {\n content: \"\\e057\";\n}\n.glyphicon-indent-right:before {\n content: \"\\e058\";\n}\n.glyphicon-facetime-video:before {\n content: \"\\e059\";\n}\n.glyphicon-picture:before {\n content: \"\\e060\";\n}\n.glyphicon-map-marker:before {\n content: \"\\e062\";\n}\n.glyphicon-adjust:before {\n content: \"\\e063\";\n}\n.glyphicon-tint:before {\n content: \"\\e064\";\n}\n.glyphicon-edit:before {\n content: \"\\e065\";\n}\n.glyphicon-share:before {\n content: \"\\e066\";\n}\n.glyphicon-check:before {\n content: \"\\e067\";\n}\n.glyphicon-move:before {\n content: \"\\e068\";\n}\n.glyphicon-step-backward:before {\n content: \"\\e069\";\n}\n.glyphicon-fast-backward:before {\n content: \"\\e070\";\n}\n.glyphicon-backward:before {\n content: \"\\e071\";\n}\n.glyphicon-play:before {\n content: \"\\e072\";\n}\n.glyphicon-pause:before {\n content: \"\\e073\";\n}\n.glyphicon-stop:before {\n content: \"\\e074\";\n}\n.glyphicon-forward:before {\n content: \"\\e075\";\n}\n.glyphicon-fast-forward:before {\n content: \"\\e076\";\n}\n.glyphicon-step-forward:before {\n content: \"\\e077\";\n}\n.glyphicon-eject:before {\n content: \"\\e078\";\n}\n.glyphicon-chevron-left:before {\n content: \"\\e079\";\n}\n.glyphicon-chevron-right:before {\n content: \"\\e080\";\n}\n.glyphicon-plus-sign:before {\n content: \"\\e081\";\n}\n.glyphicon-minus-sign:before {\n content: \"\\e082\";\n}\n.glyphicon-remove-sign:before {\n content: \"\\e083\";\n}\n.glyphicon-ok-sign:before {\n content: \"\\e084\";\n}\n.glyphicon-question-sign:before {\n content: \"\\e085\";\n}\n.glyphicon-info-sign:before {\n content: \"\\e086\";\n}\n.glyphicon-screenshot:before {\n content: \"\\e087\";\n}\n.glyphicon-remove-circle:before {\n content: \"\\e088\";\n}\n.glyphicon-ok-circle:before {\n content: \"\\e089\";\n}\n.glyphicon-ban-circle:before {\n content: \"\\e090\";\n}\n.glyphicon-arrow-left:before {\n content: \"\\e091\";\n}\n.glyphicon-arrow-right:before {\n content: \"\\e092\";\n}\n.glyphicon-arrow-up:before {\n content: \"\\e093\";\n}\n.glyphicon-arrow-down:before {\n content: \"\\e094\";\n}\n.glyphicon-share-alt:before {\n content: \"\\e095\";\n}\n.glyphicon-resize-full:before {\n content: \"\\e096\";\n}\n.glyphicon-resize-small:before {\n content: \"\\e097\";\n}\n.glyphicon-exclamation-sign:before {\n content: \"\\e101\";\n}\n.glyphicon-gift:before {\n content: \"\\e102\";\n}\n.glyphicon-leaf:before {\n content: \"\\e103\";\n}\n.glyphicon-fire:before {\n content: \"\\e104\";\n}\n.glyphicon-eye-open:before {\n content: \"\\e105\";\n}\n.glyphicon-eye-close:before {\n content: \"\\e106\";\n}\n.glyphicon-warning-sign:before {\n content: \"\\e107\";\n}\n.glyphicon-plane:before {\n content: \"\\e108\";\n}\n.glyphicon-calendar:before {\n content: \"\\e109\";\n}\n.glyphicon-random:before {\n content: \"\\e110\";\n}\n.glyphicon-comment:before {\n content: \"\\e111\";\n}\n.glyphicon-magnet:before {\n content: \"\\e112\";\n}\n.glyphicon-chevron-up:before {\n content: \"\\e113\";\n}\n.glyphicon-chevron-down:before {\n content: \"\\e114\";\n}\n.glyphicon-retweet:before {\n content: \"\\e115\";\n}\n.glyphicon-shopping-cart:before {\n content: \"\\e116\";\n}\n.glyphicon-folder-close:before {\n content: \"\\e117\";\n}\n.glyphicon-folder-open:before {\n content: \"\\e118\";\n}\n.glyphicon-resize-vertical:before {\n content: \"\\e119\";\n}\n.glyphicon-resize-horizontal:before {\n content: \"\\e120\";\n}\n.glyphicon-hdd:before {\n content: \"\\e121\";\n}\n.glyphicon-bullhorn:before {\n content: \"\\e122\";\n}\n.glyphicon-bell:before {\n content: \"\\e123\";\n}\n.glyphicon-certificate:before {\n content: \"\\e124\";\n}\n.glyphicon-thumbs-up:before {\n content: \"\\e125\";\n}\n.glyphicon-thumbs-down:before {\n content: \"\\e126\";\n}\n.glyphicon-hand-right:before {\n content: \"\\e127\";\n}\n.glyphicon-hand-left:before {\n content: \"\\e128\";\n}\n.glyphicon-hand-up:before {\n content: \"\\e129\";\n}\n.glyphicon-hand-down:before {\n content: \"\\e130\";\n}\n.glyphicon-circle-arrow-right:before {\n content: \"\\e131\";\n}\n.glyphicon-circle-arrow-left:before {\n content: \"\\e132\";\n}\n.glyphicon-circle-arrow-up:before {\n content: \"\\e133\";\n}\n.glyphicon-circle-arrow-down:before {\n content: \"\\e134\";\n}\n.glyphicon-globe:before {\n content: \"\\e135\";\n}\n.glyphicon-wrench:before {\n content: \"\\e136\";\n}\n.glyphicon-tasks:before {\n content: \"\\e137\";\n}\n.glyphicon-filter:before {\n content: \"\\e138\";\n}\n.glyphicon-briefcase:before {\n content: \"\\e139\";\n}\n.glyphicon-fullscreen:before {\n content: \"\\e140\";\n}\n.glyphicon-dashboard:before {\n content: \"\\e141\";\n}\n.glyphicon-paperclip:before {\n content: \"\\e142\";\n}\n.glyphicon-heart-empty:before {\n content: \"\\e143\";\n}\n.glyphicon-link:before {\n content: \"\\e144\";\n}\n.glyphicon-phone:before {\n content: \"\\e145\";\n}\n.glyphicon-pushpin:before {\n content: \"\\e146\";\n}\n.glyphicon-usd:before {\n content: \"\\e148\";\n}\n.glyphicon-gbp:before {\n content: \"\\e149\";\n}\n.glyphicon-sort:before {\n content: \"\\e150\";\n}\n.glyphicon-sort-by-alphabet:before {\n content: \"\\e151\";\n}\n.glyphicon-sort-by-alphabet-alt:before {\n content: \"\\e152\";\n}\n.glyphicon-sort-by-order:before {\n content: \"\\e153\";\n}\n.glyphicon-sort-by-order-alt:before {\n content: \"\\e154\";\n}\n.glyphicon-sort-by-attributes:before {\n content: \"\\e155\";\n}\n.glyphicon-sort-by-attributes-alt:before {\n content: \"\\e156\";\n}\n.glyphicon-unchecked:before {\n content: \"\\e157\";\n}\n.glyphicon-expand:before {\n content: \"\\e158\";\n}\n.glyphicon-collapse-down:before {\n content: \"\\e159\";\n}\n.glyphicon-collapse-up:before {\n content: \"\\e160\";\n}\n.glyphicon-log-in:before {\n content: \"\\e161\";\n}\n.glyphicon-flash:before {\n content: \"\\e162\";\n}\n.glyphicon-log-out:before {\n content: \"\\e163\";\n}\n.glyphicon-new-window:before {\n content: \"\\e164\";\n}\n.glyphicon-record:before {\n content: \"\\e165\";\n}\n.glyphicon-save:before {\n content: \"\\e166\";\n}\n.glyphicon-open:before {\n content: \"\\e167\";\n}\n.glyphicon-saved:before {\n content: \"\\e168\";\n}\n.glyphicon-import:before {\n content: \"\\e169\";\n}\n.glyphicon-export:before {\n content: \"\\e170\";\n}\n.glyphicon-send:before {\n content: \"\\e171\";\n}\n.glyphicon-floppy-disk:before {\n content: \"\\e172\";\n}\n.glyphicon-floppy-saved:before {\n content: \"\\e173\";\n}\n.glyphicon-floppy-remove:before {\n content: \"\\e174\";\n}\n.glyphicon-floppy-save:before {\n content: \"\\e175\";\n}\n.glyphicon-floppy-open:before {\n content: \"\\e176\";\n}\n.glyphicon-credit-card:before {\n content: \"\\e177\";\n}\n.glyphicon-transfer:before {\n content: \"\\e178\";\n}\n.glyphicon-cutlery:before {\n content: \"\\e179\";\n}\n.glyphicon-header:before {\n content: \"\\e180\";\n}\n.glyphicon-compressed:before {\n content: \"\\e181\";\n}\n.glyphicon-earphone:before {\n content: \"\\e182\";\n}\n.glyphicon-phone-alt:before {\n content: \"\\e183\";\n}\n.glyphicon-tower:before {\n content: \"\\e184\";\n}\n.glyphicon-stats:before {\n content: \"\\e185\";\n}\n.glyphicon-sd-video:before {\n content: \"\\e186\";\n}\n.glyphicon-hd-video:before {\n content: \"\\e187\";\n}\n.glyphicon-subtitles:before {\n content: \"\\e188\";\n}\n.glyphicon-sound-stereo:before {\n content: \"\\e189\";\n}\n.glyphicon-sound-dolby:before {\n content: \"\\e190\";\n}\n.glyphicon-sound-5-1:before {\n content: \"\\e191\";\n}\n.glyphicon-sound-6-1:before {\n content: \"\\e192\";\n}\n.glyphicon-sound-7-1:before {\n content: \"\\e193\";\n}\n.glyphicon-copyright-mark:before {\n content: \"\\e194\";\n}\n.glyphicon-registration-mark:before {\n content: \"\\e195\";\n}\n.glyphicon-cloud-download:before {\n content: \"\\e197\";\n}\n.glyphicon-cloud-upload:before {\n content: \"\\e198\";\n}\n.glyphicon-tree-conifer:before {\n content: \"\\e199\";\n}\n.glyphicon-tree-deciduous:before {\n content: \"\\e200\";\n}\n.glyphicon-cd:before {\n content: \"\\e201\";\n}\n.glyphicon-save-file:before {\n content: \"\\e202\";\n}\n.glyphicon-open-file:before {\n content: \"\\e203\";\n}\n.glyphicon-level-up:before {\n content: \"\\e204\";\n}\n.glyphicon-copy:before {\n content: \"\\e205\";\n}\n.glyphicon-paste:before {\n content: \"\\e206\";\n}\n.glyphicon-alert:before {\n content: \"\\e209\";\n}\n.glyphicon-equalizer:before {\n content: \"\\e210\";\n}\n.glyphicon-king:before {\n content: \"\\e211\";\n}\n.glyphicon-queen:before {\n content: \"\\e212\";\n}\n.glyphicon-pawn:before {\n content: \"\\e213\";\n}\n.glyphicon-bishop:before {\n content: \"\\e214\";\n}\n.glyphicon-knight:before {\n content: \"\\e215\";\n}\n.glyphicon-baby-formula:before {\n content: \"\\e216\";\n}\n.glyphicon-tent:before {\n content: \"\\26fa\";\n}\n.glyphicon-blackboard:before {\n content: \"\\e218\";\n}\n.glyphicon-bed:before {\n content: \"\\e219\";\n}\n.glyphicon-apple:before {\n content: \"\\f8ff\";\n}\n.glyphicon-erase:before {\n content: \"\\e221\";\n}\n.glyphicon-hourglass:before {\n content: \"\\231b\";\n}\n.glyphicon-lamp:before {\n content: \"\\e223\";\n}\n.glyphicon-duplicate:before {\n content: \"\\e224\";\n}\n.glyphicon-piggy-bank:before {\n content: \"\\e225\";\n}\n.glyphicon-scissors:before {\n content: \"\\e226\";\n}\n.glyphicon-bitcoin:before {\n content: \"\\e227\";\n}\n.glyphicon-btc:before {\n content: \"\\e227\";\n}\n.glyphicon-xbt:before {\n content: \"\\e227\";\n}\n.glyphicon-yen:before {\n content: \"\\00a5\";\n}\n.glyphicon-jpy:before {\n content: \"\\00a5\";\n}\n.glyphicon-ruble:before {\n content: \"\\20bd\";\n}\n.glyphicon-rub:before {\n content: \"\\20bd\";\n}\n.glyphicon-scale:before {\n content: \"\\e230\";\n}\n.glyphicon-ice-lolly:before {\n content: \"\\e231\";\n}\n.glyphicon-ice-lolly-tasted:before {\n content: \"\\e232\";\n}\n.glyphicon-education:before {\n content: \"\\e233\";\n}\n.glyphicon-option-horizontal:before {\n content: \"\\e234\";\n}\n.glyphicon-option-vertical:before {\n content: \"\\e235\";\n}\n.glyphicon-menu-hamburger:before {\n content: \"\\e236\";\n}\n.glyphicon-modal-window:before {\n content: \"\\e237\";\n}\n.glyphicon-oil:before {\n content: \"\\e238\";\n}\n.glyphicon-grain:before {\n content: \"\\e239\";\n}\n.glyphicon-sunglasses:before {\n content: \"\\e240\";\n}\n.glyphicon-text-size:before {\n content: \"\\e241\";\n}\n.glyphicon-text-color:before {\n content: \"\\e242\";\n}\n.glyphicon-text-background:before {\n content: \"\\e243\";\n}\n.glyphicon-object-align-top:before {\n content: \"\\e244\";\n}\n.glyphicon-object-align-bottom:before {\n content: \"\\e245\";\n}\n.glyphicon-object-align-horizontal:before {\n content: \"\\e246\";\n}\n.glyphicon-object-align-left:before {\n content: \"\\e247\";\n}\n.glyphicon-object-align-vertical:before {\n content: \"\\e248\";\n}\n.glyphicon-object-align-right:before {\n content: \"\\e249\";\n}\n.glyphicon-triangle-right:before {\n content: \"\\e250\";\n}\n.glyphicon-triangle-left:before {\n content: \"\\e251\";\n}\n.glyphicon-triangle-bottom:before {\n content: \"\\e252\";\n}\n.glyphicon-triangle-top:before {\n content: \"\\e253\";\n}\n.glyphicon-console:before {\n content: \"\\e254\";\n}\n.glyphicon-superscript:before {\n content: \"\\e255\";\n}\n.glyphicon-subscript:before {\n content: \"\\e256\";\n}\n.glyphicon-menu-left:before {\n content: \"\\e257\";\n}\n.glyphicon-menu-right:before {\n content: \"\\e258\";\n}\n.glyphicon-menu-down:before {\n content: \"\\e259\";\n}\n.glyphicon-menu-up:before {\n content: \"\\e260\";\n}\n* {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n*:before,\n*:after {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-size: 14px;\n line-height: 1.42857143;\n color: #333333;\n background-color: #fff;\n}\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\na {\n color: #337ab7;\n text-decoration: none;\n}\na:hover,\na:focus {\n color: #23527c;\n text-decoration: underline;\n}\na:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\nfigure {\n margin: 0;\n}\nimg {\n vertical-align: middle;\n}\n.img-responsive,\n.thumbnail > img,\n.thumbnail a > img,\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n display: block;\n max-width: 100%;\n height: auto;\n}\n.img-rounded {\n border-radius: 6px;\n}\n.img-thumbnail {\n padding: 4px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n display: inline-block;\n max-width: 100%;\n height: auto;\n}\n.img-circle {\n border-radius: 50%;\n}\nhr {\n margin-top: 20px;\n margin-bottom: 20px;\n border: 0;\n border-top: 1px solid #eeeeee;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n}\n[role=\"button\"] {\n cursor: pointer;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h1,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n font-family: inherit;\n font-weight: 500;\n line-height: 1.1;\n color: inherit;\n}\nh1 small,\nh2 small,\nh3 small,\nh4 small,\nh5 small,\nh6 small,\n.h1 small,\n.h2 small,\n.h3 small,\n.h4 small,\n.h5 small,\n.h6 small,\nh1 .small,\nh2 .small,\nh3 .small,\nh4 .small,\nh5 .small,\nh6 .small,\n.h1 .small,\n.h2 .small,\n.h3 .small,\n.h4 .small,\n.h5 .small,\n.h6 .small {\n font-weight: 400;\n line-height: 1;\n color: #777777;\n}\nh1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-top: 20px;\n margin-bottom: 10px;\n}\nh1 small,\n.h1 small,\nh2 small,\n.h2 small,\nh3 small,\n.h3 small,\nh1 .small,\n.h1 .small,\nh2 .small,\n.h2 .small,\nh3 .small,\n.h3 .small {\n font-size: 65%;\n}\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-top: 10px;\n margin-bottom: 10px;\n}\nh4 small,\n.h4 small,\nh5 small,\n.h5 small,\nh6 small,\n.h6 small,\nh4 .small,\n.h4 .small,\nh5 .small,\n.h5 .small,\nh6 .small,\n.h6 .small {\n font-size: 75%;\n}\nh1,\n.h1 {\n font-size: 36px;\n}\nh2,\n.h2 {\n font-size: 30px;\n}\nh3,\n.h3 {\n font-size: 24px;\n}\nh4,\n.h4 {\n font-size: 18px;\n}\nh5,\n.h5 {\n font-size: 14px;\n}\nh6,\n.h6 {\n font-size: 12px;\n}\np {\n margin: 0 0 10px;\n}\n.lead {\n margin-bottom: 20px;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n}\n@media (min-width: 768px) {\n .lead {\n font-size: 21px;\n }\n}\nsmall,\n.small {\n font-size: 85%;\n}\nmark,\n.mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n.text-left {\n text-align: left;\n}\n.text-right {\n text-align: right;\n}\n.text-center {\n text-align: center;\n}\n.text-justify {\n text-align: justify;\n}\n.text-nowrap {\n white-space: nowrap;\n}\n.text-lowercase {\n text-transform: lowercase;\n}\n.text-uppercase {\n text-transform: uppercase;\n}\n.text-capitalize {\n text-transform: capitalize;\n}\n.text-muted {\n color: #777777;\n}\n.text-primary {\n color: #337ab7;\n}\na.text-primary:hover,\na.text-primary:focus {\n color: #286090;\n}\n.text-success {\n color: #3c763d;\n}\na.text-success:hover,\na.text-success:focus {\n color: #2b542c;\n}\n.text-info {\n color: #31708f;\n}\na.text-info:hover,\na.text-info:focus {\n color: #245269;\n}\n.text-warning {\n color: #8a6d3b;\n}\na.text-warning:hover,\na.text-warning:focus {\n color: #66512c;\n}\n.text-danger {\n color: #a94442;\n}\na.text-danger:hover,\na.text-danger:focus {\n color: #843534;\n}\n.bg-primary {\n color: #fff;\n background-color: #337ab7;\n}\na.bg-primary:hover,\na.bg-primary:focus {\n background-color: #286090;\n}\n.bg-success {\n background-color: #dff0d8;\n}\na.bg-success:hover,\na.bg-success:focus {\n background-color: #c1e2b3;\n}\n.bg-info {\n background-color: #d9edf7;\n}\na.bg-info:hover,\na.bg-info:focus {\n background-color: #afd9ee;\n}\n.bg-warning {\n background-color: #fcf8e3;\n}\na.bg-warning:hover,\na.bg-warning:focus {\n background-color: #f7ecb5;\n}\n.bg-danger {\n background-color: #f2dede;\n}\na.bg-danger:hover,\na.bg-danger:focus {\n background-color: #e4b9b9;\n}\n.page-header {\n padding-bottom: 9px;\n margin: 40px 0 20px;\n border-bottom: 1px solid #eeeeee;\n}\nul,\nol {\n margin-top: 0;\n margin-bottom: 10px;\n}\nul ul,\nol ul,\nul ol,\nol ol {\n margin-bottom: 0;\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n margin-left: -5px;\n}\n.list-inline > li {\n display: inline-block;\n padding-right: 5px;\n padding-left: 5px;\n}\ndl {\n margin-top: 0;\n margin-bottom: 20px;\n}\ndt,\ndd {\n line-height: 1.42857143;\n}\ndt {\n font-weight: 700;\n}\ndd {\n margin-left: 0;\n}\n@media (min-width: 768px) {\n .dl-horizontal dt {\n float: left;\n width: 160px;\n clear: left;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .dl-horizontal dd {\n margin-left: 180px;\n }\n}\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n}\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\nblockquote {\n padding: 10px 20px;\n margin: 0 0 20px;\n font-size: 17.5px;\n border-left: 5px solid #eeeeee;\n}\nblockquote p:last-child,\nblockquote ul:last-child,\nblockquote ol:last-child {\n margin-bottom: 0;\n}\nblockquote footer,\nblockquote small,\nblockquote .small {\n display: block;\n font-size: 80%;\n line-height: 1.42857143;\n color: #777777;\n}\nblockquote footer:before,\nblockquote small:before,\nblockquote .small:before {\n content: \"\\2014 \\00A0\";\n}\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n text-align: right;\n border-right: 5px solid #eeeeee;\n border-left: 0;\n}\n.blockquote-reverse footer:before,\nblockquote.pull-right footer:before,\n.blockquote-reverse small:before,\nblockquote.pull-right small:before,\n.blockquote-reverse .small:before,\nblockquote.pull-right .small:before {\n content: \"\";\n}\n.blockquote-reverse footer:after,\nblockquote.pull-right footer:after,\n.blockquote-reverse small:after,\nblockquote.pull-right small:after,\n.blockquote-reverse .small:after,\nblockquote.pull-right .small:after {\n content: \"\\00A0 \\2014\";\n}\naddress {\n margin-bottom: 20px;\n font-style: normal;\n line-height: 1.42857143;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n}\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: #c7254e;\n background-color: #f9f2f4;\n border-radius: 4px;\n}\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: #fff;\n background-color: #333;\n border-radius: 3px;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\npre {\n display: block;\n padding: 9.5px;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n color: #333333;\n word-break: break-all;\n word-wrap: break-word;\n background-color: #f5f5f5;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\npre code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n}\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n.container {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n@media (min-width: 768px) {\n .container {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .container {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .container {\n width: 1170px;\n }\n}\n.container-fluid {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n.row {\n margin-right: -15px;\n margin-left: -15px;\n}\n.row-no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n.row-no-gutters [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n.col-xs-1,\n.col-sm-1,\n.col-md-1,\n.col-lg-1,\n.col-xs-2,\n.col-sm-2,\n.col-md-2,\n.col-lg-2,\n.col-xs-3,\n.col-sm-3,\n.col-md-3,\n.col-lg-3,\n.col-xs-4,\n.col-sm-4,\n.col-md-4,\n.col-lg-4,\n.col-xs-5,\n.col-sm-5,\n.col-md-5,\n.col-lg-5,\n.col-xs-6,\n.col-sm-6,\n.col-md-6,\n.col-lg-6,\n.col-xs-7,\n.col-sm-7,\n.col-md-7,\n.col-lg-7,\n.col-xs-8,\n.col-sm-8,\n.col-md-8,\n.col-lg-8,\n.col-xs-9,\n.col-sm-9,\n.col-md-9,\n.col-lg-9,\n.col-xs-10,\n.col-sm-10,\n.col-md-10,\n.col-lg-10,\n.col-xs-11,\n.col-sm-11,\n.col-md-11,\n.col-lg-11,\n.col-xs-12,\n.col-sm-12,\n.col-md-12,\n.col-lg-12 {\n position: relative;\n min-height: 1px;\n padding-right: 15px;\n padding-left: 15px;\n}\n.col-xs-1,\n.col-xs-2,\n.col-xs-3,\n.col-xs-4,\n.col-xs-5,\n.col-xs-6,\n.col-xs-7,\n.col-xs-8,\n.col-xs-9,\n.col-xs-10,\n.col-xs-11,\n.col-xs-12 {\n float: left;\n}\n.col-xs-12 {\n width: 100%;\n}\n.col-xs-11 {\n width: 91.66666667%;\n}\n.col-xs-10 {\n width: 83.33333333%;\n}\n.col-xs-9 {\n width: 75%;\n}\n.col-xs-8 {\n width: 66.66666667%;\n}\n.col-xs-7 {\n width: 58.33333333%;\n}\n.col-xs-6 {\n width: 50%;\n}\n.col-xs-5 {\n width: 41.66666667%;\n}\n.col-xs-4 {\n width: 33.33333333%;\n}\n.col-xs-3 {\n width: 25%;\n}\n.col-xs-2 {\n width: 16.66666667%;\n}\n.col-xs-1 {\n width: 8.33333333%;\n}\n.col-xs-pull-12 {\n right: 100%;\n}\n.col-xs-pull-11 {\n right: 91.66666667%;\n}\n.col-xs-pull-10 {\n right: 83.33333333%;\n}\n.col-xs-pull-9 {\n right: 75%;\n}\n.col-xs-pull-8 {\n right: 66.66666667%;\n}\n.col-xs-pull-7 {\n right: 58.33333333%;\n}\n.col-xs-pull-6 {\n right: 50%;\n}\n.col-xs-pull-5 {\n right: 41.66666667%;\n}\n.col-xs-pull-4 {\n right: 33.33333333%;\n}\n.col-xs-pull-3 {\n right: 25%;\n}\n.col-xs-pull-2 {\n right: 16.66666667%;\n}\n.col-xs-pull-1 {\n right: 8.33333333%;\n}\n.col-xs-pull-0 {\n right: auto;\n}\n.col-xs-push-12 {\n left: 100%;\n}\n.col-xs-push-11 {\n left: 91.66666667%;\n}\n.col-xs-push-10 {\n left: 83.33333333%;\n}\n.col-xs-push-9 {\n left: 75%;\n}\n.col-xs-push-8 {\n left: 66.66666667%;\n}\n.col-xs-push-7 {\n left: 58.33333333%;\n}\n.col-xs-push-6 {\n left: 50%;\n}\n.col-xs-push-5 {\n left: 41.66666667%;\n}\n.col-xs-push-4 {\n left: 33.33333333%;\n}\n.col-xs-push-3 {\n left: 25%;\n}\n.col-xs-push-2 {\n left: 16.66666667%;\n}\n.col-xs-push-1 {\n left: 8.33333333%;\n}\n.col-xs-push-0 {\n left: auto;\n}\n.col-xs-offset-12 {\n margin-left: 100%;\n}\n.col-xs-offset-11 {\n margin-left: 91.66666667%;\n}\n.col-xs-offset-10 {\n margin-left: 83.33333333%;\n}\n.col-xs-offset-9 {\n margin-left: 75%;\n}\n.col-xs-offset-8 {\n margin-left: 66.66666667%;\n}\n.col-xs-offset-7 {\n margin-left: 58.33333333%;\n}\n.col-xs-offset-6 {\n margin-left: 50%;\n}\n.col-xs-offset-5 {\n margin-left: 41.66666667%;\n}\n.col-xs-offset-4 {\n margin-left: 33.33333333%;\n}\n.col-xs-offset-3 {\n margin-left: 25%;\n}\n.col-xs-offset-2 {\n margin-left: 16.66666667%;\n}\n.col-xs-offset-1 {\n margin-left: 8.33333333%;\n}\n.col-xs-offset-0 {\n margin-left: 0%;\n}\n@media (min-width: 768px) {\n .col-sm-1,\n .col-sm-2,\n .col-sm-3,\n .col-sm-4,\n .col-sm-5,\n .col-sm-6,\n .col-sm-7,\n .col-sm-8,\n .col-sm-9,\n .col-sm-10,\n .col-sm-11,\n .col-sm-12 {\n float: left;\n }\n .col-sm-12 {\n width: 100%;\n }\n .col-sm-11 {\n width: 91.66666667%;\n }\n .col-sm-10 {\n width: 83.33333333%;\n }\n .col-sm-9 {\n width: 75%;\n }\n .col-sm-8 {\n width: 66.66666667%;\n }\n .col-sm-7 {\n width: 58.33333333%;\n }\n .col-sm-6 {\n width: 50%;\n }\n .col-sm-5 {\n width: 41.66666667%;\n }\n .col-sm-4 {\n width: 33.33333333%;\n }\n .col-sm-3 {\n width: 25%;\n }\n .col-sm-2 {\n width: 16.66666667%;\n }\n .col-sm-1 {\n width: 8.33333333%;\n }\n .col-sm-pull-12 {\n right: 100%;\n }\n .col-sm-pull-11 {\n right: 91.66666667%;\n }\n .col-sm-pull-10 {\n right: 83.33333333%;\n }\n .col-sm-pull-9 {\n right: 75%;\n }\n .col-sm-pull-8 {\n right: 66.66666667%;\n }\n .col-sm-pull-7 {\n right: 58.33333333%;\n }\n .col-sm-pull-6 {\n right: 50%;\n }\n .col-sm-pull-5 {\n right: 41.66666667%;\n }\n .col-sm-pull-4 {\n right: 33.33333333%;\n }\n .col-sm-pull-3 {\n right: 25%;\n }\n .col-sm-pull-2 {\n right: 16.66666667%;\n }\n .col-sm-pull-1 {\n right: 8.33333333%;\n }\n .col-sm-pull-0 {\n right: auto;\n }\n .col-sm-push-12 {\n left: 100%;\n }\n .col-sm-push-11 {\n left: 91.66666667%;\n }\n .col-sm-push-10 {\n left: 83.33333333%;\n }\n .col-sm-push-9 {\n left: 75%;\n }\n .col-sm-push-8 {\n left: 66.66666667%;\n }\n .col-sm-push-7 {\n left: 58.33333333%;\n }\n .col-sm-push-6 {\n left: 50%;\n }\n .col-sm-push-5 {\n left: 41.66666667%;\n }\n .col-sm-push-4 {\n left: 33.33333333%;\n }\n .col-sm-push-3 {\n left: 25%;\n }\n .col-sm-push-2 {\n left: 16.66666667%;\n }\n .col-sm-push-1 {\n left: 8.33333333%;\n }\n .col-sm-push-0 {\n left: auto;\n }\n .col-sm-offset-12 {\n margin-left: 100%;\n }\n .col-sm-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-sm-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-sm-offset-9 {\n margin-left: 75%;\n }\n .col-sm-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-sm-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-sm-offset-6 {\n margin-left: 50%;\n }\n .col-sm-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-sm-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-sm-offset-3 {\n margin-left: 25%;\n }\n .col-sm-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-sm-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-sm-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 992px) {\n .col-md-1,\n .col-md-2,\n .col-md-3,\n .col-md-4,\n .col-md-5,\n .col-md-6,\n .col-md-7,\n .col-md-8,\n .col-md-9,\n .col-md-10,\n .col-md-11,\n .col-md-12 {\n float: left;\n }\n .col-md-12 {\n width: 100%;\n }\n .col-md-11 {\n width: 91.66666667%;\n }\n .col-md-10 {\n width: 83.33333333%;\n }\n .col-md-9 {\n width: 75%;\n }\n .col-md-8 {\n width: 66.66666667%;\n }\n .col-md-7 {\n width: 58.33333333%;\n }\n .col-md-6 {\n width: 50%;\n }\n .col-md-5 {\n width: 41.66666667%;\n }\n .col-md-4 {\n width: 33.33333333%;\n }\n .col-md-3 {\n width: 25%;\n }\n .col-md-2 {\n width: 16.66666667%;\n }\n .col-md-1 {\n width: 8.33333333%;\n }\n .col-md-pull-12 {\n right: 100%;\n }\n .col-md-pull-11 {\n right: 91.66666667%;\n }\n .col-md-pull-10 {\n right: 83.33333333%;\n }\n .col-md-pull-9 {\n right: 75%;\n }\n .col-md-pull-8 {\n right: 66.66666667%;\n }\n .col-md-pull-7 {\n right: 58.33333333%;\n }\n .col-md-pull-6 {\n right: 50%;\n }\n .col-md-pull-5 {\n right: 41.66666667%;\n }\n .col-md-pull-4 {\n right: 33.33333333%;\n }\n .col-md-pull-3 {\n right: 25%;\n }\n .col-md-pull-2 {\n right: 16.66666667%;\n }\n .col-md-pull-1 {\n right: 8.33333333%;\n }\n .col-md-pull-0 {\n right: auto;\n }\n .col-md-push-12 {\n left: 100%;\n }\n .col-md-push-11 {\n left: 91.66666667%;\n }\n .col-md-push-10 {\n left: 83.33333333%;\n }\n .col-md-push-9 {\n left: 75%;\n }\n .col-md-push-8 {\n left: 66.66666667%;\n }\n .col-md-push-7 {\n left: 58.33333333%;\n }\n .col-md-push-6 {\n left: 50%;\n }\n .col-md-push-5 {\n left: 41.66666667%;\n }\n .col-md-push-4 {\n left: 33.33333333%;\n }\n .col-md-push-3 {\n left: 25%;\n }\n .col-md-push-2 {\n left: 16.66666667%;\n }\n .col-md-push-1 {\n left: 8.33333333%;\n }\n .col-md-push-0 {\n left: auto;\n }\n .col-md-offset-12 {\n margin-left: 100%;\n }\n .col-md-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-md-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-md-offset-9 {\n margin-left: 75%;\n }\n .col-md-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-md-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-md-offset-6 {\n margin-left: 50%;\n }\n .col-md-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-md-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-md-offset-3 {\n margin-left: 25%;\n }\n .col-md-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-md-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-md-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 1200px) {\n .col-lg-1,\n .col-lg-2,\n .col-lg-3,\n .col-lg-4,\n .col-lg-5,\n .col-lg-6,\n .col-lg-7,\n .col-lg-8,\n .col-lg-9,\n .col-lg-10,\n .col-lg-11,\n .col-lg-12 {\n float: left;\n }\n .col-lg-12 {\n width: 100%;\n }\n .col-lg-11 {\n width: 91.66666667%;\n }\n .col-lg-10 {\n width: 83.33333333%;\n }\n .col-lg-9 {\n width: 75%;\n }\n .col-lg-8 {\n width: 66.66666667%;\n }\n .col-lg-7 {\n width: 58.33333333%;\n }\n .col-lg-6 {\n width: 50%;\n }\n .col-lg-5 {\n width: 41.66666667%;\n }\n .col-lg-4 {\n width: 33.33333333%;\n }\n .col-lg-3 {\n width: 25%;\n }\n .col-lg-2 {\n width: 16.66666667%;\n }\n .col-lg-1 {\n width: 8.33333333%;\n }\n .col-lg-pull-12 {\n right: 100%;\n }\n .col-lg-pull-11 {\n right: 91.66666667%;\n }\n .col-lg-pull-10 {\n right: 83.33333333%;\n }\n .col-lg-pull-9 {\n right: 75%;\n }\n .col-lg-pull-8 {\n right: 66.66666667%;\n }\n .col-lg-pull-7 {\n right: 58.33333333%;\n }\n .col-lg-pull-6 {\n right: 50%;\n }\n .col-lg-pull-5 {\n right: 41.66666667%;\n }\n .col-lg-pull-4 {\n right: 33.33333333%;\n }\n .col-lg-pull-3 {\n right: 25%;\n }\n .col-lg-pull-2 {\n right: 16.66666667%;\n }\n .col-lg-pull-1 {\n right: 8.33333333%;\n }\n .col-lg-pull-0 {\n right: auto;\n }\n .col-lg-push-12 {\n left: 100%;\n }\n .col-lg-push-11 {\n left: 91.66666667%;\n }\n .col-lg-push-10 {\n left: 83.33333333%;\n }\n .col-lg-push-9 {\n left: 75%;\n }\n .col-lg-push-8 {\n left: 66.66666667%;\n }\n .col-lg-push-7 {\n left: 58.33333333%;\n }\n .col-lg-push-6 {\n left: 50%;\n }\n .col-lg-push-5 {\n left: 41.66666667%;\n }\n .col-lg-push-4 {\n left: 33.33333333%;\n }\n .col-lg-push-3 {\n left: 25%;\n }\n .col-lg-push-2 {\n left: 16.66666667%;\n }\n .col-lg-push-1 {\n left: 8.33333333%;\n }\n .col-lg-push-0 {\n left: auto;\n }\n .col-lg-offset-12 {\n margin-left: 100%;\n }\n .col-lg-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-lg-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-lg-offset-9 {\n margin-left: 75%;\n }\n .col-lg-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-lg-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-lg-offset-6 {\n margin-left: 50%;\n }\n .col-lg-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-lg-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-lg-offset-3 {\n margin-left: 25%;\n }\n .col-lg-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-lg-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-lg-offset-0 {\n margin-left: 0%;\n }\n}\ntable {\n background-color: transparent;\n}\ntable col[class*=\"col-\"] {\n position: static;\n display: table-column;\n float: none;\n}\ntable td[class*=\"col-\"],\ntable th[class*=\"col-\"] {\n position: static;\n display: table-cell;\n float: none;\n}\ncaption {\n padding-top: 8px;\n padding-bottom: 8px;\n color: #777777;\n text-align: left;\n}\nth {\n text-align: left;\n}\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: 20px;\n}\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n padding: 8px;\n line-height: 1.42857143;\n vertical-align: top;\n border-top: 1px solid #ddd;\n}\n.table > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid #ddd;\n}\n.table > caption + thead > tr:first-child > th,\n.table > colgroup + thead > tr:first-child > th,\n.table > thead:first-child > tr:first-child > th,\n.table > caption + thead > tr:first-child > td,\n.table > colgroup + thead > tr:first-child > td,\n.table > thead:first-child > tr:first-child > td {\n border-top: 0;\n}\n.table > tbody + tbody {\n border-top: 2px solid #ddd;\n}\n.table .table {\n background-color: #fff;\n}\n.table-condensed > thead > tr > th,\n.table-condensed > tbody > tr > th,\n.table-condensed > tfoot > tr > th,\n.table-condensed > thead > tr > td,\n.table-condensed > tbody > tr > td,\n.table-condensed > tfoot > tr > td {\n padding: 5px;\n}\n.table-bordered {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > td {\n border-bottom-width: 2px;\n}\n.table-striped > tbody > tr:nth-of-type(odd) {\n background-color: #f9f9f9;\n}\n.table-hover > tbody > tr:hover {\n background-color: #f5f5f5;\n}\n.table > thead > tr > td.active,\n.table > tbody > tr > td.active,\n.table > tfoot > tr > td.active,\n.table > thead > tr > th.active,\n.table > tbody > tr > th.active,\n.table > tfoot > tr > th.active,\n.table > thead > tr.active > td,\n.table > tbody > tr.active > td,\n.table > tfoot > tr.active > td,\n.table > thead > tr.active > th,\n.table > tbody > tr.active > th,\n.table > tfoot > tr.active > th {\n background-color: #f5f5f5;\n}\n.table-hover > tbody > tr > td.active:hover,\n.table-hover > tbody > tr > th.active:hover,\n.table-hover > tbody > tr.active:hover > td,\n.table-hover > tbody > tr:hover > .active,\n.table-hover > tbody > tr.active:hover > th {\n background-color: #e8e8e8;\n}\n.table > thead > tr > td.success,\n.table > tbody > tr > td.success,\n.table > tfoot > tr > td.success,\n.table > thead > tr > th.success,\n.table > tbody > tr > th.success,\n.table > tfoot > tr > th.success,\n.table > thead > tr.success > td,\n.table > tbody > tr.success > td,\n.table > tfoot > tr.success > td,\n.table > thead > tr.success > th,\n.table > tbody > tr.success > th,\n.table > tfoot > tr.success > th {\n background-color: #dff0d8;\n}\n.table-hover > tbody > tr > td.success:hover,\n.table-hover > tbody > tr > th.success:hover,\n.table-hover > tbody > tr.success:hover > td,\n.table-hover > tbody > tr:hover > .success,\n.table-hover > tbody > tr.success:hover > th {\n background-color: #d0e9c6;\n}\n.table > thead > tr > td.info,\n.table > tbody > tr > td.info,\n.table > tfoot > tr > td.info,\n.table > thead > tr > th.info,\n.table > tbody > tr > th.info,\n.table > tfoot > tr > th.info,\n.table > thead > tr.info > td,\n.table > tbody > tr.info > td,\n.table > tfoot > tr.info > td,\n.table > thead > tr.info > th,\n.table > tbody > tr.info > th,\n.table > tfoot > tr.info > th {\n background-color: #d9edf7;\n}\n.table-hover > tbody > tr > td.info:hover,\n.table-hover > tbody > tr > th.info:hover,\n.table-hover > tbody > tr.info:hover > td,\n.table-hover > tbody > tr:hover > .info,\n.table-hover > tbody > tr.info:hover > th {\n background-color: #c4e3f3;\n}\n.table > thead > tr > td.warning,\n.table > tbody > tr > td.warning,\n.table > tfoot > tr > td.warning,\n.table > thead > tr > th.warning,\n.table > tbody > tr > th.warning,\n.table > tfoot > tr > th.warning,\n.table > thead > tr.warning > td,\n.table > tbody > tr.warning > td,\n.table > tfoot > tr.warning > td,\n.table > thead > tr.warning > th,\n.table > tbody > tr.warning > th,\n.table > tfoot > tr.warning > th {\n background-color: #fcf8e3;\n}\n.table-hover > tbody > tr > td.warning:hover,\n.table-hover > tbody > tr > th.warning:hover,\n.table-hover > tbody > tr.warning:hover > td,\n.table-hover > tbody > tr:hover > .warning,\n.table-hover > tbody > tr.warning:hover > th {\n background-color: #faf2cc;\n}\n.table > thead > tr > td.danger,\n.table > tbody > tr > td.danger,\n.table > tfoot > tr > td.danger,\n.table > thead > tr > th.danger,\n.table > tbody > tr > th.danger,\n.table > tfoot > tr > th.danger,\n.table > thead > tr.danger > td,\n.table > tbody > tr.danger > td,\n.table > tfoot > tr.danger > td,\n.table > thead > tr.danger > th,\n.table > tbody > tr.danger > th,\n.table > tfoot > tr.danger > th {\n background-color: #f2dede;\n}\n.table-hover > tbody > tr > td.danger:hover,\n.table-hover > tbody > tr > th.danger:hover,\n.table-hover > tbody > tr.danger:hover > td,\n.table-hover > tbody > tr:hover > .danger,\n.table-hover > tbody > tr.danger:hover > th {\n background-color: #ebcccc;\n}\n.table-responsive {\n min-height: 0.01%;\n overflow-x: auto;\n}\n@media screen and (max-width: 767px) {\n .table-responsive {\n width: 100%;\n margin-bottom: 15px;\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid #ddd;\n }\n .table-responsive > .table {\n margin-bottom: 0;\n }\n .table-responsive > .table > thead > tr > th,\n .table-responsive > .table > tbody > tr > th,\n .table-responsive > .table > tfoot > tr > th,\n .table-responsive > .table > thead > tr > td,\n .table-responsive > .table > tbody > tr > td,\n .table-responsive > .table > tfoot > tr > td {\n white-space: nowrap;\n }\n .table-responsive > .table-bordered {\n border: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:first-child,\n .table-responsive > .table-bordered > tbody > tr > th:first-child,\n .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n .table-responsive > .table-bordered > thead > tr > td:first-child,\n .table-responsive > .table-bordered > tbody > tr > td:first-child,\n .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:last-child,\n .table-responsive > .table-bordered > tbody > tr > th:last-child,\n .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n .table-responsive > .table-bordered > thead > tr > td:last-child,\n .table-responsive > .table-bordered > tbody > tr > td:last-child,\n .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n }\n .table-responsive > .table-bordered > tbody > tr:last-child > th,\n .table-responsive > .table-bordered > tfoot > tr:last-child > th,\n .table-responsive > .table-bordered > tbody > tr:last-child > td,\n .table-responsive > .table-bordered > tfoot > tr:last-child > td {\n border-bottom: 0;\n }\n}\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: 20px;\n font-size: 21px;\n line-height: inherit;\n color: #333333;\n border: 0;\n border-bottom: 1px solid #e5e5e5;\n}\nlabel {\n display: inline-block;\n max-width: 100%;\n margin-bottom: 5px;\n font-weight: 700;\n}\ninput[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal;\n}\ninput[type=\"radio\"][disabled],\ninput[type=\"checkbox\"][disabled],\ninput[type=\"radio\"].disabled,\ninput[type=\"checkbox\"].disabled,\nfieldset[disabled] input[type=\"radio\"],\nfieldset[disabled] input[type=\"checkbox\"] {\n cursor: not-allowed;\n}\ninput[type=\"file\"] {\n display: block;\n}\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\nselect[multiple],\nselect[size] {\n height: auto;\n}\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\noutput {\n display: block;\n padding-top: 7px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n}\n.form-control {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;\n}\n.form-control:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);\n}\n.form-control::-moz-placeholder {\n color: #999;\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: #999;\n}\n.form-control::-webkit-input-placeholder {\n color: #999;\n}\n.form-control::-ms-expand {\n background-color: transparent;\n border: 0;\n}\n.form-control[disabled],\n.form-control[readonly],\nfieldset[disabled] .form-control {\n background-color: #eeeeee;\n opacity: 1;\n}\n.form-control[disabled],\nfieldset[disabled] .form-control {\n cursor: not-allowed;\n}\ntextarea.form-control {\n height: auto;\n}\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"].form-control,\n input[type=\"time\"].form-control,\n input[type=\"datetime-local\"].form-control,\n input[type=\"month\"].form-control {\n line-height: 34px;\n }\n input[type=\"date\"].input-sm,\n input[type=\"time\"].input-sm,\n input[type=\"datetime-local\"].input-sm,\n input[type=\"month\"].input-sm,\n .input-group-sm input[type=\"date\"],\n .input-group-sm input[type=\"time\"],\n .input-group-sm input[type=\"datetime-local\"],\n .input-group-sm input[type=\"month\"] {\n line-height: 30px;\n }\n input[type=\"date\"].input-lg,\n input[type=\"time\"].input-lg,\n input[type=\"datetime-local\"].input-lg,\n input[type=\"month\"].input-lg,\n .input-group-lg input[type=\"date\"],\n .input-group-lg input[type=\"time\"],\n .input-group-lg input[type=\"datetime-local\"],\n .input-group-lg input[type=\"month\"] {\n line-height: 46px;\n }\n}\n.form-group {\n margin-bottom: 15px;\n}\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.radio.disabled label,\n.checkbox.disabled label,\nfieldset[disabled] .radio label,\nfieldset[disabled] .checkbox label {\n cursor: not-allowed;\n}\n.radio label,\n.checkbox label {\n min-height: 20px;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n cursor: pointer;\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-top: 4px \\9;\n margin-left: -20px;\n}\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px;\n}\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n vertical-align: middle;\n cursor: pointer;\n}\n.radio-inline.disabled,\n.checkbox-inline.disabled,\nfieldset[disabled] .radio-inline,\nfieldset[disabled] .checkbox-inline {\n cursor: not-allowed;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px;\n}\n.form-control-static {\n min-height: 34px;\n padding-top: 7px;\n padding-bottom: 7px;\n margin-bottom: 0;\n}\n.form-control-static.input-lg,\n.form-control-static.input-sm {\n padding-right: 0;\n padding-left: 0;\n}\n.input-sm {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-sm {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-sm,\nselect[multiple].input-sm {\n height: auto;\n}\n.form-group-sm .form-control {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.form-group-sm select.form-control {\n height: 30px;\n line-height: 30px;\n}\n.form-group-sm textarea.form-control,\n.form-group-sm select[multiple].form-control {\n height: auto;\n}\n.form-group-sm .form-control-static {\n height: 30px;\n min-height: 32px;\n padding: 6px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.input-lg {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-lg {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-lg,\nselect[multiple].input-lg {\n height: auto;\n}\n.form-group-lg .form-control {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.form-group-lg select.form-control {\n height: 46px;\n line-height: 46px;\n}\n.form-group-lg textarea.form-control,\n.form-group-lg select[multiple].form-control {\n height: auto;\n}\n.form-group-lg .form-control-static {\n height: 46px;\n min-height: 38px;\n padding: 11px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.has-feedback {\n position: relative;\n}\n.has-feedback .form-control {\n padding-right: 42.5px;\n}\n.form-control-feedback {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n display: block;\n width: 34px;\n height: 34px;\n line-height: 34px;\n text-align: center;\n pointer-events: none;\n}\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback {\n width: 46px;\n height: 46px;\n line-height: 46px;\n}\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback {\n width: 30px;\n height: 30px;\n line-height: 30px;\n}\n.has-success .help-block,\n.has-success .control-label,\n.has-success .radio,\n.has-success .checkbox,\n.has-success .radio-inline,\n.has-success .checkbox-inline,\n.has-success.radio label,\n.has-success.checkbox label,\n.has-success.radio-inline label,\n.has-success.checkbox-inline label {\n color: #3c763d;\n}\n.has-success .form-control {\n border-color: #3c763d;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-success .form-control:focus {\n border-color: #2b542c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n}\n.has-success .input-group-addon {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #3c763d;\n}\n.has-success .form-control-feedback {\n color: #3c763d;\n}\n.has-warning .help-block,\n.has-warning .control-label,\n.has-warning .radio,\n.has-warning .checkbox,\n.has-warning .radio-inline,\n.has-warning .checkbox-inline,\n.has-warning.radio label,\n.has-warning.checkbox label,\n.has-warning.radio-inline label,\n.has-warning.checkbox-inline label {\n color: #8a6d3b;\n}\n.has-warning .form-control {\n border-color: #8a6d3b;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-warning .form-control:focus {\n border-color: #66512c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n}\n.has-warning .input-group-addon {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #8a6d3b;\n}\n.has-warning .form-control-feedback {\n color: #8a6d3b;\n}\n.has-error .help-block,\n.has-error .control-label,\n.has-error .radio,\n.has-error .checkbox,\n.has-error .radio-inline,\n.has-error .checkbox-inline,\n.has-error.radio label,\n.has-error.checkbox label,\n.has-error.radio-inline label,\n.has-error.checkbox-inline label {\n color: #a94442;\n}\n.has-error .form-control {\n border-color: #a94442;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-error .form-control:focus {\n border-color: #843534;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n}\n.has-error .input-group-addon {\n color: #a94442;\n background-color: #f2dede;\n border-color: #a94442;\n}\n.has-error .form-control-feedback {\n color: #a94442;\n}\n.has-feedback label ~ .form-control-feedback {\n top: 25px;\n}\n.has-feedback label.sr-only ~ .form-control-feedback {\n top: 0;\n}\n.help-block {\n display: block;\n margin-top: 5px;\n margin-bottom: 10px;\n color: #737373;\n}\n@media (min-width: 768px) {\n .form-inline .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-static {\n display: inline-block;\n }\n .form-inline .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .form-inline .input-group .input-group-addon,\n .form-inline .input-group .input-group-btn,\n .form-inline .input-group .form-control {\n width: auto;\n }\n .form-inline .input-group > .form-control {\n width: 100%;\n }\n .form-inline .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio,\n .form-inline .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio label,\n .form-inline .checkbox label {\n padding-left: 0;\n }\n .form-inline .radio input[type=\"radio\"],\n .form-inline .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .form-inline .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox,\n.form-horizontal .radio-inline,\n.form-horizontal .checkbox-inline {\n padding-top: 7px;\n margin-top: 0;\n margin-bottom: 0;\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox {\n min-height: 27px;\n}\n.form-horizontal .form-group {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .control-label {\n padding-top: 7px;\n margin-bottom: 0;\n text-align: right;\n }\n}\n.form-horizontal .has-feedback .form-control-feedback {\n right: 15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-lg .control-label {\n padding-top: 11px;\n font-size: 18px;\n }\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-sm .control-label {\n padding-top: 6px;\n font-size: 12px;\n }\n}\n.btn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: normal;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n -ms-touch-action: manipulation;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n border-radius: 4px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.btn:focus,\n.btn:active:focus,\n.btn.active:focus,\n.btn.focus,\n.btn:active.focus,\n.btn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n.btn:hover,\n.btn:focus,\n.btn.focus {\n color: #333;\n text-decoration: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n outline: 0;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n cursor: not-allowed;\n filter: alpha(opacity=65);\n opacity: 0.65;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\na.btn.disabled,\nfieldset[disabled] a.btn {\n pointer-events: none;\n}\n.btn-default {\n color: #333;\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default:focus,\n.btn-default.focus {\n color: #333;\n background-color: #e6e6e6;\n border-color: #8c8c8c;\n}\n.btn-default:hover {\n color: #333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n color: #333;\n background-color: #e6e6e6;\n background-image: none;\n border-color: #adadad;\n}\n.btn-default:active:hover,\n.btn-default.active:hover,\n.open > .dropdown-toggle.btn-default:hover,\n.btn-default:active:focus,\n.btn-default.active:focus,\n.open > .dropdown-toggle.btn-default:focus,\n.btn-default:active.focus,\n.btn-default.active.focus,\n.open > .dropdown-toggle.btn-default.focus {\n color: #333;\n background-color: #d4d4d4;\n border-color: #8c8c8c;\n}\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus {\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default .badge {\n color: #fff;\n background-color: #333;\n}\n.btn-primary {\n color: #fff;\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary:focus,\n.btn-primary.focus {\n color: #fff;\n background-color: #286090;\n border-color: #122b40;\n}\n.btn-primary:hover {\n color: #fff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n color: #fff;\n background-color: #286090;\n background-image: none;\n border-color: #204d74;\n}\n.btn-primary:active:hover,\n.btn-primary.active:hover,\n.open > .dropdown-toggle.btn-primary:hover,\n.btn-primary:active:focus,\n.btn-primary.active:focus,\n.open > .dropdown-toggle.btn-primary:focus,\n.btn-primary:active.focus,\n.btn-primary.active.focus,\n.open > .dropdown-toggle.btn-primary.focus {\n color: #fff;\n background-color: #204d74;\n border-color: #122b40;\n}\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus {\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.btn-success {\n color: #fff;\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success:focus,\n.btn-success.focus {\n color: #fff;\n background-color: #449d44;\n border-color: #255625;\n}\n.btn-success:hover {\n color: #fff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n color: #fff;\n background-color: #449d44;\n background-image: none;\n border-color: #398439;\n}\n.btn-success:active:hover,\n.btn-success.active:hover,\n.open > .dropdown-toggle.btn-success:hover,\n.btn-success:active:focus,\n.btn-success.active:focus,\n.open > .dropdown-toggle.btn-success:focus,\n.btn-success:active.focus,\n.btn-success.active.focus,\n.open > .dropdown-toggle.btn-success.focus {\n color: #fff;\n background-color: #398439;\n border-color: #255625;\n}\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus {\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success .badge {\n color: #5cb85c;\n background-color: #fff;\n}\n.btn-info {\n color: #fff;\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info:focus,\n.btn-info.focus {\n color: #fff;\n background-color: #31b0d5;\n border-color: #1b6d85;\n}\n.btn-info:hover {\n color: #fff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n color: #fff;\n background-color: #31b0d5;\n background-image: none;\n border-color: #269abc;\n}\n.btn-info:active:hover,\n.btn-info.active:hover,\n.open > .dropdown-toggle.btn-info:hover,\n.btn-info:active:focus,\n.btn-info.active:focus,\n.open > .dropdown-toggle.btn-info:focus,\n.btn-info:active.focus,\n.btn-info.active.focus,\n.open > .dropdown-toggle.btn-info.focus {\n color: #fff;\n background-color: #269abc;\n border-color: #1b6d85;\n}\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus {\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info .badge {\n color: #5bc0de;\n background-color: #fff;\n}\n.btn-warning {\n color: #fff;\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning:focus,\n.btn-warning.focus {\n color: #fff;\n background-color: #ec971f;\n border-color: #985f0d;\n}\n.btn-warning:hover {\n color: #fff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n color: #fff;\n background-color: #ec971f;\n background-image: none;\n border-color: #d58512;\n}\n.btn-warning:active:hover,\n.btn-warning.active:hover,\n.open > .dropdown-toggle.btn-warning:hover,\n.btn-warning:active:focus,\n.btn-warning.active:focus,\n.open > .dropdown-toggle.btn-warning:focus,\n.btn-warning:active.focus,\n.btn-warning.active.focus,\n.open > .dropdown-toggle.btn-warning.focus {\n color: #fff;\n background-color: #d58512;\n border-color: #985f0d;\n}\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus {\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning .badge {\n color: #f0ad4e;\n background-color: #fff;\n}\n.btn-danger {\n color: #fff;\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger:focus,\n.btn-danger.focus {\n color: #fff;\n background-color: #c9302c;\n border-color: #761c19;\n}\n.btn-danger:hover {\n color: #fff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n color: #fff;\n background-color: #c9302c;\n background-image: none;\n border-color: #ac2925;\n}\n.btn-danger:active:hover,\n.btn-danger.active:hover,\n.open > .dropdown-toggle.btn-danger:hover,\n.btn-danger:active:focus,\n.btn-danger.active:focus,\n.open > .dropdown-toggle.btn-danger:focus,\n.btn-danger:active.focus,\n.btn-danger.active.focus,\n.open > .dropdown-toggle.btn-danger.focus {\n color: #fff;\n background-color: #ac2925;\n border-color: #761c19;\n}\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus {\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger .badge {\n color: #d9534f;\n background-color: #fff;\n}\n.btn-link {\n font-weight: 400;\n color: #337ab7;\n border-radius: 0;\n}\n.btn-link,\n.btn-link:active,\n.btn-link.active,\n.btn-link[disabled],\nfieldset[disabled] .btn-link {\n background-color: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-link,\n.btn-link:hover,\n.btn-link:focus,\n.btn-link:active {\n border-color: transparent;\n}\n.btn-link:hover,\n.btn-link:focus {\n color: #23527c;\n text-decoration: underline;\n background-color: transparent;\n}\n.btn-link[disabled]:hover,\nfieldset[disabled] .btn-link:hover,\n.btn-link[disabled]:focus,\nfieldset[disabled] .btn-link:focus {\n color: #777777;\n text-decoration: none;\n}\n.btn-lg,\n.btn-group-lg > .btn {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.btn-sm,\n.btn-group-sm > .btn {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-xs,\n.btn-group-xs > .btn {\n padding: 1px 5px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-block {\n display: block;\n width: 100%;\n}\n.btn-block + .btn-block {\n margin-top: 5px;\n}\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n.fade {\n opacity: 0;\n -webkit-transition: opacity 0.15s linear;\n -o-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n.fade.in {\n opacity: 1;\n}\n.collapse {\n display: none;\n}\n.collapse.in {\n display: block;\n}\ntr.collapse.in {\n display: table-row;\n}\ntbody.collapse.in {\n display: table-row-group;\n}\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n -webkit-transition-property: height, visibility;\n -o-transition-property: height, visibility;\n transition-property: height, visibility;\n -webkit-transition-duration: 0.35s;\n -o-transition-duration: 0.35s;\n transition-duration: 0.35s;\n -webkit-transition-timing-function: ease;\n -o-transition-timing-function: ease;\n transition-timing-function: ease;\n}\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: 4px dashed;\n border-top: 4px solid \\9;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n.dropup,\n.dropdown {\n position: relative;\n}\n.dropdown-toggle:focus {\n outline: 0;\n}\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0;\n font-size: 14px;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n}\n.dropdown-menu.pull-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu .divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.dropdown-menu > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: 400;\n line-height: 1.42857143;\n color: #333333;\n white-space: nowrap;\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n color: #262626;\n text-decoration: none;\n background-color: #f5f5f5;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n color: #fff;\n text-decoration: none;\n background-color: #337ab7;\n outline: 0;\n}\n.dropdown-menu > .disabled > a,\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n color: #777777;\n}\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n text-decoration: none;\n cursor: not-allowed;\n background-color: transparent;\n background-image: none;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n}\n.open > .dropdown-menu {\n display: block;\n}\n.open > a {\n outline: 0;\n}\n.dropdown-menu-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu-left {\n right: auto;\n left: 0;\n}\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: 12px;\n line-height: 1.42857143;\n color: #777777;\n white-space: nowrap;\n}\n.dropdown-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 990;\n}\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n.dropup .caret,\n.navbar-fixed-bottom .dropdown .caret {\n content: \"\";\n border-top: 0;\n border-bottom: 4px dashed;\n border-bottom: 4px solid \\9;\n}\n.dropup .dropdown-menu,\n.navbar-fixed-bottom .dropdown .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n}\n@media (min-width: 768px) {\n .navbar-right .dropdown-menu {\n right: 0;\n left: auto;\n }\n .navbar-right .dropdown-menu-left {\n right: auto;\n left: 0;\n }\n}\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n float: left;\n}\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group-vertical > .btn:focus,\n.btn-group > .btn:active,\n.btn-group-vertical > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn.active {\n z-index: 2;\n}\n.btn-group .btn + .btn,\n.btn-group .btn + .btn-group,\n.btn-group .btn-group + .btn,\n.btn-group .btn-group + .btn-group {\n margin-left: -1px;\n}\n.btn-toolbar {\n margin-left: -5px;\n}\n.btn-toolbar .btn,\n.btn-toolbar .btn-group,\n.btn-toolbar .input-group {\n float: left;\n}\n.btn-toolbar > .btn,\n.btn-toolbar > .btn-group,\n.btn-toolbar > .input-group {\n margin-left: 5px;\n}\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n.btn-group > .btn:first-child {\n margin-left: 0;\n}\n.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n.btn-group > .btn + .dropdown-toggle {\n padding-right: 8px;\n padding-left: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-right: 12px;\n padding-left: 12px;\n}\n.btn-group.open .dropdown-toggle {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-group.open .dropdown-toggle.btn-link {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn .caret {\n margin-left: 0;\n}\n.btn-lg .caret {\n border-width: 5px 5px 0;\n border-bottom-width: 0;\n}\n.dropup .btn-lg .caret {\n border-width: 0 5px 5px;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group,\n.btn-group-vertical > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n}\n.btn-group-vertical > .btn-group > .btn {\n float: none;\n}\n.btn-group-vertical > .btn + .btn,\n.btn-group-vertical > .btn + .btn-group,\n.btn-group-vertical > .btn-group + .btn,\n.btn-group-vertical > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n}\n.btn-group-vertical > .btn:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.btn-group-vertical > .btn:first-child:not(:last-child) {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn:last-child:not(:first-child) {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n}\n.btn-group-justified > .btn,\n.btn-group-justified > .btn-group {\n display: table-cell;\n float: none;\n width: 1%;\n}\n.btn-group-justified > .btn-group .btn {\n width: 100%;\n}\n.btn-group-justified > .btn-group .dropdown-menu {\n left: auto;\n}\n[data-toggle=\"buttons\"] > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn input[type=\"checkbox\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.input-group {\n position: relative;\n display: table;\n border-collapse: separate;\n}\n.input-group[class*=\"col-\"] {\n float: none;\n padding-right: 0;\n padding-left: 0;\n}\n.input-group .form-control {\n position: relative;\n z-index: 2;\n float: left;\n width: 100%;\n margin-bottom: 0;\n}\n.input-group .form-control:focus {\n z-index: 3;\n}\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-group-lg > .form-control,\nselect.input-group-lg > .input-group-addon,\nselect.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-group-lg > .form-control,\ntextarea.input-group-lg > .input-group-addon,\ntextarea.input-group-lg > .input-group-btn > .btn,\nselect[multiple].input-group-lg > .form-control,\nselect[multiple].input-group-lg > .input-group-addon,\nselect[multiple].input-group-lg > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-group-sm > .form-control,\nselect.input-group-sm > .input-group-addon,\nselect.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-group-sm > .form-control,\ntextarea.input-group-sm > .input-group-addon,\ntextarea.input-group-sm > .input-group-btn > .btn,\nselect[multiple].input-group-sm > .form-control,\nselect[multiple].input-group-sm > .input-group-addon,\nselect[multiple].input-group-sm > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n}\n.input-group-addon:not(:first-child):not(:last-child),\n.input-group-btn:not(:first-child):not(:last-child),\n.input-group .form-control:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle;\n}\n.input-group-addon {\n padding: 6px 12px;\n font-size: 14px;\n font-weight: 400;\n line-height: 1;\n color: #555555;\n text-align: center;\n background-color: #eeeeee;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\n.input-group-addon.input-sm {\n padding: 5px 10px;\n font-size: 12px;\n border-radius: 3px;\n}\n.input-group-addon.input-lg {\n padding: 10px 16px;\n font-size: 18px;\n border-radius: 6px;\n}\n.input-group-addon input[type=\"radio\"],\n.input-group-addon input[type=\"checkbox\"] {\n margin-top: 0;\n}\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n.input-group-btn {\n position: relative;\n font-size: 0;\n white-space: nowrap;\n}\n.input-group-btn > .btn {\n position: relative;\n}\n.input-group-btn > .btn + .btn {\n margin-left: -1px;\n}\n.input-group-btn > .btn:hover,\n.input-group-btn > .btn:focus,\n.input-group-btn > .btn:active {\n z-index: 2;\n}\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group {\n margin-right: -1px;\n}\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group {\n z-index: 2;\n margin-left: -1px;\n}\n.nav {\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.nav > li {\n position: relative;\n display: block;\n}\n.nav > li > a {\n position: relative;\n display: block;\n padding: 10px 15px;\n}\n.nav > li > a:hover,\n.nav > li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.nav > li.disabled > a {\n color: #777777;\n}\n.nav > li.disabled > a:hover,\n.nav > li.disabled > a:focus {\n color: #777777;\n text-decoration: none;\n cursor: not-allowed;\n background-color: transparent;\n}\n.nav .open > a,\n.nav .open > a:hover,\n.nav .open > a:focus {\n background-color: #eeeeee;\n border-color: #337ab7;\n}\n.nav .nav-divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.nav > li > a > img {\n max-width: none;\n}\n.nav-tabs {\n border-bottom: 1px solid #ddd;\n}\n.nav-tabs > li {\n float: left;\n margin-bottom: -1px;\n}\n.nav-tabs > li > a {\n margin-right: 2px;\n line-height: 1.42857143;\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0;\n}\n.nav-tabs > li > a:hover {\n border-color: #eeeeee #eeeeee #ddd;\n}\n.nav-tabs > li.active > a,\n.nav-tabs > li.active > a:hover,\n.nav-tabs > li.active > a:focus {\n color: #555555;\n cursor: default;\n background-color: #fff;\n border: 1px solid #ddd;\n border-bottom-color: transparent;\n}\n.nav-tabs.nav-justified {\n width: 100%;\n border-bottom: 0;\n}\n.nav-tabs.nav-justified > li {\n float: none;\n}\n.nav-tabs.nav-justified > li > a {\n margin-bottom: 5px;\n text-align: center;\n}\n.nav-tabs.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-tabs.nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs.nav-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs.nav-justified > .active > a,\n.nav-tabs.nav-justified > .active > a:hover,\n.nav-tabs.nav-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs.nav-justified > .active > a,\n .nav-tabs.nav-justified > .active > a:hover,\n .nav-tabs.nav-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.nav-pills > li {\n float: left;\n}\n.nav-pills > li > a {\n border-radius: 4px;\n}\n.nav-pills > li + li {\n margin-left: 2px;\n}\n.nav-pills > li.active > a,\n.nav-pills > li.active > a:hover,\n.nav-pills > li.active > a:focus {\n color: #fff;\n background-color: #337ab7;\n}\n.nav-stacked > li {\n float: none;\n}\n.nav-stacked > li + li {\n margin-top: 2px;\n margin-left: 0;\n}\n.nav-justified {\n width: 100%;\n}\n.nav-justified > li {\n float: none;\n}\n.nav-justified > li > a {\n margin-bottom: 5px;\n text-align: center;\n}\n.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs-justified {\n border-bottom: 0;\n}\n.nav-tabs-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs-justified > .active > a,\n.nav-tabs-justified > .active > a:hover,\n.nav-tabs-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs-justified > .active > a,\n .nav-tabs-justified > .active > a:hover,\n .nav-tabs-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.navbar {\n position: relative;\n min-height: 50px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n}\n@media (min-width: 768px) {\n .navbar {\n border-radius: 4px;\n }\n}\n@media (min-width: 768px) {\n .navbar-header {\n float: left;\n }\n}\n.navbar-collapse {\n padding-right: 15px;\n padding-left: 15px;\n overflow-x: visible;\n border-top: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n -webkit-overflow-scrolling: touch;\n}\n.navbar-collapse.in {\n overflow-y: auto;\n}\n@media (min-width: 768px) {\n .navbar-collapse {\n width: auto;\n border-top: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n .navbar-collapse.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0;\n overflow: visible !important;\n }\n .navbar-collapse.in {\n overflow-y: visible;\n }\n .navbar-fixed-top .navbar-collapse,\n .navbar-static-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n padding-right: 0;\n padding-left: 0;\n }\n}\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n.navbar-fixed-top .navbar-collapse,\n.navbar-fixed-bottom .navbar-collapse {\n max-height: 340px;\n}\n@media (max-device-width: 480px) and (orientation: landscape) {\n .navbar-fixed-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n max-height: 200px;\n }\n}\n@media (min-width: 768px) {\n .navbar-fixed-top,\n .navbar-fixed-bottom {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0;\n border-width: 1px 0 0;\n}\n.container > .navbar-header,\n.container-fluid > .navbar-header,\n.container > .navbar-collapse,\n.container-fluid > .navbar-collapse {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .container > .navbar-header,\n .container-fluid > .navbar-header,\n .container > .navbar-collapse,\n .container-fluid > .navbar-collapse {\n margin-right: 0;\n margin-left: 0;\n }\n}\n.navbar-static-top {\n z-index: 1000;\n border-width: 0 0 1px;\n}\n@media (min-width: 768px) {\n .navbar-static-top {\n border-radius: 0;\n }\n}\n.navbar-brand {\n float: left;\n height: 50px;\n padding: 15px 15px;\n font-size: 18px;\n line-height: 20px;\n}\n.navbar-brand:hover,\n.navbar-brand:focus {\n text-decoration: none;\n}\n.navbar-brand > img {\n display: block;\n}\n@media (min-width: 768px) {\n .navbar > .container .navbar-brand,\n .navbar > .container-fluid .navbar-brand {\n margin-left: -15px;\n }\n}\n.navbar-toggle {\n position: relative;\n float: right;\n padding: 9px 10px;\n margin-right: 15px;\n margin-top: 8px;\n margin-bottom: 8px;\n background-color: transparent;\n background-image: none;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.navbar-toggle:focus {\n outline: 0;\n}\n.navbar-toggle .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n}\n.navbar-toggle .icon-bar + .icon-bar {\n margin-top: 4px;\n}\n@media (min-width: 768px) {\n .navbar-toggle {\n display: none;\n }\n}\n.navbar-nav {\n margin: 7.5px -15px;\n}\n.navbar-nav > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: 20px;\n}\n@media (max-width: 767px) {\n .navbar-nav .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n .navbar-nav .open .dropdown-menu > li > a,\n .navbar-nav .open .dropdown-menu .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n .navbar-nav .open .dropdown-menu > li > a {\n line-height: 20px;\n }\n .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-nav .open .dropdown-menu > li > a:focus {\n background-image: none;\n }\n}\n@media (min-width: 768px) {\n .navbar-nav {\n float: left;\n margin: 0;\n }\n .navbar-nav > li {\n float: left;\n }\n .navbar-nav > li > a {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n}\n.navbar-form {\n padding: 10px 15px;\n margin-right: -15px;\n margin-left: -15px;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n margin-top: 8px;\n margin-bottom: 8px;\n}\n@media (min-width: 768px) {\n .navbar-form .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .navbar-form .form-control-static {\n display: inline-block;\n }\n .navbar-form .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .navbar-form .input-group .input-group-addon,\n .navbar-form .input-group .input-group-btn,\n .navbar-form .input-group .form-control {\n width: auto;\n }\n .navbar-form .input-group > .form-control {\n width: 100%;\n }\n .navbar-form .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio,\n .navbar-form .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio label,\n .navbar-form .checkbox label {\n padding-left: 0;\n }\n .navbar-form .radio input[type=\"radio\"],\n .navbar-form .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .navbar-form .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n@media (max-width: 767px) {\n .navbar-form .form-group {\n margin-bottom: 5px;\n }\n .navbar-form .form-group:last-child {\n margin-bottom: 0;\n }\n}\n@media (min-width: 768px) {\n .navbar-form {\n width: auto;\n padding-top: 0;\n padding-bottom: 0;\n margin-right: 0;\n margin-left: 0;\n border: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.navbar-btn {\n margin-top: 8px;\n margin-bottom: 8px;\n}\n.navbar-btn.btn-sm {\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.navbar-btn.btn-xs {\n margin-top: 14px;\n margin-bottom: 14px;\n}\n.navbar-text {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n@media (min-width: 768px) {\n .navbar-text {\n float: left;\n margin-right: 15px;\n margin-left: 15px;\n }\n}\n@media (min-width: 768px) {\n .navbar-left {\n float: left !important;\n }\n .navbar-right {\n float: right !important;\n margin-right: -15px;\n }\n .navbar-right ~ .navbar-right {\n margin-right: 0;\n }\n}\n.navbar-default {\n background-color: #f8f8f8;\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-brand {\n color: #777;\n}\n.navbar-default .navbar-brand:hover,\n.navbar-default .navbar-brand:focus {\n color: #5e5e5e;\n background-color: transparent;\n}\n.navbar-default .navbar-text {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a:hover,\n.navbar-default .navbar-nav > li > a:focus {\n color: #333;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .active > a,\n.navbar-default .navbar-nav > .active > a:hover,\n.navbar-default .navbar-nav > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .disabled > a,\n.navbar-default .navbar-nav > .disabled > a:hover,\n.navbar-default .navbar-nav > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .open > a:hover,\n.navbar-default .navbar-nav > .open > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n@media (max-width: 767px) {\n .navbar-default .navbar-nav .open .dropdown-menu > li > a {\n color: #777;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #333;\n background-color: transparent;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n }\n}\n.navbar-default .navbar-toggle {\n border-color: #ddd;\n}\n.navbar-default .navbar-toggle:hover,\n.navbar-default .navbar-toggle:focus {\n background-color: #ddd;\n}\n.navbar-default .navbar-toggle .icon-bar {\n background-color: #888;\n}\n.navbar-default .navbar-collapse,\n.navbar-default .navbar-form {\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-link {\n color: #777;\n}\n.navbar-default .navbar-link:hover {\n color: #333;\n}\n.navbar-default .btn-link {\n color: #777;\n}\n.navbar-default .btn-link:hover,\n.navbar-default .btn-link:focus {\n color: #333;\n}\n.navbar-default .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-default .btn-link:hover,\n.navbar-default .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-default .btn-link:focus {\n color: #ccc;\n}\n.navbar-inverse {\n background-color: #222;\n border-color: #080808;\n}\n.navbar-inverse .navbar-brand {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-brand:hover,\n.navbar-inverse .navbar-brand:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-text {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a:hover,\n.navbar-inverse .navbar-nav > li > a:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .active > a,\n.navbar-inverse .navbar-nav > .active > a:hover,\n.navbar-inverse .navbar-nav > .active > a:focus {\n color: #fff;\n background-color: #080808;\n}\n.navbar-inverse .navbar-nav > .disabled > a,\n.navbar-inverse .navbar-nav > .disabled > a:hover,\n.navbar-inverse .navbar-nav > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .open > a:hover,\n.navbar-inverse .navbar-nav > .open > a:focus {\n color: #fff;\n background-color: #080808;\n}\n@media (max-width: 767px) {\n .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {\n border-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu .divider {\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {\n color: #9d9d9d;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #fff;\n background-color: transparent;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n }\n}\n.navbar-inverse .navbar-toggle {\n border-color: #333;\n}\n.navbar-inverse .navbar-toggle:hover,\n.navbar-inverse .navbar-toggle:focus {\n background-color: #333;\n}\n.navbar-inverse .navbar-toggle .icon-bar {\n background-color: #fff;\n}\n.navbar-inverse .navbar-collapse,\n.navbar-inverse .navbar-form {\n border-color: #101010;\n}\n.navbar-inverse .navbar-link {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-link:hover {\n color: #fff;\n}\n.navbar-inverse .btn-link {\n color: #9d9d9d;\n}\n.navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link:focus {\n color: #fff;\n}\n.navbar-inverse .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-inverse .btn-link:focus {\n color: #444;\n}\n.breadcrumb {\n padding: 8px 15px;\n margin-bottom: 20px;\n list-style: none;\n background-color: #f5f5f5;\n border-radius: 4px;\n}\n.breadcrumb > li {\n display: inline-block;\n}\n.breadcrumb > li + li:before {\n padding: 0 5px;\n color: #ccc;\n content: \"/\\00a0\";\n}\n.breadcrumb > .active {\n color: #777777;\n}\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: 20px 0;\n border-radius: 4px;\n}\n.pagination > li {\n display: inline;\n}\n.pagination > li > a,\n.pagination > li > span {\n position: relative;\n float: left;\n padding: 6px 12px;\n margin-left: -1px;\n line-height: 1.42857143;\n color: #337ab7;\n text-decoration: none;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.pagination > li > a:hover,\n.pagination > li > span:hover,\n.pagination > li > a:focus,\n.pagination > li > span:focus {\n z-index: 2;\n color: #23527c;\n background-color: #eeeeee;\n border-color: #ddd;\n}\n.pagination > li:first-child > a,\n.pagination > li:first-child > span {\n margin-left: 0;\n border-top-left-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.pagination > li:last-child > a,\n.pagination > li:last-child > span {\n border-top-right-radius: 4px;\n border-bottom-right-radius: 4px;\n}\n.pagination > .active > a,\n.pagination > .active > span,\n.pagination > .active > a:hover,\n.pagination > .active > span:hover,\n.pagination > .active > a:focus,\n.pagination > .active > span:focus {\n z-index: 3;\n color: #fff;\n cursor: default;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.pagination > .disabled > span,\n.pagination > .disabled > span:hover,\n.pagination > .disabled > span:focus,\n.pagination > .disabled > a,\n.pagination > .disabled > a:hover,\n.pagination > .disabled > a:focus {\n color: #777777;\n cursor: not-allowed;\n background-color: #fff;\n border-color: #ddd;\n}\n.pagination-lg > li > a,\n.pagination-lg > li > span {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.pagination-lg > li:first-child > a,\n.pagination-lg > li:first-child > span {\n border-top-left-radius: 6px;\n border-bottom-left-radius: 6px;\n}\n.pagination-lg > li:last-child > a,\n.pagination-lg > li:last-child > span {\n border-top-right-radius: 6px;\n border-bottom-right-radius: 6px;\n}\n.pagination-sm > li > a,\n.pagination-sm > li > span {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.pagination-sm > li:first-child > a,\n.pagination-sm > li:first-child > span {\n border-top-left-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.pagination-sm > li:last-child > a,\n.pagination-sm > li:last-child > span {\n border-top-right-radius: 3px;\n border-bottom-right-radius: 3px;\n}\n.pager {\n padding-left: 0;\n margin: 20px 0;\n text-align: center;\n list-style: none;\n}\n.pager li {\n display: inline;\n}\n.pager li > a,\n.pager li > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 15px;\n}\n.pager li > a:hover,\n.pager li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.pager .next > a,\n.pager .next > span {\n float: right;\n}\n.pager .previous > a,\n.pager .previous > span {\n float: left;\n}\n.pager .disabled > a,\n.pager .disabled > a:hover,\n.pager .disabled > a:focus,\n.pager .disabled > span {\n color: #777777;\n cursor: not-allowed;\n background-color: #fff;\n}\n.label {\n display: inline;\n padding: 0.2em 0.6em 0.3em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25em;\n}\na.label:hover,\na.label:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.label:empty {\n display: none;\n}\n.btn .label {\n position: relative;\n top: -1px;\n}\n.label-default {\n background-color: #777777;\n}\n.label-default[href]:hover,\n.label-default[href]:focus {\n background-color: #5e5e5e;\n}\n.label-primary {\n background-color: #337ab7;\n}\n.label-primary[href]:hover,\n.label-primary[href]:focus {\n background-color: #286090;\n}\n.label-success {\n background-color: #5cb85c;\n}\n.label-success[href]:hover,\n.label-success[href]:focus {\n background-color: #449d44;\n}\n.label-info {\n background-color: #5bc0de;\n}\n.label-info[href]:hover,\n.label-info[href]:focus {\n background-color: #31b0d5;\n}\n.label-warning {\n background-color: #f0ad4e;\n}\n.label-warning[href]:hover,\n.label-warning[href]:focus {\n background-color: #ec971f;\n}\n.label-danger {\n background-color: #d9534f;\n}\n.label-danger[href]:hover,\n.label-danger[href]:focus {\n background-color: #c9302c;\n}\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: 12px;\n font-weight: bold;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n background-color: #777777;\n border-radius: 10px;\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.btn-xs .badge,\n.btn-group-xs > .btn .badge {\n top: 0;\n padding: 1px 5px;\n}\na.badge:hover,\na.badge:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.list-group-item.active > .badge,\n.nav-pills > .active > a > .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.list-group-item > .badge {\n float: right;\n}\n.list-group-item > .badge + .badge {\n margin-right: 5px;\n}\n.nav-pills > li > a > .badge {\n margin-left: 3px;\n}\n.jumbotron {\n padding-top: 30px;\n padding-bottom: 30px;\n margin-bottom: 30px;\n color: inherit;\n background-color: #eeeeee;\n}\n.jumbotron h1,\n.jumbotron .h1 {\n color: inherit;\n}\n.jumbotron p {\n margin-bottom: 15px;\n font-size: 21px;\n font-weight: 200;\n}\n.jumbotron > hr {\n border-top-color: #d5d5d5;\n}\n.container .jumbotron,\n.container-fluid .jumbotron {\n padding-right: 15px;\n padding-left: 15px;\n border-radius: 6px;\n}\n.jumbotron .container {\n max-width: 100%;\n}\n@media screen and (min-width: 768px) {\n .jumbotron {\n padding-top: 48px;\n padding-bottom: 48px;\n }\n .container .jumbotron,\n .container-fluid .jumbotron {\n padding-right: 60px;\n padding-left: 60px;\n }\n .jumbotron h1,\n .jumbotron .h1 {\n font-size: 63px;\n }\n}\n.thumbnail {\n display: block;\n padding: 4px;\n margin-bottom: 20px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: border 0.2s ease-in-out;\n -o-transition: border 0.2s ease-in-out;\n transition: border 0.2s ease-in-out;\n}\n.thumbnail > img,\n.thumbnail a > img {\n margin-right: auto;\n margin-left: auto;\n}\na.thumbnail:hover,\na.thumbnail:focus,\na.thumbnail.active {\n border-color: #337ab7;\n}\n.thumbnail .caption {\n padding: 9px;\n color: #333333;\n}\n.alert {\n padding: 15px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.alert h4 {\n margin-top: 0;\n color: inherit;\n}\n.alert .alert-link {\n font-weight: bold;\n}\n.alert > p,\n.alert > ul {\n margin-bottom: 0;\n}\n.alert > p + p {\n margin-top: 5px;\n}\n.alert-dismissable,\n.alert-dismissible {\n padding-right: 35px;\n}\n.alert-dismissable .close,\n.alert-dismissible .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n}\n.alert-success {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.alert-success hr {\n border-top-color: #c9e2b3;\n}\n.alert-success .alert-link {\n color: #2b542c;\n}\n.alert-info {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.alert-info hr {\n border-top-color: #a6e1ec;\n}\n.alert-info .alert-link {\n color: #245269;\n}\n.alert-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.alert-warning hr {\n border-top-color: #f7e1b5;\n}\n.alert-warning .alert-link {\n color: #66512c;\n}\n.alert-danger {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.alert-danger hr {\n border-top-color: #e4b9c0;\n}\n.alert-danger .alert-link {\n color: #843534;\n}\n@-webkit-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@-o-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n.progress {\n height: 20px;\n margin-bottom: 20px;\n overflow: hidden;\n background-color: #f5f5f5;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: 12px;\n line-height: 20px;\n color: #fff;\n text-align: center;\n background-color: #337ab7;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n -webkit-transition: width 0.6s ease;\n -o-transition: width 0.6s ease;\n transition: width 0.6s ease;\n}\n.progress-striped .progress-bar,\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n -webkit-background-size: 40px 40px;\n background-size: 40px 40px;\n}\n.progress.active .progress-bar,\n.progress-bar.active {\n -webkit-animation: progress-bar-stripes 2s linear infinite;\n -o-animation: progress-bar-stripes 2s linear infinite;\n animation: progress-bar-stripes 2s linear infinite;\n}\n.progress-bar-success {\n background-color: #5cb85c;\n}\n.progress-striped .progress-bar-success {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-info {\n background-color: #5bc0de;\n}\n.progress-striped .progress-bar-info {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-warning {\n background-color: #f0ad4e;\n}\n.progress-striped .progress-bar-warning {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-danger {\n background-color: #d9534f;\n}\n.progress-striped .progress-bar-danger {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.media {\n margin-top: 15px;\n}\n.media:first-child {\n margin-top: 0;\n}\n.media,\n.media-body {\n overflow: hidden;\n zoom: 1;\n}\n.media-body {\n width: 10000px;\n}\n.media-object {\n display: block;\n}\n.media-object.img-thumbnail {\n max-width: none;\n}\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n.media-middle {\n vertical-align: middle;\n}\n.media-bottom {\n vertical-align: bottom;\n}\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n.list-group {\n padding-left: 0;\n margin-bottom: 20px;\n}\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.list-group-item:first-child {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n}\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.list-group-item.disabled,\n.list-group-item.disabled:hover,\n.list-group-item.disabled:focus {\n color: #777777;\n cursor: not-allowed;\n background-color: #eeeeee;\n}\n.list-group-item.disabled .list-group-item-heading,\n.list-group-item.disabled:hover .list-group-item-heading,\n.list-group-item.disabled:focus .list-group-item-heading {\n color: inherit;\n}\n.list-group-item.disabled .list-group-item-text,\n.list-group-item.disabled:hover .list-group-item-text,\n.list-group-item.disabled:focus .list-group-item-text {\n color: #777777;\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n z-index: 2;\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.list-group-item.active .list-group-item-heading,\n.list-group-item.active:hover .list-group-item-heading,\n.list-group-item.active:focus .list-group-item-heading,\n.list-group-item.active .list-group-item-heading > small,\n.list-group-item.active:hover .list-group-item-heading > small,\n.list-group-item.active:focus .list-group-item-heading > small,\n.list-group-item.active .list-group-item-heading > .small,\n.list-group-item.active:hover .list-group-item-heading > .small,\n.list-group-item.active:focus .list-group-item-heading > .small {\n color: inherit;\n}\n.list-group-item.active .list-group-item-text,\n.list-group-item.active:hover .list-group-item-text,\n.list-group-item.active:focus .list-group-item-text {\n color: #c7ddef;\n}\na.list-group-item,\nbutton.list-group-item {\n color: #555;\n}\na.list-group-item .list-group-item-heading,\nbutton.list-group-item .list-group-item-heading {\n color: #333;\n}\na.list-group-item:hover,\nbutton.list-group-item:hover,\na.list-group-item:focus,\nbutton.list-group-item:focus {\n color: #555;\n text-decoration: none;\n background-color: #f5f5f5;\n}\nbutton.list-group-item {\n width: 100%;\n text-align: left;\n}\n.list-group-item-success {\n color: #3c763d;\n background-color: #dff0d8;\n}\na.list-group-item-success,\nbutton.list-group-item-success {\n color: #3c763d;\n}\na.list-group-item-success .list-group-item-heading,\nbutton.list-group-item-success .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-success:hover,\nbutton.list-group-item-success:hover,\na.list-group-item-success:focus,\nbutton.list-group-item-success:focus {\n color: #3c763d;\n background-color: #d0e9c6;\n}\na.list-group-item-success.active,\nbutton.list-group-item-success.active,\na.list-group-item-success.active:hover,\nbutton.list-group-item-success.active:hover,\na.list-group-item-success.active:focus,\nbutton.list-group-item-success.active:focus {\n color: #fff;\n background-color: #3c763d;\n border-color: #3c763d;\n}\n.list-group-item-info {\n color: #31708f;\n background-color: #d9edf7;\n}\na.list-group-item-info,\nbutton.list-group-item-info {\n color: #31708f;\n}\na.list-group-item-info .list-group-item-heading,\nbutton.list-group-item-info .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-info:hover,\nbutton.list-group-item-info:hover,\na.list-group-item-info:focus,\nbutton.list-group-item-info:focus {\n color: #31708f;\n background-color: #c4e3f3;\n}\na.list-group-item-info.active,\nbutton.list-group-item-info.active,\na.list-group-item-info.active:hover,\nbutton.list-group-item-info.active:hover,\na.list-group-item-info.active:focus,\nbutton.list-group-item-info.active:focus {\n color: #fff;\n background-color: #31708f;\n border-color: #31708f;\n}\n.list-group-item-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n}\na.list-group-item-warning,\nbutton.list-group-item-warning {\n color: #8a6d3b;\n}\na.list-group-item-warning .list-group-item-heading,\nbutton.list-group-item-warning .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-warning:hover,\nbutton.list-group-item-warning:hover,\na.list-group-item-warning:focus,\nbutton.list-group-item-warning:focus {\n color: #8a6d3b;\n background-color: #faf2cc;\n}\na.list-group-item-warning.active,\nbutton.list-group-item-warning.active,\na.list-group-item-warning.active:hover,\nbutton.list-group-item-warning.active:hover,\na.list-group-item-warning.active:focus,\nbutton.list-group-item-warning.active:focus {\n color: #fff;\n background-color: #8a6d3b;\n border-color: #8a6d3b;\n}\n.list-group-item-danger {\n color: #a94442;\n background-color: #f2dede;\n}\na.list-group-item-danger,\nbutton.list-group-item-danger {\n color: #a94442;\n}\na.list-group-item-danger .list-group-item-heading,\nbutton.list-group-item-danger .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-danger:hover,\nbutton.list-group-item-danger:hover,\na.list-group-item-danger:focus,\nbutton.list-group-item-danger:focus {\n color: #a94442;\n background-color: #ebcccc;\n}\na.list-group-item-danger.active,\nbutton.list-group-item-danger.active,\na.list-group-item-danger.active:hover,\nbutton.list-group-item-danger.active:hover,\na.list-group-item-danger.active:focus,\nbutton.list-group-item-danger.active:focus {\n color: #fff;\n background-color: #a94442;\n border-color: #a94442;\n}\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n.panel {\n margin-bottom: 20px;\n background-color: #fff;\n border: 1px solid transparent;\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.panel-body {\n padding: 15px;\n}\n.panel-heading {\n padding: 10px 15px;\n border-bottom: 1px solid transparent;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel-heading > .dropdown .dropdown-toggle {\n color: inherit;\n}\n.panel-title {\n margin-top: 0;\n margin-bottom: 0;\n font-size: 16px;\n color: inherit;\n}\n.panel-title > a,\n.panel-title > small,\n.panel-title > .small,\n.panel-title > small > a,\n.panel-title > .small > a {\n color: inherit;\n}\n.panel-footer {\n padding: 10px 15px;\n background-color: #f5f5f5;\n border-top: 1px solid #ddd;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .list-group,\n.panel > .panel-collapse > .list-group {\n margin-bottom: 0;\n}\n.panel > .list-group .list-group-item,\n.panel > .panel-collapse > .list-group .list-group-item {\n border-width: 1px 0;\n border-radius: 0;\n}\n.panel > .list-group:first-child .list-group-item:first-child,\n.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {\n border-top: 0;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .list-group:last-child .list-group-item:last-child,\n.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {\n border-bottom: 0;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.panel-heading + .list-group .list-group-item:first-child {\n border-top-width: 0;\n}\n.list-group + .panel-footer {\n border-top-width: 0;\n}\n.panel > .table,\n.panel > .table-responsive > .table,\n.panel > .panel-collapse > .table {\n margin-bottom: 0;\n}\n.panel > .table caption,\n.panel > .table-responsive > .table caption,\n.panel > .panel-collapse > .table caption {\n padding-right: 15px;\n padding-left: 15px;\n}\n.panel > .table:first-child,\n.panel > .table-responsive:first-child > .table:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {\n border-top-right-radius: 3px;\n}\n.panel > .table:last-child,\n.panel > .table-responsive:last-child > .table:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {\n border-bottom-right-radius: 3px;\n}\n.panel > .panel-body + .table,\n.panel > .panel-body + .table-responsive,\n.panel > .table + .panel-body,\n.panel > .table-responsive + .panel-body {\n border-top: 1px solid #ddd;\n}\n.panel > .table > tbody:first-child > tr:first-child th,\n.panel > .table > tbody:first-child > tr:first-child td {\n border-top: 0;\n}\n.panel > .table-bordered,\n.panel > .table-responsive > .table-bordered {\n border: 0;\n}\n.panel > .table-bordered > thead > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,\n.panel > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-bordered > thead > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,\n.panel > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-bordered > tfoot > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n}\n.panel > .table-bordered > thead > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,\n.panel > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-bordered > thead > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,\n.panel > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-bordered > tfoot > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n}\n.panel > .table-bordered > thead > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,\n.panel > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-bordered > thead > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,\n.panel > .table-bordered > tbody > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {\n border-bottom: 0;\n}\n.panel > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-bordered > tfoot > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {\n border-bottom: 0;\n}\n.panel > .table-responsive {\n margin-bottom: 0;\n border: 0;\n}\n.panel-group {\n margin-bottom: 20px;\n}\n.panel-group .panel {\n margin-bottom: 0;\n border-radius: 4px;\n}\n.panel-group .panel + .panel {\n margin-top: 5px;\n}\n.panel-group .panel-heading {\n border-bottom: 0;\n}\n.panel-group .panel-heading + .panel-collapse > .panel-body,\n.panel-group .panel-heading + .panel-collapse > .list-group {\n border-top: 1px solid #ddd;\n}\n.panel-group .panel-footer {\n border-top: 0;\n}\n.panel-group .panel-footer + .panel-collapse .panel-body {\n border-bottom: 1px solid #ddd;\n}\n.panel-default {\n border-color: #ddd;\n}\n.panel-default > .panel-heading {\n color: #333333;\n background-color: #f5f5f5;\n border-color: #ddd;\n}\n.panel-default > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ddd;\n}\n.panel-default > .panel-heading .badge {\n color: #f5f5f5;\n background-color: #333333;\n}\n.panel-default > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ddd;\n}\n.panel-primary {\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading {\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #337ab7;\n}\n.panel-primary > .panel-heading .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.panel-primary > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #337ab7;\n}\n.panel-success {\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #d6e9c6;\n}\n.panel-success > .panel-heading .badge {\n color: #dff0d8;\n background-color: #3c763d;\n}\n.panel-success > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #d6e9c6;\n}\n.panel-info {\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #bce8f1;\n}\n.panel-info > .panel-heading .badge {\n color: #d9edf7;\n background-color: #31708f;\n}\n.panel-info > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #bce8f1;\n}\n.panel-warning {\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #faebcc;\n}\n.panel-warning > .panel-heading .badge {\n color: #fcf8e3;\n background-color: #8a6d3b;\n}\n.panel-warning > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #faebcc;\n}\n.panel-danger {\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ebccd1;\n}\n.panel-danger > .panel-heading .badge {\n color: #f2dede;\n background-color: #a94442;\n}\n.panel-danger > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ebccd1;\n}\n.embed-responsive {\n position: relative;\n display: block;\n height: 0;\n padding: 0;\n overflow: hidden;\n}\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 0;\n}\n.embed-responsive-16by9 {\n padding-bottom: 56.25%;\n}\n.embed-responsive-4by3 {\n padding-bottom: 75%;\n}\n.well {\n min-height: 20px;\n padding: 19px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border: 1px solid #e3e3e3;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.well blockquote {\n border-color: #ddd;\n border-color: rgba(0, 0, 0, 0.15);\n}\n.well-lg {\n padding: 24px;\n border-radius: 6px;\n}\n.well-sm {\n padding: 9px;\n border-radius: 3px;\n}\n.close {\n float: right;\n font-size: 21px;\n font-weight: bold;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n filter: alpha(opacity=20);\n opacity: 0.2;\n}\n.close:hover,\n.close:focus {\n color: #000;\n text-decoration: none;\n cursor: pointer;\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\nbutton.close {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.modal-open {\n overflow: hidden;\n}\n.modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1050;\n display: none;\n overflow: hidden;\n -webkit-overflow-scrolling: touch;\n outline: 0;\n}\n.modal.fade .modal-dialog {\n -webkit-transform: translate(0, -25%);\n -ms-transform: translate(0, -25%);\n -o-transform: translate(0, -25%);\n transform: translate(0, -25%);\n -webkit-transition: -webkit-transform 0.3s ease-out;\n -o-transition: -o-transform 0.3s ease-out;\n transition: -webkit-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out, -o-transform 0.3s ease-out;\n}\n.modal.in .modal-dialog {\n -webkit-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n -o-transform: translate(0, 0);\n transform: translate(0, 0);\n}\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 10px;\n}\n.modal-content {\n position: relative;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #999;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n outline: 0;\n}\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1040;\n background-color: #000;\n}\n.modal-backdrop.fade {\n filter: alpha(opacity=0);\n opacity: 0;\n}\n.modal-backdrop.in {\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\n.modal-header {\n padding: 15px;\n border-bottom: 1px solid #e5e5e5;\n}\n.modal-header .close {\n margin-top: -2px;\n}\n.modal-title {\n margin: 0;\n line-height: 1.42857143;\n}\n.modal-body {\n position: relative;\n padding: 15px;\n}\n.modal-footer {\n padding: 15px;\n text-align: right;\n border-top: 1px solid #e5e5e5;\n}\n.modal-footer .btn + .btn {\n margin-bottom: 0;\n margin-left: 5px;\n}\n.modal-footer .btn-group .btn + .btn {\n margin-left: -1px;\n}\n.modal-footer .btn-block + .btn-block {\n margin-left: 0;\n}\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n@media (min-width: 768px) {\n .modal-dialog {\n width: 600px;\n margin: 30px auto;\n }\n .modal-content {\n -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n }\n .modal-sm {\n width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg {\n width: 900px;\n }\n}\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: 400;\n line-height: 1.42857143;\n line-break: auto;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n font-size: 12px;\n filter: alpha(opacity=0);\n opacity: 0;\n}\n.tooltip.in {\n filter: alpha(opacity=90);\n opacity: 0.9;\n}\n.tooltip.top {\n padding: 5px 0;\n margin-top: -3px;\n}\n.tooltip.right {\n padding: 0 5px;\n margin-left: 3px;\n}\n.tooltip.bottom {\n padding: 5px 0;\n margin-top: 3px;\n}\n.tooltip.left {\n padding: 0 5px;\n margin-left: -3px;\n}\n.tooltip.top .tooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-left .tooltip-arrow {\n right: 5px;\n bottom: 0;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-right .tooltip-arrow {\n bottom: 0;\n left: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.right .tooltip-arrow {\n top: 50%;\n left: 0;\n margin-top: -5px;\n border-width: 5px 5px 5px 0;\n border-right-color: #000;\n}\n.tooltip.left .tooltip-arrow {\n top: 50%;\n right: 0;\n margin-top: -5px;\n border-width: 5px 0 5px 5px;\n border-left-color: #000;\n}\n.tooltip.bottom .tooltip-arrow {\n top: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-left .tooltip-arrow {\n top: 0;\n right: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-right .tooltip-arrow {\n top: 0;\n left: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip-inner {\n max-width: 200px;\n padding: 3px 8px;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 4px;\n}\n.tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: none;\n max-width: 276px;\n padding: 1px;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: 400;\n line-height: 1.42857143;\n line-break: auto;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n font-size: 14px;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n}\n.popover.top {\n margin-top: -10px;\n}\n.popover.right {\n margin-left: 10px;\n}\n.popover.bottom {\n margin-top: 10px;\n}\n.popover.left {\n margin-left: -10px;\n}\n.popover > .arrow {\n border-width: 11px;\n}\n.popover > .arrow,\n.popover > .arrow:after {\n position: absolute;\n display: block;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover > .arrow:after {\n content: \"\";\n border-width: 10px;\n}\n.popover.top > .arrow {\n bottom: -11px;\n left: 50%;\n margin-left: -11px;\n border-top-color: #999999;\n border-top-color: rgba(0, 0, 0, 0.25);\n border-bottom-width: 0;\n}\n.popover.top > .arrow:after {\n bottom: 1px;\n margin-left: -10px;\n content: \" \";\n border-top-color: #fff;\n border-bottom-width: 0;\n}\n.popover.right > .arrow {\n top: 50%;\n left: -11px;\n margin-top: -11px;\n border-right-color: #999999;\n border-right-color: rgba(0, 0, 0, 0.25);\n border-left-width: 0;\n}\n.popover.right > .arrow:after {\n bottom: -10px;\n left: 1px;\n content: \" \";\n border-right-color: #fff;\n border-left-width: 0;\n}\n.popover.bottom > .arrow {\n top: -11px;\n left: 50%;\n margin-left: -11px;\n border-top-width: 0;\n border-bottom-color: #999999;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n}\n.popover.bottom > .arrow:after {\n top: 1px;\n margin-left: -10px;\n content: \" \";\n border-top-width: 0;\n border-bottom-color: #fff;\n}\n.popover.left > .arrow {\n top: 50%;\n right: -11px;\n margin-top: -11px;\n border-right-width: 0;\n border-left-color: #999999;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n.popover.left > .arrow:after {\n right: 1px;\n bottom: -10px;\n content: \" \";\n border-right-width: 0;\n border-left-color: #fff;\n}\n.popover-title {\n padding: 8px 14px;\n margin: 0;\n font-size: 14px;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-radius: 5px 5px 0 0;\n}\n.popover-content {\n padding: 9px 14px;\n}\n.carousel {\n position: relative;\n}\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n.carousel-inner > .item {\n position: relative;\n display: none;\n -webkit-transition: 0.6s ease-in-out left;\n -o-transition: 0.6s ease-in-out left;\n transition: 0.6s ease-in-out left;\n}\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n line-height: 1;\n}\n@media all and (transform-3d), (-webkit-transform-3d) {\n .carousel-inner > .item {\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n -o-transition: -o-transform 0.6s ease-in-out;\n transition: -webkit-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out, -o-transform 0.6s ease-in-out;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-perspective: 1000px;\n perspective: 1000px;\n }\n .carousel-inner > .item.next,\n .carousel-inner > .item.active.right {\n -webkit-transform: translate3d(100%, 0, 0);\n transform: translate3d(100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.prev,\n .carousel-inner > .item.active.left {\n -webkit-transform: translate3d(-100%, 0, 0);\n transform: translate3d(-100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.next.left,\n .carousel-inner > .item.prev.right,\n .carousel-inner > .item.active {\n -webkit-transform: translate3d(0, 0, 0);\n transform: translate3d(0, 0, 0);\n left: 0;\n }\n}\n.carousel-inner > .active,\n.carousel-inner > .next,\n.carousel-inner > .prev {\n display: block;\n}\n.carousel-inner > .active {\n left: 0;\n}\n.carousel-inner > .next,\n.carousel-inner > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n}\n.carousel-inner > .next {\n left: 100%;\n}\n.carousel-inner > .prev {\n left: -100%;\n}\n.carousel-inner > .next.left,\n.carousel-inner > .prev.right {\n left: 0;\n}\n.carousel-inner > .active.left {\n left: -100%;\n}\n.carousel-inner > .active.right {\n left: 100%;\n}\n.carousel-control {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 15%;\n font-size: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n background-color: rgba(0, 0, 0, 0);\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\n.carousel-control.left {\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001)));\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);\n background-repeat: repeat-x;\n}\n.carousel-control.right {\n right: 0;\n left: auto;\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5)));\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);\n background-repeat: repeat-x;\n}\n.carousel-control:hover,\n.carousel-control:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n filter: alpha(opacity=90);\n opacity: 0.9;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-left,\n.carousel-control .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n z-index: 5;\n display: inline-block;\n margin-top: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n}\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next {\n width: 20px;\n height: 20px;\n font-family: serif;\n line-height: 1;\n}\n.carousel-control .icon-prev:before {\n content: \"\\2039\";\n}\n.carousel-control .icon-next:before {\n content: \"\\203a\";\n}\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n padding-left: 0;\n margin-left: -30%;\n text-align: center;\n list-style: none;\n}\n.carousel-indicators li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #000 \\9;\n background-color: rgba(0, 0, 0, 0);\n border: 1px solid #fff;\n border-radius: 10px;\n}\n.carousel-indicators .active {\n width: 12px;\n height: 12px;\n margin: 0;\n background-color: #fff;\n}\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 20px;\n left: 15%;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n}\n.carousel-caption .btn {\n text-shadow: none;\n}\n@media screen and (min-width: 768px) {\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-prev,\n .carousel-control .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -10px;\n font-size: 30px;\n }\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .icon-prev {\n margin-left: -10px;\n }\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-next {\n margin-right: -10px;\n }\n .carousel-caption {\n right: 20%;\n left: 20%;\n padding-bottom: 30px;\n }\n .carousel-indicators {\n bottom: 20px;\n }\n}\n.clearfix:before,\n.clearfix:after,\n.dl-horizontal dd:before,\n.dl-horizontal dd:after,\n.container:before,\n.container:after,\n.container-fluid:before,\n.container-fluid:after,\n.row:before,\n.row:after,\n.form-horizontal .form-group:before,\n.form-horizontal .form-group:after,\n.btn-toolbar:before,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:before,\n.btn-group-vertical > .btn-group:after,\n.nav:before,\n.nav:after,\n.navbar:before,\n.navbar:after,\n.navbar-header:before,\n.navbar-header:after,\n.navbar-collapse:before,\n.navbar-collapse:after,\n.pager:before,\n.pager:after,\n.panel-body:before,\n.panel-body:after,\n.modal-header:before,\n.modal-header:after,\n.modal-footer:before,\n.modal-footer:after {\n display: table;\n content: \" \";\n}\n.clearfix:after,\n.dl-horizontal dd:after,\n.container:after,\n.container-fluid:after,\n.row:after,\n.form-horizontal .form-group:after,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:after,\n.nav:after,\n.navbar:after,\n.navbar-header:after,\n.navbar-collapse:after,\n.pager:after,\n.panel-body:after,\n.modal-header:after,\n.modal-footer:after {\n clear: both;\n}\n.center-block {\n display: block;\n margin-right: auto;\n margin-left: auto;\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n.hidden {\n display: none !important;\n}\n.affix {\n position: fixed;\n}\n@-ms-viewport {\n width: device-width;\n}\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n display: none !important;\n}\n.visible-xs-block,\n.visible-xs-inline,\n.visible-xs-inline-block,\n.visible-sm-block,\n.visible-sm-inline,\n.visible-sm-inline-block,\n.visible-md-block,\n.visible-md-inline,\n.visible-md-inline-block,\n.visible-lg-block,\n.visible-lg-inline,\n.visible-lg-inline-block {\n display: none !important;\n}\n@media (max-width: 767px) {\n .visible-xs {\n display: block !important;\n }\n table.visible-xs {\n display: table !important;\n }\n tr.visible-xs {\n display: table-row !important;\n }\n th.visible-xs,\n td.visible-xs {\n display: table-cell !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-block {\n display: block !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline {\n display: inline !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm {\n display: block !important;\n }\n table.visible-sm {\n display: table !important;\n }\n tr.visible-sm {\n display: table-row !important;\n }\n th.visible-sm,\n td.visible-sm {\n display: table-cell !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-block {\n display: block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline {\n display: inline !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md {\n display: block !important;\n }\n table.visible-md {\n display: table !important;\n }\n tr.visible-md {\n display: table-row !important;\n }\n th.visible-md,\n td.visible-md {\n display: table-cell !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-block {\n display: block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline {\n display: inline !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg {\n display: block !important;\n }\n table.visible-lg {\n display: table !important;\n }\n tr.visible-lg {\n display: table-row !important;\n }\n th.visible-lg,\n td.visible-lg {\n display: table-cell !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-block {\n display: block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline {\n display: inline !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline-block {\n display: inline-block !important;\n }\n}\n@media (max-width: 767px) {\n .hidden-xs {\n display: none !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .hidden-sm {\n display: none !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .hidden-md {\n display: none !important;\n }\n}\n@media (min-width: 1200px) {\n .hidden-lg {\n display: none !important;\n }\n}\n.visible-print {\n display: none !important;\n}\n@media print {\n .visible-print {\n display: block !important;\n }\n table.visible-print {\n display: table !important;\n }\n tr.visible-print {\n display: table-row !important;\n }\n th.visible-print,\n td.visible-print {\n display: table-cell !important;\n }\n}\n.visible-print-block {\n display: none !important;\n}\n@media print {\n .visible-print-block {\n display: block !important;\n }\n}\n.visible-print-inline {\n display: none !important;\n}\n@media print {\n .visible-print-inline {\n display: inline !important;\n }\n}\n.visible-print-inline-block {\n display: none !important;\n}\n@media print {\n .visible-print-inline-block {\n display: inline-block !important;\n }\n}\n@media print {\n .hidden-print {\n display: none !important;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */","/* Variables holding theme colors */\n:root {\n --background: #ffffff;\n --outerBackground: #eeeeee;\n --links: #0645ad;\n --bodyFont: #000000;\n --tooltip: #ffffff;\n --grayToWhite: #333333;\n --navbar: #f8f8f8;\n --navbarFont: #707070;\n --navbarFontHover: #000000;\n --alerts: #d9edf7;\n --completionButton: #f19711;\n --completionButtonHover: #ff9f19;\n --admonition: #fcf8e3;\n --admonitionBorder: #fbeed5;\n --codeButtons: #474949;\n --codeButtonsBorder: #474949;\n --dangerAlerts: #f2dede;\n --successAlerts: #dff0d8;\n --contentWidthRegular: 660px;\n --contentWidthWide: 1060px;\n --componentBgColor: #f0f8ff;\n --componentBorderColor: #000000;\n --questionBgColor: #e1efff;\n}\n\n/* @media (prefers-color-scheme: dark) {\n :root {\n --background: #2c2f33;\n --outerBackground: #23272a;\n --links: #7289da;\n --bodyFont: #99aab5;\n --tooltip: #000000;\n --grayToWhite: #ffffff;\n --navbar: #3d3d3d;\n --navbarFont: #ffffff;\n --navbarFontHover: #d6d6d6;\n --alerts: #714082;\n --completionButton: #650087;\n --completionButtonHover: #560073;\n --admonition: #3d3d3d;\n --admonitionBorder: #262626;\n --codeButtons: #7289da;\n --codeButtonsBorder: #ffffff;\n --dangerAlerts: #8c2626;\n --successAlerts: #217300;\n --componentBgColor: #07467d;\n --componentBorderColor: #939090;\n --questionBgColor: rgb(23, 85, 93);\n }\n}\n\nNeeded??? */\n[data-theme=\"dark\"] {\n --background: #2c2f33;\n --outerBackground: #23272a;\n --links: #7289da;\n --bodyFont: #99aab5;\n --tooltip: #000000;\n --grayToWhite: #ffffff;\n --navbar: #3d3d3d;\n --navbarFont: #ffffff;\n --navbarFontHover: #d6d6d6;\n --alerts: #714082;\n --completionButton: #650087;\n --completionButtonHover: #560073;\n --admonition: #3d3d3d;\n --admonitionBorder: #262626;\n --codeButtons: #7289da;\n --codeButtonsBorder: #ffffff;\n --dangerAlerts: #8c2626;\n --successAlerts: #217300;\n --componentBgColor: #07467d;\n --componentBorderColor: #939090;\n --questionBgColor: rgb(23, 85, 93);\n}\n\n/* custom modification of basic.css for color-contrast (AA compliant) */\ntd.linenos pre {\n color: #6b6b6b;\n}\n\n/* custom modification of prettify.css for color-contrast (AA compliant) */\n.str {\n color: #006b00;\n}\n\n/* custom modification of parsons.css for color-contrast (AA compliant) */\n.parsons .block {\n background-color: #fafafa;\n}\n\n/* custom modification of pygments.css for color-contrast (AA compliant) */\n.highlight .c1 {\n color: #376a7b;\n}\n\n.highlight .nn {\n color: #0f6c95;\n}\n\n.highlight .gp {\n color: #a14c08;\n}\n\n.highlight .si {\n color: #3c773d;\n}\n\n.highlight .nc {\n color: #0b719d;\n}\n\n/* `Search` functionality's result custom modification for color-contrast (AA compliant) */\nul.search li div.context {\n color: #6b6b6b;\n}\n\nspan.highlighted {\n color: #4d4d4d;\n}\n\n/* ActiveCode gutter custom modification for color-contrast (AA compliant) */\n\n.CodeMirror-linenumber {\n color: #6b6b6b;\n}\n\n.alert-warning {\n background-color: var(--admonition);\n border-color: var(--admonitionBorder);\n}\n\n/* Python code output custom modification for color-contrast (AA compliant) */\ndiv.ExecutionVisualizer table#pyCodeOutput .lineNo {\n color: #6b6b6b;\n}\n\n/* Runestone custom modifications */\n\nbody {\n counter-reset: rscomponent;\n padding-top: 60px;\n background-color: var(--outerBackground);\n}\n\nh5 {\n font-weight: bold;\n padding: 10px 0;\n}\n\n/* table-of-contents related styles for color-contrast (AA compliant) */\n#table-of-contents a {\n color: var(--links);\n}\n\n#table-of-contents a:hover {\n color: var(--links);\n text-decoration: underline;\n}\n\n#table-of-contents.section {\n font-size: 16px;\n}\n\n/* navbar-brand color contrast (AA compliant) */\n.navbar-default {\n background-color: var(--navbar);\n}\n\n.navbar-default .navbar-nav > li {\n color: var(--navbarFont);\n}\n\n.navbar-default .navbar-nav > li > a {\n color: var(--navbarFont);\n}\n\n.navbar-default .navbar-nav > li > a:hover {\n color: var(--navbarFontHover);\n}\n\n.navbar-default .navbar-brand {\n color: var(--navbarFont);\n}\n\n/* acknowledgement related styles for color-contrast (AA compliant) */\n.toctree-wrapper {\n font-size: 16px;\n}\n\n.toctree-wrapper a {\n color: var(--links);\n}\n\n.toctree-wrapper a:hover {\n color: var(--links);\n text-decoration: underline;\n}\n\n/* index and search related styles for color-contrast (AA compliant) */\n#index-and-search.section {\n font-size: 16px;\n}\n\n#index-and-search.section a {\n color: var(--links);\n}\n\n#index-and-search.section a:hover {\n color: var(--links);\n text-decoration: underline;\n}\n\n/* custom style for `a` tag for color-contrast (AA compliant) */\n\na {\n color: var(--links);\n}\n\n/* navbar and menu related styles */\n@media (max-width: 768px) {\n /* Remove top padding when top navbar goes collapsed in narrow viewports */\n body {\n padding-top: 0;\n }\n\n .navbar-fixed-top {\n position: static;\n }\n}\n\n@media (min-width: 768px) {\n /* when navbar is collapsed we don't want any vertical dividers taking up space */\n .navbar .divider-vertical {\n margin: 0 3px;\n border-left: 1px solid #f2f2f2;\n }\n\n .navbar-fixed-top .container {\n padding: 0;\n }\n}\n\ndiv.container {\n background-color: var(--background);\n}\n\n.container {\n padding-left: 10px;\n padding-right: 10px;\n}\n\n.runestone {\n clear: both;\n background-color: var(--componentBgColor);\n padding: 15px;\n border-style: solid;\n border-color: var(--componentBorderColor);\n border-radius: 10px;\n margin-bottom: 20px;\n margin-top: 20px;\n }\n\n/* Sets width of content \"column\" */\n#main-content section > *:not(section) {\n max-width: var(--contentWidthRegular);\n margin-left: auto;\n margin-right: auto;\n\n}\n\n/* Handle content in nested sections by allowing them to grow*/\n#main-content section > section,\n/* And then make sure a few items are wider by default */\n#main-content section > .runestone.ac_section,\n#main-content section > .runestone.codelens,\n#main-content section > .question,\n#main-content section > .runestone.parsons-container,\n#main-content section > .runestone.parsons-problems,\n#main-content section > .codelens,\n#main-content section > .timedAssessment,\n#main-content section > .jupyterlite_sphinx_iframe_container\n{\n max-width: var(--contentWidthWide);\n margin-left: auto;\n margin-right: auto;\n}\n\n/* Allow individual elements to request being larger */\n#main-content section > .full-width {\n max-width: var(--contentWidthWide);\n}\n\n.container section > img {\n display: block;\n margin-left: auto;\n margin-right: auto;\n}\n\n.container-fluid > .navbar-collapse,\n.container-fluid > .navbar-header,\n.container > .navbar-collapse,\n.container > .navbar-header {\n margin-left: 0;\n margin-right: 0;\n}\n\n.navbar > .container .navbar-brand {\n margin-left: 0;\n}\n\n.navbar > .container {\n background-color: var(--navbar);\n}\n\n.navbar-toggle {\n margin-right: 0px;\n}\n\n.footer > .container {\n background-color: var(--outerBackground);\n}\n\n.footer > .container p > a {\n color: var(--links);\n}\n\n.brand-logo {\n float: left;\n display: block;\n margin-top: 4px;\n}\n\n.brand-logo img {\n height: 40px;\n}\n\n.social-menu {\n width: 220px;\n padding: 10px 10px 15px 20px;\n}\n\n.fb-like {\n margin-top: 7px;\n}\n\n.fb_iframe_widget span,\n.fb_iframe_widget iframe {\n height: 20px !important;\n width: 82px !important;\n}\n\n.twitter-follow-button {\n margin-top: 10px;\n}\n\n.gittip {\n margin-top: 8px;\n}\n\n.gittip-button {\n margin-bottom: -6px;\n}\n\n.dropdown-menu > li > span,\n.dropdown-menu > li > div,\n.dropdown-menu > li > label {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: bold;\n line-height: 20px;\n color: var(--grayToWhite);\n white-space: nowrap;\n}\n\n.dropdown-menu > li > label:hover, .dropdown-menu > li > label:focus {\n color: #262626;\n text-decoration: none;\n background-color: #f5f5f5;\n}\n\n.dropdown-menu > li > a {\n color: var(--grayToWhite);\n}\n\n.loggedinuser {\n font-weight: bold;\n}\n\n/* end navbar and menu related styles */\n.CodeMirror {\n margin: 0 0 1em 0;\n background-color: var(--background);\n clear: both;\n}\n\n.ac_section .CodeMirror pre {\n -moz-border-radius: 0;\n -webkit-border-radius: 0;\n -o-border-radius: 0;\n border-radius: 0;\n border-width: 0;\n margin: 0;\n padding: 0;\n background: transparent;\n font-family: Menlo, Monaco, Consolas,\"Courier New\", monospace;\n font-size: inherit;\n padding: 0;\n margin: 0;\n white-space: pre;\n word-wrap: normal;\n}\n\nbutton.btn,\nbtn.btn-sm,\ninput[type=\"submit\"].btn.btn-sm,\ninput[type=\"button\"].btn.btn-sm {\n font-size: 1em;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n}\n\n/* Fix search menu button */\n.dropdown-menu .input-group .input-group-btn button.btn {\n font-size: 14px;\n}\n\n.btn {\n margin: 5px;\n}\n\n.btn.disabled {\n /* needed in Bootstrap 3 to allow tooltips on disabled buttons */\n pointer-events: auto;\n}\n\n.btn-default,\n.btn-default.disabled,\n.btn-default[disabled],\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover {\n color: #ffffff;\n background-color: var(--codeButtons);\n border-color: var(codeButtonsBorder);\n}\n\n.btn-default:hover,\n.btn-default:focus,\n.btn-default:active,\n.btn-default.active {\n background-color: #3a3c3c;\n border-color: #2e2f2f;\n color: #ffffff;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin-right: 5px;\n}\n\n.tooltip {\n z-index: 2000 !important;\n}\n\n.tooltip.in {\n opacity: 0.8;\n filter: alpha(opacity=80);\n}\n\nh2 {\n margin-top: 20px;\n}\n\n.alert form {\n margin-bottom: 0;\n}\n\n/* default bookstrap alert color is hard to read (low contrast). */\n.alert {\n color: var(--grayToWhite);\n padding: 10px;\n}\n\n.alert-info {\n background-color: var(--alerts);\n}\n\n.alert-danger {\n background-color: var(--dangerAlerts);\n}\n\n.alert-success {\n background-color: var(--successAlerts);\n}\n\n/* override the color styles applied by Skulpt to the unittest results divs */\n.unittest-results.alert-danger {\n background-color: var(--dangerAlerts) !important;\n}\n\n.unittest-results.alert-success {\n background-color: var(--successAlerts) !important;\n}\n\n.alert label {\n font-weight: normal;\n}\n\n.navbar_message {\n margin-top: 15px;\n font-weight: bold;\n}\n/*\nMissing brackets\n================\nThe default styling from Sphinx's ``basic.css`` doesn't style multiple references to the same reference with brackets. Here's the relevant snippet of CSS:\n\n.. code-block:: CSS\n :number-lines:\n\n a.brackets:before,\n span.brackets > a:before{\n content: \"[\";\n }\n\n a.brackets:after,\n span.brackets > a:after {\n content: \"]\";\n }\n\nThe HTML for a footnote reference is:\n\n.. code-block:: HTML\n :number-lines:\n\n 2\n\nThe HTML for a typical footnote is:\n\n.. code-block:: HTML\n :number-lines:\n\n
    \n
    \n \n 1\n \n
    \n
    Omitted this...
    \n
    \n\nThe HTML for a footnote referenced multiple times is:\n\n.. code-block:: HTML\n :number-lines:\n\n
    \n
    \n 1\n \n (1,2,3)\n \n
    \n
    Omitted this...
    \n
    \n\nHowever, there's no (current) CSS selector that will add a ``content`` to the multiply-referenced footnote without adding an additional ``content`` to the typical footnote: we want to select ``dt.label > span.brackets > text-only content`` or ``dt.label > span.brackets > :not(:has a)`` (see the unsupported `:has selector `_. So, I see no solution for this (outside JS).\n\n\nIncorrect color\n===============\nSecond, the Bootstrap theme (v3.4.1) contains the following CSS, from ``node_modules/bootstrap/dist/css/less/labels.less``:\n\n.. code-block:: CSS\n :number-lines:\n\n .label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n color: @label-color;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n\n ...more here omitted...\n }\n\nALL this therefore gets applied to footnotes, since they have the ``label`` class. Because the ``@label-color`` is white, this CSS makes the reference invisible against the default (light mode) white background. I like the rest of the styling changes (even though they differ from the standard Sphinx settings), so only the color is changed.\n*/\ndt.label > span.brackets:not(span.brackets > a),\ndt.label > span.fn-backref:not(span.fn-backref > a) {\n color: black;\n}\n\n/* These admonition styles styles are copied from the Bootstrap .alert classes.\n Most of the !important declarations are to override the Sphinx basic.css styles */\n.admonition {\n padding: 8px 35px 8px 14px !important;\n margin-bottom: 20px !important;\n margin-top: 20px !important;\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);\n background-color: var(--admonition);\n border: 1px solid #fbeed5;\n -webkit-border-radius: 4px;\n -moz-border-radius: 4px;\n border-radius: 4px;\n}\n\n/* .alert-danger */\n.admonition.caution {\n color: #a33f3e;\n background-color: #f2dede;\n border-color: #eed3d7;\n}\n\n/* .alert-info */\n.admonition.tip,\n.admonition.note {\n color: #333;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n\n/* from web2py.css */\ndiv.flash {\n font-weight: bold;\n position: fixed;\n padding: 10px;\n top: 55px;\n right: 45px;\n opacity: 0.95;\n margin: 0 0 10px 10px;\n vertical-align: middle;\n cursor: pointer;\n color: #ffffff;\n background-color: #000;\n border: 2px solid #fff;\n border-radius: 8px;\n -moz-border-radius: 8px;\n -webkit-border-radius: 8px;\n background-image: -webkit-linear-gradient(top, #222, #000);\n background-image: -o-linear-gradient(top, #222, #000);\n background-image: -moz-linear-gradient(90deg, #222, #000);\n background-image: linear-gradient(top, #222, #000);\n background-repeat: repeat-x;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n -webkit-font-smoothing: antialiased;\n z-index: 2000;\n}\n\n/* Styles for the login, registration, and Janrain forms */\n#web2py_user_form {\n margin-top: 10px;\n}\n\n#web2py_user_form form {\n float: left;\n margin-right: 150px;\n padding-top: 3px;\n}\n\n#web2py_user_form td {\n padding-bottom: 15px;\n}\n\n#web2py_user_form td.w2p_fw {\n width: 299px;\n}\n\n#auth-actions {\n margin-top: 50px;\n}\n\n#sign_in_text td {\n font-size: 17px;\n color: #333;\n font-family: \"lucida grande\", Verdana, sans-serif;\n padding-bottom: 13px;\n}\n\n#auth_user_remember {\n margin-top: -20px;\n}\n\n/* End login, registration, Janrain styles */\n\n/* end-of-chapter exercises styles */\n#exercises > ol > li,\n#programming-exercises > ol > li {\n margin-bottom: 30px;\n}\n\n#exercises > ol > li:nth-child(even),\n#programming-exercises > ol > li:nth-child(even) {\n padding: 1.2em 1.4em;\n background: #faf7df;\n border: 1px solid #fbeed5;\n -webkit-border-radius: 4px;\n -moz-border-radius: 4px;\n border-radius: 4px;\n}\n\n/* End chapter exercises styles */\n\n/* Modal dialog styles (scratch activecode, compare me, etc) */\n.scratch-ac-modal {\n width: 90%;\n max-height: 90%;\n overflow-y: scroll;\n}\n\n.compare-modal .progress {\n margin-bottom: 0;\n}\n\n.compare-me-progress {\n width: 100%;\n}\n\n.compare-me-progress .progress-bar,\n.unittest-results-progress .progress-bar {\n color: #333;\n}\n\n\n.unittest-results-progress {\n width: 25%;\n}\n\n.compare-modal {\n width: 350px;\n}\n\n.compare-modal table {\n border-collapse: separate;\n border-spacing: 10px 5px;\n}\n\n.codelens-modal {\n /* we set some custom position styles so that the modal doesn't obscure the codelens visualizer */\n top: 20%;\n right: 20%;\n left: auto;\n bottom: auto;\n}\n\n@media (max-width: 768px) {\n /* remove any custom position styles when the screen is small (mobile devices)\n to prevent the modal from being partially off the screen */\n .codelens-modal {\n top: 0 !important;\n right: 0 !important;\n bottom: 0 !important;\n left: 0 !important;\n }\n}\n\n.codelens-modal > .modal-dialog {\n width: 400px;\n}\n\n/* End modal dialog styles */\n\n.footnote.table {\n width: auto;\n margin-bottom: 10px;\n}\n\n.footnote.table td.label {\n padding: 2px 5px 2px 5px;\n background-color: #d9edf7;\n}\n\n.ac-canvas {\n background-color: white;\n display: inline-block;\n}\n\n.video-play-overlay {\n position: relative;\n top: -150px;\n left: 44%;\n height: 85px;\n width: 130px;\n background-position: center;\n background-repeat: no-repeat;\n}\n\n.video_popup video {\n width: var(--contentWidthRegular);\n cursor: pointer;\n}\n\n.ui-sortable-helper {\n height: auto !important;\n width: auto !important;\n}\n\n.navLink {\n z-index: 2;\n display: inline;\n bottom: 65px;\n position: fixed;\n opacity: 0.4;\n}\n\n.navLink:hover {\n opacity: 1;\n}\n\n.navLink a {\n display: inline-block;\n background-color: white;\n border-style: solid;\n border-color: lightgrey;\n border-width: 2px;\n width: 100px;\n height: 50px;\n}\n\n#relations-next {\n right: 35px;\n}\n\n#relations-prev {\n left: 35px;\n}\n\n.nextprev-list {\n margin: 10px;\n padding-left: 0;\n height: 50px;\n}\n\n@media (max-width: 600px) {\n .navLink {\n display: inline-block;\n bottom: auto;\n position: absolute;\n }\n\n #relations-next,\n #relations-prev {\n width: 25%;\n padding: 0 20px;\n display: inline;\n }\n}\n\n#completionButton {\n margin-top: 25px;\n margin-bottom: 15px;\n padding-left: 70px;\n padding-right: 70px;\n color: var(--completionButtonText);\n font-weight: bold;\n}\n\n.buttonAskCompletion {\n background-color: var(--completionButton);\n border-color: var(--completionButtonHover);\n font-weight: bold;\n}\n\n.buttonAskCompletion:hover {\n background-color: var(--completionButtonHover);\n border-color: var(--completionButtonHover);\n}\n\n.buttonConfirmCompletion {\n background-color: #377e22;\n border-color: #3dc682;\n color: #ffffff !important;\n}\n\n.buttonConfirmCompletion:hover {\n background-color: #3dc682;\n border-color: #3dc682;\n}\n\n.navLinkBg {\n height: 40px;\n background-color: #ffffff;\n z-index: 1;\n position: fixed;\n bottom: 55px;\n color: #999;\n font-weight: bold;\n -webkit-box-shadow: 0px 0px 3px rgba(50, 50, 50, 0.5);\n -moz-box-shadow: 0px 0px 3px rgba(50, 50, 50, 0.5);\n box-shadow: 0px 0px 3px rgba(50, 50, 50, 0.5);\n}\n\n.navLinkBg:hover {\n color: #999;\n}\n\n#navLinkBgRight {\n right: -1000px;\n padding: 10px 15px 0 65px;\n}\n\n#navLinkBgLeft {\n left: -65px;\n padding-left: 15px;\n padding-right: 50px;\n}\n\n.activehtml {\n width: 100%;\n height: 400px;\n background-color: #ffffff;\n}\n\n.container section > div.sidebar {\n margin: 0 0 0.5em 1em;\n}\n\na.disqus_thread_link {\n display: block;\n}\n\n.reveal_button {\n display: block;\n margin-left: 0;\n}\n\niframe[seamless] {\n display: block;\n}\n\n@media (min-width: 768px) {\n .container section > div.sidebar {\n margin: 0 3em 0.5em 1em;\n }\n}\n\n@media (min-width: 992px) {\n .container section > div.sidebar {\n margin: 0 11em 0.5em 1em;\n }\n}\n\n@media (min-width: 1200px) {\n .container section > div.sidebar {\n margin: 0 18em 0.5em 1em;\n }\n}\n\ndiv.ExecutionVisualizer table.visualizer {\n width: auto;\n margin-left: auto;\n margin-right: auto;\n background-color: #ffffff;\n}\n\n.sltooltip {\n position: absolute;\n z-index: 1020;\n display: block;\n padding-bottom: 5px;\n font-size: 11px;\n visibility: visible;\n margin-top: -2px;\n bottom: 120%;\n margin-left: -2em;\n}\n\n.sltooltip .sltooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n border-top: 5px solid #000000;\n border-right: 5px solid transparent;\n border-left: 5px solid transparent;\n position: absolute;\n width: 0;\n height: 0;\n}\n\n.sltooltip-inner {\n max-width: 200px;\n padding: 3px 8px;\n color: var(--tooltip);\n text-align: center;\n text-decoration: none;\n background-color: #000000;\n -webkit-border-radius: 4px;\n -moz-border-radius: 4px;\n border-radius: 4px;\n}\n\nul.dropdown-menu.globaltoc {\n max-height: 700px;\n overflow: auto;\n}\n\n.globaltoc span.caption-text {\n display: inline-block;\n font-weight: bold;\n font-size: large;\n}\n\n/* Style lp textareas. */\ntextarea.lp-result {\n width: 100%;\n height: 10em;\n font-family: monospace;\n}\n\n/*\n * Hide only visually, but have it available for screen readers:\n * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility\n *\n * 1. For long content, line feeds are not interpreted as spaces and small width\n * causes content to wrap 1 word per line:\n * https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe\n */\n\n.visuallyhidden {\n border: 0;\n clip: rect(0 0 0 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n width: 1px;\n white-space: nowrap;\n /* 1 */\n}\n\n/*\n * Extends the .visuallyhidden class to allow the element\n * to be focusable when navigated to via the keyboard:\n * https://www.drupal.org/node/897638\n */\n\n.visuallyhidden.focusable:active,\n.visuallyhidden.focusable:focus {\n clip: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n position: static;\n width: auto;\n white-space: inherit;\n}\n\n.blockquote {\n text-align: center;\n font-size: large;\n font-style: italic;\n padding-left: 2em;\n padding-right: 2em;\n}\n\n\n#subchapterprogress.ui-progressbar .ui-progressbar-value {\n margin: 0;\n border-radius: 0px;\n}\n\n#subchapterprogress > div {\n background: green;\n}\n\n#subchapterprogress > div.loggedout {\n background: lightgray;\n}\n\n.runestone_caption {\n text-align: center;\n}\n\n.runestone_caption_divid {\n opacity: 50%;\n}\n\n#questions .runestone_caption:before {\n counter-increment: rscomponent;\n content: \"Problem: \" counter(rscomponent) \" -- \";\n}\n\nbody {\n color: var(--bodyFont);\n}\n\n.jupyter_container .output {\n margin-top: 10px;\n}\n\n.jupyter_container .output td {\n padding-left: 5px;\n padding-right: 5px;\n}\n\n.jupyter_container .output th {\n padding-left: 5px;\n padding-right: 5px;\n}\n\n/*Theme toggle*/\n.dropdown-menu > li > label.theme-switch {\n display: flex;\n align-items: center;\n font-weight: normal;\n cursor: pointer;\n}\n\n.theme-switch input {\n display: none;\n}\n\n.theme-switch .slider {\nbackground-color: #ccc;\nheight: 1.25em;\nwidth: 2em;\ntransition: 0.4s;\nposition: relative;\nmargin-right: 3px;\n}\n\n.theme-switch .slider:before {\n background-color: #fff;\n bottom: 2px;\n content: \"\";\n height: calc(1.25em - 4px);\n left: 2px;\n position: absolute;\n transition: 0.4s;\n width: calc(1.25em - 4px);\n}\n\n.theme-switch input:checked + .slider {\n background-color: #66bb6a;\n}\n\n.theme-switch input:checked + .slider:before {\n transform: translateX( calc(0.75em - 1px) );\n}\n\n.theme-switch .slider.round {\n border-radius: 1.25em;\n}\n\n.theme-switch .slider.round:before {\n border-radius: 1.25em;\n}\n/*End theme toggle*/\n\n/* for ads */\n.adcopy {\n width: 60%;\n background-color: #f2e0c3;\n padding: 10px;\n margin-left: auto;\n margin-right: auto;\n margin-top: 10px;\n border: solid black 2px;\n border-radius: 10px;\n}\n\n.adcopy .donateb {\n\n margin-left: 30%;\n}\n\n.isCorrect:before {\n /*content: url(https://em-content.zobj.net/thumbs/240/apple/325/check-mark_2714-fe0f.png);*/\n content: \"✅ \";\n float:right;\n padding-left: 4px;\n}\n\n.isInCorrect:before {\n /*content: url(https://em-content.zobj.net/thumbs/240/apple/325/check-mark_2714-fe0f.png);*/\n content: \"⚠️ \";\n float:right;\n padding-left: 4px;\n}\n\n/* ---------------------------------------------------------- */\n/* Redo some PreTeXt styles undone by Bootstrap */\npre {\n color: inherit;\n background: inherit;\n}\n\nsummary.ptx-footnote__number {\n display: inline;\n}\n\nsummary.knowl__link {\n display: list-item inline;\n}\n\ndetails.ptx-footnote {\n display: inline;\n}\n/* ---------------------------------------------------------- */\n\n.handsontable td, .handsontable th {\n background-color: var(--content-background, #fff);\n color: var(--bodyFont, #000);\n}\n\n\nlegend {\n /* allow darkmode to override legend color */\n color: var(--grayToWhite, #333);\n border-bottom-color: var(--grayToWhite, #333);\n}\n\n.autopermalink {\n display: none;\n}","/*\n**********************************************\n|docname| - a WCAG 2.0 AA compliant stylesheet\n**********************************************\n*/\n\n/* Variables holding theme colors */\n:root {\n\t--codebuttons: #474949;\n}\n[data-theme=\"dark\"] {\n\t--codebuttons: #2c0aa6;\n}\n/*Navigation Tabbing Styling*/\nli.dropdown.open a.dropdown-toggle, li.dropdown.open a.dropdown-toggle:focus {\n\tborder:0px !important;\n\t/*background-color: #346A6E!important;*/\n\tbackground-color: #2A5659 !important;\n\tcolor:#F8F8F8 !important;\n}\na.dropdown-toggle:focus {\n\t /*border:1px solid #5B9DD9 !important;\n\t color:#5B9DD9 !important;\n\t width:48px !important;*/\n\t background-color: #52A6AC!important;\n\t color:#F8F8F8 !important;\n}\n/* Border Manipulation */\nli.divider-vertical {\n\tmargin:0px !important;\n}\nli.dropdown a.dropdown-toggle {\n\tpadding:15px 18px !important;\n}\n\n/*\nBootstrap button styling\n*/\n\n/* Default Button */\n/* Passes WCAG 2.0 */\nbutton.btn.btn-default:active {\n\tcolor:#474949 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-default:focus {\n\tcolor:#474949 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-default{\n\tcolor:#FFFFFF !important;\n\tbackground-color: rgb(71, 73, 73) !important;\n}\nbutton.btn.btn-default.btn-sm.disabled:active {\n\tcolor:#474949 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-default.btn-sm.disabled:focus {\n\tcolor:#474949 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-default.btn-sm.disabled{\n\tcolor:#FFFFFF !important;\n\tbackground-color:#474949 !important;\n}\n/* Sucess Button */\n/* Failed WCAG 2.0, #255425 passes */\nbutton.btn.btn-success:active {\n\tcolor:#427e44 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-success:focus {\n\tcolor:#427e44!important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-success {\n\tcolor:#FFFFFF !important;\n\tbackground-color:#427e44!important;\n}\n\n/*Primary Button*/\n/* fails WCAG 2.0, #265986 passes */\nbutton.btn.btn-primary:active {\n\tcolor:#3379b6!important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-primary:focus {\n\tcolor:#3379b6 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-primary {\n\tcolor:#FFFFFF !important;\n\tbackground-color:#3379b6 !important;\n}\n\n\n/*Info Button */\n/* Fails, WCAG 2.0, #155569 passes*/\nbutton.btn.btn-info:active {\n\tcolor:#1a6a83!important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-info:focus {\n\tcolor:#1a6a83 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-info{\n\tcolor:#FFFFFF !important;\n\tbackground-color:#1a6a83 !important;\n}\n\n/*Warning Button*/\n/*Fails WCAG 2.0, #794b0b*/\nbutton.btn.btn-warning:active {\n\tcolor:#945c0e !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-warning:focus {\n\tcolor:#945c0e !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-warning {\n\tcolor:#FFFFFF !important;\n\tbackground-color:#945c0e !important;\n}\n\n/*Danger Button */\n/*Fails, #a62924 passes*/\nbutton.btn.btn-danger:active {\n\tcolor:#d33a35 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-danger:focus {\n\tcolor:#d33a35 !important;\n\tbackground-color:#FFFFFF !important;\n}\nbutton.btn.btn-danger{\n\tcolor:#FFFFFF !important;\n\tbackground-color:#d33a35 !important;\n}\n\n/*Link Button*/\n/*Fails AAA, passes with #265986*/\nbutton.btn.btn-link:active {\n\tcolor:#FFFFFF!important;\n\tbackground-color:#1a6a83 !important;\n}\nbutton.btn.btn-link:focus {\n\tcolor:#FFFFFF !important;\n\tbackground-color:#1a6a83 !important;\n}\nbutton.btn.btn-link {\n\tcolor:#1a6a83 !important;\n\tbackground-color:#FFFFFF !important;\n}","/* Variables holding theme colors */\n:root {\n\t--menu: #FFFFFF;\n}\n\n[data-theme=\"dark\"] {\n\t--menu: #000000;\n}\n\n.my-highlighted-text{\n\tbackground-color:#FFFF99;\n}\n.social-highlighted-text{\n\tbackground-color:#FFCCCC;\n}\n.highlight-option-box{\n\tposition:absolute;\n\ttop:0px;\n\tleft:0px;\n}\n.highlight-option-box li{ \n\theight:24px;\n}\n#continue-reading{\n\tpadding-top:20px;\n\tdisplay: none;\n}\n#continue-reading a{\n\tfloat:right;\n\tmargin-right:20px;\n}\nli.completed\n{\nlist-style-image: url('completed.png');\n}\nli.active\n{\nlist-style-image: url('active.png');\n}\n.infoTextCompleted{\n\tmargin-left:10px;\n\tfont-size:0.9em;\n\tcolor:#3dc682;\n\tdisplay:none;\n\tfont-style:italic;\n\topacity: 0.7;\n}\n.infoTextActive{\n\tmargin-left:10px;\n\tfont-size:0.9em;\n\tcolor:#ff9f19;\n\tdisplay:none;\n\tfont-style:italic;\n\topacity: 0.7;\n}\n.dropdown-menu{\n\tbackground-clip: padding-box;\n background-color: var(--menu);\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 5px 5px 5px 5px;\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n display: none;\n list-style: none outside none;\n margin: 1px 0 0;\n min-width: 160px;\n padding: 4px 0;\n position: absolute;\n top: 100%;\n z-index: 1000;\n}\n.dropdown-menu ul {\n list-style: disc outside none;\n margin: 0 0 9px 25px;\n padding: 0;\n}\n\n.sidebar-highlights{\n background-color:#FFFF99;\n}\ndiv.documentwrapper {\n\tborder : 0 none;\n}\ndiv.bodywrapper {\n\tborder-right: 0 none;\n}\ndiv.sphinxsidebar {\n\tborder-left: 1px solid #CCCCCC;\n\tpadding-left: 10px;\n}\n.body>.section .section{\n\tpadding-top: 1px;\n}\n#jump-to-chapter{\n border: 1px solid #CCCCCC;\n letter-spacing: 0.015em;\n line-height: 120%;\n padding: 0.5em;\n\twidth: 80%;\n\tmargin-left: auto;\n\tmargin-right: auto;\n}\n#navigation-links{\n\tbackground-color: #F8F8F8;\n border: 1px solid #CCCCCC;\n\tpadding:10px;\n\tmargin:10px;\n}\n",".matrixeq_container {\n padding: 6px 6px 6px 6px;\n margin: 0px 0px 6px 0px;\n}\n\nspan.matrix_table {\n display: inline-table;\n background-color: inherit;\n border-width: 2px 2px;\n border-style: solid;\n border-color: black;\n text-align: center;\n padding: 0px 1px;\n margin: 0px 0px 4px 0px;\n overflow: visible;\n}\n\nspan.matrix_column {\n display: inline-table;\n background-color: inherit;\n padding: 2px 8px 2px 8px;\n margin: 0px 1px;\n border-width: 0px 0px 0px 0px;\n font-family: monospace;\n font-size: 12px;\n vertical-align: middle;\n}\n\nspan.matrix_column div {\n display: block;\n margin: 1px;\n padding: 2px;\n background-color: inherit;\n}\n\nspan.matrix_table .matrix_column {\n border-style: none;\n margin-left: 5px;\n margin-right: 5px;\n}\n\nspan.matrix_table:before {\n content: \" \";\n background-color: inherit;\n width: 85%;\n text-align: center;\n height: 2px;\n position: relative;\n top: -2px;\n z-index: 100;\n display: block;\n margin: 0px auto;\n}\n\nspan.matrix_table:after {\n content: \" \";\n background-color: inherit;\n width: 85%;\n text-align: center;\n height: 2px;\n position: relative;\n top: 2px;\n z-index: 100;\n display: block;\n margin: 0px auto;\n}\n\nspan.matrix_column:before {\n content: \" \";\n width: 85%;\n height: 2px;\n position: relative;\n top: -2px;\n z-index: 100;\n display: block;\n}\n\nspan.matrix_column:after {\n content: \" \";\n width: 85%;\n height: 2px;\n position: relative;\n top: 2px;\n z-index: 100;\n display: block;\n}\n\nspan.matrix_table span.matrix_column:before {\n height: 0px;\n}\n\nspan.matrix_table span.matrix_column:after {\n height: 0px;\n}\n\nspan.matrix_table input[type=\"text\"] {\n display: block;\n margin: 0;\n width: 50px;\n height: 24px;\n font-family: sans-serif;\n font-size: 12px;\n appearance: none;\n box-shadow: none;\n text-align: right;\n background-color: inherit;\n}\n\nspan.matrix_operator {\n display: inline-table;\n padding: 0px;\n margin: 0px 4px 0px 4px;\n font-family: monospace;\n font-size: 18px;\n vertical-align: middle;\n}\n\nspan.matrix_label {\n display: inline-table;\n padding: 0px 0px 0px 20px;\n margin: 0px 1px;\n font-family: sans-serif;\n font-size: 12px;\n vertical-align: middle;\n}\n\n/* Colors for matrix highlighting */\n\n.lightcyanColor {\n background-color: lightcyan;\n}\n\n.lightgreyColor {\n background-color: lightgrey;\n}\n\n.purpleColor {\n background-color: #DFB5E8;\n}\n\n.yellowColor {\n background-color: #FDFF9D;\n}\n\n\n\n","/********************* Colour reference chart****************\nelememt ********* property ********* colour ********\n\nwebgl_container background-color #fcf8e3\n\n*/\n\n/* Major sections */\n.webgl_container {\n background-color: #fcf8e3;\n box-sizing: border-box;\n width: 100%;\n display: block;\n margin-bottom: 1em;\n}\n\n.webgl_cmds {\n box-sizing: border-box;\n width: 100%;\n text-align: center;\n padding: 6px;\n}\n\n.webgl_row2 {\n box-sizing: border-box;\n width: 100%;\n padding: 0px 4px 0px 4px;\n display: block;\n height: 550px;\n}\n\n.webgl_editors {\n box-sizing: border-box;\n float: left;\n display: block;\n visibility: visible;\n width: 50%;\n}\n\n.webgl_canvas {\n box-sizing: border-box;\n float: left;\n display: block;\n visibility: visible;\n font-size: 12px;\n font-weight: normal;\n padding-left: 5px;\n width: 50%;\n}\n\n.webgl_output {\n box-sizing: border-box;\n width: 100%;\n padding: 4px;\n margin-top: 6px;\n float: left;\n}\n\n/* Details within each section */\n/* Tabbed titles, ul horizontal list */\n.webgl_nav_tabs {\n height: 31px;\n width: 100%;\n margin: 0px;\n padding: 6px 0px 0px 0px;\n background-color: #CFCCB8;\n border-color: #fbeed5;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n list-style-type: none;\n overflow: hidden;\n display: inline-flex;\n}\n\n.webgl_nav_tabs li {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n margin: 0px 0px 0px 4px;\n padding: 4px 1px 4px 4px;\n list-style-type: none;\n position: relative;\n float: left;\n background-color: #E6E2CC;\n font-size: 9pt;\n}\n\n.webgl_nav_tabs li > a {\n padding: 8px 8px 8px 8px;\n color: #555;\n text-decoration: none;\n}\n\n.webgl_nav_tabs > li > a:hover {\n border-color: #b4b19d;\n border-bottom-width: 0;\n}\n\n.webgl_nav_tabs li.active {\n background-color: #ffffff;\n list-style-type: none;\n list-style-image: none;\n}\n\n/* Webgl editors */\n.webgl_tab_content {\n width: 100%;\n position: absolute;\n clear: both;\n margin: 0px 0px 20px 0px;\n border: 0px;\n color: #c09853;\n background-color: #fcf8e3;\n z-index: 1;\n}\n\n.webgl_tab_content.active {\n z-index: 2;\n}\n\n.webgl_tab_content > * {\n margin-left: auto;\n margin-right: auto;\n /*\tposition:relative; */\n}\n\n.webgl_tab_content .clearfix {\n position: initial;\n}\n\n.webgl_tab_editor {\n width: 100%;\n position: absolute;\n clear: both;\n padding: 10px 4px 10px 4px;\n margin: 0px 0px 20px 0px;\n border: 0px;\n color: #c09853;\n background-color: #fcf8e3;\n}\n\n/* span that contains the tabbed text editors */\n.webgl_code {\n width: 100%;\n float: left;\n}\n\n.webgl_tab_contents_text {\n width: 100%;\n position: absolute;\n clear: both;\n padding: 10px 4px 10px 4px;\n margin: 0px 0px 20px 0px;\n border: 0px;\n color: #c09853;\n background-color: #fcf8e3;\n z-index: 1;\n}\n\n.webgl_errorMessages {\n color: red;\n}\n\n.webgl_warningMessages {\n color: rgb(170, 34, 164);\n}\n\n.webgl_infoMessages {\n color: rgb(24, 144, 64);\n}\n\n.webgl_output_div {\n width: 100%;\n margin: 2px;\n border: 1px solid lightgrey;\n padding-bottom: 4px;\n padding-top: 4px;\n padding-left: 4px;\n background-color: white;\n overflow: auto;\n height: 14em;\n font-size: 12px;\n font-weight: normal;\n}\n\n.webgl_editor_highlight {\n background-color: #EEEEEE; /* very light grey */\n}\n\n/* \nRemoved as these rules apply to entire browser window and not just webgl interactives\n::-webkit-scrollbar {\n -webkit-appearance: none;\n width: 7px;\n}\n::-webkit-scrollbar-thumb {\n border-radius: 4px;\n background-color: rgba(0,0,0,.5);\n -webkit-box-shadow: 0 0 1px rgba(255,255,255,.5);\n}\n*/\n\n.webgl_btn {\n display: inline-block;\n padding: 3px 6px;\n margin-bottom: 0;\n background-color: thistle;\n font-size: 12px;\n font-weight: normal;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n cursor: pointer;\n border: 1px solid transparent;\n border-radius: 4px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n -o-user-select: none;\n user-select: none;\n}\n\n.webgl_checkbox {\n}\n\n.webgl_tabbed_editor {\n width: 100%;\n resize: none;\n font-family: monospace, sans-serif;\n font-size: 9pt;\n font-style: normal;\n}\n\n.canvas3D {\n width: 100%;\n height: 100%;\n}\n\n.CodeMirror.webgl-default {\n border: 1px solid #eee;\n font-family: monospace, sans-serif;\n font-size: 8pt;\n font-style: normal;\n}\n\nbutton.btn.webgl-default {\n font-size: 8pt;\n}\n\n\n",".runestone-sphinx {\n @import (less) url(\"./presenter_mode.css\");\n}\n",".hidden{\n display: none;\n}\n\n.view-toggle{\n padding: 0.85em;\n}\n\n.presentation-mode section *{\n display: none;\n}\n\n.presentation-mode section .runestone, .presentation-mode section .runestone *{\n display: initial;\n}\n\n.present{\n height: 100vh;\n}\n\n.full-height{\n height: 100vh;\n}\n\n.bottom{\n position: absolute;\n bottom: 0;\n}\n\n#codeDisplayDiv{\n width: auto!important;\n}\n\ndiv.ExecutionVisualizer #dataViz{\n margin: 0;\n}\n\ndiv.ExecutionVisualizer div#stackHeader {\n text-align: center;\n}\n\n#stackFrame{\n display: block!important;\n}\n\n#stackHeapTable {\n width: 100%;\n}\n\n#stackHeapTable tr {\n justify-content: space-around;\n}\n\ndiv.ExecutionVisualizer td#stack_td, div.ExecutionVisualizer td#heap_td {\n flex: 1;\n}\n\n.presentation-title {\n display: none;\n}\n\n.present .presentation-title {\n display: block;\n}\n\ndiv.ExecutionVisualizer div#heap {\n float: none;\n padding-left: 0;\n}\n\n#stack_td tr {\n display: table-row;\n}\n\n#heap_td tr {\n display: table-row;\n}\n\n#codeDisplayDiv{\n margin: 0 auto;\n}\n\n/* bnm -- comment this out for now as it breaks codelens indentation and arrows\n.visualizer tr{\n display: flex;\n}\n*/\n\n#vizLayoutTd{\n flex: 1;\n}\n\n#vizLayoutTdFirst {\n flex: 2;\n}\n\n#vizLayoutTdSecond {\n flex: 1;\n}\n\n#vizLayoutTdThird {\n flex: 2;\n}\n\n#progOutputs {\n display: block!important;\n margin: 0 20px;\n width: 60%;\n}\n\n#pyStdout {\n width: 100%!important;\n}\n\ndiv.ExecutionVisualizer #pyStdout {\n margin-bottom: 1em;\n}\n\ndiv.ExecutionVisualizer table.visualizer {\n width: 100%;\n}\n\n.present #vizLayoutTdThird{\n text-align: left;\n}\n\n.ac-block{\n display: flex;\n margin-bottom: 1em;\n}\n\n.row-mode .ac-block{\n display: block;\n margin-bottom: 0;\n}\n\n.row-mode .ac_output, .row-mode .ac_code_div{\n float: none;\n display: block;\n width: auto;\n max-width: none;\n}\n\n.row-mode .ac_code_div{\n margin-bottom: 1em;\n}\n\n.ac_section>* {\n max-width: 100%;\n}\n\n.ac_output{\n display: block;\n max-width: 100%;\n}\n\n.ac_output pre {\n visibility: visible!important;\n min-height: 60px;\n}\n\n.CodeMirror{\n margin: 0;\n max-width: 100%;\n border-radius: 3px;\n min-height: 60px;\n}\n\n.container section > runestone:not(.ac_section){\n max-width:none;\n margin: 0;\n}\n\n.presentation-options {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n}\n\n.layout-btn {\n background-color: #FBEED5;\n border: 2px solid #DFD4BE;\n border-radius: 2px;\n padding: .25rem;\n display: flex;\n justify-content: center;\n align-items: center;\n margin: 0 .5rem;\n transition: all .2s ease;\n}\n\n.layout-btn.active-layout, .layout-btn:focus {\n border: 2px solid #979797;\n outline: none;\n}\n\n.sketchpad-container {\n min-width: 50%;\n min-height: 300px;\n padding: 0 15px;\n}\n\n.card-mode .sketchpad-container {\n width: 50%;\n margin: 0;\n display: inline-block;\n /*margin: 0 -15px;*/\n vertical-align: top;\n}\n\n.row-mode .error {\n margin: 20px 15px;\n}\n\n.card-mode .error {\n margin: 28px 0 0;\n width: 50%;\n display: inline-block;\n padding: 0 15px;\n vertical-align: top;\n margin-top: 28px;\n}\n\n.sketchpad {\n background: white;\n border: 2px solid grey;\n border-radius: 3px;\n width: 100%;\n min-height: 300px;\n display: block;\n}\n\n.btn-presenter {\n padding: .5rem 1rem;\n border-radius: 3px;\n font-weight: 500;\n margin: 1.5rem 0 1.5rem 1.5rem;\n}\n\n.btn-grey-outline {\n border: 2px solid grey;\n color: grey;\n background: white;\n}\n\n.btn-grey-solid {\n border: 2px solid grey;\n color: white;\n background: grey;\n}\n\nbody.present .ac_section>* {\n max-width: none;\n}\nbody.present iframe {\n width: 100%;\n}\n\nbody.present {\n /* font-size: 2.0em; */\n}\n\nbody.present #relations-prev, body.present #relations-next, body.present .navLinkBg {\n display: none;\n}\n\nbody.present .btn-presenter {\n position: absolute;\n}\nbody.present .btn-presenter.prev-exercise { left: 0px; }\nbody.present .btn-presenter.next-exercise { right: 0px; }\n\n/* .col-md-12 {\n width: 58.333333333333336%;\n}\n\n.card-mode .col-md-7 {\n width: 50%;\n} */\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/_static/prefix-runestone.f4ab138da65f4203.css.map.gz b/_static/prefix-runestone.f4ab138da65f4203.css.map.gz deleted file mode 100644 index 0ae55bc952e6c3fb4118374148f04cbf27dd5081..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 52866 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%0A`4?o8a?+Wg(4AoeYepxl;Qk522I% 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 V{IuD$gNwo7?H`mKK9Pw51OOxfWwZbQ diff --git a/_static/prefix-runtime.42217a82c75796c8.bundle.js b/_static/prefix-runtime.42217a82c75796c8.bundle.js deleted file mode 100644 index d44d5ca..0000000 --- a/_static/prefix-runtime.42217a82c75796c8.bundle.js +++ /dev/null @@ -1,2 +0,0 @@ -(()=>{"use strict";var e,r,t,a,c,d={},n={};function o(e){var r=n[e];if(void 0!==r)return r.exports;var t=n[e]={id:e,loaded:!1,exports:{}};return d[e].call(t.exports,t,t.exports,o),t.loaded=!0,t.exports}o.m=d,e=[],o.O=(r,t,a,c)=>{if(!t){var d=1/0;for(b=0;b=c)&&Object.keys(o.O).every((e=>o.O[e](t[f])))?t.splice(f--,1):(n=!1,c0&&e[b-1][2]>c;b--)e[b]=e[b-1];e[b]=[t,a,c]},o.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return o.d(r,{a:r}),r},o.d=(e,r)=>{for(var t in r)o.o(r,t)&&!o.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},o.f={},o.e=e=>Promise.all(Object.keys(o.f).reduce(((r,t)=>(o.f[t](e,r),r)),[])),o.u=e=>e+"."+{28:"bb005543f41af5fb",39:"dc45aaf5abca8027",115:"648ff4b5650f4c7c",126:"a976f62852f30b51",128:"5bed857c54ac4e8b",131:"ee437eeefadd750d",168:"fe63e6dec2d06468",186:"be52164d57f4b7e4",249:"7ec032cf0b3ede9a",296:"37eb8c05642d8ef9",340:"c525bd899366c5f9",357:"a6fa55aea0c38a63",412:"5965503d81003593",420:"8dae5ad08a4e52ad",442:"f48919e396acaa18",460:"bae9001422d7a484",466:"4e1a3fb09520281a",486:"78d96ffc5c65634b",529:"115400ffea03835d",566:"0e38ac5442cc38c2",576:"f923ab1e9910a1be",580:"f387819ad2e14f0a",616:"89f80a32caf41aef",625:"120987bdd5293ae3",640:"cbc8d3a34deb8837",662:"1bb5065279414751",669:"05a3639d12541567",680:"ec85c3ce31480628",759:"f27ff66e7ad33076",764:"c33a81cafe63d2b6",770:"7bd6d39128dde910",817:"3438cd0f1b0f98bc",819:"3e20e27de12f3abf",824:"4343b78afc34c12f",877:"fc49cc812ccc4937",915:"8f500bccc86f901d",919:"237aced0c044e4b6"}[e]+".js",o.miniCssF=e=>"prefix-"+e+"."+{39:"89cf817b9a35aeca",115:"83df5da0966564d5",131:"b184379d0dc5871b",168:"1c4deaed00ca1f5e",186:"0d47de180767fda9",198:"86b6b2a70a576922",249:"6ca19da539a8ed1a",294:"986bf74bfa4ccbd4",350:"dbca9271f6e2dfbf",380:"67748940131a4a84",412:"25f3c4ff23eb9893",442:"6ae0ea584f8e75c5",460:"7c0b70502d117f7d",486:"990aca82e7ba3e1c",576:"9b1852878840651d",580:"22958d4327b0425a",616:"5c78f604ddad1ec0",621:"8c109e297bdd8ce7",737:"cf869b6ea8bfad2f",819:"6edefe408d7482c2",824:"271ae6cff6401ed5",877:"fa7c46f756cd5a82",915:"882512b642b7fffa"}[e]+".css",o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),o.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),r={},t="WebComponents:",o.l=(e,a,c,d)=>{if(r[e])r[e].push(a);else{var n,f;if(void 0!==c)for(var i=document.getElementsByTagName("script"),b=0;b{n.onerror=n.onload=null,clearTimeout(u);var c=r[e];if(delete r[e],n.parentNode&&n.parentNode.removeChild(n),c&&c.forEach((e=>e(a))),t)return t(a)},u=setTimeout(s.bind(null,void 0,{type:"timeout",target:n}),12e4);n.onerror=s.bind(null,n.onerror),n.onload=s.bind(null,n.onload),f&&document.head.appendChild(n)}},o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{var e;o.g.importScripts&&(e=o.g.location+"");var r=o.g.document;if(!e&&r&&(r.currentScript&&"SCRIPT"===r.currentScript.tagName.toUpperCase()&&(e=r.currentScript.src),!e)){var t=r.getElementsByTagName("script");if(t.length)for(var a=t.length-1;a>-1&&(!e||!/^http(s?):/.test(e));)e=t[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),o.p=e})(),a=e=>new Promise(((r,t)=>{var a=o.miniCssF(e),c=o.p+a;if(((e,r)=>{for(var t=document.getElementsByTagName("link"),a=0;a{var c=document.createElement("link");c.rel="stylesheet",c.type="text/css",c.onerror=c.onload=d=>{if(c.onerror=c.onload=null,"load"===d.type)t();else{var n=d&&("load"===d.type?"missing":d.type),o=d&&d.target&&d.target.href||r,f=new Error("Loading CSS chunk "+e+" failed.\n("+o+")");f.code="CSS_CHUNK_LOAD_FAILED",f.type=n,f.request=o,c.parentNode.removeChild(c),a(f)}},c.href=r,document.head.appendChild(c)})(e,c,r,t)})),c={121:0},o.f.miniCss=(e,r)=>{c[e]?r.push(c[e]):0!==c[e]&&{39:1,115:1,131:1,168:1,186:1,198:1,249:1,294:1,350:1,380:1,412:1,442:1,460:1,486:1,576:1,580:1,616:1,621:1,737:1,819:1,824:1,877:1,915:1}[e]&&r.push(c[e]=a(e).then((()=>{c[e]=0}),(r=>{throw delete c[e],r})))},(()=>{var e={121:0};o.f.j=(r,t)=>{var a=o.o(e,r)?e[r]:void 0;if(0!==a)if(a)t.push(a[2]);else if(/^([16]21|198|294|350|380|737)$/.test(r))e[r]=0;else{var c=new Promise(((t,c)=>a=e[r]=[t,c]));t.push(a[2]=c);var d=o.p+o.u(r),n=new Error;o.l(d,(t=>{if(o.o(e,r)&&(0!==(a=e[r])&&(e[r]=void 0),a)){var c=t&&("load"===t.type?"missing":t.type),d=t&&t.target&&t.target.src;n.message="Loading chunk "+r+" failed.\n("+c+": "+d+")",n.name="ChunkLoadError",n.type=c,n.request=d,a[1](n)}}),"chunk-"+r,r)}},o.O.j=r=>0===e[r];var r=(r,t)=>{var a,c,[d,n,f]=t,i=0;if(d.some((r=>0!==e[r]))){for(a in n)o.o(n,a)&&(o.m[a]=n[a]);if(f)var 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 DCV?gO diff --git a/_static/prefix-runtime.42217a82c75796c8.bundle.js.map.gz b/_static/prefix-runtime.42217a82c75796c8.bundle.js.map.gz deleted file mode 100644 index 24398b7ac87e43f81ab54d2d25cbae90ff6b9393..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8473 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 H;9md$oxgT{ diff --git a/_static/prefix-runtime.991c135ccf182bf5.bundle.js b/_static/prefix-runtime.991c135ccf182bf5.bundle.js new file mode 100755 index 0000000..21187fc --- /dev/null +++ b/_static/prefix-runtime.991c135ccf182bf5.bundle.js @@ -0,0 +1,2 @@ +(()=>{"use strict";var e,r,t,a,d,c={},n={};function o(e){var r=n[e];if(void 0!==r)return r.exports;var t=n[e]={id:e,loaded:!1,exports:{}};return c[e].call(t.exports,t,t.exports,o),t.loaded=!0,t.exports}o.m=c,e=[],o.O=(r,t,a,d)=>{if(!t){var c=1/0;for(i=0;i=d)&&Object.keys(o.O).every((e=>o.O[e](t[b])))?t.splice(b--,1):(n=!1,d0&&e[i-1][2]>d;i--)e[i]=e[i-1];e[i]=[t,a,d]},o.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return o.d(r,{a:r}),r},o.d=(e,r)=>{for(var t in r)o.o(r,t)&&!o.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},o.f={},o.e=e=>Promise.all(Object.keys(o.f).reduce(((r,t)=>(o.f[t](e,r),r)),[])),o.u=e=>e+"."+{28:"bb005543f41af5fb",39:"dc45aaf5abca8027",126:"a976f62852f30b51",128:"5bed857c54ac4e8b",131:"ee437eeefadd750d",168:"fe63e6dec2d06468",186:"be52164d57f4b7e4",249:"7ec032cf0b3ede9a",268:"0659406f2c053718",296:"37eb8c05642d8ef9",340:"c525bd899366c5f9",357:"a6fa55aea0c38a63",412:"5965503d81003593",420:"8dae5ad08a4e52ad",442:"f48919e396acaa18",460:"bae9001422d7a484",466:"4e1a3fb09520281a",486:"78d96ffc5c65634b",529:"115400ffea03835d",566:"0e38ac5442cc38c2",576:"f923ab1e9910a1be",580:"f387819ad2e14f0a",616:"89f80a32caf41aef",625:"120987bdd5293ae3",640:"cbc8d3a34deb8837",662:"1bb5065279414751",669:"05a3639d12541567",680:"ec85c3ce31480628",759:"f27ff66e7ad33076",764:"c33a81cafe63d2b6",770:"7bd6d39128dde910",817:"3438cd0f1b0f98bc",819:"fa7785b520e523a5",824:"4343b78afc34c12f",877:"fc49cc812ccc4937",915:"8f500bccc86f901d",919:"237aced0c044e4b6"}[e]+".js",o.miniCssF=e=>"prefix-"+e+"."+{39:"89cf817b9a35aeca",131:"b184379d0dc5871b",168:"1c4deaed00ca1f5e",186:"0d47de180767fda9",198:"86b6b2a70a576922",249:"6ca19da539a8ed1a",268:"c9e33e1350d18af9",294:"986bf74bfa4ccbd4",350:"dbca9271f6e2dfbf",380:"67748940131a4a84",412:"25f3c4ff23eb9893",442:"6ae0ea584f8e75c5",460:"7c0b70502d117f7d",486:"990aca82e7ba3e1c",576:"9b1852878840651d",580:"22958d4327b0425a",616:"5c78f604ddad1ec0",621:"8c109e297bdd8ce7",737:"cf869b6ea8bfad2f",824:"271ae6cff6401ed5",850:"e86d03c2cec75438",877:"fa7c46f756cd5a82",915:"882512b642b7fffa"}[e]+".css",o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),o.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),r={},t="WebComponents:",o.l=(e,a,d,c)=>{if(r[e])r[e].push(a);else{var n,b;if(void 0!==d)for(var f=document.getElementsByTagName("script"),i=0;i{n.onerror=n.onload=null,clearTimeout(u);var d=r[e];if(delete r[e],n.parentNode&&n.parentNode.removeChild(n),d&&d.forEach((e=>e(a))),t)return t(a)},u=setTimeout(s.bind(null,void 0,{type:"timeout",target:n}),12e4);n.onerror=s.bind(null,n.onerror),n.onload=s.bind(null,n.onload),b&&document.head.appendChild(n)}},o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{var e;o.g.importScripts&&(e=o.g.location+"");var r=o.g.document;if(!e&&r&&(r.currentScript&&"SCRIPT"===r.currentScript.tagName.toUpperCase()&&(e=r.currentScript.src),!e)){var t=r.getElementsByTagName("script");if(t.length)for(var a=t.length-1;a>-1&&(!e||!/^http(s?):/.test(e));)e=t[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),o.p=e})(),a=e=>new Promise(((r,t)=>{var a=o.miniCssF(e),d=o.p+a;if(((e,r)=>{for(var t=document.getElementsByTagName("link"),a=0;a{var d=document.createElement("link");d.rel="stylesheet",d.type="text/css",d.onerror=d.onload=c=>{if(d.onerror=d.onload=null,"load"===c.type)t();else{var n=c&&("load"===c.type?"missing":c.type),o=c&&c.target&&c.target.href||r,b=new Error("Loading CSS chunk "+e+" failed.\n("+o+")");b.code="CSS_CHUNK_LOAD_FAILED",b.type=n,b.request=o,d.parentNode.removeChild(d),a(b)}},d.href=r,document.head.appendChild(d)})(e,d,r,t)})),d={121:0},o.f.miniCss=(e,r)=>{d[e]?r.push(d[e]):0!==d[e]&&{39:1,131:1,168:1,186:1,198:1,249:1,268:1,294:1,350:1,380:1,412:1,442:1,460:1,486:1,576:1,580:1,616:1,621:1,737:1,824:1,850:1,877:1,915:1}[e]&&r.push(d[e]=a(e).then((()=>{d[e]=0}),(r=>{throw delete d[e],r})))},(()=>{var e={121:0};o.f.j=(r,t)=>{var a=o.o(e,r)?e[r]:void 0;if(0!==a)if(a)t.push(a[2]);else if(/^([16]21|(35|38|85)0|198|294|737)$/.test(r))e[r]=0;else{var d=new Promise(((t,d)=>a=e[r]=[t,d]));t.push(a[2]=d);var c=o.p+o.u(r),n=new Error;o.l(c,(t=>{if(o.o(e,r)&&(0!==(a=e[r])&&(e[r]=void 0),a)){var d=t&&("load"===t.type?"missing":t.type),c=t&&t.target&&t.target.src;n.message="Loading chunk "+r+" failed.\n("+d+": "+c+")",n.name="ChunkLoadError",n.type=d,n.request=c,a[1](n)}}),"chunk-"+r,r)}},o.O.j=r=>0===e[r];var r=(r,t)=>{var a,d,[c,n,b]=t,f=0;if(c.some((r=>0!==e[r]))){for(a in n)o.o(n,a)&&(o.m[a]=n[a]);if(b)var i=b(o)}for(r&&r(t);fqeqb2S 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 G7XSdPnKwlM literal 0 HcmV?d00001 diff --git a/_static/prefix-runtime.42217a82c75796c8.bundle.js.map b/_static/prefix-runtime.991c135ccf182bf5.bundle.js.map old mode 100644 new mode 100755 similarity index 77% rename from _static/prefix-runtime.42217a82c75796c8.bundle.js.map rename to _static/prefix-runtime.991c135ccf182bf5.bundle.js.map index ee83d7f..14a7d43 --- a/_static/prefix-runtime.42217a82c75796c8.bundle.js.map +++ b/_static/prefix-runtime.991c135ccf182bf5.bundle.js.map @@ -1 +1 @@ -{"version":3,"file":"prefix-runtime.42217a82c75796c8.bundle.js","mappings":"uBAAIA,ECAAC,EACAC,ECwCAC,EASAC,E,KCjDAC,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBE,IAAjBD,EACH,OAAOA,EAAaE,QAGrB,IAAIC,EAASN,EAAyBE,GAAY,CACjDK,GAAIL,EACJM,QAAQ,EACRH,QAAS,CAAC,GAUX,OANAI,EAAoBP,GAAUQ,KAAKJ,EAAOD,QAASC,EAAQA,EAAOD,QAASJ,GAG3EK,EAAOE,QAAS,EAGTF,EAAOD,OACf,CAGAJ,EAAoBU,EAAIF,EH5BpBd,EAAW,GACfM,EAAoBW,EAAI,CAACC,EAAQC,EAAUC,EAAIC,KAC9C,IAAGF,EAAH,CAMA,IAAIG,EAAeC,IACnB,IAASC,EAAI,EAAGA,EAAIxB,EAASyB,OAAQD,IAAK,CAGzC,IAFA,IAAKL,EAAUC,EAAIC,GAAYrB,EAASwB,GACpCE,GAAY,EACPC,EAAI,EAAGA,EAAIR,EAASM,OAAQE,MACpB,EAAXN,GAAsBC,GAAgBD,IAAaO,OAAOC,KAAKvB,EAAoBW,GAAGa,OAAOC,GAASzB,EAAoBW,EAAEc,GAAKZ,EAASQ,MAC9IR,EAASa,OAAOL,IAAK,IAErBD,GAAY,EACTL,EAAWC,IAAcA,EAAeD,IAG7C,GAAGK,EAAW,CACb1B,EAASgC,OAAOR,IAAK,GACrB,IAAIS,EAAIb,SACEX,IAANwB,IAAiBf,EAASe,EAC/B,CACD,CACA,OAAOf,CAnBP,CAJCG,EAAWA,GAAY,EACvB,IAAI,IAAIG,EAAIxB,EAASyB,OAAQD,EAAI,GAAKxB,EAASwB,EAAI,GAAG,GAAKH,EAAUG,IAAKxB,EAASwB,GAAKxB,EAASwB,EAAI,GACrGxB,EAASwB,GAAK,CAACL,EAAUC,EAAIC,EAqBjB,EIzBdf,EAAoB4B,EAAKvB,IACxB,IAAIwB,EAASxB,GAAUA,EAAOyB,WAC7B,IAAOzB,EAAiB,QACxB,IAAM,EAEP,OADAL,EAAoB+B,EAAEF,EAAQ,CAAEG,EAAGH,IAC5BA,CAAM,ECLd7B,EAAoB+B,EAAI,CAAC3B,EAAS6B,KACjC,IAAI,IAAIR,KAAOQ,EACXjC,EAAoBkC,EAAED,EAAYR,KAASzB,EAAoBkC,EAAE9B,EAASqB,IAC5EH,OAAOa,eAAe/B,EAASqB,EAAK,CAAEW,YAAY,EAAMC,IAAKJ,EAAWR,IAE1E,ECNDzB,EAAoBsC,EAAI,CAAC,EAGzBtC,EAAoBuC,EAAKC,GACjBC,QAAQC,IAAIpB,OAAOC,KAAKvB,EAAoBsC,GAAGK,QAAO,CAACC,EAAUnB,KACvEzB,EAAoBsC,EAAEb,GAAKe,EAASI,GAC7BA,IACL,KCNJ5C,EAAoB6C,EAAKL,GAEZA,EAAU,IAAM,CAAC,GAAK,mBAAmB,GAAK,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,oBAAoBA,GAAW,MCFr8BxC,EAAoB8C,SAAYN,GAExB,UAAYA,EAAU,IAAM,CAAC,GAAK,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,mBAAmB,IAAM,oBAAoBA,GAAW,OCH/mBxC,EAAoB+C,EAAI,WACvB,GAA0B,iBAAfC,WAAyB,OAAOA,WAC3C,IACC,OAAOC,MAAQ,IAAIC,SAAS,cAAb,EAChB,CAAE,MAAOX,GACR,GAAsB,iBAAXY,OAAqB,OAAOA,MACxC,CACA,CAPuB,GCAxBnD,EAAoBkC,EAAI,CAACkB,EAAKC,IAAU/B,OAAOgC,UAAUC,eAAe9C,KAAK2C,EAAKC,GTA9E1D,EAAa,CAAC,EACdC,EAAoB,iBAExBI,EAAoBwD,EAAI,CAACC,EAAKC,EAAMjC,EAAKe,KACxC,GAAG7C,EAAW8D,GAAQ9D,EAAW8D,GAAKE,KAAKD,OAA3C,CACA,IAAIE,EAAQC,EACZ,QAAW1D,IAARsB,EAEF,IADA,IAAIqC,EAAUC,SAASC,qBAAqB,UACpC9C,EAAI,EAAGA,EAAI4C,EAAQ3C,OAAQD,IAAK,CACvC,IAAI+C,EAAIH,EAAQ5C,GAChB,GAAG+C,EAAEC,aAAa,QAAUT,GAAOQ,EAAEC,aAAa,iBAAmBtE,EAAoB6B,EAAK,CAAEmC,EAASK,EAAG,KAAO,CACpH,CAEGL,IACHC,GAAa,GACbD,EAASG,SAASI,cAAc,WAEzBC,QAAU,QACjBR,EAAOS,QAAU,IACbrE,EAAoBsE,IACvBV,EAAOW,aAAa,QAASvE,EAAoBsE,IAElDV,EAAOW,aAAa,eAAgB3E,EAAoB6B,GAExDmC,EAAOY,IAAMf,GAEd9D,EAAW8D,GAAO,CAACC,GACnB,IAAIe,EAAmB,CAACC,EAAMC,KAE7Bf,EAAOgB,QAAUhB,EAAOiB,OAAS,KACjCC,aAAaT,GACb,IAAIU,EAAUpF,EAAW8D,GAIzB,UAHO9D,EAAW8D,GAClBG,EAAOoB,YAAcpB,EAAOoB,WAAWC,YAAYrB,GACnDmB,GAAWA,EAAQG,SAASpE,GAAQA,EAAG6D,KACpCD,EAAM,OAAOA,EAAKC,EAAM,EAExBN,EAAUc,WAAWV,EAAiBW,KAAK,UAAMjF,EAAW,CAAEkF,KAAM,UAAWC,OAAQ1B,IAAW,MACtGA,EAAOgB,QAAUH,EAAiBW,KAAK,KAAMxB,EAAOgB,SACpDhB,EAAOiB,OAASJ,EAAiBW,KAAK,KAAMxB,EAAOiB,QACnDhB,GAAcE,SAASwB,KAAKC,YAAY5B,EApCkB,CAoCX,EUvChD5D,EAAoB2B,EAAKvB,IACH,oBAAXqF,QAA0BA,OAAOC,aAC1CpE,OAAOa,eAAe/B,EAASqF,OAAOC,YAAa,CAAEC,MAAO,WAE7DrE,OAAOa,eAAe/B,EAAS,aAAc,CAAEuF,OAAO,GAAO,ECL9D3F,EAAoB4F,IAAOvF,IAC1BA,EAAOwF,MAAQ,GACVxF,EAAOyF,WAAUzF,EAAOyF,SAAW,IACjCzF,G,MCHR,IAAI0F,EACA/F,EAAoB+C,EAAEiD,gBAAeD,EAAY/F,EAAoB+C,EAAEkD,SAAW,IACtF,IAAIlC,EAAW/D,EAAoB+C,EAAEgB,SACrC,IAAKgC,GAAahC,IACbA,EAASmC,eAAkE,WAAjDnC,EAASmC,cAAcC,QAAQC,gBAC5DL,EAAYhC,EAASmC,cAAc1B,MAC/BuB,GAAW,CACf,IAAIjC,EAAUC,EAASC,qBAAqB,UAC5C,GAAGF,EAAQ3C,OAEV,IADA,IAAID,EAAI4C,EAAQ3C,OAAS,EAClBD,GAAK,KAAO6E,IAAc,aAAaM,KAAKN,KAAaA,EAAYjC,EAAQ5C,KAAKsD,GAE3F,CAID,IAAKuB,EAAW,MAAM,IAAIO,MAAM,yDAChCP,EAAYA,EAAUQ,QAAQ,SAAU,IAAIA,QAAQ,OAAQ,IAAIA,QAAQ,QAAS,IAAIA,QAAQ,YAAa,KAC1GvG,EAAoBwG,EAAIT,C,KXuBpBlG,EAAkB2C,GACd,IAAIC,SAAQ,CAACgE,EAASC,KAC5B,IAAIC,EAAO3G,EAAoB8C,SAASN,GACpCoE,EAAW5G,EAAoBwG,EAAIG,EACvC,GAlBmB,EAACA,EAAMC,KAE3B,IADA,IAAIC,EAAmB9C,SAASC,qBAAqB,QAC7C9C,EAAI,EAAGA,EAAI2F,EAAiB1F,OAAQD,IAAK,CAChD,IACI4F,GADAC,EAAMF,EAAiB3F,IACRgD,aAAa,cAAgB6C,EAAI7C,aAAa,QACjE,GAAe,eAAZ6C,EAAIC,MAAyBF,IAAaH,GAAQG,IAAaF,GAAW,OAAOG,CACrF,CACA,IAAIE,EAAoBlD,SAASC,qBAAqB,SACtD,IAAQ9C,EAAI,EAAGA,EAAI+F,EAAkB9F,OAAQD,IAAK,CACjD,IAAI6F,EAEJ,IADID,GADAC,EAAME,EAAkB/F,IACTgD,aAAa,gBAChByC,GAAQG,IAAaF,EAAU,OAAOG,CACvD,GAMIG,CAAeP,EAAMC,GAAW,OAAOH,IA7CrB,EAACjE,EAASoE,EAAUH,EAASC,KACnD,IAAIS,EAAUpD,SAASI,cAAc,QAErCgD,EAAQH,IAAM,aACdG,EAAQ9B,KAAO,WAiBf8B,EAAQvC,QAAUuC,EAAQtC,OAhBJF,IAGrB,GADAwC,EAAQvC,QAAUuC,EAAQtC,OAAS,KAChB,SAAfF,EAAMU,KACToB,QACM,CACN,IAAIW,EAAYzC,IAAyB,SAAfA,EAAMU,KAAkB,UAAYV,EAAMU,MAChEgC,EAAW1C,GAASA,EAAMW,QAAUX,EAAMW,OAAOqB,MAAQC,EACzDU,EAAM,IAAIhB,MAAM,qBAAuB9D,EAAU,cAAgB6E,EAAW,KAChFC,EAAIC,KAAO,wBACXD,EAAIjC,KAAO+B,EACXE,EAAIE,QAAUH,EACdF,EAAQnC,WAAWC,YAAYkC,GAC/BT,EAAOY,EACR,GAGDH,EAAQR,KAAOC,EAEf7C,SAASwB,KAAKC,YAAY2B,EACZ,EAqBbM,CAAiBjF,EAASoE,EAAUH,EAASC,EAAO,IAIlD5G,EAAqB,CACxB,IAAK,GAGNE,EAAoBsC,EAAEoF,QAAU,CAAClF,EAASI,KAEtC9C,EAAmB0C,GAAUI,EAASe,KAAK7D,EAAmB0C,IACzB,IAAhC1C,EAAmB0C,IAFX,CAAC,GAAK,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,EAAE,IAAM,GAE/IA,IACtDI,EAASe,KAAK7D,EAAmB0C,GAAW3C,EAAe2C,GAASmF,MAAK,KACxE7H,EAAmB0C,GAAW,CAAC,IAC5BD,IAEH,aADOzC,EAAmB0C,GACpBD,CAAC,IAET,E,MY3DD,IAAIqF,EAAkB,CACrB,IAAK,GAGN5H,EAAoBsC,EAAEjB,EAAI,CAACmB,EAASI,KAElC,IAAIiF,EAAqB7H,EAAoBkC,EAAE0F,EAAiBpF,GAAWoF,EAAgBpF,QAAWrC,EACtG,GAA0B,IAAvB0H,EAGF,GAAGA,EACFjF,EAASe,KAAKkE,EAAmB,SAEjC,GAAI,iCAAiCxB,KAAK7D,GAyBnCoF,EAAgBpF,GAAW,MAzBkB,CAEnD,IAAIsF,EAAU,IAAIrF,SAAQ,CAACgE,EAASC,IAAYmB,EAAqBD,EAAgBpF,GAAW,CAACiE,EAASC,KAC1G9D,EAASe,KAAKkE,EAAmB,GAAKC,GAGtC,IAAIrE,EAAMzD,EAAoBwG,EAAIxG,EAAoB6C,EAAEL,GAEpDuF,EAAQ,IAAIzB,MAgBhBtG,EAAoBwD,EAAEC,GAfFkB,IACnB,GAAG3E,EAAoBkC,EAAE0F,EAAiBpF,KAEf,KAD1BqF,EAAqBD,EAAgBpF,MACRoF,EAAgBpF,QAAWrC,GACrD0H,GAAoB,CACtB,IAAIT,EAAYzC,IAAyB,SAAfA,EAAMU,KAAkB,UAAYV,EAAMU,MAChE2C,EAAUrD,GAASA,EAAMW,QAAUX,EAAMW,OAAOd,IACpDuD,EAAME,QAAU,iBAAmBzF,EAAU,cAAgB4E,EAAY,KAAOY,EAAU,IAC1FD,EAAMG,KAAO,iBACbH,EAAM1C,KAAO+B,EACbW,EAAMP,QAAUQ,EAChBH,EAAmB,GAAGE,EACvB,CACD,GAEwC,SAAWvF,EAASA,EAC9D,CAEF,EAWFxC,EAAoBW,EAAEU,EAAKmB,GAA0C,IAA7BoF,EAAgBpF,GAGxD,IAAI2F,EAAuB,CAACC,EAA4BC,KACvD,IAGIpI,EAAUuC,GAHT3B,EAAUyH,EAAaC,GAAWF,EAGhBnH,EAAI,EAC3B,GAAGL,EAAS2H,MAAMlI,GAAgC,IAAxBsH,EAAgBtH,KAAa,CACtD,IAAIL,KAAYqI,EACZtI,EAAoBkC,EAAEoG,EAAarI,KACrCD,EAAoBU,EAAET,GAAYqI,EAAYrI,IAGhD,GAAGsI,EAAS,IAAI3H,EAAS2H,EAAQvI,EAClC,CAEA,IADGoI,GAA4BA,EAA2BC,GACrDnH,EAAIL,EAASM,OAAQD,IACzBsB,EAAU3B,EAASK,GAChBlB,EAAoBkC,EAAE0F,EAAiBpF,IAAYoF,EAAgBpF,IACrEoF,EAAgBpF,GAAS,KAE1BoF,EAAgBpF,GAAW,EAE5B,OAAOxC,EAAoBW,EAAEC,EAAO,EAGjC6H,EAAqBC,KAAgC,0BAAIA,KAAgC,2BAAK,GAClGD,EAAmBvD,QAAQiD,EAAqB/C,KAAK,KAAM,IAC3DqD,EAAmB9E,KAAOwE,EAAqB/C,KAAK,KAAMqD,EAAmB9E,KAAKyB,KAAKqD,G","sources":["webpack://WebComponents/webpack/runtime/chunk loaded","webpack://WebComponents/webpack/runtime/load script","webpack://WebComponents/webpack/runtime/css loading","webpack://WebComponents/webpack/bootstrap","webpack://WebComponents/webpack/runtime/compat get default export","webpack://WebComponents/webpack/runtime/define property getters","webpack://WebComponents/webpack/runtime/ensure chunk","webpack://WebComponents/webpack/runtime/get javascript chunk filename","webpack://WebComponents/webpack/runtime/get mini-css chunk filename","webpack://WebComponents/webpack/runtime/global","webpack://WebComponents/webpack/runtime/hasOwnProperty shorthand","webpack://WebComponents/webpack/runtime/make namespace object","webpack://WebComponents/webpack/runtime/node module decorator","webpack://WebComponents/webpack/runtime/publicPath","webpack://WebComponents/webpack/runtime/jsonp chunk loading"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"WebComponents:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","var createStylesheet = (chunkId, fullhref, resolve, reject) => {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = (event) => {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tlinkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tdocument.head.appendChild(linkTag);\n\treturn linkTag;\n};\nvar findStylesheet = (href, fullhref) => {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = (chunkId) => {\n\treturn new Promise((resolve, reject) => {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t121: 0\n};\n\n__webpack_require__.f.miniCss = (chunkId, promises) => {\n\tvar cssChunks = {\"39\":1,\"115\":1,\"131\":1,\"168\":1,\"186\":1,\"198\":1,\"249\":1,\"294\":1,\"350\":1,\"380\":1,\"412\":1,\"442\":1,\"460\":1,\"486\":1,\"576\":1,\"580\":1,\"616\":1,\"621\":1,\"737\":1,\"819\":1,\"824\":1,\"877\":1,\"915\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(() => {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, (e) => {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \".\" + {\"28\":\"bb005543f41af5fb\",\"39\":\"dc45aaf5abca8027\",\"115\":\"648ff4b5650f4c7c\",\"126\":\"a976f62852f30b51\",\"128\":\"5bed857c54ac4e8b\",\"131\":\"ee437eeefadd750d\",\"168\":\"fe63e6dec2d06468\",\"186\":\"be52164d57f4b7e4\",\"249\":\"7ec032cf0b3ede9a\",\"296\":\"37eb8c05642d8ef9\",\"340\":\"c525bd899366c5f9\",\"357\":\"a6fa55aea0c38a63\",\"412\":\"5965503d81003593\",\"420\":\"8dae5ad08a4e52ad\",\"442\":\"f48919e396acaa18\",\"460\":\"bae9001422d7a484\",\"466\":\"4e1a3fb09520281a\",\"486\":\"78d96ffc5c65634b\",\"529\":\"115400ffea03835d\",\"566\":\"0e38ac5442cc38c2\",\"576\":\"f923ab1e9910a1be\",\"580\":\"f387819ad2e14f0a\",\"616\":\"89f80a32caf41aef\",\"625\":\"120987bdd5293ae3\",\"640\":\"cbc8d3a34deb8837\",\"662\":\"1bb5065279414751\",\"669\":\"05a3639d12541567\",\"680\":\"ec85c3ce31480628\",\"759\":\"f27ff66e7ad33076\",\"764\":\"c33a81cafe63d2b6\",\"770\":\"7bd6d39128dde910\",\"817\":\"3438cd0f1b0f98bc\",\"819\":\"3e20e27de12f3abf\",\"824\":\"4343b78afc34c12f\",\"877\":\"fc49cc812ccc4937\",\"915\":\"8f500bccc86f901d\",\"919\":\"237aced0c044e4b6\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"prefix-\" + chunkId + \".\" + {\"39\":\"89cf817b9a35aeca\",\"115\":\"83df5da0966564d5\",\"131\":\"b184379d0dc5871b\",\"168\":\"1c4deaed00ca1f5e\",\"186\":\"0d47de180767fda9\",\"198\":\"86b6b2a70a576922\",\"249\":\"6ca19da539a8ed1a\",\"294\":\"986bf74bfa4ccbd4\",\"350\":\"dbca9271f6e2dfbf\",\"380\":\"67748940131a4a84\",\"412\":\"25f3c4ff23eb9893\",\"442\":\"6ae0ea584f8e75c5\",\"460\":\"7c0b70502d117f7d\",\"486\":\"990aca82e7ba3e1c\",\"576\":\"9b1852878840651d\",\"580\":\"22958d4327b0425a\",\"616\":\"5c78f604ddad1ec0\",\"621\":\"8c109e297bdd8ce7\",\"737\":\"cf869b6ea8bfad2f\",\"819\":\"6edefe408d7482c2\",\"824\":\"271ae6cff6401ed5\",\"877\":\"fa7c46f756cd5a82\",\"915\":\"882512b642b7fffa\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/^blob:/, \"\").replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t121: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(!/^([16]21|198|294|350|380|737)$/.test(chunkId)) {\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkWebComponents\"] = self[\"webpackChunkWebComponents\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));"],"names":["deferred","inProgress","dataWebpackPrefix","loadStylesheet","installedCssChunks","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","id","loaded","__webpack_modules__","call","m","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","length","fulfilled","j","Object","keys","every","key","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","f","e","chunkId","Promise","all","reduce","promises","u","miniCssF","g","globalThis","this","Function","window","obj","prop","prototype","hasOwnProperty","l","url","done","push","script","needAttach","scripts","document","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","forEach","setTimeout","bind","type","target","head","appendChild","Symbol","toStringTag","value","nmd","paths","children","scriptUrl","importScripts","location","currentScript","tagName","toUpperCase","test","Error","replace","p","resolve","reject","href","fullhref","existingLinkTags","dataHref","tag","rel","existingStyleTags","findStylesheet","linkTag","errorType","realHref","err","code","request","createStylesheet","miniCss","then","installedChunks","installedChunkData","promise","error","realSrc","message","name","webpackJsonpCallback","parentChunkLoadingFunction","data","moreModules","runtime","some","chunkLoadingGlobal","self"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"prefix-runtime.991c135ccf182bf5.bundle.js","mappings":"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","sources":["webpack://WebComponents/webpack/runtime/chunk loaded","webpack://WebComponents/webpack/runtime/load script","webpack://WebComponents/webpack/runtime/css loading","webpack://WebComponents/webpack/bootstrap","webpack://WebComponents/webpack/runtime/compat get default export","webpack://WebComponents/webpack/runtime/define property getters","webpack://WebComponents/webpack/runtime/ensure chunk","webpack://WebComponents/webpack/runtime/get javascript chunk filename","webpack://WebComponents/webpack/runtime/get mini-css chunk filename","webpack://WebComponents/webpack/runtime/global","webpack://WebComponents/webpack/runtime/hasOwnProperty shorthand","webpack://WebComponents/webpack/runtime/make namespace object","webpack://WebComponents/webpack/runtime/node module decorator","webpack://WebComponents/webpack/runtime/publicPath","webpack://WebComponents/webpack/runtime/jsonp chunk loading"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"WebComponents:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","var createStylesheet = (chunkId, fullhref, resolve, reject) => {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = (event) => {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tlinkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tdocument.head.appendChild(linkTag);\n\treturn linkTag;\n};\nvar findStylesheet = (href, fullhref) => {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = (chunkId) => {\n\treturn new Promise((resolve, reject) => {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t121: 0\n};\n\n__webpack_require__.f.miniCss = (chunkId, promises) => {\n\tvar cssChunks = {\"39\":1,\"131\":1,\"168\":1,\"186\":1,\"198\":1,\"249\":1,\"268\":1,\"294\":1,\"350\":1,\"380\":1,\"412\":1,\"442\":1,\"460\":1,\"486\":1,\"576\":1,\"580\":1,\"616\":1,\"621\":1,\"737\":1,\"824\":1,\"850\":1,\"877\":1,\"915\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(() => {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, (e) => {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \".\" + {\"28\":\"bb005543f41af5fb\",\"39\":\"dc45aaf5abca8027\",\"126\":\"a976f62852f30b51\",\"128\":\"5bed857c54ac4e8b\",\"131\":\"ee437eeefadd750d\",\"168\":\"fe63e6dec2d06468\",\"186\":\"be52164d57f4b7e4\",\"249\":\"7ec032cf0b3ede9a\",\"268\":\"0659406f2c053718\",\"296\":\"37eb8c05642d8ef9\",\"340\":\"c525bd899366c5f9\",\"357\":\"a6fa55aea0c38a63\",\"412\":\"5965503d81003593\",\"420\":\"8dae5ad08a4e52ad\",\"442\":\"f48919e396acaa18\",\"460\":\"bae9001422d7a484\",\"466\":\"4e1a3fb09520281a\",\"486\":\"78d96ffc5c65634b\",\"529\":\"115400ffea03835d\",\"566\":\"0e38ac5442cc38c2\",\"576\":\"f923ab1e9910a1be\",\"580\":\"f387819ad2e14f0a\",\"616\":\"89f80a32caf41aef\",\"625\":\"120987bdd5293ae3\",\"640\":\"cbc8d3a34deb8837\",\"662\":\"1bb5065279414751\",\"669\":\"05a3639d12541567\",\"680\":\"ec85c3ce31480628\",\"759\":\"f27ff66e7ad33076\",\"764\":\"c33a81cafe63d2b6\",\"770\":\"7bd6d39128dde910\",\"817\":\"3438cd0f1b0f98bc\",\"819\":\"fa7785b520e523a5\",\"824\":\"4343b78afc34c12f\",\"877\":\"fc49cc812ccc4937\",\"915\":\"8f500bccc86f901d\",\"919\":\"237aced0c044e4b6\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"prefix-\" + chunkId + \".\" + {\"39\":\"89cf817b9a35aeca\",\"131\":\"b184379d0dc5871b\",\"168\":\"1c4deaed00ca1f5e\",\"186\":\"0d47de180767fda9\",\"198\":\"86b6b2a70a576922\",\"249\":\"6ca19da539a8ed1a\",\"268\":\"c9e33e1350d18af9\",\"294\":\"986bf74bfa4ccbd4\",\"350\":\"dbca9271f6e2dfbf\",\"380\":\"67748940131a4a84\",\"412\":\"25f3c4ff23eb9893\",\"442\":\"6ae0ea584f8e75c5\",\"460\":\"7c0b70502d117f7d\",\"486\":\"990aca82e7ba3e1c\",\"576\":\"9b1852878840651d\",\"580\":\"22958d4327b0425a\",\"616\":\"5c78f604ddad1ec0\",\"621\":\"8c109e297bdd8ce7\",\"737\":\"cf869b6ea8bfad2f\",\"824\":\"271ae6cff6401ed5\",\"850\":\"e86d03c2cec75438\",\"877\":\"fa7c46f756cd5a82\",\"915\":\"882512b642b7fffa\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript && document.currentScript.tagName.toUpperCase() === 'SCRIPT')\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/^blob:/, \"\").replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t121: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(!/^([16]21|(35|38|85)0|198|294|737)$/.test(chunkId)) {\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkWebComponents\"] = self[\"webpackChunkWebComponents\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));"],"names":["deferred","inProgress","dataWebpackPrefix","loadStylesheet","installedCssChunks","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","id","loaded","__webpack_modules__","call","m","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","length","fulfilled","j","Object","keys","every","key","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","f","e","chunkId","Promise","all","reduce","promises","u","miniCssF","g","globalThis","this","Function","window","obj","prop","prototype","hasOwnProperty","l","url","done","push","script","needAttach","scripts","document","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","forEach","setTimeout","bind","type","target","head","appendChild","Symbol","toStringTag","value","nmd","paths","children","scriptUrl","importScripts","location","currentScript","tagName","toUpperCase","test","Error","replace","p","resolve","reject","href","fullhref","existingLinkTags","dataHref","tag","rel","existingStyleTags","findStylesheet","linkTag","errorType","realHref","err","code","request","createStylesheet","miniCss","then","installedChunks","installedChunkData","promise","error","realSrc","message","name","webpackJsonpCallback","parentChunkLoadingFunction","data","moreModules","runtime","some","chunkLoadingGlobal","self"],"sourceRoot":""} \ No newline at end of file diff --git a/_static/prefix-runtime.991c135ccf182bf5.bundle.js.map.gz b/_static/prefix-runtime.991c135ccf182bf5.bundle.js.map.gz new file mode 100755 index 0000000000000000000000000000000000000000..92138fefccae76352a08c2b25f41a5f92261e6f0 GIT binary patch literal 8479 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 Ne*p>;l2hbg006;+a0&nb literal 0 HcmV?d00001 diff --git a/_static/pretext/css/print-worksheet.css b/_static/pretext/css/print-worksheet.css old mode 100644 new mode 100755 diff --git a/_static/pretext/css/print-worksheet.css.map b/_static/pretext/css/print-worksheet.css.map old mode 100644 new mode 100755 index eb34a79..16fd9b4 --- a/_static/pretext/css/print-worksheet.css.map +++ b/_static/pretext/css/print-worksheet.css.map @@ -1,7 +1,7 @@ { "version": 3, - "sources": ["/root/.ptx/2.32.0/core/css/targets/print-worksheet.scss", "/root/.ptx/2.32.0/core/css/targets/../../fonts/_fonts-google.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/chunks/_asides-basic.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/chunks/_asides-floating.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/chunks/_codelike.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/helpers/_cols.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/chunks/_exercises.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/chunks/_solutions.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/chunks/_sidebyside.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/chunks/helpers/_inline-heading-mixin.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/chunks/_discussion-inline.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/chunks/_knowls.scss", "/root/.ptx/2.32.0/core/css/targets/_chunks-worksheet.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/_spacing.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_list-styles.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_description-lists.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_lists.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_fillin.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_headings.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_links.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_tables.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_front-matter.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_summary-links.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_footnotes.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_index.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_media.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_figures.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_poem.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_prism.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_math.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_permalinks.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/elements/_misc-content.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/_printing.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/_worksheet.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/_google-search.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/_pretext-search.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/helpers/_buttons-default.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/interactives/_runestone.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/interactives/_webwork.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/interactives/_sagecell.scss", "/root/.ptx/2.32.0/core/css/targets/../../components/interactives/_calculators.scss", "/root/.ptx/2.32.0/core/css/targets/../../colors/_color-vars.scss", "/root/.ptx/2.32.0/core/css/targets/../../colors/_color-helpers.scss"], - "sourcesContent": ["/*! Theme: print-worksheet */\n\n// Used for print versions of worksheets (including their previews) for all themes\n\n// File is only included in standalone printable worksheet pages (the print preview pages).\n// Most rules apply to both screen and print; rules at the bottom of the file split into these two cases.\n\n// Also see:\n// components/_printing.scss : base rules for printing a standard PreTeXt page - removes UI\n// components/_worksheet.scss : rules that apply to worksheets in context and in print/preview.\n\n// Current maintainer: Oscar Levin\n\n// ---------------------------------------------\n// Grouping containers - based off of those in default-modern\n@use 'chunks-worksheet' with ($border-radius: 0);\n\n// Bring in the standard PreTeXt styles for components\n@use 'components/pretext';\n\n// Use underline style headings\n//@use 'components/elements/extras/heading-underlines';\n\n// Make sure fonts are available\n@use 'fonts/fonts-google';\n\n// For the print button\n@use 'components/helpers/buttons-default' as buttons;\n\n\n// Make sure we are including the root colors using simple black-and-white palette\n@use \"colors/color-helpers\" as colorHelpers;\n@use 'colors/palette-single' as palette with (\n $primary-color: black,\n);\n\n// render the actual colors\n@include colorHelpers.set-root-colors(palette.$colors);\n\n// ---------------------------------------------\n// concrete rules / includes that generate CSS\n\n// Set variables for default width and margins\n:root {\n --ws-width: 8.5in; // Default width for worksheets\n --ws-height: 11in; // Default height for worksheets\n --ws-top-margin: 40px; // Default top margin for worksheets\n --ws-right-margin: 55px; // Default right margin for worksheets\n --ws-bottom-margin: 45px; // Default bottom margin for worksheets\n --ws-left-margin: 45px; // Default left margin for worksheets\n\n --ws-content-width: calc(var(--ws-width) - var(--ws-right-margin) - var(--ws-left-margin));\n --ws-content-height: calc(var(--ws-height) - var(--ws-top-margin) - var(--ws-bottom-margin));\n}\n\n\n\n\n// Remove surrounding UI elements\n .pretext .ptx-masthead,\n .pretext .ptx-navbar,\n body.pretext > a.assistive,\n .pretext .ptx-page > .ptx-sidebar,\n .pretext .ptx-page-footer,\n .pretext .ptx-main > div.ptx-content-footer {\n display:none;\n }\n\n // Remove the print preview link\n.heading .print-links {\n display: none;\n}\n\n .autopermalink {\n display: none;\n}\n\n// Some elements don't make sense to print:\n// image descriptions\n// webwork \"activate\" buttons\n// buttons in general (to remove Runestone \"Check Me\" button)\n// We remove these here.\ndetails.image-description,\n.ptx-content .webwork-button,\n.ptx-runestone-container button.btn {\n display: none;\n}\n\n\n// Set font appropriate for printing\nsection.worksheet, section.handout {\n font-size: 11pt;\n font-family: var(--font-print);\n}\n\n// .onepage is the common class that wraps all content in a single worksheet page (often modified by the javascript)\n .onepage > .heading {\n margin-top: 0;\n font-size: 1.3em;\n}\n\n.onepage .instructions {\n display: none;\n}\n\n\n// Try to make an open solution knowl look less strange. Eventually the print version of worksheets should create HTML that isn't a details element.\nsummary::marker {\n content: \"\";\n}\n\nsummary {\n font-weight: bolder;\n display: inline;\n}\n\n.knowl__content {\n display: inline;\n margin: unset;\n border: none;\n padding: 3px 0;\n background-color: unset;\n}\n\n.knowl__link {\n all: unset\n}\n\n.code-inline {\n border: unset;\n background: unset;\n}\n\n.onepage article {\n padding-left: 0;\n border: none;\n}\n\n.onepage article::after {\n all: unset;\n}\n\n.onepage > .para:first-child,\n.onepage > article:first-child {\n margin-top: 0;\n}\n\n\n// Some headings have larger top-margins than their parent section, so we fix that here.\n.onepage > section > .heading {\n margin-top: 0;\n}\n\n// tasks might be \"free-floating\" articles, in which case they should get the same indenting as tasks inside exercises.\n section article.task {\n margin-left: 20px;\n}\n\nsection.worksheet > .heading, section.handout > .heading {\n display: inline;\n font-size: 1.1em;\n}\n\nsection.worksheet > .heading + .para, section.handout > .heading + .para {\n display: inline;\n}\n\n.introduction, .conclusion {\n > .heading {\n font-size: 1.1em;\n font-weight: bold;\n margin-bottom: 0;\n border-bottom: none;\n + .para {\n margin-top: 0.5em;\n }\n }\n}\n\nform.papersize-select {\n padding-bottom: 8px;\n}\n\n\n\n\n// Screen specific styles (mostly for showing the border around a worksheet with it's \"margins\" and for the print controls)\n@media screen {\n .ptx-main {\n max-width: var(--ws-width);\n margin: 50px auto;\n }\n\n .worksheet, .handout {\n max-width: var(--ws-width);\n margin: 0 auto;\n }\n\n .onepage {\n width: 100%;\n height: var(--ws-height);\n padding: var(--ws-top-margin) var(--ws-right-margin) var(--ws-bottom-margin) var(--ws-left-margin);\n box-shadow: 5px 10px 40px -10px;\n }\n\n // Set space between pages\n .onepage + .onepage {\n margin-top: 2.5em;\n }\n\n\n .workspace-container {\n display: flex;\n overflow: visible;\n }\n\n .workspace {\n width: 100%;\n }\n\n .highlight-workspace .onepage .workspace {\n border: 1px dashed grey;\n background: hsl(224, 100%, 95%);\n }\n\n // Normally, the .workspace.original is hidden in the print preview, but if the highlight-workspace checkbox is checked, it will be shown.\n .onepage .original-workspace {\n display: none;\n }\n\n .highlight-workspace .onepage .original-workspace {\n display:block;\n width: 10px;\n background: hsl(152, 29%, 65%);\n }\n\n .highlight-workspace .onepage .warning {\n background: hsl(36, 65%, 67%);\n }\n\n .print-button {\n @include buttons.ptx-button;\n }\n\n .papersize-select {\n z-index: 1;\n .name::after {\n content: \": \";\n }\n }\n\n .print-controls {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding-bottom: 1em;\n }\n}\n\n\n\n// Print specific styles\n@media print {\n body {\n margin: 0;\n padding: 0;\n width: var(--ws-content-width);\n }\n\n .print-preview-header {\n display: none;\n }\n\n section.worksheet, section.handout {\n border: none;\n width: 100%;\n\n .onepage {\n margin-top: 0;\n width: 100%;\n height: var(--ws-content-height);\n overflow: hidden;\n page-break-after: always;\n page-break-inside: avoid;\n }\n // Never show the workspace preview in print\n div.workspace,\n div.workspace.squashed.tight {\n border: none;\n padding: 0;\n background: none !important;\n }\n }\n\n a {\n color: black;\n }\n\n @page {\n // Note: when we allow custom margins, the javascript will need to change these defaults.\n // Default margins appear to be necessary for Firefox and Safari (Chrome already works with the variable values).\n margin: var(--ws-top-margin, 40px) var(--ws-right-margin, 55px) var(--ws-bottom-margin, 45px) var(--ws-left-margin, 45px);\n }\n}\n", "@use \"sass:map\";\n@use \"sass:string\";\n@use \"sass:list\";\n\n// Fonts to use\n$body: 'Open Sans, Helvetica Neue, Helvetica, Arial, sans-serif' !default;\n$heading: 'PT Serif, Times New Roman, Times, serif' !default;\n$monospace: 'Inconsolata, Consolas, Monaco, monospace;' !default;\n$print: 'PT Serif, Times New Roman, Times, serif' !default;\n\n@function is-variable-font($font-name) {\n $static-fonts: ('PT Serif'); // list of known static fonts used by themes\n @if list.index($font-name, $static-fonts) {\n @return false;\n }\n @return true;\n}\n\n@function generate-import($font-name) {\n @if is-variable-font($font-name) {\n @return 'https://fonts.googleapis.com/css2?family=' + $font-name + ':ital,wght@0,400..700;1,400..700&display=swap';\n }\n @else {\n @return 'https://fonts.googleapis.com/css2?family=' + $font-name + ':ital,wght@0,400;0,700;1,400;1,700&display=swap';\n }\n}\n\n// For now, only try to fetch the first name in the list and assume\n// the rest are system defined fallbacks.\n// lists are 1-indexed\n$body-font: list.nth(string.split($body, ','), 1);\n// @debug \"----------------\" $body-font;\n@import url( generate-import($body-font) );\n\n$heading-font: list.nth(string.split($heading, ','), 1);\n// generate-import($heading-font);\n@import url( generate-import($heading-font) );\n\n$monospace-font: list.nth(string.split($monospace, ','), 1);\n// generate-import($monospace-font);\n@import url( generate-import($monospace-font) );\n\n:root {\n --font-body: #{$body};\n}\n:root {\n --font-headings: #{$heading};\n}\n:root {\n --font-monospace: #{$monospace};\n}\n:root {\n --font-print: #{$print};\n}\n\n// 9/5/24 ... TODO controlled list of fonts ... wait and explore later\n// // Available fonts\n// $serif-options: ('Alegreya', 'Merriweather', 'Noto Serif', 'PT Serif', 'Source Serif 4');\n// $sans-options: ('Alegreya Sans', 'Barlow', 'Lato', 'Open Sans', 'Roboto', 'Source Sans 3');\n// $code-options: ('Inconsolata');\n\n// // Backup lists\n// $sans-backups: ', Helvetica Neue, Helvetica, Arial, sans-serif';\n// $serif-backups: ', Times New Roman, Times, serif';\n\n// // ---------------------------------------------------------\n\n\n// @function add-fonts($list, $backups, $fonts: ()) {\n// @each $font in $list {\n// $fonts: map.set($fonts, $font, (\n// url: '\"https://fonts.googleapis.com/css2?family=#{$font}:wdth,wght@75..100,300..800&display=swap\"',\n// fontlist: $font + $backups,\n// ));\n// }\n// @return $fonts;\n// }\n\n// $fonts: add-fonts($sans-options, $sans-backups);\n// $fonts: add-fonts($serif-options, $sans-backups, $fonts);\n\n// $bodyfont: map.get($fonts, $body);\n// @if not $bodyfont {\n// @error \"Unknown body font: #{$body}\";\n// } @else {\n// @import url(#{map.get($bodyfont, \"url\")});\n// :root {\n// --font-body: #{map.get($bodyfont, \"fontlist\")};\n// }\n// }\n\n// $headingfont: map.get($fonts, $heading);\n// @if not $headingfont {\n// @error \"Unknown heading font: #{$heading}\";\n// } @else {\n// @import url(#{map.get($headingfont, \"url\")});\n// :root {\n// --font-headings: #{map.get($headingfont, \"fontlist\")};\n// }\n// }\n", "$border-width: 2px !default;\n$side-margins: 30px !default;\n\n.aside-like {\n & > .knowl__link {\n color: var(--aside-like-link-color);\n border-bottom-color: var(--aside-like-link-color);\n }\n & > .knowl__content{\n margin-left: $side-margins;\n margin-right: $side-margins;\n border: $border-width solid var(--aside-like-border-color);\n background-color: var(--aside-like-body-background);\n }\n}", "$float-width: 200px !default;\n$float-offset: -248px !default;\n$min-float-width: 1280px !default;\n\n@use 'asides-basic';\n\n@media screen and (min-width: $min-float-width) {\n details.aside-like {\n position: relative;\n margin-left: $float-offset;\n width: $float-width;\n right: $float-offset;\n float: right;\n clear: right;\n }\n\n /* disable in any multicolumn list/exercisegroup */\n .multicolumn details.aside-like {\n position: relative;\n margin-left: inherit;\n width: auto;\n right: 0;\n float: none;\n clear: none;\n }\n\n details.aside-like > .knowl__content {\n margin-left:0;\n margin-right:0;\n background-color: var(--aside-like-body-background);\n z-index: 100;\n }\n}", "@mixin code-text {\n font-family: var(--font-monospace);\n background: var(--code-background);\n font-size: .93rem;\n line-height: 1.2;\n}\n\n@mixin code-inline-spacing {\n line-height: normal; //prevent extra \"padding\" based on line-height\n padding: 0.0625em .15em;\n}\n\n// wide programs need to be scrollable\n.code-box {\n overflow-x: auto;\n}\n\n.code-display {\n overflow-x: auto; //scroll if overflowing\n font-family: var(--font-monospace);\n}\n\n.console,\n.program {\n border: 1px solid var(--page-border-color);\n padding: 5px 15px;\n overflow-x: auto;\n margin: 0;\n @include code-text();\n}\n\n.code-inline {\n font-family: var(--font-monospace);\n white-space: pre;\n color: var(--body-text-color);\n background: var(--code-inline-background);\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n border-radius: 0.2em;\n display: inline-block;\n overflow-x: auto;\n max-width: 100%;\n vertical-align: middle;\n @include code-inline-spacing();\n}\n\n\n.prompt.unselectable {\n user-select: none;\n}\n\n// code blocks are preformatted text that is not a program\n.code-block {\n border-left: 1px solid #aaa;\n padding: 0 15px 5px;\n overflow-x: auto;\n background: var(--code-background);\n margin-top: 0;\n margin-bottom: 0;\n @include code-text();\n}\n\n.code-block::before {\n content:' ';\n font-size: 50%;\n border-top: 1px solid #aaa;\n display: block;\n margin-right: auto;\n margin-left: -15px;\n width: 3.0em;\n}\n\n// special handling for code-display as it appears inside .paras\n// and may need space around it\n.code-display {\n margin: 0.5em 0;\n}\n// if inside clipboardable, move margin to that container and turn some into padding\n// to help make sure clipboard icon is contained inside the code-display in dark mode\n.clipboardable:has(.code-display) {\n margin: 0.25em 0;\n\n .code-display {\n margin: 0;\n padding: 0.25em 0;\n }\n}\n\n\n.clipboardable {\n position: relative; // To anchor the code-copy button\n display: flow-root;\n\n .code-copy {\n position: absolute;\n right: 0;\n top: 0;\n opacity: 0.25;\n border-width: 0;\n background: none;\n cursor: pointer;\n z-index: 1;\n white-space-collapse: collapse;\n padding: 1px;\n scale: 0.85;\n\n &:hover {\n opacity: 0.7;\n }\n\n .checkmark {\n display: none;\n }\n\n &.copied {\n opacity: 1;\n color: mediumseagreen;\n cursor: not-allowed;\n pointer-events: none;\n\n .copyicon {\n display: none;\n }\n\n .checkmark {\n display: inline;\n }\n }\n }\n}\n\n@media print {\n .code-copy {\n display: none;\n }\n}\n", "\n// columns are arranged in row-major order to match print output in LaTeX\n:is(.cols2, .cols3, .cols4, .cols5, .cols6) {\n display: flex;\n flex-wrap: wrap;\n justify-content: start;\n}\n\n// see lists and exercises for sample use\n@mixin allow-cols($el, $col-gap: 2em) {\n @for $i from 2 through 6 {\n .cols#{$i} > #{$el} {\n // columns are a suggestion enforced by a minimum size\n // content that needs to be wider can reduce number of columns\n // in its row\n min-width: calc(100% / $i - #{$col-gap});\n width: min-content;\n margin-right: $col-gap;\n }\n }\n}\n\n", "@use '../helpers/cols';\n\n// generate multi column rules for exercises\n@include cols.allow-cols('.exercise-like');\n\n.exercise-like > .heading {\n // exercise heading/numbers regular size\n font-size: inherit;\n}\n\n.exercisegroup {\n\n .exercise-like {\n margin-top: 1em;\n }\n\n > .heading {\n font-size: 1.10em;\n line-height: 1.05em;\n margin-top: 0.75em;\n display: inline;\n\n & + .introduction {\n display: inline;\n\n & > .para:first-child {\n display: inline;\n }\n }\n }\n\n // push the actual exercises down from any possible heading/intro\n .exercisegroup-exercises {\n margin-top: 1em;\n \n //indent items with padding so cols works correctly on them\n padding-left: 40px;\n }\n\n .conclusion {\n margin-left: 40px; // match the padding of the exercisegroup-exercises\n \n .heading {\n // exercise heading/numbers regular size\n font-size: inherit;\n } \n }\n}\n\n// subtasks are indented\n.exercise-like > .exercise-like.task {\n margin-left: 20px;\n}\n\n\n\n// ---------------------------------------------------------\n// exercise-wrapper is used for WW problems\n// these rules need testing/refactoring\n\n.exercise-wrapper form button:hover {\n cursor: pointer;\n background-color: #e0e0ff;\n border: 1px solid #000;\n}\n.exercise-wrapper form button:active {\n background-color: #f0f0f0;\n}\n.exercise-wrapper form button + button {\n margin-left: 0.8em;\n}\n\n.exercise-wrapper,\n.exercise-wrapper form,\n.exercise-wrapper form > div:first-child {\n display: inline-block;\n vertical-align: top;\n width: 100%; /* for live ww to open at 100% wide */\n}\n\n.knowl .exercise-wrapper,\n.knowl .exercise-wrapper form,\n.knowl .exercise-wrapper form > div:first-child {\n width: 100%;\n}\n\n.exercise-wrapper > .para:first-child,\n.exercisegroup .exercise-wrapper > .para:first-child {\n margin-top: 0;\n display: inline;\n}\n\n/* next is related to having exercises start in-line with their exercise number,\n including when a static WW problem is made interactive */\n/* not sure this was the right way to do it */\n/* see https://opentext.uleth.ca/apex-calculus/sec_antider.html#exercise-722 */\n.heading + .exercise-wrapper {\n display: inline-block;\n max-width: 95%;\n width: 100%;\n}\n\n.cols2 .heading + .exercise-wrapper {\n width: auto;\n}\n", "// \n\n/* stacked headings in the solutions backmatter */\nsection.solutions > .heading + .heading {\n margin-top: 0.5em;\n}\n\nsection.solutions > h3.heading,\nsection.solutions section > h3.heading {\n font-size: 1.6em;\n}\n\nsection.solutions > h4.heading,\nsection.solutions section > h4.heading {\n font-size: 1.45em;\n}\n\nsection.solutions > h5.heading,\nsection.solutions section > h5.heading {\n font-size: 1.35em;\n}\n\nsection.solutions > h6.heading,\nsection.solutions section > h6.heading {\n font-size: 1.25em;\n}\n", "// Space all rows in a sbsgroup, no other styling\n.sbsgroup > *:not(:first-child)\n{\n margin-top: 1.5em;\n}\n\n\n// sidebysides get laid out into a grid with two rows. \"Plain panels\" without\n// a caption are in the first row. Panels with things like tables/figures with\n// captions we want to align are decomposed across two rows.\n// If there is no content (no captions) in a second row, it will collapse.\n\n// 1| plain panel | figure-like/table-like\n// 2| | figcaption\n.sbsrow {\n display: grid;\n grid-template-rows: auto auto;\n}\n\n.sbspanel {\n // most sbspanels are in the first row\n grid-row: 1; \n\n // tables and their captions get centered when in panels\n & > .table > figcaption {\n text-align: center;\n }\n .tabular {\n overflow-x: auto;\n margin-left: auto;\n margin-right: auto;\n }\n}\n\n\n// panel content alignment options\n.sbspanel--top {\n align-self: start;\n}\n\n.sbspanel--middle {\n align-self: center;\n}\n\n.sbspanel--bottom {\n align-self: end;\n}\n\n\n// sbspanels with figures or tables get decomposed into two rows\n// both the panel and the figure-like/table-like element should\n// be ignored by the grid layout so we can place the items inside\n// the *-like into the grid\n.sbspanel:has(.figure-like, .table-like),\n.sbspanel > :is(.figure-like, .table-like) {\n display: contents;\n}\n\n\n// first child of decomposed *-like goes to the first row\n.sbspanel > :is(.figure-like, .table-like) > *:first-child {\n grid-row: 1;\n align-items: start;\n align-self: start;\n}\n\n// and gets alignment info\n.sbspanel--top > :is(.figure-like, .table-like) > *:first-child {\n align-items: start;\n align-self: start;\n}\n\n.sbspanel--middle > :is(.figure-like, .table-like) > *:first-child {\n align-items: center;\n align-self: center;\n}\n\n.sbspanel--bottom > :is(.figure-like, .table-like) > *:first-child {\n align-items: end;\n align-self: end;\n}\n\n\n// second child of decomposed *-like goes to the second row\n.sbspanel > :is(.figure-like, .table-like) > *:nth-child(2) {\n margin-top: 0.5em;\n grid-row: 2;\n width: 100%;\n}\n\n\n// make sure content for a panel stays in the correct column\n// otherwise captions may shift left into columns that do not have\n// second row content\n@for $col from 2 through 10 {\n .sbspanel:nth-of-type(#{$col}) * {\n grid-column: #{$col};\n }\n}", "// Generate styles for an inline heading\n@mixin heading {\n & > .heading:first-child {\n display: inline;\n line-height: initial;\n border-bottom: 0; // disable underline that may come from underlined headings\n\n &:after {\n content: \"\\2009\";\n }\n\n // Following sibling also needs to be inline for heading to line up correctly\n // For now limit to logical paragraphs and introductions as they seem to cover\n // the plain text cases. Not clear we would want same treatment for other\n // kinds of content\n & + :is(.para, .para.logical, .introduction) {\n display: inline;\n // possible first child that is the actual text\n & > .para:first-child {\n display: inline;\n }\n // an introduction could have a para.logical with a para\n & > .para.logical:first-child > .para:first-child {\n display: inline;\n }\n }\n }\n}\n", "@use './helpers/inline-heading-mixin';\n\n.discussion-like {\n @include inline-heading-mixin.heading;\n & > .heading {\n ::after {\n content: \"\\2009\";\n }\n\n & + .para {\n display: inline;\n }\n\n .space,\n .codenumber,\n .period {\n display: none;\n }\n\n .type::after {\n content: \". \";\n }\n }\n}\n", "/*\n main knowls styles\n*/\n\n$border-radius: 0px !default;\n$border-width: 3px !default;\n$pad: 12px !default;\n\n.source-view__link,\n.knowl__link {\n cursor: pointer;\n margin-left: 0.1em;\n margin-right: 0.1em;\n color: var(--knowl-link-color);\n border-bottom: 1px dotted var(--knowl-link-color);\n}\n\n.source-view {\n margin: 0.5em 0;\n}\n\nsummary.source-view__link,\nsummary.knowl__link {\n display: list-item inline;\n}\n\n.source-view__link > *,\n.knowl__link > * {\n display: inline;\n}\n\n.source-view__link:is(:hover, :focus, [open]),\n.knowl__link:is(:hover, :focus, [open]) {\n background-color: var(--knowl-background);\n border-bottom-color: transparent;\n}\n\n.source-view__content {\n margin: 0.2em 0;\n}\n\n.knowl__content {\n margin: 0.75em 0; //at least this much space above/below\n border: $border-width solid var(--knowl-border-color);\n border-radius: $border-radius;\n padding: $pad;\n background-color: var(--knowl-background);\n\n .incontext {\n display: block;\n font-size: 85%;\n text-align: right;\n }\n}\n\n/* nested knowl alt colors */\n.knowl__content .knowl__content {\n background-color: var(--knowl-nested-1-background);\n}\n\n.knowl__content .knowl__content .knowl__content {\n background-color: var(--knowl-nested-2-background);\n}\n\n.knowl__content .knowl__content .knowl__content .knowl__content {\n background-color: var(--knowl-nested-3-background);\n}\n\n.knowl__content .knowl__content .knowl__content .knowl__content .knowl__content {\n background-color: var(--knowl-nested-4-background);\n}\n\n\n/* spacing tweaks inside knowls */\n.knowl__content > figure {\n margin-left: 0;\n margin-right: 0;\n}\n", "// Standard collection of chunks. This file should only be modified\n// to fix bugs or improve the default-modern theme. If you want to\n// make changes for use in some other theme, create a _chunks-XXX file\n// in that theme's directory.\n\n$border-radius: 8px !default;\n\n// One stop include for default style content blocks\n@use 'components/chunks/asides-floating';\n@use 'components/chunks/codelike';\n@use 'components/chunks/exercises';\n@use 'components/chunks/solutions';\n@use 'components/chunks/sidebyside';\n@use 'components/chunks/discussion-inline';\n@use 'components/chunks/knowls' with ($border-radius: $border-radius);\n\n@use 'components/chunks/helpers/inline-heading-mixin';\n\n\n.theorem-like,\n.definition-like,\n.example-like,\n.project-like,\n.remark-like,\n.openproblem-like,\n.computation-like,\n.assemblage-like {\n > .heading {\n display: block;\n font-size: 1.1em;\n }\n}\n\n.proof {\n padding-bottom: 1.5em;\n &::after {\n content: \"□\";\n float: right;\n }\n\n .heading {\n font-size: unset;\n font-weight: bold;\n font-style: italic;\n }\n}\n\n.solution-like {\n .heading {\n display: inline;\n font-style: italic;\n font-size: unset;\n }\n}\n\n\n .goal-like {\n border: none;\n padding: 0;\n}\n\n.goal-like > .heading {\n margin-top: -0.5em;\n padding: 0;\n margin: 0;\n font-size: 1.1em;\n}\n\n.paragraphs,\narticle {\n @include inline-heading-mixin.heading;\n}\n", "// Basic spacing for content\n\n// Breakpoint at which the navbar moves to the bottom of the screen\n$navbar-breakpoint: 800px !default;\n\n// all styling assumes border-box layout measurement\n* {\n box-sizing: border-box;\n}\n\n//----------------------------------------------------------\n// Inter item vertical spacing\n//\n// Set some baseline minimal inter-item vertical spacings\n//\n// Individual items can override this with their own margin. The\n// user of @layer here forces these rules to all have less precedence\n// than any rules not in a layer.\n// Most spacing should be done with margin-top.\n\n@layer spacing {\n // inter-item spacing high level containers\n :is(section, article, .knowl__content) > *:not(:first-child) {\n margin-top: 1.5em;\n }\n\n // but tighten up spacing slightly for adjacent paragraphs in a section\n :is(section, article, .knowl__content) > .para + .para {\n margin-top: 1em;\n }\n\n // lower-level container elements that are expected to contain sequences of items\n // tighter spacing here to avoid visually breaking up the minor container\n .ptx-content :is(ul, td, li, dd, .blockquote, .sbspanel, .para.logical) > *:not(:first-child) {\n margin-top: 0.5em;\n }\n}", "// Types of ol/ul - used by web and ebooks\n// Any spacing should be in _lists.scss, not here\n\nol.no-marker,\nul.no-marker,\nli.no-marker {\n list-style-type: none;\n}\n\nol.decimal {\n list-style-type: decimal;\n}\n\nol.lower-alpha {\n list-style-type: lower-alpha;\n}\n\n// Match LaTeX style for second level (i.e. level=\"1\") lists\nol.lower-alpha-level-1 > li::marker {\n content: \"(\"counter(list-item,lower-alpha)\") \";\n}\n\nol.upper-alpha {\n list-style-type: upper-alpha;\n}\n\nol.lower-roman {\n list-style-type: lower-roman;\n}\n\nol.upper-roman {\n list-style-type: upper-roman;\n}\n\nul.disc {\n list-style-type: disc;\n}\n\nul.square {\n list-style-type: square;\n}\n\nul.circle {\n list-style-type: circle;\n}\n", "/* dl is used for glossaries and descriptions lists.\n Glossaries are simple: bold word by itself on a line.\n Definition indented on the next line.\n Vertical space before the next term.\n\n Description lists are more complicated. The wider version\n (refering to the horizontal indentation of the definition;\n this is the default)\n has the (wrapped) term inline with the definition.\n\n The narrow version is complicated because the term is inline\n with its definition if it fits, otherwise it is on the line above.\n That means the vertical space between entries can't be handled by\n a top margin on the dt. Instead we have an ::after on the dd .\n */\n\ndl:is(.description-list, .glossary) {\n margin: 0;\n //overflow: hidden; // Removed to show permalinks\n\n dt {\n font-weight: bold;\n max-width: 55ex;\n }\n\n dd::after {\n content: \"\";\n display: block;\n clear: both;\n }\n}\n\n.para > dl:is(.description-list) {\n // add some space when inside a .para\n margin-top: 0.5em;\n margin-bottom: 0.5em;\n}\n\ndl.glossary {\n dt {\n margin-top: 1.25em;\n\n &:first-of-type {\n margin-top: 0;\n }\n }\n\n dd {\n margin-left: 5ex;\n }\n}\n\ndl.description-list {\n\n dt,\n dd {\n margin-top: 1em;\n\n &:first-of-type {\n margin-top: 0;\n }\n }\n\n dt {\n float: left;\n clear: both;\n text-align: right;\n width: 18ex;\n margin-right: 1ex;\n }\n\n dd {\n margin-left: 22ex;\n }\n\n &.narrow {\n dt {\n width: 11ex;\n }\n\n dd {\n margin-left: 15ex;\n }\n }\n\n &.wide {\n dt {\n width: 25ex;\n }\n\n dd {\n margin-left: 29ex;\n }\n }\n}\n\ndl.description-list dt:first-of-type {\n clear: none;\n}\n\n.description-list + * {\n clear: both;\n}\n\n/* where do we have nested dl? */\ndl.description-list dl dt {\n width: 8ex;\n}\n\ndl.description-list dd dd {\n margin-left: 18ex;\n}\n\ndl.description-list dl dd {\n margin-left: 12ex;\n}\n\n\n@media screen and (max-width: 480px) {\n dl.description-list dt {\n float: none;\n margin-left: 0;\n text-align: left;\n }\n\n dl.description-list dd,\n dl.description-list.narrow dd,\n dl.description-list.wide dd {\n margin-top: 0.5em;\n margin-left: 3em;\n max-width: calc(100% - 3em);\n }\n}\n", "// Entry point for ol/ul/dl web styling\n\n@use \"list-styles\";\n@use \"description-lists\";\n@use '../helpers/cols';\n\n// generate multi column rules for lists\n@include cols.allow-cols('li');\n\n// use .ptx-content to avoid styling lists in toc/header/etc...\n.ptx-content {\n ol,\n ul {\n\n ol,\n ul {\n // margin-top: 0.5em;\n }\n }\n\n li {\n margin-top: 0.5em;\n // margin-bottom: 0;\n\n // & > .para:first-child {\n // margin-top: 0;\n // }\n\n .li--heading-title {\n font-size: 100%;\n font-weight: normal;\n font-style: italic;\n }\n }\n} // .ptx-content\n\n.para > :is(ol, ul) {\n // add some space when inside a .para\n margin-top: 0.5em;\n margin-bottom: 0.5em;\n}\n\n// provide space for custom markers\nol > li {\n padding-left: 0.25em;\n}\n", "\n.fillin {\n display: inline-block;\n border: none;\n border-width: 1px;\n margin-right: 0.1em;\n margin-left: 0.1em;\n margin-bottom: -0.25em;\n\n &.underline {\n border-bottom-style: solid;\n border-width: 1px;\n }\n\n &.box {\n outline: 1px solid var(--body-text-color);\n height: 1.3em;\n }\n\n &.shade {\n background-color: var(--fillin-background-color, #eee);\n height: 1.3em;\n }\n}\n\n\n:root.dark-mode {\n --fillin-background-color: #444;\n}\n", "// headings for standard page elements - sections/articles/etc...\n// more specialized headings (exercises) should be defined in the specific component\n// complex stylizing (like boxes) should be done by \"chunks\"\n\n// reset size/margin for headings\n.heading:is(h1, h2, h3, h4, h5, h6) {\n margin: 0;\n font-size: unset;\n}\n\n.heading {\n line-height: 1.1;\n font-family: var(--font-headings);\n font-weight: 700;\n margin-top: 0;\n margin-bottom: 0;\n}\n\nsection > .heading {\n font-size: 1.75em;\n color: var(--body-title-color);\n line-height: 1.25em;\n margin-top: 2.5em;\n margin-bottom: 0.5em;\n\n // pull in any following items that default to a larger top margin\n & + * {\n margin-top: 0.5em;\n }\n}\n\n.ptx-content > section > .heading {\n //first heading on page\n margin-top: 0.5em;\n}\n\nsection section > .heading {\n font-size: 1.5em;\n margin-top: 2em;\n}\n\nsection section section > .heading {\n font-size: 1.40em;\n margin-top: 2em;\n}\n\n\narticle > .heading {\n font-size: 1.25em;\n margin-top: 1.5em;\n\n // pull in any following items that default to a larger top margin\n & + * {\n margin-top: 0.5em;\n }\n}\n\n.paragraphs > .heading {\n font-size: 1.125em;\n}\n\n// heading followed by no content and then a subsection that starts with heading\n:is(section, article) > .heading + :is(section, article) > .heading {\n margin-top: 0.5em;\n}\n\n// smaller headings on phone screens\n@media screen and (max-width: 480px) {\n section > .heading {\n font-size: 1.5em;\n line-height: 1.33em;\n margin-top: 1em;\n }\n section section > .heading {\n font-size: 1.3em;\n line-height: 1.15em;\n }\n section section section > .heading {\n font-size: 1.15em;\n line-height: 1em;\n }\n}\n\n.heading.hide-type > .type {\n display: none;\n}\n", "\n// Reset for all links\na {\n color: var(--link-text-color);\n text-decoration: none;\n\n &:hover,\n &:focus {\n text-decoration: none;\n }\n}\n\n\na[href^=\"mailto:\"] {\n white-space: pre;\n}\n\n\n// Body links. .ptx-content to avoid hitting navbar, toc, etc...\n.ptx-content {\n a.internal {\n color: var(--link-text-color);\n font-weight: bold;\n }\n a.external {\n color: var(--link-alt-text-color);\n font-weight: bold;\n }\n a.internal:hover, a.internal:hover *,\n a.internal:focus, a.internal:focus * {\n color: var(--link-active-text-color);\n background-color: var(--link-active-background);\n font-weight: bold;\n }\n a.external:hover, a.external:hover *,\n a.external:focus, a.external:focus * {\n color: var(--link-alt-active-text-color);\n background-color: var(--link-alt-active-background);\n font-weight: bold;\n }\n}\n", "// limit rules targeting basic elements to just content area\n.ptx-content {\n table {\n border-spacing: 0;\n border-collapse: collapse;\n }\n\n td {\n padding: 2px 5px;\n font-size: 90%;\n\n img {\n max-width: 200px;\n margin-right: 30px;\n }\n }\n\n th {\n padding: 2px 5px;\n }\n\n // generate alignment/border mixin classes for both th and td\n @each $cell-type in (th, td) {\n #{$cell-type} {\n .lines {\n white-space: nowrap;\n }\n\n // horizontal alignment options\n @each $class, $align in (l: left, c: center, r: right, j: justify) {\n &.#{$class} {\n text-align: $align;\n }\n }\n\n // vertical alignment options\n @each $class, $align in (t: top, b: bottom, m: middle) {\n &.#{$class} {\n vertical-align: $align;\n }\n }\n\n // border options\n @each $side, $side-symbol in (left: l, right: r, top: t, bottom: b) {\n @for $i from 0 through 3 {\n &.#{$side-symbol}#{$i} {\n @if $i ==0 {\n border-#{$side}: none;\n }\n\n @else {\n border-#{$side}: #{$i}px solid var(--body-text-color);\n }\n }\n }\n }\n }\n }\n\n\n // when cells do not have a border on left and right, add padding\n th.r0.l0,\n td.r0.l0 {\n padding-left: 0.8em;\n padding-right: 0.8em;\n }\n\n tr.header-vertical {\n th {\n writing-mode: vertical-rl;\n padding-left: 2em;\n }\n }\n\n .center {\n table {\n text-align: center;\n margin-left: auto;\n margin-right: auto;\n }\n }\n}\n\n// Rules with non-generic targeting\n\n.tabular-box {\n margin-top: 0.5em; //minimum space above to separate from figcaption\n overflow-x: auto;\n}\n\n.tabular-box.natural-width table {\n margin-left: auto;\n margin-right: auto;\n}\n\n// More specific types of tables\n\ntable.notation-list {\n tr {\n th {\n text-align: left;\n margin-left: 1em;\n }\n\n td {\n text-align: left;\n vertical-align: top;\n }\n }\n}\n\n\n\n", "// Styles for the items that are (at least generally) a part of the front matter\n// There are some pretty generic class names. Those get wrapped with a class\n// limiting their scope to the expected page\n\n.frontmatter {\n & > .heading {\n display: block;\n text-align: center;\n }\n\n & > .heading .title,\n .book > .heading .title {\n font-size: 1.3em;\n }\n\n & > .heading .subtitle,\n .book > .heading .subtitle {\n display: block;\n font-weight: normal;\n color: var(--byline-color);\n font-size: 0.875em;\n line-height: 1.42857em;\n margin-top: 0.35714em;\n }\n\n & > .para:first-of-type {\n margin-top: 4em;\n }\n\n & > .author,\n & > .credit {\n margin-top: 2em;\n text-align: center;\n }\n\n .author:first-of-type {\n margin-top: 4em;\n }\n\n & > .author .author-name {\n font-size: 120%;\n }\n\n .date {\n display: block;\n margin-top: 2em;\n text-align: center;\n }\n\n .credit .title {\n font-size: 1em;\n }\n\n .credit .author {\n font-size: 0.9em;\n margin-top: 0.75em;\n }\n\n .author-info {\n font-size: 90%;\n }\n\n .summary-links {\n margin-top: 4em;\n }\n\n .abstract {\n margin: 4em 2em;\n }\n\n .keywords, .support {\n margin-top: 2em;\n }\n\n .abstract, .keywords, .support {\n & > .title {\n font-size: 1.125em;\n font-weight: 600;\n line-height: 1.125em;\n display: inline;\n }\n\n & > .title::after {\n content: \".\\2009\\2009\\2009\";\n }\n\n & > .title + .para {\n display: inline;\n }\n }\n\n .colophon {\n .copyright {\n margin-top: 2.5em;\n }\n\n .license {\n margin-top: 2.5em;\n }\n }\n}\n", "\n/* Start of division toc links */\n// .ptx-content to override _links rules\n.ptx-content .summary-links {\n font-family: var(--font-headings);\n display: block;\n margin-top: 1em;\n\n a {\n color: var(--summary-link-text-color);\n background: var(--summary-link-background);\n font-size: 1.5em;\n line-height: 1.25em;\n padding: 10px 20px;\n padding-right: 60px;\n border-radius: 3px;\n position: relative;\n display: block;\n font-weight: unset;\n\n .title{\n font-style: normal;\n }\n\n .codenumber {\n margin-right: 0.41667em;\n }\n\n &::after {\n // triangles\n right: 0.83333em;\n content: \"\";\n position: absolute;\n top: 50%;\n margin-top: -0.4em;\n width: 0;\n height: 0;\n border-top: 0.4em solid transparent;\n border-bottom: 0.4em solid transparent;\n border-left: 0.4em solid var(--summary-link-text-color);\n }\n\n &:hover {\n color: var(--summary-link-hover-text-color);\n background: var(--summary-link-hover-background);\n\n // need to override work done in _links\n * {\n color: var(--summary-link-hover-text-color);\n background: var(--summary-link-hover-background);\n }\n .title {\n font-weight: normal;\n }\n\n &::after {\n border-left: 0.4em solid var(--summary-link-hover-text-color);\n } \n } \n }\n\n ul {\n list-style-type: none;\n padding: 0;\n margin-top: 0;\n }\n\n li {\n margin-top: 5px;\n }\n}\n\n@media screen and (width <= 480px) {\n .ptx-content .summary-links a {\n //shrink on mobile\n font-size: 100%;\n line-height: 1.25em;\n }\n}\n", "$border-radius: 0px !default;\n\n.ptx-footnote {\n display: inline-block;\n position: relative;\n}\n\n.ptx-footnote[open] {\n display: contents;\n}\n\n\n.ptx-footnote[open] .ptx-footnote__number::before {\n font-size: smaller;\n content: \"[x]\";\n visibility: visible;\n vertical-align: super;\n}\n\n.ptx-footnote[open] .ptx-footnote__number sup {\n display: none;\n}\n\n.ptx-footnote__number {\n display: inline-block;\n cursor: pointer;\n min-width: 1em; //hopefully enough space...\n}\n\n.ptx-footnote__number::marker {\n content: \"\";\n}\n\n.ptx-footnote__contents {\n display: block;\n font-style: italic;\n background: var(--knowl-background);\n border-radius: $border-radius;\n padding: 8px;\n margin: 4px auto;\n width: fit-content;\n max-width: calc(100% - 60px);\n border: 2px solid var(--knowl-border-color);\n //reset color/weight/size in case used in block that changed them\n // e.g. theorem title in denver\n color: var(--body-text-color);\n font-weight: normal;\n font-size: var(1rem);\n}\n", "\n\n/* the index at the back of the book */\n// TODO - refactor\n\n\n.navbar .indexnav {\n position: absolute;\n top: 46px;\n right: 0;\n}\n\n.mininav {\n float: left;\n padding-top: 0.7ex;\n padding-left: 1ex;\n}\n\n\n.indexjump {\n margin-left: 1.5ex;\n margin-top: 0.2ex;\n padding-top: 0;\n float: left;\n line-height: 0.95;\n}\n\n.indexjump a {\n padding-left: 2.5px;\n padding-right: 0.5px;\n width: 2.5ex;\n/*\n* * omitted, because we put a space in the source\n* padding-right: 3px;\n* */\n margin-right: -1px;\n color: inherit;\n font-size: 80%;\n text-align: center;\n}\n.indexjump a::after{\n content: \"\";\n display: inline-block;\n}\n.indexjump a:nth-of-type(14){\n padding-left: 1.8ex;\n}\n.indexjump a:last-child {\n padding-right: 10px;\n}\n\n.indexjump a:hover {\n background: var(--activated-content-bg);\n}\n\n.indexitem {\n margin-top: 4px;\n}\n\n.subindexitem {\n margin-left: 2em;\n font-size: 95%;\n margin-top: -1px;\n}\n\n.subsubindexitem {\n margin-left: 3.5em;\n font-size: 95%;\n margin-top: -1px;\n}\n\n.indexknowl {\n margin-left: 0.11em;\n}\nem + .indexknowl {\n margin-left: -0.25em;\n}\n.indexknowl a {\n margin-left: 2em;\n}\n\n.indexitem .see,\n.subindexitem .see,\n.subsubindexitem .see {\n margin-left: 1em;\n margin-right: 0;\n}\n.indexitem .seealso,\n.subindexitem .seealso,\n.subsubindexitem .seealso {\n margin-left: 1em;\n margin-right: 0;\n}\n.indexitem .see em,\n.subindexitem .see em,\n.subsubindexitem .see em,\n.indexitem .seealso em,\n.subindexitem .seealso em,\n.subsubindexitem .seealso em {\n margin-right: 0.25em;\n font-style: italic;\n}\n/* note that multiple things after \"see\" are in separate spans */\n.indexitem .see + .see,\n.subindexitem .see + .see,\n.subsubindexitem .see + .see,\n.indexitem .seealso + .seealso,\n.subindexitem .seealso + .seealso,\n.subsubindexitem .seealso + .seealso {\n margin-left: 0;\n margin-right: 0;\n}\n\n.indexitem .indexknowl {\n font-size: 90%;\n}\n\n.indexitem [data-knowl], .subindexitem [data-knowl], .indexitem [data-knowl]:hover {\n padding-right: 2px;\n padding-left: 2px;\n}\n.indexknowl [data-knowl]:hover, .indexknowl .active[data-knowl] {\n margin-left: 2em;\n}\n\n.subindexitem .indexknowl {\n font-size: 95%;\n}\n.subsubindexitem .indexknowl {\n font-size: 95%;\n}\n\n.indexletter {\n margin-top: 1.5em;\n}\n", "// ---------------------------------------------\n// containers for images, audio, video, and asymptote\n.image-box,\n.audio-box,\n.video-box,\n.asymptote-box {\n position: relative;\n}\n\n.image-box .asymptote-box iframe.asymptote,\niframe.asymptote,\n.video-box .video,\n.video-box .video-poster {\n position: absolute; top: 0; left: 0; width: 100%; height: 100%;\n}\n\n// images in containers should grow to fit space\n.image-box img,\nimg.contained {\n width: 100%;\n}\n\n// ---------------------------------------------\n// images\n.ptx-content img, .ptx-content svg {\n // for body images in dark mode, we want to be able to force a light colored background\n // as most transparent images will assume that the background is white\n background: var(--ptx-image-bg);\n}\n// but mermaid svg should always have a transparent background\n.mermaid > svg {\n background: none;\n}\n\n.image-description {\n summary {\n list-style: none; // no marker\n cursor: pointer;\n }\n}\n\n// download links after an image\n.image-archive {\n margin: 0.75em auto 0;\n font-family: var(--font-monospace);\n justify-content: center;\n display: flex;\n gap: 0.5em;\n}\n\n// TODO - refactor mag_popup JS and CSS\n// was .ptx-content .image-box > img:not(.draw_on_me):not(.mag_popup)\n.image-box > img:not(.mag_popup) {\n cursor: zoom-in;\n}\n\nimg.mag_popup {\n border: 1px solid #666;\n box-shadow: 4px 6px 4px #999;\n cursor: zoom-out;\n}\n\n.mag_popup_container {\n width:100%;\n position:absolute;\n z-index:1001;\n overflow-x: visible;\n}\n\n// ---------------------------------------------\n// other\n.audio {\n width: 100%;\n}\n\n.video-poster {\n cursor: pointer;\n}\n", "figure {\n clear: both;\n position: relative;\n\n // override browser margins\n margin-left: 0;\n margin-right: 0;\n}\n\nfigcaption {\n margin-left: auto;\n margin-right: auto;\n margin-top: 0.5em;\n\n code.code-inline {\n white-space: pre;\n }\n \n .codenumber,\n .type {\n font-weight: 700;\n }\n\n // add n-dashes\n .codenumber::after,\n .type:last-of-type::after {\n content: \"\\2002\";\n }\n\n // make sure first para comes right after title\n .para:first-of-type {\n display: inline;\n }\n}\n\n// tables are inset\nfigure.table-like {\n margin-left: 30px;\n margin-right: 30px;\n\n // but lists can go full right\n .list {\n margin-right: 0;\n }\n}\n\n@media (max-width <= 943px){\n .figure-like {\n overflow-x: auto;\n }\n}\n", "/* style for poems */\n.poem {\n display: table;\n margin: 0 auto;\n width: auto;\n max-width: 90%;\n}\n\n.poem > .heading {\n display: block;\n text-align: center;\n}\n\nsection article.poem > .heading::after {\n content: \"\";\n}\n\n.poem > .heading > .title {\n font-weight: bold;\n font-size: 1.2em;\n line-height: 1.2em;\n}\n\n.poem .author {\n font-style: italic;\n margin-top: 0.75em;\n}\n\n.poem .author.left {\n text-align: left;\n}\n\n.poem .author.center {\n text-align: center;\n}\n\n.poem .author.right {\n text-align: right;\n}\n\n.poem .stanza > .heading {\n text-align: center;\n font-weight: bold;\n font-size: 1em;\n line-height: 1em;\n}\n\n.poem .stanza + .stanza {\n margin-top: 1em;\n}\n\n.poem .heading + .stanza {\n margin-top: 0.2em;\n}\n\n.poem .heading + .line {\n margin-top: 0.2em;\n}\n\n.poem .line.left {\n text-align: left;\n margin-left: 4em;\n text-indent: -4em;\n}\n\n.poem .line.center {\n text-align: center;\n}\n\n.poem .line.right {\n text-align: right;\n}\n\n.poem .tab {\n margin-left: 2em;\n}\n", "@use '../chunks/codelike';\n\n// Prism stylesheets built locally as default ones don't support light/dark switching\n// this is a merged version of the default and dark themes\n\n// Default prism styling\n// Blocks\npre[class*=\"language-\"] {\n margin: 0;\n overflow: auto;\n border: 1px solid #e1e1e1;\n}\n\n// Inline code\n:not(pre) > code[class*=\"language-\"] {\n padding: .1em;\n border-radius: .3em;\n white-space: normal;\n}\n\ncode[class*=\"language-\"],\npre[class*=\"language-\"] {\n color: black;\n background: #fdfdfd;\n text-shadow: none;\n font-family: var(--font-monospace);\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n word-wrap: normal;\n line-height: 1.2;\n tab-size: 4;\n hyphens: none;\n\n &.code-inline {\n // unclobber some inline code styles\n @include codelike.code-inline-spacing();\n }\n\n &::selection,\n & ::selection {\n background: #b3d4fc;\n }\n\n .token {\n \n &:is(.comment,\n .prolog,\n .doctype,\n .cdata) {\n color: #2a9716;\n }\n \n &.punctuation {\n color: #000;\n }\n \n &.namespace {\n opacity: .9;\n }\n \n &:is(.property,\n .tag,\n .boolean,\n .number,\n .constant,\n .symbol,\n .deleted) {\n color: rgb(41, 120, 15);\n }\n \n &:is(.selector,\n .attr-name,\n .string,\n .char,\n .builtin,\n .regex,\n .inserted) {\n color: #a11;\n }\n \n &:is(.operator,\n .entity,\n .url) {\n color: #000;\n background: none;\n }\n \n &:is(.atrule,\n .attr-value,\n .keyword) {\n color: #0679B7;\n }\n \n &.function,\n &.class-name {\n color: #30a;\n }\n \n &.important,\n &.variable {\n color: rgb(0, 0, 0);\n }\n \n \n &.important,\n &.bold {\n font-weight: bold;\n }\n \n &.italic {\n font-style: italic;\n }\n \n &.entity {\n cursor: help;\n }\n }\n \n // -------------------------------------------\n // Line numbers\n &.line-numbers {\n position: relative;\n padding-left: 3.8em;\n counter-reset: linenumber;\n overflow: auto;\n \n > code {\n position: relative;\n white-space: inherit\n }\n \n .line-numbers-rows {\n position: absolute;\n pointer-events: none;\n top: 0;\n font-size: 100%;\n left: -3.8em;\n width: 3em;\n letter-spacing: -1px;\n border-right: 1px solid #999;\n user-select: none\n }\n \n .line-numbers-rows > span {\n display: block;\n counter-increment: linenumber\n }\n \n .line-numbers-rows > span::before {\n content: counter(linenumber);\n color: #999;\n display: block;\n padding-right: .8em;\n text-align: right\n }\n }\n \n \n // -------------------------------------------\n // Line highlighting\n .line-highlight {\n position: absolute;\n margin-top: 4px; // tune to match padding of containing pre\n left: 0;\n right: 0;\n padding: inherit 0;\n font-size: inherit;\n background: hsla(24, 20%, 50%, 8%);\n pointer-events: none;\n line-height: inherit;\n white-space: pre\n }\n}\n\n// -------------------------------------------\n// Dark mode\n:root.dark-mode {\n \n /* Code blocks */\n pre[class*=\"language-\"] {\n border: 1px solid #3d3d3d;\n }\n \n \n // Darker styling to match Runesone's code mirror theme\n code[class*=\"language-\"],\n pre[class*=\"language-\"] {\n color: white;\n background: hsl(0, 0%, 8%);\n \n &::selection,\n & ::selection {\n background: hsl(200, 4%, 16%);\n }\n \n /* Make the tokens sit above the line highlight so the colours don't look faded. */\n .token {\n position: relative;\n z-index: 1;\n \n &:is(.comment,\n .prolog,\n .doctype,\n .cdata) {\n color: #68a950;\n }\n \n &.punctuation {\n color: white;\n opacity: 1;\n }\n \n &.namespace {\n opacity: .9;\n }\n \n &:is(.property,\n .tag,\n .boolean,\n .number,\n .constant,\n .symbol,\n .deleted) {\n color: #abc792;\n }\n \n &:is(.selector,\n .attr-name,\n .string,\n .char,\n .builtin,\n .regex,\n .inserted) {\n color: #ca9147;\n }\n \n &:is(.operator,\n .entity,\n .url) {\n color: white;\n }\n \n &:is(.atrule,\n .attr-value,\n .keyword) {\n color: #2d94fb;\n }\n \n &.function,\n &.class-name {\n color: #e3e1c2;\n }\n \n &.important,\n &.bold {\n font-weight: bold;\n }\n \n &.italic {\n font-style: italic;\n }\n \n &.entity {\n cursor: help;\n }\n \n }\n }\n \n .line-highlight {\n background: hsla(0, 0%, 33%, 10%);\n border-bottom: 1px dashed hsl(0, 0%, 33%);\n border-top: 1px dashed hsl(0, 0%, 33%);\n z-index: 0;\n }\n}\n\n@media print {\n code[class*=\"language-\"],\n pre[class*=\"language-\"] {\n .line-highlight {\n color-adjust: exact\n }\n }\n}\n", "// TODO - refactor\n\n.displaymath {\n overflow-x: auto;\n overflow-y: hidden;\n}\n\n.displaymath mjx-container[jax=\"CHTML\"][display=\"true\"] {\n margin: 0 0 0 0; // container is going to apply margin, so remove it from mjx-container\n padding-top: 2px; // Chrome sometimes clips the top 1-2 pixels of math after it has been scaled - provide room for that content\n}\n\n.process-math mjx-container svg {\n // remove the background that is normally applied to svg's by PreTeXt CSS\n // we use .process-math instead of .displaymath to get inline math as well.\n background: none;\n}\n\n// ?\n[data-knowl] > mjx-mrow .TEX-I {\n font-family: MJXZERO !important;\n font-style: normal !important;\n}\n\n/* remove this when MathJax fixes the bug that was setting the width to 0 */\n/* as in $x=0$. becomes $x=0\\text{.}$ */\n.knowl mjx-mtext > mjx-utext,\nmjx-mtext > mjx-utext {\n width: revert !important;\n}\nmjx-msup mjx-utext,\nmjx-msub mjx-utext {\n display: inline;\n}\n", "// TODO - refactor\n$opacity: 0.0 !default;\n\n/*\nSo that we can position things (like .autopermalink) absolutely wrt these items.\nAny element whose permalink should be positioned directly to the left of it\nshould be in this list.\n*/\nsection,\narticle,\nli,\nblockquote,\nfigcaption,\ndt,\n.exercisegroup,\n.discussion-like,\n.solution-like,\n.para {\n position: relative;\n}\n\n.autopermalink {\n position: absolute;\n display: inline-block;\n top: 0.5ex;\n left: -2em;\n font-size: 85%;\n // variable allows theme to set different opacities for dark/light\n opacity: var(--permalink-opacity, $opacity);\n transition: opacity 0.2s;\n margin-top: 0 !important;\n}\n\nli > .autopermalink {\n left: -3.5em;\n}\n\n.autopermalink > * {\n padding-left: 0.2em;\n padding-right: 0.2em;\n}\n\n\n// Move permalink for division titles etc a little bit lower\n.appendix > .autopermalink,\n.chapter > .autopermalink,\n.index > .autopermalink,\n.section > .autopermalink,\n.subsection > .autopermalink,\n.references > .autopermalink,\n.exercises > .autopermalink {\n top: 1.5ex;\n}\n\n// In some styles, the autopermalink for paras land right on the border line.\n// This is an attempt to fix that. TODO: find a more robust solution, maybe\n// using a variable for the left offset of paras inside blocks.\n.assemblage-like > .para > .autopermalink,\n.example-like > .para > .autopermalink,\n.example-like > .exercise-like > .autopermalink,\n.project-like > .para > .autopermalink,\n.project-like > .exercise-like > .autopermalink,\n.project-like > .exercise-like > .introduction > .para > .autopermalink,\n.project-like > .exercise-like > .conclusion > .para > .autopermalink,\n.remark-like > .para > .autopermalink {\n left: -2.9em;\n}\n\n\n.axiom-like, .example-like, .exercise-like, .solution-like, .assemblage-like, .definition-like, .remark-like, .project-like, .openproblem-like, .computation-like, .theorem-like, .proof, .case, li, dd {\n > .para:first-of-type > .autopermalink {\n display:none;\n }\n\n > .introduction > .para:first-of-type > .autopermalink {\n display:none;\n }\n}\n\n\n// Hover effects\n\n.ptx-content:has(.autopermalink:hover) .autopermalink {\n opacity: 0.2;\n}\n\n.ptx-content:has(.autopermalink:hover) .autopermalink:hover {\n opacity: 1;\n}\n\n.autopermalink:has(a:focus-visible) {\n opacity: 1;\n}\n\n.permalink-alert {\n position: absolute;\n top: -3em;\n left: 5em;\n padding: 1.5em 2em;\n background: var(--content-background);\n border: 3px solid var(--page-border-color);\n z-index: 2001;\n}\n\n\n/* when jumping to a permalink, push down so sticky navbar does not cover */\n:target {\n scroll-margin-top: 45px;\n // the \"pink flash\" when navigating to a target\n animation: target-fade 10s 1;\n}\n\n@keyframes target-fade {\n 0% { background-color: var(--activated-content-bg) }\n 100% {\n background-color: inherit;\n opacity: 1;\n }\n}\n", "\n// Miscellaneous stylized content blocks that are not complex enough\n// to warrant their own file\n\nem.alert {\n font-weight: bold;\n}\n\n.bib {\n margin-top: 0.25em;\n\n .bibitem {\n display: inline-block;\n vertical-align: top;\n width: 7%;\n margin-right: 0;\n }\n \n .bibitem + .bibentry {\n display: inline-block;\n width: 90%;\n margin-top: 0;\n }\n}\n\n\n\n.caption {\n margin-top: 10px;\n margin-left: auto;\n margin-right: auto;\n font-size: 100%;\n text-align: center;\n}\n\n\n.contributor {\n margin-top: 1.5ex;\n\n &:first-child {\n margin-top: 0em;\n }\n\n & + .para {\n margin-top: 3ex;\n }\n\n .contributor-name {\n font-variant: small-caps;\n }\n\n .contributor-info {\n font-size: 88%;\n font-style: italic;\n margin-left: 3ex;\n }\n}\n\n\n// Icon font settings\n.material-symbols-outlined {\n font-variation-settings:\n 'FILL' 0,\n 'wght' 400,\n 'GRAD' 0,\n 'opsz' 24\n}\n\n\niframe {\n margin: 0;\n border: none;\n}\n\n\n.kbdkey {\n background: #f1f1f1;\n color: #333;\n border: 1px solid #dddddd;\n border-radius: 3px;\n padding: 1px 2px 0 2px;\n vertical-align: 0.1em;\n font-size: 110%;\n line-height: 1;\n box-shadow: 2px 2px grey;\n display: inline-block;\n margin-right: 3px;\n}\n\n\n.unit,\n.quantity {\n white-space: nowrap;\n word-spacing: -0.25ex;\n margin-right: 0.125em;\n\n sub, sup {\n word-spacing: normal;\n }\n}\n\n\n.terminology {\n font-style: italic;\n font-weight: bold;\n}\n\n\n\n.times-sign {\n font-size: larger;\n vertical-align: -0.15ex;\n}\n\n\n.emphasis {\n font-style: italic;\n\n .emphasis {\n font-weight: bold;\n }\n}\n\n.definition-like .emphasis {\n font-weight: 700;\n}\narticle.theorem-like .emphasis {\n font-weight: 700;\n}\n\n.para {\n line-height: 1.35;\n}\n\n.hidden {\n display: none !important;\n}\n\n/* genus and species in italics */\n.taxon {\n font-style: italic;\n}\n\n.quote {\n padding-left: 40px;\n padding-right: 10px;\n margin-bottom: 1em;\n}\n\n.booktitle {\n font-style: oblique;\n}\n\n/* Adapted from William Hammond (attributed to David Carlisle) */\n/* \"mathjax-users\" Google Group, 2015-12-27 */\n\n.latex-logo {font-family: \"PT Serif\", \"Times New Roman\", Times, serif;}\n\n.latex-logo .A {font-size: 75%; text-transform: uppercase; vertical-align: .5ex;\n margin-left: -.48em; margin-right: -.2em;}\n\n.latex-logo .E {vertical-align:-.5ex; text-transform: uppercase;\n margin-left: -.18em; margin-right: -.12em; }\n", "// Basic rules for printing a standard PreTeXt page\n\n// Get rid of UI elements.\n// Leave margin fiddling for system print dialog.\n\n// Worksheet and handout printing is handled in print-worksheet.scss\n\n@media print {\n .pretext .ptx-masthead,\n .pretext .ptx-navbar,\n body.pretext > a.assistive,\n .pretext .ptx-page > .ptx-sidebar,\n .pretext .ptx-page-footer,\n .pretext .ptx-main > div.ptx-content-footer {\n display:none;\n }\n\n .ptx-page, .ptx-main, .ptx-main .ptx-content {\n all: unset !important;\n width: 100%;\n border: none;\n padding: 0;\n margin: 0;\n }\n\n .ptx-sagecell, .tabular, .table-like, .figure-like, .exercise-like {\n break-inside: avoid;\n }\n\n .heading {\n break-after: avoid;\n }\n\n .code-inline {\n border: unset;\n background: unset;\n }\n\n @page {\n margin: 0.75in 0.75in 0.75in 0.75in;\n }\n}\n", "// TODO refactor\n\n// Rules in this file apply to both screen and print\n// Print specific rules should go in a file in targets/print-worksheet stylesheet\n@use 'components/helpers/buttons-default' as buttons;\n\n.heading .print-links {\n float: right;\n vertical-align: bottom;\n .print-link {\n font-family: var(--font-body);\n padding: 0.1em 0.2em;\n }\n .material-symbols-outlined {\n margin-top:5pt;\n }\n}\n\n", "// TODO - refactor\n// Make conditional on use of google search???\n\n.pretext .searchwrapper {\n max-width: 900px;\n position: absolute;\n right: 0;\n bottom: 0;\n margin-bottom: 39px;\n}\n\n.pretext .searchwrapper .cse .gsc-control-cse,\n.pretext .searchwrapper .cse .gsc-control-cse input,\n.searchwrapper .gsc-control-cse {\n padding: 5px;\n}\n\n// .pretext .searchwrapper .cse .gsc-search-button input.gsc-search-button-v2,\n// .searchwrapper input.gsc-search-button-v2 {\n// padding: 2px 2px;\n// }\n\n// .pretext .searchwrapper form.gsc-search-box {\n// margin: 0;\n// }\n\n// .pretext .searchwrapper table.gsc-search-box {\n// margin: 0;\n// }\n\n// .pretext .searchwrapper .gsc-search-box-tools .gsc-search-box .gsc-input {\n// padding: 0;\n// }\n\n// .pretext .searchwrapper .gsib_a {\n// padding: 0 0 0 5px;\n// }\n\n// .pretext .searchwrapper .gsc-input-box {\n// height: 3.0ex;\n// }\n\n// .pretext .searchwrapper form.gsc-search-box {\n// font-size: 12px;\n// }\n", "\n@use 'components/helpers/buttons-default' as buttons;\n\n.searchbox {\n\n .searchwidget {\n height: 100%;\n }\n \n .searchresultsplaceholder {\n position: fixed;\n top: 5vh;\n bottom: 5vh;\n padding: 1em;\n left: max(10vw, calc(100vw - 800px) / 2);\n width: 80vw;\n max-width: 800px;\n border: 2px solid var(--body-text-color);\n background: var(--knowl-background, #eaf0f6);\n z-index: 5000;\n display: flex;\n flex-direction: column;\n }\n\n .searchresultsplaceholder article {\n width: 60%;\n margin-left: auto;\n margin-right: auto;\n font-family: sans-serif;\n }\n\n .search-results-controls {\n display: flex;\n justify-content: space-between;\n align-items: stretch;\n gap: 10px;\n margin-bottom: 1em;\n height: 35px;\n }\n\n .ptxsearch {\n flex: 1 1;\n }\n \n\n .closesearchresults {\n @include buttons.ptx-button;\n }\n\n .detailed_result {\n margin-bottom: 10px;\n }\n\n .searchresults a:hover {\n text-decoration: underline;\n background: var(--link-active-background);\n }\n\n\n .searchresults {\n padding-left: 10px;\n margin-top: 0;\n overflow-y: auto;\n flex: 1 1;\n background: var(--content-background, white);\n border: 1px solid var(--page-border-color, #ccc);\n }\n\n .searchresults:empty {\n display: none;\n }\n \n .search-result-bullet {\n list-style-type: none;\n }\n\n .search-result-score {\n display: none;\n }\n\n //result qualities\n .no_result {\n font-size: 90%;\n font-weight: 200;\n }\n\n .low_result {\n font-weight: 200;\n }\n\n .medium_result {\n font-weight: 500;\n }\n .high_result {\n font-weight: 700;\n }\n\n .searchempty {\n display: none;\n padding-left: 10px;\n padding-top: 5px;\n }\n\n .search-results-unshown-count {\n margin-top: 0.6em;\n }\n\n .search-result-clip-highlight {\n background: var(--searchresultshighlight);\n }\n\n .searchresultsbackground {\n position: fixed;\n top: 0;\n background: var(--searchresultsbackground, white);\n width: 100vw;\n height: 100%;\n left: 0;\n z-index: 4999;\n }\n\n @media screen and (max-width: 800px) {\n .searchresultsplaceholder {\n bottom: 10vh;\n }\n }\n}\n\n:root {\n --searchresultsbackground: #fff8;\n --searchresultshighlight: rgba(255, 255, 0, 50%);\n}\n\n:root.dark-mode {\n --searchresultsbackground: #0008;\n --searchresultshighlight: rgba(255, 255, 0, 15%);\n}\n", "$border-radius: 0 !default;\n\n@mixin ptx-button(\n $border-radius: $border-radius\n) {\n font: inherit;\n display: flex;\n justify-content: center;\n align-items: center;\n padding: 0 10px;\n gap: 10px;\n min-height: 34px;\n color: var(--button-text-color);\n background-color: var(--button-background);\n border-width: 1px;\n border-color: var(--button-border-color);\n border-style: solid;\n border-radius: $border-radius;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n cursor: pointer;\n\n // Disable accidental text-selection\n user-select: none;\n\n &:hover:not(.disabled) {\n color: var(--button-hover-text-color);\n background-color: var(--button-hover-background);\n }\n\n &:focus-visible {\n outline: 2px solid var(--button-text-color);\n outline-offset: -2px;\n }\n\n &.disabled {\n opacity: .4;\n cursor: not-allowed;\n }\n\n &.hidden {\n display: none;\n }\n\n &.open {\n color: var(--button-hover-text-color);\n background-color: var(--button-hover-background);\n }\n}\n\n@mixin ptx-dropdown-button {\n position: relative;\n\n .dropdown-content {\n display: none;\n position: absolute;\n background-color: var(--dropdown-background);\n min-width: 160px;\n z-index: 100;\n border: 1px solid var(--dropdown-border-color);\n right: 0;\n top: 35px;\n text-align: start;\n padding: 0;\n\n a {\n display: block;\n text-decoration: none;\n color: var(--dropdown-text-color);\n padding: 2px 8px;\n\n &:is(:hover, :focus-visible) {\n background-color: var(--dropdown-hover-background);\n color: var(--dropdown-hover-text-color);\n }\n }\n\n hr {\n color: var(--dropdown-border-color);\n margin: 4px 0;\n }\n }\n\n &:is(:hover, :focus-visible, :focus-within) {\n overflow: visible;\n\n .dropdown-content {\n display: block;\n }\n }\n}\n", "// extra specific to override Runestone margin\n.ptx-content .ptx-runestone-container .runestone {\n margin: unset;\n border-radius: 0;\n border-width: 1px;\n}\n\n// avoid label splitting into multiple lines\n.multiplechoice_section label > .para {\n display: inline;\n}\n\n// extra specific to override Runestone margin\n.ptx-content .ptx-runestone-container .ac_question { \n max-width: var(--base-content-width);\n margin: 0 auto 10px;\n}\n\n.runestone .runestone_caption {\n // caption is always just something like \"ActiveCode\" in PTX\n display: none;\n}\n\n\n/* to undo Runestone's draganddrop.css */\n.ptx-content .ptx-runestone-container .rsdraggable {\n font-size: 100%;\n}\n\n// Unsure if still needed\n/* hack for runestone */\n/* to undo Runestone's presentermode.css */\n.ptx-content .bottom {\n position: unset;\n}\n\n// override Runestone's pre formatting with these extra specific rules\n.ptx-runestone-container .runestone code,\n.ptx-runestone-container .runestone pre {\n font-size: .93rem;\n line-height: 1.2;\n font-family: var(--font-monospace);\n}\n\n// override Runestone's pre formatting with these extra specific rules\n.ptx-runestone-container code[class*=\"language-\"],\n.ptx-runestone-container pre[class*=\"language-\"] {\n color: black;\n background: #fdfdfd;\n}\n\n//Fixup datafile captions\n.runestone.datafile {\n .datafile_caption {\n background: var(--code-inline-background);\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n display: block;\n width: fit-content;\n margin: 0 auto;\n }\n img {\n margin: 0 auto;\n display: block;\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n }\n pre, textarea {\n margin: 0 auto;\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n background-color: var(--page-color);\n }\n}\n.runestone.datafile + .program {\n margin-top: 0;\n}\n\n// RS does not care what kind of element is used\n// PTX chooses to use a ul, so we will fix margins for it here instead of RS\nul[data-component=\"timedAssessment\"] {\n margin: 0;\n padding: 0;\n}\n\n:root.dark-mode {\n // Darker styling to match Runesone's code mirror theme\n .ptx-runestone-container code[class*=\"language-\"],\n .ptx-runestone-container pre[class*=\"language-\"] {\n color: white;\n background: hsl(0, 0%, 8%);\n }\n}\n", "// TODO - needs refactoring and dark mode update\n\n@use 'components/helpers/buttons-default' as buttons;\n\n/* WW problems */\n.ptx-content .wwprob table.attemptResults {\n margin-left: 2em;\n background: #efefef;\n padding: 0.2em;\n}\n\n.ptx-content .wwprob table.attemptResults + .attemptResultsSummary {\n margin-top: 1em;\n}\n\n.ptx-content .wwprob .problem-main-form {\n margin-top: 1em;\n background: #eeeeff;\n padding: 0.5em;\n}\n\n.ptx-content .wwprob td.ResultsWithoutError {\n background: #9f9;\n}\n\n.ptx-content .wwprob td.ResultsWithError {\n background: #f99;\n}\n\n.ptx-content .wwprob tr th {\n text-align: center;\n padding: 0.2em 1em 0.2em 1em;\n}\n\n.ptx-content .wwprob tr td {\n text-align: center;\n}\n\n.ptx-content .wwprob tr td:empty {\n background: #fff;\n}\n\n.ptx-content .wwprob ol,\n.ptx-content .wwprob ul {\n margin-top: 0.75em !important;\n}\n\n.ptx-content .wwprob .problem {\n background: #fdfdfd;\n}\n\n.ptx-content .wwprob .problem a {\n text-decoration: none;\n}\n\n.ptx-content .wwprob #footer {\n font-size: 70%;\n text-align: right;\n}\n\n/* interactive WeBWorK */\n\nlabel.webwork {\n display: inline-flex;\n flex-direction: column;\n}\n\nlabel.correct .status {\n background-color: #a0f0a0;\n}\n\nlabel.partly-correct .status {\n color: #ffcc66;\n}\n\nlabel.incorrect .status {\n color: #b00;\n}\n\nlabel.incorrect .status::before {\n content: \" \";\n}\n\nlabel.feedback {\n word-wrap: break-word;\n}\n\nlabel.correct .feedback {\n background-color: #00ffcc;\n}\n\nlabel.partly-correct .feedback {\n color: #ffcc66;\n}\n\nlabel.incorrect .feedback {\n color: #e07070;\n}\n\n.webwork img,\n.webwork + .knowl-output img {\n max-width: 100%;\n}\n\n// Make the default margin for items inside the exercise-wrapper similar to\n// default for items in a section\n.exercise-wrapper > *:not(:first-child) {\n margin-top: 1.5em;\n}\n\n.ptx-content .problem-buttons {\n display: flex;\n}\n\n.ptx-content .webwork-button {\n @include buttons.ptx-button;\n}\n\n//.hidden-content used to be used for knowls and got repurposed for hiding webwork contents\n// now just used by webwork\n.problem-buttons.hidden-content,\n.problem-contents.hidden-content {\n display: none;\n}\n", "// TODO - refactor\n\n.sagecell_sessionOutput pre {\n font-family: var(--font-monospace);\n}\n\n.sagecell {\n white-space: normal;\n margin-top: 1.25em;\n margin-bottom: 1.25em;\n}\n\n.sage-interact.sagecell {\n margin: 0;\n}\n\n.sagecell_evalButton {\n font-family: var(--font-body);\n font-size: 16px;\n padding: 0 0.65em;\n}\n\n.sagecell_evalButton {\n cursor: pointer;\n display: inline-block;\n vertical-align: middle;\n /* Disable accidental text-selection */\n user-select: none;\n /* Truncate overflowing text with ellipsis */\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n border-width: 1px;\n border-style: solid;\n font-weight: bold;\n border-radius: 3px;\n}\n\n.sagecell_evalButton {\n color: #383838;\n background-image: linear-gradient(#f7f7f7, #bbbbbb);\n border-color: #c4c4c4;\n}\n\n.sagecell_evalButton:hover {\n color: #181868;\n background-image: linear-gradient(#bbbbbb, #f7f7f7);\n}\n\n.sagecell_evalButton:focus,\n.sagecell_evalButton:active {\n color: #20160b;\n background-image: linear-gradient(#ff6852, #ffd7d1);\n border-color: #ff2822;\n}\n\n.sagecell .sagecell_editor {\n margin-bottom: 8px;\n}\n\n.sageanswer {\n font-family: monospace;\n white-space: pre;\n margin-left: 3em;\n margin-bottom: 2em;\n}\n\n.sageanswer .key {\n display: inline-block;\n vertical-align: top;\n margin-right: 1em;\n}\n\n.sageanswer .output {\n display: inline-block;\n vertical-align: top;\n}\n", "// GeoGebra calculator\n\n$navbar-breakpoint: 856px !default;\n\n.calculator-container {\n position: fixed;\n z-index: 100;\n bottom: 5px;\n right: 5px;\n width: 253px;\n height: 460px;\n}\n\n@media screen and (max-width: $navbar-breakpoint) {\n .calculator-container {\n //assumes navbar moves to bottom of screen\n bottom: 50px !important;\n }\n}\n", "/*\n Master list of color variables and default values.\n Variables are defined in SCSS to allow for calculation of values. They are\n then converted to CSS variables for use in the HTML so authors can, if\n need be, override them with custom CSS.\n\n Any new variable should be added to this file and either defined to another\n variable or given a reasonable default value for the red-blue default theme.\n\n Variables should be semantic, not descriptive\n i.e. --link-color, not --pretty-blue\n*/\n\n@use \"sass:map\";\n\n// ==============================================================================\n// Light theme\n\n// ==============================================================================\n// Page structures\n\n$colors: (\n // Background of page (gutters if any)\n \"page-color\": white,\n // Background of content area\n \"content-background\": white,\n // Border around content area - also possibly used for internal borders\n \"page-border-color\": #ccc,\n\n // ------------------------------------------------------------------------------\n // Banner/nav related\n\n \"doc-title-color\": #932919,\n \"byline-color\": #333,\n \"banner-background\": #fafafa,\n \"navbar-background\": #ededed,\n \"footer-background\": var(--banner-background),\n\n // ------------------------------------------------------------------------------\n // TOC related\n\n \"toc-border-color\": #666,\n \"toc-background\": var(--content-background),\n\n \"tocitem-background\": var(--toc-background),\n \"toc-text-color\": var(--body-text-color),\n\n // highlight styles are used for hover\n \"tocitem-highlight-background\": #671d12,\n \"tocitem-highlight-text-color\": white,\n \"tocitem-highlight-border-color\": var(--toc-border-color),\n \n // active styles are used for the current toc item\n \"tocitem-active-background\": #671d12,\n \"tocitem-active-text-color\": white,\n \"tocitem-active-border-color\": var(--toc-border-color),\n\n // level based colors for TOC\n // levels are not necessarily all used\n // see the toc-basics.scss for how these are determined\n \"toclevel1-background\": var(--content-background),\n \"toclevel1-text-color\": var(--toc-text-color),\n \"toclevel2-background\": var(--content-background),\n \"toclevel2-text-color\": var(--toc-text-color),\n \"toclevel3-background\": var(--content-background),\n \"toclevel3-text-color\": var(--toc-text-color),\n\n\n // ==============================================================================\n // Content\n // ==============================================================================\n\n // ------------------------------------------------------------------------------\n // Text & titles\n\n \"body-text-color\": #000,\n \"body-title-color\": #000,\n\n \"ptx-image-bg\": transparent,\n \"activated-content-bg\": rgba(241, 185, 255, 30%),\n\n \"summary-link-background\": var(--button-background),\n \"summary-link-text-color\": var(--button-text-color),\n \"summary-link-hover-background\": var(--button-hover-background),\n \"summary-link-hover-text-color\": var(--button-hover-text-color),\n\n // ------------------------------------------------------------------------------\n // Links & knowls\n\n \"link-text-color\": #2B5F82,\n \"link-background\": transparent,\n \"link-active-text-color\": var(--link-text-color),\n \"link-active-background\": #cad2e1,\n\n \"link-alt-text-color\": #A62E1C,\n \"link-alt-background\": transparent,\n \"link-alt-active-text-color\": var(--link-alt-text-color),\n \"link-alt-active-background\": #e3d1ce,\n\n \"knowl-link-color\": var(--link-text-color),\n \"knowl-background\": #f5f8ff,\n \"knowl-border-color\": #e0e9ff,\n \"knowl-nested-1-background\": #f5f5ff,\n \"knowl-nested-2-background\": #fffff5,\n \"knowl-nested-3-background\": #f5ffff,\n \"knowl-nested-4-background\": #fff5f5,\n\n // ------------------------------------------------------------------------------\n // Blocks\n\n // Fall back generic block colors:\n \"block-body-background\": var(--content-background),\n \"block-border-color\": var(--knowl-border-color),\n \"block-head-color\": var(--body-text-color),\n\n // See below for specific block types\n \n \"aside-like-link-color\": var(--link-text-color),\n\n // ------------------------------------------------------------------------------\n // Buttons & Widgets\n\n \"button-background\": #ededed,\n \"button-text-color\": #333333,\n \"button-border-color\": #ccc,\n \"button-hover-background\": #c7c7c7,\n \"button-hover-text-color\": var(--button-text-color),\n\n \"dropdown-background\": var(--content-background),\n \"dropdown-border-color\": var(--toc-border-color),\n \"dropdown-text-color\": var(--toc-text-color),\n \"dropdown-hover-background\": var(--tocitem-active-background),\n \"dropdown-hover-text-color\": var(--tocitem-active-text-color),\n\n // ------------------------------------------------------------------------------\n // Other\n \"code-background\": #fdfdfd,\n \"code-inline-background\": #ededed,\n);\n\n// ==============================================================================\n// Block types\n\n// Variables for specific block types should look like those below. In this file\n// only \"top level\" blocks from the -like families are defined. \n// Other themes/color palettes may define\n// more specific ones - see palette_quad_chunks.scss for an example.\n\n// block-types based on those in entities.ent\n$block-types: \"assemblage-like\", \"definition-like\", \"theorem-like\", \"theorem-like\", \"axiom-like\", \"remark-like\", \"computation-like\", \"openproblem-like\", \"aside-like\", \"proof-like\", \"example-like\", \"project-like\", \"goal-like\", \"solution-like\";\n// TODO - \"proof\" should probably be updated to \"proof-like\" in HTML css\n\n@each $block in $block-types {\n $colors: map.merge(\n $colors,\n (\n // define background and border, but default to generic block colors\n \"#{$block}-body-background\": var(--block-body-background),\n \"#{$block}-border-color\": var(--block-border-color),\n )\n );\n}\n", "// This file contains functions and mixins for working with colors in SCSS\n\n@use \"sass:map\";\n@use \"sass:color\";\n\n@mixin set-root-colors($colors, $dark-colors: null) {\n :root {\n color-scheme: light;\n // prevent variable leak through to dark\n &:not(.dark-mode) {\n @include scss-to-css($colors);\n }\n }\n\n @if $dark-colors {\n :root.dark-mode {\n color-scheme: dark;\n @include scss-to-css($dark-colors);\n }\n }\n}\n\n// Renders a map of SCSS variables as CSS variables\n@mixin scss-to-css($colors) {\n @each $name, $value in $colors {\n --#{$name}: #{$value};\n }\n}\n\n// Create a map of colors that blend $color with $other at $mix-amounts\n// The resulting map will have keys of the form 'color-other-10'\n// Indicating 10% of other mixed into color\n@function mixes($color, $other, $mix-amounts) {\n $result: ();\n\n @each $i in $mix-amounts {\n $result: map.set($result, '#{$color}-#{$other}-#{$i}', 'color-mix(in oklab, var(--#{$color}), #{$other} #{$i}%)');\n }\n\n @return $result;\n}\n\n$std-mixes: (1, 2, 3, 4, 5, 10, 15, 20, 25, 30, 35, 40, 50, 60, 65, 70, 75, 80, 85, 90, 95, 96, 97, 98, 99);\n\n// Creates a map of color blends for a given color\n// By default it creates blends with black, white, and gray at $std-mixes amounts\n// Mixing is done using css color-mix function so that if a theme file has the base\n// css variable overridden, the blends will be updated accordingly\n@function get-blends($color, $shades: $std-mixes, $tints: $std-mixes, $tones: $std-mixes, ) {\n $shades: mixes($color, black, $std-mixes);\n $tints: mixes($color, white, $std-mixes);\n $tones: mixes($color, gray, $std-mixes);\n\n $blends: map.merge(\n $tints,\n $shades\n );\n\n $blends: map.merge(\n $blends,\n $tones\n );\n @return $blends;\n}\n\n//--------------------------------------------------------------------------\n// https://jonnykates.medium.com/automating-colour-contrast-ratios-with-sass-e201f3b52797\n// Formula there has a typo, need parens around the sum of the three color channels\n\n@function text-contrast($color, $light: #ffffff, $dark: #000000) {\n $color-brightness: round(\n (\n (color.red($color) * 299) +\n (color.green($color) * 587) +\n (color.blue($color) * 114)\n ) / 1000\n );\n\n $light-color: round(\n (\n (color.red(#ffffff) * 299) +\n (color.green(#ffffff) * 587) +\n (color.blue(#ffffff) * 114)\n ) / 1000\n );\n\n @if abs($color-brightness) < calc($light-color / 2){\n @return $light;\n } @else {\n @return $dark;\n }\n}\n\n// @debug \"text-contrast(#7b7b55) should be #ffffff: \" text-contrast(#7b7b55);\n// @debug \"text-contrast(#9b9b70) should be #000000: \" text-contrast(#9b9b70);\n// @debug \"text-contrast(#766f7a) should be #ffffff: \" text-contrast(#766f7a);\n// @debug \"text-contrast(#70909b) should be #000000: \" text-contrast(#70909b);\n//--------------------------------------------rgb(25, 25, 24)-----------------------\n"], - "mappings": "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0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAA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", + "sources": ["c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/print-worksheet.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\fonts\\_fonts-google.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\chunks\\_asides-basic.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\chunks\\_asides-floating.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\chunks\\_codelike.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\helpers\\_cols.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\chunks\\_exercises.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\chunks\\_solutions.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\chunks\\_sidebyside.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\chunks\\helpers\\_inline-heading-mixin.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\chunks\\_discussion-inline.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\chunks\\_knowls.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/_chunks-worksheet.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\_spacing.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_list-styles.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_description-lists.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_lists.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_fillin.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_headings.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_links.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_tables.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_front-matter.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_summary-links.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_footnotes.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_index.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_media.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_figures.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_poem.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_prism.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_math.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_permalinks.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\elements\\_misc-content.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\_printing.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\_worksheet.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\_google-search.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\_pretext-search.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\helpers\\_buttons-default.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\interactives\\_runestone.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\interactives\\_webwork.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\interactives\\_sagecell.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\components\\interactives\\_calculators.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\colors\\_color-vars.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\print-worksheet/..\\..\\colors\\_color-helpers.scss"], + "sourcesContent": ["$primary-color: #386F94;\n$primary-color-dark: #5192BD;\n$provide-dark-mode: yes;\n/*! Theme: print-worksheet */\n\n// Used for print versions of worksheets (including their previews) for all themes\n\n// File is only included in standalone printable worksheet pages (the print preview pages).\n// Most rules apply to both screen and print; rules at the bottom of the file split into these two cases.\n\n// Also see:\n// components/_printing.scss : base rules for printing a standard PreTeXt page - removes UI\n// components/_worksheet.scss : rules that apply to worksheets in context and in print/preview.\n\n// Current maintainer: Oscar Levin\n\n// ---------------------------------------------\n// Grouping containers - based off of those in default-modern\n@use 'chunks-worksheet' with ($border-radius: 0);\n\n// Bring in the standard PreTeXt styles for components\n@use 'components/pretext';\n\n// Use underline style headings\n//@use 'components/elements/extras/heading-underlines';\n\n// Make sure fonts are available\n@use 'fonts/fonts-google';\n\n// For the print button\n@use 'components/helpers/buttons-default' as buttons;\n\n\n// Make sure we are including the root colors using simple black-and-white palette\n@use \"colors/color-helpers\" as colorHelpers;\n@use 'colors/palette-single' as palette with (\n $primary-color: black,\n);\n\n// render the actual colors\n@include colorHelpers.set-root-colors(palette.$colors);\n\n// ---------------------------------------------\n// concrete rules / includes that generate CSS\n\n// Set variables for default width and margins\n:root {\n --ws-width: 8.5in; // Default width for worksheets\n --ws-height: 11in; // Default height for worksheets\n --ws-top-margin: 40px; // Default top margin for worksheets\n --ws-right-margin: 55px; // Default right margin for worksheets\n --ws-bottom-margin: 45px; // Default bottom margin for worksheets\n --ws-left-margin: 45px; // Default left margin for worksheets\n\n --ws-content-width: calc(var(--ws-width) - var(--ws-right-margin) - var(--ws-left-margin));\n --ws-content-height: calc(var(--ws-height) - var(--ws-top-margin) - var(--ws-bottom-margin));\n}\n\n\n\n\n// Remove surrounding UI elements\n .pretext .ptx-masthead,\n .pretext .ptx-navbar,\n body.pretext > a.assistive,\n .pretext .ptx-page > .ptx-sidebar,\n .pretext .ptx-page-footer,\n .pretext .ptx-main > div.ptx-content-footer {\n display:none;\n }\n\n // Remove the print preview link\n.heading .print-links {\n display: none;\n}\n\n .autopermalink {\n display: none;\n}\n\n// Some elements don't make sense to print:\n// image descriptions\n// webwork \"activate\" buttons\n// buttons in general (to remove Runestone \"Check Me\" button)\n// We remove these here.\ndetails.image-description,\n.ptx-content .webwork-button,\n.ptx-runestone-container button.btn {\n display: none;\n}\n\n\n// Set font appropriate for printing\nsection.worksheet, section.handout {\n font-size: 11pt;\n font-family: var(--font-print);\n}\n\n// .onepage is the common class that wraps all content in a single worksheet page (often modified by the javascript)\n .onepage > .heading {\n margin-top: 0;\n font-size: 1.3em;\n}\n\n.onepage .instructions {\n display: none;\n}\n\n\n// Try to make an open solution knowl look less strange. Eventually the print version of worksheets should create HTML that isn't a details element.\nsummary::marker {\n content: \"\";\n}\n\nsummary {\n font-weight: bolder;\n display: inline;\n}\n\n.knowl__content {\n display: inline;\n margin: unset;\n border: none;\n padding: 3px 0;\n background-color: unset;\n}\n\n.knowl__link {\n all: unset\n}\n\n.code-inline {\n border: unset;\n background: unset;\n}\n\n.onepage article {\n padding-left: 0;\n border: none;\n}\n\n.onepage article::after {\n all: unset;\n}\n\n.onepage > .para:first-child,\n.onepage > article:first-child {\n margin-top: 0;\n}\n\n\n// Some headings have larger top-margins than their parent section, so we fix that here.\n.onepage > section > .heading {\n margin-top: 0;\n}\n\n// tasks might be \"free-floating\" articles, in which case they should get the same indenting as tasks inside exercises.\n section article.task {\n margin-left: 20px;\n}\n\nsection.worksheet > .heading, section.handout > .heading {\n display: inline;\n font-size: 1.1em;\n}\n\nsection.worksheet > .heading + .para, section.handout > .heading + .para {\n display: inline;\n}\n\n.introduction, .conclusion {\n > .heading {\n font-size: 1.1em;\n font-weight: bold;\n margin-bottom: 0;\n border-bottom: none;\n + .para {\n margin-top: 0.5em;\n }\n }\n}\n\nform.papersize-select {\n padding-bottom: 8px;\n}\n\n\n\n\n// Screen specific styles (mostly for showing the border around a worksheet with it's \"margins\" and for the print controls)\n@media screen {\n .ptx-main {\n max-width: var(--ws-width);\n margin: 50px auto;\n }\n\n .worksheet, .handout {\n max-width: var(--ws-width);\n margin: 0 auto;\n }\n\n .onepage {\n width: 100%;\n height: var(--ws-height);\n padding: var(--ws-top-margin) var(--ws-right-margin) var(--ws-bottom-margin) var(--ws-left-margin);\n box-shadow: 5px 10px 40px -10px;\n }\n\n // Set space between pages\n .onepage + .onepage {\n margin-top: 2.5em;\n }\n\n\n .workspace-container {\n display: flex;\n overflow: visible;\n }\n\n .workspace {\n width: 100%;\n }\n\n .highlight-workspace .onepage .workspace {\n border: 1px dashed grey;\n background: hsl(224, 100%, 95%);\n }\n\n // Normally, the .workspace.original is hidden in the print preview, but if the highlight-workspace checkbox is checked, it will be shown.\n .onepage .original-workspace {\n display: none;\n }\n\n .highlight-workspace .onepage .original-workspace {\n display:block;\n width: 10px;\n background: hsl(152, 29%, 65%);\n }\n\n .highlight-workspace .onepage .warning {\n background: hsl(36, 65%, 67%);\n }\n\n .print-button {\n @include buttons.ptx-button;\n }\n\n .papersize-select {\n z-index: 1;\n .name::after {\n content: \": \";\n }\n }\n\n .print-controls {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding-bottom: 1em;\n }\n}\n\n\n\n// Print specific styles\n@media print {\n body {\n margin: 0;\n padding: 0;\n width: var(--ws-content-width);\n }\n\n .print-preview-header {\n display: none;\n }\n\n section.worksheet, section.handout {\n border: none;\n width: 100%;\n\n .onepage {\n margin-top: 0;\n width: 100%;\n height: var(--ws-content-height);\n overflow: hidden;\n page-break-after: always;\n page-break-inside: avoid;\n }\n // Never show the workspace preview in print\n div.workspace,\n div.workspace.squashed.tight {\n border: none;\n padding: 0;\n background: none !important;\n }\n }\n\n a {\n color: black;\n }\n\n @page {\n // Note: when we allow custom margins, the javascript will need to change these defaults.\n // Default margins appear to be necessary for Firefox and Safari (Chrome already works with the variable values).\n margin: var(--ws-top-margin, 40px) var(--ws-right-margin, 55px) var(--ws-bottom-margin, 45px) var(--ws-left-margin, 45px);\n }\n}\n", "@use \"sass:map\";\n@use \"sass:string\";\n@use \"sass:list\";\n\n// Fonts to use\n$body: 'Open Sans, Helvetica Neue, Helvetica, Arial, sans-serif' !default;\n$heading: 'PT Serif, Times New Roman, Times, serif' !default;\n$monospace: 'Inconsolata, Consolas, Monaco, monospace;' !default;\n$print: 'PT Serif, Times New Roman, Times, serif' !default;\n\n@function is-variable-font($font-name) {\n $static-fonts: ('PT Serif'); // list of known static fonts used by themes\n @if list.index($font-name, $static-fonts) {\n @return false;\n }\n @return true;\n}\n\n@function generate-import($font-name) {\n @if is-variable-font($font-name) {\n @return 'https://fonts.googleapis.com/css2?family=' + $font-name + ':ital,wght@0,400..700;1,400..700&display=swap';\n }\n @else {\n @return 'https://fonts.googleapis.com/css2?family=' + $font-name + ':ital,wght@0,400;0,700;1,400;1,700&display=swap';\n }\n}\n\n// For now, only try to fetch the first name in the list and assume\n// the rest are system defined fallbacks.\n// lists are 1-indexed\n$body-font: list.nth(string.split($body, ','), 1);\n// @debug \"----------------\" $body-font;\n@import url( generate-import($body-font) );\n\n$heading-font: list.nth(string.split($heading, ','), 1);\n// generate-import($heading-font);\n@import url( generate-import($heading-font) );\n\n$monospace-font: list.nth(string.split($monospace, ','), 1);\n// generate-import($monospace-font);\n@import url( generate-import($monospace-font) );\n\n:root {\n --font-body: #{$body};\n}\n:root {\n --font-headings: #{$heading};\n}\n:root {\n --font-monospace: #{$monospace};\n}\n:root {\n --font-print: #{$print};\n}\n\n// 9/5/24 ... TODO controlled list of fonts ... wait and explore later\n// // Available fonts\n// $serif-options: ('Alegreya', 'Merriweather', 'Noto Serif', 'PT Serif', 'Source Serif 4');\n// $sans-options: ('Alegreya Sans', 'Barlow', 'Lato', 'Open Sans', 'Roboto', 'Source Sans 3');\n// $code-options: ('Inconsolata');\n\n// // Backup lists\n// $sans-backups: ', Helvetica Neue, Helvetica, Arial, sans-serif';\n// $serif-backups: ', Times New Roman, Times, serif';\n\n// // ---------------------------------------------------------\n\n\n// @function add-fonts($list, $backups, $fonts: ()) {\n// @each $font in $list {\n// $fonts: map.set($fonts, $font, (\n// url: '\"https://fonts.googleapis.com/css2?family=#{$font}:wdth,wght@75..100,300..800&display=swap\"',\n// fontlist: $font + $backups,\n// ));\n// }\n// @return $fonts;\n// }\n\n// $fonts: add-fonts($sans-options, $sans-backups);\n// $fonts: add-fonts($serif-options, $sans-backups, $fonts);\n\n// $bodyfont: map.get($fonts, $body);\n// @if not $bodyfont {\n// @error \"Unknown body font: #{$body}\";\n// } @else {\n// @import url(#{map.get($bodyfont, \"url\")});\n// :root {\n// --font-body: #{map.get($bodyfont, \"fontlist\")};\n// }\n// }\n\n// $headingfont: map.get($fonts, $heading);\n// @if not $headingfont {\n// @error \"Unknown heading font: #{$heading}\";\n// } @else {\n// @import url(#{map.get($headingfont, \"url\")});\n// :root {\n// --font-headings: #{map.get($headingfont, \"fontlist\")};\n// }\n// }\n", "$border-width: 2px !default;\n$side-margins: 30px !default;\n\n.aside-like {\n & > .knowl__link {\n color: var(--aside-like-link-color);\n border-bottom-color: var(--aside-like-link-color);\n }\n & > .knowl__content{\n margin-left: $side-margins;\n margin-right: $side-margins;\n border: $border-width solid var(--aside-like-border-color);\n background-color: var(--aside-like-body-background);\n }\n}", "$float-width: 200px !default;\n$float-offset: -248px !default;\n$min-float-width: 1280px !default;\n\n@use 'asides-basic';\n\n@media screen and (min-width: $min-float-width) {\n details.aside-like {\n position: relative;\n margin-left: $float-offset;\n width: $float-width;\n right: $float-offset;\n float: right;\n clear: right;\n }\n\n /* disable in any multicolumn list/exercisegroup */\n .multicolumn details.aside-like {\n position: relative;\n margin-left: inherit;\n width: auto;\n right: 0;\n float: none;\n clear: none;\n }\n\n details.aside-like > .knowl__content {\n margin-left:0;\n margin-right:0;\n background-color: var(--aside-like-body-background);\n z-index: 100;\n }\n}", "@mixin code-text {\n font-family: var(--font-monospace);\n background: var(--code-background);\n font-size: .93rem;\n line-height: 1.2;\n}\n\n@mixin code-inline-spacing {\n line-height: normal; //prevent extra \"padding\" based on line-height\n padding: 0.0625em .15em;\n}\n\n// wide programs need to be scrollable\n.code-box {\n overflow-x: auto;\n}\n\n.code-display {\n overflow-x: auto; //scroll if overflowing\n font-family: var(--font-monospace);\n}\n\n.console,\n.program {\n border: 1px solid var(--page-border-color);\n padding: 5px 15px;\n overflow-x: auto;\n margin: 0;\n @include code-text();\n}\n\n.code-inline {\n font-family: var(--font-monospace);\n white-space: pre;\n color: var(--body-text-color);\n background: var(--code-inline-background);\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n border-radius: 0.2em;\n display: inline-block;\n overflow-x: auto;\n max-width: 100%;\n vertical-align: middle;\n @include code-inline-spacing();\n}\n\n\n.prompt.unselectable {\n user-select: none;\n}\n\n// code blocks are preformatted text that is not a program\n.code-block {\n border-left: 1px solid #aaa;\n padding: 0 15px 5px;\n overflow-x: auto;\n background: var(--code-background);\n margin-top: 0;\n margin-bottom: 0;\n @include code-text();\n}\n\n.code-block::before {\n content:' ';\n font-size: 50%;\n border-top: 1px solid #aaa;\n display: block;\n margin-right: auto;\n margin-left: -15px;\n width: 3.0em;\n}\n\n// special handling for code-display as it appears inside .paras\n// and may need space around it\n.code-display {\n margin: 0.5em 0;\n}\n// if inside clipboardable, move margin to that container and turn some into padding\n// to help make sure clipboard icon is contained inside the code-display in dark mode\n.clipboardable:has(.code-display) {\n margin: 0.25em 0;\n\n .code-display {\n margin: 0;\n padding: 0.25em 0;\n }\n}\n\n\n.clipboardable {\n position: relative; // To anchor the code-copy button\n display: flow-root;\n\n .code-copy {\n position: absolute;\n right: 0;\n top: 0;\n opacity: 0.25;\n border-width: 0;\n background: none;\n cursor: pointer;\n z-index: 1;\n white-space-collapse: collapse;\n padding: 1px;\n scale: 0.85;\n\n &:hover {\n opacity: 0.7;\n }\n\n .checkmark {\n display: none;\n }\n\n &.copied {\n opacity: 1;\n color: mediumseagreen;\n cursor: not-allowed;\n pointer-events: none;\n\n .copyicon {\n display: none;\n }\n\n .checkmark {\n display: inline;\n }\n }\n }\n}\n\n@media print {\n .code-copy {\n display: none;\n }\n}\n", "\n// columns are arranged in row-major order to match print output in LaTeX\n:is(.cols2, .cols3, .cols4, .cols5, .cols6) {\n display: flex;\n flex-wrap: wrap;\n justify-content: start;\n}\n\n// see lists and exercises for sample use\n@mixin allow-cols($el, $col-gap: 2em) {\n @for $i from 2 through 6 {\n .cols#{$i} > #{$el} {\n // columns are a suggestion enforced by a minimum size\n // content that needs to be wider can reduce number of columns\n // in its row\n min-width: calc(100% / $i - #{$col-gap});\n width: min-content;\n margin-right: $col-gap;\n }\n }\n}\n\n", "@use '../helpers/cols';\n\n// generate multi column rules for exercises\n@include cols.allow-cols('.exercise-like');\n\n.exercise-like > .heading {\n // exercise heading/numbers regular size\n font-size: inherit;\n}\n\n.exercisegroup {\n\n .exercise-like {\n margin-top: 1em;\n }\n\n > .heading {\n font-size: 1.10em;\n line-height: 1.05em;\n margin-top: 0.75em;\n display: inline;\n\n & + .introduction {\n display: inline;\n\n & > .para:first-child {\n display: inline;\n }\n }\n }\n\n // push the actual exercises down from any possible heading/intro\n .exercisegroup-exercises {\n margin-top: 1em;\n \n //indent items with padding so cols works correctly on them\n padding-left: 40px;\n }\n\n .conclusion {\n margin-left: 40px; // match the padding of the exercisegroup-exercises\n \n .heading {\n // exercise heading/numbers regular size\n font-size: inherit;\n } \n }\n}\n\n// subtasks are indented\n.exercise-like > .exercise-like.task {\n margin-left: 20px;\n}\n\n\n\n// ---------------------------------------------------------\n// exercise-wrapper is used for WW problems\n// these rules need testing/refactoring\n\n.exercise-wrapper form button:hover {\n cursor: pointer;\n background-color: #e0e0ff;\n border: 1px solid #000;\n}\n.exercise-wrapper form button:active {\n background-color: #f0f0f0;\n}\n.exercise-wrapper form button + button {\n margin-left: 0.8em;\n}\n\n.exercise-wrapper,\n.exercise-wrapper form,\n.exercise-wrapper form > div:first-child {\n display: inline-block;\n vertical-align: top;\n width: 100%; /* for live ww to open at 100% wide */\n}\n\n.knowl .exercise-wrapper,\n.knowl .exercise-wrapper form,\n.knowl .exercise-wrapper form > div:first-child {\n width: 100%;\n}\n\n.exercise-wrapper > .para:first-child,\n.exercisegroup .exercise-wrapper > .para:first-child {\n margin-top: 0;\n display: inline;\n}\n\n/* next is related to having exercises start in-line with their exercise number,\n including when a static WW problem is made interactive */\n/* not sure this was the right way to do it */\n/* see https://opentext.uleth.ca/apex-calculus/sec_antider.html#exercise-722 */\n.heading + .exercise-wrapper {\n display: inline-block;\n max-width: 95%;\n width: 100%;\n}\n\n.cols2 .heading + .exercise-wrapper {\n width: auto;\n}\n", "// \n\n/* stacked headings in the solutions backmatter */\nsection.solutions > .heading + .heading {\n margin-top: 0.5em;\n}\n\nsection.solutions > h3.heading,\nsection.solutions section > h3.heading {\n font-size: 1.6em;\n}\n\nsection.solutions > h4.heading,\nsection.solutions section > h4.heading {\n font-size: 1.45em;\n}\n\nsection.solutions > h5.heading,\nsection.solutions section > h5.heading {\n font-size: 1.35em;\n}\n\nsection.solutions > h6.heading,\nsection.solutions section > h6.heading {\n font-size: 1.25em;\n}\n", "// Space all rows in a sbsgroup, no other styling\n.sbsgroup > *:not(:first-child)\n{\n margin-top: 1.5em;\n}\n\n\n// sidebysides get laid out into a grid with two rows. \"Plain panels\" without\n// a caption are in the first row. Panels with things like tables/figures with\n// captions we want to align are decomposed across two rows.\n// If there is no content (no captions) in a second row, it will collapse.\n\n// 1| plain panel | figure-like/table-like\n// 2| | figcaption\n.sbsrow {\n display: grid;\n grid-template-rows: auto auto;\n}\n\n.sbspanel {\n // most sbspanels are in the first row\n grid-row: 1; \n\n // tables and their captions get centered when in panels\n & > .table > figcaption {\n text-align: center;\n }\n .tabular {\n overflow-x: auto;\n margin-left: auto;\n margin-right: auto;\n }\n}\n\n\n// panel content alignment options\n.sbspanel--top {\n align-self: start;\n}\n\n.sbspanel--middle {\n align-self: center;\n}\n\n.sbspanel--bottom {\n align-self: end;\n}\n\n\n// sbspanels with figures or tables get decomposed into two rows\n// both the panel and the figure-like/table-like element should\n// be ignored by the grid layout so we can place the items inside\n// the *-like into the grid\n.sbspanel:has(.figure-like, .table-like),\n.sbspanel > :is(.figure-like, .table-like) {\n display: contents;\n}\n\n\n// first child of decomposed *-like goes to the first row\n.sbspanel > :is(.figure-like, .table-like) > *:first-child {\n grid-row: 1;\n align-items: start;\n align-self: start;\n}\n\n// and gets alignment info\n.sbspanel--top > :is(.figure-like, .table-like) > *:first-child {\n align-items: start;\n align-self: start;\n}\n\n.sbspanel--middle > :is(.figure-like, .table-like) > *:first-child {\n align-items: center;\n align-self: center;\n}\n\n.sbspanel--bottom > :is(.figure-like, .table-like) > *:first-child {\n align-items: end;\n align-self: end;\n}\n\n\n// second child of decomposed *-like goes to the second row\n.sbspanel > :is(.figure-like, .table-like) > *:nth-child(2) {\n margin-top: 0.5em;\n grid-row: 2;\n width: 100%;\n}\n\n\n// make sure content for a panel stays in the correct column\n// otherwise captions may shift left into columns that do not have\n// second row content\n@for $col from 2 through 10 {\n .sbspanel:nth-of-type(#{$col}) * {\n grid-column: #{$col};\n }\n}", "// Generate styles for an inline heading\n@mixin heading {\n & > .heading:first-child {\n display: inline;\n line-height: initial;\n border-bottom: 0; // disable underline that may come from underlined headings\n\n &:after {\n content: \"\\2009\";\n }\n\n // Following sibling also needs to be inline for heading to line up correctly\n // For now limit to logical paragraphs and introductions as they seem to cover\n // the plain text cases. Not clear we would want same treatment for other\n // kinds of content\n & + :is(.para, .para.logical, .introduction) {\n display: inline;\n // possible first child that is the actual text\n & > .para:first-child {\n display: inline;\n }\n // an introduction could have a para.logical with a para\n & > .para.logical:first-child > .para:first-child {\n display: inline;\n }\n }\n }\n}\n", "@use './helpers/inline-heading-mixin';\n\n.discussion-like {\n @include inline-heading-mixin.heading;\n & > .heading {\n ::after {\n content: \"\\2009\";\n }\n\n & + .para {\n display: inline;\n }\n\n .space,\n .codenumber,\n .period {\n display: none;\n }\n\n .type::after {\n content: \". \";\n }\n }\n}\n", "/*\n main knowls styles\n*/\n\n$border-radius: 0px !default;\n$border-width: 3px !default;\n$pad: 12px !default;\n\n.source-view__link,\n.knowl__link {\n cursor: pointer;\n margin-left: 0.1em;\n margin-right: 0.1em;\n color: var(--knowl-link-color);\n border-bottom: 1px dotted var(--knowl-link-color);\n}\n\n.source-view {\n margin: 0.5em 0;\n}\n\nsummary.source-view__link,\nsummary.knowl__link {\n display: list-item inline;\n}\n\n.source-view__link > *,\n.knowl__link > * {\n display: inline;\n}\n\n.source-view__link:is(:hover, :focus, [open]),\n.knowl__link:is(:hover, :focus, [open]) {\n background-color: var(--knowl-background);\n border-bottom-color: transparent;\n}\n\n.source-view__content {\n margin: 0.2em 0;\n}\n\n.knowl__content {\n margin: 0.75em 0; //at least this much space above/below\n border: $border-width solid var(--knowl-border-color);\n border-radius: $border-radius;\n padding: $pad;\n background-color: var(--knowl-background);\n\n .incontext {\n display: block;\n font-size: 85%;\n text-align: right;\n }\n}\n\n/* nested knowl alt colors */\n.knowl__content .knowl__content {\n background-color: var(--knowl-nested-1-background);\n}\n\n.knowl__content .knowl__content .knowl__content {\n background-color: var(--knowl-nested-2-background);\n}\n\n.knowl__content .knowl__content .knowl__content .knowl__content {\n background-color: var(--knowl-nested-3-background);\n}\n\n.knowl__content .knowl__content .knowl__content .knowl__content .knowl__content {\n background-color: var(--knowl-nested-4-background);\n}\n\n\n/* spacing tweaks inside knowls */\n.knowl__content > figure {\n margin-left: 0;\n margin-right: 0;\n}\n", "// Standard collection of chunks. This file should only be modified\n// to fix bugs or improve the default-modern theme. If you want to\n// make changes for use in some other theme, create a _chunks-XXX file\n// in that theme's directory.\n\n$border-radius: 8px !default;\n\n// One stop include for default style content blocks\n@use 'components/chunks/asides-floating';\n@use 'components/chunks/codelike';\n@use 'components/chunks/exercises';\n@use 'components/chunks/solutions';\n@use 'components/chunks/sidebyside';\n@use 'components/chunks/discussion-inline';\n@use 'components/chunks/knowls' with ($border-radius: $border-radius);\n\n@use 'components/chunks/helpers/inline-heading-mixin';\n\n\n.theorem-like,\n.definition-like,\n.example-like,\n.project-like,\n.remark-like,\n.openproblem-like,\n.computation-like,\n.assemblage-like {\n > .heading {\n display: block;\n font-size: 1.1em;\n }\n}\n\n.proof {\n padding-bottom: 1.5em;\n &::after {\n content: \"□\";\n float: right;\n }\n\n .heading {\n font-size: unset;\n font-weight: bold;\n font-style: italic;\n }\n}\n\n.solution-like {\n .heading {\n display: inline;\n font-style: italic;\n font-size: unset;\n }\n}\n\n\n .goal-like {\n border: none;\n padding: 0;\n}\n\n.goal-like > .heading {\n margin-top: -0.5em;\n padding: 0;\n margin: 0;\n font-size: 1.1em;\n}\n\n.paragraphs,\narticle {\n @include inline-heading-mixin.heading;\n}\n", "// Basic spacing for content\n\n// Breakpoint at which the navbar moves to the bottom of the screen\n$navbar-breakpoint: 800px !default;\n\n// all styling assumes border-box layout measurement\n* {\n box-sizing: border-box;\n}\n\n//----------------------------------------------------------\n// Inter item vertical spacing\n//\n// Set some baseline minimal inter-item vertical spacings\n//\n// Individual items can override this with their own margin. The\n// user of @layer here forces these rules to all have less precedence\n// than any rules not in a layer.\n// Most spacing should be done with margin-top.\n\n@layer spacing {\n // inter-item spacing high level containers\n :is(section, article, .knowl__content) > *:not(:first-child) {\n margin-top: 1.5em;\n }\n\n // but tighten up spacing slightly for adjacent paragraphs in a section\n :is(section, article, .knowl__content) > .para + .para {\n margin-top: 1em;\n }\n\n // lower-level container elements that are expected to contain sequences of items\n // tighter spacing here to avoid visually breaking up the minor container\n .ptx-content :is(ul, td, li, dd, .blockquote, .sbspanel, .para.logical) > *:not(:first-child) {\n margin-top: 0.5em;\n }\n}", "// Types of ol/ul - used by web and ebooks\n// Any spacing should be in _lists.scss, not here\n\nol.no-marker,\nul.no-marker,\nli.no-marker {\n list-style-type: none;\n}\n\nol.decimal {\n list-style-type: decimal;\n}\n\nol.lower-alpha {\n list-style-type: lower-alpha;\n}\n\n// Match LaTeX style for second level (i.e. level=\"1\") lists\nol.lower-alpha-level-1 > li::marker {\n content: \"(\"counter(list-item,lower-alpha)\") \";\n}\n\nol.upper-alpha {\n list-style-type: upper-alpha;\n}\n\nol.lower-roman {\n list-style-type: lower-roman;\n}\n\nol.upper-roman {\n list-style-type: upper-roman;\n}\n\nul.disc {\n list-style-type: disc;\n}\n\nul.square {\n list-style-type: square;\n}\n\nul.circle {\n list-style-type: circle;\n}\n", "/* dl is used for glossaries and descriptions lists.\n Glossaries are simple: bold word by itself on a line.\n Definition indented on the next line.\n Vertical space before the next term.\n\n Description lists are more complicated. The wider version\n (refering to the horizontal indentation of the definition;\n this is the default)\n has the (wrapped) term inline with the definition.\n\n The narrow version is complicated because the term is inline\n with its definition if it fits, otherwise it is on the line above.\n That means the vertical space between entries can't be handled by\n a top margin on the dt. Instead we have an ::after on the dd .\n */\n\ndl:is(.description-list, .glossary) {\n margin: 0;\n //overflow: hidden; // Removed to show permalinks\n\n dt {\n font-weight: bold;\n max-width: 55ex;\n }\n\n dd::after {\n content: \"\";\n display: block;\n clear: both;\n }\n}\n\n.para > dl:is(.description-list) {\n // add some space when inside a .para\n margin-top: 0.5em;\n margin-bottom: 0.5em;\n}\n\ndl.glossary {\n dt {\n margin-top: 1.25em;\n\n &:first-of-type {\n margin-top: 0;\n }\n }\n\n dd {\n margin-left: 5ex;\n }\n}\n\ndl.description-list {\n\n dt,\n dd {\n margin-top: 1em;\n\n &:first-of-type {\n margin-top: 0;\n }\n }\n\n dt {\n float: left;\n clear: both;\n text-align: right;\n width: 18ex;\n margin-right: 1ex;\n }\n\n dd {\n margin-left: 22ex;\n }\n\n &.narrow {\n dt {\n width: 11ex;\n }\n\n dd {\n margin-left: 15ex;\n }\n }\n\n &.wide {\n dt {\n width: 25ex;\n }\n\n dd {\n margin-left: 29ex;\n }\n }\n}\n\ndl.description-list dt:first-of-type {\n clear: none;\n}\n\n.description-list + * {\n clear: both;\n}\n\n/* where do we have nested dl? */\ndl.description-list dl dt {\n width: 8ex;\n}\n\ndl.description-list dd dd {\n margin-left: 18ex;\n}\n\ndl.description-list dl dd {\n margin-left: 12ex;\n}\n\n\n@media screen and (max-width: 480px) {\n dl.description-list dt {\n float: none;\n margin-left: 0;\n text-align: left;\n }\n\n dl.description-list dd,\n dl.description-list.narrow dd,\n dl.description-list.wide dd {\n margin-top: 0.5em;\n margin-left: 3em;\n max-width: calc(100% - 3em);\n }\n}\n", "// Entry point for ol/ul/dl web styling\n\n@use \"list-styles\";\n@use \"description-lists\";\n@use '../helpers/cols';\n\n// generate multi column rules for lists\n@include cols.allow-cols('li');\n\n// use .ptx-content to avoid styling lists in toc/header/etc...\n.ptx-content {\n ol,\n ul {\n\n ol,\n ul {\n // margin-top: 0.5em;\n }\n }\n\n li {\n margin-top: 0.5em;\n // margin-bottom: 0;\n\n // & > .para:first-child {\n // margin-top: 0;\n // }\n\n .li--heading-title {\n font-size: 100%;\n font-weight: normal;\n font-style: italic;\n }\n }\n} // .ptx-content\n\n.para > :is(ol, ul) {\n // add some space when inside a .para\n margin-top: 0.5em;\n margin-bottom: 0.5em;\n}\n\n// provide space for custom markers\nol > li {\n padding-left: 0.25em;\n}\n", "\n.fillin {\n display: inline-block;\n border: none;\n border-width: 1px;\n margin-right: 0.1em;\n margin-left: 0.1em;\n margin-bottom: -0.25em;\n\n &.underline {\n border-bottom-style: solid;\n border-width: 1px;\n }\n\n &.box {\n outline: 1px solid var(--body-text-color);\n height: 1.3em;\n }\n\n &.shade {\n background-color: var(--fillin-background-color, #eee);\n height: 1.3em;\n }\n}\n\n\n:root.dark-mode {\n --fillin-background-color: #444;\n}\n", "// headings for standard page elements - sections/articles/etc...\n// more specialized headings (exercises) should be defined in the specific component\n// complex stylizing (like boxes) should be done by \"chunks\"\n\n// reset size/margin for headings\n.heading:is(h1, h2, h3, h4, h5, h6) {\n margin: 0;\n font-size: unset;\n}\n\n.heading {\n line-height: 1.1;\n font-family: var(--font-headings);\n font-weight: 700;\n margin-top: 0;\n margin-bottom: 0;\n}\n\nsection > .heading {\n font-size: 1.75em;\n color: var(--body-title-color);\n line-height: 1.25em;\n margin-top: 2.5em;\n margin-bottom: 0.5em;\n\n // pull in any following items that default to a larger top margin\n & + * {\n margin-top: 0.5em;\n }\n}\n\n.ptx-content > section > .heading {\n //first heading on page\n margin-top: 0.5em;\n}\n\nsection section > .heading {\n font-size: 1.5em;\n margin-top: 2em;\n}\n\nsection section section > .heading {\n font-size: 1.40em;\n margin-top: 2em;\n}\n\n\narticle > .heading {\n font-size: 1.25em;\n margin-top: 1.5em;\n\n // pull in any following items that default to a larger top margin\n & + * {\n margin-top: 0.5em;\n }\n}\n\n.paragraphs > .heading {\n font-size: 1.125em;\n}\n\n// heading followed by no content and then a subsection that starts with heading\n:is(section, article) > .heading + :is(section, article) > .heading {\n margin-top: 0.5em;\n}\n\n// smaller headings on phone screens\n@media screen and (max-width: 480px) {\n section > .heading {\n font-size: 1.5em;\n line-height: 1.33em;\n margin-top: 1em;\n }\n section section > .heading {\n font-size: 1.3em;\n line-height: 1.15em;\n }\n section section section > .heading {\n font-size: 1.15em;\n line-height: 1em;\n }\n}\n\n.heading.hide-type > .type {\n display: none;\n}\n", "\n// Reset for all links\na {\n color: var(--link-text-color);\n text-decoration: none;\n\n &:hover,\n &:focus {\n text-decoration: none;\n }\n}\n\n\na[href^=\"mailto:\"] {\n white-space: pre;\n}\n\n\n// Body links. .ptx-content to avoid hitting navbar, toc, etc...\n.ptx-content {\n a.internal {\n color: var(--link-text-color);\n font-weight: bold;\n }\n a.external {\n color: var(--link-alt-text-color);\n font-weight: bold;\n }\n a.internal:hover, a.internal:hover *,\n a.internal:focus, a.internal:focus * {\n color: var(--link-active-text-color);\n background-color: var(--link-active-background);\n font-weight: bold;\n }\n a.external:hover, a.external:hover *,\n a.external:focus, a.external:focus * {\n color: var(--link-alt-active-text-color);\n background-color: var(--link-alt-active-background);\n font-weight: bold;\n }\n}\n", "// limit rules targeting basic elements to just content area\n.ptx-content {\n table {\n border-spacing: 0;\n border-collapse: collapse;\n }\n\n td {\n padding: 2px 5px;\n font-size: 90%;\n\n img {\n max-width: 200px;\n margin-right: 30px;\n }\n }\n\n th {\n padding: 2px 5px;\n }\n\n // generate alignment/border mixin classes for both th and td\n @each $cell-type in (th, td) {\n #{$cell-type} {\n .lines {\n white-space: nowrap;\n }\n\n // horizontal alignment options\n @each $class, $align in (l: left, c: center, r: right, j: justify) {\n &.#{$class} {\n text-align: $align;\n }\n }\n\n // vertical alignment options\n @each $class, $align in (t: top, b: bottom, m: middle) {\n &.#{$class} {\n vertical-align: $align;\n }\n }\n\n // border options\n @each $side, $side-symbol in (left: l, right: r, top: t, bottom: b) {\n @for $i from 0 through 3 {\n &.#{$side-symbol}#{$i} {\n @if $i ==0 {\n border-#{$side}: none;\n }\n\n @else {\n border-#{$side}: #{$i}px solid var(--body-text-color);\n }\n }\n }\n }\n }\n }\n\n\n // when cells do not have a border on left and right, add padding\n th.r0.l0,\n td.r0.l0 {\n padding-left: 0.8em;\n padding-right: 0.8em;\n }\n\n tr.header-vertical {\n th {\n writing-mode: vertical-rl;\n padding-left: 2em;\n }\n }\n\n .center {\n table {\n text-align: center;\n margin-left: auto;\n margin-right: auto;\n }\n }\n}\n\n// Rules with non-generic targeting\n\n.tabular-box {\n margin-top: 0.5em; //minimum space above to separate from figcaption\n overflow-x: auto;\n}\n\n.tabular-box.natural-width table {\n margin-left: auto;\n margin-right: auto;\n}\n\n// More specific types of tables\n\ntable.notation-list {\n tr {\n th {\n text-align: left;\n margin-left: 1em;\n }\n\n td {\n text-align: left;\n vertical-align: top;\n }\n }\n}\n\n\n\n", "// Styles for the items that are (at least generally) a part of the front matter\n// There are some pretty generic class names. Those get wrapped with a class\n// limiting their scope to the expected page\n\n.frontmatter {\n & > .heading {\n display: block;\n text-align: center;\n }\n\n & > .heading .title,\n .book > .heading .title {\n font-size: 1.3em;\n }\n\n & > .heading .subtitle,\n .book > .heading .subtitle {\n display: block;\n font-weight: normal;\n color: var(--byline-color);\n font-size: 0.875em;\n line-height: 1.42857em;\n margin-top: 0.35714em;\n }\n\n & > .para:first-of-type {\n margin-top: 4em;\n }\n\n & > .author,\n & > .credit {\n margin-top: 2em;\n text-align: center;\n }\n\n .author:first-of-type {\n margin-top: 4em;\n }\n\n & > .author .author-name {\n font-size: 120%;\n }\n\n .date {\n display: block;\n margin-top: 2em;\n text-align: center;\n }\n\n .credit .title {\n font-size: 1em;\n }\n\n .credit .author {\n font-size: 0.9em;\n margin-top: 0.75em;\n }\n\n .author-info {\n font-size: 90%;\n }\n\n .summary-links {\n margin-top: 4em;\n }\n\n .abstract {\n margin: 4em 2em;\n }\n\n .keywords, .support {\n margin-top: 2em;\n }\n\n .abstract, .keywords, .support {\n & > .title {\n font-size: 1.125em;\n font-weight: 600;\n line-height: 1.125em;\n display: inline;\n }\n\n & > .title::after {\n content: \".\\2009\\2009\\2009\";\n }\n\n & > .title + .para {\n display: inline;\n }\n }\n\n .colophon {\n .copyright {\n margin-top: 2.5em;\n }\n\n .license {\n margin-top: 2.5em;\n }\n }\n}\n", "\n/* Start of division toc links */\n// .ptx-content to override _links rules\n.ptx-content .summary-links {\n font-family: var(--font-headings);\n display: block;\n margin-top: 1em;\n\n a {\n color: var(--summary-link-text-color);\n background: var(--summary-link-background);\n font-size: 1.5em;\n line-height: 1.25em;\n padding: 10px 20px;\n padding-right: 60px;\n border-radius: 3px;\n position: relative;\n display: block;\n font-weight: unset;\n\n .title{\n font-style: normal;\n }\n\n .codenumber {\n margin-right: 0.41667em;\n }\n\n &::after {\n // triangles\n right: 0.83333em;\n content: \"\";\n position: absolute;\n top: 50%;\n margin-top: -0.4em;\n width: 0;\n height: 0;\n border-top: 0.4em solid transparent;\n border-bottom: 0.4em solid transparent;\n border-left: 0.4em solid var(--summary-link-text-color);\n }\n\n &:hover {\n color: var(--summary-link-hover-text-color);\n background: var(--summary-link-hover-background);\n\n // need to override work done in _links\n * {\n color: var(--summary-link-hover-text-color);\n background: var(--summary-link-hover-background);\n }\n .title {\n font-weight: normal;\n }\n\n &::after {\n border-left: 0.4em solid var(--summary-link-hover-text-color);\n } \n } \n }\n\n ul {\n list-style-type: none;\n padding: 0;\n margin-top: 0;\n }\n\n li {\n margin-top: 5px;\n }\n}\n\n@media screen and (width <= 480px) {\n .ptx-content .summary-links a {\n //shrink on mobile\n font-size: 100%;\n line-height: 1.25em;\n }\n}\n", "$border-radius: 0px !default;\n\n.ptx-footnote {\n display: inline-block;\n position: relative;\n}\n\n.ptx-footnote[open] {\n display: contents;\n}\n\n\n.ptx-footnote[open] .ptx-footnote__number::before {\n font-size: smaller;\n content: \"[x]\";\n visibility: visible;\n vertical-align: super;\n}\n\n.ptx-footnote[open] .ptx-footnote__number sup {\n display: none;\n}\n\n.ptx-footnote__number {\n display: inline-block;\n cursor: pointer;\n min-width: 1em; //hopefully enough space...\n}\n\n.ptx-footnote__number::marker {\n content: \"\";\n}\n\n.ptx-footnote__contents {\n display: block;\n font-style: italic;\n background: var(--knowl-background);\n border-radius: $border-radius;\n padding: 8px;\n margin: 4px auto;\n width: fit-content;\n max-width: calc(100% - 60px);\n border: 2px solid var(--knowl-border-color);\n //reset color/weight/size in case used in block that changed them\n // e.g. theorem title in denver\n color: var(--body-text-color);\n font-weight: normal;\n font-size: var(1rem);\n}\n", "\n\n/* the index at the back of the book */\n// TODO - refactor\n\n\n.navbar .indexnav {\n position: absolute;\n top: 46px;\n right: 0;\n}\n\n.mininav {\n float: left;\n padding-top: 0.7ex;\n padding-left: 1ex;\n}\n\n\n.indexjump {\n margin-left: 1.5ex;\n margin-top: 0.2ex;\n padding-top: 0;\n float: left;\n line-height: 0.95;\n}\n\n.indexjump a {\n padding-left: 2.5px;\n padding-right: 0.5px;\n width: 2.5ex;\n/*\n* * omitted, because we put a space in the source\n* padding-right: 3px;\n* */\n margin-right: -1px;\n color: inherit;\n font-size: 80%;\n text-align: center;\n}\n.indexjump a::after{\n content: \"\";\n display: inline-block;\n}\n.indexjump a:nth-of-type(14){\n padding-left: 1.8ex;\n}\n.indexjump a:last-child {\n padding-right: 10px;\n}\n\n.indexjump a:hover {\n background: var(--activated-content-bg);\n}\n\n.indexitem {\n margin-top: 4px;\n}\n\n.subindexitem {\n margin-left: 2em;\n font-size: 95%;\n margin-top: -1px;\n}\n\n.subsubindexitem {\n margin-left: 3.5em;\n font-size: 95%;\n margin-top: -1px;\n}\n\n.indexknowl {\n margin-left: 0.11em;\n}\nem + .indexknowl {\n margin-left: -0.25em;\n}\n.indexknowl a {\n margin-left: 2em;\n}\n\n.indexitem .see,\n.subindexitem .see,\n.subsubindexitem .see {\n margin-left: 1em;\n margin-right: 0;\n}\n.indexitem .seealso,\n.subindexitem .seealso,\n.subsubindexitem .seealso {\n margin-left: 1em;\n margin-right: 0;\n}\n.indexitem .see em,\n.subindexitem .see em,\n.subsubindexitem .see em,\n.indexitem .seealso em,\n.subindexitem .seealso em,\n.subsubindexitem .seealso em {\n margin-right: 0.25em;\n font-style: italic;\n}\n/* note that multiple things after \"see\" are in separate spans */\n.indexitem .see + .see,\n.subindexitem .see + .see,\n.subsubindexitem .see + .see,\n.indexitem .seealso + .seealso,\n.subindexitem .seealso + .seealso,\n.subsubindexitem .seealso + .seealso {\n margin-left: 0;\n margin-right: 0;\n}\n\n.indexitem .indexknowl {\n font-size: 90%;\n}\n\n.indexitem [data-knowl], .subindexitem [data-knowl], .indexitem [data-knowl]:hover {\n padding-right: 2px;\n padding-left: 2px;\n}\n.indexknowl [data-knowl]:hover, .indexknowl .active[data-knowl] {\n margin-left: 2em;\n}\n\n.subindexitem .indexknowl {\n font-size: 95%;\n}\n.subsubindexitem .indexknowl {\n font-size: 95%;\n}\n\n.indexletter {\n margin-top: 1.5em;\n}\n", "// ---------------------------------------------\n// containers for images, audio, video, and asymptote\n.image-box,\n.audio-box,\n.video-box,\n.asymptote-box {\n position: relative;\n}\n\n.image-box .asymptote-box iframe.asymptote,\niframe.asymptote,\n.video-box .video,\n.video-box .video-poster {\n position: absolute; top: 0; left: 0; width: 100%; height: 100%;\n}\n\n// images in containers should grow to fit space\n.image-box img,\nimg.contained {\n width: 100%;\n}\n\n// ---------------------------------------------\n// images\n.ptx-content img, .ptx-content svg {\n // for body images in dark mode, we want to be able to force a light colored background\n // as most transparent images will assume that the background is white\n background: var(--ptx-image-bg);\n}\n// but mermaid svg should always have a transparent background\n.mermaid > svg {\n background: none;\n}\n\n.image-description {\n summary {\n list-style: none; // no marker\n cursor: pointer;\n }\n}\n\n// download links after an image\n.image-archive {\n margin: 0.75em auto 0;\n font-family: var(--font-monospace);\n justify-content: center;\n display: flex;\n gap: 0.5em;\n}\n\n// TODO - refactor mag_popup JS and CSS\n// was .ptx-content .image-box > img:not(.draw_on_me):not(.mag_popup)\n.image-box > img:not(.mag_popup) {\n cursor: zoom-in;\n}\n\nimg.mag_popup {\n border: 1px solid #666;\n box-shadow: 4px 6px 4px #999;\n cursor: zoom-out;\n}\n\n.mag_popup_container {\n width:100%;\n position:absolute;\n z-index:1001;\n overflow-x: visible;\n}\n\n// ---------------------------------------------\n// other\n.audio {\n width: 100%;\n}\n\n.video-poster {\n cursor: pointer;\n}\n", "figure {\n clear: both;\n position: relative;\n\n // override browser margins\n margin-left: 0;\n margin-right: 0;\n}\n\nfigcaption {\n margin-left: auto;\n margin-right: auto;\n margin-top: 0.5em;\n\n code.code-inline {\n white-space: pre;\n }\n \n .codenumber,\n .type {\n font-weight: 700;\n }\n\n // add n-dashes\n .codenumber::after,\n .type:last-of-type::after {\n content: \"\\2002\";\n }\n\n // make sure first para comes right after title\n .para:first-of-type {\n display: inline;\n }\n}\n\n// tables are inset\nfigure.table-like {\n margin-left: 30px;\n margin-right: 30px;\n\n // but lists can go full right\n .list {\n margin-right: 0;\n }\n}\n\n@media (max-width <= 943px){\n .figure-like {\n overflow-x: auto;\n }\n}\n", "/* style for poems */\n.poem {\n display: table;\n margin: 0 auto;\n width: auto;\n max-width: 90%;\n}\n\n.poem > .heading {\n display: block;\n text-align: center;\n}\n\nsection article.poem > .heading::after {\n content: \"\";\n}\n\n.poem > .heading > .title {\n font-weight: bold;\n font-size: 1.2em;\n line-height: 1.2em;\n}\n\n.poem .author {\n font-style: italic;\n margin-top: 0.75em;\n}\n\n.poem .author.left {\n text-align: left;\n}\n\n.poem .author.center {\n text-align: center;\n}\n\n.poem .author.right {\n text-align: right;\n}\n\n.poem .stanza > .heading {\n text-align: center;\n font-weight: bold;\n font-size: 1em;\n line-height: 1em;\n}\n\n.poem .stanza + .stanza {\n margin-top: 1em;\n}\n\n.poem .heading + .stanza {\n margin-top: 0.2em;\n}\n\n.poem .heading + .line {\n margin-top: 0.2em;\n}\n\n.poem .line.left {\n text-align: left;\n margin-left: 4em;\n text-indent: -4em;\n}\n\n.poem .line.center {\n text-align: center;\n}\n\n.poem .line.right {\n text-align: right;\n}\n\n.poem .tab {\n margin-left: 2em;\n}\n", "@use '../chunks/codelike';\n\n// Prism stylesheets built locally as default ones don't support light/dark switching\n// this is a merged version of the default and dark themes\n\n// Default prism styling\n// Blocks\npre[class*=\"language-\"] {\n margin: 0;\n overflow: auto;\n border: 1px solid #e1e1e1;\n}\n\n// Inline code\n:not(pre) > code[class*=\"language-\"] {\n padding: .1em;\n border-radius: .3em;\n white-space: normal;\n}\n\ncode[class*=\"language-\"],\npre[class*=\"language-\"] {\n color: black;\n background: #fdfdfd;\n text-shadow: none;\n font-family: var(--font-monospace);\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n word-wrap: normal;\n line-height: 1.2;\n tab-size: 4;\n hyphens: none;\n\n &.code-inline {\n // unclobber some inline code styles\n @include codelike.code-inline-spacing();\n }\n\n &::selection,\n & ::selection {\n background: #b3d4fc;\n }\n\n .token {\n \n &:is(.comment,\n .prolog,\n .doctype,\n .cdata) {\n color: #2a9716;\n }\n \n &.punctuation {\n color: #000;\n }\n \n &.namespace {\n opacity: .9;\n }\n \n &:is(.property,\n .tag,\n .boolean,\n .number,\n .constant,\n .symbol,\n .deleted) {\n color: rgb(41, 120, 15);\n }\n \n &:is(.selector,\n .attr-name,\n .string,\n .char,\n .builtin,\n .regex,\n .inserted) {\n color: #a11;\n }\n \n &:is(.operator,\n .entity,\n .url) {\n color: #000;\n background: none;\n }\n \n &:is(.atrule,\n .attr-value,\n .keyword) {\n color: #0679B7;\n }\n \n &.function,\n &.class-name {\n color: #30a;\n }\n \n &.important,\n &.variable {\n color: rgb(0, 0, 0);\n }\n \n \n &.important,\n &.bold {\n font-weight: bold;\n }\n \n &.italic {\n font-style: italic;\n }\n \n &.entity {\n cursor: help;\n }\n }\n \n // -------------------------------------------\n // Line numbers\n &.line-numbers {\n position: relative;\n padding-left: 3.8em;\n counter-reset: linenumber;\n overflow: auto;\n \n > code {\n position: relative;\n white-space: inherit\n }\n \n .line-numbers-rows {\n position: absolute;\n pointer-events: none;\n top: 0;\n font-size: 100%;\n left: -3.8em;\n width: 3em;\n letter-spacing: -1px;\n border-right: 1px solid #999;\n user-select: none\n }\n \n .line-numbers-rows > span {\n display: block;\n counter-increment: linenumber\n }\n \n .line-numbers-rows > span::before {\n content: counter(linenumber);\n color: #999;\n display: block;\n padding-right: .8em;\n text-align: right\n }\n }\n \n \n // -------------------------------------------\n // Line highlighting\n .line-highlight {\n position: absolute;\n margin-top: 4px; // tune to match padding of containing pre\n left: 0;\n right: 0;\n padding: inherit 0;\n font-size: inherit;\n background: hsla(24, 20%, 50%, 8%);\n pointer-events: none;\n line-height: inherit;\n white-space: pre\n }\n}\n\n// -------------------------------------------\n// Dark mode\n:root.dark-mode {\n \n /* Code blocks */\n pre[class*=\"language-\"] {\n border: 1px solid #3d3d3d;\n }\n \n \n // Darker styling to match Runesone's code mirror theme\n code[class*=\"language-\"],\n pre[class*=\"language-\"] {\n color: white;\n background: hsl(0, 0%, 8%);\n \n &::selection,\n & ::selection {\n background: hsl(200, 4%, 16%);\n }\n \n /* Make the tokens sit above the line highlight so the colours don't look faded. */\n .token {\n position: relative;\n z-index: 1;\n \n &:is(.comment,\n .prolog,\n .doctype,\n .cdata) {\n color: #68a950;\n }\n \n &.punctuation {\n color: white;\n opacity: 1;\n }\n \n &.namespace {\n opacity: .9;\n }\n \n &:is(.property,\n .tag,\n .boolean,\n .number,\n .constant,\n .symbol,\n .deleted) {\n color: #abc792;\n }\n \n &:is(.selector,\n .attr-name,\n .string,\n .char,\n .builtin,\n .regex,\n .inserted) {\n color: #ca9147;\n }\n \n &:is(.operator,\n .entity,\n .url) {\n color: white;\n }\n \n &:is(.atrule,\n .attr-value,\n .keyword) {\n color: #2d94fb;\n }\n \n &.function,\n &.class-name {\n color: #e3e1c2;\n }\n \n &.important,\n &.bold {\n font-weight: bold;\n }\n \n &.italic {\n font-style: italic;\n }\n \n &.entity {\n cursor: help;\n }\n \n }\n }\n \n .line-highlight {\n background: hsla(0, 0%, 33%, 10%);\n border-bottom: 1px dashed hsl(0, 0%, 33%);\n border-top: 1px dashed hsl(0, 0%, 33%);\n z-index: 0;\n }\n}\n\n@media print {\n code[class*=\"language-\"],\n pre[class*=\"language-\"] {\n .line-highlight {\n color-adjust: exact\n }\n }\n}\n", "// TODO - refactor\n\n.displaymath {\n overflow-x: auto;\n overflow-y: hidden;\n}\n\n.displaymath mjx-container[jax=\"CHTML\"][display=\"true\"] {\n margin: 0 0 0 0; // container is going to apply margin, so remove it from mjx-container\n padding-top: 2px; // Chrome sometimes clips the top 1-2 pixels of math after it has been scaled - provide room for that content\n}\n\n.process-math mjx-container svg {\n // remove the background that is normally applied to svg's by PreTeXt CSS\n // we use .process-math instead of .displaymath to get inline math as well.\n background: none;\n}\n\n// ?\n[data-knowl] > mjx-mrow .TEX-I {\n font-family: MJXZERO !important;\n font-style: normal !important;\n}\n\n/* remove this when MathJax fixes the bug that was setting the width to 0 */\n/* as in $x=0$. becomes $x=0\\text{.}$ */\n.knowl mjx-mtext > mjx-utext,\nmjx-mtext > mjx-utext {\n width: revert !important;\n}\nmjx-msup mjx-utext,\nmjx-msub mjx-utext {\n display: inline;\n}\n", "// TODO - refactor\n$opacity: 0.0 !default;\n\n/*\nSo that we can position things (like .autopermalink) absolutely wrt these items.\nAny element whose permalink should be positioned directly to the left of it\nshould be in this list.\n*/\nsection,\narticle,\nli,\nblockquote,\nfigcaption,\ndt,\n.exercisegroup,\n.discussion-like,\n.solution-like,\n.para {\n position: relative;\n}\n\n.autopermalink {\n position: absolute;\n display: inline-block;\n top: 0.5ex;\n left: -2em;\n font-size: 85%;\n // variable allows theme to set different opacities for dark/light\n opacity: var(--permalink-opacity, $opacity);\n transition: opacity 0.2s;\n margin-top: 0 !important;\n}\n\nli > .autopermalink {\n left: -3.5em;\n}\n\n.autopermalink > * {\n padding-left: 0.2em;\n padding-right: 0.2em;\n}\n\n\n// Move permalink for division titles etc a little bit lower\n.appendix > .autopermalink,\n.chapter > .autopermalink,\n.index > .autopermalink,\n.section > .autopermalink,\n.subsection > .autopermalink,\n.references > .autopermalink,\n.exercises > .autopermalink {\n top: 1.5ex;\n}\n\n// In some styles, the autopermalink for paras land right on the border line.\n// This is an attempt to fix that. TODO: find a more robust solution, maybe\n// using a variable for the left offset of paras inside blocks.\n.assemblage-like > .para > .autopermalink,\n.example-like > .para > .autopermalink,\n.example-like > .exercise-like > .autopermalink,\n.project-like > .para > .autopermalink,\n.project-like > .exercise-like > .autopermalink,\n.project-like > .exercise-like > .introduction > .para > .autopermalink,\n.project-like > .exercise-like > .conclusion > .para > .autopermalink,\n.remark-like > .para > .autopermalink {\n left: -2.9em;\n}\n\n\n.axiom-like, .example-like, .exercise-like, .solution-like, .assemblage-like, .definition-like, .remark-like, .project-like, .openproblem-like, .computation-like, .theorem-like, .proof, .case, li, dd {\n > .para:first-of-type > .autopermalink {\n display:none;\n }\n\n > .introduction > .para:first-of-type > .autopermalink {\n display:none;\n }\n}\n\n\n// Hover effects\n\n.ptx-content:has(.autopermalink:hover) .autopermalink {\n opacity: 0.2;\n}\n\n.ptx-content:has(.autopermalink:hover) .autopermalink:hover {\n opacity: 1;\n}\n\n.autopermalink:has(a:focus-visible) {\n opacity: 1;\n}\n\n.permalink-alert {\n position: absolute;\n top: -3em;\n left: 5em;\n padding: 1.5em 2em;\n background: var(--content-background);\n border: 3px solid var(--page-border-color);\n z-index: 2001;\n}\n\n\n/* when jumping to a permalink, push down so sticky navbar does not cover */\n:target {\n scroll-margin-top: 45px;\n // the \"pink flash\" when navigating to a target\n animation: target-fade 10s 1;\n}\n\n@keyframes target-fade {\n 0% { background-color: var(--activated-content-bg) }\n 100% {\n background-color: inherit;\n opacity: 1;\n }\n}\n", "\n// Miscellaneous stylized content blocks that are not complex enough\n// to warrant their own file\n\nem.alert {\n font-weight: bold;\n}\n\n.bib {\n margin-top: 0.25em;\n\n .bibitem {\n display: inline-block;\n vertical-align: top;\n width: 7%;\n margin-right: 0;\n }\n \n .bibitem + .bibentry {\n display: inline-block;\n width: 90%;\n margin-top: 0;\n }\n}\n\n\n\n.caption {\n margin-top: 10px;\n margin-left: auto;\n margin-right: auto;\n font-size: 100%;\n text-align: center;\n}\n\n\n.contributor {\n margin-top: 1.5ex;\n\n &:first-child {\n margin-top: 0em;\n }\n\n & + .para {\n margin-top: 3ex;\n }\n\n .contributor-name {\n font-variant: small-caps;\n }\n\n .contributor-info {\n font-size: 88%;\n font-style: italic;\n margin-left: 3ex;\n }\n}\n\n\n// Icon font settings\n.material-symbols-outlined {\n font-variation-settings:\n 'FILL' 0,\n 'wght' 400,\n 'GRAD' 0,\n 'opsz' 24\n}\n\n\niframe {\n margin: 0;\n border: none;\n}\n\n\n.kbdkey {\n background: #f1f1f1;\n color: #333;\n border: 1px solid #dddddd;\n border-radius: 3px;\n padding: 1px 2px 0 2px;\n vertical-align: 0.1em;\n font-size: 110%;\n line-height: 1;\n box-shadow: 2px 2px grey;\n display: inline-block;\n margin-right: 3px;\n}\n\n\n.unit,\n.quantity {\n white-space: nowrap;\n word-spacing: -0.25ex;\n margin-right: 0.125em;\n\n sub, sup {\n word-spacing: normal;\n }\n}\n\n\n.terminology {\n font-style: italic;\n font-weight: bold;\n}\n\n\n\n.times-sign {\n font-size: larger;\n vertical-align: -0.15ex;\n}\n\n\n.emphasis {\n font-style: italic;\n\n .emphasis {\n font-weight: bold;\n }\n}\n\n.definition-like .emphasis {\n font-weight: 700;\n}\narticle.theorem-like .emphasis {\n font-weight: 700;\n}\n\n.para {\n line-height: 1.35;\n}\n\n.hidden {\n display: none !important;\n}\n\n/* genus and species in italics */\n.taxon {\n font-style: italic;\n}\n\n.quote {\n padding-left: 40px;\n padding-right: 10px;\n margin-bottom: 1em;\n}\n\n.booktitle {\n font-style: oblique;\n}\n\n/* Adapted from William Hammond (attributed to David Carlisle) */\n/* \"mathjax-users\" Google Group, 2015-12-27 */\n\n.latex-logo {font-family: \"PT Serif\", \"Times New Roman\", Times, serif;}\n\n.latex-logo .A {font-size: 75%; text-transform: uppercase; vertical-align: .5ex;\n margin-left: -.48em; margin-right: -.2em;}\n\n.latex-logo .E {vertical-align:-.5ex; text-transform: uppercase;\n margin-left: -.18em; margin-right: -.12em; }\n", "// Basic rules for printing a standard PreTeXt page\n\n// Get rid of UI elements.\n// Leave margin fiddling for system print dialog.\n\n// Worksheet and handout printing is handled in print-worksheet.scss\n\n@media print {\n .pretext .ptx-masthead,\n .pretext .ptx-navbar,\n body.pretext > a.assistive,\n .pretext .ptx-page > .ptx-sidebar,\n .pretext .ptx-page-footer,\n .pretext .ptx-main > div.ptx-content-footer {\n display:none;\n }\n\n .ptx-page, .ptx-main, .ptx-main .ptx-content {\n all: unset !important;\n width: 100%;\n border: none;\n padding: 0;\n margin: 0;\n }\n\n .ptx-sagecell, .tabular, .table-like, .figure-like, .exercise-like {\n break-inside: avoid;\n }\n\n .heading {\n break-after: avoid;\n }\n\n .code-inline {\n border: unset;\n background: unset;\n }\n\n @page {\n margin: 0.75in 0.75in 0.75in 0.75in;\n }\n}\n", "// TODO refactor\n\n// Rules in this file apply to both screen and print\n// Print specific rules should go in a file in targets/print-worksheet stylesheet\n@use 'components/helpers/buttons-default' as buttons;\n\n.heading .print-links {\n float: right;\n vertical-align: bottom;\n .print-link {\n font-family: var(--font-body);\n padding: 0.1em 0.2em;\n }\n .material-symbols-outlined {\n margin-top:5pt;\n }\n}\n\n", "// TODO - refactor\n// Make conditional on use of google search???\n\n.pretext .searchwrapper {\n max-width: 900px;\n position: absolute;\n right: 0;\n bottom: 0;\n margin-bottom: 39px;\n}\n\n.pretext .searchwrapper .cse .gsc-control-cse,\n.pretext .searchwrapper .cse .gsc-control-cse input,\n.searchwrapper .gsc-control-cse {\n padding: 5px;\n}\n\n// .pretext .searchwrapper .cse .gsc-search-button input.gsc-search-button-v2,\n// .searchwrapper input.gsc-search-button-v2 {\n// padding: 2px 2px;\n// }\n\n// .pretext .searchwrapper form.gsc-search-box {\n// margin: 0;\n// }\n\n// .pretext .searchwrapper table.gsc-search-box {\n// margin: 0;\n// }\n\n// .pretext .searchwrapper .gsc-search-box-tools .gsc-search-box .gsc-input {\n// padding: 0;\n// }\n\n// .pretext .searchwrapper .gsib_a {\n// padding: 0 0 0 5px;\n// }\n\n// .pretext .searchwrapper .gsc-input-box {\n// height: 3.0ex;\n// }\n\n// .pretext .searchwrapper form.gsc-search-box {\n// font-size: 12px;\n// }\n", "\n@use 'components/helpers/buttons-default' as buttons;\n\n.searchbox {\n\n .searchwidget {\n height: 100%;\n }\n \n .searchresultsplaceholder {\n position: fixed;\n top: 5vh;\n bottom: 5vh;\n padding: 1em;\n left: max(10vw, calc(100vw - 800px) / 2);\n width: 80vw;\n max-width: 800px;\n border: 2px solid var(--body-text-color);\n background: var(--knowl-background, #eaf0f6);\n z-index: 5000;\n display: flex;\n flex-direction: column;\n }\n\n .searchresultsplaceholder article {\n width: 60%;\n margin-left: auto;\n margin-right: auto;\n font-family: sans-serif;\n }\n\n .search-results-controls {\n display: flex;\n justify-content: space-between;\n align-items: stretch;\n gap: 10px;\n margin-bottom: 1em;\n height: 35px;\n }\n\n .ptxsearch {\n flex: 1 1;\n }\n \n\n .closesearchresults {\n @include buttons.ptx-button;\n }\n\n .detailed_result {\n margin-bottom: 10px;\n }\n\n .searchresults a:hover {\n text-decoration: underline;\n background: var(--link-active-background);\n }\n\n\n .searchresults {\n padding-left: 10px;\n margin-top: 0;\n overflow-y: auto;\n flex: 1 1;\n background: var(--content-background, white);\n border: 1px solid var(--page-border-color, #ccc);\n }\n\n .searchresults:empty {\n display: none;\n }\n \n .search-result-bullet {\n list-style-type: none;\n }\n\n .search-result-score {\n display: none;\n }\n\n //result qualities\n .no_result {\n font-size: 90%;\n font-weight: 200;\n }\n\n .low_result {\n font-weight: 200;\n }\n\n .medium_result {\n font-weight: 500;\n }\n .high_result {\n font-weight: 700;\n }\n\n .searchempty {\n display: none;\n padding-left: 10px;\n padding-top: 5px;\n }\n\n .search-results-unshown-count {\n margin-top: 0.6em;\n }\n\n .search-result-clip-highlight {\n background: var(--searchresultshighlight);\n }\n\n .searchresultsbackground {\n position: fixed;\n top: 0;\n background: var(--searchresultsbackground, white);\n width: 100vw;\n height: 100%;\n left: 0;\n z-index: 4999;\n }\n\n @media screen and (max-width: 800px) {\n .searchresultsplaceholder {\n bottom: 10vh;\n }\n }\n}\n\n:root {\n --searchresultsbackground: #fff8;\n --searchresultshighlight: rgba(255, 255, 0, 50%);\n}\n\n:root.dark-mode {\n --searchresultsbackground: #0008;\n --searchresultshighlight: rgba(255, 255, 0, 15%);\n}\n", "$border-radius: 0 !default;\n\n@mixin ptx-button(\n $border-radius: $border-radius\n) {\n font: inherit;\n display: flex;\n justify-content: center;\n align-items: center;\n padding: 0 10px;\n gap: 10px;\n min-height: 34px;\n color: var(--button-text-color);\n background-color: var(--button-background);\n border-width: 1px;\n border-color: var(--button-border-color);\n border-style: solid;\n border-radius: $border-radius;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n cursor: pointer;\n\n // Disable accidental text-selection\n user-select: none;\n\n &:hover:not(.disabled) {\n color: var(--button-hover-text-color);\n background-color: var(--button-hover-background);\n }\n\n &:focus-visible {\n outline: 2px solid var(--button-text-color);\n outline-offset: -2px;\n }\n\n &.disabled {\n opacity: .4;\n cursor: not-allowed;\n }\n\n &.hidden {\n display: none;\n }\n\n &.open {\n color: var(--button-hover-text-color);\n background-color: var(--button-hover-background);\n }\n}\n\n@mixin ptx-dropdown-button {\n position: relative;\n\n .dropdown-content {\n display: none;\n position: absolute;\n background-color: var(--dropdown-background);\n min-width: 160px;\n z-index: 100;\n border: 1px solid var(--dropdown-border-color);\n right: 0;\n top: 35px;\n text-align: start;\n padding: 0;\n\n a {\n display: block;\n text-decoration: none;\n color: var(--dropdown-text-color);\n padding: 2px 8px;\n\n &:is(:hover, :focus-visible) {\n background-color: var(--dropdown-hover-background);\n color: var(--dropdown-hover-text-color);\n }\n }\n\n hr {\n color: var(--dropdown-border-color);\n margin: 4px 0;\n }\n }\n\n &:is(:hover, :focus-visible, :focus-within) {\n overflow: visible;\n\n .dropdown-content {\n display: block;\n }\n }\n}\n", "// extra specific to override Runestone margin\n.ptx-content .ptx-runestone-container .runestone {\n margin: unset;\n border-radius: 0;\n border-width: 1px;\n}\n\n// avoid label splitting into multiple lines\n.multiplechoice_section label > .para {\n display: inline;\n}\n\n// extra specific to override Runestone margin\n.ptx-content .ptx-runestone-container .ac_question { \n max-width: var(--base-content-width);\n margin: 0 auto 10px;\n}\n\n.runestone .runestone_caption {\n // caption is always just something like \"ActiveCode\" in PTX\n display: none;\n}\n\n\n/* to undo Runestone's draganddrop.css */\n.ptx-content .ptx-runestone-container .rsdraggable {\n font-size: 100%;\n}\n\n// Unsure if still needed\n/* hack for runestone */\n/* to undo Runestone's presentermode.css */\n.ptx-content .bottom {\n position: unset;\n}\n\n// override Runestone's pre formatting with these extra specific rules\n.ptx-runestone-container .runestone code,\n.ptx-runestone-container .runestone pre {\n font-size: .93rem;\n line-height: 1.2;\n font-family: var(--font-monospace);\n}\n\n// override Runestone's pre formatting with these extra specific rules\n.ptx-runestone-container code[class*=\"language-\"],\n.ptx-runestone-container pre[class*=\"language-\"] {\n color: black;\n background: #fdfdfd;\n}\n\n//Fixup datafile captions\n.runestone.datafile {\n .datafile_caption {\n background: var(--code-inline-background);\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n display: block;\n width: fit-content;\n margin: 0 auto;\n }\n img {\n margin: 0 auto;\n display: block;\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n }\n pre, textarea {\n margin: 0 auto;\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n background-color: var(--page-color);\n }\n}\n.runestone.datafile + .program {\n margin-top: 0;\n}\n\n// RS does not care what kind of element is used\n// PTX chooses to use a ul, so we will fix margins for it here instead of RS\nul[data-component=\"timedAssessment\"] {\n margin: 0;\n padding: 0;\n}\n\n:root.dark-mode {\n // Darker styling to match Runesone's code mirror theme\n .ptx-runestone-container code[class*=\"language-\"],\n .ptx-runestone-container pre[class*=\"language-\"] {\n color: white;\n background: hsl(0, 0%, 8%);\n }\n}\n", "// TODO - needs refactoring and dark mode update\n\n@use 'components/helpers/buttons-default' as buttons;\n\n/* WW problems */\n.ptx-content .wwprob table.attemptResults {\n margin-left: 2em;\n background: #efefef;\n padding: 0.2em;\n}\n\n.ptx-content .wwprob table.attemptResults + .attemptResultsSummary {\n margin-top: 1em;\n}\n\n.ptx-content .wwprob .problem-main-form {\n margin-top: 1em;\n background: #eeeeff;\n padding: 0.5em;\n}\n\n.ptx-content .wwprob td.ResultsWithoutError {\n background: #9f9;\n}\n\n.ptx-content .wwprob td.ResultsWithError {\n background: #f99;\n}\n\n.ptx-content .wwprob tr th {\n text-align: center;\n padding: 0.2em 1em 0.2em 1em;\n}\n\n.ptx-content .wwprob tr td {\n text-align: center;\n}\n\n.ptx-content .wwprob tr td:empty {\n background: #fff;\n}\n\n.ptx-content .wwprob ol,\n.ptx-content .wwprob ul {\n margin-top: 0.75em !important;\n}\n\n.ptx-content .wwprob .problem {\n background: #fdfdfd;\n}\n\n.ptx-content .wwprob .problem a {\n text-decoration: none;\n}\n\n.ptx-content .wwprob #footer {\n font-size: 70%;\n text-align: right;\n}\n\n/* interactive WeBWorK */\n\nlabel.webwork {\n display: inline-flex;\n flex-direction: column;\n}\n\nlabel.correct .status {\n background-color: #a0f0a0;\n}\n\nlabel.partly-correct .status {\n color: #ffcc66;\n}\n\nlabel.incorrect .status {\n color: #b00;\n}\n\nlabel.incorrect .status::before {\n content: \" \";\n}\n\nlabel.feedback {\n word-wrap: break-word;\n}\n\nlabel.correct .feedback {\n background-color: #00ffcc;\n}\n\nlabel.partly-correct .feedback {\n color: #ffcc66;\n}\n\nlabel.incorrect .feedback {\n color: #e07070;\n}\n\n.webwork img,\n.webwork + .knowl-output img {\n max-width: 100%;\n}\n\n// Make the default margin for items inside the exercise-wrapper similar to\n// default for items in a section\n.exercise-wrapper > *:not(:first-child) {\n margin-top: 1.5em;\n}\n\n.ptx-content .problem-buttons {\n display: flex;\n}\n\n.ptx-content .webwork-button {\n @include buttons.ptx-button;\n}\n\n//.hidden-content used to be used for knowls and got repurposed for hiding webwork contents\n// now just used by webwork\n.problem-buttons.hidden-content,\n.problem-contents.hidden-content {\n display: none;\n}\n", "// TODO - refactor\n\n.sagecell_sessionOutput pre {\n font-family: var(--font-monospace);\n}\n\n.sagecell {\n white-space: normal;\n margin-top: 1.25em;\n margin-bottom: 1.25em;\n}\n\n.sage-interact.sagecell {\n margin: 0;\n}\n\n.sagecell_evalButton {\n font-family: var(--font-body);\n font-size: 16px;\n padding: 0 0.65em;\n}\n\n.sagecell_evalButton {\n cursor: pointer;\n display: inline-block;\n vertical-align: middle;\n /* Disable accidental text-selection */\n user-select: none;\n /* Truncate overflowing text with ellipsis */\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n border-width: 1px;\n border-style: solid;\n font-weight: bold;\n border-radius: 3px;\n}\n\n.sagecell_evalButton {\n color: #383838;\n background-image: linear-gradient(#f7f7f7, #bbbbbb);\n border-color: #c4c4c4;\n}\n\n.sagecell_evalButton:hover {\n color: #181868;\n background-image: linear-gradient(#bbbbbb, #f7f7f7);\n}\n\n.sagecell_evalButton:focus,\n.sagecell_evalButton:active {\n color: #20160b;\n background-image: linear-gradient(#ff6852, #ffd7d1);\n border-color: #ff2822;\n}\n\n.sagecell .sagecell_editor {\n margin-bottom: 8px;\n}\n\n.sageanswer {\n font-family: monospace;\n white-space: pre;\n margin-left: 3em;\n margin-bottom: 2em;\n}\n\n.sageanswer .key {\n display: inline-block;\n vertical-align: top;\n margin-right: 1em;\n}\n\n.sageanswer .output {\n display: inline-block;\n vertical-align: top;\n}\n", "// GeoGebra calculator\n\n$navbar-breakpoint: 856px !default;\n\n.calculator-container {\n position: fixed;\n z-index: 100;\n bottom: 5px;\n right: 5px;\n width: 253px;\n height: 460px;\n}\n\n@media screen and (max-width: $navbar-breakpoint) {\n .calculator-container {\n //assumes navbar moves to bottom of screen\n bottom: 50px !important;\n }\n}\n", "/*\n Master list of color variables and default values.\n Variables are defined in SCSS to allow for calculation of values. They are\n then converted to CSS variables for use in the HTML so authors can, if\n need be, override them with custom CSS.\n\n Any new variable should be added to this file and either defined to another\n variable or given a reasonable default value for the red-blue default theme.\n\n Variables should be semantic, not descriptive\n i.e. --link-color, not --pretty-blue\n*/\n\n@use \"sass:map\";\n\n// ==============================================================================\n// Light theme\n\n// ==============================================================================\n// Page structures\n\n$colors: (\n // Background of page (gutters if any)\n \"page-color\": white,\n // Background of content area\n \"content-background\": white,\n // Border around content area - also possibly used for internal borders\n \"page-border-color\": #ccc,\n\n // ------------------------------------------------------------------------------\n // Banner/nav related\n\n \"doc-title-color\": #932919,\n \"byline-color\": #333,\n \"banner-background\": #fafafa,\n \"navbar-background\": #ededed,\n \"footer-background\": var(--banner-background),\n\n // ------------------------------------------------------------------------------\n // TOC related\n\n \"toc-border-color\": #666,\n \"toc-background\": var(--content-background),\n\n \"tocitem-background\": var(--toc-background),\n \"toc-text-color\": var(--body-text-color),\n\n // highlight styles are used for hover\n \"tocitem-highlight-background\": #671d12,\n \"tocitem-highlight-text-color\": white,\n \"tocitem-highlight-border-color\": var(--toc-border-color),\n \n // active styles are used for the current toc item\n \"tocitem-active-background\": #671d12,\n \"tocitem-active-text-color\": white,\n \"tocitem-active-border-color\": var(--toc-border-color),\n\n // level based colors for TOC\n // levels are not necessarily all used\n // see the toc-basics.scss for how these are determined\n \"toclevel1-background\": var(--content-background),\n \"toclevel1-text-color\": var(--toc-text-color),\n \"toclevel2-background\": var(--content-background),\n \"toclevel2-text-color\": var(--toc-text-color),\n \"toclevel3-background\": var(--content-background),\n \"toclevel3-text-color\": var(--toc-text-color),\n\n\n // ==============================================================================\n // Content\n // ==============================================================================\n\n // ------------------------------------------------------------------------------\n // Text & titles\n\n \"body-text-color\": #000,\n \"body-title-color\": #000,\n\n \"ptx-image-bg\": transparent,\n \"activated-content-bg\": rgba(241, 185, 255, 30%),\n\n \"summary-link-background\": var(--button-background),\n \"summary-link-text-color\": var(--button-text-color),\n \"summary-link-hover-background\": var(--button-hover-background),\n \"summary-link-hover-text-color\": var(--button-hover-text-color),\n\n // ------------------------------------------------------------------------------\n // Links & knowls\n\n \"link-text-color\": #2B5F82,\n \"link-background\": transparent,\n \"link-active-text-color\": var(--link-text-color),\n \"link-active-background\": #cad2e1,\n\n \"link-alt-text-color\": #A62E1C,\n \"link-alt-background\": transparent,\n \"link-alt-active-text-color\": var(--link-alt-text-color),\n \"link-alt-active-background\": #e3d1ce,\n\n \"knowl-link-color\": var(--link-text-color),\n \"knowl-background\": #f5f8ff,\n \"knowl-border-color\": #e0e9ff,\n \"knowl-nested-1-background\": #f5f5ff,\n \"knowl-nested-2-background\": #fffff5,\n \"knowl-nested-3-background\": #f5ffff,\n \"knowl-nested-4-background\": #fff5f5,\n\n // ------------------------------------------------------------------------------\n // Blocks\n\n // Fall back generic block colors:\n \"block-body-background\": var(--content-background),\n \"block-border-color\": var(--knowl-border-color),\n \"block-head-color\": var(--body-text-color),\n\n // See below for specific block types\n \n \"aside-like-link-color\": var(--link-text-color),\n\n // ------------------------------------------------------------------------------\n // Buttons & Widgets\n\n \"button-background\": #ededed,\n \"button-text-color\": #333333,\n \"button-border-color\": #ccc,\n \"button-hover-background\": #c7c7c7,\n \"button-hover-text-color\": var(--button-text-color),\n\n \"dropdown-background\": var(--content-background),\n \"dropdown-border-color\": var(--toc-border-color),\n \"dropdown-text-color\": var(--toc-text-color),\n \"dropdown-hover-background\": var(--tocitem-active-background),\n \"dropdown-hover-text-color\": var(--tocitem-active-text-color),\n\n // ------------------------------------------------------------------------------\n // Other\n \"code-background\": #fdfdfd,\n \"code-inline-background\": #ededed,\n);\n\n// ==============================================================================\n// Block types\n\n// Variables for specific block types should look like those below. In this file\n// only \"top level\" blocks from the -like families are defined. \n// Other themes/color palettes may define\n// more specific ones - see palette_quad_chunks.scss for an example.\n\n// block-types based on those in entities.ent\n$block-types: \"assemblage-like\", \"definition-like\", \"theorem-like\", \"theorem-like\", \"axiom-like\", \"remark-like\", \"computation-like\", \"openproblem-like\", \"aside-like\", \"proof-like\", \"example-like\", \"project-like\", \"goal-like\", \"solution-like\";\n// TODO - \"proof\" should probably be updated to \"proof-like\" in HTML css\n\n@each $block in $block-types {\n $colors: map.merge(\n $colors,\n (\n // define background and border, but default to generic block colors\n \"#{$block}-body-background\": var(--block-body-background),\n \"#{$block}-border-color\": var(--block-border-color),\n )\n );\n}\n", "// This file contains functions and mixins for working with colors in SCSS\n\n@use \"sass:map\";\n@use \"sass:color\";\n\n@mixin set-root-colors($colors, $dark-colors: null) {\n :root {\n color-scheme: light;\n // prevent variable leak through to dark\n &:not(.dark-mode) {\n @include scss-to-css($colors);\n }\n }\n\n @if $dark-colors {\n :root.dark-mode {\n color-scheme: dark;\n @include scss-to-css($dark-colors);\n }\n }\n}\n\n// Renders a map of SCSS variables as CSS variables\n@mixin scss-to-css($colors) {\n @each $name, $value in $colors {\n --#{$name}: #{$value};\n }\n}\n\n// Create a map of colors that blend $color with $other at $mix-amounts\n// The resulting map will have keys of the form 'color-other-10'\n// Indicating 10% of other mixed into color\n@function mixes($color, $other, $mix-amounts) {\n $result: ();\n\n @each $i in $mix-amounts {\n $result: map.set($result, '#{$color}-#{$other}-#{$i}', 'color-mix(in oklab, var(--#{$color}), #{$other} #{$i}%)');\n }\n\n @return $result;\n}\n\n$std-mixes: (1, 2, 3, 4, 5, 10, 15, 20, 25, 30, 35, 40, 50, 60, 65, 70, 75, 80, 85, 90, 95, 96, 97, 98, 99);\n\n// Creates a map of color blends for a given color\n// By default it creates blends with black, white, and gray at $std-mixes amounts\n// Mixing is done using css color-mix function so that if a theme file has the base\n// css variable overridden, the blends will be updated accordingly\n@function get-blends($color, $shades: $std-mixes, $tints: $std-mixes, $tones: $std-mixes, ) {\n $shades: mixes($color, black, $std-mixes);\n $tints: mixes($color, white, $std-mixes);\n $tones: mixes($color, gray, $std-mixes);\n\n $blends: map.merge(\n $tints,\n $shades\n );\n\n $blends: map.merge(\n $blends,\n $tones\n );\n @return $blends;\n}\n\n//--------------------------------------------------------------------------\n// https://jonnykates.medium.com/automating-colour-contrast-ratios-with-sass-e201f3b52797\n// Formula there has a typo, need parens around the sum of the three color channels\n\n@function text-contrast($color, $light: #ffffff, $dark: #000000) {\n $color-brightness: round(\n (\n (color.red($color) * 299) +\n (color.green($color) * 587) +\n (color.blue($color) * 114)\n ) / 1000\n );\n\n $light-color: round(\n (\n (color.red(#ffffff) * 299) +\n (color.green(#ffffff) * 587) +\n (color.blue(#ffffff) * 114)\n ) / 1000\n );\n\n @if abs($color-brightness) < calc($light-color / 2){\n @return $light;\n } @else {\n @return $dark;\n }\n}\n\n// @debug \"text-contrast(#7b7b55) should be #ffffff: \" text-contrast(#7b7b55);\n// @debug \"text-contrast(#9b9b70) should be #000000: \" text-contrast(#9b9b70);\n// @debug \"text-contrast(#766f7a) should be #ffffff: \" text-contrast(#766f7a);\n// @debug \"text-contrast(#70909b) should be #000000: \" text-contrast(#70909b);\n//--------------------------------------------rgb(25, 25, 24)-----------------------\n"], + "mappings": "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0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAA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", "names": [] } diff --git a/_static/pretext/css/theme.css b/_static/pretext/css/theme.css old mode 100644 new mode 100755 index a4b58e4..ac5a6a7 --- a/_static/pretext/css/theme.css +++ b/_static/pretext/css/theme.css @@ -1,3 +1,3 @@ -@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Open Sans:ital,wght@0,400..700;1,400..700&display=swap";@import"https://fonts.googleapis.com/css2?family=PT Serif:ital,wght@0,400;0,700;1,400;1,700&display=swap";@import"https://fonts.googleapis.com/css2?family=Inconsolata:ital,wght@0,400..700;1,400..700&display=swap";:root{--base-content-width: 600px;--content-padding: 48px}body{margin:0;min-height:100vh;display:flex;flex-direction:column;align-items:stretch}body.pretext{color:var(--body-text-color);font-family:var(--font-body)}.ptx-page{position:relative;display:flex;flex-grow:1;width:100%}.ptx-main{flex-grow:1;position:relative;max-width:100%;container-name:ptx-main;container-type:inline-size}.ptx-main .ptx-content{max-width:696px;padding:24px 48px 60px}.worksheet .ptx-main .ptx-content{max-width:960px}.ptx-page{max-width:1200px;margin-left:auto;margin-right:auto}body.pretext,body.standalone{margin:0;padding:0;font-size:16px;background:var(--page-color, white)}body.pretext>a.assistive{padding:6px;position:absolute;top:-40px;left:0;color:#fff;border-right:1px solid white;border-bottom:1px solid white;border-bottom-right-radius:8px;background:#bf1722;z-index:10000}body.pretext>a.assistive:focus{top:0;outline:0;transition:top .1s ease-in,background .5s linear}.ptx-content-footer{display:flex;justify-content:space-around;max-width:696px;padding:2em 48px}.ptx-content-footer .button{font:inherit;display:flex;justify-content:center;align-items:center;padding:0 10px;gap:10px;min-height:34px;color:var(--button-text-color);background-color:var(--button-background);border-width:1px;border-color:var(--button-border-color);border-style:solid;border-radius:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;user-select:none}.ptx-content-footer .button:hover:not(.disabled){color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.ptx-content-footer .button:focus-visible{outline:2px solid var(--button-text-color);outline-offset:-2px}.ptx-content-footer .button.disabled{opacity:.4;cursor:not-allowed}.ptx-content-footer .button.hidden{display:none}.ptx-content-footer .button.open{color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.ptx-content-footer .button .icon{margin:0 -7px}.ptx-masthead{position:relative;background:var(--banner-background);width:100%;display:flex;justify-content:center}.ptx-masthead .ptx-banner{border-top:1px solid transparent;overflow:hidden;padding:10px;border-bottom:none;display:flex;width:100%;align-items:center;max-width:1200px}.ptx-masthead a{color:var(--doc-title-color, #2a5ea4)}.ptx-masthead a:active{color:var(--link-active-text-color)}.ptx-masthead .title-container{font-family:var(--font-headings);font-size:2em;padding-left:9.68px;overflow:hidden;flex:1}.ptx-masthead .title-container .heading{font-weight:700;font-size:100%;line-height:1.25em}.ptx-masthead .title-container .title:has(+.subtitle):after{content:":"}.ptx-masthead .title-container .subtitle{font-weight:400}.ptx-masthead .logo-link{height:5em;display:flex}.ptx-masthead .logo-link img{max-height:100%}.ptx-masthead .logo-link img[src$=".svg"]{height:100%}.ptx-masthead .byline{color:var(--byline-color);font-weight:400;margin:0;font-size:62.5%;min-height:inherit}@media screen and (max-width: 800px){.ptx-masthead{border-bottom:1px solid var(--page-border-color)}.ptx-masthead .ptx-banner{padding:10px 28px;display:flex;justify-content:center}.ptx-masthead .logo-link:before{font-size:1rem;margin-top:0}.ptx-masthead .title-container{width:fit-content;flex:unset}.ptx-masthead .title-container .heading{line-height:1em}.ptx-masthead .title-container .heading .subtitle{display:block;font-size:80%;line-height:1em}.ptx-masthead .byline{font-size:50%}}@media screen and (width <= 480px){.ptx-masthead .title-container{padding:0;text-align:center;font-size:1em}.ptx-masthead .logo-link,.ptx-masthead .byline{display:none}}.ptx-navbar{position:sticky;top:0;height:36px;width:100%;background:var(--navbar-background);border:0;border-top:1px solid var(--page-border-color);border-bottom:1px solid var(--page-border-color);margin:0;z-index:500;overflow:visible;display:flex}.ptx-navbar .ptx-navbar-contents{position:relative;display:flex;flex:1;justify-content:center;align-items:center;max-width:1200px;margin:0 auto}.ptx-navbar .button{font:inherit;display:flex;justify-content:center;align-items:center;padding:0 10px;gap:10px;min-height:34px;color:var(--button-text-color);background-color:var(--button-background);border-width:1px;border-color:var(--button-border-color);border-style:solid;border-radius:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;user-select:none}.ptx-navbar .button:hover:not(.disabled){color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.ptx-navbar .button:focus-visible{outline:2px solid var(--button-text-color);outline-offset:-2px}.ptx-navbar .button.disabled{opacity:.4;cursor:not-allowed}.ptx-navbar .button.hidden{display:none}.ptx-navbar .button.open{color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.ptx-navbar .button{height:100%;border-width:0}.ptx-navbar .toc-toggle{width:240px;gap:.4em;margin-left:0}.ptx-navbar :is(.treebuttons,.nav-runestone-controls,.nav-other-controls){display:flex}.ptx-navbar .treebuttons{flex:1 1 210px;justify-content:end}.ptx-navbar .nav-runestone-controls{flex:1 1 70px;justify-content:end}.ptx-navbar .pretext .navbar .dropdown{height:34px}.ptx-navbar .embed-popup{padding:10px;background-color:var(--navbar-background);position:absolute;margin-top:36px;border:1px solid var(--page-border-color);border-radius:3px;box-shadow:0 0 5px var(--primary-color-gray-80)}.ptx-navbar .embed-popup .embed-code-container{width:"100%";padding:5px}.ptx-navbar .embed-popup .embed-code-container .embed-code-textbox{width:100%;padding:10px;height:5em}.ptx-navbar .treebuttons>*{display:flex;align-items:center;justify-content:center;min-width:75px}.ptx-navbar .treebuttons .icon{margin:0 -7px}.ptx-navbar :is(.index-button) .icon{display:none}.ptx-navbar :is(.runestone-profile,.activecode-toggle,.searchbutton,.calculator-toggle,.light-dark-button,.embed-button) .name{display:none}.ptx-navbar .index-button{min-width:70px}.runestone-profile{position:relative}.runestone-profile .dropdown-content{display:none;position:absolute;background-color:var(--dropdown-background);min-width:160px;z-index:100;border:1px solid var(--dropdown-border-color);right:0;top:35px;text-align:start;padding:0}.runestone-profile .dropdown-content a{display:block;text-decoration:none;color:var(--dropdown-text-color);padding:2px 8px}.runestone-profile .dropdown-content a:is(:hover,:focus-visible){background-color:var(--dropdown-hover-background);color:var(--dropdown-hover-text-color)}.runestone-profile .dropdown-content hr{color:var(--dropdown-border-color);margin:4px 0}.runestone-profile:is(:hover,:focus-visible,:focus-within){overflow:visible}.runestone-profile:is(:hover,:focus-visible,:focus-within) .dropdown-content{display:block}@media screen and (max-width: 800px){.ptx-navbar .button{border-left-width:1px;border-right-width:1px;border-color:var(--page-border-color)}.ptx-navbar>*:not(:first-child){margin-left:-1px}.ptx-navbar{position:fixed;inset:auto 0 0;z-index:1100;background:var(--button-border-color);max-width:100vw}.ptx-navbar .ptx-navbar-contents{max-width:100vw}.ptx-navbar .nav-runestone-controls{flex:0}.ptx-navbar .toc-toggle{flex:2 1 100px}.ptx-navbar .treebuttons{flex:3 1 150px}.ptx-navbar .treebuttons>*{flex:1 1;min-width:35px}.ptx-navbar .index-button{display:none}.ptx-navbar .embed-popup{margin-top:unset;bottom:36px}.ptx-navbar .dropdown-content{top:unset;bottom:36px}.ptx-navbar :is(.toc-toggle,.previous-button,.up-button,.next-button,.calculator-toggle,.index-button,.embed-button) .name{display:none}}.ptx-sidebar{align-self:flex-start}.ptx-sidebar.visible{display:block}.ptx-sidebar.hidden{display:none;height:0}.ptx-toc{--codenumber-pad-left: .3rem;--codenumber-pad-right: .5rem;--toc-indent-first: calc(1rem + var(--codenumber-pad-left) + var(--codenumber-pad-right));--toc-indent-second: calc(1.7rem + var(--codenumber-pad-left) + var(--codenumber-pad-right));--toc-indent-third: calc(2.2rem + var(--codenumber-pad-left) + var(--codenumber-pad-right));background:var(--toc-background);margin:0;font-size:.9rem}.ptx-toc:is(.depth1,.parts.depth2){--codenumber-pad-right: .5rem}.ptx-toc .toc-item-list{margin:0;padding:0;list-style:none;background:var(--tocitem-background)}.ptx-toc .toc-item-list .active{list-style:none}.ptx-toc .toc-item{background-color:var(--tocitem-background);color:var(--toc-text-color);border-color:var(--toc-border-color)}.ptx-toc .toc-item a{color:inherit}.ptx-toc .toc-item.active:not(:has(.toc-item.active)){color:var(--tocitem-active-text-color)!important;background-color:var(--tocitem-active-background)!important;border-color:var(--tocitem-active-border-color)!important}.ptx-toc .toc-item>.toc-title-box>a:is(:hover,:focus){color:var(--tocitem-highlight-text-color);background-color:var(--tocitem-highlight-background);border-color:var(--tocitem-highlight-border-color)}.ptx-toc .toc-title-box{display:flex}.ptx-toc .toc-title-box>.internal{position:relative;display:flex;flex-grow:1;padding:.2em;font-weight:500}.ptx-toc .toc-item-list .toc-item-list .toc-title-box>.internal{font-weight:400}.ptx-toc .codenumber{min-width:var(--toc-indent-first);padding-left:var(--codenumber-pad-left);padding-right:var(--codenumber-pad-right);display:inline-block;text-align:left;flex-grow:0}.ptx-toc .toc-item{color:var(--toclevel1-text-color);background-color:var(--toclevel1-background)}.ptx-toc .toc-item .toc-item{color:var(--toclevel2-text-color);background-color:var(--toclevel2-background)}.ptx-toc .toc-item .toc-item .toc-item{color:var(--toclevel3-text-color);background-color:var(--toclevel3-background)}.book .ptx-toc .toc-chapter .toc-item-list .codenumber,.article .ptx-toc .toc-section .toc-item-list .codenumber,.ptx-toc .toc-backmatter .toc-item-list .codenumber{font-size:80%;padding-top:.16em;min-width:var(--toc-indent-second)}.book .ptx-toc .toc-chapter .toc-item-list .toc-item-list .codenumber,.article .ptx-toc .toc-section .toc-item-list .toc-item-list .codenumber,.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .codenumber{min-width:var(--toc-indent-third);visibility:hidden}.ptx-toc .toc-item-list .toc-item-list .toc-item-list a:is(:hover,:focus)>.codenumber{visibility:visible}.ptx-toc .toc-item .toc-title-box .title{margin-left:var(--toc-indent-first)}.book .ptx-toc .toc-chapter .toc-item-list .title,.article .ptx-toc .toc-section .toc-item-list .title,.ptx-toc .toc-backmatter .toc-item-list .title{margin-left:var(--toc-indent-second)}.book .ptx-toc .toc-chapter .toc-item-list .toc-item-list .title,.article .ptx-toc .toc-section .toc-item-list .toc-item-list .title,.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .title{margin-left:var(--toc-indent-third)}.ptx-toc .toc-item>.toc-title-box .codenumber+.title{margin-left:0!important}.ptx-toc .toc-chapter .toc-item-list .title,.ptx-toc .toc-section .toc-item-list .title,.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .title{font-size:90%}.ptx-toc .toc-chapter .toc-item-list .toc-item-list .title,.ptx-toc .toc-section .toc-item-list .toc-item-list .title,.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .toc-item-list .title{font-style:italic}.ptx-toc.depth0 ul.structural,.ptx-toc.depth1 ul.structural ul.structural,.ptx-toc.depth2 ul.structural ul.structural ul.structural,.ptx-toc.depth3 ul.structural ul.structural ul.structural ul.structural,.ptx-toc.depth4 ul.structural ul.structural ul.structural ul.structural ul.structural{display:none}.ptx-toc.depth1 ul.structural .toc-item.contains-active{background-color:var(--tocitem-active-backgrounde);color:var(--tocitem-active-text-color)}.ptx-toc.depth2 ul.structural ul.structural .toc-item.contains-active{background-color:var(--tocitem-active-background);color:var(--tocitem-active-text-color)}.ptx-toc.focused ul.structural:not(.contains-active)>.toc-item{display:none}.ptx-toc.focused ul.structural:not(.contains-active)>.toc-item.visible{display:block}.ptx-toc.focused ul.structural .toc-item.active>ul.structural>.toc-item{display:block}.ptx-toc.focused ul.structural .toc-item.active>ul.structural>.toc-item.hidden{display:none}.ptx-toc.focused .toc-expander{border:0;padding:2px 5px;background:inherit;color:inherit;display:flex;align-items:center}.ptx-toc.focused .toc-expander .icon{font-size:1.25em;line-height:18px;font-variation-settings:"wght" 200}.ptx-toc.focused .toc-expander:is(:hover){background-color:var(--tocitem-highlight-background);color:var(--tocitem-highlight-text-color)}.ptx-toc.focused .toc-expander:is(:hover) .icon{fill:var(--tocitem-highlight-text-color)}.ptx-toc.focused .toc-item>.toc-title-box>.toc-expander>.icon:before{content:"add"}.ptx-toc.focused .toc-item.expanded>.toc-title-box>.toc-expander>.icon:before{content:"remove"}.ptx-sidebar{flex:0 0 240px;position:sticky;top:36px;overflow-y:hidden}.ptx-toc{position:sticky;top:36px;overflow-y:auto;overflow-x:hidden;height:calc(100vh - 36px);margin-top:-1px}.ptx-toc>.toc-item-list:first-child>.toc-item:last-child{border-bottom:3px solid var(--toc-border-color)}@media screen and (max-width: 936px){.ptx-sidebar{display:none;position:sticky;top:36px;background:var(--content-background);min-height:30vh;border-right:2px solid var(--toc-border-color);border-bottom:2px solid var(--toc-border-color);width:240px}}@media screen and (max-width: 800px){.ptx-sidebar{position:fixed;z-index:1000;top:unset;height:auto;max-height:80vh;max-width:80vw;bottom:36px;border-right:2px solid var(--toc-border-color);border-top:2px solid var(--toc-border-color)}.ptx-toc{border-top:2px solid var(--toc-border-color);border-bottom:0;max-height:80vh}}.ptx-page-footer{background:var(--footer-background);padding-top:0;border-top:2px solid var(--page-border-color);border-bottom:2px solid var(--page-border-color);display:flex;flex-direction:row;justify-content:center;width:100%;gap:90px;position:relative}.ptx-page-footer>a{margin:1em 0;color:var(--body-text-color)}.ptx-page-footer>a>.logo:first-child{height:3em;width:unset;margin:0}.ptx-page-footer .feedback-link{font:inherit;display:flex;justify-content:center;align-items:center;padding:0 10px;gap:10px;min-height:34px;color:var(--button-text-color);background-color:var(--button-background);border-width:1px;border-color:var(--button-border-color);border-style:solid;border-radius:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;user-select:none}.ptx-page-footer .feedback-link:hover:not(.disabled){color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.ptx-page-footer .feedback-link:focus-visible{outline:2px solid var(--button-text-color);outline-offset:-2px}.ptx-page-footer .feedback-link.disabled{opacity:.4;cursor:not-allowed}.ptx-page-footer .feedback-link.hidden{display:none}.ptx-page-footer .feedback-link.open{color:var(--button-hover-text-color);background-color:var(--button-hover-background)}@media screen and (max-width: 800px){.ptx-page-footer{gap:20px;justify-content:center;margin-bottom:34px}.ptx-page-footer>a>.logo:first-child{height:2em}}@container ptx-main (width < 696px){.ptx-page>.ptx-main .ptx-content{padding-left:28px;padding-right:28px;max-width:656px}}.aside-like>.knowl__link{color:var(--aside-like-link-color);border-bottom-color:var(--aside-like-link-color)}.aside-like>.knowl__content{margin-left:30px;margin-right:30px;border:2px solid var(--aside-like-border-color);background-color:var(--aside-like-body-background)}@media screen and (min-width: 1280px){details.aside-like{position:relative;margin-left:-248px;width:200px;right:-248px;float:right;clear:right}.multicolumn details.aside-like{position:relative;margin-left:inherit;width:auto;right:0;float:none;clear:none}details.aside-like>.knowl__content{margin-left:0;margin-right:0;background-color:var(--aside-like-body-background);z-index:100}}.code-box{overflow-x:auto}.code-display{overflow-x:auto;font-family:var(--font-monospace)}.console,.program{border:1px solid var(--page-border-color);padding:5px 15px;overflow-x:auto;margin:0;font-family:var(--font-monospace);background:var(--code-background);font-size:.93rem;line-height:1.2}.code-inline{font-family:var(--font-monospace);white-space:pre;color:var(--body-text-color);background:var(--code-inline-background);border:1px solid color-mix(in oklab,var(--code-inline-background) 50%,#888);border-radius:.2em;display:inline-block;overflow-x:auto;max-width:100%;vertical-align:middle;line-height:normal;padding:.0625em .15em}.prompt.unselectable{user-select:none}.code-block{border-left:1px solid #aaa;padding:0 15px 5px;overflow-x:auto;margin-top:0;margin-bottom:0;font-family:var(--font-monospace);background:var(--code-background);font-size:.93rem;line-height:1.2}.code-block:before{content:" ";font-size:50%;border-top:1px solid #aaa;display:block;margin-right:auto;margin-left:-15px;width:3em}.code-display{margin:.5em 0}.clipboardable:has(.code-display){margin:.25em 0}.clipboardable:has(.code-display) .code-display{margin:0;padding:.25em 0}.clipboardable{position:relative;display:flow-root}.clipboardable .code-copy{position:absolute;right:0;top:0;opacity:.25;border-width:0;background:none;cursor:pointer;z-index:1;white-space-collapse:collapse;padding:1px;scale:.85}.clipboardable .code-copy:hover{opacity:.7}.clipboardable .code-copy .checkmark{display:none}.clipboardable .code-copy.copied{opacity:1;color:#3cb371;cursor:not-allowed;pointer-events:none}.clipboardable .code-copy.copied .copyicon{display:none}.clipboardable .code-copy.copied .checkmark{display:inline}@media print{.code-copy{display:none}}:is(.cols2,.cols3,.cols4,.cols5,.cols6){display:flex;flex-wrap:wrap;justify-content:start}.cols2>.exercise-like{min-width:calc(50% - 2em);width:min-content;margin-right:2em}.cols3>.exercise-like{min-width:calc(33.3333333333% - 2em);width:min-content;margin-right:2em}.cols4>.exercise-like{min-width:calc(25% - 2em);width:min-content;margin-right:2em}.cols5>.exercise-like{min-width:calc(20% - 2em);width:min-content;margin-right:2em}.cols6>.exercise-like{min-width:calc(16.6666666667% - 2em);width:min-content;margin-right:2em}.exercise-like>.heading{font-size:inherit}.exercisegroup .exercise-like{margin-top:1em}.exercisegroup>.heading{font-size:1.1em;line-height:1.05em;margin-top:.75em;display:inline}.exercisegroup>.heading+.introduction{display:inline}.exercisegroup>.heading+.introduction>.para:first-child{display:inline}.exercisegroup .exercisegroup-exercises{margin-top:1em;padding-left:40px}.exercisegroup .conclusion{margin-left:40px}.exercisegroup .conclusion .heading{font-size:inherit}.exercise-like>.exercise-like.task{margin-left:20px}.exercise-wrapper form button:hover{cursor:pointer;background-color:#e0e0ff;border:1px solid #000}.exercise-wrapper form button:active{background-color:#f0f0f0}.exercise-wrapper form button+button{margin-left:.8em}.exercise-wrapper,.exercise-wrapper form,.exercise-wrapper form>div:first-child{display:inline-block;vertical-align:top;width:100%}.knowl .exercise-wrapper,.knowl .exercise-wrapper form,.knowl .exercise-wrapper form>div:first-child{width:100%}.exercise-wrapper>.para:first-child,.exercisegroup .exercise-wrapper>.para:first-child{margin-top:0;display:inline}.heading+.exercise-wrapper{display:inline-block;max-width:95%;width:100%}.cols2 .heading+.exercise-wrapper{width:auto}section.solutions>.heading+.heading{margin-top:.5em}section.solutions>h3.heading,section.solutions section>h3.heading{font-size:1.6em}section.solutions>h4.heading,section.solutions section>h4.heading{font-size:1.45em}section.solutions>h5.heading,section.solutions section>h5.heading{font-size:1.35em}section.solutions>h6.heading,section.solutions section>h6.heading{font-size:1.25em}.sbsgroup>*:not(:first-child){margin-top:1.5em}.sbsrow{display:grid;grid-template-rows:auto auto}.sbspanel{grid-row:1}.sbspanel>.table>figcaption{text-align:center}.sbspanel .tabular{overflow-x:auto;margin-left:auto;margin-right:auto}.sbspanel--top{align-self:start}.sbspanel--middle{align-self:center}.sbspanel--bottom{align-self:end}.sbspanel:has(.figure-like,.table-like),.sbspanel>:is(.figure-like,.table-like){display:contents}.sbspanel>:is(.figure-like,.table-like)>*:first-child{grid-row:1;align-items:start;align-self:start}.sbspanel--top>:is(.figure-like,.table-like)>*:first-child{align-items:start;align-self:start}.sbspanel--middle>:is(.figure-like,.table-like)>*:first-child{align-items:center;align-self:center}.sbspanel--bottom>:is(.figure-like,.table-like)>*:first-child{align-items:end;align-self:end}.sbspanel>:is(.figure-like,.table-like)>*:nth-child(2){margin-top:.5em;grid-row:2;width:100%}.sbspanel:nth-of-type(2) *{grid-column:2}.sbspanel:nth-of-type(3) *{grid-column:3}.sbspanel:nth-of-type(4) *{grid-column:4}.sbspanel:nth-of-type(5) *{grid-column:5}.sbspanel:nth-of-type(6) *{grid-column:6}.sbspanel:nth-of-type(7) *{grid-column:7}.sbspanel:nth-of-type(8) *{grid-column:8}.sbspanel:nth-of-type(9) *{grid-column:9}.sbspanel:nth-of-type(10) *{grid-column:10}.discussion-like>.heading:first-child{display:inline;line-height:initial;border-bottom:0}.discussion-like>.heading:first-child:after{content:"\2009"}.discussion-like>.heading:first-child+:is(.para,.para.logical,.introduction){display:inline}.discussion-like>.heading:first-child+:is(.para,.para.logical,.introduction)>.para:first-child{display:inline}.discussion-like>.heading:first-child+:is(.para,.para.logical,.introduction)>.para.logical:first-child>.para:first-child{display:inline}.discussion-like>.heading :after{content:"\2009"}.discussion-like>.heading+.para{display:inline}.discussion-like>.heading .space,.discussion-like>.heading .codenumber,.discussion-like>.heading .period{display:none}.discussion-like>.heading .type:after{content:". "}.source-view__link,.knowl__link{cursor:pointer;margin-left:.1em;margin-right:.1em;color:var(--knowl-link-color);border-bottom:1px dotted var(--knowl-link-color)}.source-view{margin:.5em 0}summary.source-view__link,summary.knowl__link{display:list-item inline}.source-view__link>*,.knowl__link>*{display:inline}.source-view__link:is(:hover,:focus,[open]),.knowl__link:is(:hover,:focus,[open]){background-color:var(--knowl-background);border-bottom-color:transparent}.source-view__content{margin:.2em 0}.knowl__content{margin:.75em 0;border:3px solid var(--knowl-border-color);border-radius:8px;padding:12px;background-color:var(--knowl-background)}.knowl__content .incontext{display:block;font-size:85%;text-align:right}.knowl__content .knowl__content{background-color:var(--knowl-nested-1-background)}.knowl__content .knowl__content .knowl__content{background-color:var(--knowl-nested-2-background)}.knowl__content .knowl__content .knowl__content .knowl__content{background-color:var(--knowl-nested-3-background)}.knowl__content .knowl__content .knowl__content .knowl__content .knowl__content{background-color:var(--knowl-nested-4-background)}.knowl__content>figure{margin-left:0;margin-right:0}.assemblage-like:not(.knowl__content,.born-hidden-knowl){border:2px solid var(--assemblage-like-border-color);background-color:var(--assemblage-like-body-background);padding:10px;border-radius:8px}.assemblage-like:not(.knowl__content,.born-hidden-knowl)>.heading:first-child{display:block;color:var(--block-head-color);margin-bottom:.5em}.assemblage-like:not(.knowl__content,.born-hidden-knowl)>*:first-child{margin-top:0}.goal-like:not(.knowl__content,.born-hidden-knowl){border:3px solid var(--goal-like-border-color);background-color:var(--goal-like-body-background);padding:20px;padding-top:calc(20px + .25ex);margin-top:2.5em!important}.goal-like:not(.knowl__content,.born-hidden-knowl)>.heading:first-child{background-color:var(--content-background);display:block;color:var(--block-head-color);margin-bottom:.5em;padding:5px 10px;margin-top:calc(-25px - 1.65ex);width:fit-content;border:0}.goal-like:not(.knowl__content,.born-hidden-knowl)>.heading:first-child:after{display:none}.knowl__content *:first-child .goal-like{margin-top:1em}.theorem-like:not(.knowl__content,.born-hidden-knowl),.definition-like:not(.knowl__content,.born-hidden-knowl),.example-like:not(.knowl__content,.born-hidden-knowl),.project-like:not(.knowl__content,.born-hidden-knowl),.remark-like:not(.knowl__content,.born-hidden-knowl),.openproblem-like:not(.knowl__content,.born-hidden-knowl),.computation-like:not(.knowl__content,.born-hidden-knowl){padding-left:10px;border-left:2px solid var(--block-border-color)}.theorem-like:not(.knowl__content,.born-hidden-knowl)>.heading:first-child,.definition-like:not(.knowl__content,.born-hidden-knowl)>.heading:first-child,.example-like:not(.knowl__content,.born-hidden-knowl)>.heading:first-child,.project-like:not(.knowl__content,.born-hidden-knowl)>.heading:first-child,.remark-like:not(.knowl__content,.born-hidden-knowl)>.heading:first-child,.openproblem-like:not(.knowl__content,.born-hidden-knowl)>.heading:first-child,.computation-like:not(.knowl__content,.born-hidden-knowl)>.heading:first-child{color:var(--block-head-color)}.theorem-like:not(.knowl__content,.born-hidden-knowl):after,.definition-like:not(.knowl__content,.born-hidden-knowl):after,.example-like:not(.knowl__content,.born-hidden-knowl):after,.project-like:not(.knowl__content,.born-hidden-knowl):after,.remark-like:not(.knowl__content,.born-hidden-knowl):after,.openproblem-like:not(.knowl__content,.born-hidden-knowl):after,.computation-like:not(.knowl__content,.born-hidden-knowl):after{content:"";border-bottom:2px solid var(--block-border-color);display:block;margin-right:auto;margin-left:-10px;padding-top:10px;width:1.5em}.knowl__content .theorem-like,.knowl__content .definition-like,.knowl__content .example-like,.knowl__content .project-like,.knowl__content .remark-like,.knowl__content .openproblem-like,.knowl__content .computation-like{padding-left:0;border-left:0}.knowl__content .theorem-like:after,.knowl__content .definition-like:after,.knowl__content .example-like:after,.knowl__content .project-like:after,.knowl__content .remark-like:after,.knowl__content .openproblem-like:after,.knowl__content .computation-like:after{display:none}.project-like:not(.knowl__content,.born-hidden-knowl):not(.knowl__content,.born-hidden-knowl){padding-left:10px;border-left:2px dotted var(--block-border-color)}.project-like:not(.knowl__content,.born-hidden-knowl):not(.knowl__content,.born-hidden-knowl)>.heading:first-child{color:var(--block-head-color)}.project-like:not(.knowl__content,.born-hidden-knowl):not(.knowl__content,.born-hidden-knowl):after{content:"";border-bottom:2px dotted var(--block-border-color);display:block;margin-right:auto;margin-left:-10px;padding-top:10px;width:1.5em}.knowl__content .project-like:not(.knowl__content,.born-hidden-knowl){padding-left:0;border-left:0}.knowl__content .project-like:not(.knowl__content,.born-hidden-knowl):after{display:none}.proof:not(.knowl__content,.born-hidden-knowl){padding-right:10px;border-right:1px solid var(--block-border-color)}.proof:not(.knowl__content,.born-hidden-knowl)>.heading:first-child{color:var(--block-head-color)}.proof:not(.knowl__content,.born-hidden-knowl):after{content:"";border-bottom:1px solid var(--block-border-color);display:block;margin-left:auto;margin-right:-10px;padding-top:10px;width:1.5em}.knowl__content .proof{padding-right:0;border-right:0}.knowl__content .proof:after{display:none}.knowl__content .theorem-like,.knowl__content .definition-like,.knowl__content .example-like,.knowl__content .project-like,.knowl__content .remark-like,.knowl__content .openproblem-like,.knowl__content .computation-like{padding-left:0;margin-left:0;border-left:none}.knowl__content .theorem-like:after,.knowl__content .definition-like:after,.knowl__content .example-like:after,.knowl__content .project-like:after,.knowl__content .remark-like:after,.knowl__content .openproblem-like:after,.knowl__content .computation-like:after{border-bottom:none;display:none}section.solutions:not(:is(:first-child)):not(.knowl__content,.born-hidden-knowl){padding:10px 10px 10px 15px;border-left:10px solid var(--page-border-color);background-color:var(--content-background)}section.solutions:not(:is(:first-child)):not(.knowl__content,.born-hidden-knowl)>.heading:first-child{margin-top:0}.paragraphs>.heading:first-child,article>.heading:first-child{display:inline;line-height:initial;border-bottom:0}.paragraphs>.heading:first-child:after,article>.heading:first-child:after{content:"\2009"}.paragraphs>.heading:first-child+:is(.para,.para.logical,.introduction),article>.heading:first-child+:is(.para,.para.logical,.introduction){display:inline}.paragraphs>.heading:first-child+:is(.para,.para.logical,.introduction)>.para:first-child,article>.heading:first-child+:is(.para,.para.logical,.introduction)>.para:first-child{display:inline}.paragraphs>.heading:first-child+:is(.para,.para.logical,.introduction)>.para.logical:first-child>.para:first-child,article>.heading:first-child+:is(.para,.para.logical,.introduction)>.para.logical:first-child>.para:first-child{display:inline}*{box-sizing:border-box}@layer spacing{:is(section,article,.knowl__content)>*:not(:first-child){margin-top:1.5em}:is(section,article,.knowl__content)>.para+.para{margin-top:1em}.ptx-content :is(ul,td,li,dd,.blockquote,.sbspanel,.para.logical)>*:not(:first-child){margin-top:.5em}}ol.no-marker,ul.no-marker,li.no-marker{list-style-type:none}ol.decimal{list-style-type:decimal}ol.lower-alpha{list-style-type:lower-alpha}ol.lower-alpha-level-1>li::marker{content:"(" counter(list-item,lower-alpha) ") "}ol.upper-alpha{list-style-type:upper-alpha}ol.lower-roman{list-style-type:lower-roman}ol.upper-roman{list-style-type:upper-roman}ul.disc{list-style-type:disc}ul.square{list-style-type:square}ul.circle{list-style-type:circle}dl:is(.description-list,.glossary){margin:0}dl:is(.description-list,.glossary) dt{font-weight:700;max-width:55ex}dl:is(.description-list,.glossary) dd:after{content:"";display:block;clear:both}.para>dl:is(.description-list){margin-top:.5em;margin-bottom:.5em}dl.glossary dt{margin-top:1.25em}dl.glossary dt:first-of-type{margin-top:0}dl.glossary dd{margin-left:5ex}dl.description-list dt,dl.description-list dd{margin-top:1em}dl.description-list dt:first-of-type,dl.description-list dd:first-of-type{margin-top:0}dl.description-list dt{float:left;clear:both;text-align:right;width:18ex;margin-right:1ex}dl.description-list dd{margin-left:22ex}dl.description-list.narrow dt{width:11ex}dl.description-list.narrow dd{margin-left:15ex}dl.description-list.wide dt{width:25ex}dl.description-list.wide dd{margin-left:29ex}dl.description-list dt:first-of-type{clear:none}.description-list+*{clear:both}dl.description-list dl dt{width:8ex}dl.description-list dd dd{margin-left:18ex}dl.description-list dl dd{margin-left:12ex}@media screen and (max-width: 480px){dl.description-list dt{float:none;margin-left:0;text-align:left}dl.description-list dd,dl.description-list.narrow dd,dl.description-list.wide dd{margin-top:.5em;margin-left:3em;max-width:calc(100% - 3em)}}.cols2>li{min-width:calc(50% - 2em);width:min-content;margin-right:2em}.cols3>li{min-width:calc(33.3333333333% - 2em);width:min-content;margin-right:2em}.cols4>li{min-width:calc(25% - 2em);width:min-content;margin-right:2em}.cols5>li{min-width:calc(20% - 2em);width:min-content;margin-right:2em}.cols6>li{min-width:calc(16.6666666667% - 2em);width:min-content;margin-right:2em}.ptx-content li{margin-top:.5em}.ptx-content li .li--heading-title{font-size:100%;font-weight:400;font-style:italic}.para>:is(ol,ul){margin-top:.5em;margin-bottom:.5em}ol>li{padding-left:.25em}.fillin{display:inline-block;border:none;border-width:1px;margin-right:.1em;margin-left:.1em;margin-bottom:-.25em}.fillin.underline{border-bottom-style:solid;border-width:1px}.fillin.box{outline:1px solid var(--body-text-color);height:1.3em}.fillin.shade{background-color:var(--fillin-background-color, #eee);height:1.3em}:root.dark-mode{--fillin-background-color: #444}.heading:is(h1,h2,h3,h4,h5,h6){margin:0;font-size:unset}.heading{line-height:1.1;font-family:var(--font-headings);font-weight:700;margin-top:0;margin-bottom:0}section>.heading{font-size:1.75em;color:var(--body-title-color);line-height:1.25em;margin-top:2.5em;margin-bottom:.5em}section>.heading+*{margin-top:.5em}.ptx-content>section>.heading{margin-top:.5em}section section>.heading{font-size:1.5em;margin-top:2em}section section section>.heading{font-size:1.4em;margin-top:2em}article>.heading{font-size:1.25em;margin-top:1.5em}article>.heading+*{margin-top:.5em}.paragraphs>.heading{font-size:1.125em}:is(section,article)>.heading+:is(section,article)>.heading{margin-top:.5em}@media screen and (max-width: 480px){section>.heading{font-size:1.5em;line-height:1.33em;margin-top:1em}section section>.heading{font-size:1.3em;line-height:1.15em}section section section>.heading{font-size:1.15em;line-height:1em}}.heading.hide-type>.type{display:none}a{color:var(--link-text-color);text-decoration:none}a:hover,a:focus{text-decoration:none}a[href^="mailto:"]{white-space:pre}.ptx-content a.internal{color:var(--link-text-color);font-weight:700}.ptx-content a.external{color:var(--link-alt-text-color);font-weight:700}.ptx-content a.internal:hover,.ptx-content a.internal:hover *,.ptx-content a.internal:focus,.ptx-content a.internal:focus *{color:var(--link-active-text-color);background-color:var(--link-active-background);font-weight:700}.ptx-content a.external:hover,.ptx-content a.external:hover *,.ptx-content a.external:focus,.ptx-content a.external:focus *{color:var(--link-alt-active-text-color);background-color:var(--link-alt-active-background);font-weight:700}.ptx-content table{border-spacing:0;border-collapse:collapse}.ptx-content td{padding:2px 5px;font-size:90%}.ptx-content td img{max-width:200px;margin-right:30px}.ptx-content th{padding:2px 5px}.ptx-content th .lines{white-space:nowrap}.ptx-content th.l{text-align:left}.ptx-content th.c{text-align:center}.ptx-content th.r{text-align:right}.ptx-content th.j{text-align:justify}.ptx-content th.t{vertical-align:top}.ptx-content th.b{vertical-align:bottom}.ptx-content th.m{vertical-align:middle}.ptx-content th.l0{border-left:none}.ptx-content th.l1{border-left:1px solid var(--body-text-color)}.ptx-content th.l2{border-left:2px solid var(--body-text-color)}.ptx-content th.l3{border-left:3px solid var(--body-text-color)}.ptx-content th.r0{border-right:none}.ptx-content th.r1{border-right:1px solid var(--body-text-color)}.ptx-content th.r2{border-right:2px solid var(--body-text-color)}.ptx-content th.r3{border-right:3px solid var(--body-text-color)}.ptx-content th.t0{border-top:none}.ptx-content th.t1{border-top:1px solid var(--body-text-color)}.ptx-content th.t2{border-top:2px solid var(--body-text-color)}.ptx-content th.t3{border-top:3px solid var(--body-text-color)}.ptx-content th.b0{border-bottom:none}.ptx-content th.b1{border-bottom:1px solid var(--body-text-color)}.ptx-content th.b2{border-bottom:2px solid var(--body-text-color)}.ptx-content th.b3{border-bottom:3px solid var(--body-text-color)}.ptx-content td .lines{white-space:nowrap}.ptx-content td.l{text-align:left}.ptx-content td.c{text-align:center}.ptx-content td.r{text-align:right}.ptx-content td.j{text-align:justify}.ptx-content td.t{vertical-align:top}.ptx-content td.b{vertical-align:bottom}.ptx-content td.m{vertical-align:middle}.ptx-content td.l0{border-left:none}.ptx-content td.l1{border-left:1px solid var(--body-text-color)}.ptx-content td.l2{border-left:2px solid var(--body-text-color)}.ptx-content td.l3{border-left:3px solid var(--body-text-color)}.ptx-content td.r0{border-right:none}.ptx-content td.r1{border-right:1px solid var(--body-text-color)}.ptx-content td.r2{border-right:2px solid var(--body-text-color)}.ptx-content td.r3{border-right:3px solid var(--body-text-color)}.ptx-content td.t0{border-top:none}.ptx-content td.t1{border-top:1px solid var(--body-text-color)}.ptx-content td.t2{border-top:2px solid var(--body-text-color)}.ptx-content td.t3{border-top:3px solid var(--body-text-color)}.ptx-content td.b0{border-bottom:none}.ptx-content td.b1{border-bottom:1px solid var(--body-text-color)}.ptx-content td.b2{border-bottom:2px solid var(--body-text-color)}.ptx-content td.b3{border-bottom:3px solid var(--body-text-color)}.ptx-content th.r0.l0,.ptx-content td.r0.l0{padding-left:.8em;padding-right:.8em}.ptx-content tr.header-vertical th{writing-mode:vertical-rl;padding-left:2em}.ptx-content .center table{text-align:center;margin-left:auto;margin-right:auto}.tabular-box{margin-top:.5em;overflow-x:auto}.tabular-box.natural-width table{margin-left:auto;margin-right:auto}table.notation-list tr th{text-align:left;margin-left:1em}table.notation-list tr td{text-align:left;vertical-align:top}.frontmatter>.heading{display:block;text-align:center}.frontmatter>.heading .title,.frontmatter .book>.heading .title{font-size:1.3em}.frontmatter>.heading .subtitle,.frontmatter .book>.heading .subtitle{display:block;font-weight:400;color:var(--byline-color);font-size:.875em;line-height:1.42857em;margin-top:.35714em}.frontmatter>.para:first-of-type{margin-top:4em}.frontmatter>.author,.frontmatter>.credit{margin-top:2em;text-align:center}.frontmatter .author:first-of-type{margin-top:4em}.frontmatter>.author .author-name{font-size:120%}.frontmatter .date{display:block;margin-top:2em;text-align:center}.frontmatter .credit .title{font-size:1em}.frontmatter .credit .author{font-size:.9em;margin-top:.75em}.frontmatter .author-info{font-size:90%}.frontmatter .summary-links{margin-top:4em}.frontmatter .abstract{margin:4em 2em}.frontmatter .keywords,.frontmatter .support{margin-top:2em}.frontmatter .abstract>.title,.frontmatter .keywords>.title,.frontmatter .support>.title{font-size:1.125em;font-weight:600;line-height:1.125em;display:inline}.frontmatter .abstract>.title:after,.frontmatter .keywords>.title:after,.frontmatter .support>.title:after{content:".\2009\2009\2009"}.frontmatter .abstract>.title+.para,.frontmatter .keywords>.title+.para,.frontmatter .support>.title+.para{display:inline}.frontmatter .colophon .copyright,.frontmatter .colophon .license{margin-top:2.5em}.ptx-content .summary-links{font-family:var(--font-headings);display:block;margin-top:1em}.ptx-content .summary-links a{color:var(--summary-link-text-color);background:var(--summary-link-background);font-size:1.5em;line-height:1.25em;padding:10px 60px 10px 20px;border-radius:3px;position:relative;display:block;font-weight:unset}.ptx-content .summary-links a .title{font-style:normal}.ptx-content .summary-links a .codenumber{margin-right:.41667em}.ptx-content .summary-links a:after{right:.83333em;content:"";position:absolute;top:50%;margin-top:-.4em;width:0;height:0;border-top:.4em solid transparent;border-bottom:.4em solid transparent;border-left:.4em solid var(--summary-link-text-color)}.ptx-content .summary-links a:hover,.ptx-content .summary-links a:hover *{color:var(--summary-link-hover-text-color);background:var(--summary-link-hover-background)}.ptx-content .summary-links a:hover .title{font-weight:400}.ptx-content .summary-links a:hover:after{border-left:.4em solid var(--summary-link-hover-text-color)}.ptx-content .summary-links ul{list-style-type:none;padding:0;margin-top:0}.ptx-content .summary-links li{margin-top:5px}@media screen and (width <= 480px){.ptx-content .summary-links a{font-size:100%;line-height:1.25em}}.ptx-footnote{display:inline-block;position:relative}.ptx-footnote[open]{display:contents}.ptx-footnote[open] .ptx-footnote__number:before{font-size:smaller;content:"[x]";visibility:visible;vertical-align:super}.ptx-footnote[open] .ptx-footnote__number sup{display:none}.ptx-footnote__number{display:inline-block;cursor:pointer;min-width:1em}.ptx-footnote__number::marker{content:""}.ptx-footnote__contents{display:block;font-style:italic;background:var(--knowl-background);border-radius:0;padding:8px;margin:4px auto;width:fit-content;max-width:calc(100% - 60px);border:2px solid var(--knowl-border-color);color:var(--body-text-color);font-weight:400;font-size:var(1rem)}.navbar .indexnav{position:absolute;top:46px;right:0}.mininav{float:left;padding-top:.7ex;padding-left:1ex}.indexjump{margin-left:1.5ex;margin-top:.2ex;padding-top:0;float:left;line-height:.95}.indexjump a{padding-left:2.5px;padding-right:.5px;width:2.5ex;margin-right:-1px;color:inherit;font-size:80%;text-align:center}.indexjump a:after{content:"";display:inline-block}.indexjump a:nth-of-type(14){padding-left:1.8ex}.indexjump a:last-child{padding-right:10px}.indexjump a:hover{background:var(--activated-content-bg)}.indexitem{margin-top:4px}.subindexitem{margin-left:2em;font-size:95%;margin-top:-1px}.subsubindexitem{margin-left:3.5em;font-size:95%;margin-top:-1px}.indexknowl{margin-left:.11em}em+.indexknowl{margin-left:-.25em}.indexknowl a{margin-left:2em}.indexitem .see,.subindexitem .see,.subsubindexitem .see,.indexitem .seealso,.subindexitem .seealso,.subsubindexitem .seealso{margin-left:1em;margin-right:0}.indexitem .see em,.subindexitem .see em,.subsubindexitem .see em,.indexitem .seealso em,.subindexitem .seealso em,.subsubindexitem .seealso em{margin-right:.25em;font-style:italic}.indexitem .see+.see,.subindexitem .see+.see,.subsubindexitem .see+.see,.indexitem .seealso+.seealso,.subindexitem .seealso+.seealso,.subsubindexitem .seealso+.seealso{margin-left:0;margin-right:0}.indexitem .indexknowl{font-size:90%}.indexitem [data-knowl],.subindexitem [data-knowl],.indexitem [data-knowl]:hover{padding-right:2px;padding-left:2px}.indexknowl [data-knowl]:hover,.indexknowl .active[data-knowl]{margin-left:2em}.subindexitem .indexknowl,.subsubindexitem .indexknowl{font-size:95%}.indexletter{margin-top:1.5em}.image-box,.audio-box,.video-box,.asymptote-box{position:relative}.image-box .asymptote-box iframe.asymptote,iframe.asymptote,.video-box .video,.video-box .video-poster{position:absolute;top:0;left:0;width:100%;height:100%}.image-box img,img.contained{width:100%}.ptx-content img,.ptx-content svg{background:var(--ptx-image-bg)}.mermaid>svg{background:none}.image-description summary{list-style:none;cursor:pointer}.image-archive{margin:.75em auto 0;font-family:var(--font-monospace);justify-content:center;display:flex;gap:.5em}.image-box>img:not(.mag_popup){cursor:zoom-in}img.mag_popup{border:1px solid #666;box-shadow:4px 6px 4px #999;cursor:zoom-out}.mag_popup_container{width:100%;position:absolute;z-index:1001;overflow-x:visible}.audio{width:100%}.video-poster{cursor:pointer}figure{clear:both;position:relative;margin-left:0;margin-right:0}figcaption{margin-left:auto;margin-right:auto;margin-top:.5em}figcaption code.code-inline{white-space:pre}figcaption .codenumber,figcaption .type{font-weight:700}figcaption .codenumber:after,figcaption .type:last-of-type:after{content:"\2002"}figcaption .para:first-of-type{display:inline}figure.table-like{margin-left:30px;margin-right:30px}figure.table-like .list{margin-right:0}@media (max-width <= 943px){.figure-like{overflow-x:auto}}.poem{display:table;margin:0 auto;width:auto;max-width:90%}.poem>.heading{display:block;text-align:center}section article.poem>.heading:after{content:""}.poem>.heading>.title{font-weight:700;font-size:1.2em;line-height:1.2em}.poem .author{font-style:italic;margin-top:.75em}.poem .author.left{text-align:left}.poem .author.center{text-align:center}.poem .author.right{text-align:right}.poem .stanza>.heading{text-align:center;font-weight:700;font-size:1em;line-height:1em}.poem .stanza+.stanza{margin-top:1em}.poem .heading+.stanza{margin-top:.2em}.poem .heading+.line{margin-top:.2em}.poem .line.left{text-align:left;margin-left:4em;text-indent:-4em}.poem .line.center{text-align:center}.poem .line.right{text-align:right}.poem .tab{margin-left:2em}pre[class*=language-]{margin:0;overflow:auto;border:1px solid #e1e1e1}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}code[class*=language-],pre[class*=language-]{color:#000;background:#fdfdfd;text-shadow:none;font-family:var(--font-monospace);text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.2;tab-size:4;hyphens:none}code[class*=language-].code-inline,pre[class*=language-].code-inline{line-height:normal;padding:.0625em .15em}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#b3d4fc}code[class*=language-] .token:is(.comment,.prolog,.doctype,.cdata),pre[class*=language-] .token:is(.comment,.prolog,.doctype,.cdata){color:#2a9716}code[class*=language-] .token.punctuation,pre[class*=language-] .token.punctuation{color:#000}code[class*=language-] .token.namespace,pre[class*=language-] .token.namespace{opacity:.9}code[class*=language-] .token:is(.property,.tag,.boolean,.number,.constant,.symbol,.deleted),pre[class*=language-] .token:is(.property,.tag,.boolean,.number,.constant,.symbol,.deleted){color:#29780f}code[class*=language-] .token:is(.selector,.attr-name,.string,.char,.builtin,.regex,.inserted),pre[class*=language-] .token:is(.selector,.attr-name,.string,.char,.builtin,.regex,.inserted){color:#a11}code[class*=language-] .token:is(.operator,.entity,.url),pre[class*=language-] .token:is(.operator,.entity,.url){color:#000;background:none}code[class*=language-] .token:is(.atrule,.attr-value,.keyword),pre[class*=language-] .token:is(.atrule,.attr-value,.keyword){color:#0679b7}code[class*=language-] .token.function,code[class*=language-] .token.class-name,pre[class*=language-] .token.function,pre[class*=language-] .token.class-name{color:#30a}code[class*=language-] .token.important,code[class*=language-] .token.variable,pre[class*=language-] .token.important,pre[class*=language-] .token.variable{color:#000}code[class*=language-] .token.important,code[class*=language-] .token.bold,pre[class*=language-] .token.important,pre[class*=language-] .token.bold{font-weight:700}code[class*=language-] .token.italic,pre[class*=language-] .token.italic{font-style:italic}code[class*=language-] .token.entity,pre[class*=language-] .token.entity{cursor:help}code[class*=language-].line-numbers,pre[class*=language-].line-numbers{position:relative;padding-left:3.8em;counter-reset:linenumber;overflow:auto}code[class*=language-].line-numbers>code,pre[class*=language-].line-numbers>code{position:relative;white-space:inherit}code[class*=language-].line-numbers .line-numbers-rows,pre[class*=language-].line-numbers .line-numbers-rows{position:absolute;pointer-events:none;top:0;font-size:100%;left:-3.8em;width:3em;letter-spacing:-1px;border-right:1px solid #999;user-select:none}code[class*=language-].line-numbers .line-numbers-rows>span,pre[class*=language-].line-numbers .line-numbers-rows>span{display:block;counter-increment:linenumber}code[class*=language-].line-numbers .line-numbers-rows>span:before,pre[class*=language-].line-numbers .line-numbers-rows>span:before{content:counter(linenumber);color:#999;display:block;padding-right:.8em;text-align:right}code[class*=language-] .line-highlight,pre[class*=language-] .line-highlight{position:absolute;margin-top:4px;left:0;right:0;padding:inherit 0;font-size:inherit;background:#997a6614;pointer-events:none;line-height:inherit;white-space:pre}:root.dark-mode pre[class*=language-]{border:1px solid #3d3d3d}:root.dark-mode code[class*=language-],:root.dark-mode pre[class*=language-]{color:#fff;background:#141414}:root.dark-mode code[class*=language-]::selection,:root.dark-mode code[class*=language-] ::selection,:root.dark-mode pre[class*=language-]::selection,:root.dark-mode pre[class*=language-] ::selection{background:#27292a}:root.dark-mode code[class*=language-] .token,:root.dark-mode pre[class*=language-] .token{position:relative;z-index:1}:root.dark-mode code[class*=language-] .token:is(.comment,.prolog,.doctype,.cdata),:root.dark-mode pre[class*=language-] .token:is(.comment,.prolog,.doctype,.cdata){color:#68a950}:root.dark-mode code[class*=language-] .token.punctuation,:root.dark-mode pre[class*=language-] .token.punctuation{color:#fff;opacity:1}:root.dark-mode code[class*=language-] .token.namespace,:root.dark-mode pre[class*=language-] .token.namespace{opacity:.9}:root.dark-mode code[class*=language-] .token:is(.property,.tag,.boolean,.number,.constant,.symbol,.deleted),:root.dark-mode pre[class*=language-] .token:is(.property,.tag,.boolean,.number,.constant,.symbol,.deleted){color:#abc792}:root.dark-mode code[class*=language-] .token:is(.selector,.attr-name,.string,.char,.builtin,.regex,.inserted),:root.dark-mode pre[class*=language-] .token:is(.selector,.attr-name,.string,.char,.builtin,.regex,.inserted){color:#ca9147}:root.dark-mode code[class*=language-] .token:is(.operator,.entity,.url),:root.dark-mode pre[class*=language-] .token:is(.operator,.entity,.url){color:#fff}:root.dark-mode code[class*=language-] .token:is(.atrule,.attr-value,.keyword),:root.dark-mode pre[class*=language-] .token:is(.atrule,.attr-value,.keyword){color:#2d94fb}:root.dark-mode code[class*=language-] .token.function,:root.dark-mode code[class*=language-] .token.class-name,:root.dark-mode pre[class*=language-] .token.function,:root.dark-mode pre[class*=language-] .token.class-name{color:#e3e1c2}:root.dark-mode code[class*=language-] .token.important,:root.dark-mode code[class*=language-] .token.bold,:root.dark-mode pre[class*=language-] .token.important,:root.dark-mode pre[class*=language-] .token.bold{font-weight:700}:root.dark-mode code[class*=language-] .token.italic,:root.dark-mode pre[class*=language-] .token.italic{font-style:italic}:root.dark-mode code[class*=language-] .token.entity,:root.dark-mode pre[class*=language-] .token.entity{cursor:help}:root.dark-mode .line-highlight{background:#5454541a;border-bottom:1px dashed hsl(0,0%,33%);border-top:1px dashed hsl(0,0%,33%);z-index:0}@media print{code[class*=language-] .line-highlight,pre[class*=language-] .line-highlight{color-adjust:exact}}.displaymath{overflow-x:auto;overflow-y:hidden}.displaymath mjx-container[jax=CHTML][display=true]{margin:0;padding-top:2px}.process-math mjx-container svg{background:none}[data-knowl]>mjx-mrow .TEX-I{font-family:MJXZERO!important;font-style:normal!important}.knowl mjx-mtext>mjx-utext,mjx-mtext>mjx-utext{width:revert!important}mjx-msup mjx-utext,mjx-msub mjx-utext{display:inline}section,article,li,blockquote,figcaption,dt,.exercisegroup,.discussion-like,.solution-like,.para{position:relative}.autopermalink{position:absolute;display:inline-block;top:.5ex;left:-2em;font-size:85%;opacity:var(--permalink-opacity, 0);transition:opacity .2s;margin-top:0!important}li>.autopermalink{left:-3.5em}.autopermalink>*{padding-left:.2em;padding-right:.2em}.appendix>.autopermalink,.chapter>.autopermalink,.index>.autopermalink,.section>.autopermalink,.subsection>.autopermalink,.references>.autopermalink,.exercises>.autopermalink{top:1.5ex}.assemblage-like>.para>.autopermalink,.example-like>.para>.autopermalink,.example-like>.exercise-like>.autopermalink,.project-like>.para>.autopermalink,.project-like>.exercise-like>.autopermalink,.project-like>.exercise-like>.introduction>.para>.autopermalink,.project-like>.exercise-like>.conclusion>.para>.autopermalink,.remark-like>.para>.autopermalink{left:-2.9em}.axiom-like>.para:first-of-type>.autopermalink,.example-like>.para:first-of-type>.autopermalink,.exercise-like>.para:first-of-type>.autopermalink,.solution-like>.para:first-of-type>.autopermalink,.assemblage-like>.para:first-of-type>.autopermalink,.definition-like>.para:first-of-type>.autopermalink,.remark-like>.para:first-of-type>.autopermalink,.project-like>.para:first-of-type>.autopermalink,.openproblem-like>.para:first-of-type>.autopermalink,.computation-like>.para:first-of-type>.autopermalink,.theorem-like>.para:first-of-type>.autopermalink,.proof>.para:first-of-type>.autopermalink,.case>.para:first-of-type>.autopermalink,li>.para:first-of-type>.autopermalink,dd>.para:first-of-type>.autopermalink{display:none}.axiom-like>.introduction>.para:first-of-type>.autopermalink,.example-like>.introduction>.para:first-of-type>.autopermalink,.exercise-like>.introduction>.para:first-of-type>.autopermalink,.solution-like>.introduction>.para:first-of-type>.autopermalink,.assemblage-like>.introduction>.para:first-of-type>.autopermalink,.definition-like>.introduction>.para:first-of-type>.autopermalink,.remark-like>.introduction>.para:first-of-type>.autopermalink,.project-like>.introduction>.para:first-of-type>.autopermalink,.openproblem-like>.introduction>.para:first-of-type>.autopermalink,.computation-like>.introduction>.para:first-of-type>.autopermalink,.theorem-like>.introduction>.para:first-of-type>.autopermalink,.proof>.introduction>.para:first-of-type>.autopermalink,.case>.introduction>.para:first-of-type>.autopermalink,li>.introduction>.para:first-of-type>.autopermalink,dd>.introduction>.para:first-of-type>.autopermalink{display:none}.ptx-content:has(.autopermalink:hover) .autopermalink{opacity:.2}.ptx-content:has(.autopermalink:hover) .autopermalink:hover{opacity:1}.autopermalink:has(a:focus-visible){opacity:1}.permalink-alert{position:absolute;top:-3em;left:5em;padding:1.5em 2em;background:var(--content-background);border:3px solid var(--page-border-color);z-index:2001}:target{scroll-margin-top:45px;animation:target-fade 10s 1}@keyframes target-fade{0%{background-color:var(--activated-content-bg)}to{background-color:inherit;opacity:1}}em.alert{font-weight:700}.bib{margin-top:.25em}.bib .bibitem{display:inline-block;vertical-align:top;width:7%;margin-right:0}.bib .bibitem+.bibentry{display:inline-block;width:90%;margin-top:0}.caption{margin-top:10px;margin-left:auto;margin-right:auto;font-size:100%;text-align:center}.contributor{margin-top:1.5ex}.contributor:first-child{margin-top:0}.contributor+.para{margin-top:3ex}.contributor .contributor-name{font-variant:small-caps}.contributor .contributor-info{font-size:88%;font-style:italic;margin-left:3ex}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}iframe{margin:0;border:none}.kbdkey{background:#f1f1f1;color:#333;border:1px solid #dddddd;border-radius:3px;padding:1px 2px 0;vertical-align:.1em;font-size:110%;line-height:1;box-shadow:2px 2px gray;display:inline-block;margin-right:3px}.unit,.quantity{white-space:nowrap;word-spacing:-.25ex;margin-right:.125em}.unit sub,.unit sup,.quantity sub,.quantity sup{word-spacing:normal}.terminology{font-style:italic;font-weight:700}.times-sign{font-size:larger;vertical-align:-.15ex}.emphasis{font-style:italic}.emphasis .emphasis,.definition-like .emphasis{font-weight:700}article.theorem-like .emphasis{font-weight:700}.para{line-height:1.35}.hidden{display:none!important}.taxon{font-style:italic}.quote{padding-left:40px;padding-right:10px;margin-bottom:1em}.booktitle{font-style:oblique}.latex-logo{font-family:"PT Serif",Times New Roman,Times,serif}.latex-logo .A{font-size:75%;text-transform:uppercase;vertical-align:.5ex;margin-left:-.48em;margin-right:-.2em}.latex-logo .E{vertical-align:-.5ex;text-transform:uppercase;margin-left:-.18em;margin-right:-.12em}@media print{.pretext .ptx-masthead,.pretext .ptx-navbar,body.pretext>a.assistive,.pretext .ptx-page>.ptx-sidebar,.pretext .ptx-page-footer,.pretext .ptx-main>div.ptx-content-footer{display:none}.ptx-page,.ptx-main,.ptx-main .ptx-content{all:unset!important;width:100%;border:none;padding:0;margin:0}.ptx-sagecell,.tabular,.table-like,.figure-like,.exercise-like{break-inside:avoid}.heading{break-after:avoid}.code-inline{border:unset;background:unset}@page{margin:.75in}}.heading .print-links{float:right;vertical-align:bottom}.heading .print-links .print-link{font-family:var(--font-body);padding:.1em .2em}.heading .print-links .material-symbols-outlined{margin-top:5pt}.pretext .searchwrapper{max-width:900px;position:absolute;right:0;bottom:0;margin-bottom:39px}.pretext .searchwrapper .cse .gsc-control-cse,.pretext .searchwrapper .cse .gsc-control-cse input,.searchwrapper .gsc-control-cse{padding:5px}.searchbox .searchwidget{height:100%}.searchbox .searchresultsplaceholder{position:fixed;top:5vh;bottom:5vh;padding:1em;left:max(10vw,(100vw - 800px) / 2);width:80vw;max-width:800px;border:2px solid var(--body-text-color);background:var(--knowl-background, #eaf0f6);z-index:5000;display:flex;flex-direction:column}.searchbox .searchresultsplaceholder article{width:60%;margin-left:auto;margin-right:auto;font-family:sans-serif}.searchbox .search-results-controls{display:flex;justify-content:space-between;align-items:stretch;gap:10px;margin-bottom:1em;height:35px}.searchbox .ptxsearch{flex:1 1}.searchbox .closesearchresults{font:inherit;display:flex;justify-content:center;align-items:center;padding:0 10px;gap:10px;min-height:34px;color:var(--button-text-color);background-color:var(--button-background);border-width:1px;border-color:var(--button-border-color);border-style:solid;border-radius:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;user-select:none}.searchbox .closesearchresults:hover:not(.disabled){color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.searchbox .closesearchresults:focus-visible{outline:2px solid var(--button-text-color);outline-offset:-2px}.searchbox .closesearchresults.disabled{opacity:.4;cursor:not-allowed}.searchbox .closesearchresults.hidden{display:none}.searchbox .closesearchresults.open{color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.searchbox .detailed_result{margin-bottom:10px}.searchbox .searchresults a:hover{text-decoration:underline;background:var(--link-active-background)}.searchbox .searchresults{padding-left:10px;margin-top:0;overflow-y:auto;flex:1 1;background:var(--content-background, white);border:1px solid var(--page-border-color, #ccc)}.searchbox .searchresults:empty{display:none}.searchbox .search-result-bullet{list-style-type:none}.searchbox .search-result-score{display:none}.searchbox .no_result{font-size:90%;font-weight:200}.searchbox .low_result{font-weight:200}.searchbox .medium_result{font-weight:500}.searchbox .high_result{font-weight:700}.searchbox .searchempty{display:none;padding-left:10px;padding-top:5px}.searchbox .search-results-unshown-count{margin-top:.6em}.searchbox .search-result-clip-highlight{background:var(--searchresultshighlight)}.searchbox .searchresultsbackground{position:fixed;top:0;background:var(--searchresultsbackground, white);width:100vw;height:100%;left:0;z-index:4999}@media screen and (max-width: 800px){.searchbox .searchresultsplaceholder{bottom:10vh}}:root{--searchresultsbackground: #fff8;--searchresultshighlight: rgba(255, 255, 0, 50%)}:root.dark-mode{--searchresultsbackground: #0008;--searchresultshighlight: rgba(255, 255, 0, 15%)}.ptx-content .ptx-runestone-container .runestone{margin:unset;border-radius:0;border-width:1px}.multiplechoice_section label>.para{display:inline}.ptx-content .ptx-runestone-container .ac_question{max-width:var(--base-content-width);margin:0 auto 10px}.runestone .runestone_caption{display:none}.ptx-content .ptx-runestone-container .rsdraggable{font-size:100%}.ptx-content .bottom{position:unset}.ptx-runestone-container .runestone code,.ptx-runestone-container .runestone pre{font-size:.93rem;line-height:1.2;font-family:var(--font-monospace)}.ptx-runestone-container code[class*=language-],.ptx-runestone-container pre[class*=language-]{color:#000;background:#fdfdfd}.runestone.datafile .datafile_caption{background:var(--code-inline-background);border:1px solid color-mix(in oklab,var(--code-inline-background) 50%,#888);display:block;width:fit-content;margin:0 auto}.runestone.datafile img{margin:0 auto;display:block;border:1px solid color-mix(in oklab,var(--code-inline-background) 50%,#888)}.runestone.datafile pre,.runestone.datafile textarea{margin:0 auto;border:1px solid color-mix(in oklab,var(--code-inline-background) 50%,#888);background-color:var(--page-color)}.runestone.datafile+.program{margin-top:0}ul[data-component=timedAssessment]{margin:0;padding:0}:root.dark-mode .ptx-runestone-container code[class*=language-],:root.dark-mode .ptx-runestone-container pre[class*=language-]{color:#fff;background:#141414}.ptx-content .wwprob table.attemptResults{margin-left:2em;background:#efefef;padding:.2em}.ptx-content .wwprob table.attemptResults+.attemptResultsSummary{margin-top:1em}.ptx-content .wwprob .problem-main-form{margin-top:1em;background:#eef;padding:.5em}.ptx-content .wwprob td.ResultsWithoutError{background:#9f9}.ptx-content .wwprob td.ResultsWithError{background:#f99}.ptx-content .wwprob tr th{text-align:center;padding:.2em 1em}.ptx-content .wwprob tr td{text-align:center}.ptx-content .wwprob tr td:empty{background:#fff}.ptx-content .wwprob ol,.ptx-content .wwprob ul{margin-top:.75em!important}.ptx-content .wwprob .problem{background:#fdfdfd}.ptx-content .wwprob .problem a{text-decoration:none}.ptx-content .wwprob #footer{font-size:70%;text-align:right}label.webwork{display:inline-flex;flex-direction:column}label.correct .status{background-color:#a0f0a0}label.partly-correct .status{color:#fc6}label.incorrect .status{color:#b00}label.incorrect .status:before{content:" "}label.feedback{word-wrap:break-word}label.correct .feedback{background-color:#0fc}label.partly-correct .feedback{color:#fc6}label.incorrect .feedback{color:#e07070}.webwork img,.webwork+.knowl-output img{max-width:100%}.exercise-wrapper>*:not(:first-child){margin-top:1.5em}.ptx-content .problem-buttons{display:flex}.ptx-content .webwork-button{font:inherit;display:flex;justify-content:center;align-items:center;padding:0 10px;gap:10px;min-height:34px;color:var(--button-text-color);background-color:var(--button-background);border-width:1px;border-color:var(--button-border-color);border-style:solid;border-radius:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;user-select:none}.ptx-content .webwork-button:hover:not(.disabled){color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.ptx-content .webwork-button:focus-visible{outline:2px solid var(--button-text-color);outline-offset:-2px}.ptx-content .webwork-button.disabled{opacity:.4;cursor:not-allowed}.ptx-content .webwork-button.hidden{display:none}.ptx-content .webwork-button.open{color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.problem-buttons.hidden-content,.problem-contents.hidden-content{display:none}.sagecell_sessionOutput pre{font-family:var(--font-monospace)}.sagecell{white-space:normal;margin-top:1.25em;margin-bottom:1.25em}.sage-interact.sagecell{margin:0}.sagecell_evalButton{font-family:var(--font-body);font-size:16px;padding:0 .65em}.sagecell_evalButton{cursor:pointer;display:inline-block;vertical-align:middle;user-select:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-width:1px;border-style:solid;font-weight:700;border-radius:3px}.sagecell_evalButton{color:#383838;background-image:linear-gradient(#f7f7f7,#bbb);border-color:#c4c4c4}.sagecell_evalButton:hover{color:#181868;background-image:linear-gradient(#bbb,#f7f7f7)}.sagecell_evalButton:focus,.sagecell_evalButton:active{color:#20160b;background-image:linear-gradient(#ff6852,#ffd7d1);border-color:#ff2822}.sagecell .sagecell_editor{margin-bottom:8px}.sageanswer{font-family:monospace;white-space:pre;margin-left:3em;margin-bottom:2em}.sageanswer .key{display:inline-block;vertical-align:top;margin-right:1em}.sageanswer .output{display:inline-block;vertical-align:top}.calculator-container{position:fixed;z-index:100;bottom:5px;right:5px;width:253px;height:460px}@media screen and (max-width: 800px){.calculator-container{bottom:50px!important}}:root{--font-body: Open Sans, Helvetica Neue, Helvetica, Arial, sans-serif}:root{--font-headings: PT Serif, Times New Roman, Times, serif}:root{--font-monospace: Inconsolata, Consolas, Monaco, monospace}:root{--font-print: PT Serif, Times New Roman, Times, serif}.ptx-toc:is(.depth0,.depth1,.depth2) .toc-item .toc-item{background-color:var(--tocitem-background);color:var(--toc-text-color)}.ptx-toc:is(.depth0,.depth1,.depth2,.depth3) .toc-item .toc-item .toc-item{background-color:var(--tocitem-background);color:var(--toc-text-color)}.toc-item{border-top:1px solid var(--toc-border-color)}.ptx-toc.focused .toc-title-box>a:hover{border-right:1px solid var(--toc-border-color)}.ptx-toc.focused .toc-expander:is(:hover){border-left:1px solid var(--toc-border-color)}.ptx-toc>.toc-item-list>.toc-item{border-top:2px solid var(--toc-border-color)}.ptx-toc.focused .toc-item>.toc-title-box>.toc-expander>.icon{font-size:30px}.ptx-toc.focused .toc-item>.toc-title-box>.toc-expander>.icon:before{content:"chevron_left"}.ptx-toc.focused .toc-item.expanded>.toc-title-box>.toc-expander>.icon{transform:rotate(-90deg)}.ptx-toc.focused .toc-item.expanded>.toc-title-box>.toc-expander>.icon:before{content:"chevron_left"}section>.heading{padding-bottom:3px;border-bottom:2px solid var(--primary-color-white-30)}section>h2.heading{border-bottom-width:4px}section>h3.heading{border-bottom-width:3px}:root.dark-mode section>.heading{border-bottom-color:var(--primary-color-black-30)}.displaymath{overflow-x:auto}@container ptx-main (width > 696px){.displaymath{--max-width: min((100cqw - 2 * 48px), 900px) ;min-width:100%;clear:right;width:fit-content;max-width:var(--max-width)}}.code-display{overflow-x:auto}@container ptx-main (width > 696px){.code-display{--max-width: min((100cqw - 2 * 48px), 900px) ;min-width:100%;clear:right;width:fit-content;max-width:var(--max-width)}}.ptx-runestone-container:has(.parsons_section,.ac_section,.codelens){overflow-x:auto}@container ptx-main (width > 696px){.ptx-runestone-container:has(.parsons_section,.ac_section,.codelens){--max-width: min((100cqw - 2 * 48px), 900px) ;min-width:100%;clear:right;width:var(--max-width);max-width:var(--max-width)}}.tabular-box{overflow-x:auto}@container ptx-main (width > 696px){.tabular-box{--max-width: min((100cqw - 2 * 48px), 900px) ;min-width:100%;clear:right;width:fit-content;max-width:var(--max-width)}}:root{color-scheme:light}:root:not(.dark-mode){--page-color: white;--content-background: white;--page-border-color: #ccc;--doc-title-color: var(--primary-color);--byline-color: #333;--banner-background: #fafafa;--navbar-background: #ededed;--footer-background: var(--banner-background);--toc-border-color: var(--primary-color-white-30);--toc-background: var(--content-background);--tocitem-background: var(--toc-background);--toc-text-color: var(--body-text-color);--tocitem-highlight-background: var(--secondary-color-white-10);--tocitem-highlight-text-color: white;--tocitem-highlight-border-color: var(--toc-border-color);--tocitem-active-background: var(--secondary-color);--tocitem-active-text-color: white;--tocitem-active-border-color: var(--toc-border-color);--toclevel1-background: var(--primary-color);--toclevel1-text-color: white;--toclevel2-background: var(--primary-color-white-10);--toclevel2-text-color: var(--toclevel1-text-color);--toclevel3-background: var(--content-background);--toclevel3-text-color: var(--toc-text-color);--body-text-color: #000;--body-title-color: #000;--ptx-image-bg: transparent;--activated-content-bg: #fae6e3;--summary-link-background: var(--button-background);--summary-link-text-color: var(--button-text-color);--summary-link-hover-background: var(--button-hover-background);--summary-link-hover-text-color: var(--button-hover-text-color);--link-text-color: var(--primary-color);--link-background: var(--primary-color-white-97);--link-active-text-color: var(--primary-color-black-20);--link-active-background: var(--link-background);--link-alt-text-color: var(--secondary-color-black-10);--link-alt-background: var(--secondary-color-white-97);--link-alt-active-text-color: var(--link-alt-text-color);--link-alt-active-background: var(--secondary-color-white-97);--knowl-link-color: var(--link-text-color);--knowl-background: var(--primary-color-white-97);--knowl-border-color: var(--primary-color-white-30);--knowl-nested-1-background: var(--secondary-color-white-97);--knowl-nested-2-background: var(--primary-color-white-97);--knowl-nested-3-background: var(--secondary-color-white-97);--knowl-nested-4-background: var(--primary-color-white-97);--block-body-background: var(--content-background);--block-border-color: var(--knowl-border-color);--block-head-color: var(--body-text-color);--aside-like-link-color: var(--link-text-color);--button-background: #ededed;--button-text-color: #333333;--button-border-color: #ccc;--button-hover-background: #c7c7c7;--button-hover-text-color: var(--button-text-color);--dropdown-background: var(--content-background);--dropdown-border-color: var(--toc-border-color);--dropdown-text-color: var(--toc-text-color);--dropdown-hover-background: var(--tocitem-active-background);--dropdown-hover-text-color: var(--tocitem-active-text-color);--code-background: #fdfdfd;--code-inline-background: #ededed;--assemblage-like-body-background: var(--knowl-background);--assemblage-like-border-color: var(--knowl-border-color);--definition-like-body-background: var(--block-body-background);--definition-like-border-color: var(--block-border-color);--theorem-like-body-background: var(--block-body-background);--theorem-like-border-color: var(--block-border-color);--axiom-like-body-background: var(--block-body-background);--axiom-like-border-color: var(--block-border-color);--remark-like-body-background: var(--block-body-background);--remark-like-border-color: var(--block-border-color);--computation-like-body-background: var(--block-body-background);--computation-like-border-color: var(--block-border-color);--openproblem-like-body-background: var(--block-body-background);--openproblem-like-border-color: var(--block-border-color);--aside-like-body-background: var(--knowl-background);--aside-like-border-color: var(--knowl-border-color);--proof-like-body-background: var(--block-body-background);--proof-like-border-color: var(--block-border-color);--example-like-body-background: var(--block-body-background);--example-like-border-color: var(--block-border-color);--project-like-body-background: var(--block-body-background);--project-like-border-color: var(--block-border-color);--goal-like-body-background: var(--block-body-background);--goal-like-border-color: var(--secondary-color-white-20);--solution-like-body-background: var(--block-body-background);--solution-like-border-color: var(--block-border-color);--primary-color-white-1: color-mix(in oklab, var(--primary-color), white 1%);--primary-color-white-2: color-mix(in oklab, var(--primary-color), white 2%);--primary-color-white-3: color-mix(in oklab, var(--primary-color), white 3%);--primary-color-white-4: color-mix(in oklab, var(--primary-color), white 4%);--primary-color-white-5: color-mix(in oklab, var(--primary-color), white 5%);--primary-color-white-10: color-mix(in oklab, var(--primary-color), white 10%);--primary-color-white-15: color-mix(in oklab, var(--primary-color), white 15%);--primary-color-white-20: color-mix(in oklab, var(--primary-color), white 20%);--primary-color-white-25: color-mix(in oklab, var(--primary-color), white 25%);--primary-color-white-30: color-mix(in oklab, var(--primary-color), white 30%);--primary-color-white-35: color-mix(in oklab, var(--primary-color), white 35%);--primary-color-white-40: color-mix(in oklab, var(--primary-color), white 40%);--primary-color-white-50: color-mix(in oklab, var(--primary-color), white 50%);--primary-color-white-60: color-mix(in oklab, var(--primary-color), white 60%);--primary-color-white-65: color-mix(in oklab, var(--primary-color), white 65%);--primary-color-white-70: color-mix(in oklab, var(--primary-color), white 70%);--primary-color-white-75: color-mix(in oklab, var(--primary-color), white 75%);--primary-color-white-80: color-mix(in oklab, var(--primary-color), white 80%);--primary-color-white-85: color-mix(in oklab, var(--primary-color), white 85%);--primary-color-white-90: color-mix(in oklab, var(--primary-color), white 90%);--primary-color-white-95: color-mix(in oklab, var(--primary-color), white 95%);--primary-color-white-96: color-mix(in oklab, var(--primary-color), white 96%);--primary-color-white-97: color-mix(in oklab, var(--primary-color), white 97%);--primary-color-white-98: color-mix(in oklab, var(--primary-color), white 98%);--primary-color-white-99: color-mix(in oklab, var(--primary-color), white 99%);--primary-color-black-1: color-mix(in oklab, var(--primary-color), black 1%);--primary-color-black-2: color-mix(in oklab, var(--primary-color), black 2%);--primary-color-black-3: color-mix(in oklab, var(--primary-color), black 3%);--primary-color-black-4: color-mix(in oklab, var(--primary-color), black 4%);--primary-color-black-5: color-mix(in oklab, var(--primary-color), black 5%);--primary-color-black-10: color-mix(in oklab, var(--primary-color), black 10%);--primary-color-black-15: color-mix(in oklab, var(--primary-color), black 15%);--primary-color-black-20: color-mix(in oklab, var(--primary-color), black 20%);--primary-color-black-25: color-mix(in oklab, var(--primary-color), black 25%);--primary-color-black-30: color-mix(in oklab, var(--primary-color), black 30%);--primary-color-black-35: color-mix(in oklab, var(--primary-color), black 35%);--primary-color-black-40: color-mix(in oklab, var(--primary-color), black 40%);--primary-color-black-50: color-mix(in oklab, var(--primary-color), black 50%);--primary-color-black-60: color-mix(in oklab, var(--primary-color), black 60%);--primary-color-black-65: color-mix(in oklab, var(--primary-color), black 65%);--primary-color-black-70: color-mix(in oklab, var(--primary-color), black 70%);--primary-color-black-75: color-mix(in oklab, var(--primary-color), black 75%);--primary-color-black-80: color-mix(in oklab, var(--primary-color), black 80%);--primary-color-black-85: color-mix(in oklab, var(--primary-color), black 85%);--primary-color-black-90: color-mix(in oklab, var(--primary-color), black 90%);--primary-color-black-95: color-mix(in oklab, var(--primary-color), black 95%);--primary-color-black-96: color-mix(in oklab, var(--primary-color), black 96%);--primary-color-black-97: color-mix(in oklab, var(--primary-color), black 97%);--primary-color-black-98: color-mix(in oklab, var(--primary-color), black 98%);--primary-color-black-99: color-mix(in oklab, var(--primary-color), black 99%);--primary-color-gray-1: color-mix(in oklab, var(--primary-color), gray 1%);--primary-color-gray-2: color-mix(in oklab, var(--primary-color), gray 2%);--primary-color-gray-3: color-mix(in oklab, var(--primary-color), gray 3%);--primary-color-gray-4: color-mix(in oklab, var(--primary-color), gray 4%);--primary-color-gray-5: color-mix(in oklab, var(--primary-color), gray 5%);--primary-color-gray-10: color-mix(in oklab, var(--primary-color), gray 10%);--primary-color-gray-15: color-mix(in oklab, var(--primary-color), gray 15%);--primary-color-gray-20: color-mix(in oklab, var(--primary-color), gray 20%);--primary-color-gray-25: color-mix(in oklab, var(--primary-color), gray 25%);--primary-color-gray-30: color-mix(in oklab, var(--primary-color), gray 30%);--primary-color-gray-35: color-mix(in oklab, var(--primary-color), gray 35%);--primary-color-gray-40: color-mix(in oklab, var(--primary-color), gray 40%);--primary-color-gray-50: color-mix(in oklab, var(--primary-color), gray 50%);--primary-color-gray-60: color-mix(in oklab, var(--primary-color), gray 60%);--primary-color-gray-65: color-mix(in oklab, var(--primary-color), gray 65%);--primary-color-gray-70: color-mix(in oklab, var(--primary-color), gray 70%);--primary-color-gray-75: color-mix(in oklab, var(--primary-color), gray 75%);--primary-color-gray-80: color-mix(in oklab, var(--primary-color), gray 80%);--primary-color-gray-85: color-mix(in oklab, var(--primary-color), gray 85%);--primary-color-gray-90: color-mix(in oklab, var(--primary-color), gray 90%);--primary-color-gray-95: color-mix(in oklab, var(--primary-color), gray 95%);--primary-color-gray-96: color-mix(in oklab, var(--primary-color), gray 96%);--primary-color-gray-97: color-mix(in oklab, var(--primary-color), gray 97%);--primary-color-gray-98: color-mix(in oklab, var(--primary-color), gray 98%);--primary-color-gray-99: color-mix(in oklab, var(--primary-color), gray 99%);--secondary-color-white-1: color-mix(in oklab, var(--secondary-color), white 1%);--secondary-color-white-2: color-mix(in oklab, var(--secondary-color), white 2%);--secondary-color-white-3: color-mix(in oklab, var(--secondary-color), white 3%);--secondary-color-white-4: color-mix(in oklab, var(--secondary-color), white 4%);--secondary-color-white-5: color-mix(in oklab, var(--secondary-color), white 5%);--secondary-color-white-10: color-mix(in oklab, var(--secondary-color), white 10%);--secondary-color-white-15: color-mix(in oklab, var(--secondary-color), white 15%);--secondary-color-white-20: color-mix(in oklab, var(--secondary-color), white 20%);--secondary-color-white-25: color-mix(in oklab, var(--secondary-color), white 25%);--secondary-color-white-30: color-mix(in oklab, var(--secondary-color), white 30%);--secondary-color-white-35: color-mix(in oklab, var(--secondary-color), white 35%);--secondary-color-white-40: color-mix(in oklab, var(--secondary-color), white 40%);--secondary-color-white-50: color-mix(in oklab, var(--secondary-color), white 50%);--secondary-color-white-60: color-mix(in oklab, var(--secondary-color), white 60%);--secondary-color-white-65: color-mix(in oklab, var(--secondary-color), white 65%);--secondary-color-white-70: color-mix(in oklab, var(--secondary-color), white 70%);--secondary-color-white-75: color-mix(in oklab, var(--secondary-color), white 75%);--secondary-color-white-80: color-mix(in oklab, var(--secondary-color), white 80%);--secondary-color-white-85: color-mix(in oklab, var(--secondary-color), white 85%);--secondary-color-white-90: color-mix(in oklab, var(--secondary-color), white 90%);--secondary-color-white-95: color-mix(in oklab, var(--secondary-color), white 95%);--secondary-color-white-96: color-mix(in oklab, var(--secondary-color), white 96%);--secondary-color-white-97: color-mix(in oklab, var(--secondary-color), white 97%);--secondary-color-white-98: color-mix(in oklab, var(--secondary-color), white 98%);--secondary-color-white-99: color-mix(in oklab, var(--secondary-color), white 99%);--secondary-color-black-1: color-mix(in oklab, var(--secondary-color), black 1%);--secondary-color-black-2: color-mix(in oklab, var(--secondary-color), black 2%);--secondary-color-black-3: color-mix(in oklab, var(--secondary-color), black 3%);--secondary-color-black-4: color-mix(in oklab, var(--secondary-color), black 4%);--secondary-color-black-5: color-mix(in oklab, var(--secondary-color), black 5%);--secondary-color-black-10: color-mix(in oklab, var(--secondary-color), black 10%);--secondary-color-black-15: color-mix(in oklab, var(--secondary-color), black 15%);--secondary-color-black-20: color-mix(in oklab, var(--secondary-color), black 20%);--secondary-color-black-25: color-mix(in oklab, var(--secondary-color), black 25%);--secondary-color-black-30: color-mix(in oklab, var(--secondary-color), black 30%);--secondary-color-black-35: color-mix(in oklab, var(--secondary-color), black 35%);--secondary-color-black-40: color-mix(in oklab, var(--secondary-color), black 40%);--secondary-color-black-50: color-mix(in oklab, var(--secondary-color), black 50%);--secondary-color-black-60: color-mix(in oklab, var(--secondary-color), black 60%);--secondary-color-black-65: color-mix(in oklab, var(--secondary-color), black 65%);--secondary-color-black-70: color-mix(in oklab, var(--secondary-color), black 70%);--secondary-color-black-75: color-mix(in oklab, var(--secondary-color), black 75%);--secondary-color-black-80: color-mix(in oklab, var(--secondary-color), black 80%);--secondary-color-black-85: color-mix(in oklab, var(--secondary-color), black 85%);--secondary-color-black-90: color-mix(in oklab, var(--secondary-color), black 90%);--secondary-color-black-95: color-mix(in oklab, var(--secondary-color), black 95%);--secondary-color-black-96: color-mix(in oklab, var(--secondary-color), black 96%);--secondary-color-black-97: color-mix(in oklab, var(--secondary-color), black 97%);--secondary-color-black-98: color-mix(in oklab, var(--secondary-color), black 98%);--secondary-color-black-99: color-mix(in oklab, var(--secondary-color), black 99%);--secondary-color-gray-1: color-mix(in oklab, var(--secondary-color), gray 1%);--secondary-color-gray-2: color-mix(in oklab, var(--secondary-color), gray 2%);--secondary-color-gray-3: color-mix(in oklab, var(--secondary-color), gray 3%);--secondary-color-gray-4: color-mix(in oklab, var(--secondary-color), gray 4%);--secondary-color-gray-5: color-mix(in oklab, var(--secondary-color), gray 5%);--secondary-color-gray-10: color-mix(in oklab, var(--secondary-color), gray 10%);--secondary-color-gray-15: color-mix(in oklab, var(--secondary-color), gray 15%);--secondary-color-gray-20: color-mix(in oklab, var(--secondary-color), gray 20%);--secondary-color-gray-25: color-mix(in oklab, var(--secondary-color), gray 25%);--secondary-color-gray-30: color-mix(in oklab, var(--secondary-color), gray 30%);--secondary-color-gray-35: color-mix(in oklab, var(--secondary-color), gray 35%);--secondary-color-gray-40: color-mix(in oklab, var(--secondary-color), gray 40%);--secondary-color-gray-50: color-mix(in oklab, var(--secondary-color), gray 50%);--secondary-color-gray-60: color-mix(in oklab, var(--secondary-color), gray 60%);--secondary-color-gray-65: color-mix(in oklab, var(--secondary-color), gray 65%);--secondary-color-gray-70: color-mix(in oklab, var(--secondary-color), gray 70%);--secondary-color-gray-75: color-mix(in oklab, var(--secondary-color), gray 75%);--secondary-color-gray-80: color-mix(in oklab, var(--secondary-color), gray 80%);--secondary-color-gray-85: color-mix(in oklab, var(--secondary-color), gray 85%);--secondary-color-gray-90: color-mix(in oklab, var(--secondary-color), gray 90%);--secondary-color-gray-95: color-mix(in oklab, var(--secondary-color), gray 95%);--secondary-color-gray-96: color-mix(in oklab, var(--secondary-color), gray 96%);--secondary-color-gray-97: color-mix(in oklab, var(--secondary-color), gray 97%);--secondary-color-gray-98: color-mix(in oklab, var(--secondary-color), gray 98%);--secondary-color-gray-99: color-mix(in oklab, var(--secondary-color), gray 99%);--primary-color: #195684;--secondary-color: #932c1c}:root.dark-mode{color-scheme:dark;--page-color: var(--background-color);--content-background: var(--page-color);--page-border-color: var(--background-color-white-25);--doc-title-color: var(--primary-color);--byline-color: var(--background-color-white-50);--banner-background: #23241f;--navbar-background: var(--background-color-gray-15);--footer-background: var(--background-color-black-10);--toc-border-color: #555;--toc-background: var(--content-background);--tocitem-background: var(--toc-background);--toc-text-color: var(--body-text-color);--tocitem-highlight-background: var(--primary-color-gray-5);--tocitem-highlight-text-color: var(--background-color-black-50);--tocitem-highlight-border-color: var(--toc-border-color);--tocitem-active-background: var(--primary-color-gray-5);--tocitem-active-text-color: var(--background-color-black-50);--tocitem-active-border-color: var(--toc-border-color);--toclevel1-background: var(--background-color-gray-10);--toclevel1-text-color: var(--primary-color-white-40);--toclevel2-background: var(--toclevel1-background);--toclevel2-text-color: var(--toclevel1-text-color);--toclevel3-background: var(--content-background);--toclevel3-text-color: var(--toc-text-color);--body-text-color: #f2f2f2;--body-title-color: var(--primary-color-white-20);--ptx-image-bg: white;--activated-content-bg: rgba(255, 237, 185, .2);--summary-link-background: var(--button-background);--summary-link-text-color: var(--button-text-color);--summary-link-hover-background: var(--button-hover-background);--summary-link-hover-text-color: var(--button-hover-text-color);--link-text-color: var(--primary-color-white-10);--link-background: transparent;--link-active-text-color: var(--primary-color-white-40);--link-active-background: var(--background-color-gray-30);--link-alt-text-color: var(--link-text-color);--link-alt-background: transparent;--link-alt-active-text-color: var(--link-alt-text-color);--link-alt-active-background: var(--link-active-text-color);--knowl-link-color: var(--doc-title-color);--knowl-background: var(--background-color-black-10);--knowl-border-color: var(--background-color-white-20);--knowl-nested-1-background: var(--background-color-gray-10);--knowl-nested-2-background: var(--background-color-black-10);--knowl-nested-3-background: var(--background-color-gray-10);--knowl-nested-4-background: var(--background-color-black-10);--block-body-background: var(--content-background);--block-border-color: var(--knowl-border-color);--block-head-color: var(--body-text-color);--aside-like-link-color: var(--link-text-color);--button-background: var(--background-color-gray-15);--button-text-color: var(--body-text-color);--button-border-color: var(--background-color-white-25);--button-hover-background: var(--primary-color-black-50);--button-hover-text-color: var(--button-text-color);--dropdown-background: var(--content-background);--dropdown-border-color: var(--toc-border-color);--dropdown-text-color: var(--toc-text-color);--dropdown-hover-background: var(--tocitem-active-background);--dropdown-hover-text-color: var(--tocitem-active-text-color);--code-background: var(--background-color-gray-20);--code-inline-background: var(--background-color-gray-20);--assemblage-like-body-background: var(--block-body-background);--assemblage-like-border-color: var(--block-border-color);--definition-like-body-background: var(--block-body-background);--definition-like-border-color: var(--block-border-color);--theorem-like-body-background: var(--block-body-background);--theorem-like-border-color: var(--block-border-color);--axiom-like-body-background: var(--block-body-background);--axiom-like-border-color: var(--block-border-color);--remark-like-body-background: var(--block-body-background);--remark-like-border-color: var(--block-border-color);--computation-like-body-background: var(--block-body-background);--computation-like-border-color: var(--block-border-color);--openproblem-like-body-background: var(--block-body-background);--openproblem-like-border-color: var(--block-border-color);--aside-like-body-background: var(--block-body-background);--aside-like-border-color: var(--block-border-color);--proof-like-body-background: var(--block-body-background);--proof-like-border-color: var(--block-border-color);--example-like-body-background: var(--block-body-background);--example-like-border-color: var(--block-border-color);--project-like-body-background: var(--block-body-background);--project-like-border-color: var(--block-border-color);--goal-like-body-background: var(--block-body-background);--goal-like-border-color: var(--block-border-color);--solution-like-body-background: var(--block-body-background);--solution-like-border-color: var(--block-border-color);--primary-color: #698aa8;--background-color: #23241f;--background-color-white-1: color-mix(in oklab, var(--background-color), white 1%);--background-color-white-2: color-mix(in oklab, var(--background-color), white 2%);--background-color-white-3: color-mix(in oklab, var(--background-color), white 3%);--background-color-white-4: color-mix(in oklab, var(--background-color), white 4%);--background-color-white-5: color-mix(in oklab, var(--background-color), white 5%);--background-color-white-10: color-mix(in oklab, var(--background-color), white 10%);--background-color-white-15: color-mix(in oklab, var(--background-color), white 15%);--background-color-white-20: color-mix(in oklab, var(--background-color), white 20%);--background-color-white-25: color-mix(in oklab, var(--background-color), white 25%);--background-color-white-30: color-mix(in oklab, var(--background-color), white 30%);--background-color-white-35: color-mix(in oklab, var(--background-color), white 35%);--background-color-white-40: color-mix(in oklab, var(--background-color), white 40%);--background-color-white-50: color-mix(in oklab, var(--background-color), white 50%);--background-color-white-60: color-mix(in oklab, var(--background-color), white 60%);--background-color-white-65: color-mix(in oklab, var(--background-color), white 65%);--background-color-white-70: color-mix(in oklab, var(--background-color), white 70%);--background-color-white-75: color-mix(in oklab, var(--background-color), white 75%);--background-color-white-80: color-mix(in oklab, var(--background-color), white 80%);--background-color-white-85: color-mix(in oklab, var(--background-color), white 85%);--background-color-white-90: color-mix(in oklab, var(--background-color), white 90%);--background-color-white-95: color-mix(in oklab, var(--background-color), white 95%);--background-color-white-96: color-mix(in oklab, var(--background-color), white 96%);--background-color-white-97: color-mix(in oklab, var(--background-color), white 97%);--background-color-white-98: color-mix(in oklab, var(--background-color), white 98%);--background-color-white-99: color-mix(in oklab, var(--background-color), white 99%);--background-color-black-1: color-mix(in oklab, var(--background-color), black 1%);--background-color-black-2: color-mix(in oklab, var(--background-color), black 2%);--background-color-black-3: color-mix(in oklab, var(--background-color), black 3%);--background-color-black-4: color-mix(in oklab, var(--background-color), black 4%);--background-color-black-5: color-mix(in oklab, var(--background-color), black 5%);--background-color-black-10: color-mix(in oklab, var(--background-color), black 10%);--background-color-black-15: color-mix(in oklab, var(--background-color), black 15%);--background-color-black-20: color-mix(in oklab, var(--background-color), black 20%);--background-color-black-25: color-mix(in oklab, var(--background-color), black 25%);--background-color-black-30: color-mix(in oklab, var(--background-color), black 30%);--background-color-black-35: color-mix(in oklab, var(--background-color), black 35%);--background-color-black-40: color-mix(in oklab, var(--background-color), black 40%);--background-color-black-50: color-mix(in oklab, var(--background-color), black 50%);--background-color-black-60: color-mix(in oklab, var(--background-color), black 60%);--background-color-black-65: color-mix(in oklab, var(--background-color), black 65%);--background-color-black-70: color-mix(in oklab, var(--background-color), black 70%);--background-color-black-75: color-mix(in oklab, var(--background-color), black 75%);--background-color-black-80: color-mix(in oklab, var(--background-color), black 80%);--background-color-black-85: color-mix(in oklab, var(--background-color), black 85%);--background-color-black-90: color-mix(in oklab, var(--background-color), black 90%);--background-color-black-95: color-mix(in oklab, var(--background-color), black 95%);--background-color-black-96: color-mix(in oklab, var(--background-color), black 96%);--background-color-black-97: color-mix(in oklab, var(--background-color), black 97%);--background-color-black-98: color-mix(in oklab, var(--background-color), black 98%);--background-color-black-99: color-mix(in oklab, var(--background-color), black 99%);--background-color-gray-1: color-mix(in oklab, var(--background-color), gray 1%);--background-color-gray-2: color-mix(in oklab, var(--background-color), gray 2%);--background-color-gray-3: color-mix(in oklab, var(--background-color), gray 3%);--background-color-gray-4: color-mix(in oklab, var(--background-color), gray 4%);--background-color-gray-5: color-mix(in oklab, var(--background-color), gray 5%);--background-color-gray-10: color-mix(in oklab, var(--background-color), gray 10%);--background-color-gray-15: color-mix(in oklab, var(--background-color), gray 15%);--background-color-gray-20: color-mix(in oklab, var(--background-color), gray 20%);--background-color-gray-25: color-mix(in oklab, var(--background-color), gray 25%);--background-color-gray-30: color-mix(in oklab, var(--background-color), gray 30%);--background-color-gray-35: color-mix(in oklab, var(--background-color), gray 35%);--background-color-gray-40: color-mix(in oklab, var(--background-color), gray 40%);--background-color-gray-50: color-mix(in oklab, var(--background-color), gray 50%);--background-color-gray-60: color-mix(in oklab, var(--background-color), gray 60%);--background-color-gray-65: color-mix(in oklab, var(--background-color), gray 65%);--background-color-gray-70: color-mix(in oklab, var(--background-color), gray 70%);--background-color-gray-75: color-mix(in oklab, var(--background-color), gray 75%);--background-color-gray-80: color-mix(in oklab, var(--background-color), gray 80%);--background-color-gray-85: color-mix(in oklab, var(--background-color), gray 85%);--background-color-gray-90: color-mix(in oklab, var(--background-color), gray 90%);--background-color-gray-95: color-mix(in oklab, var(--background-color), gray 95%);--background-color-gray-96: color-mix(in oklab, var(--background-color), gray 96%);--background-color-gray-97: color-mix(in oklab, var(--background-color), gray 97%);--background-color-gray-98: color-mix(in oklab, var(--background-color), gray 98%);--background-color-gray-99: color-mix(in oklab, var(--background-color), gray 99%);--primary-color-white-1: color-mix(in oklab, var(--primary-color), white 1%);--primary-color-white-2: color-mix(in oklab, var(--primary-color), white 2%);--primary-color-white-3: color-mix(in oklab, var(--primary-color), white 3%);--primary-color-white-4: color-mix(in oklab, var(--primary-color), white 4%);--primary-color-white-5: color-mix(in oklab, var(--primary-color), white 5%);--primary-color-white-10: color-mix(in oklab, var(--primary-color), white 10%);--primary-color-white-15: color-mix(in oklab, var(--primary-color), white 15%);--primary-color-white-20: color-mix(in oklab, var(--primary-color), white 20%);--primary-color-white-25: color-mix(in oklab, var(--primary-color), white 25%);--primary-color-white-30: color-mix(in oklab, var(--primary-color), white 30%);--primary-color-white-35: color-mix(in oklab, var(--primary-color), white 35%);--primary-color-white-40: color-mix(in oklab, var(--primary-color), white 40%);--primary-color-white-50: color-mix(in oklab, var(--primary-color), white 50%);--primary-color-white-60: color-mix(in oklab, var(--primary-color), white 60%);--primary-color-white-65: color-mix(in oklab, var(--primary-color), white 65%);--primary-color-white-70: color-mix(in oklab, var(--primary-color), white 70%);--primary-color-white-75: color-mix(in oklab, var(--primary-color), white 75%);--primary-color-white-80: color-mix(in oklab, var(--primary-color), white 80%);--primary-color-white-85: color-mix(in oklab, var(--primary-color), white 85%);--primary-color-white-90: color-mix(in oklab, var(--primary-color), white 90%);--primary-color-white-95: color-mix(in oklab, var(--primary-color), white 95%);--primary-color-white-96: color-mix(in oklab, var(--primary-color), white 96%);--primary-color-white-97: color-mix(in oklab, var(--primary-color), white 97%);--primary-color-white-98: color-mix(in oklab, var(--primary-color), white 98%);--primary-color-white-99: color-mix(in oklab, var(--primary-color), white 99%);--primary-color-black-1: color-mix(in oklab, var(--primary-color), black 1%);--primary-color-black-2: color-mix(in oklab, var(--primary-color), black 2%);--primary-color-black-3: color-mix(in oklab, var(--primary-color), black 3%);--primary-color-black-4: color-mix(in oklab, var(--primary-color), black 4%);--primary-color-black-5: color-mix(in oklab, var(--primary-color), black 5%);--primary-color-black-10: color-mix(in oklab, var(--primary-color), black 10%);--primary-color-black-15: color-mix(in oklab, var(--primary-color), black 15%);--primary-color-black-20: color-mix(in oklab, var(--primary-color), black 20%);--primary-color-black-25: color-mix(in oklab, var(--primary-color), black 25%);--primary-color-black-30: color-mix(in oklab, var(--primary-color), black 30%);--primary-color-black-35: color-mix(in oklab, var(--primary-color), black 35%);--primary-color-black-40: color-mix(in oklab, var(--primary-color), black 40%);--primary-color-black-50: color-mix(in oklab, var(--primary-color), black 50%);--primary-color-black-60: color-mix(in oklab, var(--primary-color), black 60%);--primary-color-black-65: color-mix(in oklab, var(--primary-color), black 65%);--primary-color-black-70: color-mix(in oklab, var(--primary-color), black 70%);--primary-color-black-75: color-mix(in oklab, var(--primary-color), black 75%);--primary-color-black-80: color-mix(in oklab, var(--primary-color), black 80%);--primary-color-black-85: color-mix(in oklab, var(--primary-color), black 85%);--primary-color-black-90: color-mix(in oklab, var(--primary-color), black 90%);--primary-color-black-95: color-mix(in oklab, var(--primary-color), black 95%);--primary-color-black-96: color-mix(in oklab, var(--primary-color), black 96%);--primary-color-black-97: color-mix(in oklab, var(--primary-color), black 97%);--primary-color-black-98: color-mix(in oklab, var(--primary-color), black 98%);--primary-color-black-99: color-mix(in oklab, var(--primary-color), black 99%);--primary-color-gray-1: color-mix(in oklab, var(--primary-color), gray 1%);--primary-color-gray-2: color-mix(in oklab, var(--primary-color), gray 2%);--primary-color-gray-3: color-mix(in oklab, var(--primary-color), gray 3%);--primary-color-gray-4: color-mix(in oklab, var(--primary-color), gray 4%);--primary-color-gray-5: color-mix(in oklab, var(--primary-color), gray 5%);--primary-color-gray-10: color-mix(in oklab, var(--primary-color), gray 10%);--primary-color-gray-15: color-mix(in oklab, var(--primary-color), gray 15%);--primary-color-gray-20: color-mix(in oklab, var(--primary-color), gray 20%);--primary-color-gray-25: color-mix(in oklab, var(--primary-color), gray 25%);--primary-color-gray-30: color-mix(in oklab, var(--primary-color), gray 30%);--primary-color-gray-35: color-mix(in oklab, var(--primary-color), gray 35%);--primary-color-gray-40: color-mix(in oklab, var(--primary-color), gray 40%);--primary-color-gray-50: color-mix(in oklab, var(--primary-color), gray 50%);--primary-color-gray-60: color-mix(in oklab, var(--primary-color), gray 60%);--primary-color-gray-65: color-mix(in oklab, var(--primary-color), gray 65%);--primary-color-gray-70: color-mix(in oklab, var(--primary-color), gray 70%);--primary-color-gray-75: color-mix(in oklab, var(--primary-color), gray 75%);--primary-color-gray-80: color-mix(in oklab, var(--primary-color), gray 80%);--primary-color-gray-85: color-mix(in oklab, var(--primary-color), gray 85%);--primary-color-gray-90: color-mix(in oklab, var(--primary-color), gray 90%);--primary-color-gray-95: color-mix(in oklab, var(--primary-color), gray 95%);--primary-color-gray-96: color-mix(in oklab, var(--primary-color), gray 96%);--primary-color-gray-97: color-mix(in oklab, var(--primary-color), gray 97%);--primary-color-gray-98: color-mix(in oklab, var(--primary-color), gray 98%);--primary-color-gray-99: color-mix(in oklab, var(--primary-color), gray 99%)} -/*! Theme: default-modern */ +@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Open Sans:ital,wght@0,400..700;1,400..700&display=swap";@import"https://fonts.googleapis.com/css2?family=PT Serif:ital,wght@0,400;0,700;1,400;1,700&display=swap";@import"https://fonts.googleapis.com/css2?family=Inconsolata:ital,wght@0,400..700;1,400..700&display=swap";*{box-sizing:border-box}@layer spacing{:is(section,article,.knowl__content)>*:not(:first-child){margin-top:1.5em}:is(section,article,.knowl__content)>.para+.para{margin-top:1em}.ptx-content :is(ul,td,li,dd,.blockquote,.sbspanel,.para.logical)>*:not(:first-child){margin-top:.5em}}ol.no-marker,ul.no-marker,li.no-marker{list-style-type:none}ol.decimal{list-style-type:decimal}ol.lower-alpha{list-style-type:lower-alpha}ol.lower-alpha-level-1>li::marker{content:"(" counter(list-item,lower-alpha) ") "}ol.upper-alpha{list-style-type:upper-alpha}ol.lower-roman{list-style-type:lower-roman}ol.upper-roman{list-style-type:upper-roman}ul.disc{list-style-type:disc}ul.square{list-style-type:square}ul.circle{list-style-type:circle}dl:is(.description-list,.glossary){margin:0}dl:is(.description-list,.glossary) dt{font-weight:700;max-width:55ex}dl:is(.description-list,.glossary) dd:after{content:"";display:block;clear:both}.para>dl:is(.description-list){margin-top:.5em;margin-bottom:.5em}dl.glossary dt{margin-top:1.25em}dl.glossary dt:first-of-type{margin-top:0}dl.glossary dd{margin-left:5ex}dl.description-list dt,dl.description-list dd{margin-top:1em}dl.description-list dt:first-of-type,dl.description-list dd:first-of-type{margin-top:0}dl.description-list dt{float:left;clear:both;text-align:right;width:18ex;margin-right:1ex}dl.description-list dd{margin-left:22ex}dl.description-list.narrow dt{width:11ex}dl.description-list.narrow dd{margin-left:15ex}dl.description-list.wide dt{width:25ex}dl.description-list.wide dd{margin-left:29ex}dl.description-list dt:first-of-type{clear:none}.description-list+*{clear:both}dl.description-list dl dt{width:8ex}dl.description-list dd dd{margin-left:18ex}dl.description-list dl dd{margin-left:12ex}@media screen and (max-width: 480px){dl.description-list dt{float:none;margin-left:0;text-align:left}dl.description-list dd,dl.description-list.narrow dd,dl.description-list.wide dd{margin-top:.5em;margin-left:3em;max-width:calc(100% - 3em)}}:is(.cols2,.cols3,.cols4,.cols5,.cols6){display:flex;flex-wrap:wrap;justify-content:start}.cols2>li{min-width:calc(50% - 2em);width:min-content;margin-right:2em}.cols3>li{min-width:calc(33.3333333333% - 2em);width:min-content;margin-right:2em}.cols4>li{min-width:calc(25% - 2em);width:min-content;margin-right:2em}.cols5>li{min-width:calc(20% - 2em);width:min-content;margin-right:2em}.cols6>li{min-width:calc(16.6666666667% - 2em);width:min-content;margin-right:2em}.ptx-content li{margin-top:.5em}.ptx-content li .li--heading-title{font-size:100%;font-weight:400;font-style:italic}.para>:is(ol,ul){margin-top:.5em;margin-bottom:.5em}ol>li{padding-left:.25em}.fillin{display:inline-block;border:none;border-width:1px;margin-right:.1em;margin-left:.1em;margin-bottom:-.25em}.fillin.underline{border-bottom-style:solid;border-width:1px}.fillin.box{outline:1px solid var(--body-text-color);height:1.3em}.fillin.shade{background-color:var(--fillin-background-color, #eee);height:1.3em}:root.dark-mode{--fillin-background-color: #444}.heading:is(h1,h2,h3,h4,h5,h6){margin:0;font-size:unset}.heading{line-height:1.1;font-family:var(--font-headings);font-weight:700;margin-top:0;margin-bottom:0}section>.heading{font-size:1.75em;color:var(--body-title-color);line-height:1.25em;margin-top:2.5em;margin-bottom:.5em}section>.heading+*{margin-top:.5em}.ptx-content>section>.heading{margin-top:.5em}section section>.heading{font-size:1.5em;margin-top:2em}section section section>.heading{font-size:1.4em;margin-top:2em}article>.heading{font-size:1.25em;margin-top:1.5em}article>.heading+*{margin-top:.5em}.paragraphs>.heading{font-size:1.125em}:is(section,article)>.heading+:is(section,article)>.heading{margin-top:.5em}@media screen and (max-width: 480px){section>.heading{font-size:1.5em;line-height:1.33em;margin-top:1em}section section>.heading{font-size:1.3em;line-height:1.15em}section section section>.heading{font-size:1.15em;line-height:1em}}.heading.hide-type>.type{display:none}a{color:var(--link-text-color);text-decoration:none}a:hover,a:focus{text-decoration:none}a[href^="mailto:"]{white-space:pre}.ptx-content a.internal{color:var(--link-text-color);font-weight:700}.ptx-content a.external{color:var(--link-alt-text-color);font-weight:700}.ptx-content a.internal:hover,.ptx-content a.internal:hover *,.ptx-content a.internal:focus,.ptx-content a.internal:focus *{color:var(--link-active-text-color);background-color:var(--link-active-background);font-weight:700}.ptx-content a.external:hover,.ptx-content a.external:hover *,.ptx-content a.external:focus,.ptx-content a.external:focus *{color:var(--link-alt-active-text-color);background-color:var(--link-alt-active-background);font-weight:700}.ptx-content table{border-spacing:0;border-collapse:collapse}.ptx-content td{padding:2px 5px;font-size:90%}.ptx-content td img{max-width:200px;margin-right:30px}.ptx-content th{padding:2px 5px}.ptx-content th .lines{white-space:nowrap}.ptx-content th.l{text-align:left}.ptx-content th.c{text-align:center}.ptx-content th.r{text-align:right}.ptx-content th.j{text-align:justify}.ptx-content th.t{vertical-align:top}.ptx-content th.b{vertical-align:bottom}.ptx-content th.m{vertical-align:middle}.ptx-content th.l0{border-left:none}.ptx-content th.l1{border-left:1px solid var(--body-text-color)}.ptx-content th.l2{border-left:2px solid var(--body-text-color)}.ptx-content th.l3{border-left:3px solid var(--body-text-color)}.ptx-content th.r0{border-right:none}.ptx-content th.r1{border-right:1px solid var(--body-text-color)}.ptx-content th.r2{border-right:2px solid var(--body-text-color)}.ptx-content th.r3{border-right:3px solid var(--body-text-color)}.ptx-content th.t0{border-top:none}.ptx-content th.t1{border-top:1px solid var(--body-text-color)}.ptx-content th.t2{border-top:2px solid var(--body-text-color)}.ptx-content th.t3{border-top:3px solid var(--body-text-color)}.ptx-content th.b0{border-bottom:none}.ptx-content th.b1{border-bottom:1px solid var(--body-text-color)}.ptx-content th.b2{border-bottom:2px solid var(--body-text-color)}.ptx-content th.b3{border-bottom:3px solid var(--body-text-color)}.ptx-content td .lines{white-space:nowrap}.ptx-content td.l{text-align:left}.ptx-content td.c{text-align:center}.ptx-content td.r{text-align:right}.ptx-content td.j{text-align:justify}.ptx-content td.t{vertical-align:top}.ptx-content td.b{vertical-align:bottom}.ptx-content td.m{vertical-align:middle}.ptx-content td.l0{border-left:none}.ptx-content td.l1{border-left:1px solid var(--body-text-color)}.ptx-content td.l2{border-left:2px solid var(--body-text-color)}.ptx-content td.l3{border-left:3px solid var(--body-text-color)}.ptx-content td.r0{border-right:none}.ptx-content td.r1{border-right:1px solid var(--body-text-color)}.ptx-content td.r2{border-right:2px solid var(--body-text-color)}.ptx-content td.r3{border-right:3px solid var(--body-text-color)}.ptx-content td.t0{border-top:none}.ptx-content td.t1{border-top:1px solid var(--body-text-color)}.ptx-content td.t2{border-top:2px solid var(--body-text-color)}.ptx-content td.t3{border-top:3px solid var(--body-text-color)}.ptx-content td.b0{border-bottom:none}.ptx-content td.b1{border-bottom:1px solid var(--body-text-color)}.ptx-content td.b2{border-bottom:2px solid var(--body-text-color)}.ptx-content td.b3{border-bottom:3px solid var(--body-text-color)}.ptx-content th.r0.l0,.ptx-content td.r0.l0{padding-left:.8em;padding-right:.8em}.ptx-content tr.header-vertical th{writing-mode:vertical-rl;padding-left:2em}.ptx-content .center table{text-align:center;margin-left:auto;margin-right:auto}.tabular-box{margin-top:.5em;overflow-x:auto}.tabular-box.natural-width table{margin-left:auto;margin-right:auto}table.notation-list tr th{text-align:left;margin-left:1em}table.notation-list tr td{text-align:left;vertical-align:top}.frontmatter>.heading{display:block;text-align:center}.frontmatter>.heading .title,.frontmatter .book>.heading .title{font-size:1.3em}.frontmatter>.heading .subtitle,.frontmatter .book>.heading .subtitle{display:block;font-weight:400;color:var(--byline-color);font-size:.875em;line-height:1.42857em;margin-top:.35714em}.frontmatter>.para:first-of-type{margin-top:4em}.frontmatter>.author,.frontmatter>.credit{margin-top:2em;text-align:center}.frontmatter .author:first-of-type{margin-top:4em}.frontmatter>.author .author-name{font-size:120%}.frontmatter .date{display:block;margin-top:2em;text-align:center}.frontmatter .credit .title{font-size:1em}.frontmatter .credit .author{font-size:.9em;margin-top:.75em}.frontmatter .author-info{font-size:90%}.frontmatter .summary-links{margin-top:4em}.frontmatter .abstract{margin:4em 2em}.frontmatter .keywords,.frontmatter .support{margin-top:2em}.frontmatter .abstract>.title,.frontmatter .keywords>.title,.frontmatter .support>.title{font-size:1.125em;font-weight:600;line-height:1.125em;display:inline}.frontmatter .abstract>.title:after,.frontmatter .keywords>.title:after,.frontmatter .support>.title:after{content:".\2009\2009\2009"}.frontmatter .abstract>.title+.para,.frontmatter .keywords>.title+.para,.frontmatter .support>.title+.para{display:inline}.frontmatter .colophon .copyright,.frontmatter .colophon .license{margin-top:2.5em}.ptx-content .summary-links{font-family:var(--font-headings);display:block;margin-top:1em}.ptx-content .summary-links a{color:var(--summary-link-text-color);background:var(--summary-link-background);font-size:1.5em;line-height:1.25em;padding:10px 60px 10px 20px;border-radius:3px;position:relative;display:block;font-weight:unset}.ptx-content .summary-links a .title{font-style:normal}.ptx-content .summary-links a .codenumber{margin-right:.41667em}.ptx-content .summary-links a:after{right:.83333em;content:"";position:absolute;top:50%;margin-top:-.4em;width:0;height:0;border-top:.4em solid transparent;border-bottom:.4em solid transparent;border-left:.4em solid var(--summary-link-text-color)}.ptx-content .summary-links a:hover,.ptx-content .summary-links a:hover *{color:var(--summary-link-hover-text-color);background:var(--summary-link-hover-background)}.ptx-content .summary-links a:hover .title{font-weight:400}.ptx-content .summary-links a:hover:after{border-left:.4em solid var(--summary-link-hover-text-color)}.ptx-content .summary-links ul{list-style-type:none;padding:0;margin-top:0}.ptx-content .summary-links li{margin-top:5px}@media screen and (width <= 480px){.ptx-content .summary-links a{font-size:100%;line-height:1.25em}}.ptx-footnote{display:inline-block;position:relative}.ptx-footnote[open]{display:contents}.ptx-footnote[open] .ptx-footnote__number:before{font-size:smaller;content:"[x]";visibility:visible;vertical-align:super}.ptx-footnote[open] .ptx-footnote__number sup{display:none}.ptx-footnote__number{display:inline-block;cursor:pointer;min-width:1em}.ptx-footnote__number::marker{content:""}.ptx-footnote__contents{display:block;font-style:italic;background:var(--knowl-background);border-radius:0;padding:8px;margin:4px auto;width:fit-content;max-width:calc(100% - 60px);border:2px solid var(--knowl-border-color);color:var(--body-text-color);font-weight:400;font-size:var(1rem)}.navbar .indexnav{position:absolute;top:46px;right:0}.mininav{float:left;padding-top:.7ex;padding-left:1ex}.indexjump{margin-left:1.5ex;margin-top:.2ex;padding-top:0;float:left;line-height:.95}.indexjump a{padding-left:2.5px;padding-right:.5px;width:2.5ex;margin-right:-1px;color:inherit;font-size:80%;text-align:center}.indexjump a:after{content:"";display:inline-block}.indexjump a:nth-of-type(14){padding-left:1.8ex}.indexjump a:last-child{padding-right:10px}.indexjump a:hover{background:var(--activated-content-bg)}.indexitem{margin-top:4px}.subindexitem{margin-left:2em;font-size:95%;margin-top:-1px}.subsubindexitem{margin-left:3.5em;font-size:95%;margin-top:-1px}.indexknowl{margin-left:.11em}em+.indexknowl{margin-left:-.25em}.indexknowl a{margin-left:2em}.indexitem .see,.subindexitem .see,.subsubindexitem .see,.indexitem .seealso,.subindexitem .seealso,.subsubindexitem .seealso{margin-left:1em;margin-right:0}.indexitem .see em,.subindexitem .see em,.subsubindexitem .see em,.indexitem .seealso em,.subindexitem .seealso em,.subsubindexitem .seealso em{margin-right:.25em;font-style:italic}.indexitem .see+.see,.subindexitem .see+.see,.subsubindexitem .see+.see,.indexitem .seealso+.seealso,.subindexitem .seealso+.seealso,.subsubindexitem .seealso+.seealso{margin-left:0;margin-right:0}.indexitem .indexknowl{font-size:90%}.indexitem [data-knowl],.subindexitem [data-knowl],.indexitem [data-knowl]:hover{padding-right:2px;padding-left:2px}.indexknowl [data-knowl]:hover,.indexknowl .active[data-knowl]{margin-left:2em}.subindexitem .indexknowl,.subsubindexitem .indexknowl{font-size:95%}.indexletter{margin-top:1.5em}.image-box,.audio-box,.video-box,.asymptote-box{position:relative}.image-box .asymptote-box iframe.asymptote,iframe.asymptote,.video-box .video,.video-box .video-poster{position:absolute;top:0;left:0;width:100%;height:100%}.image-box img,img.contained{width:100%}.ptx-content img,.ptx-content svg{background:var(--ptx-image-bg)}.mermaid>svg{background:none}.image-description summary{list-style:none;cursor:pointer}.image-archive{margin:.75em auto 0;font-family:var(--font-monospace);justify-content:center;display:flex;gap:.5em}.image-box>img:not(.mag_popup){cursor:zoom-in}img.mag_popup{border:1px solid #666;box-shadow:4px 6px 4px #999;cursor:zoom-out}.mag_popup_container{width:100%;position:absolute;z-index:1001;overflow-x:visible}.audio{width:100%}.video-poster{cursor:pointer}figure{clear:both;position:relative;margin-left:0;margin-right:0}figcaption{margin-left:auto;margin-right:auto;margin-top:.5em}figcaption code.code-inline{white-space:pre}figcaption .codenumber,figcaption .type{font-weight:700}figcaption .codenumber:after,figcaption .type:last-of-type:after{content:"\2002"}figcaption .para:first-of-type{display:inline}figure.table-like{margin-left:30px;margin-right:30px}figure.table-like .list{margin-right:0}@media (max-width <= 943px){.figure-like{overflow-x:auto}}.poem{display:table;margin:0 auto;width:auto;max-width:90%}.poem>.heading{display:block;text-align:center}section article.poem>.heading:after{content:""}.poem>.heading>.title{font-weight:700;font-size:1.2em;line-height:1.2em}.poem .author{font-style:italic;margin-top:.75em}.poem .author.left{text-align:left}.poem .author.center{text-align:center}.poem .author.right{text-align:right}.poem .stanza>.heading{text-align:center;font-weight:700;font-size:1em;line-height:1em}.poem .stanza+.stanza{margin-top:1em}.poem .heading+.stanza{margin-top:.2em}.poem .heading+.line{margin-top:.2em}.poem .line.left{text-align:left;margin-left:4em;text-indent:-4em}.poem .line.center{text-align:center}.poem .line.right{text-align:right}.poem .tab{margin-left:2em}.code-box{overflow-x:auto}.code-display{overflow-x:auto;font-family:var(--font-monospace)}.console,.program{border:1px solid var(--page-border-color);padding:5px 15px;overflow-x:auto;margin:0;font-family:var(--font-monospace);background:var(--code-background);font-size:.93rem;line-height:1.2}.code-inline{font-family:var(--font-monospace);white-space:pre;color:var(--body-text-color);background:var(--code-inline-background);border:1px solid color-mix(in oklab,var(--code-inline-background) 50%,#888);border-radius:.2em;display:inline-block;overflow-x:auto;max-width:100%;vertical-align:middle;line-height:normal;padding:.0625em .15em}.prompt.unselectable{user-select:none}.code-block{border-left:1px solid #aaa;padding:0 15px 5px;overflow-x:auto;margin-top:0;margin-bottom:0;font-family:var(--font-monospace);background:var(--code-background);font-size:.93rem;line-height:1.2}.code-block:before{content:" ";font-size:50%;border-top:1px solid #aaa;display:block;margin-right:auto;margin-left:-15px;width:3em}.code-display{margin:.5em 0}.clipboardable:has(.code-display){margin:.25em 0}.clipboardable:has(.code-display) .code-display{margin:0;padding:.25em 0}.clipboardable{position:relative;display:flow-root}.clipboardable .code-copy{position:absolute;right:0;top:0;opacity:.25;border-width:0;background:none;cursor:pointer;z-index:1;white-space-collapse:collapse;padding:1px;scale:.85}.clipboardable .code-copy:hover{opacity:.7}.clipboardable .code-copy .checkmark{display:none}.clipboardable .code-copy.copied{opacity:1;color:#3cb371;cursor:not-allowed;pointer-events:none}.clipboardable .code-copy.copied .copyicon{display:none}.clipboardable .code-copy.copied .checkmark{display:inline}@media print{.code-copy{display:none}}pre[class*=language-]{margin:0;overflow:auto;border:1px solid #e1e1e1}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}code[class*=language-],pre[class*=language-]{color:#000;background:#fdfdfd;text-shadow:none;font-family:var(--font-monospace);text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.2;tab-size:4;hyphens:none}code[class*=language-].code-inline,pre[class*=language-].code-inline{line-height:normal;padding:.0625em .15em}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#b3d4fc}code[class*=language-] .token:is(.comment,.prolog,.doctype,.cdata),pre[class*=language-] .token:is(.comment,.prolog,.doctype,.cdata){color:#2a9716}code[class*=language-] .token.punctuation,pre[class*=language-] .token.punctuation{color:#000}code[class*=language-] .token.namespace,pre[class*=language-] .token.namespace{opacity:.9}code[class*=language-] .token:is(.property,.tag,.boolean,.number,.constant,.symbol,.deleted),pre[class*=language-] .token:is(.property,.tag,.boolean,.number,.constant,.symbol,.deleted){color:#29780f}code[class*=language-] .token:is(.selector,.attr-name,.string,.char,.builtin,.regex,.inserted),pre[class*=language-] .token:is(.selector,.attr-name,.string,.char,.builtin,.regex,.inserted){color:#a11}code[class*=language-] .token:is(.operator,.entity,.url),pre[class*=language-] .token:is(.operator,.entity,.url){color:#000;background:none}code[class*=language-] .token:is(.atrule,.attr-value,.keyword),pre[class*=language-] .token:is(.atrule,.attr-value,.keyword){color:#0679b7}code[class*=language-] .token.function,code[class*=language-] .token.class-name,pre[class*=language-] .token.function,pre[class*=language-] .token.class-name{color:#30a}code[class*=language-] .token.important,code[class*=language-] .token.variable,pre[class*=language-] .token.important,pre[class*=language-] .token.variable{color:#000}code[class*=language-] .token.important,code[class*=language-] .token.bold,pre[class*=language-] .token.important,pre[class*=language-] .token.bold{font-weight:700}code[class*=language-] .token.italic,pre[class*=language-] .token.italic{font-style:italic}code[class*=language-] .token.entity,pre[class*=language-] .token.entity{cursor:help}code[class*=language-].line-numbers,pre[class*=language-].line-numbers{position:relative;padding-left:3.8em;counter-reset:linenumber;overflow:auto}code[class*=language-].line-numbers>code,pre[class*=language-].line-numbers>code{position:relative;white-space:inherit}code[class*=language-].line-numbers .line-numbers-rows,pre[class*=language-].line-numbers .line-numbers-rows{position:absolute;pointer-events:none;top:0;font-size:100%;left:-3.8em;width:3em;letter-spacing:-1px;border-right:1px solid #999;user-select:none}code[class*=language-].line-numbers .line-numbers-rows>span,pre[class*=language-].line-numbers .line-numbers-rows>span{display:block;counter-increment:linenumber}code[class*=language-].line-numbers .line-numbers-rows>span:before,pre[class*=language-].line-numbers .line-numbers-rows>span:before{content:counter(linenumber);color:#999;display:block;padding-right:.8em;text-align:right}code[class*=language-] .line-highlight,pre[class*=language-] .line-highlight{position:absolute;margin-top:4px;left:0;right:0;padding:inherit 0;font-size:inherit;background:#997a6614;pointer-events:none;line-height:inherit;white-space:pre}:root.dark-mode pre[class*=language-]{border:1px solid #3d3d3d}:root.dark-mode code[class*=language-],:root.dark-mode pre[class*=language-]{color:#fff;background:#141414}:root.dark-mode code[class*=language-]::selection,:root.dark-mode code[class*=language-] ::selection,:root.dark-mode pre[class*=language-]::selection,:root.dark-mode pre[class*=language-] ::selection{background:#27292a}:root.dark-mode code[class*=language-] .token,:root.dark-mode pre[class*=language-] .token{position:relative;z-index:1}:root.dark-mode code[class*=language-] .token:is(.comment,.prolog,.doctype,.cdata),:root.dark-mode pre[class*=language-] .token:is(.comment,.prolog,.doctype,.cdata){color:#68a950}:root.dark-mode code[class*=language-] .token.punctuation,:root.dark-mode pre[class*=language-] .token.punctuation{color:#fff;opacity:1}:root.dark-mode code[class*=language-] .token.namespace,:root.dark-mode pre[class*=language-] .token.namespace{opacity:.9}:root.dark-mode code[class*=language-] .token:is(.property,.tag,.boolean,.number,.constant,.symbol,.deleted),:root.dark-mode pre[class*=language-] .token:is(.property,.tag,.boolean,.number,.constant,.symbol,.deleted){color:#abc792}:root.dark-mode code[class*=language-] .token:is(.selector,.attr-name,.string,.char,.builtin,.regex,.inserted),:root.dark-mode pre[class*=language-] .token:is(.selector,.attr-name,.string,.char,.builtin,.regex,.inserted){color:#ca9147}:root.dark-mode code[class*=language-] .token:is(.operator,.entity,.url),:root.dark-mode pre[class*=language-] .token:is(.operator,.entity,.url){color:#fff}:root.dark-mode code[class*=language-] .token:is(.atrule,.attr-value,.keyword),:root.dark-mode pre[class*=language-] .token:is(.atrule,.attr-value,.keyword){color:#2d94fb}:root.dark-mode code[class*=language-] .token.function,:root.dark-mode code[class*=language-] .token.class-name,:root.dark-mode pre[class*=language-] .token.function,:root.dark-mode pre[class*=language-] .token.class-name{color:#e3e1c2}:root.dark-mode code[class*=language-] .token.important,:root.dark-mode code[class*=language-] .token.bold,:root.dark-mode pre[class*=language-] .token.important,:root.dark-mode pre[class*=language-] .token.bold{font-weight:700}:root.dark-mode code[class*=language-] .token.italic,:root.dark-mode pre[class*=language-] .token.italic{font-style:italic}:root.dark-mode code[class*=language-] .token.entity,:root.dark-mode pre[class*=language-] .token.entity{cursor:help}:root.dark-mode .line-highlight{background:#5454541a;border-bottom:1px dashed hsl(0,0%,33%);border-top:1px dashed hsl(0,0%,33%);z-index:0}@media print{code[class*=language-] .line-highlight,pre[class*=language-] .line-highlight{color-adjust:exact}}.displaymath{overflow-x:auto;overflow-y:hidden}.displaymath mjx-container[jax=CHTML][display=true]{margin:0;padding-top:2px}.process-math mjx-container svg{background:none}[data-knowl]>mjx-mrow .TEX-I{font-family:MJXZERO!important;font-style:normal!important}.knowl mjx-mtext>mjx-utext,mjx-mtext>mjx-utext{width:revert!important}mjx-msup mjx-utext,mjx-msub mjx-utext{display:inline}section,article,li,blockquote,figcaption,dt,.exercisegroup,.discussion-like,.solution-like,.para{position:relative}.autopermalink{position:absolute;display:inline-block;top:.5ex;left:-2em;font-size:85%;opacity:var(--permalink-opacity, 0);transition:opacity .2s;margin-top:0!important}li>.autopermalink{left:-3.5em}.autopermalink>*{padding-left:.2em;padding-right:.2em}.appendix>.autopermalink,.chapter>.autopermalink,.index>.autopermalink,.section>.autopermalink,.subsection>.autopermalink,.references>.autopermalink,.exercises>.autopermalink{top:1.5ex}.assemblage-like>.para>.autopermalink,.example-like>.para>.autopermalink,.example-like>.exercise-like>.autopermalink,.project-like>.para>.autopermalink,.project-like>.exercise-like>.autopermalink,.project-like>.exercise-like>.introduction>.para>.autopermalink,.project-like>.exercise-like>.conclusion>.para>.autopermalink,.remark-like>.para>.autopermalink{left:-2.9em}.axiom-like>.para:first-of-type>.autopermalink,.example-like>.para:first-of-type>.autopermalink,.exercise-like>.para:first-of-type>.autopermalink,.solution-like>.para:first-of-type>.autopermalink,.assemblage-like>.para:first-of-type>.autopermalink,.definition-like>.para:first-of-type>.autopermalink,.remark-like>.para:first-of-type>.autopermalink,.project-like>.para:first-of-type>.autopermalink,.openproblem-like>.para:first-of-type>.autopermalink,.computation-like>.para:first-of-type>.autopermalink,.theorem-like>.para:first-of-type>.autopermalink,.proof>.para:first-of-type>.autopermalink,.case>.para:first-of-type>.autopermalink,li>.para:first-of-type>.autopermalink,dd>.para:first-of-type>.autopermalink{display:none}.axiom-like>.introduction>.para:first-of-type>.autopermalink,.example-like>.introduction>.para:first-of-type>.autopermalink,.exercise-like>.introduction>.para:first-of-type>.autopermalink,.solution-like>.introduction>.para:first-of-type>.autopermalink,.assemblage-like>.introduction>.para:first-of-type>.autopermalink,.definition-like>.introduction>.para:first-of-type>.autopermalink,.remark-like>.introduction>.para:first-of-type>.autopermalink,.project-like>.introduction>.para:first-of-type>.autopermalink,.openproblem-like>.introduction>.para:first-of-type>.autopermalink,.computation-like>.introduction>.para:first-of-type>.autopermalink,.theorem-like>.introduction>.para:first-of-type>.autopermalink,.proof>.introduction>.para:first-of-type>.autopermalink,.case>.introduction>.para:first-of-type>.autopermalink,li>.introduction>.para:first-of-type>.autopermalink,dd>.introduction>.para:first-of-type>.autopermalink{display:none}.ptx-content:has(.autopermalink:hover) .autopermalink{opacity:.2}.ptx-content:has(.autopermalink:hover) .autopermalink:hover{opacity:1}.autopermalink:has(a:focus-visible){opacity:1}.permalink-alert{position:absolute;top:-3em;left:5em;padding:1.5em 2em;background:var(--content-background);border:3px solid var(--page-border-color);z-index:2001}:target{scroll-margin-top:45px;animation:target-fade 10s 1}@keyframes target-fade{0%{background-color:var(--activated-content-bg)}to{background-color:inherit;opacity:1}}em.alert{font-weight:700}.bib{margin-top:.25em}.bib .bibitem{display:inline-block;vertical-align:top;width:7%;margin-right:0}.bib .bibitem+.bibentry{display:inline-block;width:90%;margin-top:0}.caption{margin-top:10px;margin-left:auto;margin-right:auto;font-size:100%;text-align:center}.contributor{margin-top:1.5ex}.contributor:first-child{margin-top:0}.contributor+.para{margin-top:3ex}.contributor .contributor-name{font-variant:small-caps}.contributor .contributor-info{font-size:88%;font-style:italic;margin-left:3ex}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}iframe{margin:0;border:none}.kbdkey{background:#f1f1f1;color:#333;border:1px solid #dddddd;border-radius:3px;padding:1px 2px 0;vertical-align:.1em;font-size:110%;line-height:1;box-shadow:2px 2px gray;display:inline-block;margin-right:3px}.unit,.quantity{white-space:nowrap;word-spacing:-.25ex;margin-right:.125em}.unit sub,.unit sup,.quantity sub,.quantity sup{word-spacing:normal}.terminology{font-style:italic;font-weight:700}.times-sign{font-size:larger;vertical-align:-.15ex}.emphasis{font-style:italic}.emphasis .emphasis,.definition-like .emphasis{font-weight:700}article.theorem-like .emphasis{font-weight:700}.para{line-height:1.35}.hidden{display:none!important}.taxon{font-style:italic}.quote{padding-left:40px;padding-right:10px;margin-bottom:1em}.booktitle{font-style:oblique}.latex-logo{font-family:"PT Serif",Times New Roman,Times,serif}.latex-logo .A{font-size:75%;text-transform:uppercase;vertical-align:.5ex;margin-left:-.48em;margin-right:-.2em}.latex-logo .E{vertical-align:-.5ex;text-transform:uppercase;margin-left:-.18em;margin-right:-.12em}@media print{.pretext .ptx-masthead,.pretext .ptx-navbar,body.pretext>a.assistive,.pretext .ptx-page>.ptx-sidebar,.pretext .ptx-page-footer,.pretext .ptx-main>div.ptx-content-footer{display:none}.ptx-page,.ptx-main,.ptx-main .ptx-content{all:unset!important;width:100%;border:none;padding:0;margin:0}.ptx-sagecell,.tabular,.table-like,.figure-like,.exercise-like{break-inside:avoid}.heading{break-after:avoid}.code-inline{border:unset;background:unset}@page{margin:.75in}}.heading .print-links{float:right;vertical-align:bottom}.heading .print-links .print-link{font-family:var(--font-body);padding:.1em .2em}.heading .print-links .material-symbols-outlined{margin-top:5pt}.pretext .searchwrapper{max-width:900px;position:absolute;right:0;bottom:0;margin-bottom:39px}.pretext .searchwrapper .cse .gsc-control-cse,.pretext .searchwrapper .cse .gsc-control-cse input,.searchwrapper .gsc-control-cse{padding:5px}.searchbox .searchwidget{height:100%}.searchbox .searchresultsplaceholder{position:fixed;top:5vh;bottom:5vh;padding:1em;left:max(10vw,(100vw - 800px) / 2);width:80vw;max-width:800px;border:2px solid var(--body-text-color);background:var(--knowl-background, #eaf0f6);z-index:5000;display:flex;flex-direction:column}.searchbox .searchresultsplaceholder article{width:60%;margin-left:auto;margin-right:auto;font-family:sans-serif}.searchbox .search-results-controls{display:flex;justify-content:space-between;align-items:stretch;gap:10px;margin-bottom:1em;height:35px}.searchbox .ptxsearch{flex:1 1}.searchbox .closesearchresults{font:inherit;display:flex;justify-content:center;align-items:center;padding:0 10px;gap:10px;min-height:34px;color:var(--button-text-color);background-color:var(--button-background);border-width:1px;border-color:var(--button-border-color);border-style:solid;border-radius:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;user-select:none}.searchbox .closesearchresults:hover:not(.disabled){color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.searchbox .closesearchresults:focus-visible{outline:2px solid var(--button-text-color);outline-offset:-2px}.searchbox .closesearchresults.disabled{opacity:.4;cursor:not-allowed}.searchbox .closesearchresults.hidden{display:none}.searchbox .closesearchresults.open{color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.searchbox .detailed_result{margin-bottom:10px}.searchbox .searchresults a:hover{text-decoration:underline;background:var(--link-active-background)}.searchbox .searchresults{padding-left:10px;margin-top:0;overflow-y:auto;flex:1 1;background:var(--content-background, white);border:1px solid var(--page-border-color, #ccc)}.searchbox .searchresults:empty{display:none}.searchbox .search-result-bullet{list-style-type:none}.searchbox .search-result-score{display:none}.searchbox .no_result{font-size:90%;font-weight:200}.searchbox .low_result{font-weight:200}.searchbox .medium_result{font-weight:500}.searchbox .high_result{font-weight:700}.searchbox .searchempty{display:none;padding-left:10px;padding-top:5px}.searchbox .search-results-unshown-count{margin-top:.6em}.searchbox .search-result-clip-highlight{background:var(--searchresultshighlight)}.searchbox .searchresultsbackground{position:fixed;top:0;background:var(--searchresultsbackground, white);width:100vw;height:100%;left:0;z-index:4999}@media screen and (max-width: 800px){.searchbox .searchresultsplaceholder{bottom:10vh}}:root{--searchresultsbackground: #fff8;--searchresultshighlight: rgba(255, 255, 0, 50%)}:root.dark-mode{--searchresultsbackground: #0008;--searchresultshighlight: rgba(255, 255, 0, 15%)}.ptx-content .ptx-runestone-container .runestone{margin:unset;border-radius:0;border-width:1px}.multiplechoice_section label>.para{display:inline}.ptx-content .ptx-runestone-container .ac_question{max-width:var(--base-content-width);margin:0 auto 10px}.runestone .runestone_caption{display:none}.ptx-content .ptx-runestone-container .rsdraggable{font-size:100%}.ptx-content .bottom{position:unset}.ptx-runestone-container .runestone code,.ptx-runestone-container .runestone pre{font-size:.93rem;line-height:1.2;font-family:var(--font-monospace)}.ptx-runestone-container code[class*=language-],.ptx-runestone-container pre[class*=language-]{color:#000;background:#fdfdfd}.runestone.datafile .datafile_caption{background:var(--code-inline-background);border:1px solid color-mix(in oklab,var(--code-inline-background) 50%,#888);display:block;width:fit-content;margin:0 auto}.runestone.datafile img{margin:0 auto;display:block;border:1px solid color-mix(in oklab,var(--code-inline-background) 50%,#888)}.runestone.datafile pre,.runestone.datafile textarea{margin:0 auto;border:1px solid color-mix(in oklab,var(--code-inline-background) 50%,#888);background-color:var(--page-color)}.runestone.datafile+.program{margin-top:0}ul[data-component=timedAssessment]{margin:0;padding:0}:root.dark-mode .ptx-runestone-container code[class*=language-],:root.dark-mode .ptx-runestone-container pre[class*=language-]{color:#fff;background:#141414}.ptx-content .wwprob table.attemptResults{margin-left:2em;background:#efefef;padding:.2em}.ptx-content .wwprob table.attemptResults+.attemptResultsSummary{margin-top:1em}.ptx-content .wwprob .problem-main-form{margin-top:1em;background:#eef;padding:.5em}.ptx-content .wwprob td.ResultsWithoutError{background:#9f9}.ptx-content .wwprob td.ResultsWithError{background:#f99}.ptx-content .wwprob tr th{text-align:center;padding:.2em 1em}.ptx-content .wwprob tr td{text-align:center}.ptx-content .wwprob tr td:empty{background:#fff}.ptx-content .wwprob ol,.ptx-content .wwprob ul{margin-top:.75em!important}.ptx-content .wwprob .problem{background:#fdfdfd}.ptx-content .wwprob .problem a{text-decoration:none}.ptx-content .wwprob #footer{font-size:70%;text-align:right}label.webwork{display:inline-flex;flex-direction:column}label.correct .status{background-color:#a0f0a0}label.partly-correct .status{color:#fc6}label.incorrect .status{color:#b00}label.incorrect .status:before{content:" "}label.feedback{word-wrap:break-word}label.correct .feedback{background-color:#0fc}label.partly-correct .feedback{color:#fc6}label.incorrect .feedback{color:#e07070}.webwork img,.webwork+.knowl-output img{max-width:100%}.exercise-wrapper>*:not(:first-child){margin-top:1.5em}.ptx-content .problem-buttons{display:flex}.ptx-content .webwork-button{font:inherit;display:flex;justify-content:center;align-items:center;padding:0 10px;gap:10px;min-height:34px;color:var(--button-text-color);background-color:var(--button-background);border-width:1px;border-color:var(--button-border-color);border-style:solid;border-radius:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;user-select:none}.ptx-content .webwork-button:hover:not(.disabled){color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.ptx-content .webwork-button:focus-visible{outline:2px solid var(--button-text-color);outline-offset:-2px}.ptx-content .webwork-button.disabled{opacity:.4;cursor:not-allowed}.ptx-content .webwork-button.hidden{display:none}.ptx-content .webwork-button.open{color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.problem-buttons.hidden-content,.problem-contents.hidden-content{display:none}.sagecell_sessionOutput pre{font-family:var(--font-monospace)}.sagecell{white-space:normal;margin-top:1.25em;margin-bottom:1.25em}.sage-interact.sagecell{margin:0}.sagecell_evalButton{font-family:var(--font-body);font-size:16px;padding:0 .65em}.sagecell_evalButton{cursor:pointer;display:inline-block;vertical-align:middle;user-select:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-width:1px;border-style:solid;font-weight:700;border-radius:3px}.sagecell_evalButton{color:#383838;background-image:linear-gradient(#f7f7f7,#bbb);border-color:#c4c4c4}.sagecell_evalButton:hover{color:#181868;background-image:linear-gradient(#bbb,#f7f7f7)}.sagecell_evalButton:focus,.sagecell_evalButton:active{color:#20160b;background-image:linear-gradient(#ff6852,#ffd7d1);border-color:#ff2822}.sagecell .sagecell_editor{margin-bottom:8px}.sageanswer{font-family:monospace;white-space:pre;margin-left:3em;margin-bottom:2em}.sageanswer .key{display:inline-block;vertical-align:top;margin-right:1em}.sageanswer .output{display:inline-block;vertical-align:top}.calculator-container{position:fixed;z-index:100;bottom:5px;right:5px;width:253px;height:460px}@media screen and (max-width: 800px){.calculator-container{bottom:50px!important}}:is(.chapter,.section,.subsection,.subsubsection)>.tabular-box,:is(.chapter,.section,.subsection,.subsubsection)>.table>.tabular-box{overflow-x:auto}@container ptx-main (width > 640px){:is(.chapter,.section,.subsection,.subsubsection)>.tabular-box,:is(.chapter,.section,.subsection,.subsubsection)>.table>.tabular-box{--max-width: min((100cqw - 2 * 20px), 10000px) ;min-width:100%;clear:right;width:var(--max-width);max-width:var(--max-width);margin-left:calc(-.5*(100cqw - 640px))}}figure.table-like{margin-left:0;margin-right:0}:root{--base-content-width: 600px;--content-padding: 120px}body{margin:0;min-height:100vh;display:flex;flex-direction:column;align-items:stretch}body.pretext{color:var(--body-text-color);font-family:var(--font-body)}.ptx-page{position:relative;display:flex;flex-grow:1;width:100%}.ptx-main{flex-grow:1;position:relative;max-width:100%;container-name:ptx-main;container-type:inline-size}.ptx-main .ptx-content{max-width:840px;padding:24px 120px 60px;margin-left:auto;margin-right:auto}.worksheet .ptx-main .ptx-content{max-width:960px}.ptx-page{max-width:1480px;margin-left:auto;margin-right:auto}body.pretext,body.standalone{margin:0;padding:0;font-size:16px;background:var(--page-color, white)}body.pretext>a.assistive{padding:6px;position:absolute;top:-40px;left:0;color:#fff;border-right:1px solid white;border-bottom:1px solid white;border-bottom-right-radius:8px;background:#bf1722;z-index:10000}body.pretext>a.assistive:focus{top:0;outline:0;transition:top .1s ease-in,background .5s linear}.ptx-content-footer{display:flex;justify-content:space-around;max-width:840px;padding:2em 120px;margin-left:auto;margin-right:auto}.ptx-content-footer .button{font:inherit;display:flex;justify-content:center;align-items:center;padding:0 10px;gap:10px;min-height:34px;color:var(--button-text-color);background-color:var(--button-background);border-width:1px;border-color:var(--button-border-color);border-style:solid;border-radius:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;user-select:none}.ptx-content-footer .button:hover:not(.disabled){color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.ptx-content-footer .button:focus-visible{outline:2px solid var(--button-text-color);outline-offset:-2px}.ptx-content-footer .button.disabled{opacity:.4;cursor:not-allowed}.ptx-content-footer .button.hidden{display:none}.ptx-content-footer .button.open{color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.ptx-content-footer .button .icon{margin:0 -7px}.ptx-masthead{position:relative;background:var(--banner-background);width:100%;display:flex;justify-content:center}.ptx-masthead .ptx-banner{border-top:1px solid transparent;overflow:hidden;padding:10px;border-bottom:none;display:flex;width:100%;align-items:center;max-width:840px}.ptx-masthead a{color:var(--doc-title-color, #2a5ea4)}.ptx-masthead a:active{color:var(--link-active-text-color)}.ptx-masthead .title-container{font-family:var(--font-headings);font-size:2em;padding-left:9.68px;overflow:hidden;flex:1}.ptx-masthead .title-container .heading{font-weight:700;font-size:100%;line-height:1.25em}.ptx-masthead .title-container .title:has(+.subtitle):after{content:":"}.ptx-masthead .title-container .subtitle{font-weight:400}.ptx-masthead .logo-link{height:5em;display:flex}.ptx-masthead .logo-link img{max-height:100%}.ptx-masthead .logo-link img[src$=".svg"]{height:100%}.ptx-masthead .byline{color:var(--byline-color);font-weight:400;margin:0;font-size:62.5%;min-height:inherit}@media screen and (max-width: 800px){.ptx-masthead{border-bottom:1px solid var(--page-border-color)}.ptx-masthead .ptx-banner{padding:10px 28px;display:flex;justify-content:center}.ptx-masthead .logo-link:before{font-size:1rem;margin-top:0}.ptx-masthead .title-container{width:fit-content;flex:unset}.ptx-masthead .title-container .heading{line-height:1em}.ptx-masthead .title-container .heading .subtitle{display:block;font-size:80%;line-height:1em}.ptx-masthead .byline{font-size:50%}}@media screen and (width <= 480px){.ptx-masthead .title-container{padding:0;text-align:center;font-size:1em}.ptx-masthead .logo-link,.ptx-masthead .byline{display:none}}.ptx-navbar{position:sticky;top:0;height:36px;width:100%;background:var(--navbar-background);border:0;border-top:1px solid var(--page-border-color);border-bottom:1px solid var(--page-border-color);margin:0;z-index:500;overflow:visible;display:flex}.ptx-navbar .ptx-navbar-contents{position:relative;display:flex;flex:1;justify-content:center;align-items:center;max-width:840px;margin:0 auto}.ptx-navbar .button{font:inherit;display:flex;justify-content:center;align-items:center;padding:0 10px;gap:10px;min-height:34px;color:var(--button-text-color);background-color:var(--button-background);border-width:1px;border-color:var(--button-border-color);border-style:solid;border-radius:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;user-select:none}.ptx-navbar .button:hover:not(.disabled){color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.ptx-navbar .button:focus-visible{outline:2px solid var(--button-text-color);outline-offset:-2px}.ptx-navbar .button.disabled{opacity:.4;cursor:not-allowed}.ptx-navbar .button.hidden{display:none}.ptx-navbar .button.open{color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.ptx-navbar .button{height:100%;border-width:0}.ptx-navbar .toc-toggle{width:240px;gap:.4em;margin-left:0}.ptx-navbar :is(.treebuttons,.nav-runestone-controls,.nav-other-controls){display:flex}.ptx-navbar .treebuttons{flex:1 1 210px;justify-content:end}.ptx-navbar .nav-runestone-controls{flex:1 1 70px;justify-content:end}.ptx-navbar .pretext .navbar .dropdown{height:34px}.ptx-navbar .embed-popup{padding:10px;background-color:var(--navbar-background);position:absolute;margin-top:36px;border:1px solid var(--page-border-color);border-radius:3px;box-shadow:0 0 5px var(--primary-color-gray-80)}.ptx-navbar .embed-popup .embed-code-container{width:"100%";padding:5px}.ptx-navbar .embed-popup .embed-code-container .embed-code-textbox{width:100%;padding:10px;height:5em}.ptx-navbar .treebuttons>*{display:flex;align-items:center;justify-content:center;min-width:75px}.ptx-navbar .treebuttons .icon{margin:0 -7px}.ptx-navbar :is(.index-button) .icon{display:none}.ptx-navbar :is(.runestone-profile,.activecode-toggle,.searchbutton,.calculator-toggle,.light-dark-button,.embed-button) .name{display:none}.ptx-navbar .index-button{min-width:70px}.runestone-profile{position:relative}.runestone-profile .dropdown-content{display:none;position:absolute;background-color:var(--dropdown-background);min-width:160px;z-index:100;border:1px solid var(--dropdown-border-color);right:0;top:35px;text-align:start;padding:0}.runestone-profile .dropdown-content a{display:block;text-decoration:none;color:var(--dropdown-text-color);padding:2px 8px}.runestone-profile .dropdown-content a:is(:hover,:focus-visible){background-color:var(--dropdown-hover-background);color:var(--dropdown-hover-text-color)}.runestone-profile .dropdown-content hr{color:var(--dropdown-border-color);margin:4px 0}.runestone-profile:is(:hover,:focus-visible,:focus-within){overflow:visible}.runestone-profile:is(:hover,:focus-visible,:focus-within) .dropdown-content{display:block}@media screen and (max-width: 800px){.ptx-navbar .button{border-left-width:1px;border-right-width:1px;border-color:var(--page-border-color)}.ptx-navbar>*:not(:first-child){margin-left:-1px}.ptx-navbar{position:fixed;inset:auto 0 0;z-index:1100;background:var(--button-border-color);max-width:100vw}.ptx-navbar .ptx-navbar-contents{max-width:100vw}.ptx-navbar .nav-runestone-controls{flex:0}.ptx-navbar .toc-toggle{flex:2 1 100px}.ptx-navbar .treebuttons{flex:3 1 150px}.ptx-navbar .treebuttons>*{flex:1 1;min-width:35px}.ptx-navbar .index-button{display:none}.ptx-navbar .embed-popup{margin-top:unset;bottom:36px}.ptx-navbar .dropdown-content{top:unset;bottom:36px}.ptx-navbar :is(.toc-toggle,.previous-button,.up-button,.next-button,.calculator-toggle,.index-button,.embed-button) .name{display:none}}.ptx-sidebar{align-self:flex-start}.ptx-sidebar.visible{display:block}.ptx-sidebar.hidden{display:none;height:0}.ptx-toc{--codenumber-pad-left: .3rem;--codenumber-pad-right: .5rem;--toc-indent-first: calc(1rem + var(--codenumber-pad-left) + var(--codenumber-pad-right));--toc-indent-second: calc(1.7rem + var(--codenumber-pad-left) + var(--codenumber-pad-right));--toc-indent-third: calc(2.2rem + var(--codenumber-pad-left) + var(--codenumber-pad-right));background:var(--toc-background);margin:0;font-size:.9rem}.ptx-toc:is(.depth1,.parts.depth2){--codenumber-pad-right: .5rem}.ptx-toc .toc-item-list{margin:0;padding:0;list-style:none;background:var(--tocitem-background)}.ptx-toc .toc-item-list .active{list-style:none}.ptx-toc .toc-item{background-color:var(--tocitem-background);color:var(--toc-text-color);border-color:var(--toc-border-color)}.ptx-toc .toc-item a{color:inherit}.ptx-toc .toc-item.active:not(:has(.toc-item.active)){color:var(--tocitem-active-text-color)!important;background-color:var(--tocitem-active-background)!important;border-color:var(--tocitem-active-border-color)!important}.ptx-toc .toc-item>.toc-title-box>a:is(:hover,:focus){color:var(--tocitem-highlight-text-color);background-color:var(--tocitem-highlight-background);border-color:var(--tocitem-highlight-border-color)}.ptx-toc .toc-title-box{display:flex}.ptx-toc .toc-title-box>.internal{position:relative;display:flex;flex-grow:1;padding:.2em;font-weight:500}.ptx-toc .toc-item-list .toc-item-list .toc-title-box>.internal{font-weight:400}.ptx-toc .codenumber{min-width:var(--toc-indent-first);padding-left:var(--codenumber-pad-left);padding-right:var(--codenumber-pad-right);display:inline-block;text-align:left;flex-grow:0}.ptx-toc .toc-item{color:var(--toclevel1-text-color);background-color:var(--toclevel1-background)}.ptx-toc .toc-item .toc-item{color:var(--toclevel2-text-color);background-color:var(--toclevel2-background)}.ptx-toc .toc-item .toc-item .toc-item{color:var(--toclevel3-text-color);background-color:var(--toclevel3-background)}.book .ptx-toc .toc-chapter .toc-item-list .codenumber,.article .ptx-toc .toc-section .toc-item-list .codenumber,.ptx-toc .toc-backmatter .toc-item-list .codenumber{font-size:80%;padding-top:.16em;min-width:var(--toc-indent-second)}.book .ptx-toc .toc-chapter .toc-item-list .toc-item-list .codenumber,.article .ptx-toc .toc-section .toc-item-list .toc-item-list .codenumber,.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .codenumber{min-width:var(--toc-indent-third);visibility:hidden}.ptx-toc .toc-item-list .toc-item-list .toc-item-list a:is(:hover,:focus)>.codenumber{visibility:visible}.ptx-toc .toc-item .toc-title-box .title{margin-left:var(--toc-indent-first)}.book .ptx-toc .toc-chapter .toc-item-list .title,.article .ptx-toc .toc-section .toc-item-list .title,.ptx-toc .toc-backmatter .toc-item-list .title{margin-left:var(--toc-indent-second)}.book .ptx-toc .toc-chapter .toc-item-list .toc-item-list .title,.article .ptx-toc .toc-section .toc-item-list .toc-item-list .title,.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .title{margin-left:var(--toc-indent-third)}.ptx-toc .toc-item>.toc-title-box .codenumber+.title{margin-left:0!important}.ptx-toc .toc-chapter .toc-item-list .title,.ptx-toc .toc-section .toc-item-list .title,.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .title{font-size:90%}.ptx-toc .toc-chapter .toc-item-list .toc-item-list .title,.ptx-toc .toc-section .toc-item-list .toc-item-list .title,.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .toc-item-list .title{font-style:italic}.ptx-toc.depth0 ul.structural,.ptx-toc.depth1 ul.structural ul.structural,.ptx-toc.depth2 ul.structural ul.structural ul.structural,.ptx-toc.depth3 ul.structural ul.structural ul.structural ul.structural,.ptx-toc.depth4 ul.structural ul.structural ul.structural ul.structural ul.structural{display:none}.ptx-toc.depth1 ul.structural .toc-item.contains-active{background-color:var(--tocitem-active-backgrounde);color:var(--tocitem-active-text-color)}.ptx-toc.depth2 ul.structural ul.structural .toc-item.contains-active{background-color:var(--tocitem-active-background);color:var(--tocitem-active-text-color)}.ptx-toc.focused ul.structural:not(.contains-active)>.toc-item{display:none}.ptx-toc.focused ul.structural:not(.contains-active)>.toc-item.visible{display:block}.ptx-toc.focused ul.structural .toc-item.active>ul.structural>.toc-item{display:block}.ptx-toc.focused ul.structural .toc-item.active>ul.structural>.toc-item.hidden{display:none}.ptx-toc.focused .toc-expander{border:0;padding:2px 5px;background:inherit;color:inherit;display:flex;align-items:center}.ptx-toc.focused .toc-expander .icon{font-size:1.25em;line-height:18px;font-variation-settings:"wght" 200}.ptx-toc.focused .toc-expander:is(:hover){background-color:var(--tocitem-highlight-background);color:var(--tocitem-highlight-text-color)}.ptx-toc.focused .toc-expander:is(:hover) .icon{fill:var(--tocitem-highlight-text-color)}.ptx-toc.focused .toc-item>.toc-title-box>.toc-expander>.icon:before{content:"add"}.ptx-toc.focused .toc-item.expanded>.toc-title-box>.toc-expander>.icon:before{content:"remove"}.ptx-sidebar{flex:0 0 240px;position:sticky;top:36px;overflow-y:hidden}.ptx-toc{position:sticky;top:36px;overflow-y:auto;overflow-x:hidden;height:calc(100vh - 36px);margin-top:-1px}.ptx-toc>.toc-item-list:first-child>.toc-item:last-child{border-bottom:3px solid var(--toc-border-color)}@media screen and (max-width: 944px){.ptx-sidebar{display:none;position:sticky;top:36px;background:var(--content-background);min-height:30vh;border-right:2px solid var(--toc-border-color);border-bottom:2px solid var(--toc-border-color);width:240px}}@media screen and (max-width: 800px){.ptx-sidebar{position:fixed;z-index:1000;top:unset;height:auto;max-height:80vh;max-width:80vw;bottom:36px;border-right:2px solid var(--toc-border-color);border-top:2px solid var(--toc-border-color)}.ptx-toc{border-top:2px solid var(--toc-border-color);border-bottom:0;max-height:80vh}}.ptx-toc{scrollbar-color:var(--content-background) var(--content-background)}.ptx-toc:hover{scrollbar-color:var(--page-border-color) var(--content-background)}.ptx-page-footer{background:var(--footer-background);padding-top:0;border-top:2px solid var(--page-border-color);border-bottom:2px solid var(--page-border-color);display:flex;flex-direction:row;justify-content:center;width:100%;gap:90px;position:relative}.ptx-page-footer>a{margin:1em 0;color:var(--body-text-color)}.ptx-page-footer>a>.logo:first-child{height:3em;width:unset;margin:0}.ptx-page-footer .feedback-link{font:inherit;display:flex;justify-content:center;align-items:center;padding:0 10px;gap:10px;min-height:34px;color:var(--button-text-color);background-color:var(--button-background);border-width:1px;border-color:var(--button-border-color);border-style:solid;border-radius:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;user-select:none}.ptx-page-footer .feedback-link:hover:not(.disabled){color:var(--button-hover-text-color);background-color:var(--button-hover-background)}.ptx-page-footer .feedback-link:focus-visible{outline:2px solid var(--button-text-color);outline-offset:-2px}.ptx-page-footer .feedback-link.disabled{opacity:.4;cursor:not-allowed}.ptx-page-footer .feedback-link.hidden{display:none}.ptx-page-footer .feedback-link.open{color:var(--button-hover-text-color);background-color:var(--button-hover-background)}@media screen and (max-width: 800px){.ptx-page-footer{gap:20px;justify-content:center;margin-bottom:34px}.ptx-page-footer>a>.logo:first-child{height:2em}}@container ptx-main (width > 640px){.ptx-runestone-container:has(.ac_section,.codelens,.parsons_section,.hparsons_section,.datafile){--max-width: min((100cqw - 2 * 20px), 10000px) ;min-width:100%;clear:right;width:var(--max-width);max-width:var(--max-width);margin-left:calc(-.5*(100cqw - 640px))}}.ptx-runestone-container .ptx-runestone-container:has(.ac_section,.codelens,.parsons_section,.hparsons_section,.datafile){width:100%;min-width:100%;margin-left:auto}@container ptx-main (width > 640px){:is(.timedAssessment,.theorem-like,.definition-like,.example-like,.exercise-like,.project-like,.remark-like,.openproblem-like,.openproblems-like,.computation-like,.knowl__content):has(.ac_section,.codelens,.parsons_section,.hparsons_section,.datafile){--max-width: min((100cqw - 2 * 20px), 10000px) ;min-width:100%;clear:right;width:var(--max-width);max-width:var(--max-width);margin-left:calc(-.5*(100cqw - 640px))}}:is(.timedAssessment,.theorem-like,.definition-like,.example-like,.exercise-like,.project-like,.remark-like,.openproblem-like,.openproblems-like,.computation-like,.knowl__content):has(.ac_section,.codelens,.parsons_section,.hparsons_section,.datafile) :is(.timedAssessment,.theorem-like,.definition-like,.example-like,.exercise-like,.project-like,.remark-like,.openproblem-like,.openproblems-like,.computation-like,.knowl__content):has(.ac_section,.codelens,.parsons_section,.hparsons_section,.datafile){width:100%;margin-left:auto}:is(.timedAssessment,.theorem-like,.definition-like,.example-like,.exercise-like,.project-like,.remark-like,.openproblem-like,.openproblems-like,.computation-like,.knowl__content) .ptx-runestone-container:has(.ac_section,.codelens,.parsons_section,.hparsons_section,.datafile){width:100%;margin-left:0}.runestone.ac_section>div>div>*:not(.ac_code_div):not(.ac_output):not(.codelens):not(.ac_actions){max-width:600px;margin-left:auto;margin-right:auto}.runestone .exercise-statement,.hparsons_section .hp_question,.hparsons_section .hp_feedback{max-width:600px;margin-left:auto;margin-right:auto}.runestone.parsons_section>.parsons{width:100%;padding-right:0}.runestone.parsons_section>.parsons .sortable-code-container{display:flex;flex-flow:wrap;justify-content:center;gap:15px;margin:10px auto}.runestone.parsons_section>.parsons .sortable-code{margin:0}.runestone.parsons_section>.parsons .runestone_caption_text{max-width:unset}.runestone.parsons_section>.parsons>div>*:not(.sortable-code-container){max-width:600px;margin-left:auto;margin-right:auto}@media (width < 850px){.ptx-runestone-container:has(.ac_section,.codelens,.parsons_section,.hparsons_section,.datafile){width:100cqw;margin-left:calc(-.5*(100cqw - 100%))}:is(.timedAssessment,.theorem-like,.definition-like,.example-like,.exercise-like,.project-like,.remark-like,.openproblem-like,.openproblems-like,.computation-like,.knowl__content):has(.ac_section,.codelens,.parsons_section,.hparsons_section,.datafile){width:100cqw;margin-left:calc(-.5*(100cqw - 100%))}:is(.timedAssessment,.theorem-like,.definition-like,.example-like,.exercise-like,.project-like,.remark-like,.openproblem-like,.openproblems-like,.computation-like,.knowl__content) .ptx-runestone-container:has(.ac_section,.codelens,.parsons_section,.hparsons_section,.datafile){width:100%;margin-left:0}}.ptx-main{margin-right:320px}.ptx-sidebar.hidden+.ptx-main{margin-left:320px}.ptx-main{box-shadow:5px 10px 40px -10px var(--primary-color-gray-80)}@media (prefers-color-scheme: dark){.ptx-main{box-shadow:5px 10px 40px -10px #000}}.ptx-sidebar{margin-right:80px}.ptx-navbar{border:none}.ptx-navbar .toc-toggle{transform:translate(-320px);position:absolute;left:0;justify-content:left}.ptx-toc{border:none;position:sticky;top:36px}.toc-item.visible{font-size:.95em;padding-left:8px}.ptx-page{margin-top:36px;margin-bottom:36px}@media screen and (width <= 1480px){.ptx-page{margin-left:0;max-width:100%}.ptx-main{margin-right:calc(100% - 1160px);max-width:840px}.ptx-sidebar.hidden+.ptx-main{margin-right:auto;margin-left:auto}.ptx-navbar .ptx-navbar-contents{margin-left:320px}}@media screen and (width <= 1240px){.ptx-main{box-shadow:unset;margin-right:auto}.ptx-main .ptx-content{padding-left:20px;padding-right:20px;max-width:640px}.ptx-sidebar{margin-right:0}.ptx-navbar .ptx-navbar-contents{margin-left:240px}.ptx-navbar .toc-toggle{transform:translate(-240px);justify-content:center}.ptx-page{margin-top:unset;margin-bottom:unset}.ptx-toc{padding-top:36px}}@media screen and (width <= 880px){.ptx-sidebar{display:none}}@media screen and (max-width: 800px){.ptx-navbar .ptx-navbar-contents{margin-left:0}.ptx-navbar .toc-toggle{transform:none;position:relative;justify-content:center}.ptx-content-footer{padding-left:20px;padding-right:20px}}.toc-item:is(:hover,:focus){color:var(--tocitem-highlight-text-color);background-color:var(--tocitem-highlight-background);border-color:var(--tocitem-highlight-border-color)}.ptx-toc.focused .toc-item>.toc-title-box>.toc-expander>.icon{font-size:30px}.ptx-toc.focused .toc-item>.toc-title-box>.toc-expander>.icon:before{content:"chevron_left"}.ptx-toc.focused .toc-item.expanded>.toc-title-box>.toc-expander>.icon{transform:rotate(-90deg)}.ptx-toc.focused .toc-item.expanded>.toc-title-box>.toc-expander>.icon:before{content:"chevron_left"}.hide-type .codenumber:not(:empty):after{content:". "}.ptx-masthead,.button.disabled{display:none}.aside-like>.knowl__link{color:var(--aside-like-link-color);border-bottom-color:var(--aside-like-link-color)}.aside-like>.knowl__content{margin-left:30px;margin-right:30px;border:2px solid var(--aside-like-border-color);background-color:var(--aside-like-body-background)}@media screen and (min-width: 1450px){details.aside-like{position:relative;margin-left:-365px;width:200px;right:-365px;float:right;clear:right}.multicolumn details.aside-like{position:relative;margin-left:inherit;width:auto;right:0;float:none;clear:none}details.aside-like>.knowl__content{margin-left:0;margin-right:0;background-color:var(--aside-like-body-background);z-index:100}}.cols2>.exercise-like{min-width:calc(50% - 2em);width:min-content;margin-right:2em}.cols3>.exercise-like{min-width:calc(33.3333333333% - 2em);width:min-content;margin-right:2em}.cols4>.exercise-like{min-width:calc(25% - 2em);width:min-content;margin-right:2em}.cols5>.exercise-like{min-width:calc(20% - 2em);width:min-content;margin-right:2em}.cols6>.exercise-like{min-width:calc(16.6666666667% - 2em);width:min-content;margin-right:2em}.exercise-like>.heading{font-size:inherit}.exercisegroup .exercise-like{margin-top:1em}.exercisegroup>.heading{font-size:1.1em;line-height:1.05em;margin-top:.75em;display:inline}.exercisegroup>.heading+.introduction{display:inline}.exercisegroup>.heading+.introduction>.para:first-child{display:inline}.exercisegroup .exercisegroup-exercises{margin-top:1em;padding-left:40px}.exercisegroup .conclusion{margin-left:40px}.exercisegroup .conclusion .heading{font-size:inherit}.exercise-like>.exercise-like.task{margin-left:20px}.exercise-wrapper form button:hover{cursor:pointer;background-color:#e0e0ff;border:1px solid #000}.exercise-wrapper form button:active{background-color:#f0f0f0}.exercise-wrapper form button+button{margin-left:.8em}.exercise-wrapper,.exercise-wrapper form,.exercise-wrapper form>div:first-child{display:inline-block;vertical-align:top;width:100%}.knowl .exercise-wrapper,.knowl .exercise-wrapper form,.knowl .exercise-wrapper form>div:first-child{width:100%}.exercise-wrapper>.para:first-child,.exercisegroup .exercise-wrapper>.para:first-child{margin-top:0;display:inline}.heading+.exercise-wrapper{display:inline-block;max-width:95%;width:100%}.cols2 .heading+.exercise-wrapper{width:auto}section.solutions>.heading+.heading{margin-top:.5em}section.solutions>h3.heading,section.solutions section>h3.heading{font-size:1.6em}section.solutions>h4.heading,section.solutions section>h4.heading{font-size:1.45em}section.solutions>h5.heading,section.solutions section>h5.heading{font-size:1.35em}section.solutions>h6.heading,section.solutions section>h6.heading{font-size:1.25em}.sbsgroup>*:not(:first-child){margin-top:1.5em}.sbsrow{display:grid;grid-template-rows:auto auto}.sbspanel{grid-row:1}.sbspanel>.table>figcaption{text-align:center}.sbspanel .tabular{overflow-x:auto;margin-left:auto;margin-right:auto}.sbspanel--top{align-self:start}.sbspanel--middle{align-self:center}.sbspanel--bottom{align-self:end}.sbspanel:has(.figure-like,.table-like),.sbspanel>:is(.figure-like,.table-like){display:contents}.sbspanel>:is(.figure-like,.table-like)>*:first-child{grid-row:1;align-items:start;align-self:start}.sbspanel--top>:is(.figure-like,.table-like)>*:first-child{align-items:start;align-self:start}.sbspanel--middle>:is(.figure-like,.table-like)>*:first-child{align-items:center;align-self:center}.sbspanel--bottom>:is(.figure-like,.table-like)>*:first-child{align-items:end;align-self:end}.sbspanel>:is(.figure-like,.table-like)>*:nth-child(2){margin-top:.5em;grid-row:2;width:100%}.sbspanel:nth-of-type(2) *{grid-column:2}.sbspanel:nth-of-type(3) *{grid-column:3}.sbspanel:nth-of-type(4) *{grid-column:4}.sbspanel:nth-of-type(5) *{grid-column:5}.sbspanel:nth-of-type(6) *{grid-column:6}.sbspanel:nth-of-type(7) *{grid-column:7}.sbspanel:nth-of-type(8) *{grid-column:8}.sbspanel:nth-of-type(9) *{grid-column:9}.sbspanel:nth-of-type(10) *{grid-column:10}.discussion-like>.heading:first-child{display:inline;line-height:initial;border-bottom:0}.discussion-like>.heading:first-child:after{content:"\2009"}.discussion-like>.heading:first-child+:is(.para,.para.logical,.introduction){display:inline}.discussion-like>.heading:first-child+:is(.para,.para.logical,.introduction)>.para:first-child{display:inline}.discussion-like>.heading:first-child+:is(.para,.para.logical,.introduction)>.para.logical:first-child>.para:first-child{display:inline}.discussion-like>.heading :after{content:"\2009"}.discussion-like>.heading+.para{display:inline}.discussion-like>.heading .space,.discussion-like>.heading .codenumber,.discussion-like>.heading .period{display:none}.discussion-like>.heading .type:after{content:". "}.source-view__link,.knowl__link{cursor:pointer;margin-left:.1em;margin-right:.1em;color:var(--knowl-link-color);border-bottom:1px dotted var(--knowl-link-color)}.source-view{margin:.5em 0}summary.source-view__link,summary.knowl__link{display:list-item inline}.source-view__link>*,.knowl__link>*{display:inline}.source-view__link:is(:hover,:focus,[open]),.knowl__link:is(:hover,:focus,[open]){background-color:var(--knowl-background);border-bottom-color:transparent}.source-view__content{margin:.2em 0}.knowl__content{margin:.75em 0;border:3px solid var(--knowl-border-color);border-radius:8px;padding:12px;background-color:var(--knowl-background)}.knowl__content .incontext{display:block;font-size:85%;text-align:right}.knowl__content .knowl__content{background-color:var(--knowl-nested-1-background)}.knowl__content .knowl__content .knowl__content{background-color:var(--knowl-nested-2-background)}.knowl__content .knowl__content .knowl__content .knowl__content{background-color:var(--knowl-nested-3-background)}.knowl__content .knowl__content .knowl__content .knowl__content .knowl__content{background-color:var(--knowl-nested-4-background)}.knowl__content>figure{margin-left:0;margin-right:0}.assemblage-like:not(.knowl__content,.born-hidden-knowl),.goal-like:not(.knowl__content,.born-hidden-knowl){padding:10px 10px 10px 15px;border-left:4px solid var(--block-border-color);background-color:var(--goal-like-body-background)}.assemblage-like:not(.knowl__content,.born-hidden-knowl)>.heading:first-child,.goal-like:not(.knowl__content,.born-hidden-knowl)>.heading:first-child{margin-top:0}.theorem-like .heading,.definition-like .heading{display:block;font-size:1.1em}.theorem-like .para,.definition-like .para{font-style:italic}.example-like>.heading,.project-like>.heading,.remark-like>.heading,.openproblem-like>.heading,.computation-like>.heading,.commentary>.heading{display:block;font-size:1.1em}.proof{padding-bottom:1.5em;padding-left:1em;padding-right:1em}.proof:after{content:"\25a1";position:absolute;right:0;bottom:1.5em}.proof .heading{font-size:unset;font-weight:700;font-style:italic}.solution-like .heading{display:inline;font-style:italic;font-size:unset}.tasks .knowl__content{border:none}.tasks .knowl__content .theorem-like,.tasks .knowl__content .definition-like,.tasks .knowl__content .example-like,.tasks .knowl__content .project-like,.tasks .knowl__content .remark-like,.tasks .knowl__content .openproblem-like,.tasks .knowl__content .computation-like,.tasks .knowl__content .commentary{padding-left:0;margin-left:0;border-left:none}.tasks .knowl__content .theorem-like:after,.tasks .knowl__content .definition-like:after,.tasks .knowl__content .example-like:after,.tasks .knowl__content .project-like:after,.tasks .knowl__content .remark-like:after,.tasks .knowl__content .openproblem-like:after,.tasks .knowl__content .computation-like:after,.tasks .knowl__content .commentary:after{border-bottom:none;display:none}section.solutions:not(:is(:first-child)):not(.knowl__content,.born-hidden-knowl){padding:10px 10px 10px 15px;border-left:2px solid var(--solution-border-color);background-color:var(--content-background)}section.solutions:not(:is(:first-child)):not(.knowl__content,.born-hidden-knowl)>.heading:first-child{margin-top:0}.paragraphs>.heading:first-child,article>.heading:first-child{display:inline;line-height:initial;border-bottom:0}.paragraphs>.heading:first-child:after,article>.heading:first-child:after{content:"\2009"}.paragraphs>.heading:first-child+:is(.para,.para.logical,.introduction),article>.heading:first-child+:is(.para,.para.logical,.introduction){display:inline}.paragraphs>.heading:first-child+:is(.para,.para.logical,.introduction)>.para:first-child,article>.heading:first-child+:is(.para,.para.logical,.introduction)>.para:first-child{display:inline}.paragraphs>.heading:first-child+:is(.para,.para.logical,.introduction)>.para.logical:first-child>.para:first-child,article>.heading:first-child+:is(.para,.para.logical,.introduction)>.para.logical:first-child>.para:first-child{display:inline}:root{--font-body: Open Sans, Helvetica Neue, Helvetica, Arial, sans-serif}:root{--font-headings: PT Serif, Times New Roman, Times, serif}:root{--font-monospace: Inconsolata, Consolas, Monaco, monospace}:root{--font-print: PT Serif, Times New Roman, Times, serif}:root{color-scheme:light}:root:not(.dark-mode){--page-color: white;--content-background: white;--page-border-color: #ccc;--doc-title-color: var(--primary-color);--byline-color: #333;--banner-background: #f8f8f8;--navbar-background: var(--primary-color);--footer-background: var(--banner-background);--toc-border-color: #666;--toc-background: var(--content-background);--tocitem-background: var(--toc-background);--toc-text-color: var(--primary-color-black-30);--tocitem-highlight-background: #3a3a3a;--tocitem-highlight-text-color: #fff;--tocitem-highlight-border-color: #3a3a3a;--tocitem-active-background: var(--primary-color-white-15);--tocitem-active-text-color: white;--tocitem-active-border-color: var(--toc-border-color);--toclevel1-background: var(--content-background);--toclevel1-text-color: var(--toc-text-color);--toclevel2-background: var(--content-background);--toclevel2-text-color: var(--toc-text-color);--toclevel3-background: var(--content-background);--toclevel3-text-color: var(--toc-text-color);--body-text-color: #000;--body-title-color: var(--primary-color-black-20);--ptx-image-bg: transparent;--activated-content-bg: rgba(241, 185, 255, .3);--summary-link-background: var(--button-background);--summary-link-text-color: var(--button-text-color);--summary-link-hover-background: var(--button-hover-background);--summary-link-hover-text-color: var(--button-hover-text-color);--link-text-color: var(--primary-color);--link-background: transparent;--link-active-text-color: var(--primary-color);--link-active-background: var(--primary-color-white-96);--link-alt-text-color: var(--link-text-color);--link-alt-background: transparent;--link-alt-active-text-color: var(--link-alt-text-color);--link-alt-active-background: var(--primary-color-white-96);--knowl-link-color: var(--link-text-color);--knowl-background: #f8f8f8;--knowl-border-color: var(--primary-color-gray-80);--knowl-nested-1-background: #f5f5ff;--knowl-nested-2-background: #fffff5;--knowl-nested-3-background: #f5ffff;--knowl-nested-4-background: #fff5f5;--block-body-background: var(--content-background);--block-border-color: var(--knowl-border-color);--block-head-color: var(--body-text-color);--aside-like-link-color: var(--link-text-color);--button-background: var(--primary-color);--button-text-color: var(--primary-color-white-90);--button-border-color: #3a3a3a;--button-hover-background: #3a3a3a;--button-hover-text-color: var(--button-text-color);--dropdown-background: var(--content-background);--dropdown-border-color: var(--toc-border-color);--dropdown-text-color: var(--toc-text-color);--dropdown-hover-background: var(--tocitem-active-background);--dropdown-hover-text-color: var(--tocitem-active-text-color);--code-background: #fdfdfd;--code-inline-background: #ededed;--assemblage-like-body-background: var(--block-body-background);--assemblage-like-border-color: var(--block-border-color);--definition-like-body-background: var(--block-body-background);--definition-like-border-color: var(--block-border-color);--theorem-like-body-background: var(--block-body-background);--theorem-like-border-color: var(--block-border-color);--axiom-like-body-background: var(--block-body-background);--axiom-like-border-color: var(--block-border-color);--remark-like-body-background: var(--block-body-background);--remark-like-border-color: var(--block-border-color);--computation-like-body-background: var(--block-body-background);--computation-like-border-color: var(--block-border-color);--openproblem-like-body-background: var(--block-body-background);--openproblem-like-border-color: var(--block-border-color);--aside-like-body-background: var(--block-body-background);--aside-like-border-color: var(--block-border-color);--proof-like-body-background: var(--block-body-background);--proof-like-border-color: var(--block-border-color);--example-like-body-background: var(--block-body-background);--example-like-border-color: var(--block-border-color);--project-like-body-background: var(--block-body-background);--project-like-border-color: var(--block-border-color);--goal-like-body-background: var(--block-body-background);--goal-like-border-color: var(--block-border-color);--solution-like-body-background: var(--block-body-background);--solution-like-border-color: var(--block-border-color);--primary-color-white-1: color-mix(in oklab, var(--primary-color), white 1%);--primary-color-white-2: color-mix(in oklab, var(--primary-color), white 2%);--primary-color-white-3: color-mix(in oklab, var(--primary-color), white 3%);--primary-color-white-4: color-mix(in oklab, var(--primary-color), white 4%);--primary-color-white-5: color-mix(in oklab, var(--primary-color), white 5%);--primary-color-white-10: color-mix(in oklab, var(--primary-color), white 10%);--primary-color-white-15: color-mix(in oklab, var(--primary-color), white 15%);--primary-color-white-20: color-mix(in oklab, var(--primary-color), white 20%);--primary-color-white-25: color-mix(in oklab, var(--primary-color), white 25%);--primary-color-white-30: color-mix(in oklab, var(--primary-color), white 30%);--primary-color-white-35: color-mix(in oklab, var(--primary-color), white 35%);--primary-color-white-40: color-mix(in oklab, var(--primary-color), white 40%);--primary-color-white-50: color-mix(in oklab, var(--primary-color), white 50%);--primary-color-white-60: color-mix(in oklab, var(--primary-color), white 60%);--primary-color-white-65: color-mix(in oklab, var(--primary-color), white 65%);--primary-color-white-70: color-mix(in oklab, var(--primary-color), white 70%);--primary-color-white-75: color-mix(in oklab, var(--primary-color), white 75%);--primary-color-white-80: color-mix(in oklab, var(--primary-color), white 80%);--primary-color-white-85: color-mix(in oklab, var(--primary-color), white 85%);--primary-color-white-90: color-mix(in oklab, var(--primary-color), white 90%);--primary-color-white-95: color-mix(in oklab, var(--primary-color), white 95%);--primary-color-white-96: color-mix(in oklab, var(--primary-color), white 96%);--primary-color-white-97: color-mix(in oklab, var(--primary-color), white 97%);--primary-color-white-98: color-mix(in oklab, var(--primary-color), white 98%);--primary-color-white-99: color-mix(in oklab, var(--primary-color), white 99%);--primary-color-black-1: color-mix(in oklab, var(--primary-color), black 1%);--primary-color-black-2: color-mix(in oklab, var(--primary-color), black 2%);--primary-color-black-3: color-mix(in oklab, var(--primary-color), black 3%);--primary-color-black-4: color-mix(in oklab, var(--primary-color), black 4%);--primary-color-black-5: color-mix(in oklab, var(--primary-color), black 5%);--primary-color-black-10: color-mix(in oklab, var(--primary-color), black 10%);--primary-color-black-15: color-mix(in oklab, var(--primary-color), black 15%);--primary-color-black-20: color-mix(in oklab, var(--primary-color), black 20%);--primary-color-black-25: color-mix(in oklab, var(--primary-color), black 25%);--primary-color-black-30: color-mix(in oklab, var(--primary-color), black 30%);--primary-color-black-35: color-mix(in oklab, var(--primary-color), black 35%);--primary-color-black-40: color-mix(in oklab, var(--primary-color), black 40%);--primary-color-black-50: color-mix(in oklab, var(--primary-color), black 50%);--primary-color-black-60: color-mix(in oklab, var(--primary-color), black 60%);--primary-color-black-65: color-mix(in oklab, var(--primary-color), black 65%);--primary-color-black-70: color-mix(in oklab, var(--primary-color), black 70%);--primary-color-black-75: color-mix(in oklab, var(--primary-color), black 75%);--primary-color-black-80: color-mix(in oklab, var(--primary-color), black 80%);--primary-color-black-85: color-mix(in oklab, var(--primary-color), black 85%);--primary-color-black-90: color-mix(in oklab, var(--primary-color), black 90%);--primary-color-black-95: color-mix(in oklab, var(--primary-color), black 95%);--primary-color-black-96: color-mix(in oklab, var(--primary-color), black 96%);--primary-color-black-97: color-mix(in oklab, var(--primary-color), black 97%);--primary-color-black-98: color-mix(in oklab, var(--primary-color), black 98%);--primary-color-black-99: color-mix(in oklab, var(--primary-color), black 99%);--primary-color-gray-1: color-mix(in oklab, var(--primary-color), gray 1%);--primary-color-gray-2: color-mix(in oklab, var(--primary-color), gray 2%);--primary-color-gray-3: color-mix(in oklab, var(--primary-color), gray 3%);--primary-color-gray-4: color-mix(in oklab, var(--primary-color), gray 4%);--primary-color-gray-5: color-mix(in oklab, var(--primary-color), gray 5%);--primary-color-gray-10: color-mix(in oklab, var(--primary-color), gray 10%);--primary-color-gray-15: color-mix(in oklab, var(--primary-color), gray 15%);--primary-color-gray-20: color-mix(in oklab, var(--primary-color), gray 20%);--primary-color-gray-25: color-mix(in oklab, var(--primary-color), gray 25%);--primary-color-gray-30: color-mix(in oklab, var(--primary-color), gray 30%);--primary-color-gray-35: color-mix(in oklab, var(--primary-color), gray 35%);--primary-color-gray-40: color-mix(in oklab, var(--primary-color), gray 40%);--primary-color-gray-50: color-mix(in oklab, var(--primary-color), gray 50%);--primary-color-gray-60: color-mix(in oklab, var(--primary-color), gray 60%);--primary-color-gray-65: color-mix(in oklab, var(--primary-color), gray 65%);--primary-color-gray-70: color-mix(in oklab, var(--primary-color), gray 70%);--primary-color-gray-75: color-mix(in oklab, var(--primary-color), gray 75%);--primary-color-gray-80: color-mix(in oklab, var(--primary-color), gray 80%);--primary-color-gray-85: color-mix(in oklab, var(--primary-color), gray 85%);--primary-color-gray-90: color-mix(in oklab, var(--primary-color), gray 90%);--primary-color-gray-95: color-mix(in oklab, var(--primary-color), gray 95%);--primary-color-gray-96: color-mix(in oklab, var(--primary-color), gray 96%);--primary-color-gray-97: color-mix(in oklab, var(--primary-color), gray 97%);--primary-color-gray-98: color-mix(in oklab, var(--primary-color), gray 98%);--primary-color-gray-99: color-mix(in oklab, var(--primary-color), gray 99%);--primary-color: #386F94;--toc-border: var(--primary-color-gray-10)}:root.dark-mode{color-scheme:dark;--page-color: var(--background-color);--content-background: var(--page-color);--page-border-color: var(--background-color-white-25);--doc-title-color: var(--primary-color);--byline-color: var(--background-color-white-50);--banner-background: hsl(270, 10%, 5%);--navbar-background: var(--background-color-gray-15);--footer-background: var(--background-color-black-10);--toc-border-color: #555;--toc-background: var(--content-background);--tocitem-background: var(--toc-background);--toc-text-color: var(--body-text-color);--tocitem-highlight-background: var(--primary-color-gray-5);--tocitem-highlight-text-color: var(--background-color-black-50);--tocitem-highlight-border-color: var(--toc-border-color);--tocitem-active-background: var(--primary-color-gray-5);--tocitem-active-text-color: var(--background-color-black-50);--tocitem-active-border-color: var(--toc-border-color);--toclevel1-background: var(--content-background);--toclevel1-text-color: var(--primary-color-white-40);--toclevel2-background: var(--content-background);--toclevel2-text-color: var(--toclevel1-text-color);--toclevel3-background: var(--content-background);--toclevel3-text-color: var(--toc-text-color);--body-text-color: #f2f2f2;--body-title-color: var(--primary-color-white-20);--ptx-image-bg: white;--activated-content-bg: rgba(255, 237, 185, .2);--summary-link-background: var(--button-background);--summary-link-text-color: var(--button-text-color);--summary-link-hover-background: var(--button-hover-background);--summary-link-hover-text-color: var(--button-hover-text-color);--link-text-color: var(--primary-color-white-10);--link-background: transparent;--link-active-text-color: var(--primary-color-white-40);--link-active-background: var(--background-color-gray-30);--link-alt-text-color: var(--link-text-color);--link-alt-background: transparent;--link-alt-active-text-color: var(--link-alt-text-color);--link-alt-active-background: var(--link-active-text-color);--knowl-link-color: var(--doc-title-color);--knowl-background: var(--background-color-black-10);--knowl-border-color: var(--background-color-white-20);--knowl-nested-1-background: var(--background-color-gray-10);--knowl-nested-2-background: var(--background-color-black-10);--knowl-nested-3-background: var(--background-color-gray-10);--knowl-nested-4-background: var(--background-color-black-10);--block-body-background: var(--content-background);--block-border-color: var(--knowl-border-color);--block-head-color: var(--body-text-color);--aside-like-link-color: var(--link-text-color);--button-background: var(--background-color-gray-15);--button-text-color: var(--body-text-color);--button-border-color: var(--background-color-white-25);--button-hover-background: var(--primary-color-black-50);--button-hover-text-color: var(--button-text-color);--dropdown-background: var(--content-background);--dropdown-border-color: var(--toc-border-color);--dropdown-text-color: var(--toc-text-color);--dropdown-hover-background: var(--tocitem-active-background);--dropdown-hover-text-color: var(--tocitem-active-text-color);--code-background: var(--background-color-gray-20);--code-inline-background: var(--background-color-gray-20);--assemblage-like-body-background: var(--block-body-background);--assemblage-like-border-color: var(--block-border-color);--definition-like-body-background: var(--block-body-background);--definition-like-border-color: var(--block-border-color);--theorem-like-body-background: var(--block-body-background);--theorem-like-border-color: var(--block-border-color);--axiom-like-body-background: var(--block-body-background);--axiom-like-border-color: var(--block-border-color);--remark-like-body-background: var(--block-body-background);--remark-like-border-color: var(--block-border-color);--computation-like-body-background: var(--block-body-background);--computation-like-border-color: var(--block-border-color);--openproblem-like-body-background: var(--block-body-background);--openproblem-like-border-color: var(--block-border-color);--aside-like-body-background: var(--block-body-background);--aside-like-border-color: var(--block-border-color);--proof-like-body-background: var(--block-body-background);--proof-like-border-color: var(--block-border-color);--example-like-body-background: var(--block-body-background);--example-like-border-color: var(--block-border-color);--project-like-body-background: var(--block-body-background);--project-like-border-color: var(--block-border-color);--goal-like-body-background: var(--block-body-background);--goal-like-border-color: var(--block-border-color);--solution-like-body-background: var(--block-body-background);--solution-like-border-color: var(--block-border-color);--primary-color: #5192BD;--background-color: hsl(270, 10%, 5%);--background-color-white-1: color-mix(in oklab, var(--background-color), white 1%);--background-color-white-2: color-mix(in oklab, var(--background-color), white 2%);--background-color-white-3: color-mix(in oklab, var(--background-color), white 3%);--background-color-white-4: color-mix(in oklab, var(--background-color), white 4%);--background-color-white-5: color-mix(in oklab, var(--background-color), white 5%);--background-color-white-10: color-mix(in oklab, var(--background-color), white 10%);--background-color-white-15: color-mix(in oklab, var(--background-color), white 15%);--background-color-white-20: color-mix(in oklab, var(--background-color), white 20%);--background-color-white-25: color-mix(in oklab, var(--background-color), white 25%);--background-color-white-30: color-mix(in oklab, var(--background-color), white 30%);--background-color-white-35: color-mix(in oklab, var(--background-color), white 35%);--background-color-white-40: color-mix(in oklab, var(--background-color), white 40%);--background-color-white-50: color-mix(in oklab, var(--background-color), white 50%);--background-color-white-60: color-mix(in oklab, var(--background-color), white 60%);--background-color-white-65: color-mix(in oklab, var(--background-color), white 65%);--background-color-white-70: color-mix(in oklab, var(--background-color), white 70%);--background-color-white-75: color-mix(in oklab, var(--background-color), white 75%);--background-color-white-80: color-mix(in oklab, var(--background-color), white 80%);--background-color-white-85: color-mix(in oklab, var(--background-color), white 85%);--background-color-white-90: color-mix(in oklab, var(--background-color), white 90%);--background-color-white-95: color-mix(in oklab, var(--background-color), white 95%);--background-color-white-96: color-mix(in oklab, var(--background-color), white 96%);--background-color-white-97: color-mix(in oklab, var(--background-color), white 97%);--background-color-white-98: color-mix(in oklab, var(--background-color), white 98%);--background-color-white-99: color-mix(in oklab, var(--background-color), white 99%);--background-color-black-1: color-mix(in oklab, var(--background-color), black 1%);--background-color-black-2: color-mix(in oklab, var(--background-color), black 2%);--background-color-black-3: color-mix(in oklab, var(--background-color), black 3%);--background-color-black-4: color-mix(in oklab, var(--background-color), black 4%);--background-color-black-5: color-mix(in oklab, var(--background-color), black 5%);--background-color-black-10: color-mix(in oklab, var(--background-color), black 10%);--background-color-black-15: color-mix(in oklab, var(--background-color), black 15%);--background-color-black-20: color-mix(in oklab, var(--background-color), black 20%);--background-color-black-25: color-mix(in oklab, var(--background-color), black 25%);--background-color-black-30: color-mix(in oklab, var(--background-color), black 30%);--background-color-black-35: color-mix(in oklab, var(--background-color), black 35%);--background-color-black-40: color-mix(in oklab, var(--background-color), black 40%);--background-color-black-50: color-mix(in oklab, var(--background-color), black 50%);--background-color-black-60: color-mix(in oklab, var(--background-color), black 60%);--background-color-black-65: color-mix(in oklab, var(--background-color), black 65%);--background-color-black-70: color-mix(in oklab, var(--background-color), black 70%);--background-color-black-75: color-mix(in oklab, var(--background-color), black 75%);--background-color-black-80: color-mix(in oklab, var(--background-color), black 80%);--background-color-black-85: color-mix(in oklab, var(--background-color), black 85%);--background-color-black-90: color-mix(in oklab, var(--background-color), black 90%);--background-color-black-95: color-mix(in oklab, var(--background-color), black 95%);--background-color-black-96: color-mix(in oklab, var(--background-color), black 96%);--background-color-black-97: color-mix(in oklab, var(--background-color), black 97%);--background-color-black-98: color-mix(in oklab, var(--background-color), black 98%);--background-color-black-99: color-mix(in oklab, var(--background-color), black 99%);--background-color-gray-1: color-mix(in oklab, var(--background-color), gray 1%);--background-color-gray-2: color-mix(in oklab, var(--background-color), gray 2%);--background-color-gray-3: color-mix(in oklab, var(--background-color), gray 3%);--background-color-gray-4: color-mix(in oklab, var(--background-color), gray 4%);--background-color-gray-5: color-mix(in oklab, var(--background-color), gray 5%);--background-color-gray-10: color-mix(in oklab, var(--background-color), gray 10%);--background-color-gray-15: color-mix(in oklab, var(--background-color), gray 15%);--background-color-gray-20: color-mix(in oklab, var(--background-color), gray 20%);--background-color-gray-25: color-mix(in oklab, var(--background-color), gray 25%);--background-color-gray-30: color-mix(in oklab, var(--background-color), gray 30%);--background-color-gray-35: color-mix(in oklab, var(--background-color), gray 35%);--background-color-gray-40: color-mix(in oklab, var(--background-color), gray 40%);--background-color-gray-50: color-mix(in oklab, var(--background-color), gray 50%);--background-color-gray-60: color-mix(in oklab, var(--background-color), gray 60%);--background-color-gray-65: color-mix(in oklab, var(--background-color), gray 65%);--background-color-gray-70: color-mix(in oklab, var(--background-color), gray 70%);--background-color-gray-75: color-mix(in oklab, var(--background-color), gray 75%);--background-color-gray-80: color-mix(in oklab, var(--background-color), gray 80%);--background-color-gray-85: color-mix(in oklab, var(--background-color), gray 85%);--background-color-gray-90: color-mix(in oklab, var(--background-color), gray 90%);--background-color-gray-95: color-mix(in oklab, var(--background-color), gray 95%);--background-color-gray-96: color-mix(in oklab, var(--background-color), gray 96%);--background-color-gray-97: color-mix(in oklab, var(--background-color), gray 97%);--background-color-gray-98: color-mix(in oklab, var(--background-color), gray 98%);--background-color-gray-99: color-mix(in oklab, var(--background-color), gray 99%);--primary-color-white-1: color-mix(in oklab, var(--primary-color), white 1%);--primary-color-white-2: color-mix(in oklab, var(--primary-color), white 2%);--primary-color-white-3: color-mix(in oklab, var(--primary-color), white 3%);--primary-color-white-4: color-mix(in oklab, var(--primary-color), white 4%);--primary-color-white-5: color-mix(in oklab, var(--primary-color), white 5%);--primary-color-white-10: color-mix(in oklab, var(--primary-color), white 10%);--primary-color-white-15: color-mix(in oklab, var(--primary-color), white 15%);--primary-color-white-20: color-mix(in oklab, var(--primary-color), white 20%);--primary-color-white-25: color-mix(in oklab, var(--primary-color), white 25%);--primary-color-white-30: color-mix(in oklab, var(--primary-color), white 30%);--primary-color-white-35: color-mix(in oklab, var(--primary-color), white 35%);--primary-color-white-40: color-mix(in oklab, var(--primary-color), white 40%);--primary-color-white-50: color-mix(in oklab, var(--primary-color), white 50%);--primary-color-white-60: color-mix(in oklab, var(--primary-color), white 60%);--primary-color-white-65: color-mix(in oklab, var(--primary-color), white 65%);--primary-color-white-70: color-mix(in oklab, var(--primary-color), white 70%);--primary-color-white-75: color-mix(in oklab, var(--primary-color), white 75%);--primary-color-white-80: color-mix(in oklab, var(--primary-color), white 80%);--primary-color-white-85: color-mix(in oklab, var(--primary-color), white 85%);--primary-color-white-90: color-mix(in oklab, var(--primary-color), white 90%);--primary-color-white-95: color-mix(in oklab, var(--primary-color), white 95%);--primary-color-white-96: color-mix(in oklab, var(--primary-color), white 96%);--primary-color-white-97: color-mix(in oklab, var(--primary-color), white 97%);--primary-color-white-98: color-mix(in oklab, var(--primary-color), white 98%);--primary-color-white-99: color-mix(in oklab, var(--primary-color), white 99%);--primary-color-black-1: color-mix(in oklab, var(--primary-color), black 1%);--primary-color-black-2: color-mix(in oklab, var(--primary-color), black 2%);--primary-color-black-3: color-mix(in oklab, var(--primary-color), black 3%);--primary-color-black-4: color-mix(in oklab, var(--primary-color), black 4%);--primary-color-black-5: color-mix(in oklab, var(--primary-color), black 5%);--primary-color-black-10: color-mix(in oklab, var(--primary-color), black 10%);--primary-color-black-15: color-mix(in oklab, var(--primary-color), black 15%);--primary-color-black-20: color-mix(in oklab, var(--primary-color), black 20%);--primary-color-black-25: color-mix(in oklab, var(--primary-color), black 25%);--primary-color-black-30: color-mix(in oklab, var(--primary-color), black 30%);--primary-color-black-35: color-mix(in oklab, var(--primary-color), black 35%);--primary-color-black-40: color-mix(in oklab, var(--primary-color), black 40%);--primary-color-black-50: color-mix(in oklab, var(--primary-color), black 50%);--primary-color-black-60: color-mix(in oklab, var(--primary-color), black 60%);--primary-color-black-65: color-mix(in oklab, var(--primary-color), black 65%);--primary-color-black-70: color-mix(in oklab, var(--primary-color), black 70%);--primary-color-black-75: color-mix(in oklab, var(--primary-color), black 75%);--primary-color-black-80: color-mix(in oklab, var(--primary-color), black 80%);--primary-color-black-85: color-mix(in oklab, var(--primary-color), black 85%);--primary-color-black-90: color-mix(in oklab, var(--primary-color), black 90%);--primary-color-black-95: color-mix(in oklab, var(--primary-color), black 95%);--primary-color-black-96: color-mix(in oklab, var(--primary-color), black 96%);--primary-color-black-97: color-mix(in oklab, var(--primary-color), black 97%);--primary-color-black-98: color-mix(in oklab, var(--primary-color), black 98%);--primary-color-black-99: color-mix(in oklab, var(--primary-color), black 99%);--primary-color-gray-1: color-mix(in oklab, var(--primary-color), gray 1%);--primary-color-gray-2: color-mix(in oklab, var(--primary-color), gray 2%);--primary-color-gray-3: color-mix(in oklab, var(--primary-color), gray 3%);--primary-color-gray-4: color-mix(in oklab, var(--primary-color), gray 4%);--primary-color-gray-5: color-mix(in oklab, var(--primary-color), gray 5%);--primary-color-gray-10: color-mix(in oklab, var(--primary-color), gray 10%);--primary-color-gray-15: color-mix(in oklab, var(--primary-color), gray 15%);--primary-color-gray-20: color-mix(in oklab, var(--primary-color), gray 20%);--primary-color-gray-25: color-mix(in oklab, var(--primary-color), gray 25%);--primary-color-gray-30: color-mix(in oklab, var(--primary-color), gray 30%);--primary-color-gray-35: color-mix(in oklab, var(--primary-color), gray 35%);--primary-color-gray-40: color-mix(in oklab, var(--primary-color), gray 40%);--primary-color-gray-50: color-mix(in oklab, var(--primary-color), gray 50%);--primary-color-gray-60: color-mix(in oklab, var(--primary-color), gray 60%);--primary-color-gray-65: color-mix(in oklab, var(--primary-color), gray 65%);--primary-color-gray-70: color-mix(in oklab, var(--primary-color), gray 70%);--primary-color-gray-75: color-mix(in oklab, var(--primary-color), gray 75%);--primary-color-gray-80: color-mix(in oklab, var(--primary-color), gray 80%);--primary-color-gray-85: color-mix(in oklab, var(--primary-color), gray 85%);--primary-color-gray-90: color-mix(in oklab, var(--primary-color), gray 90%);--primary-color-gray-95: color-mix(in oklab, var(--primary-color), gray 95%);--primary-color-gray-96: color-mix(in oklab, var(--primary-color), gray 96%);--primary-color-gray-97: color-mix(in oklab, var(--primary-color), gray 97%);--primary-color-gray-98: color-mix(in oklab, var(--primary-color), gray 98%);--primary-color-gray-99: color-mix(in oklab, var(--primary-color), gray 99%)} +/*! Theme: boulder */ /*# sourceMappingURL=theme.css.map */ diff --git a/_static/pretext/css/theme.css.map b/_static/pretext/css/theme.css.map old mode 100644 new mode 100755 index 29ee488..076d70e --- a/_static/pretext/css/theme.css.map +++ b/_static/pretext/css/theme.css.map @@ -1,7 +1,7 @@ { "version": 3, - "sources": ["/root/.ptx/2.32.0/core/css/targets/html/theme-default-modern.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../fonts/_fonts-google.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/page-parts/_body.scss", "/root/.ptx/2.32.0/core/css/targets/html/_parts-default.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/helpers/_buttons-default.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/page-parts/_banner.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/page-parts/_navbar.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/page-parts/extras/_navbar-btn-borders.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/page-parts/_toc-basics.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/page-parts/_toc-default.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/page-parts/_footer.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/chunks/_asides-basic.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/chunks/_asides-floating.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/chunks/_codelike.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/helpers/_cols.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/chunks/_exercises.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/chunks/_solutions.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/chunks/_sidebyside.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/chunks/helpers/_inline-heading-mixin.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/chunks/_discussion-inline.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/chunks/_knowls.scss", "/root/.ptx/2.32.0/core/css/targets/html/_chunks-default.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/chunks/helpers/_box-mixin.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/chunks/helpers/_heading-box-mixin.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/chunks/helpers/_L-mixin.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/chunks/helpers/_sidebar-mixin.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/_spacing.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_list-styles.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_description-lists.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_lists.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_fillin.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_headings.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_links.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_tables.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_front-matter.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_summary-links.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_footnotes.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_index.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_media.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_figures.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_poem.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_prism.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_math.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_permalinks.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/_misc-content.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/_printing.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/_worksheet.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/_google-search.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/_pretext-search.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/interactives/_runestone.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/interactives/_webwork.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/interactives/_sagecell.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/interactives/_calculators.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../colors/_color-vars.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/page-parts/extras/_toc-last-level-plain.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/page-parts/extras/_toc-borders.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/page-parts/extras/_toc-expand-chevrons.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/elements/extras/_heading-underlines.scss", "/root/.ptx/2.32.0/core/css/targets/html/_customization.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../components/helpers/_expandable.scss", "/root/.ptx/2.32.0/core/css/targets/html/../../../colors/_color-helpers.scss"], - "sourcesContent": ["/*! Theme: default-modern */\n\n// Variables used by theme. CSSBuilder overrides these by prepending\n// different definitions for these variables to this file before the theme\n// is compiled.\n\n$palette: 'blue-red' !default;\n$primary-color: null !default;\n$secondary-color: null !default;\n$primary-color-dark: #698aa8 !default;\n$background-color-dark: #23241f !default;\n\n@use \"sass:map\";\n\n// ---------------------------------------------\n// components and layout\n@use 'parts-default';\n@use 'chunks-default';\n@use 'components/pretext' with (\n $navbar-breakpoint: parts-default.$navbar-breakpoint,\n);\n\n// ---------------------------------------------\n// fonts and colors\n@use 'fonts/fonts-google';\n\n@use \"colors/color-helpers\" as colorHelpers;\n@use 'colors/palette-dual' as palette-dual with (\n $palette: $palette,\n $primary-color: $primary-color,\n $secondary-color: $secondary-color,\n);\n\n// primary/secondary color defined as determined by palette-dual using\n// $palette, $primary-color, $secondary-color\n$primary-color: map.get(palette-dual.$colors, 'primary-color');\n$secondary-color: map.get(palette-dual.$colors, 'secondary-color');\n\n@use 'colors/palette-dark' as palette-dark with (\n $primary-color: $primary-color-dark,\n $background-color: $background-color-dark,\n);\n\n// ---------------------------------------------\n// extra customizations\n\n@use './customization';\n\n// ---------------------------------------------\n// concrete rules / includes that generate CSS\n\n// render the actual colors\n@include colorHelpers.set-root-colors(palette-dual.$colors, palette-dark.$colors);\n", "@use \"sass:map\";\n@use \"sass:string\";\n@use \"sass:list\";\n\n// Fonts to use\n$body: 'Open Sans, Helvetica Neue, Helvetica, Arial, sans-serif' !default;\n$heading: 'PT Serif, Times New Roman, Times, serif' !default;\n$monospace: 'Inconsolata, Consolas, Monaco, monospace;' !default;\n$print: 'PT Serif, Times New Roman, Times, serif' !default;\n\n@function is-variable-font($font-name) {\n $static-fonts: ('PT Serif'); // list of known static fonts used by themes\n @if list.index($font-name, $static-fonts) {\n @return false;\n }\n @return true;\n}\n\n@function generate-import($font-name) {\n @if is-variable-font($font-name) {\n @return 'https://fonts.googleapis.com/css2?family=' + $font-name + ':ital,wght@0,400..700;1,400..700&display=swap';\n }\n @else {\n @return 'https://fonts.googleapis.com/css2?family=' + $font-name + ':ital,wght@0,400;0,700;1,400;1,700&display=swap';\n }\n}\n\n// For now, only try to fetch the first name in the list and assume\n// the rest are system defined fallbacks.\n// lists are 1-indexed\n$body-font: list.nth(string.split($body, ','), 1);\n// @debug \"----------------\" $body-font;\n@import url( generate-import($body-font) );\n\n$heading-font: list.nth(string.split($heading, ','), 1);\n// generate-import($heading-font);\n@import url( generate-import($heading-font) );\n\n$monospace-font: list.nth(string.split($monospace, ','), 1);\n// generate-import($monospace-font);\n@import url( generate-import($monospace-font) );\n\n:root {\n --font-body: #{$body};\n}\n:root {\n --font-headings: #{$heading};\n}\n:root {\n --font-monospace: #{$monospace};\n}\n:root {\n --font-print: #{$print};\n}\n\n// 9/5/24 ... TODO controlled list of fonts ... wait and explore later\n// // Available fonts\n// $serif-options: ('Alegreya', 'Merriweather', 'Noto Serif', 'PT Serif', 'Source Serif 4');\n// $sans-options: ('Alegreya Sans', 'Barlow', 'Lato', 'Open Sans', 'Roboto', 'Source Sans 3');\n// $code-options: ('Inconsolata');\n\n// // Backup lists\n// $sans-backups: ', Helvetica Neue, Helvetica, Arial, sans-serif';\n// $serif-backups: ', Times New Roman, Times, serif';\n\n// // ---------------------------------------------------------\n\n\n// @function add-fonts($list, $backups, $fonts: ()) {\n// @each $font in $list {\n// $fonts: map.set($fonts, $font, (\n// url: '\"https://fonts.googleapis.com/css2?family=#{$font}:wdth,wght@75..100,300..800&display=swap\"',\n// fontlist: $font + $backups,\n// ));\n// }\n// @return $fonts;\n// }\n\n// $fonts: add-fonts($sans-options, $sans-backups);\n// $fonts: add-fonts($serif-options, $sans-backups, $fonts);\n\n// $bodyfont: map.get($fonts, $body);\n// @if not $bodyfont {\n// @error \"Unknown body font: #{$body}\";\n// } @else {\n// @import url(#{map.get($bodyfont, \"url\")});\n// :root {\n// --font-body: #{map.get($bodyfont, \"fontlist\")};\n// }\n// }\n\n// $headingfont: map.get($fonts, $heading);\n// @if not $headingfont {\n// @error \"Unknown heading font: #{$heading}\";\n// } @else {\n// @import url(#{map.get($headingfont, \"url\")});\n// :root {\n// --font-headings: #{map.get($headingfont, \"fontlist\")};\n// }\n// }\n", "// Body level styling\n$max-width: 1200px !default; // 0 == no max width\n\n$content-width: 600px !default; // without padding\n$content-side-padding: 48px !default;\n$centered-content: false !default;\n\n$footer-button-border-radius: 0 !default;\n\n$content-with-padding-width: $content-width + 2 * $content-side-padding;\n\n@use 'components/helpers/buttons-default' as buttons;\n\n// set content width up as a CSS variables so other files can ask\n// \"how wide is standard content?\"\n:root {\n --base-content-width: #{$content-width};\n --content-padding: #{$content-side-padding};\n}\n\n// hits regular pages and generated iframe pages\nbody {\n margin: 0;\n min-height: 100vh;\n\n display: flex;\n flex-direction: column;\n align-items: stretch;\n\n &.pretext {\n color: var(--body-text-color);\n font-family: var(--font-body);\n }\n}\n\n.ptx-page {\n position: relative;\n display: flex;\n flex-grow: 1; // fill space in body\n width: 100%;\n}\n\n.ptx-main {\n flex-grow: 1;\n position: relative;\n max-width: 100%;\n container-name: ptx-main; // for container queries elsewhere\n container-type: inline-size; // for container queries elsewhere\n}\n\n// Base width/padding\n// ptx-main ensures iframe pages don't get these\n.ptx-main .ptx-content {\n max-width: $content-with-padding-width; // bad for worksheets\n padding: 24px $content-side-padding 60px;\n\n @if $centered-content {\n margin-left: auto;\n margin-right: auto;\n }\n}\n.worksheet .ptx-main .ptx-content {\n max-width: 960px;\n}\n\n@if $max-width > 0 {\n .ptx-page {\n max-width: $max-width;\n margin-left: auto;\n margin-right: auto;\n }\n}\n\nbody.pretext,\nbody.standalone {\n margin: 0;\n padding: 0;\n font-size: 16px;\n background: var(--page-color, white);\n}\n\n\nbody.pretext > a.assistive {\n padding:6px;\n position: absolute;\n top:-40px; // hide off screen until keyboard focus\n left: 0px;\n color:white;\n border-right:1px solid white;\n border-bottom:1px solid white;\n border-bottom-right-radius:8px;\n background:#BF1722; // always have correct contrast\n z-index: 10000;\n\n &:focus {\n top:0px; // move into view when keyboard focus\n outline:0;\n transition: top .1s ease-in, background .5s linear;\n }\n}\n\n\n.ptx-content-footer {\n display: flex;\n justify-content: space-around;\n max-width: $content-with-padding-width;\n\n padding-top: 2em;\n padding-bottom: 2em;\n padding-left: $content-side-padding;\n padding-right: $content-side-padding;\n\n @if $centered-content {\n margin-left: auto;\n margin-right: auto;\n }\n\n .button {\n @include buttons.ptx-button(\n $border-radius: $footer-button-border-radius\n );\n .icon {\n margin: 0 -7px; // current icons have lots of whitespace\n }\n }\n}\n", "// Left aligned \"page\" with limited width, beyond which it is centered\n\n$max-width: 1200px !default;\n$sidebar-width: 240px !default;\n$scrolling-toc: true !default;\n$nav-height: 36px !default;\n$content-width: 600px !default;\n$content-side-padding: 48px !default;\n$content-side-padding-tight: 28px !default;\n$navbar-breakpoint: 800px !default;\n\n$sidebar-breakpoint: $content-width + $sidebar-width + $content-side-padding * 2;\n$content-with-padding-width: $content-width + 2 * $content-side-padding;\n\n@use 'components/page-parts/body' with (\n $max-width: $max-width,\n $content-width: $content-width,\n $content-side-padding: $content-side-padding,\n);\n\n@use 'components/page-parts/banner' with (\n $navbar-breakpoint: $navbar-breakpoint,\n);\n\n@use 'components/page-parts/navbar' with (\n $nav-height: $nav-height,\n $navbar-breakpoint: $navbar-breakpoint,\n);\n\n@use 'components/page-parts/toc-default' with (\n $scrolling: $scrolling-toc,\n $sidebar-width: $sidebar-width,\n $sidebar-breakpoint: $sidebar-breakpoint,\n $navbar-breakpoint: $navbar-breakpoint,\n);\n\n@use 'components/page-parts/footer' with (\n $navbar-breakpoint: $navbar-breakpoint,\n);\n\n// Decrease the side margins once out of room\n@container ptx-main (width < #{$content-with-padding-width}) {\n .ptx-page > .ptx-main { \n .ptx-content {\n padding-left: #{$content-side-padding-tight};\n padding-right: #{$content-side-padding-tight};\n max-width: calc($content-width + 2 * #{$content-side-padding-tight});\n }\n }\n}\n", "$border-radius: 0 !default;\n\n@mixin ptx-button(\n $border-radius: $border-radius\n) {\n font: inherit;\n display: flex;\n justify-content: center;\n align-items: center;\n padding: 0 10px;\n gap: 10px;\n min-height: 34px;\n color: var(--button-text-color);\n background-color: var(--button-background);\n border-width: 1px;\n border-color: var(--button-border-color);\n border-style: solid;\n border-radius: $border-radius;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n cursor: pointer;\n\n // Disable accidental text-selection\n user-select: none;\n\n &:hover:not(.disabled) {\n color: var(--button-hover-text-color);\n background-color: var(--button-hover-background);\n }\n\n &:focus-visible {\n outline: 2px solid var(--button-text-color);\n outline-offset: -2px;\n }\n\n &.disabled {\n opacity: .4;\n cursor: not-allowed;\n }\n\n &.hidden {\n display: none;\n }\n\n &.open {\n color: var(--button-hover-text-color);\n background-color: var(--button-hover-background);\n }\n}\n\n@mixin ptx-dropdown-button {\n position: relative;\n\n .dropdown-content {\n display: none;\n position: absolute;\n background-color: var(--dropdown-background);\n min-width: 160px;\n z-index: 100;\n border: 1px solid var(--dropdown-border-color);\n right: 0;\n top: 35px;\n text-align: start;\n padding: 0;\n\n a {\n display: block;\n text-decoration: none;\n color: var(--dropdown-text-color);\n padding: 2px 8px;\n\n &:is(:hover, :focus-visible) {\n background-color: var(--dropdown-hover-background);\n color: var(--dropdown-hover-text-color);\n }\n }\n\n hr {\n color: var(--dropdown-border-color);\n margin: 4px 0;\n }\n }\n\n &:is(:hover, :focus-visible, :focus-within) {\n overflow: visible;\n\n .dropdown-content {\n display: block;\n }\n }\n}\n", "$max-width: 1200px !default; // 0 == no max width\n$navbar-breakpoint: 800px !default;\n$centered-content: false !default;\n\n.ptx-masthead {\n position: relative;\n background: var(--banner-background);\n width: 100%;\n display:flex;\n justify-content: center;\n\n .ptx-banner {\n border-top: 1px solid transparent;\n overflow: hidden;\n padding: 10px 10px;\n border-bottom: none;\n display:flex;\n width: 100%;\n align-items: center;\n @if $max-width > 0 {\n max-width: $max-width;\n }\n @if $centered-content {\n justify-content: center;\n }\n }\n\n a {\n color: var(--doc-title-color, #2a5ea4);\n }\n\n a:active {\n color: var(--link-active-text-color);\n }\n\n .title-container {\n font-family: var(--font-headings);\n font-size: 2em;\n padding-left: 9.68px;\n overflow: hidden;\n flex: 1;\n\n .heading {\n font-weight: 700;\n font-size: 100%;\n line-height: 1.25em;\n }\n\n .title:has(+ .subtitle)::after {\n content: \":\";\n }\n\n .subtitle {\n font-weight: normal;\n }\n }\n\n .logo-link {\n height: 5em;\n display: flex;\n\n img {\n max-height: 100%; //fix rendering bug on safari with large images\n }\n img[src$=\".svg\"] {\n height: 100%; //svg's in safari don't get a correct width with max-height\n // don't use this for all images as we wouldn't want to stretch raster images\n }\n }\n\n // // Insert a placeholder icon if the logo-link is empty\n // .logo-link:empty::before {\n // display: flex;\n // font-family: var(--font-body);\n // font-size: 4rem;\n // margin-top: -0.7rem;\n // content: \"\\2211\"; //sigma symbol\n // color: var(--page-border-color)\n // }\n\n .byline {\n color: var(--byline-color);\n font-weight: normal;\n margin: 0;\n font-size: 62.5%;\n min-height: inherit;\n }\n}\n\n@media screen and (max-width: $navbar-breakpoint) {\n .ptx-masthead {\n border-bottom: 1px solid var(--page-border-color);\n\n .ptx-banner {\n padding: 10px 28px;\n display: flex;\n justify-content: center;\n }\n\n .logo-link::before {\n font-size: 1rem;\n margin-top: 0;\n }\n\n .title-container {\n width: fit-content;\n flex: unset;\n .heading {\n line-height: 1em;\n\n .subtitle {\n /* Force the subtitle onto a separate line */\n display: block;\n font-size: 80%;\n line-height: 1em;\n }\n }\n }\n\n .byline {\n font-size: 50%;\n }\n }\n}\n\n\n@media screen and (width <= 480px) {\n .ptx-masthead {\n\n .title-container {\n padding: 0;\n text-align: center;\n font-size: 1em;\n }\n\n .logo-link {\n display: none;\n }\n\n .byline {\n display: none;\n }\n }\n}\n", "$max-width: 1200px !default; // 0 == no max width\n// applied to the contents of the navbar\n\n$nav-height: 36px !default;\n$border-width: 1px !default;\n$navbar-breakpoint: 800px !default;\n$center-content: true !default;\n\n@use 'components/helpers/buttons-default' as buttons;\n\n@use 'components/page-parts/extras/navbar-btn-borders';\n\n.ptx-navbar {\n position: sticky;\n top: 0;\n height: $nav-height;\n width: 100%;\n background: var(--navbar-background);\n border: 0;\n border-top: 1px solid var(--page-border-color);\n border-bottom: 1px solid var(--page-border-color);\n margin: 0;\n z-index: 500;\n overflow: visible;\n display: flex;\n\n .ptx-navbar-contents {\n position: relative;\n display: flex;\n flex: 1;\n justify-content: center;\n align-items: center;\n max-width: $max-width;\n @if $center-content {\n margin: 0 auto;\n }\n }\n\n .button {\n @include buttons.ptx-button;\n\n & {\n height: 100%; //always fill container\n // Disable normal borders - top/bottom provided by container\n // Use extras/_navbar-btn-borders.scss for side borders if desired\n border-width: 0;\n\n }\n }\n\n .toc-toggle {\n width: 240px;\n gap: 0.4em;\n margin-left: 0; //assumes is first button\n }\n\n :is(.treebuttons, .nav-runestone-controls, .nav-other-controls) {\n display: flex;\n }\n\n .treebuttons {\n flex: 1 1 210px;\n justify-content: end;\n }\n\n .nav-runestone-controls {\n flex: 1 1 70px;\n justify-content: end;\n }\n\n .pretext .navbar .dropdown {\n height: 34px;\n }\n\n .embed-popup {\n padding: 10px;\n background-color: var(--navbar-background);\n position: absolute;\n margin-top: $nav-height;\n border: 1px solid var(--page-border-color);\n border-radius: 3px;\n box-shadow: 0 0 5px var(--primary-color-gray-80);\n .embed-code-container {\n width: \"100%\";\n padding:5px;\n .embed-code-textbox {\n width: 100%;\n padding: 10px;\n height: 5em;\n }\n }\n }\n\n .treebuttons > * {\n display: flex;\n align-items: center;\n justify-content: center;\n min-width: 75px;\n }\n\n .treebuttons .icon {\n margin: 0 -7px; // chevrons have lots of horizontal padding\n }\n\n :is(.index-button) .icon {\n display: none;\n }\n\n :is(.runestone-profile, .activecode-toggle, .searchbutton, .calculator-toggle, .light-dark-button, .embed-button) .name {\n display: none;\n }\n\n .index-button {\n min-width: 70px;\n }\n\n}\n\n// Button in the navbar, but needs to be less specific so not nested in previous\n.runestone-profile {\n @include buttons.ptx-dropdown-button;\n}\n\n@if $max-width > 0 {\n @media screen and (min-width: $max-width) {\n body.pretext .ptx-navbar {\n //forces navbar to line up cleanly with sidebar\n // need padding because there is no container around the items in navbar\n // padding: 0 calc((100% - $max-width) / 2);\n // border-left-width: 1px;\n\n // //tug contents of first button to left\n // & .ptx-navbar-contents > *:first-child {\n // justify-content: start;\n // }\n }\n }\n}\n\n@media screen and (max-width: $navbar-breakpoint) {\n @include navbar-btn-borders.navbar-btn-borders();\n\n .ptx-navbar {\n position: fixed;\n top: auto;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 1100;\n background: var(--button-border-color);\n max-width: 100vw;\n\n .ptx-navbar-contents {\n max-width: 100vw;\n }\n\n .nav-runestone-controls {\n flex: 0;\n }\n\n .toc-toggle {\n flex: 2 1 100px;\n }\n\n .treebuttons {\n flex: 3 1 150px;\n /* 3:2 ratio with toc-toggle */\n }\n\n .treebuttons > * {\n flex: 1 1;\n min-width: 35px\n }\n\n .index-button {\n display: none;\n }\n\n .embed-popup {\n margin-top: unset;\n bottom: $nav-height;\n }\n\n .dropdown-content {\n top: unset;\n bottom: $nav-height;\n }\n\n :is(.toc-toggle, .previous-button, .up-button, .next-button, .calculator-toggle, .index-button, .embed-button) .name {\n display: none;\n }\n }\n}\n", "\n$border-width: 1px !default;\n\n@mixin navbar-btn-borders {\n .ptx-navbar {\n .button {\n border-left-width: $border-width;\n border-right-width: $border-width;\n border-color: var(--page-border-color);\n }\n \n & > *:not(:first-child) {\n //hide double borders\n margin-left: -1 * $border-width;\n }\n }\n}\n", "// shared toc styling used by _toc-default, etc...\n\n$sidebar-width: 240px !default;\n$nav-height: 36px !default;\n\n\n\n.ptx-sidebar {\n align-self: flex-start; // needed for sticky inside a flex\n\n &.visible {\n display: block;\n }\n\n &.hidden {\n display: none;\n height: 0;\n }\n}\n\n.ptx-toc {\n --codenumber-pad-left: 0.3rem;\n --codenumber-pad-right: 0.5rem;\n\n --toc-indent-first: calc(1.0rem + var(--codenumber-pad-left) + var(--codenumber-pad-right));\n --toc-indent-second: calc(1.7rem + var(--codenumber-pad-left) + var(--codenumber-pad-right));\n --toc-indent-third: calc(2.2rem + var(--codenumber-pad-left) + var(--codenumber-pad-right));\n\n background: var(--toc-background);\n\n margin: 0;\n font-size: 0.9rem;\n\n /* -------------------toc-items-------------------- */\n // will be less indentation, add some padding\n &:is(.depth1, .parts.depth2) {\n --codenumber-pad-right: 0.5rem;\n }\n\n .toc-item-list {\n margin: 0;\n padding: 0;\n list-style: none;\n background: var(--tocitem-background);\n\n .active {\n list-style: none; // clobber runestone css\n }\n }\n\n .toc-item {\n background-color: var(--tocitem-background);\n color: var(--toc-text-color);\n border-color: var(--toc-border-color);\n\n a {\n color: inherit;\n }\n\n // only highlight lowest level active item\n // need !important to override later depth based css\n &.active:not(:has(.toc-item.active)) {\n color: var(--tocitem-active-text-color) !important;\n background-color: var(--tocitem-active-background) !important;\n border-color: var(--tocitem-active-border-color) !important;\n }\n\n // hoving over a toc item\n & > .toc-title-box > a:is(:hover, :focus) {\n color: var(--tocitem-highlight-text-color);\n background-color: var(--tocitem-highlight-background);\n border-color: var(--tocitem-highlight-border-color);\n }\n }\n\n /* -------------------title-box------------------- */\n\n .toc-title-box {\n display: flex;\n }\n\n .toc-title-box > .internal {\n position: relative;\n display: flex;\n flex-grow: 1;\n padding: 0.2em;\n font-weight: 500;\n }\n\n /* at second level, switch fonts */\n .toc-item-list .toc-item-list .toc-title-box > .internal {\n font-weight: normal;\n }\n\n /* -------------------codenumbers-------------------- */\n .codenumber {\n min-width: var(--toc-indent-first);\n padding-left: var(--codenumber-pad-left);\n padding-right: var(--codenumber-pad-right);\n display: inline-block;\n text-align: left;\n flex-grow: 0;\n }\n}\n\n\n\n// --------------------------------------------------------------------------\n// Conditional styling based on depth\n\n.ptx-toc .toc-item {\n color: var(--toclevel1-text-color);\n background-color: var(--toclevel1-background);\n}\n\n.ptx-toc .toc-item .toc-item {\n color: var(--toclevel2-text-color);\n background-color: var(--toclevel2-background);\n}\n.ptx-toc .toc-item .toc-item .toc-item {\n color: var(--toclevel3-text-color);\n background-color: var(--toclevel3-background);\n}\n\n\n/* second level of numbering */\n/* anything 1+ levels deeper than a chapter in a book */\n.book .ptx-toc .toc-chapter .toc-item-list .codenumber,\n/* anything 1+ levels deeper than a section in an article */\n.article .ptx-toc .toc-section .toc-item-list .codenumber,\n/* anything 1+ levels deeper than backmatter */\n.ptx-toc .toc-backmatter .toc-item-list .codenumber {\n font-size: 80%;\n padding-top: 0.16em;\n min-width: var(--toc-indent-second);\n}\n\n/* third level of numbering */\n/* anything 2+ levels deeper than a chapter in a book */\n.book .ptx-toc .toc-chapter .toc-item-list .toc-item-list .codenumber,\n/* anything 2+ levels deeper than a section in an article */\n.article .ptx-toc .toc-section .toc-item-list .toc-item-list .codenumber,\n/* anything 2+ levels deeper than backmatter */\n.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .codenumber {\n min-width: var(--toc-indent-third);\n visibility: hidden;\n}\n\n/* reveal hidden numbers on interaction */\n.ptx-toc .toc-item-list .toc-item-list .toc-item-list a:is(:hover, :focus) > .codenumber {\n visibility: visible;\n}\n\n/* Any toc item without a codenumber needs indentation\nCan't select absence of a preceeding, so indent all titles\nand then clear indent if there is a codenumber */\n.ptx-toc .toc-item .toc-title-box .title {\n margin-left: var(--toc-indent-first);\n}\n\n/* second level as defined by codenumber selectors */\n.book .ptx-toc .toc-chapter .toc-item-list .title,\n.article .ptx-toc .toc-section .toc-item-list .title,\n.ptx-toc .toc-backmatter .toc-item-list .title {\n margin-left: var(--toc-indent-second);\n}\n\n/* third level as defined by codenumber selectors */\n.book .ptx-toc .toc-chapter .toc-item-list .toc-item-list .title,\n.article .ptx-toc .toc-section .toc-item-list .toc-item-list .title,\n.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .title {\n margin-left: var(--toc-indent-third);\n}\n\n/* unless there is a codenumber */\n.ptx-toc .toc-item > .toc-title-box .codenumber + .title {\n margin-left: 0 !important;\n}\n\n// --------------------------------------------------------------------------\n// Conditional styling based on depth\n\n\n.ptx-toc .toc-chapter .toc-item-list .title,\n.ptx-toc .toc-section .toc-item-list .title,\n/* 2 levels deep in back matter */\n.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .title {\n font-size: 90%;\n}\n\n.ptx-toc .toc-chapter .toc-item-list .toc-item-list .title,\n.ptx-toc .toc-section .toc-item-list .toc-item-list .title,\n/* 3 levels deep in back matter */\n.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .toc-item-list .title {\n font-style: italic;\n}\n\n/* -------------------depth controls-------------------- */\n.ptx-toc.depth0 ul.structural {\n display: none;\n}\n\n.ptx-toc.depth1 ul.structural ul.structural {\n display: none;\n}\n\n.ptx-toc.depth2 ul.structural ul.structural ul.structural {\n display: none;\n}\n\n.ptx-toc.depth3 ul.structural ul.structural ul.structural ul.structural {\n display: none;\n}\n\n.ptx-toc.depth4 ul.structural ul.structural ul.structural ul.structural ul.structural {\n display: none;\n}\n\n/* if depth is shallow, identify best available toc item */\n.ptx-toc.depth1 ul.structural .toc-item.contains-active {\n background-color: var(--tocitem-active-backgrounde);\n color: var(--tocitem-active-text-color);\n}\n\n.ptx-toc.depth2 ul.structural ul.structural .toc-item.contains-active {\n background-color: var(--tocitem-active-background);\n color: var(--tocitem-active-text-color);\n}\n\n\n// --------------------------------------------------------------------------\n// Focused toc\n\n/* Hide all but active area of book */\n.ptx-toc.focused {\n\n ul.structural:not(.contains-active) > .toc-item {\n display: none;\n\n &.visible {\n display: block;\n }\n }\n\n ul.structural .toc-item.active > ul.structural > .toc-item {\n display: block;\n\n &.hidden {\n display: none;\n }\n }\n\n .toc-expander {\n border: 0;\n padding: 2px 5px;\n background: inherit;\n color: inherit;\n display: flex;\n align-items: center;\n\n .icon {\n font-size: 1.25em;\n line-height: 18px;\n font-variation-settings: 'wght' 200;\n }\n\n &:is(:hover) {\n background-color: var(--tocitem-highlight-background);\n color: var(--tocitem-highlight-text-color);\n\n .icon {\n fill: var(--tocitem-highlight-text-color);\n }\n }\n }\n\n /* ---------------icon customization----------------- */\n .toc-item > .toc-title-box > .toc-expander > .icon:before {\n content: \"add\";\n }\n\n .toc-item.expanded > .toc-title-box > .toc-expander > .icon:before {\n content: \"remove\";\n }\n}\n", "$scrolling: true !default;\n$sidebar-width: 240px !default;\n$nav-height: 36px !default;\n$sidebar-breakpoint: 856px !default;\n$navbar-breakpoint: 800px !default;\n\n@use 'toc-basics' with (\n $sidebar-width: $sidebar-width,\n $nav-height: $nav-height\n);\n\n.ptx-sidebar {\n flex: 0 0 $sidebar-width;\n @if $scrolling {\n position: sticky;\n top: $nav-height;\n overflow-y: hidden;\n }\n}\n\n.ptx-toc {\n @if $scrolling {\n position: sticky;\n top: $nav-height;\n overflow-y: auto;\n overflow-x: hidden;\n height: calc(100vh - $nav-height);\n margin-top: -1px; // partially hide top border of first toc item\n\n // border under the last item before the pretext icon\n & > .toc-item-list:first-child > .toc-item:last-child {\n border-bottom: 3px solid var(--toc-border-color);\n }\n }\n @else {\n // not scrolling\n scrollbar-width: none;\n padding: 10px 0;\n box-sizing: border-box;\n border-right: 1px solid var(--toc-border-color);\n }\n}\n\n// Hide once we get too narrow\n@media screen and (max-width: $sidebar-breakpoint) {\n .ptx-sidebar {\n display: none;\n position: sticky;\n top: $nav-height;\n background: var(--content-background);\n min-height: 30vh;\n border-right: 2px solid var(--toc-border-color);\n border-bottom: 2px solid var(--toc-border-color);\n width: $sidebar-width;\n }\n\n @if not $scrolling {\n .ptx-sidebar {\n overflow-y: scroll;\n }\n }\n}\n\n// flip sidebar to bottom one navbar moves\n@media screen and (max-width: min($sidebar-breakpoint, $navbar-breakpoint)) {\n .ptx-sidebar {\n position: fixed;\n z-index: 1000;\n top: unset;\n height: auto;\n max-height: 80vh;\n max-width: 80vw;\n bottom: $nav-height;\n border-right: 2px solid var(--toc-border-color);\n border-top: 2px solid var(--toc-border-color);\n }\n .ptx-toc {\n border-top: 2px solid var(--toc-border-color);\n border-bottom: 0;\n max-height: 80vh;\n }\n}\n", "$max-width: 0 !default; // 0 == no max width\n$navbar-breakpoint: 856px !default;\n$nav-height: 36px !default;\n\n@use 'components/helpers/buttons-default' as buttons;\n\n.ptx-page-footer {\n background: var(--footer-background);\n padding-top: 0;\n border-top: 2px solid var(--page-border-color);\n border-bottom: 2px solid var(--page-border-color);\n display: flex;\n flex-direction: row;\n justify-content: center;\n width: 100%;\n gap: 90px;\n position: relative;\n @if $max-width > 0 {\n max-width: $max-width;\n }\n \n \n & > a {\n margin: 1em 0;\n color: var(--body-text-color);\n }\n\n & > a > .logo:first-child {\n height: 3em;\n width: unset;\n margin: 0;\n }\n\n .feedback-link {\n @include buttons.ptx-button;\n }\n}\n\n\n@media screen and (max-width: $navbar-breakpoint) {\n .ptx-page-footer {\n // prevent icons from spreading too much\n gap: 20px;\n justify-content: center;\n margin-bottom: $nav-height - 2;\n\n & > a > .logo:first-child {\n height: 2em;\n }\n }\n}\n", "$border-width: 2px !default;\n$side-margins: 30px !default;\n\n.aside-like {\n & > .knowl__link {\n color: var(--aside-like-link-color);\n border-bottom-color: var(--aside-like-link-color);\n }\n & > .knowl__content{\n margin-left: $side-margins;\n margin-right: $side-margins;\n border: $border-width solid var(--aside-like-border-color);\n background-color: var(--aside-like-body-background);\n }\n}", "$float-width: 200px !default;\n$float-offset: -248px !default;\n$min-float-width: 1280px !default;\n\n@use 'asides-basic';\n\n@media screen and (min-width: $min-float-width) {\n details.aside-like {\n position: relative;\n margin-left: $float-offset;\n width: $float-width;\n right: $float-offset;\n float: right;\n clear: right;\n }\n\n /* disable in any multicolumn list/exercisegroup */\n .multicolumn details.aside-like {\n position: relative;\n margin-left: inherit;\n width: auto;\n right: 0;\n float: none;\n clear: none;\n }\n\n details.aside-like > .knowl__content {\n margin-left:0;\n margin-right:0;\n background-color: var(--aside-like-body-background);\n z-index: 100;\n }\n}", "@mixin code-text {\n font-family: var(--font-monospace);\n background: var(--code-background);\n font-size: .93rem;\n line-height: 1.2;\n}\n\n@mixin code-inline-spacing {\n line-height: normal; //prevent extra \"padding\" based on line-height\n padding: 0.0625em .15em;\n}\n\n// wide programs need to be scrollable\n.code-box {\n overflow-x: auto;\n}\n\n.code-display {\n overflow-x: auto; //scroll if overflowing\n font-family: var(--font-monospace);\n}\n\n.console,\n.program {\n border: 1px solid var(--page-border-color);\n padding: 5px 15px;\n overflow-x: auto;\n margin: 0;\n @include code-text();\n}\n\n.code-inline {\n font-family: var(--font-monospace);\n white-space: pre;\n color: var(--body-text-color);\n background: var(--code-inline-background);\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n border-radius: 0.2em;\n display: inline-block;\n overflow-x: auto;\n max-width: 100%;\n vertical-align: middle;\n @include code-inline-spacing();\n}\n\n\n.prompt.unselectable {\n user-select: none;\n}\n\n// code blocks are preformatted text that is not a program\n.code-block {\n border-left: 1px solid #aaa;\n padding: 0 15px 5px;\n overflow-x: auto;\n background: var(--code-background);\n margin-top: 0;\n margin-bottom: 0;\n @include code-text();\n}\n\n.code-block::before {\n content:' ';\n font-size: 50%;\n border-top: 1px solid #aaa;\n display: block;\n margin-right: auto;\n margin-left: -15px;\n width: 3.0em;\n}\n\n// special handling for code-display as it appears inside .paras\n// and may need space around it\n.code-display {\n margin: 0.5em 0;\n}\n// if inside clipboardable, move margin to that container and turn some into padding\n// to help make sure clipboard icon is contained inside the code-display in dark mode\n.clipboardable:has(.code-display) {\n margin: 0.25em 0;\n\n .code-display {\n margin: 0;\n padding: 0.25em 0;\n }\n}\n\n\n.clipboardable {\n position: relative; // To anchor the code-copy button\n display: flow-root;\n\n .code-copy {\n position: absolute;\n right: 0;\n top: 0;\n opacity: 0.25;\n border-width: 0;\n background: none;\n cursor: pointer;\n z-index: 1;\n white-space-collapse: collapse;\n padding: 1px;\n scale: 0.85;\n\n &:hover {\n opacity: 0.7;\n }\n\n .checkmark {\n display: none;\n }\n\n &.copied {\n opacity: 1;\n color: mediumseagreen;\n cursor: not-allowed;\n pointer-events: none;\n\n .copyicon {\n display: none;\n }\n\n .checkmark {\n display: inline;\n }\n }\n }\n}\n\n@media print {\n .code-copy {\n display: none;\n }\n}\n", "\n// columns are arranged in row-major order to match print output in LaTeX\n:is(.cols2, .cols3, .cols4, .cols5, .cols6) {\n display: flex;\n flex-wrap: wrap;\n justify-content: start;\n}\n\n// see lists and exercises for sample use\n@mixin allow-cols($el, $col-gap: 2em) {\n @for $i from 2 through 6 {\n .cols#{$i} > #{$el} {\n // columns are a suggestion enforced by a minimum size\n // content that needs to be wider can reduce number of columns\n // in its row\n min-width: calc(100% / $i - #{$col-gap});\n width: min-content;\n margin-right: $col-gap;\n }\n }\n}\n\n", "@use '../helpers/cols';\n\n// generate multi column rules for exercises\n@include cols.allow-cols('.exercise-like');\n\n.exercise-like > .heading {\n // exercise heading/numbers regular size\n font-size: inherit;\n}\n\n.exercisegroup {\n\n .exercise-like {\n margin-top: 1em;\n }\n\n > .heading {\n font-size: 1.10em;\n line-height: 1.05em;\n margin-top: 0.75em;\n display: inline;\n\n & + .introduction {\n display: inline;\n\n & > .para:first-child {\n display: inline;\n }\n }\n }\n\n // push the actual exercises down from any possible heading/intro\n .exercisegroup-exercises {\n margin-top: 1em;\n \n //indent items with padding so cols works correctly on them\n padding-left: 40px;\n }\n\n .conclusion {\n margin-left: 40px; // match the padding of the exercisegroup-exercises\n \n .heading {\n // exercise heading/numbers regular size\n font-size: inherit;\n } \n }\n}\n\n// subtasks are indented\n.exercise-like > .exercise-like.task {\n margin-left: 20px;\n}\n\n\n\n// ---------------------------------------------------------\n// exercise-wrapper is used for WW problems\n// these rules need testing/refactoring\n\n.exercise-wrapper form button:hover {\n cursor: pointer;\n background-color: #e0e0ff;\n border: 1px solid #000;\n}\n.exercise-wrapper form button:active {\n background-color: #f0f0f0;\n}\n.exercise-wrapper form button + button {\n margin-left: 0.8em;\n}\n\n.exercise-wrapper,\n.exercise-wrapper form,\n.exercise-wrapper form > div:first-child {\n display: inline-block;\n vertical-align: top;\n width: 100%; /* for live ww to open at 100% wide */\n}\n\n.knowl .exercise-wrapper,\n.knowl .exercise-wrapper form,\n.knowl .exercise-wrapper form > div:first-child {\n width: 100%;\n}\n\n.exercise-wrapper > .para:first-child,\n.exercisegroup .exercise-wrapper > .para:first-child {\n margin-top: 0;\n display: inline;\n}\n\n/* next is related to having exercises start in-line with their exercise number,\n including when a static WW problem is made interactive */\n/* not sure this was the right way to do it */\n/* see https://opentext.uleth.ca/apex-calculus/sec_antider.html#exercise-722 */\n.heading + .exercise-wrapper {\n display: inline-block;\n max-width: 95%;\n width: 100%;\n}\n\n.cols2 .heading + .exercise-wrapper {\n width: auto;\n}\n", "// \n\n/* stacked headings in the solutions backmatter */\nsection.solutions > .heading + .heading {\n margin-top: 0.5em;\n}\n\nsection.solutions > h3.heading,\nsection.solutions section > h3.heading {\n font-size: 1.6em;\n}\n\nsection.solutions > h4.heading,\nsection.solutions section > h4.heading {\n font-size: 1.45em;\n}\n\nsection.solutions > h5.heading,\nsection.solutions section > h5.heading {\n font-size: 1.35em;\n}\n\nsection.solutions > h6.heading,\nsection.solutions section > h6.heading {\n font-size: 1.25em;\n}\n", "// Space all rows in a sbsgroup, no other styling\n.sbsgroup > *:not(:first-child)\n{\n margin-top: 1.5em;\n}\n\n\n// sidebysides get laid out into a grid with two rows. \"Plain panels\" without\n// a caption are in the first row. Panels with things like tables/figures with\n// captions we want to align are decomposed across two rows.\n// If there is no content (no captions) in a second row, it will collapse.\n\n// 1| plain panel | figure-like/table-like\n// 2| | figcaption\n.sbsrow {\n display: grid;\n grid-template-rows: auto auto;\n}\n\n.sbspanel {\n // most sbspanels are in the first row\n grid-row: 1; \n\n // tables and their captions get centered when in panels\n & > .table > figcaption {\n text-align: center;\n }\n .tabular {\n overflow-x: auto;\n margin-left: auto;\n margin-right: auto;\n }\n}\n\n\n// panel content alignment options\n.sbspanel--top {\n align-self: start;\n}\n\n.sbspanel--middle {\n align-self: center;\n}\n\n.sbspanel--bottom {\n align-self: end;\n}\n\n\n// sbspanels with figures or tables get decomposed into two rows\n// both the panel and the figure-like/table-like element should\n// be ignored by the grid layout so we can place the items inside\n// the *-like into the grid\n.sbspanel:has(.figure-like, .table-like),\n.sbspanel > :is(.figure-like, .table-like) {\n display: contents;\n}\n\n\n// first child of decomposed *-like goes to the first row\n.sbspanel > :is(.figure-like, .table-like) > *:first-child {\n grid-row: 1;\n align-items: start;\n align-self: start;\n}\n\n// and gets alignment info\n.sbspanel--top > :is(.figure-like, .table-like) > *:first-child {\n align-items: start;\n align-self: start;\n}\n\n.sbspanel--middle > :is(.figure-like, .table-like) > *:first-child {\n align-items: center;\n align-self: center;\n}\n\n.sbspanel--bottom > :is(.figure-like, .table-like) > *:first-child {\n align-items: end;\n align-self: end;\n}\n\n\n// second child of decomposed *-like goes to the second row\n.sbspanel > :is(.figure-like, .table-like) > *:nth-child(2) {\n margin-top: 0.5em;\n grid-row: 2;\n width: 100%;\n}\n\n\n// make sure content for a panel stays in the correct column\n// otherwise captions may shift left into columns that do not have\n// second row content\n@for $col from 2 through 10 {\n .sbspanel:nth-of-type(#{$col}) * {\n grid-column: #{$col};\n }\n}", "// Generate styles for an inline heading\n@mixin heading {\n & > .heading:first-child {\n display: inline;\n line-height: initial;\n border-bottom: 0; // disable underline that may come from underlined headings\n\n &:after {\n content: \"\\2009\";\n }\n\n // Following sibling also needs to be inline for heading to line up correctly\n // For now limit to logical paragraphs and introductions as they seem to cover\n // the plain text cases. Not clear we would want same treatment for other\n // kinds of content\n & + :is(.para, .para.logical, .introduction) {\n display: inline;\n // possible first child that is the actual text\n & > .para:first-child {\n display: inline;\n }\n // an introduction could have a para.logical with a para\n & > .para.logical:first-child > .para:first-child {\n display: inline;\n }\n }\n }\n}\n", "@use './helpers/inline-heading-mixin';\n\n.discussion-like {\n @include inline-heading-mixin.heading;\n & > .heading {\n ::after {\n content: \"\\2009\";\n }\n\n & + .para {\n display: inline;\n }\n\n .space,\n .codenumber,\n .period {\n display: none;\n }\n\n .type::after {\n content: \". \";\n }\n }\n}\n", "/*\n main knowls styles\n*/\n\n$border-radius: 0px !default;\n$border-width: 3px !default;\n$pad: 12px !default;\n\n.source-view__link,\n.knowl__link {\n cursor: pointer;\n margin-left: 0.1em;\n margin-right: 0.1em;\n color: var(--knowl-link-color);\n border-bottom: 1px dotted var(--knowl-link-color);\n}\n\n.source-view {\n margin: 0.5em 0;\n}\n\nsummary.source-view__link,\nsummary.knowl__link {\n display: list-item inline;\n}\n\n.source-view__link > *,\n.knowl__link > * {\n display: inline;\n}\n\n.source-view__link:is(:hover, :focus, [open]),\n.knowl__link:is(:hover, :focus, [open]) {\n background-color: var(--knowl-background);\n border-bottom-color: transparent;\n}\n\n.source-view__content {\n margin: 0.2em 0;\n}\n\n.knowl__content {\n margin: 0.75em 0; //at least this much space above/below\n border: $border-width solid var(--knowl-border-color);\n border-radius: $border-radius;\n padding: $pad;\n background-color: var(--knowl-background);\n\n .incontext {\n display: block;\n font-size: 85%;\n text-align: right;\n }\n}\n\n/* nested knowl alt colors */\n.knowl__content .knowl__content {\n background-color: var(--knowl-nested-1-background);\n}\n\n.knowl__content .knowl__content .knowl__content {\n background-color: var(--knowl-nested-2-background);\n}\n\n.knowl__content .knowl__content .knowl__content .knowl__content {\n background-color: var(--knowl-nested-3-background);\n}\n\n.knowl__content .knowl__content .knowl__content .knowl__content .knowl__content {\n background-color: var(--knowl-nested-4-background);\n}\n\n\n/* spacing tweaks inside knowls */\n.knowl__content > figure {\n margin-left: 0;\n margin-right: 0;\n}\n", "// Standard collection of chunks. This file should only be modified\n// to fix bugs or improve the default-modern theme. If you want to\n// make changes for use in some other theme, create a _chunks-XXX file\n// in that theme's directory.\n\n$border-radius: 8px !default;\n\n// One stop include for default style content blocks\n@use 'components/chunks/asides-floating';\n@use 'components/chunks/codelike';\n@use 'components/chunks/exercises';\n@use 'components/chunks/solutions';\n@use 'components/chunks/sidebyside';\n@use 'components/chunks/discussion-inline';\n@use 'components/chunks/knowls' with ($border-radius: $border-radius);\n\n@use 'components/chunks/helpers/L-mixin';\n@use 'components/chunks/helpers/box-mixin' with ($border-radius: $border-radius);\n@use 'components/chunks/helpers/heading-box-mixin';\n@use 'components/chunks/helpers/sidebar-mixin';\n@use 'components/chunks/helpers/inline-heading-mixin';\n\n// rounded box\n.assemblage-like {\n @include box-mixin.box($border-color: var(--assemblage-like-border-color), $background-color: var(--assemblage-like-body-background));\n}\n\n// box with title inset on top\n.goal-like {\n @include heading-box-mixin.box(\n $background-color: var(--goal-like-body-background),\n $border-color: var(--goal-like-border-color)\n );\n}\n\n// L-border\n.theorem-like,\n.definition-like,\n.example-like,\n.project-like,\n.remark-like,\n.openproblem-like,\n.computation-like {\n @include L-mixin.border;\n}\n\n// projects get a dotted L\n.project-like:not(.knowl__content, .born-hidden-knowl) {\n @include L-mixin.border($style: dotted);\n}\n\n/* proof gets a backwards facing L */\n.proof {\n @include L-mixin.border(1px, $L-side: right);\n}\n\n/* No decorations/borders in knowls, to save space */\n.knowl__content {\n .theorem-like,\n .definition-like,\n .example-like,\n .project-like,\n .remark-like,\n .openproblem-like,\n .computation-like,\n .project-like {\n padding-left: 0;\n margin-left: 0;\n border-left: none;\n\n &::after {\n border-bottom: none;\n display: none;\n }\n }\n}\n\n// wide sidebar on an entire section of solutions\nsection.solutions:not(:is(:first-child)) {\n @include sidebar-mixin.box(\n $border-width: 10px,\n\n $border-color: var(--page-border-color),\n );\n}\n\n.paragraphs,\narticle {\n @include inline-heading-mixin.heading;\n}\n", "// These values can be set on @use to avoid repeating values in each @import\n$pad: 10px !default;\n$border-radius: 0px !default;\n\n// Generate styles for a surrounding box\n@mixin box($border-width: 2px,\n $style: solid,\n $background-color: var(--block-body-background),\n $border-color: var(--block-border-color),\n $head-color: var(--block-head-color),\n $padding: $pad,\n $border-radius: $border-radius)\n{\n\n &:not(.knowl__content, .born-hidden-knowl) {\n border: $border-width $style $border-color;\n background-color: $background-color;\n padding: $padding;\n\n @if $border-radius > 0 {\n border-radius: $border-radius;\n }\n\n & > .heading:first-child {\n display: block;\n color: $head-color;\n margin-bottom: 0.5em;\n }\n\n & > *:first-child {\n margin-top: 0;\n }\n }\n}\n", "// These values can be set on @use to avoid repeating values in each @import\n$pad: 20px !default;\n$border-radius: 0px !default;\n$border-width: 3px !default;\n$margin-top: 2.5em !default;\n$font-style: 'normal' !default;\n// $font-size: 1.25em !default;\n$box-padding: 5px !default;\n$background-color: var(--block-body-background) !default;\n$border-color: var(--block-border-color) !default;\n$heading-background: var(--content-background) !default;\n$heading-color: var(--block-head-color) !default;\n$side-borders: true !default;\n\n// Generate styles for a box with inset heading\n@mixin box($border-width: $border-width,\n $style: solid,\n $background-color: $background-color,\n $border-color: $border-color,\n $heading-background: $heading-background,\n $heading-color: $heading-color,\n $padding: $pad,\n $border-radius: $border-radius,\n $side-borders: $side-borders,\n $margin-top: $margin-top,\n $font-style: $font-style,\n $box-padding: $box-padding,\n // $font-size: $font-size,\n $hide-number: false)\n{\n // this *should* always work well for reasonable padding/font sizes\n //$heading-top: calc(-1 * $box-padding - 1.65ex);\n $heading-top: calc(-1 * ($padding + $box-padding) - 1.65ex);\n \n &:not(.knowl__content, .born-hidden-knowl) {\n border: $border-width $style $border-color;\n @if not $side-borders {\n border-left: 0;\n border-right: 0;\n }\n background-color: $background-color;\n padding: $pad;\n //extra top-padding to make room for heading\n padding-top: calc($pad + 0.25ex);\n\n // need to control margin to overcome negative margin on heading\n // !important to override default article styling\n margin-top: $margin-top !important;\n\n @if $border-radius > 0 {\n border-radius: $border-radius;\n }\n\n & > .heading:first-child {\n background-color: $heading-background;\n display: block;\n color: $heading-color;\n margin-bottom: 0.5em;\n padding: $box-padding (2 * $box-padding);\n // font-size: $font-size;\n margin-top: $heading-top;\n width: fit-content;\n border: 0; //in case picking up border from elsewhere\n\n @if $font-style != 'normal' {\n font-style: $font-style;\n }\n @if $border-radius > 0 {\n border-radius: $border-radius;\n }\n\n @if $hide-number {\n .codenumber {\n display: none;\n }\n }\n\n &:after {\n //disable any extra junk\n display: none;\n }\n }\n }\n\n // if the first child of a knowl, need just enough margin to clear exposed heading\n @at-root {\n .knowl__content *:first-child & {\n margin-top: 1em;\n }\n }\n}\n", "// These values can be set on @use to avoid repeating values in each @import\n$pad: 10px !default;\n\n// Generate styles for an L shaped border \n@mixin border(\n $border-width: 2px,\n $style: solid,\n $head-color: var(--block-head-color),\n $border-color: var(--block-border-color),\n $padding: $pad,\n $L-side: left) \n{\n //determine side opposite L\n $alt-side: if($L-side ==left, right, left);\n\n &:not(.knowl__content, .born-hidden-knowl) {\n padding-#{$L-side}: $padding;\n border-#{$L-side}: $border-width $style $border-color;\n\n & > .heading:first-child {\n color: $head-color;\n }\n\n &::after {\n content: '';\n border-bottom: $border-width $style $border-color;\n display: block;\n margin-#{$alt-side}: auto;\n margin-#{$L-side}: -$padding;\n padding-top: $padding;\n width: 1.5em;\n }\n }\n\n @at-root .knowl__content & {\n padding-#{$L-side}: 0;\n border-#{$L-side}: 0;\n\n &::after {\n display: none;\n }\n }\n}\n", "// These values can be set on @use to avoid repeating values in each @import\n$pad: 10px !default; //all sides\n$padside: 15px !default; //on side with border\n$border-radius: 0px !default; //on side with border\n$border-color: var(--block-border-color) !default;\n$background-color: var(--content-background) !default;\n$side: left !default;\n$border-width: 2px !default;\n\n// Generate styles for a sidebar down left or right of content\n@mixin box($border-width: $border-width,\n $style: solid,\n $border-color: $border-color,\n $background-color: $background-color,\n $padding: $pad,\n $padside: $padside,\n $side: $side,\n $border-radius: $border-radius) \n{\n &:not(.knowl__content, .born-hidden-knowl) {\n padding: $padding;\n padding-#{$side}: $padside;\n border-#{$side}: $border-width $style $border-color;\n background-color: $background-color;\n\n @if $border-radius > 0 {\n border-radius: $border-radius;\n }\n\n > .heading:first-child {\n margin-top: 0;\n }\n }\n}\n", "// Basic spacing for content\n\n// Breakpoint at which the navbar moves to the bottom of the screen\n$navbar-breakpoint: 800px !default;\n\n// all styling assumes border-box layout measurement\n* {\n box-sizing: border-box;\n}\n\n//----------------------------------------------------------\n// Inter item vertical spacing\n//\n// Set some baseline minimal inter-item vertical spacings\n//\n// Individual items can override this with their own margin. The\n// user of @layer here forces these rules to all have less precedence\n// than any rules not in a layer.\n// Most spacing should be done with margin-top.\n\n@layer spacing {\n // inter-item spacing high level containers\n :is(section, article, .knowl__content) > *:not(:first-child) {\n margin-top: 1.5em;\n }\n\n // but tighten up spacing slightly for adjacent paragraphs in a section\n :is(section, article, .knowl__content) > .para + .para {\n margin-top: 1em;\n }\n\n // lower-level container elements that are expected to contain sequences of items\n // tighter spacing here to avoid visually breaking up the minor container\n .ptx-content :is(ul, td, li, dd, .blockquote, .sbspanel, .para.logical) > *:not(:first-child) {\n margin-top: 0.5em;\n }\n}", "// Types of ol/ul - used by web and ebooks\n// Any spacing should be in _lists.scss, not here\n\nol.no-marker,\nul.no-marker,\nli.no-marker {\n list-style-type: none;\n}\n\nol.decimal {\n list-style-type: decimal;\n}\n\nol.lower-alpha {\n list-style-type: lower-alpha;\n}\n\n// Match LaTeX style for second level (i.e. level=\"1\") lists\nol.lower-alpha-level-1 > li::marker {\n content: \"(\"counter(list-item,lower-alpha)\") \";\n}\n\nol.upper-alpha {\n list-style-type: upper-alpha;\n}\n\nol.lower-roman {\n list-style-type: lower-roman;\n}\n\nol.upper-roman {\n list-style-type: upper-roman;\n}\n\nul.disc {\n list-style-type: disc;\n}\n\nul.square {\n list-style-type: square;\n}\n\nul.circle {\n list-style-type: circle;\n}\n", "/* dl is used for glossaries and descriptions lists.\n Glossaries are simple: bold word by itself on a line.\n Definition indented on the next line.\n Vertical space before the next term.\n\n Description lists are more complicated. The wider version\n (refering to the horizontal indentation of the definition;\n this is the default)\n has the (wrapped) term inline with the definition.\n\n The narrow version is complicated because the term is inline\n with its definition if it fits, otherwise it is on the line above.\n That means the vertical space between entries can't be handled by\n a top margin on the dt. Instead we have an ::after on the dd .\n */\n\ndl:is(.description-list, .glossary) {\n margin: 0;\n //overflow: hidden; // Removed to show permalinks\n\n dt {\n font-weight: bold;\n max-width: 55ex;\n }\n\n dd::after {\n content: \"\";\n display: block;\n clear: both;\n }\n}\n\n.para > dl:is(.description-list) {\n // add some space when inside a .para\n margin-top: 0.5em;\n margin-bottom: 0.5em;\n}\n\ndl.glossary {\n dt {\n margin-top: 1.25em;\n\n &:first-of-type {\n margin-top: 0;\n }\n }\n\n dd {\n margin-left: 5ex;\n }\n}\n\ndl.description-list {\n\n dt,\n dd {\n margin-top: 1em;\n\n &:first-of-type {\n margin-top: 0;\n }\n }\n\n dt {\n float: left;\n clear: both;\n text-align: right;\n width: 18ex;\n margin-right: 1ex;\n }\n\n dd {\n margin-left: 22ex;\n }\n\n &.narrow {\n dt {\n width: 11ex;\n }\n\n dd {\n margin-left: 15ex;\n }\n }\n\n &.wide {\n dt {\n width: 25ex;\n }\n\n dd {\n margin-left: 29ex;\n }\n }\n}\n\ndl.description-list dt:first-of-type {\n clear: none;\n}\n\n.description-list + * {\n clear: both;\n}\n\n/* where do we have nested dl? */\ndl.description-list dl dt {\n width: 8ex;\n}\n\ndl.description-list dd dd {\n margin-left: 18ex;\n}\n\ndl.description-list dl dd {\n margin-left: 12ex;\n}\n\n\n@media screen and (max-width: 480px) {\n dl.description-list dt {\n float: none;\n margin-left: 0;\n text-align: left;\n }\n\n dl.description-list dd,\n dl.description-list.narrow dd,\n dl.description-list.wide dd {\n margin-top: 0.5em;\n margin-left: 3em;\n max-width: calc(100% - 3em);\n }\n}\n", "// Entry point for ol/ul/dl web styling\n\n@use \"list-styles\";\n@use \"description-lists\";\n@use '../helpers/cols';\n\n// generate multi column rules for lists\n@include cols.allow-cols('li');\n\n// use .ptx-content to avoid styling lists in toc/header/etc...\n.ptx-content {\n ol,\n ul {\n\n ol,\n ul {\n // margin-top: 0.5em;\n }\n }\n\n li {\n margin-top: 0.5em;\n // margin-bottom: 0;\n\n // & > .para:first-child {\n // margin-top: 0;\n // }\n\n .li--heading-title {\n font-size: 100%;\n font-weight: normal;\n font-style: italic;\n }\n }\n} // .ptx-content\n\n.para > :is(ol, ul) {\n // add some space when inside a .para\n margin-top: 0.5em;\n margin-bottom: 0.5em;\n}\n\n// provide space for custom markers\nol > li {\n padding-left: 0.25em;\n}\n", "\n.fillin {\n display: inline-block;\n border: none;\n border-width: 1px;\n margin-right: 0.1em;\n margin-left: 0.1em;\n margin-bottom: -0.25em;\n\n &.underline {\n border-bottom-style: solid;\n border-width: 1px;\n }\n\n &.box {\n outline: 1px solid var(--body-text-color);\n height: 1.3em;\n }\n\n &.shade {\n background-color: var(--fillin-background-color, #eee);\n height: 1.3em;\n }\n}\n\n\n:root.dark-mode {\n --fillin-background-color: #444;\n}\n", "// headings for standard page elements - sections/articles/etc...\n// more specialized headings (exercises) should be defined in the specific component\n// complex stylizing (like boxes) should be done by \"chunks\"\n\n// reset size/margin for headings\n.heading:is(h1, h2, h3, h4, h5, h6) {\n margin: 0;\n font-size: unset;\n}\n\n.heading {\n line-height: 1.1;\n font-family: var(--font-headings);\n font-weight: 700;\n margin-top: 0;\n margin-bottom: 0;\n}\n\nsection > .heading {\n font-size: 1.75em;\n color: var(--body-title-color);\n line-height: 1.25em;\n margin-top: 2.5em;\n margin-bottom: 0.5em;\n\n // pull in any following items that default to a larger top margin\n & + * {\n margin-top: 0.5em;\n }\n}\n\n.ptx-content > section > .heading {\n //first heading on page\n margin-top: 0.5em;\n}\n\nsection section > .heading {\n font-size: 1.5em;\n margin-top: 2em;\n}\n\nsection section section > .heading {\n font-size: 1.40em;\n margin-top: 2em;\n}\n\n\narticle > .heading {\n font-size: 1.25em;\n margin-top: 1.5em;\n\n // pull in any following items that default to a larger top margin\n & + * {\n margin-top: 0.5em;\n }\n}\n\n.paragraphs > .heading {\n font-size: 1.125em;\n}\n\n// heading followed by no content and then a subsection that starts with heading\n:is(section, article) > .heading + :is(section, article) > .heading {\n margin-top: 0.5em;\n}\n\n// smaller headings on phone screens\n@media screen and (max-width: 480px) {\n section > .heading {\n font-size: 1.5em;\n line-height: 1.33em;\n margin-top: 1em;\n }\n section section > .heading {\n font-size: 1.3em;\n line-height: 1.15em;\n }\n section section section > .heading {\n font-size: 1.15em;\n line-height: 1em;\n }\n}\n\n.heading.hide-type > .type {\n display: none;\n}\n", "\n// Reset for all links\na {\n color: var(--link-text-color);\n text-decoration: none;\n\n &:hover,\n &:focus {\n text-decoration: none;\n }\n}\n\n\na[href^=\"mailto:\"] {\n white-space: pre;\n}\n\n\n// Body links. .ptx-content to avoid hitting navbar, toc, etc...\n.ptx-content {\n a.internal {\n color: var(--link-text-color);\n font-weight: bold;\n }\n a.external {\n color: var(--link-alt-text-color);\n font-weight: bold;\n }\n a.internal:hover, a.internal:hover *,\n a.internal:focus, a.internal:focus * {\n color: var(--link-active-text-color);\n background-color: var(--link-active-background);\n font-weight: bold;\n }\n a.external:hover, a.external:hover *,\n a.external:focus, a.external:focus * {\n color: var(--link-alt-active-text-color);\n background-color: var(--link-alt-active-background);\n font-weight: bold;\n }\n}\n", "// limit rules targeting basic elements to just content area\n.ptx-content {\n table {\n border-spacing: 0;\n border-collapse: collapse;\n }\n\n td {\n padding: 2px 5px;\n font-size: 90%;\n\n img {\n max-width: 200px;\n margin-right: 30px;\n }\n }\n\n th {\n padding: 2px 5px;\n }\n\n // generate alignment/border mixin classes for both th and td\n @each $cell-type in (th, td) {\n #{$cell-type} {\n .lines {\n white-space: nowrap;\n }\n\n // horizontal alignment options\n @each $class, $align in (l: left, c: center, r: right, j: justify) {\n &.#{$class} {\n text-align: $align;\n }\n }\n\n // vertical alignment options\n @each $class, $align in (t: top, b: bottom, m: middle) {\n &.#{$class} {\n vertical-align: $align;\n }\n }\n\n // border options\n @each $side, $side-symbol in (left: l, right: r, top: t, bottom: b) {\n @for $i from 0 through 3 {\n &.#{$side-symbol}#{$i} {\n @if $i ==0 {\n border-#{$side}: none;\n }\n\n @else {\n border-#{$side}: #{$i}px solid var(--body-text-color);\n }\n }\n }\n }\n }\n }\n\n\n // when cells do not have a border on left and right, add padding\n th.r0.l0,\n td.r0.l0 {\n padding-left: 0.8em;\n padding-right: 0.8em;\n }\n\n tr.header-vertical {\n th {\n writing-mode: vertical-rl;\n padding-left: 2em;\n }\n }\n\n .center {\n table {\n text-align: center;\n margin-left: auto;\n margin-right: auto;\n }\n }\n}\n\n// Rules with non-generic targeting\n\n.tabular-box {\n margin-top: 0.5em; //minimum space above to separate from figcaption\n overflow-x: auto;\n}\n\n.tabular-box.natural-width table {\n margin-left: auto;\n margin-right: auto;\n}\n\n// More specific types of tables\n\ntable.notation-list {\n tr {\n th {\n text-align: left;\n margin-left: 1em;\n }\n\n td {\n text-align: left;\n vertical-align: top;\n }\n }\n}\n\n\n\n", "// Styles for the items that are (at least generally) a part of the front matter\n// There are some pretty generic class names. Those get wrapped with a class\n// limiting their scope to the expected page\n\n.frontmatter {\n & > .heading {\n display: block;\n text-align: center;\n }\n\n & > .heading .title,\n .book > .heading .title {\n font-size: 1.3em;\n }\n\n & > .heading .subtitle,\n .book > .heading .subtitle {\n display: block;\n font-weight: normal;\n color: var(--byline-color);\n font-size: 0.875em;\n line-height: 1.42857em;\n margin-top: 0.35714em;\n }\n\n & > .para:first-of-type {\n margin-top: 4em;\n }\n\n & > .author,\n & > .credit {\n margin-top: 2em;\n text-align: center;\n }\n\n .author:first-of-type {\n margin-top: 4em;\n }\n\n & > .author .author-name {\n font-size: 120%;\n }\n\n .date {\n display: block;\n margin-top: 2em;\n text-align: center;\n }\n\n .credit .title {\n font-size: 1em;\n }\n\n .credit .author {\n font-size: 0.9em;\n margin-top: 0.75em;\n }\n\n .author-info {\n font-size: 90%;\n }\n\n .summary-links {\n margin-top: 4em;\n }\n\n .abstract {\n margin: 4em 2em;\n }\n\n .keywords, .support {\n margin-top: 2em;\n }\n\n .abstract, .keywords, .support {\n & > .title {\n font-size: 1.125em;\n font-weight: 600;\n line-height: 1.125em;\n display: inline;\n }\n\n & > .title::after {\n content: \".\\2009\\2009\\2009\";\n }\n\n & > .title + .para {\n display: inline;\n }\n }\n\n .colophon {\n .copyright {\n margin-top: 2.5em;\n }\n\n .license {\n margin-top: 2.5em;\n }\n }\n}\n", "\n/* Start of division toc links */\n// .ptx-content to override _links rules\n.ptx-content .summary-links {\n font-family: var(--font-headings);\n display: block;\n margin-top: 1em;\n\n a {\n color: var(--summary-link-text-color);\n background: var(--summary-link-background);\n font-size: 1.5em;\n line-height: 1.25em;\n padding: 10px 20px;\n padding-right: 60px;\n border-radius: 3px;\n position: relative;\n display: block;\n font-weight: unset;\n\n .title{\n font-style: normal;\n }\n\n .codenumber {\n margin-right: 0.41667em;\n }\n\n &::after {\n // triangles\n right: 0.83333em;\n content: \"\";\n position: absolute;\n top: 50%;\n margin-top: -0.4em;\n width: 0;\n height: 0;\n border-top: 0.4em solid transparent;\n border-bottom: 0.4em solid transparent;\n border-left: 0.4em solid var(--summary-link-text-color);\n }\n\n &:hover {\n color: var(--summary-link-hover-text-color);\n background: var(--summary-link-hover-background);\n\n // need to override work done in _links\n * {\n color: var(--summary-link-hover-text-color);\n background: var(--summary-link-hover-background);\n }\n .title {\n font-weight: normal;\n }\n\n &::after {\n border-left: 0.4em solid var(--summary-link-hover-text-color);\n } \n } \n }\n\n ul {\n list-style-type: none;\n padding: 0;\n margin-top: 0;\n }\n\n li {\n margin-top: 5px;\n }\n}\n\n@media screen and (width <= 480px) {\n .ptx-content .summary-links a {\n //shrink on mobile\n font-size: 100%;\n line-height: 1.25em;\n }\n}\n", "$border-radius: 0px !default;\n\n.ptx-footnote {\n display: inline-block;\n position: relative;\n}\n\n.ptx-footnote[open] {\n display: contents;\n}\n\n\n.ptx-footnote[open] .ptx-footnote__number::before {\n font-size: smaller;\n content: \"[x]\";\n visibility: visible;\n vertical-align: super;\n}\n\n.ptx-footnote[open] .ptx-footnote__number sup {\n display: none;\n}\n\n.ptx-footnote__number {\n display: inline-block;\n cursor: pointer;\n min-width: 1em; //hopefully enough space...\n}\n\n.ptx-footnote__number::marker {\n content: \"\";\n}\n\n.ptx-footnote__contents {\n display: block;\n font-style: italic;\n background: var(--knowl-background);\n border-radius: $border-radius;\n padding: 8px;\n margin: 4px auto;\n width: fit-content;\n max-width: calc(100% - 60px);\n border: 2px solid var(--knowl-border-color);\n //reset color/weight/size in case used in block that changed them\n // e.g. theorem title in denver\n color: var(--body-text-color);\n font-weight: normal;\n font-size: var(1rem);\n}\n", "\n\n/* the index at the back of the book */\n// TODO - refactor\n\n\n.navbar .indexnav {\n position: absolute;\n top: 46px;\n right: 0;\n}\n\n.mininav {\n float: left;\n padding-top: 0.7ex;\n padding-left: 1ex;\n}\n\n\n.indexjump {\n margin-left: 1.5ex;\n margin-top: 0.2ex;\n padding-top: 0;\n float: left;\n line-height: 0.95;\n}\n\n.indexjump a {\n padding-left: 2.5px;\n padding-right: 0.5px;\n width: 2.5ex;\n/*\n* * omitted, because we put a space in the source\n* padding-right: 3px;\n* */\n margin-right: -1px;\n color: inherit;\n font-size: 80%;\n text-align: center;\n}\n.indexjump a::after{\n content: \"\";\n display: inline-block;\n}\n.indexjump a:nth-of-type(14){\n padding-left: 1.8ex;\n}\n.indexjump a:last-child {\n padding-right: 10px;\n}\n\n.indexjump a:hover {\n background: var(--activated-content-bg);\n}\n\n.indexitem {\n margin-top: 4px;\n}\n\n.subindexitem {\n margin-left: 2em;\n font-size: 95%;\n margin-top: -1px;\n}\n\n.subsubindexitem {\n margin-left: 3.5em;\n font-size: 95%;\n margin-top: -1px;\n}\n\n.indexknowl {\n margin-left: 0.11em;\n}\nem + .indexknowl {\n margin-left: -0.25em;\n}\n.indexknowl a {\n margin-left: 2em;\n}\n\n.indexitem .see,\n.subindexitem .see,\n.subsubindexitem .see {\n margin-left: 1em;\n margin-right: 0;\n}\n.indexitem .seealso,\n.subindexitem .seealso,\n.subsubindexitem .seealso {\n margin-left: 1em;\n margin-right: 0;\n}\n.indexitem .see em,\n.subindexitem .see em,\n.subsubindexitem .see em,\n.indexitem .seealso em,\n.subindexitem .seealso em,\n.subsubindexitem .seealso em {\n margin-right: 0.25em;\n font-style: italic;\n}\n/* note that multiple things after \"see\" are in separate spans */\n.indexitem .see + .see,\n.subindexitem .see + .see,\n.subsubindexitem .see + .see,\n.indexitem .seealso + .seealso,\n.subindexitem .seealso + .seealso,\n.subsubindexitem .seealso + .seealso {\n margin-left: 0;\n margin-right: 0;\n}\n\n.indexitem .indexknowl {\n font-size: 90%;\n}\n\n.indexitem [data-knowl], .subindexitem [data-knowl], .indexitem [data-knowl]:hover {\n padding-right: 2px;\n padding-left: 2px;\n}\n.indexknowl [data-knowl]:hover, .indexknowl .active[data-knowl] {\n margin-left: 2em;\n}\n\n.subindexitem .indexknowl {\n font-size: 95%;\n}\n.subsubindexitem .indexknowl {\n font-size: 95%;\n}\n\n.indexletter {\n margin-top: 1.5em;\n}\n", "// ---------------------------------------------\n// containers for images, audio, video, and asymptote\n.image-box,\n.audio-box,\n.video-box,\n.asymptote-box {\n position: relative;\n}\n\n.image-box .asymptote-box iframe.asymptote,\niframe.asymptote,\n.video-box .video,\n.video-box .video-poster {\n position: absolute; top: 0; left: 0; width: 100%; height: 100%;\n}\n\n// images in containers should grow to fit space\n.image-box img,\nimg.contained {\n width: 100%;\n}\n\n// ---------------------------------------------\n// images\n.ptx-content img, .ptx-content svg {\n // for body images in dark mode, we want to be able to force a light colored background\n // as most transparent images will assume that the background is white\n background: var(--ptx-image-bg);\n}\n// but mermaid svg should always have a transparent background\n.mermaid > svg {\n background: none;\n}\n\n.image-description {\n summary {\n list-style: none; // no marker\n cursor: pointer;\n }\n}\n\n// download links after an image\n.image-archive {\n margin: 0.75em auto 0;\n font-family: var(--font-monospace);\n justify-content: center;\n display: flex;\n gap: 0.5em;\n}\n\n// TODO - refactor mag_popup JS and CSS\n// was .ptx-content .image-box > img:not(.draw_on_me):not(.mag_popup)\n.image-box > img:not(.mag_popup) {\n cursor: zoom-in;\n}\n\nimg.mag_popup {\n border: 1px solid #666;\n box-shadow: 4px 6px 4px #999;\n cursor: zoom-out;\n}\n\n.mag_popup_container {\n width:100%;\n position:absolute;\n z-index:1001;\n overflow-x: visible;\n}\n\n// ---------------------------------------------\n// other\n.audio {\n width: 100%;\n}\n\n.video-poster {\n cursor: pointer;\n}\n", "figure {\n clear: both;\n position: relative;\n\n // override browser margins\n margin-left: 0;\n margin-right: 0;\n}\n\nfigcaption {\n margin-left: auto;\n margin-right: auto;\n margin-top: 0.5em;\n\n code.code-inline {\n white-space: pre;\n }\n \n .codenumber,\n .type {\n font-weight: 700;\n }\n\n // add n-dashes\n .codenumber::after,\n .type:last-of-type::after {\n content: \"\\2002\";\n }\n\n // make sure first para comes right after title\n .para:first-of-type {\n display: inline;\n }\n}\n\n// tables are inset\nfigure.table-like {\n margin-left: 30px;\n margin-right: 30px;\n\n // but lists can go full right\n .list {\n margin-right: 0;\n }\n}\n\n@media (max-width <= 943px){\n .figure-like {\n overflow-x: auto;\n }\n}\n", "/* style for poems */\n.poem {\n display: table;\n margin: 0 auto;\n width: auto;\n max-width: 90%;\n}\n\n.poem > .heading {\n display: block;\n text-align: center;\n}\n\nsection article.poem > .heading::after {\n content: \"\";\n}\n\n.poem > .heading > .title {\n font-weight: bold;\n font-size: 1.2em;\n line-height: 1.2em;\n}\n\n.poem .author {\n font-style: italic;\n margin-top: 0.75em;\n}\n\n.poem .author.left {\n text-align: left;\n}\n\n.poem .author.center {\n text-align: center;\n}\n\n.poem .author.right {\n text-align: right;\n}\n\n.poem .stanza > .heading {\n text-align: center;\n font-weight: bold;\n font-size: 1em;\n line-height: 1em;\n}\n\n.poem .stanza + .stanza {\n margin-top: 1em;\n}\n\n.poem .heading + .stanza {\n margin-top: 0.2em;\n}\n\n.poem .heading + .line {\n margin-top: 0.2em;\n}\n\n.poem .line.left {\n text-align: left;\n margin-left: 4em;\n text-indent: -4em;\n}\n\n.poem .line.center {\n text-align: center;\n}\n\n.poem .line.right {\n text-align: right;\n}\n\n.poem .tab {\n margin-left: 2em;\n}\n", "@use '../chunks/codelike';\n\n// Prism stylesheets built locally as default ones don't support light/dark switching\n// this is a merged version of the default and dark themes\n\n// Default prism styling\n// Blocks\npre[class*=\"language-\"] {\n margin: 0;\n overflow: auto;\n border: 1px solid #e1e1e1;\n}\n\n// Inline code\n:not(pre) > code[class*=\"language-\"] {\n padding: .1em;\n border-radius: .3em;\n white-space: normal;\n}\n\ncode[class*=\"language-\"],\npre[class*=\"language-\"] {\n color: black;\n background: #fdfdfd;\n text-shadow: none;\n font-family: var(--font-monospace);\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n word-wrap: normal;\n line-height: 1.2;\n tab-size: 4;\n hyphens: none;\n\n &.code-inline {\n // unclobber some inline code styles\n @include codelike.code-inline-spacing();\n }\n\n &::selection,\n & ::selection {\n background: #b3d4fc;\n }\n\n .token {\n \n &:is(.comment,\n .prolog,\n .doctype,\n .cdata) {\n color: #2a9716;\n }\n \n &.punctuation {\n color: #000;\n }\n \n &.namespace {\n opacity: .9;\n }\n \n &:is(.property,\n .tag,\n .boolean,\n .number,\n .constant,\n .symbol,\n .deleted) {\n color: rgb(41, 120, 15);\n }\n \n &:is(.selector,\n .attr-name,\n .string,\n .char,\n .builtin,\n .regex,\n .inserted) {\n color: #a11;\n }\n \n &:is(.operator,\n .entity,\n .url) {\n color: #000;\n background: none;\n }\n \n &:is(.atrule,\n .attr-value,\n .keyword) {\n color: #0679B7;\n }\n \n &.function,\n &.class-name {\n color: #30a;\n }\n \n &.important,\n &.variable {\n color: rgb(0, 0, 0);\n }\n \n \n &.important,\n &.bold {\n font-weight: bold;\n }\n \n &.italic {\n font-style: italic;\n }\n \n &.entity {\n cursor: help;\n }\n }\n \n // -------------------------------------------\n // Line numbers\n &.line-numbers {\n position: relative;\n padding-left: 3.8em;\n counter-reset: linenumber;\n overflow: auto;\n \n > code {\n position: relative;\n white-space: inherit\n }\n \n .line-numbers-rows {\n position: absolute;\n pointer-events: none;\n top: 0;\n font-size: 100%;\n left: -3.8em;\n width: 3em;\n letter-spacing: -1px;\n border-right: 1px solid #999;\n user-select: none\n }\n \n .line-numbers-rows > span {\n display: block;\n counter-increment: linenumber\n }\n \n .line-numbers-rows > span::before {\n content: counter(linenumber);\n color: #999;\n display: block;\n padding-right: .8em;\n text-align: right\n }\n }\n \n \n // -------------------------------------------\n // Line highlighting\n .line-highlight {\n position: absolute;\n margin-top: 4px; // tune to match padding of containing pre\n left: 0;\n right: 0;\n padding: inherit 0;\n font-size: inherit;\n background: hsla(24, 20%, 50%, 8%);\n pointer-events: none;\n line-height: inherit;\n white-space: pre\n }\n}\n\n// -------------------------------------------\n// Dark mode\n:root.dark-mode {\n \n /* Code blocks */\n pre[class*=\"language-\"] {\n border: 1px solid #3d3d3d;\n }\n \n \n // Darker styling to match Runesone's code mirror theme\n code[class*=\"language-\"],\n pre[class*=\"language-\"] {\n color: white;\n background: hsl(0, 0%, 8%);\n \n &::selection,\n & ::selection {\n background: hsl(200, 4%, 16%);\n }\n \n /* Make the tokens sit above the line highlight so the colours don't look faded. */\n .token {\n position: relative;\n z-index: 1;\n \n &:is(.comment,\n .prolog,\n .doctype,\n .cdata) {\n color: #68a950;\n }\n \n &.punctuation {\n color: white;\n opacity: 1;\n }\n \n &.namespace {\n opacity: .9;\n }\n \n &:is(.property,\n .tag,\n .boolean,\n .number,\n .constant,\n .symbol,\n .deleted) {\n color: #abc792;\n }\n \n &:is(.selector,\n .attr-name,\n .string,\n .char,\n .builtin,\n .regex,\n .inserted) {\n color: #ca9147;\n }\n \n &:is(.operator,\n .entity,\n .url) {\n color: white;\n }\n \n &:is(.atrule,\n .attr-value,\n .keyword) {\n color: #2d94fb;\n }\n \n &.function,\n &.class-name {\n color: #e3e1c2;\n }\n \n &.important,\n &.bold {\n font-weight: bold;\n }\n \n &.italic {\n font-style: italic;\n }\n \n &.entity {\n cursor: help;\n }\n \n }\n }\n \n .line-highlight {\n background: hsla(0, 0%, 33%, 10%);\n border-bottom: 1px dashed hsl(0, 0%, 33%);\n border-top: 1px dashed hsl(0, 0%, 33%);\n z-index: 0;\n }\n}\n\n@media print {\n code[class*=\"language-\"],\n pre[class*=\"language-\"] {\n .line-highlight {\n color-adjust: exact\n }\n }\n}\n", "// TODO - refactor\n\n.displaymath {\n overflow-x: auto;\n overflow-y: hidden;\n}\n\n.displaymath mjx-container[jax=\"CHTML\"][display=\"true\"] {\n margin: 0 0 0 0; // container is going to apply margin, so remove it from mjx-container\n padding-top: 2px; // Chrome sometimes clips the top 1-2 pixels of math after it has been scaled - provide room for that content\n}\n\n.process-math mjx-container svg {\n // remove the background that is normally applied to svg's by PreTeXt CSS\n // we use .process-math instead of .displaymath to get inline math as well.\n background: none;\n}\n\n// ?\n[data-knowl] > mjx-mrow .TEX-I {\n font-family: MJXZERO !important;\n font-style: normal !important;\n}\n\n/* remove this when MathJax fixes the bug that was setting the width to 0 */\n/* as in $x=0$. becomes $x=0\\text{.}$ */\n.knowl mjx-mtext > mjx-utext,\nmjx-mtext > mjx-utext {\n width: revert !important;\n}\nmjx-msup mjx-utext,\nmjx-msub mjx-utext {\n display: inline;\n}\n", "// TODO - refactor\n$opacity: 0.0 !default;\n\n/*\nSo that we can position things (like .autopermalink) absolutely wrt these items.\nAny element whose permalink should be positioned directly to the left of it\nshould be in this list.\n*/\nsection,\narticle,\nli,\nblockquote,\nfigcaption,\ndt,\n.exercisegroup,\n.discussion-like,\n.solution-like,\n.para {\n position: relative;\n}\n\n.autopermalink {\n position: absolute;\n display: inline-block;\n top: 0.5ex;\n left: -2em;\n font-size: 85%;\n // variable allows theme to set different opacities for dark/light\n opacity: var(--permalink-opacity, $opacity);\n transition: opacity 0.2s;\n margin-top: 0 !important;\n}\n\nli > .autopermalink {\n left: -3.5em;\n}\n\n.autopermalink > * {\n padding-left: 0.2em;\n padding-right: 0.2em;\n}\n\n\n// Move permalink for division titles etc a little bit lower\n.appendix > .autopermalink,\n.chapter > .autopermalink,\n.index > .autopermalink,\n.section > .autopermalink,\n.subsection > .autopermalink,\n.references > .autopermalink,\n.exercises > .autopermalink {\n top: 1.5ex;\n}\n\n// In some styles, the autopermalink for paras land right on the border line.\n// This is an attempt to fix that. TODO: find a more robust solution, maybe\n// using a variable for the left offset of paras inside blocks.\n.assemblage-like > .para > .autopermalink,\n.example-like > .para > .autopermalink,\n.example-like > .exercise-like > .autopermalink,\n.project-like > .para > .autopermalink,\n.project-like > .exercise-like > .autopermalink,\n.project-like > .exercise-like > .introduction > .para > .autopermalink,\n.project-like > .exercise-like > .conclusion > .para > .autopermalink,\n.remark-like > .para > .autopermalink {\n left: -2.9em;\n}\n\n\n.axiom-like, .example-like, .exercise-like, .solution-like, .assemblage-like, .definition-like, .remark-like, .project-like, .openproblem-like, .computation-like, .theorem-like, .proof, .case, li, dd {\n > .para:first-of-type > .autopermalink {\n display:none;\n }\n\n > .introduction > .para:first-of-type > .autopermalink {\n display:none;\n }\n}\n\n\n// Hover effects\n\n.ptx-content:has(.autopermalink:hover) .autopermalink {\n opacity: 0.2;\n}\n\n.ptx-content:has(.autopermalink:hover) .autopermalink:hover {\n opacity: 1;\n}\n\n.autopermalink:has(a:focus-visible) {\n opacity: 1;\n}\n\n.permalink-alert {\n position: absolute;\n top: -3em;\n left: 5em;\n padding: 1.5em 2em;\n background: var(--content-background);\n border: 3px solid var(--page-border-color);\n z-index: 2001;\n}\n\n\n/* when jumping to a permalink, push down so sticky navbar does not cover */\n:target {\n scroll-margin-top: 45px;\n // the \"pink flash\" when navigating to a target\n animation: target-fade 10s 1;\n}\n\n@keyframes target-fade {\n 0% { background-color: var(--activated-content-bg) }\n 100% {\n background-color: inherit;\n opacity: 1;\n }\n}\n", "\n// Miscellaneous stylized content blocks that are not complex enough\n// to warrant their own file\n\nem.alert {\n font-weight: bold;\n}\n\n.bib {\n margin-top: 0.25em;\n\n .bibitem {\n display: inline-block;\n vertical-align: top;\n width: 7%;\n margin-right: 0;\n }\n \n .bibitem + .bibentry {\n display: inline-block;\n width: 90%;\n margin-top: 0;\n }\n}\n\n\n\n.caption {\n margin-top: 10px;\n margin-left: auto;\n margin-right: auto;\n font-size: 100%;\n text-align: center;\n}\n\n\n.contributor {\n margin-top: 1.5ex;\n\n &:first-child {\n margin-top: 0em;\n }\n\n & + .para {\n margin-top: 3ex;\n }\n\n .contributor-name {\n font-variant: small-caps;\n }\n\n .contributor-info {\n font-size: 88%;\n font-style: italic;\n margin-left: 3ex;\n }\n}\n\n\n// Icon font settings\n.material-symbols-outlined {\n font-variation-settings:\n 'FILL' 0,\n 'wght' 400,\n 'GRAD' 0,\n 'opsz' 24\n}\n\n\niframe {\n margin: 0;\n border: none;\n}\n\n\n.kbdkey {\n background: #f1f1f1;\n color: #333;\n border: 1px solid #dddddd;\n border-radius: 3px;\n padding: 1px 2px 0 2px;\n vertical-align: 0.1em;\n font-size: 110%;\n line-height: 1;\n box-shadow: 2px 2px grey;\n display: inline-block;\n margin-right: 3px;\n}\n\n\n.unit,\n.quantity {\n white-space: nowrap;\n word-spacing: -0.25ex;\n margin-right: 0.125em;\n\n sub, sup {\n word-spacing: normal;\n }\n}\n\n\n.terminology {\n font-style: italic;\n font-weight: bold;\n}\n\n\n\n.times-sign {\n font-size: larger;\n vertical-align: -0.15ex;\n}\n\n\n.emphasis {\n font-style: italic;\n\n .emphasis {\n font-weight: bold;\n }\n}\n\n.definition-like .emphasis {\n font-weight: 700;\n}\narticle.theorem-like .emphasis {\n font-weight: 700;\n}\n\n.para {\n line-height: 1.35;\n}\n\n.hidden {\n display: none !important;\n}\n\n/* genus and species in italics */\n.taxon {\n font-style: italic;\n}\n\n.quote {\n padding-left: 40px;\n padding-right: 10px;\n margin-bottom: 1em;\n}\n\n.booktitle {\n font-style: oblique;\n}\n\n/* Adapted from William Hammond (attributed to David Carlisle) */\n/* \"mathjax-users\" Google Group, 2015-12-27 */\n\n.latex-logo {font-family: \"PT Serif\", \"Times New Roman\", Times, serif;}\n\n.latex-logo .A {font-size: 75%; text-transform: uppercase; vertical-align: .5ex;\n margin-left: -.48em; margin-right: -.2em;}\n\n.latex-logo .E {vertical-align:-.5ex; text-transform: uppercase;\n margin-left: -.18em; margin-right: -.12em; }\n", "// Basic rules for printing a standard PreTeXt page\n\n// Get rid of UI elements.\n// Leave margin fiddling for system print dialog.\n\n// Worksheet and handout printing is handled in print-worksheet.scss\n\n@media print {\n .pretext .ptx-masthead,\n .pretext .ptx-navbar,\n body.pretext > a.assistive,\n .pretext .ptx-page > .ptx-sidebar,\n .pretext .ptx-page-footer,\n .pretext .ptx-main > div.ptx-content-footer {\n display:none;\n }\n\n .ptx-page, .ptx-main, .ptx-main .ptx-content {\n all: unset !important;\n width: 100%;\n border: none;\n padding: 0;\n margin: 0;\n }\n\n .ptx-sagecell, .tabular, .table-like, .figure-like, .exercise-like {\n break-inside: avoid;\n }\n\n .heading {\n break-after: avoid;\n }\n\n .code-inline {\n border: unset;\n background: unset;\n }\n\n @page {\n margin: 0.75in 0.75in 0.75in 0.75in;\n }\n}\n", "// TODO refactor\n\n// Rules in this file apply to both screen and print\n// Print specific rules should go in a file in targets/print-worksheet stylesheet\n@use 'components/helpers/buttons-default' as buttons;\n\n.heading .print-links {\n float: right;\n vertical-align: bottom;\n .print-link {\n font-family: var(--font-body);\n padding: 0.1em 0.2em;\n }\n .material-symbols-outlined {\n margin-top:5pt;\n }\n}\n\n", "// TODO - refactor\n// Make conditional on use of google search???\n\n.pretext .searchwrapper {\n max-width: 900px;\n position: absolute;\n right: 0;\n bottom: 0;\n margin-bottom: 39px;\n}\n\n.pretext .searchwrapper .cse .gsc-control-cse,\n.pretext .searchwrapper .cse .gsc-control-cse input,\n.searchwrapper .gsc-control-cse {\n padding: 5px;\n}\n\n// .pretext .searchwrapper .cse .gsc-search-button input.gsc-search-button-v2,\n// .searchwrapper input.gsc-search-button-v2 {\n// padding: 2px 2px;\n// }\n\n// .pretext .searchwrapper form.gsc-search-box {\n// margin: 0;\n// }\n\n// .pretext .searchwrapper table.gsc-search-box {\n// margin: 0;\n// }\n\n// .pretext .searchwrapper .gsc-search-box-tools .gsc-search-box .gsc-input {\n// padding: 0;\n// }\n\n// .pretext .searchwrapper .gsib_a {\n// padding: 0 0 0 5px;\n// }\n\n// .pretext .searchwrapper .gsc-input-box {\n// height: 3.0ex;\n// }\n\n// .pretext .searchwrapper form.gsc-search-box {\n// font-size: 12px;\n// }\n", "\n@use 'components/helpers/buttons-default' as buttons;\n\n.searchbox {\n\n .searchwidget {\n height: 100%;\n }\n \n .searchresultsplaceholder {\n position: fixed;\n top: 5vh;\n bottom: 5vh;\n padding: 1em;\n left: max(10vw, calc(100vw - 800px) / 2);\n width: 80vw;\n max-width: 800px;\n border: 2px solid var(--body-text-color);\n background: var(--knowl-background, #eaf0f6);\n z-index: 5000;\n display: flex;\n flex-direction: column;\n }\n\n .searchresultsplaceholder article {\n width: 60%;\n margin-left: auto;\n margin-right: auto;\n font-family: sans-serif;\n }\n\n .search-results-controls {\n display: flex;\n justify-content: space-between;\n align-items: stretch;\n gap: 10px;\n margin-bottom: 1em;\n height: 35px;\n }\n\n .ptxsearch {\n flex: 1 1;\n }\n \n\n .closesearchresults {\n @include buttons.ptx-button;\n }\n\n .detailed_result {\n margin-bottom: 10px;\n }\n\n .searchresults a:hover {\n text-decoration: underline;\n background: var(--link-active-background);\n }\n\n\n .searchresults {\n padding-left: 10px;\n margin-top: 0;\n overflow-y: auto;\n flex: 1 1;\n background: var(--content-background, white);\n border: 1px solid var(--page-border-color, #ccc);\n }\n\n .searchresults:empty {\n display: none;\n }\n \n .search-result-bullet {\n list-style-type: none;\n }\n\n .search-result-score {\n display: none;\n }\n\n //result qualities\n .no_result {\n font-size: 90%;\n font-weight: 200;\n }\n\n .low_result {\n font-weight: 200;\n }\n\n .medium_result {\n font-weight: 500;\n }\n .high_result {\n font-weight: 700;\n }\n\n .searchempty {\n display: none;\n padding-left: 10px;\n padding-top: 5px;\n }\n\n .search-results-unshown-count {\n margin-top: 0.6em;\n }\n\n .search-result-clip-highlight {\n background: var(--searchresultshighlight);\n }\n\n .searchresultsbackground {\n position: fixed;\n top: 0;\n background: var(--searchresultsbackground, white);\n width: 100vw;\n height: 100%;\n left: 0;\n z-index: 4999;\n }\n\n @media screen and (max-width: 800px) {\n .searchresultsplaceholder {\n bottom: 10vh;\n }\n }\n}\n\n:root {\n --searchresultsbackground: #fff8;\n --searchresultshighlight: rgba(255, 255, 0, 50%);\n}\n\n:root.dark-mode {\n --searchresultsbackground: #0008;\n --searchresultshighlight: rgba(255, 255, 0, 15%);\n}\n", "// extra specific to override Runestone margin\n.ptx-content .ptx-runestone-container .runestone {\n margin: unset;\n border-radius: 0;\n border-width: 1px;\n}\n\n// avoid label splitting into multiple lines\n.multiplechoice_section label > .para {\n display: inline;\n}\n\n// extra specific to override Runestone margin\n.ptx-content .ptx-runestone-container .ac_question { \n max-width: var(--base-content-width);\n margin: 0 auto 10px;\n}\n\n.runestone .runestone_caption {\n // caption is always just something like \"ActiveCode\" in PTX\n display: none;\n}\n\n\n/* to undo Runestone's draganddrop.css */\n.ptx-content .ptx-runestone-container .rsdraggable {\n font-size: 100%;\n}\n\n// Unsure if still needed\n/* hack for runestone */\n/* to undo Runestone's presentermode.css */\n.ptx-content .bottom {\n position: unset;\n}\n\n// override Runestone's pre formatting with these extra specific rules\n.ptx-runestone-container .runestone code,\n.ptx-runestone-container .runestone pre {\n font-size: .93rem;\n line-height: 1.2;\n font-family: var(--font-monospace);\n}\n\n// override Runestone's pre formatting with these extra specific rules\n.ptx-runestone-container code[class*=\"language-\"],\n.ptx-runestone-container pre[class*=\"language-\"] {\n color: black;\n background: #fdfdfd;\n}\n\n//Fixup datafile captions\n.runestone.datafile {\n .datafile_caption {\n background: var(--code-inline-background);\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n display: block;\n width: fit-content;\n margin: 0 auto;\n }\n img {\n margin: 0 auto;\n display: block;\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n }\n pre, textarea {\n margin: 0 auto;\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n background-color: var(--page-color);\n }\n}\n.runestone.datafile + .program {\n margin-top: 0;\n}\n\n// RS does not care what kind of element is used\n// PTX chooses to use a ul, so we will fix margins for it here instead of RS\nul[data-component=\"timedAssessment\"] {\n margin: 0;\n padding: 0;\n}\n\n:root.dark-mode {\n // Darker styling to match Runesone's code mirror theme\n .ptx-runestone-container code[class*=\"language-\"],\n .ptx-runestone-container pre[class*=\"language-\"] {\n color: white;\n background: hsl(0, 0%, 8%);\n }\n}\n", "// TODO - needs refactoring and dark mode update\n\n@use 'components/helpers/buttons-default' as buttons;\n\n/* WW problems */\n.ptx-content .wwprob table.attemptResults {\n margin-left: 2em;\n background: #efefef;\n padding: 0.2em;\n}\n\n.ptx-content .wwprob table.attemptResults + .attemptResultsSummary {\n margin-top: 1em;\n}\n\n.ptx-content .wwprob .problem-main-form {\n margin-top: 1em;\n background: #eeeeff;\n padding: 0.5em;\n}\n\n.ptx-content .wwprob td.ResultsWithoutError {\n background: #9f9;\n}\n\n.ptx-content .wwprob td.ResultsWithError {\n background: #f99;\n}\n\n.ptx-content .wwprob tr th {\n text-align: center;\n padding: 0.2em 1em 0.2em 1em;\n}\n\n.ptx-content .wwprob tr td {\n text-align: center;\n}\n\n.ptx-content .wwprob tr td:empty {\n background: #fff;\n}\n\n.ptx-content .wwprob ol,\n.ptx-content .wwprob ul {\n margin-top: 0.75em !important;\n}\n\n.ptx-content .wwprob .problem {\n background: #fdfdfd;\n}\n\n.ptx-content .wwprob .problem a {\n text-decoration: none;\n}\n\n.ptx-content .wwprob #footer {\n font-size: 70%;\n text-align: right;\n}\n\n/* interactive WeBWorK */\n\nlabel.webwork {\n display: inline-flex;\n flex-direction: column;\n}\n\nlabel.correct .status {\n background-color: #a0f0a0;\n}\n\nlabel.partly-correct .status {\n color: #ffcc66;\n}\n\nlabel.incorrect .status {\n color: #b00;\n}\n\nlabel.incorrect .status::before {\n content: \" \";\n}\n\nlabel.feedback {\n word-wrap: break-word;\n}\n\nlabel.correct .feedback {\n background-color: #00ffcc;\n}\n\nlabel.partly-correct .feedback {\n color: #ffcc66;\n}\n\nlabel.incorrect .feedback {\n color: #e07070;\n}\n\n.webwork img,\n.webwork + .knowl-output img {\n max-width: 100%;\n}\n\n// Make the default margin for items inside the exercise-wrapper similar to\n// default for items in a section\n.exercise-wrapper > *:not(:first-child) {\n margin-top: 1.5em;\n}\n\n.ptx-content .problem-buttons {\n display: flex;\n}\n\n.ptx-content .webwork-button {\n @include buttons.ptx-button;\n}\n\n//.hidden-content used to be used for knowls and got repurposed for hiding webwork contents\n// now just used by webwork\n.problem-buttons.hidden-content,\n.problem-contents.hidden-content {\n display: none;\n}\n", "// TODO - refactor\n\n.sagecell_sessionOutput pre {\n font-family: var(--font-monospace);\n}\n\n.sagecell {\n white-space: normal;\n margin-top: 1.25em;\n margin-bottom: 1.25em;\n}\n\n.sage-interact.sagecell {\n margin: 0;\n}\n\n.sagecell_evalButton {\n font-family: var(--font-body);\n font-size: 16px;\n padding: 0 0.65em;\n}\n\n.sagecell_evalButton {\n cursor: pointer;\n display: inline-block;\n vertical-align: middle;\n /* Disable accidental text-selection */\n user-select: none;\n /* Truncate overflowing text with ellipsis */\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n border-width: 1px;\n border-style: solid;\n font-weight: bold;\n border-radius: 3px;\n}\n\n.sagecell_evalButton {\n color: #383838;\n background-image: linear-gradient(#f7f7f7, #bbbbbb);\n border-color: #c4c4c4;\n}\n\n.sagecell_evalButton:hover {\n color: #181868;\n background-image: linear-gradient(#bbbbbb, #f7f7f7);\n}\n\n.sagecell_evalButton:focus,\n.sagecell_evalButton:active {\n color: #20160b;\n background-image: linear-gradient(#ff6852, #ffd7d1);\n border-color: #ff2822;\n}\n\n.sagecell .sagecell_editor {\n margin-bottom: 8px;\n}\n\n.sageanswer {\n font-family: monospace;\n white-space: pre;\n margin-left: 3em;\n margin-bottom: 2em;\n}\n\n.sageanswer .key {\n display: inline-block;\n vertical-align: top;\n margin-right: 1em;\n}\n\n.sageanswer .output {\n display: inline-block;\n vertical-align: top;\n}\n", "// GeoGebra calculator\n\n$navbar-breakpoint: 856px !default;\n\n.calculator-container {\n position: fixed;\n z-index: 100;\n bottom: 5px;\n right: 5px;\n width: 253px;\n height: 460px;\n}\n\n@media screen and (max-width: $navbar-breakpoint) {\n .calculator-container {\n //assumes navbar moves to bottom of screen\n bottom: 50px !important;\n }\n}\n", "/*\n Master list of color variables and default values.\n Variables are defined in SCSS to allow for calculation of values. They are\n then converted to CSS variables for use in the HTML so authors can, if\n need be, override them with custom CSS.\n\n Any new variable should be added to this file and either defined to another\n variable or given a reasonable default value for the red-blue default theme.\n\n Variables should be semantic, not descriptive\n i.e. --link-color, not --pretty-blue\n*/\n\n@use \"sass:map\";\n\n// ==============================================================================\n// Light theme\n\n// ==============================================================================\n// Page structures\n\n$colors: (\n // Background of page (gutters if any)\n \"page-color\": white,\n // Background of content area\n \"content-background\": white,\n // Border around content area - also possibly used for internal borders\n \"page-border-color\": #ccc,\n\n // ------------------------------------------------------------------------------\n // Banner/nav related\n\n \"doc-title-color\": #932919,\n \"byline-color\": #333,\n \"banner-background\": #fafafa,\n \"navbar-background\": #ededed,\n \"footer-background\": var(--banner-background),\n\n // ------------------------------------------------------------------------------\n // TOC related\n\n \"toc-border-color\": #666,\n \"toc-background\": var(--content-background),\n\n \"tocitem-background\": var(--toc-background),\n \"toc-text-color\": var(--body-text-color),\n\n // highlight styles are used for hover\n \"tocitem-highlight-background\": #671d12,\n \"tocitem-highlight-text-color\": white,\n \"tocitem-highlight-border-color\": var(--toc-border-color),\n \n // active styles are used for the current toc item\n \"tocitem-active-background\": #671d12,\n \"tocitem-active-text-color\": white,\n \"tocitem-active-border-color\": var(--toc-border-color),\n\n // level based colors for TOC\n // levels are not necessarily all used\n // see the toc-basics.scss for how these are determined\n \"toclevel1-background\": var(--content-background),\n \"toclevel1-text-color\": var(--toc-text-color),\n \"toclevel2-background\": var(--content-background),\n \"toclevel2-text-color\": var(--toc-text-color),\n \"toclevel3-background\": var(--content-background),\n \"toclevel3-text-color\": var(--toc-text-color),\n\n\n // ==============================================================================\n // Content\n // ==============================================================================\n\n // ------------------------------------------------------------------------------\n // Text & titles\n\n \"body-text-color\": #000,\n \"body-title-color\": #000,\n\n \"ptx-image-bg\": transparent,\n \"activated-content-bg\": rgba(241, 185, 255, 30%),\n\n \"summary-link-background\": var(--button-background),\n \"summary-link-text-color\": var(--button-text-color),\n \"summary-link-hover-background\": var(--button-hover-background),\n \"summary-link-hover-text-color\": var(--button-hover-text-color),\n\n // ------------------------------------------------------------------------------\n // Links & knowls\n\n \"link-text-color\": #2B5F82,\n \"link-background\": transparent,\n \"link-active-text-color\": var(--link-text-color),\n \"link-active-background\": #cad2e1,\n\n \"link-alt-text-color\": #A62E1C,\n \"link-alt-background\": transparent,\n \"link-alt-active-text-color\": var(--link-alt-text-color),\n \"link-alt-active-background\": #e3d1ce,\n\n \"knowl-link-color\": var(--link-text-color),\n \"knowl-background\": #f5f8ff,\n \"knowl-border-color\": #e0e9ff,\n \"knowl-nested-1-background\": #f5f5ff,\n \"knowl-nested-2-background\": #fffff5,\n \"knowl-nested-3-background\": #f5ffff,\n \"knowl-nested-4-background\": #fff5f5,\n\n // ------------------------------------------------------------------------------\n // Blocks\n\n // Fall back generic block colors:\n \"block-body-background\": var(--content-background),\n \"block-border-color\": var(--knowl-border-color),\n \"block-head-color\": var(--body-text-color),\n\n // See below for specific block types\n \n \"aside-like-link-color\": var(--link-text-color),\n\n // ------------------------------------------------------------------------------\n // Buttons & Widgets\n\n \"button-background\": #ededed,\n \"button-text-color\": #333333,\n \"button-border-color\": #ccc,\n \"button-hover-background\": #c7c7c7,\n \"button-hover-text-color\": var(--button-text-color),\n\n \"dropdown-background\": var(--content-background),\n \"dropdown-border-color\": var(--toc-border-color),\n \"dropdown-text-color\": var(--toc-text-color),\n \"dropdown-hover-background\": var(--tocitem-active-background),\n \"dropdown-hover-text-color\": var(--tocitem-active-text-color),\n\n // ------------------------------------------------------------------------------\n // Other\n \"code-background\": #fdfdfd,\n \"code-inline-background\": #ededed,\n);\n\n// ==============================================================================\n// Block types\n\n// Variables for specific block types should look like those below. In this file\n// only \"top level\" blocks from the -like families are defined. \n// Other themes/color palettes may define\n// more specific ones - see palette_quad_chunks.scss for an example.\n\n// block-types based on those in entities.ent\n$block-types: \"assemblage-like\", \"definition-like\", \"theorem-like\", \"theorem-like\", \"axiom-like\", \"remark-like\", \"computation-like\", \"openproblem-like\", \"aside-like\", \"proof-like\", \"example-like\", \"project-like\", \"goal-like\", \"solution-like\";\n// TODO - \"proof\" should probably be updated to \"proof-like\" in HTML css\n\n@each $block in $block-types {\n $colors: map.merge(\n $colors,\n (\n // define background and border, but default to generic block colors\n \"#{$block}-body-background\": var(--block-body-background),\n \"#{$block}-border-color\": var(--block-border-color),\n )\n );\n}\n", "// levels 2 & 3 only get new colors if they contain further levels\n// that way bottom level has default styling\n\n.ptx-toc:is(.depth0, .depth1, .depth2) .toc-item .toc-item {\n background-color: var(--tocitem-background);\n color: var(--toc-text-color);\n}\n\n.ptx-toc:is(.depth0, .depth1, .depth2, .depth3) .toc-item .toc-item .toc-item {\n background-color: var(--tocitem-background);\n color: var(--toc-text-color);\n}\n", "\n$border-width: 1px !default;\n\n// apply some borders to the TOC\n.toc-item {\n border-top: $border-width solid var(--toc-border-color);\n}\n.ptx-toc.focused .toc-title-box > a:hover {\n border-right: $border-width solid var(--toc-border-color);\n}\n.ptx-toc.focused .toc-expander:is(:hover) {\n border-left: $border-width solid var(--toc-border-color);\n}\n// Extra border above top level items\n.ptx-toc > .toc-item-list > .toc-item {\n border-top: $border-width + 1 solid var(--toc-border-color);\n}\n", "// Use chevrons instead of +/- in ToC expander control\n\n.ptx-toc.focused {\n .toc-item > .toc-title-box > .toc-expander > .icon {\n font-size: 30px;\n &:before {\n content: \"chevron_left\";\n }\n }\n\n .toc-item.expanded > .toc-title-box > .toc-expander > .icon {\n transform: rotate(-90deg);\n &:before {\n content: \"chevron_left\";\n }\n }\n}\n", "$color-light: var(--primary-color-white-30) !default;\n$color-dark: var(--primary-color-black-30) !default;\n$thickness: 2px !default;\n$padding: 3px !default;\n$thickness-h2: 4px !default;\n$thickness-h3: 3px !default;\n\n\nsection > .heading {\n padding-bottom: $padding;\n border-bottom: $thickness solid $color-light;\n}\nsection > h2.heading {\n border-bottom-width: $thickness-h2;\n}\nsection > h3.heading {\n border-bottom-width: $thickness-h3;\n}\n\n:root.dark-mode {\n section > .heading {\n border-bottom-color: $color-dark;\n }\n}\n", "// turn on some optional design features\n@use 'components/page-parts/extras/navbar-btn-borders';\n@use 'components/page-parts/extras/toc-last-level-plain';\n@use 'components/page-parts/extras/toc-borders';\n@use 'components/page-parts/extras/toc-expand-chevrons';\n\n// used to expand math and RS blocks\n@use 'components/helpers/expandable';\n\n// underlines to headings\n@use 'components/elements/extras/heading-underlines';\n\n// let math stretch out to fill space on right\n.displaymath {\n @include expandable.expandable;\n}\n\n.code-display {\n @include expandable.expandable;\n}\n\n// grow some rs elements\n$wide-rs-elements: \".parsons_section, .ac_section, .codelens\";\n\n.ptx-runestone-container:has(#{$wide-rs-elements}) {\n @include expandable.expandable($always-expand: true);\n}\n\n// horizontal scroll for tabular boxes\n.tabular-box {\n @include expandable.expandable;\n}\n", "// Styling for elements in ptx-main that are allowed to expand past normal width\n// of ptx-content.\n\n// Assumes that $content-padding is set to the padding of ptx-content\n// and that element normally takes up 100% of parent width. (Like display-math)\n\n// for responsive elements\n$width-hard-cap: 900px !default;\n$base-content-width: 600px !default;\n$content-padding: 48px !default;\n$always-expand: false !default; // whether to always expand to the max width\n$centered: false !default; // whether to center the content if not max width\n$content-with-padding-width: $base-content-width + 2 * $content-padding;\n\n// for scrollable\n$overflow-y-scroll: hidden !default;\n\n\n// An element that has some minimum authored width which may be larger\n// than the available width. We want it to scroll horizontally.\n@mixin scrollable(\n $overflow-y-scroll: $overflow-y-scroll\n) {\n overflow-x: auto;\n $overflow-y: $overflow-y-scroll;\n}\n\n// An element with no minimum width that we want to allow to expand\n// to whatever width is available to maximize the display area.\n@mixin responsive(\n $base-content-width: $base-content-width,\n $width-hard-cap: $width-hard-cap,\n $content-padding: $content-padding,\n $always-expand: $always-expand,\n $centered: $centered\n) {\n @container ptx-main (width > #{$base-content-width + 2 * $content-padding}) {\n --max-width: calc(min((100cqw - 2 * #{$content-padding}), #{$width-hard-cap}));\n min-width: 100%;\n clear: right; // clear any floats\n @if $always-expand {\n width: var(--max-width);\n } @else {\n width: fit-content; //grow if space needed\n }\n max-width: var(--max-width);\n @if $centered {\n margin-left: calc(-0.5 * (100cqw - #{$content-with-padding-width}));\n }\n }\n}\n\n// An element that has some minimum authored width which we want to allow to expand\n// to whatever width is available to maximize visible content.\n// Content that is still not visible will be scrollable.\n@mixin expandable(\n $base-content-width: $base-content-width,\n $width-hard-cap: $width-hard-cap,\n $content-padding: $content-padding,\n $always-expand: $always-expand,\n $centered: $centered,\n $overflow-y-scroll: $overflow-y-scroll\n) {\n @include scrollable(\n $overflow-y-scroll: $overflow-y-scroll\n );\n @include responsive(\n $base-content-width: $base-content-width,\n $width-hard-cap: $width-hard-cap,\n $content-padding: $content-padding,\n $always-expand: $always-expand,\n $centered: $centered\n );\n}\n", "// This file contains functions and mixins for working with colors in SCSS\n\n@use \"sass:map\";\n@use \"sass:color\";\n\n@mixin set-root-colors($colors, $dark-colors: null) {\n :root {\n color-scheme: light;\n // prevent variable leak through to dark\n &:not(.dark-mode) {\n @include scss-to-css($colors);\n }\n }\n\n @if $dark-colors {\n :root.dark-mode {\n color-scheme: dark;\n @include scss-to-css($dark-colors);\n }\n }\n}\n\n// Renders a map of SCSS variables as CSS variables\n@mixin scss-to-css($colors) {\n @each $name, $value in $colors {\n --#{$name}: #{$value};\n }\n}\n\n// Create a map of colors that blend $color with $other at $mix-amounts\n// The resulting map will have keys of the form 'color-other-10'\n// Indicating 10% of other mixed into color\n@function mixes($color, $other, $mix-amounts) {\n $result: ();\n\n @each $i in $mix-amounts {\n $result: map.set($result, '#{$color}-#{$other}-#{$i}', 'color-mix(in oklab, var(--#{$color}), #{$other} #{$i}%)');\n }\n\n @return $result;\n}\n\n$std-mixes: (1, 2, 3, 4, 5, 10, 15, 20, 25, 30, 35, 40, 50, 60, 65, 70, 75, 80, 85, 90, 95, 96, 97, 98, 99);\n\n// Creates a map of color blends for a given color\n// By default it creates blends with black, white, and gray at $std-mixes amounts\n// Mixing is done using css color-mix function so that if a theme file has the base\n// css variable overridden, the blends will be updated accordingly\n@function get-blends($color, $shades: $std-mixes, $tints: $std-mixes, $tones: $std-mixes, ) {\n $shades: mixes($color, black, $std-mixes);\n $tints: mixes($color, white, $std-mixes);\n $tones: mixes($color, gray, $std-mixes);\n\n $blends: map.merge(\n $tints,\n $shades\n );\n\n $blends: map.merge(\n $blends,\n $tones\n );\n @return $blends;\n}\n\n//--------------------------------------------------------------------------\n// https://jonnykates.medium.com/automating-colour-contrast-ratios-with-sass-e201f3b52797\n// Formula there has a typo, need parens around the sum of the three color channels\n\n@function text-contrast($color, $light: #ffffff, $dark: #000000) {\n $color-brightness: round(\n (\n (color.red($color) * 299) +\n (color.green($color) * 587) +\n (color.blue($color) * 114)\n ) / 1000\n );\n\n $light-color: round(\n (\n (color.red(#ffffff) * 299) +\n (color.green(#ffffff) * 587) +\n (color.blue(#ffffff) * 114)\n ) / 1000\n );\n\n @if abs($color-brightness) < calc($light-color / 2){\n @return $light;\n } @else {\n @return $dark;\n }\n}\n\n// @debug \"text-contrast(#7b7b55) should be #ffffff: \" text-contrast(#7b7b55);\n// @debug \"text-contrast(#9b9b70) should be #000000: \" text-contrast(#9b9b70);\n// @debug \"text-contrast(#766f7a) should be #ffffff: \" text-contrast(#766f7a);\n// @debug \"text-contrast(#70909b) should be #000000: \" text-contrast(#70909b);\n//--------------------------------------------rgb(25, 25, 24)-----------------------\n"], - "mappings": "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CVlDA,eUkDA,CG3CA,aH2CA,CVlDA,eUkDA,CG3CA,aH2CA,CVlDA,eUkDA,CG3CA,YH2CA,CVlDA,eUkDA,CG3CA,iBH2CA,CVlDA,eUkDA,CG3CA,iBHmDE,aAAA,EACA,YAAA,EACA,YAAA,KAEA,CV9DF,eU8DE,CGvDF,YHuDE,OAAA,CV9DF,eU8DE,CGvDF,eHuDE,OAAA,CV9DF,eU8DE,CGvDF,YHuDE,OAAA,CV9DF,eU8DE,CGvDF,YHuDE,OAAA,CV9DF,eU8DE,CGvDF,WHuDE,OAAA,CV9DF,eU8DE,CGvDF,gBHuDE,OAAA,CV9DF,eU8DE,CGvDF,gBHuDE,OACE,cAAA,KACA,QAAA,KIrDJ,OAAA,CThBF,SSgBE,KAAA,IAAA,cAAA,KAAA,CdXA,ecWA,CHLA,2BGbI,eACI,KAoBN,YAAA,KAAA,MAAA,IAAA,qBACA,iBAlBe,IAAA,sBAwBf,OAAA,CT1BJ,SS0BI,KAAA,IAAA,cAAA,KAAA,CdrBF,ecqBE,CHfF,kBGeE,CAAA,CpBaA,OoBbA,aACE,WAAA,EP5BJ,CAAA,UAAA,CAAA,CbwCE,OaxCF,aAAA,OAAA,CAAA,CbwCE,OaxCF,aACE,QAAA,OACA,YAAA,QACA,cAAA,EAEA,CALF,UAKE,CAAA,CbmCA,OanCA,YAAA,OAAA,OAAA,CAAA,CbmCA,OanCA,YAAA,OACE,QAAA,QAOF,CAbF,UAaE,CAAA,Cb2BA,Oa3BA,YAAA,CAAA,IAAA,CHUE,KGVF,CHUE,IGVF,CAAA,QAAA,CHOA,cGPA,OAAA,CAAA,Cb2BA,Oa3BA,YAAA,CAAA,IAAA,CHUE,KGVF,CHUE,IGVF,CAAA,QAAA,CHOA,cGNE,QAAA,OAEA,CAhBJ,UAgBI,CAAA,CbwBF,OaxBE,YAAA,CAAA,IAAA,CHOA,KGPA,CHOA,IGPA,CAHF,QAGE,CHIF,aGJE,CAAA,CHOA,IGPA,aAAA,OAAA,CAAA,CbwBF,OaxBE,YAAA,CAAA,IAAA,CHOA,KGPA,CHOA,IGPA,CAHF,QAGE,CHIF,aGJE,CAAA,CHOA,IGPA,aACE,QAAA,OAGF,CApBJ,UAoBI,CAAA,CboBF,OapBE,YAAA,CAAA,IAAA,CHGA,KGHA,CHGA,IGHA,CAPF,QAOE,CHAF,aGAE,CAAA,CHGA,IGHA,CAPF,OAOE,YAAA,CAAA,CHGA,IGHA,aAAA,OAAA,CAAA,CboBF,OapBE,YAAA,CAAA,IAAA,CHGA,KGHA,CHGA,IGHA,CAPF,QAOE,CHAF,aGAE,CAAA,CHGA,IGHA,CAPF,OAOE,YAAA,CAAA,CHGA,IGHA,aACE,QAAA,OQjBR,EACE,WAAA,WAaF,eAEE,IAAA,QAAA,QAAA,CfdA,eecA,CAAA,CAAA,KAAA,cACE,WAAA,MAIF,IAAA,QAAA,QAAA,CfnBA,eemBA,CAAA,CXFI,IWEJ,CAAA,CXFI,KWGF,WAAA,IAKF,CxBmBF,YwBnBE,IAAA,GAAA,GAAA,GAAA,GAAA,CAAA,WAAA,CTdF,SScE,CXRI,IWQJ,CRlBE,QQkBF,CAAA,CAAA,KAAA,cACE,WAAA,MC/BJ,EAAA,CAAA,UAAA,EAAA,CAAA,UAAA,EAAA,CAAA,UAGI,gBAAA,KAGJ,EAAA,CAAA,QACI,gBAAA,QAGJ,EAAA,CAAA,YACI,gBAAA,YAIJ,EAAA,CAAA,mBAAA,CAAA,EAAA,SACI,QAAA,IAAA,QAAA,SAAA,CAAA,aAAA,KAGJ,EAAA,CAAA,YACI,gBAAA,YAGJ,EAAA,CAAA,YACI,gBAAA,YAGJ,EAAA,CAAA,YACI,gBAAA,YAGJ,EAAA,CAAA,KACI,gBAAA,KAGJ,EAAA,CAAA,OACI,gBAAA,OAGJ,EAAA,CAAA,OACI,gBAAA,OC3BJ,EAAA,IAAA,CAAA,iBAAA,CAAA,iBACE,EAGA,EAAA,IAAA,CAJF,iBAIE,CAJF,UAIE,GACE,YAAA,IACA,UAAA,KAGF,EAAA,IAAA,CATF,iBASE,CATF,UASE,EAAA,OACE,QAAA,GACA,QAAA,MACA,MAAA,KAIJ,CbPM,IaON,CAAA,EAAA,IAAA,CAhBA,kBAkBE,WAAA,KACA,cAAA,KAIA,EAAA,CAvBF,SAuBE,GACE,WAAA,OAEA,EAAA,CA1BJ,SA0BI,EAAA,eACE,WAAA,EAIJ,EAAA,CA/BF,SA+BE,GACE,YAAA,IAMF,EAAA,CAtCF,iBAsCE,GAAA,EAAA,CAtCF,iBAsCE,GAEE,WAAA,IAEA,EAAA,CA1CJ,iBA0CI,EAAA,eAAA,EAAA,CA1CJ,iBA0CI,EAAA,eACE,WAAA,EAIJ,EAAA,CA/CF,iBA+CE,GACE,MAAA,KACA,MAAA,KACA,WAAA,MACA,MAAA,KACA,aAAA,IAGF,EAAA,CAvDF,iBAuDE,GACE,YAAA,KAIA,EAAA,CA5DJ,gBA4DI,CAAA,OAAA,GACE,MAAA,KAGF,EAAA,CAhEJ,gBAgEI,CAJA,OAIA,GACE,YAAA,KAKF,EAAA,CAtEJ,gBAsEI,CAAA,KAAA,GACE,MAAA,KAGF,EAAA,CA1EJ,gBA0EI,CAJA,KAIA,GACE,YAAA,KAKN,EAAA,CAhFA,iBAgFA,EAAA,eACE,MAAA,KAGF,CApFA,gBAoFA,CAAA,EACE,MAAA,KAIF,EAAA,CAzFA,iBAyFA,GAAA,GACE,MAAA,IAGF,EAAA,CA7FA,iBA6FA,GAAA,GACE,YAAA,KAGF,EAAA,CAjGA,iBAiGA,GAAA,GACE,YAAA,KAIF,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OACE,EAAA,CAvGF,iBAuGE,GACE,MAAA,KACA,YAAA,EACA,WAAA,KAGF,EAAA,CA7GF,iBA6GE,GAAA,EAAA,CA7GF,gBA6GE,CAjDE,OAiDF,GAAA,EAAA,CA7GF,gBA6GE,CAvCE,KAuCF,GAGE,WAAA,KACA,YAAA,IACA,UAAA,KAAA,KAAA,EAAA,MdvHA,CATJ,KASI,CAAA,GAIE,UAAA,KAAA,IAAA,EAAA,KACA,MAAA,YACA,aAR2B,IAE7B,CATJ,KASI,CAAA,GAIE,UAAA,KAAA,eAAA,EAAA,KACA,MAAA,YACA,aAR2B,IAE7B,CATJ,KASI,CAAA,GAIE,UAAA,KAAA,IAAA,EAAA,KACA,MAAA,YACA,aAR2B,IAE7B,CATJ,KASI,CAAA,GAIE,UAAA,KAAA,IAAA,EAAA,KACA,MAAA,YACA,aAR2B,IAE7B,CATJ,KASI,CAAA,GAIE,UAAA,KAAA,eAAA,EAAA,KACA,MAAA,YACA,aAR2B,IeW/B,C3BgCF,Y2BhCE,GACE,WAAA,KAOA,C3BwBJ,Y2BxBI,GAAA,CAAA,kBACE,UAAA,KACA,YAAA,IACA,WAAA,OAKN,CdXM,IcWN,CAAA,IAAA,GAAA,IAEE,WAAA,KACA,cAAA,KAIF,EAAA,CAAA,GACE,aAAA,MC3CF,CAAA,OACE,QAAA,aACA,OAAA,KACA,aAAA,IACA,aAAA,KACA,YAAA,KACA,cAAA,OAEA,CARF,MAQE,CAAA,UACE,oBAAA,MACA,aAAA,IAGF,CAbF,MAaE,CAAA,IACE,QAAA,IAAA,MAAA,IAAA,mBACA,OAAA,MAGF,CAlBF,MAkBE,CAAA,MACE,iBAAA,IAAA,yBAAA,EAAA,MACA,OAAA,MAKJ,KAAA,CAAA,UACE,2BAAA,KCtBF,C1BqCI,O0BrCJ,IAAA,GAAA,GAAA,GAAA,GAAA,GAAA,WACE,EACA,UAAA,MAGF,C1BgCI,Q0B/BF,YAAA,IACA,YAAA,IAAA,iBACA,YAAA,IACA,WAAA,EACA,cAAA,EAGF,OAAA,CAAA,C1BwBI,Q0BvBF,UAAA,OACA,MAAA,IAAA,oBACA,YAAA,OACA,WAAA,MACA,cAAA,KAGA,OAAA,CAAA,C1BgBE,O0BhBF,CAAA,EACE,WAAA,KAIJ,C7BqBA,W6BrBA,CAAA,OAAA,CAAA,C1BWI,Q0BTF,WAAA,KAGF,QAAA,OAAA,CAAA,C1BMI,Q0BLF,UAAA,MACA,WAAA,IAGF,QAAA,QAAA,OAAA,CAAA,C1BCI,Q0BAF,UAAA,MACA,WAAA,IAIF,OAAA,CAAA,C1BLI,Q0BMF,UAAA,OACA,WAAA,MAGA,OAAA,CAAA,C1BVE,O0BUF,CAAA,EACE,WAAA,KAIJ,CbvDE,UauDF,CAAA,C1BfI,Q0BgBF,UAAA,QAIF,IAAA,QAAA,QAAA,CAAA,C1BpBI,O0BoBJ,CAAA,IAAA,QAAA,QAAA,CAAA,C1BpBI,Q0BqBF,WAAA,KAIF,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OACE,OAAA,CAAA,C1B1BE,Q0B2BE,UAAA,MACA,YAAA,OACA,WAAA,IAEJ,QAAA,OAAA,CAAA,C1B/BE,Q0BgCE,UAAA,MACA,YAAA,OAEJ,QAAA,QAAA,OAAA,CAAA,C1BnCE,Q0BoCE,UAAA,OACA,YAAA,KAIN,C1BzCI,O0ByCJ,CAAA,SAAA,CAAA,CZhEI,KYiEF,QAAA,KClFF,EACE,MAAA,IAAA,mBACA,gBAAA,KAEA,CAAA,OAAA,CAAA,OAEE,gBAAA,KAKJ,CAAA,CAAA,iBACE,YAAA,IAMA,C9BgCF,Y8BhCE,CAAA,CxB6DA,SwB5DE,MAAA,IAAA,mBACA,YAAA,IAEF,C9B4BF,Y8B5BE,CAAA,CAAA,SACE,MAAA,IAAA,uBACA,YAAA,IAEF,C9BwBF,Y8BxBE,CAAA,CxBqDA,QwBrDA,OAAA,C9BwBF,Y8BxBE,CAAA,CxBqDA,QwBrDA,OAAA,EAAA,C9BwBF,Y8BxBE,CAAA,CxBqDA,QwBrDA,OAAA,C9BwBF,Y8BxBE,CAAA,CxBqDA,QwBrDA,OAAA,EAEE,MAAA,IAAA,0BACA,iBAAA,IAAA,0BACA,YAAA,IAEF,C9BkBF,Y8BlBE,CAAA,CAVA,QAUA,OAAA,C9BkBF,Y8BlBE,CAAA,CAVA,QAUA,OAAA,EAAA,C9BkBF,Y8BlBE,CAAA,CAVA,QAUA,OAAA,C9BkBF,Y8BlBE,CAAA,CAVA,QAUA,OAAA,EAEE,MAAA,IAAA,8BACA,iBAAA,IAAA,8BACA,YAAA,ICpCF,C/BkDF,Y+BlDE,MACE,eAAA,EACA,gBAAA,SAGF,C/B6CF,Y+B7CE,WACE,IAAA,IACA,UAAA,IAEA,C/ByCJ,Y+BzCI,GAAA,IACE,UAAA,MACA,aAAA,KAIJ,C/BmCF,Y+BnCE,WACE,IAAA,IAME,C/B4BN,Y+B5BM,GAAA,CAAA,MACE,YAAA,OAKA,C/BsBR,Y+BtBQ,EAAA,CAAA,EACE,WAFoB,KACtB,C/BsBR,Y+BtBQ,EAAA,CAAA,EACE,WAFoB,OACtB,C/BsBR,Y+BtBQ,EAAA,CAAA,EACE,WAFoB,MACtB,C/BsBR,Y+BtBQ,EAAA,CAAA,EACE,WAFoB,QAQtB,C/BeR,Y+BfQ,EAAA,CAAA,EACE,eAFoB,IACtB,C/BeR,Y+BfQ,EAAA,CAAA,EACE,eAFoB,OACtB,C/BeR,Y+BfQ,EAAA,CAAA,EACE,eAFoB,OASpB,C/BOV,Y+BPU,EAAA,CAAA,GAEI,YAAA,KAFJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,YAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,YAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,YAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAEI,aAAA,KAFJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,aAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,aAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,aAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAEI,WAAA,KAFJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,WAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,WAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,WAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAEI,cAAA,KAFJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,cAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,cAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,cAAA,IAAA,MAAA,IAAA,mBA3BR,C/B4BN,Y+B5BM,GAAA,CAAA,MACE,YAAA,OAKA,C/BsBR,Y+BtBQ,EAAA,CAAA,EACE,WAFoB,KACtB,C/BsBR,Y+BtBQ,EAAA,CAAA,EACE,WAFoB,OACtB,C/BsBR,Y+BtBQ,EAAA,CAAA,EACE,WAFoB,MACtB,C/BsBR,Y+BtBQ,EAAA,CAAA,EACE,WAFoB,QAQtB,C/BeR,Y+BfQ,EAAA,CAAA,EACE,eAFoB,IACtB,C/BeR,Y+BfQ,EAAA,CAAA,EACE,eAFoB,OACtB,C/BeR,Y+BfQ,EAAA,CAAA,EACE,eAFoB,OASpB,C/BOV,Y+BPU,EAAA,CAAA,GAEI,YAAA,KAFJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,YAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,YAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,YAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAEI,aAAA,KAFJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,aAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,aAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,aAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAEI,WAAA,KAFJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,WAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,WAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,WAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAEI,cAAA,KAFJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,cAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,cAAA,IAAA,MAAA,IAAA,mBANJ,C/BOV,Y+BPU,EAAA,CAAA,GAMI,cAAA,IAAA,MAAA,IAAA,mBAUZ,C/BTF,Y+BSE,EAAA,CAhBQ,EAgBR,CAhBQ,GAgBR,C/BTF,Y+BSE,EAAA,CAhBQ,EAgBR,CAhBQ,GAkBN,aAAA,KACA,cAAA,KAIA,C/BhBJ,Y+BgBI,EAAA,CAAA,gBAAA,GACE,aAAA,YACA,aAAA,IAKF,C/BvBJ,Y+BuBI,CAAA,OAAA,MACE,WAAA,OACA,YAAA,KACA,aAAA,KAON,CAAA,YACE,WAAA,KACA,WAAA,KAGF,CALA,WAKA,CAAA,cAAA,MACE,YAAA,KACA,aAAA,KAOE,KAAA,CAAA,cAAA,GAAA,GACE,WAAA,KACA,YAAA,IAGF,KAAA,CALA,cAKA,GAAA,GACE,WAAA,KACA,eAAA,ICrGJ,CAAA,WAAA,CAAA,C7BqCE,Q6BpCA,QAAA,MACA,WAAA,OAGF,CALA,WAKA,CAAA,C7BgCE,Q6BhCF,C7BsCE,M6BtCF,CALA,YAKA,C1BqHF,I0BrHE,CAAA,C7BgCE,Q6BhCF,C7BsCE,M6BpCA,UAAA,MAGF,CAVA,WAUA,CAAA,C7B2BE,Q6B3BF,C7BiCE,S6BjCF,CAVA,YAUA,C1BgHF,I0BhHE,CAAA,C7B2BE,Q6B3BF,C7BiCE,S6B/BA,QAAA,MACA,YAAA,IACA,MAAA,IAAA,gBACA,UAAA,OACA,YAAA,UACA,WAAA,SAGF,CApBA,WAoBA,CAAA,CnBAI,ImBAJ,eACE,WAAA,IAGF,CAxBA,WAwBA,CAAA,CAAA,OAAA,CAxBA,WAwBA,CAAA,CAAA,OAEE,WAAA,IACA,WAAA,OAGF,CA9BA,YA8BA,CANA,MAMA,eACE,WAAA,IAGF,CAlCA,WAkCA,CAAA,CAVA,OAUA,CAAA,YACE,UAAA,KAGF,CAtCA,YAsCA,CAAA,KACE,QAAA,MACA,WAAA,IACA,WAAA,OAGF,CA5CA,YA4CA,CApBA,OAoBA,C7BDE,M6BEA,UAAA,IAGF,CAhDA,YAgDA,CAxBA,OAwBA,CAxBA,OAyBE,UAAA,KACA,WAAA,MAGF,CArDA,YAqDA,CAAA,YACE,UAAA,IAGF,CAzDA,YAyDA,CAAA,cACE,WAAA,IAGF,CA7DA,YA6DA,CAAA,gBACE,IAAA,IAGF,CAjEA,YAiEA,CAAA,SAAA,CAjEA,YAiEA,CAAA,QACE,WAAA,IAIA,CAtEF,YAsEE,CATF,QASE,CAAA,C7B3BA,M6B2BA,CAtEF,YAsEE,CALF,QAKE,CAAA,C7B3BA,M6B2BA,CAtEF,YAsEE,CALF,OAKE,CAAA,C7B3BA,M6B4BE,UAAA,QACA,YAAA,IACA,YAAA,QACA,QAAA,OAGF,CA7EF,YA6EE,CAhBF,QAgBE,CAAA,C7BlCA,K6BkCA,OAAA,CA7EF,YA6EE,CAZF,QAYE,CAAA,C7BlCA,K6BkCA,OAAA,CA7EF,YA6EE,CAZF,OAYE,CAAA,C7BlCA,K6BkCA,OACE,QAAA,mBAGF,CAjFF,YAiFE,CApBF,QAoBE,CAAA,C7BtCA,K6BsCA,CAAA,CnB7DE,KmB6DF,CAjFF,YAiFE,CAhBF,QAgBE,CAAA,C7BtCA,K6BsCA,CAAA,CnB7DE,KmB6DF,CAjFF,YAiFE,CAhBF,OAgBE,CAAA,C7BtCA,K6BsCA,CAAA,CnB7DE,KmB8DA,QAAA,OAKF,CAvFF,YAuFE,CAAA,SAAA,CAAA,UAIA,CA3FF,YA2FE,CAJA,SAIA,CAAA,QAHE,WAAA,MC1FN,CjCiDA,YiCjDA,CD2DE,cC1DA,YAAA,IAAA,iBACA,QAAA,MACA,WAAA,IAEA,CjC4CF,YiC5CE,CDsDA,cCtDA,EACE,MAAA,IAAA,2BACA,WAAA,IAAA,2BACA,UAAA,MACA,YAAA,eACA,KACA,KADA,KAAA,mBAEA,IACA,SAAA,SACA,QAAA,MACA,YAAA,MAEA,CjCgCJ,YiChCI,CD0CF,cC1CE,EAAA,C9B4BA,M8B3BE,WAAA,OAGF,CjC4BJ,YiC5BI,CDsCF,cCtCE,EAAA,C3BuEF,W2BtEI,aAAA,SAGF,CjCwBJ,YiCxBI,CDkCF,cClCE,CAAA,OAEE,MAAA,SACA,QAAA,GACA,SAAA,SACA,IAAA,IACA,WAAA,MACA,MAAA,EACA,OAAA,EACA,WAAA,KAAA,MAAA,YACA,cAAA,KAAA,MAAA,YACA,YAAA,KAAA,MAAA,IAAA,2BAGF,CjCUJ,YiCVI,CDoBF,cCpBE,CAAA,OAKE,CjCKN,YiCLM,CDeJ,cCfI,CAAA,OAAA,EAJA,MAAA,IAAA,iCACA,WAAA,IAAA,iCAOA,CjCCN,YiCDM,CDWJ,cCXI,CAAA,OAAA,C9BHF,M8BII,YAAA,IAGF,CjCHN,YiCGM,CDOJ,cCPI,CAAA,MAAA,OACE,YAAA,KAAA,MAAA,IAAA,iCAKN,CjCTF,YiCSE,CDCA,cCDA,GACI,gBAAA,aACA,EACA,WAAA,EAGJ,CjCfF,YiCeE,CDLA,cCKA,GACI,WAAA,IAIN,OAAA,OAAA,IAAA,CAAA,MAAA,CAAA,EAAA,OACE,CjCrBF,YiCqBE,CDXA,cCWA,EAEE,UAAA,KACA,YAAA,QC1EJ,CAAA,aACE,QAAA,aACA,SAAA,SAGF,CALA,YAKA,CAAA,MACE,QAAA,SAIF,CAVA,YAUA,CAAA,MAAA,CAAA,oBAAA,QACE,UAAA,QACA,QAAA,MACA,WAAA,QACA,eAAA,MAGF,CAjBA,YAiBA,CAAA,MAAA,CAPA,qBAOA,IACE,QAAA,KAGF,CAXA,qBAYE,QAAA,aACA,OAAA,QACA,UAAA,IAGF,CAjBA,oBAiBA,SACE,QAAA,GAGF,CAAA,uBACE,QAAA,MACA,WAAA,OACA,WAAA,IAAA,kCApCc,UAsCd,WACA,IAAA,KACA,MAAA,YACA,UAAA,KAAA,KAAA,EAAA,MACA,OAAA,IAAA,MAAA,IAAA,sBAGA,MAAA,IAAA,mBACA,YAAA,IACA,UAAA,IAAA,MCzCF,C/BgEE,O+BhEF,CAAA,SACE,SAAA,SACA,IAAA,KACA,MAAA,EAGF,CAAA,QACE,MAAA,KACA,YAAA,KACA,aAAA,IAIF,CAAA,UACE,YAAA,MACA,WAAA,KACA,YAAA,EACA,MAAA,KACA,YAAA,IAGF,CARA,UAQA,EACE,aAAA,MACA,cAAA,KACA,MAAA,MAKA,aAAA,KACA,MAAA,QACA,UAAA,IACA,WAAA,OAEF,CArBA,UAqBA,CAAA,OACE,QAAA,GACA,QAAA,aAEF,CAzBA,UAyBA,CAAA,iBACE,aAAA,MAEF,CA5BA,UA4BA,CAAA,YACE,cAAA,KAGF,CAhCA,UAgCA,CAAA,OACE,WAAA,IAAA,wBAGF,CAAA,UACE,WAAA,IAGF,CAAA,aACE,YAAA,IACA,UAAA,IACA,WAAA,KAGF,CAAA,gBACE,YAAA,MACA,UAAA,IACA,WAAA,KAGF,CAAA,WACE,YAAA,MAEF,EAAA,CAAA,CAHA,WAIE,YAAA,OAEF,CANA,WAMA,EACE,YAAA,IAGF,CA1BA,UA0BA,CAAA,IAAA,CAtBA,aAsBA,CAAA,IAAA,CAhBA,gBAgBA,CAAA,IAMA,CAhCA,UAgCA,CAAA,QAAA,CA5BA,aA4BA,CAAA,QAAA,CAtBA,gBAsBA,CAAA,QAHE,YAAA,IACA,aAAA,EAQF,CAtCA,UAsCA,CAZA,IAYA,GAAA,CAlCA,aAkCA,CAZA,IAYA,GAAA,CA5BA,gBA4BA,CAZA,IAYA,GAAA,CAtCA,UAsCA,CANA,QAMA,GAAA,CAlCA,aAkCA,CANA,QAMA,GAAA,CA5BA,gBA4BA,CANA,QAMA,GAME,aAAA,MACA,WAAA,OAGF,CAhDA,UAgDA,CAtBA,GAsBA,CAAA,CAtBA,IAsBA,CA5CA,aA4CA,CAtBA,GAsBA,CAAA,CAtBA,IAsBA,CAtCA,gBAsCA,CAtBA,GAsBA,CAAA,CAtBA,IAsBA,CAhDA,UAgDA,CAhBA,OAgBA,CAAA,CAhBA,QAgBA,CA5CA,aA4CA,CAhBA,OAgBA,CAAA,CAhBA,QAgBA,CAtCA,gBAsCA,CAhBA,OAgBA,CAAA,CAhBA,QAsBG,YAAA,EACA,aAAA,EAGH,CA1DA,UA0DA,CA1CA,WA2CE,UAAA,IAGF,CA9DA,UA8DA,CAAA,YAAA,CA1DA,aA0DA,CAAA,YAAA,CA9DA,UA8DA,CAAA,WAAA,OACE,cAAA,IACA,aAAA,IAEF,CAlDA,WAkDA,CAAA,WAAA,OAAA,CAlDA,WAkDA,C7B5EI,M6B4EJ,CAAA,YACE,YAAA,IAGF,CAlEA,aAkEA,CAtDA,WAyDA,CA/DA,gBA+DA,CAzDA,WAuDE,UAAA,IAMF,CAAA,YACE,WAAA,MCnIF,CAAA,UAAA,CAAA,UAAA,CAAA,UAAA,CAAA,cAII,SAAA,SAGJ,CAPA,UAOA,CAPA,cAOA,MAAA,CAAA,UAAA,MAAA,CAAA,UAAA,CAPA,UAOA,CAAA,MAAA,CAPA,UAOA,CAAA,aAII,SAAA,SAAoB,IAAA,EAAQ,KAAA,EAAS,MAAA,KAAa,OAAA,KAItD,CAfA,UAeA,IAAA,GAAA,CAAA,UAEI,MAAA,KAKJ,CpC4BA,YoC5BA,IAAA,CpC4BA,YoC5BA,IAGE,WAAA,IAAA,gBAGF,CAAA,OAAA,CAAA,IACE,WAAA,KAIA,CAAA,kBAAA,QACE,WAAA,KACA,OAAA,QAKJ,CAAA,qBACE,MAAA,KAAA,EACA,YAAA,IAAA,kBACA,gBAAA,OACA,QAAA,KACA,IAAA,KAKF,CAlDA,SAkDA,CAAA,GAAA,KAAA,CAAA,WACE,OAAA,QAGF,GAAA,CAJA,UAKE,OAAA,IAAA,MAAA,KACA,WAAA,IAAA,IAAA,IAAA,KACA,OAAA,SAGF,CAAA,oBACE,MAAA,KACA,SAAA,SACA,QAAA,KACA,WAAA,QAKF,CAAA,MACI,MAAA,KAGJ,CAlEA,aAmEI,OAAA,QC5EJ,OACE,MAAA,KACA,SAAA,SAGA,YAAA,EACA,aAAA,EAGF,WACE,YAAA,KACA,aAAA,KACA,WAAA,KAEA,WAAA,IAAA,C1BiBF,Y0BhBI,YAAA,IAGF,WAAA,C/B6EA,W+B7EA,WAAA,CpBCE,KoBCA,YAAA,IAIF,WAAA,C/BuEA,U+BvEA,OAAA,WAAA,CpBLE,IoBKF,aAAA,OAEE,QAAA,QAIF,WAAA,CxBLI,IwBKJ,eACE,QAAA,OAKJ,MAAA,CtBiBA,WsBhBE,YAAA,KACA,aAAA,KAGA,MAAA,CtBYF,WsBZE,CAAA,KACE,aAAA,EAIJ,OAAA,CAAA,UAAA,CAAA,EAAA,OACE,CtBMF,YsBLI,WAAA,MC/CJ,CAAA,KACE,QAAA,aACA,EAAA,KACA,MAAA,KACA,UAAA,IAGF,CAPA,IAOA,CAAA,CnCkCI,QmCjCF,QAAA,MACA,WAAA,OAGF,QAAA,OAAA,CAZA,IAYA,CAAA,CnC6BI,OmC7BJ,OACE,QAAA,GAGF,CAhBA,IAgBA,CAAA,CnCyBI,OmCzBJ,CAAA,CnC+BI,MmC9BF,YAAA,IACA,UAAA,MACA,YAAA,MAGF,CAtBA,KAsBA,CNME,OMLA,WAAA,OACA,WAAA,MAGF,CA3BA,KA2BA,CNCE,MMDF,CAAA,KACE,WAAA,KAGF,CA/BA,KA+BA,CNHE,MMGF,CP2CI,OO1CF,WAAA,OAGF,CAnCA,KAmCA,CNPE,MMOF,CAAA,MACE,WAAA,MAGF,CAvCA,KAuCA,CAAA,MAAA,CAAA,CnCEI,QmCDF,WAAA,OACA,YAAA,IACA,UAAA,IACA,YAAA,IAGF,CA9CA,KA8CA,CAPA,MAOA,CAAA,CAPA,OAQE,WAAA,IAGF,CAlDA,KAkDA,CnCTI,OmCSJ,CAAA,CAXA,OAYE,WAAA,KAGF,CAtDA,KAsDA,CnCbI,OmCaJ,CAAA,CAAA,KACE,WAAA,KAGF,CA1DA,KA0DA,CAJA,IAIA,CA/BA,KAgCE,WAAA,KACA,YAAA,IACA,YAAA,KAGF,CAhEA,KAgEA,CAVA,IAUA,CPUI,OOTF,WAAA,OAGF,CApEA,KAoEA,CAdA,IAcA,CAjCA,MAkCE,WAAA,MAGF,CAxEA,KAwEA,CAAA,IACE,YAAA,ICnEF,GAAA,CAAA,yBACE,EACA,SAAA,KACA,OAAA,IAAA,MAAA,QAIF,KAAA,IAAA,CAAA,IAAA,CAAA,0BACE,mBACA,KACA,YAAA,OAGF,IAAA,CAAA,kBAAA,GAAA,CAAA,kBAEE,MAAA,KACA,WAAA,QACA,YAAA,KACA,YAAA,IAAA,kBACA,WAAA,KACA,YAAA,IACA,aAAA,OACA,WAAA,OACA,UAAA,OACA,YAAA,IACA,SAAA,EACA,QAAA,KAEA,IAAA,CAAA,iBAAA,C5BJF,Y4BIE,GAAA,CAAA,iBAAA,C5BJF,YAvBE,YAAA,eACA,QAAA,M4B+BA,IAAA,CAAA,iBAAA,YAAA,IAAA,CAAA,kBAAA,YAAA,GAAA,CAAA,iBAAA,YAAA,GAAA,CAAA,kBAAA,YAEE,WAAA,QAKA,IAAA,CAAA,kBAAA,CAAA,KAAA,IAAA,CAAA,QAAA,CAAA,OAAA,CAAA,QAAA,CAAA,OAAA,GAAA,CAAA,kBAAA,CAAA,KAAA,IAAA,CAAA,QAAA,CAAA,OAAA,CAAA,QAAA,CAAA,OAIE,MAAA,QAGF,IAAA,CAAA,kBAAA,CAPA,KAOA,CAAA,YAAA,GAAA,CAAA,kBAAA,CAPA,KAOA,CAAA,YACE,MAAA,KAGF,IAAA,CAAA,kBAAA,CAXA,KAWA,CAAA,UAAA,GAAA,CAAA,kBAAA,CAXA,KAWA,CAAA,UACE,QAAA,GAGF,IAAA,CAAA,kBAAA,CAfA,KAeA,IAAA,CAAA,SAAA,CAAA,IAAA,CAAA,QAAA,CAAA,OAAA,CAAA,SAAA,CAAA,OAAA,CAAA,SAAA,GAAA,CAAA,kBAAA,CAfA,KAeA,IAAA,CAAA,SAAA,CAAA,IAAA,CAAA,QAAA,CAAA,OAAA,CAAA,SAAA,CAAA,OAAA,CAAA,SAOE,MAAA,QAGF,IAAA,CAAA,kBAAA,CAzBA,KAyBA,IAAA,CAAA,SAAA,CAAA,UAAA,CAAA,OAAA,CAAA,KAAA,CAAA,QAAA,CAAA,MAAA,CAAA,UAAA,GAAA,CAAA,kBAAA,CAzBA,KAyBA,IAAA,CAAA,SAAA,CAAA,UAAA,CAAA,OAAA,CAAA,KAAA,CAAA,QAAA,CAAA,MAAA,CAAA,UAOE,MAAA,KAGF,IAAA,CAAA,kBAAA,CAnCA,KAmCA,IAAA,CAAA,SAAA,CAAA,OAAA,CAAA,KAAA,GAAA,CAAA,kBAAA,CAnCA,KAmCA,IAAA,CAAA,SAAA,CAAA,OAAA,CAAA,KAGE,MAAA,KACA,WAAA,KAGF,IAAA,CAAA,kBAAA,CA1CA,KA0CA,IAAA,CAAA,OAAA,CAAA,WAAA,CAAA,SAAA,GAAA,CAAA,kBAAA,CA1CA,KA0CA,IAAA,CAAA,OAAA,CAAA,WAAA,CAAA,SAGE,MAAA,QAGF,IAAA,CAAA,kBAAA,CAhDA,KAgDA,CAAA,SAAA,IAAA,CAAA,kBAAA,CAhDA,KAgDA,CAAA,WAAA,GAAA,CAAA,kBAAA,CAhDA,KAgDA,CAAA,SAAA,GAAA,CAAA,kBAAA,CAhDA,KAgDA,CAAA,WAEE,MAAA,KAGF,IAAA,CAAA,kBAAA,CArDA,KAqDA,CAAA,UAAA,IAAA,CAAA,kBAAA,CArDA,KAqDA,CAAA,SAAA,GAAA,CAAA,kBAAA,CArDA,KAqDA,CAAA,UAAA,GAAA,CAAA,kBAAA,CArDA,KAqDA,CAAA,SAEE,MAAA,KAIF,IAAA,CAAA,kBAAA,CA3DA,KA2DA,CANA,UAMA,IAAA,CAAA,kBAAA,CA3DA,KA2DA,CAAA,KAAA,GAAA,CAAA,kBAAA,CA3DA,KA2DA,CANA,UAMA,GAAA,CAAA,kBAAA,CA3DA,KA2DA,CAAA,KAEE,YAAA,IAGF,IAAA,CAAA,kBAAA,CAhEA,KAgEA,CAAA,OAAA,GAAA,CAAA,kBAAA,CAhEA,KAgEA,CAAA,OACE,WAAA,OAGF,IAAA,CAAA,kBAAA,CApEA,KAoEA,CAjCA,OAiCA,GAAA,CAAA,kBAAA,CApEA,KAoEA,CAjCA,OAkCE,OAAA,KAMJ,IAAA,CAAA,iBAAA,CAAA,aAAA,GAAA,CAAA,iBAAA,CAAA,aACE,SAAA,SACA,aAAA,MACA,cAAA,WACA,SAAA,KAEA,IAAA,CAAA,iBAAA,CANF,YAME,CAAA,KAAA,GAAA,CAAA,iBAAA,CANF,YAME,CAAA,KACE,SAAA,SACA,YAAA,QAGF,IAAA,CAAA,iBAAA,CAXF,aAWE,CAAA,kBAAA,GAAA,CAAA,iBAAA,CAXF,aAWE,CAAA,kBACE,SAAA,SACA,eAAA,KACA,IAAA,EACA,UAAA,KACA,KAAA,OACA,MAAA,IACA,eAAA,KACA,aAAA,IAAA,MAAA,KACA,YAAA,KAGF,IAAA,CAAA,iBAAA,CAvBF,aAuBE,CAZA,iBAYA,CAAA,KAAA,GAAA,CAAA,iBAAA,CAvBF,aAuBE,CAZA,iBAYA,CAAA,KACE,QAAA,MACA,kBAAA,WAGF,IAAA,CAAA,iBAAA,CA5BF,aA4BE,CAjBA,iBAiBA,CAAA,IAAA,QAAA,GAAA,CAAA,iBAAA,CA5BF,aA4BE,CAjBA,iBAiBA,CAAA,IAAA,QACE,QAAA,QAAA,YACA,MAAA,KACA,QAAA,MACA,cAAA,KACA,WAAA,MAOJ,IAAA,CAAA,kBAAA,CAAA,eAAA,GAAA,CAAA,kBAAA,CAAA,eACE,SAAA,SACA,WAAA,IACA,KAAA,EACA,MAAA,EACA,QAAA,QAAA,EACA,UAAA,QACA,WAAA,UACA,eAAA,KACA,YAAA,QACA,YAAA,IASF,KAAA,CX3JF,UW2JE,GAAA,CAAA,kBACE,OAAA,IAAA,MAAA,QAKF,KAAA,CXjKF,UWiKE,IAAA,CAAA,kBAAA,KAAA,CXjKF,UWiKE,GAAA,CAAA,kBAEE,MAAA,KACA,WAAA,QAEA,KAAA,CXtKJ,UWsKI,IAAA,CAAA,iBAAA,YAAA,KAAA,CXtKJ,UWsKI,IAAA,CAAA,kBAAA,YAAA,KAAA,CXtKJ,UWsKI,GAAA,CAAA,iBAAA,YAAA,KAAA,CXtKJ,UWsKI,GAAA,CAAA,kBAAA,YAEE,WAAA,QAIF,KAAA,CX5KJ,UW4KI,IAAA,CAAA,kBAAA,CAvJA,MAuJA,KAAA,CX5KJ,UW4KI,GAAA,CAAA,kBAAA,CAvJA,MAwJE,SAAA,SACA,QAAA,EAEA,KAAA,CXhLN,UWgLM,IAAA,CAAA,kBAAA,CA3JF,KA2JE,IAAA,CA3JF,QA2JE,CA3JF,OA2JE,CA3JF,QA2JE,CA3JF,OA2JE,KAAA,CXhLN,UWgLM,GAAA,CAAA,kBAAA,CA3JF,KA2JE,IAAA,CA3JF,QA2JE,CA3JF,OA2JE,CA3JF,QA2JE,CA3JF,OA+JI,MAAA,QAGF,KAAA,CXvLN,UWuLM,IAAA,CAAA,kBAAA,CAlKF,KAkKE,CA3JF,YA2JE,KAAA,CXvLN,UWuLM,GAAA,CAAA,kBAAA,CAlKF,KAkKE,CA3JF,YA4JI,MAAA,KACA,QAAA,EAGF,KAAA,CX5LN,UW4LM,IAAA,CAAA,kBAAA,CAvKF,KAuKE,CA5JF,UA4JE,KAAA,CX5LN,UW4LM,GAAA,CAAA,kBAAA,CAvKF,KAuKE,CA5JF,UA6JI,QAAA,GAGF,KAAA,CXhMN,UWgMM,IAAA,CAAA,kBAAA,CA3KF,KA2KE,IAAA,CA5JF,SA4JE,CA5JF,IA4JE,CA5JF,QA4JE,CA5JF,OA4JE,CA5JF,SA4JE,CA5JF,OA4JE,CA5JF,SA4JE,KAAA,CXhMN,UWgMM,GAAA,CAAA,kBAAA,CA3KF,KA2KE,IAAA,CA5JF,SA4JE,CA5JF,IA4JE,CA5JF,QA4JE,CA5JF,OA4JE,CA5JF,SA4JE,CA5JF,OA4JE,CA5JF,SAmKI,MAAA,QAGF,KAAA,CX1MN,UW0MM,IAAA,CAAA,kBAAA,CArLF,KAqLE,IAAA,CA5JF,SA4JE,CA5JF,UA4JE,CA5JF,OA4JE,CA5JF,KA4JE,CA5JF,QA4JE,CA5JF,MA4JE,CA5JF,UA4JE,KAAA,CX1MN,UW0MM,GAAA,CAAA,kBAAA,CArLF,KAqLE,IAAA,CA5JF,SA4JE,CA5JF,UA4JE,CA5JF,OA4JE,CA5JF,KA4JE,CA5JF,QA4JE,CA5JF,MA4JE,CA5JF,UAmKI,MAAA,QAGF,KAAA,CXpNN,UWoNM,IAAA,CAAA,kBAAA,CA/LF,KA+LE,IAAA,CA5JF,SA4JE,CA5JF,OA4JE,CA5JF,KA4JE,KAAA,CXpNN,UWoNM,GAAA,CAAA,kBAAA,CA/LF,KA+LE,IAAA,CA5JF,SA4JE,CA5JF,OA4JE,CA5JF,KA+JI,MAAA,KAGF,KAAA,CX1NN,UW0NM,IAAA,CAAA,kBAAA,CArMF,KAqME,IAAA,CA3JF,OA2JE,CA3JF,WA2JE,CA3JF,SA2JE,KAAA,CX1NN,UW0NM,GAAA,CAAA,kBAAA,CArMF,KAqME,IAAA,CA3JF,OA2JE,CA3JF,WA2JE,CA3JF,SA8JI,MAAA,QAGF,KAAA,CXhON,UWgOM,IAAA,CAAA,kBAAA,CA3MF,KA2ME,CA3JF,SA2JE,KAAA,CXhON,UWgOM,IAAA,CAAA,kBAAA,CA3MF,KA2ME,CA3JF,WA2JE,KAAA,CXhON,UWgOM,GAAA,CAAA,kBAAA,CA3MF,KA2ME,CA3JF,SA2JE,KAAA,CXhON,UWgOM,GAAA,CAAA,kBAAA,CA3MF,KA2ME,CA3JF,WA6JI,MAAA,QAGF,KAAA,CXrON,UWqOM,IAAA,CAAA,kBAAA,CAhNF,KAgNE,CA3JF,UA2JE,KAAA,CXrON,UWqOM,IAAA,CAAA,kBAAA,CAhNF,KAgNE,CArJF,KAqJE,KAAA,CXrON,UWqOM,GAAA,CAAA,kBAAA,CAhNF,KAgNE,CA3JF,UA2JE,KAAA,CXrON,UWqOM,GAAA,CAAA,kBAAA,CAhNF,KAgNE,CArJF,KAuJI,YAAA,IAGF,KAAA,CX1ON,UW0OM,IAAA,CAAA,kBAAA,CArNF,KAqNE,CArJF,OAqJE,KAAA,CX1ON,UW0OM,GAAA,CAAA,kBAAA,CArNF,KAqNE,CArJF,OAsJI,WAAA,OAGF,KAAA,CX9ON,UW8OM,IAAA,CAAA,kBAAA,CAzNF,KAyNE,CAtLF,OAsLE,KAAA,CX9ON,UW8OM,GAAA,CAAA,kBAAA,CAzNF,KAyNE,CAtLF,OAuLI,OAAA,KAMN,KAAA,CXrPF,UWqPE,CA7GA,eA8GE,WAAA,UACA,cAAA,IAAA,OAAA,IAAA,CAAA,CAAA,EAAA,CAAA,KACA,WAAA,IAAA,OAAA,IAAA,CAAA,CAAA,EAAA,CAAA,KACA,QAAA,EAIJ,OAAA,MAGI,IAAA,CAAA,kBAAA,CAxHF,eAwHE,GAAA,CAAA,kBAAA,CAxHF,eAyHI,aAAA,OCzRN,CAAA,YACE,WAAA,KACA,WAAA,OAGF,CALA,YAKA,aAAA,CAAA,UAAA,CAAA,qBACE,EACA,YAAA,IAGF,CAAA,aAAA,cAAA,IAGE,WAAA,KAIF,CAAA,WAAA,CAAA,SAAA,CAAA,MACE,YAAA,kBACA,WAAA,iBAKF,C3BsDA,M2BtDA,SAAA,CAAA,UAAA,SAAA,CAAA,UAEI,MAAA,iBAEJ,SAAA,UAAA,SAAA,UAEI,QAAA,OCxBJ,QAAA,QAAA,GAAA,WAAA,WAAA,GAAA,C5BIE,c4BJF,CzBNE,gByBMF,CAAA,cAAA,C5BiBM,K4BPJ,SAAA,SAGF,CAAA,cACE,SAAA,SACA,QAAA,aACA,IAAA,KACA,KAAA,KACA,UAAA,IAEA,QAAA,IAAA,mBAAA,EAAA,GACA,WAAA,QAAA,IACA,WAAA,YAGF,EAAA,CAAA,CAZA,cAaE,KAAA,OAGF,CAhBA,aAgBA,CAAA,EACE,aAAA,KACA,cAAA,KAKF,CAAA,QAAA,CAAA,CAvBA,cAuBA,CAAA,OAAA,CAAA,CAvBA,cAuBA,CAAA,KAAA,CAAA,CAvBA,cAuBA,CAAA,OAAA,CAAA,CAvBA,cAuBA,CAAA,UAAA,CAAA,CAvBA,cAuBA,CAAA,UAAA,CAAA,CAvBA,cAuBA,CAAA,SAAA,CAAA,CAvBA,cA8BE,IAAA,MAMF,CrB3CE,eqB2CF,CAAA,C5BhCM,I4BgCN,CAAA,CApCA,cAoCA,CnB1CE,YmB0CF,CAAA,C5BhCM,I4BgCN,CAAA,CApCA,cAoCA,CnB1CE,YmB0CF,CAAA,C7B9CI,a6B8CJ,CAAA,CApCA,cAoCA,CnB1CE,YmB0CF,CAAA,C5BhCM,I4BgCN,CAAA,CApCA,cAoCA,CnB1CE,YmB0CF,CAAA,C7B9CI,a6B8CJ,CAAA,CApCA,cAoCA,CnB1CE,YmB0CF,CAAA,C7B9CI,a6B8CJ,CAAA,C5BnCI,Y4BmCJ,CAAA,C5BhCM,I4BgCN,CAAA,CApCA,cAoCA,CnB1CE,YmB0CF,CAAA,C7B9CI,a6B8CJ,CAAA,C5BlBE,U4BkBF,CAAA,C5BhCM,I4BgCN,CAAA,CApCA,cAoCA,CnB1CE,WmB0CF,CAAA,C5BhCM,I4BgCN,CAAA,CApCA,cA4CE,KAAA,OAKA,CAAA,UAAA,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAiDE,CnBvDA,YmBuDA,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAiDE,C7B3DE,a6B2DF,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAiDE,CA9DF,aA8DE,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAiDE,CrBxDA,eqBwDA,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAiDE,CnBvDA,emBuDA,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAiDE,CnBvDA,WmBuDA,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAiDE,CnBvDA,YmBuDA,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAiDE,CnBvDA,gBmBuDA,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAiDE,CnBvDA,gBmBuDA,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAiDE,CnBvDA,YmBuDA,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAiDE,CnBvDA,KmBuDA,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAiDE,CAAA,IAAA,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAiDE,EAAA,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAiDE,EAAA,CAAA,C5B7CI,I4B6CJ,cAAA,CAAA,CAjDF,cAkDI,QAAA,KAGF,CAJA,UAIA,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAqDE,CnB3DA,YmB2DA,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAqDE,C7B/DE,a6B+DF,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAqDE,CAlEF,aAkEE,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAqDE,CrB5DA,eqB4DA,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAqDE,CnB3DA,emB2DA,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAqDE,CnB3DA,WmB2DA,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAqDE,CnB3DA,YmB2DA,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAqDE,CnB3DA,gBmB2DA,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAqDE,CnB3DA,gBmB2DA,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAqDE,CnB3DA,YmB2DA,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAqDE,CnB3DA,KmB2DA,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAqDE,CAJA,IAIA,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAqDE,EAAA,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAqDE,EAAA,CAAA,C5BpDE,Y4BoDF,CAAA,C5BjDI,I4BiDJ,cAAA,CAAA,CArDF,cAsDI,QAAA,KAOJ,CzC9BA,WyC8BA,KAAA,CA7DA,aA6DA,QAAA,CA7DA,cA8DE,QAAA,GAGF,CzClCA,WyCkCA,KAAA,CAjEA,aAiEA,QAAA,CAjEA,aAiEA,OACE,QAAA,EAGF,CArEA,aAqEA,KAAA,CAAA,gBACE,QAAA,EAGF,CAAA,gBACE,SAAA,SACA,IAAA,KACA,KAAA,YACA,MAAA,IACA,WAAA,IAAA,sBACA,OAAA,IAAA,MAAA,IAAA,qBACA,QAAA,KAKF,QACE,kBAAA,KAEA,UAAA,YAAA,IAAA,EAGF,WAHE,YAIE,GAAK,iBAAA,IAAA,wBACL,GACE,iBAAA,QACA,QAAA,GChHN,EAAA,CAAA,MACE,YAAA,IAGF,CAAA,IACE,WAAA,MAEA,CAHF,IAGE,CAAA,QACE,QAAA,aACA,eAAA,IACA,MAAA,GACA,aAAA,EAGF,CAVF,IAUE,CAPA,OAOA,CAAA,CAAA,SACE,QAAA,aACA,MAAA,IACA,WAAA,EAMJ,CAAA,QACE,WAAA,KACA,YAAA,KACA,aAAA,KACA,UAAA,KACA,WAAA,OAIF,CAAA,YACE,WAAA,MAEA,CAHF,WAGE,aACE,WAAA,EAGF,CAPF,WAOE,CAAA,C7BlBI,K6BmBF,WAAA,IAGF,CAXF,YAWE,CAAA,iBACE,aAAA,WAGF,CAfF,YAeE,CAAA,iBACE,UAAA,IACA,WAAA,OACA,YAAA,IAMJ,CAAA,0BACE,wBACA,OAAA,CAAA,CAAA,OAAA,GAAA,CAAA,OAAA,CAAA,CAAA,OAAA,GAOF,cACE,EACA,OAAA,KAIF,CAAA,OACE,WAAA,QACA,MAAA,KACA,OAAA,IAAA,MAAA,sBACA,YACA,IAAA,IAAA,EACA,eAAA,KACA,UAAA,KACA,YAAA,EACA,WAAA,IAAA,IAAA,KACA,QAAA,aACA,aAAA,IAIF,CAAA,KAAA,CAAA,SAEI,YAAA,OACA,aAAA,OACA,aAAA,OAEA,CANJ,KAMI,IAAA,CANJ,KAMI,IAAA,CANJ,SAMI,IAAA,CANJ,SAMI,IACE,aAAA,OAKN,CAAA,YACE,WAAA,OACA,YAAA,IAKF,CAAA,WACE,UAAA,OACA,eAAA,OAIF,CAAA,SACE,WAAA,OAEA,CAHF,SAGE,CAHF,SAQA,CpB5GE,gBoB4GF,CARA,SAIM,YAAA,IAON,OAAA,CpB/GE,aoB+GF,CAXA,SAYE,YAAA,IAGF,C7BzGM,K6B0GJ,YAAA,KAGF,CxC7FE,OwC8FA,QAAA,eAIF,CAAA,MACE,WAAA,OAGF,CAAA,MACI,aAAA,KACA,cAAA,KACA,cAAA,IAGJ,CAAA,UACI,WAAA,QAMJ,CAAA,WAAa,YAAA,UAAA,CAAA,eAAA,CAAA,KAAA,CAAA,MAEb,CAFA,WAEA,CAAA,EAAgB,UAAA,IAAgB,eAAA,UAA2B,eAAA,KAClD,YAAA,OAAqB,aAAA,MAE9B,CALA,WAKA,CAAA,EAAgB,eAAA,MAAsB,eAAA,UAC7B,YAAA,OAAqB,aAAA,OC3J9B,OAAA,MACE,C3CqBA,Q2CrBA,CxCJF,awCIE,C3CqBA,Q2CrBA,CvCIF,WuCJE,IAAA,C3CqBA,O2CrBA,CAAA,CAAA,C3C0EF,U2C1EE,C3CqBA,Q2CrBA,C3C2BF,Q2C3BE,CAAA,CrCDF,YqCCE,C3CqBA,Q2CrBA,CnCFF,gBmCEE,C3CqBA,Q2CrBA,C3CkCF,Q2ClCE,CAAA,GAAA,C3C8FF,mB2CxFI,QAAA,KAGF,C3CkBF,S2ClBE,C3CyBF,S2CzBE,C3CyBF,S2CzBE,C3CmCF,Y2ClCI,IAAA,gBACA,MAAA,KACA,OAAA,aACA,SACA,EAGF,CAAA,aAAA,C5BEA,Q4BFA,C5B4BF,W4B5BE,C5B4BF,Y4B5BE,C/BdE,c+BeA,aAAA,MAGF,CxCaE,QwCZA,YAAA,MAGF,ChCFF,YgCGI,OAAA,MACA,WAAA,MAGF,aACE,OCjCJ,CzCoCI,QyCpCJ,CAAA,YACE,MAAA,MACA,eAAA,OACA,CzCiCE,QyCjCF,CAHF,YAGE,CAAA,WACE,YAAA,IAAA,qBACA,KAAA,KAEF,CzC6BE,QyC7BF,CAPF,YAOE,CF+CF,0BE9CI,WAAA,ICXJ,C7C0BE,Q6C1BF,CAAA,cACE,UAAA,MACA,SAAA,SACA,MAAA,EACA,OAAA,EACA,cAAA,KAGF,C7CkBE,Q6ClBF,CARA,cAQA,CAAA,IAAA,CAAA,gBAAA,C7CkBE,Q6ClBF,CARA,cAQA,CAAA,IAAA,CAAA,gBAAA,MAAA,CARA,cAQA,CAAA,wBAGE,ICTA,CAAA,UAAA,CAAA,aACE,OAAA,KAGF,CAJA,UAIA,CAAA,yBACE,SAAA,MACA,IAAA,IACA,OAAA,YACA,IACA,KAAA,IAAA,IAAA,CAAA,CAAA,MAAA,EAAA,OAAA,EAAA,GACA,MAAA,KACA,UAAA,MACA,OAAA,IAAA,MAAA,IAAA,mBACA,WAAA,IAAA,kBAAA,EAAA,SACA,QAAA,KACA,QAAA,KACA,eAAA,OAGF,CAnBA,UAmBA,CAfA,yBAeA,QACE,MAAA,IACA,YAAA,KACA,aAAA,KACA,YAAA,WAGF,CA1BA,UA0BA,CAAA,wBACE,QAAA,KACA,gBAAA,cACA,YAAA,QACA,IAAA,KACA,cAAA,IACA,OAAA,KAGF,CAnCA,UAmCA,CAAA,UACE,KAAA,EAAA,EAIF,CAxCA,UAwCA,CAAA,mB5CxCA,KAAA,QACA,QAAA,KACA,gBAAA,OACA,YAAA,eACA,EAAA,KACA,IAAA,KACA,WAAA,KACA,MAAA,IAAA,qBACA,iBAAA,IAAA,qBACA,aAAA,IACA,aAAA,IAAA,uBACA,aAAA,oBAhBc,EAkBd,YAAA,OACA,SAAA,OACA,cAAA,SACA,OAAA,QAGA,YAAA,KAEA,C4CrBA,U5CqBA,C4CmBA,kB5CnBA,MAAA,KAAA,CAAA,UACE,MAAA,IAAA,2BACA,iBAAA,IAAA,2BAGF,C4C1BA,U5C0BA,C4CcA,kB5CdA,eACE,QAAA,IAAA,MAAA,IAAA,qBACA,eAAA,KAGF,C4C/BA,U5C+BA,C4CSA,kB5CTA,CAVA,SAWE,QAAA,GACA,OAAA,YAGF,C4CpCA,U5CoCA,C4CIA,kB5CJA,CAAA,OACE,QAAA,KAGF,C4CxCA,U5CwCA,C4CAA,kB5CAA,CAAA,KACE,MAAA,IAAA,2BACA,iBAAA,IAAA,2B4CEF,CA5CA,UA4CA,CAAA,gBACE,cAAA,KAGF,CAhDA,UAgDA,CAAA,cAAA,CAAA,OACE,gBAAA,UACA,WAAA,IAAA,0BAIF,CAtDA,UAsDA,CANA,cAOE,aAAA,KACA,WAAA,EACA,WAAA,KACA,KAAA,EAAA,EACA,WAAA,IAAA,oBAAA,EAAA,OACA,OAAA,IAAA,MAAA,IAAA,mBAAA,EAAA,MAGF,CA/DA,UA+DA,CAfA,aAeA,OACE,QAAA,KAGF,CAnEA,UAmEA,CAAA,qBACE,gBAAA,KAGF,CAvEA,UAuEA,CAAA,oBACE,QAAA,KAIF,CA5EA,UA4EA,CAAA,UACE,UAAA,IACA,YAAA,IAGF,CAjFA,UAiFA,CAAA,WACE,YAAA,IAGF,CArFA,UAqFA,CAAA,cACE,YAAA,IAEF,CAxFA,UAwFA,CAAA,YACE,YAAA,IAGF,CA5FA,UA4FA,CAAA,YACE,QAAA,KACA,aAAA,KACA,YAAA,IAGF,CAlGA,UAkGA,CAAA,6BACE,WAAA,KAGF,CAtGA,UAsGA,CAAA,6BACE,WAAA,IAAA,0BAGF,CA1GA,UA0GA,CAAA,wBACE,SAAA,MACA,IAAA,EACA,WAAA,IAAA,yBAAA,EAAA,OACA,MAAA,MACA,OAAA,KACA,KAAA,EACA,QAAA,KAGF,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OACE,CArHF,UAqHE,CAjHF,yBAkHI,OAAA,MAKN,MACE,2BAAA,MACA,0BAAA,KAAA,GAAA,EAAA,GAAA,EAAA,CAAA,EAAA,KAGF,KAAA,ClB3GA,UkB4GE,2BAAA,MACA,0BAAA,KAAA,GAAA,EAAA,GAAA,EAAA,CAAA,EAAA,KCtIF,C/CmDA,Y+CnDA,CAAA,wBAAA,CAAA,UACE,OAAA,oBACA,EACA,aAAA,IAIF,CAAA,uBAAA,KAAA,CAAA,ClCiBM,KkChBJ,QAAA,OAIF,C/CuCA,Y+CvCA,CAZA,wBAYA,CAAA,YACE,UAAA,IAAA,6BACA,EAAA,KAAA,KAGF,CAjBA,UAiBA,CAAA,kBAEE,QAAA,KAKF,C/C2BA,Y+C3BA,CAxBA,wBAwBA,CAAA,YACE,UAAA,KAMF,C/CoBA,Y+CpBA,CAAA,OACI,SAAA,MAIJ,CApCA,wBAoCA,CApCA,UAoCA,KAAA,CApCA,wBAoCA,CApCA,UAoCA,IAEE,UAAA,OACA,YAAA,IACA,YAAA,IAAA,kBAIF,CA5CA,wBA4CA,IAAA,CAAA,kBAAA,CA5CA,wBA4CA,GAAA,CAAA,kBAEE,MAAA,KACA,WAAA,QAKA,CApDF,SAoDE,CAAA,SAAA,CAAA,iBACE,WAAA,IAAA,0BACA,OAAA,IAAA,MAAA,UAAA,GAAA,KAAA,CAAA,IAAA,0BAAA,GAAA,CAAA,MACA,QAAA,MACA,MAAA,mBACA,EAAA,KAEF,CA3DF,SA2DE,CAPA,SAOA,WACE,EAAA,KACA,QAAA,MACA,OAAA,IAAA,MAAA,UAAA,GAAA,KAAA,CAAA,IAAA,0BAAA,GAAA,CAAA,MAEF,CAhEF,SAgEE,CAZA,SAYA,IAAA,CAhEF,SAgEE,CAZA,SAYA,gBACE,EAAA,KACA,OAAA,IAAA,MAAA,UAAA,GAAA,KAAA,CAAA,IAAA,0BAAA,GAAA,CAAA,MACA,iBAAA,IAAA,cAGJ,CAtEA,SAsEA,CAlBE,QAkBF,CAAA,CpCjDA,QoCkDE,WAAA,EAKF,EAAA,CAAA,uCACE,UACA,EAKA,KAAA,CnB1DF,UmB0DE,CAnFF,wBAmFE,IAAA,CAAA,kBAAA,KAAA,CnB1DF,UmB0DE,CAnFF,wBAmFE,GAAA,CAAA,kBAEE,MAAA,KACA,WAAA,QClFJ,ChD+CA,YgD/CA,CAAA,OAAA,KAAA,CAAA,eACE,YAAA,IACA,WAAA,gBACA,KAGF,ChDyCA,YgDzCA,CANA,OAMA,KAAA,CANA,cAMA,CAAA,CAAA,sBACE,WAAA,IAGF,ChDqCA,YgDrCA,CAVA,OAUA,CAAA,kBACE,WAAA,IACA,WAAA,aACA,KAGF,ChD+BA,YgD/BA,CAhBA,OAgBA,EAAA,CAAA,oBACE,WAAA,KAGF,ChD2BA,YgD3BA,CApBA,OAoBA,EAAA,CAAA,iBACE,WAAA,KAGF,ChDuBA,YgDvBA,CAxBA,OAwBA,GAAA,GACE,WAAA,eACA,KAAA,IAGF,ChDkBA,YgDlBA,CA7BA,OA6BA,GAAA,GACE,WAAA,OAGF,ChDcA,YgDdA,CAjCA,OAiCA,GAAA,EAAA,OACE,WAAA,KAGF,ChDUA,YgDVA,CArCA,OAqCA,GAAA,ChDUA,YgDVA,CArCA,OAqCA,GAEE,WAAA,gBAGF,ChDKA,YgDLA,CA1CA,OA0CA,CAAA,QACE,WAAA,QAGF,ChDCA,YgDDA,CA9CA,OA8CA,CAJA,QAIA,EACE,gBAAA,KAGF,ChDHA,YgDGA,CAlDA,OAkDA,CAAA,OACE,UAAA,IACA,WAAA,MAKF,KAAA,CAAA,QACE,QAAA,YACA,eAAA,OAGF,KAAA,CAAA,QAAA,CAAA,OACE,iBAAA,QAGF,KAAA,CAAA,eAAA,CAJA,OAKE,MAAA,KAGF,KAAA,CAAA,UAAA,CARA,OASE,MAAA,KAGF,KAAA,CAJA,UAIA,CAZA,MAYA,QACE,QAAA,IAGF,KAAA,CAAA,SACE,UAAA,WAGF,KAAA,CApBA,QAoBA,CAJA,SAKE,iBAAA,KAGF,KAAA,CApBA,eAoBA,CARA,SASE,MAAA,KAGF,KAAA,CApBA,UAoBA,CAZA,SAaE,MAAA,QAGF,CArCA,QAqCA,IAAA,CArCA,OAqCA,CAAA,CAAA,aAAA,IAEE,UAAA,KAKF,CnC9CA,gBmC8CA,CAAA,CAAA,KAAA,cACE,WAAA,MAGF,ChD1DA,YgD0DA,CAAA,gBACE,QAAA,KAGF,ChD9DA,YgD8DA,CAAA,e9C7GE,KAAA,QACA,QAAA,KACA,gBAAA,OACA,YAAA,eACA,EAAA,KACA,IAAA,KACA,WAAA,KACA,MAAA,IAAA,qBACA,iBAAA,IAAA,qBACA,aAAA,IACA,aAAA,IAAA,uBACA,aAAA,oBAhBc,EAkBd,YAAA,OACA,SAAA,OACA,cAAA,SACA,OAAA,QAGA,YAAA,KAEA,CF0BF,YE1BE,C8CwFF,c9CxFE,MAAA,KAAA,CAAA,UACE,MAAA,IAAA,2BACA,iBAAA,IAAA,2BAGF,CFqBF,YErBE,C8CmFF,c9CnFE,eACE,QAAA,IAAA,MAAA,IAAA,qBACA,eAAA,KAGF,CFgBF,YEhBE,C8C8EF,c9C9EE,CAVA,SAWE,QAAA,GACA,OAAA,YAGF,CFWF,YEXE,C8CyEF,c9CzEE,CAAA,OACE,QAAA,KAGF,CFOF,YEPE,C8CqEF,c9CrEE,CAAA,KACE,MAAA,IAAA,2BACA,iBAAA,IAAA,2B8CyEJ,CAVA,eAUA,CAAA,eAAA,CAAA,gBAAA,CAAA,eAEE,QAAA,KCxHF,CAAA,uBAAA,IACE,YAAA,IAAA,kBAGF,CAAA,SACE,YAAA,OACA,WAAA,OACA,cAAA,OAGF,CAAA,aAAA,CANA,gBAOE,EAGF,CAAA,oBACE,YAAA,IAAA,aACA,UAAA,aACA,EAAA,MAGF,CANA,oBAOE,OAAA,QACA,QAAA,aACA,eAAA,OAEA,YAAA,KAEA,YAAA,OACA,SAAA,OACA,cAAA,SACA,aAAA,IACA,aAAA,MACA,YAAA,kBACA,IAGF,CAtBA,oBAuBE,MAAA,QACA,iBAAA,gBAAA,OAAA,CAAA,MACA,aAAA,QAGF,CA5BA,mBA4BA,OACE,MAAA,QACA,iBAAA,gBAAA,IAAA,CAAA,SAGF,CAjCA,mBAiCA,OAAA,CAjCA,mBAiCA,QAEE,MAAA,QACA,iBAAA,gBAAA,OAAA,CAAA,SACA,aAAA,QAGF,CAlDA,SAkDA,CAAA,gBACE,cAAA,IAGF,CAAA,WACE,YAAA,UACA,YAAA,IACA,YAAA,IACA,cAAA,IAGF,CAPA,WAOA,CAAA,IACE,QAAA,aACA,eAAA,IACA,aAAA,IAGF,CAbA,WAaA,CAAA,OACE,QAAA,aACA,eAAA,ICvEF,CAAA,qBACE,SAAA,MACA,QAAA,IACA,OAAA,IACA,MAAA,IACA,MAAA,MACA,OAAA,MAGF,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OACE,CAVF,qBAYI,OAAA,gBnD0BJ,MACE,aAAA,KAAA,IAAA,EAAA,UAAA,IAAA,EAAA,SAAA,EAAA,KAAA,EAAA,WAEF,MACE,iBAAA,GAAA,KAAA,EAAA,MAAA,IAAA,KAAA,EAAA,KAAA,EAAA,MAEF,MACE,kBAAA,WAAA,EAAA,QAAA,EAAA,MAAA,EAAA,UAEF,MACE,cAAA,GAAA,KAAA,EAAA,MAAA,IAAA,KAAA,EAAA,KAAA,EAAA,MqDjDF,C9CiBA,O8CjBA,IAAA,C9CmMA,O8CnMA,C9CgCE,O8ChCF,C9CgCE,Q8ChCF,C9C+CE,S8C/CF,C9C+CE,S8C9CA,iBAAA,IAAA,sBACA,MAAA,IAAA,kBAGF,C9CYA,O8CZA,IAAA,C9C8LA,O8C9LA,C9C2BE,O8C3BF,C9C2BE,O8C3BF,C9C0MA,Q8C1MA,C9C0CE,S8C1CF,C9C0CE,S8C1CF,C9C0CE,S8CzCA,iBAAA,IAAA,sBACA,MAAA,IAAA,kBCNF,C/C8CE,S+C7CA,WAAA,IAAA,MAAA,IAAA,oBAEF,C/CaA,O+CbA,C/CmOA,Q+CnOA,C/C6DI,a+C7DJ,CAAA,CAAA,OACE,aAAA,IAAA,MAAA,IAAA,oBAEF,C/CUA,O+CVA,C/CgOA,Q+ChOA,C/CkPE,Y+ClPF,IAAA,QACI,YAAA,IAAA,MAAA,IAAA,oBAGJ,C/CMA,O+CNA,CAAA,C/CyBE,a+CzBF,CAAA,C/CoCE,S+CnCA,WAAA,IAAA,MAAA,IAAA,oBCZA,ChDiBF,OgDjBE,ChDuOF,QgDvOE,ChD+CA,QgD/CA,CAAA,ChDiEE,agDjEF,CAAA,ChDyPA,YgDzPA,CAAA,CtDsHE,KsDrHA,UAAA,KACA,ChDeJ,OgDfI,ChDqOJ,QgDrOI,ChD6CF,QgD7CE,CAAA,ChD+DA,agD/DA,CAAA,ChDuPF,YgDvPE,CAAA,CtDoHA,IsDpHA,QACE,QAAA,eAIJ,ChDUF,OgDVE,ChDgOF,QgDhOE,ChDwCA,QgDxCA,ChD+QA,QgD/QA,CAAA,ChD0DE,agD1DF,CAAA,ChDkPA,YgDlPA,CAAA,CtD+GE,KsD9GA,UAAA,OAAA,QACA,ChDQJ,OgDRI,ChD8NJ,QgD9NI,ChDsCF,QgDtCE,ChD6QF,QgD7QE,CAAA,ChDwDA,agDxDA,CAAA,ChDgPF,YgDhPE,CAAA,CtD6GA,IsD7GA,QACE,QAAA,eCLN,OAAA,CAAA,CpDkCI,QoDjCF,eANQ,IAOR,cAAA,IAAA,MAAA,IAAA,0BAEF,OAAA,CAAA,EAAA,CpD8BI,QoD7BF,oBATa,IAWf,OAAA,CAAA,EAAA,CpD2BI,QoD1BF,oBAXa,IAeb,KAAA,C3BMF,U2BNE,OAAA,CAAA,CpDsBE,QoDrBA,oBApBS,IAAA,0BCYb,ChBXA,YiBqBE,WAAA,KAaA,WAAA,SAAA,CAAA,MAAA,EAAA,ODvBF,ChBXA,YiBmCI,aAAA,IAAA,CAAA,OAAA,EAAA,EAAA,EAAA,KAAA,EAAA,QACA,UAAA,KACA,MAAA,MAIE,MAAA,YAEF,UAAA,IAAA,cD5BJ,C7CAA,a8CME,WAAA,KAaA,WAAA,SAAA,CAAA,MAAA,EAAA,ODnBF,C7CAA,a8CoBI,aAAA,IAAA,CAAA,OAAA,EAAA,EAAA,EAAA,KAAA,EAAA,QACA,UAAA,KACA,MAAA,MAIE,MAAA,YAEF,UAAA,IAAA,cDrBJ,CTvBA,uBSuBA,KAAA,CAAA,gBAAA,CAAA,WAAA,CAAA,UCDE,WAAA,KAaA,WAAA,SAAA,CAAA,MAAA,EAAA,ODZF,CTvBA,uBSuBA,KAAA,CAAA,gBAAA,CAAA,WAAA,CAAA,UCaI,aAAA,IAAA,CAAA,OAAA,EAAA,EAAA,EAAA,KAAA,EAAA,QACA,UAAA,KACA,MAAA,MAEE,MAAA,IAAA,aAIF,UAAA,IAAA,cDhBJ,CzBwDA,Y0B9DE,WAAA,KAaA,WAAA,SAAA,CAAA,MAAA,EAAA,ODPF,CzBwDA,Y0BhDI,aAAA,IAAA,CAAA,OAAA,EAAA,EAAA,EAAA,KAAA,EAAA,QACA,UAAA,KACA,MAAA,MAIE,MAAA,YAEF,UAAA,IAAA,cCvCF,MACE,aAAA,MAEA,KAAA,KAAA,C9BiBJ,W8BDI,cAAA,MAAA,sBAAA,MAAA,qBAAA,KAAA,mBAAA,IAAA,iBAAA,gBAAA,KAAA,qBAAA,QAAA,qBAAA,QAAA,qBAAA,IAAA,qBAAA,oBAAA,IAAA,0BAAA,kBAAA,IAAA,sBAAA,sBAAA,IAAA,kBAAA,kBAAA,IAAA,mBAAA,gCAAA,IAAA,4BAAA,gCAAA,MAAA,kCAAA,IAAA,oBAAA,6BAAA,IAAA,mBAAA,6BAAA,MAAA,+BAAA,IAAA,oBAAA,wBAAA,IAAA,iBAAA,wBAAA,MAAA,wBAAA,IAAA,0BAAA,wBAAA,IAAA,wBAAA,wBAAA,IAAA,sBAAA,wBAAA,IAAA,kBAAA,mBAAA,KAAA,oBAAA,KAAA,gBAAA,YAAA,wBAAA,QAAA,2BAAA,IAAA,qBAAA,2BAAA,IAAA,qBAAA,iCAAA,IAAA,2BAAA,iCAAA,IAAA,2BAAA,mBAAA,IAAA,iBAAA,mBAAA,IAAA,0BAAA,0BAAA,IAAA,0BAAA,0BAAA,IAAA,mBAAA,uBAAA,IAAA,4BAAA,uBAAA,IAAA,4BAAA,8BAAA,IAAA,uBAAA,8BAAA,IAAA,4BAAA,oBAAA,IAAA,mBAAA,oBAAA,IAAA,0BAAA,sBAAA,IAAA,0BAAA,6BAAA,IAAA,4BAAA,6BAAA,IAAA,0BAAA,6BAAA,IAAA,4BAAA,6BAAA,IAAA,0BAAA,yBAAA,IAAA,sBAAA,sBAAA,IAAA,sBAAA,oBAAA,IAAA,mBAAA,yBAAA,IAAA,mBAAA,qBAAA,QAAA,qBAAA,QAAA,uBAAA,KAAA,2BAAA,QAAA,2BAAA,IAAA,qBAAA,uBAAA,IAAA,sBAAA,yBAAA,IAAA,oBAAA,uBAAA,IAAA,kBAAA,6BAAA,IAAA,6BAAA,6BAAA,IAAA,6BAAA,mBAAA,QAAA,0BAAA,QAAA,mCAAA,IAAA,oBAAA,gCAAA,IAAA,sBAAA,mCAAA,IAAA,yBAAA,gCAAA,IAAA,sBAAA,gCAAA,IAAA,yBAAA,6BAAA,IAAA,sBAAA,8BAAA,IAAA,yBAAA,2BAAA,IAAA,sBAAA,+BAAA,IAAA,yBAAA,4BAAA,IAAA,sBAAA,oCAAA,IAAA,yBAAA,iCAAA,IAAA,sBAAA,oCAAA,IAAA,yBAAA,iCAAA,IAAA,sBAAA,8BAAA,IAAA,oBAAA,2BAAA,IAAA,sBAAA,8BAAA,IAAA,yBAAA,2BAAA,IAAA,sBAAA,gCAAA,IAAA,yBAAA,6BAAA,IAAA,sBAAA,gCAAA,IAAA,yBAAA,6BAAA,IAAA,sBAAA,6BAAA,IAAA,yBAAA,0BAAA,IAAA,4BAAA,iCAAA,IAAA,yBAAA,8BAAA,IAAA,sBAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,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A,EAAA,IAAA,kBAAA,EAAA,MAAA,IAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,IAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,IAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,IAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,IAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,IAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,IAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,IAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,IAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,IAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,IAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,2BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,kBAAA,EAAA,KAAA,KAAA,iBAAA,QAAA,mBAAA,QAVA,KAAA,C9BWJ,U8BVM,aAAA,KASF,cAAA,IAAA,oBAAA,sBAAA,IAAA,cAAA,qBAAA,IAAA,6BAAA,mBAAA,IAAA,iBAAA,gBAAA,IAAA,6BAAA,qBAAA,QAAA,qBAAA,IAAA,4BAAA,qBAAA,IAAA,6BAAA,oBAAA,KAAA,kBAAA,IAAA,sBAAA,sBAAA,IAAA,kBAAA,kBAAA,IAAA,mBAAA,gCAAA,IAAA,wBAAA,gCAAA,IAAA,6BAAA,kCAAA,IAAA,oBAAA,6BAAA,IAAA,wBAAA,6BAAA,IAAA,6BAAA,+BAAA,IAAA,oBAAA,wBAAA,IAAA,4BAAA,wBAAA,IAAA,0BAAA,wBAAA,IAAA,wBAAA,wBAAA,IAAA,wBAAA,wBAAA,IAAA,sBAAA,wBAAA,IAAA,kBAAA,mBAAA,QAAA,oBAAA,IAAA,0BAAA,gBAAA,MAAA,wBAAA,KAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,IAAA,2BAAA,IAAA,qBAAA,2BAAA,IAAA,qBAAA,iCAAA,IAAA,2BAAA,iCAAA,IAAA,2BAAA,mBAAA,IAAA,0BAAA,mBAAA,YAAA,0BAAA,IAAA,0BAAA,0BAAA,IAAA,4BAAA,uBAAA,IAAA,mBAAA,uBAAA,YAAA,8BAAA,IAAA,uBAAA,8BAAA,IAAA,0BAAA,oBAAA,IAAA,mBAAA,oBAAA,IAAA,6BAAA,sBAAA,IAAA,6BAAA,6BAAA,IAAA,4BAAA,6BAAA,IAAA,6BAAA,6BAAA,IAAA,4BAAA,6BAAA,IAAA,6BAAA,yBAAA,IAAA,sBAAA,sBAAA,IAAA,sBAAA,oBAAA,IAAA,mBAAA,yBAAA,IAAA,mBAAA,qBAAA,IAAA,4BAAA,qBAAA,IAAA,mBAAA,uBAAA,IAAA,6BAAA,2BAAA,IAAA,0BAAA,2BAAA,IAAA,qBAAA,uBAAA,IAAA,sBAAA,yBAAA,IAAA,oBAAA,uBAAA,IAAA,kBAAA,6BAAA,IAAA,6BAAA,6BAAA,IAAA,6BAAA,mBAAA,IAAA,4BAAA,0BAAA,IAAA,4BAAA,mCAAA,IAAA,yBAAA,gCAAA,IAAA,sBAAA,mCAAA,IAAA,yBAAA,gCAAA,IAAA,sBAAA,gCAAA,IAAA,yBAAA,6BAAA,IAAA,sBAAA,8BAAA,IAAA,yBAAA,2BAAA,IAAA,sBAAA,+BAAA,IAAA,yBAAA,4BAAA,IAAA,sBAAA,oCAAA,IAAA,yBAAA,iCAAA,IAAA,sBAAA,oCAAA,IAAA,yBAAA,iCAAA,IAAA,sBAAA,8BAAA,IAAA,yBAAA,2BAAA,IAAA,sBAAA,8BAAA,IAAA,yBAAA,2BAAA,IAAA,sBAAA,gCAAA,IAAA,yBAAA,6BAAA,IAAA,sBAAA,gCAAA,IAAA,yBAAA,6BAAA,IAAA,sBAAA,6BAAA,IAAA,yBAAA,0BAAA,IAAA,sBAAA,iCAAA,IAAA,yBAAA,8BAAA,IAAA,sBAAA,iBAAA,QAAA,oBAAA,QAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IA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,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,wBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,IAAA,wBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,IAAA,wBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,IAAA,wBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,IAAA,wBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA", + "sources": ["c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/theme-boulder.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\fonts\\_fonts-google.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\_spacing.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_list-styles.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_description-lists.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\helpers\\_cols.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_lists.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_fillin.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_headings.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_links.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_tables.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_front-matter.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_summary-links.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_footnotes.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_index.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_media.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_figures.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_poem.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\chunks\\_codelike.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_prism.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_math.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_permalinks.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\elements\\_misc-content.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\_printing.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\_worksheet.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\_google-search.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\_pretext-search.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\helpers\\_buttons-default.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\interactives\\_runestone.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\interactives\\_webwork.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\interactives\\_sagecell.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\interactives\\_calculators.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\salem\\_other-widen.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\helpers\\_expandable.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\page-parts\\_body.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\denver\\_parts-paper.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\page-parts\\_banner.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\page-parts\\_navbar.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\page-parts\\extras\\_navbar-btn-borders.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\page-parts\\_toc-basics.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\page-parts\\_toc-default.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\page-parts\\extras\\_toc-hidden-scrollbar.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\page-parts\\_footer.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\salem\\_rs-widen.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\page-parts\\extras\\_toc-expand-chevrons.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/_customization.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\chunks\\_asides-basic.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\chunks\\_asides-floating.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\greeley\\_chunks-greeley.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\chunks\\_exercises.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\chunks\\_solutions.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\chunks\\_sidebyside.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\chunks\\helpers\\_inline-heading-mixin.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\chunks\\_discussion-inline.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\chunks\\_knowls.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\components\\chunks\\helpers\\_sidebar-mixin.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\colors\\_color-vars.scss", "c:\\Users\\andyj\\.ptx\\2.32.0\\core\\css\\targets\\html\\boulder/..\\..\\..\\colors\\_color-helpers.scss"], + "sourcesContent": ["$primary-color: #386F94;\n$primary-color-dark: #5192BD;\n$provide-dark-mode: yes;\n/*! Theme: boulder */\n// Theme designed for short articles (i.e., research papers) or course documents.\n// Minimal navigation bar; there is likely only one html page per document.\n\n// Current maintainer: Oscar Levin\n\n// Variables used by theme. CSSBuilder overrides these by prepending\n// different definitions for these variables to this file before the theme\n// is compiled.\n$primary-color: hsl(270, 40%, 15%) !default;\n$primary-color-dark: hsl(270, 50%, 50%) !default;\n$background-color-dark: hsl(270, 10%, 5%) !default;\n\n@use \"sass:map\";\n\n\n// set some default sizing variables - this will also set up\n// defaults for expandable mixin\n@use '../salem/sizing-globals' with (\n $content-width: 600px,\n $content-side-padding: 20px\n);\n\n// Basic components: \n@use 'components/pretext'; \n\n@use '../salem/other-widen';\n\n@use '../denver/parts-paper';\n//@use 'shell';\n@use 'customization';\n@use '../greeley/chunks-greeley';\n\n//@use 'heading-tweaks';\n\n// fonts and colors\n// $body-font: 'Open Sans' !default;\n// $heading-font: 'Roboto' !default;\n@use 'fonts/fonts-google'; // with ($body: $body-font, $heading: $heading-font);\n\n@use \"colors/color-helpers\" as colorHelpers;\n@use \"colors/palette-single-bold\" as palette-single with (\n $primary-color: $primary-color,\n);\n\n\n// primary/secondary color defined as determined by palette-chunks from\n// color-scheme, primary-color, secondary-color\n$primary-color: map.get(palette-single.$colors, 'primary-color');\n//$secondary-color: map.get(palette-dual.$colors, 'secondary-color');\n\n@use 'colors/palette-dark' as palette-dark with (\n $primary-color: $primary-color-dark,\n $background-color: $background-color-dark,\n);\n\n\n$light-colors: map.merge(palette-single.$colors, (\n \"toclevel1-background\": var(--content-background),\n \"toclevel2-background\": var(--content-background),\n \"toclevel3-background\": var(--content-background),\n));\n\n\n$dark-colors: map.merge(palette-dark.$colors, (\n \"toclevel1-background\": var(--content-background),\n \"toclevel2-background\": var(--content-background),\n \"toclevel3-background\": var(--content-background),\n));\n\n@include colorHelpers.set-root-colors($light-colors, $dark-colors);\n", "@use \"sass:map\";\n@use \"sass:string\";\n@use \"sass:list\";\n\n// Fonts to use\n$body: 'Open Sans, Helvetica Neue, Helvetica, Arial, sans-serif' !default;\n$heading: 'PT Serif, Times New Roman, Times, serif' !default;\n$monospace: 'Inconsolata, Consolas, Monaco, monospace;' !default;\n$print: 'PT Serif, Times New Roman, Times, serif' !default;\n\n@function is-variable-font($font-name) {\n $static-fonts: ('PT Serif'); // list of known static fonts used by themes\n @if list.index($font-name, $static-fonts) {\n @return false;\n }\n @return true;\n}\n\n@function generate-import($font-name) {\n @if is-variable-font($font-name) {\n @return 'https://fonts.googleapis.com/css2?family=' + $font-name + ':ital,wght@0,400..700;1,400..700&display=swap';\n }\n @else {\n @return 'https://fonts.googleapis.com/css2?family=' + $font-name + ':ital,wght@0,400;0,700;1,400;1,700&display=swap';\n }\n}\n\n// For now, only try to fetch the first name in the list and assume\n// the rest are system defined fallbacks.\n// lists are 1-indexed\n$body-font: list.nth(string.split($body, ','), 1);\n// @debug \"----------------\" $body-font;\n@import url( generate-import($body-font) );\n\n$heading-font: list.nth(string.split($heading, ','), 1);\n// generate-import($heading-font);\n@import url( generate-import($heading-font) );\n\n$monospace-font: list.nth(string.split($monospace, ','), 1);\n// generate-import($monospace-font);\n@import url( generate-import($monospace-font) );\n\n:root {\n --font-body: #{$body};\n}\n:root {\n --font-headings: #{$heading};\n}\n:root {\n --font-monospace: #{$monospace};\n}\n:root {\n --font-print: #{$print};\n}\n\n// 9/5/24 ... TODO controlled list of fonts ... wait and explore later\n// // Available fonts\n// $serif-options: ('Alegreya', 'Merriweather', 'Noto Serif', 'PT Serif', 'Source Serif 4');\n// $sans-options: ('Alegreya Sans', 'Barlow', 'Lato', 'Open Sans', 'Roboto', 'Source Sans 3');\n// $code-options: ('Inconsolata');\n\n// // Backup lists\n// $sans-backups: ', Helvetica Neue, Helvetica, Arial, sans-serif';\n// $serif-backups: ', Times New Roman, Times, serif';\n\n// // ---------------------------------------------------------\n\n\n// @function add-fonts($list, $backups, $fonts: ()) {\n// @each $font in $list {\n// $fonts: map.set($fonts, $font, (\n// url: '\"https://fonts.googleapis.com/css2?family=#{$font}:wdth,wght@75..100,300..800&display=swap\"',\n// fontlist: $font + $backups,\n// ));\n// }\n// @return $fonts;\n// }\n\n// $fonts: add-fonts($sans-options, $sans-backups);\n// $fonts: add-fonts($serif-options, $sans-backups, $fonts);\n\n// $bodyfont: map.get($fonts, $body);\n// @if not $bodyfont {\n// @error \"Unknown body font: #{$body}\";\n// } @else {\n// @import url(#{map.get($bodyfont, \"url\")});\n// :root {\n// --font-body: #{map.get($bodyfont, \"fontlist\")};\n// }\n// }\n\n// $headingfont: map.get($fonts, $heading);\n// @if not $headingfont {\n// @error \"Unknown heading font: #{$heading}\";\n// } @else {\n// @import url(#{map.get($headingfont, \"url\")});\n// :root {\n// --font-headings: #{map.get($headingfont, \"fontlist\")};\n// }\n// }\n", "// Basic spacing for content\n\n// Breakpoint at which the navbar moves to the bottom of the screen\n$navbar-breakpoint: 800px !default;\n\n// all styling assumes border-box layout measurement\n* {\n box-sizing: border-box;\n}\n\n//----------------------------------------------------------\n// Inter item vertical spacing\n//\n// Set some baseline minimal inter-item vertical spacings\n//\n// Individual items can override this with their own margin. The\n// user of @layer here forces these rules to all have less precedence\n// than any rules not in a layer.\n// Most spacing should be done with margin-top.\n\n@layer spacing {\n // inter-item spacing high level containers\n :is(section, article, .knowl__content) > *:not(:first-child) {\n margin-top: 1.5em;\n }\n\n // but tighten up spacing slightly for adjacent paragraphs in a section\n :is(section, article, .knowl__content) > .para + .para {\n margin-top: 1em;\n }\n\n // lower-level container elements that are expected to contain sequences of items\n // tighter spacing here to avoid visually breaking up the minor container\n .ptx-content :is(ul, td, li, dd, .blockquote, .sbspanel, .para.logical) > *:not(:first-child) {\n margin-top: 0.5em;\n }\n}", "// Types of ol/ul - used by web and ebooks\n// Any spacing should be in _lists.scss, not here\n\nol.no-marker,\nul.no-marker,\nli.no-marker {\n list-style-type: none;\n}\n\nol.decimal {\n list-style-type: decimal;\n}\n\nol.lower-alpha {\n list-style-type: lower-alpha;\n}\n\n// Match LaTeX style for second level (i.e. level=\"1\") lists\nol.lower-alpha-level-1 > li::marker {\n content: \"(\"counter(list-item,lower-alpha)\") \";\n}\n\nol.upper-alpha {\n list-style-type: upper-alpha;\n}\n\nol.lower-roman {\n list-style-type: lower-roman;\n}\n\nol.upper-roman {\n list-style-type: upper-roman;\n}\n\nul.disc {\n list-style-type: disc;\n}\n\nul.square {\n list-style-type: square;\n}\n\nul.circle {\n list-style-type: circle;\n}\n", "/* dl is used for glossaries and descriptions lists.\n Glossaries are simple: bold word by itself on a line.\n Definition indented on the next line.\n Vertical space before the next term.\n\n Description lists are more complicated. The wider version\n (refering to the horizontal indentation of the definition;\n this is the default)\n has the (wrapped) term inline with the definition.\n\n The narrow version is complicated because the term is inline\n with its definition if it fits, otherwise it is on the line above.\n That means the vertical space between entries can't be handled by\n a top margin on the dt. Instead we have an ::after on the dd .\n */\n\ndl:is(.description-list, .glossary) {\n margin: 0;\n //overflow: hidden; // Removed to show permalinks\n\n dt {\n font-weight: bold;\n max-width: 55ex;\n }\n\n dd::after {\n content: \"\";\n display: block;\n clear: both;\n }\n}\n\n.para > dl:is(.description-list) {\n // add some space when inside a .para\n margin-top: 0.5em;\n margin-bottom: 0.5em;\n}\n\ndl.glossary {\n dt {\n margin-top: 1.25em;\n\n &:first-of-type {\n margin-top: 0;\n }\n }\n\n dd {\n margin-left: 5ex;\n }\n}\n\ndl.description-list {\n\n dt,\n dd {\n margin-top: 1em;\n\n &:first-of-type {\n margin-top: 0;\n }\n }\n\n dt {\n float: left;\n clear: both;\n text-align: right;\n width: 18ex;\n margin-right: 1ex;\n }\n\n dd {\n margin-left: 22ex;\n }\n\n &.narrow {\n dt {\n width: 11ex;\n }\n\n dd {\n margin-left: 15ex;\n }\n }\n\n &.wide {\n dt {\n width: 25ex;\n }\n\n dd {\n margin-left: 29ex;\n }\n }\n}\n\ndl.description-list dt:first-of-type {\n clear: none;\n}\n\n.description-list + * {\n clear: both;\n}\n\n/* where do we have nested dl? */\ndl.description-list dl dt {\n width: 8ex;\n}\n\ndl.description-list dd dd {\n margin-left: 18ex;\n}\n\ndl.description-list dl dd {\n margin-left: 12ex;\n}\n\n\n@media screen and (max-width: 480px) {\n dl.description-list dt {\n float: none;\n margin-left: 0;\n text-align: left;\n }\n\n dl.description-list dd,\n dl.description-list.narrow dd,\n dl.description-list.wide dd {\n margin-top: 0.5em;\n margin-left: 3em;\n max-width: calc(100% - 3em);\n }\n}\n", "\n// columns are arranged in row-major order to match print output in LaTeX\n:is(.cols2, .cols3, .cols4, .cols5, .cols6) {\n display: flex;\n flex-wrap: wrap;\n justify-content: start;\n}\n\n// see lists and exercises for sample use\n@mixin allow-cols($el, $col-gap: 2em) {\n @for $i from 2 through 6 {\n .cols#{$i} > #{$el} {\n // columns are a suggestion enforced by a minimum size\n // content that needs to be wider can reduce number of columns\n // in its row\n min-width: calc(100% / $i - #{$col-gap});\n width: min-content;\n margin-right: $col-gap;\n }\n }\n}\n\n", "// Entry point for ol/ul/dl web styling\n\n@use \"list-styles\";\n@use \"description-lists\";\n@use '../helpers/cols';\n\n// generate multi column rules for lists\n@include cols.allow-cols('li');\n\n// use .ptx-content to avoid styling lists in toc/header/etc...\n.ptx-content {\n ol,\n ul {\n\n ol,\n ul {\n // margin-top: 0.5em;\n }\n }\n\n li {\n margin-top: 0.5em;\n // margin-bottom: 0;\n\n // & > .para:first-child {\n // margin-top: 0;\n // }\n\n .li--heading-title {\n font-size: 100%;\n font-weight: normal;\n font-style: italic;\n }\n }\n} // .ptx-content\n\n.para > :is(ol, ul) {\n // add some space when inside a .para\n margin-top: 0.5em;\n margin-bottom: 0.5em;\n}\n\n// provide space for custom markers\nol > li {\n padding-left: 0.25em;\n}\n", "\n.fillin {\n display: inline-block;\n border: none;\n border-width: 1px;\n margin-right: 0.1em;\n margin-left: 0.1em;\n margin-bottom: -0.25em;\n\n &.underline {\n border-bottom-style: solid;\n border-width: 1px;\n }\n\n &.box {\n outline: 1px solid var(--body-text-color);\n height: 1.3em;\n }\n\n &.shade {\n background-color: var(--fillin-background-color, #eee);\n height: 1.3em;\n }\n}\n\n\n:root.dark-mode {\n --fillin-background-color: #444;\n}\n", "// headings for standard page elements - sections/articles/etc...\n// more specialized headings (exercises) should be defined in the specific component\n// complex stylizing (like boxes) should be done by \"chunks\"\n\n// reset size/margin for headings\n.heading:is(h1, h2, h3, h4, h5, h6) {\n margin: 0;\n font-size: unset;\n}\n\n.heading {\n line-height: 1.1;\n font-family: var(--font-headings);\n font-weight: 700;\n margin-top: 0;\n margin-bottom: 0;\n}\n\nsection > .heading {\n font-size: 1.75em;\n color: var(--body-title-color);\n line-height: 1.25em;\n margin-top: 2.5em;\n margin-bottom: 0.5em;\n\n // pull in any following items that default to a larger top margin\n & + * {\n margin-top: 0.5em;\n }\n}\n\n.ptx-content > section > .heading {\n //first heading on page\n margin-top: 0.5em;\n}\n\nsection section > .heading {\n font-size: 1.5em;\n margin-top: 2em;\n}\n\nsection section section > .heading {\n font-size: 1.40em;\n margin-top: 2em;\n}\n\n\narticle > .heading {\n font-size: 1.25em;\n margin-top: 1.5em;\n\n // pull in any following items that default to a larger top margin\n & + * {\n margin-top: 0.5em;\n }\n}\n\n.paragraphs > .heading {\n font-size: 1.125em;\n}\n\n// heading followed by no content and then a subsection that starts with heading\n:is(section, article) > .heading + :is(section, article) > .heading {\n margin-top: 0.5em;\n}\n\n// smaller headings on phone screens\n@media screen and (max-width: 480px) {\n section > .heading {\n font-size: 1.5em;\n line-height: 1.33em;\n margin-top: 1em;\n }\n section section > .heading {\n font-size: 1.3em;\n line-height: 1.15em;\n }\n section section section > .heading {\n font-size: 1.15em;\n line-height: 1em;\n }\n}\n\n.heading.hide-type > .type {\n display: none;\n}\n", "\n// Reset for all links\na {\n color: var(--link-text-color);\n text-decoration: none;\n\n &:hover,\n &:focus {\n text-decoration: none;\n }\n}\n\n\na[href^=\"mailto:\"] {\n white-space: pre;\n}\n\n\n// Body links. .ptx-content to avoid hitting navbar, toc, etc...\n.ptx-content {\n a.internal {\n color: var(--link-text-color);\n font-weight: bold;\n }\n a.external {\n color: var(--link-alt-text-color);\n font-weight: bold;\n }\n a.internal:hover, a.internal:hover *,\n a.internal:focus, a.internal:focus * {\n color: var(--link-active-text-color);\n background-color: var(--link-active-background);\n font-weight: bold;\n }\n a.external:hover, a.external:hover *,\n a.external:focus, a.external:focus * {\n color: var(--link-alt-active-text-color);\n background-color: var(--link-alt-active-background);\n font-weight: bold;\n }\n}\n", "// limit rules targeting basic elements to just content area\n.ptx-content {\n table {\n border-spacing: 0;\n border-collapse: collapse;\n }\n\n td {\n padding: 2px 5px;\n font-size: 90%;\n\n img {\n max-width: 200px;\n margin-right: 30px;\n }\n }\n\n th {\n padding: 2px 5px;\n }\n\n // generate alignment/border mixin classes for both th and td\n @each $cell-type in (th, td) {\n #{$cell-type} {\n .lines {\n white-space: nowrap;\n }\n\n // horizontal alignment options\n @each $class, $align in (l: left, c: center, r: right, j: justify) {\n &.#{$class} {\n text-align: $align;\n }\n }\n\n // vertical alignment options\n @each $class, $align in (t: top, b: bottom, m: middle) {\n &.#{$class} {\n vertical-align: $align;\n }\n }\n\n // border options\n @each $side, $side-symbol in (left: l, right: r, top: t, bottom: b) {\n @for $i from 0 through 3 {\n &.#{$side-symbol}#{$i} {\n @if $i ==0 {\n border-#{$side}: none;\n }\n\n @else {\n border-#{$side}: #{$i}px solid var(--body-text-color);\n }\n }\n }\n }\n }\n }\n\n\n // when cells do not have a border on left and right, add padding\n th.r0.l0,\n td.r0.l0 {\n padding-left: 0.8em;\n padding-right: 0.8em;\n }\n\n tr.header-vertical {\n th {\n writing-mode: vertical-rl;\n padding-left: 2em;\n }\n }\n\n .center {\n table {\n text-align: center;\n margin-left: auto;\n margin-right: auto;\n }\n }\n}\n\n// Rules with non-generic targeting\n\n.tabular-box {\n margin-top: 0.5em; //minimum space above to separate from figcaption\n overflow-x: auto;\n}\n\n.tabular-box.natural-width table {\n margin-left: auto;\n margin-right: auto;\n}\n\n// More specific types of tables\n\ntable.notation-list {\n tr {\n th {\n text-align: left;\n margin-left: 1em;\n }\n\n td {\n text-align: left;\n vertical-align: top;\n }\n }\n}\n\n\n\n", "// Styles for the items that are (at least generally) a part of the front matter\n// There are some pretty generic class names. Those get wrapped with a class\n// limiting their scope to the expected page\n\n.frontmatter {\n & > .heading {\n display: block;\n text-align: center;\n }\n\n & > .heading .title,\n .book > .heading .title {\n font-size: 1.3em;\n }\n\n & > .heading .subtitle,\n .book > .heading .subtitle {\n display: block;\n font-weight: normal;\n color: var(--byline-color);\n font-size: 0.875em;\n line-height: 1.42857em;\n margin-top: 0.35714em;\n }\n\n & > .para:first-of-type {\n margin-top: 4em;\n }\n\n & > .author,\n & > .credit {\n margin-top: 2em;\n text-align: center;\n }\n\n .author:first-of-type {\n margin-top: 4em;\n }\n\n & > .author .author-name {\n font-size: 120%;\n }\n\n .date {\n display: block;\n margin-top: 2em;\n text-align: center;\n }\n\n .credit .title {\n font-size: 1em;\n }\n\n .credit .author {\n font-size: 0.9em;\n margin-top: 0.75em;\n }\n\n .author-info {\n font-size: 90%;\n }\n\n .summary-links {\n margin-top: 4em;\n }\n\n .abstract {\n margin: 4em 2em;\n }\n\n .keywords, .support {\n margin-top: 2em;\n }\n\n .abstract, .keywords, .support {\n & > .title {\n font-size: 1.125em;\n font-weight: 600;\n line-height: 1.125em;\n display: inline;\n }\n\n & > .title::after {\n content: \".\\2009\\2009\\2009\";\n }\n\n & > .title + .para {\n display: inline;\n }\n }\n\n .colophon {\n .copyright {\n margin-top: 2.5em;\n }\n\n .license {\n margin-top: 2.5em;\n }\n }\n}\n", "\n/* Start of division toc links */\n// .ptx-content to override _links rules\n.ptx-content .summary-links {\n font-family: var(--font-headings);\n display: block;\n margin-top: 1em;\n\n a {\n color: var(--summary-link-text-color);\n background: var(--summary-link-background);\n font-size: 1.5em;\n line-height: 1.25em;\n padding: 10px 20px;\n padding-right: 60px;\n border-radius: 3px;\n position: relative;\n display: block;\n font-weight: unset;\n\n .title{\n font-style: normal;\n }\n\n .codenumber {\n margin-right: 0.41667em;\n }\n\n &::after {\n // triangles\n right: 0.83333em;\n content: \"\";\n position: absolute;\n top: 50%;\n margin-top: -0.4em;\n width: 0;\n height: 0;\n border-top: 0.4em solid transparent;\n border-bottom: 0.4em solid transparent;\n border-left: 0.4em solid var(--summary-link-text-color);\n }\n\n &:hover {\n color: var(--summary-link-hover-text-color);\n background: var(--summary-link-hover-background);\n\n // need to override work done in _links\n * {\n color: var(--summary-link-hover-text-color);\n background: var(--summary-link-hover-background);\n }\n .title {\n font-weight: normal;\n }\n\n &::after {\n border-left: 0.4em solid var(--summary-link-hover-text-color);\n } \n } \n }\n\n ul {\n list-style-type: none;\n padding: 0;\n margin-top: 0;\n }\n\n li {\n margin-top: 5px;\n }\n}\n\n@media screen and (width <= 480px) {\n .ptx-content .summary-links a {\n //shrink on mobile\n font-size: 100%;\n line-height: 1.25em;\n }\n}\n", "$border-radius: 0px !default;\n\n.ptx-footnote {\n display: inline-block;\n position: relative;\n}\n\n.ptx-footnote[open] {\n display: contents;\n}\n\n\n.ptx-footnote[open] .ptx-footnote__number::before {\n font-size: smaller;\n content: \"[x]\";\n visibility: visible;\n vertical-align: super;\n}\n\n.ptx-footnote[open] .ptx-footnote__number sup {\n display: none;\n}\n\n.ptx-footnote__number {\n display: inline-block;\n cursor: pointer;\n min-width: 1em; //hopefully enough space...\n}\n\n.ptx-footnote__number::marker {\n content: \"\";\n}\n\n.ptx-footnote__contents {\n display: block;\n font-style: italic;\n background: var(--knowl-background);\n border-radius: $border-radius;\n padding: 8px;\n margin: 4px auto;\n width: fit-content;\n max-width: calc(100% - 60px);\n border: 2px solid var(--knowl-border-color);\n //reset color/weight/size in case used in block that changed them\n // e.g. theorem title in denver\n color: var(--body-text-color);\n font-weight: normal;\n font-size: var(1rem);\n}\n", "\n\n/* the index at the back of the book */\n// TODO - refactor\n\n\n.navbar .indexnav {\n position: absolute;\n top: 46px;\n right: 0;\n}\n\n.mininav {\n float: left;\n padding-top: 0.7ex;\n padding-left: 1ex;\n}\n\n\n.indexjump {\n margin-left: 1.5ex;\n margin-top: 0.2ex;\n padding-top: 0;\n float: left;\n line-height: 0.95;\n}\n\n.indexjump a {\n padding-left: 2.5px;\n padding-right: 0.5px;\n width: 2.5ex;\n/*\n* * omitted, because we put a space in the source\n* padding-right: 3px;\n* */\n margin-right: -1px;\n color: inherit;\n font-size: 80%;\n text-align: center;\n}\n.indexjump a::after{\n content: \"\";\n display: inline-block;\n}\n.indexjump a:nth-of-type(14){\n padding-left: 1.8ex;\n}\n.indexjump a:last-child {\n padding-right: 10px;\n}\n\n.indexjump a:hover {\n background: var(--activated-content-bg);\n}\n\n.indexitem {\n margin-top: 4px;\n}\n\n.subindexitem {\n margin-left: 2em;\n font-size: 95%;\n margin-top: -1px;\n}\n\n.subsubindexitem {\n margin-left: 3.5em;\n font-size: 95%;\n margin-top: -1px;\n}\n\n.indexknowl {\n margin-left: 0.11em;\n}\nem + .indexknowl {\n margin-left: -0.25em;\n}\n.indexknowl a {\n margin-left: 2em;\n}\n\n.indexitem .see,\n.subindexitem .see,\n.subsubindexitem .see {\n margin-left: 1em;\n margin-right: 0;\n}\n.indexitem .seealso,\n.subindexitem .seealso,\n.subsubindexitem .seealso {\n margin-left: 1em;\n margin-right: 0;\n}\n.indexitem .see em,\n.subindexitem .see em,\n.subsubindexitem .see em,\n.indexitem .seealso em,\n.subindexitem .seealso em,\n.subsubindexitem .seealso em {\n margin-right: 0.25em;\n font-style: italic;\n}\n/* note that multiple things after \"see\" are in separate spans */\n.indexitem .see + .see,\n.subindexitem .see + .see,\n.subsubindexitem .see + .see,\n.indexitem .seealso + .seealso,\n.subindexitem .seealso + .seealso,\n.subsubindexitem .seealso + .seealso {\n margin-left: 0;\n margin-right: 0;\n}\n\n.indexitem .indexknowl {\n font-size: 90%;\n}\n\n.indexitem [data-knowl], .subindexitem [data-knowl], .indexitem [data-knowl]:hover {\n padding-right: 2px;\n padding-left: 2px;\n}\n.indexknowl [data-knowl]:hover, .indexknowl .active[data-knowl] {\n margin-left: 2em;\n}\n\n.subindexitem .indexknowl {\n font-size: 95%;\n}\n.subsubindexitem .indexknowl {\n font-size: 95%;\n}\n\n.indexletter {\n margin-top: 1.5em;\n}\n", "// ---------------------------------------------\n// containers for images, audio, video, and asymptote\n.image-box,\n.audio-box,\n.video-box,\n.asymptote-box {\n position: relative;\n}\n\n.image-box .asymptote-box iframe.asymptote,\niframe.asymptote,\n.video-box .video,\n.video-box .video-poster {\n position: absolute; top: 0; left: 0; width: 100%; height: 100%;\n}\n\n// images in containers should grow to fit space\n.image-box img,\nimg.contained {\n width: 100%;\n}\n\n// ---------------------------------------------\n// images\n.ptx-content img, .ptx-content svg {\n // for body images in dark mode, we want to be able to force a light colored background\n // as most transparent images will assume that the background is white\n background: var(--ptx-image-bg);\n}\n// but mermaid svg should always have a transparent background\n.mermaid > svg {\n background: none;\n}\n\n.image-description {\n summary {\n list-style: none; // no marker\n cursor: pointer;\n }\n}\n\n// download links after an image\n.image-archive {\n margin: 0.75em auto 0;\n font-family: var(--font-monospace);\n justify-content: center;\n display: flex;\n gap: 0.5em;\n}\n\n// TODO - refactor mag_popup JS and CSS\n// was .ptx-content .image-box > img:not(.draw_on_me):not(.mag_popup)\n.image-box > img:not(.mag_popup) {\n cursor: zoom-in;\n}\n\nimg.mag_popup {\n border: 1px solid #666;\n box-shadow: 4px 6px 4px #999;\n cursor: zoom-out;\n}\n\n.mag_popup_container {\n width:100%;\n position:absolute;\n z-index:1001;\n overflow-x: visible;\n}\n\n// ---------------------------------------------\n// other\n.audio {\n width: 100%;\n}\n\n.video-poster {\n cursor: pointer;\n}\n", "figure {\n clear: both;\n position: relative;\n\n // override browser margins\n margin-left: 0;\n margin-right: 0;\n}\n\nfigcaption {\n margin-left: auto;\n margin-right: auto;\n margin-top: 0.5em;\n\n code.code-inline {\n white-space: pre;\n }\n \n .codenumber,\n .type {\n font-weight: 700;\n }\n\n // add n-dashes\n .codenumber::after,\n .type:last-of-type::after {\n content: \"\\2002\";\n }\n\n // make sure first para comes right after title\n .para:first-of-type {\n display: inline;\n }\n}\n\n// tables are inset\nfigure.table-like {\n margin-left: 30px;\n margin-right: 30px;\n\n // but lists can go full right\n .list {\n margin-right: 0;\n }\n}\n\n@media (max-width <= 943px){\n .figure-like {\n overflow-x: auto;\n }\n}\n", "/* style for poems */\n.poem {\n display: table;\n margin: 0 auto;\n width: auto;\n max-width: 90%;\n}\n\n.poem > .heading {\n display: block;\n text-align: center;\n}\n\nsection article.poem > .heading::after {\n content: \"\";\n}\n\n.poem > .heading > .title {\n font-weight: bold;\n font-size: 1.2em;\n line-height: 1.2em;\n}\n\n.poem .author {\n font-style: italic;\n margin-top: 0.75em;\n}\n\n.poem .author.left {\n text-align: left;\n}\n\n.poem .author.center {\n text-align: center;\n}\n\n.poem .author.right {\n text-align: right;\n}\n\n.poem .stanza > .heading {\n text-align: center;\n font-weight: bold;\n font-size: 1em;\n line-height: 1em;\n}\n\n.poem .stanza + .stanza {\n margin-top: 1em;\n}\n\n.poem .heading + .stanza {\n margin-top: 0.2em;\n}\n\n.poem .heading + .line {\n margin-top: 0.2em;\n}\n\n.poem .line.left {\n text-align: left;\n margin-left: 4em;\n text-indent: -4em;\n}\n\n.poem .line.center {\n text-align: center;\n}\n\n.poem .line.right {\n text-align: right;\n}\n\n.poem .tab {\n margin-left: 2em;\n}\n", "@mixin code-text {\n font-family: var(--font-monospace);\n background: var(--code-background);\n font-size: .93rem;\n line-height: 1.2;\n}\n\n@mixin code-inline-spacing {\n line-height: normal; //prevent extra \"padding\" based on line-height\n padding: 0.0625em .15em;\n}\n\n// wide programs need to be scrollable\n.code-box {\n overflow-x: auto;\n}\n\n.code-display {\n overflow-x: auto; //scroll if overflowing\n font-family: var(--font-monospace);\n}\n\n.console,\n.program {\n border: 1px solid var(--page-border-color);\n padding: 5px 15px;\n overflow-x: auto;\n margin: 0;\n @include code-text();\n}\n\n.code-inline {\n font-family: var(--font-monospace);\n white-space: pre;\n color: var(--body-text-color);\n background: var(--code-inline-background);\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n border-radius: 0.2em;\n display: inline-block;\n overflow-x: auto;\n max-width: 100%;\n vertical-align: middle;\n @include code-inline-spacing();\n}\n\n\n.prompt.unselectable {\n user-select: none;\n}\n\n// code blocks are preformatted text that is not a program\n.code-block {\n border-left: 1px solid #aaa;\n padding: 0 15px 5px;\n overflow-x: auto;\n background: var(--code-background);\n margin-top: 0;\n margin-bottom: 0;\n @include code-text();\n}\n\n.code-block::before {\n content:' ';\n font-size: 50%;\n border-top: 1px solid #aaa;\n display: block;\n margin-right: auto;\n margin-left: -15px;\n width: 3.0em;\n}\n\n// special handling for code-display as it appears inside .paras\n// and may need space around it\n.code-display {\n margin: 0.5em 0;\n}\n// if inside clipboardable, move margin to that container and turn some into padding\n// to help make sure clipboard icon is contained inside the code-display in dark mode\n.clipboardable:has(.code-display) {\n margin: 0.25em 0;\n\n .code-display {\n margin: 0;\n padding: 0.25em 0;\n }\n}\n\n\n.clipboardable {\n position: relative; // To anchor the code-copy button\n display: flow-root;\n\n .code-copy {\n position: absolute;\n right: 0;\n top: 0;\n opacity: 0.25;\n border-width: 0;\n background: none;\n cursor: pointer;\n z-index: 1;\n white-space-collapse: collapse;\n padding: 1px;\n scale: 0.85;\n\n &:hover {\n opacity: 0.7;\n }\n\n .checkmark {\n display: none;\n }\n\n &.copied {\n opacity: 1;\n color: mediumseagreen;\n cursor: not-allowed;\n pointer-events: none;\n\n .copyicon {\n display: none;\n }\n\n .checkmark {\n display: inline;\n }\n }\n }\n}\n\n@media print {\n .code-copy {\n display: none;\n }\n}\n", "@use '../chunks/codelike';\n\n// Prism stylesheets built locally as default ones don't support light/dark switching\n// this is a merged version of the default and dark themes\n\n// Default prism styling\n// Blocks\npre[class*=\"language-\"] {\n margin: 0;\n overflow: auto;\n border: 1px solid #e1e1e1;\n}\n\n// Inline code\n:not(pre) > code[class*=\"language-\"] {\n padding: .1em;\n border-radius: .3em;\n white-space: normal;\n}\n\ncode[class*=\"language-\"],\npre[class*=\"language-\"] {\n color: black;\n background: #fdfdfd;\n text-shadow: none;\n font-family: var(--font-monospace);\n text-align: left;\n white-space: pre;\n word-spacing: normal;\n word-break: normal;\n word-wrap: normal;\n line-height: 1.2;\n tab-size: 4;\n hyphens: none;\n\n &.code-inline {\n // unclobber some inline code styles\n @include codelike.code-inline-spacing();\n }\n\n &::selection,\n & ::selection {\n background: #b3d4fc;\n }\n\n .token {\n \n &:is(.comment,\n .prolog,\n .doctype,\n .cdata) {\n color: #2a9716;\n }\n \n &.punctuation {\n color: #000;\n }\n \n &.namespace {\n opacity: .9;\n }\n \n &:is(.property,\n .tag,\n .boolean,\n .number,\n .constant,\n .symbol,\n .deleted) {\n color: rgb(41, 120, 15);\n }\n \n &:is(.selector,\n .attr-name,\n .string,\n .char,\n .builtin,\n .regex,\n .inserted) {\n color: #a11;\n }\n \n &:is(.operator,\n .entity,\n .url) {\n color: #000;\n background: none;\n }\n \n &:is(.atrule,\n .attr-value,\n .keyword) {\n color: #0679B7;\n }\n \n &.function,\n &.class-name {\n color: #30a;\n }\n \n &.important,\n &.variable {\n color: rgb(0, 0, 0);\n }\n \n \n &.important,\n &.bold {\n font-weight: bold;\n }\n \n &.italic {\n font-style: italic;\n }\n \n &.entity {\n cursor: help;\n }\n }\n \n // -------------------------------------------\n // Line numbers\n &.line-numbers {\n position: relative;\n padding-left: 3.8em;\n counter-reset: linenumber;\n overflow: auto;\n \n > code {\n position: relative;\n white-space: inherit\n }\n \n .line-numbers-rows {\n position: absolute;\n pointer-events: none;\n top: 0;\n font-size: 100%;\n left: -3.8em;\n width: 3em;\n letter-spacing: -1px;\n border-right: 1px solid #999;\n user-select: none\n }\n \n .line-numbers-rows > span {\n display: block;\n counter-increment: linenumber\n }\n \n .line-numbers-rows > span::before {\n content: counter(linenumber);\n color: #999;\n display: block;\n padding-right: .8em;\n text-align: right\n }\n }\n \n \n // -------------------------------------------\n // Line highlighting\n .line-highlight {\n position: absolute;\n margin-top: 4px; // tune to match padding of containing pre\n left: 0;\n right: 0;\n padding: inherit 0;\n font-size: inherit;\n background: hsla(24, 20%, 50%, 8%);\n pointer-events: none;\n line-height: inherit;\n white-space: pre\n }\n}\n\n// -------------------------------------------\n// Dark mode\n:root.dark-mode {\n \n /* Code blocks */\n pre[class*=\"language-\"] {\n border: 1px solid #3d3d3d;\n }\n \n \n // Darker styling to match Runesone's code mirror theme\n code[class*=\"language-\"],\n pre[class*=\"language-\"] {\n color: white;\n background: hsl(0, 0%, 8%);\n \n &::selection,\n & ::selection {\n background: hsl(200, 4%, 16%);\n }\n \n /* Make the tokens sit above the line highlight so the colours don't look faded. */\n .token {\n position: relative;\n z-index: 1;\n \n &:is(.comment,\n .prolog,\n .doctype,\n .cdata) {\n color: #68a950;\n }\n \n &.punctuation {\n color: white;\n opacity: 1;\n }\n \n &.namespace {\n opacity: .9;\n }\n \n &:is(.property,\n .tag,\n .boolean,\n .number,\n .constant,\n .symbol,\n .deleted) {\n color: #abc792;\n }\n \n &:is(.selector,\n .attr-name,\n .string,\n .char,\n .builtin,\n .regex,\n .inserted) {\n color: #ca9147;\n }\n \n &:is(.operator,\n .entity,\n .url) {\n color: white;\n }\n \n &:is(.atrule,\n .attr-value,\n .keyword) {\n color: #2d94fb;\n }\n \n &.function,\n &.class-name {\n color: #e3e1c2;\n }\n \n &.important,\n &.bold {\n font-weight: bold;\n }\n \n &.italic {\n font-style: italic;\n }\n \n &.entity {\n cursor: help;\n }\n \n }\n }\n \n .line-highlight {\n background: hsla(0, 0%, 33%, 10%);\n border-bottom: 1px dashed hsl(0, 0%, 33%);\n border-top: 1px dashed hsl(0, 0%, 33%);\n z-index: 0;\n }\n}\n\n@media print {\n code[class*=\"language-\"],\n pre[class*=\"language-\"] {\n .line-highlight {\n color-adjust: exact\n }\n }\n}\n", "// TODO - refactor\n\n.displaymath {\n overflow-x: auto;\n overflow-y: hidden;\n}\n\n.displaymath mjx-container[jax=\"CHTML\"][display=\"true\"] {\n margin: 0 0 0 0; // container is going to apply margin, so remove it from mjx-container\n padding-top: 2px; // Chrome sometimes clips the top 1-2 pixels of math after it has been scaled - provide room for that content\n}\n\n.process-math mjx-container svg {\n // remove the background that is normally applied to svg's by PreTeXt CSS\n // we use .process-math instead of .displaymath to get inline math as well.\n background: none;\n}\n\n// ?\n[data-knowl] > mjx-mrow .TEX-I {\n font-family: MJXZERO !important;\n font-style: normal !important;\n}\n\n/* remove this when MathJax fixes the bug that was setting the width to 0 */\n/* as in $x=0$. becomes $x=0\\text{.}$ */\n.knowl mjx-mtext > mjx-utext,\nmjx-mtext > mjx-utext {\n width: revert !important;\n}\nmjx-msup mjx-utext,\nmjx-msub mjx-utext {\n display: inline;\n}\n", "// TODO - refactor\n$opacity: 0.0 !default;\n\n/*\nSo that we can position things (like .autopermalink) absolutely wrt these items.\nAny element whose permalink should be positioned directly to the left of it\nshould be in this list.\n*/\nsection,\narticle,\nli,\nblockquote,\nfigcaption,\ndt,\n.exercisegroup,\n.discussion-like,\n.solution-like,\n.para {\n position: relative;\n}\n\n.autopermalink {\n position: absolute;\n display: inline-block;\n top: 0.5ex;\n left: -2em;\n font-size: 85%;\n // variable allows theme to set different opacities for dark/light\n opacity: var(--permalink-opacity, $opacity);\n transition: opacity 0.2s;\n margin-top: 0 !important;\n}\n\nli > .autopermalink {\n left: -3.5em;\n}\n\n.autopermalink > * {\n padding-left: 0.2em;\n padding-right: 0.2em;\n}\n\n\n// Move permalink for division titles etc a little bit lower\n.appendix > .autopermalink,\n.chapter > .autopermalink,\n.index > .autopermalink,\n.section > .autopermalink,\n.subsection > .autopermalink,\n.references > .autopermalink,\n.exercises > .autopermalink {\n top: 1.5ex;\n}\n\n// In some styles, the autopermalink for paras land right on the border line.\n// This is an attempt to fix that. TODO: find a more robust solution, maybe\n// using a variable for the left offset of paras inside blocks.\n.assemblage-like > .para > .autopermalink,\n.example-like > .para > .autopermalink,\n.example-like > .exercise-like > .autopermalink,\n.project-like > .para > .autopermalink,\n.project-like > .exercise-like > .autopermalink,\n.project-like > .exercise-like > .introduction > .para > .autopermalink,\n.project-like > .exercise-like > .conclusion > .para > .autopermalink,\n.remark-like > .para > .autopermalink {\n left: -2.9em;\n}\n\n\n.axiom-like, .example-like, .exercise-like, .solution-like, .assemblage-like, .definition-like, .remark-like, .project-like, .openproblem-like, .computation-like, .theorem-like, .proof, .case, li, dd {\n > .para:first-of-type > .autopermalink {\n display:none;\n }\n\n > .introduction > .para:first-of-type > .autopermalink {\n display:none;\n }\n}\n\n\n// Hover effects\n\n.ptx-content:has(.autopermalink:hover) .autopermalink {\n opacity: 0.2;\n}\n\n.ptx-content:has(.autopermalink:hover) .autopermalink:hover {\n opacity: 1;\n}\n\n.autopermalink:has(a:focus-visible) {\n opacity: 1;\n}\n\n.permalink-alert {\n position: absolute;\n top: -3em;\n left: 5em;\n padding: 1.5em 2em;\n background: var(--content-background);\n border: 3px solid var(--page-border-color);\n z-index: 2001;\n}\n\n\n/* when jumping to a permalink, push down so sticky navbar does not cover */\n:target {\n scroll-margin-top: 45px;\n // the \"pink flash\" when navigating to a target\n animation: target-fade 10s 1;\n}\n\n@keyframes target-fade {\n 0% { background-color: var(--activated-content-bg) }\n 100% {\n background-color: inherit;\n opacity: 1;\n }\n}\n", "\n// Miscellaneous stylized content blocks that are not complex enough\n// to warrant their own file\n\nem.alert {\n font-weight: bold;\n}\n\n.bib {\n margin-top: 0.25em;\n\n .bibitem {\n display: inline-block;\n vertical-align: top;\n width: 7%;\n margin-right: 0;\n }\n \n .bibitem + .bibentry {\n display: inline-block;\n width: 90%;\n margin-top: 0;\n }\n}\n\n\n\n.caption {\n margin-top: 10px;\n margin-left: auto;\n margin-right: auto;\n font-size: 100%;\n text-align: center;\n}\n\n\n.contributor {\n margin-top: 1.5ex;\n\n &:first-child {\n margin-top: 0em;\n }\n\n & + .para {\n margin-top: 3ex;\n }\n\n .contributor-name {\n font-variant: small-caps;\n }\n\n .contributor-info {\n font-size: 88%;\n font-style: italic;\n margin-left: 3ex;\n }\n}\n\n\n// Icon font settings\n.material-symbols-outlined {\n font-variation-settings:\n 'FILL' 0,\n 'wght' 400,\n 'GRAD' 0,\n 'opsz' 24\n}\n\n\niframe {\n margin: 0;\n border: none;\n}\n\n\n.kbdkey {\n background: #f1f1f1;\n color: #333;\n border: 1px solid #dddddd;\n border-radius: 3px;\n padding: 1px 2px 0 2px;\n vertical-align: 0.1em;\n font-size: 110%;\n line-height: 1;\n box-shadow: 2px 2px grey;\n display: inline-block;\n margin-right: 3px;\n}\n\n\n.unit,\n.quantity {\n white-space: nowrap;\n word-spacing: -0.25ex;\n margin-right: 0.125em;\n\n sub, sup {\n word-spacing: normal;\n }\n}\n\n\n.terminology {\n font-style: italic;\n font-weight: bold;\n}\n\n\n\n.times-sign {\n font-size: larger;\n vertical-align: -0.15ex;\n}\n\n\n.emphasis {\n font-style: italic;\n\n .emphasis {\n font-weight: bold;\n }\n}\n\n.definition-like .emphasis {\n font-weight: 700;\n}\narticle.theorem-like .emphasis {\n font-weight: 700;\n}\n\n.para {\n line-height: 1.35;\n}\n\n.hidden {\n display: none !important;\n}\n\n/* genus and species in italics */\n.taxon {\n font-style: italic;\n}\n\n.quote {\n padding-left: 40px;\n padding-right: 10px;\n margin-bottom: 1em;\n}\n\n.booktitle {\n font-style: oblique;\n}\n\n/* Adapted from William Hammond (attributed to David Carlisle) */\n/* \"mathjax-users\" Google Group, 2015-12-27 */\n\n.latex-logo {font-family: \"PT Serif\", \"Times New Roman\", Times, serif;}\n\n.latex-logo .A {font-size: 75%; text-transform: uppercase; vertical-align: .5ex;\n margin-left: -.48em; margin-right: -.2em;}\n\n.latex-logo .E {vertical-align:-.5ex; text-transform: uppercase;\n margin-left: -.18em; margin-right: -.12em; }\n", "// Basic rules for printing a standard PreTeXt page\n\n// Get rid of UI elements.\n// Leave margin fiddling for system print dialog.\n\n// Worksheet and handout printing is handled in print-worksheet.scss\n\n@media print {\n .pretext .ptx-masthead,\n .pretext .ptx-navbar,\n body.pretext > a.assistive,\n .pretext .ptx-page > .ptx-sidebar,\n .pretext .ptx-page-footer,\n .pretext .ptx-main > div.ptx-content-footer {\n display:none;\n }\n\n .ptx-page, .ptx-main, .ptx-main .ptx-content {\n all: unset !important;\n width: 100%;\n border: none;\n padding: 0;\n margin: 0;\n }\n\n .ptx-sagecell, .tabular, .table-like, .figure-like, .exercise-like {\n break-inside: avoid;\n }\n\n .heading {\n break-after: avoid;\n }\n\n .code-inline {\n border: unset;\n background: unset;\n }\n\n @page {\n margin: 0.75in 0.75in 0.75in 0.75in;\n }\n}\n", "// TODO refactor\n\n// Rules in this file apply to both screen and print\n// Print specific rules should go in a file in targets/print-worksheet stylesheet\n@use 'components/helpers/buttons-default' as buttons;\n\n.heading .print-links {\n float: right;\n vertical-align: bottom;\n .print-link {\n font-family: var(--font-body);\n padding: 0.1em 0.2em;\n }\n .material-symbols-outlined {\n margin-top:5pt;\n }\n}\n\n", "// TODO - refactor\n// Make conditional on use of google search???\n\n.pretext .searchwrapper {\n max-width: 900px;\n position: absolute;\n right: 0;\n bottom: 0;\n margin-bottom: 39px;\n}\n\n.pretext .searchwrapper .cse .gsc-control-cse,\n.pretext .searchwrapper .cse .gsc-control-cse input,\n.searchwrapper .gsc-control-cse {\n padding: 5px;\n}\n\n// .pretext .searchwrapper .cse .gsc-search-button input.gsc-search-button-v2,\n// .searchwrapper input.gsc-search-button-v2 {\n// padding: 2px 2px;\n// }\n\n// .pretext .searchwrapper form.gsc-search-box {\n// margin: 0;\n// }\n\n// .pretext .searchwrapper table.gsc-search-box {\n// margin: 0;\n// }\n\n// .pretext .searchwrapper .gsc-search-box-tools .gsc-search-box .gsc-input {\n// padding: 0;\n// }\n\n// .pretext .searchwrapper .gsib_a {\n// padding: 0 0 0 5px;\n// }\n\n// .pretext .searchwrapper .gsc-input-box {\n// height: 3.0ex;\n// }\n\n// .pretext .searchwrapper form.gsc-search-box {\n// font-size: 12px;\n// }\n", "\n@use 'components/helpers/buttons-default' as buttons;\n\n.searchbox {\n\n .searchwidget {\n height: 100%;\n }\n \n .searchresultsplaceholder {\n position: fixed;\n top: 5vh;\n bottom: 5vh;\n padding: 1em;\n left: max(10vw, calc(100vw - 800px) / 2);\n width: 80vw;\n max-width: 800px;\n border: 2px solid var(--body-text-color);\n background: var(--knowl-background, #eaf0f6);\n z-index: 5000;\n display: flex;\n flex-direction: column;\n }\n\n .searchresultsplaceholder article {\n width: 60%;\n margin-left: auto;\n margin-right: auto;\n font-family: sans-serif;\n }\n\n .search-results-controls {\n display: flex;\n justify-content: space-between;\n align-items: stretch;\n gap: 10px;\n margin-bottom: 1em;\n height: 35px;\n }\n\n .ptxsearch {\n flex: 1 1;\n }\n \n\n .closesearchresults {\n @include buttons.ptx-button;\n }\n\n .detailed_result {\n margin-bottom: 10px;\n }\n\n .searchresults a:hover {\n text-decoration: underline;\n background: var(--link-active-background);\n }\n\n\n .searchresults {\n padding-left: 10px;\n margin-top: 0;\n overflow-y: auto;\n flex: 1 1;\n background: var(--content-background, white);\n border: 1px solid var(--page-border-color, #ccc);\n }\n\n .searchresults:empty {\n display: none;\n }\n \n .search-result-bullet {\n list-style-type: none;\n }\n\n .search-result-score {\n display: none;\n }\n\n //result qualities\n .no_result {\n font-size: 90%;\n font-weight: 200;\n }\n\n .low_result {\n font-weight: 200;\n }\n\n .medium_result {\n font-weight: 500;\n }\n .high_result {\n font-weight: 700;\n }\n\n .searchempty {\n display: none;\n padding-left: 10px;\n padding-top: 5px;\n }\n\n .search-results-unshown-count {\n margin-top: 0.6em;\n }\n\n .search-result-clip-highlight {\n background: var(--searchresultshighlight);\n }\n\n .searchresultsbackground {\n position: fixed;\n top: 0;\n background: var(--searchresultsbackground, white);\n width: 100vw;\n height: 100%;\n left: 0;\n z-index: 4999;\n }\n\n @media screen and (max-width: 800px) {\n .searchresultsplaceholder {\n bottom: 10vh;\n }\n }\n}\n\n:root {\n --searchresultsbackground: #fff8;\n --searchresultshighlight: rgba(255, 255, 0, 50%);\n}\n\n:root.dark-mode {\n --searchresultsbackground: #0008;\n --searchresultshighlight: rgba(255, 255, 0, 15%);\n}\n", "$border-radius: 0 !default;\n\n@mixin ptx-button(\n $border-radius: $border-radius\n) {\n font: inherit;\n display: flex;\n justify-content: center;\n align-items: center;\n padding: 0 10px;\n gap: 10px;\n min-height: 34px;\n color: var(--button-text-color);\n background-color: var(--button-background);\n border-width: 1px;\n border-color: var(--button-border-color);\n border-style: solid;\n border-radius: $border-radius;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n cursor: pointer;\n\n // Disable accidental text-selection\n user-select: none;\n\n &:hover:not(.disabled) {\n color: var(--button-hover-text-color);\n background-color: var(--button-hover-background);\n }\n\n &:focus-visible {\n outline: 2px solid var(--button-text-color);\n outline-offset: -2px;\n }\n\n &.disabled {\n opacity: .4;\n cursor: not-allowed;\n }\n\n &.hidden {\n display: none;\n }\n\n &.open {\n color: var(--button-hover-text-color);\n background-color: var(--button-hover-background);\n }\n}\n\n@mixin ptx-dropdown-button {\n position: relative;\n\n .dropdown-content {\n display: none;\n position: absolute;\n background-color: var(--dropdown-background);\n min-width: 160px;\n z-index: 100;\n border: 1px solid var(--dropdown-border-color);\n right: 0;\n top: 35px;\n text-align: start;\n padding: 0;\n\n a {\n display: block;\n text-decoration: none;\n color: var(--dropdown-text-color);\n padding: 2px 8px;\n\n &:is(:hover, :focus-visible) {\n background-color: var(--dropdown-hover-background);\n color: var(--dropdown-hover-text-color);\n }\n }\n\n hr {\n color: var(--dropdown-border-color);\n margin: 4px 0;\n }\n }\n\n &:is(:hover, :focus-visible, :focus-within) {\n overflow: visible;\n\n .dropdown-content {\n display: block;\n }\n }\n}\n", "// extra specific to override Runestone margin\n.ptx-content .ptx-runestone-container .runestone {\n margin: unset;\n border-radius: 0;\n border-width: 1px;\n}\n\n// avoid label splitting into multiple lines\n.multiplechoice_section label > .para {\n display: inline;\n}\n\n// extra specific to override Runestone margin\n.ptx-content .ptx-runestone-container .ac_question { \n max-width: var(--base-content-width);\n margin: 0 auto 10px;\n}\n\n.runestone .runestone_caption {\n // caption is always just something like \"ActiveCode\" in PTX\n display: none;\n}\n\n\n/* to undo Runestone's draganddrop.css */\n.ptx-content .ptx-runestone-container .rsdraggable {\n font-size: 100%;\n}\n\n// Unsure if still needed\n/* hack for runestone */\n/* to undo Runestone's presentermode.css */\n.ptx-content .bottom {\n position: unset;\n}\n\n// override Runestone's pre formatting with these extra specific rules\n.ptx-runestone-container .runestone code,\n.ptx-runestone-container .runestone pre {\n font-size: .93rem;\n line-height: 1.2;\n font-family: var(--font-monospace);\n}\n\n// override Runestone's pre formatting with these extra specific rules\n.ptx-runestone-container code[class*=\"language-\"],\n.ptx-runestone-container pre[class*=\"language-\"] {\n color: black;\n background: #fdfdfd;\n}\n\n//Fixup datafile captions\n.runestone.datafile {\n .datafile_caption {\n background: var(--code-inline-background);\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n display: block;\n width: fit-content;\n margin: 0 auto;\n }\n img {\n margin: 0 auto;\n display: block;\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n }\n pre, textarea {\n margin: 0 auto;\n border: 1px solid color-mix(in oklab, var(--code-inline-background) 50%, #888);\n background-color: var(--page-color);\n }\n}\n.runestone.datafile + .program {\n margin-top: 0;\n}\n\n// RS does not care what kind of element is used\n// PTX chooses to use a ul, so we will fix margins for it here instead of RS\nul[data-component=\"timedAssessment\"] {\n margin: 0;\n padding: 0;\n}\n\n:root.dark-mode {\n // Darker styling to match Runesone's code mirror theme\n .ptx-runestone-container code[class*=\"language-\"],\n .ptx-runestone-container pre[class*=\"language-\"] {\n color: white;\n background: hsl(0, 0%, 8%);\n }\n}\n", "// TODO - needs refactoring and dark mode update\n\n@use 'components/helpers/buttons-default' as buttons;\n\n/* WW problems */\n.ptx-content .wwprob table.attemptResults {\n margin-left: 2em;\n background: #efefef;\n padding: 0.2em;\n}\n\n.ptx-content .wwprob table.attemptResults + .attemptResultsSummary {\n margin-top: 1em;\n}\n\n.ptx-content .wwprob .problem-main-form {\n margin-top: 1em;\n background: #eeeeff;\n padding: 0.5em;\n}\n\n.ptx-content .wwprob td.ResultsWithoutError {\n background: #9f9;\n}\n\n.ptx-content .wwprob td.ResultsWithError {\n background: #f99;\n}\n\n.ptx-content .wwprob tr th {\n text-align: center;\n padding: 0.2em 1em 0.2em 1em;\n}\n\n.ptx-content .wwprob tr td {\n text-align: center;\n}\n\n.ptx-content .wwprob tr td:empty {\n background: #fff;\n}\n\n.ptx-content .wwprob ol,\n.ptx-content .wwprob ul {\n margin-top: 0.75em !important;\n}\n\n.ptx-content .wwprob .problem {\n background: #fdfdfd;\n}\n\n.ptx-content .wwprob .problem a {\n text-decoration: none;\n}\n\n.ptx-content .wwprob #footer {\n font-size: 70%;\n text-align: right;\n}\n\n/* interactive WeBWorK */\n\nlabel.webwork {\n display: inline-flex;\n flex-direction: column;\n}\n\nlabel.correct .status {\n background-color: #a0f0a0;\n}\n\nlabel.partly-correct .status {\n color: #ffcc66;\n}\n\nlabel.incorrect .status {\n color: #b00;\n}\n\nlabel.incorrect .status::before {\n content: \" \";\n}\n\nlabel.feedback {\n word-wrap: break-word;\n}\n\nlabel.correct .feedback {\n background-color: #00ffcc;\n}\n\nlabel.partly-correct .feedback {\n color: #ffcc66;\n}\n\nlabel.incorrect .feedback {\n color: #e07070;\n}\n\n.webwork img,\n.webwork + .knowl-output img {\n max-width: 100%;\n}\n\n// Make the default margin for items inside the exercise-wrapper similar to\n// default for items in a section\n.exercise-wrapper > *:not(:first-child) {\n margin-top: 1.5em;\n}\n\n.ptx-content .problem-buttons {\n display: flex;\n}\n\n.ptx-content .webwork-button {\n @include buttons.ptx-button;\n}\n\n//.hidden-content used to be used for knowls and got repurposed for hiding webwork contents\n// now just used by webwork\n.problem-buttons.hidden-content,\n.problem-contents.hidden-content {\n display: none;\n}\n", "// TODO - refactor\n\n.sagecell_sessionOutput pre {\n font-family: var(--font-monospace);\n}\n\n.sagecell {\n white-space: normal;\n margin-top: 1.25em;\n margin-bottom: 1.25em;\n}\n\n.sage-interact.sagecell {\n margin: 0;\n}\n\n.sagecell_evalButton {\n font-family: var(--font-body);\n font-size: 16px;\n padding: 0 0.65em;\n}\n\n.sagecell_evalButton {\n cursor: pointer;\n display: inline-block;\n vertical-align: middle;\n /* Disable accidental text-selection */\n user-select: none;\n /* Truncate overflowing text with ellipsis */\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n border-width: 1px;\n border-style: solid;\n font-weight: bold;\n border-radius: 3px;\n}\n\n.sagecell_evalButton {\n color: #383838;\n background-image: linear-gradient(#f7f7f7, #bbbbbb);\n border-color: #c4c4c4;\n}\n\n.sagecell_evalButton:hover {\n color: #181868;\n background-image: linear-gradient(#bbbbbb, #f7f7f7);\n}\n\n.sagecell_evalButton:focus,\n.sagecell_evalButton:active {\n color: #20160b;\n background-image: linear-gradient(#ff6852, #ffd7d1);\n border-color: #ff2822;\n}\n\n.sagecell .sagecell_editor {\n margin-bottom: 8px;\n}\n\n.sageanswer {\n font-family: monospace;\n white-space: pre;\n margin-left: 3em;\n margin-bottom: 2em;\n}\n\n.sageanswer .key {\n display: inline-block;\n vertical-align: top;\n margin-right: 1em;\n}\n\n.sageanswer .output {\n display: inline-block;\n vertical-align: top;\n}\n", "// GeoGebra calculator\n\n$navbar-breakpoint: 856px !default;\n\n.calculator-container {\n position: fixed;\n z-index: 100;\n bottom: 5px;\n right: 5px;\n width: 253px;\n height: 460px;\n}\n\n@media screen and (max-width: $navbar-breakpoint) {\n .calculator-container {\n //assumes navbar moves to bottom of screen\n bottom: 50px !important;\n }\n}\n", "// --------------------------------------------------------------------------\n// Flexible / centered widening of other components\n\n// options should already be set in a previous @use\n@use 'components/helpers/expandable';\n\n$top-level-containers: \".chapter, .section, .subsection, .subsubsection\" !default;\n\n:is(#{$top-level-containers}) > .tabular-box,\n:is(#{$top-level-containers}) > .table > .tabular-box {\n @include expandable.expandable;\n}\n\n// get rid of indentation for tablular figures, interferes with centering wide elements\nfigure.table-like {\n margin-left: 0px;\n margin-right: 0px;\n}\n", "// Styling for elements in ptx-main that are allowed to expand past normal width\n// of ptx-content.\n\n// Assumes that $content-padding is set to the padding of ptx-content\n// and that element normally takes up 100% of parent width. (Like display-math)\n\n// for responsive elements\n$width-hard-cap: 900px !default;\n$base-content-width: 600px !default;\n$content-padding: 48px !default;\n$always-expand: false !default; // whether to always expand to the max width\n$centered: false !default; // whether to center the content if not max width\n$content-with-padding-width: $base-content-width + 2 * $content-padding;\n\n// for scrollable\n$overflow-y-scroll: hidden !default;\n\n\n// An element that has some minimum authored width which may be larger\n// than the available width. We want it to scroll horizontally.\n@mixin scrollable(\n $overflow-y-scroll: $overflow-y-scroll\n) {\n overflow-x: auto;\n $overflow-y: $overflow-y-scroll;\n}\n\n// An element with no minimum width that we want to allow to expand\n// to whatever width is available to maximize the display area.\n@mixin responsive(\n $base-content-width: $base-content-width,\n $width-hard-cap: $width-hard-cap,\n $content-padding: $content-padding,\n $always-expand: $always-expand,\n $centered: $centered\n) {\n @container ptx-main (width > #{$base-content-width + 2 * $content-padding}) {\n --max-width: calc(min((100cqw - 2 * #{$content-padding}), #{$width-hard-cap}));\n min-width: 100%;\n clear: right; // clear any floats\n @if $always-expand {\n width: var(--max-width);\n } @else {\n width: fit-content; //grow if space needed\n }\n max-width: var(--max-width);\n @if $centered {\n margin-left: calc(-0.5 * (100cqw - #{$content-with-padding-width}));\n }\n }\n}\n\n// An element that has some minimum authored width which we want to allow to expand\n// to whatever width is available to maximize visible content.\n// Content that is still not visible will be scrollable.\n@mixin expandable(\n $base-content-width: $base-content-width,\n $width-hard-cap: $width-hard-cap,\n $content-padding: $content-padding,\n $always-expand: $always-expand,\n $centered: $centered,\n $overflow-y-scroll: $overflow-y-scroll\n) {\n @include scrollable(\n $overflow-y-scroll: $overflow-y-scroll\n );\n @include responsive(\n $base-content-width: $base-content-width,\n $width-hard-cap: $width-hard-cap,\n $content-padding: $content-padding,\n $always-expand: $always-expand,\n $centered: $centered\n );\n}\n", "// Body level styling\n$max-width: 1200px !default; // 0 == no max width\n\n$content-width: 600px !default; // without padding\n$content-side-padding: 48px !default;\n$centered-content: false !default;\n\n$footer-button-border-radius: 0 !default;\n\n$content-with-padding-width: $content-width + 2 * $content-side-padding;\n\n@use 'components/helpers/buttons-default' as buttons;\n\n// set content width up as a CSS variables so other files can ask\n// \"how wide is standard content?\"\n:root {\n --base-content-width: #{$content-width};\n --content-padding: #{$content-side-padding};\n}\n\n// hits regular pages and generated iframe pages\nbody {\n margin: 0;\n min-height: 100vh;\n\n display: flex;\n flex-direction: column;\n align-items: stretch;\n\n &.pretext {\n color: var(--body-text-color);\n font-family: var(--font-body);\n }\n}\n\n.ptx-page {\n position: relative;\n display: flex;\n flex-grow: 1; // fill space in body\n width: 100%;\n}\n\n.ptx-main {\n flex-grow: 1;\n position: relative;\n max-width: 100%;\n container-name: ptx-main; // for container queries elsewhere\n container-type: inline-size; // for container queries elsewhere\n}\n\n// Base width/padding\n// ptx-main ensures iframe pages don't get these\n.ptx-main .ptx-content {\n max-width: $content-with-padding-width; // bad for worksheets\n padding: 24px $content-side-padding 60px;\n\n @if $centered-content {\n margin-left: auto;\n margin-right: auto;\n }\n}\n.worksheet .ptx-main .ptx-content {\n max-width: 960px;\n}\n\n@if $max-width > 0 {\n .ptx-page {\n max-width: $max-width;\n margin-left: auto;\n margin-right: auto;\n }\n}\n\nbody.pretext,\nbody.standalone {\n margin: 0;\n padding: 0;\n font-size: 16px;\n background: var(--page-color, white);\n}\n\n\nbody.pretext > a.assistive {\n padding:6px;\n position: absolute;\n top:-40px; // hide off screen until keyboard focus\n left: 0px;\n color:white;\n border-right:1px solid white;\n border-bottom:1px solid white;\n border-bottom-right-radius:8px;\n background:#BF1722; // always have correct contrast\n z-index: 10000;\n\n &:focus {\n top:0px; // move into view when keyboard focus\n outline:0;\n transition: top .1s ease-in, background .5s linear;\n }\n}\n\n\n.ptx-content-footer {\n display: flex;\n justify-content: space-around;\n max-width: $content-with-padding-width;\n\n padding-top: 2em;\n padding-bottom: 2em;\n padding-left: $content-side-padding;\n padding-right: $content-side-padding;\n\n @if $centered-content {\n margin-left: auto;\n margin-right: auto;\n }\n\n .button {\n @include buttons.ptx-button(\n $border-radius: $footer-button-border-radius\n );\n .icon {\n margin: 0 -7px; // current icons have lots of whitespace\n }\n }\n}\n", "//Some basic variables\n$centered-content: true !default;\n$scrolling-toc: true !default;\n$nav-height: 36px !default;\n$navbar-breakpoint: 800px !default;\n\n//The following variables represent the *max* width of everything. When the screen shrinks, we will reduce some of these.\n\n// The sidebar contains the TOC. It is left of the page, with a right-margin to separate it.\n$sidebar-width: 240px !default;\n$sidebar-right-margin: 80px !default;\n$sidebar-total-width: $sidebar-width + $sidebar-right-margin;\n\n// ptx-content contains the main content. It is contained in ptx-main\n$content-width: 600px !default;\n$content-side-padding: 120px !default;\n$content-side-padding-tight: 20px !default;\n\n$sidebar-breakpoint: $content-width + $sidebar-total-width + 24px; // a little extra for padding\n\n// ptx-main contains the ptx-content and footer. It has a width equal to the content plus the content's margins.\n// There is a right margin that counters the size of the sidebar+sidebarmargin.\n$main-width: $content-width + (2 * $content-side-padding);\n$main-right-margin: $sidebar-total-width;\n\n// ptx-page contains the sidebar and ptx-main. It's width is the sum of main, main-right-margin, and sidebar-total-width.\n$page-width: $sidebar-total-width + $main-width + $main-right-margin;\n\n@use 'components/page-parts/body' with (\n $max-width: $page-width,\n $content-width: $content-width,\n $content-side-padding: $content-side-padding,\n $centered-content: $centered-content,\n);\n\n@use 'components/page-parts/banner' with (\n $max-width: $main-width,\n $navbar-breakpoint: $navbar-breakpoint,\n);\n\n@use 'components/page-parts/navbar' with (\n $max-width: $main-width,\n $nav-height: $nav-height,\n $navbar-breakpoint: $navbar-breakpoint,\n);\n\n@use 'components/page-parts/toc-default' with (\n $scrolling: $scrolling-toc,\n $sidebar-width: $sidebar-width,\n $sidebar-breakpoint: $sidebar-breakpoint,\n $navbar-breakpoint: $navbar-breakpoint,\n);\n\n@use 'components/page-parts/extras/toc-hidden-scrollbar';\n\n//@use 'summary-links';\n@use 'components/page-parts/footer' with (\n $navbar-breakpoint: $navbar-breakpoint,\n);\n\n@use '../salem/rs-widen';\n\n// now handle smaller screens for rs elements\n@media (width < 850px) {\n @include rs-widen.smaller-screen-widening;\n}\n\n\n.ptx-main {\n margin-right: $sidebar-total-width;\n}\n\n.ptx-sidebar.hidden + .ptx-main {\n margin-left: $sidebar-total-width;\n}\n\n\n// .ptx-main is the center column - apply page shadow to it\n.ptx-main {\n // The color of the shadow is mostly gray, but with a slight tint of the primary color\n box-shadow: 5px 10px 40px -10px var(--primary-color-gray-80);\n}\n@media (prefers-color-scheme: dark) {\n .ptx-main {\n // Dark mode shadow is just black\n box-shadow: 5px 10px 40px -10px black;\n }\n}\n\n\n\n// visually shift the sidebar off the page\n.ptx-sidebar {\n //transform: translateX(-$sidebar-right-margin);\n margin-right: $sidebar-right-margin;\n}\n\n.ptx-navbar {\n border: none;\n\n // move contents button out of navbar-contents and align with sidebar\n .toc-toggle {\n transform: translateX(-$sidebar-total-width);\n position: absolute;\n left: 0;\n justify-content: left;\n }\n}\n\n.ptx-toc {\n border: none;\n position: sticky;\n top: $nav-height;\n}\n\n// Make expanded parts of TOC look more like subsections\n.toc-item.visible {\n font-size: .95em;\n padding-left: 8px;\n}\n\n.ptx-page {\n margin-top: 36px;\n margin-bottom: 36px;\n}\n\n// Sidebar hits the left side of page - need to lock it in place\n$sidebar-lock-breakpoint: $main-width + 2 * $sidebar-total-width;\n// @debug \"$sidebar-lock-breakpoint: #{$sidebar-lock-breakpoint}\";\n@media screen and (width <= $sidebar-lock-breakpoint) {\n .ptx-page {\n margin-left: 0;\n max-width: 100%;\n }\n .ptx-main {\n margin-right: calc(100% - $main-width - $sidebar-total-width);\n max-width: $main-width;\n }\n .ptx-sidebar.hidden + .ptx-main {\n margin-right: auto;\n margin-left: auto;\n }\n .ptx-navbar .ptx-navbar-contents {\n margin-left: $sidebar-total-width;\n }\n}\n\n// When the the main content is almost to the edge of the screen, we remove the drop-shadow\n// and change the layout strategy to center the content in what space is available\n// Sidebar no only consumes minimum required space as whitespace on left/right of main should be equal\n$page-border-breakpoint: $main-width + $sidebar-width + 2 * $sidebar-right-margin;\n// @debug \"page-border-breakpoint: #{$page-border-breakpoint}\";\n@media screen and (width <= $page-border-breakpoint) {\n // main is centered in page\n .ptx-main {\n box-shadow: unset;\n margin-right: auto;\n\n // shrink content padding\n .ptx-content {\n padding-left: $content-side-padding-tight;\n padding-right: $content-side-padding-tight;\n max-width: calc($content-width + 2 * $content-side-padding-tight);\n }\n }\n\n .ptx-sidebar {\n margin-right: 0;\n }\n\n // align toc-toggle with right edge of sidebar\n .ptx-navbar .ptx-navbar-contents {\n margin-left: $sidebar-width;\n }\n .ptx-navbar .toc-toggle {\n transform: translateX(-$sidebar-width);\n justify-content: center;\n }\n\n // Reset margins for page now that we don't show box-shadow\n .ptx-page {\n margin-top: unset;\n margin-bottom: unset;\n }\n\n // And lower TOC accordingly\n .ptx-toc {\n padding-top: 36px;\n\n }\n\n}\n\n\n// Now it is time to hide the sidebar unless requested\n$sidebar-hide-breakpoint: $content-width + 2 * $content-side-padding-tight + $sidebar-width;\n// @debug \"sidebar-hide-breakpoint: #{$sidebar-hide-breakpoint}\";\n@media screen and (width <= $sidebar-hide-breakpoint) {\n .ptx-sidebar {\n display: none;\n }\n}\n\n//Adjust again when navbar moves to bottom.\n@media screen and (max-width: $navbar-breakpoint) {\n // Undo modifications to toc-toggle and margin that held space for it\n .ptx-navbar .ptx-navbar-contents {\n margin-left: 0;\n }\n .ptx-navbar .toc-toggle {\n transform: none;\n position: relative;\n justify-content: center;\n }\n\n .ptx-content-footer {\n padding-left: $content-side-padding-tight;\n padding-right: $content-side-padding-tight;\n }\n}\n\n\n// TOC hover spans entire width of TOC item\n.toc-item:is(:hover, :focus) {\n color: var(--tocitem-highlight-text-color);\n background-color: var(--tocitem-highlight-background);\n border-color: var(--tocitem-highlight-border-color);\n}\n", "$max-width: 1200px !default; // 0 == no max width\n$navbar-breakpoint: 800px !default;\n$centered-content: false !default;\n\n.ptx-masthead {\n position: relative;\n background: var(--banner-background);\n width: 100%;\n display:flex;\n justify-content: center;\n\n .ptx-banner {\n border-top: 1px solid transparent;\n overflow: hidden;\n padding: 10px 10px;\n border-bottom: none;\n display:flex;\n width: 100%;\n align-items: center;\n @if $max-width > 0 {\n max-width: $max-width;\n }\n @if $centered-content {\n justify-content: center;\n }\n }\n\n a {\n color: var(--doc-title-color, #2a5ea4);\n }\n\n a:active {\n color: var(--link-active-text-color);\n }\n\n .title-container {\n font-family: var(--font-headings);\n font-size: 2em;\n padding-left: 9.68px;\n overflow: hidden;\n flex: 1;\n\n .heading {\n font-weight: 700;\n font-size: 100%;\n line-height: 1.25em;\n }\n\n .title:has(+ .subtitle)::after {\n content: \":\";\n }\n\n .subtitle {\n font-weight: normal;\n }\n }\n\n .logo-link {\n height: 5em;\n display: flex;\n\n img {\n max-height: 100%; //fix rendering bug on safari with large images\n }\n img[src$=\".svg\"] {\n height: 100%; //svg's in safari don't get a correct width with max-height\n // don't use this for all images as we wouldn't want to stretch raster images\n }\n }\n\n // // Insert a placeholder icon if the logo-link is empty\n // .logo-link:empty::before {\n // display: flex;\n // font-family: var(--font-body);\n // font-size: 4rem;\n // margin-top: -0.7rem;\n // content: \"\\2211\"; //sigma symbol\n // color: var(--page-border-color)\n // }\n\n .byline {\n color: var(--byline-color);\n font-weight: normal;\n margin: 0;\n font-size: 62.5%;\n min-height: inherit;\n }\n}\n\n@media screen and (max-width: $navbar-breakpoint) {\n .ptx-masthead {\n border-bottom: 1px solid var(--page-border-color);\n\n .ptx-banner {\n padding: 10px 28px;\n display: flex;\n justify-content: center;\n }\n\n .logo-link::before {\n font-size: 1rem;\n margin-top: 0;\n }\n\n .title-container {\n width: fit-content;\n flex: unset;\n .heading {\n line-height: 1em;\n\n .subtitle {\n /* Force the subtitle onto a separate line */\n display: block;\n font-size: 80%;\n line-height: 1em;\n }\n }\n }\n\n .byline {\n font-size: 50%;\n }\n }\n}\n\n\n@media screen and (width <= 480px) {\n .ptx-masthead {\n\n .title-container {\n padding: 0;\n text-align: center;\n font-size: 1em;\n }\n\n .logo-link {\n display: none;\n }\n\n .byline {\n display: none;\n }\n }\n}\n", "$max-width: 1200px !default; // 0 == no max width\n// applied to the contents of the navbar\n\n$nav-height: 36px !default;\n$border-width: 1px !default;\n$navbar-breakpoint: 800px !default;\n$center-content: true !default;\n\n@use 'components/helpers/buttons-default' as buttons;\n\n@use 'components/page-parts/extras/navbar-btn-borders';\n\n.ptx-navbar {\n position: sticky;\n top: 0;\n height: $nav-height;\n width: 100%;\n background: var(--navbar-background);\n border: 0;\n border-top: 1px solid var(--page-border-color);\n border-bottom: 1px solid var(--page-border-color);\n margin: 0;\n z-index: 500;\n overflow: visible;\n display: flex;\n\n .ptx-navbar-contents {\n position: relative;\n display: flex;\n flex: 1;\n justify-content: center;\n align-items: center;\n max-width: $max-width;\n @if $center-content {\n margin: 0 auto;\n }\n }\n\n .button {\n @include buttons.ptx-button;\n\n & {\n height: 100%; //always fill container\n // Disable normal borders - top/bottom provided by container\n // Use extras/_navbar-btn-borders.scss for side borders if desired\n border-width: 0;\n\n }\n }\n\n .toc-toggle {\n width: 240px;\n gap: 0.4em;\n margin-left: 0; //assumes is first button\n }\n\n :is(.treebuttons, .nav-runestone-controls, .nav-other-controls) {\n display: flex;\n }\n\n .treebuttons {\n flex: 1 1 210px;\n justify-content: end;\n }\n\n .nav-runestone-controls {\n flex: 1 1 70px;\n justify-content: end;\n }\n\n .pretext .navbar .dropdown {\n height: 34px;\n }\n\n .embed-popup {\n padding: 10px;\n background-color: var(--navbar-background);\n position: absolute;\n margin-top: $nav-height;\n border: 1px solid var(--page-border-color);\n border-radius: 3px;\n box-shadow: 0 0 5px var(--primary-color-gray-80);\n .embed-code-container {\n width: \"100%\";\n padding:5px;\n .embed-code-textbox {\n width: 100%;\n padding: 10px;\n height: 5em;\n }\n }\n }\n\n .treebuttons > * {\n display: flex;\n align-items: center;\n justify-content: center;\n min-width: 75px;\n }\n\n .treebuttons .icon {\n margin: 0 -7px; // chevrons have lots of horizontal padding\n }\n\n :is(.index-button) .icon {\n display: none;\n }\n\n :is(.runestone-profile, .activecode-toggle, .searchbutton, .calculator-toggle, .light-dark-button, .embed-button) .name {\n display: none;\n }\n\n .index-button {\n min-width: 70px;\n }\n\n}\n\n// Button in the navbar, but needs to be less specific so not nested in previous\n.runestone-profile {\n @include buttons.ptx-dropdown-button;\n}\n\n@if $max-width > 0 {\n @media screen and (min-width: $max-width) {\n body.pretext .ptx-navbar {\n //forces navbar to line up cleanly with sidebar\n // need padding because there is no container around the items in navbar\n // padding: 0 calc((100% - $max-width) / 2);\n // border-left-width: 1px;\n\n // //tug contents of first button to left\n // & .ptx-navbar-contents > *:first-child {\n // justify-content: start;\n // }\n }\n }\n}\n\n@media screen and (max-width: $navbar-breakpoint) {\n @include navbar-btn-borders.navbar-btn-borders();\n\n .ptx-navbar {\n position: fixed;\n top: auto;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 1100;\n background: var(--button-border-color);\n max-width: 100vw;\n\n .ptx-navbar-contents {\n max-width: 100vw;\n }\n\n .nav-runestone-controls {\n flex: 0;\n }\n\n .toc-toggle {\n flex: 2 1 100px;\n }\n\n .treebuttons {\n flex: 3 1 150px;\n /* 3:2 ratio with toc-toggle */\n }\n\n .treebuttons > * {\n flex: 1 1;\n min-width: 35px\n }\n\n .index-button {\n display: none;\n }\n\n .embed-popup {\n margin-top: unset;\n bottom: $nav-height;\n }\n\n .dropdown-content {\n top: unset;\n bottom: $nav-height;\n }\n\n :is(.toc-toggle, .previous-button, .up-button, .next-button, .calculator-toggle, .index-button, .embed-button) .name {\n display: none;\n }\n }\n}\n", "\n$border-width: 1px !default;\n\n@mixin navbar-btn-borders {\n .ptx-navbar {\n .button {\n border-left-width: $border-width;\n border-right-width: $border-width;\n border-color: var(--page-border-color);\n }\n \n & > *:not(:first-child) {\n //hide double borders\n margin-left: -1 * $border-width;\n }\n }\n}\n", "// shared toc styling used by _toc-default, etc...\n\n$sidebar-width: 240px !default;\n$nav-height: 36px !default;\n\n\n\n.ptx-sidebar {\n align-self: flex-start; // needed for sticky inside a flex\n\n &.visible {\n display: block;\n }\n\n &.hidden {\n display: none;\n height: 0;\n }\n}\n\n.ptx-toc {\n --codenumber-pad-left: 0.3rem;\n --codenumber-pad-right: 0.5rem;\n\n --toc-indent-first: calc(1.0rem + var(--codenumber-pad-left) + var(--codenumber-pad-right));\n --toc-indent-second: calc(1.7rem + var(--codenumber-pad-left) + var(--codenumber-pad-right));\n --toc-indent-third: calc(2.2rem + var(--codenumber-pad-left) + var(--codenumber-pad-right));\n\n background: var(--toc-background);\n\n margin: 0;\n font-size: 0.9rem;\n\n /* -------------------toc-items-------------------- */\n // will be less indentation, add some padding\n &:is(.depth1, .parts.depth2) {\n --codenumber-pad-right: 0.5rem;\n }\n\n .toc-item-list {\n margin: 0;\n padding: 0;\n list-style: none;\n background: var(--tocitem-background);\n\n .active {\n list-style: none; // clobber runestone css\n }\n }\n\n .toc-item {\n background-color: var(--tocitem-background);\n color: var(--toc-text-color);\n border-color: var(--toc-border-color);\n\n a {\n color: inherit;\n }\n\n // only highlight lowest level active item\n // need !important to override later depth based css\n &.active:not(:has(.toc-item.active)) {\n color: var(--tocitem-active-text-color) !important;\n background-color: var(--tocitem-active-background) !important;\n border-color: var(--tocitem-active-border-color) !important;\n }\n\n // hoving over a toc item\n & > .toc-title-box > a:is(:hover, :focus) {\n color: var(--tocitem-highlight-text-color);\n background-color: var(--tocitem-highlight-background);\n border-color: var(--tocitem-highlight-border-color);\n }\n }\n\n /* -------------------title-box------------------- */\n\n .toc-title-box {\n display: flex;\n }\n\n .toc-title-box > .internal {\n position: relative;\n display: flex;\n flex-grow: 1;\n padding: 0.2em;\n font-weight: 500;\n }\n\n /* at second level, switch fonts */\n .toc-item-list .toc-item-list .toc-title-box > .internal {\n font-weight: normal;\n }\n\n /* -------------------codenumbers-------------------- */\n .codenumber {\n min-width: var(--toc-indent-first);\n padding-left: var(--codenumber-pad-left);\n padding-right: var(--codenumber-pad-right);\n display: inline-block;\n text-align: left;\n flex-grow: 0;\n }\n}\n\n\n\n// --------------------------------------------------------------------------\n// Conditional styling based on depth\n\n.ptx-toc .toc-item {\n color: var(--toclevel1-text-color);\n background-color: var(--toclevel1-background);\n}\n\n.ptx-toc .toc-item .toc-item {\n color: var(--toclevel2-text-color);\n background-color: var(--toclevel2-background);\n}\n.ptx-toc .toc-item .toc-item .toc-item {\n color: var(--toclevel3-text-color);\n background-color: var(--toclevel3-background);\n}\n\n\n/* second level of numbering */\n/* anything 1+ levels deeper than a chapter in a book */\n.book .ptx-toc .toc-chapter .toc-item-list .codenumber,\n/* anything 1+ levels deeper than a section in an article */\n.article .ptx-toc .toc-section .toc-item-list .codenumber,\n/* anything 1+ levels deeper than backmatter */\n.ptx-toc .toc-backmatter .toc-item-list .codenumber {\n font-size: 80%;\n padding-top: 0.16em;\n min-width: var(--toc-indent-second);\n}\n\n/* third level of numbering */\n/* anything 2+ levels deeper than a chapter in a book */\n.book .ptx-toc .toc-chapter .toc-item-list .toc-item-list .codenumber,\n/* anything 2+ levels deeper than a section in an article */\n.article .ptx-toc .toc-section .toc-item-list .toc-item-list .codenumber,\n/* anything 2+ levels deeper than backmatter */\n.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .codenumber {\n min-width: var(--toc-indent-third);\n visibility: hidden;\n}\n\n/* reveal hidden numbers on interaction */\n.ptx-toc .toc-item-list .toc-item-list .toc-item-list a:is(:hover, :focus) > .codenumber {\n visibility: visible;\n}\n\n/* Any toc item without a codenumber needs indentation\nCan't select absence of a preceeding, so indent all titles\nand then clear indent if there is a codenumber */\n.ptx-toc .toc-item .toc-title-box .title {\n margin-left: var(--toc-indent-first);\n}\n\n/* second level as defined by codenumber selectors */\n.book .ptx-toc .toc-chapter .toc-item-list .title,\n.article .ptx-toc .toc-section .toc-item-list .title,\n.ptx-toc .toc-backmatter .toc-item-list .title {\n margin-left: var(--toc-indent-second);\n}\n\n/* third level as defined by codenumber selectors */\n.book .ptx-toc .toc-chapter .toc-item-list .toc-item-list .title,\n.article .ptx-toc .toc-section .toc-item-list .toc-item-list .title,\n.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .title {\n margin-left: var(--toc-indent-third);\n}\n\n/* unless there is a codenumber */\n.ptx-toc .toc-item > .toc-title-box .codenumber + .title {\n margin-left: 0 !important;\n}\n\n// --------------------------------------------------------------------------\n// Conditional styling based on depth\n\n\n.ptx-toc .toc-chapter .toc-item-list .title,\n.ptx-toc .toc-section .toc-item-list .title,\n/* 2 levels deep in back matter */\n.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .title {\n font-size: 90%;\n}\n\n.ptx-toc .toc-chapter .toc-item-list .toc-item-list .title,\n.ptx-toc .toc-section .toc-item-list .toc-item-list .title,\n/* 3 levels deep in back matter */\n.ptx-toc .toc-backmatter .toc-item-list .toc-item-list .toc-item-list .title {\n font-style: italic;\n}\n\n/* -------------------depth controls-------------------- */\n.ptx-toc.depth0 ul.structural {\n display: none;\n}\n\n.ptx-toc.depth1 ul.structural ul.structural {\n display: none;\n}\n\n.ptx-toc.depth2 ul.structural ul.structural ul.structural {\n display: none;\n}\n\n.ptx-toc.depth3 ul.structural ul.structural ul.structural ul.structural {\n display: none;\n}\n\n.ptx-toc.depth4 ul.structural ul.structural ul.structural ul.structural ul.structural {\n display: none;\n}\n\n/* if depth is shallow, identify best available toc item */\n.ptx-toc.depth1 ul.structural .toc-item.contains-active {\n background-color: var(--tocitem-active-backgrounde);\n color: var(--tocitem-active-text-color);\n}\n\n.ptx-toc.depth2 ul.structural ul.structural .toc-item.contains-active {\n background-color: var(--tocitem-active-background);\n color: var(--tocitem-active-text-color);\n}\n\n\n// --------------------------------------------------------------------------\n// Focused toc\n\n/* Hide all but active area of book */\n.ptx-toc.focused {\n\n ul.structural:not(.contains-active) > .toc-item {\n display: none;\n\n &.visible {\n display: block;\n }\n }\n\n ul.structural .toc-item.active > ul.structural > .toc-item {\n display: block;\n\n &.hidden {\n display: none;\n }\n }\n\n .toc-expander {\n border: 0;\n padding: 2px 5px;\n background: inherit;\n color: inherit;\n display: flex;\n align-items: center;\n\n .icon {\n font-size: 1.25em;\n line-height: 18px;\n font-variation-settings: 'wght' 200;\n }\n\n &:is(:hover) {\n background-color: var(--tocitem-highlight-background);\n color: var(--tocitem-highlight-text-color);\n\n .icon {\n fill: var(--tocitem-highlight-text-color);\n }\n }\n }\n\n /* ---------------icon customization----------------- */\n .toc-item > .toc-title-box > .toc-expander > .icon:before {\n content: \"add\";\n }\n\n .toc-item.expanded > .toc-title-box > .toc-expander > .icon:before {\n content: \"remove\";\n }\n}\n", "$scrolling: true !default;\n$sidebar-width: 240px !default;\n$nav-height: 36px !default;\n$sidebar-breakpoint: 856px !default;\n$navbar-breakpoint: 800px !default;\n\n@use 'toc-basics' with (\n $sidebar-width: $sidebar-width,\n $nav-height: $nav-height\n);\n\n.ptx-sidebar {\n flex: 0 0 $sidebar-width;\n @if $scrolling {\n position: sticky;\n top: $nav-height;\n overflow-y: hidden;\n }\n}\n\n.ptx-toc {\n @if $scrolling {\n position: sticky;\n top: $nav-height;\n overflow-y: auto;\n overflow-x: hidden;\n height: calc(100vh - $nav-height);\n margin-top: -1px; // partially hide top border of first toc item\n\n // border under the last item before the pretext icon\n & > .toc-item-list:first-child > .toc-item:last-child {\n border-bottom: 3px solid var(--toc-border-color);\n }\n }\n @else {\n // not scrolling\n scrollbar-width: none;\n padding: 10px 0;\n box-sizing: border-box;\n border-right: 1px solid var(--toc-border-color);\n }\n}\n\n// Hide once we get too narrow\n@media screen and (max-width: $sidebar-breakpoint) {\n .ptx-sidebar {\n display: none;\n position: sticky;\n top: $nav-height;\n background: var(--content-background);\n min-height: 30vh;\n border-right: 2px solid var(--toc-border-color);\n border-bottom: 2px solid var(--toc-border-color);\n width: $sidebar-width;\n }\n\n @if not $scrolling {\n .ptx-sidebar {\n overflow-y: scroll;\n }\n }\n}\n\n// flip sidebar to bottom one navbar moves\n@media screen and (max-width: min($sidebar-breakpoint, $navbar-breakpoint)) {\n .ptx-sidebar {\n position: fixed;\n z-index: 1000;\n top: unset;\n height: auto;\n max-height: 80vh;\n max-width: 80vw;\n bottom: $nav-height;\n border-right: 2px solid var(--toc-border-color);\n border-top: 2px solid var(--toc-border-color);\n }\n .ptx-toc {\n border-top: 2px solid var(--toc-border-color);\n border-bottom: 0;\n max-height: 80vh;\n }\n}\n", "// blend in with page until hover\n.ptx-toc {\n scrollbar-color: var(--content-background) var(--content-background);\n\n // reveal scroll on hover\n &:hover {\n scrollbar-color: var(--page-border-color) var(--content-background);\n }\n}\n", "$max-width: 0 !default; // 0 == no max width\n$navbar-breakpoint: 856px !default;\n$nav-height: 36px !default;\n\n@use 'components/helpers/buttons-default' as buttons;\n\n.ptx-page-footer {\n background: var(--footer-background);\n padding-top: 0;\n border-top: 2px solid var(--page-border-color);\n border-bottom: 2px solid var(--page-border-color);\n display: flex;\n flex-direction: row;\n justify-content: center;\n width: 100%;\n gap: 90px;\n position: relative;\n @if $max-width > 0 {\n max-width: $max-width;\n }\n \n \n & > a {\n margin: 1em 0;\n color: var(--body-text-color);\n }\n\n & > a > .logo:first-child {\n height: 3em;\n width: unset;\n margin: 0;\n }\n\n .feedback-link {\n @include buttons.ptx-button;\n }\n}\n\n\n@media screen and (max-width: $navbar-breakpoint) {\n .ptx-page-footer {\n // prevent icons from spreading too much\n gap: 20px;\n justify-content: center;\n margin-bottom: $nav-height - 2;\n\n & > a > .logo:first-child {\n height: 2em;\n }\n }\n}\n", "// --------------------------------------------------------------------------\n// Flexible / centered widening of rs elements and other components\n\n$small-nested-margin-offset: 0px !default;\n\n// These will have defaults that have possibly been overridden by @use in main theme file\n@use 'sizing-globals' as sizing;\n@use 'components/helpers/expandable';\n\n\n\n// designed to be used with a @container/media query by file using this\n// left to user to include in a media query\n// e.g. @container ptx-main (width < 850px) { @include smaller-screen-widening; }\n@mixin smaller-screen-widening {\n .ptx-runestone-container:has(#{sizing.$rs-wide-elements}) {\n width: calc(100cqw);\n margin-left: calc(-0.5*(100cqw - 100%));\n }\n :is(#{sizing.$grouping-elements}):has(#{sizing.$rs-wide-elements}) {\n width: calc(100cqw);\n margin-left: calc(-0.5*(100cqw - 100%));\n }\n :is(#{sizing.$grouping-elements}) .ptx-runestone-container:has(#{sizing.$rs-wide-elements}) {\n width: 100%;\n margin-left: $small-nested-margin-offset; //cheat into padding\n }\n}\n\n\n\n// widen all runestone elements that should be wide\n.ptx-runestone-container:has(#{sizing.$rs-wide-elements}){\n @include expandable.responsive;\n}\n\n// unless nested in other runestones\n.ptx-runestone-container {\n .ptx-runestone-container:has(#{sizing.$rs-wide-elements})\n {\n width: 100%;\n min-width: 100%;\n margin-left: auto;\n }\n}\n\n// also wide grouping elements that have wide elements\n:is(#{sizing.$grouping-elements}):has(#{sizing.$rs-wide-elements}) {\n @include expandable.responsive;\n}\n// unless nested in other wide elements\n:is(#{sizing.$grouping-elements}):has(#{sizing.$rs-wide-elements}) {\n :is(#{sizing.$grouping-elements}):has(#{sizing.$rs-wide-elements}) {\n width: 100%;\n margin-left: auto;\n }\n}\n\n// which simplifies the nested wide elements\n:is(#{sizing.$grouping-elements}) .ptx-runestone-container:has(#{sizing.$rs-wide-elements}) {\n width: 100%;\n margin-left: 0;\n}\n\n/* limit width of content inside ac except for actual activecode */\n.runestone.ac_section\n > div\n > div\n > *:not(.ac_code_div):not(.ac_output):not(.codelens):not(.ac_actions) {\n max-width: sizing.$content-width;\n margin-left: auto;\n margin-right: auto;\n}\n\n/* same for exercise-statement in any runestone */\n.runestone {\n .exercise-statement {\n max-width: sizing.$content-width;\n margin-left: auto;\n margin-right: auto;\n }\n}\n\n/* limit width of statement and success/error message inside hparson */\n.hparsons_section .hp_question,\n.hparsons_section .hp_feedback {\n max-width: sizing.$content-width;\n margin-left: auto;\n margin-right: auto;\n}\n\n/* limit width of content inside parsons except for actual parsons */\n.runestone.parsons_section > .parsons {\n width: 100%;\n padding-right: 0;\n\n .sortable-code-container {\n display: flex;\n flex-flow: wrap;\n justify-content: center;\n gap: 15px;\n margin: 10px auto;\n }\n\n .sortable-code {\n margin: 0;\n }\n\n .runestone_caption_text {\n max-width: unset;\n }\n\n & > div > *:not(.sortable-code-container) {\n max-width: sizing.$content-width;\n margin-left: auto;\n margin-right: auto;\n }\n}\n", "// Use chevrons instead of +/- in ToC expander control\n\n.ptx-toc.focused {\n .toc-item > .toc-title-box > .toc-expander > .icon {\n font-size: 30px;\n &:before {\n content: \"chevron_left\";\n }\n }\n\n .toc-item.expanded > .toc-title-box > .toc-expander > .icon {\n transform: rotate(-90deg);\n &:before {\n content: \"chevron_left\";\n }\n }\n}\n", "//$color: var(--primary-color) !default;\n//$text-color: white !default;\n\n@use 'components/page-parts/extras/toc-expand-chevrons';\n\n.hide-type .codenumber:not(:empty)::after {\n content: \". \";\n}\n\n.ptx-masthead {\n display: none;\n}\n\n\n.button.disabled {\n display: none;\n}\n\n//.ptx-toc {\n// padding-top:unset;\n//}\n\n//// Top heading followed by no content and then a subsection that starts with heading\n//section > .heading + section > .heading {\n// margin-top: 0.5em;\n//}\n\n", "$border-width: 2px !default;\n$side-margins: 30px !default;\n\n.aside-like {\n & > .knowl__link {\n color: var(--aside-like-link-color);\n border-bottom-color: var(--aside-like-link-color);\n }\n & > .knowl__content{\n margin-left: $side-margins;\n margin-right: $side-margins;\n border: $border-width solid var(--aside-like-border-color);\n background-color: var(--aside-like-body-background);\n }\n}", "$float-width: 200px !default;\n$float-offset: -248px !default;\n$min-float-width: 1280px !default;\n\n@use 'asides-basic';\n\n@media screen and (min-width: $min-float-width) {\n details.aside-like {\n position: relative;\n margin-left: $float-offset;\n width: $float-width;\n right: $float-offset;\n float: right;\n clear: right;\n }\n\n /* disable in any multicolumn list/exercisegroup */\n .multicolumn details.aside-like {\n position: relative;\n margin-left: inherit;\n width: auto;\n right: 0;\n float: none;\n clear: none;\n }\n\n details.aside-like > .knowl__content {\n margin-left:0;\n margin-right:0;\n background-color: var(--aside-like-body-background);\n z-index: 100;\n }\n}", "$border-radius: 8px !default;\n\n// One stop include for default style content blocks\n@use 'components/chunks/asides-floating' with (\n $float-width: 200px,\n $float-offset: -365px,\n $min-float-width: 1450px\n);\n@use 'components/chunks/codelike';\n@use 'components/chunks/exercises';\n@use 'components/chunks/solutions';\n@use 'components/chunks/sidebyside';\n@use 'components/chunks/discussion-inline';\n@use 'components/chunks/knowls' with ($border-radius: $border-radius);\n@use 'components/chunks/helpers/L-mixin';\n@use 'components/chunks/helpers/box-mixin' with ($border-radius: 0);\n@use 'components/chunks/helpers/heading-box-mixin';\n@use 'components/chunks/helpers/sidebar-mixin';\n@use 'components/chunks/helpers/inline-heading-mixin';\n\n.assemblage-like, .goal-like {\n @include sidebar-mixin.box(\n $border-width: 4px,\n $background-color: var(--goal-like-body-background),\n );\n}\n\n\n.theorem-like,\n.definition-like\n{\n .heading {\n display: block;\n font-size: 1.1em;\n }\n .para {\n font-style: italic;\n }\n}\n\n.example-like,\n.project-like,\n.remark-like,\n.openproblem-like,\n.computation-like,\n.commentary {\n > .heading {\n display: block;\n font-size: 1.1em;\n }\n}\n\n.proof {\n padding-bottom: 1.5em;\n padding-left: 1em;\n padding-right: 1em;\n &::after {\n content: \"□\";\n position: absolute;\n right: 0;\n bottom: 1.5em;\n }\n\n .heading {\n font-size: unset;\n font-weight: bold;\n font-style: italic;\n }\n}\n\n.solution-like {\n .heading {\n display: inline;\n font-style: italic;\n font-size: unset;\n }\n}\n\n.tasks\n\n/* No decorations/borders in knowls, to save space */\n.knowl__content {\n border: none;\n .theorem-like,\n .definition-like,\n .example-like,\n .project-like,\n .remark-like,\n .openproblem-like,\n .computation-like,\n .project-like,\n .commentary {\n padding-left: 0;\n margin-left: 0;\n border-left: none;\n\n &::after {\n border-bottom: none;\n display: none;\n }\n }\n}\n\n// wide sidebar on an entire section of solutions\nsection.solutions:not(:is(:first-child)) {\n @include sidebar-mixin.box($border-color: var(--solution-border-color));\n}\n\n.paragraphs,\narticle {\n @include inline-heading-mixin.heading;\n}\n", "@use '../helpers/cols';\n\n// generate multi column rules for exercises\n@include cols.allow-cols('.exercise-like');\n\n.exercise-like > .heading {\n // exercise heading/numbers regular size\n font-size: inherit;\n}\n\n.exercisegroup {\n\n .exercise-like {\n margin-top: 1em;\n }\n\n > .heading {\n font-size: 1.10em;\n line-height: 1.05em;\n margin-top: 0.75em;\n display: inline;\n\n & + .introduction {\n display: inline;\n\n & > .para:first-child {\n display: inline;\n }\n }\n }\n\n // push the actual exercises down from any possible heading/intro\n .exercisegroup-exercises {\n margin-top: 1em;\n \n //indent items with padding so cols works correctly on them\n padding-left: 40px;\n }\n\n .conclusion {\n margin-left: 40px; // match the padding of the exercisegroup-exercises\n \n .heading {\n // exercise heading/numbers regular size\n font-size: inherit;\n } \n }\n}\n\n// subtasks are indented\n.exercise-like > .exercise-like.task {\n margin-left: 20px;\n}\n\n\n\n// ---------------------------------------------------------\n// exercise-wrapper is used for WW problems\n// these rules need testing/refactoring\n\n.exercise-wrapper form button:hover {\n cursor: pointer;\n background-color: #e0e0ff;\n border: 1px solid #000;\n}\n.exercise-wrapper form button:active {\n background-color: #f0f0f0;\n}\n.exercise-wrapper form button + button {\n margin-left: 0.8em;\n}\n\n.exercise-wrapper,\n.exercise-wrapper form,\n.exercise-wrapper form > div:first-child {\n display: inline-block;\n vertical-align: top;\n width: 100%; /* for live ww to open at 100% wide */\n}\n\n.knowl .exercise-wrapper,\n.knowl .exercise-wrapper form,\n.knowl .exercise-wrapper form > div:first-child {\n width: 100%;\n}\n\n.exercise-wrapper > .para:first-child,\n.exercisegroup .exercise-wrapper > .para:first-child {\n margin-top: 0;\n display: inline;\n}\n\n/* next is related to having exercises start in-line with their exercise number,\n including when a static WW problem is made interactive */\n/* not sure this was the right way to do it */\n/* see https://opentext.uleth.ca/apex-calculus/sec_antider.html#exercise-722 */\n.heading + .exercise-wrapper {\n display: inline-block;\n max-width: 95%;\n width: 100%;\n}\n\n.cols2 .heading + .exercise-wrapper {\n width: auto;\n}\n", "// \n\n/* stacked headings in the solutions backmatter */\nsection.solutions > .heading + .heading {\n margin-top: 0.5em;\n}\n\nsection.solutions > h3.heading,\nsection.solutions section > h3.heading {\n font-size: 1.6em;\n}\n\nsection.solutions > h4.heading,\nsection.solutions section > h4.heading {\n font-size: 1.45em;\n}\n\nsection.solutions > h5.heading,\nsection.solutions section > h5.heading {\n font-size: 1.35em;\n}\n\nsection.solutions > h6.heading,\nsection.solutions section > h6.heading {\n font-size: 1.25em;\n}\n", "// Space all rows in a sbsgroup, no other styling\n.sbsgroup > *:not(:first-child)\n{\n margin-top: 1.5em;\n}\n\n\n// sidebysides get laid out into a grid with two rows. \"Plain panels\" without\n// a caption are in the first row. Panels with things like tables/figures with\n// captions we want to align are decomposed across two rows.\n// If there is no content (no captions) in a second row, it will collapse.\n\n// 1| plain panel | figure-like/table-like\n// 2| | figcaption\n.sbsrow {\n display: grid;\n grid-template-rows: auto auto;\n}\n\n.sbspanel {\n // most sbspanels are in the first row\n grid-row: 1; \n\n // tables and their captions get centered when in panels\n & > .table > figcaption {\n text-align: center;\n }\n .tabular {\n overflow-x: auto;\n margin-left: auto;\n margin-right: auto;\n }\n}\n\n\n// panel content alignment options\n.sbspanel--top {\n align-self: start;\n}\n\n.sbspanel--middle {\n align-self: center;\n}\n\n.sbspanel--bottom {\n align-self: end;\n}\n\n\n// sbspanels with figures or tables get decomposed into two rows\n// both the panel and the figure-like/table-like element should\n// be ignored by the grid layout so we can place the items inside\n// the *-like into the grid\n.sbspanel:has(.figure-like, .table-like),\n.sbspanel > :is(.figure-like, .table-like) {\n display: contents;\n}\n\n\n// first child of decomposed *-like goes to the first row\n.sbspanel > :is(.figure-like, .table-like) > *:first-child {\n grid-row: 1;\n align-items: start;\n align-self: start;\n}\n\n// and gets alignment info\n.sbspanel--top > :is(.figure-like, .table-like) > *:first-child {\n align-items: start;\n align-self: start;\n}\n\n.sbspanel--middle > :is(.figure-like, .table-like) > *:first-child {\n align-items: center;\n align-self: center;\n}\n\n.sbspanel--bottom > :is(.figure-like, .table-like) > *:first-child {\n align-items: end;\n align-self: end;\n}\n\n\n// second child of decomposed *-like goes to the second row\n.sbspanel > :is(.figure-like, .table-like) > *:nth-child(2) {\n margin-top: 0.5em;\n grid-row: 2;\n width: 100%;\n}\n\n\n// make sure content for a panel stays in the correct column\n// otherwise captions may shift left into columns that do not have\n// second row content\n@for $col from 2 through 10 {\n .sbspanel:nth-of-type(#{$col}) * {\n grid-column: #{$col};\n }\n}", "// Generate styles for an inline heading\n@mixin heading {\n & > .heading:first-child {\n display: inline;\n line-height: initial;\n border-bottom: 0; // disable underline that may come from underlined headings\n\n &:after {\n content: \"\\2009\";\n }\n\n // Following sibling also needs to be inline for heading to line up correctly\n // For now limit to logical paragraphs and introductions as they seem to cover\n // the plain text cases. Not clear we would want same treatment for other\n // kinds of content\n & + :is(.para, .para.logical, .introduction) {\n display: inline;\n // possible first child that is the actual text\n & > .para:first-child {\n display: inline;\n }\n // an introduction could have a para.logical with a para\n & > .para.logical:first-child > .para:first-child {\n display: inline;\n }\n }\n }\n}\n", "@use './helpers/inline-heading-mixin';\n\n.discussion-like {\n @include inline-heading-mixin.heading;\n & > .heading {\n ::after {\n content: \"\\2009\";\n }\n\n & + .para {\n display: inline;\n }\n\n .space,\n .codenumber,\n .period {\n display: none;\n }\n\n .type::after {\n content: \". \";\n }\n }\n}\n", "/*\n main knowls styles\n*/\n\n$border-radius: 0px !default;\n$border-width: 3px !default;\n$pad: 12px !default;\n\n.source-view__link,\n.knowl__link {\n cursor: pointer;\n margin-left: 0.1em;\n margin-right: 0.1em;\n color: var(--knowl-link-color);\n border-bottom: 1px dotted var(--knowl-link-color);\n}\n\n.source-view {\n margin: 0.5em 0;\n}\n\nsummary.source-view__link,\nsummary.knowl__link {\n display: list-item inline;\n}\n\n.source-view__link > *,\n.knowl__link > * {\n display: inline;\n}\n\n.source-view__link:is(:hover, :focus, [open]),\n.knowl__link:is(:hover, :focus, [open]) {\n background-color: var(--knowl-background);\n border-bottom-color: transparent;\n}\n\n.source-view__content {\n margin: 0.2em 0;\n}\n\n.knowl__content {\n margin: 0.75em 0; //at least this much space above/below\n border: $border-width solid var(--knowl-border-color);\n border-radius: $border-radius;\n padding: $pad;\n background-color: var(--knowl-background);\n\n .incontext {\n display: block;\n font-size: 85%;\n text-align: right;\n }\n}\n\n/* nested knowl alt colors */\n.knowl__content .knowl__content {\n background-color: var(--knowl-nested-1-background);\n}\n\n.knowl__content .knowl__content .knowl__content {\n background-color: var(--knowl-nested-2-background);\n}\n\n.knowl__content .knowl__content .knowl__content .knowl__content {\n background-color: var(--knowl-nested-3-background);\n}\n\n.knowl__content .knowl__content .knowl__content .knowl__content .knowl__content {\n background-color: var(--knowl-nested-4-background);\n}\n\n\n/* spacing tweaks inside knowls */\n.knowl__content > figure {\n margin-left: 0;\n margin-right: 0;\n}\n", "// These values can be set on @use to avoid repeating values in each @import\n$pad: 10px !default; //all sides\n$padside: 15px !default; //on side with border\n$border-radius: 0px !default; //on side with border\n$border-color: var(--block-border-color) !default;\n$background-color: var(--content-background) !default;\n$side: left !default;\n$border-width: 2px !default;\n\n// Generate styles for a sidebar down left or right of content\n@mixin box($border-width: $border-width,\n $style: solid,\n $border-color: $border-color,\n $background-color: $background-color,\n $padding: $pad,\n $padside: $padside,\n $side: $side,\n $border-radius: $border-radius) \n{\n &:not(.knowl__content, .born-hidden-knowl) {\n padding: $padding;\n padding-#{$side}: $padside;\n border-#{$side}: $border-width $style $border-color;\n background-color: $background-color;\n\n @if $border-radius > 0 {\n border-radius: $border-radius;\n }\n\n > .heading:first-child {\n margin-top: 0;\n }\n }\n}\n", "/*\n Master list of color variables and default values.\n Variables are defined in SCSS to allow for calculation of values. They are\n then converted to CSS variables for use in the HTML so authors can, if\n need be, override them with custom CSS.\n\n Any new variable should be added to this file and either defined to another\n variable or given a reasonable default value for the red-blue default theme.\n\n Variables should be semantic, not descriptive\n i.e. --link-color, not --pretty-blue\n*/\n\n@use \"sass:map\";\n\n// ==============================================================================\n// Light theme\n\n// ==============================================================================\n// Page structures\n\n$colors: (\n // Background of page (gutters if any)\n \"page-color\": white,\n // Background of content area\n \"content-background\": white,\n // Border around content area - also possibly used for internal borders\n \"page-border-color\": #ccc,\n\n // ------------------------------------------------------------------------------\n // Banner/nav related\n\n \"doc-title-color\": #932919,\n \"byline-color\": #333,\n \"banner-background\": #fafafa,\n \"navbar-background\": #ededed,\n \"footer-background\": var(--banner-background),\n\n // ------------------------------------------------------------------------------\n // TOC related\n\n \"toc-border-color\": #666,\n \"toc-background\": var(--content-background),\n\n \"tocitem-background\": var(--toc-background),\n \"toc-text-color\": var(--body-text-color),\n\n // highlight styles are used for hover\n \"tocitem-highlight-background\": #671d12,\n \"tocitem-highlight-text-color\": white,\n \"tocitem-highlight-border-color\": var(--toc-border-color),\n \n // active styles are used for the current toc item\n \"tocitem-active-background\": #671d12,\n \"tocitem-active-text-color\": white,\n \"tocitem-active-border-color\": var(--toc-border-color),\n\n // level based colors for TOC\n // levels are not necessarily all used\n // see the toc-basics.scss for how these are determined\n \"toclevel1-background\": var(--content-background),\n \"toclevel1-text-color\": var(--toc-text-color),\n \"toclevel2-background\": var(--content-background),\n \"toclevel2-text-color\": var(--toc-text-color),\n \"toclevel3-background\": var(--content-background),\n \"toclevel3-text-color\": var(--toc-text-color),\n\n\n // ==============================================================================\n // Content\n // ==============================================================================\n\n // ------------------------------------------------------------------------------\n // Text & titles\n\n \"body-text-color\": #000,\n \"body-title-color\": #000,\n\n \"ptx-image-bg\": transparent,\n \"activated-content-bg\": rgba(241, 185, 255, 30%),\n\n \"summary-link-background\": var(--button-background),\n \"summary-link-text-color\": var(--button-text-color),\n \"summary-link-hover-background\": var(--button-hover-background),\n \"summary-link-hover-text-color\": var(--button-hover-text-color),\n\n // ------------------------------------------------------------------------------\n // Links & knowls\n\n \"link-text-color\": #2B5F82,\n \"link-background\": transparent,\n \"link-active-text-color\": var(--link-text-color),\n \"link-active-background\": #cad2e1,\n\n \"link-alt-text-color\": #A62E1C,\n \"link-alt-background\": transparent,\n \"link-alt-active-text-color\": var(--link-alt-text-color),\n \"link-alt-active-background\": #e3d1ce,\n\n \"knowl-link-color\": var(--link-text-color),\n \"knowl-background\": #f5f8ff,\n \"knowl-border-color\": #e0e9ff,\n \"knowl-nested-1-background\": #f5f5ff,\n \"knowl-nested-2-background\": #fffff5,\n \"knowl-nested-3-background\": #f5ffff,\n \"knowl-nested-4-background\": #fff5f5,\n\n // ------------------------------------------------------------------------------\n // Blocks\n\n // Fall back generic block colors:\n \"block-body-background\": var(--content-background),\n \"block-border-color\": var(--knowl-border-color),\n \"block-head-color\": var(--body-text-color),\n\n // See below for specific block types\n \n \"aside-like-link-color\": var(--link-text-color),\n\n // ------------------------------------------------------------------------------\n // Buttons & Widgets\n\n \"button-background\": #ededed,\n \"button-text-color\": #333333,\n \"button-border-color\": #ccc,\n \"button-hover-background\": #c7c7c7,\n \"button-hover-text-color\": var(--button-text-color),\n\n \"dropdown-background\": var(--content-background),\n \"dropdown-border-color\": var(--toc-border-color),\n \"dropdown-text-color\": var(--toc-text-color),\n \"dropdown-hover-background\": var(--tocitem-active-background),\n \"dropdown-hover-text-color\": var(--tocitem-active-text-color),\n\n // ------------------------------------------------------------------------------\n // Other\n \"code-background\": #fdfdfd,\n \"code-inline-background\": #ededed,\n);\n\n// ==============================================================================\n// Block types\n\n// Variables for specific block types should look like those below. In this file\n// only \"top level\" blocks from the -like families are defined. \n// Other themes/color palettes may define\n// more specific ones - see palette_quad_chunks.scss for an example.\n\n// block-types based on those in entities.ent\n$block-types: \"assemblage-like\", \"definition-like\", \"theorem-like\", \"theorem-like\", \"axiom-like\", \"remark-like\", \"computation-like\", \"openproblem-like\", \"aside-like\", \"proof-like\", \"example-like\", \"project-like\", \"goal-like\", \"solution-like\";\n// TODO - \"proof\" should probably be updated to \"proof-like\" in HTML css\n\n@each $block in $block-types {\n $colors: map.merge(\n $colors,\n (\n // define background and border, but default to generic block colors\n \"#{$block}-body-background\": var(--block-body-background),\n \"#{$block}-border-color\": var(--block-border-color),\n )\n );\n}\n", "// This file contains functions and mixins for working with colors in SCSS\n\n@use \"sass:map\";\n@use \"sass:color\";\n\n@mixin set-root-colors($colors, $dark-colors: null) {\n :root {\n color-scheme: light;\n // prevent variable leak through to dark\n &:not(.dark-mode) {\n @include scss-to-css($colors);\n }\n }\n\n @if $dark-colors {\n :root.dark-mode {\n color-scheme: dark;\n @include scss-to-css($dark-colors);\n }\n }\n}\n\n// Renders a map of SCSS variables as CSS variables\n@mixin scss-to-css($colors) {\n @each $name, $value in $colors {\n --#{$name}: #{$value};\n }\n}\n\n// Create a map of colors that blend $color with $other at $mix-amounts\n// The resulting map will have keys of the form 'color-other-10'\n// Indicating 10% of other mixed into color\n@function mixes($color, $other, $mix-amounts) {\n $result: ();\n\n @each $i in $mix-amounts {\n $result: map.set($result, '#{$color}-#{$other}-#{$i}', 'color-mix(in oklab, var(--#{$color}), #{$other} #{$i}%)');\n }\n\n @return $result;\n}\n\n$std-mixes: (1, 2, 3, 4, 5, 10, 15, 20, 25, 30, 35, 40, 50, 60, 65, 70, 75, 80, 85, 90, 95, 96, 97, 98, 99);\n\n// Creates a map of color blends for a given color\n// By default it creates blends with black, white, and gray at $std-mixes amounts\n// Mixing is done using css color-mix function so that if a theme file has the base\n// css variable overridden, the blends will be updated accordingly\n@function get-blends($color, $shades: $std-mixes, $tints: $std-mixes, $tones: $std-mixes, ) {\n $shades: mixes($color, black, $std-mixes);\n $tints: mixes($color, white, $std-mixes);\n $tones: mixes($color, gray, $std-mixes);\n\n $blends: map.merge(\n $tints,\n $shades\n );\n\n $blends: map.merge(\n $blends,\n $tones\n );\n @return $blends;\n}\n\n//--------------------------------------------------------------------------\n// https://jonnykates.medium.com/automating-colour-contrast-ratios-with-sass-e201f3b52797\n// Formula there has a typo, need parens around the sum of the three color channels\n\n@function text-contrast($color, $light: #ffffff, $dark: #000000) {\n $color-brightness: round(\n (\n (color.red($color) * 299) +\n (color.green($color) * 587) +\n (color.blue($color) * 114)\n ) / 1000\n );\n\n $light-color: round(\n (\n (color.red(#ffffff) * 299) +\n (color.green(#ffffff) * 587) +\n (color.blue(#ffffff) * 114)\n ) / 1000\n );\n\n @if abs($color-brightness) < calc($light-color / 2){\n @return $light;\n } @else {\n @return $dark;\n }\n}\n\n// @debug \"text-contrast(#7b7b55) should be #ffffff: \" text-contrast(#7b7b55);\n// @debug \"text-contrast(#9b9b70) should be #000000: \" text-contrast(#9b9b70);\n// @debug \"text-contrast(#766f7a) should be #ffffff: \" text-contrast(#766f7a);\n// @debug \"text-contrast(#70909b) should be #000000: \" text-contrast(#70909b);\n//--------------------------------------------rgb(25, 25, 24)-----------------------\n"], + "mappings": "+UEMA,EACE,WAAA,WAaF,eAEE,IAAA,QAAA,QAAA,CAAA,eAAA,CAAA,CAAA,KAAA,cACE,WAAA,MAIF,IAAA,QAAA,QAAA,CALA,eAKA,CAAA,CAAA,IAAA,CAAA,CAAA,KACE,WAAA,IAKF,CAAA,YAAA,IAAA,GAAA,GAAA,GAAA,GAAA,CAAA,WAAA,CAAA,SAAA,CANA,IAMA,CAAA,QAAA,CAAA,CAAA,KAAA,cACE,WAAA,MC/BJ,EAAA,CAAA,UAAA,EAAA,CAAA,UAAA,EAAA,CAAA,UAGI,gBAAA,KAGJ,EAAA,CAAA,QACI,gBAAA,QAGJ,EAAA,CAAA,YACI,gBAAA,YAIJ,EAAA,CAAA,mBAAA,CAAA,EAAA,SACI,QAAA,IAAA,QAAA,SAAA,CAAA,aAAA,KAGJ,EAAA,CAAA,YACI,gBAAA,YAGJ,EAAA,CAAA,YACI,gBAAA,YAGJ,EAAA,CAAA,YACI,gBAAA,YAGJ,EAAA,CAAA,KACI,gBAAA,KAGJ,EAAA,CAAA,OACI,gBAAA,OAGJ,EAAA,CAAA,OACI,gBAAA,OC3BJ,EAAA,IAAA,CAAA,iBAAA,CAAA,iBACE,EAGA,EAAA,IAAA,CAJF,iBAIE,CAJF,UAIE,GACE,YAAA,IACA,UAAA,KAGF,EAAA,IAAA,CATF,iBASE,CATF,UASE,EAAA,OACE,QAAA,GACA,QAAA,MACA,MAAA,KAIJ,CFLE,IEKF,CAAA,EAAA,IAAA,CAhBA,kBAkBE,WAAA,KACA,cAAA,KAIA,EAAA,CAvBF,SAuBE,GACE,WAAA,OAEA,EAAA,CA1BJ,SA0BI,EAAA,eACE,WAAA,EAIJ,EAAA,CA/BF,SA+BE,GACE,YAAA,IAMF,EAAA,CAtCF,iBAsCE,GAAA,EAAA,CAtCF,iBAsCE,GAEE,WAAA,IAEA,EAAA,CA1CJ,iBA0CI,EAAA,eAAA,EAAA,CA1CJ,iBA0CI,EAAA,eACE,WAAA,EAIJ,EAAA,CA/CF,iBA+CE,GACE,MAAA,KACA,MAAA,KACA,WAAA,MACA,MAAA,KACA,aAAA,IAGF,EAAA,CAvDF,iBAuDE,GACE,YAAA,KAIA,EAAA,CA5DJ,gBA4DI,CAAA,OAAA,GACE,MAAA,KAGF,EAAA,CAhEJ,gBAgEI,CAJA,OAIA,GACE,YAAA,KAKF,EAAA,CAtEJ,gBAsEI,CAAA,KAAA,GACE,MAAA,KAGF,EAAA,CA1EJ,gBA0EI,CAJA,KAIA,GACE,YAAA,KAKN,EAAA,CAhFA,iBAgFA,EAAA,eACE,MAAA,KAGF,CApFA,gBAoFA,CAAA,EACE,MAAA,KAIF,EAAA,CAzFA,iBAyFA,GAAA,GACE,MAAA,IAGF,EAAA,CA7FA,iBA6FA,GAAA,GACE,YAAA,KAGF,EAAA,CAjGA,iBAiGA,GAAA,GACE,YAAA,KAIF,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OACE,EAAA,CAvGF,iBAuGE,GACE,MAAA,KACA,YAAA,EACA,WAAA,KAGF,EAAA,CA7GF,iBA6GE,GAAA,EAAA,CA7GF,gBA6GE,CAjDE,OAiDF,GAAA,EAAA,CA7GF,gBA6GE,CAvCE,KAuCF,GAGE,WAAA,KACA,YAAA,IACA,UAAA,KAAA,KAAA,EAAA,MChIJ,IAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,OACE,QAAA,KACA,UAAA,KACA,gBAAA,MAME,CATJ,KASI,CAAA,GAIE,UAAA,KAAA,IAAA,EAAA,KACA,MAAA,YACA,aAR2B,IAE7B,CATJ,KASI,CAAA,GAIE,UAAA,KAAA,eAAA,EAAA,KACA,MAAA,YACA,aAR2B,IAE7B,CATJ,KASI,CAAA,GAIE,UAAA,KAAA,IAAA,EAAA,KACA,MAAA,YACA,aAR2B,IAE7B,CATJ,KASI,CAAA,GAIE,UAAA,KAAA,IAAA,EAAA,KACA,MAAA,YACA,aAR2B,IAE7B,CATJ,KASI,CAAA,GAIE,UAAA,KAAA,eAAA,EAAA,KACA,MAAA,YACA,aAR2B,ICW/B,CJaA,YIbA,GACE,WAAA,KAOA,CJKF,YILE,GAAA,CAAA,kBACE,UAAA,KACA,YAAA,IACA,WAAA,OAKN,CJTE,IISF,CAAA,IAAA,GAAA,IAEE,WAAA,KACA,cAAA,KAIF,EAAA,CAAA,GACE,aAAA,MC3CF,CAAA,OACE,QAAA,aACA,OAAA,KACA,aAAA,IACA,aAAA,KACA,YAAA,KACA,cAAA,OAEA,CARF,MAQE,CAAA,UACE,oBAAA,MACA,aAAA,IAGF,CAbF,MAaE,CAAA,IACE,QAAA,IAAA,MAAA,IAAA,mBACA,OAAA,MAGF,CAlBF,MAkBE,CAAA,MACE,iBAAA,IAAA,yBAAA,EAAA,MACA,OAAA,MAKJ,KAAA,CAAA,UACE,2BAAA,KCtBF,CAAA,OAAA,IAAA,GAAA,GAAA,GAAA,GAAA,GAAA,WACE,EACA,UAAA,MAGF,CALA,QAME,YAAA,IACA,YAAA,IAAA,iBACA,YAAA,IACA,WAAA,EACA,cAAA,EAGF,OAAA,CAAA,CAbA,QAcE,UAAA,OACA,MAAA,IAAA,oBACA,YAAA,OACA,WAAA,MACA,cAAA,KAGA,OAAA,CAAA,CArBF,OAqBE,CAAA,EACE,WAAA,KAIJ,CNEE,WMFF,CAAA,OAAA,CAAA,CA1BA,QA4BE,WAAA,KAGF,QAAA,OAAA,CAAA,CA/BA,QAgCE,UAAA,MACA,WAAA,IAGF,QAAA,QAAA,OAAA,CAAA,CApCA,QAqCE,UAAA,MACA,WAAA,IAIF,OAAA,CAAA,CA1CA,QA2CE,UAAA,OACA,WAAA,MAGA,OAAA,CAAA,CA/CF,OA+CE,CAAA,EACE,WAAA,KAIJ,CAAA,UAAA,CAAA,CApDA,QAqDE,UAAA,QAIF,IAAA,QAAA,QAAA,CAAA,CAzDA,OAyDA,CAAA,IAAA,QAAA,QAAA,CAAA,CAzDA,QA0DE,WAAA,KAIF,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OACE,OAAA,CAAA,CA/DF,QAgEM,UAAA,MACA,YAAA,OACA,WAAA,IAEJ,QAAA,OAAA,CAAA,CApEF,QAqEM,UAAA,MACA,YAAA,OAEJ,QAAA,QAAA,OAAA,CAAA,CAxEF,QAyEM,UAAA,OACA,YAAA,KAIN,CA9EA,OA8EA,CAAA,SAAA,CAAA,CAAA,KACE,QAAA,KClFF,EACE,MAAA,IAAA,mBACA,gBAAA,KAEA,CAAA,OAAA,CAAA,OAEE,gBAAA,KAKJ,CAAA,CAAA,iBACE,YAAA,IAMA,CPaA,YObA,CAAA,CAAA,SACE,MAAA,IAAA,mBACA,YAAA,IAEF,CPSA,YOTA,CAAA,CAAA,SACE,MAAA,IAAA,uBACA,YAAA,IAEF,CPKA,YOLA,CAAA,CARA,QAQA,OAAA,CPKA,YOLA,CAAA,CARA,QAQA,OAAA,EAAA,CPKA,YOLA,CAAA,CARA,QAQA,OAAA,CPKA,YOLA,CAAA,CARA,QAQA,OAAA,EAEE,MAAA,IAAA,0BACA,iBAAA,IAAA,0BACA,YAAA,IAEF,CPDA,YOCA,CAAA,CAVA,QAUA,OAAA,CPDA,YOCA,CAAA,CAVA,QAUA,OAAA,EAAA,CPDA,YOCA,CAAA,CAVA,QAUA,OAAA,CPDA,YOCA,CAAA,CAVA,QAUA,OAAA,EAEE,MAAA,IAAA,8BACA,iBAAA,IAAA,8BACA,YAAA,ICpCF,CR+BA,YQ/BA,MACE,eAAA,EACA,gBAAA,SAGF,CR0BA,YQ1BA,WACE,IAAA,IACA,UAAA,IAEA,CRsBF,YQtBE,GAAA,IACE,UAAA,MACA,aAAA,KAIJ,CRgBA,YQhBA,WACE,IAAA,IAME,CRSJ,YQTI,GAAA,CAAA,MACE,YAAA,OAKA,CRGN,YQHM,EAAA,CAAA,EACE,WAFoB,KACtB,CRGN,YQHM,EAAA,CAAA,EACE,WAFoB,OACtB,CRGN,YQHM,EAAA,CAAA,EACE,WAFoB,MACtB,CRGN,YQHM,EAAA,CAAA,EACE,WAFoB,QAQtB,CRJN,YQIM,EAAA,CAAA,EACE,eAFoB,IACtB,CRJN,YQIM,EAAA,CAAA,EACE,eAFoB,OACtB,CRJN,YQIM,EAAA,CAAA,EACE,eAFoB,OASpB,CRZR,YQYQ,EAAA,CAAA,GAEI,YAAA,KAFJ,CRZR,YQYQ,EAAA,CAAA,GAMI,YAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,YAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,YAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAEI,aAAA,KAFJ,CRZR,YQYQ,EAAA,CAAA,GAMI,aAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,aAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,aAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAEI,WAAA,KAFJ,CRZR,YQYQ,EAAA,CAAA,GAMI,WAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,WAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,WAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAEI,cAAA,KAFJ,CRZR,YQYQ,EAAA,CAAA,GAMI,cAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,cAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,cAAA,IAAA,MAAA,IAAA,mBA3BR,CRSJ,YQTI,GAAA,CAAA,MACE,YAAA,OAKA,CRGN,YQHM,EAAA,CAAA,EACE,WAFoB,KACtB,CRGN,YQHM,EAAA,CAAA,EACE,WAFoB,OACtB,CRGN,YQHM,EAAA,CAAA,EACE,WAFoB,MACtB,CRGN,YQHM,EAAA,CAAA,EACE,WAFoB,QAQtB,CRJN,YQIM,EAAA,CAAA,EACE,eAFoB,IACtB,CRJN,YQIM,EAAA,CAAA,EACE,eAFoB,OACtB,CRJN,YQIM,EAAA,CAAA,EACE,eAFoB,OASpB,CRZR,YQYQ,EAAA,CAAA,GAEI,YAAA,KAFJ,CRZR,YQYQ,EAAA,CAAA,GAMI,YAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,YAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,YAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAEI,aAAA,KAFJ,CRZR,YQYQ,EAAA,CAAA,GAMI,aAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,aAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,aAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAEI,WAAA,KAFJ,CRZR,YQYQ,EAAA,CAAA,GAMI,WAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,WAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,WAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAEI,cAAA,KAFJ,CRZR,YQYQ,EAAA,CAAA,GAMI,cAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,cAAA,IAAA,MAAA,IAAA,mBANJ,CRZR,YQYQ,EAAA,CAAA,GAMI,cAAA,IAAA,MAAA,IAAA,mBAUZ,CR5BA,YQ4BA,EAAA,CAhBQ,EAgBR,CAhBQ,GAgBR,CR5BA,YQ4BA,EAAA,CAhBQ,EAgBR,CAhBQ,GAkBN,aAAA,KACA,cAAA,KAIA,CRnCF,YQmCE,EAAA,CAAA,gBAAA,GACE,aAAA,YACA,aAAA,IAKF,CR1CF,YQ0CE,CAAA,OAAA,MACE,WAAA,OACA,YAAA,KACA,aAAA,KAON,CAAA,YACE,WAAA,KACA,WAAA,KAGF,CALA,WAKA,CAAA,cAAA,MACE,YAAA,KACA,aAAA,KAOE,KAAA,CAAA,cAAA,GAAA,GACE,WAAA,KACA,YAAA,IAGF,KAAA,CALA,cAKA,GAAA,GACE,WAAA,KACA,eAAA,ICrGJ,CAAA,WAAA,CAAA,CHAF,QGCI,QAAA,MACA,WAAA,OAGF,CALA,WAKA,CAAA,CHLF,QGKE,CAAA,MAAA,CALA,YAKA,CAAA,IAAA,CAAA,CHLF,QGKE,CAAA,MAEE,UAAA,MAGF,CAVA,WAUA,CAAA,CHVF,QGUE,CAAA,SAAA,CAVA,YAUA,CALA,IAKA,CAAA,CHVF,QGUE,CAAA,SAEE,QAAA,MACA,YAAA,IACA,MAAA,IAAA,gBACA,UAAA,OACA,YAAA,UACA,WAAA,SAGF,CApBA,WAoBA,CAAA,CTEA,ISFA,eACE,WAAA,IAGF,CAxBA,WAwBA,CAAA,CAAA,OAAA,CAxBA,WAwBA,CAAA,CAAA,OAEE,WAAA,IACA,WAAA,OAGF,CA9BA,YA8BA,CANA,MAMA,eACE,WAAA,IAGF,CAlCA,WAkCA,CAAA,CAVA,OAUA,CAAA,YACE,UAAA,KAGF,CAtCA,YAsCA,CAAA,KACE,QAAA,MACA,WAAA,IACA,WAAA,OAGF,CA5CA,YA4CA,CApBA,OAoBA,CAvCA,MAwCE,UAAA,IAGF,CAhDA,YAgDA,CAxBA,OAwBA,CAxBA,OAyBE,UAAA,KACA,WAAA,MAGF,CArDA,YAqDA,CAAA,YACE,UAAA,IAGF,CAzDA,YAyDA,CAAA,cACE,WAAA,IAGF,CA7DA,YA6DA,CAAA,gBACE,IAAA,IAGF,CAjEA,YAiEA,CAAA,SAAA,CAjEA,YAiEA,CAAA,QACE,WAAA,IAIA,CAtEF,YAsEE,CATF,QASE,CAAA,CAjEF,MAiEE,CAtEF,YAsEE,CALF,QAKE,CAAA,CAjEF,MAiEE,CAtEF,YAsEE,CALF,OAKE,CAAA,CAjEF,MAkEI,UAAA,QACA,YAAA,IACA,YAAA,QACA,QAAA,OAGF,CA7EF,YA6EE,CAhBF,QAgBE,CAAA,CAxEF,KAwEE,OAAA,CA7EF,YA6EE,CAZF,QAYE,CAAA,CAxEF,KAwEE,OAAA,CA7EF,YA6EE,CAZF,OAYE,CAAA,CAxEF,KAwEE,OACE,QAAA,mBAGF,CAjFF,YAiFE,CApBF,QAoBE,CAAA,CA5EF,KA4EE,CAAA,CT3DF,KS2DE,CAjFF,YAiFE,CAhBF,QAgBE,CAAA,CA5EF,KA4EE,CAAA,CT3DF,KS2DE,CAjFF,YAiFE,CAhBF,OAgBE,CAAA,CA5EF,KA4EE,CAAA,CT3DF,KS4DI,QAAA,OAKF,CAvFF,YAuFE,CAAA,SAAA,CAAA,UAIA,CA3FF,YA2FE,CAJA,SAIA,CAAA,QAHE,WAAA,MC1FN,CV8BE,YU9BF,CD2DE,cC1DA,YAAA,IAAA,iBACA,QAAA,MACA,WAAA,IAEA,CVyBA,YUzBA,CDsDA,cCtDA,EACE,MAAA,IAAA,2BACA,WAAA,IAAA,2BACA,UAAA,MACA,YAAA,eACA,KACA,KADA,KAAA,mBAEA,IACA,SAAA,SACA,QAAA,MACA,YAAA,MAEA,CVaF,YUbE,CD0CF,cC1CE,EAAA,CDVF,MCWI,WAAA,OAGF,CVSF,YUTE,CDsCF,cCtCE,EAAA,CAAA,WACE,aAAA,SAGF,CVKF,YULE,CDkCF,cClCE,CAAA,OAEE,MAAA,SACA,QAAA,GACA,SAAA,SACA,IAAA,IACA,WAAA,MACA,MAAA,EACA,OAAA,EACA,WAAA,KAAA,MAAA,YACA,cAAA,KAAA,MAAA,YACA,YAAA,KAAA,MAAA,IAAA,2BAGF,CVTF,YUSE,CDoBF,cCpBE,CAAA,OAKE,CVdJ,YUcI,CDeJ,cCfI,CAAA,OAAA,EAJA,MAAA,IAAA,iCACA,WAAA,IAAA,iCAOA,CVlBJ,YUkBI,CDWJ,cCXI,CAAA,OAAA,CDzCJ,MC0CM,YAAA,IAGF,CVtBJ,YUsBI,CDOJ,cCPI,CAAA,MAAA,OACE,YAAA,KAAA,MAAA,IAAA,iCAKN,CV5BA,YU4BA,CDCA,cCDA,GACI,gBAAA,aACA,EACA,WAAA,EAGJ,CVlCA,YUkCA,CDLA,cCKA,GACI,WAAA,IAIN,OAAA,OAAA,IAAA,CAAA,MAAA,CAAA,EAAA,OACE,CVxCA,YUwCA,CDXA,cCWA,EAEE,UAAA,KACA,YAAA,QC1EJ,CAAA,aACE,QAAA,aACA,SAAA,SAGF,CALA,YAKA,CAAA,MACE,QAAA,SAIF,CAVA,YAUA,CAAA,MAAA,CAAA,oBAAA,QACE,UAAA,QACA,QAAA,MACA,WAAA,QACA,eAAA,MAGF,CAjBA,YAiBA,CAAA,MAAA,CAPA,qBAOA,IACE,QAAA,KAGF,CAXA,qBAYE,QAAA,aACA,OAAA,QACA,UAAA,IAGF,CAjBA,oBAiBA,SACE,QAAA,GAGF,CAAA,uBACE,QAAA,MACA,WAAA,OACA,WAAA,IAAA,kCApCc,UAsCd,WACA,IAAA,KACA,MAAA,YACA,UAAA,KAAA,KAAA,EAAA,MACA,OAAA,IAAA,MAAA,IAAA,sBAGA,MAAA,IAAA,mBACA,YAAA,IACA,UAAA,IAAA,MCzCF,CAAA,OAAA,CAAA,SACE,SAAA,SACA,IAAA,KACA,MAAA,EAGF,CAAA,QACE,MAAA,KACA,YAAA,KACA,aAAA,IAIF,CAAA,UACE,YAAA,MACA,WAAA,KACA,YAAA,EACA,MAAA,KACA,YAAA,IAGF,CARA,UAQA,EACE,aAAA,MACA,cAAA,KACA,MAAA,MAKA,aAAA,KACA,MAAA,QACA,UAAA,IACA,WAAA,OAEF,CArBA,UAqBA,CAAA,OACE,QAAA,GACA,QAAA,aAEF,CAzBA,UAyBA,CAAA,iBACE,aAAA,MAEF,CA5BA,UA4BA,CAAA,YACE,cAAA,KAGF,CAhCA,UAgCA,CAAA,OACE,WAAA,IAAA,wBAGF,CAAA,UACE,WAAA,IAGF,CAAA,aACE,YAAA,IACA,UAAA,IACA,WAAA,KAGF,CAAA,gBACE,YAAA,MACA,UAAA,IACA,WAAA,KAGF,CAAA,WACE,YAAA,MAEF,EAAA,CAAA,CAHA,WAIE,YAAA,OAEF,CANA,WAMA,EACE,YAAA,IAGF,CA1BA,UA0BA,CAAA,IAAA,CAtBA,aAsBA,CAAA,IAAA,CAhBA,gBAgBA,CAAA,IAMA,CAhCA,UAgCA,CAAA,QAAA,CA5BA,aA4BA,CAAA,QAAA,CAtBA,gBAsBA,CAAA,QAHE,YAAA,IACA,aAAA,EAQF,CAtCA,UAsCA,CAZA,IAYA,GAAA,CAlCA,aAkCA,CAZA,IAYA,GAAA,CA5BA,gBA4BA,CAZA,IAYA,GAAA,CAtCA,UAsCA,CANA,QAMA,GAAA,CAlCA,aAkCA,CANA,QAMA,GAAA,CA5BA,gBA4BA,CANA,QAMA,GAME,aAAA,MACA,WAAA,OAGF,CAhDA,UAgDA,CAtBA,GAsBA,CAAA,CAtBA,IAsBA,CA5CA,aA4CA,CAtBA,GAsBA,CAAA,CAtBA,IAsBA,CAtCA,gBAsCA,CAtBA,GAsBA,CAAA,CAtBA,IAsBA,CAhDA,UAgDA,CAhBA,OAgBA,CAAA,CAhBA,QAgBA,CA5CA,aA4CA,CAhBA,OAgBA,CAAA,CAhBA,QAgBA,CAtCA,gBAsCA,CAhBA,OAgBA,CAAA,CAhBA,QAsBG,YAAA,EACA,aAAA,EAGH,CA1DA,UA0DA,CA1CA,WA2CE,UAAA,IAGF,CA9DA,UA8DA,CAAA,YAAA,CA1DA,aA0DA,CAAA,YAAA,CA9DA,UA8DA,CAAA,WAAA,OACE,cAAA,IACA,aAAA,IAEF,CAlDA,WAkDA,CAAA,WAAA,OAAA,CAlDA,WAkDA,CAAA,MAAA,CAAA,YACE,YAAA,IAGF,CAlEA,aAkEA,CAtDA,WAyDA,CA/DA,gBA+DA,CAzDA,WAuDE,UAAA,IAMF,CAAA,YACE,WAAA,MCnIF,CAAA,UAAA,CAAA,UAAA,CAAA,UAAA,CAAA,cAII,SAAA,SAGJ,CAPA,UAOA,CAPA,cAOA,MAAA,CAAA,UAAA,MAAA,CAAA,UAAA,CAPA,UAOA,CAAA,MAAA,CAPA,UAOA,CAAA,aAII,SAAA,SAAoB,IAAA,EAAQ,KAAA,EAAS,MAAA,KAAa,OAAA,KAItD,CAfA,UAeA,IAAA,GAAA,CAAA,UAEI,MAAA,KAKJ,CbSE,YaTF,IAAA,CbSE,YaTF,IAGE,WAAA,IAAA,gBAGF,CAAA,OAAA,CAAA,IACE,WAAA,KAIA,CAAA,kBAAA,QACE,WAAA,KACA,OAAA,QAKJ,CAAA,qBACE,MAAA,KAAA,EACA,YAAA,IAAA,kBACA,gBAAA,OACA,QAAA,KACA,IAAA,KAKF,CAlDA,SAkDA,CAAA,GAAA,KAAA,CAAA,WACE,OAAA,QAGF,GAAA,CAJA,UAKE,OAAA,IAAA,MAAA,KACA,WAAA,IAAA,IAAA,IAAA,KACA,OAAA,SAGF,CAAA,oBACE,MAAA,KACA,SAAA,SACA,QAAA,KACA,WAAA,QAKF,CAAA,MACI,MAAA,KAGJ,CAlEA,aAmEI,OAAA,QC5EJ,OACE,MAAA,KACA,SAAA,SAGA,YAAA,EACA,aAAA,EAGF,WACE,YAAA,KACA,aAAA,KACA,WAAA,KAEA,WAAA,IAAA,CAAA,YACE,YAAA,IAGF,WAAA,CJME,WINF,WAAA,CRiEF,KQ/DI,YAAA,IAIF,WAAA,CJAE,UIAF,OAAA,WAAA,CR2DF,IQ3DE,aAAA,OAEE,QAAA,QAIF,WAAA,CdHA,IcGA,eACE,QAAA,OAKJ,MAAA,CAAA,WACE,YAAA,KACA,aAAA,KAGA,MAAA,CALF,WAKE,CAAA,KACE,aAAA,EAIJ,OAAA,CAAA,UAAA,CAAA,EAAA,OACE,CAAA,YACE,WAAA,MC/CJ,CAAA,KACE,QAAA,aACA,EAAA,KACA,MAAA,KACA,UAAA,IAGF,CAPA,IAOA,CAAA,CTHA,QSIE,QAAA,MACA,WAAA,OAGF,QAAA,OAAA,CAZA,IAYA,CAAA,CTRA,OSQA,OACE,QAAA,GAGF,CAhBA,IAgBA,CAAA,CTZA,OSYA,CAAA,CNPE,MMQA,YAAA,IACA,UAAA,MACA,YAAA,MAGF,CAtBA,KAsBA,CNME,OMLA,WAAA,OACA,WAAA,MAGF,CA3BA,KA2BA,CNCE,MMDF,CAAA,KACE,WAAA,KAGF,CA/BA,KA+BA,CNHE,MMGF,CP2CI,OO1CF,WAAA,OAGF,CAnCA,KAmCA,CNPE,MMOF,CAAA,MACE,WAAA,MAGF,CAvCA,KAuCA,CAAA,MAAA,CAAA,CTnCA,QSoCE,WAAA,OACA,YAAA,IACA,UAAA,IACA,YAAA,IAGF,CA9CA,KA8CA,CAPA,MAOA,CAAA,CAPA,OAQE,WAAA,IAGF,CAlDA,KAkDA,CT9CA,OS8CA,CAAA,CAXA,OAYE,WAAA,KAGF,CAtDA,KAsDA,CTlDA,OSkDA,CAAA,CAAA,KACE,WAAA,KAGF,CA1DA,KA0DA,CAJA,IAIA,CA/BA,KAgCE,WAAA,KACA,YAAA,IACA,YAAA,KAGF,CAhEA,KAgEA,CAVA,IAUA,CPUI,OOTF,WAAA,OAGF,CApEA,KAoEA,CAdA,IAcA,CAjCA,MAkCE,WAAA,MAGF,CAxEA,KAwEA,CAAA,IACE,YAAA,IC7DF,CAAA,SACE,WAAA,KAGF,CAAA,aACE,WAAA,KACA,YAAA,IAAA,kBAGF,CAAA,QAAA,CAAA,QAEE,OAAA,IAAA,MAAA,IAAA,6BACA,IAAA,KACA,WAAA,YACA,EA1BA,YAAA,IAAA,kBACA,WAAA,IAAA,mBACA,UAAA,OACA,YAAA,IA2BF,CFjBE,YEkBA,YAAA,IAAA,kBACA,YAAA,IACA,MAAA,IAAA,mBACA,WAAA,IAAA,0BACA,OAAA,IAAA,MAAA,UAAA,GAAA,KAAA,CAAA,IAAA,0BAAA,GAAA,CAAA,oBACA,KACA,QAAA,aACA,WAAA,KACA,UAAA,KACA,eAAA,OAjCA,YAAA,eACA,QAAA,MAqCF,CAAA,MAAA,CAAA,aACE,YAAA,KAIF,CAAA,WACE,YAAA,IAAA,MAAA,aACA,EAAA,KAAA,IACA,WAAA,KAEA,WAAA,EACA,cAAA,EAxDA,YAAA,IAAA,kBACA,WAAA,IAAA,mBACA,UAAA,OACA,YAAA,IAyDF,CAVA,UAUA,QACE,QAAA,IACA,UAAA,IACA,WAAA,IAAA,MAAA,KACA,QAAA,MACA,aAAA,KACA,YAAA,MACA,MAAA,IAKF,CAxDA,oBAyDE,KAAA,EAIF,CAAA,aAAA,KAAA,CA7DA,qBA8DE,MAAA,EAEA,CAHF,aAGE,KAAA,CAhEF,cAgEE,CAhEF,oBAiEI,UACA,MAAA,EAKJ,CAVA,cAWE,SAAA,SACA,QAAA,UAEA,CAdF,cAcE,CAAA,UACE,SAAA,SACA,MAAA,EACA,IAAA,EACA,QAAA,IACA,aAAA,EACA,WAAA,KACA,OAAA,QACA,QAAA,EACA,qBAAA,iBACA,IACA,MAAA,IAEA,CA3BJ,cA2BI,CAbF,SAaE,OACE,QAAA,GAGF,CA/BJ,cA+BI,CAjBF,UAiBE,CAAA,UACE,QAAA,KAGF,CAnCJ,cAmCI,CArBF,SAqBE,CAAA,OACE,QAAA,EACA,MAAA,QACA,OAAA,YACA,eAAA,KAEA,CAzCN,cAyCM,CA3BJ,SA2BI,CANF,OAME,CAAA,SACE,QAAA,KAGF,CA7CN,cA6CM,CA/BJ,SA+BI,CAVF,OAUE,CAdF,UAeI,QAAA,OAMR,OAAA,MACE,CAvCA,UAwCE,QAAA,MC7HJ,GAAA,CAAA,yBACE,EACA,SAAA,KACA,OAAA,IAAA,MAAA,QAIF,KAAA,IAAA,CAAA,IAAA,CAAA,0BACE,mBACA,KACA,YAAA,OAGF,IAAA,CAAA,kBAAA,GAAA,CAAA,kBAEE,MAAA,KACA,WAAA,QACA,YAAA,KACA,YAAA,IAAA,kBACA,WAAA,KACA,YAAA,IACA,aAAA,OACA,WAAA,OACA,UAAA,OACA,YAAA,IACA,SAAA,EACA,QAAA,KAEA,IAAA,CAAA,iBAAA,CHrBA,YGqBA,GAAA,CAAA,iBAAA,CHrBA,YENA,YAAA,eACA,QAAA,MC+BA,IAAA,CAAA,iBAAA,YAAA,IAAA,CAAA,kBAAA,YAAA,GAAA,CAAA,iBAAA,YAAA,GAAA,CAAA,kBAAA,YAEE,WAAA,QAKA,IAAA,CAAA,kBAAA,CAAA,KAAA,IAAA,CAAA,QAAA,CAAA,OAAA,CAAA,QAAA,CAAA,OAAA,GAAA,CAAA,kBAAA,CAAA,KAAA,IAAA,CAAA,QAAA,CAAA,OAAA,CAAA,QAAA,CAAA,OAIE,MAAA,QAGF,IAAA,CAAA,kBAAA,CAPA,KAOA,CAAA,YAAA,GAAA,CAAA,kBAAA,CAPA,KAOA,CAAA,YACE,MAAA,KAGF,IAAA,CAAA,kBAAA,CAXA,KAWA,CAAA,UAAA,GAAA,CAAA,kBAAA,CAXA,KAWA,CAAA,UACE,QAAA,GAGF,IAAA,CAAA,kBAAA,CAfA,KAeA,IAAA,CAAA,SAAA,CAAA,IAAA,CAAA,QAAA,CAAA,OAAA,CAAA,SAAA,CAAA,OAAA,CAAA,SAAA,GAAA,CAAA,kBAAA,CAfA,KAeA,IAAA,CAAA,SAAA,CAAA,IAAA,CAAA,QAAA,CAAA,OAAA,CAAA,SAAA,CAAA,OAAA,CAAA,SAOE,MAAA,QAGF,IAAA,CAAA,kBAAA,CAzBA,KAyBA,IAAA,CAAA,SAAA,CAAA,UAAA,CAAA,OAAA,CAAA,KAAA,CAAA,QAAA,CAAA,MAAA,CAAA,UAAA,GAAA,CAAA,kBAAA,CAzBA,KAyBA,IAAA,CAAA,SAAA,CAAA,UAAA,CAAA,OAAA,CAAA,KAAA,CAAA,QAAA,CAAA,MAAA,CAAA,UAOE,MAAA,KAGF,IAAA,CAAA,kBAAA,CAnCA,KAmCA,IAAA,CAAA,SAAA,CAAA,OAAA,CAAA,KAAA,GAAA,CAAA,kBAAA,CAnCA,KAmCA,IAAA,CAAA,SAAA,CAAA,OAAA,CAAA,KAGE,MAAA,KACA,WAAA,KAGF,IAAA,CAAA,kBAAA,CA1CA,KA0CA,IAAA,CAAA,OAAA,CAAA,WAAA,CAAA,SAAA,GAAA,CAAA,kBAAA,CA1CA,KA0CA,IAAA,CAAA,OAAA,CAAA,WAAA,CAAA,SAGE,MAAA,QAGF,IAAA,CAAA,kBAAA,CAhDA,KAgDA,CAAA,SAAA,IAAA,CAAA,kBAAA,CAhDA,KAgDA,CAAA,WAAA,GAAA,CAAA,kBAAA,CAhDA,KAgDA,CAAA,SAAA,GAAA,CAAA,kBAAA,CAhDA,KAgDA,CAAA,WAEE,MAAA,KAGF,IAAA,CAAA,kBAAA,CArDA,KAqDA,CAAA,UAAA,IAAA,CAAA,kBAAA,CArDA,KAqDA,CAAA,SAAA,GAAA,CAAA,kBAAA,CArDA,KAqDA,CAAA,UAAA,GAAA,CAAA,kBAAA,CArDA,KAqDA,CAAA,SAEE,MAAA,KAIF,IAAA,CAAA,kBAAA,CA3DA,KA2DA,CANA,UAMA,IAAA,CAAA,kBAAA,CA3DA,KA2DA,CAAA,KAAA,GAAA,CAAA,kBAAA,CA3DA,KA2DA,CANA,UAMA,GAAA,CAAA,kBAAA,CA3DA,KA2DA,CAAA,KAEE,YAAA,IAGF,IAAA,CAAA,kBAAA,CAhEA,KAgEA,CAAA,OAAA,GAAA,CAAA,kBAAA,CAhEA,KAgEA,CAAA,OACE,WAAA,OAGF,IAAA,CAAA,kBAAA,CApEA,KAoEA,CAjCA,OAiCA,GAAA,CAAA,kBAAA,CApEA,KAoEA,CAjCA,OAkCE,OAAA,KAMJ,IAAA,CAAA,iBAAA,CAAA,aAAA,GAAA,CAAA,iBAAA,CAAA,aACE,SAAA,SACA,aAAA,MACA,cAAA,WACA,SAAA,KAEA,IAAA,CAAA,iBAAA,CANF,YAME,CAAA,KAAA,GAAA,CAAA,iBAAA,CANF,YAME,CAAA,KACE,SAAA,SACA,YAAA,QAGF,IAAA,CAAA,iBAAA,CAXF,aAWE,CAAA,kBAAA,GAAA,CAAA,iBAAA,CAXF,aAWE,CAAA,kBACE,SAAA,SACA,eAAA,KACA,IAAA,EACA,UAAA,KACA,KAAA,OACA,MAAA,IACA,eAAA,KACA,aAAA,IAAA,MAAA,KACA,YAAA,KAGF,IAAA,CAAA,iBAAA,CAvBF,aAuBE,CAZA,iBAYA,CAAA,KAAA,GAAA,CAAA,iBAAA,CAvBF,aAuBE,CAZA,iBAYA,CAAA,KACE,QAAA,MACA,kBAAA,WAGF,IAAA,CAAA,iBAAA,CA5BF,aA4BE,CAjBA,iBAiBA,CAAA,IAAA,QAAA,GAAA,CAAA,iBAAA,CA5BF,aA4BE,CAjBA,iBAiBA,CAAA,IAAA,QACE,QAAA,QAAA,YACA,MAAA,KACA,QAAA,MACA,cAAA,KACA,WAAA,MAOJ,IAAA,CAAA,kBAAA,CAAA,eAAA,GAAA,CAAA,kBAAA,CAAA,eACE,SAAA,SACA,WAAA,IACA,KAAA,EACA,MAAA,EACA,QAAA,QAAA,EACA,UAAA,QACA,WAAA,UACA,eAAA,KACA,YAAA,QACA,YAAA,IASF,KAAA,CZ3JF,UY2JE,GAAA,CAAA,kBACE,OAAA,IAAA,MAAA,QAKF,KAAA,CZjKF,UYiKE,IAAA,CAAA,kBAAA,KAAA,CZjKF,UYiKE,GAAA,CAAA,kBAEE,MAAA,KACA,WAAA,QAEA,KAAA,CZtKJ,UYsKI,IAAA,CAAA,iBAAA,YAAA,KAAA,CZtKJ,UYsKI,IAAA,CAAA,kBAAA,YAAA,KAAA,CZtKJ,UYsKI,GAAA,CAAA,iBAAA,YAAA,KAAA,CZtKJ,UYsKI,GAAA,CAAA,kBAAA,YAEE,WAAA,QAIF,KAAA,CZ5KJ,UY4KI,IAAA,CAAA,kBAAA,CAvJA,MAuJA,KAAA,CZ5KJ,UY4KI,GAAA,CAAA,kBAAA,CAvJA,MAwJE,SAAA,SACA,QAAA,EAEA,KAAA,CZhLN,UYgLM,IAAA,CAAA,kBAAA,CA3JF,KA2JE,IAAA,CA3JF,QA2JE,CA3JF,OA2JE,CA3JF,QA2JE,CA3JF,OA2JE,KAAA,CZhLN,UYgLM,GAAA,CAAA,kBAAA,CA3JF,KA2JE,IAAA,CA3JF,QA2JE,CA3JF,OA2JE,CA3JF,QA2JE,CA3JF,OA+JI,MAAA,QAGF,KAAA,CZvLN,UYuLM,IAAA,CAAA,kBAAA,CAlKF,KAkKE,CA3JF,YA2JE,KAAA,CZvLN,UYuLM,GAAA,CAAA,kBAAA,CAlKF,KAkKE,CA3JF,YA4JI,MAAA,KACA,QAAA,EAGF,KAAA,CZ5LN,UY4LM,IAAA,CAAA,kBAAA,CAvKF,KAuKE,CA5JF,UA4JE,KAAA,CZ5LN,UY4LM,GAAA,CAAA,kBAAA,CAvKF,KAuKE,CA5JF,UA6JI,QAAA,GAGF,KAAA,CZhMN,UYgMM,IAAA,CAAA,kBAAA,CA3KF,KA2KE,IAAA,CA5JF,SA4JE,CA5JF,IA4JE,CA5JF,QA4JE,CA5JF,OA4JE,CA5JF,SA4JE,CA5JF,OA4JE,CA5JF,SA4JE,KAAA,CZhMN,UYgMM,GAAA,CAAA,kBAAA,CA3KF,KA2KE,IAAA,CA5JF,SA4JE,CA5JF,IA4JE,CA5JF,QA4JE,CA5JF,OA4JE,CA5JF,SA4JE,CA5JF,OA4JE,CA5JF,SAmKI,MAAA,QAGF,KAAA,CZ1MN,UY0MM,IAAA,CAAA,kBAAA,CArLF,KAqLE,IAAA,CA5JF,SA4JE,CA5JF,UA4JE,CA5JF,OA4JE,CA5JF,KA4JE,CA5JF,QA4JE,CA5JF,MA4JE,CA5JF,UA4JE,KAAA,CZ1MN,UY0MM,GAAA,CAAA,kBAAA,CArLF,KAqLE,IAAA,CA5JF,SA4JE,CA5JF,UA4JE,CA5JF,OA4JE,CA5JF,KA4JE,CA5JF,QA4JE,CA5JF,MA4JE,CA5JF,UAmKI,MAAA,QAGF,KAAA,CZpNN,UYoNM,IAAA,CAAA,kBAAA,CA/LF,KA+LE,IAAA,CA5JF,SA4JE,CA5JF,OA4JE,CA5JF,KA4JE,KAAA,CZpNN,UYoNM,GAAA,CAAA,kBAAA,CA/LF,KA+LE,IAAA,CA5JF,SA4JE,CA5JF,OA4JE,CA5JF,KA+JI,MAAA,KAGF,KAAA,CZ1NN,UY0NM,IAAA,CAAA,kBAAA,CArMF,KAqME,IAAA,CA3JF,OA2JE,CA3JF,WA2JE,CA3JF,SA2JE,KAAA,CZ1NN,UY0NM,GAAA,CAAA,kBAAA,CArMF,KAqME,IAAA,CA3JF,OA2JE,CA3JF,WA2JE,CA3JF,SA8JI,MAAA,QAGF,KAAA,CZhON,UYgOM,IAAA,CAAA,kBAAA,CA3MF,KA2ME,CA3JF,SA2JE,KAAA,CZhON,UYgOM,IAAA,CAAA,kBAAA,CA3MF,KA2ME,CA3JF,WA2JE,KAAA,CZhON,UYgOM,GAAA,CAAA,kBAAA,CA3MF,KA2ME,CA3JF,SA2JE,KAAA,CZhON,UYgOM,GAAA,CAAA,kBAAA,CA3MF,KA2ME,CA3JF,WA6JI,MAAA,QAGF,KAAA,CZrON,UYqOM,IAAA,CAAA,kBAAA,CAhNF,KAgNE,CA3JF,UA2JE,KAAA,CZrON,UYqOM,IAAA,CAAA,kBAAA,CAhNF,KAgNE,CArJF,KAqJE,KAAA,CZrON,UYqOM,GAAA,CAAA,kBAAA,CAhNF,KAgNE,CA3JF,UA2JE,KAAA,CZrON,UYqOM,GAAA,CAAA,kBAAA,CAhNF,KAgNE,CArJF,KAuJI,YAAA,IAGF,KAAA,CZ1ON,UY0OM,IAAA,CAAA,kBAAA,CArNF,KAqNE,CArJF,OAqJE,KAAA,CZ1ON,UY0OM,GAAA,CAAA,kBAAA,CArNF,KAqNE,CArJF,OAsJI,WAAA,OAGF,KAAA,CZ9ON,UY8OM,IAAA,CAAA,kBAAA,CAzNF,KAyNE,CAtLF,OAsLE,KAAA,CZ9ON,UY8OM,GAAA,CAAA,kBAAA,CAzNF,KAyNE,CAtLF,OAuLI,OAAA,KAMN,KAAA,CZrPF,UYqPE,CA7GA,eA8GE,WAAA,UACA,cAAA,IAAA,OAAA,IAAA,CAAA,CAAA,EAAA,CAAA,KACA,WAAA,IAAA,OAAA,IAAA,CAAA,CAAA,EAAA,CAAA,KACA,QAAA,EAIJ,OAAA,MAGI,IAAA,CAAA,kBAAA,CAxHF,eAwHE,GAAA,CAAA,kBAAA,CAxHF,eAyHI,aAAA,OCzRN,CAAA,YACE,WAAA,KACA,WAAA,OAGF,CALA,YAKA,aAAA,CAAA,UAAA,CAAA,qBACE,EACA,YAAA,IAGF,CAAA,aAAA,cAAA,IAGE,WAAA,KAIF,CAAA,WAAA,CAAA,SAAA,CAAA,MACE,YAAA,kBACA,WAAA,iBAKF,CAAA,MAAA,SAAA,CAAA,UAAA,SAAA,CAAA,UAEI,MAAA,iBAEJ,SAAA,UAAA,SAAA,UAEI,QAAA,OCxBJ,QAAA,QAAA,GAAA,WAAA,WAAA,GAAA,CAAA,cAAA,CAAA,gBAAA,CAAA,cAAA,CnBmBE,KmBTA,SAAA,SAGF,CAAA,cACE,SAAA,SACA,QAAA,aACA,IAAA,KACA,KAAA,KACA,UAAA,IAEA,QAAA,IAAA,mBAAA,EAAA,GACA,WAAA,QAAA,IACA,WAAA,YAGF,EAAA,CAAA,CAZA,cAaE,KAAA,OAGF,CAhBA,aAgBA,CAAA,EACE,aAAA,KACA,cAAA,KAKF,CAAA,QAAA,CAAA,CAvBA,cAuBA,CAAA,OAAA,CAAA,CAvBA,cAuBA,CAAA,KAAA,CAAA,CAvBA,cAuBA,CAAA,OAAA,CAAA,CAvBA,cAuBA,CAAA,UAAA,CAAA,CAvBA,cAuBA,CAAA,UAAA,CAAA,CAvBA,cAuBA,CAAA,SAAA,CAAA,CAvBA,cA8BE,IAAA,MAMF,CAAA,eAAA,CAAA,CnB9BE,ImB8BF,CAAA,CApCA,cAoCA,CAAA,YAAA,CAAA,CnB9BE,ImB8BF,CAAA,CApCA,cAoCA,CAAA,YAAA,CAAA,CAAA,aAAA,CAAA,CApCA,cAoCA,CAAA,YAAA,CAAA,CnB9BE,ImB8BF,CAAA,CApCA,cAoCA,CAAA,YAAA,CAAA,CAAA,aAAA,CAAA,CApCA,cAoCA,CAAA,YAAA,CAAA,CAAA,aAAA,CAAA,CAAA,YAAA,CAAA,CnB9BE,ImB8BF,CAAA,CApCA,cAoCA,CAAA,YAAA,CAAA,CAAA,aAAA,CAAA,CAAA,UAAA,CAAA,CnB9BE,ImB8BF,CAAA,CApCA,cAoCA,CAAA,WAAA,CAAA,CnB9BE,ImB8BF,CAAA,CApCA,cA4CE,KAAA,OAKA,CAAA,UAAA,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAiDE,CAbF,YAaE,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAiDE,CAbF,aAaE,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAiDE,CA9DF,aA8DE,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAiDE,CAbF,eAaE,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAiDE,CAAA,eAAA,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAiDE,CAbF,WAaE,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAiDE,CAbF,YAaE,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAiDE,CAAA,gBAAA,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAiDE,CAAA,gBAAA,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAiDE,CAAA,YAAA,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAiDE,CAAA,KAAA,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAiDE,CAAA,IAAA,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAiDE,EAAA,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAiDE,EAAA,CAAA,CnB3CA,ImB2CA,cAAA,CAAA,CAjDF,cAkDI,QAAA,KAGF,CAJA,UAIA,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAqDE,CAjBF,YAiBE,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAqDE,CAjBF,aAiBE,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAqDE,CAlEF,aAkEE,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAqDE,CAjBF,eAiBE,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAqDE,CAJA,eAIA,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAqDE,CAjBF,WAiBE,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAqDE,CAjBF,YAiBE,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAqDE,CAJA,gBAIA,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAqDE,CAJA,gBAIA,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAqDE,CAJA,YAIA,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAqDE,CAJA,KAIA,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAqDE,CAJA,IAIA,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAqDE,EAAA,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAqDE,EAAA,CAAA,CAjBF,YAiBE,CAAA,CnB/CA,ImB+CA,cAAA,CAAA,CArDF,cAsDI,QAAA,KAOJ,CnBjDE,WmBiDF,KAAA,CA7DA,aA6DA,QAAA,CA7DA,cA8DE,QAAA,GAGF,CnBrDE,WmBqDF,KAAA,CAjEA,aAiEA,QAAA,CAjEA,aAiEA,OACE,QAAA,EAGF,CArEA,aAqEA,KAAA,CAAA,gBACE,QAAA,EAGF,CAAA,gBACE,SAAA,SACA,IAAA,KACA,KAAA,YACA,MAAA,IACA,WAAA,IAAA,sBACA,OAAA,IAAA,MAAA,IAAA,qBACA,QAAA,KAKF,QACE,kBAAA,KAEA,UAAA,YAAA,IAAA,EAGF,WAHE,YAIE,GAAK,iBAAA,IAAA,wBACL,GACE,iBAAA,QACA,QAAA,GChHN,EAAA,CAAA,MACE,YAAA,IAGF,CAAA,IACE,WAAA,MAEA,CAHF,IAGE,CAAA,QACE,QAAA,aACA,eAAA,IACA,MAAA,GACA,aAAA,EAGF,CAVF,IAUE,CAPA,OAOA,CAAA,CAAA,SACE,QAAA,aACA,MAAA,IACA,WAAA,EAMJ,CAAA,QACE,WAAA,KACA,YAAA,KACA,aAAA,KACA,UAAA,KACA,WAAA,OAIF,CAAA,YACE,WAAA,MAEA,CAHF,WAGE,aACE,WAAA,EAGF,CAPF,WAOE,CAAA,CpBhBA,KoBiBE,WAAA,IAGF,CAXF,YAWE,CAAA,iBACE,aAAA,WAGF,CAfF,YAeE,CAAA,iBACE,UAAA,IACA,WAAA,OACA,YAAA,IAMJ,CAAA,0BACE,wBACA,OAAA,CAAA,CAAA,OAAA,GAAA,CAAA,OAAA,CAAA,CAAA,OAAA,GAOF,cACE,EACA,OAAA,KAIF,CAAA,OACE,WAAA,QACA,MAAA,KACA,OAAA,IAAA,MAAA,sBACA,YACA,IAAA,IAAA,EACA,eAAA,KACA,UAAA,KACA,YAAA,EACA,WAAA,IAAA,IAAA,KACA,QAAA,aACA,aAAA,IAIF,CAAA,KAAA,CAAA,SAEI,YAAA,OACA,aAAA,OACA,aAAA,OAEA,CANJ,KAMI,IAAA,CANJ,KAMI,IAAA,CANJ,SAMI,IAAA,CANJ,SAMI,IACE,aAAA,OAKN,CAAA,YACE,WAAA,OACA,YAAA,IAKF,CAAA,WACE,UAAA,OACA,eAAA,OAIF,CAAA,SACE,WAAA,OAEA,CAHF,SAGE,CAHF,SAQA,CDrDE,gBCqDF,CARA,SAIM,YAAA,IAON,OAAA,CDxDE,aCwDF,CAXA,SAYE,YAAA,IAGF,CpBvGE,KoBwGA,YAAA,KAGF,CAAA,OACE,QAAA,eAIF,CAAA,MACE,WAAA,OAGF,CAAA,MACI,aAAA,KACA,cAAA,KACA,cAAA,IAGJ,CAAA,UACI,WAAA,QAMJ,CAAA,WAAa,YAAA,UAAA,CAAA,eAAA,CAAA,KAAA,CAAA,MAEb,CAFA,WAEA,CAAA,EAAgB,UAAA,IAAgB,eAAA,UAA2B,eAAA,KAClD,YAAA,OAAqB,aAAA,MAE9B,CALA,WAKA,CAAA,EAAgB,eAAA,MAAsB,eAAA,UAC7B,YAAA,OAAqB,aAAA,OC3J9B,OAAA,MACE,CAAA,QAAA,CAAA,aAAA,CAAA,QAAA,CAAA,WAAA,IAAA,CAAA,OAAA,CAAA,CAAA,CAAA,UAAA,CAAA,QAAA,CAAA,QAAA,CAAA,CAAA,YAAA,CAAA,QAAA,CAAA,gBAAA,CAAA,QAAA,CAAA,QAAA,CAAA,GAAA,CAAA,mBAME,QAAA,KAGF,CATA,SASA,CATA,SASA,CATA,SASA,CrBgBA,YqBfE,IAAA,gBACA,MAAA,KACA,OAAA,aACA,SACA,EAGF,CAAA,aAAA,CAAA,QAAA,CPWF,WOXE,CPsBA,YOtBA,CFgCF,cE/BI,aAAA,MAGF,CfxBF,QeyBI,YAAA,MAGF,CPnBA,YOoBE,OAAA,MACA,WAAA,MAGF,aACE,OCjCJ,ChBDA,QgBCA,CAAA,YACE,MAAA,MACA,eAAA,OACA,ChBJF,QgBIE,CAHF,YAGE,CAAA,WACE,YAAA,IAAA,qBACA,KAAA,KAEF,ChBRF,QgBQE,CAPF,YAOE,CF+CF,0BE9CI,WAAA,ICXJ,CFKE,QELF,CAAA,cACE,UAAA,MACA,SAAA,SACA,MAAA,EACA,OAAA,EACA,cAAA,KAGF,CFHE,QEGF,CARA,cAQA,CAAA,IAAA,CAAA,gBAAA,CFHE,QEGF,CARA,cAQA,CAAA,IAAA,CAAA,gBAAA,MAAA,CARA,cAQA,CAAA,wBAGE,ICTA,CAAA,UAAA,CAAA,aACE,OAAA,KAGF,CAJA,UAIA,CAAA,yBACE,SAAA,MACA,IAAA,IACA,OAAA,YACA,IACA,KAAA,IAAA,IAAA,CAAA,CAAA,MAAA,EAAA,OAAA,EAAA,GACA,MAAA,KACA,UAAA,MACA,OAAA,IAAA,MAAA,IAAA,mBACA,WAAA,IAAA,kBAAA,EAAA,SACA,QAAA,KACA,QAAA,KACA,eAAA,OAGF,CAnBA,UAmBA,CAfA,yBAeA,QACE,MAAA,IACA,YAAA,KACA,aAAA,KACA,YAAA,WAGF,CA1BA,UA0BA,CAAA,wBACE,QAAA,KACA,gBAAA,cACA,YAAA,QACA,IAAA,KACA,cAAA,IACA,OAAA,KAGF,CAnCA,UAmCA,CAAA,UACE,KAAA,EAAA,EAIF,CAxCA,UAwCA,CAAA,mBCxCA,KAAA,QACA,QAAA,KACA,gBAAA,OACA,YAAA,eACA,EAAA,KACA,IAAA,KACA,WAAA,KACA,MAAA,IAAA,qBACA,iBAAA,IAAA,qBACA,aAAA,IACA,aAAA,IAAA,uBACA,aAAA,oBAhBc,EAkBd,YAAA,OACA,SAAA,OACA,cAAA,SACA,OAAA,QAGA,YAAA,KAEA,CDrBA,UCqBA,CDmBA,kBCnBA,MAAA,KAAA,CAAA,UACE,MAAA,IAAA,2BACA,iBAAA,IAAA,2BAGF,CD1BA,UC0BA,CDcA,kBCdA,eACE,QAAA,IAAA,MAAA,IAAA,qBACA,eAAA,KAGF,CD/BA,UC+BA,CDSA,kBCTA,CAVA,SAWE,QAAA,GACA,OAAA,YAGF,CDpCA,UCoCA,CDIA,kBCJA,CL6FF,OK5FI,QAAA,KAGF,CDxCA,UCwCA,CDAA,kBCAA,CAAA,KACE,MAAA,IAAA,2BACA,iBAAA,IAAA,2BDEF,CA5CA,UA4CA,CAAA,gBACE,cAAA,KAGF,CAhDA,UAgDA,CAAA,cAAA,CAAA,OACE,gBAAA,UACA,WAAA,IAAA,0BAIF,CAtDA,UAsDA,CANA,cAOE,aAAA,KACA,WAAA,EACA,WAAA,KACA,KAAA,EAAA,EACA,WAAA,IAAA,oBAAA,EAAA,OACA,OAAA,IAAA,MAAA,IAAA,mBAAA,EAAA,MAGF,CA/DA,UA+DA,CAfA,aAeA,OACE,QAAA,KAGF,CAnEA,UAmEA,CAAA,qBACE,gBAAA,KAGF,CAvEA,UAuEA,CAAA,oBACE,QAAA,KAIF,CA5EA,UA4EA,CAAA,UACE,UAAA,IACA,YAAA,IAGF,CAjFA,UAiFA,CAAA,WACE,YAAA,IAGF,CArFA,UAqFA,CAAA,cACE,YAAA,IAEF,CAxFA,UAwFA,CAAA,YACE,YAAA,IAGF,CA5FA,UA4FA,CAAA,YACE,QAAA,KACA,aAAA,KACA,YAAA,IAGF,CAlGA,UAkGA,CAAA,6BACE,WAAA,KAGF,CAtGA,UAsGA,CAAA,6BACE,WAAA,IAAA,0BAGF,CA1GA,UA0GA,CAAA,wBACE,SAAA,MACA,IAAA,EACA,WAAA,IAAA,yBAAA,EAAA,OACA,MAAA,MACA,OAAA,KACA,KAAA,EACA,QAAA,KAGF,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OACE,CArHF,UAqHE,CAjHF,yBAkHI,OAAA,MAKN,MACE,2BAAA,MACA,0BAAA,KAAA,GAAA,EAAA,GAAA,EAAA,CAAA,EAAA,KAGF,KAAA,CnB3GA,UmB4GE,2BAAA,MACA,0BAAA,KAAA,GAAA,EAAA,GAAA,EAAA,CAAA,EAAA,KEtIF,C1BgCE,Y0BhCF,CAAA,wBAAA,CAAA,UACE,OAAA,oBACA,EACA,aAAA,IAIF,CAAA,uBAAA,KAAA,CAAA,C1BmBE,K0BlBA,QAAA,OAIF,C1BoBE,Y0BpBF,CAZA,wBAYA,CAAA,YACE,UAAA,IAAA,6BACA,EAAA,KAAA,KAGF,CAjBA,UAiBA,CAAA,kBAEE,QAAA,KAKF,C1BQE,Y0BRF,CAxBA,wBAwBA,CAAA,YACE,UAAA,KAMF,C1BCE,Y0BDF,CAAA,OACI,SAAA,MAIJ,CApCA,wBAoCA,CApCA,UAoCA,KAAA,CApCA,wBAoCA,CApCA,UAoCA,IAEE,UAAA,OACA,YAAA,IACA,YAAA,IAAA,kBAIF,CA5CA,wBA4CA,IAAA,CAAA,kBAAA,CA5CA,wBA4CA,GAAA,CAAA,kBAEE,MAAA,KACA,WAAA,QAKA,CApDF,SAoDE,CAAA,SAAA,CAAA,iBACE,WAAA,IAAA,0BACA,OAAA,IAAA,MAAA,UAAA,GAAA,KAAA,CAAA,IAAA,0BAAA,GAAA,CAAA,MACA,QAAA,MACA,MAAA,mBACA,EAAA,KAEF,CA3DF,SA2DE,CAPA,SAOA,WACE,EAAA,KACA,QAAA,MACA,OAAA,IAAA,MAAA,UAAA,GAAA,KAAA,CAAA,IAAA,0BAAA,GAAA,CAAA,MAEF,CAhEF,SAgEE,CAZA,SAYA,IAAA,CAhEF,SAgEE,CAZA,SAYA,gBACE,EAAA,KACA,OAAA,IAAA,MAAA,UAAA,GAAA,KAAA,CAAA,IAAA,0BAAA,GAAA,CAAA,MACA,iBAAA,IAAA,cAGJ,CAtEA,SAsEA,CAlBE,QAkBF,CAAA,CVjDA,QUkDE,WAAA,EAKF,EAAA,CAAA,uCACE,UACA,EAKA,KAAA,CrB1DF,UqB0DE,CAnFF,wBAmFE,IAAA,CAAA,kBAAA,KAAA,CrB1DF,UqB0DE,CAnFF,wBAmFE,GAAA,CAAA,kBAEE,MAAA,KACA,WAAA,QClFJ,C3B4BE,Y2B5BF,CAAA,OAAA,KAAA,CAAA,eACE,YAAA,IACA,WAAA,gBACA,KAGF,C3BsBE,Y2BtBF,CANA,OAMA,KAAA,CANA,cAMA,CAAA,CAAA,sBACE,WAAA,IAGF,C3BkBE,Y2BlBF,CAVA,OAUA,CAAA,kBACE,WAAA,IACA,WAAA,aACA,KAGF,C3BYE,Y2BZF,CAhBA,OAgBA,EAAA,CAAA,oBACE,WAAA,KAGF,C3BQE,Y2BRF,CApBA,OAoBA,EAAA,CAAA,iBACE,WAAA,KAGF,C3BIE,Y2BJF,CAxBA,OAwBA,GAAA,GACE,WAAA,eACA,KAAA,IAGF,C3BDE,Y2BCF,CA7BA,OA6BA,GAAA,GACE,WAAA,OAGF,C3BLE,Y2BKF,CAjCA,OAiCA,GAAA,EAAA,OACE,WAAA,KAGF,C3BTE,Y2BSF,CArCA,OAqCA,GAAA,C3BTE,Y2BSF,CArCA,OAqCA,GAEE,WAAA,gBAGF,C3BdE,Y2BcF,CA1CA,OA0CA,CAAA,QACE,WAAA,QAGF,C3BlBE,Y2BkBF,CA9CA,OA8CA,CAJA,QAIA,EACE,gBAAA,KAGF,C3BtBE,Y2BsBF,CAlDA,OAkDA,CAAA,OACE,UAAA,IACA,WAAA,MAKF,KAAA,CAAA,QACE,QAAA,YACA,eAAA,OAGF,KAAA,CAAA,QAAA,CAAA,OACE,iBAAA,QAGF,KAAA,CAAA,eAAA,CAJA,OAKE,MAAA,KAGF,KAAA,CAAA,UAAA,CARA,OASE,MAAA,KAGF,KAAA,CAJA,UAIA,CAZA,MAYA,QACE,QAAA,IAGF,KAAA,CAAA,SACE,UAAA,WAGF,KAAA,CApBA,QAoBA,CAJA,SAKE,iBAAA,KAGF,KAAA,CApBA,eAoBA,CARA,SASE,MAAA,KAGF,KAAA,CApBA,UAoBA,CAZA,SAaE,MAAA,QAGF,CArCA,QAqCA,IAAA,CArCA,OAqCA,CAAA,CAAA,aAAA,IAEE,UAAA,KAKF,CAAA,gBAAA,CAAA,CAAA,KAAA,cACE,WAAA,MAGF,C3B7EE,Y2B6EF,CAAA,gBACE,QAAA,KAGF,C3BjFE,Y2BiFF,CAAA,eF7GE,KAAA,QACA,QAAA,KACA,gBAAA,OACA,YAAA,eACA,EAAA,KACA,IAAA,KACA,WAAA,KACA,MAAA,IAAA,qBACA,iBAAA,IAAA,qBACA,aAAA,IACA,aAAA,IAAA,uBACA,aAAA,oBAhBc,EAkBd,YAAA,OACA,SAAA,OACA,cAAA,SACA,OAAA,QAGA,YAAA,KAEA,CzBOA,YyBPA,CEwFF,cFxFE,MAAA,KAAA,CAAA,UACE,MAAA,IAAA,2BACA,iBAAA,IAAA,2BAGF,CzBEA,YyBFA,CEmFF,cFnFE,eACE,QAAA,IAAA,MAAA,IAAA,qBACA,eAAA,KAGF,CzBHA,YyBGA,CE8EF,cF9EE,CAVA,SAWE,QAAA,GACA,OAAA,YAGF,CzBRA,YyBQA,CEyEF,cFzEE,CL6FF,OK5FI,QAAA,KAGF,CzBZA,YyBYA,CEqEF,cFrEE,CAAA,KACE,MAAA,IAAA,2BACA,iBAAA,IAAA,2BEyEJ,CAVA,eAUA,CAAA,eAAA,CAAA,gBAAA,CAAA,eAEE,QAAA,KCxHF,CAAA,uBAAA,IACE,YAAA,IAAA,kBAGF,CAAA,SACE,YAAA,OACA,WAAA,OACA,cAAA,OAGF,CAAA,aAAA,CANA,gBAOE,EAGF,CAAA,oBACE,YAAA,IAAA,aACA,UAAA,aACA,EAAA,MAGF,CANA,oBAOE,OAAA,QACA,QAAA,aACA,eAAA,OAEA,YAAA,KAEA,YAAA,OACA,SAAA,OACA,cAAA,SACA,aAAA,IACA,aAAA,MACA,YAAA,kBACA,IAGF,CAtBA,oBAuBE,MAAA,QACA,iBAAA,gBAAA,OAAA,CAAA,MACA,aAAA,QAGF,CA5BA,mBA4BA,OACE,MAAA,QACA,iBAAA,gBAAA,IAAA,CAAA,SAGF,CAjCA,mBAiCA,OAAA,CAjCA,mBAiCA,QAEE,MAAA,QACA,iBAAA,gBAAA,OAAA,CAAA,SACA,aAAA,QAGF,CAlDA,SAkDA,CAAA,gBACE,cAAA,IAGF,CAAA,WACE,YAAA,UACA,YAAA,IACA,YAAA,IACA,cAAA,IAGF,CAPA,WAOA,CAAA,IACE,QAAA,aACA,eAAA,IACA,aAAA,IAGF,CAbA,WAaA,CAAA,OACE,QAAA,aACA,eAAA,ICvEF,CAAA,qBACE,SAAA,MACA,QAAA,IACA,OAAA,IACA,MAAA,IACA,MAAA,MACA,OAAA,MAGF,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OACE,CAVF,qBAYI,OAAA,gBCRJ,IAAA,CXoCA,QWpCA,CXoCA,QWpCA,CXoCA,WWpCA,CAAA,cAAA,CAAA,CtB6EA,YsB7EA,IAAA,CXoCA,QWpCA,CXoCA,QWpCA,CXoCA,WWpCA,CAAA,cAAA,CAAA,CAAA,KAAA,CAAA,CtB6EA,YuB9DE,WAAA,KAaA,WAAA,SAAA,CAAA,MAAA,EAAA,OD5BF,IAAA,CXoCA,QWpCA,CXoCA,QWpCA,CXoCA,WWpCA,CAAA,cAAA,CAAA,CtB6EA,YsB7EA,IAAA,CXoCA,QWpCA,CXoCA,QWpCA,CXoCA,WWpCA,CAAA,cAAA,CAAA,CAAA,KAAA,CAAA,CtB6EA,YuBhDI,aAAA,IAAA,CAAA,OAAA,EAAA,EAAA,EAAA,KAAA,EAAA,UACA,UAAA,KACA,MAAA,MAEE,MAAA,IAAA,aAIF,UAAA,IAAA,aAEE,YAAA,KAAA,GAAA,CAAA,QAAA,EAAA,SDjCN,MAAA,ChBsBA,WgBrBE,YAAA,EACA,aAAA,EEDF,MACE,sBAAA,MACA,mBAAA,MAIF,YACE,EACA,WAAA,MAEA,QAAA,KACA,eAAA,OACA,YAAA,QAEA,IAAA,CXrBA,QWsBE,MAAA,IAAA,mBACA,YAAA,IAAA,aAIJ,CX3BE,SW4BA,SAAA,SACA,QAAA,KACA,UAAA,EACA,MAAA,KAGF,CXlCE,SWmCA,UAAA,EACA,SAAA,SACA,UAAA,KACA,eAAA,SACA,eAAA,YAKF,CX5CE,SW4CF,ChCnBE,YgCoBA,UA5C2B,cA6C3B,KAAA,MAAA,KAGE,YAAA,KACA,aAAA,KAGJ,CAAA,UAAA,CXrDE,SWqDF,ChC5BE,YgC6BE,UAAA,MAIF,CX1DA,SW2DE,UCzCS,OD0CT,YAAA,KACA,aAAA,KAIJ,IAAA,CXjEE,QWiEF,IAAA,CAAA,kBAEE,UACA,EACA,UAAA,KACA,WAAA,IAAA,YAAA,EAAA,OAIF,IAAA,CX1EE,OW0EF,CAAA,CAAA,CX1EE,kBW2EA,IACA,SAAA,SACA,IAAA,MACA,KAAA,EACA,MAAA,KACA,aAAA,IAAA,MAAA,MACA,cAAA,IAAA,MAAA,MACA,2BAAA,IACA,WAAA,QACA,QAAA,MAEA,IAAA,CXtFA,OWsFA,CAAA,CAAA,CXtFA,SWsFA,OACE,IAAA,EACA,QAAA,EACA,WAAA,IAAA,IAAA,OAAA,CAAA,WAAA,IAAA,OAKJ,CX9FE,mBW+FA,QAAA,KACA,gBAAA,aACA,UAhG2B,MAkG3B,QAAA,IC5FqB,MDkGnB,YAAA,KACA,aAAA,KAGF,CX7GA,mBW6GA,CAAA,OPhHA,KAAA,QACA,QAAA,KACA,gBAAA,OACA,YAAA,eACA,EAAA,KACA,IAAA,KACA,WAAA,KACA,MAAA,IAAA,qBACA,iBAAA,IAAA,qBACA,aAAA,IACA,aAAA,IAAA,uBACA,aAAA,oBOT4B,EPW5B,YAAA,OACA,SAAA,OACA,cAAA,SACA,OAAA,QAGA,YAAA,KAEA,CJlBA,mBIkBA,CO2FA,MP3FA,MAAA,KAAA,CAAA,UACE,MAAA,IAAA,2BACA,iBAAA,IAAA,2BAGF,CJvBA,mBIuBA,COsFA,MPtFA,eACE,QAAA,IAAA,MAAA,IAAA,qBACA,eAAA,KAGF,CJ5BA,mBI4BA,COiFA,MPjFA,CAVA,SAWE,QAAA,GACA,OAAA,YAGF,CJjCA,mBIiCA,CO4EA,MP5EA,CL6FF,OK5FI,QAAA,KAGF,CJrCA,mBIqCA,COwEA,MPxEA,CAAA,KACE,MAAA,IAAA,2BACA,iBAAA,IAAA,2BO0EA,CXjHF,mBWiHE,CAJF,OAIE,CAAA,YACE,EAAA,KEtHN,CbIE,aaHA,SAAA,SACA,WAAA,IAAA,qBACA,MAAA,KACA,QAAA,KACA,gBAAA,OAEA,CbHA,aaGA,CAAA,WACE,WAAA,IAAA,MAAA,YACA,SAAA,eACA,KACA,cAAA,KACA,QAAA,KACA,MAAA,KACA,YAAA,OAEE,UDEO,MCKX,CbnBA,aamBA,EACE,MAAA,IAAA,iBAAA,EAAA,SAGF,CbvBA,aauBA,CAAA,QACE,MAAA,IAAA,0BAGF,Cb3BA,aa2BA,CAAA,gBACE,YAAA,IAAA,iBACA,UAAA,IACA,aAAA,OACA,SAAA,OACA,KAAA,EAEA,CblCF,aakCE,CAPF,gBAOE,C5BrCJ,Q4BsCM,YAAA,IACA,UAAA,KACA,YAAA,OAGF,CbxCF,aawCE,CAbF,gBAaE,CzBtCF,KyBsCE,KAAA,CAAA,CzBjCF,SyBiCE,OACE,QAAA,IAGF,Cb5CF,aa4CE,CAjBF,gBAiBE,CzBrCF,SyBsCI,YAAA,IAIJ,CbjDA,aaiDA,CAAA,UACE,OAAA,IACA,QAAA,KAEA,CbrDF,aaqDE,CAJF,UAIE,IACE,WAAA,KAEF,CbxDF,aawDE,CAPF,UAOE,GAAA,CAAA,aACE,OAAA,KAeJ,CbxEA,aawEA,CAAA,OACE,MAAA,IAAA,gBACA,YAAA,WACA,EACA,UAAA,MACA,WAAA,QAIJ,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OACE,CblFA,aamFE,cAAA,IAAA,MAAA,IAAA,qBAEA,CbrFF,aaqFE,CAlFF,mBAmFI,KAAA,KACA,QAAA,KACA,gBAAA,OAGF,Cb3FF,aa2FE,CA1CF,SA0CE,QACE,UAAA,KACA,WAAA,EAGF,CbhGF,aagGE,CArEF,gBAsEI,MAAA,YACA,KAAA,MACA,CbnGJ,aamGI,CAxEJ,gBAwEI,C5BtGN,Q4BuGQ,YAAA,IAEA,CbtGN,aasGM,CA3EN,gBA2EM,C5BzGR,Q4ByGQ,CzB/FN,SyBiGQ,QAAA,MACA,UAAA,IACA,YAAA,IAKN,Cb/GF,aa+GE,CAvCF,OAwCI,UAAA,KAMN,OAAA,OAAA,IAAA,CAAA,MAAA,CAAA,EAAA,OAGI,CbzHF,aayHE,CA9FF,wBA+FI,EACA,WAAA,OACA,UAAA,IAGF,Cb/HF,aa+HE,CA9EF,UAkFE,CbnIF,aamIE,CA3DF,OAwDI,QAAA,MC5HN,CdJE,WcKA,SAAA,OACA,IAAA,EACA,OFZW,KEaX,MAAA,KACA,WAAA,IAAA,qBACA,OAAA,EACA,WAAA,IAAA,MAAA,IAAA,qBACA,cAAA,IAAA,MAAA,IAAA,4BACA,EACA,QAAA,IACA,SAAA,QACA,QAAA,KAEA,CdlBA,WckBA,CAAA,oBACE,SAAA,SACA,QAAA,KACA,KAAA,EACA,gBAAA,OACA,YAAA,OACA,UFVS,aEYP,EAAA,KAIJ,Cd9BA,Wc8BA,CH+EA,OPhHA,KAAA,QACA,QAAA,KACA,gBAAA,OACA,YAAA,eACA,EAAA,KACA,IAAA,KACA,WAAA,KACA,MAAA,IAAA,qBACA,iBAAA,IAAA,qBACA,aAAA,IACA,aAAA,IAAA,uBACA,aAAA,oBAhBc,EAkBd,YAAA,OACA,SAAA,OACA,cAAA,SACA,OAAA,QAGA,YAAA,KAEA,CJlBA,WIkBA,CO2FA,MP3FA,MAAA,KAAA,CAAA,UACE,MAAA,IAAA,2BACA,iBAAA,IAAA,2BAGF,CJvBA,WIuBA,COsFA,MPtFA,eACE,QAAA,IAAA,MAAA,IAAA,qBACA,eAAA,KAGF,CJ5BA,WI4BA,COiFA,MPjFA,CAVA,SAWE,QAAA,GACA,OAAA,YAGF,CJjCA,WIiCA,CO4EA,MP5EA,CL6FF,OK5FI,QAAA,KAGF,CJrCA,WIqCA,COwEA,MPxEA,CAAA,KACE,MAAA,IAAA,2BACA,iBAAA,IAAA,2BUNA,CdjCF,WciCE,CH4EF,OG3EI,OAAA,KAGA,aAAA,EAKJ,Cd1CA,Wc0CA,CAAA,WACE,MAAA,MACA,IAAA,KACA,YAAA,EAGF,CdhDA,WcgDA,IAAA,CAAA,YAAA,CAAA,uBAAA,CAAA,oBACE,QAAA,KAGF,CdpDA,WcoDA,CAJA,YAKE,KAAA,EAAA,EAAA,MACA,gBAAA,IAGF,CdzDA,WcyDA,CATA,uBAUE,KAAA,EAAA,EAAA,KACA,gBAAA,IAGF,Cd9DA,Wc8DA,Cd9DA,Qc8DA,CvBhEF,OuBgEE,CAAA,SACE,OAAA,KAGF,CdlEA,WckEA,CAAA,oBACE,KACA,iBAAA,IAAA,qBACA,SAAA,SACA,WF3ES,KE4ET,OAAA,IAAA,MAAA,IAAA,mCACA,IACA,WAAA,EAAA,EAAA,IAAA,IAAA,yBACA,Cd1EF,Wc0EE,CARF,YAQE,CAAA,qBACE,MAAA,eACA,IACA,Cd7EJ,Wc6EI,CAXJ,YAWI,CAHF,qBAGE,CAAA,mBACE,MAAA,aACA,KACA,OAAA,IAKN,CdrFA,WcqFA,CArCA,WAqCA,CAAA,EACE,QAAA,KACA,YAAA,OACA,gBAAA,OACA,UAAA,KAGF,Cd5FA,Wc4FA,CA5CA,YA4CA,CHqBE,YGpBA,EAAA,KAGF,CdhGA,WcgGA,IAAA,CAAA,cAAA,CHiBE,KGhBA,QAAA,KAGF,CdpGA,WcoGA,IAAA,CAAA,kBAAA,CAAA,kBAAA,CAAA,aAAA,CAAA,kBAAA,CAAA,kBAAA,CAAA,cAAA,CAAA,KACE,QAAA,KAGF,CdxGA,WcwGA,CARA,aASE,UAAA,KAMJ,CAXE,kBVxDA,SAAA,SAEA,CUsDA,kBVtDA,CAAA,iBACE,QAAA,KACA,SAAA,SACA,iBAAA,IAAA,uBACA,UAAA,MACA,QAAA,IACA,OAAA,IAAA,MAAA,IAAA,yBACA,MAAA,EACA,IAAA,KACA,WAAA,cACA,EAEA,CU0CF,kBV1CE,CAZF,iBAYE,EACE,QAAA,MACA,gBAAA,KACA,MAAA,IAAA,+BACA,IAAA,IAEA,CUoCJ,kBVpCI,CAlBJ,iBAkBI,CAAA,IAAA,OAAA,gBACE,iBAAA,IAAA,6BACA,MAAA,IAAA,6BAIJ,CU8BF,kBV9BE,CAxBF,iBAwBE,GACE,MAAA,IAAA,gCACA,IAAA,EAIJ,CUwBA,iBVxBA,IAAA,OAAA,eAAA,eACE,SAAA,QAEA,CUqBF,iBVrBE,IAAA,OAAA,eAAA,eAAA,CAjCF,iBAkCI,QAAA,MUmDN,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OCtII,CfGF,WeHE,CJgHF,OI/GI,kBALS,IAMT,mBANS,IAOT,aAAA,IAAA,qBAGF,CfHF,UeGE,CAAA,CAAA,KAAA,cAEE,YAAA,KDiIJ,CdtIA,WcuIE,SAAA,MACA,MAAA,KAGA,EAFA,EAGA,QAAA,KACA,WAAA,IAAA,uBACA,UAAA,MAEA,CdhJF,WcgJE,CA9HF,oBA+HI,UAAA,MAGF,CdpJF,WcoJE,CApGF,uBAqGI,KAAA,EAGF,CdxJF,WcwJE,CA9GF,WA+GI,KAAA,EAAA,EAAA,MAGF,Cd5JF,Wc4JE,CA5GF,YA6GI,KAAA,EAAA,EAAA,MAIF,CdjKF,WciKE,CAjHF,WAiHE,CAAA,EACE,KAAA,EAAA,EACA,UAAA,KAGF,CdtKF,WcsKE,CAtEF,aAuEI,QAAA,KAGF,Cd1KF,Wc0KE,CAxGF,YAyGI,WAAA,MACA,OFjLO,KEoLT,Cd/KF,Wc+KE,CVjIF,iBUkII,IAAA,MACA,OFtLO,KEyLT,CdpLF,WcoLE,IAAA,CA1IF,WA0IE,CAAA,gBAAA,CAAA,UAAA,CAAA,YAAA,CAhFF,kBAgFE,CApFF,aAoFE,CAhFF,cAgFE,CAhFF,KAiFI,QAAA,MEtLN,ChBCE,YgBAA,WAAA,WAEA,ChBFA,WgBEA,CAAA,QACE,QAAA,MAGF,ChBNA,WgBMA,CjBwHF,OiBvHI,QAAA,KACA,OAAA,EAIJ,CAAA,QACE,uBAAA,MACA,wBAAA,MAEA,oBAAA,KAAA,KAAA,EAAA,IAAA,uBAAA,EAAA,IAAA,yBACA,qBAAA,KAAA,OAAA,EAAA,IAAA,uBAAA,EAAA,IAAA,yBACA,oBAAA,KAAA,OAAA,EAAA,IAAA,uBAAA,EAAA,IAAA,yBAEA,WAAA,IAAA,yBAEA,EACA,UAAA,MAIA,CAfF,OAeE,IAAA,CAAA,OAAA,CAAA,KAAA,CAAA,QACE,wBAAA,MAGF,CAnBF,QAmBE,CAAA,qBACE,UACA,EACA,WAAA,KACA,WAAA,IAAA,sBAEA,CAzBJ,QAyBI,CANF,cAME,CzB4EJ,OyB3EM,WAAA,KAIJ,CA9BF,QA8BE,CAAA,SACE,iBAAA,IAAA,sBACA,MAAA,IAAA,kBACA,aAAA,IAAA,oBAEA,CAnCJ,QAmCI,CALF,SAKE,EACE,MAAA,QAKF,CAzCJ,QAyCI,CAXF,QAWE,CzB4DJ,MyB5DI,KAAA,KAAA,CAXF,QAWE,CzB4DJ,SyB3DM,MAAA,IAAA,uCACA,iBAAA,IAAA,uCACA,aAAA,IAAA,yCAIF,CAhDJ,QAgDI,CAlBF,QAkBE,CAAA,CAAA,aAAA,CAAA,CAAA,IAAA,OAAA,QACE,MAAA,IAAA,gCACA,iBAAA,IAAA,gCACA,aAAA,IAAA,kCAMJ,CAzDF,QAyDE,CATE,cAUA,QAAA,KAGF,CA7DF,QA6DE,CAbE,aAaF,CAAA,C9B7DA,S8B8DE,SAAA,SACA,QAAA,KACA,UAAA,UACA,KACA,YAAA,IAIF,CAtEF,QAsEE,CAnDA,cAmDA,CAnDA,cAmDA,CAtBE,aAsBF,CAAA,C9BtEA,S8BuEE,YAAA,IAIF,CA3EF,QA2EE,C3BvEE,W2BwEA,UAAA,IAAA,oBACA,aAAA,IAAA,uBACA,cAAA,IAAA,wBACA,QAAA,aACA,WAAA,KACA,UAAA,EASJ,CA1FA,QA0FA,CA5DE,SA6DA,MAAA,IAAA,wBACA,iBAAA,IAAA,wBAGF,CA/FA,QA+FA,CAjEE,SAiEF,CAjEE,SAkEA,MAAA,IAAA,wBACA,iBAAA,IAAA,wBAEF,CAnGA,QAmGA,CArEE,SAqEF,CArEE,SAqEF,CArEE,SAsEA,MAAA,IAAA,wBACA,iBAAA,IAAA,wBAMF,C5BrHE,K4BqHF,CA3GA,QA2GA,CAAA,YAAA,CAxFE,cAwFF,C3BvGI,W2BuGJ,CAAA,QAAA,CA3GA,QA2GA,CAAA,YAAA,CAxFE,cAwFF,C3BvGI,W2BuGJ,CA3GA,QA2GA,CAAA,eAAA,CAxFE,cAwFF,C3BvGI,W2B4GF,UAAA,IACA,YAAA,MACA,UAAA,IAAA,qBAKF,C5BjIE,K4BiIF,CAvHA,QAuHA,CAZA,YAYA,CApGE,cAoGF,CApGE,cAoGF,C3BnHI,W2BmHJ,CAZA,QAYA,CAvHA,QAuHA,CAZA,YAYA,CApGE,cAoGF,CApGE,cAoGF,C3BnHI,W2BmHJ,CAvHA,QAuHA,CAZA,eAYA,CApGE,cAoGF,CApGE,cAoGF,C3BnHI,W2BwHF,UAAA,IAAA,oBACA,WAAA,OAIF,CAjIA,QAiIA,CA9GE,cA8GF,CA9GE,cA8GF,CA9GE,cA8GF,CAAA,IAAA,OAAA,OAAA,CAAA,C3B7HI,W2B8HF,WAAA,QAMF,CAxIA,QAwIA,CA1GE,SA0GF,CAxFI,cAwFJ,C5BlJE,M4BmJA,YAAA,IAAA,oBAIF,C5BvJE,K4BuJF,CA7IA,QA6IA,CAlCA,YAkCA,CA1HE,cA0HF,C5BvJE,M4BuJF,CAlCA,QAkCA,CA7IA,QA6IA,CAlCA,YAkCA,CA1HE,cA0HF,C5BvJE,M4BuJF,CA7IA,QA6IA,CAlCA,eAkCA,CA1HE,cA0HF,C5BvJE,M4B0JA,YAAA,IAAA,qBAIF,C5B9JE,K4B8JF,CApJA,QAoJA,CAzCA,YAyCA,CAjIE,cAiIF,CAjIE,cAiIF,C5B9JE,M4B8JF,CAzCA,QAyCA,CApJA,QAoJA,CAzCA,YAyCA,CAjIE,cAiIF,CAjIE,cAiIF,C5B9JE,M4B8JF,CApJA,QAoJA,CAzCA,eAyCA,CAjIE,cAiIF,CAjIE,cAiIF,C5B9JE,M4BiKA,YAAA,IAAA,oBAIF,CA3JA,QA2JA,CA7HE,QA6HF,CAAA,CA3GI,cA2GJ,C3BvJI,U2BuJJ,CAAA,C5BrKE,M4BsKA,YAAA,YAOF,CAnKA,QAmKA,CAxDA,YAwDA,CAhJE,cAgJF,C5B7KE,M4B6KF,CAnKA,QAmKA,CAxDA,YAwDA,CAhJE,cAgJF,C5B7KE,M4B6KF,CAnKA,QAmKA,CAxDA,eAwDA,CAhJE,cAgJF,CAhJE,cAgJF,C5B7KE,M4BiLA,UAAA,IAGF,CA1KA,QA0KA,CA/DA,YA+DA,CAvJE,cAuJF,CAvJE,cAuJF,C5BpLE,M4BoLF,CA1KA,QA0KA,CA/DA,YA+DA,CAvJE,cAuJF,CAvJE,cAuJF,C5BpLE,M4BoLF,CA1KA,QA0KA,CA/DA,eA+DA,CAvJE,cAuJF,CAvJE,cAuJF,CAvJE,cAuJF,C5BpLE,M4BwLA,WAAA,OAIF,CAlLA,OAkLA,CAAA,OAAA,EAAA,CAAA,WAIA,CAtLA,OAsLA,CAvKE,OAuKF,EAAA,CAJA,WAIA,EAAA,CAJA,WAQA,CA1LA,OA0LA,CA3KE,OA2KF,EAAA,CARA,WAQA,EAAA,CARA,WAQA,EAAA,CARA,WAYA,CA9LA,OA8LA,CAAA,OAAA,EAAA,CAZA,WAYA,EAAA,CAZA,WAYA,EAAA,CAZA,WAYA,EAAA,CAZA,WAgBA,CAlMA,OAkMA,CAAA,OAAA,EAAA,CAhBA,WAgBA,EAAA,CAhBA,WAgBA,EAAA,CAhBA,WAgBA,EAAA,CAhBA,WAgBA,EAAA,CAhBA,WACE,QAAA,KAoBF,CAvMA,OAuMA,CAxLE,OAwLF,EAAA,CArBA,WAqBA,CAzKE,QAyKF,CAAA,gBACE,iBAAA,IAAA,8BACA,MAAA,IAAA,6BAGF,CA5MA,OA4MA,CA7LE,OA6LF,EAAA,CA1BA,WA0BA,EAAA,CA1BA,WA0BA,CA9KE,QA8KF,CALA,gBAME,iBAAA,IAAA,6BACA,MAAA,IAAA,6BAUA,CAxNF,OAwNE,CAFF,QAEE,EAAA,CAtCF,UAsCE,KAAA,CAjBF,gBAiBE,CAAA,CA1LA,SA2LE,QAAA,KAEA,CA3NJ,OA2NI,CALJ,QAKI,EAAA,CAzCJ,UAyCI,KAAA,CApBJ,gBAoBI,CAAA,CA7LF,QA6LE,CArOF,QAsOI,QAAA,MAIJ,CAhOF,OAgOE,CAVF,QAUE,EAAA,CA9CF,WA8CE,CAlMA,QAkMA,CzB3HF,MyB2HE,CAAA,EAAA,CA9CF,UA8CE,CAAA,CAlMA,SAmME,QAAA,MAEA,CAnOJ,OAmOI,CAbJ,QAaI,EAAA,CAjDJ,WAiDI,CArMF,QAqME,CzB9HJ,MyB8HI,CAAA,EAAA,CAjDJ,UAiDI,CAAA,CArMF,QAqME,CjBjHJ,OiBkHM,QAAA,KAIJ,CAxOF,OAwOE,CAlBF,QAkBE,CAAA,aACE,OAAA,UACA,IAAA,IACA,WAAA,QACA,MAAA,QACA,QAAA,KACA,YAAA,OAEA,CAhPJ,OAgPI,CA1BJ,QA0BI,CARF,aAQE,CL3IA,KK4IE,UAAA,OACA,YAAA,KACA,wBAAA,OAAA,IAGF,CAtPJ,OAsPI,CAhCJ,QAgCI,CAdF,YAcE,IAAA,QACE,iBAAA,IAAA,gCACA,MAAA,IAAA,gCAEA,CA1PN,OA0PM,CApCN,QAoCM,CAlBJ,YAkBI,IAAA,QAAA,CLrJF,KKsJI,KAAA,IAAA,gCAMN,CAjQF,OAiQE,CA3CF,QA2CE,CAnOA,QAmOA,CAAA,CAjNE,aAiNF,CAAA,CAzBA,YAyBA,CAAA,CL5JE,IK4JF,QACE,QAAA,MAGF,CArQF,OAqQE,CA/CF,QA+CE,CAvOA,QAuOA,CAAA,QAAA,CAAA,CArNE,aAqNF,CAAA,CA7BA,YA6BA,CAAA,CLhKE,IKgKF,QACE,QAAA,SC/QJ,CjBHE,YiBIA,KAAA,EAAA,EAAA,MAEE,SAAA,OACA,IAbS,KAcT,WAAA,OAIJ,CDAA,QCEI,SAAA,OACA,IArBS,KAsBT,WAAA,KACA,WAAA,OACA,OAAA,KAAA,MAAA,EAAA,MACA,WAAA,KAGA,CDVJ,OCUI,CAAA,CDSF,aCTE,YAAA,CAAA,CDoBF,QCpBE,YACE,cAAA,IAAA,MAAA,IAAA,oBAaN,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OACE,CjBrCA,YiBsCE,QAAA,KACA,SAAA,OACA,IA9CS,KA+CT,WAAA,IAAA,sBACA,WAAA,KACA,aAAA,IAAA,MAAA,IAAA,oBACA,cAAA,IAAA,MAAA,IAAA,oBACA,ML5CY,OKuDhB,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OACE,CjBzDA,YiB0DE,SAAA,MACA,QAAA,KACA,IAAA,MACA,OAAA,KACA,WAAA,KACA,UAAA,KACA,OAtES,KAuET,aAAA,IAAA,MAAA,IAAA,oBACA,WAAA,IAAA,MAAA,IAAA,oBAEF,CDxDF,QCyDI,WAAA,IAAA,MAAA,IAAA,oBACA,cAAA,EACA,WAAA,MC9EJ,CFmBA,QElBE,gBAAA,IAAA,sBAAA,IAAA,sBAGA,CFeF,OEfE,OACE,gBAAA,IAAA,qBAAA,IAAA,sBCAJ,CnBEE,gBmBDA,WAAA,IAAA,qBACA,YAAA,EACA,WAAA,IAAA,MAAA,IAAA,qBACA,cAAA,IAAA,MAAA,IAAA,qBACA,QAAA,KACA,eAAA,IACA,gBAAA,OACA,MAAA,KACA,IAAA,KACA,SAAA,SAMA,CnBdA,emBcA,CAAA,SACE,IAAA,EACA,MAAA,IAAA,mBAGF,CnBnBA,emBmBA,CAAA,CAAA,CAAA,CAAA,IAAA,aACE,OAAA,IACA,MAAA,aACA,EAGF,CnBzBA,gBmByBA,CAAA,cf5BA,KAAA,QACA,QAAA,KACA,gBAAA,OACA,YAAA,eACA,EAAA,KACA,IAAA,KACA,WAAA,KACA,MAAA,IAAA,qBACA,iBAAA,IAAA,qBACA,aAAA,IACA,aAAA,IAAA,uBACA,aAAA,oBAhBc,EAkBd,YAAA,OACA,SAAA,OACA,cAAA,SACA,OAAA,QAGA,YAAA,KAEA,CJlBA,gBIkBA,CeOA,afPA,MAAA,KAAA,CAAA,UACE,MAAA,IAAA,2BACA,iBAAA,IAAA,2BAGF,CJvBA,gBIuBA,CeEA,afFA,eACE,QAAA,IAAA,MAAA,IAAA,qBACA,eAAA,KAGF,CJ5BA,gBI4BA,CeHA,afGA,CAVA,SAWE,QAAA,GACA,OAAA,YAGF,CJjCA,gBIiCA,CeRA,afQA,CL6FF,OK5FI,QAAA,KAGF,CJrCA,gBIqCA,CeZA,afYA,CAAA,KACE,MAAA,IAAA,2BACA,iBAAA,IAAA,2BeRJ,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OACE,CnBhCA,gBmBkCE,IAAA,KACA,gBAAA,OACA,cAAA,KAEA,CnBtCF,emBsCE,CAAA,CAAA,CAAA,CAnBF,IAmBE,aACE,OAAA,KTXJ,WAAA,SAAA,CAAA,MAAA,EAAA,OUJF,Cf/BA,uBe+BA,KAAA,CAAA,WAAA,CAAA,SAAA,CAAA,gBAAA,CAAA,iBAAA,CfqBE,UKhBE,aAAA,IAAA,CAAA,OAAA,EAAA,EAAA,EAAA,KAAA,EAAA,UACA,UAAA,KACA,MAAA,MAEE,MAAA,IAAA,aAIF,UAAA,IAAA,aAEE,YAAA,KAAA,GAAA,CAAA,QAAA,EAAA,SUTJ,CfrCF,wBeqCE,CfrCF,uBeqCE,KAAA,CANF,WAME,CANF,SAME,CANF,gBAME,CANF,iBAME,CfeA,UebE,MAAA,KACA,UAAA,KACA,YAAA,KVNF,WAAA,SAAA,CAAA,MAAA,EAAA,OUWF,IAAA,CAAA,gBAAA,CtBuBE,asBvBF,CtBuBE,gBsBvBF,CtBUA,asBVA,CtBUA,csBVA,CtBUA,asBVA,CtBUA,YsBVA,CtBuBE,iBsBvBF,CAAA,kBAAA,CtBuBE,iBsBvBF,CzCzBE,eyCyBF,KAAA,CAfA,WAeA,CAfA,SAeA,CAfA,gBAeA,CAfA,iBAeA,CfME,UKhBE,aAAA,IAAA,CAAA,OAAA,EAAA,EAAA,EAAA,KAAA,EAAA,UACA,UAAA,KACA,MAAA,MAEE,MAAA,IAAA,aAIF,UAAA,IAAA,aAEE,YAAA,KAAA,GAAA,CAAA,QAAA,EAAA,SUKJ,IAAA,CALF,gBAKE,CtBkBA,asBlBA,CtBkBA,gBsBlBA,CtBKF,asBLE,CtBKF,csBLE,CtBKF,asBLE,CtBKF,YsBLE,CtBkBA,iBsBlBA,CALF,kBAKE,CtBkBA,iBsBlBA,CzC9BA,eyC8BA,KAAA,CApBF,WAoBE,CApBF,SAoBE,CApBF,gBAoBE,CApBF,iBAoBE,CfCA,UeDA,IAAA,CALF,gBAKE,CtBkBA,asBlBA,CtBkBA,gBsBlBA,CtBKF,asBLE,CtBKF,csBLE,CtBKF,asBLE,CtBKF,YsBLE,CtBkBA,iBsBlBA,CALF,kBAKE,CtBkBA,iBsBlBA,CzC9BA,eyC8BA,KAAA,CApBF,WAoBE,CApBF,SAoBE,CApBF,gBAoBE,CApBF,iBAoBE,CfCA,UeAE,MAAA,KACA,YAAA,KAKJ,IAAA,CAZA,gBAYA,CtBWE,asBXF,CtBWE,gBsBXF,CtBFA,asBEA,CtBFA,csBEA,CtBFA,asBEA,CtBFA,YsBEA,CtBWE,iBsBXF,CAZA,kBAYA,CtBWE,iBsBXF,CzCrCE,gByCqCF,Cf1DA,uBe0DA,KAAA,CA3BA,WA2BA,CA3BA,SA2BA,CA3BA,gBA2BA,CA3BA,iBA2BA,CfNE,UeOA,MAAA,KACA,YAAA,EAIF,CfhEA,SegEA,CAjCA,UAiCA,CAAA,GAAA,CAAA,GAAA,CAAA,CAAA,KAAA,CAAA,YAAA,KAAA,CAAA,UAAA,KAAA,CAjCA,SAiCA,KAAA,CAAA,YAIE,U3C/CgB,M2CgDhB,YAAA,KACA,aAAA,KAKA,Cf3EF,Ue2EE,CAAA,mBAQF,CApDA,iBAoDA,CAAA,YAAA,CApDA,iBAoDA,CAAA,YAPI,U3CvDc,M2CwDd,YAAA,KACA,aAAA,KAaJ,Cf3FA,Se2FA,CA5DA,eA4DA,CAAA,CAAA,QACE,MAAA,KACA,cAAA,EAEA,Cf/FF,Se+FE,CAhEF,eAgEE,CAAA,CAJF,QAIE,CAAA,wBACE,QAAA,KACA,UAAA,KACA,gBAAA,OACA,IAAA,YACA,KAAA,KAGF,CfvGF,SeuGE,CAxEF,eAwEE,CAAA,CAZF,QAYE,CAAA,qBACE,EAGF,Cf3GF,Se2GE,CA5EF,eA4EE,CAAA,CAhBF,QAgBE,CAAA,uBACE,UAAA,MAGF,Cf/GF,Se+GE,CAhFF,eAgFE,CAAA,CApBF,OAoBE,CAAA,GAAA,CAAA,CAAA,KAAA,CAhBA,yBAiBE,U3C3Fc,M2C4Fd,YAAA,KACA,aAAA,KRpDJ,OAAA,CAAA,MAAA,EAAA,OQhDE,CfdF,uBecE,KAAA,CAiBF,WAjBE,CAiBF,SAjBE,CAiBF,gBAjBE,CAiBF,iBAjBE,CfsCA,UerCE,MAAA,OACA,YAAA,KAAA,GAAA,CAAA,QAAA,EAAA,OAEF,IAAA,CA4BF,gBA5BE,CtBmDA,asBnDA,CtBmDA,gBsBnDA,CtBsCF,asBtCE,CtBsCF,csBtCE,CtBsCF,asBtCE,CtBsCF,YsBtCE,CtBmDA,iBsBnDA,CA4BF,kBA5BE,CtBmDA,iBsBnDA,CzCGA,eyCHA,KAAA,CAaF,WAbE,CAaF,SAbE,CAaF,gBAbE,CAaF,iBAbE,CfkCA,UejCE,MAAA,OACA,YAAA,KAAA,GAAA,CAAA,QAAA,EAAA,OAEF,IAAA,CAwBF,gBAxBE,CtB+CA,asB/CA,CtB+CA,gBsB/CA,CtBkCF,asBlCE,CtBkCF,csBlCE,CtBkCF,asBlCE,CtBkCF,YsBlCE,CtB+CA,iBsB/CA,CAwBF,kBAxBE,CtB+CA,iBsB/CA,CzCDA,gByCCA,CftBF,uBesBE,KAAA,CASF,WATE,CASF,SATE,CASF,gBATE,CASF,iBATE,Cf8BA,Ue7BE,MAAA,KACA,YAtByB,GRiE7B,CZ5DE,SY6DA,aA1DoB,MA6DtB,CZhEE,WYgEF,Cb8DA,Ma9DA,CAAA,CZhEE,SYiEA,YA9DoB,MAmEtB,CZtEE,SYwEA,WAAA,IAAA,KAAA,KAAA,MAAA,IAAA,yBAEF,OAAA,CAAA,oBAAA,EAAA,MACE,CZ3EA,SY6EE,WAAA,IAAA,KAAA,KAAA,MAAA,MAOJ,CZpFE,YYsFA,aApFqB,KAuFvB,CZzFE,WY0FA,OAAA,KAGA,CZ7FA,WY6FA,CEnDA,WFoDE,UAAA,UAAA,QACA,SAAA,SACA,KAAA,EACA,gBAAA,KAIJ,CIzFA,QJ0FE,OAAA,KACA,SAAA,OACA,IA7GW,KAiHb,CIlEE,QJkEF,CI1GE,QJ2GA,UAAA,MACA,aAAA,IAGF,CZjHE,SYkHE,WAAA,KACA,cAAA,KAMJ,OAAA,OAAA,IAAA,CAAA,MAAA,CAAA,EAAA,QACE,CZ1HA,SY2HE,YAAA,EACA,UAAA,KAEF,CZ9HA,SY+HE,aAAA,KAAA,KAAA,EAAA,QACA,UAlHS,MAoHX,CZlIA,WYkIA,CbJF,MaIE,CAAA,CZlIA,SYmIE,aAAA,KACA,YAAA,KAEF,CZtIA,WYsIA,CEpHA,oBFqHE,YApIkB,OA6ItB,OAAA,OAAA,IAAA,CAAA,MAAA,CAAA,EAAA,QAEE,CZlJA,SYmJE,WAAA,MACA,aAAA,KAGA,CZvJF,SYuJE,CjC9HF,YiC+HI,aAhJuB,KAiJvB,cAjJuB,KAkJvB,UAAA,MAIJ,CZ9JA,YY+JE,aAAA,EAIF,CZnKA,WYmKA,CEjJA,oBFkJE,YAnKY,MAqKd,CZtKA,WYsKA,CE5HA,WF6HE,UAAA,UAAA,QACA,gBAAA,OAIF,CZ5KA,SY6KE,WAAA,MACA,cAAA,MAIF,CItKF,QJuKI,YAAA,MAUJ,OAAA,OAAA,IAAA,CAAA,MAAA,CAAA,EAAA,OACE,CZ9LA,YY+LE,QAAA,MAKJ,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OAEE,CZtMA,WYsMA,CEpLA,oBFqLE,YAAA,EAEF,CZzMA,WYyMA,CE/JA,WFgKI,UAAA,KACA,SAAA,SACA,gBAAA,OAGJ,CZ/MA,mBYgNE,aAxMyB,KAyMzB,cAzMyB,MA+M7B,CI7KE,QJ6KF,IAAA,OAAA,QACE,MAAA,IAAA,gCACA,iBAAA,IAAA,gCACA,aAAA,IAAA,kCS/NA,CLiBF,OKjBE,CLuOF,QKvOE,CL+CA,QK/CA,CAAA,CLiEE,aKjEF,CAAA,CLyPA,YKzPA,CAAA,CVsHE,KUrHA,UAAA,KACA,CLeJ,OKfI,CLqOJ,QKrOI,CL6CF,QK7CE,CAAA,CL+DA,aK/DA,CAAA,CLuPF,YKvPE,CAAA,CVoHA,IUpHA,QACE,QAAA,eAIJ,CLUF,OKVE,CLgOF,QKhOE,CLwCA,QKxCA,CL+QA,QK/QA,CAAA,CL0DE,aK1DF,CAAA,CLkPA,YKlPA,CAAA,CV+GE,KU9GA,UAAA,OAAA,QACA,CLQJ,OKRI,CL8NJ,QK9NI,CLsCF,QKtCE,CL6QF,QK7QE,CAAA,CLwDA,aKxDA,CAAA,CLgPF,YKhPE,CAAA,CV6GA,IU7GA,QACE,QAAA,eCRN,CrC8EA,UqC9EA,CjCmBI,UiCnBJ,KAAA,OAAA,OACI,QAAA,KAGJ,CtBDE,asBMF,CXuGE,MWvGF,ClBYE,SkBhBE,QAAA,KCNF,CAAA,UAAA,CAAA,CAAA,YACE,MAAA,IAAA,yBACA,oBAAA,IAAA,yBAEF,CAJA,UAIA,CAAA,C5CcA,e4CbE,YARW,KASX,aATW,KAUX,OAAA,IAAA,MAAA,IAAA,2BACA,iBAAA,IAAA,8BCNJ,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,QACE,OAAA,CDHA,WCIE,SAAA,SACA,YCJa,ODKb,MCNY,MDOZ,MCNa,ODOb,MAAA,MACA,MAAA,MAIF,CAAA,YAAA,OAAA,CDbA,WCcE,SAAA,SACA,YAAA,QACA,MAAA,KACA,MAAA,EACA,MAAA,KACA,MAAA,KAGF,OAAA,CDtBA,UCsBA,CAAA,C7CJA,e6CKE,YAAA,EACA,aAAA,EACA,iBAAA,IAAA,8BACA,QAAA,K1CnBA,CATJ,KASI,CAAA,CgB8CJ,chB1CM,UAAA,KAAA,IAAA,EAAA,KACA,MAAA,YACA,aAR2B,IAE7B,CATJ,KASI,CAAA,CgB8CJ,chB1CM,UAAA,KAAA,eAAA,EAAA,KACA,MAAA,YACA,aAR2B,IAE7B,CATJ,KASI,CAAA,CgB8CJ,chB1CM,UAAA,KAAA,IAAA,EAAA,KACA,MAAA,YACA,aAR2B,IAE7B,CATJ,KASI,CAAA,CgB8CJ,chB1CM,UAAA,KAAA,IAAA,EAAA,KACA,MAAA,YACA,aAR2B,IAE7B,CATJ,KASI,CAAA,CgB8CJ,chB1CM,UAAA,KAAA,eAAA,EAAA,KACA,MAAA,YACA,aAR2B,I4CJjC,C5BoDA,a4BpDA,CAAA,CzCAA,QyCEE,UAAA,QAKA,C5BJF,c4BIE,C5B6CF,c4B5CI,WAAA,IAGF,C5BRF,a4BQE,CAAA,CzCXF,QyCYI,UAAA,MACA,YAAA,OACA,WAAA,MACA,QAAA,OAEA,C5BdJ,a4BcI,CAAA,CzCjBJ,OyCiBI,CAAA,C5BmCJ,a4BlCM,QAAA,OAEA,C5BjBN,a4BiBM,CAAA,CzCpBN,OyCoBM,CAAA,C5BgCN,Y4BhCM,CAAA,C/CEJ,I+CFI,aACE,QAAA,OAMN,C5BxBF,c4BwBE,CAAA,wBACE,WAAA,IAGA,aAAA,KAGF,C5B/BF,c4B+BE,C5BkBF,W4BjBI,YAAA,KAEA,C5BlCJ,c4BkCI,C5BeJ,W4BfI,CzCrCJ,QyCuCM,UAAA,QAMN,C5BOA,a4BPA,CAAA,C5BOA,a4BPA,CAAA,KACE,YAAA,KASF,CpB8CA,iBoB9CA,KAAA,MAAA,OACE,OAAA,QACA,iBAAA,QACA,OAAA,IAAA,MAAA,KAEF,CpByCA,iBoBzCA,KAAA,MAAA,QACE,iBAAA,QAEF,CpBsCA,iBoBtCA,KAAA,MAAA,CAAA,OACE,YAAA,KAGF,CpBkCA,iBoBlCA,CpBkCA,iBoBlCA,KAAA,CpBkCA,iBoBlCA,IAAA,CAAA,GAAA,aAGE,QAAA,aACA,eAAA,IACA,MAAA,KAGF,C7BtDA,M6BsDA,CpB0BA,iBoB1BA,C7BtDA,M6BsDA,CpB0BA,iBoB1BA,KAAA,C7BtDA,M6BsDA,CpB0BA,iBoB1BA,IAAA,CAAA,GAAA,aAGE,MAAA,KAGF,CpBoBA,gBoBpBA,CAAA,C/C3DE,I+C2DF,aAAA,C5B9EA,c4B8EA,CpBoBA,gBoBpBA,CAAA,C/C3DE,I+C2DF,aAEE,WAAA,EACA,QAAA,OAOF,CzC3FA,OyC2FA,CAAA,CpBUA,iBoBTE,QAAA,aACA,UAAA,IACA,MAAA,KAGF,C5CpGA,M4CoGA,CzCjGA,OyCiGA,CAAA,CpBIA,iBoBHE,MAAA,KCpGF,OAAA,CAAA,SAAA,CAAA,C1CEA,O0CFA,CAAA,C1CEA,Q0CDE,WAAA,KAGF,OAAA,CAJA,SAIA,CAAA,EAAA,C1CFA,Q0CEA,OAAA,CAJA,UAIA,OAAA,CAAA,EAAA,C1CFA,Q0CIE,UAAA,MAGF,OAAA,CATA,SASA,CAAA,EAAA,C1CPA,Q0COA,OAAA,CATA,UASA,OAAA,CAAA,EAAA,C1CPA,Q0CSE,UAAA,OAGF,OAAA,CAdA,SAcA,CAAA,EAAA,C1CZA,Q0CYA,OAAA,CAdA,UAcA,OAAA,CAAA,EAAA,C1CZA,Q0CcE,UAAA,OAGF,OAAA,CAnBA,SAmBA,CAAA,EAAA,C1CjBA,Q0CiBA,OAAA,CAnBA,UAmBA,OAAA,CAAA,EAAA,C1CjBA,Q0CmBE,UAAA,OCvBF,CAAA,QAAA,CAAA,CAAA,KAAA,cAEI,WAAA,MAWJ,CAAA,OACE,QAAA,KACA,mBAAA,KAAA,KAGF,CjDcE,SiDZA,SAAA,EAGA,CjDSA,QiDTA,CAAA,CnBhBF,KmBgBE,CAAA,WACE,WAAA,OAEF,CjDMA,SiDNA,C5BFA,Q4BGE,WAAA,KACA,YAAA,KACA,aAAA,KAMJ,CAAA,cACE,WAAA,MAGF,CAAA,iBACE,WAAA,OAGF,CAAA,iBACE,WAAA,IAQF,CjDpBE,QiDoBF,KAAA,CnCNE,YmCMF,CnCjBA,YmCiBA,CjDpBE,QiDoBF,CAAA,IAAA,CnCNE,YmCMF,CnCjBA,YmCmBE,QAAA,SAKF,CjD3BE,QiD2BF,CAAA,IAAA,CnCbE,YmCaF,CnCxBA,WmCwBA,CAAA,CAAA,aACE,SAAA,EACA,YAAA,MACA,WAAA,MAIF,CA/BA,aA+BA,CAAA,IAAA,CnCpBE,YmCoBF,CnC/BA,WmC+BA,CAAA,CAAA,aACE,YAAA,MACA,WAAA,MAGF,CAhCA,gBAgCA,CAAA,IAAA,CnCzBE,YmCyBF,CnCpCA,WmCoCA,CAAA,CAAA,aACE,YAAA,OACA,WAAA,OAGF,CAjCA,gBAiCA,CAAA,IAAA,CnC9BE,YmC8BF,CnCzCA,WmCyCA,CAAA,CAAA,aACE,YAAA,IACA,WAAA,IAKF,CjDnDE,QiDmDF,CAAA,IAAA,CnCrCE,YmCqCF,CnChDA,WmCgDA,CAAA,CAAA,cACE,WAAA,KACA,SAAA,EACA,MAAA,KAQA,CjD9DA,QiD8DA,gBAAA,EACE,YAAA,EADF,CjD9DA,QiD8DA,gBAAA,EACE,YAAA,EADF,CjD9DA,QiD8DA,gBAAA,EACE,YAAA,EADF,CjD9DA,QiD8DA,gBAAA,EACE,YAAA,EADF,CjD9DA,QiD8DA,gBAAA,EACE,YAAA,EADF,CjD9DA,QiD8DA,gBAAA,EACE,YAAA,EADF,CjD9DA,QiD8DA,gBAAA,EACE,YAAA,EADF,CjD9DA,QiD8DA,gBAAA,EACE,YAAA,EADF,CjD9DA,QiD8DA,iBAAA,EACE,YAAA,GC9FF,C/BMF,e+BNE,CAAA,C5CGF,O4CHE,aACE,QAAA,OACA,YAAA,QACA,cAAA,EAEA,C/BCJ,e+BDI,CAAA,C5CFJ,O4CEI,YAAA,OACE,QAAA,QAOF,C/BPJ,e+BOI,CAAA,C5CVJ,O4CUI,YAAA,CAAA,IAAA,ClDYF,KkDZE,ClDYF,IkDZE,ClDkBF,QkDlBE,C/B0CJ,c+BzCM,QAAA,OAEA,C/BVN,e+BUM,CAAA,C5CbN,O4CaM,YAAA,CAAA,IAAA,ClDSJ,KkDTI,ClDSJ,IkDTI,ClDeJ,QkDfI,C/BuCN,a+BvCM,CAAA,ClDSJ,IkDTI,aACE,QAAA,OAGF,C/BdN,e+BcM,CAAA,C5CjBN,O4CiBM,YAAA,CAAA,IAAA,ClDKJ,KkDLI,ClDKJ,IkDLI,ClDWJ,QkDXI,C/BmCN,a+BnCM,CAAA,ClDKJ,IkDLI,ClDWJ,OkDXI,YAAA,CAAA,ClDKJ,IkDLI,aACE,QAAA,OClBJ,ChCGJ,egCHI,CAAA,C7CAJ,Q6CAI,OACE,QAAA,QAGF,ChCDJ,egCCI,CAAA,C7CJJ,O6CII,CAAA,CnDkBF,KmDjBI,QAAA,OAGF,ChCLJ,egCKI,CAAA,C7CRJ,Q6CQI,CAAA,MAAA,ChCLJ,egCKI,CAAA,C7CRJ,Q6CQI,CzCWA,WyCXA,ChCLJ,egCKI,CAAA,C7CRJ,Q6CQI,CAAA,OAGE,QAAA,KAGF,ChCXJ,egCWI,CAAA,C7CdJ,Q6CcI,C7CgEJ,I6ChEI,OACE,QAAA,KCZN,CAAA,kBAAA,CRJE,YQMA,OAAA,QACA,YAAA,KACA,aAAA,KACA,MAAA,IAAA,oBACA,cAAA,IAAA,OAAA,IAAA,oBAGF,CAAA,mBACE,KAAA,EAGF,OAAA,CAbA,kBAaA,OAAA,CRjBE,YQmBA,QAAA,UAAA,OAGF,CAlBA,iBAkBA,CAAA,EAAA,CRtBE,WQsBF,CAAA,EAEE,QAAA,OAGF,CAvBA,iBAuBA,IAAA,OAAA,OAAA,CAAA,OAAA,CR3BE,WQ2BF,IAAA,OAAA,OAAA,CAAA,OAEE,iBAAA,IAAA,oBACA,oBAAA,YAGF,CAAA,4BACE,KAAA,EAGF,CpDnBE,sBoDoBA,MAAA,EACA,OAAA,IAAA,MAAA,IAAA,oCN3Cc,YMMV,KAwCJ,iBAAA,IAAA,oBAEA,CpD1BA,eoD0BA,CAAA,UACE,QAAA,MACA,UAAA,IACA,WAAA,MAKJ,CpDlCE,eoDkCF,CpDlCE,eoDmCA,iBAAA,IAAA,6BAGF,CpDtCE,eoDsCF,CpDtCE,eoDsCF,CpDtCE,eoDuCA,iBAAA,IAAA,6BAGF,CpD1CE,eoD0CF,CpD1CE,eoD0CF,CpD1CE,eoD0CF,CpD1CE,eoD2CA,iBAAA,IAAA,6BAGF,CpD9CE,eoD8CF,CpD9CE,eoD8CF,CpD9CE,eoD8CF,CpD9CE,eoD8CF,CpD9CE,eoD+CA,iBAAA,IAAA,6BAKF,CpDpDE,coDoDF,CAAA,OACE,YAAA,EACA,aAAA,ECzDA,ClCsCF,ekCtCE,KAAA,CrDGA,eqDHA,CAAA,mBAAA,CAAA,SAAA,KAAA,CrDGA,eqDHA,CAAA,2BAlBI,eACI,KAoBN,YAAA,IAAA,MAAA,IAAA,sBACA,iBAAA,IAAA,6BAMA,ClC4BJ,ekC5BI,KAAA,CrDPF,eqDOE,CAVF,kBAUE,CAAA,C/CxBJ,O+CwBI,aAAA,CAVF,SAUE,KAAA,CrDPF,eqDOE,CAVF,kBAUE,CAAA,C/CxBJ,O+CwBI,aACE,WAAA,EPCJ,C3BuCA,a2BvCA,CxC1BF,QwC0BE,C3BuCA,gB2BvCA,CxC1BF,QwC2BI,QAAA,MACA,UAAA,MAEF,C3BmCA,a2BnCA,C9CRA,K8CQA,C3BmCA,gB2BnCA,C9CRA,K8CSE,WAAA,OAUF,C3BWF,Y2BXE,CAAA,CxCzCF,QwCyCE,C3BWF,Y2BXE,CAAA,CxCzCF,QwCyCE,C3BWF,W2BXE,CAAA,CxCzCF,QwCyCE,C3BwBA,gB2BxBA,CAAA,CxCzCF,QwCyCE,C3BwBA,gB2BxBA,CAAA,CxCzCF,QwCyCE,CAAA,UAAA,CAAA,CxCzCF,QwC0CI,QAAA,MACA,UAAA,MAIJ,C3BkBE,M2BjBA,eAAA,MACA,aAAA,IACA,cAAA,IACA,C3BcA,K2BdA,OACE,QAAA,QACA,SAAA,SACA,MAAA,EACA,OAAA,MAGF,C3BOA,M2BPA,CxC1DF,QwC2DI,UAAA,MACA,YAAA,IACA,WAAA,OAKF,C3B/DF,c2B+DE,CxClEF,QwCmEI,QAAA,OACA,WAAA,OACA,UAAA,MAIJ,CAAA,MAAA,C9CxDE,e8C4DA,OAAA,KACA,CALF,MAKE,C9C7DA,e8C6DA,C3BbA,a2BaA,CALF,MAKE,C9C7DA,e8C6DA,C3BbA,gB2BaA,CALF,MAKE,C9C7DA,e8C6DA,C3B1BF,a2B0BE,CALF,MAKE,C9C7DA,e8C6DA,C3B1BF,a2B0BE,CALF,MAKE,C9C7DA,e8C6DA,C3B1BF,Y2B0BE,CALF,MAKE,C9C7DA,e8C6DA,C3BbA,iB2BaA,CALF,MAKE,C9C7DA,e8C6DA,C3BbA,iB2BaA,CALF,MAKE,C9C7DA,e8C6DA,CArCA,WA8CE,aAAA,EACA,YAAA,EACA,YAAA,KAEA,CAlBJ,MAkBI,C9C1EF,e8C0EE,C3B1BF,Y2B0BE,OAAA,CAlBJ,MAkBI,C9C1EF,e8C0EE,C3B1BF,e2B0BE,OAAA,CAlBJ,MAkBI,C9C1EF,e8C0EE,C3BvCJ,Y2BuCI,OAAA,CAlBJ,MAkBI,C9C1EF,e8C0EE,C3BvCJ,Y2BuCI,OAAA,CAlBJ,MAkBI,C9C1EF,e8C0EE,C3BvCJ,W2BuCI,OAAA,CAlBJ,MAkBI,C9C1EF,e8C0EE,C3B1BF,gB2B0BE,OAAA,CAlBJ,MAkBI,C9C1EF,e8C0EE,C3B1BF,gB2B0BE,OAAA,CAlBJ,MAkBI,C9C1EF,e8C0EE,CAlDF,UAkDE,OACE,cAAA,KACA,QAAA,KO/EJ,OAAA,CLhBF,SKgBE,KAAA,IAAA,cAAA,KAAA,CrDGA,eqDHA,CAAA,2BAlBI,eACI,KAoBN,YAAA,IAAA,MAAA,IAAA,yBACA,iBAlBe,IAAA,sBAwBf,OAAA,CL1BJ,SK0BI,KAAA,IAAA,cAAA,KAAA,CrDPF,eqDOE,CAVF,kBAUE,CAAA,C/CxBJ,O+CwBI,aACE,WAAA,EH5BJ,C5CuDF,U4CvDE,CAAA,C5CGF,O4CHE,aAAA,OAAA,CAAA,C5CGF,O4CHE,aACE,QAAA,OACA,YAAA,QACA,cAAA,EAEA,C5CkDJ,U4ClDI,CAAA,C5CFJ,O4CEI,YAAA,OAAA,OAAA,CAAA,C5CFJ,O4CEI,YAAA,OACE,QAAA,QAOF,C5C0CJ,U4C1CI,CAAA,C5CVJ,O4CUI,YAAA,CAAA,IAAA,ClDYF,KkDZE,ClDYF,IkDZE,ClDkBF,QkDlBE,C/B0CJ,c+B1CI,OAAA,CAAA,C5CVJ,O4CUI,YAAA,CAAA,IAAA,ClDYF,KkDZE,ClDYF,IkDZE,ClDkBF,QkDlBE,C/B0CJ,c+BzCM,QAAA,OAEA,C5CuCN,U4CvCM,CAAA,C5CbN,O4CaM,YAAA,CAAA,IAAA,ClDSJ,KkDTI,ClDSJ,IkDTI,ClDeJ,QkDfI,C/BuCN,a+BvCM,CAAA,ClDSJ,IkDTI,aAAA,OAAA,CAAA,C5CbN,O4CaM,YAAA,CAAA,IAAA,ClDSJ,KkDTI,ClDSJ,IkDTI,ClDeJ,QkDfI,C/BuCN,a+BvCM,CAAA,ClDSJ,IkDTI,aACE,QAAA,OAGF,C5CmCN,U4CnCM,CAAA,C5CjBN,O4CiBM,YAAA,CAAA,IAAA,ClDKJ,KkDLI,ClDKJ,IkDLI,ClDWJ,QkDXI,C/BmCN,a+BnCM,CAAA,ClDKJ,IkDLI,ClDWJ,OkDXI,YAAA,CAAA,ClDKJ,IkDLI,aAAA,OAAA,CAAA,C5CjBN,O4CiBM,YAAA,CAAA,IAAA,ClDKJ,KkDLI,ClDKJ,IkDLI,ClDWJ,QkDXI,C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,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAA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AAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,4BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,IAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,mBAAA,EAAA,MAAA,KAAA,6BAAA,UAAA,GAAA,KAAA,EAAA,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AA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,IAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,0BAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,MAAA,KAAA,wBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,IAAA,wBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,IAAA,wBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,IAAA,wBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,IAAA,wBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,IAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA,KAAA,yBAAA,UAAA,GAAA,KAAA,EAAA,IAAA,gBAAA,EAAA,KAAA", "names": [] } diff --git a/_static/pretext/js/answer.js b/_static/pretext/js/answer.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/diagcess/diagcess.js b/_static/pretext/js/diagcess/diagcess.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/edit.js b/_static/pretext/js/edit.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/highlight.js b/_static/pretext/js/highlight.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/instructor.js b/_static/pretext/js/instructor.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/lib/jquery.espy.min.js b/_static/pretext/js/lib/jquery.espy.min.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/lib/jquery.min.js b/_static/pretext/js/lib/jquery.min.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/lib/jquery.sticky.js b/_static/pretext/js/lib/jquery.sticky.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/lib/knowl.js b/_static/pretext/js/lib/knowl.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/lib/mathjaxknowl.js b/_static/pretext/js/lib/mathjaxknowl.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/lib/mathjaxknowl3.js b/_static/pretext/js/lib/mathjaxknowl3.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/login.js b/_static/pretext/js/login.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/lti_iframe_resizer.js b/_static/pretext/js/lti_iframe_resizer.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/pretext-stack/stackapicalls.js b/_static/pretext/js/pretext-stack/stackapicalls.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/pretext-stack/stackjsvle.js b/_static/pretext/js/pretext-stack/stackjsvle.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/pretext-webwork/2.16/pretext-webwork.js b/_static/pretext/js/pretext-webwork/2.16/pretext-webwork.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/pretext-webwork/2.17/pretext-webwork.js b/_static/pretext/js/pretext-webwork/2.17/pretext-webwork.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/pretext-webwork/2.18/pretext-webwork.js b/_static/pretext/js/pretext-webwork/2.18/pretext-webwork.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/pretext-webwork/2.19/pretext-webwork.js b/_static/pretext/js/pretext-webwork/2.19/pretext-webwork.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/pretext-webwork/2.20/pretext-webwork.js b/_static/pretext/js/pretext-webwork/2.20/pretext-webwork.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/pretext.js b/_static/pretext/js/pretext.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/pretext_add_on.js b/_static/pretext/js/pretext_add_on.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/pretext_search.js b/_static/pretext/js/pretext_search.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/ptx_search.js b/_static/pretext/js/ptx_search.js old mode 100644 new mode 100755 diff --git a/_static/pretext/js/user_preferences.js b/_static/pretext/js/user_preferences.js old mode 100644 new mode 100755 diff --git a/_static/sql-wasm.wasm b/_static/sql-wasm.wasm old mode 100644 new mode 100755 diff --git a/_static/sql-wasm.wasm.gz b/_static/sql-wasm.wasm.gz old mode 100644 new mode 100755 diff --git a/_static/webpack_static_imports.json b/_static/webpack_static_imports.json old mode 100644 new mode 100755 index d220870..3f07ec2 --- a/_static/webpack_static_imports.json +++ b/_static/webpack_static_imports.json @@ -1 +1 @@ -{"js":["prefix-runtime.42217a82c75796c8.bundle.js","prefix-723.3e6434f80549315a.bundle.js","prefix-runestone.7e141ad8414abf4a.bundle.js"],"css":["prefix-723.3bccd435914aa0ff.css","prefix-runestone.f4ab138da65f4203.css"]} \ No newline at end of file +{"js":["prefix-runtime.991c135ccf182bf5.bundle.js","prefix-723.3e6434f80549315a.bundle.js","prefix-runestone.1c010553c35c544c.bundle.js"],"css":["prefix-723.3bccd435914aa0ff.css","prefix-runestone.677a75a9120449ff.css"]} \ No newline at end of file diff --git a/_static/webpack_static_imports.json.gz b/_static/webpack_static_imports.json.gz old mode 100644 new mode 100755 index 138a0069d301bfb0e1ccab6a008e7514b5498a93..dbfa07a68535eb0736a69d810283315e7be284ac GIT binary patch literal 153 zcmV;K0A~LmiwFP!000026K&2-3c@fDK;gS&T|*`_(==X1x=5x8R5VI|KoIY46ooFj z|9HHoI?w8OQuit4@o|{evW(ZHy$1ngkqn)UnRQ&ta7nu2=5L)vjj1K1+!-d1z+unT zW}25ol)*neN0bX=Elz#aW7;H H+yDRo>i9^? diff --git a/_static/webpack_static_imports.xml b/_static/webpack_static_imports.xml old mode 100644 new mode 100755 index 7c4cb61..3fc346a --- a/_static/webpack_static_imports.xml +++ b/_static/webpack_static_imports.xml @@ -1,14 +1,14 @@ - prefix-runtime.42217a82c75796c8.bundle.js + prefix-runtime.991c135ccf182bf5.bundle.js prefix-723.3e6434f80549315a.bundle.js - prefix-runestone.7e141ad8414abf4a.bundle.js + prefix-runestone.1c010553c35c544c.bundle.js prefix-723.3bccd435914aa0ff.css - prefix-runestone.f4ab138da65f4203.css + prefix-runestone.677a75a9120449ff.css https://runestone.academy/cdn/runestone/ - 7.11.5 + 7.11.8 diff --git a/backmatter-2.html b/backmatter-2.html old mode 100644 new mode 100755 index bc82bd4..a198362 --- a/backmatter-2.html +++ b/backmatter-2.html @@ -9,7 +9,7 @@ - + @@ -101,15 +101,15 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.5'; +eBookConfig.runestone_version = '7.11.8'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - - + + @@ -129,7 +129,13 @@ eBookConfig.enable_chatcodes = false;
      -PrevUpNext + +PrevUpNext
      -
      -PrevUpNext + +PrevUpNext
      -
      -PrevUpNext + +PrevUpNext
      -
      -PrevUpNext + +PrevUpNext
      -
      -PrevUpNext + +PrevUpNext
      -
      -PrevUpNext + +PrevUpNext
      -
      -PrevUpNext + +PrevUpNext
      -
      -PrevUpNext + +PrevUpNext
      -
      -PrevUpNext + +PrevUpNext
      -PrevUpNext + +PrevUpNext
      -
      -PrevUpNext + +PrevUpNext
      -
      -PrevUpNext + +PrevUpNext
      -
      diff --git a/sec-Chi-Squared.html b/sec-Chi-Squared.html old mode 100644 new mode 100755 index a401629..72c4b00 --- a/sec-Chi-Squared.html +++ b/sec-Chi-Squared.html @@ -9,7 +9,7 @@ - + @@ -101,15 +101,15 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.5'; +eBookConfig.runestone_version = '7.11.8'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - - + + @@ -129,7 +129,13 @@ eBookConfig.enable_chatcodes = false;
        -PrevUpNext + +PrevUpNext
        -
        diff --git a/sec-Conditional-Probability.html b/sec-Conditional-Probability.html old mode 100644 new mode 100755 index 67b54f0..d91f5dd --- a/sec-Conditional-Probability.html +++ b/sec-Conditional-Probability.html @@ -9,7 +9,7 @@ - + @@ -101,15 +101,15 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.5'; +eBookConfig.runestone_version = '7.11.8'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - - + + @@ -129,7 +129,13 @@ eBookConfig.enable_chatcodes = false;
          -PrevUpNext + +PrevUpNext
          -
          -PrevUpNext + +PrevUpNext
          -
          diff --git a/sec-Continuous-RVs.html b/sec-Continuous-RVs.html old mode 100644 new mode 100755 index 806a40b..3b903d8 --- a/sec-Continuous-RVs.html +++ b/sec-Continuous-RVs.html @@ -9,7 +9,7 @@ - + @@ -101,15 +101,15 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.5'; +eBookConfig.runestone_version = '7.11.8'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - - + + @@ -129,7 +129,13 @@ eBookConfig.enable_chatcodes = false;
            -PrevUpNext + +PrevUpNext -PrevUpNext + +PrevUpNext
            -
            diff --git a/sec-Covariance.html b/sec-Covariance.html old mode 100644 new mode 100755 index 3d5fb97..8ba01b3 --- a/sec-Covariance.html +++ b/sec-Covariance.html @@ -9,7 +9,7 @@ - + @@ -101,15 +101,15 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.5'; +eBookConfig.runestone_version = '7.11.8'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - - + + @@ -129,7 +129,13 @@ eBookConfig.enable_chatcodes = false;
              -PrevUpNext + +PrevUpNext
              -
              -PrevUpNext + +PrevUpNext
              -
              -PrevUpNext + +PrevUpNext
              -
              + +
              + + + diff --git a/sec-Linear-Regression.html b/sec-Linear-Regression.html old mode 100644 new mode 100755 index 056ff95..f46b47b --- a/sec-Linear-Regression.html +++ b/sec-Linear-Regression.html @@ -9,7 +9,7 @@ - + @@ -101,15 +101,15 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.5'; +eBookConfig.runestone_version = '7.11.8'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - - + + @@ -129,7 +129,13 @@ eBookConfig.enable_chatcodes = false;
                -PrevUpNext + +PrevUpNext
                -
                diff --git a/sec-One-Sample-Tests.html b/sec-One-Sample-Tests.html old mode 100644 new mode 100755 index 6545b98..b984b91 --- a/sec-One-Sample-Tests.html +++ b/sec-One-Sample-Tests.html @@ -9,7 +9,7 @@ - + @@ -101,15 +101,15 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.5'; +eBookConfig.runestone_version = '7.11.8'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - - + + @@ -129,7 +129,13 @@ eBookConfig.enable_chatcodes = false;
                  -PrevUpNext + +PrevUpNext
                  -
                  diff --git a/sec-Power.html b/sec-Power.html old mode 100644 new mode 100755 index f614074..0ac6c0f --- a/sec-Power.html +++ b/sec-Power.html @@ -9,7 +9,7 @@ - + @@ -101,15 +101,15 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.5'; +eBookConfig.runestone_version = '7.11.8'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - - + + @@ -129,7 +129,13 @@ eBookConfig.enable_chatcodes = false;
                    -PrevUpNext + +PrevUpNext
                    -
                    diff --git a/sec-Probability.html b/sec-Probability.html old mode 100644 new mode 100755 index 261155b..1d9b22c --- a/sec-Probability.html +++ b/sec-Probability.html @@ -9,7 +9,7 @@ - + @@ -101,15 +101,15 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.5'; +eBookConfig.runestone_version = '7.11.8'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - - + + @@ -129,7 +129,13 @@ eBookConfig.enable_chatcodes = false;
                      -PrevUpNext + +PrevUpNext
                      -
                      +
                      The probability of leaving during the first 3 minutes is \(\Pr(1) + \Pr(2) + \Pr(3) = 0.657.\) +
                      + +
                      + diff --git a/sec-Set-Theory.html b/sec-Set-Theory.html old mode 100644 new mode 100755 index a4ae388..c4e3b50 --- a/sec-Set-Theory.html +++ b/sec-Set-Theory.html @@ -9,7 +9,7 @@ - + @@ -101,15 +101,15 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.5'; +eBookConfig.runestone_version = '7.11.8'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - - + + @@ -129,7 +129,13 @@ eBookConfig.enable_chatcodes = false;
                        -PrevUpNext + +PrevUpNext
                        -
                        -PrevUpNext + +PrevUpNext
                        -
                        diff --git a/sec-Variance.html b/sec-Variance.html old mode 100644 new mode 100755 index a36d45d..3daf18d --- a/sec-Variance.html +++ b/sec-Variance.html @@ -9,7 +9,7 @@ - + @@ -101,15 +101,15 @@ eBookConfig.allow_pairs = false; eBookConfig.enableScratchAC = false; eBookConfig.build_info = ""; eBookConfig.python3 = null; -eBookConfig.runestone_version = '7.11.5'; +eBookConfig.runestone_version = '7.11.8'; eBookConfig.jobehost = ''; eBookConfig.proxyuri_runs = ''; eBookConfig.proxyuri_files = ''; eBookConfig.enable_chatcodes = false; - - + + @@ -129,7 +129,13 @@ eBookConfig.enable_chatcodes = false;
                          -PrevUpNext + +PrevUpNext
                          -

                          H){aUo;WP7|qp*Xq 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 - - - prefix-runtime.42217a82c75796c8.bundle.js - prefix-723.3e6434f80549315a.bundle.js - prefix-runestone.7e141ad8414abf4a.bundle.js - - - prefix-723.3bccd435914aa0ff.css - prefix-runestone.f4ab138da65f4203.css - - https://runestone.academy/cdn/runestone/ - 7.11.5 - + + + + prefix-runtime.991c135ccf182bf5.bundle.js + prefix-723.3e6434f80549315a.bundle.js + prefix-runestone.1c010553c35c544c.bundle.js + + + prefix-723.3bccd435914aa0ff.css + prefix-runestone.677a75a9120449ff.css + + https://runestone.academy/cdn/runestone/ + 7.11.8 + diff --git a/_static/b70781972ce7320b.woff2 b/_static/b70781972ce7320b.woff2 old mode 100644 new mode 100755 diff --git a/_static/prefix-115.83df5da0966564d5.css b/_static/prefix-115.83df5da0966564d5.css deleted file mode 100644 index 93d9aae..0000000 --- a/_static/prefix-115.83df5da0966564d5.css +++ /dev/null @@ -1,2 +0,0 @@ -.selectwidthauto{display:inline-block!important;margin:5px;width:auto!important}input.input-validation-error{border:1px solid #e80c4d}.dark-mode .fillintheblank_section input[type=text]{background-color:#333;color:unset}.ptx-runestone-container .fitb-feedback{margin-bottom:0;margin-top:10px}.ptx-runestone-container .fitb-feedback:empty{margin-top:0}.mchoice label p{display:inline;font-weight:400!important}.mchoice label pre{font-weight:400}.mchoice fieldset{margin-bottom:.5em}.mchoice fieldset legend{font-size:small;margin-bottom:.5em}.multiplechoice_section label>.para,.timedAssessment .mchoice label>.para{display:inline}label.mchoice-option{display:block}.ptx-runestone-container input.mchoice-input{margin-right:.5em;vertical-align:top}.mchoice .alert{margin-bottom:0;margin-top:10px}div.journal div.latexoutput{background-color:var(--outerBackground,#eee);border-radius:5px;margin-bottom:10px;padding:1em}.shortanswer_section .alert{margin-bottom:0}.shortanswer__timestamp{color:var(--grayToWhite,#333);font-size:.9em}.journal textarea{background-color:#fff;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(90deg,#eaeef2,#eaeef2) border-box;border:1px solid #d0d7de;border-radius:8px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;line-height:1.5;max-width:100%;min-height:6rem;overflow:hidden;padding:.75rem .9rem;resize:none;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.journal textarea:focus{border-color:#0969da;box-shadow:0 0 0 3px rgba(9,105,218,.15);outline:none}.clickable{cursor:pointer}.clickable:has(code){display:inline-block;padding:3px}.clickable-clicked:has(code){box-shadow:0 0 2px 2px rgba(0,100,0,.75)}.clickable-clicked{background-color:var(--clickableBgColor)}.clickable-clicked td{background-color:#dad6c1;box-shadow:none}table{border-collapse:collapse}td.clickable,th.clickable{border:1px solid #000}td.clickable-clicked{background-color:#dad6c1;box-shadow:none}td img{margin:5px}.clickable-clicked th,th.clickable-clicked{background-color:#dad6c1;box-shadow:none}.clickable-incorrect,.clickable-incorrect td,.clickable-incorrect th{background-color:var(--clickableIncorrectBgColor);border:1px solid red!important}img.clickable-incorrect{box-shadow:0 0 2px 2px rgba(100,0,0,.75)}.clickable-incorrect:has(code){box-shadow:0 0 2px 2px rgba(251,0,0,.75)}:root{--clickableBgColor:#ff0;--clickableIncorrectBgColor:#fcc}:root.dark-mode{--clickableBgColor:#3c5624;--clickableIncorrectBgColor:#562c2c;.clickable-clicked:has(code):not(.clickable-incorrect){box-shadow:0 0 2px 2px rgba(251,255,21,.75)}}.ptx-runestone-container .rsdraggable,.runestone-sphinx .rsdraggable{background-color:var(--questionBgColor,#efefff);border:1px solid var(--componentBorderColor,#efefff);box-sizing:border-box;display:inline;float:left;margin-left:1%;margin-right:1%;margin-top:5px;min-width:28%;padding-bottom:10px;text-align:left;vertical-align:top}.ptx-runestone-container .dnd-button-container,.runestone-sphinx .dnd-button-container{display:flex;justify-content:center;margin-top:1em;width:100%}.ptx-runestone-container .drag-button,.runestone-sphinx .drag-button{display:inline-block}.ptx-runestone-container .drag-reset,.runestone-sphinx .drag-reset{background-color:#474949;color:#fff}.ptx-runestone-container .drag-reset:hover,.runestone-sphinx .drag-reset:hover{background-color:#000;color:#fff}.ptx-runestone-container .drop-incorrect,.runestone-sphinx .drop-incorrect{background-color:var(--draggableIncorrectBg,#f2dede)!important;border:1px solid var(--draggableIncorrectBorder,red)!important}.ptx-runestone-container .drag-reset:enabled,.runestone-sphinx .drag-reset:enabled{background-color:#474949;color:#fff}.ptx-runestone-container .draggable-drag,.runestone-sphinx .draggable-drag{background-color:var(--draggableBgColor);border:1px solid #d3d3d3;border-radius:10px;cursor:grab;display:block;margin-top:5px;padding:10px}.ptx-runestone-container .draggable-feedback,.runestone-sphinx .draggable-feedback{clear:both;margin-bottom:0;margin-top:10px;text-align:left!important}.ptx-runestone-container .draggable-drop,.runestone-sphinx .draggable-drop{background-color:var(--dropableBgColor);border:1px solid #d3d3d3;border-radius:10px;cursor:grab;display:block;margin-top:5px;padding:10px}.ptx-runestone-container .draggable-container,.runestone-sphinx .draggable-container{text-align:center}.ptx-runestone-container .possibleDrop,.runestone-sphinx .possibleDrop{background-color:#ccc;border-color:#000}.ptx-runestone-container .draggable-drop .MathJax,.ptx-runestone-container .draggable-drop .process-math,.runestone-sphinx .draggable-drop .MathJax,.runestone-sphinx .draggable-drop .process-math{cursor:not-allowed;pointer-events:none}.ptx-runestone-container .vh-dnd-error,.runestone-sphinx .vh-dnd-error{clip:rect(0,0,0,0);border:0;height:1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.ptx-runestone-container .cardsort-statement,.runestone-sphinx .cardsort-statement{background-color:var(--questionBgColor);margin-bottom:10px;padding:10px;text-align:left}.ptx-runestone-container .parsons-container,.runestone-sphinx .parsons-container{clear:both}.ptx-runestone-container .parsons .sortable-code-container,.runestone-sphinx .parsons .sortable-code-container{text-align:center}.ptx-runestone-container .parsons .sortable-code-container:not(.block),.runestone-sphinx .parsons .sortable-code-container:not(.block){-webkit-user-select:none;-moz-user-select:-moz-none;-ms-user-select:none;user-select:none}.ptx-runestone-container .parsons .sortable-code,.runestone-sphinx .parsons .sortable-code{display:inline-block;margin:0 15px;padding-left:0;position:static;text-align:left;vertical-align:top}.ptx-runestone-container .parsons .answer,.ptx-runestone-container .parsons .answer1,.ptx-runestone-container .parsons .answer2,.ptx-runestone-container .parsons .answer3,.ptx-runestone-container .parsons .answer4,.ptx-runestone-container .parsons .source,.runestone-sphinx .parsons .answer,.runestone-sphinx .parsons .answer1,.runestone-sphinx .parsons .answer2,.runestone-sphinx .parsons .answer3,.runestone-sphinx .parsons .answer4,.runestone-sphinx .parsons .source{background-color:var(--questionBgColor,#efefff);border:1px solid var(--componentBorderColor,#efefff);font-size:100%;list-style:none;margin-left:0;padding-bottom:10px;padding-left:0;position:relative}.ptx-runestone-container .parsons .source,.runestone-sphinx .parsons .source{background-color:var(--questionBgColor,#efefff)}.ptx-runestone-container .parsons .answer,.runestone-sphinx .parsons .answer{background-color:var(--parsonsBgColor);border-color:var(--parsonsBorderColor)}.ptx-runestone-container .parsons .answer.incorrect,.runestone-sphinx .parsons .answer.incorrect{background-color:var(--parsonsIncorrectBgColor);border-color:var(--parsonsIncorrectBorderColor)}.ptx-runestone-container .parsons .answer.correct,.runestone-sphinx .parsons .answer.correct{background-color:var(--parsonsCorrectBgColor);border-color:var(--parsonsCorrectBorderColor)}.ptx-runestone-container .parsons .answer1,.runestone-sphinx .parsons .answer1{background:linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box;background-color:var(--parsonsBgColor);background-origin:padding-box;background-position:30px 0;background-size:1px 100%;border-color:var(--parsonsBorderColor)}.ptx-runestone-container .parsons .answer1.incorrect,.runestone-sphinx .parsons .answer1.incorrect{background:linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsIncorrectBgColor);background-origin:padding-box;background-position:30px 0;background-size:1px 100%;border-color:var(--parsonsIncorrectBorderColor)}.ptx-runestone-container .parsons .answer1.correct,.runestone-sphinx .parsons .answer1.correct{background:linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsCorrectBgColor);background-origin:padding-box;background-position:30px 0;background-size:1px 100%;border-color:var(--parsonsCorrectBorderColor)}.ptx-runestone-container .parsons .answer2,.runestone-sphinx .parsons .answer2{background:linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box;background-color:var(--parsonsBgColor);background-origin:padding-box,padding-box;background-position:30px 0,60px 0;background-size:1px 100%,1px 100%;border-color:var(--parsonsBorderColor)}.ptx-runestone-container .parsons .answer2.incorrect,.runestone-sphinx .parsons .answer2.incorrect{background:linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsIncorrectBgColor);background-origin:padding-box,padding-box;background-position:30px 0,60px 0;background-size:1px 100%,1px 100%;border-color:var(--parsonsIncorrectBorderColor)}.ptx-runestone-container .parsons .answer2.correct,.runestone-sphinx .parsons .answer2.correct{background:linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsCorrectBgColor);background-origin:padding-box,padding-box;background-position:30px 0,60px 0;background-size:1px 100%,1px 100%;border-color:var(--parsonsCorrectBorderColor)}.ptx-runestone-container .parsons .answer3,.runestone-sphinx .parsons .answer3{background:linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box;background-color:var(--parsonsBgColor);background-origin:padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0;background-size:1px 100%,1px 100%,1px 100%;border-color:var(--parsonsBorderColor)}.ptx-runestone-container .parsons .answer3.incorrect,.runestone-sphinx .parsons .answer3.incorrect{background:linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsIncorrectBgColor);background-origin:padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0;background-size:1px 100%,1px 100%,1px 100%;border-color:var(--parsonsIncorrectBorderColor)}.ptx-runestone-container .parsons .answer3.correct,.runestone-sphinx .parsons .answer3.correct{background:linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsCorrectBgColor);background-origin:padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0;background-size:1px 100%,1px 100%,1px 100%;border-color:var(--parsonsCorrectBorderColor)}.ptx-runestone-container .parsons .answer4,.runestone-sphinx .parsons .answer4{background:linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box;background-color:var(--parsonsBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsBorderColor)}.ptx-runestone-container .parsons .answer4.incorrect,.runestone-sphinx .parsons .answer4.incorrect{background:linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsIncorrectBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsIncorrectBorderColor)}.ptx-runestone-container .parsons .answer4.correct,.runestone-sphinx .parsons .answer4.correct{background:linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsCorrectBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsCorrectBorderColor)}.ptx-runestone-container .parsons .answer5,.runestone-sphinx .parsons .answer5{background:linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box;background-color:var(--parsonsBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0,150px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsBorderColor)}.ptx-runestone-container .parsons .answer5.incorrect,.runestone-sphinx .parsons .answer5.incorrect{background:linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsIncorrectBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0,150px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsIncorrectBorderColor)}.ptx-runestone-container .parsons .answer5.correct,.runestone-sphinx .parsons .answer5.correct{background:linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsCorrectBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0,150px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsCorrectBorderColor)}.ptx-runestone-container .parsons .answer6,.runestone-sphinx .parsons .answer6{background:linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box;background-color:var(--parsonsBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0,150px 0,180px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsBorderColor)}.ptx-runestone-container .parsons .answer6.incorrect,.runestone-sphinx .parsons .answer6.incorrect{background:linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsIncorrectBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0,150px 0,180px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsIncorrectBorderColor)}.ptx-runestone-container .parsons .answer6.correct,.runestone-sphinx .parsons .answer6.correct{background:linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsCorrectBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0,150px 0,180px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsCorrectBorderColor)}.ptx-runestone-container .parsons .block,.runestone-sphinx .parsons .block{background-color:var(--background,#efefef);border:1px solid #d3d3d3;-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;cursor:move;margin-top:5px;overflow:hidden;padding:5px 10px;position:absolute}.ptx-runestone-container .parsons .block.disabled,.runestone-sphinx .parsons .block.disabled{opacity:.3}.ptx-runestone-container .parsons .block.down,.runestone-sphinx .parsons .block.down{border:2px solid #000;padding:4px 9px}.ptx-runestone-container .parsons .block.up,.runestone-sphinx .parsons .block.up{background-color:#fff;border:2px solid #000;box-shadow:3px 3px 4px #000;padding:4px 9px}.ptx-runestone-container .parsons,.runestone-sphinx .parsons{display:block}.ptx-runestone-container .parsons .block,.runestone-sphinx .parsons .block{clear:both;float:left}.ptx-runestone-container .parsons .sortable-code code,.runestone-sphinx .parsons .sortable-code code{background-color:transparent;clear:both;float:left;white-space:pre}.ptx-runestone-container .parsons .sortable-code code:empty,.runestone-sphinx .parsons .sortable-code code:empty{height:1.25em}.ptx-runestone-container .parsons .block p,.runestone-sphinx .parsons .block p{margin:0}.ptx-runestone-container .parsons .block,.ptx-runestone-container .parsons .block:after,.ptx-runestone-container .parsons .block:before,.runestone-sphinx .parsons .block,.runestone-sphinx .parsons .block:after,.runestone-sphinx .parsons .block:before{box-sizing:content-box}.ptx-runestone-container .parsons .indent1,.runestone-sphinx .parsons .indent1{margin-left:30px}.ptx-runestone-container .parsons .indent2,.runestone-sphinx .parsons .indent2{margin-left:60px}.ptx-runestone-container .parsons .indent3,.runestone-sphinx .parsons .indent3{margin-left:90px}.ptx-runestone-container .parsons .indent4,.runestone-sphinx .parsons .indent4{margin-left:120px}.ptx-runestone-container .parsons .indent5,.runestone-sphinx .parsons .indent5{margin-left:150px}.ptx-runestone-container .parsons .indent6,.runestone-sphinx .parsons .indent6{margin-left:180px}.ptx-runestone-container .parsons .indent7,.runestone-sphinx .parsons .indent7{margin-left:210px}.ptx-runestone-container .parsons .indent8,.runestone-sphinx .parsons .indent8{margin-left:240px}.ptx-runestone-container .parsons .correct,.runestone-sphinx .parsons .correct{background:none;background-color:var(--parsonsCorrectBgColor);border:1px solid #d6e9c6}.ptx-runestone-container .parsons .indentLeft,.ptx-runestone-container .parsons .indentRight,.runestone-sphinx .parsons .indentLeft,.runestone-sphinx .parsons .indentRight{background-color:#fff0b3;border:2px solid #fc0;padding:4px 9px}.ptx-runestone-container .parsons .indentLeft,.runestone-sphinx .parsons .indentLeft{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSI2MDAiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIGZpbGw9IiNGQzAiIGQ9Ik0xMiAwSDB2NjAwaDEyVjMxMEwyIDMwMGwxMC0xMHoiLz48cGF0aCBkPSJtNSAzMDAgNy03di0zTDIgMzAwbDEwIDEwdi0zeiIvPjwvc3ZnPg==),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSI2MDAiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIGQ9Ik0xMCAzMDd2M0wwIDMwMGwxMC0xMHYzbC03IDd6Ii8+PHBhdGggZmlsbD0iI0ZDMCIgZD0iTTEyIDMwOXYtMThsLTkgOXoiLz48cGF0aCBmaWxsPSIjRkMwIiBkPSJNMTAgMGgydjYwMGgtMnoiLz48L3N2Zz4=);background-position:0,100%;background-repeat:no-repeat,no-repeat}.ptx-runestone-container .parsons .indentRight,.runestone-sphinx .parsons .indentRight{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSI2MDAiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIGQ9Im05IDMwMC03LTd2LTNsMTAgMTAtMTAgMTB2LTN6Ii8+PHBhdGggZmlsbD0iI0ZDMCIgZD0ibTkgMzAwLTktOXYxOHoiLz48cGF0aCBmaWxsPSIjRkMwIiBkPSJNMCAwaDJ2NjAwSDB6Ii8+PC9zdmc+),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSI2MDAiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIGZpbGw9IiNGQzAiIGQ9Im0wIDI5MCAxMCAxMC0xMCAxMHYyOTBoMTJWMEgweiIvPjxwYXRoIGQ9Ik0wIDMwN3YzbDEwLTEwLTEwLTEwdjNsNyA3eiIvPjwvc3ZnPg==);background-position:0,100%;background-repeat:no-repeat,no-repeat}.ptx-runestone-container .parsons .incorrectPosition,.runestone-sphinx .parsons .incorrectPosition{background-color:#ffbaba;border:1px solid red}.ptx-runestone-container .parsons .paired,.runestone-sphinx .parsons .paired{background-color:transparent;border-color:#b8b8f2;-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;border-style:solid;border-width:1px 11px;margin-top:5px;overflow:hidden;position:absolute}.ptx-runestone-container .parsons,.runestone-sphinx .parsons{border-left:0;border-radius:0;border-right:0}.ptx-runestone-container .parsons .parsons-text,.runestone-sphinx .parsons .parsons-text{margin-left:auto;margin-right:auto;max-width:var(--contentWidthRegular)}.ptx-runestone-container .parsons .parsons-img,.runestone-sphinx .parsons .parsons-img{display:inline-block;text-align:center;width:100%}.ptx-runestone-container .parsons .parsons-controls,.runestone-sphinx .parsons .parsons-controls{margin-left:auto;margin-right:auto;margin-top:10px;max-width:var(--contentWidthRegular);text-align:center}.ptx-runestone-container .parsons [role=tooltip],.runestone-sphinx .parsons [role=tooltip]{font-style:italic;margin:5px auto;max-width:var(--contentWidthRegular);padding:0 10px;text-align:center;top:0}.ptx-runestone-container .block-label,.runestone-sphinx .block-label{color:#7e7ee7;font-size:90%;vertical-align:top;white-space:pre}.ptx-runestone-container .right-label,.runestone-sphinx .right-label{padding:.2em 0 .3em .6em}.ptx-runestone-container .left-label,.runestone-sphinx .left-label{padding:.2em .6em .3em 0}.ptx-runestone-container .labels,.runestone-sphinx .labels{display:inline-block;padding-top:2px;vertical-align:top}.ptx-runestone-container .runestone .lines,.runestone-sphinx .runestone .lines{align-self:left;display:inline-block}.ptx-runestone-container .border_left,.runestone-sphinx .border_left{border-left:1px solid #b0b0b0}.ptx-runestone-container .block,.runestone-sphinx .block{align-content:stretch;align-items:stretch;display:flex}.ptx-runestone-container .cd_section,.ptx-runestone-container .parsons,.ptx-runestone-container .parsons .sortable-code-container,.runestone-sphinx .cd_section,.runestone-sphinx .parsons,.runestone-sphinx .parsons .sortable-code-container{max-width:none}.ptx-runestone-container #timed_Test .pagination,.runestone-sphinx #timed_Test .pagination{margin:5px 0}.ptx-runestone-container .parsons .block code,.runestone-sphinx .parsons .block code{color:#000}.ptx-runestone-container .parsons .placeholder-block.disabled.block,.runestone-sphinx .parsons .placeholder-block.disabled.block{background-color:#fff;border-style:dashed;font-style:italic;opacity:1;padding:20px 10px}.ptx-runestone-container .parsons .settled-block.disabled.block,.runestone-sphinx .parsons .settled-block.disabled.block{background-color:#afe1af;border:1px solid #000;opacity:1}.ptx-runestone-container .parsons .settled-block.disabled.block:hover .settled-tooltip,.runestone-sphinx .parsons .settled-block.disabled.block:hover .settled-tooltip{opacity:1;visibility:visible}.ptx-runestone-container .parsons .settled-block.disabled.block .settled-tooltip,.runestone-sphinx .parsons .settled-block.disabled.block .settled-tooltip{background-color:#555;border-radius:6px;color:#fff;font-size:.75rem;left:100%;opacity:0;padding:2px 8px;position:sticky;text-align:center;transition:opacity .6s;vertical-align:middle;visibility:hidden;z-index:1}.ptx-runestone-container .parsons .settled-block .block-label,.runestone-sphinx .parsons .settled-block .block-label{color:transparent}.ptx-runestone-container .parsons .alert,.runestone-sphinx .parsons .alert{margin-bottom:0;margin-top:10px}.ptx-runestone-container .parsons .placeholder-block .lines,.ptx-runestone-container .parsons .placeholder-block.hide,.ptx-runestone-container .placeholder-block .labels,.runestone-sphinx .parsons .placeholder-block .lines,.runestone-sphinx .parsons .placeholder-block.hide,.runestone-sphinx .placeholder-block .labels{display:none}.ptx-runestone-container .settled-block .labels .block-label,.runestone-sphinx .settled-block .labels .block-label{color:transparent}:root.dark-mode .ptx-runestone-container .parsons .block:has(code[class*=language-]){background:#141414}.prettyprint{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun{color:#660}.pln{color:#000}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec{color:#606}pre.prettyprint{border:1px solid #888;padding:2px}@media print{.str{color:#060}.kwd{color:#006;font-weight:700}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:700}.lit{color:#044}.pun{color:#440}.pln{color:#000}.tag{color:#006;font-weight:700}.atn{color:#404}.atv{color:#060}}}.ptx-runestone-container *,.runestone-sphinx *{box-sizing:border-box}.ptx-runestone-container body,.runestone-sphinx body{font-family:sans-serif;margin:0;padding:20px}.ptx-runestone-container h2,.runestone-sphinx h2{margin-bottom:.5em}.ptx-runestone-container [data-component=matching],.runestone-sphinx [data-component=matching]{font-family:sans-serif;margin:2rem 0}.ptx-runestone-container .matching-workspace,.runestone-sphinx .matching-workspace{background:var(--componentBgColor);display:flex;justify-content:space-between;margin:0 auto 1rem;max-width:1000px;position:relative;width:100%}.ptx-runestone-container .left-column,.ptx-runestone-container .right-column,.runestone-sphinx .left-column,.runestone-sphinx .right-column{align-items:center;display:flex;flex-direction:column;gap:12px;justify-content:center;max-width:25vw;padding:10px;position:relative;z-index:1}.ptx-runestone-container .left-column img,.ptx-runestone-container .right-column img,.runestone-sphinx .left-column img,.runestone-sphinx .right-column img{max-width:25vw}.ptx-runestone-container .box,.runestone-sphinx .box{align-items:center;background:var(--dropableBgColor,#f9f9f9);border:2px solid var(--boxBorderColor);border-radius:8px;cursor:grab;display:inline-flex;font-weight:700;justify-content:center;max-width:100%;min-height:50px;min-width:120px;padding:10px 14px;text-align:center;touch-action:none;user-select:none}.ptx-runestone-container .box,.ptx-runestone-container .left-column,.ptx-runestone-container .matching-workspace,.ptx-runestone-container .right-column,.ptx-runestone-container body,.runestone-sphinx .box,.runestone-sphinx .left-column,.runestone-sphinx .matching-workspace,.runestone-sphinx .right-column,.runestone-sphinx body{user-select:none;-webkit-user-select:none}.ptx-runestone-container .box mjx-container,.runestone-sphinx .box mjx-container{font-size:1em}.ptx-runestone-container .box:focus,.runestone-sphinx .box:focus{outline:3px solid #3498db}.ptx-runestone-container .box.selected,.runestone-sphinx .box.selected{outline:3px dashed #27ae60}.ptx-runestone-container .connector-svg,.runestone-sphinx .connector-svg{background:var(--componentBgColor);height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:0}.ptx-runestone-container .line,.runestone-sphinx .line{stroke:var(--dragLineColor);stroke-width:3;cursor:pointer;pointer-events:auto;transition:stroke .2s ease,stroke-width .2s ease}.ptx-runestone-container .line.correct,.runestone-sphinx .line.correct{stroke:green;stroke-width:3}.ptx-runestone-container .line.incorrect,.runestone-sphinx .line.incorrect{stroke:#bf1521;stroke-width:2;stroke-dasharray:5 5}.ptx-runestone-container .line.highlighted,.runestone-sphinx .line.highlighted{stroke:#3cd6e7;stroke-width:3}.ptx-runestone-container .line.faded,.runestone-sphinx .line.faded{stroke:#ccc;stroke-width:1}.ptx-runestone-container .line:focus,.ptx-runestone-container .line:hover,.runestone-sphinx .line:focus,.runestone-sphinx .line:hover{stroke:#3498db;stroke-dasharray:6 4;stroke-width:5;outline:none}.ptx-runestone-container .conn-list,.runestone-sphinx .conn-list{background:var(--componentBgColor);border:1px solid #ccc;border-radius:6px;font-size:14px;margin:0 auto 1rem;max-width:800px;padding:10px}.ptx-runestone-container .conn-entry,.runestone-sphinx .conn-entry{font-family:monospace;margin:4px 0}.ptx-runestone-container button,.runestone-sphinx button{border:none;border-radius:6px;cursor:grab;display:inline-block;font-size:1rem;margin:.5rem;padding:8px 16px;transition:background .2s ease-in-out}.ptx-runestone-container button:hover,.runestone-sphinx button:hover{background:#2980b9}.ptx-runestone-container .aria-live,.runestone-sphinx .aria-live{height:1px;left:-9999px;overflow:hidden;position:absolute;top:auto;width:1px}.ptx-runestone-container .control-div,.runestone-sphinx .control-div{align-items:center;display:flex;gap:10px;justify-content:center;margin-top:1rem}.ptx-runestone-container .control-div .help-button,.runestone-sphinx .control-div .help-button{background:#2c3e50;border-radius:50%;color:#ecf0f1;cursor:pointer;font-size:1.2rem;height:32px;line-height:32px;padding:0;text-align:center;width:32px}.ptx-runestone-container .control-div .help-button:hover,.runestone-sphinx .control-div .help-button:hover{background:#34495e}.ptx-runestone-container .help-modal,.runestone-sphinx .help-modal{align-items:center;background:rgba(0,0,0,.5);display:none;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%;z-index:10}.ptx-runestone-container .help-modal-content,.runestone-sphinx .help-modal-content{background-color:var(--questionBgColor);border-radius:6px;max-height:80%;max-width:80%;overflow:auto;padding:1rem 1.5rem;position:relative}.ptx-runestone-container .help-modal-content .help-close,.runestone-sphinx .help-modal-content .help-close{background:transparent;border:none;color:red;cursor:pointer;font-size:1.5rem;position:absolute;right:.5rem;top:.5rem}.ptx-runestone-container .help-modal-content .help-text,.runestone-sphinx .help-modal-content .help-text{font-size:1rem;line-height:1.4;margin-top:1.5rem}.ptx-runestone-container .match_question,.runestone-sphinx .match_question{background-color:var(--questionBgColor);margin-bottom:10px;padding:10px}.ptx-runestone-container .match_feedback,.runestone-sphinx .match_feedback{background-color:var(--parsonsIncorrectBgColor);border-radius:5px;margin-bottom:10px;margin-top:10px;padding:10px}:root{--draggableBgColor:#efefef;--dropableBgColor:#ddd;--draggableIncorrectBorder:red;--draggableIncorrectBg:#f2dede;--dragLineColor:#000;--boxBorderColor:#000}:root.dark-mode,[data-theme=dark]{--draggableBgColor:#393434;--dropableBgColor:#2a2d30;--draggableIncorrectBorder:red;--draggableIncorrectBg:#6d2d2d;--dragLineColor:#fff;--boxBorderColor:#fff}#component-preview{margin-right:20px;max-height:100%;overflow-y:scroll;padding-top:60px;position:fixed;right:0;top:0}.toggle-preview{background-color:azure;border:4px solid;border-radius:10px;box-shadow:10px 5px 5px gray;padding-top:10px}.ptx-runestone-container ul#pageNums,.ptx-runestone-container ul#pageNums li,.runestone-sphinx ul#pageNums,.runestone-sphinx ul#pageNums li{padding:10px 0;text-align:center}.ptx-runestone-container .pagination>li>a:hover,.runestone-sphinx .pagination>li>a:hover{background-color:#eee!important;color:#000!important}.ptx-runestone-container .flagBtn,.runestone-sphinx .flagBtn{background-color:#ed9c59!important;border:3px solid #ce5718;border-radius:5px;color:#030201!important;cursor:pointer;display:ruby;font-size:15px;height:115;text-align:center;text-decoration:none;width:150}.ptx-runestone-container .pagination>.active>a,.ptx-runestone-container .pagination>.active>span,.runestone-sphinx .pagination>.active>a,.runestone-sphinx .pagination>.active>span{background-color:#428bca!important;color:#fff!important}.ptx-runestone-container .col-md-6-override,.runestone-sphinx .col-md-6-override{max-width:100%!important;text-align:center!important}.ptx-runestone-container .pagination>.answered>a,.ptx-runestone-container .pagination>.answered>span,.runestone-sphinx .pagination>.answered>a,.runestone-sphinx .pagination>.answered>span{background-color:#eee;color:#000}.ptx-runestone-container .pagination>.broken>a,.ptx-runestone-container .pagination>.broken>span,.runestone-sphinx .pagination>.broken>a,.runestone-sphinx .pagination>.broken>span{background-color:#f99;color:#000}.ptx-runestone-container .pagination>.toolate>a,.ptx-runestone-container .pagination>.toolate>span,.runestone-sphinx .pagination>.toolate>a,.runestone-sphinx .pagination>.toolate>span{background-color:#eccb36;color:#000}.ptx-runestone-container .pagination>.flagcolor>a,.ptx-runestone-container .pagination>.flagcolor>span,.runestone-sphinx .pagination>.flagcolor>a,.runestone-sphinx .pagination>.flagcolor>span{background-color:#ed9c59;color:#000}.ptx-runestone-container p.examwarning,.runestone-sphinx p.examwarning{background-color:hsla(0,78%,78%,.822);border:2px solid #000;border-radius:5px;margin-left:auto;margin-right:auto;padding:5px;width:50%}.ptx-runestone-container .pagination>.correctCount>a,.ptx-runestone-container .pagination>.correctCount>span,.runestone-sphinx .pagination>.correctCount>a,.runestone-sphinx .pagination>.correctCount>span{background-color:#dff0d8;border-color:#000;color:#000}.ptx-runestone-container .pagination>.skippedCount>a,.ptx-runestone-container .pagination>.skippedCount>span,.runestone-sphinx .pagination>.skippedCount>a,.runestone-sphinx .pagination>.skippedCount>span{background-color:#fcf8e3;border-color:#000;color:#000}.ptx-runestone-container .pagination>.incorrectCount>a,.ptx-runestone-container .pagination>.incorrectCount>span,.runestone-sphinx .pagination>.incorrectCount>a,.runestone-sphinx .pagination>.incorrectCount>span{background-color:#f2dede;border-color:#000;color:#000}.ptx-runestone-container .switchcontainer,.runestone-sphinx .switchcontainer{height:1000px;overflow:auto} -/*# sourceMappingURL=prefix-115.83df5da0966564d5.css.map*/ \ No newline at end of file diff --git a/_static/prefix-115.83df5da0966564d5.css.gz b/_static/prefix-115.83df5da0966564d5.css.gz deleted file mode 100644 index 541a1bb989e09cda73af2ede2c71868e01da0d82..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5505 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 DzyiXf diff --git a/_static/prefix-115.83df5da0966564d5.css.map b/_static/prefix-115.83df5da0966564d5.css.map deleted file mode 100644 index 14b94c1..0000000 --- a/_static/prefix-115.83df5da0966564d5.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"prefix-115.83df5da0966564d5.css","mappings":"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","sources":["webpack://WebComponents/./runestone/fitb/css/fitb.css","webpack://WebComponents/./runestone/mchoice/css/mchoice.css","webpack://WebComponents/./runestone/shortanswer/css/shortanswer.css","webpack://WebComponents/./runestone/clickableArea/css/clickable.css","webpack://WebComponents/./runestone/dragndrop/css/dragndrop.less","webpack://WebComponents/./runestone/dragndrop/css/dragndrop.css","webpack://WebComponents/./runestone/parsons/css/parsons.less","webpack://WebComponents/./runestone/parsons/css/parsons.css","webpack://WebComponents/./runestone/parsons/css/prettify.css","webpack://WebComponents/./runestone/matching/css/matching.less","webpack://WebComponents/./runestone/matching/css/matching.css","webpack://WebComponents/./runestone/common/css/variables.less","webpack://WebComponents/./runestone/selectquestion/css/selectquestion.css","webpack://WebComponents/./runestone/timed/css/timed.less","webpack://WebComponents/./runestone/timed/css/timed.css"],"sourcesContent":[".selectwidthauto {\n width:auto !important;\n display: inline-block !important;\n margin: 5px;\n}\n\ninput.input-validation-error {\n border: 1px solid #e80c4d;\n}\n\n\n.dark-mode .fillintheblank_section input[type=\"text\"] {\n color: unset;\n background-color: #333;\n}\n\n.ptx-runestone-container .fitb-feedback {\n margin-top: 10px;\n margin-bottom: 0;\n}\n\n.ptx-runestone-container .fitb-feedback:empty {\n margin-top: 0;\n}",".mchoice label p {\n display: inline;\n font-weight: normal !important;\n}\n\n.mchoice label pre {\n font-weight: normal;\n}\n\n.mchoice fieldset {\n margin-bottom: 0.5em;\n}\n\n.mchoice fieldset legend {\n font-size: small;\n margin-bottom: 0.5em;\n}\n\n.multiplechoice_section label > .para {\n display: inline;\n}\n\n/* The timed assessment strips off the container with the .multiplechoice_section class,\n so we need to apply the same styles to the .timedAssessment class */\n.timedAssessment .mchoice label > .para {\n display: inline;\n}\n\nlabel.mchoice-option {\n display: block;\n}\n\n.ptx-runestone-container input.mchoice-input {\n vertical-align: top;\n margin-right: 0.5em;\n}\n\n.mchoice .alert {\n margin-top: 10px;\n margin-bottom: 0;\n}","div.journal div.latexoutput {\n background-color: var(--outerBackground, #eeeeee);\n padding: 1em;\n margin-bottom: 10px;\n border-radius: 5px;\n}\n\n\n.shortanswer_section .alert {\n margin-bottom: 0;\n}\n\n.shortanswer__timestamp {\n font-size: 0.9em;\n color: var(--grayToWhite, #333);\n}\n\n.journal textarea {\n width: 100%;\n max-width: 100%;\n min-height: 6rem;\n\n padding: 0.75rem 0.9rem;\n font-size: 1rem;\n line-height: 1.5;\n\n border-radius: 8px;\n border: 1px solid #d0d7de;\n background-color: #fff;\n\n transition:\n border-color 0.15s ease,\n box-shadow 0.15s ease;\n\n resize: none;\n overflow: hidden;\n\n font-family: system-ui, -apple-system, BlinkMacSystemFont,\n \"Segoe UI\", Roboto, sans-serif;\n background:\n linear-gradient(#fff, #fff) padding-box,\n linear-gradient(to right, #eaeef2, #eaeef2) border-box;\n}\n\n.journal textarea:focus {\n outline: none;\n border-color: #0969da;\n box-shadow: 0 0 0 3px rgba(9, 105, 218, 0.15);\n}",".clickable {\n cursor: pointer;\n}\n\n.clickable:has(code) {\n padding: 3px;\n display: inline-block;\n}\n\n.clickable-clicked:has(code) {\n box-shadow: 0px 0px 2px 2px rgba(0,100,0,0.75);\n}\n\n.clickable-clicked {\n background-color: var(--clickableBgColor);\n}\n\n.clickable-clicked td {\n background-color: #dad6c1;\n box-shadow: initial;\n}\n\ntable {\n border-collapse: collapse;\n}\n\nth.clickable, td.clickable {\n border: 1px solid black;\n}\n\ntd.clickable-clicked{\n background-color: #dad6c1;\n box-shadow: initial;\n}\n\ntd img {\n margin: 5px;\n}\n\n.clickable-clicked th {\n background-color: #dad6c1;\n box-shadow: initial;\n}\n\nth.clickable-clicked{\n background-color: #dad6c1;\n box-shadow: initial;\n}\n\n.clickable-incorrect,\n.clickable-incorrect th,\n.clickable-incorrect td {\n border: 1px solid red !important;\n background-color: var(--clickableIncorrectBgColor);\n}\n\nimg.clickable-incorrect {\n box-shadow: 0px 0px 2px 2px rgba(100,0,0,0.75);\n}\n\n.clickable-incorrect:has(code) {\n box-shadow: 0px 0px 2px 2px rgba(251, 0, 0, 0.75);\n}\n\n:root {\n --clickableBgColor: yellow;\n --clickableIncorrectBgColor: #ffcccc;\n}\n\n:root.dark-mode {\n --clickableBgColor: rgb(60, 86, 36);\n --clickableIncorrectBgColor: #562c2c;\n\n .clickable-clicked:has(code):not(.clickable-incorrect) {\n box-shadow: 0px 0px 2px 2px rgba(251, 255, 21, 0.75);\n }\n}\n",".ptx-runestone-container,.runestone-sphinx {\n @import (less) url(\"./dragndrop.css\");\n}\n\n@import (less) url(\"../../common/css/variables.less\");",".rsdraggable {\n margin-left: 1%;\n margin-right: 1%;\n margin-top: 5px;\n display: inline;\n float: left;\n text-align: left;\n vertical-align: top;\n background-color: var(--questionBgColor, #efefff);\n padding-bottom: 10px;\n min-width: 28%;\n border: 1px solid var(--componentBorderColor, #efefff);\n box-sizing: border-box;\n}\n\n.dnd-button-container {\n display: flex;\n justify-content: center;\n width: 100%;\n margin-top: 1em;\n}\n\n.drag-button {\n display: inline-block;\n}\n\n.drag-reset {\n background-color: #474949;\n color: white;\n}\n\n.drag-reset:hover {\n background-color: black;\n color: white;\n}\n\n.drop-incorrect {\n border: 1px solid var(--draggableIncorrectBorder, red) !important;\n background-color: var(--draggableIncorrectBg, #f2dede) !important;\n}\n\n.drag-reset:enabled {\n background-color: #474949;\n color: white;\n}\n\n.draggable-drag {\n border-radius: 10px;\n display: block;\n background-color: var(--draggableBgColor);\n border: 1px solid lightgray;\n padding: 10px;\n margin-top: 5px;\n cursor: grab;\n}\n\n.draggable-feedback {\n text-align: left !important;\n clear: both;\n margin-bottom: 0;\n margin-top: 10px;\n}\n\n.draggable-drop {\n border-radius: 10px;\n display: block;\n background-color: var(--dropableBgColor);\n border: 1px solid lightgray;\n padding: 10px;\n margin-top: 5px;\n cursor: grab;\n}\n\n.draggable-container {\n text-align: center;\n}\n\n.possibleDrop {\n border-color: #000000;\n background-color: #CCCCCC;\n}\n\n/*\n * This is a hack to allow us to drop on the drop target when\n * the drop area contains mathjax or or other child elements.\n*/\n.draggable-drop .process-math,\n.draggable-drop .MathJax {\n pointer-events: none;\n cursor: not-allowed;\n}\n\n/* Hide the error message from people but let screen readers see it */\n.vh-dnd-error {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n}\n\n.cardsort-statement {\n text-align: left;\n background-color: var(--questionBgColor);\n padding: 10px;\n margin-bottom: 10px;\n}",".ptx-runestone-container,.runestone-sphinx {\n @import (less) url(\"./parsons.css\");\n\n}\n\n/* make entire block background match background of code */\n:root.dark-mode {\n .ptx-runestone-container .parsons .block:has(code[class*=language-]) {\n background: hsl(0, 0%, 8%);\n }\n}",".parsons-container {\n clear: both;\n}\n\n.parsons .sortable-code-container {\n text-align: center;\n}\n.parsons .sortable-code-container:not(.block) {\n /* Remove text highlighting in widget */\n -webkit-user-select: none;\n -moz-user-select: -moz-none;\n -ms-user-select: none;\n user-select: none;\n}\n.parsons .sortable-code {\n position: static;\n padding-left: 0px;\n margin: 0px 15px;\n display: inline-block;\n text-align: left;\n vertical-align: top;\n}\n.parsons .source,\n.parsons .answer,\n.parsons .answer1,\n.parsons .answer2,\n.parsons .answer3,\n.parsons .answer4 {\n position: relative;\n font-size: 100%;\n list-style: none;\n background-color: var(--questionBgColor, #efefff);\n padding-bottom: 10px;\n padding-left: 0;\n margin-left: 0;\n border: 1px solid var(--componentBorderColor, #efefff);\n}\n.parsons .source {\n background-color: var(--questionBgColor, #efefff);\n}\n.parsons .answer {\n background-color: var(--parsonsBgColor);\n border-color: var(--parsonsBorderColor);\n}\n.parsons .answer.incorrect {\n background-color: var(--parsonsIncorrectBgColor);\n border-color: var(--parsonsIncorrectBorderColor);\n}\n.parsons .answer.correct {\n background-color: var(--parsonsCorrectBgColor);\n border-color: var(--parsonsCorrectBorderColor);\n}\n.parsons .answer1 {\n background: linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box;\n background-size: 1px 100%;\n background-position: 30px 0;\n background-origin: padding-box;\n background-color: var(--parsonsBgColor);\n border-color: var(--parsonsBorderColor);\n}\n.parsons .answer1.incorrect {\n background: linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%;\n background-position: 30px 0;\n background-origin: padding-box;\n background-color: var(--parsonsIncorrectBgColor);\n border-color: var(--parsonsIncorrectBorderColor);\n}\n.parsons .answer1.correct {\n background: linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%;\n background-position: 30px 0;\n background-origin: padding-box;\n background-color: var(--parsonsCorrectBgColor);\n border-color: var(--parsonsCorrectBorderColor);\n}\n.parsons .answer2 {\n background: linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0;\n background-origin: padding-box, padding-box;\n background-color: var(--parsonsBgColor);\n border-color: var(--parsonsBorderColor);\n}\n.parsons .answer2.incorrect {\n background: linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0;\n background-origin: padding-box, padding-box;\n background-color: var(--parsonsIncorrectBgColor);\n border-color: var(--parsonsIncorrectBorderColor);\n}\n.parsons .answer2.correct {\n background: linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0;\n background-origin: padding-box, padding-box;\n background-color: var(--parsonsCorrectBgColor);\n border-color: var(--parsonsCorrectBorderColor);\n}\n.parsons .answer3 {\n background: linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0;\n background-origin: padding-box, padding-box, padding-box;\n background-color: var(--parsonsBgColor);\n border-color: var(--parsonsBorderColor);\n}\n.parsons .answer3.incorrect {\n background: linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0;\n background-origin: padding-box, padding-box, padding-box;\n background-color: var(--parsonsIncorrectBgColor);\n border-color: var(--parsonsIncorrectBorderColor);\n}\n.parsons .answer3.correct {\n background: linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0;\n background-origin: padding-box, padding-box, padding-box;\n background-color: var(--parsonsCorrectBgColor);\n border-color: var(--parsonsCorrectBorderColor);\n}\n.parsons .answer4 {\n background: linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsBgColor);\n border-color: var(--parsonsBorderColor);\n}\n.parsons .answer4.incorrect {\n background: linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsIncorrectBgColor);\n border-color: var(--parsonsIncorrectBorderColor);\n}\n.parsons .answer4.correct {\n background: linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsCorrectBgColor);\n border-color: var(--parsonsCorrectBorderColor);\n}\n /* The following styles are for the 5th and 6th indentation levels, if applicable */\n.parsons .answer5 {\n background: linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0, 150px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsBgColor);\n border-color: var(--parsonsBorderColor);\n}\n.parsons .answer5.incorrect {\n background: linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0, 150px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsIncorrectBgColor);\n border-color: var(--parsonsIncorrectBorderColor);\n}\n.parsons .answer5.correct {\n background: linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0, 150px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsCorrectBgColor);\n border-color: var(--parsonsCorrectBorderColor);\n}\n.parsons .answer6 {\n background: linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0, 150px 0, 180px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsBgColor);\n border-color: var(--parsonsBorderColor);\n}\n.parsons .answer6.incorrect {\n background: linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0, 150px 0, 180px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsIncorrectBgColor);\n border-color: var(--parsonsIncorrectBorderColor);\n}\n.parsons .answer6.correct {\n background: linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0, 150px 0, 180px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsCorrectBgColor);\n border-color: var(--parsonsCorrectBorderColor);\n}\n.parsons .block {\n position: absolute;\n -moz-border-radius: 10px;\n -webkit-border-radius: 10px;\n border-radius: 10px;\n background-color: var(--background, #efefef);\n border: 1px solid #d3d3d3;\n padding: 5px 10px;\n margin-top: 5px;\n overflow: hidden;\n cursor: move;\n}\n.parsons .block.disabled {\n opacity: 0.3;\n}\n.parsons .block.down {\n border: 2px solid black;\n padding: 4px 9px;\n}\n.parsons .block.up {\n border: 2px solid black;\n padding: 4px 9px;\n background-color: white;\n box-shadow: 3px 3px 4px black;\n}\n.parsons {\n display: block;\n}\n.parsons .block {\n clear: both;\n float: left;\n /*background-color: transparent;*/\n}\n\n.parsons .sortable-code code {\n clear: both;\n float: left;\n background-color: transparent;\n white-space: pre;\n}\n\n.parsons .sortable-code code:empty {\n height: 1.25em; /* force some height for empty lines */\n}\n\n.parsons .block p {\n margin: 0;\n}\n.parsons .block,\n.parsons .block:before,\n.parsons .block:after {\n box-sizing: content-box;\n}\n.parsons .indent1 {\n margin-left: 30px;\n}\n.parsons .indent2 {\n margin-left: 60px;\n}\n.parsons .indent3 {\n margin-left: 90px;\n}\n.parsons .indent4 {\n margin-left: 120px;\n}\n.parsons .indent5 {\n margin-left: 150px;\n}\n.parsons .indent6 {\n margin-left: 180px;\n}\n.parsons .indent7 {\n margin-left: 210px;\n}\n.parsons .indent8 {\n margin-left: 240px;\n}\n.parsons .correct {\n border: 1px solid #d6e9c6;\n background: none;\n background-color: var(--parsonsCorrectBgColor);\n}\n.parsons .indentLeft,\n.parsons .indentRight {\n border: 2px solid #ffcc00;\n padding: 4px 9px;\n background-color: #fff0b3;\n}\n.parsons .indentLeft {\n background-image: url(\"./images/parsons-ll.svg\"),\n url(\"./images/parsons-rl.svg\");\n background-repeat: no-repeat, no-repeat;\n background-position: left center, right center;\n}\n.parsons .indentRight {\n background-image: url(\"./images/parsons-lr.svg\"),\n url(\"./images/parsons-rr.svg\");\n background-repeat: no-repeat, no-repeat;\n background-position: left center, right center;\n}\n.parsons .incorrectPosition {\n background-color: #ffbaba;\n border: 1px solid red;\n}\n.parsons .paired {\n position: absolute;\n -moz-border-radius: 10px;\n -webkit-border-radius: 10px;\n border-radius: 10px;\n background-color: transparent;\n border-left: 11px solid #b8b8f2;\n border-right: 11px solid #b8b8f2;\n border-top: 1px solid #b8b8f2;\n border-bottom: 1px solid #b8b8f2;\n margin-top: 5px;\n overflow: hidden;\n}\n.parsons {\n border-left: 0;\n border-right: 0;\n border-radius: 0;\n}\n.parsons .parsons-text {\n max-width: var(--contentWidthRegular);\n margin-left: auto;\n margin-right: auto;\n}\n\n.parsons .parsons-img {\n display: inline-block;\n text-align: center;\n width: 100%;\n}\n\n.parsons .parsons-controls {\n max-width: var(--contentWidthRegular);\n margin-left: auto;\n margin-right: auto;\n text-align: center;\n margin-top: 10px;\n}\n\n.parsons [role=\"tooltip\"] {\n max-width: var(--contentWidthRegular);\n margin-left: auto;\n margin-right: auto;\n margin-top: 5px;\n margin-bottom: 5px;\n padding: 0px 10px;\n top: 0;\n text-align: center;\n font-style: italic;\n}\n\n.block-label {\n font-size: 90%;\n color: #7e7ee7;\n vertical-align: top;\n white-space: pre;\n}\n.right-label {\n padding: 0.2em 0em 0.3em 0.6em;\n}\n.left-label {\n padding: 0.2em 0.6em 0.3em 0em;\n}\n\n.labels {\n padding-top: 2px;\n display: inline-block;\n vertical-align: top;\n}\n\n.runestone .lines {\n display: inline-block;\n align-self: left;\n}\n\n.border_left {\n border-left: 1px solid #b0b0b0;\n}\n\n.block {\n display: flex;\n align-items: stretch;\n align-content: stretch;\n}\n\n.parsons,\n.parsons .sortable-code-container,\n.cd_section {\n max-width: none;\n}\n\n#timed_Test .pagination {\n margin: 5px 0;\n}\n\n/* override red from bootstrap */\n.parsons .block code {\n color: black;\n}\n\n/* CodeTailor-related CSS for Parsons START */\n.parsons .placeholder-block.disabled.block {\n font-style: italic;\n background-color: white;\n border-style: dashed;\n padding: 20px 10px;\n opacity: 1;\n}\n\n.parsons .settled-block.disabled.block {\n border: 1px solid black;\n background-color: #afe1af;\n opacity: 1;\n}\n\n.parsons .settled-block.disabled.block:hover .settled-tooltip {\n visibility: visible;\n opacity: 1;\n}\n\n.parsons .settled-block.disabled.block .settled-tooltip {\n visibility: hidden;\n position: sticky;\n background-color: #555;\n font-size: 0.75rem;\n color: #fff;\n text-align: center;\n padding: 2px 8px;\n border-radius: 6px;\n z-index: 1;\n opacity: 0;\n transition: opacity .6s;\n left: 100%; \n vertical-align: middle; \n}\n.parsons .settled-block .block-label {\n color: transparent;\n}\n\n.parsons .alert {\n margin-top: 10px;\n margin-bottom: 0;\n}\n\n\n.parsons .placeholder-block .lines {\n display: none;\n}\n\n.parsons .placeholder-block.hide {\n display: none;\n}\n\n\n.placeholder-block .labels {\n display: none;\n}\n\n.settled-block .labels .block-label {\n color:transparent;\n}\n/* CodeTailor-related CSS for Parsons END */",".prettyprint {\n .str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun{color:#660}.pln{color:#000}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec{color:#606}pre.prettyprint{padding:2px;border:1px solid #888}@media print{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun{color:#440}.pln{color:#000}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}\n}",".ptx-runestone-container,\n.runestone-sphinx {\n @import (less) url(\"./matching.css\");\n}\n\n@import (less) url(\"../../common/css/variables.less\");","* {\n box-sizing: border-box;\n}\n\nbody {\n font-family: sans-serif;\n padding: 20px;\n margin: 0;\n}\n\nh2 {\n margin-bottom: 0.5em;\n}\n\n/* Main wrapper for each matching component */\n[data-component=\"matching\"] {\n margin: 2rem 0;\n font-family: sans-serif;\n}\n\n.matching-workspace {\n display: flex;\n justify-content: space-between;\n position: relative;\n max-width: 1000px;\n width: 100%;\n margin: 0 auto 1rem;\n background: var(--componentBgColor);\n}\n\n.left-column,\n.right-column {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 12px;\n padding: 10px;\n position: relative;\n z-index: 1;\n max-width: 25vw;\n}\n\n\n.left-column img,\n.right-column img {\n max-width: 25vw;\n /* Ensure images do not exceed 25% of the viewport width */\n}\n\n.box {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 120px;\n padding: 10px 14px;\n min-height: 50px;\n max-width: 100%;\n background: var(--dropableBgColor, #f9f9f9);\n border: 2px solid var(--boxBorderColor);\n border-radius: 8px;\n text-align: center;\n font-weight: bold;\n user-select: none;\n cursor: grab;\n text-align: center;\n touch-action: none;\n /* Prevents scrolling during tap+drag */\n}\n\n.matching-workspace,\n.left-column,\n.right-column,\n.box,\nbody {\n user-select: none;\n -webkit-user-select: none; /* for iOS/Safari */\n}\n\n.box mjx-container {\n font-size: 1em;\n}\n\n.box:focus {\n outline: 3px solid #3498db;\n}\n\n.box.selected {\n outline: 3px dashed #27ae60;\n}\n\n.connector-svg {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: 0;\n background: var(--componentBgColor);\n}\n\n.line {\n stroke: var(--dragLineColor);\n ;\n stroke-width: 3;\n cursor: pointer;\n pointer-events: auto;\n transition: stroke 0.2s ease, stroke-width 0.2s ease;\n}\n\n.line.correct {\n stroke: green;\n stroke-width: 3;\n}\n\n.line.incorrect {\n stroke: #bf1521;\n stroke-width: 2;\n stroke-dasharray: 5 5;\n}\n\n.line.highlighted {\n stroke: #3cd6e7;\n stroke-width: 3;\n}\n\n.line.faded {\n stroke: #ccc;\n stroke-width: 1;\n}\n\n.line:focus,\n.line:hover {\n stroke: #3498db;\n stroke-dasharray: 6 4;\n /* 6px dash, 4px gap */\n stroke-width: 5;\n outline: none;\n}\n\n.conn-list {\n max-width: 800px;\n margin: 0 auto 1rem;\n padding: 10px;\n background: var(--componentBgColor);\n border: 1px solid #ccc;\n border-radius: 6px;\n font-size: 14px;\n}\n\n.conn-entry {\n margin: 4px 0;\n font-family: monospace;\n}\n\nbutton {\n display: inline-block;\n margin: 0.5rem;\n font-size: 1rem;\n padding: 8px 16px;\n border: none;\n border-radius: 6px;\n cursor: grab;\n transition: background 0.2s ease-in-out;\n}\n\nbutton:hover {\n background: #2980b9;\n}\n\n.aria-live {\n position: absolute;\n left: -9999px;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n}\n\n.control-div {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 10px;\n margin-top: 1rem;\n}\n\n.control-div .help-button {\n background: #2c3e50;\n color: #ecf0f1;\n width: 32px;\n height: 32px;\n padding: 0;\n border-radius: 50%;\n font-size: 1.2rem;\n line-height: 32px;\n text-align: center;\n cursor: pointer;\n}\n\n.control-div .help-button:hover {\n background: #34495e;\n}\n\n/* modal overlay */\n.help-modal {\n display: none;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: rgba(0, 0, 0, 0.5);\n align-items: center;\n justify-content: center;\n z-index: 10;\n}\n\n/* modal content box */\n.help-modal-content {\n\n background-color: var(--questionBgColor);\n padding: 1rem 1.5rem;\n border-radius: 6px;\n max-width: 80%;\n max-height: 80%;\n overflow: auto;\n position: relative;\n}\n\n/* close button */\n.help-modal-content .help-close {\n position: absolute;\n top: 0.5rem;\n right: 0.5rem;\n background: transparent;\n border: none;\n font-size: 1.5rem;\n cursor: pointer;\n color: red;\n}\n\n/* help text */\n.help-modal-content .help-text {\n margin-top: 1.5rem;\n font-size: 1rem;\n line-height: 1.4;\n}\n\n.match_question {\n background-color: var(--questionBgColor);\n padding: 10px;\n margin-bottom: 10px;\n}\n\n.match_feedback {\n background-color: var(--parsonsIncorrectBgColor);\n padding: 10px;\n margin-top: 10px;\n margin-bottom: 10px;\n border-radius: 5px;\n}",":root {\n --draggableBgColor: #EFEFEF;\n --dropableBgColor: #DDDDDD;\n --draggableIncorrectBorder: red;\n --draggableIncorrectBg: #f2dede;\n --dragLineColor: #000000;\n --boxBorderColor: #000000;\n\n}\n\n:root.dark-mode,\n[data-theme=\"dark\"] {\n --draggableBgColor: #393434;\n --dropableBgColor: #2a2d30;\n --draggableIncorrectBorder: red;\n --draggableIncorrectBg: #6d2d2d;\n --dragLineColor: #ffffff;\n --boxBorderColor: #ffffff;\n\n}\n","#component-preview {\n margin-right: 20px;\n position: fixed;\n right: 0px;\n max-height: 100%;\n overflow-y: scroll;\n top: 0px;\n padding-top: 60px;\n}\n\n.toggle-preview {\n border: 4px solid;\n border-radius: 10px;\n background-color: azure;\n padding-top: 10px;\n box-shadow: 10px 5px 5px gray;\n}\n",".ptx-runestone-container,.runestone-sphinx {\n @import (less) url(\"./timed.css\");\n}\n","/* TIMED ASSESSMENT BUTTON STYLES */\nul#pageNums,\nul#pageNums li {\n text-align: center;\n padding: 10px 0;\n}\n\n.pagination>li>a:hover {\n background-color: #eee !important;\n color: #000 !important;\n}\n\n.flagBtn {\n /* documentation */\n background-color: #ED9C59 !important;\n border: 3px solid #CE5718;\n border-radius: 5px;\n color: #030201 !important;\n cursor: pointer;\n width: 150;\n height: 115;\n text-align: center;\n text-decoration: none;\n display: ruby;\n font-size: 15px;\n}\n\n/* The following override styles in Bootstrap distribution file (bootstrap.min.css) */\n\n.pagination>.active>a,\n.pagination>.active>span {\n background-color: #428bca !important;\n color: #ffffff !important;\n}\n\n.col-md-6-override {\n text-align: center !important;\n max-width: 100% !important;\n}\n\n/* end */\n\n.pagination>.answered>a,\n.pagination>.answered>span {\n background-color: #eee;\n color: #000;\n}\n\n.pagination>.broken>a,\n.pagination>.broken>span {\n background-color: #f99;\n color: #000;\n}\n\n.pagination>.toolate>a,\n.pagination>.toolate>span {\n background-color: rgb(236, 203, 54);\n color: #000;\n}\n\n.pagination>.flagcolor>a,\n.pagination>.flagcolor>span {\n background-color: #ED9C59;\n color: #000;\n}\n\np.examwarning {\n width: 50%;\n margin-left: auto;\n margin-right: auto;\n background-color: rgba(243, 156, 156, 0.822);\n border: solid black;\n border-radius: 5px;\n border-width: 2px;\n padding: 5px;\n}\n\n.pagination>.correctCount>a,\n.pagination>.correctCount>span {\n background-color: #dff0d8;\n color: #000000;\n border-color: #000000;\n}\n\n.pagination>.skippedCount>a,\n.pagination>.skippedCount>span {\n background-color: #fcf8e3;\n color: #000000;\n border-color: #000000;\n}\n\n.pagination>.incorrectCount>a,\n.pagination>.incorrectCount>span {\n background-color: #f2dede;\n color: #000000;\n border-color: #000000;\n}\n\n.switchcontainer {\n height: 1000px;\n overflow: auto;\n}"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/_static/prefix-115.83df5da0966564d5.css.map.gz b/_static/prefix-115.83df5da0966564d5.css.map.gz deleted file mode 100644 index 79b5afd29bd94ebb7cecbef5f6dede9d646d9da3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8780 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 Cehp6m diff --git a/_static/prefix-131.b184379d0dc5871b.css b/_static/prefix-131.b184379d0dc5871b.css old mode 100644 new mode 100755 diff --git a/_static/prefix-131.b184379d0dc5871b.css.gz b/_static/prefix-131.b184379d0dc5871b.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-131.b184379d0dc5871b.css.map b/_static/prefix-131.b184379d0dc5871b.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-131.b184379d0dc5871b.css.map.gz b/_static/prefix-131.b184379d0dc5871b.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-168.1c4deaed00ca1f5e.css b/_static/prefix-168.1c4deaed00ca1f5e.css old mode 100644 new mode 100755 diff --git a/_static/prefix-168.1c4deaed00ca1f5e.css.gz b/_static/prefix-168.1c4deaed00ca1f5e.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-168.1c4deaed00ca1f5e.css.map b/_static/prefix-168.1c4deaed00ca1f5e.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-168.1c4deaed00ca1f5e.css.map.gz b/_static/prefix-168.1c4deaed00ca1f5e.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-186.0d47de180767fda9.css b/_static/prefix-186.0d47de180767fda9.css old mode 100644 new mode 100755 diff --git a/_static/prefix-186.0d47de180767fda9.css.map b/_static/prefix-186.0d47de180767fda9.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-186.0d47de180767fda9.css.map.gz b/_static/prefix-186.0d47de180767fda9.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-198.86b6b2a70a576922.css b/_static/prefix-198.86b6b2a70a576922.css old mode 100644 new mode 100755 diff --git a/_static/prefix-198.86b6b2a70a576922.css.gz b/_static/prefix-198.86b6b2a70a576922.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-198.86b6b2a70a576922.css.map b/_static/prefix-198.86b6b2a70a576922.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-198.86b6b2a70a576922.css.map.gz b/_static/prefix-198.86b6b2a70a576922.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-249.6ca19da539a8ed1a.css b/_static/prefix-249.6ca19da539a8ed1a.css old mode 100644 new mode 100755 diff --git a/_static/prefix-249.6ca19da539a8ed1a.css.gz b/_static/prefix-249.6ca19da539a8ed1a.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-249.6ca19da539a8ed1a.css.map b/_static/prefix-249.6ca19da539a8ed1a.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-249.6ca19da539a8ed1a.css.map.gz b/_static/prefix-249.6ca19da539a8ed1a.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-268.c9e33e1350d18af9.css b/_static/prefix-268.c9e33e1350d18af9.css new file mode 100755 index 0000000..100ce83 --- /dev/null +++ b/_static/prefix-268.c9e33e1350d18af9.css @@ -0,0 +1,2 @@ +.selectwidthauto{display:inline-block!important;margin:5px;width:auto!important}input.input-validation-error{border:1px solid #e80c4d}.dark-mode .fillintheblank_section input[type=text]{background-color:#333;color:unset}.ptx-runestone-container .fitb-feedback{margin-bottom:0;margin-top:10px}.ptx-runestone-container .fitb-feedback:empty{margin-top:0}.mchoice label p{display:inline;font-weight:400!important}.mchoice label pre{font-weight:400}.mchoice fieldset{margin-bottom:.5em}.mchoice fieldset legend{font-size:small;margin-bottom:.5em}.multiplechoice_section label>.para,.timedAssessment .mchoice label>.para{display:inline}label.mchoice-option{display:block}.ptx-runestone-container input.mchoice-input{margin-right:.5em;vertical-align:top}.mchoice .alert{margin-bottom:0;margin-top:10px}div.journal div.latexoutput{background-color:var(--outerBackground,#eee);border-radius:5px;margin-bottom:10px;padding:1em}.shortanswer_section .alert{margin-bottom:0}.shortanswer__timestamp{color:var(--grayToWhite,#333);font-size:.9em}.journal textarea{background-color:#fff;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(90deg,#eaeef2,#eaeef2) border-box;border:1px solid #d0d7de;border-radius:8px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;line-height:1.5;max-width:100%;min-height:6rem;overflow:hidden;padding:.75rem .9rem;resize:none;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.journal textarea:focus{border-color:#0969da;box-shadow:0 0 0 3px rgba(9,105,218,.15);outline:none}.shortanswer__feedback,.shortanswer__rendered-answer-div{margin-top:1rem}.clickable{cursor:pointer}.clickable:has(code){display:inline-block;padding:3px}.clickable-clicked:has(code){box-shadow:0 0 2px 2px rgba(0,100,0,.75)}.clickable-clicked{background-color:var(--clickableBgColor)}.clickable-clicked td{background-color:#dad6c1;box-shadow:none}table{border-collapse:collapse}td.clickable,th.clickable{border:1px solid #000}td.clickable-clicked{background-color:#dad6c1;box-shadow:none}td img{margin:5px}.clickable-clicked th,th.clickable-clicked{background-color:#dad6c1;box-shadow:none}.clickable-incorrect,.clickable-incorrect td,.clickable-incorrect th{background-color:var(--clickableIncorrectBgColor);border:1px solid red!important}img.clickable-incorrect{box-shadow:0 0 2px 2px rgba(100,0,0,.75)}.clickable-incorrect:has(code){box-shadow:0 0 2px 2px rgba(251,0,0,.75)}:root{--clickableBgColor:#ff0;--clickableIncorrectBgColor:#fcc}:root.dark-mode{--clickableBgColor:#3c5624;--clickableIncorrectBgColor:#562c2c;.clickable-clicked:has(code):not(.clickable-incorrect){box-shadow:0 0 2px 2px rgba(251,255,21,.75)}}.ptx-runestone-container .rsdraggable,.runestone-sphinx .rsdraggable{background-color:var(--questionBgColor,#efefff);border:1px solid var(--componentBorderColor,#efefff);box-sizing:border-box;display:inline;float:left;margin-left:1%;margin-right:1%;margin-top:5px;min-width:28%;padding-bottom:10px;text-align:left;vertical-align:top}.ptx-runestone-container .dnd-button-container,.runestone-sphinx .dnd-button-container{display:flex;justify-content:center;margin-top:1em;width:100%}.ptx-runestone-container .drag-button,.runestone-sphinx .drag-button{display:inline-block}.ptx-runestone-container .drag-reset,.runestone-sphinx .drag-reset{background-color:#474949;color:#fff}.ptx-runestone-container .drag-reset:hover,.runestone-sphinx .drag-reset:hover{background-color:#000;color:#fff}.ptx-runestone-container .drop-incorrect,.runestone-sphinx .drop-incorrect{background-color:var(--draggableIncorrectBg,#f2dede)!important;border:1px solid var(--draggableIncorrectBorder,red)!important}.ptx-runestone-container .drag-reset:enabled,.runestone-sphinx .drag-reset:enabled{background-color:#474949;color:#fff}.ptx-runestone-container .draggable-drag,.runestone-sphinx .draggable-drag{background-color:var(--draggableBgColor);border:1px solid #d3d3d3;border-radius:10px;cursor:grab;display:block;margin-top:5px;padding:10px}.ptx-runestone-container .draggable-feedback,.runestone-sphinx .draggable-feedback{clear:both;margin-bottom:0;margin-top:10px;text-align:left!important}.ptx-runestone-container .draggable-drop,.runestone-sphinx .draggable-drop{background-color:var(--dropableBgColor);border:1px solid #d3d3d3;border-radius:10px;cursor:grab;display:block;margin-top:5px;padding:10px}.ptx-runestone-container .draggable-container,.runestone-sphinx .draggable-container{text-align:center}.ptx-runestone-container .possibleDrop,.runestone-sphinx .possibleDrop{background-color:#ccc;border-color:#000}.ptx-runestone-container .draggable-drop .MathJax,.ptx-runestone-container .draggable-drop .process-math,.runestone-sphinx .draggable-drop .MathJax,.runestone-sphinx .draggable-drop .process-math{cursor:not-allowed;pointer-events:none}.ptx-runestone-container .vh-dnd-error,.runestone-sphinx .vh-dnd-error{clip:rect(0,0,0,0);border:0;height:1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.ptx-runestone-container .cardsort-statement,.runestone-sphinx .cardsort-statement{background-color:var(--questionBgColor);margin-bottom:10px;padding:10px;text-align:left}.ptx-runestone-container .parsons-container,.runestone-sphinx .parsons-container{clear:both}.ptx-runestone-container .parsons .sortable-code-container,.runestone-sphinx .parsons .sortable-code-container{text-align:center}.ptx-runestone-container .parsons .sortable-code-container:not(.block),.runestone-sphinx .parsons .sortable-code-container:not(.block){-webkit-user-select:none;-moz-user-select:-moz-none;-ms-user-select:none;user-select:none}.ptx-runestone-container .parsons .sortable-code,.runestone-sphinx .parsons .sortable-code{display:inline-block;margin:0 15px;padding-left:0;position:static;text-align:left;vertical-align:top}.ptx-runestone-container .parsons .answer,.ptx-runestone-container .parsons .answer1,.ptx-runestone-container .parsons .answer2,.ptx-runestone-container .parsons .answer3,.ptx-runestone-container .parsons .answer4,.ptx-runestone-container .parsons .source,.runestone-sphinx .parsons .answer,.runestone-sphinx .parsons .answer1,.runestone-sphinx .parsons .answer2,.runestone-sphinx .parsons .answer3,.runestone-sphinx .parsons .answer4,.runestone-sphinx .parsons .source{background-color:var(--questionBgColor,#efefff);border:1px solid var(--componentBorderColor,#efefff);font-size:100%;list-style:none;margin-left:0;padding-bottom:10px;padding-left:0;position:relative}.ptx-runestone-container .parsons .source,.runestone-sphinx .parsons .source{background-color:var(--questionBgColor,#efefff)}.ptx-runestone-container .parsons .answer,.runestone-sphinx .parsons .answer{background-color:var(--parsonsBgColor);border-color:var(--parsonsBorderColor)}.ptx-runestone-container .parsons .answer.incorrect,.runestone-sphinx .parsons .answer.incorrect{background-color:var(--parsonsIncorrectBgColor);border-color:var(--parsonsIncorrectBorderColor)}.ptx-runestone-container .parsons .answer.correct,.runestone-sphinx .parsons .answer.correct{background-color:var(--parsonsCorrectBgColor);border-color:var(--parsonsCorrectBorderColor)}.ptx-runestone-container .parsons .answer1,.runestone-sphinx .parsons .answer1{background:linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box;background-color:var(--parsonsBgColor);background-origin:padding-box;background-position:30px 0;background-size:1px 100%;border-color:var(--parsonsBorderColor)}.ptx-runestone-container .parsons .answer1.incorrect,.runestone-sphinx .parsons .answer1.incorrect{background:linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsIncorrectBgColor);background-origin:padding-box;background-position:30px 0;background-size:1px 100%;border-color:var(--parsonsIncorrectBorderColor)}.ptx-runestone-container .parsons .answer1.correct,.runestone-sphinx .parsons .answer1.correct{background:linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsCorrectBgColor);background-origin:padding-box;background-position:30px 0;background-size:1px 100%;border-color:var(--parsonsCorrectBorderColor)}.ptx-runestone-container .parsons .answer2,.runestone-sphinx .parsons .answer2{background:linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box;background-color:var(--parsonsBgColor);background-origin:padding-box,padding-box;background-position:30px 0,60px 0;background-size:1px 100%,1px 100%;border-color:var(--parsonsBorderColor)}.ptx-runestone-container .parsons .answer2.incorrect,.runestone-sphinx .parsons .answer2.incorrect{background:linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsIncorrectBgColor);background-origin:padding-box,padding-box;background-position:30px 0,60px 0;background-size:1px 100%,1px 100%;border-color:var(--parsonsIncorrectBorderColor)}.ptx-runestone-container .parsons .answer2.correct,.runestone-sphinx .parsons .answer2.correct{background:linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsCorrectBgColor);background-origin:padding-box,padding-box;background-position:30px 0,60px 0;background-size:1px 100%,1px 100%;border-color:var(--parsonsCorrectBorderColor)}.ptx-runestone-container .parsons .answer3,.runestone-sphinx .parsons .answer3{background:linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box;background-color:var(--parsonsBgColor);background-origin:padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0;background-size:1px 100%,1px 100%,1px 100%;border-color:var(--parsonsBorderColor)}.ptx-runestone-container .parsons .answer3.incorrect,.runestone-sphinx .parsons .answer3.incorrect{background:linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsIncorrectBgColor);background-origin:padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0;background-size:1px 100%,1px 100%,1px 100%;border-color:var(--parsonsIncorrectBorderColor)}.ptx-runestone-container .parsons .answer3.correct,.runestone-sphinx .parsons .answer3.correct{background:linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsCorrectBgColor);background-origin:padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0;background-size:1px 100%,1px 100%,1px 100%;border-color:var(--parsonsCorrectBorderColor)}.ptx-runestone-container .parsons .answer4,.runestone-sphinx .parsons .answer4{background:linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box;background-color:var(--parsonsBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsBorderColor)}.ptx-runestone-container .parsons .answer4.incorrect,.runestone-sphinx .parsons .answer4.incorrect{background:linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsIncorrectBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsIncorrectBorderColor)}.ptx-runestone-container .parsons .answer4.correct,.runestone-sphinx .parsons .answer4.correct{background:linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsCorrectBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsCorrectBorderColor)}.ptx-runestone-container .parsons .answer5,.runestone-sphinx .parsons .answer5{background:linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box;background-color:var(--parsonsBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0,150px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsBorderColor)}.ptx-runestone-container .parsons .answer5.incorrect,.runestone-sphinx .parsons .answer5.incorrect{background:linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsIncorrectBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0,150px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsIncorrectBorderColor)}.ptx-runestone-container .parsons .answer5.correct,.runestone-sphinx .parsons .answer5.correct{background:linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsCorrectBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0,150px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsCorrectBorderColor)}.ptx-runestone-container .parsons .answer6,.runestone-sphinx .parsons .answer6{background:linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsBorderColor),var(--parsonsBorderColor)) no-repeat border-box;background-color:var(--parsonsBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0,150px 0,180px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsBorderColor)}.ptx-runestone-container .parsons .answer6.incorrect,.runestone-sphinx .parsons .answer6.incorrect{background:linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsIncorrectBorderColor),var(--parsonsIncorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsIncorrectBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0,150px 0,180px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsIncorrectBorderColor)}.ptx-runestone-container .parsons .answer6.correct,.runestone-sphinx .parsons .answer6.correct{background:linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box,linear-gradient(var(--parsonsCorrectBorderColor),var(--parsonsCorrectBorderColor)) no-repeat border-box;background-color:var(--parsonsCorrectBgColor);background-origin:padding-box,padding-box,padding-box,padding-box;background-position:30px 0,60px 0,90px 0,120px 0,150px 0,180px 0;background-size:1px 100%,1px 100%,1px 100%,1px 100%;border-color:var(--parsonsCorrectBorderColor)}.ptx-runestone-container .parsons .block,.runestone-sphinx .parsons .block{background-color:var(--background,#efefef);border:1px solid #d3d3d3;-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;cursor:move;margin-top:5px;overflow:hidden;padding:5px 10px;position:absolute}.ptx-runestone-container .parsons .block.disabled,.runestone-sphinx .parsons .block.disabled{opacity:.3}.ptx-runestone-container .parsons .block.down,.runestone-sphinx .parsons .block.down{border:2px solid #000;padding:4px 9px}.ptx-runestone-container .parsons .block.up,.runestone-sphinx .parsons .block.up{background-color:#fff;border:2px solid #000;box-shadow:3px 3px 4px #000;padding:4px 9px}.ptx-runestone-container .parsons,.runestone-sphinx .parsons{display:block}.ptx-runestone-container .parsons .block,.runestone-sphinx .parsons .block{clear:both;float:left}.ptx-runestone-container .parsons .sortable-code code,.runestone-sphinx .parsons .sortable-code code{background-color:transparent;clear:both;float:left;white-space:pre}.ptx-runestone-container .parsons .sortable-code code:empty,.runestone-sphinx .parsons .sortable-code code:empty{height:1.25em}.ptx-runestone-container .parsons .block p,.runestone-sphinx .parsons .block p{margin:0}.ptx-runestone-container .parsons .block,.ptx-runestone-container .parsons .block:after,.ptx-runestone-container .parsons .block:before,.runestone-sphinx .parsons .block,.runestone-sphinx .parsons .block:after,.runestone-sphinx .parsons .block:before{box-sizing:content-box}.ptx-runestone-container .parsons .indent1,.runestone-sphinx .parsons .indent1{margin-left:30px}.ptx-runestone-container .parsons .indent2,.runestone-sphinx .parsons .indent2{margin-left:60px}.ptx-runestone-container .parsons .indent3,.runestone-sphinx .parsons .indent3{margin-left:90px}.ptx-runestone-container .parsons .indent4,.runestone-sphinx .parsons .indent4{margin-left:120px}.ptx-runestone-container .parsons .indent5,.runestone-sphinx .parsons .indent5{margin-left:150px}.ptx-runestone-container .parsons .indent6,.runestone-sphinx .parsons .indent6{margin-left:180px}.ptx-runestone-container .parsons .indent7,.runestone-sphinx .parsons .indent7{margin-left:210px}.ptx-runestone-container .parsons .indent8,.runestone-sphinx .parsons .indent8{margin-left:240px}.ptx-runestone-container .parsons .correct,.runestone-sphinx .parsons .correct{background:none;background-color:var(--parsonsCorrectBgColor);border:1px solid #d6e9c6}.ptx-runestone-container .parsons .indentLeft,.ptx-runestone-container .parsons .indentRight,.runestone-sphinx .parsons .indentLeft,.runestone-sphinx .parsons .indentRight{background-color:#fff0b3;border:2px solid #fc0;padding:4px 9px}.ptx-runestone-container .parsons .indentLeft,.runestone-sphinx .parsons .indentLeft{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSI2MDAiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIGZpbGw9IiNGQzAiIGQ9Ik0xMiAwSDB2NjAwaDEyVjMxMEwyIDMwMGwxMC0xMHoiLz48cGF0aCBkPSJtNSAzMDAgNy03di0zTDIgMzAwbDEwIDEwdi0zeiIvPjwvc3ZnPg==),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSI2MDAiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIGQ9Ik0xMCAzMDd2M0wwIDMwMGwxMC0xMHYzbC03IDd6Ii8+PHBhdGggZmlsbD0iI0ZDMCIgZD0iTTEyIDMwOXYtMThsLTkgOXoiLz48cGF0aCBmaWxsPSIjRkMwIiBkPSJNMTAgMGgydjYwMGgtMnoiLz48L3N2Zz4=);background-position:0,100%;background-repeat:no-repeat,no-repeat}.ptx-runestone-container .parsons .indentRight,.runestone-sphinx .parsons .indentRight{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSI2MDAiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIGQ9Im05IDMwMC03LTd2LTNsMTAgMTAtMTAgMTB2LTN6Ii8+PHBhdGggZmlsbD0iI0ZDMCIgZD0ibTkgMzAwLTktOXYxOHoiLz48cGF0aCBmaWxsPSIjRkMwIiBkPSJNMCAwaDJ2NjAwSDB6Ii8+PC9zdmc+),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSI2MDAiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwYXRoIGZpbGw9IiNGQzAiIGQ9Im0wIDI5MCAxMCAxMC0xMCAxMHYyOTBoMTJWMEgweiIvPjxwYXRoIGQ9Ik0wIDMwN3YzbDEwLTEwLTEwLTEwdjNsNyA3eiIvPjwvc3ZnPg==);background-position:0,100%;background-repeat:no-repeat,no-repeat}.ptx-runestone-container .parsons .incorrectPosition,.runestone-sphinx .parsons .incorrectPosition{background-color:#ffbaba;border:1px solid red}.ptx-runestone-container .parsons .paired,.runestone-sphinx .parsons .paired{background-color:transparent;border-color:#b8b8f2;-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;border-style:solid;border-width:1px 11px;margin-top:5px;overflow:hidden;position:absolute}.ptx-runestone-container .parsons,.runestone-sphinx .parsons{border-left:0;border-radius:0;border-right:0}.ptx-runestone-container .parsons .parsons-text,.runestone-sphinx .parsons .parsons-text{margin-left:auto;margin-right:auto;max-width:var(--contentWidthRegular)}.ptx-runestone-container .parsons .parsons-img,.runestone-sphinx .parsons .parsons-img{display:inline-block;text-align:center;width:100%}.ptx-runestone-container .parsons .parsons-controls,.runestone-sphinx .parsons .parsons-controls{margin-left:auto;margin-right:auto;margin-top:10px;max-width:var(--contentWidthRegular);text-align:center}.ptx-runestone-container .parsons [role=tooltip],.runestone-sphinx .parsons [role=tooltip]{font-style:italic;margin:5px auto;max-width:var(--contentWidthRegular);padding:0 10px;text-align:center;top:0}.ptx-runestone-container .block-label,.runestone-sphinx .block-label{color:#7e7ee7;font-size:90%;vertical-align:top;white-space:pre}.ptx-runestone-container .right-label,.runestone-sphinx .right-label{padding:.2em 0 .3em .6em}.ptx-runestone-container .left-label,.runestone-sphinx .left-label{padding:.2em .6em .3em 0}.ptx-runestone-container .labels,.runestone-sphinx .labels{display:inline-block;padding-top:2px;vertical-align:top}.ptx-runestone-container .runestone .lines,.runestone-sphinx .runestone .lines{align-self:left;display:inline-block}.ptx-runestone-container .border_left,.runestone-sphinx .border_left{border-left:1px solid #b0b0b0}.ptx-runestone-container .block,.runestone-sphinx .block{align-content:stretch;align-items:stretch;display:flex}.ptx-runestone-container .cd_section,.ptx-runestone-container .parsons,.ptx-runestone-container .parsons .sortable-code-container,.runestone-sphinx .cd_section,.runestone-sphinx .parsons,.runestone-sphinx .parsons .sortable-code-container{max-width:none}.ptx-runestone-container #timed_Test .pagination,.runestone-sphinx #timed_Test .pagination{margin:5px 0}.ptx-runestone-container .parsons .block code,.runestone-sphinx .parsons .block code{color:#000}.ptx-runestone-container .parsons .placeholder-block.disabled.block,.runestone-sphinx .parsons .placeholder-block.disabled.block{background-color:#fff;border-style:dashed;font-style:italic;opacity:1;padding:20px 10px}.ptx-runestone-container .parsons .settled-block.disabled.block,.runestone-sphinx .parsons .settled-block.disabled.block{background-color:#afe1af;border:1px solid #000;opacity:1}.ptx-runestone-container .parsons .settled-block.disabled.block:hover .settled-tooltip,.runestone-sphinx .parsons .settled-block.disabled.block:hover .settled-tooltip{opacity:1;visibility:visible}.ptx-runestone-container .parsons .settled-block.disabled.block .settled-tooltip,.runestone-sphinx .parsons .settled-block.disabled.block .settled-tooltip{background-color:#555;border-radius:6px;color:#fff;font-size:.75rem;left:100%;opacity:0;padding:2px 8px;position:sticky;text-align:center;transition:opacity .6s;vertical-align:middle;visibility:hidden;z-index:1}.ptx-runestone-container .parsons .settled-block .block-label,.runestone-sphinx .parsons .settled-block .block-label{color:transparent}.ptx-runestone-container .parsons .alert,.runestone-sphinx .parsons .alert{margin-bottom:0;margin-top:10px}.ptx-runestone-container .parsons .placeholder-block .lines,.ptx-runestone-container .parsons .placeholder-block.hide,.ptx-runestone-container .placeholder-block .labels,.runestone-sphinx .parsons .placeholder-block .lines,.runestone-sphinx .parsons .placeholder-block.hide,.runestone-sphinx .placeholder-block .labels{display:none}.ptx-runestone-container .settled-block .labels .block-label,.runestone-sphinx .settled-block .labels .block-label{color:transparent}:root.dark-mode .ptx-runestone-container .parsons .block:has(code[class*=language-]){background:#141414}.prettyprint{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun{color:#660}.pln{color:#000}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec{color:#606}pre.prettyprint{border:1px solid #888;padding:2px}@media print{.str{color:#060}.kwd{color:#006;font-weight:700}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:700}.lit{color:#044}.pun{color:#440}.pln{color:#000}.tag{color:#006;font-weight:700}.atn{color:#404}.atv{color:#060}}}.ptx-runestone-container *,.runestone-sphinx *{box-sizing:border-box}.ptx-runestone-container body,.runestone-sphinx body{font-family:sans-serif;margin:0;padding:20px}.ptx-runestone-container h2,.runestone-sphinx h2{margin-bottom:.5em}.ptx-runestone-container [data-component=matching],.runestone-sphinx [data-component=matching]{font-family:sans-serif;margin:2rem 0}.ptx-runestone-container .matching-workspace,.runestone-sphinx .matching-workspace{background:var(--componentBgColor);display:flex;justify-content:space-between;margin:0 auto 1rem;max-width:1000px;position:relative;width:100%}.ptx-runestone-container .left-column,.ptx-runestone-container .right-column,.runestone-sphinx .left-column,.runestone-sphinx .right-column{align-items:center;display:flex;flex-direction:column;gap:12px;justify-content:center;max-width:25vw;padding:10px;position:relative;z-index:1}.ptx-runestone-container .left-column img,.ptx-runestone-container .right-column img,.runestone-sphinx .left-column img,.runestone-sphinx .right-column img{max-width:25vw}.ptx-runestone-container .box,.runestone-sphinx .box{align-items:center;background:var(--dropableBgColor,#f9f9f9);border:2px solid var(--boxBorderColor);border-radius:8px;cursor:grab;display:inline-flex;font-weight:700;justify-content:center;max-width:100%;min-height:50px;min-width:120px;padding:10px 14px;text-align:center;touch-action:none;user-select:none}.ptx-runestone-container .box,.ptx-runestone-container .left-column,.ptx-runestone-container .matching-workspace,.ptx-runestone-container .right-column,.ptx-runestone-container body,.runestone-sphinx .box,.runestone-sphinx .left-column,.runestone-sphinx .matching-workspace,.runestone-sphinx .right-column,.runestone-sphinx body{user-select:none;-webkit-user-select:none}.ptx-runestone-container .box mjx-container,.runestone-sphinx .box mjx-container{font-size:1em}.ptx-runestone-container .box:focus,.runestone-sphinx .box:focus{outline:3px solid #3498db}.ptx-runestone-container .box.selected,.runestone-sphinx .box.selected{outline:3px dashed #27ae60}.ptx-runestone-container .connector-svg,.runestone-sphinx .connector-svg{background:var(--componentBgColor);height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:0}.ptx-runestone-container .line,.runestone-sphinx .line{stroke:var(--dragLineColor);stroke-width:3;cursor:pointer;pointer-events:auto;transition:stroke .2s ease,stroke-width .2s ease}.ptx-runestone-container .line.correct,.runestone-sphinx .line.correct{stroke:green;stroke-width:3}.ptx-runestone-container .line.incorrect,.runestone-sphinx .line.incorrect{stroke:#bf1521;stroke-width:2;stroke-dasharray:5 5}.ptx-runestone-container .line.highlighted,.runestone-sphinx .line.highlighted{stroke:#3cd6e7;stroke-width:3}.ptx-runestone-container .line.faded,.runestone-sphinx .line.faded{stroke:#ccc;stroke-width:1}.ptx-runestone-container .line:focus,.ptx-runestone-container .line:hover,.runestone-sphinx .line:focus,.runestone-sphinx .line:hover{stroke:#3498db;stroke-dasharray:6 4;stroke-width:5;outline:none}.ptx-runestone-container .conn-list,.runestone-sphinx .conn-list{background:var(--componentBgColor);border:1px solid #ccc;border-radius:6px;font-size:14px;margin:0 auto 1rem;max-width:800px;padding:10px}.ptx-runestone-container .conn-entry,.runestone-sphinx .conn-entry{font-family:monospace;margin:4px 0}.ptx-runestone-container button,.runestone-sphinx button{border:none;border-radius:6px;cursor:grab;display:inline-block;font-size:1rem;margin:.5rem;padding:8px 16px;transition:background .2s ease-in-out}.ptx-runestone-container button:hover,.runestone-sphinx button:hover{background:#2980b9}.ptx-runestone-container .aria-live,.runestone-sphinx .aria-live{height:1px;left:-9999px;overflow:hidden;position:absolute;top:auto;width:1px}.ptx-runestone-container .control-div,.runestone-sphinx .control-div{align-items:center;display:flex;gap:10px;justify-content:center;margin-top:1rem}.ptx-runestone-container .control-div .help-button,.runestone-sphinx .control-div .help-button{background:#2c3e50;border-radius:50%;color:#ecf0f1;cursor:pointer;font-size:1.2rem;height:32px;line-height:32px;padding:0;text-align:center;width:32px}.ptx-runestone-container .control-div .help-button:hover,.runestone-sphinx .control-div .help-button:hover{background:#34495e}.ptx-runestone-container .help-modal,.runestone-sphinx .help-modal{align-items:center;background:rgba(0,0,0,.5);display:none;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%;z-index:10}.ptx-runestone-container .help-modal-content,.runestone-sphinx .help-modal-content{background-color:var(--questionBgColor);border-radius:6px;max-height:80%;max-width:80%;overflow:auto;padding:1rem 1.5rem;position:relative}.ptx-runestone-container .help-modal-content .help-close,.runestone-sphinx .help-modal-content .help-close{background:transparent;border:none;color:red;cursor:pointer;font-size:1.5rem;position:absolute;right:.5rem;top:.5rem}.ptx-runestone-container .help-modal-content .help-text,.runestone-sphinx .help-modal-content .help-text{font-size:1rem;line-height:1.4;margin-top:1.5rem}.ptx-runestone-container .match_question,.runestone-sphinx .match_question{background-color:var(--questionBgColor);margin-bottom:10px;padding:10px}.ptx-runestone-container .match_feedback,.runestone-sphinx .match_feedback{background-color:var(--parsonsIncorrectBgColor);border-radius:5px;margin-bottom:10px;margin-top:10px;padding:10px}:root{--draggableBgColor:#efefef;--dropableBgColor:#ddd;--draggableIncorrectBorder:red;--draggableIncorrectBg:#f2dede;--dragLineColor:#000;--boxBorderColor:#000}:root.dark-mode,[data-theme=dark]{--draggableBgColor:#393434;--dropableBgColor:#2a2d30;--draggableIncorrectBorder:red;--draggableIncorrectBg:#6d2d2d;--dragLineColor:#fff;--boxBorderColor:#fff}#component-preview{margin-right:20px;max-height:100%;overflow-y:scroll;padding-top:60px;position:fixed;right:0;top:0}.toggle-preview{background-color:azure;border:4px solid;border-radius:10px;box-shadow:10px 5px 5px gray;padding-top:10px}.ptx-runestone-container ul#pageNums,.ptx-runestone-container ul#pageNums li,.runestone-sphinx ul#pageNums,.runestone-sphinx ul#pageNums li{padding:10px 0;text-align:center}.ptx-runestone-container .pagination>li>a:hover,.runestone-sphinx .pagination>li>a:hover{background-color:#eee!important;color:#000!important}.ptx-runestone-container .flagBtn,.runestone-sphinx .flagBtn{background-color:#ed9c59!important;border:3px solid #ce5718;border-radius:5px;color:#030201!important;cursor:pointer;display:ruby;font-size:15px;height:115;text-align:center;text-decoration:none;width:150}.ptx-runestone-container .pagination>.active>a,.ptx-runestone-container .pagination>.active>span,.runestone-sphinx .pagination>.active>a,.runestone-sphinx .pagination>.active>span{background-color:#428bca!important;color:#fff!important}.ptx-runestone-container .col-md-6-override,.runestone-sphinx .col-md-6-override{max-width:100%!important;text-align:center!important}.ptx-runestone-container .pagination>.answered>a,.ptx-runestone-container .pagination>.answered>span,.runestone-sphinx .pagination>.answered>a,.runestone-sphinx .pagination>.answered>span{background-color:#eee;color:#000}.ptx-runestone-container .pagination>.broken>a,.ptx-runestone-container .pagination>.broken>span,.runestone-sphinx .pagination>.broken>a,.runestone-sphinx .pagination>.broken>span{background-color:#f99;color:#000}.ptx-runestone-container .pagination>.toolate>a,.ptx-runestone-container .pagination>.toolate>span,.runestone-sphinx .pagination>.toolate>a,.runestone-sphinx .pagination>.toolate>span{background-color:#eccb36;color:#000}.ptx-runestone-container .pagination>.flagcolor>a,.ptx-runestone-container .pagination>.flagcolor>span,.runestone-sphinx .pagination>.flagcolor>a,.runestone-sphinx .pagination>.flagcolor>span{background-color:#ed9c59;color:#000}.ptx-runestone-container p.examwarning,.runestone-sphinx p.examwarning{background-color:hsla(0,78%,78%,.822);border:2px solid #000;border-radius:5px;margin-left:auto;margin-right:auto;padding:5px;width:50%}.ptx-runestone-container .pagination>.correctCount>a,.ptx-runestone-container .pagination>.correctCount>span,.runestone-sphinx .pagination>.correctCount>a,.runestone-sphinx .pagination>.correctCount>span{background-color:#dff0d8;border-color:#000;color:#000}.ptx-runestone-container .pagination>.skippedCount>a,.ptx-runestone-container .pagination>.skippedCount>span,.runestone-sphinx .pagination>.skippedCount>a,.runestone-sphinx .pagination>.skippedCount>span{background-color:#fcf8e3;border-color:#000;color:#000}.ptx-runestone-container .pagination>.incorrectCount>a,.ptx-runestone-container .pagination>.incorrectCount>span,.runestone-sphinx .pagination>.incorrectCount>a,.runestone-sphinx .pagination>.incorrectCount>span{background-color:#f2dede;border-color:#000;color:#000}.ptx-runestone-container .switchcontainer,.runestone-sphinx .switchcontainer{height:1000px;overflow:auto} +/*# sourceMappingURL=prefix-268.c9e33e1350d18af9.css.map*/ \ No newline at end of file diff --git a/_static/prefix-268.c9e33e1350d18af9.css.gz b/_static/prefix-268.c9e33e1350d18af9.css.gz new file mode 100755 index 0000000000000000000000000000000000000000..9d6af6b3f90864848d8ed03336d6bcdba63c84f3 GIT binary patch literal 5528 zcmV;J6=&)niwFP!000026YV|wbDOx+$QO5vr}h#+w7}5 zJ3BJSHVHO-fM4xXC+j+e-v+pCe`?Z&jvh;+)@AMBO44mlF?{7f3PPRfvEl zpUe?Xl^Mns8RQVrq)go~beAJFrcnu9Z`4)2o#;3ty!68Tf$6P2be87AwM{HJXo?-l zE3kJwgRzt?w&#m*)KgW4k;R@qJ`{j6keQ7g3n(s7(lPL|3?w;tj#pMRT43MfQLsdg zGv@YPJE84?g3uvSSx}U|?|8^ZawoKx*m@ZRI0%+_6-s%;Bd7w|540%(R9ugYn!-?( zt7dwnVM$;5Euq_|tRbk6H`ott6FCa#;CwX#X=I$}AO~6-#ctV~&aJ!lSICjbX9t1e zx$BTjSW>um6S~@&`P3vGmiG{N4pNx^e*A zQv&SUGlnl+AGC;?z(us;x*Y@Lwo@Xr*HzVL<0S|pZtW9r7qo8XxZBafwk*6#W!gD2 zpjqk+36PKJ_$$!rap=R;HWBYArj9aO>U51j!YIHpa6}0f$a1&Y#c_s0S#qP9Yp#O> zJKX3*9rlM78fSxzREhlPz+`_uMbC$FS2bj?^Mk75o7UUrkFTGL~d7=ZDO}bE#Y85NSUP)7M^^uJ40&lX(|` zkrme$jq}F~;gP59#;F{pd4=f+e=T!SU8ARYM z?A0#UT%{2Iw}w7oTw}Vx-OMoYP-S(9703mRSb>{5r|qRqJK`FM^(b5jdL+d_MKQq8WOq9^cjtc$8f3IrI>#>FLT<~oC>k-^jAuySD9 z$}wEMv)-^b9A{CF&@`h3asKs_MKGKx!FY?#=X$K&GGUUG=s83Cz%68AHYh;wXijgvj_!mfU7|qXI3J})%%5ZfCO z1NS@%_S97Q)Nzs*g6>o$ek$M==XYods=5v#c_V2!%!W*oUu}KlCC;)|?@Z)dKsaQl zA%a8}DCHqvh7yd8PHXohI2NEzcM*sPQtH|TQUYSEQS;bRhfo=>FAEDzRoSQA!fY5U zii@d*IXwm$w*Nud;_00oD(e8$JKCv@HVz=Xzt3Hz7viR%3}3v^nm}<<_<4JrR;p5$ zv9(cb%q$Y3wYK@VNH@hQ+KG^bA-m$BnmDK~4%(B2q_XzSdT}I#H-dBpU^D?3T>z%n zph1MH&y&Y7dwgUQ&#?nyF85BnC]DmM|U(q11spuQWy#nmXr<9O0$Wi$${YVsJY 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 .para {\n display: inline;\n}\n\n/* The timed assessment strips off the container with the .multiplechoice_section class,\n so we need to apply the same styles to the .timedAssessment class */\n.timedAssessment .mchoice label > .para {\n display: inline;\n}\n\nlabel.mchoice-option {\n display: block;\n}\n\n.ptx-runestone-container input.mchoice-input {\n vertical-align: top;\n margin-right: 0.5em;\n}\n\n.mchoice .alert {\n margin-top: 10px;\n margin-bottom: 0;\n}","div.journal div.latexoutput {\n background-color: var(--outerBackground, #eeeeee);\n padding: 1em;\n margin-bottom: 10px;\n border-radius: 5px;\n}\n\n\n.shortanswer_section .alert {\n margin-bottom: 0;\n}\n\n.shortanswer__timestamp {\n font-size: 0.9em;\n color: var(--grayToWhite, #333);\n}\n\n.journal textarea {\n width: 100%;\n max-width: 100%;\n min-height: 6rem;\n\n padding: 0.75rem 0.9rem;\n font-size: 1rem;\n line-height: 1.5;\n\n border-radius: 8px;\n border: 1px solid #d0d7de;\n background-color: #fff;\n\n transition:\n border-color 0.15s ease,\n box-shadow 0.15s ease;\n\n resize: none;\n overflow: hidden;\n\n font-family: system-ui, -apple-system, BlinkMacSystemFont,\n \"Segoe UI\", Roboto, sans-serif;\n background:\n linear-gradient(#fff, #fff) padding-box,\n linear-gradient(to right, #eaeef2, #eaeef2) border-box;\n}\n\n.journal textarea:focus {\n outline: none;\n border-color: #0969da;\n box-shadow: 0 0 0 3px rgba(9, 105, 218, 0.15);\n}\n\n.shortanswer__rendered-answer-div {\n margin-top: 1rem;\n}\n\n.shortanswer__feedback {\n margin-top: 1rem;\n}",".clickable {\n cursor: pointer;\n}\n\n.clickable:has(code) {\n padding: 3px;\n display: inline-block;\n}\n\n.clickable-clicked:has(code) {\n box-shadow: 0px 0px 2px 2px rgba(0,100,0,0.75);\n}\n\n.clickable-clicked {\n background-color: var(--clickableBgColor);\n}\n\n.clickable-clicked td {\n background-color: #dad6c1;\n box-shadow: initial;\n}\n\ntable {\n border-collapse: collapse;\n}\n\nth.clickable, td.clickable {\n border: 1px solid black;\n}\n\ntd.clickable-clicked{\n background-color: #dad6c1;\n box-shadow: initial;\n}\n\ntd img {\n margin: 5px;\n}\n\n.clickable-clicked th {\n background-color: #dad6c1;\n box-shadow: initial;\n}\n\nth.clickable-clicked{\n background-color: #dad6c1;\n box-shadow: initial;\n}\n\n.clickable-incorrect,\n.clickable-incorrect th,\n.clickable-incorrect td {\n border: 1px solid red !important;\n background-color: var(--clickableIncorrectBgColor);\n}\n\nimg.clickable-incorrect {\n box-shadow: 0px 0px 2px 2px rgba(100,0,0,0.75);\n}\n\n.clickable-incorrect:has(code) {\n box-shadow: 0px 0px 2px 2px rgba(251, 0, 0, 0.75);\n}\n\n:root {\n --clickableBgColor: yellow;\n --clickableIncorrectBgColor: #ffcccc;\n}\n\n:root.dark-mode {\n --clickableBgColor: rgb(60, 86, 36);\n --clickableIncorrectBgColor: #562c2c;\n\n .clickable-clicked:has(code):not(.clickable-incorrect) {\n box-shadow: 0px 0px 2px 2px rgba(251, 255, 21, 0.75);\n }\n}\n",".ptx-runestone-container,.runestone-sphinx {\n @import (less) url(\"./dragndrop.css\");\n}\n\n@import (less) url(\"../../common/css/variables.less\");",".rsdraggable {\n margin-left: 1%;\n margin-right: 1%;\n margin-top: 5px;\n display: inline;\n float: left;\n text-align: left;\n vertical-align: top;\n background-color: var(--questionBgColor, #efefff);\n padding-bottom: 10px;\n min-width: 28%;\n border: 1px solid var(--componentBorderColor, #efefff);\n box-sizing: border-box;\n}\n\n.dnd-button-container {\n display: flex;\n justify-content: center;\n width: 100%;\n margin-top: 1em;\n}\n\n.drag-button {\n display: inline-block;\n}\n\n.drag-reset {\n background-color: #474949;\n color: white;\n}\n\n.drag-reset:hover {\n background-color: black;\n color: white;\n}\n\n.drop-incorrect {\n border: 1px solid var(--draggableIncorrectBorder, red) !important;\n background-color: var(--draggableIncorrectBg, #f2dede) !important;\n}\n\n.drag-reset:enabled {\n background-color: #474949;\n color: white;\n}\n\n.draggable-drag {\n border-radius: 10px;\n display: block;\n background-color: var(--draggableBgColor);\n border: 1px solid lightgray;\n padding: 10px;\n margin-top: 5px;\n cursor: grab;\n}\n\n.draggable-feedback {\n text-align: left !important;\n clear: both;\n margin-bottom: 0;\n margin-top: 10px;\n}\n\n.draggable-drop {\n border-radius: 10px;\n display: block;\n background-color: var(--dropableBgColor);\n border: 1px solid lightgray;\n padding: 10px;\n margin-top: 5px;\n cursor: grab;\n}\n\n.draggable-container {\n text-align: center;\n}\n\n.possibleDrop {\n border-color: #000000;\n background-color: #CCCCCC;\n}\n\n/*\n * This is a hack to allow us to drop on the drop target when\n * the drop area contains mathjax or or other child elements.\n*/\n.draggable-drop .process-math,\n.draggable-drop .MathJax {\n pointer-events: none;\n cursor: not-allowed;\n}\n\n/* Hide the error message from people but let screen readers see it */\n.vh-dnd-error {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n}\n\n.cardsort-statement {\n text-align: left;\n background-color: var(--questionBgColor);\n padding: 10px;\n margin-bottom: 10px;\n}",".ptx-runestone-container,.runestone-sphinx {\n @import (less) url(\"./parsons.css\");\n\n}\n\n/* make entire block background match background of code */\n:root.dark-mode {\n .ptx-runestone-container .parsons .block:has(code[class*=language-]) {\n background: hsl(0, 0%, 8%);\n }\n}",".parsons-container {\n clear: both;\n}\n\n.parsons .sortable-code-container {\n text-align: center;\n}\n.parsons .sortable-code-container:not(.block) {\n /* Remove text highlighting in widget */\n -webkit-user-select: none;\n -moz-user-select: -moz-none;\n -ms-user-select: none;\n user-select: none;\n}\n.parsons .sortable-code {\n position: static;\n padding-left: 0px;\n margin: 0px 15px;\n display: inline-block;\n text-align: left;\n vertical-align: top;\n}\n.parsons .source,\n.parsons .answer,\n.parsons .answer1,\n.parsons .answer2,\n.parsons .answer3,\n.parsons .answer4 {\n position: relative;\n font-size: 100%;\n list-style: none;\n background-color: var(--questionBgColor, #efefff);\n padding-bottom: 10px;\n padding-left: 0;\n margin-left: 0;\n border: 1px solid var(--componentBorderColor, #efefff);\n}\n.parsons .source {\n background-color: var(--questionBgColor, #efefff);\n}\n.parsons .answer {\n background-color: var(--parsonsBgColor);\n border-color: var(--parsonsBorderColor);\n}\n.parsons .answer.incorrect {\n background-color: var(--parsonsIncorrectBgColor);\n border-color: var(--parsonsIncorrectBorderColor);\n}\n.parsons .answer.correct {\n background-color: var(--parsonsCorrectBgColor);\n border-color: var(--parsonsCorrectBorderColor);\n}\n.parsons .answer1 {\n background: linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box;\n background-size: 1px 100%;\n background-position: 30px 0;\n background-origin: padding-box;\n background-color: var(--parsonsBgColor);\n border-color: var(--parsonsBorderColor);\n}\n.parsons .answer1.incorrect {\n background: linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%;\n background-position: 30px 0;\n background-origin: padding-box;\n background-color: var(--parsonsIncorrectBgColor);\n border-color: var(--parsonsIncorrectBorderColor);\n}\n.parsons .answer1.correct {\n background: linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%;\n background-position: 30px 0;\n background-origin: padding-box;\n background-color: var(--parsonsCorrectBgColor);\n border-color: var(--parsonsCorrectBorderColor);\n}\n.parsons .answer2 {\n background: linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0;\n background-origin: padding-box, padding-box;\n background-color: var(--parsonsBgColor);\n border-color: var(--parsonsBorderColor);\n}\n.parsons .answer2.incorrect {\n background: linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0;\n background-origin: padding-box, padding-box;\n background-color: var(--parsonsIncorrectBgColor);\n border-color: var(--parsonsIncorrectBorderColor);\n}\n.parsons .answer2.correct {\n background: linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0;\n background-origin: padding-box, padding-box;\n background-color: var(--parsonsCorrectBgColor);\n border-color: var(--parsonsCorrectBorderColor);\n}\n.parsons .answer3 {\n background: linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0;\n background-origin: padding-box, padding-box, padding-box;\n background-color: var(--parsonsBgColor);\n border-color: var(--parsonsBorderColor);\n}\n.parsons .answer3.incorrect {\n background: linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0;\n background-origin: padding-box, padding-box, padding-box;\n background-color: var(--parsonsIncorrectBgColor);\n border-color: var(--parsonsIncorrectBorderColor);\n}\n.parsons .answer3.correct {\n background: linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0;\n background-origin: padding-box, padding-box, padding-box;\n background-color: var(--parsonsCorrectBgColor);\n border-color: var(--parsonsCorrectBorderColor);\n}\n.parsons .answer4 {\n background: linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsBgColor);\n border-color: var(--parsonsBorderColor);\n}\n.parsons .answer4.incorrect {\n background: linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsIncorrectBgColor);\n border-color: var(--parsonsIncorrectBorderColor);\n}\n.parsons .answer4.correct {\n background: linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsCorrectBgColor);\n border-color: var(--parsonsCorrectBorderColor);\n}\n /* The following styles are for the 5th and 6th indentation levels, if applicable */\n.parsons .answer5 {\n background: linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0, 150px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsBgColor);\n border-color: var(--parsonsBorderColor);\n}\n.parsons .answer5.incorrect {\n background: linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0, 150px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsIncorrectBgColor);\n border-color: var(--parsonsIncorrectBorderColor);\n}\n.parsons .answer5.correct {\n background: linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0, 150px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsCorrectBgColor);\n border-color: var(--parsonsCorrectBorderColor);\n}\n.parsons .answer6 {\n background: linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsBorderColor), var(--parsonsBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0, 150px 0, 180px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsBgColor);\n border-color: var(--parsonsBorderColor);\n}\n.parsons .answer6.incorrect {\n background: linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsIncorrectBorderColor), var(--parsonsIncorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0, 150px 0, 180px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsIncorrectBgColor);\n border-color: var(--parsonsIncorrectBorderColor);\n}\n.parsons .answer6.correct {\n background: linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box,\n linear-gradient(var(--parsonsCorrectBorderColor), var(--parsonsCorrectBorderColor)) no-repeat border-box;\n background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%;\n background-position: 30px 0, 60px 0, 90px 0, 120px 0, 150px 0, 180px 0;\n background-origin: padding-box, padding-box, padding-box, padding-box;\n background-color: var(--parsonsCorrectBgColor);\n border-color: var(--parsonsCorrectBorderColor);\n}\n.parsons .block {\n position: absolute;\n -moz-border-radius: 10px;\n -webkit-border-radius: 10px;\n border-radius: 10px;\n background-color: var(--background, #efefef);\n border: 1px solid #d3d3d3;\n padding: 5px 10px;\n margin-top: 5px;\n overflow: hidden;\n cursor: move;\n}\n.parsons .block.disabled {\n opacity: 0.3;\n}\n.parsons .block.down {\n border: 2px solid black;\n padding: 4px 9px;\n}\n.parsons .block.up {\n border: 2px solid black;\n padding: 4px 9px;\n background-color: white;\n box-shadow: 3px 3px 4px black;\n}\n.parsons {\n display: block;\n}\n.parsons .block {\n clear: both;\n float: left;\n /*background-color: transparent;*/\n}\n\n.parsons .sortable-code code {\n clear: both;\n float: left;\n background-color: transparent;\n white-space: pre;\n}\n\n.parsons .sortable-code code:empty {\n height: 1.25em; /* force some height for empty lines */\n}\n\n.parsons .block p {\n margin: 0;\n}\n.parsons .block,\n.parsons .block:before,\n.parsons .block:after {\n box-sizing: content-box;\n}\n.parsons .indent1 {\n margin-left: 30px;\n}\n.parsons .indent2 {\n margin-left: 60px;\n}\n.parsons .indent3 {\n margin-left: 90px;\n}\n.parsons .indent4 {\n margin-left: 120px;\n}\n.parsons .indent5 {\n margin-left: 150px;\n}\n.parsons .indent6 {\n margin-left: 180px;\n}\n.parsons .indent7 {\n margin-left: 210px;\n}\n.parsons .indent8 {\n margin-left: 240px;\n}\n.parsons .correct {\n border: 1px solid #d6e9c6;\n background: none;\n background-color: var(--parsonsCorrectBgColor);\n}\n.parsons .indentLeft,\n.parsons .indentRight {\n border: 2px solid #ffcc00;\n padding: 4px 9px;\n background-color: #fff0b3;\n}\n.parsons .indentLeft {\n background-image: url(\"./images/parsons-ll.svg\"),\n url(\"./images/parsons-rl.svg\");\n background-repeat: no-repeat, no-repeat;\n background-position: left center, right center;\n}\n.parsons .indentRight {\n background-image: url(\"./images/parsons-lr.svg\"),\n url(\"./images/parsons-rr.svg\");\n background-repeat: no-repeat, no-repeat;\n background-position: left center, right center;\n}\n.parsons .incorrectPosition {\n background-color: #ffbaba;\n border: 1px solid red;\n}\n.parsons .paired {\n position: absolute;\n -moz-border-radius: 10px;\n -webkit-border-radius: 10px;\n border-radius: 10px;\n background-color: transparent;\n border-left: 11px solid #b8b8f2;\n border-right: 11px solid #b8b8f2;\n border-top: 1px solid #b8b8f2;\n border-bottom: 1px solid #b8b8f2;\n margin-top: 5px;\n overflow: hidden;\n}\n.parsons {\n border-left: 0;\n border-right: 0;\n border-radius: 0;\n}\n.parsons .parsons-text {\n max-width: var(--contentWidthRegular);\n margin-left: auto;\n margin-right: auto;\n}\n\n.parsons .parsons-img {\n display: inline-block;\n text-align: center;\n width: 100%;\n}\n\n.parsons .parsons-controls {\n max-width: var(--contentWidthRegular);\n margin-left: auto;\n margin-right: auto;\n text-align: center;\n margin-top: 10px;\n}\n\n.parsons [role=\"tooltip\"] {\n max-width: var(--contentWidthRegular);\n margin-left: auto;\n margin-right: auto;\n margin-top: 5px;\n margin-bottom: 5px;\n padding: 0px 10px;\n top: 0;\n text-align: center;\n font-style: italic;\n}\n\n.block-label {\n font-size: 90%;\n color: #7e7ee7;\n vertical-align: top;\n white-space: pre;\n}\n.right-label {\n padding: 0.2em 0em 0.3em 0.6em;\n}\n.left-label {\n padding: 0.2em 0.6em 0.3em 0em;\n}\n\n.labels {\n padding-top: 2px;\n display: inline-block;\n vertical-align: top;\n}\n\n.runestone .lines {\n display: inline-block;\n align-self: left;\n}\n\n.border_left {\n border-left: 1px solid #b0b0b0;\n}\n\n.block {\n display: flex;\n align-items: stretch;\n align-content: stretch;\n}\n\n.parsons,\n.parsons .sortable-code-container,\n.cd_section {\n max-width: none;\n}\n\n#timed_Test .pagination {\n margin: 5px 0;\n}\n\n/* override red from bootstrap */\n.parsons .block code {\n color: black;\n}\n\n/* CodeTailor-related CSS for Parsons START */\n.parsons .placeholder-block.disabled.block {\n font-style: italic;\n background-color: white;\n border-style: dashed;\n padding: 20px 10px;\n opacity: 1;\n}\n\n.parsons .settled-block.disabled.block {\n border: 1px solid black;\n background-color: #afe1af;\n opacity: 1;\n}\n\n.parsons .settled-block.disabled.block:hover .settled-tooltip {\n visibility: visible;\n opacity: 1;\n}\n\n.parsons .settled-block.disabled.block .settled-tooltip {\n visibility: hidden;\n position: sticky;\n background-color: #555;\n font-size: 0.75rem;\n color: #fff;\n text-align: center;\n padding: 2px 8px;\n border-radius: 6px;\n z-index: 1;\n opacity: 0;\n transition: opacity .6s;\n left: 100%; \n vertical-align: middle; \n}\n.parsons .settled-block .block-label {\n color: transparent;\n}\n\n.parsons .alert {\n margin-top: 10px;\n margin-bottom: 0;\n}\n\n\n.parsons .placeholder-block .lines {\n display: none;\n}\n\n.parsons .placeholder-block.hide {\n display: none;\n}\n\n\n.placeholder-block .labels {\n display: none;\n}\n\n.settled-block .labels .block-label {\n color:transparent;\n}\n/* CodeTailor-related CSS for Parsons END */",".prettyprint {\n .str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun{color:#660}.pln{color:#000}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec{color:#606}pre.prettyprint{padding:2px;border:1px solid #888}@media print{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun{color:#440}.pln{color:#000}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}\n}",".ptx-runestone-container,\n.runestone-sphinx {\n @import (less) url(\"./matching.css\");\n}\n\n@import (less) url(\"../../common/css/variables.less\");","* {\n box-sizing: border-box;\n}\n\nbody {\n font-family: sans-serif;\n padding: 20px;\n margin: 0;\n}\n\nh2 {\n margin-bottom: 0.5em;\n}\n\n/* Main wrapper for each matching component */\n[data-component=\"matching\"] {\n margin: 2rem 0;\n font-family: sans-serif;\n}\n\n.matching-workspace {\n display: flex;\n justify-content: space-between;\n position: relative;\n max-width: 1000px;\n width: 100%;\n margin: 0 auto 1rem;\n background: var(--componentBgColor);\n}\n\n.left-column,\n.right-column {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 12px;\n padding: 10px;\n position: relative;\n z-index: 1;\n max-width: 25vw;\n}\n\n\n.left-column img,\n.right-column img {\n max-width: 25vw;\n /* Ensure images do not exceed 25% of the viewport width */\n}\n\n.box {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 120px;\n padding: 10px 14px;\n min-height: 50px;\n max-width: 100%;\n background: var(--dropableBgColor, #f9f9f9);\n border: 2px solid var(--boxBorderColor);\n border-radius: 8px;\n text-align: center;\n font-weight: bold;\n user-select: none;\n cursor: grab;\n text-align: center;\n touch-action: none;\n /* Prevents scrolling during tap+drag */\n}\n\n.matching-workspace,\n.left-column,\n.right-column,\n.box,\nbody {\n user-select: none;\n -webkit-user-select: none; /* for iOS/Safari */\n}\n\n.box mjx-container {\n font-size: 1em;\n}\n\n.box:focus {\n outline: 3px solid #3498db;\n}\n\n.box.selected {\n outline: 3px dashed #27ae60;\n}\n\n.connector-svg {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: 0;\n background: var(--componentBgColor);\n}\n\n.line {\n stroke: var(--dragLineColor);\n ;\n stroke-width: 3;\n cursor: pointer;\n pointer-events: auto;\n transition: stroke 0.2s ease, stroke-width 0.2s ease;\n}\n\n.line.correct {\n stroke: green;\n stroke-width: 3;\n}\n\n.line.incorrect {\n stroke: #bf1521;\n stroke-width: 2;\n stroke-dasharray: 5 5;\n}\n\n.line.highlighted {\n stroke: #3cd6e7;\n stroke-width: 3;\n}\n\n.line.faded {\n stroke: #ccc;\n stroke-width: 1;\n}\n\n.line:focus,\n.line:hover {\n stroke: #3498db;\n stroke-dasharray: 6 4;\n /* 6px dash, 4px gap */\n stroke-width: 5;\n outline: none;\n}\n\n.conn-list {\n max-width: 800px;\n margin: 0 auto 1rem;\n padding: 10px;\n background: var(--componentBgColor);\n border: 1px solid #ccc;\n border-radius: 6px;\n font-size: 14px;\n}\n\n.conn-entry {\n margin: 4px 0;\n font-family: monospace;\n}\n\nbutton {\n display: inline-block;\n margin: 0.5rem;\n font-size: 1rem;\n padding: 8px 16px;\n border: none;\n border-radius: 6px;\n cursor: grab;\n transition: background 0.2s ease-in-out;\n}\n\nbutton:hover {\n background: #2980b9;\n}\n\n.aria-live {\n position: absolute;\n left: -9999px;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n}\n\n.control-div {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 10px;\n margin-top: 1rem;\n}\n\n.control-div .help-button {\n background: #2c3e50;\n color: #ecf0f1;\n width: 32px;\n height: 32px;\n padding: 0;\n border-radius: 50%;\n font-size: 1.2rem;\n line-height: 32px;\n text-align: center;\n cursor: pointer;\n}\n\n.control-div .help-button:hover {\n background: #34495e;\n}\n\n/* modal overlay */\n.help-modal {\n display: none;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: rgba(0, 0, 0, 0.5);\n align-items: center;\n justify-content: center;\n z-index: 10;\n}\n\n/* modal content box */\n.help-modal-content {\n\n background-color: var(--questionBgColor);\n padding: 1rem 1.5rem;\n border-radius: 6px;\n max-width: 80%;\n max-height: 80%;\n overflow: auto;\n position: relative;\n}\n\n/* close button */\n.help-modal-content .help-close {\n position: absolute;\n top: 0.5rem;\n right: 0.5rem;\n background: transparent;\n border: none;\n font-size: 1.5rem;\n cursor: pointer;\n color: red;\n}\n\n/* help text */\n.help-modal-content .help-text {\n margin-top: 1.5rem;\n font-size: 1rem;\n line-height: 1.4;\n}\n\n.match_question {\n background-color: var(--questionBgColor);\n padding: 10px;\n margin-bottom: 10px;\n}\n\n.match_feedback {\n background-color: var(--parsonsIncorrectBgColor);\n padding: 10px;\n margin-top: 10px;\n margin-bottom: 10px;\n border-radius: 5px;\n}",":root {\n --draggableBgColor: #EFEFEF;\n --dropableBgColor: #DDDDDD;\n --draggableIncorrectBorder: red;\n --draggableIncorrectBg: #f2dede;\n --dragLineColor: #000000;\n --boxBorderColor: #000000;\n\n}\n\n:root.dark-mode,\n[data-theme=\"dark\"] {\n --draggableBgColor: #393434;\n --dropableBgColor: #2a2d30;\n --draggableIncorrectBorder: red;\n --draggableIncorrectBg: #6d2d2d;\n --dragLineColor: #ffffff;\n --boxBorderColor: #ffffff;\n\n}\n","#component-preview {\n margin-right: 20px;\n position: fixed;\n right: 0px;\n max-height: 100%;\n overflow-y: scroll;\n top: 0px;\n padding-top: 60px;\n}\n\n.toggle-preview {\n border: 4px solid;\n border-radius: 10px;\n background-color: azure;\n padding-top: 10px;\n box-shadow: 10px 5px 5px gray;\n}\n",".ptx-runestone-container,.runestone-sphinx {\n @import (less) url(\"./timed.css\");\n}\n","/* TIMED ASSESSMENT BUTTON STYLES */\nul#pageNums,\nul#pageNums li {\n text-align: center;\n padding: 10px 0;\n}\n\n.pagination>li>a:hover {\n background-color: #eee !important;\n color: #000 !important;\n}\n\n.flagBtn {\n /* documentation */\n background-color: #ED9C59 !important;\n border: 3px solid #CE5718;\n border-radius: 5px;\n color: #030201 !important;\n cursor: pointer;\n width: 150;\n height: 115;\n text-align: center;\n text-decoration: none;\n display: ruby;\n font-size: 15px;\n}\n\n/* The following override styles in Bootstrap distribution file (bootstrap.min.css) */\n\n.pagination>.active>a,\n.pagination>.active>span {\n background-color: #428bca !important;\n color: #ffffff !important;\n}\n\n.col-md-6-override {\n text-align: center !important;\n max-width: 100% !important;\n}\n\n/* end */\n\n.pagination>.answered>a,\n.pagination>.answered>span {\n background-color: #eee;\n color: #000;\n}\n\n.pagination>.broken>a,\n.pagination>.broken>span {\n background-color: #f99;\n color: #000;\n}\n\n.pagination>.toolate>a,\n.pagination>.toolate>span {\n background-color: rgb(236, 203, 54);\n color: #000;\n}\n\n.pagination>.flagcolor>a,\n.pagination>.flagcolor>span {\n background-color: #ED9C59;\n color: #000;\n}\n\np.examwarning {\n width: 50%;\n margin-left: auto;\n margin-right: auto;\n background-color: rgba(243, 156, 156, 0.822);\n border: solid black;\n border-radius: 5px;\n border-width: 2px;\n padding: 5px;\n}\n\n.pagination>.correctCount>a,\n.pagination>.correctCount>span {\n background-color: #dff0d8;\n color: #000000;\n border-color: #000000;\n}\n\n.pagination>.skippedCount>a,\n.pagination>.skippedCount>span {\n background-color: #fcf8e3;\n color: #000000;\n border-color: #000000;\n}\n\n.pagination>.incorrectCount>a,\n.pagination>.incorrectCount>span {\n background-color: #f2dede;\n color: #000000;\n border-color: #000000;\n}\n\n.switchcontainer {\n height: 1000px;\n overflow: auto;\n}"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/_static/prefix-268.c9e33e1350d18af9.css.map.gz b/_static/prefix-268.c9e33e1350d18af9.css.map.gz new file mode 100755 index 0000000000000000000000000000000000000000..ad080cc36eeb7be661dbf6266a855c51df51a604 GIT binary patch literal 8814 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 literal 0 HcmV?d00001 diff --git a/_static/prefix-294.986bf74bfa4ccbd4.css b/_static/prefix-294.986bf74bfa4ccbd4.css old mode 100644 new mode 100755 diff --git a/_static/prefix-294.986bf74bfa4ccbd4.css.gz b/_static/prefix-294.986bf74bfa4ccbd4.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-294.986bf74bfa4ccbd4.css.map b/_static/prefix-294.986bf74bfa4ccbd4.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-294.986bf74bfa4ccbd4.css.map.gz b/_static/prefix-294.986bf74bfa4ccbd4.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-350.dbca9271f6e2dfbf.css b/_static/prefix-350.dbca9271f6e2dfbf.css old mode 100644 new mode 100755 diff --git a/_static/prefix-350.dbca9271f6e2dfbf.css.gz b/_static/prefix-350.dbca9271f6e2dfbf.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-350.dbca9271f6e2dfbf.css.map b/_static/prefix-350.dbca9271f6e2dfbf.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-350.dbca9271f6e2dfbf.css.map.gz b/_static/prefix-350.dbca9271f6e2dfbf.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-380.67748940131a4a84.css b/_static/prefix-380.67748940131a4a84.css old mode 100644 new mode 100755 diff --git a/_static/prefix-380.67748940131a4a84.css.map b/_static/prefix-380.67748940131a4a84.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-380.67748940131a4a84.css.map.gz b/_static/prefix-380.67748940131a4a84.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-39.89cf817b9a35aeca.css b/_static/prefix-39.89cf817b9a35aeca.css old mode 100644 new mode 100755 diff --git a/_static/prefix-39.89cf817b9a35aeca.css.gz b/_static/prefix-39.89cf817b9a35aeca.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-39.89cf817b9a35aeca.css.map b/_static/prefix-39.89cf817b9a35aeca.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-39.89cf817b9a35aeca.css.map.gz b/_static/prefix-39.89cf817b9a35aeca.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-412.25f3c4ff23eb9893.css b/_static/prefix-412.25f3c4ff23eb9893.css old mode 100644 new mode 100755 diff --git a/_static/prefix-412.25f3c4ff23eb9893.css.gz b/_static/prefix-412.25f3c4ff23eb9893.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-412.25f3c4ff23eb9893.css.map b/_static/prefix-412.25f3c4ff23eb9893.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-412.25f3c4ff23eb9893.css.map.gz b/_static/prefix-412.25f3c4ff23eb9893.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-442.6ae0ea584f8e75c5.css b/_static/prefix-442.6ae0ea584f8e75c5.css old mode 100644 new mode 100755 diff --git a/_static/prefix-442.6ae0ea584f8e75c5.css.gz b/_static/prefix-442.6ae0ea584f8e75c5.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-442.6ae0ea584f8e75c5.css.map b/_static/prefix-442.6ae0ea584f8e75c5.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-442.6ae0ea584f8e75c5.css.map.gz b/_static/prefix-442.6ae0ea584f8e75c5.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-460.7c0b70502d117f7d.css b/_static/prefix-460.7c0b70502d117f7d.css old mode 100644 new mode 100755 diff --git a/_static/prefix-460.7c0b70502d117f7d.css.map b/_static/prefix-460.7c0b70502d117f7d.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-486.990aca82e7ba3e1c.css b/_static/prefix-486.990aca82e7ba3e1c.css old mode 100644 new mode 100755 diff --git a/_static/prefix-486.990aca82e7ba3e1c.css.gz b/_static/prefix-486.990aca82e7ba3e1c.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-486.990aca82e7ba3e1c.css.map b/_static/prefix-486.990aca82e7ba3e1c.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-486.990aca82e7ba3e1c.css.map.gz b/_static/prefix-486.990aca82e7ba3e1c.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-576.9b1852878840651d.css b/_static/prefix-576.9b1852878840651d.css old mode 100644 new mode 100755 diff --git a/_static/prefix-576.9b1852878840651d.css.gz b/_static/prefix-576.9b1852878840651d.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-576.9b1852878840651d.css.map b/_static/prefix-576.9b1852878840651d.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-576.9b1852878840651d.css.map.gz b/_static/prefix-576.9b1852878840651d.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-580.22958d4327b0425a.css b/_static/prefix-580.22958d4327b0425a.css old mode 100644 new mode 100755 diff --git a/_static/prefix-580.22958d4327b0425a.css.gz b/_static/prefix-580.22958d4327b0425a.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-580.22958d4327b0425a.css.map b/_static/prefix-580.22958d4327b0425a.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-580.22958d4327b0425a.css.map.gz b/_static/prefix-580.22958d4327b0425a.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-616.5c78f604ddad1ec0.css b/_static/prefix-616.5c78f604ddad1ec0.css old mode 100644 new mode 100755 diff --git a/_static/prefix-616.5c78f604ddad1ec0.css.gz b/_static/prefix-616.5c78f604ddad1ec0.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-616.5c78f604ddad1ec0.css.map b/_static/prefix-616.5c78f604ddad1ec0.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-616.5c78f604ddad1ec0.css.map.gz b/_static/prefix-616.5c78f604ddad1ec0.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-621.8c109e297bdd8ce7.css b/_static/prefix-621.8c109e297bdd8ce7.css old mode 100644 new mode 100755 diff --git a/_static/prefix-621.8c109e297bdd8ce7.css.gz b/_static/prefix-621.8c109e297bdd8ce7.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-621.8c109e297bdd8ce7.css.map b/_static/prefix-621.8c109e297bdd8ce7.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-621.8c109e297bdd8ce7.css.map.gz b/_static/prefix-621.8c109e297bdd8ce7.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-723.3bccd435914aa0ff.css b/_static/prefix-723.3bccd435914aa0ff.css old mode 100644 new mode 100755 diff --git a/_static/prefix-723.3bccd435914aa0ff.css.gz b/_static/prefix-723.3bccd435914aa0ff.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-723.3bccd435914aa0ff.css.map b/_static/prefix-723.3bccd435914aa0ff.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-723.3bccd435914aa0ff.css.map.gz b/_static/prefix-723.3bccd435914aa0ff.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-723.3e6434f80549315a.bundle.js b/_static/prefix-723.3e6434f80549315a.bundle.js old mode 100644 new mode 100755 diff --git a/_static/prefix-723.3e6434f80549315a.bundle.js.LICENSE.txt b/_static/prefix-723.3e6434f80549315a.bundle.js.LICENSE.txt old mode 100644 new mode 100755 diff --git a/_static/prefix-723.3e6434f80549315a.bundle.js.LICENSE.txt.gz b/_static/prefix-723.3e6434f80549315a.bundle.js.LICENSE.txt.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-723.3e6434f80549315a.bundle.js.gz b/_static/prefix-723.3e6434f80549315a.bundle.js.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-723.3e6434f80549315a.bundle.js.map b/_static/prefix-723.3e6434f80549315a.bundle.js.map old mode 100644 new mode 100755 diff --git a/_static/prefix-723.3e6434f80549315a.bundle.js.map.gz b/_static/prefix-723.3e6434f80549315a.bundle.js.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-737.cf869b6ea8bfad2f.css b/_static/prefix-737.cf869b6ea8bfad2f.css old mode 100644 new mode 100755 diff --git a/_static/prefix-737.cf869b6ea8bfad2f.css.gz b/_static/prefix-737.cf869b6ea8bfad2f.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-737.cf869b6ea8bfad2f.css.map b/_static/prefix-737.cf869b6ea8bfad2f.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-737.cf869b6ea8bfad2f.css.map.gz b/_static/prefix-737.cf869b6ea8bfad2f.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-819.6edefe408d7482c2.css.gz b/_static/prefix-819.6edefe408d7482c2.css.gz deleted file mode 100644 index dc024d4e4185abccde1cdfb676b69df0152bf7f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 508 zcmVR^CI;&`D1%$pot{CHxO{Jedzjd*g*MQIolh_OWRl{ zw%{h5Qx@IrTaLwuI4w5TNp#$S)V&vrZYWxCl{S21L$IyLQVMk-r8bqwuzg8y*{VW2@!Ri zXo;*FB5xZlqgbYLCGi8sH8DG?P|)gTFZ|vIYHwgT;A; z&&~;D%ibR@$B8)2m$`)EJWQm~c+Cm2t2QvnS(Yx?EL$@=Wm?dGJW4+<`SRuZDkdv> ySK=L^B|(q(KfiSjl^*yy%abKaRCtrF~ucP#!+T%K!cK3l~h}c&I}JdO;~zKPgBO^lBVq9`;y9pvD*ZNWs%TZ6v{?W30<>` zEAP~X0ZYBSVsxLd)g_&w^XtZWkkE{+9*u~xzNA0UXuWam5?Wrc)zBvtqoogK_f6Q( zKl?XFkXcLn=ZjQqcy}%@$k&+{5&dHmHxQYvbdk~Wml#i;Co2^vgMmwiV zGz_c5qh+Iw023N6WNl+IZ4AF}l>ee$C*Le&4p)*yya3bH_zZa120sb?=46Rn@v>^e zawHTE&c$SAn)J`88%AeSH2CUFS6;8`(O+#L6?AB$Xxf22qjvs`b9Al_#Ogu{awLZ0 zOu(C$27i?2d57x^@+$o>;s-@9S>umYkEWIYw?O+IhtTf0(EFaf12yo_n8J;IEJNcf zloxs*lbsX-ROj39kn>U&_c5{e)6;=O*|7 zTMgvXTYxSHknPl@7X^E7p@%6qNxMG1o6e*kJgBtJI>003UXlCS^( diff --git a/_static/prefix-824.271ae6cff6401ed5.css b/_static/prefix-824.271ae6cff6401ed5.css old mode 100644 new mode 100755 diff --git a/_static/prefix-824.271ae6cff6401ed5.css.gz b/_static/prefix-824.271ae6cff6401ed5.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-824.271ae6cff6401ed5.css.map b/_static/prefix-824.271ae6cff6401ed5.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-824.271ae6cff6401ed5.css.map.gz b/_static/prefix-824.271ae6cff6401ed5.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-819.6edefe408d7482c2.css b/_static/prefix-850.e86d03c2cec75438.css old mode 100644 new mode 100755 similarity index 84% rename from _static/prefix-819.6edefe408d7482c2.css rename to _static/prefix-850.e86d03c2cec75438.css index 232403a..243d4dc --- a/_static/prefix-819.6edefe408d7482c2.css +++ b/_static/prefix-850.e86d03c2cec75438.css @@ -1,2 +1,2 @@ -div.journal div.latexoutput{background-color:var(--outerBackground,#eee);border-radius:5px;margin-bottom:10px;padding:1em}.shortanswer_section .alert{margin-bottom:0}.shortanswer__timestamp{color:var(--grayToWhite,#333);font-size:.9em}.journal textarea{background-color:#fff;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(90deg,#eaeef2,#eaeef2) border-box;border:1px solid #d0d7de;border-radius:8px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;line-height:1.5;max-width:100%;min-height:6rem;overflow:hidden;padding:.75rem .9rem;resize:none;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.journal textarea:focus{border-color:#0969da;box-shadow:0 0 0 3px rgba(9,105,218,.15);outline:none} -/*# sourceMappingURL=prefix-819.6edefe408d7482c2.css.map*/ \ No newline at end of file +div.journal div.latexoutput{background-color:var(--outerBackground,#eee);border-radius:5px;margin-bottom:10px;padding:1em}.shortanswer_section .alert{margin-bottom:0}.shortanswer__timestamp{color:var(--grayToWhite,#333);font-size:.9em}.journal textarea{background-color:#fff;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(90deg,#eaeef2,#eaeef2) border-box;border:1px solid #d0d7de;border-radius:8px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;line-height:1.5;max-width:100%;min-height:6rem;overflow:hidden;padding:.75rem .9rem;resize:none;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.journal textarea:focus{border-color:#0969da;box-shadow:0 0 0 3px rgba(9,105,218,.15);outline:none}.shortanswer__feedback,.shortanswer__rendered-answer-div{margin-top:1rem} +/*# sourceMappingURL=prefix-850.e86d03c2cec75438.css.map*/ \ No newline at end of file diff --git a/_static/prefix-850.e86d03c2cec75438.css.gz b/_static/prefix-850.e86d03c2cec75438.css.gz new file mode 100755 index 0000000000000000000000000000000000000000..a2527256e683e75f587f7cd602f73953ca5a492f GIT binary patch literal 534 zcmV+x0_pu9iwFP!000026J=9NZ<|06zV}xkS(WT)mw+j@S=37ol`1utq*0I2njK&p z*hRC8?bOPD??CMM5h3xInVtC_gVLMuukF#uCQ$U=NDn*P`>yx+EgNj_APX^MK6up z0zNw^ytXC?WdrE@wk|fD2FRk(1>3<-?Y#4at zNesP2ke>-o%CgK)QPF4v5{K4GgYnZL&xYG9I8Y&sJ9b@`MG7j?MFN!b<8u}qB%%`s zwM5+Q0%seof{BXMQo)ssE7ELaQOZ^~ufn}L4=wLCYsmC3lF3)s{5!!q}&uh?C?L{1>_FMpPGp%7_Njw#%e968H=No&EplLDYKmRc%VLlyxOo5Kn-ia zF2e|h=7Hkx0Zu>6aaFzTMm68Q+}=#c(;f@BCyz*(r-xtPJA_j2_$rM;SS?hP6!QX# YW%?~yg@torE4!Q9|H{zLkcJfT4@3kc$%GLXxCIG>Ipn9sy$ zl3iqwT}>}1^C+`6ph3y2N~(=TXNDiWOjvqHFH^?kf~M^D>w?OJvBw03MUl`)6v{?W z30<+<_ui=u1D1Mu$>=U&%R4$l=ieLWVL~&ud^RG+>W+RxqxHs>OK5q^mLs1~j2Awb z9h$K3$*=4y%r0+OdXb`#Pf`SAfX6h)ylmrL{@5n3XaTkDd5vd{h_x5)pL`4K9*^(; zqISWSO;&+fKeJu(q7@(X&0ABG&>hk<^JUyzrS$$t!UskVi|kB- z>@gk=SFlcXS!o5z*MNGy} zKC4P@Hd2La?VK*rFsk;?mbEqlOlY`}wT;QNG5mZ`{*QW{e6f%@Tu~D70!&xq3Gk>5 zei8b`$r8EZWz~k|NJMDmcfgS7x-0WVn;XLqf9lm%I=~hulgXe1Z;3<795=vQ*qsz^ z>)RXs)-}ElU(sU8TacTri^-00^rG`>oCp?5LaN+CdXz6}pKFJ*Cvi9J{cWmro}LVS=42#*>{5@hD_1J6D+ z@(l*{s_DLm;1g^#kk5Ay0VN+bu9Bw2VvC^#BlG`o(remN&yC*{A@N?FdzxrN)}S3F zuI8S;9pN-Fesca2ae(}yI}BP%5#Y_mi*udTwp~BGm>&NHiT%0Y97or)Yr#8PI}u#C z=AYn3n9Z7>UsK%IDJ2)%@c>QJ>PzVnqJSswbN=~k((^a>wuK?r#!gKq7QT_!} aylh^??lJqQH9llP@bh0ZW>7%B1^@u|;-S<4 literal 0 HcmV?d00001 diff --git a/_static/prefix-877.fa7c46f756cd5a82.css b/_static/prefix-877.fa7c46f756cd5a82.css old mode 100644 new mode 100755 diff --git a/_static/prefix-877.fa7c46f756cd5a82.css.gz b/_static/prefix-877.fa7c46f756cd5a82.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-877.fa7c46f756cd5a82.css.map b/_static/prefix-877.fa7c46f756cd5a82.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-877.fa7c46f756cd5a82.css.map.gz b/_static/prefix-877.fa7c46f756cd5a82.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-915.882512b642b7fffa.css b/_static/prefix-915.882512b642b7fffa.css old mode 100644 new mode 100755 diff --git a/_static/prefix-915.882512b642b7fffa.css.gz b/_static/prefix-915.882512b642b7fffa.css.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-915.882512b642b7fffa.css.map b/_static/prefix-915.882512b642b7fffa.css.map old mode 100644 new mode 100755 diff --git a/_static/prefix-915.882512b642b7fffa.css.map.gz b/_static/prefix-915.882512b642b7fffa.css.map.gz old mode 100644 new mode 100755 diff --git a/_static/prefix-runestone.7e141ad8414abf4a.bundle.js b/_static/prefix-runestone.1c010553c35c544c.bundle.js old mode 100644 new mode 100755 similarity index 50% rename from _static/prefix-runestone.7e141ad8414abf4a.bundle.js rename to _static/prefix-runestone.1c010553c35c544c.bundle.js index 017f506..4aa295a --- a/_static/prefix-runestone.7e141ad8414abf4a.bundle.js +++ b/_static/prefix-runestone.1c010553c35c544c.bundle.js @@ -1,3 +1,3 @@ -/*! For license information please see prefix-runestone.7e141ad8414abf4a.bundle.js.LICENSE.txt */ -(self.webpackChunkWebComponents=self.webpackChunkWebComponents||[]).push([[222],{3403:()=>{!function(e){var t=function(t,n){var o;(o=function(t,i){i=i||0,t.find("> li > a.internal, > ul, > li > ul").each((function(t,a){var s=e(a),r=a.tagName.toLowerCase(),d=s.children("li"),l=e(s.parent("li"),s.parent().parent("li"));"ul"===r&&i>=n&&d.length>0&&(l.addClass("dropdown-submenu").children("a").first().attr("tabindex",-1),s.addClass("dropdown-menu")),o(s,i+1)}))})(t)};patchTables=function(){e("table.docutils").removeClass("docutils").addClass("table").attr("border",0)},e((function(){if(e("#navbar.navbar-fixed-top").length>0){var n=e("#navbar").height(),o=function(){scrollBy(0,-n-10)};location.hash&&o(),window.addEventListener("hashchange",o)}e(".dropdown-menu").each((function(){e(this).find("ul").each((function(t,n){e(n).addClass("unstyled")}))})),e("ul.globaltoc li").length?t(e("ul.globaltoc"),1):e(".globaltoc-container").remove(),t(e("ul.localtoc"),2),e(".dropdown-menu ul").not(".dropdown-menu").each((function(){var t=e(this),n=t.parent(),o=n[0].tagName.toLowerCase(),i=t.children().detach();"ul"===o?t.replaceWith(i):"li"===o&&(n.after(i),t.remove())})),$localLi=e("ul.localtoc li"),$localLi.length>2&&$localLi.first().after('