From 716902bd768adce53fc3f14b23c02e1869a1b8c9 Mon Sep 17 00:00:00 2001 From: andreasdh Date: Thu, 5 Dec 2024 06:58:33 +0000 Subject: [PATCH] deploy: d429a5973e274a491558cb52af117383876b2605 --- .buildinfo | 4 + .nojekyll | 0 CNAME | 1 + README.html | 986 ++ ...af6c0a3ff2b673a27467437a684c675171cf72.png | Bin 0 -> 7977 bytes ...d7066803010bfb0e80f9c11e344fbf8313ef50.png | Bin 0 -> 34950 bytes ...aa2c21c8d96ddeb4900849eaec8a88afc192de.png | Bin 0 -> 44342 bytes ...16ae6172a4972bb34f3cd8ab67039e705ad80d.png | Bin 0 -> 17600 bytes ...73afbfeae2df84a52c3326796de962e84cb472.png | Bin 0 -> 17841 bytes ...4d283c2a4ceca8c3a3d765865917474edfc3ae.png | Bin 0 -> 21780 bytes ...2e79e4802a18f1e4db262635eae7cc13f62451.png | Bin 0 -> 16927 bytes ...3654cfee2db128a3aa9677643597e7dba73c6d.png | Bin 0 -> 11862 bytes ...21cb492583dcfdec0cf791340323982ed25a86.png | Bin 0 -> 19337 bytes ...3d7a2b9c70d8bb4d92cb95e023c08e3d06b6c6.png | Bin 0 -> 6215 bytes ...dfc2b004e5d2e32e7a7200406b566cf098c810.png | Bin 0 -> 11819 bytes ...bbe14c91ef236491184f8387ed59eaeefb1e4a.png | Bin 0 -> 10147 bytes ...4180cfd3989b629b045b4274528796c1bd0f34.png | Bin 0 -> 14309 bytes ...e57cc0aff02bddcd62409e117ea3d553bd1451.png | Bin 0 -> 5737 bytes ...5ba9fe9a870830b64b39d5002384960ce99401.png | Bin 0 -> 9204 bytes ...0ba53c2deb59a11a5ab7b462cd15d9ddeba990.png | Bin 0 -> 9144 bytes ...6ae5db1a30328e352f4eb057a7643b84d25224.png | Bin 0 -> 13431 bytes ...c9e1f175577fe0167013cce7e863b47016382c.png | Bin 0 -> 63365 bytes ...9a987e656a9e9c5a941c22c4744177ab496591.png | Bin 0 -> 11132 bytes ...1ff61fce34d8adc41b3b62b015176d668cad9f.png | Bin 0 -> 14026 bytes ...e8426c87c004fc5943d6a88f599e931cff1bed.png | Bin 0 -> 12021 bytes ...ad81e560a8daf269c958d8e9aaaeb23693e751.png | Bin 0 -> 8572 bytes ...ec06ee11ba7a5f79f07819526a61e80248ce3d.png | Bin 0 -> 28036 bytes ...1fd1c0bddbc26b068912b73aa3a808c5d33560.png | Bin 0 -> 50046 bytes ...cf75e643ca58391dd8042f470d8d3ac8953b4f.png | Bin 0 -> 8083 bytes ...e9044e5e174e7e5d327281e3d6a391075cb09a.png | Bin 0 -> 8735 bytes ...ce2af13b91ed7ec6192b2b9575c359a17f6fe4.png | Bin 0 -> 11607 bytes ...441aa866de96aee8a77c526c7565f5abca90c6.png | Bin 0 -> 10096 bytes ...3299c24bc69e9aaf03f3532fc117543d207bc5.png | Bin 0 -> 9303 bytes ...fd1288610eeab223f1849943f59a5c2053658d.png | Bin 0 -> 11034 bytes ...d6ae0c56e5e22b75662dc5179558b55b164510.png | Bin 0 -> 8565 bytes ...75f2bffcefb5685caded7c9d32a8ee12c4ee5f.png | Bin 0 -> 6041 bytes ...f8883983a22321ddcf604155b31f3342209328.png | Bin 0 -> 24271 bytes ...103f5b0b4bec26e1c47da232dc7a779f2b5a8c.png | Bin 0 -> 7602 bytes ...b9d071a898e2a1b2254b190fbe7074774bf853.png | Bin 0 -> 7960 bytes ...21f9573077ff2411fde3e678bfe3e86c9c0654.png | Bin 0 -> 399291 bytes ...05551cb75831c8a5a3080b22afc10396d067b6.png | Bin 0 -> 12032 bytes ...14dfb7dc1d1646f1ffa4e6277ecbfe008d15cd.png | Bin 0 -> 11659 bytes ...cb5591a69ba4f4439dcd4598a83d487a8cddc1.png | Bin 0 -> 15324 bytes ...d8119e44f4fcabe714059fb804c0a67ffdfcdd.png | Bin 0 -> 11627 bytes ...58fe00d16582985b3d4e9145c1457e3b55d4d6.png | Bin 0 -> 62715 bytes ...acbe552b27c553b42c860c74decac03355e1b3.png | Bin 0 -> 10267 bytes ...b8bcf960abb3ceaa33fba5b7b19d2774da4ade.png | Bin 0 -> 12228 bytes ...75865a4fb482aa711fb5ad47f89b738471bc4c.png | Bin 0 -> 5505 bytes ...de9cc27c811f84cb216cb1d02a095d0603fed0.png | Bin 0 -> 9918 bytes ...894e700c88e474cd3ad3c18606a79946c6ca52.png | Bin 0 -> 12973 bytes ...910611e3af7ad1f87635fde74e2631d6c9ba58.png | Bin 0 -> 12574 bytes ...0d92205a9a49961ad4b9fd9ab2a95e59982a98.png | Bin 0 -> 5054 bytes ...0c4f3c0b35bdf7079122831a6d3e8cfd6cd7b0.png | Bin 0 -> 15321 bytes ...a54b8eab8346696a6be78c4be28838eb9c6d1e.png | Bin 0 -> 15450 bytes ...329d29d44f823c984a1cb677c21307cd67c0f7.png | Bin 0 -> 16395 bytes ...bc8468d8b764236980f6965d96cf4294a51a29.png | Bin 0 -> 8180 bytes ...1cc30f0846cb7450a8cb666be32d6af241a7d9.png | Bin 0 -> 9140 bytes ...faaceb7fb27f45a78e17a56a08d1cebe5f0f38.png | Bin 0 -> 4815 bytes ...4b0b821e3bfa8892eff69382ca3e0d390f3349.png | Bin 0 -> 11335 bytes ...eff24f5c1058b7dc0f8fdd6790beef60f0142d.png | Bin 0 -> 8257 bytes ...c21f3bae12d14889b78426d7d5ebd0a4b8e62b.png | Bin 0 -> 17815 bytes ...317ab2b4f394a2ebc93fa8483e6dc56d70354a.png | Bin 0 -> 27804 bytes ...24f61588c3847cfd9a0e085207d59c4ff919ac.png | Bin 0 -> 13676 bytes ...c2c19158aa00b445878da5d8224c668cf7b17b.png | Bin 0 -> 11634 bytes ...2772a8eaca7f8e113f3bb4f3adb7f0652e92e1.png | Bin 0 -> 14223 bytes ...075fb922a4e8f14f3d062eefa34d2cb05f134f.png | Bin 0 -> 10565 bytes ...b8cfb87f4d0eb8a5034ba4407033863206881d.png | Bin 0 -> 9598 bytes ...e10735257e8fdb6d356b687c205c7e310272e5.png | Bin 0 -> 20087 bytes ...b0228a1f77c50924b74e339e89e13fdf191e63.png | Bin 0 -> 257176 bytes ...a1db5b4b7da5be1cdc3eb604efda45203db813.png | Bin 0 -> 267017 bytes ...d25e2358b6116c11b67e4e29faa82ad339bab2.png | Bin 0 -> 26866 bytes ...0cf2fc3fe96085c27ce725460717be44708d9c.png | Bin 0 -> 8731 bytes ...8bfedc5712f4287e89d52a14f04caa5f46229e.png | Bin 0 -> 10844 bytes ...0488cab9656db52b44aec919f64f19baf99000.png | Bin 0 -> 9042 bytes ...28788261cdd5a727b7f8966584447e00741370.png | Bin 0 -> 15893 bytes ...81f29f3a887643ac42bd9dc92e149d10541404.png | Bin 0 -> 9107 bytes ...b80e29e9a8e8f6246bbea8ef9b96bbbef76c5e.png | Bin 0 -> 7936 bytes ...ea4fe1d7cc35fe39694eded5c8d2074da491d2.png | Bin 0 -> 12859 bytes ...0a6635c872a67a3f1403d11bdc77d8969b95ce.png | Bin 0 -> 20150 bytes ...0b6d022bec945e9995f9400897eccb00ba325b.png | Bin 0 -> 11617 bytes ...3911c567d502661327ecc93ee410d32276c608.png | Bin 0 -> 11591 bytes ...f31882a45cdbef61c518a7bf4c6cc8524a32ee.png | Bin 0 -> 8986 bytes ...485ff31172d95d88a144988128c1ea08e776ac.png | Bin 0 -> 18172 bytes ...1b2e68287c362f14141cac4191864d23cb4348.png | Bin 0 -> 15789 bytes ...91937e2ffe068571387bed4d6e106b1033c51d.png | Bin 0 -> 87067 bytes ...d945ed6affa18859770710fb83734b2688362b.png | Bin 0 -> 7793 bytes _images/graf1.png | Bin 0 -> 11039 bytes _images/pingvindata.png | Bin 0 -> 483230 bytes _images/pingviner.png | Bin 0 -> 1253379 bytes _sources/README.md | 1 + _sources/datafiler.ipynb | 50 + _sources/docs/datafiler.ipynb | 58 + .../ekstra/Prosjekt i databehandling.ipynb | 189 + .../Str\303\245lingsbalansemodell.ipynb" | 158 + _sources/docs/ekstra/arrayer.ipynb | 156 + _sources/docs/ekstra/datahandtering.ipynb | 145 + .../docs/ekstra/filmer_datasamlinger.ipynb | 156 + .../ekstra/hjelp_modelleringsoppgave2.ipynb | 190 + _sources/docs/ekstra/integrasjon.ipynb | 139 + .../docs/ekstra/kunstig_intelligens_ml.ipynb | 3662 ++++++ _sources/docs/ekstra/likninger.ipynb | 145 + _sources/docs/ekstra/likninger_oppgave1.ipynb | 74 + .../ekstra/maskinl\303\246ring_iris.ipynb" | 2368 ++++ .../ekstra/maskinl\303\246ring_titanic.ipynb" | 645 + .../docs/ekstra/modellering_kinematikk.ipynb | 192 + .../modellering_populasjonsdynamikk.ipynb | 130 + .../modellering_reaksjonskinetikk.ipynb | 109 + .../docs/ekstra/modelleringsoppgave_a.ipynb | 192 + _sources/docs/ekstra/plotting_data.ipynb | 226 + _sources/docs/ekstra/plotting_filmer.ipynb | 92 + _sources/docs/ekstra/repetisjon.ipynb | 39 + _sources/docs/ekstra/tema1.ipynb | 129 + _sources/docs/ekstra/tema10.ipynb | 299 + _sources/docs/ekstra/tema11.ipynb | 70 + _sources/docs/ekstra/tema12.ipynb | 166 + _sources/docs/ekstra/tema2.ipynb | 89 + _sources/docs/ekstra/tema3.ipynb | 184 + _sources/docs/ekstra/tema4.ipynb | 127 + _sources/docs/ekstra/tema5.ipynb | 238 + _sources/docs/ekstra/tema6.ipynb | 326 + _sources/docs/ekstra/tema7.ipynb | 205 + _sources/docs/ekstra/tema8.ipynb | 91 + _sources/docs/ekstra/tema9.ipynb | 39 + .../docs/fagoppgaver/biologioppgaver.ipynb | 170 + _sources/docs/fagoppgaver/kjemioppgaver.ipynb | 304 + _sources/docs/fagoppgaver/teknologi.ipynb | 408 + _sources/docs/intro.md | 15 + _sources/docs/kurs/programmering_intro.ipynb | 254 + _sources/docs/kurs/smittemodellering.ipynb | 195 + .../differensiallikninger_oppgaver.ipynb | 186 + .../docs/oppgaver/likninger_oppgaver.ipynb | 141 + .../maskinlaring_titanic_oppgaver.ipynb | 437 + .../docs/oppgaver/modelleringsprosjekt1.ipynb | 195 + .../docs/oppgaver/modelleringsprosjekt2.ipynb | 301 + .../docs/oppgaver/statistikkprosjekt.ipynb | 43 + _sources/docs/programmering_intro.ipynb | 235 + .../grunnleggende_programmering.ipynb | 786 ++ .../if-tester.ipynb | 556 + .../kom_i_gang.ipynb | 56 + .../lister.ipynb | 244 + .../lokker.ipynb | 1028 ++ .../programmeringsverktoy.ipynb | 155 + .../quiz1.ipynb | 1198 ++ .../quiz2.ipynb | 1023 ++ .../quiz3.ipynb | 1131 ++ .../quiz4.ipynb | 1267 ++ .../quiz5.ipynb | 935 ++ .../quiz6.ipynb | 976 ++ .../tall_variabler.ipynb | 504 + .../tall_variabler_videoer.ipynb | 255 + .../testquiz.ipynb | 46 + .../tema2_kodestrukturering/funksjoner.ipynb | 835 ++ .../funksjoner_filmer.ipynb | 92 + .../klasser_objekter.ipynb | 443 + .../tema3_datahandtering/datasamlinger.ipynb | 422 + .../tema3_datahandtering/lese_filer.ipynb | 820 ++ .../tema3_datahandtering/maskinlaring.ipynb | 458 + .../docs/tema3_datahandtering/plotting.ipynb | 448 + .../tema3_datahandtering/statistikk.ipynb | 951 ++ .../docs/tema4_algoritmer/algoritmer.ipynb | 386 + .../docs/tema4_algoritmer/derivasjon.ipynb | 656 + .../tema4_algoritmer/feilhandtering.ipynb | 35 + .../docs/tema4_algoritmer/integrasjon.ipynb | 459 + .../docs/tema4_algoritmer/likninger.ipynb | 651 + .../tema4_algoritmer/likninger_oppgave1.ipynb | 69 + .../numeriske_biblioteker.ipynb | 236 + .../tema4_algoritmer/symbolsk_utregning.ipynb | 560 + .../differensiallikninger.ipynb | 989 ++ .../diskret_modellering.ipynb | 133 + .../maskinl\303\246ring_titanic.ipynb" | 645 + .../modelleringsrapport.ipynb | 408 + .../newtons_avkjolingslov.ipynb | 166 + .../docs/tema5_modellering/pingviner.ipynb | 664 + .../regresjonsmodeller.ipynb | 263 + .../temperaturmodellering.ipynb | 357 + _sources/docs/temaX_grafikk/Untitled.ipynb | 222 + .../tilfeldige_tall_grafikk.ipynb | 145 + .../docs/temaX_grafikk/tkinter-demo.ipynb | 267 + _sources/docs/test_quiz.ipynb | 2638 ++++ ...e.4045f2051d55cab465a707391d5b2007.min.css | 1 + _sphinx_design_static/design-tabs.js | 27 + .../_sphinx_javascript_frameworks_compat.js | 134 + _static/basic.css | 930 ++ _static/check-solid.svg | 4 + _static/clipboard.min.js | 7 + _static/copy-button.svg | 5 + _static/copybutton.css | 94 + _static/copybutton.js | 248 + _static/copybutton_funcs.js | 73 + _static/datalogo.png | Bin 0 -> 19882 bytes ...e.4045f2051d55cab465a707391d5b2007.min.css | 1 + _static/design-tabs.js | 27 + _static/doctools.js | 264 + _static/documentation_options.js | 14 + _static/file.png | Bin 0 -> 286 bytes _static/images/logo_binder.svg | 19 + _static/images/logo_colab.png | Bin 0 -> 7601 bytes _static/images/logo_deepnote.svg | 1 + _static/images/logo_jupyterhub.svg | 1 + _static/jquery-3.6.0.js | 10881 ++++++++++++++++ _static/jquery.js | 2 + _static/language_data.js | 199 + _static/locales/ar/LC_MESSAGES/booktheme.po | 81 + _static/locales/bg/LC_MESSAGES/booktheme.po | 81 + _static/locales/bn/LC_MESSAGES/booktheme.po | 66 + _static/locales/ca/LC_MESSAGES/booktheme.po | 69 + _static/locales/cs/LC_MESSAGES/booktheme.po | 81 + _static/locales/da/LC_MESSAGES/booktheme.po | 81 + _static/locales/de/LC_MESSAGES/booktheme.po | 81 + _static/locales/el/LC_MESSAGES/booktheme.po | 81 + _static/locales/eo/LC_MESSAGES/booktheme.po | 81 + _static/locales/es/LC_MESSAGES/booktheme.po | 81 + _static/locales/et/LC_MESSAGES/booktheme.po | 81 + _static/locales/fi/LC_MESSAGES/booktheme.po | 81 + _static/locales/fr/LC_MESSAGES/booktheme.po | 81 + _static/locales/hr/LC_MESSAGES/booktheme.po | 81 + _static/locales/id/LC_MESSAGES/booktheme.po | 81 + _static/locales/it/LC_MESSAGES/booktheme.po | 81 + _static/locales/iw/LC_MESSAGES/booktheme.po | 81 + _static/locales/ja/LC_MESSAGES/booktheme.po | 81 + _static/locales/ko/LC_MESSAGES/booktheme.po | 81 + _static/locales/lt/LC_MESSAGES/booktheme.po | 81 + _static/locales/lv/LC_MESSAGES/booktheme.po | 81 + _static/locales/ml/LC_MESSAGES/booktheme.po | 69 + _static/locales/mr/LC_MESSAGES/booktheme.po | 69 + _static/locales/ms/LC_MESSAGES/booktheme.po | 69 + _static/locales/nl/LC_MESSAGES/booktheme.po | 81 + _static/locales/no/LC_MESSAGES/booktheme.po | 81 + _static/locales/pl/LC_MESSAGES/booktheme.po | 81 + _static/locales/pt/LC_MESSAGES/booktheme.po | 81 + _static/locales/ro/LC_MESSAGES/booktheme.po | 81 + _static/locales/ru/LC_MESSAGES/booktheme.po | 81 + _static/locales/sk/LC_MESSAGES/booktheme.po | 81 + _static/locales/sl/LC_MESSAGES/booktheme.po | 81 + _static/locales/sr/LC_MESSAGES/booktheme.po | 81 + _static/locales/sv/LC_MESSAGES/booktheme.po | 81 + _static/locales/ta/LC_MESSAGES/booktheme.po | 69 + _static/locales/te/LC_MESSAGES/booktheme.po | 69 + _static/locales/tg/LC_MESSAGES/booktheme.po | 81 + _static/locales/th/LC_MESSAGES/booktheme.po | 81 + _static/locales/tl/LC_MESSAGES/booktheme.po | 69 + _static/locales/tr/LC_MESSAGES/booktheme.po | 81 + _static/locales/uk/LC_MESSAGES/booktheme.po | 81 + _static/locales/ur/LC_MESSAGES/booktheme.po | 69 + _static/locales/vi/LC_MESSAGES/booktheme.po | 81 + .../locales/zh_CN/LC_MESSAGES/booktheme.po | 81 + .../locales/zh_TW/LC_MESSAGES/booktheme.po | 81 + _static/minus.png | Bin 0 -> 90 bytes ...69c37c29e427902b24a333a5f9fcb2f0b3ac41.css | 2342 ++++ _static/plus.png | Bin 0 -> 90 bytes _static/pygments.css | 169 + _static/sbt-webpack-macros.html | 11 + _static/scripts/bootstrap.js | 32 + _static/scripts/pydata-sphinx-theme.js | 1 + _static/scripts/sphinx-book-theme.js | 2 + _static/scripts/sphinx-book-theme.js.map | 1 + _static/searchtools.js | 531 + _static/sphinx-thebe.css | 129 + _static/sphinx-thebe.js | 126 + _static/styles/bootstrap.css | 6 + _static/styles/pydata-sphinx-theme.css | 1 + _static/styles/sphinx-book-theme.css | 8 + _static/styles/theme.css | 2 + _static/togglebutton.css | 160 + _static/togglebutton.js | 187 + _static/underscore-1.13.1.js | 2042 +++ _static/underscore.js | 6 + _static/vendor/fontawesome/6.1.2/LICENSE.txt | 165 + .../vendor/fontawesome/6.1.2/css/all.min.css | 6 + .../6.1.2/webfonts/fa-brands-400.ttf | Bin 0 -> 181264 bytes .../6.1.2/webfonts/fa-brands-400.woff2 | Bin 0 -> 105112 bytes .../6.1.2/webfonts/fa-regular-400.ttf | Bin 0 -> 60236 bytes .../6.1.2/webfonts/fa-regular-400.woff2 | Bin 0 -> 24028 bytes .../6.1.2/webfonts/fa-solid-900.ttf | Bin 0 -> 389948 bytes .../6.1.2/webfonts/fa-solid-900.woff2 | Bin 0 -> 154840 bytes .../6.1.2/webfonts/fa-v4compatibility.ttf | Bin 0 -> 10084 bytes .../6.1.2/webfonts/fa-v4compatibility.woff2 | Bin 0 -> 4776 bytes _static/webpack-macros.html | 30 + datafiler.html | 995 ++ docs/datafiler.html | 1007 ++ docs/ekstra/Prosjekt i databehandling.html | 1355 ++ .../Str\303\245lingsbalansemodell.html" | 1151 ++ docs/ekstra/arrayer.html | 1165 ++ docs/ekstra/datahandtering.html | 1089 ++ docs/ekstra/filmer_datasamlinger.html | 1102 ++ docs/ekstra/hjelp_modelleringsoppgave2.html | 1169 ++ docs/ekstra/integrasjon.html | 1079 ++ docs/ekstra/kunstig_intelligens_ml.html | 4482 +++++++ docs/ekstra/likninger.html | 1083 ++ docs/ekstra/likninger_oppgave1.html | 1063 ++ "docs/ekstra/maskinl\303\246ring_iris.html" | 3040 +++++ .../ekstra/maskinl\303\246ring_titanic.html" | 1465 +++ docs/ekstra/modellering_kinematikk.html | 1170 ++ .../modellering_populasjonsdynamikk.html | 1135 ++ .../ekstra/modellering_reaksjonskinetikk.html | 1101 ++ docs/ekstra/modelleringsoppgave_a.html | 1205 ++ docs/ekstra/plotting_data.html | 1118 ++ docs/ekstra/plotting_filmer.html | 1057 ++ docs/ekstra/repetisjon.html | 986 ++ docs/ekstra/tema1.html | 1103 ++ docs/ekstra/tema10.html | 1266 ++ docs/ekstra/tema11.html | 1012 ++ docs/ekstra/tema12.html | 1156 ++ docs/ekstra/tema2.html | 1033 ++ docs/ekstra/tema3.html | 1111 ++ docs/ekstra/tema4.html | 1052 ++ docs/ekstra/tema5.html | 1170 ++ docs/ekstra/tema6.html | 1252 ++ docs/ekstra/tema7.html | 1119 ++ docs/ekstra/tema8.html | 1026 ++ docs/ekstra/tema9.html | 986 ++ docs/fagoppgaver/biologioppgaver.html | 1118 ++ docs/fagoppgaver/kjemioppgaver.html | 1256 ++ docs/fagoppgaver/teknologi.html | 1471 +++ docs/intro.html | 1024 ++ docs/kurs/programmering_intro.html | 1219 ++ docs/kurs/smittemodellering.html | 1183 ++ .../differensiallikninger_oppgaver.html | 1194 ++ docs/oppgaver/likninger_oppgaver.html | 1120 ++ .../maskinlaring_titanic_oppgaver.html | 1345 ++ docs/oppgaver/modelleringsprosjekt1.html | 1233 ++ docs/oppgaver/modelleringsprosjekt2.html | 1368 ++ docs/oppgaver/statistikkprosjekt.html | 1011 ++ docs/programmering_intro.html | 1187 ++ .../grunnleggende_programmering.html | 1673 +++ .../if-tester.html | 1534 +++ .../kom_i_gang.html | 1072 ++ .../lister.html | 1225 ++ .../lokker.html | 2092 +++ .../programmeringsverktoy.html | 1102 ++ .../quiz1.html | 2118 +++ .../quiz2.html | 1956 +++ .../quiz3.html | 2055 +++ .../quiz4.html | 2202 ++++ .../quiz5.html | 1869 +++ .../quiz6.html | 1910 +++ .../tall_variabler.html | 1543 +++ .../tall_variabler_videoer.html | 1156 ++ .../testquiz.html | 986 ++ docs/tema2_kodestrukturering/funksjoner.html | 1714 +++ .../funksjoner_filmer.html | 1054 ++ .../klasser_objekter.html | 1381 ++ docs/tema3_datahandtering/datasamlinger.html | 1466 +++ docs/tema3_datahandtering/lese_filer.html | 1584 +++ docs/tema3_datahandtering/maskinlaring.html | 1336 ++ docs/tema3_datahandtering/plotting.html | 1283 ++ docs/tema3_datahandtering/statistikk.html | 1674 +++ docs/tema4_algoritmer/algoritmer.html | 1449 ++ docs/tema4_algoritmer/derivasjon.html | 1545 +++ docs/tema4_algoritmer/feilhandtering.html | 986 ++ docs/tema4_algoritmer/integrasjon.html | 1408 ++ docs/tema4_algoritmer/likninger.html | 1541 +++ docs/tema4_algoritmer/likninger_oppgave1.html | 1063 ++ .../numeriske_biblioteker.html | 1216 ++ docs/tema4_algoritmer/symbolsk_utregning.html | 1436 ++ .../differensiallikninger.html | 1842 +++ .../diskret_modellering.html | 1100 ++ .../maskinl\303\246ring_titanic.html" | 1465 +++ .../modelleringsrapport.html | 1396 ++ .../newtons_avkjolingslov.html | 1069 ++ docs/tema5_modellering/pingviner.html | 1473 +++ .../tema5_modellering/regresjonsmodeller.html | 1198 ++ .../temperaturmodellering.html | 1324 ++ docs/temaX_grafikk/Untitled.html | 1152 ++ .../tilfeldige_tall_grafikk.html | 1086 ++ docs/temaX_grafikk/tkinter-demo.html | 1252 ++ docs/test_quiz.html | 3548 +++++ genindex.html | 928 ++ index.html | 1 + objects.inv | Bin 0 -> 2335 bytes search.html | 938 ++ searchindex.js | 1 + 372 files changed, 186389 insertions(+) create mode 100644 .buildinfo create mode 100644 .nojekyll create mode 100644 CNAME create mode 100644 README.html create mode 100644 _images/0300c7be497769f7336f776c01af6c0a3ff2b673a27467437a684c675171cf72.png create mode 100644 _images/0491e1e92319233093fd5e7fead7066803010bfb0e80f9c11e344fbf8313ef50.png create mode 100644 _images/06f0f3a8df685a4acaa1272bdaaa2c21c8d96ddeb4900849eaec8a88afc192de.png create mode 100644 _images/074d577fc0c2bdb7c44c14c82e16ae6172a4972bb34f3cd8ab67039e705ad80d.png create mode 100644 _images/078845904526f1de40ba5ca3a173afbfeae2df84a52c3326796de962e84cb472.png create mode 100644 _images/09ebbf0cf8f149190963f7f5824d283c2a4ceca8c3a3d765865917474edfc3ae.png create mode 100644 _images/0b18793c2e6ef0df310504faf22e79e4802a18f1e4db262635eae7cc13f62451.png create mode 100644 _images/1590c82e77863b29825a8a9f763654cfee2db128a3aa9677643597e7dba73c6d.png create mode 100644 _images/1ea2efb14933094823172c8e5321cb492583dcfdec0cf791340323982ed25a86.png create mode 100644 _images/2a73b83587bea8742ea1c05f1e3d7a2b9c70d8bb4d92cb95e023c08e3d06b6c6.png create mode 100644 _images/2e05f5a750b2558a8fb8e9ac2fdfc2b004e5d2e32e7a7200406b566cf098c810.png create mode 100644 _images/2e71d882b6a2fd246fbecf8ffdbbe14c91ef236491184f8387ed59eaeefb1e4a.png create mode 100644 _images/2e90d7dcb2f3b6bdc7797db2bd4180cfd3989b629b045b4274528796c1bd0f34.png create mode 100644 _images/2f20ca85b4643f939e041a1d85e57cc0aff02bddcd62409e117ea3d553bd1451.png create mode 100644 _images/3117535104d683b7a607ce112e5ba9fe9a870830b64b39d5002384960ce99401.png create mode 100644 _images/31b54c42d6c2d606e6d17953220ba53c2deb59a11a5ab7b462cd15d9ddeba990.png create mode 100644 _images/33b384dd47c247be7b66b45b566ae5db1a30328e352f4eb057a7643b84d25224.png create mode 100644 _images/38b515ea3daf8aa65345953ca4c9e1f175577fe0167013cce7e863b47016382c.png create mode 100644 _images/39262e8437160fc0fa4e41b0e69a987e656a9e9c5a941c22c4744177ab496591.png create mode 100644 _images/3960a309d73a241d2315cf289a1ff61fce34d8adc41b3b62b015176d668cad9f.png create mode 100644 _images/3a989f5d740b082f18625ed4d7e8426c87c004fc5943d6a88f599e931cff1bed.png create mode 100644 _images/3d21dfafc76d930af24b8faf02ad81e560a8daf269c958d8e9aaaeb23693e751.png create mode 100644 _images/3f36174fe5766039b2e491b78bec06ee11ba7a5f79f07819526a61e80248ce3d.png create mode 100644 _images/41091e2dd231f45077349bb1031fd1c0bddbc26b068912b73aa3a808c5d33560.png create mode 100644 _images/43367e1b17db03e1ebd10b514bcf75e643ca58391dd8042f470d8d3ac8953b4f.png create mode 100644 _images/43ebfd6b7b35a3e45cc6585150e9044e5e174e7e5d327281e3d6a391075cb09a.png create mode 100644 _images/4bc2936e1f67fec6321b2aa0b8ce2af13b91ed7ec6192b2b9575c359a17f6fe4.png create mode 100644 _images/4cddcc924adf7607a6e4575ebf441aa866de96aee8a77c526c7565f5abca90c6.png create mode 100644 _images/5474ca83bc2ccfa6657b098b103299c24bc69e9aaf03f3532fc117543d207bc5.png create mode 100644 _images/5995f8b95f2e3c78c19d9baf45fd1288610eeab223f1849943f59a5c2053658d.png create mode 100644 _images/59c5f36ba4130d5a34d72cc6d9d6ae0c56e5e22b75662dc5179558b55b164510.png create mode 100644 _images/5dc317a401e1ee4bbd97933eb575f2bffcefb5685caded7c9d32a8ee12c4ee5f.png create mode 100644 _images/62f4853de0edbd86df6c69e73df8883983a22321ddcf604155b31f3342209328.png create mode 100644 _images/695988a6d8dcb461f5535c63df103f5b0b4bec26e1c47da232dc7a779f2b5a8c.png create mode 100644 _images/6be7161bdb4b177ba71d003377b9d071a898e2a1b2254b190fbe7074774bf853.png create mode 100644 _images/715dda1e7c2832668a6f076b7321f9573077ff2411fde3e678bfe3e86c9c0654.png create mode 100644 _images/7431ca11e2ec6477c4eb68b1a605551cb75831c8a5a3080b22afc10396d067b6.png create mode 100644 _images/78b50b1f112a30b4fa4d21c99314dfb7dc1d1646f1ffa4e6277ecbfe008d15cd.png create mode 100644 _images/8060312ef77d987b8d12addf21cb5591a69ba4f4439dcd4598a83d487a8cddc1.png create mode 100644 _images/820328cb6d0b14cdab80081959d8119e44f4fcabe714059fb804c0a67ffdfcdd.png create mode 100644 _images/822bb093ce5d8e8331f4d28f1b58fe00d16582985b3d4e9145c1457e3b55d4d6.png create mode 100644 _images/824e9c3dcccad88610852dd4b1acbe552b27c553b42c860c74decac03355e1b3.png create mode 100644 _images/82b0112ac0d65af2c6f948ee1cb8bcf960abb3ceaa33fba5b7b19d2774da4ade.png create mode 100644 _images/843d69fc2513037a3611755a5b75865a4fb482aa711fb5ad47f89b738471bc4c.png create mode 100644 _images/86fd817870de92f0d86ea7ed39de9cc27c811f84cb216cb1d02a095d0603fed0.png create mode 100644 _images/8739d12f7dfac7822aa1b905b4894e700c88e474cd3ad3c18606a79946c6ca52.png create mode 100644 _images/88848d68293aa485b3a27ac28a910611e3af7ad1f87635fde74e2631d6c9ba58.png create mode 100644 _images/8b1b8865688b47115714cb053a0d92205a9a49961ad4b9fd9ab2a95e59982a98.png create mode 100644 _images/8b8100aaa88d3519be2e0043360c4f3c0b35bdf7079122831a6d3e8cfd6cd7b0.png create mode 100644 _images/8db497e1e4e19f6dc7688345fba54b8eab8346696a6be78c4be28838eb9c6d1e.png create mode 100644 _images/90689173cfb73ca2d496af6d98329d29d44f823c984a1cb677c21307cd67c0f7.png create mode 100644 _images/92bc01781c6dfc740ed85bca74bc8468d8b764236980f6965d96cf4294a51a29.png create mode 100644 _images/9a89d6854899bad4609317cd061cc30f0846cb7450a8cb666be32d6af241a7d9.png create mode 100644 _images/a12332cec3e85cdf9fe42fc691faaceb7fb27f45a78e17a56a08d1cebe5f0f38.png create mode 100644 _images/aa41fff3f835f7cf1dd52cea254b0b821e3bfa8892eff69382ca3e0d390f3349.png create mode 100644 _images/acd99d6305c2c5b0405dd546bdeff24f5c1058b7dc0f8fdd6790beef60f0142d.png create mode 100644 _images/b171b2e3b415000d9bc1676033c21f3bae12d14889b78426d7d5ebd0a4b8e62b.png create mode 100644 _images/b624a85440b2f8f8b896392111317ab2b4f394a2ebc93fa8483e6dc56d70354a.png create mode 100644 _images/b694b5603e6688126896a8a7f524f61588c3847cfd9a0e085207d59c4ff919ac.png create mode 100644 _images/b8fca37aab4876351bc90beb83c2c19158aa00b445878da5d8224c668cf7b17b.png create mode 100644 _images/baf5300739aa4908dba227644c2772a8eaca7f8e113f3bb4f3adb7f0652e92e1.png create mode 100644 _images/bd62d9b7a0632af407cc578af2075fb922a4e8f14f3d062eefa34d2cb05f134f.png create mode 100644 _images/be108ea126bfce2da9dee46addb8cfb87f4d0eb8a5034ba4407033863206881d.png create mode 100644 _images/c0fd31cd9fa96b67edbd0c7fdde10735257e8fdb6d356b687c205c7e310272e5.png create mode 100644 _images/c9bfc9beb463a18026d32d86a2b0228a1f77c50924b74e339e89e13fdf191e63.png create mode 100644 _images/daf942dd43adcf70ff832d44f3a1db5b4b7da5be1cdc3eb604efda45203db813.png create mode 100644 _images/e11c4f093345676678ed535b99d25e2358b6116c11b67e4e29faa82ad339bab2.png create mode 100644 _images/e41f560e6efb11cecf94f7d9b80cf2fc3fe96085c27ce725460717be44708d9c.png create mode 100644 _images/e8ce4b1fd36c66752db69954058bfedc5712f4287e89d52a14f04caa5f46229e.png create mode 100644 _images/eb2c0c50232e8ee10c858a18b10488cab9656db52b44aec919f64f19baf99000.png create mode 100644 _images/eb4b7cdef67ea97baa3824f25528788261cdd5a727b7f8966584447e00741370.png create mode 100644 _images/ef7404d0a9ed2237e6c77dbea281f29f3a887643ac42bd9dc92e149d10541404.png create mode 100644 _images/f0681d9c20edcb52108fad9f41b80e29e9a8e8f6246bbea8ef9b96bbbef76c5e.png create mode 100644 _images/f4d0b4cefb2578b8a4ba3ef088ea4fe1d7cc35fe39694eded5c8d2074da491d2.png create mode 100644 _images/f5122c9722337dcdd40e9f3b8e0a6635c872a67a3f1403d11bdc77d8969b95ce.png create mode 100644 _images/f7a914ae99ec21e1ecfaaab5760b6d022bec945e9995f9400897eccb00ba325b.png create mode 100644 _images/f7ae9087d4c5f7ff9669ecab3b3911c567d502661327ecc93ee410d32276c608.png create mode 100644 _images/f8b63aa0b98a0f8831ac3c7ca0f31882a45cdbef61c518a7bf4c6cc8524a32ee.png create mode 100644 _images/fa1f5774a5a1badb497922da7b485ff31172d95d88a144988128c1ea08e776ac.png create mode 100644 _images/fbe207c3f3e4f1b4c6d912bfc31b2e68287c362f14141cac4191864d23cb4348.png create mode 100644 _images/fe39371f27b679b763b859d1f891937e2ffe068571387bed4d6e106b1033c51d.png create mode 100644 _images/ff55ac88edb7cdb8136afef88dd945ed6affa18859770710fb83734b2688362b.png create mode 100644 _images/graf1.png create mode 100644 _images/pingvindata.png create mode 100644 _images/pingviner.png create mode 100644 _sources/README.md create mode 100644 _sources/datafiler.ipynb create mode 100644 _sources/docs/datafiler.ipynb create mode 100644 _sources/docs/ekstra/Prosjekt i databehandling.ipynb create mode 100644 "_sources/docs/ekstra/Str\303\245lingsbalansemodell.ipynb" create mode 100644 _sources/docs/ekstra/arrayer.ipynb create mode 100644 _sources/docs/ekstra/datahandtering.ipynb create mode 100644 _sources/docs/ekstra/filmer_datasamlinger.ipynb create mode 100644 _sources/docs/ekstra/hjelp_modelleringsoppgave2.ipynb create mode 100644 _sources/docs/ekstra/integrasjon.ipynb create mode 100644 _sources/docs/ekstra/kunstig_intelligens_ml.ipynb create mode 100644 _sources/docs/ekstra/likninger.ipynb create mode 100644 _sources/docs/ekstra/likninger_oppgave1.ipynb create mode 100644 "_sources/docs/ekstra/maskinl\303\246ring_iris.ipynb" create mode 100644 "_sources/docs/ekstra/maskinl\303\246ring_titanic.ipynb" create mode 100644 _sources/docs/ekstra/modellering_kinematikk.ipynb create mode 100644 _sources/docs/ekstra/modellering_populasjonsdynamikk.ipynb create mode 100644 _sources/docs/ekstra/modellering_reaksjonskinetikk.ipynb create mode 100644 _sources/docs/ekstra/modelleringsoppgave_a.ipynb create mode 100644 _sources/docs/ekstra/plotting_data.ipynb create mode 100644 _sources/docs/ekstra/plotting_filmer.ipynb create mode 100644 _sources/docs/ekstra/repetisjon.ipynb create mode 100644 _sources/docs/ekstra/tema1.ipynb create mode 100644 _sources/docs/ekstra/tema10.ipynb create mode 100644 _sources/docs/ekstra/tema11.ipynb create mode 100644 _sources/docs/ekstra/tema12.ipynb create mode 100644 _sources/docs/ekstra/tema2.ipynb create mode 100644 _sources/docs/ekstra/tema3.ipynb create mode 100644 _sources/docs/ekstra/tema4.ipynb create mode 100644 _sources/docs/ekstra/tema5.ipynb create mode 100644 _sources/docs/ekstra/tema6.ipynb create mode 100644 _sources/docs/ekstra/tema7.ipynb create mode 100644 _sources/docs/ekstra/tema8.ipynb create mode 100644 _sources/docs/ekstra/tema9.ipynb create mode 100644 _sources/docs/fagoppgaver/biologioppgaver.ipynb create mode 100644 _sources/docs/fagoppgaver/kjemioppgaver.ipynb create mode 100644 _sources/docs/fagoppgaver/teknologi.ipynb create mode 100644 _sources/docs/intro.md create mode 100644 _sources/docs/kurs/programmering_intro.ipynb create mode 100644 _sources/docs/kurs/smittemodellering.ipynb create mode 100644 _sources/docs/oppgaver/differensiallikninger_oppgaver.ipynb create mode 100644 _sources/docs/oppgaver/likninger_oppgaver.ipynb create mode 100644 _sources/docs/oppgaver/maskinlaring_titanic_oppgaver.ipynb create mode 100644 _sources/docs/oppgaver/modelleringsprosjekt1.ipynb create mode 100644 _sources/docs/oppgaver/modelleringsprosjekt2.ipynb create mode 100644 _sources/docs/oppgaver/statistikkprosjekt.ipynb create mode 100644 _sources/docs/programmering_intro.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/grunnleggende_programmering.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/if-tester.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/kom_i_gang.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/lister.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/lokker.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/programmeringsverktoy.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/quiz1.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/quiz2.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/quiz3.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/quiz4.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/quiz5.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/quiz6.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/tall_variabler.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/tall_variabler_videoer.ipynb create mode 100644 _sources/docs/tema1_grunnleggende_programmering/testquiz.ipynb create mode 100644 _sources/docs/tema2_kodestrukturering/funksjoner.ipynb create mode 100644 _sources/docs/tema2_kodestrukturering/funksjoner_filmer.ipynb create mode 100644 _sources/docs/tema2_kodestrukturering/klasser_objekter.ipynb create mode 100644 _sources/docs/tema3_datahandtering/datasamlinger.ipynb create mode 100644 _sources/docs/tema3_datahandtering/lese_filer.ipynb create mode 100644 _sources/docs/tema3_datahandtering/maskinlaring.ipynb create mode 100644 _sources/docs/tema3_datahandtering/plotting.ipynb create mode 100644 _sources/docs/tema3_datahandtering/statistikk.ipynb create mode 100644 _sources/docs/tema4_algoritmer/algoritmer.ipynb create mode 100644 _sources/docs/tema4_algoritmer/derivasjon.ipynb create mode 100644 _sources/docs/tema4_algoritmer/feilhandtering.ipynb create mode 100644 _sources/docs/tema4_algoritmer/integrasjon.ipynb create mode 100644 _sources/docs/tema4_algoritmer/likninger.ipynb create mode 100644 _sources/docs/tema4_algoritmer/likninger_oppgave1.ipynb create mode 100644 _sources/docs/tema4_algoritmer/numeriske_biblioteker.ipynb create mode 100644 _sources/docs/tema4_algoritmer/symbolsk_utregning.ipynb create mode 100644 _sources/docs/tema5_modellering/differensiallikninger.ipynb create mode 100644 _sources/docs/tema5_modellering/diskret_modellering.ipynb create mode 100644 "_sources/docs/tema5_modellering/maskinl\303\246ring_titanic.ipynb" create mode 100644 _sources/docs/tema5_modellering/modelleringsrapport.ipynb create mode 100644 _sources/docs/tema5_modellering/newtons_avkjolingslov.ipynb create mode 100644 _sources/docs/tema5_modellering/pingviner.ipynb create mode 100644 _sources/docs/tema5_modellering/regresjonsmodeller.ipynb create mode 100644 _sources/docs/tema5_modellering/temperaturmodellering.ipynb create mode 100644 _sources/docs/temaX_grafikk/Untitled.ipynb create mode 100644 _sources/docs/temaX_grafikk/tilfeldige_tall_grafikk.ipynb create mode 100644 _sources/docs/temaX_grafikk/tkinter-demo.ipynb create mode 100644 _sources/docs/test_quiz.ipynb create mode 100644 _sphinx_design_static/design-style.4045f2051d55cab465a707391d5b2007.min.css create mode 100644 _sphinx_design_static/design-tabs.js create mode 100644 _static/_sphinx_javascript_frameworks_compat.js create mode 100644 _static/basic.css create mode 100644 _static/check-solid.svg create mode 100644 _static/clipboard.min.js create mode 100644 _static/copy-button.svg create mode 100644 _static/copybutton.css create mode 100644 _static/copybutton.js create mode 100644 _static/copybutton_funcs.js create mode 100644 _static/datalogo.png create mode 100644 _static/design-style.4045f2051d55cab465a707391d5b2007.min.css create mode 100644 _static/design-tabs.js create mode 100644 _static/doctools.js create mode 100644 _static/documentation_options.js create mode 100644 _static/file.png create mode 100644 _static/images/logo_binder.svg create mode 100644 _static/images/logo_colab.png create mode 100644 _static/images/logo_deepnote.svg create mode 100644 _static/images/logo_jupyterhub.svg create mode 100644 _static/jquery-3.6.0.js create mode 100644 _static/jquery.js create mode 100644 _static/language_data.js create mode 100644 _static/locales/ar/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/bg/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/bn/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/ca/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/cs/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/da/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/de/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/el/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/eo/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/es/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/et/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/fi/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/fr/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/hr/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/id/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/it/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/iw/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/ja/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/ko/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/lt/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/lv/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/ml/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/mr/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/ms/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/nl/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/no/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/pl/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/pt/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/ro/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/ru/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/sk/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/sl/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/sr/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/sv/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/ta/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/te/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/tg/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/th/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/tl/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/tr/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/uk/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/ur/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/vi/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/zh_CN/LC_MESSAGES/booktheme.po create mode 100644 _static/locales/zh_TW/LC_MESSAGES/booktheme.po create mode 100644 _static/minus.png create mode 100644 _static/mystnb.4510f1fc1dee50b3e5859aac5469c37c29e427902b24a333a5f9fcb2f0b3ac41.css create mode 100644 _static/plus.png create mode 100644 _static/pygments.css create mode 100644 _static/sbt-webpack-macros.html create mode 100644 _static/scripts/bootstrap.js create mode 100644 _static/scripts/pydata-sphinx-theme.js create mode 100644 _static/scripts/sphinx-book-theme.js create mode 100644 _static/scripts/sphinx-book-theme.js.map create mode 100644 _static/searchtools.js create mode 100644 _static/sphinx-thebe.css create mode 100644 _static/sphinx-thebe.js create mode 100644 _static/styles/bootstrap.css create mode 100644 _static/styles/pydata-sphinx-theme.css create mode 100644 _static/styles/sphinx-book-theme.css create mode 100644 _static/styles/theme.css create mode 100644 _static/togglebutton.css create mode 100644 _static/togglebutton.js create mode 100644 _static/underscore-1.13.1.js create mode 100644 _static/underscore.js create mode 100644 _static/vendor/fontawesome/6.1.2/LICENSE.txt create mode 100644 _static/vendor/fontawesome/6.1.2/css/all.min.css create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-brands-400.ttf create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-brands-400.woff2 create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-regular-400.ttf create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-regular-400.woff2 create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-solid-900.ttf create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-solid-900.woff2 create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-v4compatibility.ttf create mode 100644 _static/vendor/fontawesome/6.1.2/webfonts/fa-v4compatibility.woff2 create mode 100644 _static/webpack-macros.html create mode 100644 datafiler.html create mode 100644 docs/datafiler.html create mode 100644 docs/ekstra/Prosjekt i databehandling.html create mode 100644 "docs/ekstra/Str\303\245lingsbalansemodell.html" create mode 100644 docs/ekstra/arrayer.html create mode 100644 docs/ekstra/datahandtering.html create mode 100644 docs/ekstra/filmer_datasamlinger.html create mode 100644 docs/ekstra/hjelp_modelleringsoppgave2.html create mode 100644 docs/ekstra/integrasjon.html create mode 100644 docs/ekstra/kunstig_intelligens_ml.html create mode 100644 docs/ekstra/likninger.html create mode 100644 docs/ekstra/likninger_oppgave1.html create mode 100644 "docs/ekstra/maskinl\303\246ring_iris.html" create mode 100644 "docs/ekstra/maskinl\303\246ring_titanic.html" create mode 100644 docs/ekstra/modellering_kinematikk.html create mode 100644 docs/ekstra/modellering_populasjonsdynamikk.html create mode 100644 docs/ekstra/modellering_reaksjonskinetikk.html create mode 100644 docs/ekstra/modelleringsoppgave_a.html create mode 100644 docs/ekstra/plotting_data.html create mode 100644 docs/ekstra/plotting_filmer.html create mode 100644 docs/ekstra/repetisjon.html create mode 100644 docs/ekstra/tema1.html create mode 100644 docs/ekstra/tema10.html create mode 100644 docs/ekstra/tema11.html create mode 100644 docs/ekstra/tema12.html create mode 100644 docs/ekstra/tema2.html create mode 100644 docs/ekstra/tema3.html create mode 100644 docs/ekstra/tema4.html create mode 100644 docs/ekstra/tema5.html create mode 100644 docs/ekstra/tema6.html create mode 100644 docs/ekstra/tema7.html create mode 100644 docs/ekstra/tema8.html create mode 100644 docs/ekstra/tema9.html create mode 100644 docs/fagoppgaver/biologioppgaver.html create mode 100644 docs/fagoppgaver/kjemioppgaver.html create mode 100644 docs/fagoppgaver/teknologi.html create mode 100644 docs/intro.html create mode 100644 docs/kurs/programmering_intro.html create mode 100644 docs/kurs/smittemodellering.html create mode 100644 docs/oppgaver/differensiallikninger_oppgaver.html create mode 100644 docs/oppgaver/likninger_oppgaver.html create mode 100644 docs/oppgaver/maskinlaring_titanic_oppgaver.html create mode 100644 docs/oppgaver/modelleringsprosjekt1.html create mode 100644 docs/oppgaver/modelleringsprosjekt2.html create mode 100644 docs/oppgaver/statistikkprosjekt.html create mode 100644 docs/programmering_intro.html create mode 100644 docs/tema1_grunnleggende_programmering/grunnleggende_programmering.html create mode 100644 docs/tema1_grunnleggende_programmering/if-tester.html create mode 100644 docs/tema1_grunnleggende_programmering/kom_i_gang.html create mode 100644 docs/tema1_grunnleggende_programmering/lister.html create mode 100644 docs/tema1_grunnleggende_programmering/lokker.html create mode 100644 docs/tema1_grunnleggende_programmering/programmeringsverktoy.html create mode 100644 docs/tema1_grunnleggende_programmering/quiz1.html create mode 100644 docs/tema1_grunnleggende_programmering/quiz2.html create mode 100644 docs/tema1_grunnleggende_programmering/quiz3.html create mode 100644 docs/tema1_grunnleggende_programmering/quiz4.html create mode 100644 docs/tema1_grunnleggende_programmering/quiz5.html create mode 100644 docs/tema1_grunnleggende_programmering/quiz6.html create mode 100644 docs/tema1_grunnleggende_programmering/tall_variabler.html create mode 100644 docs/tema1_grunnleggende_programmering/tall_variabler_videoer.html create mode 100644 docs/tema1_grunnleggende_programmering/testquiz.html create mode 100644 docs/tema2_kodestrukturering/funksjoner.html create mode 100644 docs/tema2_kodestrukturering/funksjoner_filmer.html create mode 100644 docs/tema2_kodestrukturering/klasser_objekter.html create mode 100644 docs/tema3_datahandtering/datasamlinger.html create mode 100644 docs/tema3_datahandtering/lese_filer.html create mode 100644 docs/tema3_datahandtering/maskinlaring.html create mode 100644 docs/tema3_datahandtering/plotting.html create mode 100644 docs/tema3_datahandtering/statistikk.html create mode 100644 docs/tema4_algoritmer/algoritmer.html create mode 100644 docs/tema4_algoritmer/derivasjon.html create mode 100644 docs/tema4_algoritmer/feilhandtering.html create mode 100644 docs/tema4_algoritmer/integrasjon.html create mode 100644 docs/tema4_algoritmer/likninger.html create mode 100644 docs/tema4_algoritmer/likninger_oppgave1.html create mode 100644 docs/tema4_algoritmer/numeriske_biblioteker.html create mode 100644 docs/tema4_algoritmer/symbolsk_utregning.html create mode 100644 docs/tema5_modellering/differensiallikninger.html create mode 100644 docs/tema5_modellering/diskret_modellering.html create mode 100644 "docs/tema5_modellering/maskinl\303\246ring_titanic.html" create mode 100644 docs/tema5_modellering/modelleringsrapport.html create mode 100644 docs/tema5_modellering/newtons_avkjolingslov.html create mode 100644 docs/tema5_modellering/pingviner.html create mode 100644 docs/tema5_modellering/regresjonsmodeller.html create mode 100644 docs/tema5_modellering/temperaturmodellering.html create mode 100644 docs/temaX_grafikk/Untitled.html create mode 100644 docs/temaX_grafikk/tilfeldige_tall_grafikk.html create mode 100644 docs/temaX_grafikk/tkinter-demo.html create mode 100644 docs/test_quiz.html create mode 100644 genindex.html create mode 100644 index.html create mode 100644 objects.inv create mode 100644 search.html create mode 100644 searchindex.js diff --git a/.buildinfo b/.buildinfo new file mode 100644 index 00000000..5b426202 --- /dev/null +++ b/.buildinfo @@ -0,0 +1,4 @@ +# Sphinx build info version 1 +# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. +config: dcc52364a7347a6e40def564c63d0350 +tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/CNAME b/CNAME new file mode 100644 index 00000000..8f20aa3c --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +progmod.no diff --git a/README.html b/README.html new file mode 100644 index 00000000..97c4c111 --- /dev/null +++ b/README.html @@ -0,0 +1,986 @@ + + + + + + + + + ProMod — Programmering og modellering + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + +
+
+ + + + + +
+
+ +
+ + + + + + + + + + + + + + +
+
+ + + +
+ +
+
+ +
+ + + + +
+
+ +
+
+ + + + + + +
+
+
+ + + +
+

ProMod

+ +
+
+ +
+
+
+ +
+ +
+

ProMod#

+
+ + + + +
+ + + + +
+ +
+
+
+ +
+ + + + +
+
+ +
+ + +
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/_images/0300c7be497769f7336f776c01af6c0a3ff2b673a27467437a684c675171cf72.png b/_images/0300c7be497769f7336f776c01af6c0a3ff2b673a27467437a684c675171cf72.png new file mode 100644 index 0000000000000000000000000000000000000000..68f782311c01d14237dd7dd4180e2eba4db9d48b GIT binary patch literal 7977 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 literal 0 HcmV?d00001 diff --git a/_images/0491e1e92319233093fd5e7fead7066803010bfb0e80f9c11e344fbf8313ef50.png b/_images/0491e1e92319233093fd5e7fead7066803010bfb0e80f9c11e344fbf8313ef50.png new file mode 100644 index 0000000000000000000000000000000000000000..18ee2b28ee6aad85bcaff1a41082222acef2681c GIT binary patch literal 34950 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�TRlQ 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 literal 0 HcmV?d00001 diff --git a/_images/06f0f3a8df685a4acaa1272bdaaa2c21c8d96ddeb4900849eaec8a88afc192de.png b/_images/06f0f3a8df685a4acaa1272bdaaa2c21c8d96ddeb4900849eaec8a88afc192de.png new file mode 100644 index 0000000000000000000000000000000000000000..3283e69ac6e88a5392a7d2043c0254c47e5d755a GIT binary patch literal 44342 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 literal 0 HcmV?d00001 diff --git a/_images/078845904526f1de40ba5ca3a173afbfeae2df84a52c3326796de962e84cb472.png b/_images/078845904526f1de40ba5ca3a173afbfeae2df84a52c3326796de962e84cb472.png new file mode 100644 index 0000000000000000000000000000000000000000..e06bc262b3ce13487b4ee0841c3f57b503e77176 GIT binary patch literal 17841 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




Answer String:
';\n", + " console.log(responses);\n", + " responses.forEach((response, index) => {\n", + " if (response) {\n", + " console.log(index + ': ' + response);\n", + " stringResponses+= index + ': ' + response +\"
\";\n", + " }\n", + " });\n", + " responsesContainer.innerHTML=stringResponses;\n", + "}\n", + "function check_mc() {\n", + " var id = this.id.split('-')[0];\n", + " //var response = this.id.split('-')[1];\n", + " //console.log(response);\n", + " //console.log(\"In check_mc(), id=\"+id);\n", + " //console.log(event.srcElement.id) \n", + " //console.log(event.srcElement.dataset.correct) \n", + " //console.log(event.srcElement.dataset.feedback)\n", + "\n", + " var label = event.srcElement;\n", + " //console.log(label, label.nodeName);\n", + " var depth = 0;\n", + " while ((label.nodeName != \"LABEL\") && (depth < 20)) {\n", + " label = label.parentElement;\n", + " console.log(depth, label);\n", + " depth++;\n", + " }\n", + "\n", + "\n", + "\n", + " var answers = label.parentElement.children;\n", + "\n", + " //console.log(answers);\n", + "\n", + "\n", + " // Split behavior based on multiple choice vs many choice:\n", + " var fb = document.getElementById(\"fb\" + id);\n", + "\n", + "\n", + "\n", + "\n", + " if (fb.dataset.numcorrect == 1) {\n", + " // What follows is for the saved responses stuff\n", + " var outerContainer = fb.parentElement.parentElement;\n", + " var responsesContainer = document.getElementById(\"responses\" + outerContainer.id);\n", + " if (responsesContainer) {\n", + " //console.log(responsesContainer);\n", + " var response = label.firstChild.innerText;\n", + " if (label.querySelector(\".QuizCode\")){\n", + " response+= label.querySelector(\".QuizCode\").firstChild.innerText;\n", + " }\n", + " console.log(response);\n", + " //console.log(document.getElementById(\"quizWrap\"+id));\n", + " var qnum = document.getElementById(\"quizWrap\"+id).dataset.qnum;\n", + " console.log(\"Question \" + qnum);\n", + " //console.log(id, \", got numcorrect=\",fb.dataset.numcorrect);\n", + " var responses=JSON.parse(responsesContainer.dataset.responses);\n", + " console.log(responses);\n", + " responses[qnum]= response;\n", + " responsesContainer.setAttribute('data-responses', JSON.stringify(responses));\n", + " printResponses(responsesContainer);\n", + " }\n", + " // End code to preserve responses\n", + " \n", + " for (var i = 0; i < answers.length; i++) {\n", + " var child = answers[i];\n", + " //console.log(child);\n", + " child.className = \"MCButton\";\n", + " }\n", + "\n", + "\n", + "\n", + " if (label.dataset.correct == \"true\") {\n", + " // console.log(\"Correct action\");\n", + " if (\"feedback\" in label.dataset) {\n", + " fb.textContent = jaxify(label.dataset.feedback);\n", + " } else {\n", + " fb.textContent = \"Correct!\";\n", + " }\n", + " label.classList.add(\"correctButton\");\n", + "\n", + " fb.className = \"Feedback\";\n", + " fb.classList.add(\"correct\");\n", + "\n", + " } else {\n", + " if (\"feedback\" in label.dataset) {\n", + " fb.textContent = jaxify(label.dataset.feedback);\n", + " } else {\n", + " fb.textContent = \"Incorrect -- try again.\";\n", + " }\n", + " //console.log(\"Error action\");\n", + " label.classList.add(\"incorrectButton\");\n", + " fb.className = \"Feedback\";\n", + " fb.classList.add(\"incorrect\");\n", + " }\n", + " }\n", + " else {\n", + " var reset = false;\n", + " var feedback;\n", + " if (label.dataset.correct == \"true\") {\n", + " if (\"feedback\" in label.dataset) {\n", + " feedback = jaxify(label.dataset.feedback);\n", + " } else {\n", + " feedback = \"Correct!\";\n", + " }\n", + " if (label.dataset.answered <= 0) {\n", + " if (fb.dataset.answeredcorrect < 0) {\n", + " fb.dataset.answeredcorrect = 1;\n", + " reset = true;\n", + " } else {\n", + " fb.dataset.answeredcorrect++;\n", + " }\n", + " if (reset) {\n", + " for (var i = 0; i < answers.length; i++) {\n", + " var child = answers[i];\n", + " child.className = \"MCButton\";\n", + " child.dataset.answered = 0;\n", + " }\n", + " }\n", + " label.classList.add(\"correctButton\");\n", + " label.dataset.answered = 1;\n", + " fb.className = \"Feedback\";\n", + " fb.classList.add(\"correct\");\n", + "\n", + " }\n", + " } else {\n", + " if (\"feedback\" in label.dataset) {\n", + " feedback = jaxify(label.dataset.feedback);\n", + " } else {\n", + " feedback = \"Incorrect -- try again.\";\n", + " }\n", + " if (fb.dataset.answeredcorrect > 0) {\n", + " fb.dataset.answeredcorrect = -1;\n", + " reset = true;\n", + " } else {\n", + " fb.dataset.answeredcorrect--;\n", + " }\n", + "\n", + " if (reset) {\n", + " for (var i = 0; i < answers.length; i++) {\n", + " var child = answers[i];\n", + " child.className = \"MCButton\";\n", + " child.dataset.answered = 0;\n", + " }\n", + " }\n", + " label.classList.add(\"incorrectButton\");\n", + " fb.className = \"Feedback\";\n", + " fb.classList.add(\"incorrect\");\n", + " }\n", + " // What follows is for the saved responses stuff\n", + " var outerContainer = fb.parentElement.parentElement;\n", + " var responsesContainer = document.getElementById(\"responses\" + outerContainer.id);\n", + " if (responsesContainer) {\n", + " //console.log(responsesContainer);\n", + " var response = label.firstChild.innerText;\n", + " if (label.querySelector(\".QuizCode\")){\n", + " response+= label.querySelector(\".QuizCode\").firstChild.innerText;\n", + " }\n", + " console.log(response);\n", + " //console.log(document.getElementById(\"quizWrap\"+id));\n", + " var qnum = document.getElementById(\"quizWrap\"+id).dataset.qnum;\n", + " console.log(\"Question \" + qnum);\n", + " //console.log(id, \", got numcorrect=\",fb.dataset.numcorrect);\n", + " var responses=JSON.parse(responsesContainer.dataset.responses);\n", + " if (label.dataset.correct == \"true\") {\n", + " if (typeof(responses[qnum]) == \"object\"){\n", + " if (!responses[qnum].includes(response))\n", + " responses[qnum].push(response);\n", + " } else{\n", + " responses[qnum]= [ response ];\n", + " }\n", + " } else {\n", + " responses[qnum]= response;\n", + " }\n", + " console.log(responses);\n", + " responsesContainer.setAttribute('data-responses', JSON.stringify(responses));\n", + " printResponses(responsesContainer);\n", + " }\n", + " // End save responses stuff\n", + "\n", + "\n", + "\n", + " var numcorrect = fb.dataset.numcorrect;\n", + " var answeredcorrect = fb.dataset.answeredcorrect;\n", + " if (answeredcorrect >= 0) {\n", + " fb.textContent = feedback + \" [\" + answeredcorrect + \"/\" + numcorrect + \"]\";\n", + " } else {\n", + " fb.textContent = feedback + \" [\" + 0 + \"/\" + numcorrect + \"]\";\n", + " }\n", + "\n", + "\n", + " }\n", + "\n", + " if (typeof MathJax != 'undefined') {\n", + " var version = MathJax.version;\n", + " console.log('MathJax version', version);\n", + " if (version[0] == \"2\") {\n", + " MathJax.Hub.Queue([\"Typeset\", MathJax.Hub]);\n", + " } else if (version[0] == \"3\") {\n", + " MathJax.typeset([fb]);\n", + " }\n", + " } else {\n", + " console.log('MathJax not detected');\n", + " }\n", + "\n", + "}\n", + "\n", + "function make_mc(qa, shuffle_answers, outerqDiv, qDiv, aDiv, id) {\n", + " var shuffled;\n", + " if (shuffle_answers == \"True\") {\n", + " //console.log(shuffle_answers+\" read as true\");\n", + " shuffled = getRandomSubarray(qa.answers, qa.answers.length);\n", + " } else {\n", + " //console.log(shuffle_answers+\" read as false\");\n", + " shuffled = qa.answers;\n", + " }\n", + "\n", + "\n", + " var num_correct = 0;\n", + "\n", + "\n", + "\n", + " shuffled.forEach((item, index, ans_array) => {\n", + " //console.log(answer);\n", + "\n", + " // Make input element\n", + " var inp = document.createElement(\"input\");\n", + " inp.type = \"radio\";\n", + " inp.id = \"quizo\" + id + index;\n", + " inp.style = \"display:none;\";\n", + " aDiv.append(inp);\n", + "\n", + " //Make label for input element\n", + " var lab = document.createElement(\"label\");\n", + " lab.className = \"MCButton\";\n", + " lab.id = id + '-' + index;\n", + " lab.onclick = check_mc;\n", + " var aSpan = document.createElement('span');\n", + " aSpan.classsName = \"\";\n", + " //qDiv.id=\"quizQn\"+id+index;\n", + " if (\"answer\" in item) {\n", + " aSpan.innerHTML = jaxify(item.answer);\n", + " //aSpan.innerHTML=item.answer;\n", + " }\n", + " lab.append(aSpan);\n", + "\n", + " // Create div for code inside question\n", + " var codeSpan;\n", + " if (\"code\" in item) {\n", + " codeSpan = document.createElement('span');\n", + " codeSpan.id = \"code\" + id + index;\n", + " codeSpan.className = \"QuizCode\";\n", + " var codePre = document.createElement('pre');\n", + " codeSpan.append(codePre);\n", + " var codeCode = document.createElement('code');\n", + " codePre.append(codeCode);\n", + " codeCode.innerHTML = item.code;\n", + " lab.append(codeSpan);\n", + " //console.log(codeSpan);\n", + " }\n", + "\n", + " //lab.textContent=item.answer;\n", + "\n", + " // Set the data attributes for the answer\n", + " lab.setAttribute('data-correct', item.correct);\n", + " if (item.correct) {\n", + " num_correct++;\n", + " }\n", + " if (\"feedback\" in item) {\n", + " lab.setAttribute('data-feedback', item.feedback);\n", + " }\n", + " lab.setAttribute('data-answered', 0);\n", + "\n", + " aDiv.append(lab);\n", + "\n", + " });\n", + "\n", + " if (num_correct > 1) {\n", + " outerqDiv.className = \"ManyChoiceQn\";\n", + " } else {\n", + " outerqDiv.className = \"MultipleChoiceQn\";\n", + " }\n", + "\n", + " return num_correct;\n", + "\n", + "}\n", + "function check_numeric(ths, event) {\n", + "\n", + " if (event.keyCode === 13) {\n", + " ths.blur();\n", + "\n", + " var id = ths.id.split('-')[0];\n", + "\n", + " var submission = ths.value;\n", + " if (submission.indexOf('/') != -1) {\n", + " var sub_parts = submission.split('/');\n", + " //console.log(sub_parts);\n", + " submission = sub_parts[0] / sub_parts[1];\n", + " }\n", + " //console.log(\"Reader entered\", submission);\n", + "\n", + " if (\"precision\" in ths.dataset) {\n", + " var precision = ths.dataset.precision;\n", + " // console.log(\"1:\", submission)\n", + " submission = Math.round((1 * submission + Number.EPSILON) * 10 ** precision) / 10 ** precision;\n", + " // console.log(\"Rounded to \", submission, \" precision=\", precision );\n", + " }\n", + "\n", + "\n", + " //console.log(\"In check_numeric(), id=\"+id);\n", + " //console.log(event.srcElement.id) \n", + " //console.log(event.srcElement.dataset.feedback)\n", + "\n", + " var fb = document.getElementById(\"fb\" + id);\n", + " fb.style.display = \"none\";\n", + " fb.textContent = \"Incorrect -- try again.\";\n", + "\n", + " var answers = JSON.parse(ths.dataset.answers);\n", + " //console.log(answers);\n", + "\n", + " var defaultFB = \"\";\n", + " var correct;\n", + " var done = false;\n", + " answers.every(answer => {\n", + " //console.log(answer.type);\n", + "\n", + " correct = false;\n", + " // if (answer.type==\"value\"){\n", + " if ('value' in answer) {\n", + " if (submission == answer.value) {\n", + " fb.textContent = jaxify(answer.feedback);\n", + " correct = answer.correct;\n", + " //console.log(answer.correct);\n", + " done = true;\n", + " }\n", + " // } else if (answer.type==\"range\") {\n", + " } else if ('range' in answer) {\n", + " //console.log(answer.range);\n", + " if ((submission >= answer.range[0]) && (submission < answer.range[1])) {\n", + " fb.textContent = jaxify(answer.feedback);\n", + " correct = answer.correct;\n", + " //console.log(answer.correct);\n", + " done = true;\n", + " }\n", + " } else if (answer.type == \"default\") {\n", + " defaultFB = answer.feedback;\n", + " }\n", + " if (done) {\n", + " return false; // Break out of loop if this has been marked correct\n", + " } else {\n", + " return true; // Keep looking for case that includes this as a correct answer\n", + " }\n", + " });\n", + "\n", + " if ((!done) && (defaultFB != \"\")) {\n", + " fb.innerHTML = jaxify(defaultFB);\n", + " //console.log(\"Default feedback\", defaultFB);\n", + " }\n", + "\n", + " fb.style.display = \"block\";\n", + " if (correct) {\n", + " ths.className = \"Input-text\";\n", + " ths.classList.add(\"correctButton\");\n", + " fb.className = \"Feedback\";\n", + " fb.classList.add(\"correct\");\n", + " } else {\n", + " ths.className = \"Input-text\";\n", + " ths.classList.add(\"incorrectButton\");\n", + " fb.className = \"Feedback\";\n", + " fb.classList.add(\"incorrect\");\n", + " }\n", + "\n", + " // What follows is for the saved responses stuff\n", + " var outerContainer = fb.parentElement.parentElement;\n", + " var responsesContainer = document.getElementById(\"responses\" + outerContainer.id);\n", + " if (responsesContainer) {\n", + " console.log(submission);\n", + " var qnum = document.getElementById(\"quizWrap\"+id).dataset.qnum;\n", + " //console.log(\"Question \" + qnum);\n", + " //console.log(id, \", got numcorrect=\",fb.dataset.numcorrect);\n", + " var responses=JSON.parse(responsesContainer.dataset.responses);\n", + " console.log(responses);\n", + " if (submission == ths.value){\n", + " responses[qnum]= submission;\n", + " } else {\n", + " responses[qnum]= ths.value + \"(\" + submission +\")\";\n", + " }\n", + " responsesContainer.setAttribute('data-responses', JSON.stringify(responses));\n", + " printResponses(responsesContainer);\n", + " }\n", + " // End code to preserve responses\n", + "\n", + " if (typeof MathJax != 'undefined') {\n", + " var version = MathJax.version;\n", + " console.log('MathJax version', version);\n", + " if (version[0] == \"2\") {\n", + " MathJax.Hub.Queue([\"Typeset\", MathJax.Hub]);\n", + " } else if (version[0] == \"3\") {\n", + " MathJax.typeset([fb]);\n", + " }\n", + " } else {\n", + " console.log('MathJax not detected');\n", + " }\n", + " return false;\n", + " }\n", + "\n", + "}\n", + "\n", + "function isValid(el, charC) {\n", + " //console.log(\"Input char: \", charC);\n", + " if (charC == 46) {\n", + " if (el.value.indexOf('.') === -1) {\n", + " return true;\n", + " } else if (el.value.indexOf('/') != -1) {\n", + " var parts = el.value.split('/');\n", + " if (parts[1].indexOf('.') === -1) {\n", + " return true;\n", + " }\n", + " }\n", + " else {\n", + " return false;\n", + " }\n", + " } else if (charC == 47) {\n", + " if (el.value.indexOf('/') === -1) {\n", + " if ((el.value != \"\") && (el.value != \".\")) {\n", + " return true;\n", + " } else {\n", + " return false;\n", + " }\n", + " } else {\n", + " return false;\n", + " }\n", + " } else if (charC == 45) {\n", + " var edex = el.value.indexOf('e');\n", + " if (edex == -1) {\n", + " edex = el.value.indexOf('E');\n", + " }\n", + "\n", + " if (el.value == \"\") {\n", + " return true;\n", + " } else if (edex == (el.value.length - 1)) { // If just after e or E\n", + " return true;\n", + " } else {\n", + " return false;\n", + " }\n", + " } else if (charC == 101) { // \"e\"\n", + " if ((el.value.indexOf('e') === -1) && (el.value.indexOf('E') === -1) && (el.value.indexOf('/') == -1)) {\n", + " // Prev symbol must be digit or decimal point:\n", + " if (el.value.slice(-1).search(/\\d/) >= 0) {\n", + " return true;\n", + " } else if (el.value.slice(-1).search(/\\./) >= 0) {\n", + " return true;\n", + " } else {\n", + " return false;\n", + " }\n", + " } else {\n", + " return false;\n", + " }\n", + " } else {\n", + " if (charC > 31 && (charC < 48 || charC > 57))\n", + " return false;\n", + " }\n", + " return true;\n", + "}\n", + "\n", + "function numeric_keypress(evnt) {\n", + " var charC = (evnt.which) ? evnt.which : evnt.keyCode;\n", + "\n", + " if (charC == 13) {\n", + " check_numeric(this, evnt);\n", + " } else {\n", + " return isValid(this, charC);\n", + " }\n", + "}\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "function make_numeric(qa, outerqDiv, qDiv, aDiv, id) {\n", + "\n", + "\n", + "\n", + " //console.log(answer);\n", + "\n", + "\n", + " outerqDiv.className = \"NumericQn\";\n", + " aDiv.style.display = 'block';\n", + "\n", + " var lab = document.createElement(\"label\");\n", + " lab.className = \"InpLabel\";\n", + " lab.textContent = \"Type numeric answer here:\";\n", + " aDiv.append(lab);\n", + "\n", + " var inp = document.createElement(\"input\");\n", + " inp.type = \"text\";\n", + " //inp.id=\"input-\"+id;\n", + " inp.id = id + \"-0\";\n", + " inp.className = \"Input-text\";\n", + " inp.setAttribute('data-answers', JSON.stringify(qa.answers));\n", + " if (\"precision\" in qa) {\n", + " inp.setAttribute('data-precision', qa.precision);\n", + " }\n", + " aDiv.append(inp);\n", + " //console.log(inp);\n", + "\n", + " //inp.addEventListener(\"keypress\", check_numeric);\n", + " //inp.addEventListener(\"keypress\", numeric_keypress);\n", + " /*\n", + " inp.addEventListener(\"keypress\", function(event) {\n", + " return numeric_keypress(this, event);\n", + " }\n", + " );\n", + " */\n", + " //inp.onkeypress=\"return numeric_keypress(this, event)\";\n", + " inp.onkeypress = numeric_keypress;\n", + " inp.onpaste = event => false;\n", + "\n", + " inp.addEventListener(\"focus\", function (event) {\n", + " this.value = \"\";\n", + " return false;\n", + " }\n", + " );\n", + "\n", + "\n", + "}\n", + "function jaxify(string) {\n", + " var mystring = string;\n", + "\n", + " var count = 0;\n", + " var loc = mystring.search(/([^\\\\]|^)(\\$)/);\n", + "\n", + " var count2 = 0;\n", + " var loc2 = mystring.search(/([^\\\\]|^)(\\$\\$)/);\n", + "\n", + " //console.log(loc);\n", + "\n", + " while ((loc >= 0) || (loc2 >= 0)) {\n", + "\n", + " /* Have to replace all the double $$ first with current implementation */\n", + " if (loc2 >= 0) {\n", + " if (count2 % 2 == 0) {\n", + " mystring = mystring.replace(/([^\\\\]|^)(\\$\\$)/, \"$1\\\\[\");\n", + " } else {\n", + " mystring = mystring.replace(/([^\\\\]|^)(\\$\\$)/, \"$1\\\\]\");\n", + " }\n", + " count2++;\n", + " } else {\n", + " if (count % 2 == 0) {\n", + " mystring = mystring.replace(/([^\\\\]|^)(\\$)/, \"$1\\\\(\");\n", + " } else {\n", + " mystring = mystring.replace(/([^\\\\]|^)(\\$)/, \"$1\\\\)\");\n", + " }\n", + " count++;\n", + " }\n", + " loc = mystring.search(/([^\\\\]|^)(\\$)/);\n", + " loc2 = mystring.search(/([^\\\\]|^)(\\$\\$)/);\n", + " //console.log(mystring,\", loc:\",loc,\", loc2:\",loc2);\n", + " }\n", + "\n", + " //console.log(mystring);\n", + " return mystring;\n", + "}\n", + "\n", + "\n", + "function show_questions(json, mydiv) {\n", + " console.log('show_questions');\n", + " //var mydiv=document.getElementById(myid);\n", + " var shuffle_questions = mydiv.dataset.shufflequestions;\n", + " var num_questions = mydiv.dataset.numquestions;\n", + " var shuffle_answers = mydiv.dataset.shuffleanswers;\n", + "\n", + " if (num_questions > json.length) {\n", + " num_questions = json.length;\n", + " }\n", + "\n", + " var questions;\n", + " if ((num_questions < json.length) || (shuffle_questions == \"True\")) {\n", + " //console.log(num_questions+\",\"+json.length);\n", + " questions = getRandomSubarray(json, num_questions);\n", + " } else {\n", + " questions = json;\n", + " }\n", + "\n", + " //console.log(\"SQ: \"+shuffle_questions+\", NQ: \" + num_questions + \", SA: \", shuffle_answers);\n", + "\n", + " // Iterate over questions\n", + " questions.forEach((qa, index, array) => {\n", + " //console.log(qa.question); \n", + "\n", + " var id = makeid(8);\n", + " //console.log(id);\n", + "\n", + "\n", + " // Create Div to contain question and answers\n", + " var iDiv = document.createElement('div');\n", + " //iDiv.id = 'quizWrap' + id + index;\n", + " iDiv.id = 'quizWrap' + id;\n", + " iDiv.className = 'Quiz';\n", + " iDiv.setAttribute('data-qnum', index);\n", + " mydiv.appendChild(iDiv);\n", + " // iDiv.innerHTML=qa.question;\n", + "\n", + " var outerqDiv = document.createElement('div');\n", + " outerqDiv.id = \"OuterquizQn\" + id + index;\n", + "\n", + " iDiv.append(outerqDiv);\n", + "\n", + " // Create div to contain question part\n", + " var qDiv = document.createElement('div');\n", + " qDiv.id = \"quizQn\" + id + index;\n", + " //qDiv.textContent=qa.question;\n", + " qDiv.innerHTML = jaxify(qa.question);\n", + "\n", + " outerqDiv.append(qDiv);\n", + "\n", + " // Create div for code inside question\n", + " var codeDiv;\n", + " if (\"code\" in qa) {\n", + " codeDiv = document.createElement('div');\n", + " codeDiv.id = \"code\" + id + index;\n", + " codeDiv.className = \"QuizCode\";\n", + " var codePre = document.createElement('pre');\n", + " codeDiv.append(codePre);\n", + " var codeCode = document.createElement('code');\n", + " codePre.append(codeCode);\n", + " codeCode.innerHTML = qa.code;\n", + " outerqDiv.append(codeDiv);\n", + " //console.log(codeDiv);\n", + " }\n", + "\n", + "\n", + " // Create div to contain answer part\n", + " var aDiv = document.createElement('div');\n", + " aDiv.id = \"quizAns\" + id + index;\n", + " aDiv.className = 'Answer';\n", + " iDiv.append(aDiv);\n", + "\n", + " //console.log(qa.type);\n", + "\n", + " var num_correct;\n", + " if (qa.type == \"multiple_choice\") {\n", + " num_correct = make_mc(qa, shuffle_answers, outerqDiv, qDiv, aDiv, id);\n", + " } else if (qa.type == \"many_choice\") {\n", + " num_correct = make_mc(qa, shuffle_answers, outerqDiv, qDiv, aDiv, id);\n", + " } else if (qa.type == \"numeric\") {\n", + " //console.log(\"numeric\");\n", + " make_numeric(qa, outerqDiv, qDiv, aDiv, id);\n", + " }\n", + "\n", + "\n", + " //Make div for feedback\n", + " var fb = document.createElement(\"div\");\n", + " fb.id = \"fb\" + id;\n", + " //fb.style=\"font-size: 20px;text-align:center;\";\n", + " fb.className = \"Feedback\";\n", + " fb.setAttribute(\"data-answeredcorrect\", 0);\n", + " fb.setAttribute(\"data-numcorrect\", num_correct);\n", + " iDiv.append(fb);\n", + "\n", + "\n", + " });\n", + " var preserveResponses = mydiv.dataset.preserveresponses;\n", + " console.log(preserveResponses);\n", + " console.log(preserveResponses == \"true\");\n", + " if (preserveResponses == \"true\") {\n", + " console.log(preserveResponses);\n", + " // Create Div to contain record of answers\n", + " var iDiv = document.createElement('div');\n", + " iDiv.id = 'responses' + mydiv.id;\n", + " iDiv.className = 'JCResponses';\n", + " // Create a place to store responses as an empty array\n", + " iDiv.setAttribute('data-responses', '[]');\n", + "\n", + " // Dummy Text\n", + " iDiv.innerHTML=\"Select your answers and then follow the directions that will appear here.\"\n", + " //iDiv.className = 'Quiz';\n", + " mydiv.appendChild(iDiv);\n", + " }\n", + "//console.log(\"At end of show_questions\");\n", + " if (typeof MathJax != 'undefined') {\n", + " console.log(\"MathJax version\", MathJax.version);\n", + " var version = MathJax.version;\n", + " setTimeout(function(){\n", + " var version = MathJax.version;\n", + " console.log('After sleep, MathJax version', version);\n", + " if (version[0] == \"2\") {\n", + " MathJax.Hub.Queue([\"Typeset\", MathJax.Hub]);\n", + " } else if (version[0] == \"3\") {\n", + " MathJax.typeset([mydiv]);\n", + " }\n", + " }, 500);\n", + "if (typeof version == 'undefined') {\n", + " } else\n", + " {\n", + " if (version[0] == \"2\") {\n", + " MathJax.Hub.Queue([\"Typeset\", MathJax.Hub]);\n", + " } else if (version[0] == \"3\") {\n", + " MathJax.typeset([mydiv]);\n", + " } else {\n", + " console.log(\"MathJax not found\");\n", + " }\n", + " }\n", + " }\n", + " return false;\n", + "}\n", + "\n", + " //console.log(element);\n", + " {\n", + " const jmscontroller = new AbortController();\n", + " const signal = jmscontroller.signal;\n", + "\n", + " setTimeout(() => jmscontroller.abort(), 5000);\n", + "\n", + " fetch(\"https://raw.githubusercontent.com/andreasdh/Programmering-og-modellering/master/docs/quizer/quiz1.json\", {signal})\n", + " .then(response => response.json())\n", + " .then(json => show_questions(json, youVCDPnIJSZ))\n", + " .catch(err => {\n", + " console.log(\"Fetch error or timeout\");\n", + " show_questions(questionsyouVCDPnIJSZ, youVCDPnIJSZ);\n", + " });\n", + " }\n", + " " + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "display_quiz('https://raw.githubusercontent.com/andreasdh/Programmering-og-modellering/master/docs/quizer/quiz1.json')" + ] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "finalized": { + "timestamp": 1622574926456, + "trusted": true + }, + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema1_grunnleggende_programmering/quiz2.ipynb b/_sources/docs/tema1_grunnleggende_programmering/quiz2.ipynb new file mode 100644 index 00000000..3f190b01 --- /dev/null +++ b/_sources/docs/tema1_grunnleggende_programmering/quiz2.ipynb @@ -0,0 +1,1023 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Quiz 2: Lister" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "scrolled": true, + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + " " + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from jupyterquiz import display_quiz\n", + "\n", + "display_quiz('https://raw.githubusercontent.com/andreasdh/Programmering-og-modellering/master/docs/quizer/quiz2.json')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "finalized": { + "timestamp": 1622574926456, + "trusted": true + }, + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema1_grunnleggende_programmering/quiz3.ipynb b/_sources/docs/tema1_grunnleggende_programmering/quiz3.ipynb new file mode 100644 index 00000000..43fa7383 --- /dev/null +++ b/_sources/docs/tema1_grunnleggende_programmering/quiz3.ipynb @@ -0,0 +1,1131 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Quiz 3: Vilkår (if-tester)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "scrolled": true, + "tags": [ + "remove-input" + ] + }, + "outputs": [], + "source": [ + "from jupyterquiz import display_quiz" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + " " + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "display_quiz('https://raw.githubusercontent.com/andreasdh/Programmering-og-modellering/master/docs/quizer/quiz3.json')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "finalized": { + "timestamp": 1622574926456, + "trusted": true + }, + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema1_grunnleggende_programmering/quiz4.ipynb b/_sources/docs/tema1_grunnleggende_programmering/quiz4.ipynb new file mode 100644 index 00000000..2073ecb0 --- /dev/null +++ b/_sources/docs/tema1_grunnleggende_programmering/quiz4.ipynb @@ -0,0 +1,1267 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Quiz 4: Løkker" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + " " + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from jupyterquiz import display_quiz\n", + "display_quiz('https://raw.githubusercontent.com/andreasdh/Programmering-og-modellering/master/docs/quizer/quiz4.json')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "finalized": { + "timestamp": 1622574926456, + "trusted": true + }, + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema1_grunnleggende_programmering/quiz5.ipynb b/_sources/docs/tema1_grunnleggende_programmering/quiz5.ipynb new file mode 100644 index 00000000..21e4ca06 --- /dev/null +++ b/_sources/docs/tema1_grunnleggende_programmering/quiz5.ipynb @@ -0,0 +1,935 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Quiz 5: Funksjoner" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "scrolled": true, + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + " " + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from jupyterquiz import display_quiz\n", + "display_quiz('https://raw.githubusercontent.com/andreasdh/Programmering-og-modellering/master/docs/quizer/quiz5.json')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "finalized": { + "timestamp": 1622574926456, + "trusted": true + }, + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema1_grunnleggende_programmering/quiz6.ipynb b/_sources/docs/tema1_grunnleggende_programmering/quiz6.ipynb new file mode 100644 index 00000000..1c5f5514 --- /dev/null +++ b/_sources/docs/tema1_grunnleggende_programmering/quiz6.ipynb @@ -0,0 +1,976 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Quiz 6: Datasamlinger (arrayer og dictionarier)\n", + "\n", + "Regn med at alle nødvendige funksjoner er importert i disse spørsmålene." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + " " + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from jupyterquiz import display_quiz\n", + "display_quiz('https://raw.githubusercontent.com/andreasdh/Programmering-og-modellering/master/docs/quizer/quiz6.json')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "finalized": { + "timestamp": 1622574926456, + "trusted": true + }, + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema1_grunnleggende_programmering/tall_variabler.ipynb b/_sources/docs/tema1_grunnleggende_programmering/tall_variabler.ipynb new file mode 100644 index 00000000..05b783a6 --- /dev/null +++ b/_sources/docs/tema1_grunnleggende_programmering/tall_variabler.ipynb @@ -0,0 +1,504 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Variabler og datatyper\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med dette temaet, skal du kunne:\n", + "1. kjøre enkle programmer med en programmeringseditor\n", + "2. definere og gjøre rede for ulike variabeltyper: heltall, flyttall og strenger\n", + "3. skrive ut output ved å bruke print-funksjonen\n", + "4. gjøre enkel aritmetikk i Python\n", + "5. ta input fra brukeren av programmet\n", + "6. importere og bruke biblioteker\n", + "```\n", + "\n", + "## Variabler\n", + "\n", + "```{admonition} Variabel\n", + "En programmeringsvariabel er en størrelse som lagrer en verdi i et program.\n", + "```\n", + "\n", + "Variabler er spesielt nyttig når vi skal bruke samme verdi flere ganger, eller når vi skal oppdatere en verdi underveis i programmet. Et enkelt eksempel er hvis vi ønsker å finne ti tall i en bestemt tallrekke. Dette kan vi beskrive slik med en pseudokode:\n", + "\n", + "```{code-block} text\n", + "tall = 0\n", + "gjenta 10 ganger:\n", + " tall = tall + 3\n", + " vis tall på skjermen\n", + "```\n", + "\n", + "Du kan tenke på en variabel som en boks vi kan putte ting i, og som vi kan modifisere, endre og hente informasjon fra underveis.\n", + "\n", + "```{admonition} Hva er en pseudokode?\n", + ":class: caution, dropdown\n", + "En pseudokode er en beskrivelse av en algoritme uten å bruke et bestemt programmeringsspråk. Pseudokode kan skrives på mange måter og kan beskrives med ord, bilder og symboler.\n", + "```\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Nedenfor er et eksempel på en programkode i Python der vi beregner gjennomsnittshastigheten i m/s for ulike legemer som har beveget seg henholdsvis 3, 4.5, 7 og 14 meter i løpet av 3 sekunder. Hva er fordelen med å bruke variablen _t_ her?\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "t = 3\n", + "\n", + "v1 = 3/t\n", + "v2 = 4.5/t\n", + "v3 = 7/t\n", + "v4 = 14/t" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Print\n", + "For å få noe ut av programmet vårt, må vi be datamaskinen om å \"skrive ut\" noe. Dette gjør vi med kommandoen _print_. Dersom vi ønsker å skrive ut flere variabler, må vi skille dem med komma i print-funksjonen. Her ser du tre måter å bruke print-kommandoen på:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1.0\n", + "1.0 1.5 2.3333333333333335 4.666666666666667\n", + "Gjennomsnittsfarten for legeme 4 er: 4.666666666666667 m/s.\n" + ] + } + ], + "source": [ + "print(v1)\n", + "print(v1, v2, v3, v4)\n", + "print(\"Gjennomsnittsfarten for legeme 4 er: \", v4, \"m/s.\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Lag et program som regner ut arealet av et rektangel og skriver ut en svarsetning med enheter.\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "side1 = 5\n", + "side2 = 3\n", + "A = side1*side2\n", + " \n", + "print(\"Arealet til rektangelet er:\", A, \"kvadratmeter\")\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Kommentarer\n", + "Bruk av kommentarer i koden er viktig for at en selv skal huske hva koden illustrerer, hvilke enheter som brukes, og liknende. I tillegg er det viktig dersom andre skal bruke koden din til noe, for eksempel i store samarbeidsprosjekter. Kommentarer legges til ved å sette en \\# foran kommentaren. Eventuelt, dersom du kommenterer over flere linjer, kan du bruke triple anførselstegn før og etter kommentarene. Her er et eksempel:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Den kinetiske energien er 1.0 J.\n" + ] + } + ], + "source": [ + "\"\"\"\n", + "Regner ut kinetisk energi i én dimensjon \n", + "for et legeme med masse m og hastighet v\n", + "\"\"\"\n", + "\n", + "m = 2.0 # masse i kg\n", + "v = 1.0 # fart i m/s\n", + "\n", + "E = 0.5*m*v**2 # Kinetisk energi i J\n", + "print(\"Den kinetiske energien er\", E, \"J.\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Aritmetikk\n", + "Vi kan bruke Python som en enkel kalkulator. Vi har blant annet følgende operatorer:\n", + "\n", + "|Operator | Forklaring |\n", + "|---------|------------|\n", + "| + | Addisjon (a + b) |\n", + "| - | Subtraksjon (a - b) |\n", + "| * |Multiplikasjon (a\\*b) |\n", + "| / | Divisjon (a/b) |\n", + "| ** | Eksponent (a\\*\\*b) |\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Det finnes også to spesielle operatorer: // og %. Finn ut hva disse operatorene gjør ved å prøve dere fram i koderuta nedenfor. Vi har lagt til fire linjer som du kan bruke som utgangspunkt.\n", + "```\n", + "\n", + "

\n", + "\n", + "```{admonition} Løsning\n", + ":class: tip, dropdown\n", + "// utfører heltallsdivisjon, det vil si at operatoren finner det høyeste heltallet divisjonen går opp i. 24 // 5 = 4 fordi 4 * 5 = 20, som er det nærmeste vi kommer 24 i 5-gangen uten å overskride 24. Resten etter denne divisjonen er 4. Det får vi fram ved å bruke «modulusoperatoren» %, som ikke har noe med prosent å gjøre. 24 % 5 er altså 4.\n", + "```\n", + "\n", + "### Biblioteker\n", + "De fleste matematiske operatorer og funksjoner finnes ikke i standard Python. For å få tilgang til mer avansert matematikk, må vi importere _biblioteker_ (eller _moduler_) inn i Python-programmet vårt. Et bibliotek er en pakke med ekstra kommandoer og funksjoner som vi kan bruke, som _sqrt_, _cos_, _log_ og så videre. Det finnes ulike måter å importere på. Her er noen måter vi kan importere det svært nyttige _nympy_-biblioteket (**num**erical **py**thon):" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "# Første metode: Importerer kun funksjonene du trenger\n", + "from numpy import log10\n", + "\n", + "pH = -log10(1E-7)\n", + "\n", + "# Andre metode: Importere hele biblioteket\n", + "import numpy\n", + "\n", + "A = 2 \n", + "radius = numpy.sqrt(A/numpy.pi)\n", + "\n", + "# Tredje metode: Importere hele biblioteket med et alias. Dette er den mest brukte metoden.\n", + "import numpy as np\n", + "\n", + "A = 2\n", + "radius = np.sqrt(A/np.pi)\n", + "\n", + "# Fjerde metode: Importere alt fra biblioteket uten å spesifisere hvor funksjonene kommer fra\n", + "from numpy import *\n", + "\n", + "vinkel = arccos(0.5) # Invers cosinus av 0.5\n", + "pH = -log10(1E-7) # pH = -log([H3O+]), log10 er tierlogaritmen" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Lag et program som regner ut radius til en sirkel med arealet 4 ved å importere sqrt og pi fra numpy-biblioteket. Kunne du gjort beregningene uten disse funksjonene?\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "from numpy import pi, sqrt\n", + "\n", + "A = 4\n", + "r = sqrt(A/pi) # Vi kunne også skrevet (A/pi)**0.5\n", + " \n", + "print(\"Radius til sirkelen er:\", r)\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + " ## Brukerinput\n", + "Vi kan også få programmet vårt til å spørre brukeren av programmet om å taste inn enkelte variabler selv. Dette gjøres i samme ruta som du får _output_ i editoren din. For å få brukerinput, bruker vi funksjonen _input_. Kjør programmet nedenfor og beskriv hvordan det fungerer. Prøv å bytte ut ulike kodelinjer og se hva slags output du får. Du må skrive inn input-verdiene i konsollen til høyre i koderuta.\n", + "\n", + "" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Input er ikke nødvendig for annet enn å lage et mer interaktivt program. Men hvis du lager et program med input, bør du legge til input helt til slutt. Start med å gi variablene verdier, og test at programmet fungerer. Deretter kan du bruke input på de variablene du ønsker. Dette er for å unngå å måtte taste inn input-verdier hver gang du kjører programmet ditt, spesielt hvis det inneholder feil du må rette opp!\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Modifiser programmet fra forrige underveisoppgave slik at det tar arealet som input fra brukeren.\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "from numpy import pi, sqrt\n", + "\n", + "A = input(\"Skriv arealet til sirkelen: \")\n", + "A = float(A)\n", + "r = sqrt(A/pi) # Vi kunne også skrevet (A/pi)**0.5\n", + " \n", + "print(\"Radius til sirkelen er:\", r)\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Variabeltyper\n", + "I matematikk har vi ulike tallmengder, som _reelle tall_, _irrasjonale tall_, _rasjonale tall_, _naturlige tall_, _hele tall_ og _komplekse tall_. Disse tallmengdene er uendelig store, som betyr at de ikke kan eksistere på en datamaskin. Vi har derfor en del andre tallmengder og variabeltyper. For eksempel heter desimaltall _float_ fordi ikke alle desimaltall er representert på en datamaskin. Det er altså en annen tallmengde. De viktigste variabeltypene ser du her:\n", + "\n", + "| Datatype | Forklaring |Eksempel |\n", + "|--------|----------------------|-------------|\n", + "| Heltall (int) | Hele tall | 42 |\n", + "| Flyttall (float) | Desimaltall | 3.1415 |\n", + "| Streng (str) | Tekst | \"Hei!\"|\n", + "| Boolsk | Sannhet |True eller False |\n", + "\n", + "Når vi ønsker input fra en bruker av et program, må vi spesifisere hvilken variabeltype vi ønsker at inputen skal bli tolket som. Standard er tekst, men hvis vi for eksempel \"adderer\" teksten \"4\" med \"2\", får vi \"42\", mens tallet 4 + tallet 2 gir tallet 6. Eksempelet nedenfor illustrerer dette." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Skriv et tall: 4\n", + "Skriv et tall til: 2\n", + "Summen av teksten er: 42 og summen av tallene er: 6.0\n" + ] + } + ], + "source": [ + "tekst1 = input(\"Skriv et tall: \")\n", + "tekst2 = input(\"Skriv et tall til: \")\n", + "\n", + "tall1 = float(tekst1)\n", + "tall2 = float(tekst2)\n", + "\n", + "tullsvar = tekst1 + tekst2\n", + "tallsvar = tall1 + tall2\n", + "\n", + "print(\"Summen av teksten er:\", tullsvar, \"og summen av tallene er:\", tallsvar)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Lag et program som skriver \"Hei, _navn_!\" til skjermen. Brukeren skal bes om å taste inn navnet sitt. Dette navnet skal lagres i en variabel, og så skrives ut som i setningen ovenfor.\n", + "\n", + "Utvid programmet til å spørre om alderen din. La programmet skrive ut en kommentar til alderen din til slutt, for eksempel \"_din alder_ er jammen gammelt!\"\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "navn = input(\"Hva heter du? \")\n", + "print(\"Hei,\", navn, \"!\") # Du kan eventuelt bruke + istedenfor komma mellom strenger for å unngå mellomrom\n", + "\n", + "alder = input(\"Hvor gammel er du? \")\n", + "print(alder, \"år er jammen gammelt!\")\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Datamaskinen krever nøyaktige instrukser\n", + "Når du lager sammensatte programmer med Python, må du huske på følgende:\n", + "- Programmet leses fra topp til bunn og fra venstre til høyre.\n", + "- Små bokstaver er IKKE lik store bokstaver (p $\\neq$ P).\n", + "- Python bryr seg lite om mellomrom, med mindre det er på starten av ei linje. Bruk mellomrom for å gjøre programmet ditt mer lesbart.\n", + "- Øv deg på å lese feilmeldinger: Du får beskjed om linja der feilen befinner seg og typen feil.\n", + "\n", + "````{admonition} Underveisoppgave\n", + ":class: tip\n", + "Forklar hva som er feil med følgende programmer:\n", + "\n", + "```{code-block} Python\n", + "tall1 = 1\n", + "print(tall1 + tall2)\n", + "tall2 = 3\n", + "```\n", + "```{code-block} Python\n", + "navn = \"Gunnar\"\n", + "print(Navn)\n", + "```\n", + "```{code-block} Python\n", + "a = 2\n", + "b = 3\n", + "\n", + "print(\"Differansen mellom\" a \"og\" b \"=\" a + b)\n", + "```\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "1. Programmet leser fra topp til bunn. Derfor må vi definere tall2 før vi bruker det til addisjon. Linje 2 og 3 må derfor bytte plass.\n", + "\n", + "2. Variabelen _navn_ har liten _n_. Variabelen _Navn_ finnes ikke.\n", + "\n", + "3. For det første trenger vi komma mellom alle variabler i print-funksjonen. For det andre må det stå \"summen\", ikke differansen!\n", + "\n", + "```{code-block} Python\n", + "print(\"Summen av\", a, \"og\", b, \"=\", a + b)\n", + "```\n", + "````\n", + "\n", + "```{figure} https://live.staticflickr.com/3136/2842497804_f2684b2dcf_c.jpg\n", + "---\n", + "height: 500px\n", + "name: bug\n", + "---\n", + "En av de første \"bugs\" ble funnet av Grace Hopper, som også lagde den første kompilatoren, en oversetter fra programmeringsspråk til maskinkode. Bugs var altså faktiske insekter som satt seg fast i de mekaniske delene og lagde krøll. Forhåpentligvis får du ingen feilmeldinger om insekter i datamaskinen din.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Oppgaver\n", + "```{admonition} Oppgave 1.1\n", + ":class: tip\n", + "Bruk kodeboksen nedenfor til å lage relevante variabler slik at programmet regner ut arealet av en trekant med grunnlinje 4 og høyde 2. Programmet inneholder litt kode fra før til å hjelpe deg på vei.\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "g = 4\n", + "h = 2\n", + "A = g*h/2\n", + " \n", + "print(\"Arealet til trekanten er:\", A)\n", + "```\n", + "````\n", + "\n", + "```{admonition} Oppgave 1.2\n", + ":class: tip\n", + "Lag et program som regner ut farten i m/s gitt følgende formel:\n", + "\n", + "$$v = v_0 + at$$\n", + "\n", + "Utvid programmet slik at startfarten, akselerasjonen og tida blir tatt som input.\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "\n", + "Løsning uten input:\n", + "```{code-block} Python\n", + "v0 = 1 # startfart i m/s\n", + "a = 10 # akselerasjon i m/s^2\n", + "t = 5 # slutt-tid i s\n", + "\n", + "v = v0 + a*t\n", + "\n", + "print(\"Sluttfarten blir:\", v, \"m/s\")\n", + "```\n", + "\n", + "Løsning med input:\n", + "```{code-block} Python\n", + "v0 = float(input(\"startfart i m/s: \"))\n", + "a = float(input(\"akselerasjon i m/s^2: \"))\n", + "t = float(input(\"slutt-tid i s: \"))\n", + "\n", + "v = v0 + a*t\n", + "\n", + "print(\"Sluttfarten blir:\", v, \"m/s\")\n", + "```\n", + "````\n", + "\n", + "```{admonition} Ekstra: Oppgave 1.3\n", + ":class: tip\n", + "Lag et program som bruker en valgfri formel fra matematikken til å regne ut noe. Bruk input-funksjonen til å hente variabelverdier fra brukeren.\n", + "```\n", + "\n", + "" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Videoer\n", + "Her kan du se videoer som introduksjon og/eller repetisjon til fagstoffet:\n", + "\n", + "````{tab-set} \n", + "```{tab-item} Variabler\n", + "\n", + "```\n", + "\n", + "```{tab-item} Aritmetikk\n", + "\n", + "```\n", + "\n", + "```{tab-item} Biblioteker og matematiske operasjoner\n", + "\n", + "```\n", + "\n", + "```{tab-item} Input\n", + "\n", + "```\n", + "````" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema1_grunnleggende_programmering/tall_variabler_videoer.ipynb b/_sources/docs/tema1_grunnleggende_programmering/tall_variabler_videoer.ipynb new file mode 100644 index 00000000..189ecfbb --- /dev/null +++ b/_sources/docs/tema1_grunnleggende_programmering/tall_variabler_videoer.ipynb @@ -0,0 +1,255 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Tall og variabler (videoer)\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med dette temaet, skal du kunne:\n", + "1. Kjøre enkle programmer med en programmeringseditor.\n", + "2. Definere og gjøre rede for ulike variabeltyper: heltall, flyttall og strenger.\n", + "3. Skrive ut output ved å bruke print-funksjonen.\n", + "4. Gjøre enkel aritmetikk i Python.\n", + "5. Ta input fra brukeren av programmet.\n", + "```\n", + "\n", + "## Variabler og output\n", + "I videoen nedenfor forklares hvordan vi oppretter variabler og gir dem verdier. Du lærer også hvordan du håndterer output med print-funksjonen." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "IFrame(\"https://www.youtube.com/embed/LF4JNPfNGgs? autoplay=0&rel=0\", width=800, height=600)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Når du har sett videoen, kan du gjøre følgende oppgave for å sjekke om du forstår innholdet:\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Lag et program der du definerer to variabler *tall1* og *tall2* med hver sitt tall. Regn ut differansen i en egen variabel. Skriv ut \"Differansen mellom *tall1* og *tall2 er *differansen*\".\n", + "```\n", + "\n", + "\n", + "\n", + "## Aritmetikk\n", + "Her skal vi se på hvordan vi utfører enkel matematikk som addisjon, subtraksjon, divisjon og multiplikasjon i Python." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "IFrame(\"https://www.youtube.com/embed/BASO7iHDV54? autoplay=0&rel=0\", width=800, height=600)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Når du har sett videoen, kan du gjøre følgende oppgave for å sjekke om du forstår innholdet:\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Lag et program der du definerer massen til et legeme i en variabel, regner ut energien ved hjelp av formelen $E = mc^2$ og skriver dette ut.\n", + "```\n", + "\n", + "\n", + "\n", + "## Matematiske operasjoner\n", + "I denne videoen skal vi gjennomgå import av biblioteker og flere matematiske operasjoner som logaritmer, trigonometriske funksjoner og røtter." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "IFrame(\"https://www.youtube.com/embed/VnFNYt2D2Ng? autoplay=0&rel=0\", width=800, height=600)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Når du har sett videoen, kan du gjøre følgende oppgave for å sjekke om du forstår innholdet:\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Lag et program regner ut pH-en i en løsning gitt $[H_3O^+]$.\n", + "```\n", + "\n", + "\n", + "\n", + "\n", + "## Input\n", + "Her skal vi se hvordan du kan ta input fra brukeren av programmet." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "IFrame(\"https://www.youtube.com/embed/nwncCwwcV4s? autoplay=0&rel=0\", width=800, height=600)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Når du har sett videoen, kan du gjøre følgende oppgave for å sjekke om du forstår innholdet:\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Lag et program som tar masse og hastighet som input, og som regner ut kinetisk energi vha. formelen $E_k = \\frac{1}{2}mv^2$.\n", + "```\n", + "\n", + "" + ] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema1_grunnleggende_programmering/testquiz.ipynb b/_sources/docs/tema1_grunnleggende_programmering/testquiz.ipynb new file mode 100644 index 00000000..9d6a7385 --- /dev/null +++ b/_sources/docs/tema1_grunnleggende_programmering/testquiz.ipynb @@ -0,0 +1,46 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Testquiz (Forms)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema2_kodestrukturering/funksjoner.ipynb b/_sources/docs/tema2_kodestrukturering/funksjoner.ipynb new file mode 100644 index 00000000..6565f7f9 --- /dev/null +++ b/_sources/docs/tema2_kodestrukturering/funksjoner.ipynb @@ -0,0 +1,835 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Funksjoner\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med dette temaet, skal du kunne:\n", + "1. bruke funksjoner til å strukturere og gjenbruke kode.\n", + "2. forklare hva som menes med globale og lokale variabler.\n", + "```\n", + "\n", + "## Definisjon\n", + "I tillegg til innebygde funksjoner i Python som _print_ og _input_ kan vi lage funksjoner selv. Dette kan være svært nyttig fordi det kan gjøre programmet mer oversiktlig og håndterbart. I tillegg er det nyttig med funksjoner når vi skal gjøre samme ting flere ganger. Si at vi for eksempel har en vilkårlig matematisk funksjon $f(x) = x^2 + x - 5$. Dersom vi vil regne ut $f(x)$ for alle heltallsverdier av $x$ mellom 1 og 50, kan vi gjøre dette med funksjoner. Først definerer vi funksjonen:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "def f(x):\n", + " return x**2 + x - 5" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi definerer her en funksjon med kodeordet _def_ og gir den et funksjonsnavn, her _f_. Deretter spesifiserer vi hva inn-verdien/variabelen til funksjonen skal hete i parentes. Her kaller vi den _x_. I programmering kaller vi en slik størrelse for en _parameter_. Gitt én verdi av _x_, skal funksjonen _returnere_ (spesifisert ved _return_-kommandoen) en funksjonsverdi. Legg merke til at syntaksen er ganske lik vilkår (if-tester), while- og for-løkker, med et kolon etter funksjonsnavnet og innrykk på alt som tilhører funksjonen. \n", + "\n", + "Vi får derimot ikke noe output av å definere en funksjon. For å få et output, må vi bruke (vi sier også \"kalle på\") funksjonen:" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1\n", + "1\n" + ] + } + ], + "source": [ + "funksjonsverdi = f(2) # Kaller på funksjonen\n", + "print(funksjonsverdi)\n", + "\n", + "# Eller\n", + "print(f(2)) # Kaller på funksjonen inni en print-funksjon" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Lag en Python-funksjon som representerer den matematiske funksjonen $f(x) = \\frac{-x}{2} + \\sqrt{x}$. Lag ei løkke som skriver ut 100 ulike funksjonsverdier.\n", + "```\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "import numpy as np\n", + "\n", + "def f(x):\n", + " return -x/2 + np.sqrt(x)\n", + " \n", + "for x in range(100):\n", + " print(f(x))\n", + "```\n", + "````\n", + "\n", + "Vi kan også lage funksjoner uten returverdi, for eksempel funksjoner som skriver ut noe:" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1\n", + "Gratulerer med dagen, Silje\n" + ] + } + ], + "source": [ + "# Definerer to funksjoner\n", + "def f(x):\n", + " print(x**2 + x - 5)\n", + " \n", + "def gratulerer(navn):\n", + " print(\"Gratulerer med dagen,\", navn)\n", + "\n", + "# Kaller på funksjonene\n", + "f(2)\n", + "gratulerer(\"Silje\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Her ser vi at vi ikke trenger å skrive _print_ når vi kaller på funksjonene. Dette ser da enda enklere ut enn å bruke retur-verdier, så hvorfor bruker vi _return_ i det hele tatt?\n", + "\n", + "Det er faktisk bedre å bruke return enn print, der det er mulig. Hvis vi for eksempel er interessert i å gjøre noe annet med funksjonsverdiene enn å printe dem, må vi ha konkrete verdier å jobbe med. La oss si at vi ønsker å finne differansen mellom to funksjonsverdier. Hvis vi skal regne med funksjonsverdier, må vi ha en returverdi. Det fungerer nemlig ikke å trekke fra hverandre to print-funksjoner. Eksempelet nedenfor illustrerer dette." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "````{panels}\n", + ":column: col-6\n", + ":card: border-2\n", + ":header: bg-success\n", + " \n", + "Riktig\n", + "^^^\n", + "```{code-block} Python\n", + "def f(x):\n", + " return x**3 - 1/x\n", + " \n", + "print(f(3) - f(1))\n", + "```\n", + "---\n", + ":header: bg-danger\n", + "Feil\n", + "^^^\n", + "Følgende kode vil gi feilmelding:\n", + "\n", + "```{code-block} Python\n", + "def f(x):\n", + " print(x**3 - 1/x)\n", + " \n", + "f(3) - f(1)\n", + "```\n", + "````\n", + "\n", + "Vi kan også representere matematiske formler som Python-funksjoner, for eksempel slik:" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "\n", + "def areal_sirkel(r):\n", + " A = np.pi*r**2\n", + " return A\n", + "\n", + "def volum_sylinder(r, h):\n", + " V = np.pi*r**2*h\n", + " return V" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi kan også skrive _np.pi\\*r\\*\\*2_ og _np.pi\\*r\\*\\*2\\*h_ direkte etter return i funksjonene ovenfor, istedenfor å gjøre det på to linjer. Dette er litt smak og behag, men ofte kan det være mer oversiktlig å gjøre ting på flere linjer enn på én. Dessuten kan man skrive formelen direkte slik den forekommer i matematikken.\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Volumet til ei kule er gitt ved $\\frac{4}{3}\\pi r^3$. Lag en funksjon som beregner dette volumet og finner differansen mellom volumet til ei kule med radius 10 og ei kule med radius 5.\n", + "```\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "import numpy as np\n", + "\n", + "def volum_kule(r):\n", + " V = (4/3)*np.pi*r**3\n", + " return V\n", + " \n", + "volumforskjell = volum_kule(10) - volum_kule(5)\n", + "```\n", + "````\n", + "\n", + "Her ser vi også at den siste funksjonen tar to parametre. Det er mulig å bruke så mange parametre i en funksjon som du ønsker. Det går også an å lage funksjoner uten parametre, for eksempel slik:" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Hei på deg!\n" + ] + } + ], + "source": [ + "def hei():\n", + " print(\"Hei på deg!\")\n", + " \n", + "hei()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Parameternavn\n", + "La oss se på et eksempel der vi kaller på en funksjon på tre måter." + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Farten er 5.0 m/s.\n", + "Farten er 5.0 m/s.\n", + "Farten er 5.0 m/s.\n" + ] + } + ], + "source": [ + "def fart(s, t):\n", + " v = s/t\n", + " return v\n", + "\n", + "# Funksjonskall 1\n", + "s = 10 # Strekning i meter\n", + "t = 2 # Tid i s\n", + "print(\"Farten er\", fart(s, t), \"m/s.\")\n", + "\n", + "# Funksjonskall 2\n", + "strekning = 10\n", + "tid = 2\n", + "print(\"Farten er\", fart(strekning, tid), \"m/s.\")\n", + "\n", + "# Funksjonskall 3\n", + "print(\"Farten er\", fart(10, 2), \"m/s.\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi ser at vi får samme output for alle funksjonskallene. Vi trenger ikke å definere variabler før vi setter dem inn i funksjonen, så funksjonskall 3 er kanskje det enkleste. Men hvis vi for eksempel skal bruke verdien for tid flere steder, kan det være lurt å ha det som en egen variabel. Denne variabelen kan vi kalle hva vi vil, for den blir uansett overført til variabelen _t_ inni funksjonen. Så om vi kaller variablene for strekning og tid eller s og t, har ingenting å si. Inni funksjonen blir likevel verdien til _strekning_ overført til variabelen _s_ og variabelen _t_ får verdien til _tid_." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Funksjoner med flere returverdier\n", + "I motsetning til funksjoner i matematikk kan en funksjon i programmering ha flere retur-verdier. Disse kan vi tilordne til variabler adskilt med komma, som vist nedenfor.\n", + "\n", + "" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Forklar hvordan programmet ovenfor fungerer. Modifiser programmet slik at det også returnerer renta, og skriv ut \"Det tar {tid} år før du har {penger} kroner i banken med en rente på {renter*100} prosent.\"\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Lokale og globale variabler\n", + "\n", + "Hva skjer hvis vi ikke returnerer verdier i funksjonen ovenfor? Vil vi uansett kunne printe renta og antallet år? La oss undersøke dette." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "ename": "NameError", + "evalue": "name 'år' is not defined", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mNameError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m~\\AppData\\Local\\Temp/ipykernel_39764/3569527658.py\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[0;32m 8\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 9\u001b[0m \u001b[0mpenger\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mpenger_i_banken\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m1000\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;36m3000\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;36m0.01\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 10\u001b[1;33m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Det tar\"\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mår\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m\"år før du har\"\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mround\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mpenger\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;36m2\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m\"kroner med en rente på\"\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mrenter\u001b[0m\u001b[1;33m*\u001b[0m\u001b[1;36m100\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m\"prosent\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;31mNameError\u001b[0m: name 'år' is not defined" + ] + } + ], + "source": [ + "def penger_i_banken(startkapital, sluttkapital, renter):\n", + " kapital = startkapital\n", + " år = 0\n", + " while kapital <= sluttkapital:\n", + " kapital = kapital + kapital*renter\n", + " år = år + 1\n", + " return kapital\n", + "\n", + "penger = penger_i_banken(1000, 3000, 0.01)\n", + "print(\"Det tar\", år, \"år før du har\", round(penger,2), \"kroner med en rente på\", renter*100, \"prosent\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Her får vi visst en feilmelding, selv om vi klart kan se at \"år\" er definert som en variabel inni funksjonen. Dette handler om at alle variabler som defineres i en funksjon, kun er tilgjengelig inni denne funksjonen. De kalles derfor _lokale_ variabler. Variabler som er definert utenfor funksjoner, kaller vi da for _globale_ variabler. Disse er tilgjengelig både inni og utenfor en funksjon. Her er to eksempler som viser dette:" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Her er jeg!\n", + "Her er jeg!\n" + ] + } + ], + "source": [ + "def funksjon():\n", + " print(a)\n", + "\n", + "a = \"Her er jeg!\"\n", + "\n", + "funksjon()\n", + "print(a) # Skriver ut den globale variabelen a" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Her er jeg!\n" + ] + }, + { + "ename": "NameError", + "evalue": "name 'b' is not defined", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mNameError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[0mfunksjon\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 6\u001b[1;33m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mb\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;31m# Prøver å skrive ut den lokale variabelen. Vi får dermed en feilmelding\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[1;31mNameError\u001b[0m: name 'b' is not defined" + ] + } + ], + "source": [ + "def funksjon():\n", + " b = \"Her er jeg!\" # b defineres lokalt inni funksjonen\n", + " print(b)\n", + "\n", + "funksjon()\n", + "print(b) # Prøver å skrive ut den lokale variabelen. Vi får dermed en feilmelding" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi kan gjøre en lokal variabel til en global variabel, dersom vi trenger det. Dette er ikke vanlig så vanlig å gjøre, men vi kan gjøre det slik:" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Energien til legemet er: 9e+16 joule.\n", + "Lysets hastighet i vakuum: 300000000.0 m/s.\n" + ] + } + ], + "source": [ + "def masseenergi(m):\n", + " global c\n", + " c = 3E8 # lyshastigheten i m/s\n", + " E = m*c**2\n", + " return E\n", + "\n", + "print(\"Energien til legemet er:\", masseenergi(1), \"joule.\")\n", + "print(\"Lysets hastighet i vakuum:\", c, \"m/s.\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Oppgaver\n", + "\n", + "````{admonition} Oppgave 5.1\n", + ":class: tip\n", + "Forklar hvordan programmet nedenfor fungerer.\n", + "```{code-block} Python\n", + "def f(x):\n", + " return x + 1\n", + "\n", + "addisjon = f(1) + f(3)\n", + "subtraksjon = f(1) - f(3)\n", + "\n", + "print(addisjon, subtraksjon)\n", + "```\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "Vi definerer først en funksjon _f_ som skal returnere funksjonsverdien _x + 1_. Deretter kaller vi på (bruker) funksjonen ved å beregne summen av _f(1)_ og _f(3)_ og differansen mellom de samme funksjonsverdiene. Da henter programmet informasjon fra funksjonen ovenfor, og beregner slik: _addisjon = (1 + 1) + (3 + 1) = 6_ og _subtraksjon = (1 + 1) - (3 + 1) = -1_. Resultatene fra dette skrives så ut.\n", + "````\n", + "\n", + "```{admonition} Oppgave 5.2\n", + ":class: tip\n", + "I programmet nedenfor definerer vi en funksjon som regner ut volumet til en sylinder. Lag en annen funksjon i samme program som regner ut volumet til ei kule.\n", + "\n", + "($V_{kule} = \\frac{4}{3}\\pi r^3$)\n", + "\n", + "\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "from numpy import pi\n", + "\n", + "def volum_kule(r):\n", + " V = 4/3*pi*r**3\n", + " return V\n", + "\n", + "# Tester funksjonen\n", + "print(volum_kule(2))\n", + "```\n", + "````\n", + "\n", + "````{admonition} Oppgave 5.3\n", + ":class: tip\n", + "Hvert program i denne oppgava inneholder noen feil. Finn feilene og rett på dem slik at programmene kan kjøres korrekt.\n", + "\n", + "1. Funksjonen skal regne ut $f(x) = \\frac{1}{2x} + 1$ og returnere svaret. I programmet skal funksjonen kalles på for $x = 4$:\n", + "\n", + "```{code-block} Python\n", + "def f(x):\n", + " 1/2*x + 1\n", + "\n", + "print(\"f(x) = \",f(x))\n", + "```\n", + "2. Programmet ber brukeren om å skrive en verdi for _x_ og regner ut $f(x) = 3x + \\cos(x)$:\n", + "\n", + "```{code-block} Python\n", + "def f(x):\n", + "return 3x + cos(x)\n", + "\n", + "y = input(\"Skriv inn verdi for x i radianer: \")\n", + "print(\"f(x) =\",f(y))\n", + "```\n", + "\n", + "3. Programmet skal skrive ut funksjonsverdien _G(1)_.\n", + "\n", + "```{code-block} Python\n", + "def G(t):\n", + " a = t**2 - 2\n", + " return a\n", + "\n", + "t = 1\n", + "print(a)\n", + "```\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "1. Uttrykket $1/2*x + 1$ regner ut $f(x) = x + 1$, og ikke den ønskede funksjonen. For at programmet skal regne ut hva _x_ blir i den ønskede funksjonen, må parentes brukes i uttrykket for nevneren. Variabelen _x_ er heller ikke definert. Variabelen kan settes til å være lik 4. Vi kan også kalle funksjonen direkte med f(4).\n", + "```{code-block} Python\n", + "def f(x):\n", + " return 1/(2* x) + 1\n", + "print(\"f(x) = \",f(4))\n", + "```\n", + "\n", + "2. Her må cosinus importeres fra et passende bibliotek. Vi må også ha et innrykk på _return_ i $f(x)$, fordi _return_ tilhører funksjonen. Leddet $3x$ må omskrives til $3*x$. Til slutt må variabelen $y$ omgjøres til float for at programmet skal kunne gjøre flytallsoperasjoner på den gitte verdien fra brukeren.\n", + "```{code-block} Python\n", + "from numpy import cos\n", + "def f(x):\n", + " return 3*x + cos (x)\n", + "y = float(input(\" Skriv inn verdi for x i radianer: \"))\n", + "print(\"f(x) =\",f(y))\n", + "```\n", + "\n", + "3. For å finne hva funksjonsverdien til _G_, må vi huske å _kalle på_ funksjonen:\n", + "```{code-block} Python\n", + "def G(t):\n", + " a = t**2 - 1\n", + " return a\n", + "t = 1\n", + "print(G(t))\n", + "```\n", + "````\n", + "\n", + "````{admonition} Oppgave 5.4\n", + ":class: tip\n", + "Lag et program eller flere programmer som bruker funksjoner til å regne ut:\n", + "1. Arealet til en sirkel.\n", + "2. Radius til en sirkel gitt arealet.\n", + "3. Omkretsen til en sirkel.\n", + "4. Volumet til ei kule.\n", + "5. Overflatearealet til ei kule.\n", + "\n", + "Du kan lage en enkel versjon først uten funksjoner. Lag så en versjon som inneholder funksjoner av hver av formlene. Ikke ta input fra brukeren, men sett verdiene direkte inn i funksjonskallene.\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "from numpy import pi\n", + "\n", + "# 1\n", + "def sirkel_areal(r):\n", + " return pi*r**2\n", + "# 2\n", + "def sirkel_radius(A):\n", + " return (A/pi)**0.5 # Opphøyer i 0.5 eller kan bruke sqrt fra numpy\n", + "# 3\n", + "def sirkel_omkrets(r):\n", + " return 2*pi*r\n", + "# 4\n", + "def kule_volum (r):\n", + " return 4/3*pi*r**3\n", + "# 5\n", + "def kule_overflate (r):\n", + " return 4*pi*r**2\n", + "```\n", + "````\n", + "\n", + "````{admonition} Oppgave 5.5\n", + ":class: tip\n", + "Forklar hvorfor programmet under gir _None_ som output.\n", + "```{code-block} Python\n", + "def f(x):\n", + " x = 2*x\n", + "x = 12\n", + "x = x + 12\n", + "x = f(x)\n", + "print(x)\n", + "```\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "Verdien til _x_ blir _None_ fordi funksjonen _f_ ikke returner en verdi. For å sørge for at _x_ får en tallverdi etter å ha kalt på _f_, må _f_ returnere noe – i dette tilfellet et tall.\n", + "```{code-block} Python\n", + "def f(x):\n", + " return 2*x\n", + "x = 12\n", + "x = x + 12\n", + "x = f(x)\n", + "print(x)\n", + "```\n", + "````\n", + "\n", + "````{admonition} Oppgave 5.6\n", + ":class: tip\n", + "_Karvonens formel_ kan brukes til å finne pulsen til en person gitt hvilepuls $H_{hvile}$ og treningsintensitet $p$ (i prosent):\n", + "\n", + "$hjerteslag \\ per \\ minutt = \\left(H_{maks} - H_{hvile}\\right)\\cdot\\frac{p}{100} + H_{hvile}$\n", + "\n", + "der $H_{maks}$ er maks antall hjerteslag personen kan ha. Den maksimale pulsen kan en finne ved $H_{maks} = 220 - \\textit{alder til person}$. Lag et program som regner ut pulsen til en 20 år gammel person som trener med 60 \\% intensitet og hvilepuls på $70$ slag per minutt. Lag Karvonens formel som en funksjon.\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "def karvonen(hvilepuls, intensitet, alder):\n", + " p = intensitet\n", + " maks = 220 - alder\n", + " puls = (maks - hvilepuls)*p/100 + hvilepuls\n", + " return puls\n", + "\n", + "puls = karvonen(70, 60, 20)\n", + "print(\" Personen vil ha en puls på\",puls )\n", + "```\n", + "````\n", + "\n", + "````{admonition} Oppgave 5.7 (kjemi)\n", + ":class: tip\n", + "I kjemi har vi ofte bruk for molregning. Lag et enkelt program som regner ut antall mol dersom brukeren taster inn molmasse og masse av et bestemt stoff. Du kan også be brukeren taste inn stoffet det gjelder, slik at du får dette som output også. Lag formelen som en funksjon.\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "def antall_mol (masse , molmasse ):\n", + " return masse/molmasse\n", + "stoff = input(\" Hvilket stoff vil du finne antall mol til ?: \")\n", + "masse = float(input(\" Skriv inn massen ( gram ): \"))\n", + "molmasse = float(input(\" Skriv inn molmassen ( gram /mol): \"))\n", + "mol = antall_mol (masse , molmasse )\n", + "print(\"Stoffet\", stoff, \"består av\", mol ,\"mol.\")\n", + "```\n", + "````\n", + "\n", + "````{admonition} Oppgave 5.8 (kjemi)\n", + ":class: tip\n", + "Lag et program som regner ut pH fra $[H_3O^+]$ ved hjelp av en funksjon.\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "from numpy import log10\n", + "def ph_H3O(konsentrasjon):\n", + " return -log10 (konsentrasjon)\n", + "\n", + "ph = ph_H3O(1E-5)\n", + "print(\"pH av den gitte konsentrasjonen er:\", ph)\n", + "```\n", + "````\n", + "\n", + "````{admonition} Oppgave 5.9 (fysikk)\n", + ":class: tip\n", + "Programmer én av bevegelsesformlene (kinematikklikningene) som en funksjon. Du kan selv velge hva programmet skal regne ut.\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "def posisjon(v0 , a, t):\n", + " return v0 + a*t\n", + "\n", + "v = posisjon(2, 10, 5) # Tester funksjonen med v0 = 2, a = 10 og t = 5.\n", + "print(\"Farten til legemet er:\", v, \"m/s.\")\n", + "```\n", + "````\n", + "\n", + "````{admonition} Oppgave 5.10 (fysikk)\n", + ":class: tip\n", + "Bruk Bohrs formel for spektrene til hydrogenatomet:\n", + "$f =\\frac{B}{h}\\cdot \\left( \\frac{1}{m^2} - \\frac{1}{n^2} \\right)$\n", + "\n", + "Lag et program som regner ut bølgelengden til fotonet som emitteres når et elektron deeksiterer fra skall _m_ til _n_. Bruk en funksjon.\n", + "\n", + "Husk at vi har følgende sammenheng mellom frekvens og bølgelengde ($\\lambda$):\n", + "\n", + "$\\lambda = \\frac{c}{f}$\n", + "\n", + "$B = 2.18\\cdot10^{-18}$, $c = 3.00\\cdot10^8$ m/s og $h = 6.63\\cdot10^{-34}$.\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "# Konstanter\n", + "B = 2.18E-18\n", + "h = 6.636E-34\n", + "c = 3e8\n", + "\n", + "#Bohrs formel\n", + "def Bohr(n,m):\n", + " f = B/h *(1/ m**2 - 1/n **2)\n", + " bl = c/f # bølgelengde i meter\n", + " bl_nm = bl*1E9 # bølgelengde i nanometer\n", + " return bl_nm\n", + "\n", + "#Energinivåer\n", + "n = int(input(\"Skriv inn en verdi for n:\")) #skallet det eksiteres fra\n", + "m = int(input(\"Skriv inn en verdi for m:\")) #skallet det eksiteres til\n", + "\n", + "print(\"Bølgelengden til lyset fra n =\",n ,\"til m =\", m, \n", + " \"er:\", round(Bohr(n,m)),\"nm\")\n", + "```\n", + "````\n", + "\n", + "````{admonition} Oppgave 5.11 (matematikk)\n", + ":class: tip\n", + "Lag en funksjon som tar tre variabler _a_, _b_ og _c_, tilsvarende koeffisientene i andregradsfunksjoner av typen $f(x) = ax^2 + bx + c$. La funksjonen løse andregradslikninger av typen $f(x) = 0$ ved hjelp av andregradsformelen.\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "def andregradsformelen(a, b, c):\n", + " rotuttrykk = b**2 - 4*a*c\n", + " if rotuttrykk > 0:\n", + " x1 = (-b + rotuttrykk**0.5)/(2*a)\n", + " x2 = (-b - rotuttrykk**0.5)/(2*a)\n", + " return x1, x2\n", + " elif rotuttrykk < 0:\n", + " return \"Likningen har ingen reelle løsninger.\"\n", + " elif rotuttrykk == 0:\n", + " x = -b/(2*a)\n", + " return x\n", + "\n", + "print(andregradsformelen(1, 2, 3))\n", + "print(andregradsformelen(1, -2, 1))\n", + "print(andregradsformelen(1, -4, 3))\n", + "```\n", + "````\n", + "\n", + "````{admonition} Oppgave 5.12\n", + ":class: tip\n", + "Hvorfor har _x_ samme verdi før og etter funksjonen _f_ har blitt kalt på i programmet under?\n", + "```{code-block} Python\n", + "def f(x):\n", + " x = x + 3\n", + " return 9*x\n", + "x = 3\n", + "print(x) # Skriver ut 3\n", + "y = f(x)\n", + "print(x) # Skriver ut 3\n", + "```\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "$_x_$ er en global variabel utenfor funksjonen. Den får verdien 3. I tillegg finnes det en lokal variabel med samme navn inni funksjonen. Denne variabelen får verdien $_x = x + 3 = 3 + 3 = 6_$, men denne variabelen er ikke tilgjengelig utenfor funksjonen. \n", + "````\n", + "\n", + "````{admonition} Oppgave 5.13\n", + ":class: tip\n", + "De fleste gasser kan modelleres med _tilstandslikninga for idelle gasser_:\n", + "\n", + "$PV = nRT$\n", + "\n", + "der _P_ er trykket i pascal, _V_ er volumet i kubikkmeter, _n_ er stoffmengden i mol, $R = 8.3144598 J/(mol\\cdot K)$ er gasskonstanten og _T_ er temperaturen i Kelvin. \n", + "\n", + "Lag et program der du bruker denne likninga til å lage en funksjon for P og en annen for T. Test funksjonene.\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "def trykk(V, n, T):\n", + " R = 8.3144598 # J/(mol*K)\n", + " P = n*R*T/V\n", + " return P\n", + "\n", + "def temperatur(P, V, n):\n", + " R = 8.3144598 # J/(mol*K)\n", + " T = P*V/(n*R)\n", + " return T\n", + "\n", + "print(trykk(100, 1, 300))\n", + "print(temperatur(100, 1, 1))\n", + "```\n", + "````\n", + "\n", + "````{admonition} Oppgave 5.14*\n", + ":class: tip\n", + "Studer programmet nedenfor. Hvilke variabler er lokale, og hvilke er globale? Hva skrives ut?\n", + "\n", + "```{code-block} Python\n", + "def f(x,y):\n", + " global e\n", + " e = x + y + e\n", + " return e\n", + "\n", + "c = 1\n", + "d = 2\n", + "e = 3\n", + "\n", + "print(f(c, d) + e)\n", + "```\n", + "````\n", + "\n", + "```{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "Variablene c_, _d_ og _e_ er globale variabler, mens _x_ og _y_ er lokale variabler som kun eksisterer inni funksjonen. Når vi printer _f(c, d) + e_, overføres verdien av _c_ og _d_ til de lokale variablene _x_ og _y_ i funksjonen. Deretter beregnes _e_ ved hjelp av _x_, _y_ og den globale _e_, som har verdien 3. Variabelen _e_ fra funksjonen (nå med verdien 6) defineres som global, og overskriver dermed den tidligere _e_ (med verdien 3). Det er denne _e_-en som legges til _f(c, d)_ i print-kommandoen til slutt.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Filmer\n", + "I videoen nedenfor kan du få en innføring eller repetisjon i den grunnleggende teorien bak funksjoner.\n", + "\n", + "" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema2_kodestrukturering/funksjoner_filmer.ipynb b/_sources/docs/tema2_kodestrukturering/funksjoner_filmer.ipynb new file mode 100644 index 00000000..6400086f --- /dev/null +++ b/_sources/docs/tema2_kodestrukturering/funksjoner_filmer.ipynb @@ -0,0 +1,92 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Funksjoner (teori)\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med dette temaet, skal du kunne:\n", + "1. Bruke funksjoner til å strukturere og gjenbruke kode.\n", + "2. Forklare hva som menes med globale og lokale variabler.\n", + "```\n", + "\n", + "## Funksjoner" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "IFrame(\"https://www.youtube.com/embed/PTsF6AIKIjg? autoplay=0&rel=0\", width=800, height=600)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Når du har sett videoen, kan du gjøre følgende oppgave for å sjekke om du forstår innholdet:\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Lag en funksjon som benytter arealsetningen til å regne ut arealet av en trekant.\n", + "```\n", + "\n", + "\n", + "" + ] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema2_kodestrukturering/klasser_objekter.ipynb b/_sources/docs/tema2_kodestrukturering/klasser_objekter.ipynb new file mode 100644 index 00000000..07612a98 --- /dev/null +++ b/_sources/docs/tema2_kodestrukturering/klasser_objekter.ipynb @@ -0,0 +1,443 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Klasser og objekter\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med dette temaet, skal du kunne:\n", + "1. gjøre rede for hva som menes med objektorientert programmering\n", + "2. konstruere enkle klasser og objekter\n", + "```\n", + "\n", + "Objektorientert programmering er en måte å organisere og gjenbruke kode på som er enda litt mer abstrakt og enda litt nyttigere enn funksjoner. Python er et objektorientert språk, så du har brukt objekter allerede uten å nødvendigvis vite om det. Det første objektorienterte programmeringsspråket i verden var _Simula_, som var utviklet av nordmennene Ole-Johan Dahl og Kristen Nygaard. I populære programmeringsspråk som Java og C++ er objektorientering så grunnleggende at vi ikke kan programmere i disse språkene uten å bruke det. I Python kan vi derimot velge om vi ønsker å bruke objektorientert kode eller ikke.\n", + "\n", + "Det er ikke sikkert du forstår meningen med objekter med det første. Koden blir ofte mer komplisert og teknisk, og det realfaglige innholdet kan noen ganger drukne litt i koden. Det viktigste er derimot at du får litt kjennskap til hva det er og hvordan det kan brukes, slik at du forstår når du faktisk bruker objekter og hvordan de fungerer. Om du vil bruke objektorientert programmering for å strukturere din egen kode eller ikke, kan du velge helt selv.\n", + "\n", + "Objektorientert programmering tar utgangspunkt i _klasser_, som er oppskrifter på _objekter_. Disse objektene har egenskaper gitt av denne klassen, og vi kan endre på objektene og gi dem nye egenskaper med funksjoner som vi kaller _metoder_.\n", + "\n", + "```{admonition} Definisjoner\n", + ":class: caution\n", + "En _klasse_ er en oppskrift på _objekter_. Et objekt er en _instans_ (utgave) av en klasse. Objekter er størrelser som er definert via et sett med data (_attributter_), det vil si egenskaper ved objektene. Objektene kan vi endre og manipulere ved å bruke klassens _metoder_. Metoder er funksjoner som virker på objektene.\n", + "```\n", + "\n", + "Et enkelt eksempel på et objekt, er heltallsobjekter. For eksempel er tallet 42 et objekt som tilhører klassen \"int\" (integer = heltall). Metodene du kan bruke på disse objektene, er blant annet addisjon og multiplikasjon.\n", + "\n", + "__Eksempel:__\n", + "\n", + "klasse = int\n", + "\n", + "objekt = 42\n", + "\n", + "metoder = +, -, *, /\n", + "\n", + "Vi kan se at 42 tilhører klassen _int_ ved å skrive ut typen til objektet:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n" + ] + } + ], + "source": [ + "print(type(42))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Skilpaddeobjekter\n", + "Vi har allerede også håndtert objekter gjennom skilpaddegrafikk (turtle). Når vi lager en skilpadde som skal tegne noe, lager vi en instans (et objekt) av klassen \"Turtle\". Tidligere skreiv vi bare kommandoene \"forward\", \"left\" og så videre, så da er det kanskje ikke åpenbart at vi bruker metoder _på_ dette objektet. Det blir dermed litt enklere å se dersom vi faktisk kaller objektet noe. La oss returnere til en skilpadde som heter Rafael. Istedenfor å bare skrive kommandoene, lager vi nå et skilpaddeobjekt helt eksplisitt:\n", + "\n", + "\n", + "\n", + "Her ser vi at vi bruker metodene på objektet ved å skrive \"objektnavn.metodenavn()\". Dette gjør også at vi kan lage flere skilpadder i samme kodevindu!\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Lag en ny skilpadde som heter Leonardo. Skilpadden skal være blå, og den skal lage gå slik at den danner et rektangel (200 x 100) sammen med figuren som Rafael har tegna.\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "leonardo = Turtle()\n", + "leonardo.shape(\"turtle\")\n", + "leonardo.color(\"blue\")\n", + "\n", + "leonardo.backward(100)\n", + "leonardo.left(90)\n", + "leonardo.forward(100)\n", + "leonardo.right(90)\n", + "leonardo.forward(100)\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Klasser\n", + "La oss prøve å lage vår egen klasse med ulike egenskaper. Vi vil definere en klasse som lager objekter med egenskapene til et glass. Det er god skikk å lage klassenavnet med stor forbokstav, og det gjør vi slik:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "tags": [ + "remove-output" + ] + }, + "outputs": [], + "source": [ + "class Glass:\n", + " def __init__(self):\n", + " self.innhold = 0" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nå har vi definert klassen \"Glass\" og gitt det en egenskap (attributt) som heter \"innhold\", en vanlig egenskap ved de fleste glass. Metodene i en klasse defineres på samme måte som funksjoner. Den metoden vi har lagd her, \\_\\_init\\_\\_ (som står for \"initiering\"), er en spesiell metode som inneholder alle egenskaper som objekter av klassen Glass alltid får. Parameteren i denne funksjonen/metoden er \"self\". Dette er en litt merkelig konstruksjon. \"self\" brukes nemlig for å henvis til at dette er en egenskap ved objektet selv. Det tar litt tid å bli vant til at vi må henvise til objektet selv inni klassen som er oppskriften på objektene. Men når du har sett nok eksempler på hvordan klasser blir konstruert, får du antakelig en forståelse av det. La oss legge til en metode til, som sjekker innholdet i glasset:" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "class Glass:\n", + " def __init__(self):\n", + " self.innhold = 0 \n", + " def sjekkInnhold(self):\n", + " return self.innhold" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "La oss nå lage et glass-objekt og sjekke innholdet:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0\n" + ] + } + ], + "source": [ + "vannglass = Glass() # laget et vannglass av typen \"Glass\"\n", + "print(vannglass.sjekkInnhold()) # skriver ut innholdet i glasset" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Lag en metode \"fyll\" som legger til innhold i glasset. Test metoden ved å legge til 5 (dl) og sjekke innholdet.\n", + "```\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "class Glass:\n", + " def __init__(self):\n", + " self.innhold = 0\n", + " \n", + " def fyll(self, mengde):\n", + " self.mengde = mengde\n", + " self.innhold += self.mengde\n", + " \n", + " def sjekkInnhold(self):\n", + " return self.innhold\n", + " \n", + "vannglass = Glass()\n", + "vannglass.fyll(5)\n", + "print(vannglass.sjekkInnhold())\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "tags": [ + "hide-input", + "remove-output" + ] + }, + "source": [ + "Når du har gjort oppgaven ovenfor, kan vi legge til enda en metode som tømmer glasset:\n", + "\n", + "\n", + "\n", + "Men hva skjer hvis glasset er fullt eller tomt? Prøv å løse dette problemet i oppgaven nedenfor:\n", + "\n", + "````{admonition} Underveisoppgave\n", + ":class: tip\n", + "Legg inn en ny egenskap ved glasset som du kaller \"kapasitet\". Denne egenskapen skal si noe om hvor mye volum glasset rommer. Fyll også ut det som mangler i metodene \"fyll\" og \"tøm\" nedenfor. Metodene skal si fra om glasset er fullt eller tomt. Dersom glasset er tomt, skal innholdet settes til 0, og dersom glasset er fullt, skal innholdet settes til kapasiteten til glasset. Skriv gjerne også ut en melding om at glasset er fullt eller tomt.\n", + "\n", + "```{code-block} Python\n", + " def fyll(self, mengde):\n", + " self.mengde = mengde\n", + " self.innhold += self.mengde\n", + " if #...\n", + " \n", + " def tøm(self, mengde):\n", + " self.mengde = mengde\n", + " self.innhold -= self.mengde\n", + " if # ...\n", + "```\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "class Glass:\n", + " def __init__(self, kapasitet):\n", + " self.kapasitet = kapasitet\n", + " self.innhold = 0\n", + " \n", + " def fyll(self, mengde):\n", + " self.mengde = mengde\n", + " self.innhold += self.mengde\n", + " if self.innhold >= self.kapasitet:\n", + " print(\"Glasset er fullt!\")\n", + " self.innhold = self.kapasitet\n", + " \n", + " def tøm(self, mengde):\n", + " self.mengde = mengde\n", + " self.innhold -= self.mengde\n", + " if self.innhold <= 0:\n", + " print(\"Glasset er tomt!\")\n", + " self.innhold = 0\n", + " \n", + " def sjekkInnhold(self):\n", + " return self.innhold\n", + " \n", + "mittGlass = Glass(5)\n", + "mittGlass.fyll(6)\n", + "mittGlass.tøm(1)\n", + "mittGlass.sjekkInnhold()\n", + "print(\"Glasset inneholder:\", mittGlass.sjekkInnhold(), \"dl.\")\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Eksempel: Objekter i spill\n", + "Moderne spill lages med objektorientert kode. En av årsakene er at vi lettere kan gjenbruke kode. Ta for eksempel skilpaddene i Mario. De har noen felles egenskaper, og det er derfor nyttig å kunne plassere dem rundt omkring ved å lage nye objekter fra en klasse istedenfor å gjenta masse kode. Vi kan også ta hensyn til små variasjoner, som farge på skallet, evnen til å gjøre skade eller helsepoeng (HP).\n", + "\n", + "```{image} http://oyster.ignimgs.com/mediawiki/apis.ign.com/new-super-mario-bros-u/a/a5/New-Super-Mario-Bros.-Game-Character-Official-Artwork-Koopa-Troopa.jpeg\n", + ":alt: koopa\n", + ":class: bg-primary mb-1\n", + ":width: 200px\n", + ":align: center\n", + "```\n", + "\n", + "I programmet nedenfor lager vi en skilpaddeklasse med noen egenskaper og to metoder, \"harm\" og \"heal\". Gå gjennom linje for linje og prøv å forstå hvordan programmet fungerer.\n", + "\n", + "\n", + "\n", + "````{admonition} Underveisoppgave\n", + ":class: tip\n", + "Legg inn et vilkår i programmet ovenfor som skriver ut at skilpadden er død hvis den går under 0 i hp. Lag også en attributt/egenskap som sier noe om skilpadden lever eller ikke.\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "class Skilpadde:\n", + " def __init__(self):\n", + " self.artsnavn = \"Chelonia mydas\"\n", + " self.farge = \"green\"\n", + " self.levende = True\n", + " if self.farge == \"green\":\n", + " self.hp = 15\n", + " elif self.farge == \"red\":\n", + " self.hp = 20\n", + " def harm(self, skade):\n", + " self.hp -= skade\n", + " if self.hp <= 0:\n", + " self.levende = False\n", + " self.hp = 0\n", + " print(\"Skilpadden døde.\")\n", + " def heal(self):\n", + " self.hp += 5\n", + "\n", + "skilpadde1 = Skilpadde()\n", + "skilpadde1.farge = \"green\"\n", + "\n", + "print(\"HP:\", skilpadde1.hp)\n", + "skilpadde1.harm(13)\n", + "print(\"HP:\", skilpadde1.hp)\n", + "skilpadde1.harm(16)\n", + "print(\"HP:\", skilpadde1.hp)\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Eksempel: Vektorobjekt\n", + "Her skal vi se på en klasse som lager et objekt med egenskapene til en matematisk vektor med tre komponenter: $\\vec{v} = [x, y, z]$. Vi ønsker at vi skal kunne regne ut lengden til denne vektoren, og at vi skal kunne addere vektoren med en annen vektor. Lengden av en vektor kalles også for _normen_ til vektoren, og er definert slik:\n", + "\n", + "$|\\vec{v}| = \\sqrt{x^2 + y^2 + z^2}$\n", + "\n", + "En vektorklasse med en metode for addisjon kan se slik ut:\n", + "\n", + "\n", + "\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Legg en metode i vektorklassen ovenfor som returnerer lengden/normen til vektoren. Test ut ved å sjekke at normen til vektoren $\\vec{u} = [1, 2, 2]$ er 3.\n", + "```\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "class Vektor:\n", + " def __init__(self,x,y,z):\n", + " self.x = x\n", + " self.y = y\n", + " self.z = z\n", + " \n", + " def norm(self):\n", + " lengde = (self.x**2 + self.y**2 + self.z**2)**0.5\n", + " return lengde\n", + " \n", + " def add(self, vektor):\n", + " x = self.x + vektor.x\n", + " y = self.y + vektor.y\n", + " z = self.z + vektor.z\n", + " return [x, y, z]\n", + " \n", + "u = Vektor(1,2,2)\n", + "v = Vektor(4,4,4)\n", + "print(u.norm())\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Arv\n", + "Hvis vi ønsker å lage en klasse som har alle egenskaper til en annen klasse, i tillegg til noen ekstra egenskaper, kan vi la klassen _arve_ egenskaper fra den andre klassen. La oss lage en termosklasse som arver fra glassklassen (kalt _superklasse_). Klassen som arver, kaller vi en _subklasse_." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Glasset er fullt!\n", + "62.0\n", + "54.0\n", + "46.0\n", + "38.0\n", + "30.0\n" + ] + }, + { + "data": { + "text/plain": [ + "5" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "class Termos(Glass):\n", + " def __init__(self, kapasitet, isolasjonsverdi, temperatur):\n", + " super().__init__(kapasitet) # Her arver termosen kapasitet fra klassen Glass (superklassen)\n", + " self.isolasjonsverdi = isolasjonsverdi\n", + " self.temperatur = temperatur\n", + " def økTemperatur(self):\n", + " self.temperatur += 5/self.isolasjonsverdi\n", + " def senkTemperatur(self):\n", + " self.temperatur -= 10/self.isolasjonsverdi\n", + " def hentTemperatur(self):\n", + " print(self.temperatur)\n", + "\n", + "termos = Termos(10, 1.25, 70)\n", + "termos.fyll(10)\n", + "\n", + "for timer in range(5):\n", + " termos.senkTemperatur()\n", + " termos.tøm(1)\n", + " termos.hentTemperatur()\n", + "termos.sjekkInnhold()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Forklar hvordan programmet ovenfor fungerer.\n", + "```" + ] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema3_datahandtering/datasamlinger.ipynb b/_sources/docs/tema3_datahandtering/datasamlinger.ipynb new file mode 100644 index 00000000..6f921322 --- /dev/null +++ b/_sources/docs/tema3_datahandtering/datasamlinger.ipynb @@ -0,0 +1,422 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "9a05ddbb", + "metadata": {}, + "source": [ + "# Datasamlinger\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med dette temaet, skal du kunne:\n", + "1. opprette ulike arrayer\n", + "2. gjøre vektoroperasjoner med arrayer\n", + "3. gjøre rede for hva tupler er\n", + "4. opprette og bruke dictionarier\n", + "```\n", + "\n", + "Vi har flere måter å organisere data på i Python. Her er en kort oversikt over de viktigste datasamlingene:\n", + "1. Lister (fleksible samlinger av like eller ulike data)\n", + "2. Arrayer (samlinger av tall som kan opereres på som vektorer).\n", + "3. Tupler (statiske lister som ikke kan endres)\n", + "4. Dictionarier (lister med strenger, ikke tall, som nøkler)\n", + "\n", + "Vi har allerede sett hvordan lister fungerer. La oss se på de tre andre datatypene.\n", + "\n", + "## Arrayer\n", + "Vi begynner med et eksempel som illustrerer forskjellen mellom lister og arrayer. For å kunne bruke arrayer, må vi først importere _numpy_ eller _pylab_." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "fb736924", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "listesum: [1, 2, 3, 2, 3, 1]\n", + "arraysum: [3 5 4]\n" + ] + } + ], + "source": [ + "import numpy as np\n", + "\n", + "liste1 = [1, 2, 3]\n", + "liste2 = [2, 3, 1]\n", + "\n", + "print(\"listesum:\", liste1 + liste2)\n", + "\n", + "array1 = np.array(liste1)\n", + "array2 = np.array(liste2)\n", + "\n", + "print(\"arraysum:\", array1 + array2)" + ] + }, + { + "cell_type": "markdown", + "id": "af0b8ed0", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Bruk koden ovenfor til å forklare forskjellen mellom listeaddisjon og arrayaddisjon.\n", + "```\n", + "```{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "Når to lister adderes, legges den ene lista til slutten på den andre. Når to arrayer adderes, får vi komponentvis addisjon av elementene: [1+2, 2+3, 3+1]. Dette er det samme som vektoraddisjon.\n", + "```\n", + "\n", + "### Opprette arrayer\n", + "Vi kan opprette arrayer på flere måter:\n", + "\n", + "\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Forklar de ulike måtene å opprette arrayer på ved å endre på forskjellige parametre i programmet ovenfor.\n", + "```\n", + "\n", + "```{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "Vi kan oppsummere måter å opprette arrayer på slik:\n", + "| Operasjon | Forklaring |\n", + "| --------- | ---------- |\n", + "| array([x1,x2,x3,...]) | gjør om en liste med tall til en array |\n", + "| arange(a,b,c) | lager en array med tallene a til, men ikke med, b, der c er steglengden |\n", + "| linspace(a,b,c) | lager en array med c elementer fra a til og med b |\n", + "| zeros(n) | lager en array med _n_ nuller |\n", + "| ones(n) | lager en array med _n_ enere |\n", + "```\n", + "\n", + "### Behandle arraydata\n", + "I motsetning til med lister, kan vi ikke bruke listeoperasjoner som _append_, _remove_ og liknende når vi opererer med arrayer. Vi kan derimot få tilgang til elementene ved å bruke indekser, akkurat som med lister.\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Hva tror du koden nedenfor skriver ut? Bruk det du husker om listeindeksering.\n", + "```\n", + "\n", + "\n", + "\n", + "Vi kan også lage flerdimensjonale arrayer, ved å sette inn arrayer i arrayer. Dette kan i noen tilfeller ses på som tabeller med kolonner og rader, slik som nedenfor.\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "1. Prøv å forklare/forutse hva koden nedenfor gjør.\n", + "2. Kjør koden og se om det stemmer med slik du hadde tenkt. Hvis ikke, hva er forskjellen?\n", + "3. Undersøk hva du får som output når du endrer på tallene i print-kommandoene. Beskriv hva som skjer.\n", + "4. Modifiser programmet slik at det kun skriver ut de fire første elementene i kolonne 2.\n", + "5. Lag et program med en array som representerer dataene i tabellen nedenfor.\n", + "Skriv så ut alt i kolonne nummer 3 (hvis vi teller fra 1) og elementet 6.7.\n", + "```\n", + "\n", + "| Kolonne 1 | Kolonne 2 | Kolonne 3 | Kolonne 4 |\n", + "|-----|-----|-----|-----|\n", + "| 0 | 1 | 2 | 3 |\n", + "| 2 | 9.1 | 2.2 | 4 |\n", + "| 3.5 | 9.1 | 6.7 | 5.5 |\n", + "| 1.1 | 0.2 | 8.9 | 7.8 |\n", + "\n", + "\n", + "\n", + "````{admonition} Løsningsforslag\n", + "Vi har en array med to arrayer i, som vi kaller _data_. Vi kan plukke ut elementer fra denne arrayen slik:\n", + "\n", + "```{code-block} Python\n", + "print(data[1,2]) # Printer element 2 (det tredje elementet) fra array 1 (den andre arrayen i arrayen)\n", + "print(data[1,:]) # Printer alle elementer fra array 1 (den andre arrayen i arrayen)\n", + "print(data[:,0]) # Printer element 0 (det første elementet) fra alle (begge) arrayene\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "id": "f2a249ad", + "metadata": {}, + "source": [ + "### Matematikk med arrayer\n", + "Noe som er praktisk med arrayer, er at de kan opppføre seg matematisk som vektorer eller matriser. Eksempler på en matematiske vektor og en matrise er:\n", + "\n", + "$\\vec{v} = [1, 4, 5]$\n", + "\n", + "$M = \\begin{bmatrix}1\\ 2\\ 2\\\\0\\ 4\\ 5\\\\ 6\\ 1\\ 1\\end{bmatrix} = \\begin{bmatrix}\\vec{v} \\\\\\vec{u} \\\\ \\vec{w}\\end{bmatrix} $\n", + "\n", + "Vi skal ikke se så mye på matriser her, men det er nyttig å vite at det finnes matematiske størrelser som kan representeres som flerdimensjonale arrayer. Matriser kan også ses på som en samling vektorer.\n", + "\n", + "La oss se på de vanligste vektoroperasjonene gjennom et eksempelprogram:\n", + "\n", + "\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Test programmet ovenfor og beskriv hvordan de ulike operasjonene fungerer.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "id": "6137ab00", + "metadata": {}, + "source": [ + "### Vektorisering\n", + "En annen ting som er svært nyttig med arrayer, er at de er svært raske å behandle. Vektorisering betyr å bruke arrayer istedenfor å bruke løkker til å repetere operasjoner. Arrayaddisjon er et eksempel på vektorisering. Vi kunne jo ha addert komponentene trinnvis i en løkke. Nedenfor ser du et eksempel på både ikke-vektorisert og vektorisert kode. For å illustrere forskjellen i tida det tar å gjøre de to ulike kodene har vi importert _time_-biblioteket. Det lar oss registrere start- og slutt-tida i programmet, og vi kan derfor beregne tida det tar å kjøre koden ved å ta differansen mellom disse.\n", + "\n", + "\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Forklar hva som foregår i programmet ovenfor. Test programmet ovenfor og beskriv hvordan de ulike operasjonene fungerer. Sjekk også forskjellen i tid mellom komponentvis multiplikasjon av arrayer i en løkke og vektorisert multiplikasjon.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "id": "d92839fa", + "metadata": {}, + "source": [ + "## Tupler\n", + "Tupler blir brukt til å lagre statisk innhold som ikke skal endres. Et typisk eksempel er når vi skal spesifisere en fargekode i RGB (rød, grønn, blå). Da angis intensiteten til rød, grønn og blå som et tall mellom 0 og 255. Dette kan vi beskrive i en liste, men lister kan endres og er derfor ikke så robuste som tupler. Vi bruker derfor tupler til å lagre slike data. Istedenfor klammeparenteser bruker vi runde parenteser når vi lager tupler:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "213479d7", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(255, 0, 255)\n" + ] + } + ], + "source": [ + "svart = (0, 0, 0)\n", + "hvit = (255, 255, 255)\n", + "rød = (255, 0, 0)\n", + "magenta = (255, 0, 255)\n", + "\n", + "print(magenta)" + ] + }, + { + "cell_type": "markdown", + "id": "6740d721", + "metadata": {}, + "source": [ + "## Dictionarier\n", + "\n", + "Dictionarier er en samling av data som indekseres med strenger istedenfor tall. Istedenfor klammeparenteser bruker vi krøllparenteser når vi lager dictionarier. Vi kaller indeksene i en dictionary for _nøkler_, og hver nøkkel har en _verdi_.\n", + "\n", + "```{code-block} Python\n", + "dictionary = {\"nøkkel1\": verdi1, \"nøkkel2\": verdi2, \"nøkkel3\": verdi3, ...}\n", + "```\n", + "\n", + "Dictionarier er spesielt nyttig når vi skal lagre informasjon om bestemte kategorier, som ulike arter, grunnstoffer eller radioaktive nuklider. Programsnutten nedenfor viser hvordan vi bruker en dictionary der vi oppgir atommassen til ulike grunnstoffer." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "b678d981", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "6.94\n" + ] + } + ], + "source": [ + "atommasse = {\"H\": 1.01, \"He\": 4.00, \"Li\": 6.94, \"Be\": 9.01}\n", + "\n", + "print(atommasse[\"Li\"]) # Skriver ut atommassen til litium" + ] + }, + { + "cell_type": "markdown", + "id": "1167d578", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Forklar forskjellen mellom hvordan vi får ut elementer fra en liste sammenliknet med en dictionary.\n", + "```\n", + "\n", + "Dictionarier blir ekstra nyttige når vi forstår hvordan vi kan lagre dictionarier i dictionarier. Da kan vi for eksempel lagre høyde, bredde og vekt til en bestemt art, eller ulike egenskaper ved grunnstoffene. Programmet nedenfor viser hvordan du kan gjøre dette. Vi ser også at vi enkelt kan skrive ut alle nøkler og verdier i en dictionary\n", + "\n", + "\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Legg inn et ekstra valgfritt grunnstoff i programmet ovenfor i tillegg til hydrogen og vanadium. Legg også til kokepunkt for alle grunnstoffene. Skriv ut kokepunktet til det nye grunnstoffet.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "id": "10eb8b21", + "metadata": {}, + "source": [ + "## Oppgaver\n", + "\n", + "```{admonition} Oppgave 6.1\n", + ":class: tip\n", + "Lag to arrayer. Fyll den ene med oddetall fra 1 til 101 og den andre med partall fra 0 til og med 100. Legg sammen arrayene.\n", + "```\n", + "\n", + "```{admonition} Oppgave 6.2\n", + ":class: tip\n", + "Et program skal regne ut $c = a + b$. Forklar hva $c$ vil bli dersom\n", + "1. $a = [1,2,3,4]$ og $b = [1,2,3,4]$\n", + "2. $a = [1,2,3,4]$ og $b = 1$\n", + "3. $a = array([1,2,3,4])$ og $b = 1$\n", + "4. $a = array([1,2,3,4])$ og $b = array([1,2,3,4])$\n", + "```\n", + "\n", + "```{admonition} Oppgave 6.3\n", + ":class: tip\n", + "Et program skal regne ut $c = a * b$. Forklar hva $c$ vil bli dersom\n", + "1. $a = [1,2,3,4]$ og $b = [1,2,3,4]$\n", + "2. $a = [1,2,3,4]$ og $b = 4$\n", + "3. $a = array([1,2,3,4])$ og $b = array([1,2,3,4])$\n", + "```\n", + "\n", + "```{admonition} Oppgave 6.4\n", + ":class: tip\n", + "Lag en array med alle tall i 9-gangen opp til 1000. Skriv ut tallene til slutt\n", + "```\n", + "\n", + "````{admonition} Oppgave 6.5 (kjemi)\n", + ":class: tip\n", + "Følgende kode regner ut pH i en løsning gitt ulike verdier av konsentrasjonen av oksoniumioner. Vektoriser koden.\n", + "\n", + "```{code-block} Python\n", + "import numpy as np\n", + "\n", + "H3O = [1E-10, 2.4E-9, 1E-8, 3.5E-7, 7E-6, 1.2E-5, 1E-4, 1E-2, 1.2]\n", + "\n", + "def surhet(oksonium):\n", + " pH = -np.log10(oksonium)\n", + " return pH\n", + " \n", + "pH = []\n", + "\n", + "for kons in H3O:\n", + " pH.append(surhet(kons))\n", + " \n", + "```\n", + "````\n", + "\n", + "```{admonition} Oppgave 6.6 (matematikk)\n", + ":class: tip\n", + "Vi har vektorene $\\vec{v} = [2, 2]$ og $\\vec{w} = [1, -3]$. Avgjør om vektorene er ortogonale ($\\vec{v}\\cdot \\vec{w} = 0$). Kontroller ved å regne ut for hånd.\n", + "```\n", + "\n", + "```{admonition} Oppgave 6.7\n", + ":class: tip\n", + "Lise prøver å lage tre arrayer: én med alle partall fra og med 0 til og med 10, én med 1000 jevnt fordelte tall fra og med 0 til og med 10 og én med alle heltall fra og med 100 til og med 1 i synkende rekkefølge. Men programmet hennes gir feil output. Hva er feil? Rett opp programmet slik at Lise får gjort det hun ønsker.\n", + "\n", + "\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "import numpy as np\n", + "\n", + "partall = np.arange(0, 11, 2)\n", + "mange_tall = np.linspace(0, 10, 1000)\n", + "heltall_synkende = np.arange(100, 0, -1)\n", + "\n", + "print(\"Første array:\", partall)\n", + "print(\"Andre array:\", mange_tall)\n", + "print(\"Tredje array:\", heltall_synkende)\n", + "```\n", + "````\n", + "\n", + "```{admonition} Oppgave 6.8\n", + ":class: tip\n", + "Programmet nedenfor tegner fire sirkler, men sirklene trenger farge. Lag fire tupler som inneholder RGB-verdiene til fire valgfrie farger.\n", + "\n", + "\n", + "```\n", + "\n", + "```{admonition} Oppgave 6.9\n", + ":class: tip\n", + "Lag en dictionary med farger som nøkler og RGB-verdier som verdier (som tupler). Lag minst fem farger og skriv ut \"RGB-koden for FARGE er: (R, G, B)\" for hver farge i dictionarien.\n", + "```\n", + "\n", + "````{admonition} Oppgave 6.10\n", + ":class: tip\n", + "Følgende program har noen variabler som inneholder informasjon om noen elever som har en bestemt lærer. Legg dem inn i en dictionary isteden. Hva er fordelen med å bruke dictionarier her?\n", + "```{code-block} Python\n", + "elever = [\"Gunnar\", \"Marius\", \"Kristian\"]\n", + "lærer = [\"Andreas\"]\n", + "```\n", + "````\n", + "\n", + "````{admonition} Oppgave 6.11 (biologi)\n", + ":class: tip\n", + "Lag en dictionary med ulike arter og forskjellige egenskaper til disse artene. Det bør være minst 3 ulike arter med 3 egenskaper hver.\n", + "````" + ] + }, + { + "cell_type": "markdown", + "id": "42228742", + "metadata": {}, + "source": [ + "## Videoer\n", + "I videoene nedenfor kan du få en innføring eller repetisjon i den grunnleggende teorien bak arrayer og dictionarier:\n", + "\n", + "````{tab-set}\n", + "```{tab-item} Arrayer og tupler\n", + "\n", + "```\n", + "```{tab-item} Dictionarier\n", + "\n", + "```\n", + "````" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "52f533e8", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/docs/tema3_datahandtering/lese_filer.ipynb b/_sources/docs/tema3_datahandtering/lese_filer.ipynb new file mode 100644 index 00000000..61e872cf --- /dev/null +++ b/_sources/docs/tema3_datahandtering/lese_filer.ipynb @@ -0,0 +1,820 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Datahåndering II: Håndtere og visualisere data\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med dette temaet, skal du kunne:\n", + "1. lese data fra fil\n", + "2. rydde og sortere data\n", + "3. visualisere fildata\n", + "```\n", + "\n", + "```{epigraph}\n", + "In God we trust; all others must bring data.\n", + "\n", + "-- Statistiker W. Edwards Deming (1900–1993)\n", + "```\n", + "\n", + "Data er over alt. Til daglig prosesserer vi store mengder med data i hjernen vår, og vi lærer og konstruerer nye oppfatninger og sammenhenger basert på disse inntrykkene. Dersom vi snubler i en høy dørterskel tilstrekkelig mange ganger, lærer vi etter hvert å ta høyere skritt over akkurat denne terskelen. Vi klarer også stort sett å kjenne igjen dyr som hunder, katter og aper, og vi klarer å skille dem fra hverandre. Det er fordi vi har samlet masse data i løpet av livet som gjør oss egnet til å trekke slutninger og gjøre (som regel?) gode valg. Samfunnet og internett samler også data om oss, blant annet for å tilpasse seeropplevelser på Netflix eller annonser på Google. Heldigvis er datainnsamling ganske regulert gjennom lover og regler (GDPR = General Data Protection Regulation).\n", + "\n", + "Vi kan også bruke data til å illustrere sammenhenger i natur og samfunn, og som utgangspunkt for modellering. Vi skal derfor her se på hvordan vi kan lese, bearbeide og visualisere data på en god måte." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Datafiler\n", + "Vi ønsker ofte å oppbevare og overføre data i _råtekstformat_ fordi de er robuste og kan leses av alle. Det betyr at dataene ikke har noen formatering eller annen informasjon enn de faktiske dataene. En Word-fil er for eksempel ikke råtekst, fordi den inneholder formatering av tekst som farger, kursivering og tekststørrelse. Eksempler på råtekstfiler er .txt-filer og .csv-filer. Råtekstdata kan vi lage manuelt, eller vi kan få dem fra sensorer eller laste dem ned fra internett. De fleste store datafiler lagres i råtekst.\n", + "\n", + "Vi kan bruke Python til å lese slike data på mange ulike måter. Vi skal se på tre ulike metoder å gjøre det på, slik at du kan benytte det som er best i en gitt situasjon. Alle metodene har fordeler og ulemper, som vi også skal adressere. Vi kommer derimot til å bruke metoden fra det mye brukte _Pandas_-biblioteket som standard seinere, så det kan være en fordel at du lærer deg denne metoden best. Det er også den enkleste måten å lese filer på.\n", + "\n", + "Vi tar utgangspunkt i en liten fil med få datapunkter, slik at det er enkelt å se hva som skjer når vi leser fila. Fila beskriver temperaturen i en kaffekopp (i $^oC$) med tida (i minutter), og ser slik ut:\n", + "\n", + "```{code-block} text\n", + "tid (min), temperatur (grader celsius)\n", + "0,90\n", + "1,80\n", + "2,72\n", + "3,64\n", + "4,59\n", + "5,51\n", + "6,45\n", + "7,42\n", + "8,39\n", + "9,37\n", + "10,36\n", + "```\n", + "\n", + "Vi ser at fila skiller datapunktene med komma, og at første linje som fungerer som overskrift. Dette er viktig informasjon når vi skal lese fila. For å lese en datafil, må den enten ligge i samme mappe som programmet som leser fila, eller så må du spesifisere hvilken filbane fila har. Det enkleste er å legge den i samme mappe som programmet, eller i en mappe som for eksempel heter \"datafiler\", som ligger i samme mappe som programmet ditt. Alternativt går det an å lese rett fra en nettadresse som peker direkte på en datafil (f.eks. \"https://www.uio.no/studier/emner/matnat/ifi/IN-KJM1900/h20/datafiler/temperatur.txt\").\n", + "\n", + "Nedenfor ser vi tre måter å lese filer på. Vi skal primært bruke Pandas-metoden videre, men vi skal likevel gjennomgå alle metodene slik at du kjenner til litt ulike framgangsmåter." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "``````{tab-set} \n", + "`````{tab-item} Standard Python\n", + "Vi kan bruke grunnstrukturer i Python til å lese filer uten å bruke biblioteker. Da må vi benytte løkker for å gjenta operasjoner for hver linje i fila:\n", + "\n", + "\n", + "\n", + "Her bruke vi kommandoen _open_, med nøkkelordet _\"r\"_ (read). I løkka leser programmet hver linje, og deler dataene ved hvert komma, spesifisert i kommandoen _split_. Dette genererer ei liste med to elementer, siden det er to elementer på hver rad. Disse elementene blir tolket som tekst. Derfor konverterer vi dem til flyttall og legger dem i hver sin liste, som vi plotter til slutt. Vi lukker også fila til slutt.\n", + "````{admonition} Underveisoppgave\n", + ":class: tip\n", + "Kjør programmet nedenfor i Trinket-vinduet ovenfor. Hva viser programmet deg?\n", + "```{code-block} Python\n", + "import matplotlib.pyplot as plt\n", + "\n", + "fil = open(\"temperatur.txt\", 'r')\n", + "fil.readline() \n", + "t = []\t\t\t\t\t\t \n", + "T = []\t\t\t\t\t \n", + "\n", + "for rad in fil:\t\t\t\t \n", + " print(\"rad:\", rad)\n", + " data = rad.split(\",\")\t\t \n", + " print(\"splittet rad:\", data)\n", + " print(\"radelement 1:\", data[0], \"radelement 2:\", data[1])\n", + "fil.close()\n", + "```\n", + "````\n", + "`````\n", + "\n", + "`````{tab-item} Numpy-biblioteket\n", + "Det finnes også en nyttig funksjon som heter _loadtxt_ i _numpy_-biblioteket, som lar deg lese filer på en vektorisert måte uten løkker. Da lages det en array av dataene, med en array for hver kolonne inni denne arrayen. Arrayen er altså todimensjonal, og vi må derfor trekke ut de relevante kolonnene i hver sin endimensjonale array.\n", + "\n", + "\n", + "\n", + "Her utfører vi \"array-slicing\", det vil si at vi plukker ut elementer fra en todimensjonal array og lager en ny endimensjonal array av det.\n", + "\n", + "````{admonition} Underveisoppgave\n", + ":class: tip\n", + "Kjør programmet nedenfor i Trinket-vinduet ovenfor. Hva viser programmet deg om array-slicing? Eksperimenter gjerne med å bytte ut verdiene, slik at du forstår hvordan verdiene plukkes ut\n", + "\n", + "```{code-block} Python\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "data = np.loadtxt(\"temperatur.txt\", skiprows = 1, delimiter = \",\") # Får to arrayer (kolonner) i en array\n", + "print(data)\n", + "t = data[0:3,0]\n", + "T = data[0:3,1] \n", + "print(t)\n", + "print(T)\n", + "\n", + "plt.scatter(t, T)\n", + "plt.xlabel(\"Tid (s)\")\n", + "plt.xlabel(\"Temperatur ($^o$C)\")\n", + "plt.show()\n", + "```\n", + "````\n", + "`````\n", + "\n", + "`````{tab-item} Pandas-biblioteket\n", + "Et svært mye brukt bibliotek er Pandas-biblioteket. Det benyttes mye i datahåndtering og maskinlæring, og er kanskje den enkleste måten å lese filer på. Med funksjonen _read\\_csv_ leses filer av typen .txt eller .csv, og vi får en ny datatype som kalles en _dataramme_ (_dataframe_). En slik datatype kan ses på som en slags dictionary, der kolonneoverskriftene fungerer som nøkler. Dermed skriver vi _data[\"temperatur\"]_ for å få tilgang til kolonnen med overskriften \"temperatur\".\n", + "\n", + "\n", + "\n", + "Pandas gir penest og ryddigst output dersom du bruker det i Jupyter Notebook. Vi skal bruke Pandas videre her, så da får du en smakebit på hva som er mulig.\n", + "`````\n", + "``````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Håndtere data med Pandas\n", + "\n", + "Noen ganger trenger vi å rydde, utforske og omstrukturere datasettene våre før vi visualiserer dem. Dette egner Pandas seg svært godt til. La oss se på et eksempel. Datafila _penguins.txt_ inneholder ulik informasjon om pingviner som er registrert på ulike øyer. Vi kan lese fila slik:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "\n", + "pingvindata = pd.read_csv(\"https://www.uio.no/studier/emner/matnat/ifi/IN-KJM1900/h21/datafiler/penguings.txt\", delimiter = \",\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nå kan vi ta en kikk på de første eller siste linjene i datasettet vårt ved å bruke funksjonene _head_ eller _tail_. Dersom vi ikke gir disse funksjonene en parameterverdi, får vi de 5 første eller siste linjene:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
speciesislandbill_length_mmbill_depth_mmflipper_length_mmbody_mass_gsex
0AdelieTorgersen39.118.7181.03750.0MALE
1AdelieTorgersen39.517.4186.03800.0FEMALE
2AdelieTorgersen40.318.0195.03250.0FEMALE
3AdelieTorgersenNaNNaNNaNNaNNaN
4AdelieTorgersen36.719.3193.03450.0FEMALE
\n", + "
" + ], + "text/plain": [ + " species island bill_length_mm bill_depth_mm flipper_length_mm \\\n", + "0 Adelie Torgersen 39.1 18.7 181.0 \n", + "1 Adelie Torgersen 39.5 17.4 186.0 \n", + "2 Adelie Torgersen 40.3 18.0 195.0 \n", + "3 Adelie Torgersen NaN NaN NaN \n", + "4 Adelie Torgersen 36.7 19.3 193.0 \n", + "\n", + " body_mass_g sex \n", + "0 3750.0 MALE \n", + "1 3800.0 FEMALE \n", + "2 3250.0 FEMALE \n", + "3 NaN NaN \n", + "4 3450.0 FEMALE " + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pingvindata.head()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Her ser vi både kolonnenavnene og verdier til de fem første pingvinene. Vi kan også se at vi får en litt merkelig verdi, nemlig NaN. Dette står for \"Not a Number\" og er en vanlig måte å markere at vi mangler data. Det betyr for eksempel at pingvinene er registrert, men at vi ikke fikk undersøkt den. Vi ser for øvrig at _read\\_csv_ fra Pandas kan lese både NaN-verdier, tekst og tall samtidig." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Rydde data\n", + "\n", + "Mange ganger har vi behov for å utforske og rydde litt i datasettet vårt. Det kan hende vi kun trenger noen utvalgte verdier, eller det kan hende vi ønsker å slette noe. Programmet nedenfor viser deg noen muligheter. Husk at hvis du skal lagre verdier, må du tilordne dem til variabler. For eksempel _finner_ vi kun damepingvinene ved å skrive _pingvindata[pingvindata[\"sex\"] == \"FEMALE\"]_. Hvis vi vil lage en dataframe som kun inneholder damepingvinene, må vi skrive _pingvindata_damer = pingvindata[pingvindata[\"sex\"] == \"FEMALE\"]_. Nedenfor ser du et utvalg muligheter vi har med pandas. Studer eksempelen nøye og test dem gjerne ut selv! En god måte å jobbe med dette på, er å skrive ut _pingvindata.head()_ hver gang du har gjort en endring i datasettet for å se hva som har skjedd." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
speciesislandbill_length_mmbill_depth_mmflipper_length_mmbody_mass_gsex
0AdelieTorgersen39.118.7181.03750.0MALE
1AdelieTorgersen39.517.4186.03800.0FEMALE
2AdelieTorgersen40.318.0195.03250.0FEMALE
3AdelieTorgersenNaNNaNNaNNaNNaN
4AdelieTorgersen36.719.3193.03450.0FEMALE
\n", + "
" + ], + "text/plain": [ + " species island bill_length_mm bill_depth_mm flipper_length_mm \\\n", + "0 Adelie Torgersen 39.1 18.7 181.0 \n", + "1 Adelie Torgersen 39.5 17.4 186.0 \n", + "2 Adelie Torgersen 40.3 18.0 195.0 \n", + "3 Adelie Torgersen NaN NaN NaN \n", + "4 Adelie Torgersen 36.7 19.3 193.0 \n", + "\n", + " body_mass_g sex \n", + "0 3750.0 MALE \n", + "1 3800.0 FEMALE \n", + "2 3250.0 FEMALE \n", + "3 NaN NaN \n", + "4 3450.0 FEMALE " + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Sjekke hvilke kolonnekategorier vi har\n", + "pingvindata.columns\n", + "\n", + "# Teller ulike forekomster i kolonnen\n", + "pingvindata[\"sex\"].value_counts()\n", + "\n", + "# Finne en spesifikk kolonne\n", + "pingvindata[\"flipper_length_mm\"]\n", + "\n", + "# Finne et utvalg elementer [fra:til] av en spesifikk kolonne\n", + "pingvindata[\"flipper_length_mm\"][0:10]\n", + "\n", + "# Finne flere kolonner\n", + "pingvindata[[\"bill_length_mm\", \"bill_depth_mm\", \"flipper_length_mm\"]]\n", + "\n", + "# Finne spesifikke elementer\n", + "pingvindata.loc[1] # Element 1 (andre element)\n", + "pingvindata.loc[100][2] # Element 100, kolonneverdi 2\n", + "pingvindata[pingvindata[\"sex\"] == \"FEMALE\"] # Damepingviner\n", + "\n", + "# Sortere verdier etter stigende (ascending = True) rekkefølge (først nebblengde, så nebbdybde)\n", + "pingvindata.sort_values([\"bill_length_mm\", \"bill_depth_mm\"], ascending = True)\n", + "\n", + "# Velger ut kun de pingvinene med nebblengde under 40 mm\n", + "pingvindata_kort_nebb = pingvindata[pingvindata[\"bill_length_mm\"] < 40]\n", + "\n", + "# Sletter alle pingviner som har mangelfull info (NaN)\n", + "pingvindata.dropna()\n", + "\n", + "# Legger til en ny kolonne\n", + "pingvindata[\"total_mm\"] = pingvindata[\"bill_length_mm\"] + pingvindata[\"bill_depth_mm\"] \n", + "\n", + "# Lagre fila i en ny csv-fil\n", + "pingvindata.to_csv(\"ny_pingvinfil.csv\", index = False)\n", + "\n", + "# Sletter kolonnen har lagt til\n", + "pingvindata.pop(\"total_mm\")\n", + "pingvindata.head()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Bruk pingvindatafila (du finner den under datafiler på nettsidene her) og les dataene med Pandas. Finn ut hvor mange hankjønnspingviner det er med kroppsmasse under 3000 g.\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "En mulig løsning er å gjøre det slik, eller kun sortere kroppsmasse og så bruke _count\\_values_ til å telle antall av hvert kjønn.\n", + "\n", + "```{code-block} Python\n", + "data1 = pingvindata[pingvindata[\"sex\"] == \"MALE\"]\n", + "data1 = data1[data1[\"body_mass_g\"] < 3500]\n", + "print(\"Antall hankjønnspinginver:\", len(data1))\n", + "```\n", + "````\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Vi kan beskrive frekvens som antall forekomster av en verdi som tilhører en variabel. Relativ frekvens er antallet forekomster av noe delt på totalt antall verdier innenfor den samme variabelen. Regn ut relativ frekvens av antall pingviner av arten Adelie.\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "En mulig løsning er å gjøre det slik, eller kun sortere kroppsmasse og så bruke _count\\_values_ til å telle antall av hvert kjønn.\n", + "\n", + "```{code-block} Python\n", + "arter = pingvindata[\"species\"].value_counts()\n", + "print(arter) # ser at Adelie er element 0 i lista over antall arter\n", + "adelie = arter[0]\n", + "n = len(pingvindata)\n", + "print(\"Relativ frekvens:\", round(adelie/n,2))\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualisering\n", + "Visualisering av data er viktig. Det gir oss mulighet til å enkelt se sammenhenger og tolke data. En illustrasjon bør være så klar og enkel som mulig, uten unødvendige detaljer. Vær derfor kritisk når du skal lage dine egne figurer. Vi skal bruke et bibliotek som heter _seaborn_ til å lage fine visualiseringer. Seaborn-biblioteket inneholder noen ekstra fine plott som utvidelse til matplotlib, og vi kan bruke vanlige matplotlib-kommandoer som _xlabel_ og _title_ sammen med seaborn-kommandoene. La oss på noen få nyttige plott her. Vi skal se nærmere på andre plott ettersom de blir nyttige.\n", + "\n", + "Her er et eksempel på et relasjonsplott (\"relplot\"), som viser sammenhengen mellom to variabler. Vi kan lage ulike markører og modifisere størrelsen til markørene. I plottet nedenfor er det kanskje litt i overkant mye informasjon som formidles, men det viser i hvert fall hva som er mulig." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt \n", + "import seaborn as sns\n", + "\n", + "sns.relplot(data=pingvindata, x=\"bill_length_mm\",y=\"bill_depth_mm\", hue=\"species\", size=\"body_mass_g\", style=\"island\")\n", + "plt.xlabel(\"Nebblengde (mm)\")\n", + "plt.ylabel(\"Nebbdybde (mm)\")\n", + "plt.title(\"Sammenheng mellom nebbdybde og nebblengde hos pingviner\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Forklar hva plottet ovenfor formidler. Foreslå eventuelt forbedringer av visualiseringen.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Visualiseringen nedenfor formidler noe av det samme, men med fokus på hvilke verdier som er mest vanlig hos de ulike artene. Vi kaller det for et \"tetthetsplott\" (kde = kernel density estimate), siden det viser fordelingen (tettheten) av de ulike verdiene. En slik visualisering kan leses omtrent som et kart med høydenivåer – den innerste \"ringen\" viser området der det er \"høyest\", altså har flesteparten av pingvinene denne fordelingen." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.jointplot(data=pingvindata, x=\"bill_length_mm\",y=\"bill_depth_mm\", hue=\"species\", kind = \"kde\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Plottet nedenfor er en variant av et tetthetsplott for én variabel:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.kdeplot(data=pingvindata, x=\"bill_length_mm\", hue=\"species\", fill=True, palette=\"crest\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "En annen nyttig visualisering er histogrammer. Det er figurer som viser fordeling av verdier ved å gruppere ulike verdier i intervaller . Du kan velge hvor mange søyler/intervaller som skal være med i histogrammet ved å justere parameteren _bins_. " + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX4AAAEHCAYAAACp9y31AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Z1A+gAAAACXBIWXMAAAsTAAALEwEAmpwYAAAU7klEQVR4nO3df7RlZX3f8fcHBtCoBJDJLBxmHNJQI/khyJUqElNBrbFZDkmVwRgdKwlYYyLSmGLNsrYxq5qkMbRpA7OCdWxRICgFbYPgCLFZ/JBBkN8GpJAZBphJIgrGAsN8+8fZ0zlc7i+G2efec5/3a62zzt7P3vvs52EPn7Pvc/Z+dqoKSVI79prvCkiSRsvgl6TGGPyS1BiDX5IaY/BLUmOWzHcF5uLggw+uVatWzXc1JGms3HDDDX9TVUsnl49F8K9atYqNGzfOdzUkaawkuW+qcrt6JKkxBr8kNcbgl6TGGPyS1BiDX5IaY/BLUmMMfklqjMEvSY0x+CWpMQa/nmL5ipUk6fW1fMXK+W6m1LSxGLJBo7Nl8ybWnHN1r/u44LRje/18STPzjF+SGmPwS1JjDH5JaozBL0mNMfglqTEGvyQ1xuCXpMb0GvxJDkhyUZI7k9yR5FVJDkpyRZK7uvcD+6yDJOmp+j7jPwu4rKp+HHgZcAdwJrChqg4HNnTzkqQR6S34k/ww8BrgXICqeryqHgZWA+u71dYDJ/ZVB0nS0/V5xn8YsA34r0luTPKnSZ4HLKuqB7p1HgSW9VgHSdIkfQb/EuDlwJ9U1VHA95nUrVNVBdRUGyc5NcnGJBu3bdvWYzUlqS19Bv9mYHNVXdfNX8Tgi+ChJIcAdO9bp9q4qtZV1URVTSxdurTHakpSW3oL/qp6ENiU5CVd0QnA7cClwNqubC1wSV91kCQ9Xd/DMv86cF6SfYF7gH/O4MvmwiSnAPcBJ/VcB0nSkF6Dv6puAiamWHRCn/uVJE3PO3clqTEGvyQ1xuCXpMYY/JLUGINfkhpj8EtSYwx+SWqMwS9JjTH4JakxBr8kNcbgl6TGGPyS1BiDX5IaY/BLUmMMfo3eXktI0vtr+YqV891SaUHq+0Es0tPt2M6ac67ufTcXnHZs7/uQxpFn/JLUGINfkhpj8EtSYwx+SWqMwS9JjTH4JakxBr8kNcbgl6TG9HoDV5J7gUeAJ4HtVTWR5CDgAmAVcC9wUlV9p896SJJ2GcUZ/2ur6siqmujmzwQ2VNXhwIZuXpI0IvPR1bMaWN9NrwdOnIc6SFKz+g7+Ai5PckOSU7uyZVX1QDf9ILBsqg2TnJpkY5KN27Zt67maktSOvgdpO66q7k/yI8AVSe4cXlhVlaSm2rCq1gHrACYmJqZcR5L0zPV6xl9V93fvW4GLgWOAh5IcAtC9b+2zDpKkp+ot+JM8L8kLdk4DbwBuBS4F1narrQUu6asOkqSn67OrZxlwcZKd+/lsVV2W5HrgwiSnAPcBJ/VYB0nSJL0Ff1XdA7xsivK/BU7oa7+SpJl5564kNcbgl6TGGPyS1BiDX5IaY/BLUmMMfklqjMEvSY0x+CWpMQa/JDXG4Jekxhj8ktQYg1+SGmPwS1JjDH5JaozBL0mNMfglqTEGvyQ1xuCXpMYY/JLUGINfkhpj8EtSYwx+SWqMwS9Jjek9+JPsneTGJF/q5g9Lcl2Su5NckGTfvusgSdplFGf87wfuGJr/BPDJqvox4DvAKSOogySp02vwJzkU+KfAn3bzAY4HLupWWQ+c2GcdJElP1fcZ/x8BvwXs6OZfCDxcVdu7+c3A8qk2THJqko1JNm7btq3nakpSO3oL/iQ/D2ytqht2Z/uqWldVE1U1sXTp0j1cO0lq15IeP/vVwJuTvAl4DrA/cBZwQJIl3Vn/ocD9PdZBkjRJb2f8VfWhqjq0qlYBJwNfraq3A1cCb+lWWwtc0lcdJElPNx/X8f8r4IwkdzPo8z93HuogaZLlK1aSpNfX8hUr57uZot+unv+vqq4Cruqm7wGOGcV+Jc3dls2bWHPO1b3u44LTju318zU33rkrSY0x+CWpMQa/JDVmTsGf5NVzKZMkLXxzPeP/T3MskyQtcDNe1ZPkVcCxwNIkZwwt2h/Yu8+KSZL6MdvlnPsCz+/We8FQ+ffYdROWJGmMzBj8VfUXwF8k+XRV3TeiOkmSejTXG7j2S7IOWDW8TVUd30elJEn9mWvw/xlwNoNx9Z/srzqSpL7NNfi3V9Wf9FoTSdJIzPVyzi8meW+SQ5IctPPVa80kSb2Y6xn/2u79g0NlBfzonq2OJKlvcwr+qjqs74pIkkZjTsGf5J1TlVfVZ/ZsdaQ9aK8lJOl1Fy86dAX3b/rrXvch7Wlz7ep5xdD0c4ATgG8ABr8Wrh3bHV9emsJcu3p+fXg+yQHA+X1USJLUr90dlvn7gP3+kjSG5trH/0UGV/HAYHC2lwIX9lUpSVJ/5trH/wdD09uB+6pqcw/1kST1bE5dPd1gbXcyGKHzQODxPislSerPXJ/AdRLwdeCtwEnAdUkcllmSxtBcu3o+DLyiqrYCJFkKfAW4qK+KSZL6MderevbaGfqdv30G20qSFpC5nvFfluTLwOe6+TXA/5ppgyTPAb4G7Nft56Kq+jdJDmNwD8ALgRuAd1SVvxlIM1i+YiVbNm+a72pokZjtmbs/Biyrqg8m+UXguG7RNcB5s3z2Y8DxVfVokn2Av0zy58AZwCer6vwkZwOnAA75LM1gy+ZN3oWsPWa27po/YvB8XarqC1V1RlWdAVzcLZtWDTzaze7TvQo4nl2/DawHTtydikuSds9swb+sqm6ZXNiVrZrtw5PsneQmYCtwBfBt4OGq2t6tshlYPs22pybZmGTjtm3bZtuVJGmOZgv+A2ZY9tzZPryqnqyqI4FDgWOAH59rxapqXVVNVNXE0qVL57qZJGkWswX/xiS/Orkwya8w+GF2TqrqYeBK4FXAAUl2/rZwKHD/XD9HkvTszXZVz+nAxUnezq6gnwD2BX5hpg27a/2fqKqHkzwXeD3wCQZfAG9hcGXPWuCS3a69pPEygmckgM9JmM2MwV9VDwHHJnkt8JNd8f+sqq/O4bMPAdYn2ZvBXxYXVtWXktwOnJ/kY8CNwLm7X31JY2UEz0gAr1CazVzH47+SwZn6nFXVzcBRU5Tfw6C/X5I0D7z7dowsX7GSJL2+JC1+c71zVwuAN/FI2hM845ekxhj8ktQYg1+SGmPwS1JjDH5JaozBL0mNMfglqTEGvyQ1xuCXpMYY/JLUGINfkhpj8EtSYwx+SWqMwS9JjTH4JakxBr8kNcbgl6TGGPyS1BiDX5IaY/BLUmMMfklqTG/Bn2RFkiuT3J7ktiTv78oPSnJFkru69wP7qoMk6en6POPfDvzLqjoCeCXwa0mOAM4ENlTV4cCGbl6SNCK9BX9VPVBV3+imHwHuAJYDq4H13WrrgRP7qoMk6elG0sefZBVwFHAdsKyqHugWPQgsm2abU5NsTLJx27Zto6imJDWh9+BP8nzg88DpVfW94WVVVUBNtV1VrauqiaqaWLp0ad/VlKRm9Br8SfZhEPrnVdUXuuKHkhzSLT8E2NpnHSRJT9XnVT0BzgXuqKo/HFp0KbC2m14LXNJXHSRJT7ekx89+NfAO4JYkN3Vl/xr4OHBhklOA+4CTeqyDJGmS3oK/qv4SyDSLT+hrv5KkmXnnriQ1xuCXpMYY/JLUGINfkhpj8O8By1esJEnvL0naE/q8nLMZWzZvYs05V/e+nwtOO7b3fUha/Dzjl6TGGPySFp+9lvTe9bp8xcr5buVus6tH0uKzY3vv3a/j3PXqGb8kNcbgl6TGGPyS1BiDX5IaY/BLUmMMfknaHWN8yaiXc0rS7hjjS0Y945ekxnjGLz0b3Z/70jgx+KVnYwR/7sN43yWqhceuHklqjMEvSY0x+CWpMQa/JDWmt+BP8qkkW5PcOlR2UJIrktzVvR/Y1/4lSVPr84z/08AbJ5WdCWyoqsOBDd28JGmEegv+qvoa8HeTilcD67vp9cCJfe1fkjS1UffxL6uqB7rpB4FlI96/JDVv3n7craoCarrlSU5NsjHJxm3bto2wZpK0uI06+B9KcghA9751uhWral1VTVTVxNKlS0dWQUla7EYd/JcCa7vptcAlI96/JDWvz8s5PwdcA7wkyeYkpwAfB16f5C7gdd28JGmEehukrareNs2iE/rapyRpdt65K0mNMfglqTEGvyQ1xuCXpMYY/JLUGINfkhpj8EtSYwx+SWqMwS9JjTH4JakxBr8kNcbgl6TGGPyS1BiDX5IaY/BLUmMMfklqjMEvSY1Z9MG/fMVKkvT6kqRx0tujFxeKLZs3seacq3vdxwWnHdvr50vSnrToz/glSU9l8EtSYwx+SWqMwS9JjTH4Jakx8xL8Sd6Y5FtJ7k5y5nzUQZJaNfLgT7I38J+BnwOOAN6W5IhR10OSWjUfZ/zHAHdX1T1V9ThwPrB6HuohSU1KVY12h8lbgDdW1a908+8A/lFVvW/SeqcCp3azLwG+NemjDgb+pufqjspiagssrvYspraA7VnI+mjLi6tq6eTCBXvnblWtA9ZNtzzJxqqaGGGVerOY2gKLqz2LqS1gexayUbZlPrp67gdWDM0f2pVJkkZgPoL/euDwJIcl2Rc4Gbh0HuohSU0aeVdPVW1P8j7gy8DewKeq6rbd+Khpu4HG0GJqCyyu9iymtoDtWchG1paR/7grSZpf3rkrSY0x+CWpMQsy+JN8KsnWJLcOlV2Q5KbudW+Sm4aWfagb/uFbSf7JvFR6BtO058gk13bt2ZjkmK48Sf5j156bk7x8/mo+tWna87Ik1yS5JckXk+w/tGzBHp8kK5JcmeT2JLcleX9XflCSK5Lc1b0f2JUv2OMzQ1ve2s3vSDIxaZtxPDa/n+TO7r//xUkOGNpmHNvzO11bbkpyeZIXdeX9/VurqgX3Al4DvBy4dZrl/wH4SDd9BPBNYD/gMODbwN7z3YbZ2gNcDvxcN/0m4Kqh6T8HArwSuG6+6z/H9lwP/Gw3/W7gd8bh+ACHAC/vpl8A/FVX598DzuzKzwQ+sdCPzwxteSmDmyCvAiaG1h/XY/MGYElX/omhYzOu7dl/aJ3fAM7u+9/agjzjr6qvAX831bIMHnJ7EvC5rmg1cH5VPVZV/we4m8GwEAvGNO0pYOdZ8Q8DW7rp1cBnauBa4IAkh4ympnMzTXv+IfC1bvoK4J910wv6+FTVA1X1jW76EeAOYDmDeq/vVlsPnNhNL9jjM11bquqOqpp85zuM6bGpqsuranu32rUM7gWC8W3P94ZWex6DbIAe/60tyOCfxc8AD1XVXd38cmDT0PLNXdlCdzrw+0k2AX8AfKgrH9f23MauMZfeyq6b9MamPUlWAUcB1wHLquqBbtGDwLJueizaM6kt0xmLtsCM7Xk3g7NiGOP2JPndLgveDnykW6239oxj8L+NXWf74+xfAB+oqhXAB4Bz57k+z9a7gfcmuYHBn7GPz3N9npEkzwc+D5w+6QyMGvzdPTbXPc/UlnE0XXuSfBjYDpw3X3XbHVO1p6o+3GXBecD7Ztp+Txir4E+yBPhF4IKh4nEdAmIt8IVu+s/Y9SfpWLanqu6sqjdU1dEMvpi/3S1a8O1Jsg+D/xHPq6qdx+ShnX9Wd+9bu/IF3Z5p2jKdBd0WmL49Sd4F/Dzw9u6LGca4PUPOY1c3aW/tGavgB14H3FlVm4fKLgVOTrJfksOAw4Gvz0vtnpktwM9208cDO7uuLgXe2f2i/0rgu0NdDgtWkh/p3vcCfhs4u1u0oI9P95vRucAdVfWHQ4suZfDlTPd+yVD5gjw+M7RlOmN5bJK8Efgt4M1V9fdDm4xrew4fWm01cGc33d+/tfn+pXuqF4MzxgeAJxj0a53SlX8aeM8U63+YwRnmt+iulFlIr6naAxwH3MDgKoTrgKO7dcPgQTXfBm5h6CqMhfKapj3vZ3CVwl8BH6e7K3yhH5/uOBRwM3BT93oT8EJgA4Mv5K8ABy304zNDW36hO06PAQ8BXx7zY3M3g77vnWVnj3l7Pg/c2pV/kcEPvr3+W3PIBklqzLh19UiSniWDX5IaY/BLUmMMfklqjMEvSY0x+CWpMQa/Fowkv5HkjiT3J/njruw9Sd45T/W5N8nBe/gzVyX5paH5d+1sqzQqI3/mrjSD9zK4O/t1wARAVZ094xbPUnc3ZapqR5/7GbIK+CXgsyPan/Q0nvFrQUhyNvCjDEZaPHCo/KNJfrObvirJWd0DK27NrofXfDTJf8vgQTB3JfnVoe0/mOT67kEW/7YrW9U9qOMzDO6YHB4PZbr6/XKSr3f7PifJ3l35o93Iit/M4ME6y7ryf9DN35LkY0ke7T7q48DPdJ/zga7sRUku6+r+e7PU49EMHkRyW5KvJDmm++9yT5I3d+u8K8n/yOABMvcmeV+SM5Lc2NXpoNmPiBYzg18LQlW9h8H4Ra8FvjPDqj9UVUcy+OvgU0PlP81gzKNXAR9J8qIkb2AwXssxwJHA0Ule061/OPBfquonquq+meqW5KXAGuDV3b6fZDB8LgzGT7+2ql7G4HkEO790zgLOqqqfYjBcwk5nAv+7qo6sqk92ZUd2n/9TwJokM30RPQ/4alX9BPAI8DHg9QyGZfh3Q+v9JIMBDV8B/C7w91V1FHANMC9dZ1o47OrRuPkcDB4Gk2T/7Hrs3iVV9QPgB0muZBD2xzF4WtON3TrPZxD4fw3cV4OHW8zFCcDRwPWDniGey67ROh8HvtRN38AghGHwBXRiN/1ZBs9cmM6GqvouQJLbgRfz1HHYhz0OXNZN3wI8VlVPJLmFQTfSTlfW4GEfjyT5LoMxYHZu89Mz1EUNMPg1biYPLlUzlAf491V1zvCCDB6C8f1nsM8A66vqQ1Mse6J2DXj1JLv3/9RjQ9Ozfcbw/nbs3LaqdmQwbPlUn7ljaH7HbtZRi4hdPRo3awCSHMdgmNrvduWrkzwnyQuBf8zgGcBfBt6dwYMvSLJ85/DRz9AG4C1DQ08flOTFs2xzLbvGVT95qPwRBg+qkeaN3/waN/83yY3APgye+rXTzcCVwMEMHvS+BdjS9c9f03XRPAr8MoOz6jmrqtuT/DZwefe8gSeAXwNm+m3gdOC/Z/CUqMuAnV9QNwNPJvkmg2HGZ/o9Q+qFwzJrbCS5CvjNqto4qfyjwKNVNVM/+kgl+SHgB1VVSU4G3lZVq2fbThoFz/ilfhwN/HF3n8DDPPWvE2leecav5iW5DthvUvE7quqW+agPLMw6afEw+CWpMV7VI0mNMfglqTEGvyQ1xuCXpMb8P+xd2A4Cw8WiAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.histplot(data=pingvindata, x='flipper_length_mm', bins = 12)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Istedenfor antall søyler, kan vi for eksempel justere bredden på søylene:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.histplot(data=pingvindata, x='flipper_length_mm', binwidth=10)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Dersom det er bedre å bruke søylediagram istedenfor histogram, kan vi bruke \"barplot\" istedenfor \"histplot\":" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.barplot(data=pingvindata, x=\"species\", y=\"body_mass_g\", hue=\"sex\", ci=\"sd\") # ci = \"sd\" gir standardavviket som svarte streker" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Søylediagrammer egner seg godt til å illustrere forskjeller mellom ulike kategorier, mens histogrammer viser fordelingen av en bestemt variabel. Vi ser også at søylediagrammene kan vise spredningen i datasettet (de svarte linjene)." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Som sagt finnes det mange andre mulige visualiseringer og måter å pynte plottene på, men vi nøyer oss i første omgang med disse." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Oppgaver\n", + "```{admonition} Oppgave 1: Visualisere data\n", + ":class: tip\n", + "Fila `titrering.txt` (som du finner [her](https://realprog.no/docs/datafiler.html)) inneholder en kolonne med tilsatt volum NaOH i mL til en løsning med eddiksyre og en kolonne med pH. \n", + "\n", + "Les av fila og plott titrerkurven.\n", + "```\n", + "\n", + "```{admonition} Oppgave 2: Undersøke data\n", + "Les inn data fra fila `antall-meldte-covid-19.txt` (som du finner [her](https://www.uio.no/studier/emner/matnat/natfag/NAT3000/h21/datafiler/antall-meldte-covid-19.txt)) ved hjelp av Pandas.\n", + "\n", + "1. Hva beskriver datasettet?\n", + "2. Vis de første 5 radene i datasettet.\n", + "3. Finn ut hvor mange rader og kolonner datasettet inneholder.\n", + "```\n", + "\n", + "```{admonition} Oppgave\n", + ":class: tip\n", + "Den molare massen til et grunnstoff kan beregnes ved å ta summen av den molare massen til hvert av isotopene til grunnstoffet multiplisert med andelen/forekomsten av denne istopen:\n", + "\n", + "$$\\sum_i m_iw_i$$\n", + "\n", + "Her er $m_i$ massen til den $i$-te isotopen av grunnstoffet, og $w_i$ er forekomsten av denne istopen (fra 0 til 1, der 1 er 100 prosent forekomst). Fila _tinn.txt_ inneholder forekomsten i \\% av ulike isotoper av tinn, som er grunnstoffet med mest stabile isotoper.\n", + "\n", + "1. Les av fila.\n", + "2. Bruk informasjonen til å regne ut den molare massen til tinn. Print ut massen med fire desimaler og korrekt enhet.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "I videoene nedenfor kan du få en innføring eller repetisjon i den grunnleggende teorien bak lesing av filer:\n", + "\n", + "````{tab-set} \n", + "```{tab-item} Lese filer med loadtxt\n", + "\n", + "```\n", + "\n", + "```{tab-item} Lese filer med pandas\n", + "\n", + "```\n", + "````" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema3_datahandtering/maskinlaring.ipynb b/_sources/docs/tema3_datahandtering/maskinlaring.ipynb new file mode 100644 index 00000000..a548f3b6 --- /dev/null +++ b/_sources/docs/tema3_datahandtering/maskinlaring.ipynb @@ -0,0 +1,458 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Datahåndtering IV: Maskinlæring\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med dette temaet, skal du kunne:\n", + "1. gjør rede for hva som menes med maskinlæring\n", + "2. lage, teste og evaluere enkle modeller ved hjelp av maskinlæring\n", + "```\n", + "\n", + "Når et barn har sett en hund som har blitt omtalt som en hund, generaliserer det ofte slik at det oppfatter alle dyr som hund. Men ettersom barnet ser flere ulike hunder og andre dyr, klarer det etter hvert å skille hund som en egen kategori. Vi danner oss forestillinger og generaliseringer basert på observasjoner i virkeligheten. Dette kalles _induksjon_. Slutningene vi tar, følger ikke med nødvendighet, men med sannsynlighet. Og ganske ofte kan vi ta feil. Men desto flere uttrykk vi utsettes for, desto større sannsynlighet er det som regel at vi har rett.\n", + "\n", + "Vi kan bruke induktiv læring på datamaskinen også. Da kaller vi det _maskinlæring_. Med de store mengdene digitale data vi omgir oss med, kan datamaskinen lære og trekke slutninger om verden rundt oss. Så istedenfor å eksplisitt kode alle valg en datamaskin kan ta, lar vi datamaskinen lære fra data og trekke slutninger selv.\n", + "\n", + "I dette kapitlet skal vi se på hvordan vi kan benytte biblioteket _scikit-learn_ og _keras_, som er en del av _tensorflow_. Disse bibliotekene må installeres først – du kan skrive for eksempel _pip install scikit-learn tensorflow_ i et terminalvindu for å gjøre dette. Bibliotekene fungerer svært godt sammen med Pandas med Jupyter Notebook som programmeringsplattform, så vi kommer til å benytte dette her.\n", + "\n", + "Vi vender atter tilbake til pingvinene våre. Vi skal her lage en maskinlæringsmodell for å artsbestemme ringpingviner, bøylepingviner og adeliepingviner.\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "## Steg 1: Les av og utforsk dataene" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
speciesislandbill_length_mmbill_depth_mmflipper_length_mmbody_mass_gsex
0AdelieTorgersen39.118.7181.03750.0MALE
1AdelieTorgersen39.517.4186.03800.0FEMALE
2AdelieTorgersen40.318.0195.03250.0FEMALE
3AdelieTorgersenNaNNaNNaNNaNNaN
4AdelieTorgersen36.719.3193.03450.0FEMALE
\n", + "
" + ], + "text/plain": [ + " species island bill_length_mm bill_depth_mm flipper_length_mm \\\n", + "0 Adelie Torgersen 39.1 18.7 181.0 \n", + "1 Adelie Torgersen 39.5 17.4 186.0 \n", + "2 Adelie Torgersen 40.3 18.0 195.0 \n", + "3 Adelie Torgersen NaN NaN NaN \n", + "4 Adelie Torgersen 36.7 19.3 193.0 \n", + "\n", + " body_mass_g sex \n", + "0 3750.0 MALE \n", + "1 3800.0 FEMALE \n", + "2 3250.0 FEMALE \n", + "3 NaN NaN \n", + "4 3450.0 FEMALE " + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import seaborn as sns\n", + "import pandas as pd\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "pingvindata = pd.read_csv(\"data/penguins.txt\", delimiter = \",\")\n", + "pingvindata.head()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Når vi har lest inn fila, kan det være lurt å visualisere ulike sammenhenger i datasettet. Vi skal bestemme oss for hvilke _kriterier_ eller _attributter_ (\"features\") vi ønsker å legge til grunn for å plassere pingvinen i en eller kategori (\"label\"). Vi velger her å lage en modell som skal forutsi hvilken pingvinart vi har med å gjøre gitt bestemte verdier av et utvalg variabler. Her er det nyttig å visualisere sammenhenger slik at du har en formening om hvilke kategorier som er mest egnet til en bestemmelsesnøkkel.\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Bruk pairplot-funksjonen til seaborn-biblioteket til å lage noen hypoteser på hvilke kriterier som er mest avgjørende for å bestemme hva slags art vi har med å gjøre.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Siden det mangler noen verdier (NaN), må vi gjøre noe med dem. Enten kan vi bytte dem ut med for eksempel medianverdien eller gjennomsnittet, eller så kan vi fjerne alle pingvinene med NaN-verdier. Sistnevnte er ganske drastisk, men går ofte greit dersom datasettet er stort. Vi gjør det slik for enkelhets skyld:" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [], + "source": [ + "pingvindata.dropna(inplace=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Steg 2: Velge treningssett og testsett\n", + "For å lage en modell som skal forutsi pingvinarten, må vi først importere noen nyttige funksjoner fra scikit-learn-biblioteket. Vi skal gradvis se hva disse funksjonene gjør." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.model_selection import train_test_split, cross_val_score\n", + "from sklearn import tree\n", + "from sklearn.metrics import accuracy_score, confusion_matrix" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nå er vi klare for litt maskinlæring. Grunnprinsippene er som følger:\n", + "1. Bestem hvilke kriterier som skal ligge til grunn for kategorien vi ønskerat maskinlæringsalgoritmen skal sortere etter.\n", + "2. Velg ut en del av datasettet som datamaskinen skaltrenepå og en avdatasettet vi skaltestemed til slutt. Datamaskinen ser på kriteriene ogde tilhørende kategoriene, og bestemmer en sannsynlighet for sammen-hengen mellom ulike kriterier og kategorier.\n", + "3. Lag en modell. Dette gjør vi ved å bruke ferdige algoritmer fra et ma-skinlæringsbibliotek.\n", + "4. Tren modellen med treningssettet. Nå har du lagd en modell som ertilpasset det vi ønsket.\n", + "5. Valider modellen ved å bruke testsettet.\n", + "6. Analyser modellen og gjør eventuelle endringer slik at forutsigelsene mo-dellen gjør, blir så gode som mulig" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Først velger vi altså ut kriterier og bestemmer kategorier. La oss bare begynne med to kriterier: nebblengde og nebbdybde." + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "kriterier = pingvindata[['bill_length_mm', 'bill_depth_mm']] # features\n", + "kategorier = pingvindata['species'] # labels" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Legg merke til at det er dobbel klammeparentes i første linje. Dette gir et objekt med to kolonner. Maskinlæringsalgoritmene krever et objekt (en array eller dataramme) som består av både kolonner og rader, derfor er disse doble klammeparentesene alltid nødvendig.\n", + "\n", + "La oss nå velge ut hvor stor andel av datasettet vi skal trene med. Det er ofte lurt å trene med 70–80 \\% av datasettet, og bruke resten til å teste med. Det finnes en funksjon som gjør dette automatisk, nemlig _train\\_test\\_split_:" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [], + "source": [ + "# Velge ut data til trening og testing\n", + "treningsandel = 0.8 # Velger 80 prosent av datasettet til trening\n", + "ml_data = train_test_split(kriterier, kategorier, train_size=treningsandel, random_state=42)\n", + "\n", + "treningskriterier = ml_data[0]\n", + "testkriterier = ml_data[1]\n", + "treningskategorier = ml_data[2]\n", + "testkategorier = ml_data[3]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Det funksjonen ovenfor gjør, er å velge ut 80 \\% av dataene fra tilfeldige steder i datasettet til trening og 20 \\% til testing. Vi lagrer kriterier (lengden og dypbden til pingvinnebbet) og tilsvarende kategori (art) i variabelen _ml\\_data_. Denne består nå av fire separate elementer, som vi sorterer i linjene nederst i fire ulike variabler: kategorielementene (altså verdien til nebbdybde og nebblengde) og de tilsvarende kategoriene (hvilken art det tilsvarer) som ble valgt ut til trening, og tilsvarende for testing.\n", + "\n", + "En litt merkelig parameter er _random\\_state_. Den er ikke nødvendig for å dele opp datasettet, men den er nyttig. Hvis vi velger et tilfeldig tall her, låser vi algoritmen slik at den plukker ut de samme tallene hver gang vi kjører programmet. Det kan være en fordel dersom vi ønsker å teste og tilpasse modellen, men ønsker å ha det samme utvalget av datasettet hver gang. Hvis vi ikke velger et fast utvalg, vil modellen gi ulike resultater hver gang vi kjører programmet.\n", + "\n", + "```{admonition} Underveisoppgave\n", + "Skriv ut de ulike kategoriene og kriteriene for å se hva programmet har generert så langt. Prøv å bytte ut eller fjerne random\\_state-parameteren og kjør programmet flere ganger. Observer hva som skjer.\n", + "\n", + "\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Steg 3: Lag modellen\n", + "Nå kan vi velge en algoritme som grunnlag for modellen vår. Det finnes mange ulike algoritmer, og de benytter statistikk og lineær algebra til å optimere ulike parametre. Vi skal ikke se på algoritmene her, men heller fokusere på å forstå hvordan de fungerer. Derfor starter vi med en enkel beslutningstrealgoritme. Denne fungerer som et slags valgtre, der hvert valg utføres fra et gitt kriterium (for eksempel nebblengde mindre enn 40 mm), og som brukes til å sannsynliggjøre hvilken art vi har med å gjøre.\n", + "\n", + "Vi lager og trener modellen slik:" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "DecisionTreeClassifier()" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "modell = tree.DecisionTreeClassifier() # Lager modellen\n", + "modell.fit(treningskriterier, treningskategorier) # Trener modellen" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nå har vi (eller datamaskinen) faktisk lagd modellen vår, og vi har brukt treningsdataene til å trene modellen slik at den best mulig kan forutsi kategorier basert på gitte kriterier." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Steg 4: Test og evaluer modellen\n", + "Vi skal nå teste og evaluere modellen vår:" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.9402985074626866" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "forutsigelser = modell.predict(testkriterier)\n", + "accuracy_score(testkategorier, forutsigelser)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Her bruker vi altså testkriteriene og lar modellen forutsi hvilke kategorier dette tilsvarer (forutsigelser). Så sammenlikner vi dette med de faktiske kategoriene (testkategorier) med funksjonen \\texttt{accuracy\\_score}. I dette tilfellet får vi en treffsikkerhet på ca. 94 \\%. Det betyr at modellen vår gir riktig pingvinart 94 \\% av gangene. Det er ikke verst!" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi kan også bruke modellen til å forutsi en art gitt helt nye data, for eksempel slik:" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array(['Adelie'], dtype=object)" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "nebblengde = 35\n", + "nebbdybde = 15\n", + "modell.predict([[nebblengde, nebbdybde]]) # Husk to klammer her!" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Dette betyr at en pingvin med nebblengde 35 mm og nebbdybde 15 mm mest sannsynlig er en Adelie-pingvin." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Steg 5: Videre analyse\n", + "Noen ganger blir modellen ganske dårlig, og da kan det hende du bør gå tilbake og velge andre, eller flere attributter (kriterier) for modellen. For å analysere videre hva modellen feiler på, kan det være fint å lage en forvirringsmatrise(også kalt feilmatrise). Tallene for forvirringsmatrisen kan vi lage med en funksjon som heter _confusion\\_matrix_, og selve matrisen kan vi lage med heatmap-funksjonen til seaborn-biblioteket:" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "cm = confusion_matrix(forutsigelser, testkategorier)\n", + "sns.heatmap(cm, annot=True, cmap=\"viridis\",\n", + " xticklabels=[\"Adelie\", \"Chinstrap\", \"Gentoo\"], yticklabels=[\"Adelie\", \"Chinstrap\", \"Gentoo\"])\n", + "plt.xlabel(\"Predikerte verdier\")\n", + "plt.ylabel(\"Sanne verdier\")\n", + "plt.savefig(\"forvirringsmatrise.pdf\", dpi = 600)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Hvis vi ikke benytter _ticklabels_, får vi verdiene 0, 1 og 2, som vi selv må tolke som de ulike artskategoriene etter rekkefølgen de har i datasettet. \n", + "\n", + "Totalt har vi brukt 20 \\% av datasettets 333 datapunkter til testing, det vil si 67 datapunkter. Matrisen sammenlikner de predikerte kategoriene og de sanne testkategoriene. Vi kan se at den for eksempel forutså at arten tilhørte Adelie 29 riktige ganger, men forutså Chinstrap (ringpingvin) én gang der arten skulle vært Gentoo (bøylepingvin)." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Maskinlæring kan brukes til ufattelig mye rart, og det finnes mange ulike modeller som man kan prøve ut. Her var hovedpoenget å bli litt kjent med hva maskinlæring er og hvor enkelt det er å utføre enkel maskinlæring med dagens verktøy." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema3_datahandtering/plotting.ipynb b/_sources/docs/tema3_datahandtering/plotting.ipynb new file mode 100644 index 00000000..5ec9c036 --- /dev/null +++ b/_sources/docs/tema3_datahandtering/plotting.ipynb @@ -0,0 +1,448 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Datahåndtering I: Visualisering\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med dette temaet, skal du kunne:\n", + "1. bruke matplotlib-biblioteket til visualisering\n", + "2. plotte datapunkter og funksjoner\n", + "3. lage og tolke ulike visualiseringer\n", + "```\n", + "Håndtering av data blir stadig viktigere i dagens samfunn. En viktig del av datahåndtering er å kunne generere fine og informative figurer som beskriver dataene på en god måte. Det blir stadig vanligere å bruke programmering til dette. Det finnes flere typer biblioteker som kan gi oss fine og profesjonelle figurer. Vi begynner med et mye brukt bibliotek som heter _matplotlib_. Hvis du foretrekker å importere _pylab_ istedenfor, kan du godt gjøre det. Pylab-biblioteket inneholder også alle de samme plotteverktøyene.\n", + "\n", + "## Plotting av lister\n", + "Hvis vi har få datapunkter, kan vi skrive dem inn i lister direkte i programmet vårt og plotte dem. La oss si at vi har samlet data for hvor raskt en hurtigvoksende plante vokser annenhver dag. Vi registerer dagene og høyden til planten i cm, og legger disse verdiene inn i lister." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt # importerer relevante plotteverktøy\n", + "\n", + "tid = [0, 2, 4, 6, 8, 10, 12, 14] # tid i dager\n", + "plantehøyde = [0, 1, 4.2, 7.9, 12.5, 13, 13.7, 13.9] # høyde i cm\n", + "\n", + "plt.plot(tid, plantehøyde) # plotter plantehøyde mot tid\n", + "plt.show() # viser plottet" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Hvis vi har lyst til å modifisere og pynte på plottet, har vi mange muligheter til det. Her er noen forslag til en del nyttige endringer av plottet ovenfor:" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(tid, plantehøyde, color = 'limegreen', marker = 'o', linestyle = '--')\n", + "plt.title(\"Forsøk: Plantevekst\") # tittel\n", + "plt.xlabel(\"Tid (dager)\") # x-aksetittel\n", + "plt.ylabel(\"Plantens høyde (cm)\") # y-aksetittel\n", + "plt.xlim(0,15) # definisjonsmengde\n", + "plt.ylim(0,20) # verdimengde\n", + "plt.grid() # tegner rutenett\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Det finnes utrolig mange måter å modifisere et plott på. Tabellene nedenfor viser en oversikt over nyttige plottekommandoer, linjestiler, markører og farger, som du kan bruke for å lage akkurat den figuren du ønsker. Du bør også søke litt rundt på nettet for å finne andre muligheter, for eksempel ved å søke på «python plotting colors» og liknende. Du må bruke internett flittig når du lurer på noe i programmering!\n", + "\n", + "En veldig nyttig kommando når vi skal representere flere grafer i samme koordinatsystem, er _legend_. Denne kommandoen viser merkelappene (\"labels\") til de ulike plottene. Programmet nedenfor gir et eksempel på dette.\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Programmet nedenfor plotter miljøgifter i ulike organismer i to innsjøer. Studer programmet og eksperimenter med ulike verdier fra tabellen nedenfor.\n", + "```\n", + "\n", + "" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "````{tabbed} Nyttige plottekommandoer\n", + "```{code-block} Python\n", + "plot(x,y) # plotter x mot y og trekker rette linjer mellom\n", + "scatter(x,y) # plotter kun punkter\n", + "show() # viser plottet\n", + "\n", + "title(\"tittel\") # tittel på plottet\n", + "xlabel(\"tekst\") # x-aksetittel\n", + "ylabel(\"tekst\") # y-aksetittel\n", + "xlim(fra, til) # definisjonsmengde\n", + "ylim(fra, til) # verdimengde\n", + "grid() # rutenett på\n", + "\n", + "axhline(y=0, color='black') # x-akse\n", + "axvline(x=0, color='black') # y-akse\n", + "\n", + "savefig(\"filnavn.png\") # lagrer bildet med god oppløsning\n", + "```\n", + "Inni plottekommandoen kan vi også legge til farger, linjestiler, markører, merkelapper og liknende:\n", + "\n", + "```{code-block} Python\n", + "plot(x,y,color=\"\",marker=\"\",linestyle=\"\",label=\"\")\n", + "```\n", + "```` \n", + "\n", + "````{tabbed} Markører\n", + "| Markør | Forklaring |\n", + "| ----- | ---------- |\n", + "| \".\" | punkt |\n", + "| \"o\" | sirkel |\n", + "| \" \" (mellomrom) | ingen markør |\n", + "| \"^\" | triangel opp |\n", + "| \"v\" | triangel ned |\n", + "| \"s\" | firkant |\n", + "| \"p\" | femkant |\n", + "```` \n", + "\n", + "````{tabbed} Linjestiler\n", + "| Linjestil | Forklaring |\n", + "| ----- | ---------- |\n", + "| \"-\" | heltrukket linje |\n", + "| \"--\" | stipla linje (lange) |\n", + "| \";\" | stipla linje (korte) |\n", + "| \"-.\" | stilpa linje (annenhver kort/lang) |\n", + "| \" \" (mellomrom) | ingen linje |\n", + "```` \n", + "\n", + "````{tabbed} Farger\n", + "![farger](https://matplotlib.org/2.0.2/_images/named_colors.png)\n", + "```` " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Plotting av funksjoner\n", + "En datamaskin kan bare håndtere _diskrete_ verdier, altså ikke-uendelige tallmengder. En matematisk funksjon kan derimot være kontinuerlig og ha uendelig mange funksjonsverdier. På en datamaskin må vi tilnærme denne uendelige mengden med et ganske stort antall. Dette kan vi gjøre med for eksempel _linspace_-kommandoen. Programmet nedenfor plotter funksjonen $f(x) = 2x^2 - 2x + 1$ for $x\\in[-2, 3]$" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX4AAAEGCAYAAABiq/5QAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Z1A+gAAAACXBIWXMAAAsTAAALEwEAmpwYAAAq6UlEQVR4nO3deVyVZf7/8dfFJpuCgKIgi1uY4oorWYltVrY5LZaVTjZONTVNzUzNTNN3pqmZaWybmWZarGyxEm2xxRa1xH0D3DdQEAQXQBDZRJZz/f6A5meKinDOuc459+f5ePBIDpxzvy+pdzf3ue7rUlprhBBCWIeX6QBCCCGcS4pfCCEsRopfCCEsRopfCCEsRopfCCEsxsd0gNaIiIjQ8fHxbXpudXU1QUFB9g3k4mTM1iBjtob2jDkzM/OI1rrLqY+7RfHHx8eTkZHRpucuW7aMcePG2TeQi5MxW4OM2RraM2alVH5Lj8ulHiGEsBgpfiGEsBgpfiGEsBgpfiGEsBgpfiGEsBgpfiGEsBgpfiGEsBiPLv6Ve0pYmFNnOoYQQpy3mroGnvpyB8U1Nru/tkcX/6o9R/h0bz3FlbWmowghxHn5aush3l6dR/kJ+++Z4tHFf+uIGGwaPs4sNB1FCCHOy/yMAnpFBNE31P417dHF37tLMAmdvZiXXoDsNCaEcBc5JVWk5x3lluExKKXs/voeXfwAl/TwIb+0hrW5paajCCFEq8xLL8DHS/GTpGiHvL7HF/+Ibj508vdhXnqB6ShCCHFOdQ02Psks5PILI+na0d8hx/D44vfzVtw0NJpvth+mvEZm+AghXNuSnUWUVtcxeWSMw47h8cUPcNuIWOoabHy68YDpKEIIcVap6fuJDg3g4r6nLaNvN5Yo/v5RnRjcI0Te5BVCuLT9pTWs3HOEW4fH4O1l/zd1f2CJ4oems/6soko2FZSbjiKEEC2al7EfLwW3jujh0ONYpvivHxJFoJ838zbIm7xCCNfT0Gjjo4xCxiV0pXtIgEOPZZniD+7gw8RB3fly60GqTjSYjiOEED+ydHcxxZUnmDzCcW/q/sAyxQ8weWQsNXWNfLnloOkoQgjxI6npBXTt2IHx/bo6/FiWKv6hMaEkRHYkdcN+01GEEOJ/Dh07zrKsYm4Z3gMfb8fXssOOoJSarZQqVkptP+mx55RSu5VSW5VSC5RSoY46/hkycduIGLYUHmPnwQpnHloIIc5ofnohNg23DY91yvEc+b+Wd4AJpzy2BEjUWg8CsoHfO/D4LZo0LBo/Hy/mpctZvxDCvEabZn5GAWP7RBAbHuiUYzqs+LXWK4CyUx5brLX+4Z3VdYBj5yy1IDTQjwkDurFg0wFq6xudfXghhPiRlXtKOFB+3KF36p5KOfKGJqVUPLBQa53Ywte+BOZprd8/w3NnADMAIiMjk1JTU9uUoaqqiuDg4B89truskWc31DI90Y+Le/i26XVdWUtj9nQyZmvwxDG/vKmW7LJGXkwJxLeFm7baM+aUlJRMrfXw076gtXbYBxAPbG/h8SeABTT/j+dcH0lJSbqt0tLSTnvMZrPpy15Ypq//z6o2v64ra2nMnk7GbA2eNuaiY8d1799/pZ9ZuOOM39OeMQMZuoVOdfqsHqXUNGAiMKU5mNMppZgyKpYtBeVsP3DMRAQhhCA1vYAGm2bKqDinHtepxa+UmgA8Blyvta5x5rFPNWlYDwJ8vflgfb7JGEIIi2potPHh+v1c3DeC+Iggpx7bkdM55wJrgQSlVKFSajrwH6AjsEQptVkp9Zqjjn8uIQG+XD84is82HaSitt5UDCGERX2/u5jDFbXcOdq5Z/sAPo56Ya317S08/JajjtcWU0bHMi+jgAUbDzA1Od50HCGEhby/Lp/uIf5c5oQ7dU9lqTt3TzWoRyiDeoTwwfp8Wa5ZCOE0eUeqWbnnCJNHxDrlTt1TWbr4Ae4cFUd2UdPGxkII4QwfbtiPj5dy6tz9k1m++K8bHEVHfx/eXydv8gohHK+2vpH5GQVcOSCSyE6O2VP3XCxf/AF+3vxkWA++2X6II1UnTMcRQni4r7YeorymnjudPIXzZJYvfoA7R8dS36j5KKPQdBQhhId7f30+vboEMaZ3uLEMUvxAn64dGd0rjA835GOzyZu8QgjH2HHwGJv2lzNlVBxKOW5P3XOR4m925+g4CsqOs3xPiekoQggP9f66/fj7enHzMKevT/kjUvzNruzfjYjgDnwgb/IKIRygoraezzcf4PrBUYQEml0cUoq/mZ+PF5NHxPD97mIKyoyuJiGE8EALNh6gpq7RyJ26p5LiP8mU0bF4KcUcOesXQtiR1po56/IZ1COEQT1CTceR4j9Z95AAJiR2I3XDfmrqGs79BCGEaIXVe0vZW1zF1DHxpqMAUvynmZYcT0VtA59tOmg6ihDCQ7yzZh8RwX5MHNzddBRAiv80w+M60797J95dkyfr9wgh2m1/aQ3f7y7mjpGxdPDxNh0HkOI/jVKKacnxZBVVsi637NxPEEKIs3hvbR7eSjHFBd7U/YEUfwuuHxJF50Bf3l2TZzqKEMKNVZ9oYF5GAVcP7G5sXZ6WSPG3wN/Xm9tGxLJ452EOlB83HUcI4aYWbDpAZW0D05Jd52wfpPjP6M7RsQDMWStTO4UQ509rzbtr8hgYHcKw2M6m4/yIFP8Z9OgcyBX9I0lN309tfaPpOEIIN7Mmp5Q9xVVMS443ui5PS6T4z2Jack/Ka+r5YrNM7RRCnJ+3V+cRHuQ6UzhPJsV/FqN7hZEQ2ZF3ZGqnEOI8FJTV8P3uIu4Y5TpTOE8mxX8WSimmJsez81AFGfmyNaMQonX+N4XT4GYrZyPFfw43Do2ik78Pb6/eZzqKEMIN1NQ1MC+9gAmJ3egW4jpTOE8mxX8OgX4+3DEqjm+3H5ZVO4UQ5/TpxgNU1Dbw04viTUc5I4cVv1JqtlKqWCm1/aTHwpRSS5RSe5r/6VpznM5ganIcXkrxjtzQJYQ4C5tNM3v1PpecwnkyR57xvwNMOOWx3wHfa637At83f+7yuocEMHFQd+alF1BRW286jhDCRS3LLia3pJp7L+7pclM4T+aw4tdarwBOXezmBuDd5j+/C9zoqOPb2/Sxvag60cD89ALTUYQQLuqNFfuICvHnmoGuN4XzZMqR0xSVUvHAQq11YvPn5Vrr0OY/K+DoD5+38NwZwAyAyMjIpNTU1DZlqKqqIjg4uE3PPdXf1x/nyHHNzEsC8PZy3f+b23PM7kLGbA2uPOb8ikb+tKaW2xL8uLqn/bZWbM+YU1JSMrXWw0/7gtbaYR9APLD9pM/LT/n60da8TlJSkm6rtLS0Nj/3VIt3HNZxjy/UX245YLfXdAR7jtldyJitwZXH/EjqJt3/yW90eU2dXV+3PWMGMnQLnersWT1FSqnuAM3/LHby8dvlsn5diQ8P5I2V++SGLiHE/xw+VssXWw5y24hYQgLMbqTeGs4u/i+Aqc1/ngp87uTjt4uXl+KesT3ZUlDOxv1yQ5cQosm7a/Owae3SUzhP5sjpnHOBtUCCUqpQKTUdeBa4Qim1B7i8+XO3cnNSD0ICfHlzpdzQJYRoWnP/g3X5TEjsRkxYoOk4reLjqBfWWt9+hi9d5qhjOkPTDV2xvL48h4KyGrf5QQshHOPjzEIqahu49+JepqO0mty52wZTx8TjpRRvr84zHUUIYVBj8w1bw2JDXfqGrVNJ8bdBtxB/rhscxbz0/XJDlxAWtmRnEfmlNW51tg9S/G02fWxPqusambt+v+koQghD3lqVS0xYAFcN6GY6ynmR4m+jxOgQLuoTzlur9nGiQXboEsJqMvOPkp53lJ8m93TpGzpbIsXfDvdd2pviyhN8tumA6ShCCCd7bXkOoYG+TB4ZYzrKeZPib4exfSIYENWJ11fkYrPJDV1CWMXe4kqW7Czi7jHxBPo5bHKkw0jxt4NSivsu7U1uSTWLdxaZjiOEcJLXlufi7+vFtOR401HaRIq/na5O7EZsWCCvLs+RZRyEsICD5cf5fPMBJo+IJSzIz3ScNpHibycfby9+dkkvthSUsy731FWohRCe5q1V+7Dpppl97kqK3w5uSepBRLAfry3PMR1FCOFA5TV1zN2wn+sHR7n1XftS/Hbg7+vNtOR4lmeXsPNghek4QggHmbM2n5q6Rn5+qXvdsHUqKX47uWt0PEF+3ry+Qs76hfBEx+saeXtNHikJXejXrZPpOO0ixW8nIYG+3D4yloVbD1FQVmM6jhDCzj7KLKCsuo77x/UxHaXdpPjtaPrFPfFS8ObKXNNRhBB21NBoY9aKXIbFhjIi3n0WYzsTKX476h4SwI1DoklNL6Ck8oTpOEIIO/lq2yEKjx7nvkt707RduHuT4rez+8f1pr7Rxpur5KxfCE9gs2n+m7aXvl2DufzCSNNx7EKK3856dQlm4qAo5qzN52h1nek4Qoh2WrTjMNlFVTw4vg9ebrYY25lI8TvAg+P7UFPXyNurZXtGIdyZ1pqXl+6lZ0QQEwdFmY5jN1L8DnBBZEcmDOjG22vyZKMWIdzY0t3F7DxUwQPjervd0stnI8XvIA+O70NlbQPvrckzHUUI0QZaa/69dC89Ogdw49Bo03HsSorfQRKjQxjfrytvrdpH9YkG03GEEOdp5Z4jbCko5/5xvfH19qyq9KzRuJgHx/fhaE09H6zPNx1FCHGe/rN0L91D/Lk5qYfpKHZnpPiVUo8opXYopbYrpeYqpfxN5HC0YbGdGdsnglkr9lFbL9szCuEu1uWWsiGvjJ9f0osOPt6m49id04tfKRUN/BIYrrVOBLyByc7O4SwPje/DkaoTzEsvMB1FCNFKLy/dQ0RwByaPjDUdxSFMXerxAQKUUj5AIHDQUA6HG9UrnJHxYby2PEc2ZRfCDWTmH2X13lJmXNITf1/PO9sHUCZ2jVJKPQz8FTgOLNZaT2nhe2YAMwAiIyOTUlNT23SsqqoqgoOD25G2/bYfaeT5jFru7u/H+Fhfhx/PFcbsbDJma3DGmF/MqCX3WCPPXxqIv4/5KZztGXNKSkqm1nr4aV/QWjv1A+gMLAW6AL7AZ8CdZ3tOUlKSbqu0tLQ2P9debDabnvTKaj36b9/p2voGhx/PFcbsbDJma3D0mDfml+m4xxfq/yzd49DjnI/2jBnI0C10qolLPZcD+7TWJVrreuBTINlADqdRSvHoFRdw6FgtqRvkWr8Qruql7/bQOdCXqW66iXprmSj+/cBopVSgalrm7jJgl4EcTpXcO5yRPcP4b9pemeEjhAvKyCtjRXYJ913am+AOPqbjOJTTi19rvR74GNgIbGvOMMvZOZzth7P+4soTvL9O5vUL4WpeXJJNRLAfd42JMx3F4YzM6tFa/0lr3U9rnai1vktrbYnF60f3CueiPuG8tjyHmjq5m1cIV7E2p5Q1OaXcP64PgX6efbYPcueu0z16xQUcqarjvbVy1i+EK9Ba89KSbCI7dWDKKM+ct38qKX4nS4oL49ILuvD68hyqZA0fIYxbtfcIG/LK+EVKH4+dt38qKX4DHrniAo7W1POOrNcvhFFaa15YnE1UiD+3jYgxHcdppPgNGBITymX9ujJrRa6s1y+EQcuySthcUM5Dl/X1yDV5zkSK35BHrriAitoG3lopZ/1CmKC15sUl2cSEBXjkCpxnI8VvSGJ0CFcNiOStVfsok715hXC6RTsOs+3AMX45vq/Hrbd/LtYarYv5zZUJ1NQ18N+0vaajCGEpDY02Zi7Kok/XYG7ysN21WkOK36C+kR35ybAezFmbT+HRGtNxhLCMjzMLyS2p5rdXJeBjsbN9kOI37pErLgAFLy3ZYzqKEJZQW9/IP7/bw7DYUK7sH2k6jhFS/IZFhQYwdUwcn24qJOtwpek4Qni8d9bkcbiilscn9KNpuTDrkeJ3AQ+M60Ownw/PLcoyHUUIj3aspp5X0vYyLqELo3qFm45jjBS/C+gc5MfPL+3Fd7uKyMgrMx1HCI/12oocKk808NhV/UxHMUqK30XcM7YnXTp24B/f7v5hwxohhB0VVdTy9up93DA4iv5RnUzHMeqcxa+Uekgp1dkZYaws0M+HX17Wl/S8o6RlFZuOI4TH+ed3e2i0aR69IsF0FONac8YfCaQrpeYrpSYoq74b4gSTR8QQFx7IzG+zaLTJWb8Q9pJTUsX8jALuGBlLbHig6TjGnbP4tdZ/BPoCbwHTgD1Kqb8ppXo7OJvl+Hp78ZsrE9h9uJJPMgtNxxHCYzz7zW78fbx4cHxf01FcQquu8Tdv2nu4+aOBpg3TP1ZKzXRgNkuaOKg7Q2NDeW5xFtWybLMQ7bY2p5QlO4t4IKUPXTp2MB3HJbTmGv/DSqlMYCawGhiotb4fSAJ+4uB8lqOU4o/X9qek8gSvr8g1HUcIt2azaZ75aifRoQFMH9vTdByX0Zoz/jBgktb6Kq31R1rregCttQ2Y6NB0FpUU15lrB3Vn1oocDh07bjqOEG7r000H2HGwgscmJFhmk5XWaM01/j9prVvcJ1Brvcv+kQTA7yb0w2aD5xdlm44ihFuqqWvg+UVZDO4RwnWDokzHcSkyj99FxYQF8tOL4vlkYyHbDxwzHUcIt/PGin0crqjljxP74+UlkxFPJsXvwh5I6UNYkB/PfLVTbuoS4jwUVdTy2vIcrk7sxoj4MNNxXI4UvwsLCfDlV5f3ZV1uGUt2FpmOI4TbeGFxFg02G7+72tpLM5yJkeJXSoUqpT5WSu1WSu1SSo0xkcMd3D4ylt5dgvj7N7upa7CZjiOEy9t5sIKPMguZlhxPXHiQ6TguydQZ/7+Ab7XW/YDBgLxJfAa+3l48ce2F7DtSzXtr80zHEcKlaa156ssdhAb48mCK3Kx1Jk4vfqVUCHAJTXcCo7Wu01qXOzuHO0lJ6Mq4hC7887s9FFfWmo4jhMtauPUQ6/eV8ZurEggJ9DUdx2UpZ79pqJQaAswCdtJ0tp8JPKy1rj7l+2YAMwAiIyOTUlNT23S8qqoqgoOD2xPZJRyutvHEquOM7u7Dzwad/e5DTxnz+ZAxW8PZxnyiQfP7Vcfp6Kf40xh/vDxkWbH2/JxTUlIytdbDT/uC1tqpH8BwmpZ9GNX8+b+Ap8/2nKSkJN1WaWlpbX6uq/n717t03OMLdUZe2Vm/z5PG3FoyZms425if+3a3jnt8oU7fV+q8QE7Qnp8zkKFb6FQT1/gLgUKt9frmzz8GhhnI4XYeGt+HyE4d+PMXO2T1TiFOkl9azawVudw0NJrhMn3znJxe/Frrw0CBUuqHRbEvo+myjziHoA4+/OGaC9l24BjzMwpMxxHCZTy9cBe+3kqmb7aSqVk9DwEfKKW2AkOAvxnK4XauHxzFyPgwnluUxbGaetNxhDBuWVYx3+0q4qHL+hLZyd90HLdgpPi11pu11sO11oO01jdqrY+ayOGOlFL8+foBlNfU8eIS2ZxdWFtdg42/fLmTXhFB3HORrL7ZWnLnrhvqH9WJKaPimLMun50HK0zHEcKYN1flknukmiev64+fj9RZa8nflJv69ZUXEBroxxOfbcMmb/QKCyooq+Hf3+9hwoBupCR0NR3HrUjxu6nQQD+euOZCNu0vZ276ftNxhHAqrTX/9/l2vJXiT9f3Nx3H7Ujxu7FJw6IZ0yucf3yzm5LKE6bjCOE032w/TFpWCY9emUD3kADTcdyOFL8bU0rxzE2J1NbbeOYrmRErrKGytp6nvtzBgKhOTB0TZzqOW5Lid3O9uwRz37jefL75ICv3lJiOI4TDvbA4m+LKE/z1poH4eEuFtYX8rXmAB8b1pmdEEE9+tp3a+kbTcYRwmLxjjby3No87R8UxJCbUdBy3JcXvAfx9vXn6hkTySmt4JW2v6ThCOESjTfPujjrCgzvw2wkJ536COCMpfg8xtm8ENw6J4tXlORyokg1bhOd5e/U+9lXYeHJifzr5y5LL7SHF70H+OLE/QR18mL3thCziJjxKfmk1zy/OYnAXb64b1N10HLcnxe9BIoI78OfrBpBzzMY7a/JMxxHCLrTW/O6Tbfh6eTFtgB/KQ9bZN0mK38PcMCSKwV28eW7RbvJLq8/9BCFc3NwNBazNLeUP115IZ3+pLHuQv0UPo5Ri6gA/fL28ePyTrbKcg3BrB8uP87evd5HcO5zJI2JMx/EYUvweKMy/aYP2dbllspyDcFtaa55YsI1Gm+bZSYPkEo8dSfF7qNtGxHBRn3D+/vVuDpQfNx1HiPP22eYDpGWV8JurEogNDzQdx6NI8XsopRTPThpEo03zh0+3/bDfsRBuobiylqe+3Mmw2FCmJcebjuNxpPg9WExYII9PSGB5dgnz0mWrRuEefpjFU1PXyMybB+HtJZd47E2K38PdPSae5N7h/GXhTpnlI9zCvPQClu4u5vEJ/ejTtaPpOB5Jit/DeXkpnr9lMN5eil/P3yI3dgmXtr+0hqcX7iS5dzg/lUs8DiPFbwFRoQE8fUMiGflHeX1Fjuk4QrSo0aZ5dP5mvJTiuVsG4yWXeBxGit8ibhgSxbUDu/PSkmx2HDxmOo4Qp3ljZS4Z+Ud56oYBRIfK5iqOJMVvEUopnrkxkc6Bfjwyb7Ms3yxcyq5DFby4OJurE7tx09Bo03E8nrHiV0p5K6U2KaUWmspgNZ2D/Jh58yCyi6p4flGW6ThCAFBb38gj8zbTKcCXv940UG7UcgKTZ/wPA7sMHt+SxiV05a7Rcby5ah8rsmXHLmHe37/exe7DlTx38yDCgvxMx7EEI8WvlOoBXAu8aeL4VvfEtReSENmRR+dvpriy1nQcYWGLdxzm3bX5TB/bk5R+XU3HsQxTZ/z/BB4DZMcQA/x9vXn5jqFUnWjg0XlbZCE3YcShY8d57JOtJEZ34jHZUcuplLNv5VdKTQSu0Vo/oJQaB/xGaz2xhe+bAcwAiIyMTEpNTW3T8aqqqggODm57YDfU2jEvL6jn7R113HyBLxN7ufev2PJzdi+NNs0/0mvZX2Hjz8kBdAtq3TmoO4+5rdoz5pSUlEyt9fDTvqC1duoH8HegEMgDDgM1wPtne05SUpJuq7S0tDY/1121dsw2m03/4oNM3ev3X+mMvFLHhnIw+Tm7lxcXZ+m4xxfqTzILzut57jzmtmrPmIEM3UKnOv1Sj9b691rrHlrreGAysFRrfaezc4imKZ5/mzSQqFB/fjl3M8dq6k1HEhawPreUl5fuYdLQaCYN62E6jiXJPH6L6+Tvy8u3D6OoopbHPtkiq3gKhyquqOXBuZuICw/iLzcmmo5jWUaLX2u9TLdwfV8415CYUH53dT8W7SjijZW5puMID1XfaOPBDzdRWVvPq3cOI7iDj+lIliVn/AKA6WN7cs3Abjz7zW7W5BwxHUd4oJnf7mZDXhnPThpEv26dTMexNCl+ATRd759582B6RgTx0IebOHRMdu0S9vP1tkO8sXIfd4+J40ZZksE4KX7xP8EdfHj9riRq6xu5//2NnGiQ9XxE++WUVPHYx1sZEhPKE9deaDqOQIpfnKJP1448d8tgNheU88xCWVFDtE/ViQbum5OJn48Xr0wZRgcfb9ORBFL8ogXXDOzOjEt6MWddPh9lyJaNom1sNs0j8zaTe6Sal28fSpQstewypPhFix67KoGL+oTzxILtZOSVmY4j3NALS7JYsrOIP157IRf1iTAdR5xEil+0yMfbi//eMYzozgH8fE4mBWU1piMJN/L55gP8Ny2HySNimCZbKLocKX5xRqGBfrw5dTj1jTZ+9l4GVScaTEcSbmBLQTmPfbyVkfFh/OWGRFlf3wVJ8Yuz6t0lmP9OGcae4ip+lbpZVvIUZ1VUUcuMORlEBHfg1TuH4ecjFeOK5Kcizunivl34v4n9+W5XETNl5y5xBjV1DfzsvQwqaxt4c+pwwoM7mI4kzkDumRatcveYOPYUV/La8hxiwgKYMirOdCThQhqal2PYfuAYs+4azoXd5c5cVybFL1pFKcWfrxvAwfJanvxsO107+nNF/0jTsYQL0Frzf1/sYOnuYp65MZHL5d8LlyeXekSr+Xh78Z87hjIwOoSH5m4kM/+o6UjCBbyyLIcP1+/n/nG9uXO0/CboDqT4xXkJ9PPhrWkj6NbJn3vfTSenpMp0JGHQgk2FPLcoixuHRPHbK2X7RHchxS/OW0RwB969ZyReSjF19gaKK2TDditK213Mbz/ayphe4cy8eTBeXjJt011I8Ys2iQsPYva0EZRW1XH37A2U19SZjiScaF1uKfe9n0m/7h15/e4kmbbpZuSnJdpscEwos+5OIrekmqmzN1BZK1s3WsHWwnLufTeDmLBA3rtnFJ38fU1HEudJil+0y8V9u/DKlGHsOFjB9HcyOF4nSzl7suyiSu6evYHOQb68P30UYUF+piOJNpDiF+12ef9IXrptCBn5ZcyYkyHr+HuofUequfPN9fh5e/HB9NF0C/E3HUm0kRS/sIvrBkfx7E8GsXLPEX7xwSYpfw+TW1LF5FlrabBp3r93FLHhgaYjiXaQ4hd2c+vwGJ6+YQDf7SrivjmZ1NZL+XuCnJIqJs9aR0OjZu7PRnNBZEfTkUQ7SfELu7prTDx/u2kgaVkl/Ow9uebv7vYWVzJ51jpsWjN3xmgSuknpewIpfmF3d4yKZebNg1i19wj3vJNOTZ0s5+yOsosqmTxrPVojZ/oexunFr5SKUUqlKaV2KqV2KKUednYG4Xi3Do/hpVuHsH5fKVNnb+DYcZnq6U427j/Kra+vRSlInTGavlL6HsXEGX8D8GutdX9gNPALpVR/AzmEg904NJp/3z6UzQXl3Pb6WorkDl+3sDy7hClvrCckwJdP7kumT9dg05GEnTm9+LXWh7TWG5v/XAnsAqKdnUM4x8RBUcyeNoKCshomvbJG1vZxcV9sOci976YTHxHER/eNkdk7HkppbW5HJaVUPLACSNRaV5zytRnADIDIyMik1NTUNh2jqqqK4GBrnbG44pjzjjXyQmYtWsMjSf70DvW26+u74pgdzd5jXpJfz4e76rigsxcPD/Mn0Nf11t6Rn/P5SUlJydRaDz/tC1prIx9AMJAJTDrX9yYlJem2SktLa/Nz3ZWrjnlfSZW++B9Ldb8/fqMX7zhs19d21TE7kr3GXN/QqP/0+XYd9/hCPf2ddH28rsEur+sI8nM+P0CGbqFTjczqUUr5Ap8AH2itPzWRQThffEQQn9yfTN/IYGbMyeDVZTk/nAQIQypr67n3vQzeWZPH9LE9ef2uJPx97fvbmHA9Jmb1KOAtYJfW+kVnH1+Y1aVjB+b/fAwTB0Xxj2938+j8LXKjlyGFR2u4+dW1rNxzhL/elMiTE/vjLUsrW4KJrRcvAu4CtimlNjc/9get9dcGsggD/H29+ffkIVzQNZgXlmSz70g1s+5OomtHWfvFWVbvPcJDczdR32jjnZ+O4OK+XUxHEk7k9OLXWq8C5LTC4pRSPHRZX/p0DebR+VuY+O9VvHz7UEb1CjcdzaNprXl1eQ7PL8qid5dgXrsrid5drPVmqZA7d4VhVw/szoJfJBPcwYfb31jHK8v2YrPJdX9HqKit5+dzMpn5bRbXDOzOZ7+4SErfoqT4hXH9unXi8wcv4pqB3Zn5bRbT303naLXs6GVPmflHmfjvVSzdXcz/TezPy7cPJaiDiSu9whVI8QuX0NHfl5dvH8rTNwxg9d5SJvxrBcuzS0zHcnsNjTb+9d0ebn19LTatSZ0xmnvG9qRpjoWwKil+4TKUUtw1Jp5PH0imk78vU2dv4MnPtssib21UUFbD5FnreOm7bK4fHMXXD1/M8Pgw07GEC5Df9YTLSYwO4cuHxvLcoizeWrWPVXuP8Pwtg0iKk9JqjUab5t01eTy/OAtvpfjX5CHcMERWRRH/n5zxC5fk7+vNkxP78+HPRlHXYOPm19byhwXbOFYjq3yeTXZRJT95dQ1/WbiTUT3D+PaRS6T0xWnkjF+4tOTeESx65BJeWpLN26v3sXhHEU9OvJDrB0fJdeqTVJ9o4NVlOby+IoeO/r78a/IQ+TsSZyTFL1xecAcfnpzYn5uGRvOHBdt4OHUzczfs54/X9icxOsR0PKNsNs1nmw/wj293U1RxgklDo3ni2gsJD+5gOppwYVL8wm0kRoew4IGL+HDDfl5aks3El1cxaWg0v7kqwXQ0I/YcbeSfr65hc0E5g3uE8MqUJJLiOpuOJdyAFL9wK95eirtGx3HDkCheScth9up9fLXtECk9vOifVGuJZR+2FJTzwpJsVmTX0rWj5oVbBnPT0Gi8ZJ0d0UpS/MItdfL35XdX9+PO0bG8uDibBZsOkPaPNG4fGcvPL+1F95AA0xHtLjO/jFeX5fDdrmI6B/pya4IvT01JIcBPVtMU50eKX7i1Hp0DefG2IYwKLiPzeDjvr8vnw/X7uW5wFNOS4xnYw73fA2i0aRbvOMwbK3PZuL+ckABffnPlBUy7qCcZa1dJ6Ys2keIXHiEyyIuZ1w7mofF9mbUil082FvLJxkKGxYZy95h4rhrQza1K8mD5cT7KKGR+RgEHyo8TGxbIU9cP4JbhPQj0k/9sRfvIv0HCo8SEBfL0jYn8dkICH2cUMmddPr+at5ngDj5MSOzGTUOjGd0r3CXXna+oref7XUUs2HSQlXtK0BrG9ongyYkXckX/bi6ZWbgnKX7hkTr5+3LP2J5MS45n3b5SPtt0gG+2HebjzEIigv1ISejKZRd25eK+XYwuVnaw/Dgr95Tw7fbDrNp7hPpGTVSIPw+l9OGW4THEhMlm58L+pPiFR/PyUiT3jiC5dwR/uSGR73YVsWhHEd/uOMxHmYX4eXsxOCaEEfFhjOgZxrDYzoQE+Doki9aa/WU1bC08xvp9pazZW0rukWoAenQO4KcX9WRCYjeG9AiVGTrCoaT4hWX4+3ozcVAUEwdFUd9oIyPvKGlZxazfV8asFbm8siwHgOjQABK6deSCyI70igiie6g/3UP86RYSQJCf91nvhq1vtFFeU09p9QkKyo6TX1rN/rIa9hZXsf3AMSpqmxacC/LzZlSvcO4YFcvYvhEkRHaUu2yF00jxC0vy9fZiTO9wxvRu2vGrpq6BzfvL2VRQTnZRJVmHK1m5p4T6xh9vCuPtpQj08ya4gw/+vt402jSNNo1Na6pONFBZe/pKoh07+NCzSxATB0cxMDqEgdEhJHTriK+3LJUlzJDiFwII9PMhuU8EyX0i/vdYfaONw8dqOVh+nMMVtRw6VktlbT3VJxqpPtFAbYMNb9V0OclbKYI6+NA50I/OQb50DvSjR+cA4sKD6BzoK2fzwqVI8QtxBr7eXsSEBcobrMLjyO+aQghhMVL8QghhMVL8QghhMUaKXyk1QSmVpZTaq5T6nYkMQghhVU4vfqWUN/Bf4GqgP3C7Uqq/s3MIIYRVmTjjHwns1Vrnaq3rgFTgBgM5hBDCkpTW+tzfZc8DKnUzMEFrfW/z53cBo7TWD57yfTOAGQCRkZFJqampbTpeVVUVwcHB7QvtZmTM1iBjtob2jDklJSVTaz381Mdddh6/1noWMAtg+PDhety4cW16nWXLltHW57orGbM1yJitwRFjNlH8B4CYkz7v0fzYGWVmZh5RSuW38XgRwJE2PtddyZitQcZsDe0Zc1xLD5q41OMDZAOX0VT46cAdWusdDjpeRku/6ngyGbM1yJitwRFjdvoZv9a6QSn1ILAI8AZmO6r0hRBCnM7INX6t9dfA1yaOLYQQVmeFO3dnmQ5ggIzZGmTM1mD3MTv9Gr8QQgizrHDGL4QQ4iRS/EIIYTGWKH6l1HNKqd1Kqa1KqQVKqVDTmRxNKXWLUmqHUsqmlPLY6W9WXPBPKTVbKVWslNpuOoszKKVilFJpSqmdzf9OP2w6k6MppfyVUhuUUluax/yUPV/fEsUPLAEStdaDaLqH4PeG8zjDdmASsMJ0EEex8IJ/7wATTIdwogbg11rr/sBo4BcW+DmfAMZrrQcDQ4AJSqnR9npxSxS/1nqx1vqHXbDX0XS3sEfTWu/SWmeZzuFgllzwT2u9AigzncNZtNaHtNYbm/9cCewCos2mcizdpKr5U9/mD7vNxLFE8Z/iHuAb0yGEXUQDBSd9XoiHF4LVKaXigaHAesNRHE4p5a2U2gwUA0u01nYbs8su0na+lFLfAd1a+NITWuvPm7/nCZp+bfzAmdkcpTVjFsJTKKWCgU+AX2mtK0zncTStdSMwpPk9yQVKqUSttV3e1/GY4tdaX362ryulpgETgcu0h9y8cK4xW8B5L/gn3JNSypem0v9Aa/2p6TzOpLUuV0ql0fS+jl2K3xKXepRSE4DHgOu11jWm8wi7SQf6KqV6KqX8gMnAF4YzCTtTSingLWCX1vpF03mcQSnV5YfZh0qpAOAKYLe9Xt8SxQ/8B+gILFFKbVZKvWY6kKMppW5SShUCY4CvlFKLTGeyt+Y37H9Y8G8XMN8KC/4ppeYCa4EEpVShUmq66UwOdhFwFzC++b/fzUqpa0yHcrDuQJpSaitNJzhLtNYL7fXismSDEEJYjFXO+IUQQjST4hdCCIuR4hdCCIuR4hdCCIuR4hdCCIuR4hdCCIuR4hdCCIuR4heiDZRSI5r3d/BXSgU1r5meaDqXEK0hN3AJ0UZKqWcAfyAAKNRa/91wJCFaRYpfiDZqXh8oHagFkptXUxTC5cmlHiHaLhwIpmkdKH/DWYRoNTnjF6KNlFJf0LTrV0+gu9b6QcORhGgVj1mPXwhnUkrdDdRrrT9s3vt3jVJqvNZ6qelsQpyLnPELIYTFyDV+IYSwGCl+IYSwGCl+IYSwGCl+IYSwGCl+IYSwGCl+IYSwGCl+IYSwmP8HsQKFwoKPzP4AAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "x = np.linspace(-2, 3, 1000) # lager 1000 x-verdier mellom -2 og 3\n", + "y = 2*x**2 - 2*x + 1 # lager 1000 tilsvarende y-verdier til en funksjon\n", + "\n", + "plt.plot(x,y)\n", + "plt.xlabel('x')\n", + "plt.ylabel('y')\n", + "plt.grid()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Det Python egentlig gjør når den plotter funksjoner, er å plotte et bestemt antall punkter og \"tegne\" rette linjer mellom disse punktene. Dette kalles \"lineær interpolasjon\". Det blir tydelig dersom vi kun velger ut fem punkter å plotte funksjonen i." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "x = np.linspace(-2, 3, 5) # lager 5 x-verdier mellom -2 og 3\n", + "y = 2*x**2 - 2*x + 1 # lager 5 tilsvarende y-verdier til en funksjon\n", + "\n", + "plt.plot(x,y,marker='o')\n", + "plt.xlabel('x')\n", + "plt.ylabel('y')\n", + "plt.grid()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Dersom vi definerer en Python-funksjon, kan vi også bruke denne til å generere _y_-verdier: " + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "def f(x):\n", + " return 2*x**2 - 2*x + 1 \n", + "\n", + "x = np.linspace(-2, 3, 1000) # lager 5 x-verdier mellom -2 og 3\n", + "y = f(x) # lager 1000 tilsvarende y-verdier til en funksjon\n", + "\n", + "plt.plot(x,y,)\n", + "plt.xlabel('x')\n", + "plt.ylabel('y')\n", + "plt.grid()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Plott tre funksjoner i samme koordinatsystem. Eksperimenter med farger, linjestiler og annet. Husk aksetitler!\n", + "```\n", + "\n", + "```{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Flere plott i samme figur\n", + "Dersom vi ønsker å lage flere plott i samme figur, kan vi bruke kommandoen _subplot(antall rader, antall kolonner, figurnummer)_ for å plotte flere grafer samtidig. Her er et eksempel:" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "x = np.linspace(0, 10, 50)\n", + "y = np.sin(x)\n", + " \n", + "plt.subplot(2, 1, 1) # To rader, én kolonne, figur 1\n", + "plt.plot(x, y, color = \"green\", linestyle = \"--\")\n", + "plt.title(\"Grønn stiplekurve\")\n", + "\n", + "plt.subplot(2, 1, 2) # To rader, én kolonne, figur 2\n", + "plt.plot(x, y, color = \"red\", linestyle = \" \", marker = \"o\")\n", + "plt.title(\"Rød prikkekurve\")\n", + "plt.tight_layout() # Fikser slik at det ikke blir overlapp mellom f.eks. aksetitler\n", + "\n", + "plt.show()\n", + "#plt.savefig(\"kulfigur.png\") # Lagrer figuren på datamaskinen din" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi kan også lage flere funksjoner i samme koordinatsystem. Da bruker vi _labels_ (merkelapper) for å skille mellom de ulike grafene, og _legend_ for å vise merkelappene i koordinatsystemet." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "x = np.linspace(-2, 3, 10)\n", + "\n", + "def f(x):\n", + " return x**2 - 2*x\n", + "\n", + "def g(x):\n", + " return np.sin(x)\n", + "\n", + "def h(x):\n", + " return - x + 6\n", + "\n", + "y1 = f(x)\n", + "y2 = g(x)\n", + "y3 = h(x)\n", + "\n", + "plt.plot(x,y1,color='lawngreen',label='f(x)', marker='^') # Bruker merkelapp (label) for å skille mellom kurvene\n", + "plt.plot(x,y2,color='maroon',label='g(x)', marker='o')\n", + "plt.plot(x,y3,color='deepskyblue',label='h(x)', marker='s')\n", + "plt.legend() # Viser merkelappene\n", + "plt.xlabel('x')\n", + "plt.ylabel('y')\n", + "plt.axhline(y=0,color='black') # Tegner x-akse\n", + "plt.axvline(x=0,color='black') # Tegner y-akse\n", + "plt.grid()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Plott tre av dine favorittfunksjoner i samme koordinatsystem. Tilpass akser og tittel og pynt på plottet.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Modifiser figuren ovenfor slik at plottene vises ved siden av hverandre i samme figur istedenfor under hverandre.\n", + "```\n", + "\n", + "```{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "Spesifiser subplottene som _subplot(1, 2, 1)_ og _subplot(1, 2, 2)_. Da blir det to kolonner istedenfor to rader. \n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Videoer\n", + "I videoen nedenfor kan du få en innføring eller repetisjon i hvordan du plotter i Python.\n", + "\n", + "" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema3_datahandtering/statistikk.ipynb b/_sources/docs/tema3_datahandtering/statistikk.ipynb new file mode 100644 index 00000000..3bffac51 --- /dev/null +++ b/_sources/docs/tema3_datahandtering/statistikk.ipynb @@ -0,0 +1,951 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Datahåndering III: Statistikk\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med dette temaet, skal du kunne:\n", + "1. bruke deskriptiv statistikk til å beskrive data med tall og visualiseringer\n", + "2. utføre regresjonsanalyse og tolke resultatene\n", + "```\n", + "\n", + "```{epigraph}\n", + "If your experiment needs a statistician, you need a better experiment.\n", + "\n", + "-- Fysikeren Ernest Rutherford (1871–1937)\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Deskriptiv statistikk\n", + "Vi kan bruke statistikk til å oppsummere, beskrive og tolke data. Vi skiller mellom to typer statistikk:\n", + "1. Deskriptiv statistikk: oppsummere og beskrive data\n", + "2. Statistisk interferens: trekke slutninger fra data\n", + "\n", + "Vi skal mest se på deskriptiv statistikk her. La oss vende tilbake til pingvindataene våre. Vi kan få en enkel statistisk oversikt over datasettet vårt ved å bruke funksjonen _describe_." + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
bill_length_mmbill_depth_mmflipper_length_mmbody_mass_g
count342.000000342.000000342.000000342.000000
mean43.92193017.151170200.9152054201.754386
std5.4595841.97479314.061714801.954536
min32.10000013.100000172.0000002700.000000
25%39.22500015.600000190.0000003550.000000
50%44.45000017.300000197.0000004050.000000
75%48.50000018.700000213.0000004750.000000
max59.60000021.500000231.0000006300.000000
\n", + "
" + ], + "text/plain": [ + " bill_length_mm bill_depth_mm flipper_length_mm body_mass_g\n", + "count 342.000000 342.000000 342.000000 342.000000\n", + "mean 43.921930 17.151170 200.915205 4201.754386\n", + "std 5.459584 1.974793 14.061714 801.954536\n", + "min 32.100000 13.100000 172.000000 2700.000000\n", + "25% 39.225000 15.600000 190.000000 3550.000000\n", + "50% 44.450000 17.300000 197.000000 4050.000000\n", + "75% 48.500000 18.700000 213.000000 4750.000000\n", + "max 59.600000 21.500000 231.000000 6300.000000" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pandas as pd\n", + "\n", + "pingvindata = pd.read_csv(\"data/penguins.txt\", delimiter = \",\")\n", + "pingvindata.describe()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi kan forklare disse størrelsene slik:\n", + "- count = antall registrerte tilfeller\n", + "- mean = gjennomsnittet for alle individer\n", + "- std = standardavviket (dette skal vi se nærmere på seinere)\n", + "- min = minste registrerte verdi\n", + "- 25 % = \"nedre kvartil\". Her har 25 % av pingvinene for eksempel en kroppsmasse mellom 3550 og minste verdi (2700).\n", + "- 50 % = \"midtre kvartil\". Her har 50 % av pingvinene for eksempel en kroppsmasse mellom 3550 og 4050.\n", + "- 75 % = \"øvre kvartil\". Her har 75 % av pingvinene for eksempel en kroppsmasse på 4750 eller under. Det betyr også at 25 % har en kroppsmasse på 4750 til maksverdien 6300.\n", + "- max = høyeste registrerte verdi\n", + "\n", + "Vi kan også finne mange av disse størrelsene ved å bruke ulike funksjoner:\n", + "\n", + "\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Prøv ut programmet ovenfor og utforsk de ulike variablene slik at du forstår hva alle de statistiske størrelsene betyr. Forklar begrepet kvartil.\n", + "```\n", + "\n", + "### Mål på spredning\n", + "Det finnes mange måter å beskrive spredningen i en variabel på. Vi skal se på følgende måter:\n", + "- Variasjonsbredde\n", + "- Interkvartilbredde\n", + "- Varians og standardavvik\n", + "\n", + "Variasjonsbredde er et enkelt mål på spredning, nemlig differansen mellom største og minste verdi ($x_{maks} - x_{min})$. De to andre målene må vi se litt nøyere på.\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Regn ut variasjonsbredden i nebbdybde hos pingvinene.\n", + "```\n", + "\n", + "#### Interkvartilbredde\n", + "Vi har sett hvordan vi kan regne ut kvartiler.\n", + "\n", + "```{admonition} Kvartiler og persentiler\n", + "Kvartiler er fjerdedeler av et utvalg. For eksempel er nedre kvartil ($Q_1$) den høyeste verdien av en variabel som tilhører de 25 \\% minste verdiene innenfor en variabel. Midtre kvartil ($Q_2$) er verdien midt i datasettet, det vil si at 50 \\% av dataene ligger over og under dette punktet. Den midtre kvartilen kalles også for _medianen_. Tredje kvartil ($Q_3$) markerer verdien som 75 \\% av dataene ligger under (og de resterende 25 \\% av dataene ligger over).\n", + "\n", + "Dersom vi bruker en vilkårlig prosent som ikke representerer en fjerdedel, kaller vi det en _persentil_.\n", + "```\n", + "\n", + "Differansen mellom første og tredje kvartil er et godt mål på spredning. Dette er et mål på spredningen til de 50 \\% midtre dataene, og påvirkes derfor ikke av data som ligger langt unna de andre dataene (såkalte \"uteliggere\"). Dette målet kalles _interkvartilbredde_ (_IQR_) eller bare _kvartilbredde_:\n", + "\n", + "$IQR = Q_3 - Q_1$\n", + "\n", + "Kvartiler kan visualiseres enkelt med et _boksplott_:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import seaborn as sns\n", + "\n", + "sns.boxplot(data = pingvindata, x = \"species\", y = \"bill_depth_mm\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi kan forklare dette plottet slik:\n", + "\n", + "- Den svarte linja midt i boksene er medianen.\n", + "- 50 \\% av verdiene ligger innenfor boksene. Boksene markerer altså interkvartilområdet, fra $Q_1$ til $Q_3$.\n", + "- Vi har to utstikkere på hver side av boksen. De viser $IQR\\cdot1.5 = 1.5(Q_3 - Q_1)$ i begge retninger.\n", + "- Verdier som ligger utenfor disse utstikkerne, kalles _uteliggere_. Dette er unormalt store eller små verdier. Dette kan si oss noe om vi har mange unormale verdier eller om vi har noen få som vi kanskje kan fjerne ved nærmere statistisk analyse. Vi ser kun én uteligger hos Adelie-pingvinene, med unormalt dypt nebb.\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Lag et boksplott over kroppsmasse som funksjon av øya pingvinene er funnet på. Identifiser eventuelle uteliggere.\n", + "```\n", + "\n", + "````{admonition} Underveisoppgave\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "sns.boxplot(data = pingvindata, x = \"island\", y = \"body_mass_g\")\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Et alternativ til boksplott er fiolinplott. Prinsippet er ganske likt som med boksplott, men det viser i tillegg fordelingen av de ulike verdiene ved å angi \"tynne\" og \"tykke\" områder. Medianen markeres med en hvit prikk, og IQR med en tykk, svart linje. Uteliggere markeres ofte ikke i fiolinplott." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.violinplot(data=pingvindata, x='species', y='bill_depth_mm')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Varians og standardavvik\n", + "\n", + "I motsetning til IQR, som tar utgangspunkt i medianen, tar varians og standardavvik utgangspunkt i gjennomsnittet. Varians ($\\sigma^2$) er et mål på variasjonen i et datasett og skrives ofte som $\\sigma^2$. Det er definert som den gjennomsnittlige kvadrerte avstanden til gjennomsnittet av variabelen:\n", + "\n", + "$\\sigma^2 = \\frac{1}{n-1}\\sum_{i=1}^n(x_i-\\bar{x})^2$\n", + "\n", + "Her er _n_ totalt antall målinger, $x_i$ er hver måleverdi og $\\bar{x}$ er gjennomsnittet av alle måleverdier. Egentlig bør vi jo dele på $n$ når vi skal finne gjennomsnittet av denne differansen. Men vi deler på $n - 1$ istedenfor $n$ fordi datasettet vårt inneholder et utvalg måledata fra en tenkt fullstendig populasjon. Når vi deler på $n - 1$ får vi en større varians enn når vi deler på $n$. En forklaring på dette er at dersom vi hadde samlet inn data fra hele populasjonen, eller gjort tusenvis av målinger av den samme parameteren, ville spredningen (variansen) av målingene vært litt mindre sammenliknet med når vi har færre datapunkter. Vi kaller derfor variansen som er definert ovenfor, for _empirisk varians_.\n", + "\n", + "Kort oppsummert gjør vi følgende for å regne ut varians:\n", + "1. Finner differansen mellom hver måleverdi/hvert datapunkt og trekker fra gjennomsnittet. Dette gir avstanden mellom et målepukt og den gjennomsnittlige verdien.\n", + "2. Kvadrerer differansen for å kun få positive verdier. Om vi ikke hadde gjort dette, ville mange negative og positive verdier utlignet hverandre, slik at for eksempel to ekstreme verdier på hver sin side av gjennomsnittet ville gitt 0 i varians.\n", + "3. Summerer alle de kvadrerte differansene og deler på antallet målinger (her antallet målinger minus 1). Dette gir den gjennomsnittlige variansen for hele variabelen.\n", + "\n", + "Siden vi kvadrerer avstanden mellom verdier og gjennomsnittet når vi regner ut varians, blir ofte variansen svært stor dersom det finnes noen verdier som ligger et stykke unna gjennomsnittet. I tillegg får den kvadrerte enheter (som $g^2$ og $mm^2$, og det er vanskelig å sammenlikne den med måledataene. Derfor er det vanligere å bruke _standardavvik_ som et mål på spredning. Det er definert som den posive kvadratrota av variansen:\n", + "\n", + "$\\sigma = \\sqrt{\\frac{1}{n-1}\\sum_{i=1}^n(x_i-\\bar{x})^2}$\n", + "\n", + "Vi kan enkelt finne variansen og standardavviket med Pandas. Pandas deler på $n-1$, og ikke $n$, slik som vi også har gjort." + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [], + "source": [ + "varians = pingvindata[\"bill_depth_mm\"].var()\n", + "standardavvik = pingvindata[\"bill_depth_mm\"].std()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + "Forklar hva varians og standardavvik er. Lag to Python-funksjoner som regner ut henholdsvis gjennomsnitt og standardavvik. Funksjonene skal gi samme svar som _std_- og _mean_-funksjonen i Pandas.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualisering av feil\n", + "En enkel visualisering av standardavviket når vi gjør flere ulike målinger, er ved hjelp av usikkerhetsstolper. Usikkerhetsstolper kan vi bruke når vi har gjort flere målinger på samme variabel. Vi kan ta som eksempel et eksperiment der vi skal konstruere en standardkurve for magnesiumkonsentrasjonen i en vannprøve. Vi bruker en serie på 0.2, 0.3, 0.4, 0.5 og 0.6 $\\mu$g/mL Mg$^{2+}$ som vi analyserer tre ganger hver med et flammeatomabsorpsjonsspektrofotometer (for øvrig et nydelig ord!). Da har vi tre målinger for absorpsjon per konsentrasjon. Nedenfor ser du en måte å gjøre dette på. Vi bruker funksjonen _errorbar_ som tar $x$-verdier, gjennomsnittet og standardavviket som parametre. I tillegg kan vi sette streker på toppen av feilen med _capsize_ i en ønsket størrelse. Hvis vi ikke ønsker strekene mellom datapunktene i plottet ovenfor, kan vi legge inn argumentet _fmt='none'_." + ] + }, + { + "cell_type": "code", + "execution_count": 92, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "konsentrasjon = [0.2, 0.3, 0.4, 0.5, 0.6]\n", + "absorbans = [[0.21, 0.22, 0.19], [0.26, 0.29, 0.24], [0.33, 0.33, 0.34], [0.41, 0.42, 0.45], [0.56, 0.61, 0.58]]\n", + "\n", + "standardavvik = []\n", + "snitt = []\n", + "\n", + "for element in absorbans:\n", + " snitt.append(np.mean(element))\n", + " standardavvik.append(np.std(element, ddof = 1)) # ddof = 1 betyr at vi deler på n - 1.\n", + "\n", + "plt.errorbar(konsentrasjon, snitt, yerr = standardavvik, capsize=5)\n", + "plt.errorbar\n", + "plt.xlabel('Konsentrasjon ($\\mu g/mL$)')\n", + "plt.ylabel('Absorbans')\n", + "plt.title('Magnesiuminnhold i vann')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Det finnes også tilsvarende plott i seaborn-biblioteket, som er enklere å bruke dersom vi har dataene som en data frame:" + ] + }, + { + "cell_type": "code", + "execution_count": 97, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 97, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.pointplot(data=pingvindata,x=\"species\", y=\"flipper_length_mm\", capsize=.1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Regresjon\n", + "Alle måledata er _diskrete verdier_. Det betyr at de er ikke-kontinuerlige, altså at det ikke finnes uendelig mange verdier mellom punktene vi har. Vi representerer diskrete data som punkter dersom vi plotter det, mens kontinuerlige data/funksjoner plotter vi som linjer og kurver. Noen ganger kan vi derimot lage kontinuerlige modeller som representerer de diskrete dataene våre. En slik modell kan beskrive både verdier imellom datapunktene, men også utenfor datasettet vi har samlet. En enkel form for modellering er _regresjon_.\n", + "\n", + "```{admonition} Regresjon\n", + "Regresjon er en prosess der vi tilnærmer diskrete data med en kontinuerlig funksjonsmodell. \n", + "```\n", + "\n", + "La oss ta et eksempel der vi har brukt et spektrometer til å måle absorbansen til ulike standardløsninger med permanganationer $MnO_4^{-}$. Vi har gjort dette fordi vi har en løsning med ukjent innhold av permanganationer. Da trenger vi å gjøre en lineær regresjon for å kunne avgjøre hvilken konsentrasjon absorbansen til den ukjente prøva tilsvarer. Programmet nedenfor lager en standardkurve/kalibreringskurve med funksjonen _polyfit_ fra numpy-biblioteket. Denne funksjonen bruker _minste kvadraters metode_ til å tilpasse funksjonsverdier til datapunktene på en måte som gir minst mulig varians." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYIAAAEbCAYAAADXk4MCAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Z1A+gAAAACXBIWXMAAAsTAAALEwEAmpwYAAA2N0lEQVR4nO3deZzN9f7A8dfbUNSIUk3ZQkrGNvZKihYUyb1p4aZUSFLa3Kj7Ey03RVcpXUuk3VK2UJRmRCr7OpaQhEJEhsGYef/++Hy5pzFn5syYM2fOOe/n43Eezvme7/L+zKnzPp/l+/mIqmKMMSZ6FQl1AMYYY0LLEoExxkQ5SwTGGBPlLBEYY0yUs0RgjDFRzhKBMcZEOUsExvghIs1EZFs+nq+ziMz3ea0iUjW/zm9MXlkiMIWeiFwlIgtEZL+I7BWRb0WkYeYvVmNM3hQNdQDGZEdEzgKmAw8CE4DTgKbAkVDGlRMRKaqqxwrgOgKIqmYE+1omclmNwBR2lwKo6seqmq6qqao6G0gDhgNXiEiKiOwDEJHWIrJMRP4UkV9EpP/xE4lIJa855h4R2Soiv4vIMz7vlxCRsSLyh4gkAw19AxGRPiKySUQOiEiyiPzN573OXk1liIjsAfqLSBkRmebFshC42F8hvVrPL15zVH8R+SCLuIt6r5NE5EUR+RY4BPQWkcWZzveYiEzznp8uIoO9Mu8UkeEiUiJ3H4OJZJYITGG3AUgXkXdF5EYRORtAVdcC3YHvVDVWVUt7+x8E7gZKA62BB0WkXaZzXgVUA64D+olIdW/7s7gv64uBlsA9mY7bhKuNlAIGAB+IyIU+7zcGNgNxwIvAMOAwcCFwn/c4iYi0Aj4GblXVpBz/Ik4noBtQEpcQq4nIJT7vdwQ+8p4PxCXUBKAqUA7oF+B1TBSwRGAKNVX9E/fFrcAoYLf3KzvOz/5JqrpKVTNUdSXuC/aaTLsN8GoWK4AVQB1v++3Ai6q6V1V/AYZmOvdEVd3hnXs88CPQyGeXHar6htckdBS4FeinqgdVdTXwbhYh3waMAG5U1YWB/l2Asaq6RlWPqep+YCrQAcBLCJcB07ymo27AY165DgD/Bu7MxbVMhLNEYAo9VV2rqp1VtTxQEygLvJbVviLSWEQSRWS3iOzH1RrOzbTbbz7PDwGx3vOywC8+7/2c6dx3i8hyEdnnNUXVzHRu32PPw/XB+T2f51FggpcocuOXTK8/wksEuNrAFFU95MVxBrDEJ+4vvO3GAJYITJhR1XXAWNyXcFZT534ETAMqqGopXLOJBHj6X4EKPq8rHn8iIhfhaiQ9gTJeU9TqTOf2jWc3cMzf+XzcBrQTkV4+2w7ivryPuyCL4zKX/UvgPBFJwCWE481CvwOpQA1VLe09SqlqLMZ4LBGYQk1ELhORJ0SkvPe6Au6L7ntgJ1BeRE7zOaQksFdVD4tII9yv40BNAPqKyNne9R72ee9M3Jfvbi+Oe3HJKEuqmg5MwnUanyEi8Zzc5wCwA9dX0UtEHvS2LQeuFpGKIlIK6JtT4KqaBkwEBgHn4BID3miiUcAQETnfi72ciLTM6ZwmelgiMIXdAVwn7A8ichCXAFYDTwBfA2uA30Tkd2//HsBzInIA1yE6IRfXGoBrvvkJmA28f/wNVU0GXgW+wyWgWsC3OZyvJ67Z6TdcLeadrHZS1a24ZNBHRLqo6pfAeGAlsAQ3fDYQHwHXAxMzDV19CtgIfC8ifwJf4TrLjQHc+ONQx2CMMSaErEZgjDFRzhKBMcZEOUsExhgT5SwRGGNMlAu7SefOPfdcrVSpUp6OPXjwIGeeeWb+BlTIWZmjg5U5OpxKmZcsWfK7qmZ5I2HYJYJKlSqxePHinHfMQlJSEs2aNcvfgAo5K3N0sDJHh1Mps4hkdWc7YE1DxhgT9SwRGGNMlLNEYIwxUS7s+giykpaWxrZt2zh8+HC2+5UqVYq1a9cWUFSFQ2Evc/HixSlfvjzFihULdSjGRK2ISATbtm2jZMmSVKpUCTf9etYOHDhAyZIlCzCy0CvMZVZV9uzZw7Zt26hcuXKowzEmakVE09Dhw4cpU6ZMtknAFD4iQpkyZXKsyRljgisiEgFgSSBM2edmTOhFTCIwxpiIdegQPPUUp//2W8775oElgnywZ88eEhISSEhI4IILLqBcuXIkJCQQGxtLjx49ABg7diw9e/YMWYxTpkwhOTk5y/c6d+7MJ598UsARGWMCkpgItWrBK69Q5ocfgnKJiOgsDrUyZcqwfPlyAPr3709sbCxPPvlkaIPKZMqUKbRp04b4+Ph8Pe+xY8coWtT+MzIm3+3fD717w6hRULUqJCWxQ5VLg3ApqxEEUVJSEm3atDlpe+fOnenevTsNGjTg0ksvZfp0twDVli1baNq0KfXq1aNevXosWLAAgF9//ZWrr76ahIQEatasybx580hPT6dz587UrFmTWrVqMWTIEAA2bdpEq1atqF+/Pk2bNmXDhg0sWLCAadOm0bt3bxISEti0aZPfmP/v//6Pzp07s2nTJmrW/N9KjIMHD6Z///4ANGvWjEcffZQGDRrw4osvctFFF5GRkQG4uVAqVKhAWlraSbGsW7cuX/6uxkS8adMgPh5Gj4Z//hNWroRrrgna5SLvp9yjj4L36zyzEunpEBOT+3MmJMBrr51CUCfbsmULCxcuZNOmTTRv3pyNGzdy/vnn8+WXX1K8eHF+/PFHOnTowOLFi/noo49o2bIlzzzzDOnp6Rw6dIjly5ezfft2Vq9eDcC+ffsA6NatG8OHD+eSSy7hhx9+4PHHH2fu3Lm0bduWNm3a0L59e78x9e7dmwMHDvDOO+/w889+pyUB4OjRoyfmfFq6dClz586lefPmTJ8+nZYtW1KsWLGTYunRowdff/11/vwBjYlEu3bBI4/A+PGuOWjqVGjQIOiXjbxEECZuv/12ihQpwiWXXEKVKlVYt24dlStXpmfPnixfvpyYmBg2bNgAQMOGDbnvvvtIS0ujXbt2JCQkUKVKFTZv3szDDz9M69atadGiBSkpKSxYsIDbbrvtxHVSU1MDiuf555+ncePGjBw5MqD977jjjr88Hz9+PM2bN2fcuHH06NEjy1iOHDkS0LmNiTqq8NFH0KsXHDgAzz/vagKnnVYgl4+8RJDNL/fUQnRzVeZhkyLCkCFDiIuLY8WKFWRkZFC8eHEArr76ar755htmzJhB586defzxx7n77rtZsWIFs2bNYvjw4UyYMIHXXnuN0qVLn+ivAHdDWSAaNmzIkiVL2Lt3L+eccw5FixY90dwDnDTW33cq3LZt2/L000+zd+9elixZwrXXXsvBgwdPisUYk4VffoEHH4QZM+Dyy11zUD735eXE+ghCZOLEiWRkZLBp0yY2b95MtWrV2L9/PxdeeCFFihTh/fffJz09HYCff/6ZuLg4unbtSpcuXVi6dCm///47GRkZ3HrrrbzwwgssXbqUs846i8qVKzNx4kTA3bm7atUqAEqWLJltUmjVqhV9+vShdevWHDhwgLi4OHbt2sWePXs4cuTIiX6MrMTGxtKwYUN69epFmzZtiImJyTKWFStW5Nefz5jwl5EBw4dDjRpuZNBrr8H8+QWeBMASQchUrFiRRo0aceONNzJ8+HCKFy9Ojx49ePfdd6lTpw7r1q078as7KSmJOnXqULduXcaPH0+vXr3Yvn07zZo1IyEhgbvuuouXXnoJgA8//JDRo0dTp04datSowYwZMwC48847GTRoEHXr1vXbWXzbbbfRtWtX2rZty7Fjx+jXrx+NGjXihhtu4LLLLsu2PHfccQcffPDBX5qMMscyderU/PjTGRP+fvwRmjd3NYHGjWH1atcslJc+zPygqkF5AGOAXcBqP+8LMBTYCKwE6gVy3vr162tmycnJJ23Lyp9//hnQfsF2zz336MSJEwvkWoWlzNkJ9PMLVGJiYr6eLxxYmcNEWprqyy+rFi+uWqqU6ujRqhkZAR9+KmUGFquf79Vg1gjGAq2yef9G4BLv0Q34bxBjMcaY0FqxwvUBPPUUtGoFyclw331QCKZZCVpnsap+IyKVstnlFuA9L1N9LyKlReRCVf01WDEVFmPHjg11CMaYgnLkCLzwAgwcCOecAxMmQPv2hSIBHBfKUUPlgF98Xm/ztp2UCESkG67WQFxcHElJSX95v1SpUgGNjklPTw94FE2kCIcyHz58+KTP9FSkpKTk6/nCgZW5cDprzRqqDRrEmT//zG8tWrCxRw+OlSoFc+fm6XzBKnNYDB9V1ZHASIAGDRpo5sWb165dG9Cw0MI8N3+whEOZixcvTt26dfPtfLaoeXQo1GU+eBCeeQaGDoUKFeDzz7mgVSsuOMXTBqvMoUwE24EKPq/Le9uMMSZ8ffUVdO0KW7bAQw/BSy9BIf8xFsrho9OAu8W5HNgfDf0DxpgI9ccfcP/9cMMN7o7gb76BN98s9EkAgpgIRORj4DugmohsE5H7RaS7iHT3dpkJbMYNHx0F9AhWLAUhJiaGhIQEatSoQZ06dXj11Vf/cmduVrZs2cJHH31UQBE6/ibCS0pKOjHJnTEmlyZPdjeCvfsu9OnjRgg1bRrqqAIWzFFDHXJ4X4GHgnX9glaiRIkT0yns2rWLjh078ueffzJgwAC/xxxPBB07diygKP1LSkoiNjaWK6+8MuBjbApqE/V27oSHH4aJE93klDNmQL16oY4q16LyzuIpy7bTZODXVO4zgyYDv2bKsvztmjj//PMZOXIkb775Jqrqd3rpPn36MG/ePBISEhgyZIjf/ZKSkrj66qtp3bo11apVo3v37idqG7GxsSeu+8knn9C5c2fATXX9yCOPcP3111OlSpUsF55ZtGjRiTuNhw8fzpAhQ0hISGDevHns3r2bW2+9lYYNG9KwYUO+/fZbwK230KlTJ5o0aUKnTp3y9e9mTNhQhffeg+rV3QyhL74ICxeGZRKAMBk1lJ+mLNtO30mrSE1z8/hs35dK30luPp52dcvl23WqVKlCeno6u3bt8ju99MCBAxk8ePCJeXwOHTqU5X4ACxcuJDk5mYsuuohWrVoxadKkbKeUBreOwezZs9m+fTtt27b9y/4LFizg4YcfZurUqVSsWJHu3bv/ZUGdjh078thjj3HVVVexdetWWrZsydq1awFITk5m/vz5lChRIt/+XsaEja1b4YEH4Isv4Mor3SRxOUzBUthFXSIYNGv9iSRwXGpaOoNmrc/XROArLS0ty+mlc7Nfo0aNqFKlCgAdOnRg/vz5OSaCdu3aUaRIEeLj49m5c+eJ7WvXrqVbt27Mnj2bsmXLZnnsV1999ZelLf/8809SUlIAN9uoJQETdTIy4L//dX0AqvDGG9CjBxQJ/4aVqEsEO/ZlPT+/v+15tXnzZmJiYjj//PMZMGBAltNLZ+ZvGmrIetrqzNszTxV9+umnn3juumScCy+8kMOHD7Ns2TK/iSAjI4Pvv/8+y1h9p6A2JiqsXw9durjZQVu0gBEjoFKlUEeVb8I/leVS2dJZ/5L1tz0vdu/eTffu3enZsyci4nd66cxTQ/vbD1zT0E8//URGRgbjx4/nqquuAtyd1mvXriUjI4PJkycHFF/p0qWZMWMGffv2PXGXYuZYWrRowRtvvHHita0rYKJSWpqbGqJOHVizBsaOdU1CEZQEIAoTQe+W1ShR7K9TvZYoFkPvltVO6bypqaknho9ef/31tGjRgmeffRbA7/TStWvXJiYmhjp16jBkyBC/+4FbOKZnz55Ur16dypUr87e//Q2AgQMH0qZNG6688kouvPDCgOONi4tj+vTpPPTQQ/zwww/cfPPNTJ48+URn8dChQ1m8eDG1a9cmPj6e4cOHn9Lfx5iws2yZmyK6b19o08ZNEnfPPYVqjqB8429a0sL6yI9pqCcv3aZXvjRHKz01Xa98aY5OXrotoONDJTExUVu3bp2nY20a6uhgZc5HqamqTz+tGhOjGhen+sknwblOHgRrGuqo6yMANzooWB3Dxpgw9u237u7g9evh3nth8GA3Y2iEi7qmoXDUrFmzbJeKNMacogMH3I1hTZvC4cMwaxaMGRMVSQAiKBGoz6gYEz7sczMhN2sW1KwJw4a5ZLB6tRsZFEUiIhEUL16cPXv22JdKmFFV9uzZ43c4rTFBtXcvdO7sVgs74wyYNw9efx187taPFhHRR1C+fHm2bdvG7t27s93v8OHDUfelU9jLXLx4ccqXLx/qMEy0+fRTN0X077+7dQP+9S8oxP+fBFtEJIJixYpRuXLlHPdLSkrK1wVQwkE0ltkYv379FXr2hEmT3LxAX3zhJouLchHRNGSMMdlSdTeDxce7GUIHDoQffrAk4ImIGoExxvi1ZQt06wZffulGBb39Nlx6aaijKlSsRmCMiUzp6W7N4Jo14bvv3KigpCRLAlmwGoExJvKsXesmiVuwwI0KGjECKlYMdVSFltUIjDGRIy3NLRKTkADr1rnFY2bOtCSQA6sRGGMiw5IlbnqIFSvg9ttds1BcXKijCgtWIzDGhJXjS82u2r6fJgO/Ztp3G91iMY0bw65dbiH58eMtCeSC1QiMMWHjL0vNVoByqxZRe9DdsHe7qw0MHgylS4c6zLBjNQJjTNg4vtRs7JFDXDN2BBM+6kOR9GM8cv8gNyzUkkCeWI3AGBM2duxLpdmmxbw4axhlU35ndINbGNy0E4dPK87QUAcXxiwRGGPCw549vDX7dW5c9iUbylRk4rMDeT61BgDl8nGp2WhkTUPGmMJNFSZMgOrVabkqkWFNO9Km8+vsrOqWl82PpWajndUIjDGF144d0KMHTJ0KDRpQ5KuvKJdehvNmrQcOUK50CXq3rGYrDp4iSwTGmMJH1a0Q9sQTcOQIDBoEjz4KRYvSDrfcbFJSEg//o1lo44wQlgiMMYXL5s3QtSt8/TVcc40bDVS1aqijimjWR2CMKRzS0+G116BWLVi0CIYPd8nAkkDQBTURiEgrEVkvIhtFpE8W71cUkUQRWSYiK0XkpmDGY4wppNasgSZN4LHHoHlzSE6GBx6AIvZbtSAE7a8sIjHAMOBGIB7oICLxmXb7FzBBVesCdwJvBSseY0whdPQoPPcc1K0LGzfChx/CZ5+BLV9aoILZR9AI2KiqmwFEZBxwC5Dss48CZ3nPSwE7ghiPMaYwWbTITQuxahV06OAWjj/vvFBHFZVEVYNzYpH2QCtV7eK97gQ0VtWePvtcCMwGzgbOBK5X1SVZnKsb0A0gLi6u/rhx4/IUU0pKCrGxsXk6NlxZmaNDOJW5yOHDVBo7lgoTJ3L0nHPY8Nhj7LnyylyfJ5zKnF9OpczNmzdfoqoNsnxTVYPyANoDb/u87gS8mWmfx4EnvOdX4GoLRbI7b/369TWvEhMT83xsuLIyR4ewKXNiomrVqqqg2q2b6r59p3CqxHwLK1ycSpmBxernezWYPTHbgQo+r8t723zdD0wAUNXvgOLAuUGMyRgTCvv3Q/furiNY1Y0GGjECSpUKdWSG4I4aWgRcIiKVReQ0XGfwtEz7bAWuAxCR6rhEsDuIMRljCtr06VCjBowa5W4QW7nSJQRTaAQtEajqMaAnMAtYixsdtEZEnhORtt5uTwBdRWQF8DHQ2avCGGPC3e7d0LEj3HwznH22W0B+8GA444xQR2YyCeqdxao6E5iZaVs/n+fJQJNgxmCMKWCqMG4cPPKIaxIaMMCtIHbaaaGOzPhhU0wYY/LPtm3w4IOuOahRIxg9GmrWDHVUJgd2254x5tRlZMDIka4vYM4c+M9/YMECSwJhwmoExphTs3GjmyQuKcl1Ao8aBRdfHOqoTC5YjcAYkzfHjsGrr0Lt2rB0qUsAc+ZYEghDViMwxuTeqlVueohFi6BtW3jrLShni8OEK6sRGGMCd+QIPPss1KsHW7a40UFTplgSCHNWIzDGBOaHH1wtYM0auOsuGDIEzrWJACKB1QiMMdk7eBAefxyuuMLdFzB9Orz/viWBCGI1AmOMf19/7UYEbd7s7g8YOBDOOivn40xYsRqBMeZk+/a5BHDddRAT44aGvvWWJYEIZYnAGPNXU6dCfDyMGQP//CesWOEWkTcRyxKBMcbZtQvuvBPatXMrhf3wA7z8MpQoEerITJBZIjAm2qnCBx9A9eoweTI8/zwsXgwNsl7MykQe6yw2JopMWbadQbPWs2NfKmVLl6BfnZK0fLM/zJwJl1/uJomLjw91mKaAWSIwJkpMWbadvpNWkZqWjmgGzRM/pcmz73CsCBR97TXo2dN1DJuoY4nAmCgxaNZ6UtPSqbx3OwM/H0rjbWuYd1ECr9/+JJ/0+keowzMhZInAmCixc28KDyyazGPzP+JITDF639iLibWuR0RCHZoJMUsExkSDFSuY/uGTXLbjR7649Ar+74YH2R17DgBlS9uooGhnicCYSHbkCLzwAgwcSKWzStPr1qeZevEV4NUCShSLoXfLaiEO0oSaDR81JlItWAB167pE0LEjxTeso/kzPSh39hkIUK50CV76ey3a1bWZQ6Od1QiMiTQpKfDMM/DGG1ChAnz+ObRqBUC7MtgXvzlJjjUCEXlFRM4SkWIiMkdEdovIXQURnDEml778EmrVgqFD4aGHYPXqE0nAGH8CaRpqoap/Am2ALUBVoHcwgzLG5E7RAwfgvvugRQs4/XSYN8/VCEqWDHVoJgwE0jR0fJ/WwERV3W/DzYwpRCZPpmGXLm6tgL59oV8/KF481FGZMBJIIpguIuuAVOBBETkPOBzcsIwxOfrtN3j4YfjkE45WrcrpX37plpA0JpdyTASq2kdEXgH2q2q6iBwEbgl+aMaYLKnCe+/BY4/BoUPw73+ztGFDrrEkYPIo0FFDlwGVRMR3//eCEI8xJjs//wwPPACzZkGTJvD223DZZWhSUqgjM2Esx0QgIu8DFwPLgXRvs2KJwJiCk5HhVgjr08e9fuMN6NEDititQObUBVIjaADEq6rm9uQi0gp4HYgB3lbVgVnsczvQH5dcVqhqx9xex5iItn493H8/fPsttGwJI0bARReFOioTQQL5ObEauCC3JxaRGGAYcCMQD3QQkfhM+1wC9AWaqGoN4NHcXseYiJWWBi+9BHXqQHIyjB3rbg6zJGDyWSA1gnOBZBFZCBw5vlFV2+ZwXCNgo6puBhCRcbhO5mSffboCw1T1D++cu3IRuzGRa9kyd1/A8uXQvr1rCrog17/HjAmI5NTiIyJZrlqtqnNzOK490EpVu3ivOwGNVbWnzz5TgA1AE1zzUX9V/SKLc3UDugHExcXVHzduXLYx+5OSkkJsbGyejg1XVubwUuToUS56910qjhtHWqlSbHj0UX6/+uocjwvnMueVlTl3mjdvvkRVs15/VFWD8gDa4/oFjr/uBLyZaZ/pwGSgGFAZ+AUond1569evr3mVmJiY52PDlZU5jMybp3rppaqgeu+9qnv3Bnxo2Jb5FFiZcwdYrH6+VwOZa+hyEVkkIikiclRE0kXkzwAS0Haggs/r8t42X9uAaaqapqo/4WoHlwRwbmMix4EDbpnIpk3h6FGYPRvGjIGzzw51ZCZKBNJZ/CbQAfgRKAF0wXUC52QRcImIVBaR04A7gWmZ9pkCNAMQkXOBS4HNgQRuTESYNQtq1nRDQx95BFatghtuCHVUJsoENAhZVTcCMaqarqrvADlOZ6iqx4CewCxgLTBBVdeIyHMicryjeRawR0SSgUSgt6ruyUtBjAkre/fCPfe4mUHPOAPmz4fXX4coa/M2hUMgo4YOeb/ol3tTTfxK4AlkJjAz07Z+Ps8VeNx7GBP5VOHTT90U0Xv3unUD/vUvmyTOhFQgX+idvP16Agdx7f63BjMoYyLSr7/CrbfCbbdB+fKwaJFbPcySgAmxQCad+9mrEVQCJgHrVfVosAMzJmKoupvBHn8cDh+Gl192z4vaAoGmcAhkrqHWwHBgEyBAZRF5QFU/D3ZwxoS9n36Cbt3gq6/cqKC334ZLLw11VMb8RSA/SV4FmnsdxojIxcAMwBKBMf6kp8OwYW6hmCJF3KigBx6wSeJMoRRIIjhwPAl4NgMHghSPMeFv7Vo3Sdx338GNN8Lw4VCxYqijMsYvv4lARP7uPV0sIjOBCbgZQm/D3SNgjPGVluba/59/3g0Dff99+Mc/wJZ2NYVcdjWCm32e7wSOzzm0G7BhDsb4WrLETRK3ciXccQcMHQrnnx/qqIwJiN9EoKr3elNJP6KqQwowJmPCR2oq9O8PgwdDXBxMmQK32EquJrxk20egbo3iDoAlAhP1pizbzqBZ69mxL5WypUsw8Nw/aPpKX/jxR+jSBQYNgtKlQx2mMbkWSGfxtyLyJjAed0MZAKq6NGhRGVPITFm2nb6TVpGalk7skUN0n/AWTZfN5GC5ipz51Vdw3XWhDtGYPAskESR4/z7ns02Ba/M9GmMKqUGz1pOalk6zTYv496xhXHBgD283uIWPb+7KHEsCJswFcmdx84IIxJjCLHXHbwyZM4q/JSexoUxFbr2rD8vKXYYcCnVkxpy6QO4sLgU8CxxfJmku8Jyq7g9mYMYUCqowYQJzxjxEbOoBXr+yA8OuuJ2jRYsBULZ0iRAHaMypC6RpaAxuAfvbvdedgHeAv/s9wphIsGMHPPggTJsG8XW49aoHWHn2/24MK1Esht4tq4UwQGPyRyD3u1+sqs+q6mbvMQCoEuzAjAkZVTcnUHy8Wy1s8GDOXrGY+7q3pVzpEghQrnQJXvp7LdrVLRfqaI05ZYHUCFJF5CpVnQ8gIk2A1OCGZUyIbN4MXbvC11/DNde4hFC1KgDt6pazL34TkQJJBA8C73p9BQLsBToHMyhjClx6ursb+Jln3PTQI0a4ewNskjgTBQIZNbQcqCMiZ3mvA1m43pjwsXq1myRu4UJo3dpNEle+fKijMqbA5PhzR0R6eUngAPAfEVkqIi2CH5oxQXb0KAwYAPXquSahjz6Czz6zJGCiTiD13vu8WkALoAxu1NDAoEZlTLAtWgT167t5gm67DZKToUMHmynURKVAEsHx/zNuAt5T1TU+24wJL4cOwZNPwuWXwx9/uKGhH34I550X6siMCZlAOouXiMhsoDLQV0RKAhnBDcuYIEhMdCOCNm1yq4W9/DKUKhXqqIwJuUASwf24+YY2q+ohESkD3BvUqIzJT/v3wz//CSNHwsUXu6GhzW3mFGOOC2TUUIaIVALuEhEF5qvq5KBHZkx++Owz6N4dfvvNNQkNGABnnBHqqIwpVAIZNfQW0B1YhZtq4gERGRbswIw5Jbt3Q8eO0LYtlCkD33/v1guwJGDMSQJpGroWqK6qCiAi7wLJQY3KmLxS5fyvvoL27eHPP10NoE8fOO20UEdmTKEVSCLYCFQEfvZeVwB+DFpExuTVtm3w4IPET58OjRvD6NFQo0aoozKm0PObCETkM9wCNCWBtSKy0HurIbCoAGIzJjAZGTBqFPTuDceOsbFHD6oOHQoxMaGOzJiwkF2NYHAW2wRoCtwZyMlFpBXwOhADvK2qWd6IJiK3Ap8ADVV1cSDnNgZw6wV37Qpz58K118KoUWzbupWqlgSMCZjfzmJVnXv8AfwJtAHG4voMhud0YhGJAYYBNwLxQAcRic9iv5JAL+CHvBTARKljx2DwYKhdG5Yvd7OEfvUVVLEZ0o3Jreyahi4FOniP33GL10sulq5sBGxU1c3e+cYBt3ByR/PzwMtA79yFbqLWypVukrjFi+GWW+Ctt6Bs2VBHZUzYEm8w0MlviGQA84D7VXWjt22zqgb0k0tE2gOtVLWL97oT0FhVe/rsUw94RlVvFZEk4MmsmoZEpBvQDSAuLq7+uHHjclHE/0lJSSE2NjZPx4arSCqzHD3KRR9+SMUPP+RYyZL8+Mgj7G7W7KT5gSKpzIGyMkeHUylz8+bNl6hqgyzfVNUsH0A7YBzwCzAKuA74yd/+WRzfHtcvcPx1J+BNn9dFgCSgkvc6CWiQ03nr16+veZWYmJjnY8NVxJT5u+9U4+NVQfWuu1R//93vrhFT5lywMkeHUykzsFj9fK9m10cwRVXvBC4DEoFHgfNF5L8BTkO9HTfU9Ljy3rbjSgI1gSQR2QJcDkwTkawzlolOBw/CY4/BlVe6+wJmzID333c3iRlj8kWOdxar6kFV/UhVb8Z9mS8Dngrg3IuAS0SksoichhtpNM3nvPtV9VxVraSqlYDvgbZqo4bMcXPmQK1a8NprbpqINWvgpptCHZUxESdX6/Cp6h+qOlJVrwtg32NAT2AWsBaYoKprROQ5EWmbt3BNVNi3zy0Tef31btnIuXNdh/BZZ4U6MmMiUiB3FueZqs4EZmba1s/Pvs2CGYsJE1OnwoMPwq5d8NRT8OyzUKJEqKMyJqIFNREYE7CdO+GRR2DCBKhTx80aWr9+qKMyJirkqmnImHyn6jp/4+NhyhR44YX/LSNpjCkQViMwobN1q+sE/vxzuOIKN0lc9eqhjsqYqGM1AlPwMjJc52+NGq4j+PXXYd48SwLGhIjVCEzB2rDBjQiaNw9uuAFGjIDKlUMdlTFRzWoEpmAcO+YWi69dG1atgnfegVmzLAkYUwhYIjDBt2KFWyimTx/mVm1Io38MpclvFZmyfEeoIzPGYE1DJpgOH3ajgF5+mcOlzuaftz7DtKpXuPf2pdJ30ioA2tUtF8IgjTGWCExwLFjgpopetw7uuYd2Fdux7mixv+ySmpbOoFnrLREYE2LWNGTyV0qKuzHsqqvg0CH44gsYO5b1mZLAcTv2pRZwgMaYzCwRmPwzezbUrAlvvgkPPQSrV0PLlgCULZ31NBH+thtjCo4lAnPq/vgD7r3XfekXLw7ffANvvAElS57YpXfLapQo9td1hEsUi6F3y2oFHa0xJhPrIzCnZtIk9+t/927o2xf69XPJIJPj/QCDZq1nx75UypYuQe+W1ax/wJhCwBKByZvffoOePeHTTyEhAWbOhLp1sz2kXd1y9sVvTCFkTUMmd1Rh7Fg3Sdz06fDvf8PChTkmAWNM4WU1AhO4LVvggQdcp3CTJvD223DZZaGOyhhziqxGYHKWkeE6f2vWdPcHvPmm6xC2JGBMRLAagcneunVukrhvv3WjgkaMgIsuCnVUxph8ZDUCk7W0NNf+X6cOJCfDu++6dQMsCRgTcaxGYE62dKmbHmL5cmjf3jUFxcWFOipjTJBYjcD8T2qquxegUSM3PPTTT2HiREsCxkQ4qxEYZ/58VwvYsAHuuw8GD4azzw51VMaYAmA1gmh34IC7MaxpUzh6FL780q0dbEnAmKhhiSCaff65Wzf4rbegVy+3ctj114c6KmNMAbNEEI327IG774abboLYWDc09LXX3HNjTNSxRBBNVF3nb3w8fPwx/OtfsGwZXHFFqCMzxoSQdRZHi19/hR49YMoUqF/fTRNRp06oozLGFAJWI4h0qjBmDFSv7lYLe+UV+P57SwLGmBOCmghEpJWIrBeRjSLSJ4v3HxeRZBFZKSJzRMRuW81PP/1E7d693bDQOnVgxQro3RuKWkXQGPM/QUsEIhIDDANuBOKBDiISn2m3ZUADVa0NfAK8Eqx4okp6Orz+OtSsyVlr18J//wuJiXDppaGOzBhTCAWzRtAI2Kiqm1X1KDAOuMV3B1VNVNVD3svvgfJBjCc6JCe7heMffRSuuYZF77wD3btDEWsFNMZkTVQ1OCcWaQ+0UtUu3utOQGNV7eln/zeB31T1hSze6wZ0A4iLi6s/bty4PMWUkpJCbIQOkZS0NCp+/DEXffAB6SVK8GPPnuy6/npSDh6M2DL7E8mfsz9W5uhwKmVu3rz5ElVtkOWbqhqUB9AeeNvndSfgTT/73oWrEZye03nr16+veZWYmJjnY0Nt8tJteuVLc7TSU9P1ypfm6OSl2/735qJFqrVrq4LqnXeq7tx54q1wLnNeWZmjg5U5d4DF6ud7NZi9htuBCj6vy3vb/kJErgeeAa5R1SNBjCdsTVm2nb6TVpGalg7A9n2p9J20iiKHU2k7eSS8+ipccAFMnQpt24Y4WmNMuAlmIlgEXCIilXEJ4E6go+8OIlIXGIFrQtoVxFjC2qBZ608kgeNqb1pO3Zu7wJ7t0LWrGxZaunRoAjTGhLWgJQJVPSYiPYFZQAwwRlXXiMhzuCrKNGAQEAtMFBGArapqP2kz2bEv9cTz2COH6JP0Dnct/5yfS18Ac+bAtdeGMDpjTLgL6oByVZ0JzMy0rZ/Pc5vhLABlS5dg+75Umm9axIuzhhGXspdRDdsxrk0X5lgSMMacIruzKAw80+g8jvXqRdvViWwoU5Eed/Vl/UXxvHRzrVCHZoyJAJYICjNVGD+emx5+mIx9+xl93d28kvA3zj33LF5qWY12dcuFOkJjTASwRFBYbd/uJombNg0aNqTI6NHcX6sW94c6LmNMxLHbTQsbVRg1yk0V/eWXbsnI776DWtYMZIwJDqsRFCabNrmhoImJ0KyZSwhVq4Y6KmNMhLMaQWGQng7/+Y/71b9kCYwY4YaFWhIwxhQAqxGE2urVbprohQuhTRs3U2h5m3vPGFNwrEYQKkePwoABUK8ebN7slo6cNs2SgDGmwFmNIBQWLnS1gNWroWNHt3bAueeGOipjTJSyGkFBOnQInnjCLRb/xx/w2Wfw4YeWBIwxIWU1goKSmAhdurhmoAcegJdfhlKlQh2VMcZYjSDo9u+Hbt3cxHAiLiEMH25JwBhTaFgiCKbPPnM3ho0eDU8+CStXuvsDjDGmELFEEAy7d0OHDm6RmDJl4PvvYdAgOOOMUEdmjDEnsUSQn1Rd52/16vDpp/Dcc7B4MTRsGOrIjDHGL+sszi+//AIPPggzZkDjxq45qEaNUEdljDE5shrBqcrIcJ2/NWq4juAhQ+Dbby0JGGPChtUITsWPP7pJ4ubOheuug5EjoUqVUEdljDG5YjWCvDh2zHX+1q4Ny5fD22+7KaMtCRhjwpDVCHJr5Uo3PcTixXDLLfDWW1C2bKijMsaYPLMaQaCOHIF+/aB+fdi6FSZMgMmTLQkYY8Ke1QgC8d13rhawdi106uQ6hMuUCXVUxhiTL6xGkJ2DB+HRR6FJE0hJgZkz4b33LAkYYyKK1Qj8+eorNyJoyxa3iPxLL8FZZ4U6KmOMyXdWI8hs3z7XDHTDDVCsmBsaOmyYJQFjTMSyROBryhQ3Sdy770KfPrBiBVx9daijMsaYoLKmIYCdO+Hhh2HiRKhTx80aWr9+qKMyxpgCEd01AlXX+Vu9OkydCi++CIsWWRIwxkSVoCYCEWklIutFZKOI9Mni/dNFZLz3/g8iUimY8fzF1q1w001wzz1w2WXuDuGnn3b9AsYYE0WClghEJAYYBtwIxAMdRCQ+0273A3+oalVgCPBysOI5ISPDdf7WqAHz5sHQoe7f6tWDfmljjCmMgtlH0AjYqKqbAURkHHALkOyzzy1Af+/5J8CbIiKqqsEIqMTWrXDNNTB/vhsVNHIkVKoUjEsZY0zYCGYiKAf84vN6G9DY3z6qekxE9gNlgN/zPZoxY2jYvTuceSa8845rEhLJ98sYY0y4CYtRQyLSDegGEBcXR1JSUq7PUergQS5o2JCfnniCo+ec4+4PiAIpKSl5+nuFMytzdLAy559gJoLtQAWf1+W9bVnts01EigKlgD2ZT6SqI4GRAA0aNNBmeVkAvlkzkmrVIk/HhrGkpCQrcxSwMkeHYJU5mKOGFgGXiEhlETkNuBOYlmmfacA93vP2wNfB6h8wxhiTtaDVCLw2/57ALCAGGKOqa0TkOWCxqk4DRgPvi8hGYC8uWRhjjClAQe0jUNWZwMxM2/r5PD8M3BbMGIwxxmQvuu8sNsYYY4nAGGOinSUCY4yJcpYIjDEmylkiMMaYKCfhNmxfRHYDP+fx8HMJxvQVhZuVOTpYmaPDqZT5IlU9L6s3wi4RnAoRWayqDUIdR0GyMkcHK3N0CFaZrWnIGGOinCUCY4yJctGWCEaGOoAQsDJHBytzdAhKmaOqj8AYY8zJoq1GYIwxJhNLBMYYE+WiJhGISCsRWS8iG0WkT6jjKQgiskVEVonIchFZHOp4gkFExojILhFZ7bPtHBH5UkR+9P49O5Qx5jc/Ze4vItu9z3q5iNwUyhjzk4hUEJFEEUkWkTUi0svbHrGfczZlDsrnHBV9BCISA2wAbsCtnbwI6KCqySENLMhEZAvQQFUj9qYbEbkaSAHeU9Wa3rZXgL2qOtBL+mer6lOhjDM/+SlzfyBFVQeHMrZgEJELgQtVdamIlASWAO2AzkTo55xNmW8nCJ9ztNQIGgEbVXWzqh4FxgG3hDgmkw9U9Rvcoka+bgHe9Z6/i/sfKGL4KXPEUtVfVXWp9/wAsBYoRwR/ztmUOSiiJRGUA37xeb2NIP5RCxEFZovIEhHpFupgClCcqv7qPf8NiAtlMAWop4is9JqOIqaZxJeIVALqAj8QJZ9zpjJDED7naEkE0eoqVa0H3Ag85DUpRBVvDezIb/+E/wIXAwnAr8CrIY0mCEQkFvgUeFRV//R9L1I/5yzKHJTPOVoSwXaggs/r8t62iKaq271/dwGTcU1k0WCn18Z6vK11V4jjCTpV3amq6aqaAYwiwj5rESmG+0L8UFUneZsj+nPOqszB+pyjJREsAi4RkcoichpwJzAtxDEFlYic6XUyISJnAi2A1dkfFTGmAfd4z+8BpoYwlgJx/AvR8zci6LMWEQFGA2tV9T8+b0Xs5+yvzMH6nKNi1BCAN8zqNSAGGKOqL4Y2ouASkSq4WgBAUeCjSCyziHwMNMNNz7sTeBaYAkwAKuKmLL9dVSOmc9VPmZvhmgsU2AI84NN+HtZE5CpgHrAKyPA2P41rM4/IzzmbMncgCJ9z1CQCY4wxWYuWpiFjjDF+WCIwxpgoZ4nAGGOinCUCY4yJcpYIjDEmylkiMMaYKGeJwBhjopwlAuOXiKT4PL9JRDaIyEUhiqW0iPTI53MuyM/z5TEGFZEPfF4XFZHdIjI9gGPLi8hUbz7+TSLyunfnvO8+tURkeqbH+X7OV0JE5nrTtgeNiJwmIt+ISNFgXscEzhKByZGIXAcMBW5U1Z9DFEZpIMtEIE6u/1tW1StPNah8cBCoKSIlvNc3EMA8WN4UBJOAKap6CXApEAv85e5xVV2lqm0yPfzNyXMfMElV0/NamEB4U8HPAe4I5nVM4CwRmGx5M5aOAtqo6iZv2+Mistp7POptqyQia0VklLei0uzjX27evEczRGSFd8wd3va7RGSht9LSCBGJyeY8A4GLvX0HefutF5H3cPOtVBCRKd6U22uOT7vt79reeyl5KU8Wf6OsrjtQRB7y2ae/iDzp5888E2jtPe8AfOxznL84rgUOq+o7AN6X92PAfSJyRiCfbRb+gTdfj3fddSLyoXf9T0TkDH/bMx0z1qs9figi14vIt16txXeCtCne9UxhoKr2sEeWDyANtwBKbZ9t9XHzn5yJ+wW6BjdXeiXgGJDg7TcBuMt7fiswyuccpYDqwGdAMW/bW8Dd/s7jbV/tc45KuDlYLvfZdo73bwlcciiT1bV9nqfkpTxZ/J2yum5dYK7PPslAhSyOTQFqA58AxYHluHmDpvuUM6u/xyPAkCzOt8z388rFZ30a8Fumv68CTbzXY4An/W3PFGst3I/MJd77gltEZorP+WOA3aH+b9we7mE1ApOdNGABcL/PtquAyap6UFVTcM0TTb33flLV5d7zJbgvBnBftDeIyMsi0lRV9wPX4b6EF4nIcu91lRzOk9nPqvq9z+tHRGQF8D1u2vFL/FzbV17Kk9lJ11XVZcD5IlJWROoAf6jqL1kdrKorvXN3wNUOMgs0jlNxLrAv07ZfVPVb7/kHuL9VdtvBxbpK3TTJa4A56r75V/nGra4Gc1S8GXJNaFkiMNnJwK2R2khEng5g/yM+z9Nxs56iqhuAergvgxdEpB/uV+K7qprgPaqpav/szpOFg8efiEgz4HrgClWtg/tlXNzPtQOVYxz+ruu9PRFoj2sLH5/DtaYBg/FpFsohjmRcIvWN5SzcTJwbc7hWVlL5X9zHZZ6RUnPYnjnWDJ/XGZz89zsdOJy7ME0wWCIw2VLVQ7j263+IyP24qXHbee3FZ+LmRJ+X3TlEpCxwSFU/AAbhvpjnAO2Pj2ARkXMk+xFJB4Dsfj2Wwv3qPiQilwGXZ3NtX7kuTyDX9YzHrX3RHpcUsjMGGKCqqwK87hzgDBG5G0DcSJ9XgbHeZ3a8f2SxiLTJ6WSq+gcQIyK+yaCiiFzhPe8IzM9he8BEpAzwu6qm5fZYk/8sEZgcqZvjvRXwL9zqbmOBhbj54N/2mkGyUwtY6DUBPQu8oKrJ3vlmi8hK4EvgQn8nUNU9wLdeh+6gLHb5AigqImtxHcvHm4xOuvZfT6tL81CeQK6Lqq7BJa/tmsOc8aq6TVWHBnpRr7nlb8BtIvIjsAH369q35vYUrk8hULP5azPPetwSp2uBs3HLJGa3PTeaAzPycJwJAluPwEQl7xfpUlUNyX0RwSYiN+A6rYvjfnkHcl9CPeAxVe0kbsH06apaM9M+WW7PQ3yTgD5e050JMbuhw0Qdr7koCdcmH6ma4UZCxQOpIjLT68D1S1WXikiiFMANZbgRRJYECgmrERgTwUSkMwHWCEz0skRgjDFRzjqLjTEmylkiMMaYKGeJwBhjopwlAmOMiXKWCIwxJspZIjDGmChnicAYY6Lc/wNXeuqFadnJ3gAAAABJRU5ErkJggg==\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "permanganat = [4.0, 8.0, 12.0, 16.0, 20.0] # konsentrasjon i ppm\n", + "absorbans = [0.18, 0.32, 0.51, 0.68, 0.85]\n", + "\n", + "reg = np.polyfit(permanganat, absorbans, 1) # får koeffisientene a og b i en lineær regresjon (grad 1)\n", + "x = np.linspace(0, 25, 1000) # nye x-verdier for regresjonslinja\n", + "y = np.polyval(reg, x) # gir et uttrykk på formen y = ax + b, der x = permanganatkonsentrasjonen\n", + "\n", + "plt.scatter(permanganat,absorbans,label='Datapunkter')\n", + "plt.plot(x, y, color = 'red',label='Tilpasset kurve')\n", + "plt.legend()\n", + "plt.title('Standardkurve')\n", + "plt.xlabel('Konsentrasjon av MnO$_4^-$ (ppm)')\n", + "plt.ylabel('Absorbans')\n", + "plt.grid()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Funksjonen _polyfit_ utfører polynomregresjon på dataene våre, og tar som argument $x$- og $y$-verdiene i datasettet, og deretter graden av polynomet. Her har vi brukt grad 1 for lineær regresjon. Dette gir en array med koeffisientene _a_ og _b_ for uttrykket $y = ax + b$. Tilsvarende vil en andregradsregresjon gi koeffisientene _a_, _b_ og _c_ for $ax^2 + bx + c$ og så videre. Vi kan dermed bruke disse koeffisientene videre til å lage nye $y$-verdier basert på de opprinnelige $x$-verdiene. Til det kan vi bruke funksjonen _polyval_, som tar to parametre: koeffisientene som er gitt av polyfit-funksjonen og de nye _x_-verdiene som vi skal regne ut funksjonsverdier til.\n", + "\n", + "La oss si at den ukjente prøva med permanganationer ga en absorbans på 0.40. Vi kan bruke regresjonskurven vår til å finne hva slags konsentrasjon dette tilsvarer på følgende måte:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Konsentrasjonen til permanganat = 9.5 ppm.\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "permanganat = [4.0, 8.0, 12.0, 16.0, 20.0] # konsentrasjon i ppm\n", + "absorbans = [0.18, 0.32, 0.51, 0.68, 0.85]\n", + "ukjent_abs = 0.40\n", + "\n", + "# Gjør regresjonen\n", + "reg = np.polyfit(permanganat, absorbans, 1) # får koeffisientene a og b i en lineær regresjon (grad 1)\n", + "x = np.linspace(0, 25, 1000) # nye x-verdier for regresjonslinja\n", + "y = np.polyval(reg, x) # gir et uttrykk på formen y = ax + b, der x = permanganatkonsentrasjonen\n", + "\n", + "# Regner ut den ukjente konsentrasjonen\n", + "ukjent_kons = (ukjent_abs - reg[1])/reg[0]\n", + "print(\"Konsentrasjonen til permanganat =\", round(ukjent_kons,1), \"ppm.\")\n", + "\n", + "plt.scatter(permanganat,absorbans,label='Datapunkter')\n", + "plt.plot(x, y, color = 'red',label='Tilpasset kurve')\n", + "plt.plot(ukjent_kons, ukjent_abs, linestyle = \" \", marker = \"o\", color = 'seagreen', label = \"Ukjent løsning\")\n", + "plt.legend()\n", + "plt.title('Standardkurve')\n", + "plt.xlabel('Konsentrasjon av MnO$_4^-$ (ppm)')\n", + "plt.ylabel('Absorbans')\n", + "plt.grid()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Fritt klor ($Cl_2$) finnes i en del drikkevann fordi klorforbindelser blir tilsatt klorforbindelser for å desinfisere vannet. I programmet nedenfor har vi lagt inn en serie målinger som er gjort på standardløsninger av konsentrasjonen av fritt klor i vann gitt i ppm. Gjør en regresjon av dataene og lag en standardkurve. Regn ut konsentrasjonen av fritt klor i en drikkevannsprøve med absorbans 0.656 ppm.\n", + "\n", + "\n", + "\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + "```{code-block} Python\n", + ":class: tip, dropdown\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "klor = [0, 0.50, 1.00, 1.50, 2.00] # konsentrasjon i ppm\n", + "absorbans = [0.000, 0.270, 0.543, 0.813, 1.084]\n", + "ukjent_abs = 0.656\n", + "\n", + "# Gjør regresjonen\n", + "reg = np.polyfit(klor, absorbans, 1) # får koeffisientene a og b i en lineær regresjon (grad 1)\n", + "x = np.linspace(0, 2.2, 1000) # nye x-verdier for regresjonslinja\n", + "y = np.polyval(reg, x) # gir et uttrykk på formen y = ax + b, der x = permanganatkonsentrasjonen\n", + "\n", + "# Regner ut den ukjente konsentrasjonen\n", + "ukjent_kons = (ukjent_abs - reg[1])/reg[0]\n", + "print(\"Konsentrasjonen til fritt klor =\", round(ukjent_kons,2), \"ppm.\")\n", + "\n", + "plt.scatter(klor,absorbans,label='Datapunkter')\n", + "plt.plot(x, y, color = 'red',label='Tilpasset kurve')\n", + "plt.plot(ukjent_kons, ukjent_abs, linestyle = \" \", marker = \"o\", color = 'seagreen', label = \"Ukjent løsning\")\n", + "plt.legend()\n", + "plt.title('Standardkurve')\n", + "plt.xlabel('Konsentrasjon av Cl$_2$ (ppm)')\n", + "plt.ylabel('Absorbans')\n", + "plt.grid()\n", + "plt.show()\n", + "```\n", + "````\n", + "\n", + "Når vi har utført regresjon, kan vi også forutsi datapunkter som er utenfor datapunktene våre. Dette kaller vi _ekstrapolering_. Ved å ekstrapolere kan vi forutsi hvordan et system _har vært_ eller _kommer til å bli_. En skal derimot være svært forsiktig med å trekke slutninger basert på ekstrapolering! Det kan likevel være en god indikasjon på trender og utviklingen i et system." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi kan også lage visualiseringer med automatiske regresjonskurver. La oss vende tilbake til pingvinene våre. For å se om det kan være noen sammenhenger som er verdt å lage en modell av, kan vi enkelt visualisere mange ulike variabler mot hverandre ved å bruke et parplott (_pairplot_) fra seaborn-biblioteket:" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 35, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import seaborn as sns\n", + "\n", + "sns.pairplot(data = pingvindata, hue = \"species\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition}\n", + ":class: tip\n", + "Studer plottet ovenfor. Hva forteller de ulike plottene deg? Hvilke variabler ser det ut som det er en lineær sammenheng mellom?\n", + "```\n", + "\n", + "Vi tar utgangspunkt i kroppsmasse og vingelengde, som ser ut til å være lineært avhengig av hverandre. Et plott med regresjonslinje kan vi lage ved å bruke funksjonen _lmplot_ (eller _regplot_) fra seaborn-biblioteket:" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 58, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.lmplot(data = pingvindata, x = \"body_mass_g\", y = \"flipper_length_mm\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi ser at vi får en regresjonslinje med et svakt blått område på hver side av linja. Dette området indikerer usikkerheten i verdiene. Desto større dette området er, desto mer usikkert er det at regresjonslinja er en god modell i dette området. Vi kan gjøre dette tydeligere ved å velge to variabler som ikke varierer så godt lineært:" + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 59, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.lmplot(data = pingvindata, x = \"bill_depth_mm\", y = \"flipper_length_mm\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi kan også gjøre regresjon på ulike variabler, slik som ulike arter, for seg:" + ] + }, + { + "cell_type": "code", + "execution_count": 61, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 61, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.lmplot(data = pingvindata, x = \"bill_depth_mm\", y = \"flipper_length_mm\", hue = \"species\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Korrelasjon\n", + "Korrelasjoner kan brukes til å analysere sammenhenger mellom parametre. Korrelasjon beregnes som en verdi mellom -1 og 1. En verdi som brukes ofte som mål på korrelasjon, er _Pearsons korrelasjonskoeffisient_. Positiv korrelasjon betyr at det er en proporsjonal sammenheng mellom parametrene, og en negativ korrelasjon betyr at det er en omvendt proporsjonal sammenheng. Desto større absoluttverdien til korrelasjonen er, desto større sammenheng er det mellom parametrene. Vi kan visualisere korrelasjon gjennom et korrelasjonsplott:" + ] + }, + { + "cell_type": "code", + "execution_count": 99, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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OZdQthU+yUm6ALggbtNAMxtYyJc3MLP50f0FQIOtHKsLUAH4eWs79iTnnHMuoW2px0UJbbNJTdJHQMMET91UYD8mabOHltQIeAE408y22lLqSc4551xCxTmFwMwO29xzkhZKamRm86Mktmgz5WoA7wI3mdnYwhzXB54455xLKFmjK4HhwJnR/TOBtwoWkFQBGAYMMbPXCrtjT3LOOecSSuLoyvuAwyX9BBwWPUZSZ0nPRGVOAg4GzpI0Obq139qOvbnSOedcQjlJmg5uZouBQxNsHw+cF91/EXhxW/ftSc4551xC6bDiiSc555xzCdk2TCEorTzJOeecS8gXaHbOOZe2vLnSOedc2vIrgzvnnEtbOVtfUKTU8yTnnHMuobKf4jzJOeec2wxvrnTOOZe2fHSlc865tOXz5JxzzqUtr8k555xLWz660jnnXNoq+/U4T3LOOec2w5srnXPOpS1Pci6tZbbYkwpHnA7KIHvyZ2wY886mZdp0oULXYwEjtnA26956IvmBlqA77v07PQ7vypo1a7nq0puY+u13my373EuPslPzphx24LEAPP7sv2i5a3MAatSszorlKznykBOSEXaxGz35e+4fMpxYLMax3btw7jE98j0//4+l3PzEf1j55xpisRhXnNKbrh3a8O6XExn8zqd55X6ctYCh91zB7s2bJPkdJMfN9zzE56O/pk7tWrz54pOpDqfIfHSlS18SFXr2Z+3L/8RWLKHSOf8g+6eJ2B/zNhap3YDyB/RhzZA7Ye1qqFI9hQEXvx6HdWWXljtxUOfedOy8F/c+eAt9Dj81YdleRx/G6j9X59t2ybnX5t2/5c5rWbliVYnGW1JyYjHueX4YT914AQ2yanLqTf+mW6d2tGzaIK/M08NGceR+e3HS4Qfw85yFXHb/s7z3aBuOOqgjRx3UEYCfZs3nygcHpW2CA+jX+3BOPb4vN975r1SHUiySddHUkpSR6gBySWouaep2vrabpE2rGW67ZTRuSWzJImzZ7xDLIWf6WMq17pivTLkO3cie8FFIcACrVyY/0BJ0RO/uvDZ0OAATx39LjRrVqd+g7iblqlStzPmX9OeRB5/a7L769OvJW6+PKLFYS9LUGbNo1rAuTRtkUb5cOXru355Px0/LX0iwas06AFatXkO92jU22c97/5tMzwPaJyHi1Oncfk9q1kifH3tmVuhbaVVqkpwrXVS9NrZycd5jW7EEVa+dr0xGnYaoTkMq9b+ZSmfdSmaLPZMdZolq2KgB8+YuyHs8f95CGjZqsEm56268nIEDBrNm9dqE+9l3/078vmgxv8ycVWKxlqRFS1fQMKtW3uP6WTVZuHR5vjIXH38E7345kcMvvYtL//kcN5zVb5P9jBwzmZ4HdCjhaF1ximGFvhWFpDqSPpT0U/T/2lsoW0PSHEmPFWbfpS3JlZP0kqTvJL0mqYqkQyVNkjRF0nOSKgJI6inpe0kTgeOibRnRSaoX93hG7uOCJA2S9ISksZJmRjXC56LjD4or94Sk8ZKmSfpH3Pb7JE2X9K2kf0XbTpQ0VdI3kj7f3BuN3tt/o9cPk/SVpM7FcRKTJiOTjDoNWPvivawb9jgVjjoHKlZJdVRJ1XaP3di5eTPef3fUZsscc3xv3nqjbNbiCuu9/02i78Gd+XDAzQy4/hxuevwVYrGNTV3fzphFpYoVaNWsYQqjdNsqiTW5G4BRZtYKGBU93pw7gc1+txZU2pLcbsDjZtYGWAFcDQwC/mJmexL6EC+WVAl4GugDdAIaAphZDHgROC3a32HAN2b2+xaOWRvYH7gKGA48DLQD9pTUPipzk5l1BvYCDpG0l6Qs4FignZntBdwVlb0VONLM9gb6buG4lwBLzawtcEv0PhKSdEGUZMc/N+7HLeyy+NjKpah61sYYatTBVi4tUGYJOT9OglgOtvwPbPECMupsWtMpS84892RGfvYaIz97jUULf6dxk41fyo0aN2DB/IX5ynfapz17tW/HmMkjGfbeEFq0bM6rw5/Pez4zM5NeRx/G28PeT9p7KG71a9dgweJleY8XLV5Og9o185UZ9sk4jtx/bwD2bt2cdRuyWbpyYx/lyP9NpleaN1Wmo2TV5IBjgMHR/cFAv0SFJHUCGgAfFHbHpS3JzTaz0dH9F4FDgV/MLPebfTBwMLB7tP0nCz8hXozbx3NA/+j+OcDzbNnb0T6mAAvNbEqULKcBzaMyJ0U1xkmEBNgWWA6sBZ6VdByQ+xc9Ghgk6XwgcwvHPQgYCmBmU4FvN1fQzAaaWWcz63zOPq238naKR2zeTDLqNEA160JGJplt9yP7x0n5yuT8MIGMnduEB5WroayGxJZt6fdE6Tf42aEcecgJHHnICbz/7seccHL4ndKx816sXLGKRQv/yFf+hef/Q+d2Pdi//ZEc26s/M3/+lRP7np33fNdu+/HzTzOZPy9/cixL2rVsxqwFfzBn0RI2ZGfz/pjJHNKpbb4yjerW4qupPwEwc+5C1q/Ppk6NqgDEYjFGjv2Gnvu3T3borohsG/4rogZmNj+6v4CQyPKRlAE8CFxb8LktKW2jKwueqWVAVoJym9+B2WxJCyX1ALqwsVa3Oeui/8fi7uc+LidpF8JJ3cfMlkbNmJXMLFtSF0IiPgG4DOhhZhdJ2hc4CpggqZOZLaassRjrRw6h0inXQ4bI/uZz7I+5lD/4OGLzfyHnp0nkzJxCZos9qXzBvaH8qKGwpmyOIEzk4w8/p8fhXflywnusXbOGqy+7Je+5kZ+9VqjpAH2P7cWbr79XkmGWuHKZmfz9rH5cfO/TxGIx+nXrwq7NGjLg1ZG026Up3Tq345rT+3DH06/y4ogvkOCOi09CEgATvv+Fhlm1aNpgm/6Uy6TrbruPcZO+ZdmyFRza73QuOfcMju9zZKrD2m7bsqyXpAuAC+I2DTSzgXHPf0TU6lbATfEPzMwkJcqalwAjzGxO7merUHGVllExkpoDvwAHmNkYSc9Ejy8kJI8ZUYKZBDwF/Ah0N7OfJb0CVDezo6N9HQ88CrxgZn/bwjEHAe+Y2WvR8d8xsz3inwN+AoYAHYB6hBrX34DXgCpmtkhSTWCmmWVJamlmP0f7GAecb2aTExz7OqCFmV0sqS3wDbC/mY3f0nn68+7+peMfrBTY7cGJqQ6hVJjx0T2pDqHUyNxpj1SHUGqUr9ui8JlgM9rU71Lo75vvFn293ceT9APQzczmS2oEfGpmuxUo8xLQlVABqQZUIHRvban/rtTV5H4ALpX0HDAd+CswFnhVUjlgHPCkma2LfjW8K2k18AUQP253OKGZcmtNlVtlZt9ImgR8D8wmNEcSHe+tqH9QhP5DgAcktYq2jSIkr0QeBwZLmh7texqhCdQ550qFJF40dThwJnBf9P+3NonFLK9VTtJZQOetJTgoRUnOzH4l9LUVNIpQiypY/v3NlAfYmzDg5PutHPOsAsffYzPPnUViXRLs87gtHTPOWuB0M1srqSXwEfBbIV/rnHMlLpa8lr77gP9KOpfwPXgSQDTi/CIzO297d1xqklxxkXQDcDFb74tLtSrAJ5LKE2p9l5jZ+hTH5JxzeZJVk4vGLRyaYPt4YJMEZ2aDCCPvtyrtkpyZ3Uf4VZBH0k3AiQWKvmpmd5d0PJKOBO4vsPkXMzsWKFvz4pxzO5Qk1uRKTNoluUSiZFbiCW0zxx4JjEzFsZ1zrihilpPqEIpsh0hyzjnntp1fasc551zaKi1TzIrCk5xzzrmEvCbnnHMubXlNzjnnXNralmW9SitPcs455xLympxzzrm05X1yzjnn0pbX5JxzzqUtX/HEOedc2vKanHPOubTloyudc86lLW+udM45l7aSeNHUEuNJzjnnXEJek3POOZe2fOCJc865tOXNlc4559JWLOajK51zzqWpsl+PA6VDm6tLLkkXmNnAVMdRGvi52MjPxUZ+LkqPjFQH4MqkC1IdQCni52IjPxcb+bkoJTzJOeecS1ue5JxzzqUtT3Jue3hfw0Z+Ljbyc7GRn4tSwgeeOOecS1tek3POOZe2PMk555xLW57knHPOpS1Pcs4559KWJzlXKklSqmMoDfw8JObnxRWWj650pYIkmZlJag2sM7PfUh1TKsSdh2bAIjNbl+qYSitJBwAVgPlm9kOq4ylJknYm/F0sSHUsZY3X5FypEH2x9wKGAW9IulzSLqmOK9mi89AbGA6MkNRXUlaq4yptJO0PvAJcBlwp6S8pDqnY5dZWJe0LvAXcJ6lmaqMqezzJuZSK+0OuAPQGTgTOBToCx+0oiS7uPFQDzgDOAgYDxwG9PdHlO0c1gQ7AqcBJwFjg0HRLdNEPnp7A/cCLQFfgJkl1UxtZ2eJJzqVU9IfcF/gH0A5YaWaTCStGtANOkdQihSEmRdwX2ulAppl9Y2ZDgA+AQ4FjdvQvt+gcHQM8T6jBtTSzGPA+MBo4WtJpqYyxuCioRFjo+Tkz+xdwILA3XqPbJp7kXEpJ2hu4DfgNWAUMkVTdzMYAzwFtSY/LWm2RpH2AfwP1gfaSBgKY2cvAJ8BhhP6nHZakjsDlwAPAf4DrJO1uZgsJie4T4NsUhlhsLFgLTAZqSKoa9cddCRwLXJjC8MoUH3jiUkZSO+B64Bczu11SOeBhoDVwkpktl1TLzJalMs6SJmkvwpf3eDN7SlIT4GngNzO7OCrT2MzmpTLOVJLUELgXaGhmvaJttxK+8Pub2RRJ5c1sQyrjLG6SzgSOIPxdTAB2A/4J7AlcY2ZvpDC8MsFrci6pCgz9Xg9kAm0ltTWzbOAqYDYwXFImsDIFYSZbA2BnoJOkJmY2FzgPaCfpmajM/JRFlyIFPivLCU23lSVdAmBmdwDvAa9KqgpkJz/KkmVmg4HphBrca4QBKNcQav2x1EVWdnhNziVdNDIuE/gF+BP4FzAL+K+ZfR/V6HYzs2kpDLPExE0T2Ivw5b2AUHv9O/Ap8LaZzY9qdI3NbFzqok0tSYcCbYA5ZvampBMJNZvxZvZUVGZXM5uRyjiLi6RMM8uJ7mdEfY5IagvUIPzYaQ08AvQzsx9TFmwZ4UnOJVWU4IYBI4BawGPAN8DdwFJgiJl9l7IAk0RSd0K/0nuEhP93Qn/clcDXwOs7cvMkgKQ9CLW3RwgDMAaZ2Z2SjieMOh1tZo/HJ4OyJu4HTyfg24LNrbnPxz3eGXgVON/MvklyuGWSN1e6Ehc39DsLaAmcYGbnAEOBawkjxm4mNNulXZNTrrjzUIvQt3IMcAUhyT8KLIr+fxBQLjVRplbcOWoBVAUuNbP7gYOBiyTdbGavE5rtvgAoqwkO8s2LfAnokrs99zzkJrio6R4z+83MuniCK7wd8g/JJU/cL9U+hF/jLQij474E3omK3QrcBVyYbgMH4sV9of0FaAX83cyWSRpEGEH6LKEv7nwzW5G6SFMj7rNyBPAUsAT4RdI3ZjYzGoH6vaQKZnZraqMtHpJ2Bx4CTowGzzQF1prZH3FlMs0sR1Jtwnm52MwWpyjkMsdrcq5ERV9aXYCLgfsIQ737SNrLzFYTEt2TwPJ0TnCQt3LF9YTm2hXACZIamdnvwBBgFFBvR0xwkPdZORDoQVgU4AZCX+0xkppHzbdtgM9SGGZxyyRMZs+SdDehdeOzqL8WSeWiBFeTMPDkMU9w28b75FyJipoonwXKmdnR0bZ7gV2Be81sYlnuUyksSY2Al4FJZna1pOqECe+/A/80sznpOAR+W0RNdOOA+ma2U7StL3AIsBh4xcx+yS1rZfDLK6622hXYycxekjSUUOEYRuhvuweYa2aPRK+pHW3/h5l9karYyyqvybmStgYYBOws6VIAM/s7MAe4PZr4ndYJLrKBMMikj6TDzGwloWlyZ8JSTRV35AQHef1PBwErJQ2Otg0nrGbSMEHZMiduhZ8nCD9wMLOTzewkM3sF2IOwvN0ECDU5wrJed3uC2z5ek3MlLvpDPZzQJzfSzJ6Mtu9mab56fDyFdSlPBfoAD5vZx9H8rtZmNim10aVe1DSXHS1nNREYY2bnRs/VN7NFqY2w6CTVA14ALjKzX6Mm7IPN7IFo9Z9BwG1RckdSRaCaN1FuP09yLikkVSY0O10NDDezx1IcUkpIqkMY/n4qobn2wxSHVKrEJbqKwI/A52Z2RqrjKi7RD77Xo4cLCYP/2gIzzOx0SW3M7LuCoyvd9vPRlS4pzGyNpM8ITeQLUx1PqpjZEknDCH97S1MdT7JtrS8tSnDlzGydpN2IG1ZfFsX1wbUEykeLHVxAmBf5mpl9GU30vjrqm/4OPLkVJ6/JuSKJ/9KSVAOImdmqzX2Z5f5Sj+7nre6QTqJaSHY0Ki7he4yGwa+P7qf9wBvYZDWPXQjfPzM3Uzb+c1ImB5nkUrhywo2E1UpmAAPiBtD0IUyfuc3M3kxZkGnMB5647SapPnBAdP8owoU+35TUJ/r1qgLlM6Nf6pUB0iXBScqKfo0j6WjCdeBeUlhUOSd3Im9c+UwzW69wDb0yPZm5sKK+qBui+90Ik7nflXRV9DkqKPeHUzXC3MoyKW7aSC/gc+Bk4BJJnaJRk8cDt1pYskxb2JXbTp7kXFGcC5wv6QTCwsq3EEaNvSipb5ToMiDfhNZawBeSWqcs6mIU9bHcCJwdJbibCXPeZgNfKSy4nBOVK3gePlVYn3JHsBthhO2/CKvc9CPMhTsEOCM+0RU8R0C1pEdbfIywVFsX4BRCkmsPXEdY/eciM3urrNdWSzNPcm6baeMSQ/cSJuv2JVwW5gsLSy71B56XdJyZxRJMaL3K0mBh2eiLKZuwFFdVwjJdn5jZCDO7jnA15y8lNY1qsOXjzsOrwA0WrjiQtnKTu5l9CbxBuGZgU2CpmU0lXCz3QOA8SQ2iptuCn5Uys4RVbm1MUuPo8/G1hQW2uwEPROfhfULiXmrhmnHeB1eCPMm5bRIN7+4oqXLUmT6SMAquoaTukiqZ2VuEizq+FA39zo5+lb8N3J4O832i87Bn9HA14Qt5A7C7pA6QNx/wTWB87jy4qInqDeAOM/s8+ZEnj6TywFGS9lK4dmBrwmol3xMueJoVTZ24h9DsXSX6UVQLeJcy+FmJWi96E5pj35F0WNQs/QthXmh/Qm3ufjP7OZWx7ih84InbJgpr6/UlfCl1A/azsFrHXUBNwvDoMdHouPpmtij6dXsh8L2ZfZqi0ItVNPLvSMLw7yOAjkAVwlXO5wPDcmsgiuYDRufhLmCUmX2cmsiTJ/py359w7bMswnywmZJ6EPqo1gL/NrPfJdWwaDmz6PnssvQjIG4UZU3CFe1zE3cnQsIeTWiiPQJ42szeTVWsOxpPcm6bSfoLYULr88D1Fq7gXQG4CWgMvAJ8Qvh8xaIv98zc0XLpQtLNhMWl/21m10bbWhD6nFYQro+Xt2xZdB4qmdma1EWdHHFf+i0Jn4U5hCtZj4n6aQ8iDLpYS+jHzMk9R2W16U7S4UAj4DAz6x9tOx/Yj/DD5uWoRr+uLL/PssabK902UbjG12TCL/FFwGUKV/VeT7g23FJggQUxCE046ZLgCoyAGwRcCmRLuiSquc4kDL6pR0h0FDgPaZ/gIK/Zrhvh6tW7Ea48cUs0ICkG/Eao3TxjZhviz1GKQi6SaBTlU4T3eqikBwDM7GnC6i1HS2poZuui7WXyfZZFXpNzWxX3q3wPQs0lAzgbaE5Yf3EO4Qt9D8Iisn9sbl/pIOpz2Yewgvw/gKMIzVATgGXALsALFq4usEOJ+6y0Ax4kjJ48wMwmSTqH0B81FugAXGtpsKybwhUDLgX+Z2aDJbUCngbGmlnutIlmZjY7lXHuqLwm57Yq+tI6hjD/6zegEuGPeD7wTPT4XMLIwrRMcHGj5joQrv81F2hHuHL1F4R+lz0JX+wzd8QEB3mflZ7Afwk1m+eBjyV1NrPnCCNR9waeTIcEF2lBuD5gJ0kNzOwnwo+/wyQ9BOAJLnW8Jue2KhoG/jyhaemz6JfqWYQV9K8ws8WS6lhYsipt+xoULtp5OTDezP4dbXsC2M3MekQjLrPMbG46n4etkXQrsMrMHooeX0wYcHOomU2ORuCuTadzpLAYwsmEHz3vmdkf0d9JlpmNTW10OzavybnCyADqsHEdwRmEJqdWwD2S6prZEkj7voZKhCbZDgrXycPMLgaWK0z6XmvRvLc0Pw/5FOinhHB5pVZxzz1D6Md9XVI7S6O5YbnvPRot+RZwKNBPUj0z+8kTXOp5knObiGuaayOpVTSo5Dagu6TToi+nxcB0whd/WqxeUlDceWivsELLd4RVOnYBjpO0e1S72xuokLpIUytqojxQ0pHRaMonCYMv7oo+K/sBU4ARQM9UxloUCZJ57nvPTXSvESZ692AH/jyUNt5c6fKJGzhwBGF+00rC5OWRQF1Cn8pYwi/W3oRrxI0xs5dSFHKJiDsPRxGa2oYSlmXqB+wE3EkYOfgr8IaZvZ1OzW+FEXeO9iWs4PI/woT4V6L7wwl9uAcRLi/UFahnZrekKOQiU7ii9zoz+zr+37vA/UZmNr/gdpcaXpNz+URfWp0JyasXcCZh7tuRhJVNuhIGnRxMWJroEELSSwsKVxDIPQ9NCetSHkWYGrEWWG1hkvKVhL+fyWb2du5rUhJ0ikTn6FBC8u8T/f9NwrXyuhI+G5cRanJ1gHMICbAs6wA8IKla/L93bo0umhM5XxuXM9uhPhOlkSc5l4+kKsBfCOsJLjWz6YRBJ40Iia+OhfX3qgHXAKdbmixPpLBS/o2SDog2/UlI4AcRBtqcYWEFl17AVEICPEvS6dEE5x1GXNPdgcBfCQMsjLBs1+uEH0fnm9lywvfM0cCZ0eepLHua0L/YHMJlkuKey530XxO4M/q/SzG/aKqLb3aqYGarJT1GSGqPSLrMwqodAs4Hcid1/0T4EluSqrhLQDZQH+gtaYOZjVNYvut8oEU0Yu4gwlzBn81stKTLgdm2A1wuB/I1vzUE5pvZHZLWA69I6mBm8yR9QZhD+CNAVLO5waKJ0GWBpMbAEWY2SNKBhFrp22Y2RdJywlU3zs39d9fGKyfUJKzRemOU4F2KeZ+cA/KGQPckrBL/MqG/6TyiGpuZrZBU3cxWKg0v8qnoIp3RHK9rCOfhBsKX9W2EBPgxYQrBbbYDXx4l+qz8FZgGLDSz+yXdTWimPMTMZsWdzzJ3jqIfdD0INfXBwIfAHdHT5QjzJJ8CLjCzqdq4bFstQv/1rVFrhysFdqgmFpdf3OjBrsC9hEElfYFLCNMEHgdygMcULq/zJ6TnRT6jL+QjCAvrDiXUZC8kJPkLgZlAZcIqHTtygmtP+KycR+hnO0RSZTO7iTABfFzUr1lml+myYBShafIsoKOZnW9m5xNGFV9I6JvrEZWPRe95AGHFH09wpYjX5HZAkpoDjcxsTPT4euAHwh/wg8BJZvabpKpAA8KiwmW9L2WzomSfQVh7c6qZDVCYB3cnYUTpLZY+q3NsE4UFpzub2X+jx0cAuxP6pR4ATjazXyS1NrMfc/+fuoiLh8IFcM8DKhJ+6LxiZo9Hz1UHDgP+SWjS/EVhIYB65iublDreJ7djOgD4p6RTo5GCvxAGldQDTowS3OmEzvW7y+Kv8W0Rvb8cSVOAPbTxEkG3Ad8Qrn5+t5ktTW2kKdEIeDrqr32RMGXin4RabdfoPB0FnKKwsslPqQu1eEQDkO4hDJ6ZA+xLuKjrGjN73sxWAsOiRFgDwMIEd09wpZA3V+6AzOxlwmVxHpO0H2E1+GqEUZSrJXUErgcmpXuCK2AKIKBb9EVXLdr2yo6Y4KIm2dGEJuw7JJ0R1dKGEfqpDpR0MHA34bJCK8vy5yVuxGh5Qp/sTxbWIB1NaOm4SuHSOSgsQL03YR6pK8W8uXIHJulswiix0wnNMucDzQirNTxiZsPTre8pbiRpOUtw+R+FKzfvQ1hsOYswSu7tZMdZWsSdr26Ei4FeD3xJ6I86C5hHmAxfZj8rce+xrkULjEt6kDCC9DwzWyPpNEILyPNmNj5qyq9sabogeTrxJLeDU7j8yZWEOWDfSKpN+OOdV1a/tDZHUgPCKhyHRaNE8xJd/HuNzkFdwrynHbIvLl7c6MHuwLPADWb2X0nlCeeozF8ENBpVezWwkNAk+z6h360P4fqAtwCnRdNG0m50cTrzJJfmtlZzicqcRZj7dZ6ZfZzUAJNM0ivAXsC+ZrZqc4muwGsyzSwn2bGWJnGJ7hDCEl5/M7PnUx1XcYiaHt8iXCOxBuHz0Z4wXeQkQrfOj2b2fqpidNvPB56ksdyai6RNai7xLEx4zSCsO5h2JDUB7jGzM83sFEkDgQmSOsUnuriaXO7E3vIWrlq9QyU4hUW58w0giRKcLFxq6S+piq24FPjhUhH40My+iP4OviVcRWF3M3ss7jVlura6o/KBJ2nMzBYS5neNVVhrL1vRmnoJyj4X/ZErrgM+LVi4/E1LSf+NHl9AWH5qYsHzEpfgagGjJNVPWeBJlPtvHg1EGq6wbmc+UYtAhpl9YmaflMXPSTT8n+jfuGs0inhv4ERJvc0sFk0DWAfsGv9aT3Blkye5NCSpiaTBAGZ2CmF02ITNJTqFid5ENRdLlz9mSc0Ult3CzA4CqkgaFj2+APgU+EphJZfs6P3nLs30X8L8uEWpij+ZogTWEfg/wgo3czbzgyg3GVYCytTajArrsr4r6XhJuwMDCav87AHMAm6VdKHC0m0HEC6t5Mo4T3JpyGsuedYCn0tqGjVJHg2Ul/QG5J2XicA30XnYEA06eR2408w+S13oKZENtCBcFid3FZi874gCn5VPCKNPywwzWw08TBgh+jhh7cnTCSuVDCEkuhMJfXO3WbRYgivbPMmlEa+5bKQwefl3M/uGMDrunmjb0UAFSa8CmNkZwDHRecggDMC5x8y+SF30yRHXRNlCYWWTKYSpAXtLuhHy+uIylH8B4lcJIyzL3NUnzGwYYY5oJ6JluQiTuGcSktwRZnaumb1ZFptj3aZ8dGUaUZjA3JiwPNeCKJG9A6w3s+OiMi8QLo/SKvrSqk340vpHOnyxRwl8ZXS/K2G0XF3CnK4RwKNmtlbSx8AqM+sbN3JQQBUz+zNV8SebpH7AdYRh8ysINZ1KhCXOPjWzW+PK1gZeA24v658VSccSliW7xcxeiUaN/otw7cDf06XJ3nmSSxtRLWV9dP9tQn/CzWa2Pkp0a8zsxOj5PS1cMiSDsFbl2+kwdSDqc3kfeISwQv4wQnPkfKAz4ct7GPBwdF46m9n4VMWbapJ2BZ4hXOH9csJVz3uZ2TKFhZgHEq4sMDP6EXANYRWcMv9ZAZDUh3CVgS8ITdsv2g488T9deZIr47zmkl/0C/0GwhUTbjaz/0Vf5kcR5j7tCnxlZtemLsrSQWF+WH/CepPnEBYE+DmaWjEh/rOVriQdR7iMzvlmNsanCaQfnydXhsWNFsutuQxkY81FwPFAhqSHzayHpM6w8VI50R9z2iQ4CH0uklYSBo/0AP4H/EZYhLohcDPhygo7nNwvcEkVLVzA9DfCOTkaOCFKcEcSrmp9nJnNKfjaFIVeYszsDUmfWnTx33R8jzs6r8mVcV5zSWwzfS4PAz3MbFlKg0shhZXzjyc03d5PWLqqGbAa+B74G3C9mb2TsiCdK0ae5NKApMMINZcHzOwuhTUFewH7EwYQNDCziamMMRW8zyU/SZ0IFwK9jrAmYwZhxO0qYD/C6vufm9mH6VpzczseT3JpwmsuiXmfSxDV7m8BVpvZxdG2Cwlz4o63sLyZLzzs0o73yaWJqC8qGxgs6WRCzeW2HTnBgfe5FLAU6CCpu4WluZ6SdAzh0kKfADvyuXFpymtyacZrLg7yDTLZF6gCLAF+JEyErghMJixE/BZhMvyUVMXqXEnyJJeGJNXJrbm4HY/yX//tJeA/wCmE66V9TLh+4NHADGBA1AfnTZUuLXlzZRryBLdjitYlXRUluI6Eyd1nmdkHkl4kLN22HriTsE6lgEWwcVqJc+nG1650Lg1ES25dHLfA9slAX6CppEpmNoGwqslZ0eT/F4HKQF9JlVMStHNJ4DU558o4hcveLCckroqSjjSz6yWtJ8yDGwtMJwxGKh8lve8lPQEsM7M1KQveuRLmSc65MkzSbsA/gFfN7HVJfyWMoMwxs5slPQwMlPQN0IZomTcAK3D1b+fSkTdXOldGSdoZ+IDQv9ZNUm/CddLGAcdJOtzMriJMD2gL3BVdasa5HYYnOefKoGhx7X0IF/u8D/iZMLH7MOApwlUo+kg6ysxuAb4BLpHUMkUhO5cSnuScK4OiuY+jgPOBLwm1t/8BJwGHE2p0vxESXVUzuzJ67P1vbofifXLOlV3LCVed2ANoRJgikEFYgLk88H9A09xLKZnZNakJ07nU8STnXBkVzW3rHfXNfQTUIYywLA+cAIwxs99SGKJzKecrnjiXBqIreb8MDACeB+rEXw/OuR2VJznn0kS0ysnrwMFmNjvV8ThXGniScy6NSKpuZitTHYdzpYUnOefSiF91wrn8PMk555xLWz5PzjnnXNryJOeccy5teZJzzjmXtjzJOeecS1ue5JxzzqUtT3LOOefS1v8DEjS+UhEiaDUAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "corr = pingvindata.corr() # Regner ut korrelasjonskoeffisientene\n", + "sns.heatmap(corr, annot=True) # Lager visualisering. Parameteren annot = True gir tallene i boksene.\n", + "plt.xticks(rotation=45) # Roterer x-akseteksten 45 grader\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 108, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
bill_length_mmbill_depth_mmflipper_length_mmbody_mass_g
bill_length_mm1.000000-0.2350530.6561810.595110
bill_depth_mm-0.2350531.000000-0.583851-0.471916
flipper_length_mm0.656181-0.5838511.0000000.871202
body_mass_g0.595110-0.4719160.8712021.000000
\n", + "
" + ], + "text/plain": [ + " bill_length_mm bill_depth_mm flipper_length_mm \\\n", + "bill_length_mm 1.000000 -0.235053 0.656181 \n", + "bill_depth_mm -0.235053 1.000000 -0.583851 \n", + "flipper_length_mm 0.656181 -0.583851 1.000000 \n", + "body_mass_g 0.595110 -0.471916 0.871202 \n", + "\n", + " body_mass_g \n", + "bill_length_mm 0.595110 \n", + "bill_depth_mm -0.471916 \n", + "flipper_length_mm 0.871202 \n", + "body_mass_g 1.000000 " + ] + }, + "execution_count": 108, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pingvindata.corr()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi ser for eksempel at det er ganske stor positiv korrelasjon mellom nebblengde og lengden på vingene (luffene). Det betyr at dersom en pingvin har langt nebb, har den ofte også lange vinger. Det er derimot negativ korrelasjon mellom nebbdybde og vingelengde, som betyr at desto dypere nebb, desto kortere vinger har pingvinen.\n", + "\n", + "Det er derimot viktig å ikke blande korrelasjon med årsak-virkning (kausalitet). Den ene tingen forklarer ikke nødvendigvis den andre (selv om det kan gjøre det), det er bare en sammenheng mellom parametrene.\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "I programmet nedenfor finner du datasettet \"iris.txt\". Les inn datasettet og gjør en korrelasjonsanalyse av variablene. Hvilke faktorerer korrelerer positivt og negativt med hverandre? Finnes det logiske forklaringer på det?\n", + "\n", + "\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block}\n", + "import pandas as pd\n", + "import matplotlib.pyplot as plt\n", + "import seaborn as sns\n", + "\n", + "iris = pd.read_csv(\"iris.txt\")\n", + "corr = iris.corr()\n", + "\n", + "sns.heatmap(corr, annot=True,)\n", + "plt.xticks(rotation=45) \n", + "plt.show()\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Videoer\n", + "\n", + "I videoen nedenfor kan du få en innføring eller repetisjon i den grunnleggende teorien bak regresjonsanalyse:\n", + "\n", + "" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema4_algoritmer/algoritmer.ipynb b/_sources/docs/tema4_algoritmer/algoritmer.ipynb new file mode 100644 index 00000000..f16cc22a --- /dev/null +++ b/_sources/docs/tema4_algoritmer/algoritmer.ipynb @@ -0,0 +1,386 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "c661fd79", + "metadata": {}, + "source": [ + "# Matematiske algoritmer og stokastiske simuleringer\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med dette temaet, skal du kunne:\n", + "1. forklare noen matematiske algoritmer\n", + "2. programmere matematiske algoritmer\n", + "3. utføre og tolke stokastiske simuleringer\n", + "```\n", + "\n", + "Algoritmer er presise, systematiske oppskrifter, og vi kjenner mange eksempler fra hverdagen. Eksempler er strikkeoppskrifter, kakeoppskrifter og algoritmene som gir oss anbefalte filmer på Netflix og annonser på Facebook. I matematikk er algoritmer framgangsmåter som lar oss løse et matematisk problem. Vi skal her se på noen gamle, klassiske matematiske algoritmer som har fått en renessanse med datamaskinen. Vi skal også se på hvordan vi bruker tilfeldige tall til å gjøre simuleringer. Først og fremst skal vi forstå hvordan algoritmene fungerer og hva de kan brukes til. Vi skal også prøve å programmere noen av algoritmene.\n", + "\n", + "## Primtall med Eratosthenes sil\n", + "\n", + "La oss først se på en gammel metode som kan brukes til å finne primtall. Eratosthenes sil er en metode som ble utviklet av den greske matematikeren Eratosthenes i ca. 200 f. Kr. Metoden er enkel og systematisk, og er derfor også programmerbar. Metoden fungerer slik:\n", + "\n", + "1.\tLag ei liste av påfølgende heltall fra 2 til 100 med ti tall på hver rad (bortsett fra den første). Se tabellen nedenfor.\n", + "2.\tLa p til å begynne med være lik 2, det første primtallet.\n", + "3.\tStryk ut alle multipler av p som er større enn eller lik $p^2$.\n", + "4.\tFinn det første tallet større enn p som står igjen på lista. Dette tallet er det neste primtallet. Sett p lik dette tallet.\n", + "5.\tGjenta trinn 3 og 4 inntil $p^2$ er større enn 100.\n", + "6.\tAlle gjenværende tall på listen er primtall!\n", + "\n", + "| | | | | | | | | | |\n", + "|-----------|-----------|-----------|-----------|-----------|-----------|-----------|-----------|-----------|------------|\n", + "| | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |\n", + "| 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |\n", + "| 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |\n", + "| 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |\n", + "| 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 |\n", + "| 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 |\n", + "| 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 |\n", + "| 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 |\n", + "| 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 |\n", + "| 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 |\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Utfør [algoritmen for hånd](https://view.officeapps.live.com/op/view.aspx?src=https%3A%2F%2Fraw.githubusercontent.com%2Fandreasdh%2FProgrammering-og-modellering%2Fmaster%2Fdocs%2Ftema4_algoritmer%2FEratosthenes_ark.docx&wdOrigin=BROWSELINK). Å programmere algoritmen er litt ufordrendende, men du kan prøve på det når du er ferdig med å gjøre algoritmen for hånd.\n", + "```\n", + "\n", + "````{admonition} Slik kan du programmere algoritmen\n", + ":class: tip, dropdown\n", + "Her lager vi en funksjon, men du kan godt gjøre det uten funksjoner.\n", + "\n", + "```{code-block} Python\n", + "from pylab import *\n", + "\n", + "def eratosthenes_sil(n):\n", + " tall = list(arange(2,n+1,1)) # Lager array med heltall fra 2 til og med n\n", + " i = 0\n", + " # Algoritmen begynner\n", + " p = tall[i]\n", + " while p**2 <= n:\n", + " for element in tall:\n", + " if element%p == 0 and element >= p**2:\n", + " tall.remove(element)\n", + " i = i + 1\n", + " p = tall[i]\n", + " return tall\n", + "\n", + "primtall = finn_primtall(100)\n", + "print(primtall)\n", + "```\n", + "````\n", + "" + ] + }, + { + "cell_type": "markdown", + "id": "9041cfc9", + "metadata": {}, + "source": [ + "## Kvadratrøtter med gammel babylonsk algoritme\n", + "\n", + "En annen gammel algoritme kommer fra Babylonia, og er godt over 2000 år gammel. Den ble brukt til å finne kvadratrota av et tall. Du kan se utledning av algoritmen i videoen nedenfor:\n", + "\n", + "\n", + "\n", + "Algoritmen fungerer slik:\n", + "\n", + "Gjør en kvalifisert gjetning på hva $\\sqrt{a}$ er, og kall gjetningen $x_0$. Gjenta følgende algoritme $n$ ganger:\n", + "\n", + "$x_{n+1} = \\frac{1}{2}\\left(x_n+\\frac{a}{x_n}\\right)$\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Test algoritmen på $\\sqrt{12} \\approx 3.46410161514$. Regn ut feilen for hver iterasjon (gjentakelse i løkka). Eksperimenter med algoritmen på andre tall.\n", + "```\n", + "\"Kvadratrøtter\"" + ] + }, + { + "cell_type": "markdown", + "id": "c900740a", + "metadata": {}, + "source": [ + "## Stokastiske simuleringer: Monte-Carlo-metoder\n", + "\n", + "En stokastisk simulering er en simulering der tilfeldige hendelser inntreffer med en viss sannsynlighet. Det er mange prosesser i naturen som er tilfeldige eller delvis tilfeldige, f.eks. radioaktivt henfall, mutasjoner og diffusjon. Slike simuleringer er oppkalt etter kasinoet i Monte Carlo, og kalles Monte Carlo-metoder, fordi de benytter tilfeldige tall som grunnlag for det de skal tilnærme. Det er enormt mange anvendelser av MC-metoder. Vi skal se på noen av dem her. Men først skal vi ta en kikk på hvordan vi kan bruke simuleringer til å illustrere hva sannsynlighet er. Da trenger vi å kunne generere tilfeldige tall på datamaskinen. Dette kan vi gjøre slik:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9d4e0d8d", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "\n", + "heltall = np.random.randint(1, 10) # lager et tilfeldig heltall i intervallet [1, 9]\n", + "flyttall = np.random.uniform(-1, 1) # Lager et tilfeldig flyttall mellom -1 og 1" + ] + }, + { + "cell_type": "markdown", + "id": "d974dcfb", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Lag en funksjon som tar som parameter antallet ganger _n_ du skal kaste en terning. Funksjonen skal returnere ei liste med _n_ terningkast.\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "import numpy as np\n", + "\n", + "def terningkast(n):\n", + " resultater = []\n", + " for i in range(n):\n", + " kast = np.random.randint(1,7)\n", + " resultater.append(kast)\n", + " return resultater\n", + "\n", + "print(terningkast(6))\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "id": "59ba705a", + "metadata": {}, + "source": [ + "## Sannsynlighetsbegrepet\n", + "\n", + "Vi bruker sannsynlighet til vurderinger av hva vi skal gjøre i hverdagen hele tida. Er det trygt å gå over gata? Bør jeg spille Lotto? Er det lurt å klatre opp denne bratte, glatte fjellskrenten? Men hva er sannsynlighet egentlig? La oss prøve å bruke programmering for å finne ut av dette.\n", + "\n", + "`````{tabbed} Informasjon om oppgava\n", + "Vi skal studere et program som simulerer myntkast. Klikk på de ulike fanene for å gjøre oppgava tilpasset din kompetanse i programmering. Dersom du for eksempel forstår programmering godt, kan du prøve å lage programmet helt fra scratch. Da klikker du deg inn på nivå 5. Du kan starte på det nivået som passer deg. Prøv også gjerne de andre nivåene etter hvert. Det kan være mye lærering i å gå nedover i nivå også!\n", + "\n", + "- Nivå 1: Forklar og modifiser\n", + "- Nivå 2: Programmeringspuslespill\n", + "- Nivå 3: Feilsøk\n", + "- Nivå 4: Fyll inn\n", + "- Nivå 5: Lag programmet\n", + "`````\n", + "\n", + "`````{tabbed} Nivå 1: Forklaring\n", + "1. Forklar hva programmet nedenfor gjør før du kjører programmet. \n", + "2. Kjør deretter programmet og forklar hva det kan fortelle deg om sannsynlighet. \n", + "3. Modifiser programmet slik at det kaster mynten 100 ganger, 1000 ganger og 10000 ganger. Hva blir utfallet, og hvorfor?\n", + "\n", + "\n", + "````` \n", + "\n", + "`````{tabbed} Nivå 2: Puslespill\n", + "Løs [dette puslespillet](http://parsons.problemsolving.io/puzzle/23b61bf4e8954761993aa9200fb95ac2). Programmet skal simulere et myntkast og finne relativ frekvens av antall mynt, dersom kron = 0 og mynt = 1.\n", + "````` \n", + "\n", + "`````{tabbed} Nivå 3: Feilsøk\n", + "Programmetet nedenfor skal simulere et myntkast og finne relativ frekvens av antall mynt, med kron = 0 og mynt = 1, men programmet fungerer ikke som det skal. Forklar hva som er feil, og hvorfor. Rett opp programmet slik at det fungerer. Kjør programmet flere ganger med ulikt antall kast. Hva forteller resultatene deg om sammenhengen mellom relativ frekvens og sannsynlighet?\n", + "\n", + "\n", + "````` \n", + "\n", + "`````{tabbed} Nivå 4: Fyll inn\n", + "Programmet nedenfor skal simulere et myntkast og finne relativ frekvens av antall mynt, med kron = 0 og mynt = 1. Fyll inn det som mangler. Kjør deretter programmet flere ganger med ulikt antall kast. Forklar hva programmet kan fortelle deg om sammenhengen mellom relativ frekvens og sannsynlighet.\n", + "\n", + "\n", + "````` \n", + "\n", + "`````{tabbed} Nivå 5: Lag programmet\n", + "Lag et program som skal simulere et myntkast og finne relativ frekvens av antall mynt. Varier antallet kast. Hva forteller resultatene deg om sammenhengen mellom relativ frekvens og sannsynlighet?\n", + "\n", + "\n", + "````` " + ] + }, + { + "cell_type": "markdown", + "id": "37549e46", + "metadata": {}, + "source": [ + "## Sannsynlighet og nedarving\n", + "\n", + "Vi kan også bruke tilfeldige tall til å modellere enkel nedarving av egenskaper. Her skal vi bruke funksjonen _choice_ istedenfor _randint_, som plukker ut et tilfeldig element fra ei liste, for eksempel slik:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f5859bb3", + "metadata": {}, + "outputs": [], + "source": [ + "from pylab import *\n", + "\n", + "genotype_far = [\"B\", \"b\"]\n", + "print(choice(genotype_far))" + ] + }, + { + "cell_type": "markdown", + "id": "6e74097a", + "metadata": {}, + "source": [ + "````{admonition}\n", + ":class: tip\n", + "Lag et program som regner ut sannsynligheten for å få barn med fenotypen blå øyne gitt at både mor og far har genotypen \"Bb\". Du kan ta utgangspunkt i pseudokoden nedenfor, eller prøve helt uten hjelp.\n", + "\n", + "1. Hvilke forutsetninger tar du for simuleringen?\n", + "2. Plott antall blåøyde som funksjon av antall barn. Beskrive det du ser.\n", + "3. Finn ut hvor mange barn må du får for at fordelingen av blåøyde og brunøyde skal bli noenlunde stabil.\n", + "```` \n", + "\n", + "````{admonition} Pseudokode\n", + ":class: tip, dropdown\n", + "```{code-block} text\n", + "genotype_mor = [\"B\", \"b\"]\n", + "genotype_far = [\"B\", \"b\"]\n", + "blaa = 0\n", + "N = 100\n", + "\n", + "gjenta N ganger:\n", + " trekk et allel fra mor\n", + " trekk et allel fra far\n", + " hvis allel_far + allel_mor er lik \"bb\":\n", + " øk blaa med 1\n", + "\n", + "Skriv ut forholdet melllom antallet blåøyde og N.\n", + "```\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "from pylab import *\n", + "\n", + "genotype_mor = [\"B\", \"b\"]\n", + "genotype_far = [\"B\", \"b\"]\n", + "blaa = 0\n", + "N = 100\n", + "\n", + "for i in range(N): \n", + " allel_mor = choice(genotype_mor) \n", + " allel_far = choice(genotype_far) \n", + " genotype = allel_mor + allel_far\n", + " if genotype == \"bb\": \n", + " blaa = blaa + 1\n", + " \n", + "print(\"Sannsynligheten er:\", blaa/N)\n", + "```\n", + "````\n", + "\n", + "\"Øyenfarge\"" + ] + }, + { + "cell_type": "markdown", + "id": "d404cc7b", + "metadata": {}, + "source": [ + "## Tilnærming av pi med Monte Carlo-metoder\n", + "\n", + "Selv om $\\pi$ er et bestemt tall, kan vi faktisk tilnærme $\\pi$ med tilfeldige tall. En Monte Carlo-algoritme for å estimere pi baserer seg på følgende:\n", + "\n", + "1. $A=\\pi r^2$, så hvis $r = 1$, er $A = \\pi$.\n", + "2. Lag et kvadrat med sidelengder = 2 og en innskrevet sirkel med radius = 1:\n", + "\n", + "\n", + "\n", + "\n", + "3. Trekk N tilfeldige tall av et _x_-koordinat og et _y_-koordinat. \n", + "4. Sjekk om $(x, y)$ ligger inni eller på sirkelen ($x^2+y^2\\leq 1$).\n", + "5. Sett M lik antall punkter som treffer sirkelen.\n", + "6. Nå er $\\pi = A_{sirkel} = A_{kvadrat} \\cdot \\frac{M}{N}$\n", + "7. Beregn $\\pi$ og regn avviket fra den «eksakte» verdien." + ] + }, + { + "cell_type": "markdown", + "id": "d6e7d211", + "metadata": {}, + "source": [ + "## Brownske bevegelser (enkel diffusjon)\n", + "\n", + "Vi skal her se på en MC-tilnærming til tilfeldig bevegelse av store partikler i løsning. Dette er en enkel modell for diffusjon av ikke-reagererende partikler som kan beskrive såkalte _Brownske bevegelser_. Brownske bevegelser ble først beskrevet av botanisten Robert Brown i 1827. Han oppdaga at små pollenkorn i løsning beveget seg fram og tilbake i et tilfeldig mønster. I dag veit vi at dette skyldes at de små vannmolekylene dytter på pollenkornet i mange tilfeldige retninger. Det samme gjelder større partikler som enkelte luktmolekyler (parfyme) og røyk, som vi jo kan lukte og noen ganger observere direkte i makroskala.\n", + "\n", + "\"Rutenett1\"\n", + "\n", + "For å simulere det som skjer på mikroskala, kan vi lage et program der vi for hvert tidssteg trekker tilfeldige tall som bestemmer retningen til partikkelen. Vi kan først se på hvordan vi kan gjøre dette ved å konstruere et rutenett der en partikkel kan bevege seg i fire retninger (opp, ned, høyre og venstre). Skråbevegelser kan beskrives som en kombinasjon av disse bevegelsene:\n", + "\n", + "\"Rutenett1\"\n", + "\n", + "Disse bevegelsene kan vi representere med posisjonsarrayer $x$ og $y$. Posisjonen kan starte i origo, $(0, 0)$, og så kan vi øke eller redusere med 1 i en tilfeldig retning. Dette kan vi gjøre ved å trekke et tilfeldig tall mellom 1 og 4 som representerer bevegelse i rutenettet slik:\n", + "\n", + "\"Rutenett2\"\n", + "\n", + "Hvis vi for eksempel trekker tallet 4, vil partikkelen bevege seg én rute nedover i $y$-retning. Da trekker vi fra 1 i arrayen som inneholder $y$-koordinatene. \n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Bruk programmet nedenfor som utgangspunkt for å simulere bevegelsen til partikkelen:\n", + "\n", + "\n", + "```\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Bruk skilpaddegrafikk (turtle) til å simulere bevegelsen til partikkelen. Du skal lage en skilpadde som beveger seg i en tilfeldig retning (tilfeldig vinkel) en bestemt avstand (for eksempel 5) for hvert tidssteg.\n", + "\n", + "\n", + "```" + ] + }, + { + "cell_type": "markdown", + "id": "02dbfebf", + "metadata": {}, + "source": [ + "## Oppgaver\n", + "\n", + "```{admonition} Oppgave 1\n", + "Utled og forklar den gamle babylonske algoritmen for å finne kvadratrøtter.\n", + "```\n", + "\n", + "```{admonition} Oppgave 2\n", + "Lag spillet Yatzy.\n", + "```\n", + "\n", + "```{admonition} Oppgave 3\n", + "Bruk simuleringer til å regne ut hva sannsynligheten for at det i vår klasse er minst 2 personer som har samme bursdag. Hvilke forutsetninger må ta gjøre for å utføre simuleringen?\n", + "```\n", + "\n", + "```{admonition} Oppgave 4 (__utfordring__)\n", + "Det er 100 plasser i et fullbooket fly, men fordi du kommer for seint, er du den siste personen i køen som kommer inn. Den første i køen er litt idiot, og velger derfor en tilfeldig plass på flyet. Så kommer 98 Hell's Angels (én etter én). Disse bikergjengmedlemmene er ganske tydelige, og så fort de ser noen på plassen deres, grynter de, og idioten (som sitter i setet deres) må flytte seg (tilfeldig) til et annet sted. Til slutt, når alle er inne, så kommer du.\n", + "\n", + "1. Hva er sannsynligheten for at noen sitter i setet ditt?\n", + "\n", + "2. Hvor mange ganger i snitt bytter den første personen sete?\n", + "```" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/docs/tema4_algoritmer/derivasjon.ipynb b/_sources/docs/tema4_algoritmer/derivasjon.ipynb new file mode 100644 index 00000000..39df41ba --- /dev/null +++ b/_sources/docs/tema4_algoritmer/derivasjon.ipynb @@ -0,0 +1,656 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Numerisk derivasjon\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med denne delen av emnet, skal du kunne:\n", + "1. forklare den teoretisk bakgrunnen for numerisk derivasjon, og forskjellen på numerisk og analytisk derivasjon\n", + "2. implementere framoverdifferansen, bakoverdifferansen og sentraldifferansen for numerisk derivasjon\n", + "3. derivere funksjoner og data\n", + "```\n", + "\n", + "## Derivasjonsbegrepet\n", + "Derivasjon handler om endring. Den deriverte kan beskrive stigningen og forandringen i et forløp. Nærmere bestemt handler det om momentan endring, altså endringen mellom to tilstander (funksjonsverdier) over en svært liten endring i en annen tilstand: \n", + "\n", + "$$f'(x) = \\frac{df}{dt} = \\lim_{\\Delta x \\rightarrow 0} \\frac{f(x+dx) - f(x)}{dx}$$\n", + "\n", + "Vi har derfor nytte av derivasjon i mange tilfeller der vi ønsker å beskrive en utvikling. Vi kan derimot ikke alltid derivere analytisk for hånd, så det er en stor verdi i å beherske numerisk derivasjon. Da kan vi enklest tilnærme den analytisk deriverte med en numerisk derivert:\n", + "\n", + "```{admonition} Numerisk derivasjon (framoverdifferansen)\n", + "For en liten verdi av $dx$ kan vi tilnærme den førstederiverte slik:\n", + "\n", + "$$f'(x) = \\frac{df}{dx} \\approx \\frac{f(x+dx) - f(x)}{dx}$$\n", + "```\n", + "der vi tilnærmer grenseverdien med en svært liten verdi av dx. Her skal vi se på denne metoden og andre metoder som kan brukes til å tilnærme den deriverte numerisk.\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Bruk definisjonen ovenfor og regn ut $f'(1)$ for $f(x) = 2x + 2$. Sett $dx = 1\\cdot 10^{-8}$.\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "def f(x):\n", + " return x**2\n", + "\n", + "dx = 1E-8\n", + "x = 1\n", + "fder = (f(x + dx) - f(x))/dx\n", + "\n", + "print(\"f'(1) =\", fder)\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Løsningsforslaget ovenfor viser en enkel måte å implementere den numeriske deriverte på. Det kan også være nyttig å kunne lage metoden som en funksjon:" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "def deriver(f, x, dx = 1E-8):\n", + " dy = f(x + dx) - f(x)\n", + " return dy/dx" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Legg merke til at vi ikke deriverer symbolsk. Det betyr at vi ikke får en annen funksjon når vi deriverer en funksjon. Vi får bare _funksjonsverdier_. Vi må altså deriverere i gitte punkter, for eksempel $f'(1)$ eller $f'(-5)$. Dersom vi ønsker å visualisere den deriverte til en funksjon, må vi derfor derivere funksjonen i flere punkter. Dette kan vi gjøre vektorisert ved hjelp av arrayer:" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "def f(x):# Definerer en funksjon vi skal derivere\n", + " return 3*x**3 + x**2 - 1\n", + "\n", + "x = np.linspace(-2,2,100)\n", + "y = f(x)\n", + "yder = deriver(f,x)\n", + "\n", + "plt.plot(x,y,label=\"f(x)\") # Plotter funksjonen\n", + "plt.plot(x,yder,label=\"f'(x)\") # Plotter den deriverte funksjonen\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"y\")\n", + "plt.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Feilanalyse\n", + "La oss nå ta en titt på hvilke verdier av $\\Delta x$ som gir best resultat. Det må vel være den verdien som ligger nærmest 0, altså en så liten verdi som mulig -- eller? La oss teste dette ved å skrive ut den deriverte for ulike verdier av $\\Delta x$:" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "For delta_x = 0.1 er feilen: 4.000000000000092 %\n", + "For delta_x = 0.01 er feilen: 0.40000000000048885 %\n", + "For delta_x = 0.001 er feilen: 0.03999999998569592 %\n", + "For delta_x = 0.0001 er feilen: 0.003999999920267783 %\n", + "For delta_x = 1e-05 er feilen: 0.00040000068821655077 %\n", + "For delta_x = 1e-06 er feilen: 3.999977025159751e-05 %\n", + "For delta_x = 1e-07 er feilen: 4.010780685348436e-06 %\n", + "For delta_x = 1e-08 er feilen: 6.07747097092215e-07 %\n", + "For delta_x = 1e-09 er feilen: 8.274037099909037e-06 %\n", + "For delta_x = 1e-10 er feilen: 8.274037099909037e-06 %\n", + "For delta_x = 1e-11 er feilen: 8.274037099909037e-06 %\n", + "For delta_x = 1e-12 er feilen: 0.008890058234101161 %\n", + "For delta_x = 1e-13 er feilen: 0.07992778373591136 %\n", + "For delta_x = 1e-14 er feilen: 0.524016993585974 %\n", + "For delta_x = 1e-15 er feilen: 6.581410364015028 %\n", + "For delta_x = 1e-16 er feilen: 100.0 %\n", + "For delta_x = 1e-17 er feilen: 100.0 %\n" + ] + } + ], + "source": [ + "def f(x):\n", + " return 2*x**2 + x - 5\n", + "\n", + "def fder_analytisk(x):\n", + " return 4*x + 1\n", + "\n", + "x = 1\n", + "delta_x = [10**-i for i in range(1,18)] # liste med verdier fra 10^-18 til 10^-1\n", + "analytisk = fder_analytisk(x)\n", + "\n", + "for i in range(len(delta_x)):\n", + " numerisk = deriver(f, x, delta_x[i]) \n", + " feil = abs(numerisk-analytisk)/analytisk * 100\n", + " print(\"For delta_x =\", delta_x[i],\"er feilen:\", feil, \"%\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi ser at \"store\" verdier som 0.1 og 0.01 gir en del feil. Men vi ser også faktisk at nøyaktigheten er størst ved $dx = 10^{-8}$, og at den synker både med økende og med minkende $dx$. Og attpåtil gir $dx \\leq 10^{-16}$ null som svar! Dette gir naturlig nok en feil på 100 \\%, siden den analytiske verdien er 5.\n", + "\n", + "Vi forventer kanskje ikke dette resultatet. Dersom vi kun ser på definisjonen av den deriverte, er det ikke spesielt logisk at det skal slå slik ut. Men det hele handler om at tall ikke er representert eksakt i en datamaskin, og når datamaskinen skal operere med svært små tall, kan det bli en liten avrundingsfeil når den regner med tallene. Denne avrundingsfeilen gjør at vi får feil dersom vi velger for små verdier av $dx$. Dersom vi gjør en mer generell feilanalyse, viser det seg at $10^{-8}$ er en god verdi å velge her. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "````{admonition} Underveisoppgave\n", + ":class: tip\n", + "Lag et plott med feilen som funksjon av _dx_ med utgangspunkt i programmet ovenfor. Bruk logaritmiske akser – dette får resultatene tydeligere fram. Du kan lage logaritmiske akser slik:\n", + "```{code-block} Python\n", + "plt.yscale('log')\n", + "plt.xscale('log')\n", + "```\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "import matplotlib.pyplot as plt\n", + "\n", + "def f(x):\n", + " return 2*x**2 + x - 5\n", + "\n", + "def fder_analytisk(x):\n", + " return 4*x + 1\n", + "\n", + "x = 1\n", + "delta_x = [10**-i for i in range(1,18)] # liste med verdier fra 10^-18 til 10^-1\n", + "analytisk = fder_analytisk(x)\n", + "avvik = []\n", + "\n", + "for i in range(len(delta_x)):\n", + " numerisk = deriver(f, x, delta_x[i]) \n", + " feil = abs(numerisk-analytisk)/analytisk * 100\n", + " avvik.append(feil)\n", + " print(\"For delta_x =\", delta_x[i], \"er feilen:\", feil, \"%\")\n", + "\n", + "plt.plot(delta_x, avvik)\n", + "plt.yscale('log')\n", + "plt.xscale('log')\n", + "plt.xlabel('dx')\n", + "plt.ylabel('Feil (%)')\n", + "plt.show()\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Andre tilnærminger\n", + "\n", + "Tilnærmingen til den deriverte som vi har sett på, tar utgangspunkt i punktene $(x, f(x))$ og $(x+dx, f(x+dx))$ for å regne ut den momentane vekstfarten (altså den deriverte) i punktet $x$. Men vi kan like godt bruke andre punkter. Metoden vi har sett på, kalles _framoverdifferansen_ fordi den tar utgangspunkt i punktet $x$ og _neste_ punkt $x + dx$. Tilsvarende kan vi ta utgangspunkt i punktet $x$ og _forrige_ punkt $x - dx$. Dette kaller vi _bakoverdifferansen_. Bakoverdifferansen gir samme feil som framoverdifferansen, men er teoretisk nyttig for å utlede andre metoder.\n", + "\n", + "```{admonition} Numerisk derivasjon (bakoverdifferansen)\n", + "For en liten verdi av $dx$ kan vi tilnærme den førstederiverte slik:\n", + "\n", + "$$\\frac{df}{dx} \\approx \\frac{f(x) - f(x-dx)}{dx}$$\n", + "```\n", + "\n", + "En metode som derimot gir mindre feil enn både framover- og bakoverdifferansen, er _sentraldifferansen_. Det er en slags kombinasjon av framover- og bakoverdifferansen, der vi tar utgangspunkt i gjennomsnittet (midtpunktet) av $x+dx$ og $x-dx$.\n", + "\n", + "```{admonition} Numerisk derivasjon (sentraldifferansen)\n", + "For en liten verdi av $dx$ kan vi tilnærme den førstederiverte slik:\n", + "\n", + "$$\\frac{df}{dx} \\approx \\frac{f(x+dx) - f(x-dx)}{2\\cdot dx}$$\n", + "```\n", + "\n", + "\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Implementer bakover- og sentraldifferansen som Python-funksjoner. Gjør en feilanalyse med de tre ulike tilnærmingene for ulike verdier av $\\Delta x$. Bruk funksjonen $f(x) = \\sin{(x)}$ og sammenlikn med den analytiske verdien av den deriverte, $f'(x) = \\cos{(x)}$\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Numerisk derivasjon av data\n", + "Nå kommer vi til den nyttigste delen av numerisk derivasjon, nemlig derivasjon av diskrete data. Vi kan derivere på samme måte som vi gjorde med kontinuerlige funksjoner, men vi har gitt en $dx$ som er gitt av avstanden mellom datapunktene våre. Hvis målefrekvensen er lav, blir $dx$ høy, og motsatt. La oss se på hvordan vi kan derivere noen posisjonsdata:" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
tid_sposisjon_m
00.000000.000000
10.010010.000060
20.020020.000240
30.030030.000541
40.040040.000962
\n", + "
" + ], + "text/plain": [ + " tid_s posisjon_m\n", + "0 0.00000 0.000000\n", + "1 0.01001 0.000060\n", + "2 0.02002 0.000240\n", + "3 0.03003 0.000541\n", + "4 0.04004 0.000962" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pandas as pd\n", + "\n", + "# Leser og sjekker ut dataene\n", + "data = pd.read_csv(\"https://raw.githubusercontent.com/andreasdh/NAT3000/master/docs/datafiler/posisjon.txt\")\n", + "data.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Plotter dataene\n", + "import matplotlib.pyplot as plt\n", + "\n", + "x = data[\"tid_s\"]\n", + "y = data[\"posisjon_m\"]\n", + "\n", + "plt.scatter(x, y)\n", + "plt.title(\"Bevegelse av legeme\")\n", + "plt.xlabel(\"Tid (s)\")\n", + "plt.ylabel(\"Posisjon (m)\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Husk at $v(t) = s'(t)$. Hvis vi deriverer, får vi altså farten til legemet:" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": { + "scrolled": false + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "dydx = []\n", + "for i in range(len(y)-1):\n", + " dy = y[i+1]-y[i]\n", + " dx = x[i+1]-x[i]\n", + " der = dy/dx\n", + " dydx.append(der)\n", + "\n", + "dydx.append(None)\n", + "plt.plot(x, y, label='Posisjon (m)')\n", + "plt.plot(x, dydx, label='Fart (m/s)')\n", + "plt.xlabel('Tid (s)')\n", + "plt.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "I løkka bruker vi samme framgangsmåte som vi gjorde da vi deriverte funksjoner, men nå tar vi verdiene fra ei liste med verdier. Vi kan kun kjøre løkka til lengden av lengden av listene minus 1, fordi vi skal ta forskjellen mellom verdier. Da blir det nemlig én verdi mindre enn i _y_- og _x_-listene. Derfor legger vi til en ekstra verdi \"None\" til slutt i lista, slik at alle listene blir like lange." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Som du ser, kan vi benytte numerisk derivasjon på både kontinuerlige funksjoner og diskrete data. Hovedpoenget er at vi finner ut noe om endringen i en funksjon eller i et datasett. Og desto mindre _dx_ er, desto bedre tilnærming er denne endringen til den momentante endringen i et punkt, altså den deriverte.\n", + "\n", + "```{admonition} Didaktisk oppgave\n", + "1. Kan programmering og numeriske metoder være en måte å forstå derivasjon på? I så fall hvordan?\n", + "2. I denne delen har du sett på enkel numerisk derivasjon, feilanalyse, ulike tilnærminger til den deriverte og derivasjon av diskrete data. Hvilke deler av dette egner seg for elever, og i hvilke(n) sammenheng(er)?\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Derivasjon med numeriske biblioteker\n", + "\n", + "Selvfølgelig har noen også lagd funksjoner som kan derivere for oss. Vi finner dem i scipy-biblioteket. Funksjonen _derivative_ finner den numerisk deriverte ved hjelp av midtpunktstilnærmingen:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "f'(1) = 2.0\n" + ] + } + ], + "source": [ + "from scipy.misc import derivative\n", + "import numpy as np\n", + "\n", + "def f(x):\n", + " return x**2 - 4\n", + "\n", + "derivert = derivative(f, 1)\n", + "print(\"f'(1) =\", derivert)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Oppgaver\n", + "\n", + "```{admonition} Oppgave 1\n", + ":class: tip\n", + "Beregn f'(1) numerisk for følgende funksjoner. Kontroller ved å derivere for hånd.\n", + "\n", + "1. $f(x) = x^2 - 4x + 5$\n", + "2. $f(x) = e^x$\n", + "3. $f(x) = \\sqrt{\\ln(x)}$\n", + "```\n", + "\n", + "````{admonition} Oppgave 2\n", + ":class: tip\n", + "Skriv om funksjonen _deriver_ slik at _dx_ har en standardverdi. Velg en standardverdi som sannsynligvis vil gi gode resultater. \n", + "```{code-block} Python\n", + "def deriver(f, x, dx = 1E-8):\n", + " dy = f(x + dx) - f(x)\n", + " return dy/dx\n", + "```\n", + "````\n", + "\n", + "```{admonition} Oppgave 3\n", + ":class: tip\n", + "En partikkel følger posisjonsfunksjonen $x(t) = t^3 + \\frac{1}{3}\\cdot t$. Plott både posisjon, hastighet og akselerasjon for $t = [0,10]$. Husk at $v(t) = s'(t)$ og $a(t) = v'(t)$.\n", + "```\n", + "\n", + "```{admonition} Oppgave 4\n", + ":class: tip\n", + "Forklar hva som er forskjellen mellom analytisk og numerisk derivasjon.\n", + "```\n", + "\n", + "```{admonition} Oppgave 5\n", + ":class: tip\n", + "Temperaturen $T(t)$ (i celsius) etter $t$ minutter til en nylig lagd te følger denne modellen, som vi har kommet fram til ved regresjon av eksperimentelle data:\n", + "\n", + "$$T(t) = 70e^{-0.065t}$$\n", + "\n", + "a) Bruk Newtons kvotient for å tilnærme den deriverte til $T(t)$ for 1000 jevnt fordelte verdier av $t$ i intervallet $[0, 60]$\n", + "b) Plott resultatet fra a) sammen med grafen for $T(t)$. Bruk merkelapper (labels og legend) for grafene.\n", + "c) Hvor mye synker temperaturen med ved element nr. 42 i lista over verdier for $t$ (vi teller med 0-te element)?\n", + "```\n", + "\n", + "````{admonition} Oppgave 6\n", + ":class: tip\n", + "Programmet nedenfor leser av fila \"heistur_kjemi_fysikk.txt\" og finner fart og akselerasjon ved hjelp av numerisk derivasjon. Programmet fungerer derimot ikke helt som det skal. Rett opp feilen. Lag også en ny kolonne \"fart\" og en ny kolonne \"akselerasjon\" i dataframen.\n", + "\n", + "\n", + "\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "\n", + "import pandas as pd\n", + "import matplotlib.pyplot as plt\n", + "\n", + "data = pd.read_csv(\"heistur_kjemi_fysikk.txt\")\n", + "p = data[\"height_m\"]\n", + "t = data[\"time_s\"]\n", + "v = [] # fart i m/s\n", + "a = [] # akselerasjon i m/s^2\n", + "\n", + "# Vi trenger to løkker fordi a tar utgangspunkt i v, som derfor må lages først\n", + "for i in range(len(p)-1):\n", + " dt = t[i+1] - t[i]\n", + " fart = (p[i+1] - p[i])/dt\n", + " v.append(fart)\n", + "\n", + "for i in range(len(v)-1):\n", + " dt = t[i+1] - t[i]\n", + " akselerasjon = (v[i+1] - v[i])/dt\n", + " a.append(akselerasjon)\n", + "\n", + "v.append(None)\n", + "a.append(None)\n", + "a.append(None)\n", + "\n", + "# Legger til verdiene i dataframen\n", + "data[\"fart\"] = v\n", + "data[\"akselerasjon\"] = a\n", + "\n", + "plt.subplot(3,1,1)\n", + "plt.ylabel(\"Posisjon (m)\")\n", + "plt.plot(t, p, color = \"limegreen\")\n", + "plt.subplot(3,1,2)\n", + "plt.ylabel(\"Fart (m)\")\n", + "plt.ylim(-1,1)\n", + "plt.plot(t, v, color = \"navy\")\n", + "plt.subplot(3,1,3)\n", + "plt.ylabel(\"Akselerasjon (m)\")\n", + "plt.plot(t, a, color = \"firebrick\")\n", + "plt.ylim(-1,1)\n", + "plt.xlabel(\"Tid (s)\")\n", + "plt.tight_layout()\n", + "plt.show()\n", + "```\n", + "````\n", + "\n", + "```{admonition} Oppgave 7\n", + ":class: tip\n", + "Løs puslespillet nedenfor, som skal illustrere derivasjon av diskrete data.\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "IFrame('https://parsons.herokuapp.com/puzzle/cd36da48d9cc4fcbbaf13103d84454bf', width=1000, height=750)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Video\n", + "````{tab-set}\n", + "```{tab-item} Numerisk derivasjon\n", + "\n", + "```\n", + "````" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema4_algoritmer/feilhandtering.ipynb b/_sources/docs/tema4_algoritmer/feilhandtering.ipynb new file mode 100644 index 00000000..37fb33ba --- /dev/null +++ b/_sources/docs/tema4_algoritmer/feilhandtering.ipynb @@ -0,0 +1,35 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Numeriske metoder og feilhåndtering\n", + "\n", + "\n", + "\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema4_algoritmer/integrasjon.ipynb b/_sources/docs/tema4_algoritmer/integrasjon.ipynb new file mode 100644 index 00000000..da58cd28 --- /dev/null +++ b/_sources/docs/tema4_algoritmer/integrasjon.ipynb @@ -0,0 +1,459 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Numerisk integrasjon (ekstrastoff)\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med dette temaet, skal du kunne:\n", + "1. Forklare forskjellen på ulike tilnærminger til rektangelmetoden (venstre-, høyre- og midtpunktstilnærming).\n", + "2. Forklare og utlede trapesmetoden.\n", + "3. Implementere rektangelmetoden og trapesmetoden.\n", + "4. Integrere funksjoner numerisk.\n", + "```\n", + "\n", + "## Integrasjon\n", + "Du kjenner kanskje integrasjon som en metode å regne ut arealet under en graf eller volumet til legemer på. I tillegg kjenner du antakelig til integrasjon som den motsatte operasjonen av derivasjon. At derivasjon og integrasjon er motsatte operasjoner, er bevist gjennom _analysens fundamentalteorem_. Termen _analyse_ brukes her om den greinen av matematikk som omhandler derivasjon og integrasjon (_kalkulus_). Siden datamaskinen kun kan operere med bestemte verdier, kan vi med numeriske algoritmer kun tilnærme _det bestemte integralet_. Vi antideriverer derfor ikke her.\n", + "\n", + "\n", + "## Rektangelmetoden\n", + "\n", + "Vi kan enklest gjøre en tilnærming til det bestemte integralet ved å utnytte at det kan skrives som en grenseverdi av Riemann-summer. En Riemann-sum kan beskrives som en tilnærming til arealet under en graf ved hjelp av arealet til geometriske figurer. En vanlig tilnærming er å bruke rektangler:\n", + "\n", + "\n", + "\n", + "Her benyttes $N = 10$ rektangler for å tilnærme integralet av $f(x) = \\cos{(x)} +2$ for $x\\in[2,12]$. Bredden av rektanglene må være $(b-a)/N = (12-2)/10 = 1$. Vi ser også at høyden av hvert rektangel er $f(x_n)$ der $n\\in[2,11]$, det vil si at vi lar venstresiden av rektangelet gå opp til grafen. Dersom vi regner ut arealet til hver av disse rektanglene, får vi 18.046675645664006, noe som ligger et lite stykke unna den analytiske verdien ($(\\sin{(12)} + 2\\cdot 12)-(\\sin{(2)} + 2\\cdot 2) \\approx 18.554129655173885$. Dersom vi øker antall rektangler, her til 50, får vi naturlig nok et bedre estimat (her har vi inkludert resultatene i figuren):\n", + "\n", + "\n", + "\n", + "Det er åpenbart, spesielt i den første figuren, at flere områder av rektanglene ligger utenfor grafen. De ligger både for langt over og under grafen flere steder. Men feilen blir ikke så stor som det kan se ut som fordi vi nettopp har områder både over og under grafen. Relativ feil er her ca. 2.7 \\% med 10 rektangler og 0.65 \\% med 50 rektangler. \n", + "\n", + "La oss illustrere feilen vi får med en lineær funksjon, $f(x) = 10x$:\n", + "\n", + "\n", + "\n", + "Vi har i disse modellene målt rektangelhøyden på venstre ytterkant av rektangelet. Dette gir oss her en underestimering av integralet for hvert rektangel. Vi kan også måle høyden av rektanglene på høyre ytterkant. Da får vi en tilsvarende overestimering:\n", + "\n", + "" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi ser her at vi får en stor underestimering med venstretilnærmingen og en stor overestimering med høyretilnærmingen, med en relativ feil på ca. 7.1 \\%. Det samme skjer for alle funksjoner i intervaller som er enten voksende eller synkende i hele intervallet. En måte å kompensere for dette, er å benytte høyden til rektangelet i midten istedenfor i endepunktet til venstre eller høyre:\n", + "\n", + "\n", + "\n", + "Det aller beste resultatet får vi altså med denne _midtpunktstilnærmingen_. For lineære funksjoner vil vi få en eksakt verdi (selv med ett rektangel!) fordi rektanglene er like store over og under grafen. Men midtpunktstilnærmingen er generelt bedre også på for eksempel polynomer av høyere grad og trigonometriske funksjoner. La oss nå se på implementering av metodene." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Implementering av rektangelmetodene\n", + "\n", + "```{admonition} Rektangelmetoden (venstretilnærming)\n", + "Det bestemte integralet til en funksjon $f(x)$ fra $x = a$ til $x = b$ kan tilnærmes ved arealet til $n$ rektangler med bredden $h = \\frac{b-a}{n}$:\n", + "\n", + "$$\\int_a^b f(x) \\ \\mathrm{d}x \\approx h \\sum_{k=1}^{n} f(x_k)$$\n", + "```\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Programmet nedenfor gir en funksjon som bruker venstretilnærmingen av rektangelmetoden til å beregne det bestemte integralet av en funksjon _f_ mellom _a_ og _b_. Fyll inn det som mangler i metoden.\n", + "```\n", + "\n", + "\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "def f(x):\t\t\t\t#Definerer en funksjon som vi skal integrere.\n", + " return x**3\n", + " \n", + "def f_analytisk(x): #Definerer analytisk verdi for sammenlikning.\n", + " return (1/4)*x**4\n", + "\n", + "def rektangelmetoden(f, a, b, n):\n", + " A = 0.0\t\t\t\t\t\t\t \n", + " h = (b-a)/n\t\t\t#Bredden til rektanglene\n", + " for k in range (n):\t\n", + " A = A + f(a + k*h)*h\n", + " return A\n", + " \n", + "print(\"Numerisk verdi:\", rektangelmetoden(f, 0, 5, 1000))\n", + "print(\"Analytisk verdi:\", f_analytisk(5)-f_analytisk(1))\n", + "```\n", + "````\n", + "\n", + "Tilsvarende kan vi beskrive høyretilnærmingen slik:\n", + "\n", + "```{admonition} Rektangelmetoden (høyretilnærming)\n", + "Det bestemte integralet til en funksjon $f(x)$ fra $x = a$ til $x = b$ kan tilnærmes ved arealet til $n$ rektangler med bredden $h = \\frac{b-a}{n}$:\n", + "\n", + "$$\\int_a^b f(x) \\ \\mathrm{d}x \\approx h \\sum_{k=1}^{n} f(x_{k+1})$$\n", + "```\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Implementer algoritmen for høyretilnærmingen som en Python-funksjon. Test og sammenlikn med venstretilnærmingen på integralet $\\int_2^8 f(x) = x^2 - 2x + 4 \\ dx$. \n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "def rektangelmetoden_høyre(f, a, b, n):\n", + " A = 0.0\t\t\t\t\t\t\t \n", + " h = (b-a)/n\n", + " for k in range (n-1):\t\n", + " A = A + f(a + (k+1)*h)*h\n", + " return A\n", + "```\n", + "````\n", + "\n", + "Den beste tilnærmingen med rektangler får vi med midtpunktstilnærmingen:\n", + "\n", + "```{admonition} Rektangelmetoden (midtpunktstilnærming)\n", + "Det bestemte integralet til en funksjon $f(x)$ fra $x = a$ til $x = b$ kan tilnærmes ved arealet til $n$ rektangler med bredden $h = \\frac{b-a}{n}$:\n", + "\n", + "$$\\int_a^b f(x) \\ \\mathrm{d}x \\approx h \\sum_{k=1}^{n} f(x_{k+1})$$\n", + "```\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Implementer algoritmen for høyretilnærmingen som en Python-funksjon. Test og sammenlikn med venstretilnærmingen på integralet $\\int_2^8 f(x) = x^2 - 2x + 4 \\ dx$. \n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "def rektangelmetoden_midt(f, a, b, n):\n", + " A = 0.0\t\t\t\t\t\t\t \n", + " h = (b-a)/n\n", + " for k in range (n):\t\n", + " A = A + f(a + (1+2*k)*(h/2))*h\n", + " return A\n", + "```\n", + "````\n", + "\n", + "Dersom vi har funksjoner med stor stor stigning eller minking ($|f'(x) >> 0|$), trenger vi mange rektangler for å få et godt resultat. Dette kan gi langsomme programmer dersom integrasjonen må gjentas flere ganger. Vi skal derfor nå se på noen forbedringer av rektangelmetoden." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Trapesmetoden\n", + "\n", + "Vi kan legge merke til at toppstykket i et rektangel er ei rett, horisontal linje. Ei slik linje kan representeres som et polynom av nullte grad, $f(x) = ax^0 = a$, der $a$ er et reellt tall. La oss se på mulighetene for å bytte ut dette toppstykket med et polynom av første grad, $f(x) = ax^1 = ax$. Da får vi \\textit{trapeser} istedenfor rektangler. En algoritme for dette er litt mindre intuitiv og litt mer jobb å utlede, men vi spanderer på oss det. La oss ta utgangspunktet i trapesmetoden illustrert med ett trapes i intervallet $[a, b] = [2, 12]$ på $f(x) = cos(x) + 2$:\n", + "\n", + "\n", + "\n", + "La oss utlede en algoritme for trapesmetoden. Vi tar utgangspunkt i at arealet av et trapes er gitt ved følgende formel:\n", + "\n", + "$$A_{trapes} = \\frac{side 1+side 2}{2}\\cdot h$$\n", + "\n", + "De to sidene $x_1$ og $x_2$ er gitt ved henholdsvis $f(a)$ og $f(b)$. Høyden i trapeset blir stykket langs hele x-aksen, altså $b-a$. Arealet blir derfor:\n", + "\n", + "$$A = \\frac{f(a) + f(b)}{2}\\cdot(b-a)$$\n", + "\n", + "La oss nå utvide til $n$ trapeser. Da blir høyden av hvert trapes $h = (x_1+x_2)/n$, noe som gir dette arealet for hvert $i$-te trapes:\n", + "\n", + "$$A_i = \\frac{f(x_i) + f(x_i)}{2}\\cdot h$$\n", + "\n", + "Summen blir da slik for $n$ trapeser:\n", + "\n", + "$$\\frac{f(a)+f(a+h)}{2}h + \\frac{f(a+h)+f(a+2h)}{2}h + \\frac{f(a+2h)+f(a+3h)}{2}h + ... + \\frac{f(a+ih)+f(b)}{2}h$$\n", + "\n", + "Vi multipliserer så alle ledd med $h$ og dividerer dem på 2. Dette setter vi utenfor uttrykket:\n", + "\n", + "$$\\frac{h}{2}\\cdot (f(a)+f(a+h)+f(a+h)+f(a+2h)+f(a+2h)+ ... + f(a+ih) + f(b))$$\n", + "\n", + "Trekker vi sammen like ledd, får vi:\n", + "\n", + "$$\\frac{h}{2}\\cdot (f(a)+2f(a+h)+2f(a+2h)+2f(a+3h)+ ... + 2f(a+ih) + f(b))$$\n", + "\n", + "Siden det bare er $f(a)$ og $f(b)$ som ikke er multiplisert med 2, kan vi forenkle:\n", + "\n", + "$$h\\left(\\frac{f(a)+f(b)}{2} + (f(a+h)+f(a+2h)+f(a+3h)+ ... + f(a+ih))\\right)$$\n", + "\n", + "Den siste samlingen av ledd kan vi skrive som en sum. Da får vi trapesmetoden:\n", + "\n", + "\n", + "```{admonition} Trapesmetoden\n", + "Det bestemte integralet til en funksjon $f(x)$ fra $x = a$ til $x = b$ kan tilnærmes ved arealet til $n$ trapeser med bredden $h = \\frac{b-a}{n}$:\n", + "\n", + "$$\\int_a^b f(x) dx \\approx h\\left( \\frac{f(a)+f(b)}{2} + \\sum_{i=1}^{n-1} f(x_i) \\right)$$\n", + "```\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Implementer trapesmetoden og test den på funksjonene $f(x) = x^3 + 2x$ og $f(x) = \\sqrt(x)$ i intervallet $[2,4]$. Sammenlikn med resultatene du får fra rektangelmetoden (gjerne flere av dem!) med samme antall geometriske figurer. \n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "def trapesmetoden(f, a, b, n):\n", + " h = (b-a)/n\n", + " A = (f(a) + f(b))/2.0\n", + " for k in range(1, n):\n", + " A = A + f(a + k*h)\n", + " return A*h\n", + "```\n", + "````\n", + "\n", + "Dersom vi øker antallet trapeser, blir naturlig nok også tilnærmingen bedre, som vi kan se av denne figuren:\n", + "\n", + "" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Simpsons metode\n", + "Vi har nå sett på to tilnærminger til integralet som bruker henholdsvis nullte- og førstegradspolynomer som toppstykke på de geometriske figurene som vi beregner arealet av. For å få en enda bedre tilnærming, spesielt til oscillerende funksjoner, kan vi bruke et toppstykke av et polynom med høyere grad enn 1. Alle disse metodene kan utledes ved hjelp av interpolasjon, men vi skal ikke gjøre det her. Her nøyer vi oss med å vise og implementere algoritmen for tredjegradstilnærmingen. Denne algoritmen kalles _Simpsons metode_:\n", + "\n", + "```{admonition} Trapesmetoden\n", + "Det bestemte integralet til en funksjon $f(x)$ fra $x = a$ til $x = b$ kan tilnærmes med $n$ geometriske figurer, der $n$ er et partall:\n", + "\n", + "$$\\int_a^b f(x) dx \\approx \\frac{h}{3} \\left( f(a) + f(b) + 2\\sum_{k = 1}^{\\frac{n}{2} - 1} f(x_{2k}) + 4\\sum_{k=1}^{\\frac{n}{2}} f(x_{2k-1}) \\right)$$\n", + "```\n", + "\n", + "Metoden kan implementeres slik:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "def simpsons(f, a, b, n):\n", + " h = (b-a)/n\n", + " total = f(a) + f(b)\n", + " for k in range(1,n,2):\n", + " A += 4 * f(a + k*h)\n", + " for k in range(2,n,2):\n", + " A += 2*f(a + k*h)\n", + " return A*h/3" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Oppgave\n", + ":class: tip\n", + "Studer koden ovenfor og prøv å finne igjen leddene i definisjonen av Simpsons metode.\n", + "```\n", + "\n", + "Metodene vi har sett på, bygger på samme prinsipp, nemlig tilnærming av arealet under grafen ved hjelp av geometriske figurer med rektangelbase og et polynom av grad $n$ som toppstykke. Siden prinsippet er det samme, kaller vi dem en _familie_ av metoder (hyggelig, ikke sant?). Denne familien heter _Newton-Cotes_. Det vil si at for eksempel trapesregelen kalles en Newton-Cotes-metode av første grad, mens Simpsons metode er en Newton-Cotes-metode av andre grad. Det finnes mange andre metoder og familier innenfor numerisk integrasjon, men disse lar vi ligge foreløpig." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Bruk av biblioteker for å integrere\n", + "Vi vender tilbake til scipy-biblioteket, som også inneholder metoder for numerisk integrasjon. Vi kan bruke biblioteket slik:" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Trapesmetoden: 151.2501565629694\n", + "Simpsons metode: 151.25000015671972\n", + "Gauss kvadratur: (151.25, 1.6959623319719519e-12)\n" + ] + } + ], + "source": [ + "from scipy import integrate\n", + "import numpy as np\n", + "\n", + "def f(x):\n", + " return x**3 - 1\n", + "\n", + "n = 1000\n", + "x = np.linspace(0,5,n)\n", + "y = f(x)\n", + "\n", + "# Integrasjon\n", + "trapes = integrate.trapz(y,x) # Trenger arrayer som parameter\n", + "simpsons = integrate.simps(y,x) # Trenger arrayer som parameter\n", + "gauss_kvadratur = integrate.quad(f,0,5) # Trenger funksjon som parameter\n", + "print(\"Trapesmetoden:\",trapes)\n", + "print(\"Simpsons metode:\",simpsons)\n", + "print(\"Gauss kvadratur:\",gauss_kvadratur) #Skriver ut svar og absolutt feil med Gauss kvadratur, en metode vi ikke har sett på" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Studer koden ovenfor. Hvordan fungerer de ulike funksjonene? Test gjerne ut funksjonene selv.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Oppgaver\n", + "\n", + "```{admonition} Oppgave 1\n", + ":class: tip\n", + "Løs puslespillet nedenfor. Programmet skal definere rektangelmetoden som en Python-funksjon.\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "IFrame('https://parsons.herokuapp.com/puzzle/e6f9400da6d54c1389d6a1f7489eca36', width=1000, height=550)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "\n", + "```{admonition} Oppgave 2\n", + ":class: tip\n", + "Implementer algoritmen for rektangelmetoden som en Python-funksjon. Test metoden på integralet \n", + "\n", + "$$\\int_2^8 f(x) = x^2 - 2x + 4 \\ dx$$\n", + "```\n", + "\n", + "```{admonition} Oppgave 3\n", + ":class: tip\n", + "Implementer trapesmetoden og ulike tilnærminger for rektangelmetoden som Python-funksjoner. Gjør en feilanalyse av metodene og sammenlikn svarene du får på integralet\n", + "\n", + "$$\\int_2^8 f(x) = x^2 - 2x + 4 \\ dx$$\n", + "```\n", + "\n", + "```{admonition} Oppgave 4\n", + ":class: tip\n", + "Utled rektangelmetoden ved hjelp av definisjonen av integralet og en figur.\n", + "```\n", + "\n", + "```{admonition} Oppgave 5\n", + ":class: tip\n", + "Utled trapesformelen med utgangspunkt i definisjon av det bestemte integralet og formelen for arealet av et trapes. Bruk gjerne en figur.\n", + "```\n", + "\n", + "```{admonition} Oppgave 6\n", + ":class: tip\n", + "En _sannsynlighetsfordeling_ er en matematisk beskrivelse av hvor sannsynlig det er at ulike utfall vil skje. Det finnes mange forskjellige sannsynlighetsfordelinger. I denne oppgava skal vi se på en fordeling $f(x)$ som kalles en _standard normalfordeling_. Den er definert ved:\n", + "\n", + "$$f(x) = \\frac{1}{\\sqrt{2\\pi}}\\cdot e^{-\\frac{x^2}{2}}$$\n", + "\n", + "Skriv et program som bruker trapes- eller rektangelmetoden for å integrere $f(x)$ i området mellom $a = -k\\cdot\\sigma = -k$ og $b = k\\cdot\\sigma = k$ for $k \\in {1, 2, 3}$ og skriver ut resultatene. Du kan sette $\\sigma = 1$.\n", + "\n", + "For å forsikre deg om at du bruker en grei verdi for $n$, kan du se om resultatene blir omtrent lik 0.68, 0.95 og 0.997 for henholdsvis $k \\in {1, 2, 3}$. \n", + "```\n", + "\n", + "```{admonition} Oppgave 7*\n", + ":class: tip\n", + "Noen funksjoner oppfører seg trøblete ved at de går mot minus eller pluss uendelig, eller ved at funksjonen varierer svært mye mot en bestemt verdi. La oss her ta denne funksjonen:\n", + "\n", + "$$f(x) = \\sin\\left(\\frac{1}{x}\\right)$$\n", + "\n", + "Funksjonen oppfører seg turbulent like ved 0. Plott funksjonen med \\(D_f = [-5, 0) \\cup (0,5]\\) og studer grafen. Prøv å derivere og integrere med ulike metoder i punkter et stykke fra 0 og deretter punkter nær 0. Sammenlikn ulike metoder med den analytiske løsninga og kommenter resultatene.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Videoer\n", + "Bruk videoene nedenfor som en innføring eller en reptisjon til numerisk integrasjon.\n", + "\n", + "````{tab-set}\n", + "```{tab-item} Integrasjon\n", + "\n", + "```\n", + "\n", + "```{tab-item} Ulike metoder\n", + "\n", + "```\n", + "````" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema4_algoritmer/likninger.ipynb b/_sources/docs/tema4_algoritmer/likninger.ipynb new file mode 100644 index 00000000..97390f3e --- /dev/null +++ b/_sources/docs/tema4_algoritmer/likninger.ipynb @@ -0,0 +1,651 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Likninger og nullpunkter\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med denne delen av emnet, skal du kunne:\n", + "1. forklare den teoretisk bakgrunnen for halveringsmetoden og Newtons metode\n", + "2. implementere halveringsmetoden og Newtons metode\n", + "3. drøfte feil og begrensninger ved metodene\n", + "4. bruke metodene til å finne nullpunkter og løse likninger\n", + "```\n", + "\n", + "## Likninger\n", + "Å finne nullpunktene til en funksjon er det samme som å løse en likning $f(x) = 0$. Dersom vi for eksempel ønsker å løse en likning $x^4 + 3x = 2x^2 - 10$, kan vi løse denne ved å finne nullpunktet til funksjonen $f(x) = x^4 + 3x - 2x^2 + 10$. Vi kan si at vi formulerer likningen som et nullpunktsproblem.\n", + "\n", + "Likninger kan løses med mange spesialiserte løsningsmetoder og algebraiske \"triks\", for eksempel kjenner vi en løsningsformel for andregradslikninger:\n", + "\n", + "$$x = \\frac{-b \\pm \\sqrt{b^2 - 4ac}}{2a}$$\n", + "\n", + "Denne funksjonen kan kun brukes til å løse andregradslikninger. Det kreves andre funksjoner for å løse likninger av tredje og fjerde grad, og likninger av femte grad og over er ikke analytisk løsbare. Når vi løser likninger numerisk på en datamaskin, bruker vi derimot generelle metoder som i prinsippet kan brukes på alle typer likninger.\n", + "\n", + "Det finnes mange ulike måter å løse slike likninger på, og hver av metodene har sine styrker og svakheter. To metoder som er basert på relativt enkle prinsipper, er halveringsmetoden og Newtons metode. Vi skal se på implementering av disse metodene. I tillegg ser vi litt på styrker og svakheter ved metodene. Til slutt ser vi hvordan vi kan løse likninger ved å bruke ferdige algoritmer som finnes i scipy-biblioteket.\n", + "\n", + "## Praktiske anvendelser\n", + "\n", + "Det finnes flere praktiske anvendelser med likninger. Hvis vi for eksempel skal finne ut hvor to funksjoner skjærer hverandre, kan vi løse likningen $f(x) = g(x)$ som et nullpunktsproblem: $f(x) - g(x) = 0$. Disse funksjonene kan representere mange ulike ting.\n", + "\n", + "La oss for eksempel si at vi har to uttrykk som for eksempel beskriver konsentrasjon til to produkter over tid:\n", + "\n", + "$$c_1(t) = e^{-t} + t + 5$$\n", + "\n", + "$$c_2(t) = \\ln(0.006t + 1) + t^{0.3} + 10$$\n", + "\n", + "For å finne ut ved hvilken tid de to produktene har lik konsentrasjon, kan vi løse likningen $c_1(t) = c_2(t)$. Formulert som et nullpunktsproblem får vi:\n", + "\n", + "$$e^{-t} + t + 5 - \\ln(0.006t + 1) - t^{0.3} - 10 = 0$$\n", + "\n", + "Dette er en likning som ikke er analytisk løsbar. Her skal vi se på metoder for å finne nullpunktene til funksjoner. Dette er en strategi som også kan brukes til å løse likninger." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualisere løsningen\n", + "Før vi løser likninger, kan det være lurt å visualisere funksjonene som representerer likningen. For eksempel kan vi plotte funksjonen $f(t) = e^{-t} + t + 5 - \\ln(0.006t + 1) - t^{0.3} - 10$ og se hvor den skjærer _x_-aksen:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "t = np.linspace(0,10,1000)\n", + "y = np.exp(-t) + t + 5 - np.log(0.006*t + 1) - t**0.3 - 10\n", + "\n", + "plt.plot(t,y)\n", + "plt.axhline(y = 0, color = \"red\") # x-akse\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi ser at grafen skjærer _x_-aksen i omtrent $x \\approx 6.5$. Vi kan også plotte $c_1(t) = e^{-t} + t + 5$ og $c_2(t) = \\ln(0.006t + 1) + t^{0.3} + 10$ i samme koordinatsystem for å se hvor de skjærer hverandre. Vi ser at dette gir samme estimat for _x_." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXAAAAD4CAYAAAD1jb0+AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Z1A+gAAAACXBIWXMAAAsTAAALEwEAmpwYAAAjxElEQVR4nO3deXhU5d3/8fcdspGQkLAkrCEg+76EXa2itbhSlyq2WkUttn0quG/VwvNo69bHurW1/ur6aEEEVMS9osWKG5iENUDYl5AEQvZ1MvfvjzPUgGAgmZmTyXxe1zXXzJyZzPkOy4fDfZ9zf421FhERCT0RbhcgIiJNowAXEQlRCnARkRClABcRCVEKcBGREBUZzJ116tTJpqenB3OXIiIhb9WqVfuttZ2P3B7UAE9PT2flypXB3KWISMgzxuw42nYNoYiIhCgFuIhIiFKAi4iEKAW4iEiIUoCLiIQoBbiISIhSgIuIhCgFuIhIAJVU1TF3yTrKquv8/tkKcBGRAPl6exHnPP4pL3+xg6+2Ffn984N6JaaISDjw1Ht5clkuTy7bTI/kOBb+ahIjeyb5fT8KcBERP9p9sJIb52excsdBLhrVnf+eNoSE2KiA7EsBLiLiJ0tX7+WuxWuwFh67bCQ/HtU9oPtTgIuINFNlrYe5S9axYOVuRvZM4onpo0jrGBfw/SrARUSaYe2eEmbNy2TbgQp+c3pfZp/Zj6g2wTk/RAEuItIEXq/l2X9v4+H3c+gYH8Mr141n0kmdglqDAlxE5AQVlFVzy4JsPt28n7MGp/LQxcNJjo8Oeh0KcBGRE/BxTgG3vpZNeY2H+388lJ+NT8MY40otCnARkeNQ46nnwXdzeP6z7QzsksD8mRPol5rgak0KcBGRRuQWlHHDvCw25JVy9aR07jx7ILFRbdwuSwEuInIs1lrmfbWL/1m6jrjoSJ67OoMpA1PdLus/FOAiIkdRXFnLnYvW8N66fZzctxOPXjqClMRYt8s6jAJcROQIX2w9wE2vZlFYVsNdZw/kF6f0ISLCnYnK76MAFxHxqav38sRHm3nq41zSO8az+NeTGN4jye2yjkkBLiIC7CqqZNb8TDJ3FvOTMT2Ye8EQ4mNadkS27OpERILgzaw93PP6WgCeuHwUF4zo5nJFx0cBLiJhq7zGw5w317Hom92M6ZXMY5eNpGeHwC9C5S8KcBEJS9m7ipk9P5OdRZXMOqMfs6b0JTJIi1D5S6PVGmOeM8YUGGPWHuW1W4wx1hgT3BVcRESayOu1PP2vLVz81xXUerzMnzmRm3/YP+TCG47vCPwF4CngpYYbjTE9gbOAnf4vS0TE//JLq7l5QRaf5R7g7KFdePCi4bSPC0y3nGBoNMCttcuNMelHeelPwO3Am/4uSkTE3/65Pp/bFmZTXeflwYuGcdnYnq4tQuUvTRoDN8ZMA/ZYa7Mb+wUwxswEZgKkpaU1ZXciIk1WXVfPA+9s4MXPdzC4ayJPXD6Kvint3C7LL044wI0xccDdOMMnjbLWPgM8A5CRkWFPdH8iIk21Kb+MG/6Rycb8Mq49uTe3Tx1ATKT7i1D5S1OOwE8CegOHjr57AN8YY8ZZa/f5szgRkaaw1vLylzu5f+l6EmIjeWHGWE4bkOJ2WX53wgFurV0D/OdXwhizHciw1u73Y10iIk1SVFHLHYtW8+H6fH7QvzN//MkIOifEuF1WQDQa4MaYecBpQCdjzG5gjrX22UAXJiJyolZs2c9Nr2ZRVFHLPecO4prJvVvkIlT+cjxnoVzeyOvpfqtGRKQJ6uq9/OnDTfz1X1vo3SmeZ68ay9Du7d0uK+B0JaaIhLQdByqYNT+L7F3FTB/bk9+dP5i46PCItvD4liLSKr2euZt731hHhIG//Gw05wzr6nZJQaUAF5GQU1Zdx71vrOWNrL2MS+/An6aPpHtSW7fLCjoFuIiElG92HmT2/Ez2HKzipjP785spfWnTiicqv48CXERCQr1vEapHP9xEl8RYFlw/kYz0Dm6X5SoFuIi0ePtKqrnp1Sw+33qA84Z35fcXDqN929BdhMpfFOAi0qK9v24fdyxaTa3HyyOXDOeSMT1CfhEqf1GAi0iLVFVbz/1vr+eVL3cyrHt7Hp8+kj6dW8ciVP6iABeRFmdDXimz5mWyuaCc60/twy1nDSA6MvQaLgSaAlxEWgxrLS+u2M4f3s2hfdso/u/acZzSr7PbZbVYCnARaREOlNdw+8LVfJRTwJSBKTx8yXA6tWudi1D5iwJcRFz37837uXlBFsVVdcw9fzBXTUrXROVxUICLiGtqPV7+94ON/G35VvqmtOPFa8YxqGui22WFDAW4iLhi2/4KZs3LZM2eEn42Po17zh1M2+jW0y0nGBTgIhJU1loWrtrNnCXriI6M4OkrxjB1aBe3ywpJCnARCZqSqjrueWMtb2XvZXzvDjw2fSRd24ffIlT+ogAXkaBYtaOIWfOy2FdazW0/GsAvf3BS2C5C5S8KcBEJqHqv5c8f5/L4R5vplhTLa7+cyOi0ZLfLahUU4CISMHuKq7hpfhZfbS9i2shu3PfjoSTGahEqf1GAi0hAvLsmjzsWrabea3n00hFcNLqH2yW1OgpwEfGryloP9y1dz7yvdjGiZxJPTB9Jr47xbpfVKinARcRv1u0tYda8TLbur+BXp53EzT/sT1QbLUIVKApwEWk2ay3Pfbadh97NISkuileuHc+kvp3cLqvVU4CLSLMUltVw28JsPtlYyJmDUnn4kuF0iI92u6ywoAAXkSb716ZCblmQTVl1HfdNG8IVE3ppEaogUoCLyAmr8dTzyHsb+fu/tzEgNYFXrhvPgC4JbpcVdhTgInJCthSWM2teJuv2lvLzib24+5xBxEZpESo3KMBF5LhYa1mwchdzl6wnNiqCv/88gzMHp7pdVlhTgItIo0oq67jr9dW8s2Yfk/t25NFLR5KaGOt2WWFPAS4i3+urbUXcOD+TgrIa7jx7IDNP6UOEFqFqERTgInJUnnovT3y0mac+ziWtQxyLfjWJET2T3C5LGlCAi8h37CqqZPb8TL7ZWcwlY3ow94IhtItRXLQ0+h0RkcO8mbWHe15fC8ATl4/ighHdXK5IjkUBLiIAlNd4+N2ba1n8zR7G9ErmsctG0rNDnNtlyfdQgIsIWbuKmT0/0xk6OaMfN0zpS6QWoWrxGg1wY8xzwHlAgbV2qG/bI8D5QC2wBZhhrS0OYJ0iEgBer+Xp5Vt49INNpCTEMH/mRMb17uB2WXKcjucI/AXgKeClBts+BO6y1nqMMQ8BdwF3+L88EQmUfSXV3LwgixVbDnDusK784cJhtI9Tt5yjqvdAXQXUlENtBdSWNXhc7twae372I9BzrF/LajTArbXLjTHpR2z7oMHTL4BL/FqViATUB+v2cfui1dTUeXn44uH8JKNH61qEylsPNWXf3mrLoabUCdSGIfyf542EsKfq+PcdFQfR7SA6HmLaOY/jOkGE/5cb8McY+DXAq8d60RgzE5gJkJaW5ofdiUhTVdXW8/t31vPyFzsZ2j2Rx6eP4qTO7dwuy+H1+o5yDwXvodAtPzyMDwvlY2yrqzy+fZo234Zsw9CNS/tuCEe3O/p7Gz6Pjg9IUB9LswLcGPNbwAO8cqz3WGufAZ4ByMjIsM3Zn4g03Ya8UmbNy2RzQTkzT+3DrWcNIDrSDxOVnhqoLnXCtqa0QfiWHSWAjxbK5d+GL8cRERFREJNw+K1dCnTo893tMQm+4E1sELbx326PjIEQ/p9HkwPcGHM1zuTmGdZaBbNIC2Wt5cUV2/nDuzm0bxvF/107jlP6dXZe9NQ6gVpd4rsv/fb5fx6XQk3JsV+rr2m8CBPhC9REX6AmQGwStO/x3e0xhwI3ocG2BrfImID+eoWSJgW4MWYqcDvwA2vtcf5fRUT8ylvvC9OSowSwE7RVZUV8vXEHnUsOsLhdPQOSLFHvlcEbvvd7qhvfT1Q8xCY6oRqbCHEdIbn34dti2n/7PKbdd0M5qm1IH+m2VMdzGuE84DSgkzFmNzAH56yTGOBD38THF9baXwawTpHWqb4Oqoqhuvjb++oSqDp4lG2H3lfi3NeUHscOYhhg44hJTKZ9ckdMTCLE9jp68MYmQmz7Bq/5bm10uUhLdTxnoVx+lM3PBqAWkdDkqYWqIid0q4p9R8TFxwjmI7Y1NtkW2RbaJjnDDW2TILEHpAw5fFts+8OCtzYygadW5POXzwvonZLEE5ePYlDXxMB8d3GV/mkVOcTr9YXrQedWWeQEc+WhcC46Ylux87i2/Ps/Nzrh8MDt0KdB+CY1COGjbDvB8d4theXMnp/J2j2lXDnhJH57rrrltGYKcGmdPLVQuR8qD/huh4L34HfD+FBYVxeD9R7980yEL1iTIa4DJHSF1CHO87YdIC7ZeXxYCCcHbQiiYbecmKgInrlyDGcN6RLw/Yq7FOASGmornUCu8IVyxf4Gz/dDxYHDX/++8eHodg1CtwO07+mEctsOvvvkIx77gjmiZa4NUlJZx92vr+HtNXlMOsnpltOlvbrlhAMFuLijvg4qCqE8H8p990cNaF8wH2usOCIK4js5V7rFd4SkXoc/j+vknDVxKKDbJkNkdHC/awA17JZzx9SBXH+quuWEEwW4+I+33gneigJfMBd8eztyW1XR0T8jMtYXvr5bpwG+QO7YIJgbPI9JDMvT0zz1Xp5YlstTyzarW04YU4BL4zy1UL4PyvZB6V7nvmwvlOX7gtkXzpUHjj6GHBXnXCnXLhU69oVek33PUyDet71dZyeco+PDMpBPRMNuOReP7sF/T1O3nHCl3/VwZq0TumV5UJrn3JflHR7SpXnOEMaR2kT7gjcVktKgR4YvjFO+Dev4zs59TAtZa6MVWJK9l98uXgPA49NHMm1kd5crEjcpwFuz6lIo2e277WrweDeU7nZCur72iB8yTvAmdIHE7tB9DCR08z3v5px9kdDVGVPWkXLQlNd4mPPmOhZ9s5vRaUk8Pn2UuuWIAjxkeb3O0fJ/gnkXFB8R0jUlh/9MRKQTyu17QtpEJ4gTfeF8KKQTukAbrQndkmT7uuXsLKpk1hn9mKVuOeKjAG/Jaivg4A44uB0ObvPdH7rt+O4iQm2TncWBkntB+mTncfuevlsPZ2gjiEtdSvN4vZa/Ld/K/36wUd1y5KgU4G6rKYcDuc5t/+Zvg7pomzNB2FB0AnRIh84Dof9USE53TptL6ukcWWusudVo2C3nnGFdeODC4eqWI9+hAA8Gb70zxLE/Fw5sdoL6wGbnedneBm80viPodOj/I+c+OR069HZWf2ubrHHnMPDBun3csWg11XVeHrp4GJdm9Gxd3XLEbxTg/mStMy6dvx4K1vnu18P+TYcv2xnbHjr2gz4/cE6r69TPed6hD0TpCrpwVV1Xz+/f3sD/fbGDId0SeeLyFtQtR1okBXhTeWogfx3kZX0b1PnrnPU0DknoCimDofep0Kn/t0Ed30lH0nKYnH2l3PAPp1vOL07pza0/GkBMpOYr5PspwI+Hp9YJ6L2ZTmDvzXRC21vnvB6TCCmDYMiFzgJHKYOc4I7ThJN8P2stL32+g9+/s4HE2CheumYcp/bv7HZZEiIU4EdTWQQ7v4BdXzj3ezO/PV86Ngm6jYRJv4Fuo6DrCGciUUfUcoIOlNdw28LVLMsp4PQBnXnkJyPo1E7twuT4KcDBWb9j6yewbbkT2Ps3OtvbRDshPf566DbaeZycrrCWZvt0cyE3L8impKqOuecP5qpJ6ZqolBMWngHuqYFdX8KWZc4tL9vZHtMe0sbDiMucC126jdakovhVrcfLHz/YyDPLt9IvpR0vXTNO3XKkycInwGsrYPOHsOEt2PQ+1JY5Vyb2HA9T7oGTpkDXkbrQRQJma2E5s3zdcn42Po17zh1M22j9eZOma90BXu+B3A8h6xXY/E/wVDlrQg/5MQw4G9JPcZq3igSQtZbXVu5mzpJ1xERF8Lcrx/AjdcsRP2idAV60DVY+B9nznasZ41Ng9JUw6AJnaERdtiVISqp83XJW5zGxT0f+dJm65Yj/tK4k270KVjwBG5Y4PQz7T4VRV0DfM7VAkwTd19uLuHF+Fvml1dw+dQDXn3oSbdQtR/yodQR44Sb451zY+LZzlePk2TDuekjs6nZlEoY89V6eXJbLk8s207NDHAt/NYmR6pYjARDaAV5XBR/dB18+7XR9mXKvc8pfTILblUmY2lVUyY2vZrFqx0EuGt2d/5k2VN1yJGBC909W3mpYOMNZxW/MDOdMkvhOblclYeyt7L3c/foasOqWI8ERmgGe8w4sus4ZLvn5m9DnNLcrkjBWXuNh7pJ1LFy1m1FpSTyhbjkSJKEX4Js+gFevcC5hv3ye00FGxCWrdxcza56vW86Uvsw6o5+65UjQhFaAF26EBT+HLsPgqiUa6xbXeL2WZz7dyh/f30jnhBjm/WIC4/t0dLssCTOhE+BeL7z+S4hqCz9doPAW1+SXOt1yPss9wNlDu/DgReqWI+4InQDfsAT2fgMXPgMJqW5XI2Hqw/X53L4wm+o6Lw9eNIzLxqpbjrgndAJ81fNOW7Fhl7hdiYShht1yBnd1uuX0TVG3HHFXaAR4TTnsWAHjZmqxKQm6DXmlzJrndMu59uTe3D5V3XKkZQiNAN+zymmo0Od0tyuRMOL1Wp5fsZ2H3s2hfZy65UjLExoBXnnAuU/s5m4dEjYKy2q49bVs/rWpkDMGpvDwJcPpqG450sKERoDXlDn3OvNEgmBZTj63vbaa8hoP900bwhUTemmiUlqkRgPcGPMccB5QYK0d6tvWAXgVSAe2A5daaw8GrMpDAa61uyWAquvqeeCdDbz4+Q4Gdklg3swJ9E/VQYO0XMdzydgLwNQjtt0JfGSt7Qd85HseOIcCPFqz/hIYOftKmfbUZ7z4+Q6umdybN/5rssJbWrxGj8CttcuNMelHbJ4GnOZ7/CLwCXCHPws7TE2ZE946A0X8zFrLCyu288C7OSTGRvHCjLGcNiDF7bJEjktTx8BTrbV5vsf7gGNeWWOMmQnMBEhLS2va3uI7Oh3hRfyosKyG2xZm88nGQqb4Jio7aaJSQoix1jb+JucIfGmDMfBia21Sg9cPWmuTG/ucjIwMu3LlyqZXK+InH+cUcNvCbMqqPfz23EFcqYlKacGMMaustRlHbm/qEXi+MaartTbPGNMVKGheeSLBUV1Xz4Pv5vDCiu0M7JLAP36hiUoJXU0N8CXAVcCDvvs3/VaRSIBs3FfG7PmZ5OwrY8bkdO6YOpDYKM2rSOg6ntMI5+FMWHYyxuwG5uAE9wJjzLXADuDSQBYp0hzWWl76fAe/f2cDibGRPD9jLKdrolJageM5C+XyY7x0hp9rEfG7/eU13L5wNctyCjh9QGcevmQEnRM0USmtQ2hciSnSBP/aVMgtC7Ipra5j7vmDuWpSuiYqpVVRgEurU11Xz8PvbeS5z7bRP7UdL183joFddBWvtD4KcGlVNueXccM8Z6Lyqom9uOucQZqolFZLAS6tgrWWl7/Ywf1vb6BdTCTPXZ3BlIHq3CStmwJcQt6B8hruWLSaf24o4Af9O/PIT4aTkhDrdlkiAacAl5C2fFMht7yWTUllHb87bzBXT0onIkITlRIeFOASkmo8zkTls//eRr+Udrx0zTgGddVEpYQXBbiEnM35Zcyan8WGvFJ+PrEXd2uiUsKUAlxChrWWV77cyX1L1xMfE8mzV2VwxiBNVEr4UoBLSCiqqOWORav5cH0+p/bvzB81USmiAJeWb/mmQm59LZviyjruPW8wMzRRKQIowKUFq66r56H3cnj+s+30S2nHCzPGMbibJipFDlGAS4u0Ia+UG+dnsTG/jKsnpXPn2Vr6VeRICnBpUbxey3OfbePh9zbSPk49KkW+jwJcWox9JdXc+lo2/87dzw8Hp/LgRcPoqB6VIsekAJcW4d01edz1+hpq6rw8cNEwpo/tqaVfRRqhABdXldd4mLtkHQtX7WZEj/Y8Nn0UvTvFu12WSEhQgItrVu04yE2vZrH7YCU3TOnLrDP6EdUmwu2yREKGAlyCzlPv5clluTz1cS5d28fy6vUTGZvewe2yREKOAlyCavv+Cm58NYusXcVcNLo7cy8YQmJslNtliYQkBbgEhbWW11buZu5b64iMMDz101GcN7yb22WJhDQFuATcwYpa7lq8hvfW7WNin47876Uj6JbU1u2yREKeAlwC6tPNTmf4g5W13H3OQK47uY/WMRHxEwW4BETDzvB9U9rx/IyxDOnW3u2yRFoVBbj4Xc4+Zx2TnH1ax0QkkBTg4jcN1zFJbBvF8zPGcrrWMREJGAW4+MWe4ipuey2bFVsOcOagVB66WOuYiASaAlyaxVrLG1l7+N2b6/B6LQ9dPIxLM7SOiUgwKMClyQ5W1HLPG2t5e00eGb2SefTSkaR1jHO7LJGwoQCXJvlkYwG3L1zNwcpabp86gOtPPYk2Oj1QJKgU4HJCKms9/OGdDbz8xU4GpCbo9EARFynA5bhl7jzIzQuy2X6ggl+c0ptbzhqg0wNFXKQAl0bV1Xt58qPN/PmTLXRJjGXeLyYwoU9Ht8sSCXsKcPleuQVl3PRqNmv2lHDx6B7MuWCwVg8UaSEU4HJUXq/lxc+38+C7OcRFt+HpK0YzdWhXt8sSkQaaFeDGmJuA6wALrAFmWGur/VGYuCevpIpbX8vms9wDTBmYwoMXDyMlIdbtskTkCE0OcGNMd2AWMNhaW2WMWQBMB17wU20SZNZalmTv5d431uLxWv5w4TAuH6eLckRaquYOoUQCbY0xdUAcsLf5JYkbDpTXcM8ba3l37T5GpyXx6KUjSVdzYZEWrckBbq3dY4z5I7ATqAI+sNZ+cOT7jDEzgZkAaWlpTd2dBNB7a/P47etrKav2cPvUAcw8pQ+Rai4s0uI1+W+pMSYZmAb0BroB8caYK458n7X2GWtthrU2o3Pnzk2vVPyuuLKW2fMz+eXL39A1KZa3bjiZX5/WV+EtEiKaM4RyJrDNWlsIYIxZDEwCXvZHYRJYy3LyuXPRGooqarnpzP78+vSTiFJwi4SU5gT4TmCCMSYOZwjlDGClX6qSgCmtruO+t9bz2qrdDEhN4LmrxzK0uy6FFwlFzRkD/9IYsxD4BvAAmcAz/ipM/G/5pkLuWLSa/NJqfn3aScw+sx8xkboUXiRUNessFGvtHGCOn2qRACmvcRag+seXO+nTOZ5Fv5rEqLRkt8sSkWbSlZit3BdbD3Dbwmx2H6zSAlQirYwCvJWqrPXwyPsbef6z7fTqGMeC6ycyNr2D22WJiB8pwFuhFbn7uWPxanYVVfHzib248+yBxEXrt1qktdHf6laktLqOB97JYd5XO0nvGMerMycwXsu+irRaCvBWYllOPncvXktBWTUzT+3DTWf2p220xrpFWjMFeIg7WFHLfUvXszhzD/1T2/H0lZMZ2TPJ7bJEJAgU4CHs3TV53PvmWoor65g1pS//NaWvzusWCSMK8BBUWFbD7950Vg4c2j2Rl64Zz+BuiW6XJSJBpgAPIdZaFn2zh/vfXk9lbb1WDhQJcwrwELFtfwW/fX0NK7YcYEyvZB66eBh9UxLcLktEXKQAb+FqPV7+9q8tPPlxLjGREdz/46H8dFwaERHqkiMS7hTgLdjX24u4e/EaNheUc+6wrsw5fzApiepNKSIOBXgLVFJZx4PvORfkdE9qy3NXZzBlYKrbZYlIC6MAb0Gstby1Oo//eWs9RRU1XHdyb276YX/iY/TbJCLfpWRoIbYWljP3rfUs31TIsO7teWGGGi2IyPdTgLusstbDnz/O5f8t30ZMZAS/O28wV01Kp40mKUWkEQpwl1hreW/tPu5bup69JdVcNKo7d54zkJQETVKKyPFRgLtga2E5c5as49PN+xnYJYHHpo9iXG+t1S0iJ0YBHkSVtR6eXJbL3z/dSmxkG+acP5grJ/TSlZQi0iQK8CDwei2LM/fwyPs55JfWcPHoHtx59kA6J8S4XZqIhDAFeIB9sfUA97+9nrV7ShnRM4m//Gw0Y3ppuEREmk8BHiDb91fwwLsbeH9dPt3ax/L49JGcP7ybLoEXEb9RgPtZSWUdTy7bzIufbyeqTQS3ntWf607po07wIuJ3CnA/qaz18MKK7Tz9yRbKajxcOqYnt5zVX2uXiEjAKMCbqdbjZf7XO3lyWS6FZTVMGZjCrWcNUIMFEQk4BXgT1Xstb2bt4U//3MSuoirG9e7AX382mox0TVCKSHAowE+Qp97L0tV5PPVxLrkF5QzplsgLM4byg/6dMUYTlCISPArw41Tr8fJG5h7+8kku2w9UMiA1gad+OopzhnbVmSUi4goFeCOq6+p5bdVunv5kC3uKqxjaPZG/XTmGHw5KVXCLiKsU4MeQX1rNS59v5x9f7uRgZR2j05K4/8KhnKahEhFpIRTgR1i7p4Rn/72Npav34vFafjgolWtP7s243h0U3CLSoijAgfIaD0uz9zLv611k7yomProNV0zoxdWT0unVMd7t8kREjipsA9xaS+auYhZ8vYu3svdSUVtPv5R23HveYH6S0YPE2Ci3SxQR+V5hFeDWWtbtLWXp6jyWrt7L7oNVtI1qw3nDuzJ9XBqj05I0TCIiIaPVB3iNp56vthXxycZCluUUsG1/BZERhsl9OzH7jH5MHdqFBB1ti0gIalaAG2OSgL8DQwELXGOt/dwPdTVZdV09a/aUsGrHQb7eVsTnWw9QWVtPdGQE43t3YOapfZg6pAvJ8dFuliki0mzNPQJ/HHjPWnuJMSYaiPNDTY2y1nKwso59JdXklVSRW1DOpvxyNheUsSGvlLp6C0DvTvFcPLoHpw/szIQ+HYmLbvX/4RCRMNLkRDPGtAdOBa4GsNbWArX+Ketwj/9zM29k7aGmrp5qj5fyag+19d7D3pOSEEP/1ASumdybMb2SGdMrmY7t1PFGRFqv5hyS9gYKgeeNMSOAVcBsa21FwzcZY2YCMwHS0tKatKPUxBiGdEskNqoNsVERtIuJIjUxhtTEWFITYzmpczxJcRoSEZHwYqy1TftBYzKAL4DJ1tovjTGPA6XW2nuP9TMZGRl25cqVTatURCRMGWNWWWszjtzenHbou4Hd1tovfc8XAqOb8XkiInICmhzg1tp9wC5jzADfpjOA9X6pSkREGtXc0zJuAF7xnYGyFZjR/JJEROR4NCvArbVZwHfGZUREJPCaMwYuIiIuUoCLiIQoBbiISIhSgIuIhKgmX8jTpJ0ZUwjsaOKPdwL2+7GcUKDvHB70ncNDc75zL2tt5yM3BjXAm8MYs/JoVyK1ZvrO4UHfOTwE4jtrCEVEJEQpwEVEQlQoBfgzbhfgAn3n8KDvHB78/p1DZgxcREQOF0pH4CIi0oACXEQkRIVEgBtjphpjNhpjco0xd7pdT6AZY3oaYz42xqw3xqwzxsx2u6ZgMMa0McZkGmOWul1LMBhjkowxC40xOcaYDcaYiW7XFGjGmJt8f6bXGmPmGWNi3a7J34wxzxljCowxaxts62CM+dAYs9l3n+yPfbX4ADfGtAH+DJwNDAYuN8YMdreqgPMAt1hrBwMTgP8Kg+8MMBvY4HYRQXSoKfhAYASt/LsbY7oDs4AMa+1QoA0w3d2qAuIFYOoR2+4EPrLW9gM+8j1vthYf4MA4INdau9XXOHk+MM3lmgLKWptnrf3G97gM5y92d3erCixjTA/gXODvbtcSDA2agj8LTlNwa22xq0UFRyTQ1hgTCcQBe12ux++stcuBoiM2TwNe9D1+EfixP/YVCgHeHdjV4PluWnmYNWSMSQdGAV828tZQ9xhwO+B1uY5gadgUPNMY83djTLzbRQWStXYP8EdgJ5AHlFhrP3C3qqBJtdbm+R7vA1L98aGhEOBhyxjTDlgE3GitLXW7nkAxxpwHFFhrV7ldSxBF4vSQ/au1dhRQgZ/+W91S+cZ9p+H849UNiDfGXOFuVcFnnXO3/XL+digE+B6gZ4PnPXzbWjVjTBROeL9irV3sdj0BNhm4wBizHWeIbIox5mV3Swq4cGwKfiawzVpbaK2tAxYDk1yuKVjyjTFdAXz3Bf740FAI8K+BfsaY3r7em9OBJS7XFFDGGIMzNrrBWvuo2/UEmrX2LmttD2ttOs7v7zJrbas+MgvTpuA7gQnGmDjfn/EzaOUTtw0sAa7yPb4KeNMfH9rcpsYBZ631GGN+A7yPM2v9nLV2nctlBdpk4EpgjTEmy7ftbmvtO+6VJAEQVk3BrbVfGmMWAt/gnGmVSSu8pN4YMw84DehkjNkNzAEeBBYYY67FWVL7Ur/sS5fSi4iEplAYQhERkaNQgIuIhCgFuIhIiFKAi4iEKAW4iEiIUoCLiIQoBbiISIj6/9k1hxu7phd3AAAAAElFTkSuQmCC\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "t = np.linspace(0,10,1000)\n", + "y1 = np.exp(-t) + t + 5 \n", + "y2 = np.log(0.006*t + 1) + t**0.3 + 10\n", + "\n", + "plt.plot(t,y1)\n", + "plt.plot(t,y2)\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## En enkel metode for å finne nullpunktet\n", + "Nå har vi en viss peiling på hvor nullpunktet befinner seg, som er løsningen på likninga. La oss prøve en veldig enkel metode for å finne dette nullpunktet. Metoden vi viser nå, brukes ikke i særlig grad, fordi den både er langsom og lite robust. Den er derimot ganske intuitiv og fin å starte med. La oss begynne med en pseudokode som beskriver algoritmen:\n", + "\n", + "```{code-block} text\n", + "x = startverdi\n", + "y = f(x)\n", + "dx = steglengde (avstand mellom punktene vi vil sjekke)\n", + "\n", + "gjenta så lenge y*y_forrige > 0: (det vil si inntil produktet er mindre enn 0).\n", + " x_forrige = x\n", + " x = x + dx\n", + "\n", + "nullpunkt = (x+x_forrige)/2\n", + "skriv ut nullpunktet\n", + "```\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Tolk pseudokoden ovenfor og forklar hvordan algoritmen fungerer.\n", + "```\n", + "\n", + "Vi kan illustrere metoden med følgende figur:\n", + "\n", + "\n", + "\n", + "Vi beveger oss altså oppover (eller nedover) grafen ved å gradvis øke _x_-verdiene med en steglengde _dx_. Underveis sjekker vi om funksjonsverdien til de to _x_-verdiene (_x_ og _x + dx_) har motsatt fortegn. Dersom de har det, må nullpunktet ligge mellom de to _x_-verdiene. I figuren ser vi at $f(x_7)$ og $f(x_8)$ har motsatt fortegn, altså ligger nullpunktet mellom disse verdiene et sted. Ofte kan det være lurt å tippe på midtpunktet mellom de to, men her ser vi at det ikke stemmer helt – nullpunktet ligger svært nært $x_7$. Dette kan vi bøte på ved å velge en _dx_ som er mye mindre. Vi har valgt en stor avstand mellom _x_-verdiene i figuren for å gjøre den tydeligere, men du bør velge en _dx_ som er liten nok til å få et godt svar. Hva som er \"liten nok\" _dx_, er avhengig av funksjonen. Dette er en åpenbar svakhet med metoden.\n", + "\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Vi kan implementere algoritmen som nedenfor. Fyll inn det som mangler.\n", + "\n", + "\n", + "```\n", + "\n", + "```{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "\n", + "```\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Diskuter fordeler og svakheter med algoritmen ovenfor.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Halveringsmetoden\n", + "La oss se på en annen metode for å finne nullpunkter og dermed løse likninger. Vi går rett til programkoden:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nullpunktet er x = 1.0\n" + ] + } + ], + "source": [ + "def f(x):\n", + " return 2*x - 2\n", + "\n", + "# Intervallet vi skal lete etter nullpunktet i\n", + "a = -5\n", + "b = 5\n", + "\n", + "m = (a+b)/2 # Regner ut midtpunktet mellom a og b\n", + "\n", + "while f(m) != 0:\n", + " if f(a)*f(m) < 0:\n", + " b = m\n", + " elif f(b)*f(m) < 0:\n", + " a = m\n", + " m = (a+b)/2\n", + "\n", + "print(\"Nullpunktet er x =\", m)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{amonition} Underveisoppgave\n", + ":tip: tip\n", + "Forklar linje for linje hva programmet ovenfor gjør. Tegn en figur som illustrerer hvordan metoden fungerer.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Metoden som er brukt ovenfor, heter _halveringsmetoden_. Halveringsmetoden går ut på å velge et intervall $[a, b]$ der $f(a)$ og $f(b)$ har motsatte fortegn. Vi kan bruke grafen til å vurdere hvilket intervall som egner seg dersom vi plotter den først. Deretter skal vi finne et nytt intervall $[a, b]$ som er mindre, men slik at $f(a)$ og $f(b)$ fortsatt har motsatte fortegn. Det kan vi gjøre ved å finne midten mellom _a_ og _b_. Da får vi et punkt $m = (a + b)/2$, og vi kan finne $f(m)$. \n", + "\n", + "Vi undersøker så om $f(m_1) = 0$. Hvis ikke, evaluerer vi fortegnene til $f(a)$, $f(b)$ og $f(m)$. Dersom $f(a)$ og $f(m)$ har samme fortegn, setter vi det nye intervallet til $[m, b]$ fordi da må $f(m)$ og $f(b)$ ha motsatte fortegn. Motsatt setter vi intervallet til $[a, m]$ dersom $f(b)$ og $f(m)$ har samme fortegn. Prosessen gjentas _n_ ganger til vi har at $f(m_n) \\approx 0$. Figuren nedenfor illustrerer metoden med to trinn\n", + "\n", + "\n", + "\n", + "Algoritmen kan mer generelt beskrives slik:\n", + "\n", + "```{admonition} Halveringsmetoden\n", + "La _f_ være en kontinuerlig funksjon med motsatte fortegn på funksjonsverdiene $f(a)$ og $f(b)$ i intervallet $[a,b]$. Da kan nullpunktene finnes slik:\n", + "\n", + "1. Finn midtpunktet $c_k$ mellom punktene _a_ og _b_.\n", + "2. Undersøk hvilke av $f(a)$ og $f(b)$ som har motsatt fortegn til $f(c_k)$, og sett det nye intervallet til $[a,c_k]$ eller $[c_k, b]$, der start- og sluttverdien i intervallet skal ha motsatt fortegn.\n", + "3. Gjenta prosessen _n_ ganger til $f(c_k) \\approx 0$.\n", + "```\n", + "\n", + "### Forbedringer av metoden\n", + "Når vi bruker numeriske metoder, får vi sjeldent nøyaktige svar. Derfor er det aldri en god idé å undersøke hvorvidt $f(x) = 0$ helt nøyaktig. Vi bør heller sjekke om $f(x) \\approx 0$. Dette kan vi gjøre med å innføre en _toleranse_ som forteller programmet hvor nærme nullpunktet vi vil være. Dette kan vi gjøre slik:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nullpunktet er x = 0.9999999962747097\n" + ] + } + ], + "source": [ + "def f(x):\n", + " return 2*x - 2\n", + "\n", + "# Intervallet vi skal lete etter nullpunktet i\n", + "a = -5\n", + "b = 5\n", + "toleranse = 1E-8\n", + "\n", + "m = (a+b)/2 # Regner ut midtpunktet mellom a og b\n", + "\n", + "while abs(f(m)) >= toleranse:\n", + " if f(a)*f(m) < 0:\n", + " b = m\n", + " elif f(b)*f(m) < 0:\n", + " a = m\n", + " m = (a+b)/2\n", + "\n", + "print(\"Nullpunktet er x =\", m)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{amonition} Underveisoppgave\n", + ":class: tip\n", + "Hvorfor tar vi absoluttverdien til f(m) når vi skal sjekke om funksjonsverdien er nærmere 0 enn toleransen?\n", + "```\n", + "\n", + "```{amonition} Underveisoppgave\n", + ":class: tip\n", + "Utvid programmet gradvis ved å legge til elementene nedenfor. Programmet skal\n", + "1. printe ut antall runder løkka går (det vil si antall _iterasjoner_).\n", + "2. stoppe dersom et visst antall iterasjoner er nådd.\n", + "3. pakkes inn i en Python-funksjon med _f_, _a_, _b_, _toleranse_ og maks antall iterasjoner som parametre. Funksjonen skal returnere antall iterasjoner og løsningen.\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "Her ser du en mulig løsning der alle punktene ovenfor er lagt inn. I tillegg er det lagt inn en \"docstring\", altså en forklaring på hva funksjonen gjør øverst i funksjonen.\n", + "```{code-block} Python\n", + "def f(x):\n", + " return x**2 - x -2\n", + "\n", + "def halveringsmetoden(f,a,b,tol=1E-10,n=100):\n", + " \"\"\"\n", + " Algoritme som benytter halveringsmetoden til å \n", + " finne nullpunktet til en funksjon f i intervallet [a,b].\n", + " \n", + " Parametre\n", + " ---------\n", + " f: funksjonen\n", + " a: laveste x-verdi i intervallet\n", + " b: høyeste x-verdi i intervallet\n", + " tol: toleranseparameter/feilmargin\n", + " n: maks antall iterasjoner\n", + " \n", + " Returnerer\n", + " ----------\n", + " m: nullpunktet\n", + " i: antall iterasjoner brukt\n", + " \"\"\"\n", + " i = 0\n", + " m = (a+b)/2\t\t\t# Finner første halveringspunkt\n", + " while i < n and abs(f(m)) > tol:\t\n", + " if f(a)*f(m) < 0:\n", + " b = m\n", + " elif f(b)*f(m) < 0:\n", + " a = m\n", + " m = (a+b)/2\n", + " i += 1\n", + " return m, i\n", + "\n", + "m, i = halveringsmetoden(f,-10,10)\n", + "print(\"Nullpunktet er x =\", m, \"og løkka gikk\", i, \"ganger.\")\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "La oss nå se om vi kan benytte halveringsmetoden til å finne ut ved hvilken tid konsentrasjonen er lik i reaksjonene representert ved likningene vi startet med i dette kapitlet. Vi lager en litt enklere utgave av funksjonen i løsningsforslaget ovenfor, men vi legger i tillegg inn en standardverdi for toleransen (her $10^{-8}$). Det betyr at hvis vi ikke spesifiserer toleransen når vi kaller på funksjonen, vil toleransen automatisk settes til dette.\n", + "\n", + "\n", + "\n", + "```{admonition} Oppgave\n", + ":class: tip\n", + "Test og studer programmet ovenfor og forklar hva som skjer. Modifiser programmet slik at det også plotter nullpunktet og funksjonen for å sjekke at løsningen stemmer.\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "Du kan legge til følgende plottekommandoer for å visualisere løsningen:\n", + "\n", + "```{code-block} Python\n", + "import matplotlib.pyplot as plt\n", + "\n", + "x = np.linspace(0,20)\n", + "plt.axhline(y=0)\n", + "plt.plot(x,c(x)) # Plotter funksjonen\n", + "plt.plot(t,c(t), marker=\"o\", color=\"red\") # Plotter nullpunktet\n", + "plt.show()\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Newtons metode\n", + "Det finnes flere måter å løse likninger på. En metode som ofte fungerer godt, og som er mye raskere enn halveringsmetoden, er _Newtons metode_, også kalt _Newton-Raphsons metode_. Den bruker nullpunktet til _tangenten_ i et punkt på en funksjon _f_ som en tilnærming til nullpunktet til _f_. Metoden fungerer slik:\n", + "\n", + "1. Vi velger oss først et startpunkt $x_0$ og regner ut nullpunktet til tangenten i $f(x_0)$. Dette punktet kaller vi $x_1$. \n", + "2. Dersom $x_1$ tilsvarer nullpunktet til funksjonen $f$, sier vi oss ferdige. \n", + "3. Hvis ikke, regner vi ut nullpunktet til en ny tangent i $f(x_1)$ og kaller det $x_2$. \n", + "4. Slik fortsetter vi til vi er så nært nullpunktet til $f$ som vi ønsker. \n", + "\n", + "Figuren nedenfor viser to iterasjoner av metoden med funksjonen $f(x) = x^2 - x - 2$ og startgjett $x_0 = 5$:\n", + "\n", + "\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Bruk figuren ovenfor til å forklare hvorfor Newtons metode konvergerer mot (går mot) nullpunktet raskt.\n", + "```\n", + "\n", + "La oss utlede en algoritme for metoden. Stigningen til en linje kan gis ved:\n", + "\n", + "$$a = \\frac{\\Delta y}{\\Delta x} = \\frac{f(x) - f(x_0)}{x - x_0}$$\n", + "\n", + "Her setter vi $x$ til å være en variabel størrelse og $x_0$ til et fast punkt. Dersom vi gjør om dette til et uttrykk for linja $f(x)$, får vi følgende:\n", + "\n", + "$$f(x) = f(x_0) + a(x - x_0)$$\n", + "\n", + "Dette er likningen for ei linje som går igjennom punktet $(x_0, f(x_0))$. Siden den deriverte i et punkt er lik stigningen i det samme punktet, kan vi skrive:\n", + "\n", + "$$f(x) = f(x_0) + f'(x_0)(x - x_0)$$\n", + "\n", + "som er likningen til en tangent gjennom punktet $(x_0, f(x_0))$ på funksjonen $f$. Vi ønsker å finne nullpunktet til tangenten, og setter derfor $f(x) = 0$:\n", + "\n", + "$$f(x_0) + f'(x_0)(x - x_0) = 0$$\n", + "\n", + "Dersom vi omformer uttrykket slik at den ukjente er nullpunktet $x$, får vi:\n", + "\n", + "$$x = x_0 - \\frac{f(x_0)}{f'(x_0)}$$\n", + "\n", + "Dette er Newtons metode. Siden vi ønsker å gjenta prosessen med å finne nullpunktene til tangentene i $(x_0, f(x_0))$, $(x_1, f(x_1))$, $(x_2, f(x_2))$ og så videre, kan vi formulere algoritmen iterativt:\n", + "\n", + "```{admonition} Newtons metode\n", + "La _f_ være en kontinuerlig, deriverbar funksjon, og la $(x_n, f(x_n))$ være et punkt på funksjonen. Nullpunktet til funksjonen _f_ kan tilnærmes ved nullpunktet til den $n$-te tangenten til funksjonen. Bruk først et startgjett, $x_0$. Finn så nullpunktet $x_{n+1}$ til den $n$-te tangenten ved å bruke nullpunktet, $x_n$, til den forrige tangenten. Gjenta til $f(x_{n+1}) \\approx 0$\n", + "\n", + "$$x_{n+1} = x_n - \\frac{f(x_n)}{f'(x_n)}$$\n", + "```\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Bruk beskrivelsen ovenfor og prøv å implementere Newtons metode før du ser på hvordan vi gjør det nedenfor.\n", + "```\n", + "\n", + "Vi ser at vi trenger den deriverte for å beregne nullpunktet. Det er en åpenbar ulempe ved metoden dersom den deriverte er vanskelig å finne. Vi kan bruke en tilnærming til den deriverte med numeriske metoder, men da får vi enda en feil i beregningen vår. En fordel med Newtons metode er at den konvergerer raskt mot nullpunktet, og at vi kun trenger å oppgi ett punkt som vi skal starte med. Halveringsmetoden konvergerer mer langsomt og trenger to punkter (et intervall) for å fungere. Hastigheten har lite å si når vi gjør så enkle beregninger som her, men dersom vi skal gjøre tunge beregninger, er Newtons metode, og varianter av denne, mye brukt.\n", + "\n", + "Et annet problem med Newtons metode kan oppstå ved lokale ekstremalpunkter. Her kan metoden gi tangenter på hver sin side av for eksempel bunnpunktet, uten at de konvergerer mot nullpunktet. Vi kan for så vidt også få et problem dersom $f'(x) = 0$ et eller annet sted i iterasjonen, fordi vi da må dele på null i algoritmen. Dette oppstår ikke så ofte, men det kan være lurt å tenke på, spesielt med hensyn til startgjettet vårt.\n", + "\n", + "Her er en enkel implementering av Newtons metode uten å pakke metoden inn i en funksjon:" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nullpunktet er x = 1.0\n" + ] + } + ], + "source": [ + "def f(x):\n", + " return 2*x - 2\n", + "\n", + "def fder(x):\n", + " return 2\n", + "\n", + "toleranse = 1E-8\n", + "x = 0 # startgjett\n", + "\n", + "while abs(f(x)) > toleranse:\n", + " x = x - f(x)/fder(x)\n", + "\n", + "print(\"Nullpunktet er x =\", x)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Hvis vi ønsker å lage en funksjon av Newtons metode, kan vi gjøre det slik:" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "def newtons_metode(f,fder,x,tol=1E-10):\n", + " while abs(f(x)) > tol:\n", + " x = x - f(x)/fder(x)\n", + " return x" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Både Newtons metode og halveringsmetoden er grunnleggende, men relativt robuste metoder som kan gi gode nok tilnærminger i mange tilfeller. Newtons metode er en såkalt _Householder-metode_ av første orden. Vi kan få enda bedre tilnærminger ved å bruke metoder av høyere orden $n$. Med $n=2$ får vi en algoritme som kalles _Halleys metode_. Ulempen med slike metoder er at vi trenger den $n-$te-deriverte av funksjonen. Fordelen er at de trenger svært få iterasjoner for å oppnå veldig gode tilnærminger. \n", + "\n", + "Vi kan også benytte numeriske biblioteker som allerede inneholder implementeringer av metodene. Et mye brukt bibliotek for numeriske metoder er _Scipy_ (forkortelse for _Scientific Python_). Her er et eksempel på hvordan vi kan bruke noen metoder for å løse likninger og finne nullpunkter med funksjoner fra dette biblioteket:\n", + "\n", + "" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Returverdien \"root\" viser nullpunktet vi får fra metodene. Metodene gir her \"converged: True\" hvis den finner nullpunktene. Da står det også \"converged\" under \"flag\" hvis alt gikk som det skulle. Hvis vi får \"converged: False\", dukker det opp en beskjed om feilen under \"flag\". \"Iterations\" angir antall ganger løkka går, altså hvor mange ganger metoden gjentas. Dette skiller seg litt fra \"function calls\", som ofte er høyere fordi flere funksjoner blir brukt, blant annet $f(x)$ og $f'(x)$ i Newtons metode, og $f(x)$, $f'(x)$ og $f''(x)$ i Halleys metode.\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Kjør programmet ovenfor og forklar hvordan funksjonen _root\\_scalar_ fungerer. Prøv å endre parametrene og test funksjonen på andre problemer med ulike metoder.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Likningssett\n", + "\n", + "Likningssett kan løses med litt ulike metoder. Broydens metode fungerer stort sett fint for både lineære og ikke-lineære likningssett. Vi må definere likningene på formen $f(x) = 0$, og variablene skal settes som elementer av en array. Nedenfor har vi f.eks. disse likningene:\n", + "\n", + "$$x + 2y + 3z - 6 = 0$$\n", + "\n", + "$$y + 2z - 2 = 0$$ \n", + "\n", + "$$x + 6y + 2z - 5 = 0$$\n", + "\n", + "Vi definerer variablene slik: $x = x[0]$, $y = x[1]$ og $z = x[2]$. Vi må også velge noen punkter vi skal starte i, slik som vi gjør med halveringsmetoden og Newtons metode. Her velger vi vilkårlig startverdiene $(1, 1, 1)$." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[3.00000000e+00 3.55271368e-15 1.00000000e+00]\n" + ] + } + ], + "source": [ + "import scipy.optimize as opt\n", + "\n", + "def fun(x):\n", + " return [x[0] + 2*x[1] + 3*x[2] - 6, \n", + " x[1] + 2*x[2] - 2,\n", + " x[0] + 6*x[1] + 2*x[2] - 5]\n", + "\n", + "løsning = opt.broyden1(fun, [1,1,1])\n", + "print(løsning)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Oppgaver\n", + "\n", + "```{admonition}\n", + ":class: tip\n", + "Løs puslespillet nedenfor slik at funksjonen som benytter halveringsmetoden blir riktig.\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "IFrame('https://parsons.herokuapp.com/puzzle/267d396f643145f6891e3965b75b93b2', width=1000, height=750)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Oppgave 2\n", + ":class: tip\n", + "Bruk halveringsmetoden og vis at løsningene til likningen $x^5 = 5x^3 + 3$ er $x_1 \\approx -2.169, x_2 \\approx -0.894$ og $x_3 \\approx 2.291$. Sammenlikn med \"bisect\" (halveringsmetoden) fra Scipy-biblioteket.\n", + "```\n", + "\n", + "```{admonition} Oppgave 3\n", + ":class: tip\n", + "Implementer Newtons metode som en Python-funksjon med toleranse, maks antall iterasjoner og relevant feilhåndtering dersom vi når maks iterasjoner uten å nå gitt toleranse. Test funksjonen på likningen $x^2 = x^3 - 4$.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Videoer\n", + "\n", + "````{tab-set}\n", + "```{tab-item} Halveringsmetoden\n", + "\n", + "```\n", + "```{tab-item} Newtons metode\n", + "\n", + "```\n", + "````" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema4_algoritmer/likninger_oppgave1.ipynb b/_sources/docs/tema4_algoritmer/likninger_oppgave1.ipynb new file mode 100644 index 00000000..7df6072b --- /dev/null +++ b/_sources/docs/tema4_algoritmer/likninger_oppgave1.ipynb @@ -0,0 +1,69 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "af18522a", + "metadata": {}, + "source": [ + "# Numerisk løsing av likninger (oppgave)\n", + "Gå sammen i grupper på ca. fire personer og diskuter oppgavene nedenfor.\n", + "\n", + "## Oppgave 1\n", + "a) Diskuter følgende spørsmål parvis i gruppa:\n", + "1.\tHva er en likning?\n", + "2.\tHva betyr det å løse en likning?\n", + "3.\tHva er felles for alle nullpunkter?\n", + "\n", + "b) Se på grafen til funksjonen f(x) nedenfor. Du kjenner ikke funksjonsuttrykket til denne grafen. Hvilke av følgende intervaller finnes nullpunktet i?\n", + "\n", + "[-1, 0.5], [-1, 2], [0, 1], [0.5, 1], [1, 2], [-1, 2]\n", + "\n", + "![graf](https://github.com/andreasdh/NAT3000/blob/master/docs/tema4_numeriske_metoder/bilder/graf1.png?raw=true)\n", + "\n", + "c) Hva er forskjellen mellom funksjonsverdien til funksjonen i randpunktene på de intervallene som inneholder nullpunktene og de som ikke gjør det? Er det noen systematisk sammenheng her?\n", + "\n", + "d) Ta utgangspunkt i intervallet [0, 2]. Hvordan kan du justere dette intervallet systematisk for å komme nærmere og nærmere nullpunktet? Prøv å anvende generaliseringen om funksjonsverdiene ovenfor.\n", + "\n", + "e) Prøv å formulere en enkel systematisk algoritme for å finne nullpunktet gitt et intervall.\n", + "\n", + "f) Dere får utdelt noen grafer. En på gruppa får se grafene. Denne personen kan kun oppgi funksjonsverdier, mens de andre kan teste algoritmen dere lagde ovenfor ved å systematisk oppgi ulike x-verdier. Fungerte metoden på alle grafene?" + ] + }, + { + "cell_type": "markdown", + "id": "69c9cbbc", + "metadata": {}, + "source": [ + "## Oppgave 2\n", + "Følgende funksjon blei gitt på eksamen i 2009:\n", + "\n", + "$$f(x)=2\\ln⁡\\left((x^4+4)-\\frac{1}{2}x\\right) - 5$$\n", + "\n", + "a) Prøv å løse likninga $f(x) = 0$ for hånd. Hvor langt kommer du med det? Dette kaller vi analytisk løsning av likninger, og vi ender opp med et eksakt svar hvis vi får det til.\n", + "\n", + "b) Tegn grafen for funksjonen ovenfor og bruk metoden dere formulerte i oppgave 1 til å finne en tilnærma løsning. Dette kaller vi numerisk løsning av likninger." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/docs/tema4_algoritmer/numeriske_biblioteker.ipynb b/_sources/docs/tema4_algoritmer/numeriske_biblioteker.ipynb new file mode 100644 index 00000000..a587dc84 --- /dev/null +++ b/_sources/docs/tema4_algoritmer/numeriske_biblioteker.ipynb @@ -0,0 +1,236 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Numeriske biblioteker\n", + "\n", + "Det finnes mange ferdige biblioteker i Python som vi kan bruke til å gjøre numeriske beregner. Vi har tidligere sett på hvordan vi kan implementere algoritmer selv. Dette gjorde vi for å forstå algoritmene og hva som ligger til grunn for dem. Men når vi først forstår hva de gjør og begrensninger og forutsetninger for dem, kan vi i mange tilfeller bruke algoritmer fra veletablerte biblioteker. Her ser du noen muligheter." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 1. Løse likninger" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " converged: True\n", + " flag: 'converged'\n", + " function_calls: 44\n", + " iterations: 42\n", + " root: 1.9999999999993179\n", + "-----------------------------------------\n", + " converged: True\n", + " flag: 'converged'\n", + " function_calls: 14\n", + " iterations: 7\n", + " root: 2.0\n" + ] + } + ], + "source": [ + "from scipy.optimize import root_scalar\n", + "\n", + "def f(x):\n", + " return x**2 - 4\n", + "\n", + "def dfder(x):\n", + " return 2*x\n", + "\n", + "# Halveringsmetoden\n", + "nullpunkt_halvering = root_scalar(f,method=\"bisect\",bracket=[0,5])\n", + "nullpunkt_newton = root_scalar(f,method=\"newton\",fprime=dfder,x0=10)\n", + "print(nullpunkt_halvering)\n", + "print(\"-----------------------------------------\")\n", + "print(nullpunkt_newton)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Likningssett" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Likningssett kan løses med litt ulike metoder. Broydens metode fungerer stort sett fint for både lineære og ikke-lineære likningssett. Vi må definere likningene på formen $f(x) = 0$, og variablene skal settes som elementer av en array. Nedenfor har vi f.eks. disse likningene:\n", + "\n", + "$$x + 2y + 3z - 6 = 0$$\n", + "\n", + "$$y + 2z - 2 = 0$$ \n", + "\n", + "$$x + 6y + 2z - 5 = 0$$\n", + "\n", + "Vi definerer variablene slik: $x = x[0]$, $y = x[1]$ og $z = x[2]$. Vi må også velge noen punkter vi skal starte i, slik som vi gjør med halveringsmetoden og Newtons metode. Her velger vi vilkårlig punktet $(1, 1, 1)$." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[3.00000000e+00 3.55271368e-15 1.00000000e+00]\n" + ] + } + ], + "source": [ + "import scipy.optimize as opt\n", + "\n", + "def fun(x):\n", + " return [x[0] + 2*x[1] + 3*x[2] - 6, \n", + " x[1] + 2*x[2] - 2,\n", + " x[0] + 6*x[1] + 2*x[2] - 5]\n", + "\n", + "løsning = opt.broyden1(fun, [1,1,1])\n", + "print(løsning)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 2. Derivere" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2.0\n" + ] + } + ], + "source": [ + "from scipy.misc import derivative\n", + "import numpy as np\n", + "\n", + "derivert = derivative(f, 1)\n", + "print(derivert)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 3. Integrere" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "-5.333331997329328\n", + "-5.333333331995993\n" + ] + } + ], + "source": [ + "from scipy import integrate\n", + "\n", + "x = np.linspace(0,2,1000)\n", + "y = f(x)\n", + "\n", + "trapes = integrate.trapz(y,x)\n", + "print(trapes)\n", + "\n", + "simpsons = integrate.simps(y,x)\n", + "print(simpsons)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 4. Løse difflikninger" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "from scipy.integrate import solve_ivp\n", + "\n", + "def dy_dt(t, y):\n", + " return t - y\n", + "\n", + "a = 0\n", + "b = 4\n", + "t = np.linspace(a,b,1000)\n", + "y0 = 1\n", + "y_int = solve_ivp(dy_dt, [a,b], [1], t_eval=t)\n", + "\n", + "plt.xlabel(\"t\")\n", + "plt.ylabel(\"y\")\n", + "plt.plot(y_int.t, y_int.y[0])\n", + "\n", + "plt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema4_algoritmer/symbolsk_utregning.ipynb b/_sources/docs/tema4_algoritmer/symbolsk_utregning.ipynb new file mode 100644 index 00000000..21c6ea12 --- /dev/null +++ b/_sources/docs/tema4_algoritmer/symbolsk_utregning.ipynb @@ -0,0 +1,560 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Symbolsk utregning (CAS)\n", + "## Bruk av CAS (Computer Algebra System) i Python\n", + "Her er en liten oversikt over hva du kan gjøre i CAS-verktøyet i Python. Det stjernemerkede stoffet er for spesielt interesserte, og er ikke pensum." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "from sympy import *\n", + "\n", + "#x = symbols(\"x\")\n", + "#y = symbols(\"y\")\n", + "\n", + "x, y = symbols(\"x y\") #Definerer symboler/variabler\n", + "uttrykk = x + 2*y*x #Definerer et uttrykk" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Faktorisering" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle x \\left(2 y + 1\\right)$" + ], + "text/plain": [ + "x*(2*y + 1)" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "factor(uttrykk)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Løse likninger\n", + "\n", + "$x^2 - 4 = 0$. Løs med hensyn på x." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/plain": [ + "[-2, 2]" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "solve(x**2 - 4, x) # Kan utelate x her, fordi vi ikke har andre bokstaver i uttrykket" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Løse likningssett\n", + "Vi kan løse likningssett som er lineære ved å bruke funksjonen _solve_, og ikke-lineære likningssett ved å erstatte _solve_ med _nonlinsolve_. Prinsippet er det samme." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/plain": [ + "{x: 3, y: 0, z: 1}" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from sympy import *\n", + "\n", + "x,y,z = symbols('x,y,z')\n", + "likning1 = Eq(x + 2*y + 3*z, 6)\n", + "likning2 = Eq(y + 2*z, 2)\n", + "likning3 = Eq(x + 6*y + 2*z, 5) \n", + "resultat = solve([likning1, likning2, likning3],(x,y,z)) # Bruker nonlinsolve ved ikke-lineære likninger\n", + "resultat" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Derivere\n", + "Deriver $x + 2yx$ med hensyn på x." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle 2 y + 1$" + ], + "text/plain": [ + "2*y + 1" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "diff(uttrykk, x)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Difflikninger\n", + "\n", + "$y'' - y = e^x$." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle y{\\left(t \\right)} = C_{2} e^{- t} + \\left(C_{1} + \\frac{t}{2}\\right) e^{t}$" + ], + "text/plain": [ + "Eq(y(t), C2*exp(-t) + (C1 + t/2)*exp(t))" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "y = Function('y')\n", + "t = symbols('t')\n", + "difflikning = Eq(y(t).diff(t, t) - y(t), exp(t))\n", + "dsolve(difflikning, y(t))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Integrere (for elever med R2)*\n", + "\n", + "$$\\int 4x^3 dx$$" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle x^{4}$" + ], + "text/plain": [ + "x**4" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "uttrykk2 = 4*x**3\n", + "integrate(uttrykk2, x)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Bestemt integrasjon:\n", + "\n", + "$$\\int_{-\\infty}^{\\infty} cos(x^2) dx$$" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle \\frac{\\sqrt{2} \\sqrt{\\pi}}{2}$" + ], + "text/plain": [ + "sqrt(2)*sqrt(pi)/2" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "integrate(cos(x**2), (x, -oo, oo))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Vektorregning (R1 og R2)*\n", + "\n", + "For vektorregning anbefaler jeg å bruke innebygde numpy-funksjoner (ikke CAS):" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "\n", + "vektor1 = np.array([1,-1,0])\n", + "vektor2 = np.array([2,2,3])\n", + "\n", + "prikkprodukt = np.dot(vektor1, vektor2) # Skalarprodukt\n", + "kryssprodukt = np.cross(vektor1, vektor2) # Vektorprodukt" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Det er også mulig å bruke CAS-verktøyet i sympy:" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle (3)\\mathbf{\\hat{i}_{N}} + (5)\\mathbf{\\hat{j}_{N}} + (5)\\mathbf{\\hat{k}_{N}}$" + ], + "text/plain": [ + "3*N.i + 5*N.j + 5*N.k" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from sympy.vector import CoordSys3D\n", + "N = CoordSys3D('N') # Lager et kartesisk koordinatsystem å plassere vektorene i\n", + "# N.i, N.j og N.k er basisvektorer i det kartesiske rommet\n", + "\n", + "# Lager vektoren v = [2, 3, 4]\n", + "v = 2*N.i + 3*N.j + 4*N.k\n", + "# Lager vektoren v = [1, 2, 1]\n", + "u = N.i + 2*N.j + N.k\n", + "\n", + "# Enkel vektoraddisjon\n", + "u + v" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle (-5)\\mathbf{\\hat{i}_{N}} + (2)\\mathbf{\\hat{j}_{N}} + \\mathbf{\\hat{k}_{N}}$" + ], + "text/plain": [ + "(-5)*N.i + 2*N.j + N.k" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "v.cross(u) # Vektorprodukt" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle 12$" + ], + "text/plain": [ + "12" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "v.dot(u) # Skalarprodukt" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Matematikk for spesielt interesserte**\n", + "\n", + "Nedenfor ser du eksempler på hvordan en kan gjøre litt lineær algebra og finne Taylor-rekker. Dette er ekstrastoff for de som allerede har litt kjennskap til matematikk på universitetsnivå." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Matriseregning** (lineær algebra)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle \\left[\\begin{matrix}1 & 2\\\\3 & 4\\end{matrix}\\right]$" + ], + "text/plain": [ + "Matrix([\n", + "[1, 2],\n", + "[3, 4]])" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "matrise = Matrix([[1,2],[3,4]])\n", + "matrise" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle \\left[\\begin{matrix}1 & 2\\end{matrix}\\right]$" + ], + "text/plain": [ + "Matrix([[1, 2]])" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "matrise.row(0)\n", + "# matrise.col(0)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle -2$" + ], + "text/plain": [ + "-2" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "matrise.T # Transponer matrisen\n", + "matrise.rref() # Radreduser\n", + "matrise.eigenvals() # Egenverdier\n", + "matrise.eigenvects() # Egenvektorer\n", + "matrise.diagonalize() # Diagonalisering\n", + "matrise.det() # Determinanten" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Du kan også bruke numpy-biblioteket til lineær algebra:" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [], + "source": [ + "m1 = np.array([[1,2],[3,4]])\n", + "m2 = np.array([[3,3],[5,5]])\n", + "egenverdi = np.linalg.eig(m1) # Egenverdier og egenvektorer\n", + "norm = np.linalg.norm(m1)\n", + "determinant = np.linalg.det(m1)\n", + "invers = np.linalg.inv(m1)\n", + "likning = np.linalg.solve(m1, m2)\n", + "likning2 = np.linalg.tensorsolve(m1, m2[:,0]) # Løser ax = b for x" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Taylor-rekker**" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle 1 + x + \\frac{x^{2}}{2} + \\frac{x^{3}}{6} + \\frac{x^{4}}{24} + O\\left(x^{5}\\right)$" + ], + "text/plain": [ + "1 + x + x**2/2 + x**3/6 + x**4/24 + O(x**5)" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "funksjon = exp(x)\n", + "funksjon.series(x, 0, 5)" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle 1 + \\frac{x^{2}}{2} + \\frac{5 x^{4}}{24} + \\frac{61 x^{6}}{720} + \\frac{277 x^{8}}{8064} + O\\left(x^{10}\\right)$" + ], + "text/plain": [ + "1 + x**2/2 + 5*x**4/24 + 61*x**6/720 + 277*x**8/8064 + O(x**10)" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "f = 1/cos(x)\n", + "f.series(x, 0, 10)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema5_modellering/differensiallikninger.ipynb b/_sources/docs/tema5_modellering/differensiallikninger.ipynb new file mode 100644 index 00000000..ddfd33a6 --- /dev/null +++ b/_sources/docs/tema5_modellering/differensiallikninger.ipynb @@ -0,0 +1,989 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Differensiallikninger og kontinuerlige modeller\n", + "\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med dette temaet, skal du kunne:\n", + "1. Forklare hva som menes med differensiallikninger, og hvordan slike likninger kan brukes til å modellere ulike systemer.\n", + "2. Forklare og implementere Eulers metode (Forward Euler).\n", + "3. Løse ordinære differensiallikninger med egne Python-funksjoner og funksjoner fra Scipy-biblioteket.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Differensiallikninger\n", + "\n", + "Vi har tidligere sett på modeller som beskriver endringer ved bestemte tidssteg, for eksempel den enkleste modellen for utviklingen i antall smittede ved et influensautbrudd:\n", + "\n", + "$$I_{n+1}=I_n+aI_n$$\n", + "\n", + "Vi kan beskrive modellen ovenfor med ord slik: Antall smittede ved neste tidspunkt er lik antall smittede ved forrige tidspunkt pluss en endring i antall smittede. Endringen er her gitt ved en vekstfaktor ganger antall smittede ved forrige tidspunkt. Det betyr at endringen er proporsjonal med antall smittede. Dette er et eksempel på en _differenslikning_, der vi finner en tallfølge, som for eksempel beskriver antall smittede i en populasjon eller antall gauper i et økosystem. Differenslikninger kan brukes der vi kan nøye oss med å beskrive systemet vårt på _diskrete_, altså bestemte, tider. Men hva hvis vi ønsker å beskrive systemet på ethvert tidspunkt, altså den _momentane endringen_? Da må vi bruke den deriverte. La oss første skrive differenslikningen på en annen form:\n", + "\n", + "$$I_{n+1} - I_n = aI_n$$\n", + "\n", + "$$\\Delta I = aI_n$$\n", + "\n", + "Nå har vi et uttrykk for endringen i systemet. Delta ($\\Delta$) betyr her endring eller forskjell. Dersom denne endringen skjer mellom to tidspunkter som er så nær hverandre som mulig ($\\Delta t$ nærmer seg null), får vi den momentane endringen. Dette skriver vi slik:\n", + "\n", + "$$I'(t) = aI(t)$$\n", + "\n", + "Dette er ikke lenger en differenslikning, for her beskriver vi systemet med en kontinuerlig funksjon, og ikke funksjonsverdier på bestemte tidspunkter. Vi kaller slike likninger for _differensiallikninger_. En differensiallikning (også kalt _difflikning_) er en likning som inneholder den deriverte av en funksjon. Det vil si at differensiallikninger beskriver den momentane endringen i et system, altså endringen på ethvert tidspunkt. Når vi løser en differensiallikning, får vi en funksjon, eller funksjonsverdiene til en funksjon.\n", + "\n", + "Differensiallikninger er svært anvendelige. De brukes til å beskrive endring i alt fra molekyler i en kjemisk reaksjon til bakterier i en petriskål eller bevegelsen til satelitter og planeter. De brukes også til å modellere overføring av informasjon i hjernen, smitteutvikling, økonomisk vekst, inntekt og investeringer, klima, miljø og vær. De fleste difflikninger er ikke løsbare for hånd. Derfor er det svært nyttig å kunne løse dem numerisk.\n", + "\n", + "```{admonition} Differensiallikninger\n", + "En differensiallikning er en likning som inneholder den deriverte av en funksjon. I de fleste praktiske situasjoner beskriver slike likninger sammenhengen mellom endringen, $f'(t)$, og tilstanden, $f(t)$, til et system ved tida $t$.\n", + "```\n", + "Det vil altså si at en difflikning er en sammenheng mellom den deriverte til en funksjon, altså endringen i funksjonen, og funksjonen selv. Når vi løser en difflikning, får vi ikke et uttrykk for $x$, som når vi løser likninger – vi får et uttrykk for $f(x)$. Siden vi som oftest løser difflikninger på datamaskinen, får vi heller ikke et _uttrykk_ for $f(x)$, men vi får funksjons_verdier_.\n", + "\n", + "Siden både endringen og tilstanden i et system er avhengig av hvordan systemet er til å begynne med, trenger vi alltid _initialbetingelser_ (startbetingelser) for å løse difflikninger. For eksempel trenger vi antall smittede ved t = 0 for å kunne regne ut antall smittede ved neste tidssteg. Vi må derfor alltid oppgi initialbetingelser når vi skal simulere et system.\n", + "\n", + "### Eksempler på differensiallikninger\n", + "\n", + "Dersom du møter på differensiallikninger i matematikk, er de ofte satt opp som enkle uttrykk, for eksempel slik:\n", + "\n", + "1. $y' = 1$\n", + "2. $y' = y$\n", + "3. $y' - 2x = -1$\n", + "\n", + "Dersom likningene betyr noe praktisk, pleier vi å skrive dem litt annerledes. Her er eksempler på differensiallikninger som kan brukes til å beskrive ulike systemer:\n", + "\n", + "1. Bakterievekst: $B'(t) = kB(t)$\n", + "2. CO$_2$-utslipp: $U'(t) = aU(t)\\left(1 - \\frac{U(t)}{b}\\right)$\n", + "3. Fallende ball: $v'(t) = -g - \\frac{kv(t)^2}{m}$\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Studer differensiallikningene ovenfor og forklar med ord hva de beskriver (både overordnet og hvert ledd for seg).\n", + "```\n", + "\n", + "Legg merke til at modellene ikke kan bevises eller utledes. Det er matematiske modeller som vi kan ha en hypotese om at stemmer godt med virkeligheten. Hvis vi for eksempel tror at veksten til bakteriene vil flate ut, justerer vi dette ved å legge til et ledd som gir logistisk vekst. Modellene må så etterprøves ved for eksempel å sammenlikne med reelle data. Modellering er derfor en prosess der vi kontinuerlig sammenlikner modell med virkelighet for å forbedre modellen.\n", + "\n", + "### Newtons 2. lov\n", + "\n", + "Et annet viktig eksempel på en differensiallikning er Newtons 2. lov. Newtons 2. lov er grunnlaget for simuleringer av alt fra satellitt- og planetbaner til molekyler, som vi snart skal se eksempler på. Loven sier at summen ($\\Sigma$) av krefter som virker på et legeme er lik produktet av massen og akselerasjonen til legemet:\n", + "\n", + "$$\\sum F = ma$$\n", + "\n", + "$$a = \\frac{\\sum F}{m}$$\n", + "\n", + "Dersom vi har en modell som beskriver kreftene som virker på et legeme, kan vi derfor regne ut akselerasjonen. Og siden $a(t) = v'(t) = s''(t)$, kan vi formulere Newtons 2. lov som en differensiallikning. Da kan vi løse denne likningen og finne farten og posisjonen til et legeme på en hvilken som helst tid, gitt en startposisjon og en startfart (initialverdier).\n", + "\n", + "$$v'(t) = \\frac{\\sum F}{m}$$\n", + "\n", + "Vi kan til og med formulere dette som en difflikning som inneholder den andrederiverte. Dette kaller vi en _andreordens_ difflikning:\n", + "\n", + "$$s''(t) = \\frac{\\sum F}{m}$$\n", + "\n", + "La oss modellere et enkelt system, for eksempel en fallende kule. I modellen vår ønsker vi å ta hensyn til både gravitasjon og luftmotstand. Da er $\\sum F = - G + L$, dersom vi velger positiv retning oppover. Vi skriver også akselerasjonen som en funksjon, siden den varierer med tida. Da får vi at:\n", + "\n", + "$\\sum F = ma(t)$\n", + "\n", + "$a(t) = \\frac{\\sum F}{m}$\n", + "\n", + "$a(t) = - \\frac{G}{m} + \\frac{L}{m}$\n", + "\n", + "Deretter må vi sette inn modeller for gravitasjonskraften og luftmotstanden. Gravitasjonen på jorda kan enkelt beskrives med modellen $G = mg$, der $m$ er massen i kg og $g \\approx 9.8$ m/s$^2$, som er tyngdeakselerasjonen. En enkel modell for luftmotstand er $L = -kv$, der _k_ er en konstant som varierer med legemets form og massetetthet, og $v$ er farten til legemet. Konstanten $k$ må bestemmes eksperimentelt.\n", + "\n", + "$a(t) = \\frac{mg}{m} - \\frac{kv(t)}{m}$\n", + "\n", + "$v'(t) = g - \\frac{kv(t)}{m}$\n", + "\n", + "Her ser vi at den siste likningen inneholder den deriverte av farten (altså akselerasjonen). Altså er dette en differensiallikning. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Eulers metode\n", + "Vi har altså en startverdi $f(x_0)$ og ønsker å finne $f(x_0 + dx)$, altså neste funksjonsverdi. I tillegg har vi et uttrykk for den deriverte av funksjonen, nemlig differensiallikningen. Du kjenner faktisk allerede til et uttrykk som inneholder en funksjon og dens deriverte, nemlig definisjonen av den deriverte. La oss bruke den til å utlede en metode for å finne $f(x + dx)$. Vi bruker den numeriske definisjonen der vi tilnærmer grenseverdiene med en _dx_ ($\\Delta x$) som er så liten som mulig:\n", + "\n", + "$$f'(x) \\approx \\frac{f(x+dx) - f(x)}{dx}$$\n", + "\n", + "Til å begynne med kjenner vi $f(x)$, altså $f(x_0)$. Dette er initialbetingelsen, for eksempel startkonsentrasjonen $c(t_0)$ i eksempelet ovenfor. Vi kjenner også et uttrykk for den deriverte, nemlig differensiallikningen. I tillegg bestemmer vi selv tidssteget _dx_, men husk at det verken bør være for lite eller for stort. Den eneste ukjente i den numeriske tilnærmingen til den deriverte er altså $f(x+dx)$. Det er jo nettopp $f(x+dx)$ vi prøver å finne, fordi det beskriver tilstanden til systemet ved neste tidssteg. Med litt enkel algebra får vi omformet uttrykket slik at det blir et uttrykk for $f(x+dx)$. Vi ganger først med $dx$ på begge sider:\n", + "\n", + "$$f'(x)\\cdot dx \\approx f(x+dx) - f(x)$$\n", + "\n", + "Deretter får vi $f(x+dx)$ aleine på høyre side og ender opp med følgende likning:\n", + "\n", + "$$f(x+dx) \\approx f(x) + f'(x)\\cdot dx$$\n", + "\n", + "Dette er _Eulers metode_, eller nærmere bestemt _Forward Euler_. Metoden kalles dette fordi den tar utgangspunkt i framoverdifferansen til den deriverte. Den brukes til å løse differensiallikninger, det vil si å _integrere_ den deriverte slik at vi finner funksjonsverdiene. Siden vi ofte har å gjøre med funksjoner som varierer med tid, kaller vi gjerne _dx_ for _dt_.\n", + "\n", + "Eulers metode er en iterativ algoritme. Vi starter derfor med $f(x_0)$ og finner de påfølgende funksjonsverdiene slik:\n", + "\n", + "$$f(x_1) \\approx f(x_0) + f'(x_0)\\cdot \\Delta x$$\n", + "$$f(x_2) \\approx f(x_1) + f'(x_1)\\cdot \\Delta x$$\n", + "$$f(x_3) \\approx f(x_2) + f'(x_2)\\cdot \\Delta x$$\n", + "$$...$$\n", + "\n", + "```{admonition} Eulers metode (Forward Euler)\n", + "Vi kan finne funksjonsverdiene $f(t_{k+1})$ ved å bruke funksjonsverdien $f(t_k)$ og den deriverte av funksjonen ved tida $t_k$, $f'(t_k)$ sammen med en steglengde $dt$ som representerer en liten $\\Delta t$.\n", + "\n", + "$$f(t_{k+1}) = f(t_k) + f'(t_k)\\cdot dt$$\n", + "```\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Implementering\n", + "Vi starter med et enkelt eksempel der vi løser difflikningen $f'(x) = x$ (som er det samme som $y' = x$). Vi gjør det først med en while-løkke der vi appender til lister for å spare på og til slutt plotte verdiene. Stort sett er det sammme framgangsmåte hver gang vi løser en difflikning:\n", + "\n", + "1. Definer initialbetingelser (for eksempel $y_0$).\n", + "2. Definer hvilke verdier vi skal evaluere funksjonen i, altså et intervall $[x_0, x_{slutt}]$. Husk at vi bare kan derivere og integrere numerisk i bestemte _punkter_. Vi får altså ikke funksjoner når vi integrerer en differensiallikning – vi får funksjonsverdier.\n", + "3. Definer en steglengde. Denne bør være \"ganske\" liten, som da vi så på numerisk derivasjon. Som regel er $dx = 1\\cdot 10^{-8}$ en god verdi, men du kan gjerne kjøre med for eksempel $dx = 1\\cdot 10^{-3}$, slik at det ikke skal ta så lang tid å kjøre programmet.\n", + "4. Lag lister eller arrayer og legg initialbetingelser og startverdier inn i disse. Disse trenger vi for å kunne plotte resultatene til slutt. Dersom du bare er interessert i slutt-tilstanden, trenger du ikke dette trinnet.\n", + "5. Lag ei løkke som går igjennom hele det definerte intervallet:\n", + " - Regn ut neste verdi av endringen $f'(x)$, gitt av differensiallikninga vår.\n", + " - Løs difflikninga med Eulers metode (eller en annen metode, når du lærer om det).\n", + " - Oppdater den uavhengige variabelen (_x_, _t_ eller liknende) med tidssteget.\n", + "6. Skriv ut eller visualiser resultatene. " + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "\n", + "y0 = 1 # intitialbetingelse for y\n", + "x0 = 0 # startverdi for x\n", + "x_slutt = 5.0 # sluttverdi for x\n", + "dx = 1E-5 # steglengde\n", + "\n", + "x_liste = [x0] # Legger inn første x-verdi i en liste for å spare på verdiene\n", + "y_liste = [y0] # Legger inn initalbetingelsen for y i en liste for å spare på verdiene\n", + "\n", + "# Disse variablene skal oppdateres i løkka, mens x0 og y0 holdes konstante\n", + "x = x0 \n", + "y = y0\n", + "\n", + "while x < x_slutt:\n", + " yder = x # Difflikningen vi skal løse\n", + " y = y + yder*dx # Eulers metode for å finne neste y-verdi\n", + " x = x + dx # Oppdaterer x-verdien med steglengden\n", + " x_liste.append(x)\n", + " y_liste.append(y)\n", + "\n", + "plt.plot(x_liste,y_liste)\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"y\")\n", + "plt.grid()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "For å rydde opp litt i programmet vårt, kunne vi også definert difflikninga som en funksjon. Dette gjør det litt enklere å finne igjen og endre likningen." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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OTk5WrFihdlRglbPnj31zjvvqEWLFjpw4ICefvpp9e7dW2vXrlVCQoLP81BmztH/rsBtGIbHV+UGfGn06NH66aef9P3335sdJWi1bNlSubm5Onr0qGbPnq0RI0Zo4cKFFBoP2rVrlx544AHNnz9fkZGRZscJWgMHDqz+dfv27dWrVy81bdpU06dP19ixY32ehzJTQ4mJibJarScdhcnPzz/paA0QKO677z7NmzdPixYt8voq86EsIiJCzZo1kyR169ZNK1as0EsvvaQ33njD5GTBIzs7W/n5+eratWv1NpfLpUWLFmnKlClyOByyWq0mJgxOMTExat++vTZv3mzK9+eamRqKiIhQ165dlZmZecL2zMxM9e7d26RUwLkxDEOjR4/Wxx9/rG+//VYZGRlmRwophmHI4XCYHSOoXHrppVq9erVyc3OrP7p166ZbbrlFubm5FBkvcTgcWr9+verXr2/K9+fIzDkYO3ashg8frm7duqlXr16aOnWqdu7cqbvvvtvsaEGlpKREW7ZsqX6cl5en3NxcxcfHq2HDhiYmCx6jRo3SzJkz9cknnyg2Nrb6iGPt2rUVFRVlcrrg8thjj2ngwIFKT09XcXGxZs2apQULFujLL780O1pQiY2NPemar5iYGCUkJHAtmAc99NBDGjx4sBo2bKj8/Hw9/fTTKioq0ogRI0zJQ5k5BzfddJMOHTqkp556Svv27VO7du30+eefq1GjRmZHCypZWVnq27dv9ePj52FHjBiht99+26RUweX47QX69OlzwvZp06Zp5MiRvg8UxA4cOKDhw4dr3759ql27tjp06KAvv/xS/fv3NzsaUGO7d+/W0KFDVVBQoHr16uk3v/mNli5datrPQe4zAwAAAhrXzAAAgIBGmQEAAAGNMgMAAAIaZQYAAAQ0ygwAAAholBkAABDQKDMAACCgUWYAAEBAo8wAAICARpkBAAABjTIDAAACGmUGQEA5ePCgUlJSNGHChOpty5YtU0REhObPn29iMgBmYaFJAAHn888/15AhQ7RkyRK1atVKnTt31qBBgzR58mSzowEwAWUGQEAaNWqUvv76a3Xv3l2rVq3SihUrFBkZaXYsACagzAAISMeOHVO7du20a9cuZWVlqUOHDmZHAmASrpkBEJC2bdumvXv3yu12a8eOHWbHAWAijswACDgVFRXq0aOHOnXqpFatWmnSpElavXq1kpOTzY4GwASUGQAB5+GHH9ZHH32kVatWqVatWurbt69iY2P12WefmR0NgAk4zQQgoCxYsECTJ0/WjBkzFBcXp7CwMM2YMUPff/+9XnvtNbPjATABR2YAAEBA48gMAAAIaJQZAAAQ0CgzAAAgoFFmAABAQKPMAACAgEaZAQAAAY0yAwAAAhplBgAABDTKDAAACGiUGQAAENAoMwAAIKBRZgAAQED7f72vReK/b/O3AAAAAElFTkSuQmCC\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "y0 = 1 # intitialbetingelse for y\n", + "x0 = 0 # startverdi for x\n", + "x_slutt = 5.0 # sluttverdi for x\n", + "dx = 1E-5 # steglengde\n", + "\n", + "x_liste = [x0] # Legger inn første x-verdi i en liste for å spare på verdiene\n", + "y_liste = [y0] # Legger inn initalbetingelsen for y i en liste for å spare på verdiene\n", + "\n", + "# Disse variablene skal oppdateres i løkka, mens x0 og y0 holdes konstante\n", + "x = x0 \n", + "y = y0\n", + "\n", + "# Definerer difflikningen som en funksjon\n", + "def fder(x):\n", + " return x\n", + "\n", + "while x < x_slutt:\n", + " yder = fder(x) # Difflikningen vi skal løse\n", + " y = y + yder*dx # Eulers metode for å finne neste y-verdi\n", + " x = x + dx # Oppdaterer x-verdien med steglengden\n", + " x_liste.append(x)\n", + " y_liste.append(y)\n", + "\n", + "plt.plot(x_liste,y_liste)\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"y\")\n", + "plt.grid()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Modifiser programmet ovenfor slik at du løser difflikningen $f'(x) = \\frac{1}{y+1} - lg(x+2)$. Bruk samme initialbetingelse og løsningsintervall.\n", + "```\n", + "\n", + "````{admonition} Løsningsforslag\n", + ":class: tip, dropdown\n", + "\n", + "Her er det bare å endre funksjonen slik at den representerer den nye difflikninga. Husk å importere tierlogaritmen.\n", + "\n", + "```{code-block} Python\n", + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "y0 = 1 # intitialbetingelse for y\n", + "x0 = 0 # startverdi for x\n", + "x_slutt = 5.0 # sluttverdi for x\n", + "dx = 1E-5 # steglengde\n", + "\n", + "x_liste = [x0] # Legger inn første x-verdi i en liste for å spare på verdiene\n", + "y_liste = [y0] # Legger inn initalbetingelsen for y i en liste for å spare på verdiene\n", + "\n", + "# Disse variablene skal oppdateres i løkka, mens x0 og y0 holdes konstante\n", + "x = x0 \n", + "y = y0\n", + "\n", + "# Definerer difflikningen som en funksjon\n", + "def fder(x):\n", + " return 1/(y+1) - np.log10(x+2)\n", + "\n", + "while x < x_slutt:\n", + " yder = fder(x) # Difflikningen vi skal løse\n", + " y = y + yder*dx # Eulers metode for å finne neste y-verdi\n", + " x = x + dx # Oppdaterer x-verdien med steglengden\n", + " x_liste.append(x)\n", + " y_liste.append(y)\n", + "\n", + "plt.plot(x_liste,y_liste)\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"y\")\n", + "plt.grid()\n", + "plt.show()\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi kan også bruke arrayer istedenfor lister. Dette gir en raskere kode, og kan være en fordel i mange tilfeller. Da appender vi ikke til lister, men bruker indeksering. Vi bruker også gjerne en for-løkke, og da må vi vite hvor mange ganger løkka skal gå. Dette kan vi regne ut ved å ta differansen mellom $x_0$ og $x_{slutt}$, som vi dividerer på steglengden $dx$. Da får vi antall intervaller mellom $x_0$ og $x_{slutt}$ med avstand $dx$. For å finne antall punkter, må vi derfor ta antall intervaller og legge til 1: \n", + "\n", + "$N_{punkter} = \\frac{x_{slutt} - x_0}{dx} + 1$\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "\n", + "Forklar hvorfor antallet punkter _N_ kan regnes ut som ovenfor.\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "# Plotteverdier\n", + "x0 = 0 # startverdi for x\n", + "x_slutt = 5.0 # sluttverdi for x\n", + "dx = 1E-5 # steglengde\n", + "N = int((x_slutt - x0)/dx) + 1 # antall punkter\n", + "\n", + "# Initialbetingelser\n", + "y0 = 1 # intitialbetingelse for y\n", + "\n", + "# Differensiallikningen\n", + "def yder(y,x):\n", + " return x\n", + "\n", + "# Lager arrayer for å spare på verdiene\n", + "x = np.zeros(N)\n", + "y = np.zeros(N)\n", + "y[0] = y0 # Legger inn initalbetingelsen for y\n", + "x[0] = x0\n", + "\n", + "# Eulers metode\n", + "for i in range(N-1):\n", + " y[i+1] = y[i] + yder(y[i],x[i])*dx\n", + " x[i+1] = x[i] + dx\n", + "\n", + "plt.plot(x,y)\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"y\")\n", + "plt.grid()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "\n", + "Forklar programmet ovenfor linje for linje. Modifiser også programmet slik at det løser difflikninga $f'(x) = 1$.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Ulike initialbetingelser\n", + "Dersom vi endrer initialbetingelsene, får vi naturlig nok andre løsninger. Her har vi et program som regner ut og plotter ut " + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Plotteverdier\n", + "x0 = 0 # startverdi for x\n", + "x_slutt = 5.0 # sluttverdi for x\n", + "dx = 1E-3 # steglengde\n", + "N = int((x_slutt - x0)/dx) + 1 # antall punkter\n", + "\n", + "# Initialbetingelser\n", + "y0 = 1 # intitialbetingelse for y\n", + "\n", + "# Differensiallikningen y' = 1\n", + "def yder(y,x):\n", + " return 1 \n", + "\n", + "# Lager arrayer for å spare på verdiene\n", + "x = np.zeros(N)\n", + "y = np.zeros(N)\n", + "x[0] = x0\n", + "\n", + "y_liste = [0, 1, 2, 3]\n", + "for y0 in y_liste:\n", + " y[0] = y0 \n", + " for i in range(N-1):\n", + " y[i+1] = y[i] + yder(y[i],x[i])*dx\n", + " x[i+1] = x[i] + dx\n", + " plt.plot(x,y,label=f\"y0={y0}\")\n", + "plt.grid()\n", + "plt.legend()\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"y\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Det er enkelt å se at funksjonene vi får ovenfor er $y = x + C$, der $C$ avhenger av initialbetingelsene. Vi får derimot ikke selve funksjonsuttrykket som output, men vi får, som nevnt før, _funksjonsverdiene_. Vi kan også løse likningen $y' = y + x$ på samme måte. Den analytiske løsningen for denne likningen er $y = Ce^x - x - 1$. Resultatene blir da slik for de samme initialbetingelsene som ovenfor:" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "def yder(y,x):\n", + " return y + x\n", + "\n", + "y_liste = [0, 1, 2, 3]\n", + "for y0 in y_liste:\n", + " y[0] = y0 \n", + " for i in range(N-1):\n", + " y[i+1] = y[i] + yder(y[i],x[i])*dx\n", + " x[i+1] = x[i] + dx\n", + " plt.plot(x,y,label=f\"y0={y0}\")\n", + "plt.grid()\n", + "plt.legend()\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"y\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Løs differensiallikninga $y' + y^3 = \\sin(x)$ med Eulers metode fra $x = 0$ til $x = 10$. Bruk initialbetingelsen $y(0) = 0$. Vær nøye med hvordan du definerer funksjonen.\n", + "```\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Kontinuerlige modeller\n", + "\n", + "Modeller som er basert på differensiallikninger, er kontinuerlige. Det betyr at de har funksjonsverdier for alle verdier av _x_ (eller tilsvarende variabler). Nå skal det sies at når vi simulerer med utgangspunkt i kontinuerlige matematiske modeller på en datamaskin, blir resultatene ikke helt kontinuerlig. Det er fordi datamaskinen ikke kan operere med uendelig mange eller uendelig små (eller store) verdier. Vi sier at vi _diskretiserer_ problemet når vi benytter en numerisk algoritme for å løse det. Men dersom stegene er tilstrekkelig små, er det en god _tilnærming_ til en kontinuerlig løsning.\n", + "\n", + "Vi har allerede sett på diskrete modeller for blant annet CO$_2$-utslipp. Da tok vi utgangspunkt i følgende diskrete modell:\n", + "\n", + "$$u_{n+1} = u_n + au_n$$\n", + "\n", + "som er det samme som:\n", + "\n", + "$$u_{n+1} - u_n = au_n$$\n", + "\n", + "Vi ser at vi på venstresiden har forskjellen i utslipp fra en tid til en annen. Det kan vi skrive som $\\Delta u$, som jo er et uttrykk for (gjennomsnittlig) endring. Da får vi:\n", + "\n", + "$$\\Delta u = au_n$$\n", + "\n", + "Dersom vi ønsker den _momentane_ endringen istedenfor den gjennomsnittlige, kan vi uttrykke dette ved den deriverte:\n", + "\n", + "$$u'(t) = au(t)$$\n", + "\n", + "Dermed har vi en kontinuerlig modell som beskriver den momentane endringen i et system! Vi kan da bruke denne modellen til å finne tilstanden til systemet ved ethvert lite tidssteg _dt_. Da kan vi bruke Eulers metode, som ovenfor. Her er et eksempel på hvordan vi kan løse modellen ovenfor:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt \n", + "\n", + "tid_slutt = 2100 # År etter 1825\n", + "tid = 1825 # Startår\n", + "a = 0.045 # Utslippsrate\n", + "u = 0.01 # Utslipp i 1825 (tonn per innbygger)\n", + "dt = 1E-5\n", + "\n", + "utslipp = [u]\n", + "årstall = [tid]\n", + "\n", + "while tid <= tid_slutt:\n", + " uder = a*u # Differensiallikningen\n", + " u = u + uder*dt # Eulers metode\n", + " tid = tid + dt # Går fram ett tidssteg\n", + " utslipp.append(u)\n", + " årstall.append(tid)\n", + "\n", + "plt.plot(årstall, utslipp)\n", + "plt.title(\"Utslipp av CO$_2$ i Norge\")\n", + "plt.xlabel(\"År\")\n", + "plt.ylabel(\"Tonn CO$_2$ per innbygger\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Hvis vi sammenlikner med den diskrete modellen for det samme systemet, kan vi se at de to modellene ikke gir det samme resultatet. Dette er fordi utslippsraten _a_ ikke har samme enhet. I det diskrete systemet representerte _a_ vekstraten _per uke_, mens i den kontinuerlige modellen gir _a_ den momentane vekstraten. De to parameterne må derfor bestemmes uavhengig av hverandre.\n", + "\n", + "````{admonition} Underveisoppgave\n", + ":class: tip\n", + "Følgende modell kan beskrive størrelsen til en populasjon med bæreevnen _b_, vekstrate _a_ og populasjonsstørrelse _N_:\n", + "\n", + "$$N'(t) = aN(t)\\left(1-\\frac{N(t)}{b}\\right)$$\n", + "\n", + "Tida _t_ er gitt i timer.\n", + "\n", + "1. Lag et program som simulerer utviklingen i en bakteriekoloni med N(t$_0$) = 100, _a_ = 0,005 og en bæreevne på 120 000 bakterier. \n", + "2. Hvilke forutsetninger og begrensninger ligger til grunn for modellen? \n", + "3. Når vil populasjonen nå bæreevnen?\n", + "4. Lag programmet med arrayer istedenfor lister. Husk at _append_ ikke fungerer med arrayer, og at vi må forhåndsdefinere størrelsen til disse arrayene på forhånd. Størrelsen på disse bør være gitt ved (forklar hvorfor!):\n", + "\n", + "```{code-block}\n", + "N = int((tid_slutt-tid_start)/dt) + 1 # Antall punkter\n", + "```\n", + "````\n", + "\n", + "````{admonition} Løsningsforslag (deloppgave 4)\n", + ":class: tip, dropdown\n", + "```{code-block} Python\n", + "import matplotlib.pyplot as plt \n", + "import numpy as np\n", + "\n", + "a = 0.045 # Utslippsrate\n", + "u0 = 0.01 # Utslipp i 1825 (tonn per innbygger)\n", + "\n", + "tid_slutt = 2100 # År etter 1825\n", + "tid_start = 1825 # Startår\n", + "dt = 1E-3 # tidssteg\n", + "N = int((tid_slutt-tid_start)/dt) + 1 # Antall punkter\n", + "\n", + "u = np.zeros(N)\n", + "t = np.zeros(N)\n", + "\n", + "u[0] = u0\n", + "t[0] = tid_start\n", + "\n", + "for i in range(N-1):\n", + " uder = a*u[i] # Differensiallikningen\n", + " u[i+1] = u[i] + uder*dt # Eulers metode\n", + " t[i+1] = t[i] + dt # Går fram ett tidssteg\n", + "\n", + "plt.plot(t, u)\n", + "plt.title(\"Utslipp av CO$_2$ i Norge\")\n", + "plt.xlabel(\"År\")\n", + "plt.ylabel(\"Tonn CO$_2$ per innbygger\")\n", + "plt.show()\n", + "```\n", + "````" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Newtons 2. lov\n", + "\n", + "Vi så at Newtons 2. lov gir oss differensiallikninger når vi omformulerer akselerasjonen som den deriverte av farten.\n", + "\n", + "$$a(t) = v'(t) = s''(t)$$\n", + "\n", + "Vi kan altså få både en førsteordens og en andreordens difflikning ut av Newtons 2. lov. Det betyr også at vi kan finne akselerasjon og fart ut fra strekning ved å derivere, og motsatt finne fart og posisjon fra akselerasjon ved å integrere (løse difflikningen). Vi kan med andre ord skrive Newtons 2. lov slik:\n", + "\n", + "$$\\sum F = ma(t) = mv'(t) = ms''(t)$$\n", + "\n", + "La oss løse Newtons 2. lov for det enkle systemet vi så på tidligere: Når vi slipper ei kule fra en viss høyde, kan vi regne med at to krefter virker på kula, nemlig tyngdekraften og luftmotstand. For en lett ball som faller, kan vi si at summen av krefter er summen av gravitasjonskraften og luftmotstanden i $y$-retning på en graf. Vi definerer positiv retning oppover $y$-aksen.\n", + "\n", + "$$\\sum F = - G + L = ma(t) = mv'(t) = ms''(t)$$\n", + "\n", + "Vi ser at vi nå har den deriverte av hastigheten, som er akselerasjonen. For å kunne løse denne likningen, må vi finne ut hva summen av kreftene er. Du husker kanskje at $G = mg$, og at en mulig modell for luftmotstand er $L = -kv$, der $k$ er en konstant som blant annet er avhengig av legemets form. Da kan vi skrive uttrykket slik:\n", + "\n", + "$$ma(t) = - mg + (- kv(t))$$\n", + "\n", + "$$a(t) = \\frac{- mg - kv(t)}{m} = - g - \\frac{kv(t)}{m}$$\n", + "\n", + "Dette er en førsteordens difflikning der vi har en funksjon $v(t)$, og dens deriverte $a(t)$ (det vil si $v'(t)$). La oss løse denne numerisk:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "# Konstanter\n", + "k = 0.1 # Luftmotstand\n", + "g = 9.81 # Tyngdeakselerasjon i m/s^2\n", + "m = 1 # Masse i kg\n", + "v0 = 0 # Starthastighet i m/s\n", + "s0 = 0 # Startposisjon i m\n", + "\n", + "# Tidsvariabler\n", + "dt = 1E-5 # Tidsintervall i s\n", + "tid_start = 0\n", + "tid_slutt = 10\n", + "N = int((tid_slutt-tid_start)/dt) + 1 # Antall punkter\n", + "\n", + "# Arrayer\n", + "t = np.zeros(N)\n", + "a = np.zeros(N)\n", + "v = np.zeros(N)\n", + "s = np.zeros(N)\n", + "\n", + "# Startverdier\n", + "t[0] = tid_start\n", + "v[0] = v0\n", + "s[0] = s0\n", + "\n", + "for i in range(N-1):\n", + " a[i] = - g - k*v[i]/m\n", + " v[i+1] = v[i] + a[i]*dt\n", + " s[i+1] = s[i] + v[i]*dt + 0.5*a[i]*dt**2\n", + " t[i+1] = t[i] + dt\n", + "\n", + "plt.plot(t,s)\n", + "plt.title('Fallende kule')\n", + "plt.xlabel('Tid (s)')\n", + "plt.ylabel('strekning (m)')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Studer programmet ovenfor og forklar hvordan det fungerer linje for linje. Test programmet med andre modeller for luftmotstand. Vurder de ulike modellene opp mot hverandre.\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## ODE-løsere\n", + "La oss se nå se på hvordan vi kan løse differensiallikninger med funksjoner fra scipy-biblioteket. De differensiallikningene vi har sett på, kaller vi for _ODE-er_ (ordinary differential equations) for å skille dem fra _PDE-er_ (partial differential equations). Vi skal ikke se på partielle differensiallikninger her, men mange av prinsippene for å løse dem er like som for ODE-er. Vi kommer til å bruke ODE som forkortelse videre.\n", + "\n", + "Vi starter med enkle differensiallikninger for å illustrere de grunnleggende prinsippene. En enkel differensiallikning vi kan begynne med, er:\n", + "\n", + "$$y' = t - y$$\n", + "\n", + "Denne kan vi ganske enkelt definere som en funksjon og løse med en annen funksjon som heter _solve\\_ivp_ (\"solve initial value problem\")." + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "from scipy.integrate import solve_ivp\n", + "\n", + "def dy_dt(t, y):\n", + " return t - y\n", + "\n", + "a = 0\n", + "b = 4\n", + "t = np.linspace(a,b,1000)\n", + "y0 = 1\n", + "y_int = solve_ivp(dy_dt, [a,b], [1], t_eval=t)\n", + "\n", + "plt.xlabel(\"t\")\n", + "plt.ylabel(\"y\")\n", + "plt.plot(y_int.t, y_int.y[0])\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi definerer her et sett med t-verdier slik at vi får et intervall å integrere over. Dernest er det viktig å ha en startbetingelse for $y$ (husk: vi trenger den forrige $y$-verdien for å finne den neste). Funksjonen _solve\\_ivp_ er en generell løser for differensiallikninger og tar som første parameter en funksjon av typen $f(t,y)$ – legg merke til rekkefølgen på parameterne. Deretter legger vi inn tidsintervallet som vi skal integrere over. Dette legges inn som en liste.\n", + "\n", + "Etter tidsintervallet legges startbetingelsene inn. Siden _solve\\_ivp_ er en løser som kan løse systemer av differensiallikninger, må vi lage startbetingelsen som en liste. Deretter har vi en del valgfrie parametre. Vi har brukt parameteren _t\\_eval_ her fordi den sier hvilke $t$-verdier vi skal regne ut $y$-verdier for. Hvis vi ikke gjør dette, får vi integralet kun evaluert i noen få punkter. Det kan være greit hvis vi for eksempel bare ønsker sluttverdien, men ikke hvis vi ønsker å plotte resultatene.\n", + "\n", + "Dersom du prøver å printe ut resultatene fra _solve\\_ivp_, får du mye ulik informasjon. Derfor henter vi ut spesifikke _t-_ og _y-_verdier ved å skrive _y_int2.t_, som henter ut tidsverdiene, og _y_int2.y[0]_, som henter ut _y_-verdiene. Legg merke til at $y$ kan inneholde flere elementer ettersom vi kan løse systemer av differensiallikninger. Her må vi eksplisitt be om det første elementet (element 0 med Python-språk), selv om arrayen ikke inneholder flere $y$-verdier.\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Løs differensiallikningen $f'(t) = \\cos(t)$ med $f(t_0) = 0$ med _solve\\_ivp_ fra $t=0$ til $t=\\pi$. Plott den analytiske løsningen $f(t) = \\sin(t)$ i samme koordinatsystem for å sammenlikne.\n", + "```\n", + "\n", + "Algoritmene som brukes i slike biblioteker, er ofte sammensatte algoritmer som benytter seg av flere prinsipper enn en enkelt metode. Som standard benytter _solve\\_ivp_ seg av en blanding av Runge-Kutta 4 og Runge-Kutta 5, kalt RK45. Dette er gode \"go to\"-metoder." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Oppgaver\n", + "\n", + "```{admonition} Oppgave 1\n", + ":class: tip\n", + "Utled Eulers metode og skriv et program for hånd som implementerer denne metoden.\n", + "```\n", + "\n", + "```{admonition} Oppgave 2\n", + ":class: tip\n", + "Løs differensiallikningene nedenfor med Eulers metode (og analytisk hvis du får til). Bruk initialbetingelse $f(0) = 0$, og velg løsningsområde/løsningsintervall selv.\n", + "1. $f'(x) = 1$\n", + "2. $f'(x) = x$\n", + "3. $f'(x) = 4 + 3\\cdot f(x)$\n", + "4. $y' + 4y + 3x = 0$\n", + "5. $xy' + y = 3x^2 + 4x$\n", + "6. $f'(x) = x + y^2$\n", + "```\n", + "\n", + "```{admonition} Oppgave 3\n", + ":class: tip\n", + "Hvorfor må vi ha initialbetingelser for å løse en differensiallikning numerisk?\n", + "```\n", + "\n", + "````{admonition} Oppgave 4\n", + ":class: tip\n", + "Det er alltids fint å ha definert funksjoner i et program -- da kan du gjenbruke dem i andre programmer!\n", + "a. Skriv et program der Eulers metode er definert som en funksjon. Funksjonen skal ta inn som argument _yder_, som antas å være en funksjon av to variable $x$ og $y$. Funksjonen skal også ta inn en initialbetingelse _y0_, startverdien og sluttverdien til _x_ og steglengden _dt_. Funksjonene skal så returnere resultatene, altså lister eller arrayer med verdier av _y_ og _x_. __Tips:__ For at en funksjon skal returnere to verdier, kan du skrive _return x,y_.\n", + "\t\n", + "b. Bruk funksjonen til å løse likninga $y'(x) = -\\dfrac{xy}{x^2+1}$ der $y(0) = 1$ og $x \\in [0,7]$.\n", + "__Tips:__ Funksjonen returnerer to verdier:_y_ og _x_. Du kan hente to eller flere verdier fra en funksjon, ved å gjøre slik:\n", + "\n", + "```{code-block} Python\n", + "x, y = # Her kaller du på funksjonen din med riktige parametre\n", + "```\n", + "Da vil variabelen _x_ settes til å være lik den returnerte verdien for _x_, og variabelen _y_ settes til å være lik den returnerte verdien for _y_. \n", + "\t\n", + "c. Plott resultatet ditt sammen med den analytiske løsninga for å se om funksjonen din er implementert riktig:\n", + "\n", + "$$y(x) = \\frac{1}{\\sqrt{x^2 + 1}}$$\n", + "````\n", + "\n", + "````{admonition} Oppgave 5\n", + ":class: tip\n", + "Programmet under løser likninga $f'(x) = 2f(x)$ der $f(0) = 2$ for $x\\in[0,1]$:\n", + "\n", + "```{code-block} Python\n", + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "N = 1000\n", + "a = 0\n", + "b = 1\n", + "x = np.linspace(a,b,N)\n", + "dx = x[1]-x[0]\n", + "\n", + "fder = np.zeros(N)\n", + "f = np.zeros(N)\n", + "\n", + "f[0] = 2\n", + "for i in range(N-1):\n", + "\tfder[i] = 2*f[i]\n", + "\tf[i+1] = f[i] + dx*fder[i]\n", + "plot(x,f)\n", + "xlabel(\"x\")\n", + "ylabel(\"f(x)\")\n", + "title(\"Plott av f(x)\")\n", + "show()\n", + "```\n", + "````\n", + "\n", + "```{admonition} Oppgave 6\n", + ":class: tip\n", + "Kari begynner med å ha en årsinntekt på $I(0) = 500 000$ kroner og har nylig oppretta en sparekonto. Hun har derfor $S(0) = 0$ kroner i sparekontoen.\n", + "\n", + "Vi velger å prøve ut følgende modeller for forandringen i inntekten hennes $I'(t)$ og sparekontoen hennes $S'(t)$:\n", + "\n", + "$$I'(t) = I(0) \\cdot \\ln(1.006)\\cdot 1.006^t$$\n", + "$$S'(t) = 0.01\\cdot I(t)$$\n", + "\n", + "Lag et program som finner ut hvordan $S(t)$ vil utvikle seg i løpet av 15 år. Visualiser resultatet.\n", + "```\n", + "\n", + "```{admonition} Oppgave 7\n", + ":class: tip\n", + "Lag et program som regner ut posisjon, hastighet og akselerasjon til et legeme som faller. Bruk luftmotstandskoeffisienten 0.1 og masse 1 kg.\n", + "\n", + "a. Benytt først en enkel modell uten luftmotstand, det vil si kun fritt fall.\n", + "\n", + "b. Legg inn luftmotstand og plott i samme koordinatsystem som beregninga uten luftmotstand. Sammenlikn resultatene og kommenter svaret.\n", + "\n", + "c. Varier systematisk massen og luftmotstandskoeffisienten og se hva dette gjør med resultatene.\n", + "```\n", + "\n", + "```{admonition} Oppgave 8\n", + ":class: tip\n", + "Lag et program som modellerer en fiskepopulasjon. Du kan selv bestemme modellen du bruker og initialbetingelsene. Forklar hvorfor du brukte akkurat denne modellen.\n", + "```\n", + "\n", + "```{admonition} Oppgave 9\n", + ":class: tip\n", + "Newtons avkjølingslov forteller oss at temperaturen $T(t)$ etter ei tid $t$ til et objekt i en omgivelse forandrer seg på følgende måte:\n", + "\n", + "$$T(t) = -k(T(t) - T_o)$$\n", + "\n", + "der $k$ er er en konstant som forteller hvor raskt temperaturen forandrer seg og $T_o$ representerer temperaturen til omgivelsen objektet befinner seg i. \n", + "\n", + "a. Et varmeanlegg i en bil påvirker innetemperaturen $T(t)$ i bilen. Temperaturen inni bilen kan uttrykkes ved:\n", + "\n", + "$$T'(t) = -0.16(T(t) - 20)$$\n", + "\n", + "der $T(0) = 7^oC$. \n", + "\t\n", + "Lag et program som bruker Eulers metode til å finne funksjonsverdiene til $T(t)$ for $t \\in [0, 30]$. Plott resultatene.\n", + "\t\n", + "b. Som du kanskje så i deloppgave _a_, tar det fryktelig lang tid før temperaturen i bilen når vanlig romtemperatur som ligger på $20^oC$. Du finner derfor en som prøver å fikse på varmeanlegget billigst mulig. Uheldigvis greier personen å gjøre varmeanlegget verre. Etter noen målinger finner du at temperaturen forandrer seg på følgende måte:\n", + "\n", + "$$T'(t) = -0.16(T(t) - T_o(t))$$\n", + "\n", + "der $T_o(t) = 5\\cdot\\cos\\left(\\frac{\\pi^2}{15}\\cdot t\\right) + 19$\n", + "\n", + "Utvid programmet ditt slik at det plotter bilens temperatur med det (enda mer) ødelagte varmeanlegget. Sammenlikn utfallene.\n", + "```\n", + "\n", + "```{admonition} Oppgave 10\n", + ":class: tip\n", + "Arne skal på familiemiddag og har lovet familien sin å ta med sin smakfulle tilberedelse av en kalkun. Fem timer før middagen kommer han plutselig på middagsavtalen. Uheldigvis bruker han vanligvis fire timer på å kjøre til familien hvis han kjører omtrent 80 km i timen.\n", + "\n", + "Problemet er at kalkunen må være i en ovn på 180$^o$C i tre timer for å bli spiseklar. Han veit at under panseret på bilen kan det bli varmere enn dette. Han bestemmer seg derfor for å prøve å tilberede kalkunen under panseret mens han kjører. \n", + "\n", + "Arne har lagd følgende modell for temperaturen under panseret etter ei tid $t$:\n", + "\n", + "$$T_o(t) = 35\\log(v(t)+1)+0.4v(t)\\sin(2\\pi p\\cdot t) + 37.7$$\n", + "\n", + "der $v(t)$ er farten til bilen og $p$ er et tilfeldig flyttall mellom 1 og 2. Verdien til $p$ forandrer seg for hver tid $t$\n", + "\n", + "Fra Newtons avkjølingslov vil temperaturen $T(t)$ til kalkunen forandre seg på følgende måte:\n", + "\n", + "$$T'(t) = -4\\cdot(T(t) - T_o(t))$$\n", + "\n", + "Akselerasjonen $a(t)$ til bilen etter ei tid $t$ vil følge modellen\n", + "\n", + "$$a(t) = 2000e^{-500t^2}$$\n", + "\n", + "Lag et program som finner kalkunens temperatur etter fire timer under panseret. Plott temperaturen og forklar ut fra plottet om kalkunen vil være spiseklar eller ikke etter kjøreturen (I episoden _Food Fables_ fra Mythbusters kan du se at dette faktisk er mulig!).\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Videoer\n", + "\n", + "" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema5_modellering/diskret_modellering.ipynb b/_sources/docs/tema5_modellering/diskret_modellering.ipynb new file mode 100644 index 00000000..86d5aec1 --- /dev/null +++ b/_sources/docs/tema5_modellering/diskret_modellering.ipynb @@ -0,0 +1,133 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Modellering\n", + "\n", + "```{epigraph}\n", + "Kun virkeligheten er virkeligheten i seg selv.\n", + "\n", + "-- Andreas Haraldsrud (og sikkert mange andre også)\n", + "```\n", + "\n", + "Når vi mennesker skal beskrive virkeligheten, lager vi en modell som beskriver noe, men ikke alt, om det vi observerer. Hver modell har sine styrker og svakheter, og ingen modeller representerer virkeligheten eksakt. Modeller er _bare_ forenklinger, men dette er egentlig en nødvendighet for å kunne systematisere virkeligheten. Som sagt er virkeligheten for kompleks til å representeres eksakt. \n", + "\n", + "Se på bildene nedenfor. Hva viser bildene?\n", + "\n", + "```{tabbed} Bilde 1\n", + "\n", + "```\n", + "```{tabbed} Bilde 2\n", + "\n", + "```\n", + "```{tabbed} Bilde 3\n", + "\n", + "```\n", + "```{tabbed} Bilde 4\n", + "\n", + "```\n", + "\n", + "```{admonition} Hva viser bildene?\n", + ":class: tip, dropdown\n", + "Det er ikke et enkelt fasitsvar her. Bildene er _representasjoner_ av noe. Du ser for eksempel ikke en motorsykkel eller et atom, men en representasjon av begge. Du kan si noe om den faktiske virkeligheten med hver av disse representasjonene, men du kan ikke si alt. Dette er altså modeller som kan fortelle oss om utvalgte ting ved virkeligheten.\n", + "```\n", + "\n", + "For hver enkelt modell er det viktig å være oppmerksom på begrensningene og forutsetningene som gjelder. Dette er enklere å bli bevisst på når vi lager og/eller utforsker modellene selv, og dette er lettere å få til med programmering. Programmering er et viktig verktøy for å forstå og utforske matematiske modeller, og på den måten få bedre innsikt i et naturvitenskapelig problem.\n", + "\n", + "En modelleringsprosess innebærer flere trinn. For det første må vi ha en observasjon eller et fenomen vi ønsker å studere. Ut fra visse egenskaper ved dette systemet lager vi en modell som skal beskrive systemet under visse betingelser. En modell er en forenklet representasjon av virkeligheten. Denne modellen kan vi teste, for eksempel gjennom eksperimenter eller simuleringer. Da får vi data som vi kan bruke til å evaluere modellens gyldighet. Deretter kan vi eventuelt justere modellen og gjøre nye simuleringer og målinger.\n", + "\n", + "Modellering er altså en kontinuerlig prosess der modeller hele tiden evalueres og justeres opp mot virkeligheten. Programmering kan gjøre denne prosessen enklere fordi vi med noen tastetrykk kan endre modellen og observere utfallet av dette. \n", + "\n", + "Når en arbeider med modeller, åpner det for utforsking og kritisk refleksjon. En kan endre både rammebetingelser og variabelverdier med et tastetrykk og utforske konsekvensene for modellen. Det finnes ikke riktige og gale svar, og differensiering er en naturlig del av arbeidsformen. Modeller kan variere i kompleksitet, og en viktig del av modelleringsprosessen er å undersøke modellene opp mot virkeligheten, for eksempel med systematiske eksperimenter og observasjoner.\n", + "\n", + "## Diskrete modeller\n", + "\n", + "En diskret modell er en modell som beskriver tilstanden i et system på gitt tidspunkter. Det vil si at vi ikke har en kontinuerlig funksjon som beskriver tilstandene i systemet på et hvert tidspunkt. Et eksempel er en diskret populasjonsmodell som beskriver størrelsen på en gaupebestand hver andre måned. En kontinuerlig modell vil derimot beskrive populasjonen på _ethvert_ tidspunkt. Regresjonsmodeller er kontinuerlige modeller fordi modellene er kontinuerlige funksjoner. Det samme er modeller basert på _differensiallikninger_, som vi skal se på seinere.\n", + "\n", + "Diskrete modeller kan beskrives med _differenslikninger_. Eksempelet med gaupepopulasjonen kan beskrives som en differenslikning: Antall gauper er lik antall gauper ved forrige tidssteg pluss en endring. Det er denne endringen vi skal finne ut av når vi modellerer. Et annet eksempel på sammenhenger som kan beskrives som differenslikninger, er mønsteret i tallfølger. \n", + "\n", + "```{admonition} Differenslikninger\n", + "En differenslikning er en likning som beskriver forskjellen mellom etterfølgende verdier til en funksjon av diskrete variabler.\n", + "```\n", + "La oss se på et eksempel på en diskret modell. Her ser vi på modeller som beskriver utslipp av CO$_2$. Vi bygger opp modellen gradvis.\n", + "\n", + "````{admonition} Oppgave\n", + ":class: tip\n", + "Vi ser først på en diskret modell der utslippet øker med en prosentvis andel hvert år. Følgende modell kan da beskrive utslippet:\n", + "\n", + "$$u_{n+1} = u_n + au_n$$\n", + "\n", + "Her er _u_ antall tonn CO$_2$ som slippes ut per innbygger, og _a_ er en parameter som bestemmer utslippsraten (vekstfaktoren). Tilpasning av slike parametere er en viktig del av modellering. Parameterne representerer ulike forhold i det virkelige livet, men det kan være vanskelig å finne gode verdier for dem. Ofte bruker vi reelle data til dette. \n", + "\n", + "__Oppgave 1:__\n", + "\n", + "Forklar for hverandre med ord hva modellen sier. Drøft også i hvilke sammenhenger det kan være hensiktsmessig å bruke en slik modell. Er det en realistisk modell i noen sammenhenger?\n", + "\n", + "__Oppgave 2:__\n", + "\n", + "Fyll inn det som mangler i programmet nedenfor for å simulere utslippet. Dersom du vil, kan du selvfølgelig viske ut alt og bygge programmet fra grunnen av. Varier med ulike verdier av _a_ og forklar betydningen av denne parameteren.\n", + "\n", + "\n", + "\n", + "__Oppgave 3:__\n", + "\n", + "Hva er utslippet i 2100? Tror du dette er realistisk? Finn utslippet i 2018 etter denne modellen, og sammenlikn med det reelle utslippet i Norge og India ved hjelp av data som er gitt i disse tekstfilene: [Norge](https://raw.githubusercontent.com/andreasdh/Programmering-og-modellering/master/docs/Datafiler/CO2_Norge.txt) og [India](https://github.com/andreasdh/Programmering-og-modellering/blob/master/docs/Datafiler/CO2_India.txt).\n", + "\n", + "__Oppgave 4:__\n", + "\n", + "Varier utslippsraten _a_ slik at modellen passer best mulig med utslippet til enten Norge eller India. Du kan lese inn filene i programmet og plotte de reelle dataene i samme graf som modellen din. Kommenter hvor godt modellen passer med dataene. Hva er i så fall gyldighetsområdet til modellen? \n", + "\n", + "__Oppgave 5:__\n", + "\n", + "La oss utvide modellen og innføre flere parametere. Vi kan tenke oss en begrensningsparameter b som sier oss hva hver person maksimalt kan oppnå av utslipp. Følgende modell tar hensyn til dette:\n", + "\n", + "$$u_{n+1} = u_n + au_n\\left(1 - \\frac{u_n}{b}\\right)$$\n", + "\n", + "Beskriv modellen, og prøv å forklare alle leddene og faktorene. Hva skjer med uttrykket i parentesen når _u_ øker?\n", + "\n", + "__Oppgave 6:__\n", + "\n", + "Erstatt den gamle modellen med den nye modellen. Beskriv det du ser.\n", + "\n", + "\n", + "__Oppgave 7:__\n", + "\n", + "Eksperimenter med a og b slik at modellen passer godt med dataene.\n", + "\n", + "__Oppgave 8:__\n", + "\n", + "I 2015 setter vi inn tiltak som gjør at veksten stagnerer og blir negativ (minker med 4,5 % hvert år). Legg dette inn i simuleringen og kommenter utviklingen. Er utviklingen realistisk?\n", + "\n", + "__Ekstraoppgaver: Utforsk modellen__\n", + "\n", + "- Finn ut hvor store tiltakene (a) må være for at vi bare skal slippe ut 2 tonn CO2 per innbygger i Norge i 2100.\n", + "\n", + "- Gjenta simuleringene med India. Lag en modell som følger omtrent samme utvikling som en av modellene for Norge. Når vil India nå samme topputslipp som Norge?\n", + "````" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git "a/_sources/docs/tema5_modellering/maskinl\303\246ring_titanic.ipynb" "b/_sources/docs/tema5_modellering/maskinl\303\246ring_titanic.ipynb" new file mode 100644 index 00000000..8b219ef0 --- /dev/null +++ "b/_sources/docs/tema5_modellering/maskinl\303\246ring_titanic.ipynb" @@ -0,0 +1,645 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Maskinlæring" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "import seaborn as sns\n", + "import matplotlib.pyplot as plt\n", + "\n", + "# Lese dataene\n", + "titanic = pd.read_csv(\"Datafiler/titanic.csv\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Utforsking og opprydding av datasettet\n", + "La oss undersøke dataene og rydde litt, dersom vi trenger det." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
survivedpclasssexagesibspparchfareembarkedclassdeckembark_townalivealone
003022.0107.2500SThirdNaNSouthamptonnoFalse
111138.01071.2833CFirstCCherbourgyesFalse
213126.0007.9250SThirdNaNSouthamptonyesTrue
311135.01053.1000SFirstCSouthamptonyesFalse
403035.0008.0500SThirdNaNSouthamptonnoTrue
\n", + "
" + ], + "text/plain": [ + " survived pclass sex age sibsp parch fare embarked class deck \\\n", + "0 0 3 0 22.0 1 0 7.2500 S Third NaN \n", + "1 1 1 1 38.0 1 0 71.2833 C First C \n", + "2 1 3 1 26.0 0 0 7.9250 S Third NaN \n", + "3 1 1 1 35.0 1 0 53.1000 S First C \n", + "4 0 3 0 35.0 0 0 8.0500 S Third NaN \n", + "\n", + " embark_town alive alone \n", + "0 Southampton no False \n", + "1 Cherbourg yes False \n", + "2 Southampton yes True \n", + "3 Southampton yes False \n", + "4 Southampton no True " + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Skriver ut fem første linjer\n", + "titanic.head()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi ser at det ikke er alle kategoriene vi trenger. Siden vi er interessert i hvem som overlevde, og hvorfor, kan det også være lurt å sjekke hvor mange dette var." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "38.38 % overlevde\n" + ] + } + ], + "source": [ + "# Hvor mange overlevde?\n", + "overlevde_prosent = (titanic['survived'].sum()/titanic['survived'].count())*100\n", + "print(f'{overlevde_prosent:.2f} % overlevde')" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 Southampton\n", + "1 Cherbourg\n", + "2 Southampton\n", + "3 Southampton\n", + "4 Southampton\n", + " ... \n", + "886 Southampton\n", + "887 Southampton\n", + "888 Southampton\n", + "889 Cherbourg\n", + "890 Queenstown\n", + "Name: embark_town, Length: 891, dtype: object" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Sletter kategorier vi ikke er interessert i\n", + "titanic.pop('deck')\n", + "titanic.pop('fare')\n", + "titanic.pop('embarked')\n", + "titanic.pop('embark_town')" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "survived 0\n", + "pclass 0\n", + "sex 0\n", + "age 177\n", + "sibsp 0\n", + "parch 0\n", + "class 0\n", + "alive 0\n", + "alone 0\n", + "dtype: int64\n" + ] + } + ], + "source": [ + "# Print antall manglende verdier i kolonnene\n", + "print(titanic.isna().sum())" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "# Fyller inn manglende alder med gjennomsnittet\n", + "gjennomsnitt = titanic['age'].mean()\n", + "titanic['age'].fillna(gjennomsnitt, inplace = True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualiseringer\n", + "La oss først se hvilken effekt klasse og kjønn hadde på overlevelsessjansene:" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Passasjerklasse\n", + "sns.countplot(x='pclass', hue='survived', data=titanic, palette='ocean')\n", + "plt.title(\"Antall døde (0) og overlevende (1) av hver klasse\")\n", + "plt.xlabel(\"Klasse\")\n", + "plt.ylabel(\"Antall\")\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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WLJkCcOGDSvG7du3L0OHDuU3v/kNALfccgsjRoygV69enHzyyVx66aXMnj2biy66iFNPPRWASZMm8ZWvfIWHHnqInXaq+murG8RJwcysHfbee29uv/12zjzzTO655x769u3b5vijR49miy22AGDs2LHccMMNAMyYMYMxY8a8Y/xx48YxfXr6yepp06Yxbtw4XnrpJe69914+//nPM3ToUE455RSWLFkCwO9//3vGjx8PwIQJEzpsPTf5NgUzs/bYfffdmTNnDrfeeivnnHMOhx56KD179iyqfFo/D/De97636B4wYAD9+vVj3rx5TJ8+nSuvvPId8x89ejRnn302K1euZPbs2RxyyCG8/PLLbLPNNjz44INVY6rHbbO+UjAza4dnnnmGLbfcki9+8Yt885vfZM6cOTQ3NzN79mwAbrzxxjanHzduHBdeeCEvvPAC++yzzzuG9+nTh/32249JkyYxatQoevTowdZbb82gQYP42c9+BqSnlOfOnQvAQQcdxLRp0wCYMmVKh62nk4KZWTs89NBD7L///gwdOpTzzz+fc845h3PPPZdJkyYxbNgwevTo0eb0Y8aMYdq0aYwdO7bmOOPGjeOnP/0p48aNK8qmTJnC1VdfzZAhQ9hzzz25+eabAbjkkku4/PLL2XvvvVm8eHHHrCTd/Deahw0bFu/2R3Z8S+rbfEuqWbJgwQI+9KEPNTqMDlFtXSTNjohh1cb3lYKZmRWcFMzMrOCkYGZmBScFMzMrOCmYmVnBScHMzAp+otnMbD119K3s7b0d/LbbbmPSpEmsWbOGk046ibPOOqtD4wBfKZiZdQtr1qzhtNNO45e//CXz589n6tSpzJ8/v8OX46RgZtYNPPDAA+y2227suuuubLbZZhx99NHF080dyUnBzKwbWLx4MQMHDiz6m5qaOvT1FhVOCmZmVnBSMDPrBgYMGMCiRYuK/paWFgYMGNDhy3FSMDPrBvbbbz/+9Kc/8cQTT/DGG28wbdq0uvy+s29JNTNbT414o3DPnj257LLLGDFiBGvWrOHEE09kzz337PjldPgczcysLg4//HAOP/zwui7D1UdmZlZwUjAzs4KTgpmZFZwUzMysUPekIKmHpD9KuiX3D5J0v6SFkqZL2iyXb577F+bhzfWOzczM1tYZVwqTgAWl/u8CF0fEbsAqYGIunwisyuUX5/HMzKwT1fWWVElNwBHAd4C/lSTgEOALeZRrgfOAK4AjczfADcBlkhQRUc8YzczW1w5n/KBD57f0wlPXOc6JJ57ILbfcwg477MDDDz/cocsvq/eVwveAM4C3cn8/4PmIWJ37W4DKc9oDgEUAefgLefy1SDpZ0ixJs5YtW1bH0M3Muo7jjz+e2267re7LqVtSkDQKWBoRsztyvhHxw4gYFhHD+vfv35GzNjPrsg4++GC22267ui+nntVHBwGjJR0O9Aa2Bi4BtpHUM18NNAGVd78uBgYCLZJ6An2BFXWMz8zMWqnblUJE/F1ENEVEM3A0cGdEHAPcBYzJox0HVH4lYmbuJw+/0+0JZmadqxHPKZxJanReSGozuDqXXw30y+V/C3T8j4+amVmbOuWFeBFxN3B37n4c2L/KOK8Bn++MeMzMrDq/JdXMbD215xbSjjZ+/Hjuvvtuli9fTlNTE+effz4TJ05c94TryUnBzKwbmDp1aqcsx+8+MjOzgpOCmZkVnBTMzKrYGO6I35B1cFIwM2uld+/erFixolsnhohgxYoV9O7de72mc0OzmVkrTU1NtLS00N3fr9a7d2+amprWaxonBTOzVnr16sWgQYMaHUZDuPrIzMwKTgpmZlZwUjAzs4KTgpmZFZwUzMys4KRgZmYFJwUzMys4KZiZWcFJwczMCk4KZmZWcFIwM7OCk4KZmRWcFMzMrOCkYGZmBScFMzMrOCmYmVnBScHMzApOCmZmVnBSMDOzgpOCmZkVnBTMzKzgpGBmZgUnBTMzKzgpmJlZwUnBzMwKTgpmZlZwUjAzs0LdkoKk3pIekDRX0iOSzs/lgyTdL2mhpOmSNsvlm+f+hXl4c71iMzOz6up5pfA6cEhEDAGGAiMlHQB8F7g4InYDVgET8/gTgVW5/OI8npmZdaK6JYVIXsq9vfJfAIcAN+Tya4GjcveRuZ88/FBJqld8Zmb2TnVtU5DUQ9KDwFLgduAx4PmIWJ1HaQEG5O4BwCKAPPwFoF+VeZ4saZakWcuWLatn+GZmm5y6JoWIWBMRQ4EmYH/ggx0wzx9GxLCIGNa/f/93OzszMyvplLuPIuJ54C7gQGAbST3zoCZgce5eDAwEyMP7Ais6Iz4zM0vqefdRf0nb5O4tgE8DC0jJYUwe7Tjg5tw9M/eTh98ZEVGv+MzM7J16rnuUDbYTcK2kHqTkMyMibpE0H5gm6dvAH4Gr8/hXAz+RtBBYCRxdx9jMzKyKuiWFiJgH7Ful/HFS+0Lr8teAz9crHjMzWzc/0WxmZgUnBTMzKzgpmJlZwUnBzMwKTgpmZlZwUjAzs0LNW1IlbdfWhBGxsuPDMTOzRmrrOYXZpLeaVntTaQC71iUiMzNrmJpJISIGdWYgZmbWeG1VH324rQkjYk7Hh2NmZo3UVvXRv7UxrPJjOWZmthFpq/roU50ZiJmZNV67XognaS9gD6B3pSwirqtXUGZm1hjrTAqSzgWGk5LCrcBhwO8AJwUzs41Mex5eGwMcCjwbEScAQ0i/imZmZhuZ9iSFVyPiLWC1pK2BpeSfzTQzs41Le9oUZuWf1byK9EDbS8Af6hmUmZk1xjqTQkScmjuvlHQbsHX+VTUzM9vIrLP6SNIdle6IeDIi5pXLzMxs49HWE829gS2B7SVty9vvQNoaGNAJsZmZWSdrq/roFOCrwM6ktoRKUvgzcFl9wzIzs0Zo64nmS4BLJP11RFzaiTGZmVmDtKeh+VJJHwOay+P7iWYzs41Pe55o/gnwfuBBYE0uDvxEs5nZRqc9zykMA/aIiKh3MGZm1exwxg8aHUKXsfTCU9c90rvQnieaHwb+oq5RmJlZl9CeK4XtgfmSHgBez2UREUfWLywzM2uE9iSF80rdAj4BHF2XaMzMrKHWWX0UEb8hPZswCphM+sW1K+sblpmZNUJbTzTvDozPf8uB6YD8i2xmZhuvtqqPHgXuAUZFxEIASV/rlKjMzKwh2qo++hywBLhL0lWSDuXtV12YmdlGqGZSiIibIuJo4IPAXaT3IO0g6QpJn+mk+MzMrBO1p6H55Yi4PiI+CzQBfwTOrHtkZmbW6drz8FohIlZFxA8j4tB6BWRmZo2zXklhfUgaKOkuSfMlPSJpUi7fTtLtkv6U/2+byyXp+5IWSpon6cP1is3MzKqrW1IAVgNfj4g9gAOA0yTtAZwF3BERg4E7cj/AYcDg/HcycEUdYzMzsyrqlhQiYklEzMndLwILSL/YdiRwbR7tWuCo3H0kcF0k9wHbSNqpXvGZmdk71fNKoSCpGdgXuB/YMSKW5EHPAjvm7gHAotJkLVT52U9JJ0uaJWnWsmXL6he0mdkmqO5JQVIf4EbgqxHx5/Kw/Dru9Xold27oHhYRw/r379+BkZqZWV2TgqRepIQwJSJ+noufq1QL5f9Lc/liYGBp8qZcZmZmnaSedx8JuBpYEBH/Xho0Ezgudx8H3FwqPzbfhXQA8EKpmsnMzDpBe16dvaEOAiYAD0l6MJedDVwAzJA0EXgKGJuH3QocDiwEXgFOqGNsZmZWRd2SQkT8jtrvSnrHw2+5feG0esVjZmbr1il3H5mZWffgpGBmZgUnBTMzKzgpmJlZwUnBzMwKTgpmZlZwUjAzs4KTgpmZFZwUzMys4KRgZmYFJwUzMys4KZiZWcFJwczMCk4KZmZWcFIwM7OCk4KZmRWcFMzMrOCkYGZmBScFMzMrOCmYmVnBScHMzApOCmZmVnBSMDOzgpOCmZkVnBTMzKzgpGBmZgUnBTMzKzgpmJlZwUnBzMwKTgpmZlZwUjAzs4KTgpmZFZwUzMys4KRgZmYFJwUzMyv0rNeMJV0DjAKWRsReuWw7YDrQDDwJjI2IVZIEXAIcDrwCHB8Rc+oVm1W3wxk/aHQIXcbSC09tdAhmDVHPK4XJwMhWZWcBd0TEYOCO3A9wGDA4/50MXFHHuMzMrIa6JYWI+C2wslXxkcC1ufta4KhS+XWR3AdsI2mnesVmZmbVdXabwo4RsSR3PwvsmLsHAItK47XkMjMz60QNa2iOiABifaeTdLKkWZJmLVu2rA6RmZltujo7KTxXqRbK/5fm8sXAwNJ4TbnsHSLihxExLCKG9e/fv67Bmpltajo7KcwEjsvdxwE3l8qPVXIA8EKpmsnMzDpJPW9JnQoMB7aX1AKcC1wAzJA0EXgKGJtHv5V0O+pC0i2pJ9QrLjMzq61uSSEixtcYdGiVcQM4rV6xmJlZ+/iJZjMzKzgpmJlZwUnBzMwKdWtTMLN3p0+fIxodQpex5aneFp3FVwpmZlZwUjAzs4KTgpmZFZwUzMys4KRgZmYFJwUzMys4KZiZWcFJwczMCk4KZmZWcFIwM7OCk4KZmRWcFMzMrOCkYGZmBScFMzMrOCmYmVnBScHMzApOCmZmVnBSMDOzgpOCmZkVnBTMzKzgpGBmZgUnBTMzKzgpmJlZwUnBzMwKTgpmZlZwUjAzs4KTgpmZFZwUzMys4KRgZmYFJwUzMys4KZiZWcFJwczMCl0qKUgaKel/JS2UdFaj4zEz29R0maQgqQdwOXAYsAcwXtIejY3KzGzT0mWSArA/sDAiHo+IN4BpwJENjsnMbJOiiGh0DABIGgOMjIiTcv8E4KMRcXqr8U4GTs69HwD+t1MD3bhtDyxvdBBmVfiz2bF2iYj+1Qb07OxI3q2I+CHww0bHsTGSNCsihjU6DrPW/NnsPF2p+mgxMLDU35TLzMysk3SlpPA/wGBJgyRtBhwNzGxwTGZmm5QuU30UEaslnQ78N9ADuCYiHmlwWJsaV8tZV+XPZifpMg3NZmbWeF2p+sjMzBrMScHMzApOCubXi1iXJekaSUslPdzoWDYVTgqbOL9exLq4ycDIRgexKXFSML9exLqsiPgtsLLRcWxKnBRsALCo1N+Sy8xsE+SkYGZmBScF8+tFzKzgpGB+vYiZFZwUNnERsRqovF5kATDDrxexrkLSVOAPwAcktUia2OiYNnZ+zYWZmRV8pWBmZgUnBTMzKzgpmJlZwUnBzMwKTgpmZlZwUrC6k/RSqftwSf8naRdJX5Z0bCcs/wZJu+buj0h6KL8R9vuS9C7n3dwZb/CU9B1Ji8rbsgPm2ZHzmiZpcEfNzxrHScE6jaRDge8Dh0XEUxFxZURcV2Pcpg5a5p5Aj4h4PBddAXwJGJz/ussbOP+L9PLCruoK4IxGB2HvnpOCdQpJBwNXAaMi4rFcdp6kb+TuoZLukzRP0kzgIiV3S/qupAfyFcYn8vjHS/q5pNsk/UnShTUWfQxwc55mJ2DriLgv0gM61wFHdcDq9ZB0laRHJP1K0hZ5eV+S9D+S5kq6UdKWuXxyvkq5V9LjksasawE55iUdEOta8hXI3LztdyzFN6Y0zkv5//C8P26Q9KikKaUrrXuAv5TUZX733TaMk4J1hs2Bm4CjIuLRGuNcB5xJOhveGXgu3n6ysmdE7A98FTi3NM1QYBywNzBOUvkdThUHAbNz9wDSW2Arqr4RVtIxkh6s8ndDjdgHA5dHxJ7A88Bf5fKfR8R+ETGE9LR4+WncnYCPA6OAC2rMd71I+lSNuO+tMcl7gftyfL8lXUGty76k/bAHsCtp+xIRbwELgSHvdj2ssZzVrTO8CdxLOihOaj1QUl9g24j4jaRLSMnhotIoP8//ZwPNpfI7IuKFPI/5wC6s/RpwSAffZesTbERMAaasxyRPRMSDVWLcS9K3gW2APqRXiVTclA+k8ytn6O9WRNxFSpTt9QZwS+6eDXy6HdM8EBEtAJIeJK3r7/KwpaSEPrvqlNYtOClYZ3gLGAvcIensiPjnVsN7AG9KOpVUDfE0UH7/yuv5/xrW/sy+XupuPaziVaB37l5MegtsRdU3wko6BvhmlXktjIhqVT2t49gid08mXR3NlXQ8MLzGNO+qsbuYifQp4OIqg16JiI9VKX+zdDVW3n6rybUIkt4DbFaapq1t3pu0va0bc1KwThERr0g6ArhH0nMRcXVp2EpJLwJDIuIUSd8iVWd0hAXAbsCTEbFE0p8lHQDcDxwLXFol1vW9UqhlK2CJpF6kto11vpJc0qMR8cENWdgGXCnU8iTwEWAGMBro1c7pdgf8W8rdnNsUrNNExErS3T7nSBpdKZa0A+nqYKikeaQ2gvM7aLG/YO0z9FOBH5Hqvx8DftlBy6nmH0jJ5/dArbaUgqTtqXHVIOlCSS3Alvltoed1ZKCtXAV8UtJc4EDg5XVNkKvAXo2IZ+sYl3UCvyXVGkbSpcAc4Hqgb0QsrcMytgDuAg6KiDUdPf+OJGkUsGtEfL/RsawvSV8D/ly+ArTuyUnBGiJXEY0gPbOwos7LGgEsiIin67mcTZmkE4Cf5N/nsG7MScHMzApuUzAzs4KTgpmZFZwUzMys4KRgZmYFJwUzMyv8f5uPEzh+h+24AAAAAElFTkSuQmCC\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Passasjerklasse\n", + "sns.countplot(x='sex', hue='survived', data=titanic, palette='ocean')\n", + "plt.title(\"Antall døde (0) og overlevende (1) av hvert kjønn\")\n", + "plt.xlabel(\"Kjønn (0 = han, 1 = hun)\")\n", + "plt.ylabel(\"Antall\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi ser, ikke overraskene at menn på 3. klasse hadde særdeles dårlige odds. Vi har alderen til passasjerene, men ikke " + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEGCAYAAACKB4k+AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Z1A+gAAAACXBIWXMAAAsTAAALEwEAmpwYAAAXBklEQVR4nO3dfbRddX3n8ffHJBgwyEMIFHIzJgpWQCSVgCCjRXAEAQPTAQJTEARWHME2LluBcVgjdE1XkdpaBNShxQKVIeFBhVJIiyg+IIoJjyHoEEVLYoAQHiw4VIjf+ePsu7mGm3BD7rknuXm/1jrr7P3bv73P92SdnM/dT7+TqkKSJIDX9LoASdKGw1CQJLUMBUlSy1CQJLUMBUlSa2yvC1gf2223XU2dOrXXZUjSRmXhwoVPVNWkwZZt1KEwdepUFixY0OsyJGmjkuTna1rm4SNJUstQkCS1DAVJUmujPqcgSd3wwgsvsHTpUp5//vlel7Jexo8fT19fH+PGjRvyOoaCJK1m6dKlbLnllkydOpUkvS7nVakqVq5cydKlS5k2bdqQ1/PwkSSt5vnnn2fixIkbbSAAJGHixInrvLdjKEjSIDbmQOj3at6DoSBJahkKktQjN9xwA+edd96wbGvChAnDsp1N/kTzhAmH9bqEDcazz/5Tr0uQRp0XX3yRsWMH/6qdOXMmM2fOHOGK1s49BUkagueee47DDjuMPffck7e+9a3MmzePqVOn8sQTTwCwYMECDjjgAADOOeccTjjhBPbff39OOOEE9t13Xx544IF2WwcccAALFizgsssu46Mf/SjPPPMMb3jDG/jNb37TvtaUKVN44YUX+MlPfsIhhxzCXnvtxbve9S5+9KMfAfDwww+z3377sccee3D22WcP2/s0FCRpCObPn89OO+3Evffey6JFizjkkEPW2n/x4sV8/etf56qrrmLWrFlcffXVACxfvpzly5czY8aMtu9WW23F9OnT+da3vgXAjTfeyMEHH8y4ceOYPXs2F154IQsXLuQzn/kMp512GgBz5szhIx/5CPfffz877rjjsL3ProZCkp8luT/JPUkWNG3bJrklyUPN8zZNe5J8LsmSJPcleXs3a5OkdbHHHntwyy23cOaZZ/Kd73yHrbbaaq39Z86cyeabbw7AMcccw7XXXgvA1VdfzVFHHfWy/rNmzWLevHkAzJ07l1mzZvHss8/yve99j6OPPprp06fz4Q9/mOXLlwNw++23c9xxxwFwwgknDNv7HIlzCu+pqicGzJ8F3FpV5yU5q5k/E3g/sEvzeAfwheZZknruzW9+M3fddRc33XQTZ599NgcddBBjx45tD/msfj/A6173unZ68uTJTJw4kfvuu4958+bxxS9+8WXbnzlzJp/85Cd58sknWbhwIQceeCDPPfccW2+9Nffcc8+gNXXjstleHD46Ari8mb4cOHJA+xXV8X1g6yTDt08kSevhF7/4BVtssQXHH388n/jEJ7jrrruYOnUqCxcuBOC6665b6/qzZs3i/PPP55lnnuFtb3vby5ZPmDCBvffemzlz5nD44YczZswYXv/61zNt2jSuueYaoHOX8r333gvA/vvvz9y5cwG48sorh+19djsUCviXJAuTzG7adqiq5c30o8AOzfRk4JEB6y5t2n5LktlJFiRZsGLFim7VLUm/5f7772efffZh+vTpnHvuuZx99tl86lOfYs6cOcyYMYMxY8asdf2jjjqKuXPncswxx6yxz6xZs/jyl7/MrFmz2rYrr7ySSy+9lD333JPdd9+d66+/HoALLriAiy++mD322INly5YNz5sEUlXDtrGXbTyZXFXLkmwP3AL8EXBDVW09oM9TVbVNkhuB86rqu037rcCZVbXGX9GZMWNGre+P7HhJ6ku8JFXqePDBB9l11117XcawGOy9JFlYVTMG69/VPYWqWtY8Pw58FdgHeKz/sFDz/HjTfRkwZcDqfU2bJGmEdC0UkrwuyZb908D7gEXADcCJTbcTgeub6RuADzZXIe0LPDPgMJMkaQR08+qjHYCvNmfHxwL/p6rmJ/khcHWSU4CfA/0H2G4CDgWWAL8CPtTF2iRJg+haKFTVT4E9B2lfCRw0SHsBp3erHknSK/OOZklSy1CQJLU2+VFSJWldDfel7EO9HHz+/PnMmTOHVatWceqpp3LWWWcNax3gnoIkbRRWrVrF6aefzs0338zixYu56qqrWLx48bC/jqEgSRuBO++8k5133pk3vvGNbLbZZhx77LHt3c3DyVCQpI3AsmXLmDLlpft7+/r6hnV4i36GgiSpZShI0kZg8uTJPPLIS2OGLl26lMmTXzZm6HozFCRpI7D33nvz0EMP8fDDD/PrX/+auXPnduX3nb0kVZLWUS9GFB47diwXXXQRBx98MKtWreLkk09m9913H/7XGfYtSpK64tBDD+XQQw/t6mt4+EiS1DIUJEktQ0GS1DIUJEktQ0GS1DIUJEktL0mVpHW0/RmfH9btPX7+aa/Y5+STT+bGG29k++23Z9GiRcP6+gO5pyBJG4GTTjqJ+fPnd/11DAVJ2gi8+93vZtttt+366xgKkqSWoSBJahkKkqSWoSBJanlJqiSto6FcQjrcjjvuOG677TaeeOIJ+vr6OPfccznllFOG/XUMBUnaCFx11VUj8joePpIktQwFSVLLUJCkQVRVr0tYb6/mPRgKkrSa8ePHs3Llyo06GKqKlStXMn78+HVazxPNkrSavr4+li5dyooVK3pdynoZP348fX1967RO10MhyRhgAbCsqg5PMg2YC0wEFgInVNWvk7wWuALYC1gJzKqqn3W7Pkla3bhx45g2bVqvy+iJkTh8NAd4cMD8p4HPVtXOwFNA/4W2pwBPNe2fbfpJkkZQV0MhSR9wGPB3zXyAA4Frmy6XA0c200c08zTLD2r6S5JGSLf3FP4GOAP4TTM/EXi6ql5s5pcCk5vpycAjAM3yZ5r+vyXJ7CQLkizY2I/3SdKGpmuhkORw4PGqWjic262qS6pqRlXNmDRp0nBuWpI2ed080bw/MDPJocB44PXABcDWScY2ewN9wLKm/zJgCrA0yVhgKzonnCVJI6RrewpV9d+rqq+qpgLHAt+oqj8Evgkc1XQ7Ebi+mb6hmadZ/o3amC8SlqSNUC9uXjsT+HiSJXTOGVzatF8KTGzaPw6c1YPaJGmTNiI3r1XVbcBtzfRPgX0G6fM8cPRI1CNJGpzDXEiSWoaCJKllKEiSWoaCJKllKEiSWoaCJKllKEiSWoaCJKllKEiSWoaCJKllKEiSWoaCJKllKEiSWoaCJKllKEiSWoaCJKllKEiSWoaCJKllKEiSWoaCJKllKEiSWoaCJKllKEiSWoaCJKllKEiSWoaCJKllKEiSWoaCJKllKEiSWoaCJKllKEiSWl0LhSTjk9yZ5N4kDyQ5t2mfluQHSZYkmZdks6b9tc38kmb51G7VJkkaXDf3FP4dOLCq9gSmA4ck2Rf4NPDZqtoZeAo4pel/CvBU0/7Zpp8kaQR1LRSq49lmdlzzKOBA4Nqm/XLgyGb6iGaeZvlBSdKt+iRJL9fVcwpJxiS5B3gcuAX4CfB0Vb3YdFkKTG6mJwOPADTLnwEmDrLN2UkWJFmwYsWKbpYvSZucIYVCkluH0ra6qlpVVdOBPmAf4C3rWuAg27ykqmZU1YxJkyat7+YkSQOMXdvCJOOBLYDtkmwD9B/OeT0v/YX/iqrq6STfBPYDtk4yttkb6AOWNd2WAVOApUnGAlsBK9flzUiS1s9aQwH4MPAxYCdgIS+Fwi+Bi9a2YpJJwAtNIGwO/Cc6J4+/CRwFzAVOBK5vVrmhmb+jWf6Nqqp1fD9aD9uf8flel7DBePz803pdgtQTaw2FqroAuCDJH1XVheu47R2By5OMoXOY6uqqujHJYmBukv8F3A1c2vS/FPiHJEuAJ4Fj1/H1JEnr6ZX2FACoqguTvBOYOnCdqrpiLevcB/zeIO0/pXN+YfX254Gjh1KPJKk7hhQKSf4BeBNwD7CqaS5gjaEgSdr4DCkUgBnAbh7jl6TRbaj3KSwCfqebhUiSem+oewrbAYuT3Eln+AoAqmpmV6qSJPXEUEPhnG4WIUnaMAz16qNvdbsQSVLvDfXqo3+jc7URwGZ0Brd7rqpe363CJEkjb6h7Clv2Tzcjlx4B7NutoiRJvbHOo6Q2Q2J/DTh4+MuRJPXSUA8f/cGA2dfQuW/h+a5UJEnqmaFeffSBAdMvAj+jcwhJkjSKDPWcwoe6XYgkqfeG+iM7fUm+muTx5nFdkr5uFydJGllDPdH893R+72Cn5vGPTZskaRQZaihMqqq/r6oXm8dlgL+FKUmjzFBDYWWS45OMaR7H409lStKoM9RQOBk4BngUWE7n5zJP6lJNkqQeGeolqX8GnFhVTwEk2Rb4DJ2wkCSNEkPdU3hbfyAAVNWTDPJTm5KkjdtQQ+E1Sbbpn2n2FIa6lyFJ2kgM9Yv9r4A7klzTzB8N/Hl3SpIk9cpQ72i+IskC4MCm6Q+qanH3ypIk9cKQDwE1IWAQSNIots5DZ0uSRi9DQZLUMhQkSS1DQZLUMhQkSS1DQZLUMhQkSS1DQZLU6looJJmS5JtJFid5IMmcpn3bJLckeah53qZpT5LPJVmS5L4kb+9WbZKkwXVzT+FF4E+qajdgX+D0JLsBZwG3VtUuwK3NPMD7gV2ax2zgC12sTZI0iK6FQlUtr6q7mul/Ax4EJgNHAJc33S4HjmymjwCuqI7vA1sn2bFb9UmSXm5EzikkmUrn9xd+AOxQVcubRY8COzTTk4FHBqy2tGlbfVuzkyxIsmDFihXdK1qSNkFdD4UkE4DrgI9V1S8HLquqAmpdtldVl1TVjKqaMWnSpGGsVJLU1VBIMo5OIFxZVV9pmh/rPyzUPD/etC8DpgxYva9pkySNkG5efRTgUuDBqvrrAYtuAE5spk8Erh/Q/sHmKqR9gWcGHGaSJI2Abv6k5v7ACcD9Se5p2j4JnAdcneQU4OfAMc2ym4BDgSXAr4APdbE2SdIguhYKVfVdIGtYfNAg/Qs4vVv1SJJemXc0S5JahoIkqWUoSJJahoIkqWUoSJJahoIkqWUoSJJahoIkqWUoSJJahoIkqWUoSJJahoIkqWUoSJJahoIkqWUoSJJahoIkqWUoSJJahoIkqWUoSJJahoIkqWUoSJJahoIkqWUoSJJahoIkqWUoSJJahoIkqWUoSJJahoIkqWUoSJJahoIkqWUoSJJaXQuFJF9K8niSRQPatk1yS5KHmudtmvYk+VySJUnuS/L2btUlSVqzbu4pXAYcslrbWcCtVbULcGszD/B+YJfmMRv4QhfrkiStQddCoaq+DTy5WvMRwOXN9OXAkQPar6iO7wNbJ9mxW7VJkgY30ucUdqiq5c30o8AOzfRk4JEB/ZY2bZKkEdSzE81VVUCt63pJZidZkGTBihUrulCZJG26RjoUHus/LNQ8P960LwOmDOjX17S9TFVdUlUzqmrGpEmTulqsJG1qRjoUbgBObKZPBK4f0P7B5iqkfYFnBhxmkiSNkLHd2nCSq4ADgO2SLAU+BZwHXJ3kFODnwDFN95uAQ4ElwK+AD3WrLknSmnUtFKrquDUsOmiQvgWc3q1aJElD4x3NkqSWoSBJahkKkqSWoSBJahkKkqSWoSBJahkKkqSWoSBJahkKkqSWoSBJahkKkqSWoSBJahkKkqSWoSBJahkKkqRW135PQZKGy/ZnfL7XJWwwHj//tK5u3z0FSVLLUJAktQwFSVLLUJAktQwFSVLLq4+kDdSECYf1uoQNxhan+W8xUtxTkCS1DAVJUstQkCS1DAVJUstQkCS1DAVJUstQkCS1DAVJUstQkCS1DAVJUmuDCoUkhyT5cZIlSc7qdT2StKnZYEIhyRjgYuD9wG7AcUl2621VkrRp2WBCAdgHWFJVP62qXwNzgSN6XJMkbVJSVb2uAYAkRwGHVNWpzfwJwDuq6qOr9ZsNzG5mfxf48YgWOrptBzzR6yKkQfjZHF5vqKpJgy3Y6IbOrqpLgEt6XcdolGRBVc3odR3S6vxsjpwN6fDRMmDKgPm+pk2SNEI2pFD4IbBLkmlJNgOOBW7ocU2StEnZYA4fVdWLST4K/DMwBvhSVT3Q47I2NR6W04bKz+YI2WBONEuSem9DOnwkSeoxQ0GS1DIUNjFJDkhyY6/rkACSTE2yqNd16CWGgqSNUpIN5kKZ0cRQGAWSnJfk9AHz5yT5RJK/TLIoyf1JZg2y3t5J7k7ypiS/n+Se5nF3ki2bPp9I8sMk9yU5t2mbmuTBJH+b5IEk/5Jk85F7xxplxia5svlMXZtkiyT/s/ncLUpySZIAJLktyd8kWQDMaeY/neTOJP83ybt6/F42eobC6DAPOGbA/DHA48B0YE/gvcBfJtmxv0OSdwJfBI6oqp8AfwqcXlXTgXcB/y/J+4Bd6IxLNR3YK8m7m03sAlxcVbsDTwP/pUvvTaPf7wKfr6pdgV8CpwEXVdXeVfVWYHPg8AH9N6uqGVX1V8382KraB/gY8KkRrHtUMhRGgaq6G9g+yU5J9gSeovMlflVVraqqx4BvAXs3q+xK57rvD1TVvzZttwN/neSPga2r6kXgfc3jbuAu4C10wgDg4aq6p5leCEzt3jvUKPdIVd3eTH8Z+I/Ae5L8IMn9wIHA7gP6z1tt/a80z34Oh4HH5EaPa4CjgN+h859m2lr6LgfGA78H/AKgqs5L8k/AocDtSQ4GAvxFVf3vgSsnmQr8+4CmVXT+mpNejdVvlirg88CMqnokyTl0Pq/9nlutf/9ncRV+p6039xRGj3l0hgY5ik5AfAeYlWRMkknAu4E7m75PA4cBf5HkAIAkb6qq+6vq03SGHHkLnbvLT04yoekzOcn2I/aOtKn4D0n2a6b/K/DdZvqJ5rN3VG/K2jSZqqNEVT3QnBxeVlXLk3wV2A+4l85fXmdU1aNJ3tL0fyzJ4cDNSU4Gjk/yHuA3wAPAzVX170l2Be5ozvM9CxxP5y8yabj8GDg9yZeAxcAXgG2ARcCjdP5I0QhxmAtJUsvDR5KklqEgSWoZCpKklqEgSWoZCpKklqGgTVKSnyXZbpD2c5L86TBsf9DRaJOclOSi9d2+1C2GgrQeHKlTo42hoFEvydeSLGxGdJ09yPL/0Yyw+V06g7P1t78pyfxm3e/03/iX5LIkX0zyA+D8NY0wO2A77Wi0q7V/oBnf5+4kX0+yQ9P+su0l2THJt5u2Rf2jgSZ5X5I7ktyV5Jr+u8+lV8u/crQpOLmqnmyG9/5hkuv6FyTZi87wINPp/H+4i87AatAZNPC/VdVDSd5BZzyeA5tlfcA7q2pVkn+kM8Ls7c2X8vMDtv9O4EI6o9H+62pDO38X2LeqKsmpwBnAn/DSiLUDtzcb+Oeq+vMkY4AtmsNfZwPvrarnkpwJfBz4s2H6d9MmyFDQpuCPk/znZnoKL430Cp1hwr9aVb8CSHJD8zwBeCdwTTPEB8BrB6x3TVX1D/fRP8LslcBXqmpps07/aLTvq6pfDFJXHzCvGdJ8M+DhtWzvh8CXkowDvlZV9yT5fWA3OgMY0mzjjnX9x5EG8vCRRrVmwL/3AvtV1Z50hgEfv7Z1Gq8Bnq6q6QMeuw5Y3o7UWVXnAafSGSn29v7DTHRGo32ezmi0g7mQzu8G7AF8uL+uwbZXVd+mM6jhMuCyJB+kM4rtLQPq262qThnCe5PWyFDQaLcV8FRV/ar5st53teXfBo5MsnlzLuADAFX1S+DhJEcDpGPPwV5gDSPMwiCj0Q5S27Jm+sS1bS/JG4DHqupvgb8D3g58H9g/yc7Neq9L8uah/sNIgzEUNNrNp/Nzjw8C59H5Im1V1V10hh2/F7iZ3x6R8w+BU5LcS2fk2CPW8Bofa07+3ge80Gynf/uP0fnVsIub8xIDnUPn8NRC4IlX2N4BwL1J7gZmARdU1QrgJOCqpu8dvBRI0qviKKmSpJZ7CpKklqEgSWoZCpKklqEgSWoZCpKklqEgSWoZCpKk1v8HWyBjbeJr56oAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Sortere etter alder\n", + "aldersklasse = []\n", + "\n", + "for alder in titanic['age']:\n", + " if alder > 15:\n", + " aldersklasse.append(\"voksen\")\n", + " else:\n", + " aldersklasse.append(\"barn\")\n", + " \n", + "titanic['aldersklasse'] = aldersklasse\n", + "\n", + "sns.countplot(x='aldersklasse', hue='survived', data=titanic, palette='ocean')" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "# *Frivilling: Erstatte kategorier for visualisering med nye kategorier\n", + "\"\"\"\n", + "overlevende = {0: \"døde\", 1: \"overlevde\"}\n", + "titanic[\"survived\"] = titanic[\"survived\"].map(overlevende)\n", + "titanic.head(5)\n", + "\"\"\"\n", + "# *Frivillig: Telle forekomster av ulike tilfeller\n", + "\"\"\"\n", + "titanic[\"survived\"].count()\n", + "titanic[\"survived\"].value_counts()\n", + "\"\"\"\n", + "None # Printer None for å unngå output" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Maskinlæring\n", + "Vi skal nå lage en modell som kan forutsi hvorvidt en person overlever på Titanic eller ikke, gitt data om personen. Vi velger ut hvilke data vi ønsker å bruke som kriterium for overlevelse, og spesifiserer kategorien \"survived\" som målkategorien vår:" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.model_selection import train_test_split, cross_val_score\n", + "from sklearn import tree\n", + "from sklearn.metrics import accuracy_score, confusion_matrix" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [], + "source": [ + "kriterier = titanic[['pclass', 'sex', 'age', 'sibsp', 'parch']]\n", + "kategorier = titanic['survived'] " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "I maskinlæring er det viktig at modellen vår klarer å forutsi data som kommer utenfra datasettet vi trener modellen med. Derfor deler vi ofte opp dataene i et treningssett og et testsett. Treningssettet bruker vi til å trene modellen, testsettet til å teste og evaluere modellen i etterkant. Vi blander ikke disse dataene. Vi kan generere slike data med funksjonen _train\\_test\\_split()_. Her bruker vi 80 \\% av dataene til trening og 20 \\% til testing. Du bør bruke minst 70 \\% av dataene dine til trening." + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [], + "source": [ + "testandel = 0.2 # Andel brukt til testing\n", + "ml_data = train_test_split(kriterier, kategorier, test_size=testandel, random_state=42)\n", + "\n", + "treningskriterier = ml_data[0]\n", + "testkriterier = ml_data[1]\n", + "treningskategorier = ml_data[2]\n", + "testkategorier = ml_data[3]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nå kan vi lage modellen vår. Vi bruker en algoritme som heter _Decision Tree Classifier_. Det er basert på sammensatte og forgreinede valgtrær, der alle kombinasjoner av kriterier blir utforsket. Betingede sannsynligheter for ulike hendelser blir beregnet, og de mest sannsynlige utfallene blir framhevet basert på kombinasjonen av kriteriene. Først trener vi modellen:" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "DecisionTreeClassifier()" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "modell = tree.DecisionTreeClassifier()\n", + "modell.fit(treningskriterier, treningskategorier)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Det var det - da har vi en modell! Den ligger nå i et objekt som vi har kalt _modell_. Vi kan få innsyn i hvordan modellen ser ut, men det kan fort bli litt uoversiktlig og teknisk. La oss først nøye oss med å sjekke hvordan modellen takler testsettet vårt.\n", + "\n", + "## Test og validering av modellen" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.7653631284916201" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "modellkategorier_forutsett = modell.predict(testkriterier)\n", + "accuracy_score(testkategorier, modellkategorier_forutsett)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Dette betyr at modellen forutsier riktig ca. 76 % av gangene. Det er en ok modell. For å få bedre oversikt over hva modellen forutsier riktig og hva den feiler på, kan vi konstruere en såkalt \"Confusion Matrix\" (forvirringsmatrise/feilmatrise):" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "cm = confusion_matrix(modellkategorier_forutsett, testkategorier)\n", + "\n", + "import seaborn as sns\n", + "sns.heatmap(cm, annot=True, cmap='viridis')\n", + "plt.title(\"Forvirringsmatrise\")\n", + "plt.xlabel(\"Predikerte verdier\")\n", + "plt.ylabel(\"Sanne verdier\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "La oss benytte disse dataene og telle hvor mange datapunkter vi har, hvor mange som overlevde og døde, og deretter beregne hvor stor prosentandel av overlevende og døde som modellen klarte å forutsi korrekt." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(Andel korrekt forventet død 77.68 %)\n", + "(Andel korrekt forventet overlevelse 73.13 %)\n" + ] + } + ], + "source": [ + "presisjon_død = (87/(87+25))*100\n", + "presisjon_overleve = (49/(49+18))*100\n", + "print(f'(Andel korrekt forventet død {presisjon_død:.2f} %)')\n", + "print(f'(Andel korrekt forventet overlevelse {presisjon_overleve:.2f} %)')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Det er større presisjon i å forutsi død. Dette er forventet, siden modellen har trent på flere tilfeller av død enn av overlevelse. \n", + "\n", + "La oss helt til sist visualisere modellen vår. Vi velger maks dybde på modellen til 3 for at vi ikke skal få alt for mange forgreininger." + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABGoAAAIuCAYAAADnru5GAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Z1A+gAAAACXBIWXMAAAsTAAALEwEAmpwYAAD0aElEQVR4nOzddXgVxx7G8e9EiAsJgeDu7u5upbQUKVXq7u5ChbrRQimUlgLFWtyd4u4Q3J0kxG3uHwfS5iZAgISTwPt5Hp5LZmdnf5tLYfOe2RljrUVERERERERERJzPxdkFiIiIiIiIiIiIg4IaEREREREREZEcQkGNiIiIiIiIiEgOoaBGRERERERERCSHUFAjIiIiIiIiIpJDKKgREREREREREckhFNSIiIiIiIiIiOQQCmpERERERERERHIIBTUiIiIiIiIiIjmEghoRERERERERkRxCQY2IiIiIiIiISA6hoEZEREREREREJIdQUCMiIiIiIiIikkMoqBERERERERERySEU1IiIiIiIiIiI5BAKakREREREREREcgg3ZxcgIiIi2c/L0+NYXHxCAWfXIdfO0yPP8di4+FBn1yEiIiLZw1hrnV2DiIiIZDNjjI1eM9HZZUgW8KndDWutcXYdIiIikj306pOIiIiIiIiISA6hoEZEREREREREJIdQUCMiIiIiIiIikkMoqBERERERERERySEU1IiIiIiIiIiI5BAKakREREREREREcggFNSIiIiIiIiIiOYSbswsQERERyQ1SUlL4cfRUfhk/g31HjhMU4MetrRvx9mN98ff1ztQYPrW7ZdheKH8wYdOHZmW5IiIikkspqBERERHJhNe//pXv/phI5+b1ePquboQdOMLAUZNZsyWM2UM+xs3NNVPjNK5Ziftva5+mzcfTIztKFhERkVxIQY2IiIjkauHnogiPjKZE4QLZdo1tew7ww6jJ3NKyAaM+fy21vVyJIjz+/nf8NmkO/f4vfLmYEoVD6dOpRTZVKiIiIrmd1qgRERER4uIT6D9oFDVue4x8je6gUPM7qdvzad76dni6vvNWrKfr4+9QqPmdBDXsQb1eTzNk3PQ0fe56+VP863Vn6bqtadonzVuGT+1uvDhg8DXVm5CYyJQFK+j78ieUancfUxauuKbxLmfsjMWkpKTwZN9b0rT37dyS4AA/Rk9bcEXjJSQmEhUT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iIiIiIiIiI24qt765OjoGJmdnR1c1nHYCgcHh6isrKyQso7DVmm8nKexcnEaK5Y0Xi5O4+U8jZWL01ixpPFycRov52msXJzGiiWNl4vTeDnvahorV9WjT4ZhmCNHjizrMGzGyJEjMU3TKOs4bJXGy3kaKxensWJJ4+XiNF7O01i5OI0VSxovF6fxcp7GysVprFjSeLk4jZfzrqaxokefRERERERERERshAo1IiIiIiIiIiI2QoUaEREREREREREboUKNiIiIiIiIiIiNUKFGRERERERERMRGqFAjIiIiIiIiImIjVKgREREREREREbERKtSIiIiIiIiIiNgIFWpERERERERERGyECjUiIiIiIiIiIjZChRoRERERERERERuhQo2IiIiIiIiIiI1QoUZERERERERExEaoUCMiIiIiIiIiYiNUqBERERERERERsREq1IiIiIiIiIiI2AgVakREREREREREbIQKNSIiIiIiIiIiNkKFGhERERERERERG6FCjYiIiIiIiIiIjVChRkRERERERETERqhQIyIiIiIiIiJiI1SoERERERERERGxESrUiIiIiIiIiIjYCBVqRERERERERERshAo1IiIiIiIiIiI24rov1GRlZTFq1CiWLVtWrP3u37+ft956i9jY2GLtV8qWxotYS2NFikLjRaylsSJFofEi1tJYkaLQeCl5132hZs2aNWRlZdGqVati7bdmzZqEhISwaNGiYu1XypbGi1hLY0WKQuNFrKWxIkWh8SLW0liRotB4KXnXdaEmMzOTNWvW0LhxY1xcXIq9/5YtW7J3717Onj1b7H1L6dN4EWtprEhRaLyItTRWpCg0XsRaGitSFBovpeO6LtTs3LmTjIwMGjZsWCL916pVC0dHRzZv3lwi/Uvp0ngRa2msSFFovIi1NFakKDRexFoaK1IUGi+l47ou1OzZswcvLy+Cg4NLpH9nZ2cqVKjA7t27S6R/KV0aL2ItjRUpCo0XsZbGihSFxotYS2NFikLjpXRct4Wa3NxcTpw4QVhYWIkep3z58iQlJWlBpKucxotYS2NFikLjRaylsSJFofEi1tJYkaLQeCk9122hJiEhgczMTHx9fUv0OP/2f70/Y3e103gRa2msSFFovIi1NFakKDRexFoaK1IUGi+l57ot1KSkpADg6upaosdxc3OzOJ5cnTRexFoaK1IUGi9iLY0VKQqNF7GWxooUhcZL6bluCzWGYZTKcUzTLJXjSMnSeBFraaxIUWi8iLU0VqQoNF7EWhorUhQaL6Xnui3U/FulS0tLK9Hj/Nu/u7t7iR5HSpbGi1hLY0WKQuNFrKWxIkWh8SLW0liRotB4KT3XbaHG29sbJyenEl+gKC4uDoCgoKASPY6ULI0XsZbGihSFxotYS2NFikLjRaylsSJFofFSeq7bQo2dnR3ly5fn1KlThX5+9uzZ/AHyr/T0dM6ePVvgWbn4+HjOnj1LTk5OgX5OnjyJp6cnfn5+xRe8lDqNF7GWxooUhcaLWEtjRYpC40WspbEiRaHxUnqu20INQN26dUlOTub06dMFPhszZgxjx4612LZ3717GjBnDhg0bLLZPnz6dMWPGkJiYaLE9IyOD48ePU7du3eIPXkqdxotYS2NFikLjRaylsSJFofEi1tJYkaLQeCkd13Whpl69eri4uLBjx44S6X/fvn1kZWXRtGnTEulfSpfGi1hLY0WKQuNFrKWxIkWh8SLW0liRotB4KR0OZR1AWXJycqJ169asXbuWTp064eLikv/ZyJEjC7Rv3LgxjRs3LrD93nvvLbT/9evXU7t2bQIDA4stZik7Gi9iLY0VKQqNF7GWxooUhcaLWEtjRYpC46V0XNczagDatGmDk5MT69atK9Z+9+/fT2RkJF27di3WfqVsabyItTRWpCg0XsRaGitSFBovYi2NFSkKjZeSZ1xN7yg3DMMsrEp3vRo5ciSmaZbOy+yvQhov52msXJzGiiWNl4vTeDlPY+XiNFYsabxcnMbLeRorF6exYknj5eI0Xs67msbKdT+jRkRERERERETEVqhQIyIiIiIiIiJiI1SoERERERERERGxESrUiIiIiIiIiIjYCBVqRERERERERERshAo1IiIiIiIiIiI2QoUaEREREREREREboUKNiIiIiIiIiIiNUKFGRERERERERMRGqFAjIiIiIiIiImIjVKgREREREREREbERKtSIiIiIiIiIiNgIFWpERERERERERGyECjUiIiIiIiIiIjZChRoRERERERERERuhQo2IiIiIiIiIiI1QoUZERERERERExEaoUCMiIiIiIiIiYiNUqBERERERERERsREq1IiIiIiIiIiI2AgVakREREREREREbIQKNSIiIiIiIiIiNkKFGhERERERERERG6FCjYiIiIiIiIiIjVChRkRERERERETERqhQIyIiIiIiIiJiI1SoERERERERERGxESrUiIiIiIiIiIjYCBVqRERERERERERshGGaZlnHYDVHR8fI7Ozs4LKOw1Y4ODhEZWVlhZR1HLZK4+U8jZWL01ixpPFycRov52msXJzGiiWNl4vTeDlPY+XiNFYsabxcnMbLeVfTWLmqCjUiIiIiIiIiItcyPfokIiIiIiIiImIjVKgREREREREREbERKtSIiIiIiIiIiNgIFWpERERERERERGyECjUiIiIiIiIiIjZChRoRERERERERERuhQo2IiIiIiIiIiI1QoUZERERERERExEaoUCMiIiIiIiIiYiNUqBERERERERERsREq1IiIiIiIiIiI2AgVakREREREREREbIQKNSIiIiIiIiIiNkKFGhERERERERERG6FCjYiIiIiIiIiIjVChRkRERERERETERqhQIyIiIiIiIiJiI1SoERERERERERGxESrUiIiIiIiIiIjYCBVqRERERERERERshAo1IiIiIiIiIiI2QoUaEREREREREREboUKNiIiIiIiIiIiNUKFGRERERERERMRGqFAjIiIiIiIiImIjVKgREREREREREbERKtSIiIiIiIiIiNgIFWpERERERERERGyECjUiIiIiIiIiIjZChRoRERERERERERuhQo2IiIiIiIiIiI1QoUZERERERERExEaoUCMiIiIiIiIiYiNUqBERERERERERsREq1IiIiIiIiIiI2AgVakREREREREREbMT/AIkgmXKGm3LWAAAAAElFTkSuQmCC\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure(figsize=(20,10))\n", + "titanic.pop('survived')\n", + "tree.plot_tree(modell, max_depth=2, feature_names=titanic.columns, class_names=['Døde', 'Overlevde'], filled=True, label=None,) \n", + "None" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema5_modellering/modelleringsrapport.ipynb b/_sources/docs/tema5_modellering/modelleringsrapport.ipynb new file mode 100644 index 00000000..38d46866 --- /dev/null +++ b/_sources/docs/tema5_modellering/modelleringsrapport.ipynb @@ -0,0 +1,408 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Rapporteksempel: Smittemodellering\n", + "_Navn Navnesen_\n", + "\n", + "_Rapport 11.4.2023_\n", + "\n", + "(Nedenfor følger et eksempel på hvordan du kan lage en modelleringsrapport. Rapporten er ikke helt perfekt, men står til høy måloppnåelse - karakteren 5. Spesielt burde det vært mer utforsking og variasjon av ulike parametre (som _a_ og _b_). Eulers metode kunne også vært beskrevet i teoridelen, og det kunne vært mer drøfting og forklaring underveis. Men alt i alt viser rapporten hvordan strukturen og oppsettet på din rapport bør være).\n", + "\n", + "## 1. Hensikt\n", + "Vi skal her utforske ulike modeller for smitteutvikling. Smittemodellering kan være nyttig for å forutsi smitte ved årlige sykdomsforløp, slik som influensa, og for å undersøke effekten av ulike tiltak, slik som vaksinasjon.\n", + "\n", + "## 2. Teori\n", + "Vi ser her på tre ulike modeller for smittespredning.\n", + "\n", + "### Modell 1\n", + "Vi starter med en smittespredningsmodell er der ingen blir friske av den smittsomme sykdommen. Da antar vi at antall smittede utvikler seg slik:\n", + "\n", + "$$I_{n+1}=I_n+aI_n$$\n", + "\n", + "Her er _I_ antall smittede (infected) og _a_ er en parameter som bestemmer spredningsraten. Smitteraten _a_ kan variere med blant annet sykdommens spredningsmønster, hvor smittsom spredningen er, hvilke tiltak vi har i samfunnet (hygiene, munnbind, kontaktmønster), befolkningstetthet og mobilitet.\n", + "\n", + "### Modell 2\n", + "Vi kan utvide modellen vår og innføre en ny kategori av individer som er mottakelige for smitte. Vi kaller dem _S_ (susceptibles).\n", + "\n", + "Vi kan anta at de smittede da utvikler seg slik.\n", + "\n", + "$$I_{n+1}=I_n+aI_nS_n$$\n", + "\n", + "Her multipliserer vi de smittede med de mottakelige for å simulere hendelsen der et smittet individ møter et mottakelig individ og kan overføre smitten. Hvorvidt smitten overføres eller ikke, bestemmes av _a_. Siden smittede individer ikke lenger er mottakelige, kan de mottakelige individene beskrives slik:\n", + "\n", + "$$S_{n+1}=S_n-aI_nS_n$$\n", + "\n", + "### Modell 3\n", + "La oss deretter utforske en modell som også tar hensyn til at det går an å bli frisk fra sykdommen. Da innfører vi en kategori til, nemlig de friske og tidligere smittede. Disse har da immunitet og kan ikke bli smittet igjen. Vi kaller dem _R_ (\"recovered\"), og de kan beskrives slik:\n", + "\n", + "$$R_{n+1}=R_n+bI_n$$\n", + "\n", + "Da må de smittede utvikle seg slik:\n", + "\n", + "$$I_{n+1}=I_n+aS_nI_n-bI_n$$\n", + "\n", + "Antall usmittede, men mottakelige individer, _S_, må fortsatt følge denne modellen:\n", + "\n", + "$$S_{n+1}=S_n-aI_nS_n$$\n", + "\n", + "Disse tre likningene utgjør det vi kaller \"SIR-modellen\" for smitteutvikling. Parameteren _b_ beskriver her _bedringsraten_, altså hvor stor andel av de smittede som blir friske, beskrevet av leddet $b\\cdot I_n$. Bedringsraten kommer an på sykdommen som spres, og hvor fort folk blir friske av sykdommen." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 3. Resultater og drøfting\n", + "Vi ser på tre modellene for seg, og plotter resultatene gitt bestemte verdier av parameterne _a_ og _b_. Først importerer vi nødvendige biblioteker:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "import pandas as pd" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Modell 1\n", + "\n", + "Vi starter med å se på den enkleste modellen, som forutsetter at ingen dør eller blir friske, og/eller at det ikke finnes noen immunitet mot sykdommen." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "N = 157759 # Populasjonsstørrelse\n", + "a = 0.2 # Kontaktrate per uke\n", + "tid_slutt = 48 # Antall uker vi ønsker å simulere\n", + "\n", + "# Startverdier\n", + "I = 3 # Antall smittede til å begynne med\n", + "\n", + "# Lister for å spare på verdiene\n", + "smittede = [I]\n", + "t = [0]\n", + "\n", + "for tid in range(tid_slutt):\n", + " I = I + a*I # Modellen\n", + " smittede.append(I)\n", + " t.append(tid)\n", + "\n", + "plt.plot(t,smittede,label='Smittede')\n", + "plt.xlabel('Antall uker fra siste uke i september 2004')\n", + "plt.ylabel('Antall individer')\n", + "plt.legend() # Viser merkelapper\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Modellen sier at antall smittede individer ved neste tidssteg er lik antall smittede individer ved forrige tidssteg + en viss andel (_a_) av antall individer som sprer smitten videre.\n", + "\n", + "Modellen forutsetter enten at det ikke er noen immunitet innenfor smittemengden, altså at ingen smittede møter på personer som allerede er smittet. Det kan være et realistisk bilde i en stor populasjon i begynnelsen av et smitteforløp. Det er derfor usannsynlig at modellen beskriver utvikling langt fram i tid. Modellen forutsetter også at ingen blir friske i løpet av den tiden vi ser på. Igjen peker dette på at modellen kun kan gjelde for et kort tidsrom." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Modell 2\n", + "\n", + "Vi utvider modellen ved å legge til en kategori for mottakelige individer, altså individer som kan få sykdommen." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "N = 157759 # Populasjonsstørrelse\n", + "a = 0.5/N # Kontaktrate\n", + "tid_slutt = 48 # Antall uker vi ønsker å simulere\n", + "\n", + "# Startverdier\n", + "I = 3 # Antall smittede til å begynne med\n", + "S = N-I # Antall usmittede til å begynne med\n", + "\n", + "# Lister for å spare på verdiene\n", + "mulige = [S]\n", + "smittede = [I]\n", + "t = [0]\n", + "\n", + "for i in range(tid_slutt):\n", + " # Lager variabelen endring for å ikke endre I eller S før ny I eller S beregnes\n", + " endring = a*S*I \n", + " I = I + endring\n", + " S = S - endring\n", + " # Legger inn verdier i listene\n", + " smittede.append(I)\n", + " mulige.append(S)\n", + " t.append(i)\n", + " \n", + "plt.plot(t,smittede,label='Smittede')\n", + "plt.plot(t,mulige,label='Mulige')\n", + "plt.xlabel('Antall uker fra siste uke i september 2004')\n", + "plt.ylabel('Antall individer')\n", + "plt.legend() # Viser merkelapper\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "I modellen blir alle smittet, og ingen blir friske. Modellen er derfor lite egna til å studere smitteutvikling, verken over kort tid (individene smittes for langsomt) eller over lang tid (individene blir aldri friske), med mindre vi har å gjøre med en sykdom som gir betydelige langtidsvirkninger.\n", + "\n", + "Modellen sier at antall mottakelige er lik antall mottakelige ved forrige tidssteg minus andelen som er smittet. Årsaken til at vi også ganger inn de mottakelige her, er at smittespredningen nå avhenger av både mottakelige og de som allerede er smittet. At vi multipliserer disse faktorene er ikke nødvendigvis det eneste rette. Det kan vise seg at modellen avhenger enda mer av antall mottakelige enn smittede. Da kan vi for eksempel kvadrere antall mottakelige i modellen:\n", + "\n", + "$$I_{n+1}=I_n+aI_nS_n^2$$\n", + "\n", + "Husk at dette er modeller, og at det ofte er flere muligheter for å lage en modell som beskriver et system. Vi har ennå ikke validert modellen vår." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Modell 3\n", + "\n", + "Den siste modellen vi skal se på, innfører en kategori for friskmeldte, og dermed immune, individer." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1509\n" + ] + } + ], + "source": [ + "N = 157759 # Populasjonsstørrelse\n", + "a = 4/N # Kontaktrate\n", + "b = 3.5 # Bedringsrate\n", + "tid_slutt = 48 # Antall uker vi ønsker å simulere\n", + "\n", + "# Startverdier\n", + "I = 3 # Antall smittede til å begynne med\n", + "S = N-I # Antall usmittede til å begynne med\n", + "R = 0\n", + "\n", + "# Lister for å spare på verdiene\n", + "mulige = [S]\n", + "smittede = [I]\n", + "friskmeldte = [R]\n", + "t = [0]\n", + "\n", + "for i in range(tid_slutt):\n", + " endring_smittede = a*S*I\n", + " endring_friske = b*I\n", + " I = I + endring_smittede - endring_friske\n", + " S = S - endring_smittede\n", + " R = R + endring_friske\n", + " # Legger inn verdier i listene\n", + " smittede.append(I)\n", + " mulige.append(S)\n", + " friskmeldte.append(R)\n", + " t.append(i)\n", + "\n", + "plt.plot(t,smittede,label='Smittede')\n", + "plt.plot(t,mulige,label='Mulige')\n", + "plt.plot(t,friskmeldte,label='Friskmeldte')\n", + "plt.xlabel('Antall uker fra siste uke i september 2004')\n", + "plt.ylabel('Antall individer')\n", + "plt.legend() # Viser merkelapper\n", + "plt.show()\n", + "\n", + "plt.title('Antall smittede')\n", + "plt.xlabel('Antall uker fra siste uke i september 2004')\n", + "plt.ylabel('Antall individer')\n", + "plt.plot(t,smittede)\n", + "plt.grid()\n", + "plt.show()\n", + "\n", + "print(int(max(smittede)))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi tar utgangspunkt i denne modellen og sammenlikner de smittede med et datasett som viser antall smittede i en influensasesong. Vi justerer _a_ og _b_ slik at de passer best mulig med dataene." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "N = 157759 # Populasjonsstørrelse\n", + "a = 4/N # Kontaktrate\n", + "b = 3.5 # Bedringsrate\n", + "tid_slutt = 48 # Antall uker vi ønsker å simulere\n", + "\n", + "# Startverdier\n", + "I = 3 # Antall smittede til å begynne med\n", + "S = N-I # Antall usmittede til å begynne med\n", + "R = 0\n", + "\n", + "# Lister for å spare på verdiene\n", + "mulige = [S]\n", + "smittede = [I]\n", + "friskmeldte = [R]\n", + "t = [0]\n", + "\n", + "for i in range(tid_slutt):\n", + " endring_smittede = a*S*I\n", + " endring_friske = b*I\n", + " # Legg inn likningene her\n", + " I = I + endring_smittede - endring_friske\n", + " S = S - endring_smittede\n", + " R = R + endring_friske\n", + " # Legger inn verdier i listene\n", + " smittede.append(I)\n", + " mulige.append(S)\n", + " friskmeldte.append(R)\n", + " t.append(i)\n", + "\n", + "# Les og plott dataene her\n", + "data = pd.read_csv('influensa.txt', skiprows=2,delimiter=',')\n", + "uke = data[\"uker\"]\n", + "smittede_data = data[\"infiserte\"]\n", + "\n", + "plt.plot(uke, smittede_data, label = 'Datapunkter')\n", + "plt.plot(t, smittede, label = 'Modelldata')\n", + "plt.title('Sammenlikning av modelldata med reelle data')\n", + "plt.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Modell 3 viser et forløp der antall smittede øker sakte i starten, og raskere fram til ca. uke 13. Da snur trenden, og antall smittede går nedover fra ca. uke 17. Det er maksimalt 1509 smittede i populasjonen på samme tid. Etter at antall smittede har nådd 0 (ca. uke 27), har vi ifølge modellen oppnådd flokkimmunitet, eller influensasesongen er over, og ingen flere individer blir smittet. Merk at modellen forutsetter at ingen dør av sykdommen, noe som ikke stemmer helt med influensa. Det er derimot ofte ganske få døde i forhold til befolkningen, så modellen gir uansett et godt estimat på hvor mange som er smittet til enhver tid i løpet av sesongen.\n", + "\n", + "Vi validerer modellen og tilpasser parameterne ved hjelp av datasettet som viser antall smittede i en populasjon på $N = 157 759$ testede individer. Den best tilpassede kurven får vi for $a \\approx 4/N$ og $b \\approx 3.5$. Siden dataene og modellen beskriver et vanlig influensavirus som kommer igjen hver høst i omtrent samme variant, kan modellen brukes til å estimere smittsomhet og sykdomstopper også for neste sesong. Parameterne i modellen, spesielt smitteraten, må likevel tilpasses sosiale og helsemessige forhold i den aktuelle populasjonen, f.eks. befolkningstetthet, generell hygiene og levestandard." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 5. Konklusjon\n", + "Vi har modellert ulike forløp for spredning av smitte ved hjelp av tre ulike smittemodeller med ulik kompleksitet. Modellene er validert ved å utføre parameterjustering med grunnlag i et reellt datasett som beskriver smitte\n", + "\n", + "Vi kan utvide modellen ved å innføre en kategori for døde, i tillegg til en vaksineringseffekt, der vi starter med at en viss andel av populasjonen er immune ved sykdommens start." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema5_modellering/newtons_avkjolingslov.ipynb b/_sources/docs/tema5_modellering/newtons_avkjolingslov.ipynb new file mode 100644 index 00000000..db8d8160 --- /dev/null +++ b/_sources/docs/tema5_modellering/newtons_avkjolingslov.ipynb @@ -0,0 +1,166 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Newtons avkjølingslov" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "from pylab import *" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Newtons avkjølingslov sier at forandring i temperatur skal være proporsjonal i forhold til differansen mellom temperaturen til objektet og temperaturen til omgivelsen.
\n", + "
\n", + "$\n", + "\\Large\n", + "\\begin{equation*}\n", + " \\frac{\\partial T}{\\partial t} = {-k} (T - T_{omg})\n", + "\\end{equation*}$" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0, 0.5, 'temperatur i celsius')" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "#dT/dt = -k(T-Tomg)\n", + "\n", + "#Startverider\n", + "T0= 75 #temperatur vann i kopp\n", + "T_omg = 18 #temperatur omgivelse\n", + "k = 0.5 #k-verdien til koppen\n", + "\n", + "\n", + "#Tidsparamtere\n", + "t0 = 0 #starttid\n", + "t_slutt = 13 #slutt-tid\n", + "dt= 1e-5 #steglengde\n", + "N = int((t_slutt - t0)/dt) #Intervall\n", + "\n", + "# Arrays\n", + "T = zeros (N+1) \n", + "t = zeros (N+1)\n", + "\n", + "T[0] = T0\n", + "t[0] = t0\n", + "\n", + "## Eulers\n", + "for i in range (N):\n", + " Tder = -k*(T[i]-T_omg)\n", + " T[i+1] = T[i] + Tder*dt\n", + " t[i+1] = t[i] + dt\n", + " \n", + "plot (t,T)\n", + "grid ()\n", + "title ('Avkjøling av vann i kopp')\n", + "xlabel ('tid (min)')\n", + "ylabel ('temperatur i celsius')" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0, 0.5, 'temperatur i celsius')" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "#Vi har målt temperaturen av vann i en kopp over 12.5 minutter. Nedenfor er resultatet: \n", + "\n", + "temperatur_kopp = array([75,73,71,70,69,68.5,68,67,66.5,65,64.5,64,63.5,63,62.5,62,61.5,60.5,60,59,58.5,58,57.5,57,56.5,56,55])\n", + "tid = arange(0,len(temperatur_kopp),1)\n", + "\n", + "plot(tid/2,temperatur_kopp,label=\"Datapunkter\") #(Tid/2 fordi det var målt per 30s)\n", + "plot(t,T)\n", + "grid()\n", + "title('Avkjøling av vann i kopp')\n", + "xlabel('tid (min)')\n", + "ylabel('temperatur i celsius')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema5_modellering/pingviner.ipynb b/_sources/docs/tema5_modellering/pingviner.ipynb new file mode 100644 index 00000000..8109d287 --- /dev/null +++ b/_sources/docs/tema5_modellering/pingviner.ipynb @@ -0,0 +1,664 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Maskinlæring (med pingviner)\n", + "\n", + "Vi skal lage en maskinlæringsmodell for å artsbestemme ringpingviner, bøylepingviner og adeliepingviner.\n", + "\n", + "```{image} bilder/pingviner.png\n", + ":alt: pingviner\n", + ":class: bg-primary mb-1\n", + ":width: 300px\n", + ":align: center\n", + "```\n", + "\n", + "```{image} bilder/pingvindata.png\n", + ":alt: pingviner\n", + ":class: bg-primary mb-1\n", + ":width: 300px\n", + ":align: center\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Datahåndtering med Pandas" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import seaborn as sns" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [], + "source": [ + "pingviner = pd.read_csv(\"datafiler/pengwings.txt\")" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
speciesislandbill_length_mmbill_depth_mmflipper_length_mmbody_mass_gsex
0AdelieTorgersen39.118.7181.03750.0MALE
1AdelieTorgersen39.517.4186.03800.0FEMALE
2AdelieTorgersen40.318.0195.03250.0FEMALE
3AdelieTorgersenNaNNaNNaNNaNNaN
4AdelieTorgersen36.719.3193.03450.0FEMALE
\n", + "
" + ], + "text/plain": [ + " species island bill_length_mm bill_depth_mm flipper_length_mm \\\n", + "0 Adelie Torgersen 39.1 18.7 181.0 \n", + "1 Adelie Torgersen 39.5 17.4 186.0 \n", + "2 Adelie Torgersen 40.3 18.0 195.0 \n", + "3 Adelie Torgersen NaN NaN NaN \n", + "4 Adelie Torgersen 36.7 19.3 193.0 \n", + "\n", + " body_mass_g sex \n", + "0 3750.0 MALE \n", + "1 3800.0 FEMALE \n", + "2 3250.0 FEMALE \n", + "3 NaN NaN \n", + "4 3450.0 FEMALE " + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pingviner.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
speciesislandbill_length_mmbill_depth_mmflipper_length_mmbody_mass_gsex
339GentooBiscoeNaNNaNNaNNaNNaN
340GentooBiscoe46.814.3215.04850.0FEMALE
341GentooBiscoe50.415.7222.05750.0MALE
342GentooBiscoe45.214.8212.05200.0FEMALE
343GentooBiscoe49.916.1213.05400.0MALE
\n", + "
" + ], + "text/plain": [ + " species island bill_length_mm bill_depth_mm flipper_length_mm \\\n", + "339 Gentoo Biscoe NaN NaN NaN \n", + "340 Gentoo Biscoe 46.8 14.3 215.0 \n", + "341 Gentoo Biscoe 50.4 15.7 222.0 \n", + "342 Gentoo Biscoe 45.2 14.8 212.0 \n", + "343 Gentoo Biscoe 49.9 16.1 213.0 \n", + "\n", + " body_mass_g sex \n", + "339 NaN NaN \n", + "340 4850.0 FEMALE \n", + "341 5750.0 MALE \n", + "342 5200.0 FEMALE \n", + "343 5400.0 MALE " + ] + }, + "execution_count": 30, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pingviner.tail()" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "RangeIndex: 344 entries, 0 to 343\n", + "Data columns (total 7 columns):\n", + " # Column Non-Null Count Dtype \n", + "--- ------ -------------- ----- \n", + " 0 species 344 non-null object \n", + " 1 island 344 non-null object \n", + " 2 bill_length_mm 342 non-null float64\n", + " 3 bill_depth_mm 342 non-null float64\n", + " 4 flipper_length_mm 342 non-null float64\n", + " 5 body_mass_g 342 non-null float64\n", + " 6 sex 333 non-null object \n", + "dtypes: float64(4), object(3)\n", + "memory usage: 18.9+ KB\n" + ] + } + ], + "source": [ + "pingviner.info()" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [], + "source": [ + "pingviner[\"totalnebb\"] = pingviner[\"bill_length_mm\"] + pingviner[\"bill_depth_mm\"]" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
bill_length_mmbill_depth_mmflipper_length_mmbody_mass_gtotalnebb
count342.000000342.000000342.000000342.000000342.000000
mean43.92193017.151170200.9152054201.75438661.073099
std5.4595841.97479314.061714801.9545365.351485
min32.10000013.100000172.0000002700.00000047.600000
25%39.22500015.600000190.0000003550.00000057.300000
50%44.45000017.300000197.0000004050.00000060.350000
75%48.50000018.700000213.0000004750.00000064.575000
max59.60000021.500000231.0000006300.00000076.600000
\n", + "
" + ], + "text/plain": [ + " bill_length_mm bill_depth_mm flipper_length_mm body_mass_g \\\n", + "count 342.000000 342.000000 342.000000 342.000000 \n", + "mean 43.921930 17.151170 200.915205 4201.754386 \n", + "std 5.459584 1.974793 14.061714 801.954536 \n", + "min 32.100000 13.100000 172.000000 2700.000000 \n", + "25% 39.225000 15.600000 190.000000 3550.000000 \n", + "50% 44.450000 17.300000 197.000000 4050.000000 \n", + "75% 48.500000 18.700000 213.000000 4750.000000 \n", + "max 59.600000 21.500000 231.000000 6300.000000 \n", + "\n", + " totalnebb \n", + "count 342.000000 \n", + "mean 61.073099 \n", + "std 5.351485 \n", + "min 47.600000 \n", + "25% 57.300000 \n", + "50% 60.350000 \n", + "75% 64.575000 \n", + "max 76.600000 " + ] + }, + "execution_count": 36, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pingviner.describe()" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 38, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.pairplot(pingviner, hue = \"species\")" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 40, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "korrelasjon = pingviner.corr()\n", + "sns.heatmap(korrelasjon, annot=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Maskinlæring" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.model_selection import train_test_split, cross_val_score\n", + "from sklearn import tree\n", + "from sklearn.metrics import accuracy_score, confusion_matrix" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "metadata": {}, + "outputs": [], + "source": [ + "pingviner.dropna(inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 74, + "metadata": {}, + "outputs": [], + "source": [ + "kriterier = pingviner[[\"body_mass_g\", \"bill_length_mm\", \"bill_depth_mm\", \"flipper_length_mm\"]]\n", + "kategorier = pingviner[\"species\"]" + ] + }, + { + "cell_type": "code", + "execution_count": 75, + "metadata": {}, + "outputs": [], + "source": [ + "testandel = 0.20 # bruker 20 % av datasettet til å teste\n", + "ml_data = train_test_split(kriterier, kategorier, test_size=testandel, random_state=42)\n", + "\n", + "treningskriterier = ml_data[0]\n", + "testkriterier = ml_data[1]\n", + "treningskategorier = ml_data[2]\n", + "testkategorier = ml_data[3]" + ] + }, + { + "cell_type": "code", + "execution_count": 76, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/plain": [ + "DecisionTreeClassifier()" + ] + }, + "execution_count": 76, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "modell = tree.DecisionTreeClassifier()\n", + "modell.fit(treningskriterier, treningskategorier)" + ] + }, + { + "cell_type": "code", + "execution_count": 77, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.9850746268656716" + ] + }, + "execution_count": 77, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "forutsigelser = modell.predict(testkriterier)\n", + "accuracy_score(testkategorier, forutsigelser)" + ] + }, + { + "cell_type": "code", + "execution_count": 78, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array(['Adelie'], dtype=object)" + ] + }, + "execution_count": 78, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "modell.predict([[2000, 40, 60, 500]])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/docs/tema5_modellering/regresjonsmodeller.ipynb b/_sources/docs/tema5_modellering/regresjonsmodeller.ipynb new file mode 100644 index 00000000..9816d36d --- /dev/null +++ b/_sources/docs/tema5_modellering/regresjonsmodeller.ipynb @@ -0,0 +1,263 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Regresjonsmodeller\n", + "\n", + "Regresjon er en form for modellering som brukes i mange ulike fagdisipliner, fra samfunnsvitenskap og økonomi til naturvitenskap og matematikk. Det betyr å finne en funksjon som er best tilpasset datasettet vårt. Regresjon tar ofte utgangspunkt i _minste kvadraters metode_, som gjør at vi får en modellfunksjon som gir minst mulig varians. Regresjonsmodeller passer derfor ofte ikke perfekt med alle, eller noen, av punktene. Modellene har heller et avvik fra gjennomsnittet av punktene (varians) som er så lite som mulig.\n", + "\n", + "## Lineær regresjon\n", + "\n", + "Vi har tidligere sett på enkel [polynomregresjon](https://andreasdh.github.io/NAT3000/docs/tema3_datahandtering/statistikk.html#regresjon) med funksjonen _polyfit_ fra numpy-biblioteket. Denne kan brukes dersom vi for eksempel ønsker å utføre lineær regresjon eller andregradsregresjon. Men hvis vi ønsker å tilpasse dataene våre til en vilkårlig modell, må vi bruke en annen funksjon. Funksjonen _curve\\_fit_ fra scipy-biblioteket har den funksjonaliteten vi ønsker. Da definerer vi en bestemt modell, i form av en Python-funksjon, som er utgangspunktet for regresjonen vår. Modellfunksjonen må ta som parameter en uavhengig variabel, i tillegg til koeffisientene/konstantene i uttrykket. Hvis vi for eksempel ønsker å gjøre en lineær regresjon, kan vi definere følgende funksjon:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "def modell(x, a, b):\n", + " return a*x + b" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Her ser vi at variabelen _x_ og konstantene _a_ og _b_ er gitt som parametre i funksjonen. La oss lage en lineær modell ut fra følgende data, som et eksempel:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "x = [1, 2, 3, 4, 5]\n", + "y = [2.1, 3.9, 6.5, 7.1, 11.0]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Først importerer vi funksjonen fra underbiblioteket _optimize_, som finnes i scipy-biblioteket. Deretter bruker vi funksjonen til å lage en lineær modell som passer best mulig med dataene våre. Funksjonen _curve_\\fit_ gir både koeffisientene _a_ og _b_, men også et mål på hvor godt modellen passer dataene våre som kalles _kovarians_. Dette skal vi ikke se på her, men vi må passe på å lagre koeffisientene og kovariansen i ulike variabler, slik at vi får ut riktige verdier for modellen vår. Parametrene i _curve\\_fit_ er modellfunksjonen vår og dataene vi vil beskrive med modellen vår (her _x_ og _y_): " + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Koeffisienter: [ 2.1 -0.18]\n", + "Kovarians: [[ 0.06359996 -0.19079989]\n", + " [-0.19079989 0.69959972]]\n" + ] + } + ], + "source": [ + "from scipy.optimize import curve_fit\n", + "\n", + "koeffisienter, kovarians = curve_fit(modell, x, y)\n", + "print(\"Koeffisienter:\", koeffisienter)\n", + "print(\"Kovarians:\", kovarians)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Vi overser her de fire verdiene som utgjør kovariansen vår, og ser at vi har fått koeffisientene $a = 2,1$ og $b = -0,18$. Dette betyr at regresjonsmodellen har formen $y = 2,1x - 0,18$. Koeffisientene kommer i den rekkefølgen vi har gitt i modellfunksjonen vår. La oss derfor legge dem i hver sin variabel: " + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "a = koeffisienter[0]\n", + "b = koeffisienter[1]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Nå kan vi for eksempel plotte datapunktene og modellfunksjonen i samme koordinatsystem. Da genererer vi noen nye _x_-verdier som vi kan lage funksjonsverdier ut fra, og deretter bruker vi modellfunksjonen til å generere _y_-verdier:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "x_ny = np.linspace(0, 6, 1000)\n", + "y_modell = modell(x_ny, a, b)\n", + "\n", + "plt.plot(x_ny, y_modell, color = \"cornflowerblue\", label = \"Tilpasset modell\")\n", + "plt.scatter(x, y, color = \"navy\", label = \"Datapunkter\")\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"y\")\n", + "plt.grid()\n", + "plt.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "En måte å måle hvor godt modellen er tilpasset dataene våre, er å regne ut $R^2$. Da mater vi inn de originale _x_-verdiene i modellen vår, og sammenlikner dem med de originale _y_-verdiene:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "R2 = 0.9585289514866979\n" + ] + } + ], + "source": [ + "from sklearn.metrics import r2_score\n", + "\n", + "x = np.array(x)\n", + "y_predikert = modell(x,a,b)\n", + "\n", + "R2 = r2_score(y, y_predikert)\n", + "print(\"R2 =\", R2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "En $R^2$-score varierer mellom 0 og 1, der 1 er perfekt tilpasning til modellen, og 0 er ingen tilpasning. Desto høyere verdi $R^2$ har, desto bedre forklarer modellen de allerede eksisterende dataene (men ikke nødvendigvis data i framtiden!)." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Andre regresjonsmodeller\n", + "\n", + "Hvis vi ønsker å bruke andre regresjonsmodeller, er det bare å endre modellfunksjonen vår. Dersom vi for eksempel ønsker å gjøre en logistisk regresjon av dataene våre ovenfor, kan vi definere en generell logistisk funksjon:\n", + "\n", + "$$f(x) = \\frac{c}{1 + a\\cdot e^{-bx}}$$\n", + "\n", + "Dette kan vi gjøre enkelt i Python, og vi kan gjenta den samme prosedyren med tilpasning og plotting som med lineær regresjon. Et fullstendig program vil kunne se slik ut:" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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ltPS0khJSSEuLg6n00laWhp+v7/R5UaMGMGgQYMAuOOOO1i1alXtEfex7SYnJxMfH09aWhrx8fHcdNNNpKenM3z4cA4ePFj7XJs3b+YnP/kJH330EWeccQYQGJ0zMTGx9rkWL17M119/jcMR+CJYXl6OMYbExEQmT55MRkbGae2rU0lKSqod17++aD2lvql1WWsp3O5h3vJKDpT46X9mHNcOT+acMzoDvSJWV7ipruYLRW0hDX5jTDyB0M+11r4NYK3dX2f+C8CCRlZvNTt3ljRrektt27YNp9NJRkYGTzzxRIPDLdfX2LDM0PAwzvWnu93u45apO7xy3XGYevTogdvtZvXq1bXBX5/f72fRokW14+zXdWzwOGm+HQe8/G1ZJd9866VHJycPT3RxQc/4E15fkXAJZa8eA7wIbLTW/q7O9B51FrseWB+qGo7p2TO9WdNb4tglBx988EGMMZSUlNCjRw8cDgd//etfa4dbrj9UcmPLAaxcuZLt27fj9/t54403GD16NBBo+tq4cSN+v5933nmnSfV17NiR999/n//4j/+o/dpYv5bx48fzpz/9qfZxS8b4l+9UVvvJXVzBrHml7D3iY8qYFB67tQMDeyUo9CWiQjk03yhgKnBFva6b/22MWWeMWQuMBX4awhoAmDVrHCkpx19UJCUlnlmzxp3W81ZVVdV257zyyisZP348jz32GAD3338/r7zyCoMHD2bTpk21R8yDBg3C6XQycuRIZs+e3ehyELgK14MPPsh5551H7969uf766wH49a9/zaRJkxg5ciQ9evQ4sbBGZGZmsmDBAh544AFWrFjBNddcwzvvvFP74+7TTz/N6tWrGTRoEAMGDNBwyi1krWXl5mp+8XoJizdUM25QIrOmdCTngiRdTlCig7U26m/Dhg2z9W3YsOGEaQ0pLS211lr76qtrba9es60xj9tevWbbV19d26T1Q+VYXY3Jy8uzEydODFM13zlVXaF0stc0Ly8vfIU0Q/26DpZ47e/ml9gfPltsf/m3o7bogCcq6ooWqqv5Tqc2oMA2kKkx0yF7ypSBTJkyMNJlSDtlreWzTTXM/bQCgNtGpzD2gkSddCVRKWaCv63JycmJ2l4GcrySSj9/za9gTZGHc86I454rUunaQQOnSfRq08FvrdWPZO2EbQNXgmvIrrIO/H1uCW6P5ZZRKYwblIhD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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "from scipy.optimize import curve_fit\n", + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "x = [1, 2, 3, 4, 5]\n", + "y = [2.1, 3.9, 6.5, 7.1, 11.0]\n", + "\n", + "def modell_logistisk(x, a, b, c):\n", + " return c/(1 + a*np.exp(-b*x))\n", + "\n", + "koeffisienter, kovarians = curve_fit(modell_logistisk, x, y)\n", + "\n", + "a = koeffisienter[0]\n", + "b = koeffisienter[1]\n", + "c = koeffisienter[2]\n", + "\n", + "x_ny = np.linspace(0, 20, 1000)\n", + "y_modell = modell_logistisk(x_ny, a, b, c)\n", + "\n", + "plt.plot(x_ny, y_modell, color = \"cornflowerblue\", label = \"Tilpasset modell\")\n", + "plt.scatter(x, y, color = \"navy\", label = \"Datapunkter\")\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"y\")\n", + "plt.grid()\n", + "plt.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "```{admonition} Oppgave\n", + ":class: tip\n", + "1. Forklar hvordan programmet ovenfor fungerer.\n", + "2. Lag en modell som beskriver dataene som beskriver [antall smittede som funksjon av tid](https://raw.githubusercontent.com/andreasdh/NAT3000/master/docs/datafiler/smitte_virus.csv).\n", + "3. Tolk modellen og beskriv hva den kan fortelle oss.\n", + "4. Regn ut $R^2$ for modellen og forklar hva dette sier oss.\n", + "```" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/tema5_modellering/temperaturmodellering.ipynb b/_sources/docs/tema5_modellering/temperaturmodellering.ipynb new file mode 100644 index 00000000..79ccc2ab --- /dev/null +++ b/_sources/docs/tema5_modellering/temperaturmodellering.ipynb @@ -0,0 +1,357 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "82210676", + "metadata": {}, + "outputs": [], + "source": [ + "from pylab import *" + ] + }, + { + "cell_type": "markdown", + "id": "af31e097", + "metadata": {}, + "source": [ + "# Strålingsbalansen på jorda" + ] + }, + { + "cell_type": "markdown", + "id": "7ac71bb7", + "metadata": {}, + "source": [ + "Det som hovedsakelig varmer opp planeten vår, er sollys. Solen sender ut energi i form av elektromagnetisk stråling som treffer jordkloden. All elektromagnetisk stråling som treffer toppen av atmosfæren, har blitt målt til ca 1361 W/m$^2$ Hvor mye energi som treffer toppen av atmosfæren er nesten konstant, og har bare variert med 0.2 prosent på 400 år. Strålingen blir kalt for _solkonstanten_." + ] + }, + { + "cell_type": "markdown", + "id": "37e33057", + "metadata": {}, + "source": [ + "![sunlight_angle.png](https://www.uio.no/studier/emner/matnat/ifi/IN-KJM1900/h20/datafiler/sunlight_angle.png)" + ] + }, + { + "cell_type": "markdown", + "id": "71786d5c", + "metadata": {}, + "source": [ + "![solar_insolation_planet_sphere_disk_600x320.png](https://www.uio.no/studier/emner/matnat/ifi/IN-KJM1900/h20/datafiler/solar_insolation_planet_sphere_disk_600x320.png)" + ] + }, + { + "cell_type": "markdown", + "id": "6e1fc738", + "metadata": {}, + "source": [ + "### Energi som treffer planeten\n", + "\n", + "$$ E_{inn} = K_s \\cdot \\pi R{_E}^2$$" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "e74d82f2", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Planeten blir truffet av 1.735e+17 W stråling\n" + ] + } + ], + "source": [ + "Ks = 1361 #[watt per kvadratmeter] Solinnstråling\n", + "radius_jorda = 6371000 #[m] Jorda\n", + "\n", + "e_inn = Ks * pi * radius_jorda**2\n", + "\n", + "print(f\"Planeten blir truffet av {e_inn:.3e} W stråling\")" + ] + }, + { + "cell_type": "markdown", + "id": "363ff8ab", + "metadata": {}, + "source": [ + "### Energi inn i systemet\n", + "\n", + "$$E_{absorbert} = K_s \\cdot (1 - albedo) \\cdot \\pi R{_E}^2$$" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "e3eea153", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Planeten absorberer 1.215e+17 W stråling\n" + ] + } + ], + "source": [ + "albedo = 0.30\n", + "e_absorbert = Ks * (1-albedo) * pi * radius_jorda**2\n", + "print (f\"Planeten absorberer {e_absorbert:.3e} W stråling\")" + ] + }, + { + "cell_type": "markdown", + "id": "b910a359", + "metadata": {}, + "source": [ + "### Energi ut av systemet\n", + "\n", + "Stefan-Boltzmann loven: Hvor mye energi som blir sendt ut fra overfalten til et legeme per flatenhet og tidsenhet i form av varmestråling. \n", + "\n", + "$$\\phi=\\sigma T^4$$\n", + "\n", + "$\\sigma$ er Stefan-Boltzmann constant. $\\sigma = 5.670373 \\cdot 10^{-8} W / (m^2K^4)$\n", + "\n", + "$$E_{emittert} = \\sigma T^4 \\cdot 4\\pi R{_E}^2$$\n" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "63132bac", + "metadata": {}, + "outputs": [], + "source": [ + "sigma = 5.670373e-8" + ] + }, + { + "cell_type": "markdown", + "id": "0b144ecf", + "metadata": {}, + "source": [ + "### Energi inn = Energi ut\n", + "\n", + "\n", + "På grunn av energiprinsippet, loven om at energi er konstant, må energi inn på planeten være det samme som energi ut.\n", + "\n", + "$$ E_{absorbert}= E_{emittert}$$\n", + "\n", + "$$ K_s \\cdot (1 - albedo) \\cdot \\pi R{_E}^2 = \\sigma T^4 \\cdot 4\\pi R{_E}^2$$\n", + "\n", + "$$T = \\sqrt[4]{\\frac{K_s\\cdot(1-albedo)}{4\\sigma}}$$\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "11db413a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Beregningen av gjennomsnittstemperaturen gir en temperatur på: -18.57 celsius\n" + ] + } + ], + "source": [ + "temperatur_kelvin = ((Ks*(1-albedo))/(4*sigma))**(1/4)\n", + "temperatur_celsius = temperatur_kelvin - 273.15\n", + "print (f\"Beregningen av gjennomsnittstemperaturen gir en temperatur på: {temperatur_celsius:.2f} celsius\")" + ] + }, + { + "cell_type": "markdown", + "id": "0ba8cdc5", + "metadata": {}, + "source": [ + "# Støtte til modelleringsoppgave 2 (temperaturmodellering)" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "938f7515", + "metadata": {}, + "outputs": [], + "source": [ + "\"\"\"Konstanter\"\"\"\n", + "#Stefan-Boltzman Konstant\n", + "sigma=(5.67e-8) #[W m^2 K^4]\n", + "#Temperatur Sola\n", + "temperatur_sol = 5778 #[Kelvin]\n", + "diameter_sol = 1391016e3 #[m]\n", + "distanse_sol_jord = 149600000e3 #[m]\n", + "radius_jord = 6371e3 #[m]\n", + "albedo = 0.3" + ] + }, + { + "cell_type": "markdown", + "id": "fcf5f37b", + "metadata": {}, + "source": [ + "## Oppgave 1)\n", + "Formelen for å kalkulere mengden energi som treffer toppen av atmosfæren ($S_0$) er: \n", + "\n", + "$$S_0 = \\large\\frac{{radius_{sun}}^2}{{distanse_{jord\\space sol}}^2} \\cdot stråling\\space sol$$ " + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "bd78a3f6", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "1365.948361181013\n" + ] + } + ], + "source": [ + "stråling_sol = sigma*(temperatur_sol**4)\n", + "s0 = ((diameter_sol/2)**2)/(distanse_sol_jord**2)*stråling_sol\n", + "print (s0)" + ] + }, + { + "cell_type": "markdown", + "id": "36d1064c", + "metadata": {}, + "source": [ + "## Oppgave 2)\n", + "Bruk energiprinsippet og Stefan-Boltzmanns lov til å lage et utrykk for gjennomsnittlig temperatur på jorden. Noe av innstrålingen fra solen vil bli reflektert, og målet for refleksjonen til en flate kalles albedo. Legg til denne refleksjonsfaktoren for jordkloden og kalkuler temperaturen på jorden. Anta at\n", + "temperaturen på planeten er konstant, og at planeten er en flat sirkel." + ] + }, + { + "cell_type": "markdown", + "id": "0dcddf6a", + "metadata": {}, + "source": [ + "![solar_insolation_planet_sphere_disk_600x320.png](https://www.uio.no/studier/emner/matnat/ifi/IN-KJM1900/h20/datafiler/solar_insolation_planet_sphere_disk_600x320.png)" + ] + }, + { + "cell_type": "markdown", + "id": "5bc539f3", + "metadata": {}, + "source": [ + "### Utrykket for temperatur man skal komme frem til:\n", + "$$T = \\sqrt[4]{\\frac{K_s\\cdot(1-albedo)}{4\\sigma}}$$\n", + "\n", + "Prøv å vis hvordan man får dette utrykket." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "5ad019b4", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "-18.336567683297915" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "temperatur = ((s0*(1-albedo))/(4*sigma))**(1/4)\n", + "temperatur - 273.15" + ] + }, + { + "cell_type": "markdown", + "id": "eeba839f", + "metadata": {}, + "source": [ + "## Oppgave 3) \n", + "\n", + "Når vi skal legge til atmosfæren i modellen gjør vi ganske mange forenklinger. Vi antar tre ting (og ingen av antagelsene er faktisk sanne!): \n", + "\n", + "1) Atmosfæren har en konstant temperatur - dvs. at atmosfæren er en stor blokk hvor hele blokken har den samme temperaturen.
\n", + "2) Atmosfæren er fullstendig gjennomsiktig for stråling fra solen - dvs at all stråling fra solen treffer jordoverflaten.
\n", + "3) Atmosfæren tar imot all stråling fra jorden." + ] + }, + { + "cell_type": "markdown", + "id": "da9d605f", + "metadata": {}, + "source": [ + "![Atmosf%C3%A6re.png](https://www.uio.no/studier/emner/matnat/ifi/IN-KJM1900/h20/datafiler/atmosferestraling.png)" + ] + }, + { + "cell_type": "markdown", + "id": "4d173112", + "metadata": {}, + "source": [ + "Figuren over viser situasjonen med antagelsene:
\n", + "(1) viser solinnstårlingen som treffer jordkloden.
\n", + "(3) viser utsrålingen fra jordkloden som treffer atmosfæren.
\n", + "(2) viser situasjonen til atmosfæren. Atmosfæren vil sende ut stråling til verdensrommet, men også stråling tilbake til jorden. Energien atmosfæren sender ut kan da kalkuleres ved å bruke stefan-boltzmans lov. \n", + "\n", + "Prøv å legg inn atmosfæren som et ledd i din kalkulering og se hvordan det påvirker temperaturen.\n", + "\n", + "#### Løsning ved bruk av figuren over.\n", + "$Energi_{inn} = Energi_{ut}$ er fortsatt det som gjelder, men denne gangen blir det to ligninger. Etter systemet nevnt i oppgave 3(a) blir likningene:\n", + "\n", + "$$\\space s_0\\cdot(1-albedo) = \\sigma T_{a}^4 $$\n", + "$$\\space s_0\\cdot(1-albedo) + \\sigma T_{a}^4 = \\sigma T_{s}^4$$\n", + "\n", + "Sett likning 1 inn i 2 for å få en løsning for $T_{s}$\n", + "\n", + "Prøv å vis på figuren hvilke piler disse to likningene representerer. Prøv å forklar til deg selv hva som er gjort her for å forstå likningsystemet. \n", + "\n", + "Kommentar: Resultatet her vil være veldig høyt. I denne situasjonen vil energien til atmosfæren være det jorden sender ut. Vi har jo kalkulert at jorden blir truffet med 1365 watt/m^2, men denne energien vil bare være når solen står på sitt høyeste vertikalt rett ned på jorden. På grunn av rotasjonen til jorden, med natt og dagsykluser, og at jorden egentlig er en kule vil ikke dette være den faktiske gjennomsnittelige innstrålingen som treffer jorden. En forenkling for å finne gjennomsnitt på innstrålingen over hele jordkloden når man tenker at deler ikke får like mye sollys hele tiden vil da være: $S_{0}$/4 = 1365/4 watt/$m^2$. Dette nummeret er veldig nærme den observerte gjennomsnittelige energien som treffer jorden. Sett inn $S_{0}/4$ inn for $S_{0}$ og sjekk hva som skjer med $T_{s}$." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b38cd1ad", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/_sources/docs/temaX_grafikk/Untitled.ipynb b/_sources/docs/temaX_grafikk/Untitled.ipynb new file mode 100644 index 00000000..fe7492dc --- /dev/null +++ b/_sources/docs/temaX_grafikk/Untitled.ipynb @@ -0,0 +1,222 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Grafiske brukergrensesnitt\n", + "Vi kan benytte et bibliotek kalt _tkinter_ for å lage grafiske grensesnitt til programmene våre." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "import tkinter" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [], + "source": [ + "vindu = tkinter.Tk()\n", + "vindu.title(\"Simuleringsplattform\")\n", + "\n", + "merkelapp = tkinter.Label(vindu, text = \"Velkommen!\")\n", + "# pack brukes til å vise objektet i vinduet, omtrent som \"show\" i plotting\n", + "merkelapp.pack()\n", + "\n", + "knapp1 = tkinter.Button(vindu, text=\"Trykk her\", fg=\"green\")\n", + "knapp2 = tkinter.Button(vindu, text=\"Ikke trykk her\", fg=\"red\")\n", + "knapp1.pack()\n", + "knapp2.pack()\n", + "\n", + "vindu.mainloop()" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "vindu = tkinter.Tk()\n", + "vindu.title(\"Simuleringsplattform\")\n", + "\n", + "merkelapp = tkinter.Label(vindu, text = \"Velkommen!\")\n", + "# pack brukes til å vise objektet i vinduet, omtrent som \"show\" i plotting\n", + "merkelapp.pack()\n", + "\n", + "toppramme = tkinter.Frame(vindu)\n", + "toppramme.pack(side = \"top\")\n", + "bunnramme = tkinter.Frame(vindu)\n", + "bunnramme.pack(side = \"bottom\")\n", + "\n", + "knapp1 = tkinter.Button(bunnramme, text=\"Trykk her\", fg=\"green\")\n", + "knapp2 = tkinter.Button(toppramme, text=\"Ikke trykk her\", fg=\"red\")\n", + "knapp1.pack()\n", + "knapp2.pack()\n", + "vindu.mainloop()" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": {}, + "outputs": [ + { + "ename": "TclError", + "evalue": "can't invoke \"label\" command: application has been destroyed", + "output_type": "error", + "traceback": [ + "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[1;31mTclError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[0mCheckVar1\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mtkinter\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mIntVar\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[0mCheckVar2\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mtkinter\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mIntVar\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 4\u001b[1;33m \u001b[0mtkinter\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mLabel\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mvindu\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mtext\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;34m\"Username\"\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 5\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 6\u001b[0m \u001b[1;31m#tkinter.Checkbutton(toppramme, text = \"Machine Learning\",variable = CheckVar1,onvalue = 1, offvalue=0).grid(row=0,sticky=\"W\")\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;32m~\\anaconda3\\lib\\tkinter\\__init__.py\u001b[0m in \u001b[0;36m__init__\u001b[1;34m(self, master, cnf, **kw)\u001b[0m\n\u001b[0;32m 3141\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3142\u001b[0m \"\"\"\n\u001b[1;32m-> 3143\u001b[1;33m \u001b[0mWidget\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m__init__\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mmaster\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m'label'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mcnf\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mkw\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 3144\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3145\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;32m~\\anaconda3\\lib\\tkinter\\__init__.py\u001b[0m in \u001b[0;36m__init__\u001b[1;34m(self, master, widgetName, cnf, kw, extra)\u001b[0m\n\u001b[0;32m 2565\u001b[0m \u001b[1;32mfor\u001b[0m \u001b[0mk\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mv\u001b[0m \u001b[1;32min\u001b[0m \u001b[0mclasses\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2566\u001b[0m \u001b[1;32mdel\u001b[0m \u001b[0mcnf\u001b[0m\u001b[1;33m[\u001b[0m\u001b[0mk\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m-> 2567\u001b[1;33m self.tk.call(\n\u001b[0m\u001b[0;32m 2568\u001b[0m (widgetName, self._w) + extra + self._options(cnf))\n\u001b[0;32m 2569\u001b[0m \u001b[1;32mfor\u001b[0m \u001b[0mk\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mv\u001b[0m \u001b[1;32min\u001b[0m \u001b[0mclasses\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", + "\u001b[1;31mTclError\u001b[0m: can't invoke \"label\" command: application has been destroyed" + ] + } + ], + "source": [ + "top = tkinter.Tk()\n", + "CheckVar1 = tkinter.IntVar()\n", + "CheckVar2 = tkinter.IntVar()\n", + "tkinter.Label(vindu, text = \"Username\")\n", + " \n", + "#tkinter.Checkbutton(toppramme, text = \"Machine Learning\",variable = CheckVar1,onvalue = 1, offvalue=0).grid(row=0,sticky=\"W\")\n", + "#tkinter.Checkbutton(toppramme, text = \"Deep Learning\", variable = CheckVar2, onvalue = 0, offvalue =1).grid(row=1,sticky=\"W\")" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 34, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QVBoxLayout\n", + "app = QApplication([])\n", + "window = QWidget()\n", + "layout = QVBoxLayout()\n", + "layout.addWidget(QPushButton('Top'))\n", + "layout.addWidget(QPushButton('Bottom'))\n", + "window.setLayout(layout)\n", + "window.show()\n", + "app.exec()" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "import sys\n", + "\n", + "# 1. Import `QApplication` and all the required widgets\n", + "from PyQt5.QtWidgets import QApplication\n", + "from PyQt5.QtWidgets import QLabel\n", + "from PyQt5.QtWidgets import QWidget" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "# 2. Create an instance of QApplication\n", + "app = QApplication(sys.argv)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# 3. Create an instance of your application's GUI\n", + "window = QWidget()\n", + "window.setWindowTitle('PyQt5 App')\n", + "window.setGeometry(100, 100, 280, 80)\n", + "window.move(60, 15)\n", + "helloMsg = QLabel('

Hello World!

', parent=window)\n", + "helloMsg.move(60, 15)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "ename": "SystemExit", + "evalue": "0", + "output_type": "error", + "traceback": [ + "An exception has occurred, use %tb to see the full traceback.\n", + "\u001b[1;31mSystemExit\u001b[0m\u001b[1;31m:\u001b[0m 0\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\a_har\\anaconda3\\lib\\site-packages\\IPython\\core\\interactiveshell.py:3426: UserWarning: To exit: use 'exit', 'quit', or Ctrl-D.\n", + " warn(\"To exit: use 'exit', 'quit', or Ctrl-D.\", stacklevel=1)\n" + ] + } + ], + "source": [ + "# 4. Show your application's GUI\n", + "window.show()\n", + "\n", + "# 5. Run your application's event loop (or main loop)\n", + "sys.exit(app.exec_())" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/temaX_grafikk/tilfeldige_tall_grafikk.ipynb b/_sources/docs/temaX_grafikk/tilfeldige_tall_grafikk.ipynb new file mode 100644 index 00000000..86c2fc8f --- /dev/null +++ b/_sources/docs/temaX_grafikk/tilfeldige_tall_grafikk.ipynb @@ -0,0 +1,145 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Tilfeldige tall og grafikk (teori)\n", + "```{admonition} Læringsutbytte\n", + "Etter å ha arbeidet med dette temaet, skal du kunne:\n", + "1. Generere tilfeldige flyttall og heltall.\n", + "2. Bruke enkel Turtle-grafikk.\n", + "3. Bruke grafikkmoduler (Pygame, Turtle eller VPython) i eget prosjekt.\n", + "```\n", + "\n", + "## Tilfeldige tall" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "IFrame(\"https://www.youtube.com/embed/W5LchfvbcO4? autoplay=0&rel=0\", width=800, height=600)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Når du har sett videoen, kan du gjøre følgende oppgave for å sjekke om du forstår innholdet:\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Kast en terning 10000 ganger og plott relativ frekvens av seksere for hvert kast som funksjon av antall kast.\n", + "```\n", + "\n", + "\n", + "\n", + "\n", + "## Turtle-grafikk" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "IFrame(\"https://www.youtube.com/embed/PafdmVrIJHU? autoplay=0&rel=0\", width=800, height=600)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Når du har sett videoen, kan du gjøre følgende oppgave for å sjekke om du forstår innholdet:\n", + "\n", + "```{admonition} Underveisoppgave\n", + ":class: tip\n", + "Tegn en rettvinkla trekant der en av sidene er 3 lang og den andre er 4 lang.\n", + "```\n", + "\n", + "\n", + "" + ] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/temaX_grafikk/tkinter-demo.ipynb b/_sources/docs/temaX_grafikk/tkinter-demo.ipynb new file mode 100644 index 00000000..8687cff8 --- /dev/null +++ b/_sources/docs/temaX_grafikk/tkinter-demo.ipynb @@ -0,0 +1,267 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduksjon" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "from tkinter import *" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "vindu = Tk()\n", + "vindu.title(\"Simuleringsplattform\")\n", + "# Lager Label-Widget.\n", + " \n", + "lb = Label(vindu, text=\"Hei på deg!\")\n", + "lb.pack()\n", + "\n", + "vindu.mainloop()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Gridsystem (rutenettsystem - rad og kolonner)." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "vindu = Tk()\n", + "vindu.title(\"Simuleringsplattform\")\n", + "# Lager Label-Widget.\n", + " \n", + "lb1 = Label(vindu, text=\"Hei på deg!\")\n", + "lb2 = Label(vindu, text=\"Du er grei!\")\n", + "lb1.grid(row=0, column=0)\n", + "lb2.grid(row=1, column=1)\n", + "\n", + "vindu.mainloop()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from vpython import *\n", + "\n", + "vindu = 500\n", + "Natoms = 200 # change this to have more or fewer atoms\n", + "\n", + "# Typical values\n", + "L = 1 # container is a cube L on a side\n", + "gray = color.gray(0.7) # color of edges of container\n", + "mass = 4E-3/6E23 # helium mass\n", + "Ratom = 0.03 # wildly exaggerated size of helium atom\n", + "k = 1.4E-23 # Boltzmann constant\n", + "T = 300 # around room temperature\n", + "dt = 1E-5\n", + "\n", + "animation = canvas( width=win, height=win, align='left')\n", + "animation.range = L\n", + "animation.title = 'A \"hard-sphere\" gas'\n", + "s = \"\"\" Theoretical and averaged speed distributions (meters/sec).\n", + " Initially all atoms have the same speed, but collisions\n", + " change the speeds of the colliding atoms. One of the atoms is\n", + " marked and leaves a trail so you can follow its path.\n", + " \n", + "\"\"\"\n", + "animation.caption = s\n", + "\n", + "d = L/2+Ratom\n", + "r = 0.005\n", + "boxbottom = curve(color=gray, radius=r)\n", + "boxbottom.append([vector(-d,-d,-d), vector(-d,-d,d), vector(d,-d,d), vector(d,-d,-d), vector(-d,-d,-d)])\n", + "boxtop = curve(color=gray, radius=r)\n", + "boxtop.append([vector(-d,d,-d), vector(-d,d,d), vector(d,d,d), vector(d,d,-d), vector(-d,d,-d)])\n", + "vert1 = curve(color=gray, radius=r)\n", + "vert2 = curve(color=gray, radius=r)\n", + "vert3 = curve(color=gray, radius=r)\n", + "vert4 = curve(color=gray, radius=r)\n", + "vert1.append([vector(-d,-d,-d), vector(-d,d,-d)])\n", + "vert2.append([vector(-d,-d,d), vector(-d,d,d)])\n", + "vert3.append([vector(d,-d,d), vector(d,d,d)])\n", + "vert4.append([vector(d,-d,-d), vector(d,d,-d)])\n", + "\n", + "Atoms = []\n", + "p = []\n", + "apos = []\n", + "pavg = sqrt(2*mass*1.5*k*T) # average kinetic energy p**2/(2mass) = (3/2)kT\n", + " \n", + "for i in range(Natoms):\n", + " x = L*random()-L/2\n", + " y = L*random()-L/2\n", + " z = L*random()-L/2\n", + " if i == 0:\n", + " Atoms.append(sphere(pos=vector(x,y,z), radius=Ratom, color=color.cyan, make_trail=True, retain=100, trail_radius=0.3*Ratom))\n", + " else: Atoms.append(sphere(pos=vector(x,y,z), radius=Ratom, color=gray))\n", + " apos.append(vec(x,y,z))\n", + " theta = pi*random()\n", + " phi = 2*pi*random()\n", + " px = pavg*sin(theta)*cos(phi)\n", + " py = pavg*sin(theta)*sin(phi)\n", + " pz = pavg*cos(theta)\n", + " p.append(vector(px,py,pz))\n", + "\n", + "deltav = 100 # binning for v histogram\n", + "\n", + "def barx(v):\n", + " return int(v/deltav) # index into bars array\n", + "\n", + "nhisto = int(4500/deltav)\n", + "histo = []\n", + "for i in range(nhisto): histo.append(0.0)\n", + "histo[barx(pavg/mass)] = Natoms\n", + "\n", + "gg = graph( width=win, height=0.4*win, xmax=3000, align='left',\n", + " xtitle='speed, m/s', ytitle='Number of atoms', ymax=Natoms*deltav/1000)\n", + "\n", + "theory = gcurve( color=color.cyan )\n", + "dv = 10\n", + "for v in range(0,3001+dv,dv): # theoretical prediction\n", + " theory.plot( v, (deltav/dv)*Natoms*4*pi*((mass/(2*pi*k*T))**1.5) *exp(-0.5*mass*(v**2)/(k*T))*(v**2)*dv )\n", + "\n", + "accum = []\n", + "for i in range(int(3000/deltav)): accum.append([deltav*(i+.5),0])\n", + "vdist = gvbars(color=color.red, delta=deltav )\n", + "\n", + "def interchange(v1, v2): # remove from v1 bar, add to v2 bar\n", + " barx1 = barx(v1)\n", + " barx2 = barx(v2)\n", + " if barx1 == barx2: return\n", + " if barx1 >= len(histo) or barx2 >= len(histo): return\n", + " histo[barx1] -= 1\n", + " histo[barx2] += 1\n", + " \n", + "def checkCollisions():\n", + " hitlist = []\n", + " r2 = 2*Ratom\n", + " r2 *= r2\n", + " for i in range(Natoms):\n", + " ai = apos[i]\n", + " for j in range(i) :\n", + " aj = apos[j]\n", + " dr = ai - aj\n", + " if mag2(dr) < r2: hitlist.append([i,j])\n", + " return hitlist\n", + "\n", + "nhisto = 0 # number of histogram snapshots to average\n", + "@numba\n", + "while True:\n", + " rate(300)\n", + " # Accumulate and average histogram snapshots\n", + " for i in range(len(accum)): accum[i][1] = (nhisto*accum[i][1] + histo[i])/(nhisto+1)\n", + " if nhisto % 10 == 0:\n", + " vdist.data = accum\n", + " nhisto += 1\n", + "\n", + " # Update all positions\n", + " for i in range(Natoms): Atoms[i].pos = apos[i] = apos[i] + (p[i]/mass)*dt\n", + " \n", + " # Check for collisions\n", + " hitlist = checkCollisions()\n", + "\n", + " # If any collisions took place, update momenta of the two atoms\n", + " for ij in hitlist:\n", + " i = ij[0]\n", + " j = ij[1]\n", + " ptot = p[i]+p[j]\n", + " posi = apos[i]\n", + " posj = apos[j]\n", + " vi = p[i]/mass\n", + " vj = p[j]/mass\n", + " vrel = vj-vi\n", + " a = vrel.mag2\n", + " if a == 0: continue; # exactly same velocities\n", + " rrel = posi-posj\n", + " if rrel.mag > Ratom: continue # one atom went all the way through another\n", + " \n", + " # theta is the angle between vrel and rrel:\n", + " dx = dot(rrel, vrel.hat) # rrel.mag*cos(theta)\n", + " dy = cross(rrel, vrel.hat).mag # rrel.mag*sin(theta)\n", + " # alpha is the angle of the triangle composed of rrel, path of atom j, and a line\n", + " # from the center of atom i to the center of atom j where atome j hits atom i:\n", + " alpha = asin(dy/(2*Ratom)) \n", + " d = (2*Ratom)*cos(alpha)-dx # distance traveled into the atom from first contact\n", + " deltat = d/vrel.mag # time spent moving from first contact to position inside atom\n", + " \n", + " posi = posi-vi*deltat # back up to contact configuration\n", + " posj = posj-vj*deltat\n", + " mtot = 2*mass\n", + " pcmi = p[i]-ptot*mass/mtot # transform momenta to cm frame\n", + " pcmj = p[j]-ptot*mass/mtot\n", + " rrel = norm(rrel)\n", + " pcmi = pcmi-2*pcmi.dot(rrel)*rrel # bounce in cm frame\n", + " pcmj = pcmj-2*pcmj.dot(rrel)*rrel\n", + " p[i] = pcmi+ptot*mass/mtot # transform momenta back to lab frame\n", + " p[j] = pcmj+ptot*mass/mtot\n", + " apos[i] = posi+(p[i]/mass)*deltat # move forward deltat in time\n", + " apos[j] = posj+(p[j]/mass)*deltat\n", + " interchange(vi.mag, p[i].mag/mass)\n", + " interchange(vj.mag, p[j].mag/mass)\n", + " \n", + " for i in range(Natoms):\n", + " loc = apos[i]\n", + " if abs(loc.x) > L/2:\n", + " if loc.x < 0: p[i].x = abs(p[i].x)\n", + " else: p[i].x = -abs(p[i].x)\n", + " \n", + " if abs(loc.y) > L/2:\n", + " if loc.y < 0: p[i].y = abs(p[i].y)\n", + " else: p[i].y = -abs(p[i].y)\n", + " \n", + " if abs(loc.z) > L/2:\n", + " if loc.z < 0: p[i].z = abs(p[i].z)\n", + " else: p[i].z = -abs(p[i].z)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sources/docs/test_quiz.ipynb b/_sources/docs/test_quiz.ipynb new file mode 100644 index 00000000..04ca8a77 --- /dev/null +++ b/_sources/docs/test_quiz.ipynb @@ -0,0 +1,2638 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Review" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In this Chapter, we started working with real data, introduced Pands, partitions, summary statistics, binary hypothesis testing via bootstrap resampling, and two-dimensional statistics. " + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + " " + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from jupyterquiz import display_quiz\n", + "\n", + "display_quiz('https://raw.githubusercontent.com/jmshea/intro-data-science-for-engineers/main/questions/ch3.json')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Spaced Repetition Review\n", + "\n", + "Answer these questions to check your retention on knowledge from Chapters 1 and 2:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + " " + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "display_quiz('https://raw.githubusercontent.com/jmshea/intro-data-science-for-engineers/main/questions/ch1.json', 3)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "tags": [ + "remove-input" + ] + }, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + " " + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "display_quiz('https://raw.githubusercontent.com/jmshea/intro-data-science-for-engineers/main/questions/ch2.json', 2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Key Take-aways:**\n", + "* Pandas stores data in dataframes. **Dataframes store tabular data, like spreadsheets or database tables.**\n", + "* **Pandas can import data from standard file formats**, including comma-separated value (CSV) files and Excel files.\n", + "* **Scatter plots are useful for initial data exploration and identifying outliers.**\n", + "* **Partitions divide data into disjoint subsets.**\n", + "* **Summary statistics represent a group of data by a single number.** \n", + "* **Common summary statistics minimize a measure of error from the summary statistic to the data:**\n", + " * Mode minimizes the *error count*.\n", + " * Median minimizes the *sum of absolute errors*.\n", + " * Average, or sample mean, minimizes the *sum of squared errors*.\n", + "* A **statistical hypothesis is a hypothesis that is testable using data.**\n", + "* A **binary hypothesis test is a statistical test that decides between two competing statistical hypotheses.**\n", + " * A **null hypothesis, denoted $H_0$ assumes that the data being evaluated come from the same underlying random phenomena**. Observed differences are caused by random sampling.\n", + "* **Resampling is a model-free technique to draw new samples of data for use in statistical testing.**\n", + " * **Bootstrap resampling is when data is drawn from the pooled data with replacement.**\n", + "* **Two-dimensional statistical methods can be used to directly work with pairs of data** through techniques such as curve fitting." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "celltoolbar": "Edit Metadata", + "finalized": { + "timestamp": 1622574926456, + "trusted": true + }, + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/_sphinx_design_static/design-style.4045f2051d55cab465a707391d5b2007.min.css b/_sphinx_design_static/design-style.4045f2051d55cab465a707391d5b2007.min.css new file mode 100644 index 00000000..3225661c --- /dev/null +++ b/_sphinx_design_static/design-style.4045f2051d55cab465a707391d5b2007.min.css @@ -0,0 +1 @@ +.sd-bg-primary{background-color:var(--sd-color-primary) !important}.sd-bg-text-primary{color:var(--sd-color-primary-text) !important}button.sd-bg-primary:focus,button.sd-bg-primary:hover{background-color:var(--sd-color-primary-highlight) !important}a.sd-bg-primary:focus,a.sd-bg-primary:hover{background-color:var(--sd-color-primary-highlight) !important}.sd-bg-secondary{background-color:var(--sd-color-secondary) !important}.sd-bg-text-secondary{color:var(--sd-color-secondary-text) !important}button.sd-bg-secondary:focus,button.sd-bg-secondary:hover{background-color:var(--sd-color-secondary-highlight) !important}a.sd-bg-secondary:focus,a.sd-bg-secondary:hover{background-color:var(--sd-color-secondary-highlight) !important}.sd-bg-success{background-color:var(--sd-color-success) !important}.sd-bg-text-success{color:var(--sd-color-success-text) !important}button.sd-bg-success:focus,button.sd-bg-success:hover{background-color:var(--sd-color-success-highlight) !important}a.sd-bg-success:focus,a.sd-bg-success:hover{background-color:var(--sd-color-success-highlight) !important}.sd-bg-info{background-color:var(--sd-color-info) !important}.sd-bg-text-info{color:var(--sd-color-info-text) !important}button.sd-bg-info:focus,button.sd-bg-info:hover{background-color:var(--sd-color-info-highlight) !important}a.sd-bg-info:focus,a.sd-bg-info:hover{background-color:var(--sd-color-info-highlight) !important}.sd-bg-warning{background-color:var(--sd-color-warning) !important}.sd-bg-text-warning{color:var(--sd-color-warning-text) !important}button.sd-bg-warning:focus,button.sd-bg-warning:hover{background-color:var(--sd-color-warning-highlight) !important}a.sd-bg-warning:focus,a.sd-bg-warning:hover{background-color:var(--sd-color-warning-highlight) !important}.sd-bg-danger{background-color:var(--sd-color-danger) !important}.sd-bg-text-danger{color:var(--sd-color-danger-text) !important}button.sd-bg-danger:focus,button.sd-bg-danger:hover{background-color:var(--sd-color-danger-highlight) !important}a.sd-bg-danger:focus,a.sd-bg-danger:hover{background-color:var(--sd-color-danger-highlight) !important}.sd-bg-light{background-color:var(--sd-color-light) !important}.sd-bg-text-light{color:var(--sd-color-light-text) !important}button.sd-bg-light:focus,button.sd-bg-light:hover{background-color:var(--sd-color-light-highlight) !important}a.sd-bg-light:focus,a.sd-bg-light:hover{background-color:var(--sd-color-light-highlight) !important}.sd-bg-muted{background-color:var(--sd-color-muted) !important}.sd-bg-text-muted{color:var(--sd-color-muted-text) !important}button.sd-bg-muted:focus,button.sd-bg-muted:hover{background-color:var(--sd-color-muted-highlight) !important}a.sd-bg-muted:focus,a.sd-bg-muted:hover{background-color:var(--sd-color-muted-highlight) !important}.sd-bg-dark{background-color:var(--sd-color-dark) !important}.sd-bg-text-dark{color:var(--sd-color-dark-text) !important}button.sd-bg-dark:focus,button.sd-bg-dark:hover{background-color:var(--sd-color-dark-highlight) !important}a.sd-bg-dark:focus,a.sd-bg-dark:hover{background-color:var(--sd-color-dark-highlight) !important}.sd-bg-black{background-color:var(--sd-color-black) !important}.sd-bg-text-black{color:var(--sd-color-black-text) !important}button.sd-bg-black:focus,button.sd-bg-black:hover{background-color:var(--sd-color-black-highlight) !important}a.sd-bg-black:focus,a.sd-bg-black:hover{background-color:var(--sd-color-black-highlight) !important}.sd-bg-white{background-color:var(--sd-color-white) !important}.sd-bg-text-white{color:var(--sd-color-white-text) !important}button.sd-bg-white:focus,button.sd-bg-white:hover{background-color:var(--sd-color-white-highlight) !important}a.sd-bg-white:focus,a.sd-bg-white:hover{background-color:var(--sd-color-white-highlight) !important}.sd-text-primary,.sd-text-primary>p{color:var(--sd-color-primary) !important}a.sd-text-primary:focus,a.sd-text-primary:hover{color:var(--sd-color-primary-highlight) !important}.sd-text-secondary,.sd-text-secondary>p{color:var(--sd-color-secondary) !important}a.sd-text-secondary:focus,a.sd-text-secondary:hover{color:var(--sd-color-secondary-highlight) !important}.sd-text-success,.sd-text-success>p{color:var(--sd-color-success) !important}a.sd-text-success:focus,a.sd-text-success:hover{color:var(--sd-color-success-highlight) !important}.sd-text-info,.sd-text-info>p{color:var(--sd-color-info) !important}a.sd-text-info:focus,a.sd-text-info:hover{color:var(--sd-color-info-highlight) !important}.sd-text-warning,.sd-text-warning>p{color:var(--sd-color-warning) !important}a.sd-text-warning:focus,a.sd-text-warning:hover{color:var(--sd-color-warning-highlight) !important}.sd-text-danger,.sd-text-danger>p{color:var(--sd-color-danger) !important}a.sd-text-danger:focus,a.sd-text-danger:hover{color:var(--sd-color-danger-highlight) !important}.sd-text-light,.sd-text-light>p{color:var(--sd-color-light) !important}a.sd-text-light:focus,a.sd-text-light:hover{color:var(--sd-color-light-highlight) !important}.sd-text-muted,.sd-text-muted>p{color:var(--sd-color-muted) !important}a.sd-text-muted:focus,a.sd-text-muted:hover{color:var(--sd-color-muted-highlight) !important}.sd-text-dark,.sd-text-dark>p{color:var(--sd-color-dark) !important}a.sd-text-dark:focus,a.sd-text-dark:hover{color:var(--sd-color-dark-highlight) !important}.sd-text-black,.sd-text-black>p{color:var(--sd-color-black) !important}a.sd-text-black:focus,a.sd-text-black:hover{color:var(--sd-color-black-highlight) !important}.sd-text-white,.sd-text-white>p{color:var(--sd-color-white) !important}a.sd-text-white:focus,a.sd-text-white:hover{color:var(--sd-color-white-highlight) !important}.sd-outline-primary{border-color:var(--sd-color-primary) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-primary:focus,a.sd-outline-primary:hover{border-color:var(--sd-color-primary-highlight) !important}.sd-outline-secondary{border-color:var(--sd-color-secondary) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-secondary:focus,a.sd-outline-secondary:hover{border-color:var(--sd-color-secondary-highlight) !important}.sd-outline-success{border-color:var(--sd-color-success) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-success:focus,a.sd-outline-success:hover{border-color:var(--sd-color-success-highlight) !important}.sd-outline-info{border-color:var(--sd-color-info) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-info:focus,a.sd-outline-info:hover{border-color:var(--sd-color-info-highlight) !important}.sd-outline-warning{border-color:var(--sd-color-warning) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-warning:focus,a.sd-outline-warning:hover{border-color:var(--sd-color-warning-highlight) !important}.sd-outline-danger{border-color:var(--sd-color-danger) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-danger:focus,a.sd-outline-danger:hover{border-color:var(--sd-color-danger-highlight) !important}.sd-outline-light{border-color:var(--sd-color-light) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-light:focus,a.sd-outline-light:hover{border-color:var(--sd-color-light-highlight) !important}.sd-outline-muted{border-color:var(--sd-color-muted) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-muted:focus,a.sd-outline-muted:hover{border-color:var(--sd-color-muted-highlight) !important}.sd-outline-dark{border-color:var(--sd-color-dark) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-dark:focus,a.sd-outline-dark:hover{border-color:var(--sd-color-dark-highlight) !important}.sd-outline-black{border-color:var(--sd-color-black) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-black:focus,a.sd-outline-black:hover{border-color:var(--sd-color-black-highlight) !important}.sd-outline-white{border-color:var(--sd-color-white) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-white:focus,a.sd-outline-white:hover{border-color:var(--sd-color-white-highlight) !important}.sd-bg-transparent{background-color:transparent !important}.sd-outline-transparent{border-color:transparent !important}.sd-text-transparent{color:transparent !important}.sd-p-0{padding:0 !important}.sd-pt-0,.sd-py-0{padding-top:0 !important}.sd-pr-0,.sd-px-0{padding-right:0 !important}.sd-pb-0,.sd-py-0{padding-bottom:0 !important}.sd-pl-0,.sd-px-0{padding-left:0 !important}.sd-p-1{padding:.25rem !important}.sd-pt-1,.sd-py-1{padding-top:.25rem !important}.sd-pr-1,.sd-px-1{padding-right:.25rem !important}.sd-pb-1,.sd-py-1{padding-bottom:.25rem !important}.sd-pl-1,.sd-px-1{padding-left:.25rem !important}.sd-p-2{padding:.5rem !important}.sd-pt-2,.sd-py-2{padding-top:.5rem !important}.sd-pr-2,.sd-px-2{padding-right:.5rem !important}.sd-pb-2,.sd-py-2{padding-bottom:.5rem !important}.sd-pl-2,.sd-px-2{padding-left:.5rem !important}.sd-p-3{padding:1rem !important}.sd-pt-3,.sd-py-3{padding-top:1rem !important}.sd-pr-3,.sd-px-3{padding-right:1rem !important}.sd-pb-3,.sd-py-3{padding-bottom:1rem !important}.sd-pl-3,.sd-px-3{padding-left:1rem !important}.sd-p-4{padding:1.5rem !important}.sd-pt-4,.sd-py-4{padding-top:1.5rem !important}.sd-pr-4,.sd-px-4{padding-right:1.5rem !important}.sd-pb-4,.sd-py-4{padding-bottom:1.5rem !important}.sd-pl-4,.sd-px-4{padding-left:1.5rem !important}.sd-p-5{padding:3rem !important}.sd-pt-5,.sd-py-5{padding-top:3rem !important}.sd-pr-5,.sd-px-5{padding-right:3rem !important}.sd-pb-5,.sd-py-5{padding-bottom:3rem !important}.sd-pl-5,.sd-px-5{padding-left:3rem !important}.sd-m-auto{margin:auto !important}.sd-mt-auto,.sd-my-auto{margin-top:auto !important}.sd-mr-auto,.sd-mx-auto{margin-right:auto !important}.sd-mb-auto,.sd-my-auto{margin-bottom:auto !important}.sd-ml-auto,.sd-mx-auto{margin-left:auto !important}.sd-m-0{margin:0 !important}.sd-mt-0,.sd-my-0{margin-top:0 !important}.sd-mr-0,.sd-mx-0{margin-right:0 !important}.sd-mb-0,.sd-my-0{margin-bottom:0 !important}.sd-ml-0,.sd-mx-0{margin-left:0 !important}.sd-m-1{margin:.25rem !important}.sd-mt-1,.sd-my-1{margin-top:.25rem !important}.sd-mr-1,.sd-mx-1{margin-right:.25rem !important}.sd-mb-1,.sd-my-1{margin-bottom:.25rem !important}.sd-ml-1,.sd-mx-1{margin-left:.25rem !important}.sd-m-2{margin:.5rem !important}.sd-mt-2,.sd-my-2{margin-top:.5rem !important}.sd-mr-2,.sd-mx-2{margin-right:.5rem !important}.sd-mb-2,.sd-my-2{margin-bottom:.5rem !important}.sd-ml-2,.sd-mx-2{margin-left:.5rem !important}.sd-m-3{margin:1rem !important}.sd-mt-3,.sd-my-3{margin-top:1rem !important}.sd-mr-3,.sd-mx-3{margin-right:1rem !important}.sd-mb-3,.sd-my-3{margin-bottom:1rem !important}.sd-ml-3,.sd-mx-3{margin-left:1rem !important}.sd-m-4{margin:1.5rem !important}.sd-mt-4,.sd-my-4{margin-top:1.5rem !important}.sd-mr-4,.sd-mx-4{margin-right:1.5rem !important}.sd-mb-4,.sd-my-4{margin-bottom:1.5rem !important}.sd-ml-4,.sd-mx-4{margin-left:1.5rem !important}.sd-m-5{margin:3rem !important}.sd-mt-5,.sd-my-5{margin-top:3rem !important}.sd-mr-5,.sd-mx-5{margin-right:3rem !important}.sd-mb-5,.sd-my-5{margin-bottom:3rem !important}.sd-ml-5,.sd-mx-5{margin-left:3rem !important}.sd-w-25{width:25% !important}.sd-w-50{width:50% !important}.sd-w-75{width:75% !important}.sd-w-100{width:100% !important}.sd-w-auto{width:auto !important}.sd-h-25{height:25% !important}.sd-h-50{height:50% !important}.sd-h-75{height:75% !important}.sd-h-100{height:100% !important}.sd-h-auto{height:auto !important}.sd-d-none{display:none !important}.sd-d-inline{display:inline !important}.sd-d-inline-block{display:inline-block !important}.sd-d-block{display:block !important}.sd-d-grid{display:grid !important}.sd-d-flex-row{display:-ms-flexbox !important;display:flex !important;flex-direction:row !important}.sd-d-flex-column{display:-ms-flexbox !important;display:flex !important;flex-direction:column !important}.sd-d-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}@media(min-width: 576px){.sd-d-sm-none{display:none !important}.sd-d-sm-inline{display:inline !important}.sd-d-sm-inline-block{display:inline-block !important}.sd-d-sm-block{display:block !important}.sd-d-sm-grid{display:grid !important}.sd-d-sm-flex{display:-ms-flexbox !important;display:flex !important}.sd-d-sm-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}}@media(min-width: 768px){.sd-d-md-none{display:none !important}.sd-d-md-inline{display:inline !important}.sd-d-md-inline-block{display:inline-block !important}.sd-d-md-block{display:block !important}.sd-d-md-grid{display:grid !important}.sd-d-md-flex{display:-ms-flexbox !important;display:flex !important}.sd-d-md-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}}@media(min-width: 992px){.sd-d-lg-none{display:none !important}.sd-d-lg-inline{display:inline !important}.sd-d-lg-inline-block{display:inline-block !important}.sd-d-lg-block{display:block !important}.sd-d-lg-grid{display:grid !important}.sd-d-lg-flex{display:-ms-flexbox !important;display:flex !important}.sd-d-lg-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}}@media(min-width: 1200px){.sd-d-xl-none{display:none !important}.sd-d-xl-inline{display:inline !important}.sd-d-xl-inline-block{display:inline-block !important}.sd-d-xl-block{display:block !important}.sd-d-xl-grid{display:grid !important}.sd-d-xl-flex{display:-ms-flexbox !important;display:flex !important}.sd-d-xl-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}}.sd-align-major-start{justify-content:flex-start !important}.sd-align-major-end{justify-content:flex-end !important}.sd-align-major-center{justify-content:center !important}.sd-align-major-justify{justify-content:space-between !important}.sd-align-major-spaced{justify-content:space-evenly !important}.sd-align-minor-start{align-items:flex-start !important}.sd-align-minor-end{align-items:flex-end !important}.sd-align-minor-center{align-items:center !important}.sd-align-minor-stretch{align-items:stretch !important}.sd-text-justify{text-align:justify !important}.sd-text-left{text-align:left !important}.sd-text-right{text-align:right !important}.sd-text-center{text-align:center !important}.sd-font-weight-light{font-weight:300 !important}.sd-font-weight-lighter{font-weight:lighter !important}.sd-font-weight-normal{font-weight:400 !important}.sd-font-weight-bold{font-weight:700 !important}.sd-font-weight-bolder{font-weight:bolder !important}.sd-font-italic{font-style:italic !important}.sd-text-decoration-none{text-decoration:none !important}.sd-text-lowercase{text-transform:lowercase !important}.sd-text-uppercase{text-transform:uppercase !important}.sd-text-capitalize{text-transform:capitalize !important}.sd-text-wrap{white-space:normal !important}.sd-text-nowrap{white-space:nowrap !important}.sd-text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sd-fs-1,.sd-fs-1>p{font-size:calc(1.375rem + 1.5vw) !important;line-height:unset !important}.sd-fs-2,.sd-fs-2>p{font-size:calc(1.325rem + 0.9vw) !important;line-height:unset !important}.sd-fs-3,.sd-fs-3>p{font-size:calc(1.3rem + 0.6vw) !important;line-height:unset !important}.sd-fs-4,.sd-fs-4>p{font-size:calc(1.275rem + 0.3vw) !important;line-height:unset !important}.sd-fs-5,.sd-fs-5>p{font-size:1.25rem !important;line-height:unset !important}.sd-fs-6,.sd-fs-6>p{font-size:1rem !important;line-height:unset !important}.sd-border-0{border:0 solid !important}.sd-border-top-0{border-top:0 solid !important}.sd-border-bottom-0{border-bottom:0 solid !important}.sd-border-right-0{border-right:0 solid !important}.sd-border-left-0{border-left:0 solid !important}.sd-border-1{border:1px solid !important}.sd-border-top-1{border-top:1px solid !important}.sd-border-bottom-1{border-bottom:1px solid !important}.sd-border-right-1{border-right:1px solid !important}.sd-border-left-1{border-left:1px solid !important}.sd-border-2{border:2px solid !important}.sd-border-top-2{border-top:2px solid !important}.sd-border-bottom-2{border-bottom:2px solid !important}.sd-border-right-2{border-right:2px solid !important}.sd-border-left-2{border-left:2px solid !important}.sd-border-3{border:3px solid !important}.sd-border-top-3{border-top:3px solid !important}.sd-border-bottom-3{border-bottom:3px solid !important}.sd-border-right-3{border-right:3px solid !important}.sd-border-left-3{border-left:3px solid !important}.sd-border-4{border:4px solid !important}.sd-border-top-4{border-top:4px solid !important}.sd-border-bottom-4{border-bottom:4px solid !important}.sd-border-right-4{border-right:4px solid !important}.sd-border-left-4{border-left:4px solid !important}.sd-border-5{border:5px solid !important}.sd-border-top-5{border-top:5px solid !important}.sd-border-bottom-5{border-bottom:5px solid !important}.sd-border-right-5{border-right:5px solid !important}.sd-border-left-5{border-left:5px solid !important}.sd-rounded-0{border-radius:0 !important}.sd-rounded-1{border-radius:.2rem !important}.sd-rounded-2{border-radius:.3rem !important}.sd-rounded-3{border-radius:.5rem !important}.sd-rounded-pill{border-radius:50rem !important}.sd-rounded-circle{border-radius:50% !important}.shadow-none{box-shadow:none !important}.sd-shadow-sm{box-shadow:0 .125rem .25rem var(--sd-color-shadow) !important}.sd-shadow-md{box-shadow:0 .5rem 1rem var(--sd-color-shadow) !important}.sd-shadow-lg{box-shadow:0 1rem 3rem var(--sd-color-shadow) !important}@keyframes sd-slide-from-left{0%{transform:translateX(-100%)}100%{transform:translateX(0)}}@keyframes sd-slide-from-right{0%{transform:translateX(200%)}100%{transform:translateX(0)}}@keyframes sd-grow100{0%{transform:scale(0);opacity:.5}100%{transform:scale(1);opacity:1}}@keyframes sd-grow50{0%{transform:scale(0.5);opacity:.5}100%{transform:scale(1);opacity:1}}@keyframes sd-grow50-rot20{0%{transform:scale(0.5) rotateZ(-20deg);opacity:.5}75%{transform:scale(1) rotateZ(5deg);opacity:1}95%{transform:scale(1) rotateZ(-1deg);opacity:1}100%{transform:scale(1) rotateZ(0);opacity:1}}.sd-animate-slide-from-left{animation:1s ease-out 0s 1 normal none running sd-slide-from-left}.sd-animate-slide-from-right{animation:1s ease-out 0s 1 normal none running sd-slide-from-right}.sd-animate-grow100{animation:1s ease-out 0s 1 normal none running sd-grow100}.sd-animate-grow50{animation:1s ease-out 0s 1 normal none running sd-grow50}.sd-animate-grow50-rot20{animation:1s ease-out 0s 1 normal none running sd-grow50-rot20}.sd-badge{display:inline-block;padding:.35em .65em;font-size:.75em;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem}.sd-badge:empty{display:none}a.sd-badge{text-decoration:none}.sd-btn .sd-badge{position:relative;top:-1px}.sd-btn{background-color:transparent;border:1px solid transparent;border-radius:.25rem;cursor:pointer;display:inline-block;font-weight:400;font-size:1rem;line-height:1.5;padding:.375rem .75rem;text-align:center;text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;vertical-align:middle;user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none}.sd-btn:hover{text-decoration:none}@media(prefers-reduced-motion: reduce){.sd-btn{transition:none}}.sd-btn-primary,.sd-btn-outline-primary:hover,.sd-btn-outline-primary:focus{color:var(--sd-color-primary-text) !important;background-color:var(--sd-color-primary) !important;border-color:var(--sd-color-primary) !important;border-width:1px !important;border-style:solid !important}.sd-btn-primary:hover,.sd-btn-primary:focus{color:var(--sd-color-primary-text) !important;background-color:var(--sd-color-primary-highlight) !important;border-color:var(--sd-color-primary-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-primary{color:var(--sd-color-primary) !important;border-color:var(--sd-color-primary) !important;border-width:1px !important;border-style:solid !important}.sd-btn-secondary,.sd-btn-outline-secondary:hover,.sd-btn-outline-secondary:focus{color:var(--sd-color-secondary-text) !important;background-color:var(--sd-color-secondary) !important;border-color:var(--sd-color-secondary) !important;border-width:1px !important;border-style:solid !important}.sd-btn-secondary:hover,.sd-btn-secondary:focus{color:var(--sd-color-secondary-text) !important;background-color:var(--sd-color-secondary-highlight) !important;border-color:var(--sd-color-secondary-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-secondary{color:var(--sd-color-secondary) !important;border-color:var(--sd-color-secondary) !important;border-width:1px !important;border-style:solid !important}.sd-btn-success,.sd-btn-outline-success:hover,.sd-btn-outline-success:focus{color:var(--sd-color-success-text) !important;background-color:var(--sd-color-success) !important;border-color:var(--sd-color-success) !important;border-width:1px !important;border-style:solid !important}.sd-btn-success:hover,.sd-btn-success:focus{color:var(--sd-color-success-text) !important;background-color:var(--sd-color-success-highlight) !important;border-color:var(--sd-color-success-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-success{color:var(--sd-color-success) !important;border-color:var(--sd-color-success) !important;border-width:1px !important;border-style:solid !important}.sd-btn-info,.sd-btn-outline-info:hover,.sd-btn-outline-info:focus{color:var(--sd-color-info-text) !important;background-color:var(--sd-color-info) !important;border-color:var(--sd-color-info) !important;border-width:1px !important;border-style:solid !important}.sd-btn-info:hover,.sd-btn-info:focus{color:var(--sd-color-info-text) !important;background-color:var(--sd-color-info-highlight) !important;border-color:var(--sd-color-info-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-info{color:var(--sd-color-info) !important;border-color:var(--sd-color-info) !important;border-width:1px !important;border-style:solid !important}.sd-btn-warning,.sd-btn-outline-warning:hover,.sd-btn-outline-warning:focus{color:var(--sd-color-warning-text) !important;background-color:var(--sd-color-warning) !important;border-color:var(--sd-color-warning) !important;border-width:1px !important;border-style:solid !important}.sd-btn-warning:hover,.sd-btn-warning:focus{color:var(--sd-color-warning-text) !important;background-color:var(--sd-color-warning-highlight) !important;border-color:var(--sd-color-warning-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-warning{color:var(--sd-color-warning) !important;border-color:var(--sd-color-warning) !important;border-width:1px !important;border-style:solid !important}.sd-btn-danger,.sd-btn-outline-danger:hover,.sd-btn-outline-danger:focus{color:var(--sd-color-danger-text) !important;background-color:var(--sd-color-danger) !important;border-color:var(--sd-color-danger) !important;border-width:1px !important;border-style:solid !important}.sd-btn-danger:hover,.sd-btn-danger:focus{color:var(--sd-color-danger-text) !important;background-color:var(--sd-color-danger-highlight) !important;border-color:var(--sd-color-danger-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-danger{color:var(--sd-color-danger) !important;border-color:var(--sd-color-danger) !important;border-width:1px !important;border-style:solid !important}.sd-btn-light,.sd-btn-outline-light:hover,.sd-btn-outline-light:focus{color:var(--sd-color-light-text) !important;background-color:var(--sd-color-light) !important;border-color:var(--sd-color-light) !important;border-width:1px !important;border-style:solid !important}.sd-btn-light:hover,.sd-btn-light:focus{color:var(--sd-color-light-text) !important;background-color:var(--sd-color-light-highlight) !important;border-color:var(--sd-color-light-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-light{color:var(--sd-color-light) !important;border-color:var(--sd-color-light) !important;border-width:1px !important;border-style:solid !important}.sd-btn-muted,.sd-btn-outline-muted:hover,.sd-btn-outline-muted:focus{color:var(--sd-color-muted-text) !important;background-color:var(--sd-color-muted) !important;border-color:var(--sd-color-muted) !important;border-width:1px !important;border-style:solid !important}.sd-btn-muted:hover,.sd-btn-muted:focus{color:var(--sd-color-muted-text) !important;background-color:var(--sd-color-muted-highlight) !important;border-color:var(--sd-color-muted-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-muted{color:var(--sd-color-muted) !important;border-color:var(--sd-color-muted) !important;border-width:1px !important;border-style:solid !important}.sd-btn-dark,.sd-btn-outline-dark:hover,.sd-btn-outline-dark:focus{color:var(--sd-color-dark-text) !important;background-color:var(--sd-color-dark) !important;border-color:var(--sd-color-dark) !important;border-width:1px !important;border-style:solid !important}.sd-btn-dark:hover,.sd-btn-dark:focus{color:var(--sd-color-dark-text) !important;background-color:var(--sd-color-dark-highlight) !important;border-color:var(--sd-color-dark-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-dark{color:var(--sd-color-dark) !important;border-color:var(--sd-color-dark) !important;border-width:1px !important;border-style:solid !important}.sd-btn-black,.sd-btn-outline-black:hover,.sd-btn-outline-black:focus{color:var(--sd-color-black-text) !important;background-color:var(--sd-color-black) !important;border-color:var(--sd-color-black) !important;border-width:1px !important;border-style:solid !important}.sd-btn-black:hover,.sd-btn-black:focus{color:var(--sd-color-black-text) !important;background-color:var(--sd-color-black-highlight) !important;border-color:var(--sd-color-black-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-black{color:var(--sd-color-black) !important;border-color:var(--sd-color-black) !important;border-width:1px !important;border-style:solid !important}.sd-btn-white,.sd-btn-outline-white:hover,.sd-btn-outline-white:focus{color:var(--sd-color-white-text) !important;background-color:var(--sd-color-white) !important;border-color:var(--sd-color-white) !important;border-width:1px !important;border-style:solid !important}.sd-btn-white:hover,.sd-btn-white:focus{color:var(--sd-color-white-text) !important;background-color:var(--sd-color-white-highlight) !important;border-color:var(--sd-color-white-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-white{color:var(--sd-color-white) !important;border-color:var(--sd-color-white) !important;border-width:1px !important;border-style:solid !important}.sd-stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.sd-hide-link-text{font-size:0}.sd-octicon,.sd-material-icon{display:inline-block;fill:currentColor;vertical-align:middle}.sd-avatar-xs{border-radius:50%;object-fit:cover;object-position:center;width:1rem;height:1rem}.sd-avatar-sm{border-radius:50%;object-fit:cover;object-position:center;width:3rem;height:3rem}.sd-avatar-md{border-radius:50%;object-fit:cover;object-position:center;width:5rem;height:5rem}.sd-avatar-lg{border-radius:50%;object-fit:cover;object-position:center;width:7rem;height:7rem}.sd-avatar-xl{border-radius:50%;object-fit:cover;object-position:center;width:10rem;height:10rem}.sd-avatar-inherit{border-radius:50%;object-fit:cover;object-position:center;width:inherit;height:inherit}.sd-avatar-initial{border-radius:50%;object-fit:cover;object-position:center;width:initial;height:initial}.sd-card{background-clip:border-box;background-color:var(--sd-color-card-background);border:1px solid var(--sd-color-card-border);border-radius:.25rem;color:var(--sd-color-card-text);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;position:relative;word-wrap:break-word}.sd-card>hr{margin-left:0;margin-right:0}.sd-card-hover:hover{border-color:var(--sd-color-card-border-hover);transform:scale(1.01)}.sd-card-body{-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem 1rem}.sd-card-title{margin-bottom:.5rem}.sd-card-subtitle{margin-top:-0.25rem;margin-bottom:0}.sd-card-text:last-child{margin-bottom:0}.sd-card-link:hover{text-decoration:none}.sd-card-link+.card-link{margin-left:1rem}.sd-card-header{padding:.5rem 1rem;margin-bottom:0;background-color:var(--sd-color-card-header);border-bottom:1px solid var(--sd-color-card-border)}.sd-card-header:first-child{border-radius:calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0}.sd-card-footer{padding:.5rem 1rem;background-color:var(--sd-color-card-footer);border-top:1px solid var(--sd-color-card-border)}.sd-card-footer:last-child{border-radius:0 0 calc(0.25rem - 1px) calc(0.25rem - 1px)}.sd-card-header-tabs{margin-right:-0.5rem;margin-bottom:-0.5rem;margin-left:-0.5rem;border-bottom:0}.sd-card-header-pills{margin-right:-0.5rem;margin-left:-0.5rem}.sd-card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1rem;border-radius:calc(0.25rem - 1px)}.sd-card-img,.sd-card-img-bottom,.sd-card-img-top{width:100%}.sd-card-img,.sd-card-img-top{border-top-left-radius:calc(0.25rem - 1px);border-top-right-radius:calc(0.25rem - 1px)}.sd-card-img,.sd-card-img-bottom{border-bottom-left-radius:calc(0.25rem - 1px);border-bottom-right-radius:calc(0.25rem - 1px)}.sd-cards-carousel{width:100%;display:flex;flex-wrap:nowrap;-ms-flex-direction:row;flex-direction:row;overflow-x:hidden;scroll-snap-type:x mandatory}.sd-cards-carousel.sd-show-scrollbar{overflow-x:auto}.sd-cards-carousel:hover,.sd-cards-carousel:focus{overflow-x:auto}.sd-cards-carousel>.sd-card{flex-shrink:0;scroll-snap-align:start}.sd-cards-carousel>.sd-card:not(:last-child){margin-right:3px}.sd-card-cols-1>.sd-card{width:90%}.sd-card-cols-2>.sd-card{width:45%}.sd-card-cols-3>.sd-card{width:30%}.sd-card-cols-4>.sd-card{width:22.5%}.sd-card-cols-5>.sd-card{width:18%}.sd-card-cols-6>.sd-card{width:15%}.sd-card-cols-7>.sd-card{width:12.8571428571%}.sd-card-cols-8>.sd-card{width:11.25%}.sd-card-cols-9>.sd-card{width:10%}.sd-card-cols-10>.sd-card{width:9%}.sd-card-cols-11>.sd-card{width:8.1818181818%}.sd-card-cols-12>.sd-card{width:7.5%}.sd-container,.sd-container-fluid,.sd-container-lg,.sd-container-md,.sd-container-sm,.sd-container-xl{margin-left:auto;margin-right:auto;padding-left:var(--sd-gutter-x, 0.75rem);padding-right:var(--sd-gutter-x, 0.75rem);width:100%}@media(min-width: 576px){.sd-container-sm,.sd-container{max-width:540px}}@media(min-width: 768px){.sd-container-md,.sd-container-sm,.sd-container{max-width:720px}}@media(min-width: 992px){.sd-container-lg,.sd-container-md,.sd-container-sm,.sd-container{max-width:960px}}@media(min-width: 1200px){.sd-container-xl,.sd-container-lg,.sd-container-md,.sd-container-sm,.sd-container{max-width:1140px}}.sd-row{--sd-gutter-x: 1.5rem;--sd-gutter-y: 0;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-top:calc(var(--sd-gutter-y) * -1);margin-right:calc(var(--sd-gutter-x) * -0.5);margin-left:calc(var(--sd-gutter-x) * -0.5)}.sd-row>*{box-sizing:border-box;flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--sd-gutter-x) * 0.5);padding-left:calc(var(--sd-gutter-x) * 0.5);margin-top:var(--sd-gutter-y)}.sd-col{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-auto>*{flex:0 0 auto;width:auto}.sd-row-cols-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}@media(min-width: 576px){.sd-col-sm{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-sm-auto{flex:1 0 auto;-ms-flex:1 0 auto;width:100%}.sd-row-cols-sm-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-sm-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-sm-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-sm-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-sm-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-sm-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-sm-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-sm-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-sm-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-sm-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-sm-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-sm-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}}@media(min-width: 768px){.sd-col-md{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-md-auto{flex:1 0 auto;-ms-flex:1 0 auto;width:100%}.sd-row-cols-md-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-md-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-md-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-md-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-md-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-md-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-md-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-md-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-md-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-md-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-md-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-md-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}}@media(min-width: 992px){.sd-col-lg{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-lg-auto{flex:1 0 auto;-ms-flex:1 0 auto;width:100%}.sd-row-cols-lg-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-lg-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-lg-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-lg-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-lg-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-lg-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-lg-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-lg-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-lg-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-lg-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-lg-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-lg-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}}@media(min-width: 1200px){.sd-col-xl{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-xl-auto{flex:1 0 auto;-ms-flex:1 0 auto;width:100%}.sd-row-cols-xl-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-xl-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-xl-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-xl-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-xl-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-xl-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-xl-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-xl-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-xl-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-xl-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-xl-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-xl-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}}.sd-col-auto{flex:0 0 auto;-ms-flex:0 0 auto;width:auto}.sd-col-1{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}.sd-col-2{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-col-3{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-col-4{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-col-5{flex:0 0 auto;-ms-flex:0 0 auto;width:41.6666666667%}.sd-col-6{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-col-7{flex:0 0 auto;-ms-flex:0 0 auto;width:58.3333333333%}.sd-col-8{flex:0 0 auto;-ms-flex:0 0 auto;width:66.6666666667%}.sd-col-9{flex:0 0 auto;-ms-flex:0 0 auto;width:75%}.sd-col-10{flex:0 0 auto;-ms-flex:0 0 auto;width:83.3333333333%}.sd-col-11{flex:0 0 auto;-ms-flex:0 0 auto;width:91.6666666667%}.sd-col-12{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-g-0,.sd-gy-0{--sd-gutter-y: 0}.sd-g-0,.sd-gx-0{--sd-gutter-x: 0}.sd-g-1,.sd-gy-1{--sd-gutter-y: 0.25rem}.sd-g-1,.sd-gx-1{--sd-gutter-x: 0.25rem}.sd-g-2,.sd-gy-2{--sd-gutter-y: 0.5rem}.sd-g-2,.sd-gx-2{--sd-gutter-x: 0.5rem}.sd-g-3,.sd-gy-3{--sd-gutter-y: 1rem}.sd-g-3,.sd-gx-3{--sd-gutter-x: 1rem}.sd-g-4,.sd-gy-4{--sd-gutter-y: 1.5rem}.sd-g-4,.sd-gx-4{--sd-gutter-x: 1.5rem}.sd-g-5,.sd-gy-5{--sd-gutter-y: 3rem}.sd-g-5,.sd-gx-5{--sd-gutter-x: 3rem}@media(min-width: 576px){.sd-col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.sd-col-sm-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.3333333333%}.sd-col-sm-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.sd-col-sm-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.sd-col-sm-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.sd-col-sm-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.6666666667%}.sd-col-sm-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.sd-col-sm-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.3333333333%}.sd-col-sm-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.6666666667%}.sd-col-sm-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.sd-col-sm-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.3333333333%}.sd-col-sm-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.6666666667%}.sd-col-sm-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.sd-g-sm-0,.sd-gy-sm-0{--sd-gutter-y: 0}.sd-g-sm-0,.sd-gx-sm-0{--sd-gutter-x: 0}.sd-g-sm-1,.sd-gy-sm-1{--sd-gutter-y: 0.25rem}.sd-g-sm-1,.sd-gx-sm-1{--sd-gutter-x: 0.25rem}.sd-g-sm-2,.sd-gy-sm-2{--sd-gutter-y: 0.5rem}.sd-g-sm-2,.sd-gx-sm-2{--sd-gutter-x: 0.5rem}.sd-g-sm-3,.sd-gy-sm-3{--sd-gutter-y: 1rem}.sd-g-sm-3,.sd-gx-sm-3{--sd-gutter-x: 1rem}.sd-g-sm-4,.sd-gy-sm-4{--sd-gutter-y: 1.5rem}.sd-g-sm-4,.sd-gx-sm-4{--sd-gutter-x: 1.5rem}.sd-g-sm-5,.sd-gy-sm-5{--sd-gutter-y: 3rem}.sd-g-sm-5,.sd-gx-sm-5{--sd-gutter-x: 3rem}}@media(min-width: 768px){.sd-col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.sd-col-md-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.3333333333%}.sd-col-md-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.sd-col-md-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.sd-col-md-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.sd-col-md-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.6666666667%}.sd-col-md-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.sd-col-md-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.3333333333%}.sd-col-md-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.6666666667%}.sd-col-md-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.sd-col-md-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.3333333333%}.sd-col-md-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.6666666667%}.sd-col-md-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.sd-g-md-0,.sd-gy-md-0{--sd-gutter-y: 0}.sd-g-md-0,.sd-gx-md-0{--sd-gutter-x: 0}.sd-g-md-1,.sd-gy-md-1{--sd-gutter-y: 0.25rem}.sd-g-md-1,.sd-gx-md-1{--sd-gutter-x: 0.25rem}.sd-g-md-2,.sd-gy-md-2{--sd-gutter-y: 0.5rem}.sd-g-md-2,.sd-gx-md-2{--sd-gutter-x: 0.5rem}.sd-g-md-3,.sd-gy-md-3{--sd-gutter-y: 1rem}.sd-g-md-3,.sd-gx-md-3{--sd-gutter-x: 1rem}.sd-g-md-4,.sd-gy-md-4{--sd-gutter-y: 1.5rem}.sd-g-md-4,.sd-gx-md-4{--sd-gutter-x: 1.5rem}.sd-g-md-5,.sd-gy-md-5{--sd-gutter-y: 3rem}.sd-g-md-5,.sd-gx-md-5{--sd-gutter-x: 3rem}}@media(min-width: 992px){.sd-col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.sd-col-lg-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.3333333333%}.sd-col-lg-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.sd-col-lg-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.sd-col-lg-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.sd-col-lg-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.6666666667%}.sd-col-lg-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.sd-col-lg-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.3333333333%}.sd-col-lg-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.6666666667%}.sd-col-lg-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.sd-col-lg-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.3333333333%}.sd-col-lg-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.6666666667%}.sd-col-lg-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.sd-g-lg-0,.sd-gy-lg-0{--sd-gutter-y: 0}.sd-g-lg-0,.sd-gx-lg-0{--sd-gutter-x: 0}.sd-g-lg-1,.sd-gy-lg-1{--sd-gutter-y: 0.25rem}.sd-g-lg-1,.sd-gx-lg-1{--sd-gutter-x: 0.25rem}.sd-g-lg-2,.sd-gy-lg-2{--sd-gutter-y: 0.5rem}.sd-g-lg-2,.sd-gx-lg-2{--sd-gutter-x: 0.5rem}.sd-g-lg-3,.sd-gy-lg-3{--sd-gutter-y: 1rem}.sd-g-lg-3,.sd-gx-lg-3{--sd-gutter-x: 1rem}.sd-g-lg-4,.sd-gy-lg-4{--sd-gutter-y: 1.5rem}.sd-g-lg-4,.sd-gx-lg-4{--sd-gutter-x: 1.5rem}.sd-g-lg-5,.sd-gy-lg-5{--sd-gutter-y: 3rem}.sd-g-lg-5,.sd-gx-lg-5{--sd-gutter-x: 3rem}}@media(min-width: 1200px){.sd-col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.sd-col-xl-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.3333333333%}.sd-col-xl-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.sd-col-xl-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.sd-col-xl-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.sd-col-xl-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.6666666667%}.sd-col-xl-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.sd-col-xl-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.3333333333%}.sd-col-xl-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.6666666667%}.sd-col-xl-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.sd-col-xl-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.3333333333%}.sd-col-xl-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.6666666667%}.sd-col-xl-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.sd-g-xl-0,.sd-gy-xl-0{--sd-gutter-y: 0}.sd-g-xl-0,.sd-gx-xl-0{--sd-gutter-x: 0}.sd-g-xl-1,.sd-gy-xl-1{--sd-gutter-y: 0.25rem}.sd-g-xl-1,.sd-gx-xl-1{--sd-gutter-x: 0.25rem}.sd-g-xl-2,.sd-gy-xl-2{--sd-gutter-y: 0.5rem}.sd-g-xl-2,.sd-gx-xl-2{--sd-gutter-x: 0.5rem}.sd-g-xl-3,.sd-gy-xl-3{--sd-gutter-y: 1rem}.sd-g-xl-3,.sd-gx-xl-3{--sd-gutter-x: 1rem}.sd-g-xl-4,.sd-gy-xl-4{--sd-gutter-y: 1.5rem}.sd-g-xl-4,.sd-gx-xl-4{--sd-gutter-x: 1.5rem}.sd-g-xl-5,.sd-gy-xl-5{--sd-gutter-y: 3rem}.sd-g-xl-5,.sd-gx-xl-5{--sd-gutter-x: 3rem}}.sd-flex-row-reverse{flex-direction:row-reverse !important}details.sd-dropdown{position:relative}details.sd-dropdown .sd-summary-title{font-weight:700;padding-right:3em !important;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none}details.sd-dropdown:hover{cursor:pointer}details.sd-dropdown .sd-summary-content{cursor:default}details.sd-dropdown summary{list-style:none;padding:1em}details.sd-dropdown summary .sd-octicon.no-title{vertical-align:middle}details.sd-dropdown[open] summary .sd-octicon.no-title{visibility:hidden}details.sd-dropdown summary::-webkit-details-marker{display:none}details.sd-dropdown summary:focus{outline:none}details.sd-dropdown .sd-summary-icon{margin-right:.5em}details.sd-dropdown .sd-summary-icon svg{opacity:.8}details.sd-dropdown summary:hover .sd-summary-up svg,details.sd-dropdown summary:hover .sd-summary-down svg{opacity:1;transform:scale(1.1)}details.sd-dropdown .sd-summary-up svg,details.sd-dropdown .sd-summary-down svg{display:block;opacity:.6}details.sd-dropdown .sd-summary-up,details.sd-dropdown .sd-summary-down{pointer-events:none;position:absolute;right:1em;top:1em}details.sd-dropdown[open]>.sd-summary-title .sd-summary-down{visibility:hidden}details.sd-dropdown:not([open])>.sd-summary-title .sd-summary-up{visibility:hidden}details.sd-dropdown:not([open]).sd-card{border:none}details.sd-dropdown:not([open])>.sd-card-header{border:1px solid var(--sd-color-card-border);border-radius:.25rem}details.sd-dropdown.sd-fade-in[open] summary~*{-moz-animation:sd-fade-in .5s ease-in-out;-webkit-animation:sd-fade-in .5s ease-in-out;animation:sd-fade-in .5s ease-in-out}details.sd-dropdown.sd-fade-in-slide-down[open] summary~*{-moz-animation:sd-fade-in .5s ease-in-out,sd-slide-down .5s ease-in-out;-webkit-animation:sd-fade-in .5s ease-in-out,sd-slide-down .5s ease-in-out;animation:sd-fade-in .5s ease-in-out,sd-slide-down .5s ease-in-out}.sd-col>.sd-dropdown{width:100%}.sd-summary-content>.sd-tab-set:first-child{margin-top:0}@keyframes sd-fade-in{0%{opacity:0}100%{opacity:1}}@keyframes sd-slide-down{0%{transform:translate(0, -10px)}100%{transform:translate(0, 0)}}.sd-tab-set{border-radius:.125rem;display:flex;flex-wrap:wrap;margin:1em 0;position:relative}.sd-tab-set>input{opacity:0;position:absolute}.sd-tab-set>input:checked+label{border-color:var(--sd-color-tabs-underline-active);color:var(--sd-color-tabs-label-active)}.sd-tab-set>input:checked+label+.sd-tab-content{display:block}.sd-tab-set>input:not(:checked)+label:hover{color:var(--sd-color-tabs-label-hover);border-color:var(--sd-color-tabs-underline-hover)}.sd-tab-set>input:focus+label{outline-style:auto}.sd-tab-set>input:not(.focus-visible)+label{outline:none;-webkit-tap-highlight-color:transparent}.sd-tab-set>label{border-bottom:.125rem solid transparent;margin-bottom:0;color:var(--sd-color-tabs-label-inactive);border-color:var(--sd-color-tabs-underline-inactive);cursor:pointer;font-size:var(--sd-fontsize-tabs-label);font-weight:700;padding:1em 1.25em .5em;transition:color 250ms;width:auto;z-index:1}html .sd-tab-set>label:hover{color:var(--sd-color-tabs-label-active)}.sd-col>.sd-tab-set{width:100%}.sd-tab-content{box-shadow:0 -0.0625rem var(--sd-color-tabs-overline),0 .0625rem var(--sd-color-tabs-underline);display:none;order:99;padding-bottom:.75rem;padding-top:.75rem;width:100%}.sd-tab-content>:first-child{margin-top:0 !important}.sd-tab-content>:last-child{margin-bottom:0 !important}.sd-tab-content>.sd-tab-set{margin:0}.sd-sphinx-override,.sd-sphinx-override *{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.sd-sphinx-override p{margin-top:0}:root{--sd-color-primary: #007bff;--sd-color-secondary: #6c757d;--sd-color-success: #28a745;--sd-color-info: #17a2b8;--sd-color-warning: #f0b37e;--sd-color-danger: #dc3545;--sd-color-light: #f8f9fa;--sd-color-muted: #6c757d;--sd-color-dark: #212529;--sd-color-black: black;--sd-color-white: white;--sd-color-primary-highlight: #0069d9;--sd-color-secondary-highlight: #5c636a;--sd-color-success-highlight: #228e3b;--sd-color-info-highlight: #148a9c;--sd-color-warning-highlight: #cc986b;--sd-color-danger-highlight: #bb2d3b;--sd-color-light-highlight: #d3d4d5;--sd-color-muted-highlight: #5c636a;--sd-color-dark-highlight: #1c1f23;--sd-color-black-highlight: black;--sd-color-white-highlight: #d9d9d9;--sd-color-primary-text: #fff;--sd-color-secondary-text: #fff;--sd-color-success-text: #fff;--sd-color-info-text: #fff;--sd-color-warning-text: #212529;--sd-color-danger-text: #fff;--sd-color-light-text: #212529;--sd-color-muted-text: #fff;--sd-color-dark-text: #fff;--sd-color-black-text: #fff;--sd-color-white-text: #212529;--sd-color-shadow: rgba(0, 0, 0, 0.15);--sd-color-card-border: rgba(0, 0, 0, 0.125);--sd-color-card-border-hover: hsla(231, 99%, 66%, 1);--sd-color-card-background: transparent;--sd-color-card-text: inherit;--sd-color-card-header: transparent;--sd-color-card-footer: transparent;--sd-color-tabs-label-active: hsla(231, 99%, 66%, 1);--sd-color-tabs-label-hover: hsla(231, 99%, 66%, 1);--sd-color-tabs-label-inactive: hsl(0, 0%, 66%);--sd-color-tabs-underline-active: hsla(231, 99%, 66%, 1);--sd-color-tabs-underline-hover: rgba(178, 206, 245, 0.62);--sd-color-tabs-underline-inactive: transparent;--sd-color-tabs-overline: rgb(222, 222, 222);--sd-color-tabs-underline: rgb(222, 222, 222);--sd-fontsize-tabs-label: 1rem} diff --git a/_sphinx_design_static/design-tabs.js b/_sphinx_design_static/design-tabs.js new file mode 100644 index 00000000..36b38cf0 --- /dev/null +++ b/_sphinx_design_static/design-tabs.js @@ -0,0 +1,27 @@ +var sd_labels_by_text = {}; + +function ready() { + const li = document.getElementsByClassName("sd-tab-label"); + for (const label of li) { + syncId = label.getAttribute("data-sync-id"); + if (syncId) { + label.onclick = onLabelClick; + if (!sd_labels_by_text[syncId]) { + sd_labels_by_text[syncId] = []; + } + sd_labels_by_text[syncId].push(label); + } + } +} + +function onLabelClick() { + // Activate other inputs with the same sync id. + syncId = this.getAttribute("data-sync-id"); + for (label of sd_labels_by_text[syncId]) { + if (label === this) continue; + label.previousElementSibling.checked = true; + } + window.localStorage.setItem("sphinx-design-last-tab", syncId); +} + +document.addEventListener("DOMContentLoaded", ready, false); diff --git a/_static/_sphinx_javascript_frameworks_compat.js b/_static/_sphinx_javascript_frameworks_compat.js new file mode 100644 index 00000000..8549469d --- /dev/null +++ b/_static/_sphinx_javascript_frameworks_compat.js @@ -0,0 +1,134 @@ +/* + * _sphinx_javascript_frameworks_compat.js + * ~~~~~~~~~~ + * + * Compatability shim for jQuery and underscores.js. + * + * WILL BE REMOVED IN Sphinx 6.0 + * xref RemovedInSphinx60Warning + * + */ + +/** + * select a different prefix for underscore + */ +$u = _.noConflict(); + + +/** + * small helper function to urldecode strings + * + * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent#Decoding_query_parameters_from_a_URL + */ +jQuery.urldecode = function(x) { + if (!x) { + return x + } + return decodeURIComponent(x.replace(/\+/g, ' ')); +}; + +/** + * small helper function to urlencode strings + */ +jQuery.urlencode = encodeURIComponent; + +/** + * This function returns the parsed url parameters of the + * current request. Multiple values per key are supported, + * it will always return arrays of strings for the value parts. + */ +jQuery.getQueryParameters = function(s) { + if (typeof s === 'undefined') + s = document.location.search; + var parts = s.substr(s.indexOf('?') + 1).split('&'); + var result = {}; + for (var i = 0; i < parts.length; i++) { + var tmp = parts[i].split('=', 2); + var key = jQuery.urldecode(tmp[0]); + var value = jQuery.urldecode(tmp[1]); + if (key in result) + result[key].push(value); + else + result[key] = [value]; + } + return result; +}; + +/** + * highlight a given string on a jquery object by wrapping it in + * span elements with the given class name. + */ +jQuery.fn.highlightText = function(text, className) { + function highlight(node, addItems) { + if (node.nodeType === 3) { + var val = node.nodeValue; + var pos = val.toLowerCase().indexOf(text); + if (pos >= 0 && + !jQuery(node.parentNode).hasClass(className) && + !jQuery(node.parentNode).hasClass("nohighlight")) { + var span; + var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg"); + if (isInSVG) { + span = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); + } else { + span = document.createElement("span"); + span.className = className; + } + span.appendChild(document.createTextNode(val.substr(pos, text.length))); + node.parentNode.insertBefore(span, node.parentNode.insertBefore( + document.createTextNode(val.substr(pos + text.length)), + node.nextSibling)); + node.nodeValue = val.substr(0, pos); + if (isInSVG) { + var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect"); + var bbox = node.parentElement.getBBox(); + rect.x.baseVal.value = bbox.x; + rect.y.baseVal.value = bbox.y; + rect.width.baseVal.value = bbox.width; + rect.height.baseVal.value = bbox.height; + rect.setAttribute('class', className); + addItems.push({ + "parent": node.parentNode, + "target": rect}); + } + } + } + else if (!jQuery(node).is("button, select, textarea")) { + jQuery.each(node.childNodes, function() { + highlight(this, addItems); + }); + } + } + var addItems = []; + var result = this.each(function() { + highlight(this, addItems); + }); + for (var i = 0; i < addItems.length; ++i) { + jQuery(addItems[i].parent).before(addItems[i].target); + } + return result; +}; + +/* + * backward compatibility for jQuery.browser + * This will be supported until firefox bug is fixed. + */ +if (!jQuery.browser) { + jQuery.uaMatch = function(ua) { + ua = ua.toLowerCase(); + + var match = /(chrome)[ \/]([\w.]+)/.exec(ua) || + /(webkit)[ \/]([\w.]+)/.exec(ua) || + /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) || + /(msie) ([\w.]+)/.exec(ua) || + ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || + []; + + return { + browser: match[ 1 ] || "", + version: match[ 2 ] || "0" + }; + }; + jQuery.browser = {}; + jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true; +} diff --git a/_static/basic.css b/_static/basic.css new file mode 100644 index 00000000..9e364ed3 --- /dev/null +++ b/_static/basic.css @@ -0,0 +1,930 @@ +/* + * basic.css + * ~~~~~~~~~ + * + * Sphinx stylesheet -- basic theme. + * + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +/* -- main layout ----------------------------------------------------------- */ + +div.clearer { + clear: both; +} + +div.section::after { + display: block; + content: ''; + clear: left; +} + +/* -- relbar ---------------------------------------------------------------- */ + +div.related { + width: 100%; + font-size: 90%; +} + +div.related h3 { + display: none; +} + +div.related ul { + margin: 0; + padding: 0 0 0 10px; + list-style: none; +} + +div.related li { + display: inline; +} + +div.related li.right { + float: right; + margin-right: 5px; +} + +/* -- sidebar --------------------------------------------------------------- */ + +div.sphinxsidebarwrapper { + padding: 10px 5px 0 10px; +} + +div.sphinxsidebar { + float: left; + width: 270px; + margin-left: -100%; + font-size: 90%; + word-wrap: break-word; + overflow-wrap : break-word; +} + +div.sphinxsidebar ul { + list-style: none; +} + +div.sphinxsidebar ul ul, +div.sphinxsidebar ul.want-points { + margin-left: 20px; + list-style: square; +} + +div.sphinxsidebar ul ul { + margin-top: 0; + margin-bottom: 0; +} + +div.sphinxsidebar form { + margin-top: 10px; +} + +div.sphinxsidebar input { + border: 1px solid #98dbcc; + font-family: sans-serif; + font-size: 1em; +} + +div.sphinxsidebar #searchbox form.search { + overflow: hidden; +} + +div.sphinxsidebar #searchbox input[type="text"] { + float: left; + width: 80%; + padding: 0.25em; + box-sizing: border-box; +} + +div.sphinxsidebar #searchbox input[type="submit"] { + float: left; + width: 20%; + border-left: none; + padding: 0.25em; + box-sizing: border-box; +} + + +img { + border: 0; + max-width: 100%; +} + +/* -- search page ----------------------------------------------------------- */ + +ul.search { + margin: 10px 0 0 20px; + padding: 0; +} + +ul.search li { + padding: 5px 0 5px 20px; + background-image: url(file.png); + background-repeat: no-repeat; + background-position: 0 7px; +} + +ul.search li a { + font-weight: bold; +} + +ul.search li p.context { + color: #888; + margin: 2px 0 0 30px; + text-align: left; +} + +ul.keywordmatches li.goodmatch a { + font-weight: bold; +} + +/* -- index page ------------------------------------------------------------ */ + +table.contentstable { + width: 90%; + margin-left: auto; + margin-right: auto; +} + +table.contentstable p.biglink { + line-height: 150%; +} + +a.biglink { + font-size: 1.3em; +} + +span.linkdescr { + font-style: italic; + padding-top: 5px; + font-size: 90%; +} + +/* -- general index --------------------------------------------------------- */ + +table.indextable { + width: 100%; +} + +table.indextable td { + text-align: left; + vertical-align: top; +} + +table.indextable ul { + margin-top: 0; + margin-bottom: 0; + list-style-type: none; +} + +table.indextable > tbody > tr > td > ul { + padding-left: 0em; +} + +table.indextable tr.pcap { + height: 10px; +} + +table.indextable tr.cap { + margin-top: 10px; + background-color: #f2f2f2; +} + +img.toggler { + margin-right: 3px; + margin-top: 3px; + cursor: pointer; +} + +div.modindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +div.genindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +/* -- domain module index --------------------------------------------------- */ + +table.modindextable td { + padding: 2px; + border-collapse: collapse; +} + +/* -- general body styles --------------------------------------------------- */ + +div.body { + min-width: 360px; + max-width: 800px; +} + +div.body p, div.body dd, div.body li, div.body blockquote { + -moz-hyphens: auto; + -ms-hyphens: auto; + -webkit-hyphens: auto; + hyphens: auto; +} + +a.headerlink { + visibility: hidden; +} + +h1:hover > a.headerlink, +h2:hover > a.headerlink, +h3:hover > a.headerlink, +h4:hover > a.headerlink, +h5:hover > a.headerlink, +h6:hover > a.headerlink, +dt:hover > a.headerlink, +caption:hover > a.headerlink, +p.caption:hover > a.headerlink, +div.code-block-caption:hover > a.headerlink { + visibility: visible; +} + +div.body p.caption { + text-align: inherit; +} + +div.body td { + text-align: left; +} + +.first { + margin-top: 0 !important; +} + +p.rubric { + margin-top: 30px; + font-weight: bold; +} + +img.align-left, figure.align-left, .figure.align-left, object.align-left { + clear: left; + float: left; + margin-right: 1em; +} + +img.align-right, figure.align-right, .figure.align-right, object.align-right { + clear: right; + float: right; + margin-left: 1em; +} + +img.align-center, figure.align-center, .figure.align-center, object.align-center { + display: block; + margin-left: auto; + margin-right: auto; +} + +img.align-default, figure.align-default, .figure.align-default { + display: block; + margin-left: auto; + margin-right: auto; +} + +.align-left { + text-align: left; +} + +.align-center { + text-align: center; +} + +.align-default { + text-align: center; +} + +.align-right { + text-align: right; +} + +/* -- sidebars -------------------------------------------------------------- */ + +div.sidebar, +aside.sidebar { + margin: 0 0 0.5em 1em; + border: 1px solid #ddb; + padding: 7px; + background-color: #ffe; + width: 40%; + float: right; + clear: right; + overflow-x: auto; +} + +p.sidebar-title { + font-weight: bold; +} +nav.contents, +aside.topic, + +div.admonition, div.topic, blockquote { + clear: left; +} + +/* -- topics ---------------------------------------------------------------- */ +nav.contents, +aside.topic, + +div.topic { + border: 1px solid #ccc; + padding: 7px; + margin: 10px 0 10px 0; +} + +p.topic-title { + font-size: 1.1em; + font-weight: bold; + margin-top: 10px; +} + +/* -- admonitions ----------------------------------------------------------- */ + +div.admonition { + margin-top: 10px; + margin-bottom: 10px; + padding: 7px; +} + +div.admonition dt { + font-weight: bold; +} + +p.admonition-title { + margin: 0px 10px 5px 0px; + font-weight: bold; +} + +div.body p.centered { + text-align: center; + margin-top: 25px; +} + +/* -- content of sidebars/topics/admonitions -------------------------------- */ + +div.sidebar > :last-child, +aside.sidebar > :last-child, +nav.contents > :last-child, +aside.topic > :last-child, + +div.topic > :last-child, +div.admonition > :last-child { + margin-bottom: 0; +} + +div.sidebar::after, +aside.sidebar::after, +nav.contents::after, +aside.topic::after, + +div.topic::after, +div.admonition::after, +blockquote::after { + display: block; + content: ''; + clear: both; +} + +/* -- tables ---------------------------------------------------------------- */ + +table.docutils { + margin-top: 10px; + margin-bottom: 10px; + border: 0; + border-collapse: collapse; +} + +table.align-center { + margin-left: auto; + margin-right: auto; +} + +table.align-default { + margin-left: auto; + margin-right: auto; +} + +table caption span.caption-number { + font-style: italic; +} + +table caption span.caption-text { +} + +table.docutils td, table.docutils th { + padding: 1px 8px 1px 5px; + border-top: 0; + border-left: 0; + border-right: 0; + border-bottom: 1px solid #aaa; +} + +th { + text-align: left; + padding-right: 5px; +} + +table.citation { + border-left: solid 1px gray; + margin-left: 1px; +} + +table.citation td { + border-bottom: none; +} + +th > :first-child, +td > :first-child { + margin-top: 0px; +} + +th > :last-child, +td > :last-child { + margin-bottom: 0px; +} + +/* -- figures --------------------------------------------------------------- */ + +div.figure, figure { + margin: 0.5em; + padding: 0.5em; +} + +div.figure p.caption, figcaption { + padding: 0.3em; +} + +div.figure p.caption span.caption-number, +figcaption span.caption-number { + font-style: italic; +} + +div.figure p.caption span.caption-text, +figcaption span.caption-text { +} + +/* -- field list styles ----------------------------------------------------- */ + +table.field-list td, table.field-list th { + border: 0 !important; +} + +.field-list ul { + margin: 0; + padding-left: 1em; +} + +.field-list p { + margin: 0; +} + +.field-name { + -moz-hyphens: manual; + -ms-hyphens: manual; + -webkit-hyphens: manual; + hyphens: manual; +} + +/* -- hlist styles ---------------------------------------------------------- */ + +table.hlist { + margin: 1em 0; +} + +table.hlist td { + vertical-align: top; +} + +/* -- object description styles --------------------------------------------- */ + +.sig { + font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; +} + +.sig-name, code.descname { + background-color: transparent; + font-weight: bold; +} + +.sig-name { + font-size: 1.1em; +} + +code.descname { + font-size: 1.2em; +} + +.sig-prename, code.descclassname { + background-color: transparent; +} + +.optional { + font-size: 1.3em; +} + +.sig-paren { + font-size: larger; +} + +.sig-param.n { + font-style: italic; +} + +/* C++ specific styling */ + +.sig-inline.c-texpr, +.sig-inline.cpp-texpr { + font-family: unset; +} + +.sig.c .k, .sig.c .kt, +.sig.cpp .k, .sig.cpp .kt { + color: #0033B3; +} + +.sig.c .m, +.sig.cpp .m { + color: #1750EB; +} + +.sig.c .s, .sig.c .sc, +.sig.cpp .s, .sig.cpp .sc { + color: #067D17; +} + + +/* -- other body styles ----------------------------------------------------- */ + +ol.arabic { + list-style: decimal; +} + +ol.loweralpha { + list-style: lower-alpha; +} + +ol.upperalpha { + list-style: upper-alpha; +} + +ol.lowerroman { + list-style: lower-roman; +} + +ol.upperroman { + list-style: upper-roman; +} + +:not(li) > ol > li:first-child > :first-child, +:not(li) > ul > li:first-child > :first-child { + margin-top: 0px; +} + +:not(li) > ol > li:last-child > :last-child, +:not(li) > ul > li:last-child > :last-child { + margin-bottom: 0px; +} + +ol.simple ol p, +ol.simple ul p, +ul.simple ol p, +ul.simple ul p { + margin-top: 0; +} + +ol.simple > li:not(:first-child) > p, +ul.simple > li:not(:first-child) > p { + margin-top: 0; +} + +ol.simple p, +ul.simple p { + margin-bottom: 0; +} + +/* Docutils 0.17 and older (footnotes & citations) */ +dl.footnote > dt, +dl.citation > dt { + float: left; + margin-right: 0.5em; +} + +dl.footnote > dd, +dl.citation > dd { + margin-bottom: 0em; +} + +dl.footnote > dd:after, +dl.citation > dd:after { + content: ""; + clear: both; +} + +/* Docutils 0.18+ (footnotes & citations) */ +aside.footnote > span, +div.citation > span { + float: left; +} +aside.footnote > span:last-of-type, +div.citation > span:last-of-type { + padding-right: 0.5em; +} +aside.footnote > p { + margin-left: 2em; +} +div.citation > p { + margin-left: 4em; +} +aside.footnote > p:last-of-type, +div.citation > p:last-of-type { + margin-bottom: 0em; +} +aside.footnote > p:last-of-type:after, +div.citation > p:last-of-type:after { + content: ""; + clear: both; +} + +/* Footnotes & citations ends */ + +dl.field-list { + display: grid; + grid-template-columns: fit-content(30%) auto; +} + +dl.field-list > dt { + font-weight: bold; + word-break: break-word; + padding-left: 0.5em; + padding-right: 5px; +} + +dl.field-list > dt:after { + content: ":"; +} + +dl.field-list > dd { + padding-left: 0.5em; + margin-top: 0em; + margin-left: 0em; + margin-bottom: 0em; +} + +dl { + margin-bottom: 15px; +} + +dd > :first-child { + margin-top: 0px; +} + +dd ul, dd table { + margin-bottom: 10px; +} + +dd { + margin-top: 3px; + margin-bottom: 10px; + margin-left: 30px; +} + +dl > dd:last-child, +dl > dd:last-child > :last-child { + margin-bottom: 0; +} + +dt:target, span.highlighted { + background-color: #fbe54e; +} + +rect.highlighted { + fill: #fbe54e; +} + +dl.glossary dt { + font-weight: bold; + font-size: 1.1em; +} + +.versionmodified { + font-style: italic; +} + +.system-message { + background-color: #fda; + padding: 5px; + border: 3px solid red; +} + +.footnote:target { + background-color: #ffa; +} + +.line-block { + display: block; + margin-top: 1em; + margin-bottom: 1em; +} + +.line-block .line-block { + margin-top: 0; + margin-bottom: 0; + margin-left: 1.5em; +} + +.guilabel, .menuselection { + font-family: sans-serif; +} + +.accelerator { + text-decoration: underline; +} + +.classifier { + font-style: oblique; +} + +.classifier:before { + font-style: normal; + margin: 0 0.5em; + content: ":"; + display: inline-block; +} + +abbr, acronym { + border-bottom: dotted 1px; + cursor: help; +} + +/* -- code displays --------------------------------------------------------- */ + +pre { + overflow: auto; + overflow-y: hidden; /* fixes display issues on Chrome browsers */ +} + +pre, div[class*="highlight-"] { + clear: both; +} + +span.pre { + -moz-hyphens: none; + -ms-hyphens: none; + -webkit-hyphens: none; + hyphens: none; + white-space: nowrap; +} + +div[class*="highlight-"] { + margin: 1em 0; +} + +td.linenos pre { + border: 0; + background-color: transparent; + color: #aaa; +} + +table.highlighttable { + display: block; +} + +table.highlighttable tbody { + display: block; +} + +table.highlighttable tr { + display: flex; +} + +table.highlighttable td { + margin: 0; + padding: 0; +} + +table.highlighttable td.linenos { + padding-right: 0.5em; +} + +table.highlighttable td.code { + flex: 1; + overflow: hidden; +} + +.highlight .hll { + display: block; +} + +div.highlight pre, +table.highlighttable pre { + margin: 0; +} + +div.code-block-caption + div { + margin-top: 0; +} + +div.code-block-caption { + margin-top: 1em; + padding: 2px 5px; + font-size: small; +} + +div.code-block-caption code { + background-color: transparent; +} + +table.highlighttable td.linenos, +span.linenos, +div.highlight span.gp { /* gp: Generic.Prompt */ + user-select: none; + -webkit-user-select: text; /* Safari fallback only */ + -webkit-user-select: none; /* Chrome/Safari */ + -moz-user-select: none; /* Firefox */ + -ms-user-select: none; /* IE10+ */ +} + +div.code-block-caption span.caption-number { + padding: 0.1em 0.3em; + font-style: italic; +} + +div.code-block-caption span.caption-text { +} + +div.literal-block-wrapper { + margin: 1em 0; +} + +code.xref, a code { + background-color: transparent; + font-weight: bold; +} + +h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { + background-color: transparent; +} + +.viewcode-link { + float: right; +} + +.viewcode-back { + float: right; + font-family: sans-serif; +} + +div.viewcode-block:target { + margin: -1px -10px; + padding: 0 10px; +} + +/* -- math display ---------------------------------------------------------- */ + +img.math { + vertical-align: middle; +} + +div.body div.math p { + text-align: center; +} + +span.eqno { + float: right; +} + +span.eqno a.headerlink { + position: absolute; + z-index: 1; +} + +div.math:hover a.headerlink { + visibility: visible; +} + +/* -- printout stylesheet --------------------------------------------------- */ + +@media print { + div.document, + div.documentwrapper, + div.bodywrapper { + margin: 0 !important; + width: 100%; + } + + div.sphinxsidebar, + div.related, + div.footer, + #top-link { + display: none; + } +} \ No newline at end of file diff --git a/_static/check-solid.svg b/_static/check-solid.svg new file mode 100644 index 00000000..92fad4b5 --- /dev/null +++ b/_static/check-solid.svg @@ -0,0 +1,4 @@ + + + + diff --git a/_static/clipboard.min.js b/_static/clipboard.min.js new file mode 100644 index 00000000..54b3c463 --- /dev/null +++ b/_static/clipboard.min.js @@ -0,0 +1,7 @@ +/*! + * clipboard.js v2.0.8 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return n={686:function(t,e,n){"use strict";n.d(e,{default:function(){return o}});var e=n(279),i=n.n(e),e=n(370),u=n.n(e),e=n(817),c=n.n(e);function a(t){try{return document.execCommand(t)}catch(t){return}}var f=function(t){t=c()(t);return a("cut"),t};var l=function(t){var e,n,o,r=1 + + + + diff --git a/_static/copybutton.css b/_static/copybutton.css new file mode 100644 index 00000000..f1916ec7 --- /dev/null +++ b/_static/copybutton.css @@ -0,0 +1,94 @@ +/* Copy buttons */ +button.copybtn { + position: absolute; + display: flex; + top: .3em; + right: .3em; + width: 1.7em; + height: 1.7em; + opacity: 0; + transition: opacity 0.3s, border .3s, background-color .3s; + user-select: none; + padding: 0; + border: none; + outline: none; + border-radius: 0.4em; + /* The colors that GitHub uses */ + border: #1b1f2426 1px solid; + background-color: #f6f8fa; + color: #57606a; +} + +button.copybtn.success { + border-color: #22863a; + color: #22863a; +} + +button.copybtn svg { + stroke: currentColor; + width: 1.5em; + height: 1.5em; + padding: 0.1em; +} + +div.highlight { + position: relative; +} + +/* Show the copybutton */ +.highlight:hover button.copybtn, button.copybtn.success { + opacity: 1; +} + +.highlight button.copybtn:hover { + background-color: rgb(235, 235, 235); +} + +.highlight button.copybtn:active { + background-color: rgb(187, 187, 187); +} + +/** + * A minimal CSS-only tooltip copied from: + * https://codepen.io/mildrenben/pen/rVBrpK + * + * To use, write HTML like the following: + * + *

Short

+ */ + .o-tooltip--left { + position: relative; + } + + .o-tooltip--left:after { + opacity: 0; + visibility: hidden; + position: absolute; + content: attr(data-tooltip); + padding: .2em; + font-size: .8em; + left: -.2em; + background: grey; + color: white; + white-space: nowrap; + z-index: 2; + border-radius: 2px; + transform: translateX(-102%) translateY(0); + transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1); +} + +.o-tooltip--left:hover:after { + display: block; + opacity: 1; + visibility: visible; + transform: translateX(-100%) translateY(0); + transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1); + transition-delay: .5s; +} + +/* By default the copy button shouldn't show up when printing a page */ +@media print { + button.copybtn { + display: none; + } +} diff --git a/_static/copybutton.js b/_static/copybutton.js new file mode 100644 index 00000000..2ea7ff3e --- /dev/null +++ b/_static/copybutton.js @@ -0,0 +1,248 @@ +// Localization support +const messages = { + 'en': { + 'copy': 'Copy', + 'copy_to_clipboard': 'Copy to clipboard', + 'copy_success': 'Copied!', + 'copy_failure': 'Failed to copy', + }, + 'es' : { + 'copy': 'Copiar', + 'copy_to_clipboard': 'Copiar al portapapeles', + 'copy_success': '¡Copiado!', + 'copy_failure': 'Error al copiar', + }, + 'de' : { + 'copy': 'Kopieren', + 'copy_to_clipboard': 'In die Zwischenablage kopieren', + 'copy_success': 'Kopiert!', + 'copy_failure': 'Fehler beim Kopieren', + }, + 'fr' : { + 'copy': 'Copier', + 'copy_to_clipboard': 'Copier dans le presse-papier', + 'copy_success': 'Copié !', + 'copy_failure': 'Échec de la copie', + }, + 'ru': { + 'copy': 'Скопировать', + 'copy_to_clipboard': 'Скопировать в буфер', + 'copy_success': 'Скопировано!', + 'copy_failure': 'Не удалось скопировать', + }, + 'zh-CN': { + 'copy': '复制', + 'copy_to_clipboard': '复制到剪贴板', + 'copy_success': '复制成功!', + 'copy_failure': '复制失败', + }, + 'it' : { + 'copy': 'Copiare', + 'copy_to_clipboard': 'Copiato negli appunti', + 'copy_success': 'Copiato!', + 'copy_failure': 'Errore durante la copia', + } +} + +let locale = 'en' +if( document.documentElement.lang !== undefined + && messages[document.documentElement.lang] !== undefined ) { + locale = document.documentElement.lang +} + +let doc_url_root = DOCUMENTATION_OPTIONS.URL_ROOT; +if (doc_url_root == '#') { + doc_url_root = ''; +} + +/** + * SVG files for our copy buttons + */ +let iconCheck = ` + ${messages[locale]['copy_success']} + + +` + +// If the user specified their own SVG use that, otherwise use the default +let iconCopy = ``; +if (!iconCopy) { + iconCopy = ` + ${messages[locale]['copy_to_clipboard']} + + + +` +} + +/** + * Set up copy/paste for code blocks + */ + +const runWhenDOMLoaded = cb => { + if (document.readyState != 'loading') { + cb() + } else if (document.addEventListener) { + document.addEventListener('DOMContentLoaded', cb) + } else { + document.attachEvent('onreadystatechange', function() { + if (document.readyState == 'complete') cb() + }) + } +} + +const codeCellId = index => `codecell${index}` + +// Clears selected text since ClipboardJS will select the text when copying +const clearSelection = () => { + if (window.getSelection) { + window.getSelection().removeAllRanges() + } else if (document.selection) { + document.selection.empty() + } +} + +// Changes tooltip text for a moment, then changes it back +// We want the timeout of our `success` class to be a bit shorter than the +// tooltip and icon change, so that we can hide the icon before changing back. +var timeoutIcon = 2000; +var timeoutSuccessClass = 1500; + +const temporarilyChangeTooltip = (el, oldText, newText) => { + el.setAttribute('data-tooltip', newText) + el.classList.add('success') + // Remove success a little bit sooner than we change the tooltip + // So that we can use CSS to hide the copybutton first + setTimeout(() => el.classList.remove('success'), timeoutSuccessClass) + setTimeout(() => el.setAttribute('data-tooltip', oldText), timeoutIcon) +} + +// Changes the copy button icon for two seconds, then changes it back +const temporarilyChangeIcon = (el) => { + el.innerHTML = iconCheck; + setTimeout(() => {el.innerHTML = iconCopy}, timeoutIcon) +} + +const addCopyButtonToCodeCells = () => { + // If ClipboardJS hasn't loaded, wait a bit and try again. This + // happens because we load ClipboardJS asynchronously. + if (window.ClipboardJS === undefined) { + setTimeout(addCopyButtonToCodeCells, 250) + return + } + + // Add copybuttons to all of our code cells + const COPYBUTTON_SELECTOR = 'div.highlight pre'; + const codeCells = document.querySelectorAll(COPYBUTTON_SELECTOR) + codeCells.forEach((codeCell, index) => { + const id = codeCellId(index) + codeCell.setAttribute('id', id) + + const clipboardButton = id => + `` + codeCell.insertAdjacentHTML('afterend', clipboardButton(id)) + }) + +function escapeRegExp(string) { + return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string +} + +/** + * Removes excluded text from a Node. + * + * @param {Node} target Node to filter. + * @param {string} exclude CSS selector of nodes to exclude. + * @returns {DOMString} Text from `target` with text removed. + */ +function filterText(target, exclude) { + const clone = target.cloneNode(true); // clone as to not modify the live DOM + if (exclude) { + // remove excluded nodes + clone.querySelectorAll(exclude).forEach(node => node.remove()); + } + return clone.innerText; +} + +// Callback when a copy button is clicked. Will be passed the node that was clicked +// should then grab the text and replace pieces of text that shouldn't be used in output +function formatCopyText(textContent, copybuttonPromptText, isRegexp = false, onlyCopyPromptLines = true, removePrompts = true, copyEmptyLines = true, lineContinuationChar = "", hereDocDelim = "") { + var regexp; + var match; + + // Do we check for line continuation characters and "HERE-documents"? + var useLineCont = !!lineContinuationChar + var useHereDoc = !!hereDocDelim + + // create regexp to capture prompt and remaining line + if (isRegexp) { + regexp = new RegExp('^(' + copybuttonPromptText + ')(.*)') + } else { + regexp = new RegExp('^(' + escapeRegExp(copybuttonPromptText) + ')(.*)') + } + + const outputLines = []; + var promptFound = false; + var gotLineCont = false; + var gotHereDoc = false; + const lineGotPrompt = []; + for (const line of textContent.split('\n')) { + match = line.match(regexp) + if (match || gotLineCont || gotHereDoc) { + promptFound = regexp.test(line) + lineGotPrompt.push(promptFound) + if (removePrompts && promptFound) { + outputLines.push(match[2]) + } else { + outputLines.push(line) + } + gotLineCont = line.endsWith(lineContinuationChar) & useLineCont + if (line.includes(hereDocDelim) & useHereDoc) + gotHereDoc = !gotHereDoc + } else if (!onlyCopyPromptLines) { + outputLines.push(line) + } else if (copyEmptyLines && line.trim() === '') { + outputLines.push(line) + } + } + + // If no lines with the prompt were found then just use original lines + if (lineGotPrompt.some(v => v === true)) { + textContent = outputLines.join('\n'); + } + + // Remove a trailing newline to avoid auto-running when pasting + if (textContent.endsWith("\n")) { + textContent = textContent.slice(0, -1) + } + return textContent +} + + +var copyTargetText = (trigger) => { + var target = document.querySelector(trigger.attributes['data-clipboard-target'].value); + + // get filtered text + let exclude = '.linenos'; + + let text = filterText(target, exclude); + return formatCopyText(text, '', false, true, true, true, '', '') +} + + // Initialize with a callback so we can modify the text before copy + const clipboard = new ClipboardJS('.copybtn', {text: copyTargetText}) + + // Update UI with error/success messages + clipboard.on('success', event => { + clearSelection() + temporarilyChangeTooltip(event.trigger, messages[locale]['copy'], messages[locale]['copy_success']) + temporarilyChangeIcon(event.trigger) + }) + + clipboard.on('error', event => { + temporarilyChangeTooltip(event.trigger, messages[locale]['copy'], messages[locale]['copy_failure']) + }) +} + +runWhenDOMLoaded(addCopyButtonToCodeCells) \ No newline at end of file diff --git a/_static/copybutton_funcs.js b/_static/copybutton_funcs.js new file mode 100644 index 00000000..dbe1aaad --- /dev/null +++ b/_static/copybutton_funcs.js @@ -0,0 +1,73 @@ +function escapeRegExp(string) { + return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string +} + +/** + * Removes excluded text from a Node. + * + * @param {Node} target Node to filter. + * @param {string} exclude CSS selector of nodes to exclude. + * @returns {DOMString} Text from `target` with text removed. + */ +export function filterText(target, exclude) { + const clone = target.cloneNode(true); // clone as to not modify the live DOM + if (exclude) { + // remove excluded nodes + clone.querySelectorAll(exclude).forEach(node => node.remove()); + } + return clone.innerText; +} + +// Callback when a copy button is clicked. Will be passed the node that was clicked +// should then grab the text and replace pieces of text that shouldn't be used in output +export function formatCopyText(textContent, copybuttonPromptText, isRegexp = false, onlyCopyPromptLines = true, removePrompts = true, copyEmptyLines = true, lineContinuationChar = "", hereDocDelim = "") { + var regexp; + var match; + + // Do we check for line continuation characters and "HERE-documents"? + var useLineCont = !!lineContinuationChar + var useHereDoc = !!hereDocDelim + + // create regexp to capture prompt and remaining line + if (isRegexp) { + regexp = new RegExp('^(' + copybuttonPromptText + ')(.*)') + } else { + regexp = new RegExp('^(' + escapeRegExp(copybuttonPromptText) + ')(.*)') + } + + const outputLines = []; + var promptFound = false; + var gotLineCont = false; + var gotHereDoc = false; + const lineGotPrompt = []; + for (const line of textContent.split('\n')) { + match = line.match(regexp) + if (match || gotLineCont || gotHereDoc) { + promptFound = regexp.test(line) + lineGotPrompt.push(promptFound) + if (removePrompts && promptFound) { + outputLines.push(match[2]) + } else { + outputLines.push(line) + } + gotLineCont = line.endsWith(lineContinuationChar) & useLineCont + if (line.includes(hereDocDelim) & useHereDoc) + gotHereDoc = !gotHereDoc + } else if (!onlyCopyPromptLines) { + outputLines.push(line) + } else if (copyEmptyLines && line.trim() === '') { + outputLines.push(line) + } + } + + // If no lines with the prompt were found then just use original lines + if (lineGotPrompt.some(v => v === true)) { + textContent = outputLines.join('\n'); + } + + // Remove a trailing newline to avoid auto-running when pasting + if (textContent.endsWith("\n")) { + textContent = textContent.slice(0, -1) + } + return textContent +} diff --git a/_static/datalogo.png b/_static/datalogo.png new file mode 100644 index 0000000000000000000000000000000000000000..2b1fc919490263f81adafdc813836fce001dc47e GIT binary patch literal 19882 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 ztp{color:var(--sd-color-primary) !important}a.sd-text-primary:focus,a.sd-text-primary:hover{color:var(--sd-color-primary-highlight) !important}.sd-text-secondary,.sd-text-secondary>p{color:var(--sd-color-secondary) !important}a.sd-text-secondary:focus,a.sd-text-secondary:hover{color:var(--sd-color-secondary-highlight) !important}.sd-text-success,.sd-text-success>p{color:var(--sd-color-success) !important}a.sd-text-success:focus,a.sd-text-success:hover{color:var(--sd-color-success-highlight) !important}.sd-text-info,.sd-text-info>p{color:var(--sd-color-info) !important}a.sd-text-info:focus,a.sd-text-info:hover{color:var(--sd-color-info-highlight) !important}.sd-text-warning,.sd-text-warning>p{color:var(--sd-color-warning) !important}a.sd-text-warning:focus,a.sd-text-warning:hover{color:var(--sd-color-warning-highlight) !important}.sd-text-danger,.sd-text-danger>p{color:var(--sd-color-danger) !important}a.sd-text-danger:focus,a.sd-text-danger:hover{color:var(--sd-color-danger-highlight) !important}.sd-text-light,.sd-text-light>p{color:var(--sd-color-light) !important}a.sd-text-light:focus,a.sd-text-light:hover{color:var(--sd-color-light-highlight) !important}.sd-text-muted,.sd-text-muted>p{color:var(--sd-color-muted) !important}a.sd-text-muted:focus,a.sd-text-muted:hover{color:var(--sd-color-muted-highlight) !important}.sd-text-dark,.sd-text-dark>p{color:var(--sd-color-dark) !important}a.sd-text-dark:focus,a.sd-text-dark:hover{color:var(--sd-color-dark-highlight) !important}.sd-text-black,.sd-text-black>p{color:var(--sd-color-black) !important}a.sd-text-black:focus,a.sd-text-black:hover{color:var(--sd-color-black-highlight) !important}.sd-text-white,.sd-text-white>p{color:var(--sd-color-white) !important}a.sd-text-white:focus,a.sd-text-white:hover{color:var(--sd-color-white-highlight) !important}.sd-outline-primary{border-color:var(--sd-color-primary) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-primary:focus,a.sd-outline-primary:hover{border-color:var(--sd-color-primary-highlight) !important}.sd-outline-secondary{border-color:var(--sd-color-secondary) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-secondary:focus,a.sd-outline-secondary:hover{border-color:var(--sd-color-secondary-highlight) !important}.sd-outline-success{border-color:var(--sd-color-success) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-success:focus,a.sd-outline-success:hover{border-color:var(--sd-color-success-highlight) !important}.sd-outline-info{border-color:var(--sd-color-info) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-info:focus,a.sd-outline-info:hover{border-color:var(--sd-color-info-highlight) !important}.sd-outline-warning{border-color:var(--sd-color-warning) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-warning:focus,a.sd-outline-warning:hover{border-color:var(--sd-color-warning-highlight) !important}.sd-outline-danger{border-color:var(--sd-color-danger) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-danger:focus,a.sd-outline-danger:hover{border-color:var(--sd-color-danger-highlight) !important}.sd-outline-light{border-color:var(--sd-color-light) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-light:focus,a.sd-outline-light:hover{border-color:var(--sd-color-light-highlight) !important}.sd-outline-muted{border-color:var(--sd-color-muted) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-muted:focus,a.sd-outline-muted:hover{border-color:var(--sd-color-muted-highlight) !important}.sd-outline-dark{border-color:var(--sd-color-dark) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-dark:focus,a.sd-outline-dark:hover{border-color:var(--sd-color-dark-highlight) !important}.sd-outline-black{border-color:var(--sd-color-black) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-black:focus,a.sd-outline-black:hover{border-color:var(--sd-color-black-highlight) !important}.sd-outline-white{border-color:var(--sd-color-white) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-white:focus,a.sd-outline-white:hover{border-color:var(--sd-color-white-highlight) !important}.sd-bg-transparent{background-color:transparent !important}.sd-outline-transparent{border-color:transparent !important}.sd-text-transparent{color:transparent !important}.sd-p-0{padding:0 !important}.sd-pt-0,.sd-py-0{padding-top:0 !important}.sd-pr-0,.sd-px-0{padding-right:0 !important}.sd-pb-0,.sd-py-0{padding-bottom:0 !important}.sd-pl-0,.sd-px-0{padding-left:0 !important}.sd-p-1{padding:.25rem !important}.sd-pt-1,.sd-py-1{padding-top:.25rem !important}.sd-pr-1,.sd-px-1{padding-right:.25rem !important}.sd-pb-1,.sd-py-1{padding-bottom:.25rem !important}.sd-pl-1,.sd-px-1{padding-left:.25rem !important}.sd-p-2{padding:.5rem !important}.sd-pt-2,.sd-py-2{padding-top:.5rem !important}.sd-pr-2,.sd-px-2{padding-right:.5rem !important}.sd-pb-2,.sd-py-2{padding-bottom:.5rem !important}.sd-pl-2,.sd-px-2{padding-left:.5rem !important}.sd-p-3{padding:1rem !important}.sd-pt-3,.sd-py-3{padding-top:1rem !important}.sd-pr-3,.sd-px-3{padding-right:1rem !important}.sd-pb-3,.sd-py-3{padding-bottom:1rem !important}.sd-pl-3,.sd-px-3{padding-left:1rem !important}.sd-p-4{padding:1.5rem !important}.sd-pt-4,.sd-py-4{padding-top:1.5rem !important}.sd-pr-4,.sd-px-4{padding-right:1.5rem !important}.sd-pb-4,.sd-py-4{padding-bottom:1.5rem !important}.sd-pl-4,.sd-px-4{padding-left:1.5rem !important}.sd-p-5{padding:3rem !important}.sd-pt-5,.sd-py-5{padding-top:3rem !important}.sd-pr-5,.sd-px-5{padding-right:3rem !important}.sd-pb-5,.sd-py-5{padding-bottom:3rem !important}.sd-pl-5,.sd-px-5{padding-left:3rem !important}.sd-m-auto{margin:auto !important}.sd-mt-auto,.sd-my-auto{margin-top:auto !important}.sd-mr-auto,.sd-mx-auto{margin-right:auto !important}.sd-mb-auto,.sd-my-auto{margin-bottom:auto !important}.sd-ml-auto,.sd-mx-auto{margin-left:auto !important}.sd-m-0{margin:0 !important}.sd-mt-0,.sd-my-0{margin-top:0 !important}.sd-mr-0,.sd-mx-0{margin-right:0 !important}.sd-mb-0,.sd-my-0{margin-bottom:0 !important}.sd-ml-0,.sd-mx-0{margin-left:0 !important}.sd-m-1{margin:.25rem !important}.sd-mt-1,.sd-my-1{margin-top:.25rem !important}.sd-mr-1,.sd-mx-1{margin-right:.25rem !important}.sd-mb-1,.sd-my-1{margin-bottom:.25rem !important}.sd-ml-1,.sd-mx-1{margin-left:.25rem !important}.sd-m-2{margin:.5rem !important}.sd-mt-2,.sd-my-2{margin-top:.5rem !important}.sd-mr-2,.sd-mx-2{margin-right:.5rem !important}.sd-mb-2,.sd-my-2{margin-bottom:.5rem !important}.sd-ml-2,.sd-mx-2{margin-left:.5rem !important}.sd-m-3{margin:1rem !important}.sd-mt-3,.sd-my-3{margin-top:1rem !important}.sd-mr-3,.sd-mx-3{margin-right:1rem !important}.sd-mb-3,.sd-my-3{margin-bottom:1rem !important}.sd-ml-3,.sd-mx-3{margin-left:1rem !important}.sd-m-4{margin:1.5rem !important}.sd-mt-4,.sd-my-4{margin-top:1.5rem !important}.sd-mr-4,.sd-mx-4{margin-right:1.5rem !important}.sd-mb-4,.sd-my-4{margin-bottom:1.5rem !important}.sd-ml-4,.sd-mx-4{margin-left:1.5rem !important}.sd-m-5{margin:3rem !important}.sd-mt-5,.sd-my-5{margin-top:3rem !important}.sd-mr-5,.sd-mx-5{margin-right:3rem !important}.sd-mb-5,.sd-my-5{margin-bottom:3rem !important}.sd-ml-5,.sd-mx-5{margin-left:3rem !important}.sd-w-25{width:25% !important}.sd-w-50{width:50% !important}.sd-w-75{width:75% !important}.sd-w-100{width:100% !important}.sd-w-auto{width:auto !important}.sd-h-25{height:25% !important}.sd-h-50{height:50% !important}.sd-h-75{height:75% !important}.sd-h-100{height:100% !important}.sd-h-auto{height:auto !important}.sd-d-none{display:none !important}.sd-d-inline{display:inline !important}.sd-d-inline-block{display:inline-block !important}.sd-d-block{display:block !important}.sd-d-grid{display:grid !important}.sd-d-flex-row{display:-ms-flexbox !important;display:flex !important;flex-direction:row !important}.sd-d-flex-column{display:-ms-flexbox !important;display:flex !important;flex-direction:column !important}.sd-d-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}@media(min-width: 576px){.sd-d-sm-none{display:none !important}.sd-d-sm-inline{display:inline !important}.sd-d-sm-inline-block{display:inline-block !important}.sd-d-sm-block{display:block !important}.sd-d-sm-grid{display:grid !important}.sd-d-sm-flex{display:-ms-flexbox !important;display:flex !important}.sd-d-sm-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}}@media(min-width: 768px){.sd-d-md-none{display:none !important}.sd-d-md-inline{display:inline !important}.sd-d-md-inline-block{display:inline-block !important}.sd-d-md-block{display:block !important}.sd-d-md-grid{display:grid !important}.sd-d-md-flex{display:-ms-flexbox !important;display:flex !important}.sd-d-md-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}}@media(min-width: 992px){.sd-d-lg-none{display:none !important}.sd-d-lg-inline{display:inline !important}.sd-d-lg-inline-block{display:inline-block !important}.sd-d-lg-block{display:block !important}.sd-d-lg-grid{display:grid !important}.sd-d-lg-flex{display:-ms-flexbox !important;display:flex !important}.sd-d-lg-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}}@media(min-width: 1200px){.sd-d-xl-none{display:none !important}.sd-d-xl-inline{display:inline !important}.sd-d-xl-inline-block{display:inline-block !important}.sd-d-xl-block{display:block !important}.sd-d-xl-grid{display:grid !important}.sd-d-xl-flex{display:-ms-flexbox !important;display:flex !important}.sd-d-xl-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}}.sd-align-major-start{justify-content:flex-start !important}.sd-align-major-end{justify-content:flex-end !important}.sd-align-major-center{justify-content:center !important}.sd-align-major-justify{justify-content:space-between !important}.sd-align-major-spaced{justify-content:space-evenly !important}.sd-align-minor-start{align-items:flex-start !important}.sd-align-minor-end{align-items:flex-end !important}.sd-align-minor-center{align-items:center !important}.sd-align-minor-stretch{align-items:stretch !important}.sd-text-justify{text-align:justify !important}.sd-text-left{text-align:left !important}.sd-text-right{text-align:right !important}.sd-text-center{text-align:center !important}.sd-font-weight-light{font-weight:300 !important}.sd-font-weight-lighter{font-weight:lighter !important}.sd-font-weight-normal{font-weight:400 !important}.sd-font-weight-bold{font-weight:700 !important}.sd-font-weight-bolder{font-weight:bolder !important}.sd-font-italic{font-style:italic !important}.sd-text-decoration-none{text-decoration:none !important}.sd-text-lowercase{text-transform:lowercase !important}.sd-text-uppercase{text-transform:uppercase !important}.sd-text-capitalize{text-transform:capitalize !important}.sd-text-wrap{white-space:normal !important}.sd-text-nowrap{white-space:nowrap !important}.sd-text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sd-fs-1,.sd-fs-1>p{font-size:calc(1.375rem + 1.5vw) !important;line-height:unset !important}.sd-fs-2,.sd-fs-2>p{font-size:calc(1.325rem + 0.9vw) !important;line-height:unset !important}.sd-fs-3,.sd-fs-3>p{font-size:calc(1.3rem + 0.6vw) !important;line-height:unset !important}.sd-fs-4,.sd-fs-4>p{font-size:calc(1.275rem + 0.3vw) !important;line-height:unset !important}.sd-fs-5,.sd-fs-5>p{font-size:1.25rem !important;line-height:unset !important}.sd-fs-6,.sd-fs-6>p{font-size:1rem !important;line-height:unset !important}.sd-border-0{border:0 solid !important}.sd-border-top-0{border-top:0 solid !important}.sd-border-bottom-0{border-bottom:0 solid !important}.sd-border-right-0{border-right:0 solid !important}.sd-border-left-0{border-left:0 solid !important}.sd-border-1{border:1px solid !important}.sd-border-top-1{border-top:1px solid !important}.sd-border-bottom-1{border-bottom:1px solid !important}.sd-border-right-1{border-right:1px solid !important}.sd-border-left-1{border-left:1px solid !important}.sd-border-2{border:2px solid !important}.sd-border-top-2{border-top:2px solid !important}.sd-border-bottom-2{border-bottom:2px solid !important}.sd-border-right-2{border-right:2px solid !important}.sd-border-left-2{border-left:2px solid !important}.sd-border-3{border:3px solid !important}.sd-border-top-3{border-top:3px solid !important}.sd-border-bottom-3{border-bottom:3px solid !important}.sd-border-right-3{border-right:3px solid !important}.sd-border-left-3{border-left:3px solid !important}.sd-border-4{border:4px solid !important}.sd-border-top-4{border-top:4px solid !important}.sd-border-bottom-4{border-bottom:4px solid !important}.sd-border-right-4{border-right:4px solid !important}.sd-border-left-4{border-left:4px solid !important}.sd-border-5{border:5px solid !important}.sd-border-top-5{border-top:5px solid !important}.sd-border-bottom-5{border-bottom:5px solid !important}.sd-border-right-5{border-right:5px solid !important}.sd-border-left-5{border-left:5px solid !important}.sd-rounded-0{border-radius:0 !important}.sd-rounded-1{border-radius:.2rem !important}.sd-rounded-2{border-radius:.3rem !important}.sd-rounded-3{border-radius:.5rem !important}.sd-rounded-pill{border-radius:50rem !important}.sd-rounded-circle{border-radius:50% !important}.shadow-none{box-shadow:none !important}.sd-shadow-sm{box-shadow:0 .125rem .25rem var(--sd-color-shadow) !important}.sd-shadow-md{box-shadow:0 .5rem 1rem var(--sd-color-shadow) !important}.sd-shadow-lg{box-shadow:0 1rem 3rem var(--sd-color-shadow) !important}@keyframes sd-slide-from-left{0%{transform:translateX(-100%)}100%{transform:translateX(0)}}@keyframes sd-slide-from-right{0%{transform:translateX(200%)}100%{transform:translateX(0)}}@keyframes sd-grow100{0%{transform:scale(0);opacity:.5}100%{transform:scale(1);opacity:1}}@keyframes sd-grow50{0%{transform:scale(0.5);opacity:.5}100%{transform:scale(1);opacity:1}}@keyframes sd-grow50-rot20{0%{transform:scale(0.5) rotateZ(-20deg);opacity:.5}75%{transform:scale(1) rotateZ(5deg);opacity:1}95%{transform:scale(1) rotateZ(-1deg);opacity:1}100%{transform:scale(1) rotateZ(0);opacity:1}}.sd-animate-slide-from-left{animation:1s ease-out 0s 1 normal none running sd-slide-from-left}.sd-animate-slide-from-right{animation:1s ease-out 0s 1 normal none running sd-slide-from-right}.sd-animate-grow100{animation:1s ease-out 0s 1 normal none running sd-grow100}.sd-animate-grow50{animation:1s ease-out 0s 1 normal none running sd-grow50}.sd-animate-grow50-rot20{animation:1s ease-out 0s 1 normal none running sd-grow50-rot20}.sd-badge{display:inline-block;padding:.35em .65em;font-size:.75em;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem}.sd-badge:empty{display:none}a.sd-badge{text-decoration:none}.sd-btn .sd-badge{position:relative;top:-1px}.sd-btn{background-color:transparent;border:1px solid transparent;border-radius:.25rem;cursor:pointer;display:inline-block;font-weight:400;font-size:1rem;line-height:1.5;padding:.375rem .75rem;text-align:center;text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;vertical-align:middle;user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none}.sd-btn:hover{text-decoration:none}@media(prefers-reduced-motion: reduce){.sd-btn{transition:none}}.sd-btn-primary,.sd-btn-outline-primary:hover,.sd-btn-outline-primary:focus{color:var(--sd-color-primary-text) !important;background-color:var(--sd-color-primary) !important;border-color:var(--sd-color-primary) !important;border-width:1px !important;border-style:solid !important}.sd-btn-primary:hover,.sd-btn-primary:focus{color:var(--sd-color-primary-text) !important;background-color:var(--sd-color-primary-highlight) !important;border-color:var(--sd-color-primary-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-primary{color:var(--sd-color-primary) !important;border-color:var(--sd-color-primary) !important;border-width:1px !important;border-style:solid !important}.sd-btn-secondary,.sd-btn-outline-secondary:hover,.sd-btn-outline-secondary:focus{color:var(--sd-color-secondary-text) !important;background-color:var(--sd-color-secondary) !important;border-color:var(--sd-color-secondary) !important;border-width:1px !important;border-style:solid !important}.sd-btn-secondary:hover,.sd-btn-secondary:focus{color:var(--sd-color-secondary-text) !important;background-color:var(--sd-color-secondary-highlight) !important;border-color:var(--sd-color-secondary-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-secondary{color:var(--sd-color-secondary) !important;border-color:var(--sd-color-secondary) !important;border-width:1px !important;border-style:solid !important}.sd-btn-success,.sd-btn-outline-success:hover,.sd-btn-outline-success:focus{color:var(--sd-color-success-text) !important;background-color:var(--sd-color-success) !important;border-color:var(--sd-color-success) !important;border-width:1px !important;border-style:solid !important}.sd-btn-success:hover,.sd-btn-success:focus{color:var(--sd-color-success-text) !important;background-color:var(--sd-color-success-highlight) !important;border-color:var(--sd-color-success-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-success{color:var(--sd-color-success) !important;border-color:var(--sd-color-success) !important;border-width:1px !important;border-style:solid !important}.sd-btn-info,.sd-btn-outline-info:hover,.sd-btn-outline-info:focus{color:var(--sd-color-info-text) !important;background-color:var(--sd-color-info) !important;border-color:var(--sd-color-info) !important;border-width:1px !important;border-style:solid !important}.sd-btn-info:hover,.sd-btn-info:focus{color:var(--sd-color-info-text) !important;background-color:var(--sd-color-info-highlight) !important;border-color:var(--sd-color-info-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-info{color:var(--sd-color-info) !important;border-color:var(--sd-color-info) !important;border-width:1px !important;border-style:solid !important}.sd-btn-warning,.sd-btn-outline-warning:hover,.sd-btn-outline-warning:focus{color:var(--sd-color-warning-text) !important;background-color:var(--sd-color-warning) !important;border-color:var(--sd-color-warning) !important;border-width:1px !important;border-style:solid !important}.sd-btn-warning:hover,.sd-btn-warning:focus{color:var(--sd-color-warning-text) !important;background-color:var(--sd-color-warning-highlight) !important;border-color:var(--sd-color-warning-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-warning{color:var(--sd-color-warning) !important;border-color:var(--sd-color-warning) !important;border-width:1px !important;border-style:solid !important}.sd-btn-danger,.sd-btn-outline-danger:hover,.sd-btn-outline-danger:focus{color:var(--sd-color-danger-text) !important;background-color:var(--sd-color-danger) !important;border-color:var(--sd-color-danger) !important;border-width:1px !important;border-style:solid !important}.sd-btn-danger:hover,.sd-btn-danger:focus{color:var(--sd-color-danger-text) !important;background-color:var(--sd-color-danger-highlight) !important;border-color:var(--sd-color-danger-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-danger{color:var(--sd-color-danger) !important;border-color:var(--sd-color-danger) !important;border-width:1px !important;border-style:solid !important}.sd-btn-light,.sd-btn-outline-light:hover,.sd-btn-outline-light:focus{color:var(--sd-color-light-text) !important;background-color:var(--sd-color-light) !important;border-color:var(--sd-color-light) !important;border-width:1px !important;border-style:solid !important}.sd-btn-light:hover,.sd-btn-light:focus{color:var(--sd-color-light-text) !important;background-color:var(--sd-color-light-highlight) !important;border-color:var(--sd-color-light-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-light{color:var(--sd-color-light) !important;border-color:var(--sd-color-light) !important;border-width:1px !important;border-style:solid !important}.sd-btn-muted,.sd-btn-outline-muted:hover,.sd-btn-outline-muted:focus{color:var(--sd-color-muted-text) !important;background-color:var(--sd-color-muted) !important;border-color:var(--sd-color-muted) !important;border-width:1px !important;border-style:solid !important}.sd-btn-muted:hover,.sd-btn-muted:focus{color:var(--sd-color-muted-text) !important;background-color:var(--sd-color-muted-highlight) !important;border-color:var(--sd-color-muted-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-muted{color:var(--sd-color-muted) !important;border-color:var(--sd-color-muted) !important;border-width:1px !important;border-style:solid !important}.sd-btn-dark,.sd-btn-outline-dark:hover,.sd-btn-outline-dark:focus{color:var(--sd-color-dark-text) !important;background-color:var(--sd-color-dark) !important;border-color:var(--sd-color-dark) !important;border-width:1px !important;border-style:solid !important}.sd-btn-dark:hover,.sd-btn-dark:focus{color:var(--sd-color-dark-text) !important;background-color:var(--sd-color-dark-highlight) !important;border-color:var(--sd-color-dark-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-dark{color:var(--sd-color-dark) !important;border-color:var(--sd-color-dark) !important;border-width:1px !important;border-style:solid !important}.sd-btn-black,.sd-btn-outline-black:hover,.sd-btn-outline-black:focus{color:var(--sd-color-black-text) !important;background-color:var(--sd-color-black) !important;border-color:var(--sd-color-black) !important;border-width:1px !important;border-style:solid !important}.sd-btn-black:hover,.sd-btn-black:focus{color:var(--sd-color-black-text) !important;background-color:var(--sd-color-black-highlight) !important;border-color:var(--sd-color-black-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-black{color:var(--sd-color-black) !important;border-color:var(--sd-color-black) !important;border-width:1px !important;border-style:solid !important}.sd-btn-white,.sd-btn-outline-white:hover,.sd-btn-outline-white:focus{color:var(--sd-color-white-text) !important;background-color:var(--sd-color-white) !important;border-color:var(--sd-color-white) !important;border-width:1px !important;border-style:solid !important}.sd-btn-white:hover,.sd-btn-white:focus{color:var(--sd-color-white-text) !important;background-color:var(--sd-color-white-highlight) !important;border-color:var(--sd-color-white-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-white{color:var(--sd-color-white) !important;border-color:var(--sd-color-white) !important;border-width:1px !important;border-style:solid !important}.sd-stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.sd-hide-link-text{font-size:0}.sd-octicon,.sd-material-icon{display:inline-block;fill:currentColor;vertical-align:middle}.sd-avatar-xs{border-radius:50%;object-fit:cover;object-position:center;width:1rem;height:1rem}.sd-avatar-sm{border-radius:50%;object-fit:cover;object-position:center;width:3rem;height:3rem}.sd-avatar-md{border-radius:50%;object-fit:cover;object-position:center;width:5rem;height:5rem}.sd-avatar-lg{border-radius:50%;object-fit:cover;object-position:center;width:7rem;height:7rem}.sd-avatar-xl{border-radius:50%;object-fit:cover;object-position:center;width:10rem;height:10rem}.sd-avatar-inherit{border-radius:50%;object-fit:cover;object-position:center;width:inherit;height:inherit}.sd-avatar-initial{border-radius:50%;object-fit:cover;object-position:center;width:initial;height:initial}.sd-card{background-clip:border-box;background-color:var(--sd-color-card-background);border:1px solid var(--sd-color-card-border);border-radius:.25rem;color:var(--sd-color-card-text);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;position:relative;word-wrap:break-word}.sd-card>hr{margin-left:0;margin-right:0}.sd-card-hover:hover{border-color:var(--sd-color-card-border-hover);transform:scale(1.01)}.sd-card-body{-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem 1rem}.sd-card-title{margin-bottom:.5rem}.sd-card-subtitle{margin-top:-0.25rem;margin-bottom:0}.sd-card-text:last-child{margin-bottom:0}.sd-card-link:hover{text-decoration:none}.sd-card-link+.card-link{margin-left:1rem}.sd-card-header{padding:.5rem 1rem;margin-bottom:0;background-color:var(--sd-color-card-header);border-bottom:1px solid var(--sd-color-card-border)}.sd-card-header:first-child{border-radius:calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0}.sd-card-footer{padding:.5rem 1rem;background-color:var(--sd-color-card-footer);border-top:1px solid var(--sd-color-card-border)}.sd-card-footer:last-child{border-radius:0 0 calc(0.25rem - 1px) calc(0.25rem - 1px)}.sd-card-header-tabs{margin-right:-0.5rem;margin-bottom:-0.5rem;margin-left:-0.5rem;border-bottom:0}.sd-card-header-pills{margin-right:-0.5rem;margin-left:-0.5rem}.sd-card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1rem;border-radius:calc(0.25rem - 1px)}.sd-card-img,.sd-card-img-bottom,.sd-card-img-top{width:100%}.sd-card-img,.sd-card-img-top{border-top-left-radius:calc(0.25rem - 1px);border-top-right-radius:calc(0.25rem - 1px)}.sd-card-img,.sd-card-img-bottom{border-bottom-left-radius:calc(0.25rem - 1px);border-bottom-right-radius:calc(0.25rem - 1px)}.sd-cards-carousel{width:100%;display:flex;flex-wrap:nowrap;-ms-flex-direction:row;flex-direction:row;overflow-x:hidden;scroll-snap-type:x mandatory}.sd-cards-carousel.sd-show-scrollbar{overflow-x:auto}.sd-cards-carousel:hover,.sd-cards-carousel:focus{overflow-x:auto}.sd-cards-carousel>.sd-card{flex-shrink:0;scroll-snap-align:start}.sd-cards-carousel>.sd-card:not(:last-child){margin-right:3px}.sd-card-cols-1>.sd-card{width:90%}.sd-card-cols-2>.sd-card{width:45%}.sd-card-cols-3>.sd-card{width:30%}.sd-card-cols-4>.sd-card{width:22.5%}.sd-card-cols-5>.sd-card{width:18%}.sd-card-cols-6>.sd-card{width:15%}.sd-card-cols-7>.sd-card{width:12.8571428571%}.sd-card-cols-8>.sd-card{width:11.25%}.sd-card-cols-9>.sd-card{width:10%}.sd-card-cols-10>.sd-card{width:9%}.sd-card-cols-11>.sd-card{width:8.1818181818%}.sd-card-cols-12>.sd-card{width:7.5%}.sd-container,.sd-container-fluid,.sd-container-lg,.sd-container-md,.sd-container-sm,.sd-container-xl{margin-left:auto;margin-right:auto;padding-left:var(--sd-gutter-x, 0.75rem);padding-right:var(--sd-gutter-x, 0.75rem);width:100%}@media(min-width: 576px){.sd-container-sm,.sd-container{max-width:540px}}@media(min-width: 768px){.sd-container-md,.sd-container-sm,.sd-container{max-width:720px}}@media(min-width: 992px){.sd-container-lg,.sd-container-md,.sd-container-sm,.sd-container{max-width:960px}}@media(min-width: 1200px){.sd-container-xl,.sd-container-lg,.sd-container-md,.sd-container-sm,.sd-container{max-width:1140px}}.sd-row{--sd-gutter-x: 1.5rem;--sd-gutter-y: 0;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-top:calc(var(--sd-gutter-y) * -1);margin-right:calc(var(--sd-gutter-x) * -0.5);margin-left:calc(var(--sd-gutter-x) * -0.5)}.sd-row>*{box-sizing:border-box;flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--sd-gutter-x) * 0.5);padding-left:calc(var(--sd-gutter-x) * 0.5);margin-top:var(--sd-gutter-y)}.sd-col{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-auto>*{flex:0 0 auto;width:auto}.sd-row-cols-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}@media(min-width: 576px){.sd-col-sm{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-sm-auto{flex:1 0 auto;-ms-flex:1 0 auto;width:100%}.sd-row-cols-sm-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-sm-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-sm-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-sm-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-sm-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-sm-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-sm-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-sm-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-sm-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-sm-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-sm-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-sm-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}}@media(min-width: 768px){.sd-col-md{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-md-auto{flex:1 0 auto;-ms-flex:1 0 auto;width:100%}.sd-row-cols-md-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-md-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-md-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-md-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-md-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-md-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-md-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-md-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-md-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-md-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-md-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-md-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}}@media(min-width: 992px){.sd-col-lg{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-lg-auto{flex:1 0 auto;-ms-flex:1 0 auto;width:100%}.sd-row-cols-lg-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-lg-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-lg-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-lg-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-lg-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-lg-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-lg-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-lg-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-lg-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-lg-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-lg-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-lg-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}}@media(min-width: 1200px){.sd-col-xl{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-xl-auto{flex:1 0 auto;-ms-flex:1 0 auto;width:100%}.sd-row-cols-xl-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-xl-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-xl-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-xl-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-xl-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-xl-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-xl-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-xl-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-xl-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-xl-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-xl-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-xl-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}}.sd-col-auto{flex:0 0 auto;-ms-flex:0 0 auto;width:auto}.sd-col-1{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}.sd-col-2{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-col-3{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-col-4{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-col-5{flex:0 0 auto;-ms-flex:0 0 auto;width:41.6666666667%}.sd-col-6{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-col-7{flex:0 0 auto;-ms-flex:0 0 auto;width:58.3333333333%}.sd-col-8{flex:0 0 auto;-ms-flex:0 0 auto;width:66.6666666667%}.sd-col-9{flex:0 0 auto;-ms-flex:0 0 auto;width:75%}.sd-col-10{flex:0 0 auto;-ms-flex:0 0 auto;width:83.3333333333%}.sd-col-11{flex:0 0 auto;-ms-flex:0 0 auto;width:91.6666666667%}.sd-col-12{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-g-0,.sd-gy-0{--sd-gutter-y: 0}.sd-g-0,.sd-gx-0{--sd-gutter-x: 0}.sd-g-1,.sd-gy-1{--sd-gutter-y: 0.25rem}.sd-g-1,.sd-gx-1{--sd-gutter-x: 0.25rem}.sd-g-2,.sd-gy-2{--sd-gutter-y: 0.5rem}.sd-g-2,.sd-gx-2{--sd-gutter-x: 0.5rem}.sd-g-3,.sd-gy-3{--sd-gutter-y: 1rem}.sd-g-3,.sd-gx-3{--sd-gutter-x: 1rem}.sd-g-4,.sd-gy-4{--sd-gutter-y: 1.5rem}.sd-g-4,.sd-gx-4{--sd-gutter-x: 1.5rem}.sd-g-5,.sd-gy-5{--sd-gutter-y: 3rem}.sd-g-5,.sd-gx-5{--sd-gutter-x: 3rem}@media(min-width: 576px){.sd-col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.sd-col-sm-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.3333333333%}.sd-col-sm-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.sd-col-sm-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.sd-col-sm-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.sd-col-sm-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.6666666667%}.sd-col-sm-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.sd-col-sm-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.3333333333%}.sd-col-sm-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.6666666667%}.sd-col-sm-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.sd-col-sm-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.3333333333%}.sd-col-sm-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.6666666667%}.sd-col-sm-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.sd-g-sm-0,.sd-gy-sm-0{--sd-gutter-y: 0}.sd-g-sm-0,.sd-gx-sm-0{--sd-gutter-x: 0}.sd-g-sm-1,.sd-gy-sm-1{--sd-gutter-y: 0.25rem}.sd-g-sm-1,.sd-gx-sm-1{--sd-gutter-x: 0.25rem}.sd-g-sm-2,.sd-gy-sm-2{--sd-gutter-y: 0.5rem}.sd-g-sm-2,.sd-gx-sm-2{--sd-gutter-x: 0.5rem}.sd-g-sm-3,.sd-gy-sm-3{--sd-gutter-y: 1rem}.sd-g-sm-3,.sd-gx-sm-3{--sd-gutter-x: 1rem}.sd-g-sm-4,.sd-gy-sm-4{--sd-gutter-y: 1.5rem}.sd-g-sm-4,.sd-gx-sm-4{--sd-gutter-x: 1.5rem}.sd-g-sm-5,.sd-gy-sm-5{--sd-gutter-y: 3rem}.sd-g-sm-5,.sd-gx-sm-5{--sd-gutter-x: 3rem}}@media(min-width: 768px){.sd-col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.sd-col-md-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.3333333333%}.sd-col-md-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.sd-col-md-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.sd-col-md-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.sd-col-md-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.6666666667%}.sd-col-md-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.sd-col-md-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.3333333333%}.sd-col-md-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.6666666667%}.sd-col-md-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.sd-col-md-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.3333333333%}.sd-col-md-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.6666666667%}.sd-col-md-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.sd-g-md-0,.sd-gy-md-0{--sd-gutter-y: 0}.sd-g-md-0,.sd-gx-md-0{--sd-gutter-x: 0}.sd-g-md-1,.sd-gy-md-1{--sd-gutter-y: 0.25rem}.sd-g-md-1,.sd-gx-md-1{--sd-gutter-x: 0.25rem}.sd-g-md-2,.sd-gy-md-2{--sd-gutter-y: 0.5rem}.sd-g-md-2,.sd-gx-md-2{--sd-gutter-x: 0.5rem}.sd-g-md-3,.sd-gy-md-3{--sd-gutter-y: 1rem}.sd-g-md-3,.sd-gx-md-3{--sd-gutter-x: 1rem}.sd-g-md-4,.sd-gy-md-4{--sd-gutter-y: 1.5rem}.sd-g-md-4,.sd-gx-md-4{--sd-gutter-x: 1.5rem}.sd-g-md-5,.sd-gy-md-5{--sd-gutter-y: 3rem}.sd-g-md-5,.sd-gx-md-5{--sd-gutter-x: 3rem}}@media(min-width: 992px){.sd-col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.sd-col-lg-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.3333333333%}.sd-col-lg-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.sd-col-lg-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.sd-col-lg-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.sd-col-lg-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.6666666667%}.sd-col-lg-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.sd-col-lg-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.3333333333%}.sd-col-lg-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.6666666667%}.sd-col-lg-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.sd-col-lg-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.3333333333%}.sd-col-lg-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.6666666667%}.sd-col-lg-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.sd-g-lg-0,.sd-gy-lg-0{--sd-gutter-y: 0}.sd-g-lg-0,.sd-gx-lg-0{--sd-gutter-x: 0}.sd-g-lg-1,.sd-gy-lg-1{--sd-gutter-y: 0.25rem}.sd-g-lg-1,.sd-gx-lg-1{--sd-gutter-x: 0.25rem}.sd-g-lg-2,.sd-gy-lg-2{--sd-gutter-y: 0.5rem}.sd-g-lg-2,.sd-gx-lg-2{--sd-gutter-x: 0.5rem}.sd-g-lg-3,.sd-gy-lg-3{--sd-gutter-y: 1rem}.sd-g-lg-3,.sd-gx-lg-3{--sd-gutter-x: 1rem}.sd-g-lg-4,.sd-gy-lg-4{--sd-gutter-y: 1.5rem}.sd-g-lg-4,.sd-gx-lg-4{--sd-gutter-x: 1.5rem}.sd-g-lg-5,.sd-gy-lg-5{--sd-gutter-y: 3rem}.sd-g-lg-5,.sd-gx-lg-5{--sd-gutter-x: 3rem}}@media(min-width: 1200px){.sd-col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.sd-col-xl-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.3333333333%}.sd-col-xl-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.sd-col-xl-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.sd-col-xl-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.sd-col-xl-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.6666666667%}.sd-col-xl-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.sd-col-xl-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.3333333333%}.sd-col-xl-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.6666666667%}.sd-col-xl-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.sd-col-xl-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.3333333333%}.sd-col-xl-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.6666666667%}.sd-col-xl-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.sd-g-xl-0,.sd-gy-xl-0{--sd-gutter-y: 0}.sd-g-xl-0,.sd-gx-xl-0{--sd-gutter-x: 0}.sd-g-xl-1,.sd-gy-xl-1{--sd-gutter-y: 0.25rem}.sd-g-xl-1,.sd-gx-xl-1{--sd-gutter-x: 0.25rem}.sd-g-xl-2,.sd-gy-xl-2{--sd-gutter-y: 0.5rem}.sd-g-xl-2,.sd-gx-xl-2{--sd-gutter-x: 0.5rem}.sd-g-xl-3,.sd-gy-xl-3{--sd-gutter-y: 1rem}.sd-g-xl-3,.sd-gx-xl-3{--sd-gutter-x: 1rem}.sd-g-xl-4,.sd-gy-xl-4{--sd-gutter-y: 1.5rem}.sd-g-xl-4,.sd-gx-xl-4{--sd-gutter-x: 1.5rem}.sd-g-xl-5,.sd-gy-xl-5{--sd-gutter-y: 3rem}.sd-g-xl-5,.sd-gx-xl-5{--sd-gutter-x: 3rem}}.sd-flex-row-reverse{flex-direction:row-reverse !important}details.sd-dropdown{position:relative}details.sd-dropdown .sd-summary-title{font-weight:700;padding-right:3em !important;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;user-select:none}details.sd-dropdown:hover{cursor:pointer}details.sd-dropdown .sd-summary-content{cursor:default}details.sd-dropdown summary{list-style:none;padding:1em}details.sd-dropdown summary .sd-octicon.no-title{vertical-align:middle}details.sd-dropdown[open] summary .sd-octicon.no-title{visibility:hidden}details.sd-dropdown summary::-webkit-details-marker{display:none}details.sd-dropdown summary:focus{outline:none}details.sd-dropdown .sd-summary-icon{margin-right:.5em}details.sd-dropdown .sd-summary-icon svg{opacity:.8}details.sd-dropdown summary:hover .sd-summary-up svg,details.sd-dropdown summary:hover .sd-summary-down svg{opacity:1;transform:scale(1.1)}details.sd-dropdown .sd-summary-up svg,details.sd-dropdown .sd-summary-down svg{display:block;opacity:.6}details.sd-dropdown .sd-summary-up,details.sd-dropdown .sd-summary-down{pointer-events:none;position:absolute;right:1em;top:1em}details.sd-dropdown[open]>.sd-summary-title .sd-summary-down{visibility:hidden}details.sd-dropdown:not([open])>.sd-summary-title .sd-summary-up{visibility:hidden}details.sd-dropdown:not([open]).sd-card{border:none}details.sd-dropdown:not([open])>.sd-card-header{border:1px solid var(--sd-color-card-border);border-radius:.25rem}details.sd-dropdown.sd-fade-in[open] summary~*{-moz-animation:sd-fade-in .5s ease-in-out;-webkit-animation:sd-fade-in .5s ease-in-out;animation:sd-fade-in .5s ease-in-out}details.sd-dropdown.sd-fade-in-slide-down[open] summary~*{-moz-animation:sd-fade-in .5s ease-in-out,sd-slide-down .5s ease-in-out;-webkit-animation:sd-fade-in .5s ease-in-out,sd-slide-down .5s ease-in-out;animation:sd-fade-in .5s ease-in-out,sd-slide-down .5s ease-in-out}.sd-col>.sd-dropdown{width:100%}.sd-summary-content>.sd-tab-set:first-child{margin-top:0}@keyframes sd-fade-in{0%{opacity:0}100%{opacity:1}}@keyframes sd-slide-down{0%{transform:translate(0, -10px)}100%{transform:translate(0, 0)}}.sd-tab-set{border-radius:.125rem;display:flex;flex-wrap:wrap;margin:1em 0;position:relative}.sd-tab-set>input{opacity:0;position:absolute}.sd-tab-set>input:checked+label{border-color:var(--sd-color-tabs-underline-active);color:var(--sd-color-tabs-label-active)}.sd-tab-set>input:checked+label+.sd-tab-content{display:block}.sd-tab-set>input:not(:checked)+label:hover{color:var(--sd-color-tabs-label-hover);border-color:var(--sd-color-tabs-underline-hover)}.sd-tab-set>input:focus+label{outline-style:auto}.sd-tab-set>input:not(.focus-visible)+label{outline:none;-webkit-tap-highlight-color:transparent}.sd-tab-set>label{border-bottom:.125rem solid transparent;margin-bottom:0;color:var(--sd-color-tabs-label-inactive);border-color:var(--sd-color-tabs-underline-inactive);cursor:pointer;font-size:var(--sd-fontsize-tabs-label);font-weight:700;padding:1em 1.25em .5em;transition:color 250ms;width:auto;z-index:1}html .sd-tab-set>label:hover{color:var(--sd-color-tabs-label-active)}.sd-col>.sd-tab-set{width:100%}.sd-tab-content{box-shadow:0 -0.0625rem var(--sd-color-tabs-overline),0 .0625rem var(--sd-color-tabs-underline);display:none;order:99;padding-bottom:.75rem;padding-top:.75rem;width:100%}.sd-tab-content>:first-child{margin-top:0 !important}.sd-tab-content>:last-child{margin-bottom:0 !important}.sd-tab-content>.sd-tab-set{margin:0}.sd-sphinx-override,.sd-sphinx-override *{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.sd-sphinx-override p{margin-top:0}:root{--sd-color-primary: #007bff;--sd-color-secondary: #6c757d;--sd-color-success: #28a745;--sd-color-info: #17a2b8;--sd-color-warning: #f0b37e;--sd-color-danger: #dc3545;--sd-color-light: #f8f9fa;--sd-color-muted: #6c757d;--sd-color-dark: #212529;--sd-color-black: black;--sd-color-white: white;--sd-color-primary-highlight: #0069d9;--sd-color-secondary-highlight: #5c636a;--sd-color-success-highlight: #228e3b;--sd-color-info-highlight: #148a9c;--sd-color-warning-highlight: #cc986b;--sd-color-danger-highlight: #bb2d3b;--sd-color-light-highlight: #d3d4d5;--sd-color-muted-highlight: #5c636a;--sd-color-dark-highlight: #1c1f23;--sd-color-black-highlight: black;--sd-color-white-highlight: #d9d9d9;--sd-color-primary-text: #fff;--sd-color-secondary-text: #fff;--sd-color-success-text: #fff;--sd-color-info-text: #fff;--sd-color-warning-text: #212529;--sd-color-danger-text: #fff;--sd-color-light-text: #212529;--sd-color-muted-text: #fff;--sd-color-dark-text: #fff;--sd-color-black-text: #fff;--sd-color-white-text: #212529;--sd-color-shadow: rgba(0, 0, 0, 0.15);--sd-color-card-border: rgba(0, 0, 0, 0.125);--sd-color-card-border-hover: hsla(231, 99%, 66%, 1);--sd-color-card-background: transparent;--sd-color-card-text: inherit;--sd-color-card-header: transparent;--sd-color-card-footer: transparent;--sd-color-tabs-label-active: hsla(231, 99%, 66%, 1);--sd-color-tabs-label-hover: hsla(231, 99%, 66%, 1);--sd-color-tabs-label-inactive: hsl(0, 0%, 66%);--sd-color-tabs-underline-active: hsla(231, 99%, 66%, 1);--sd-color-tabs-underline-hover: rgba(178, 206, 245, 0.62);--sd-color-tabs-underline-inactive: transparent;--sd-color-tabs-overline: rgb(222, 222, 222);--sd-color-tabs-underline: rgb(222, 222, 222);--sd-fontsize-tabs-label: 1rem} diff --git a/_static/design-tabs.js b/_static/design-tabs.js new file mode 100644 index 00000000..36b38cf0 --- /dev/null +++ b/_static/design-tabs.js @@ -0,0 +1,27 @@ +var sd_labels_by_text = {}; + +function ready() { + const li = document.getElementsByClassName("sd-tab-label"); + for (const label of li) { + syncId = label.getAttribute("data-sync-id"); + if (syncId) { + label.onclick = onLabelClick; + if (!sd_labels_by_text[syncId]) { + sd_labels_by_text[syncId] = []; + } + sd_labels_by_text[syncId].push(label); + } + } +} + +function onLabelClick() { + // Activate other inputs with the same sync id. + syncId = this.getAttribute("data-sync-id"); + for (label of sd_labels_by_text[syncId]) { + if (label === this) continue; + label.previousElementSibling.checked = true; + } + window.localStorage.setItem("sphinx-design-last-tab", syncId); +} + +document.addEventListener("DOMContentLoaded", ready, false); diff --git a/_static/doctools.js b/_static/doctools.js new file mode 100644 index 00000000..c3db08d1 --- /dev/null +++ b/_static/doctools.js @@ -0,0 +1,264 @@ +/* + * doctools.js + * ~~~~~~~~~~~ + * + * Base JavaScript utilities for all Sphinx HTML documentation. + * + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ +"use strict"; + +const _ready = (callback) => { + if (document.readyState !== "loading") { + callback(); + } else { + document.addEventListener("DOMContentLoaded", callback); + } +}; + +/** + * highlight a given string on a node by wrapping it in + * span elements with the given class name. + */ +const _highlight = (node, addItems, text, className) => { + if (node.nodeType === Node.TEXT_NODE) { + const val = node.nodeValue; + const parent = node.parentNode; + const pos = val.toLowerCase().indexOf(text); + if ( + pos >= 0 && + !parent.classList.contains(className) && + !parent.classList.contains("nohighlight") + ) { + let span; + + const closestNode = parent.closest("body, svg, foreignObject"); + const isInSVG = closestNode && closestNode.matches("svg"); + if (isInSVG) { + span = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); + } else { + span = document.createElement("span"); + span.classList.add(className); + } + + span.appendChild(document.createTextNode(val.substr(pos, text.length))); + parent.insertBefore( + span, + parent.insertBefore( + document.createTextNode(val.substr(pos + text.length)), + node.nextSibling + ) + ); + node.nodeValue = val.substr(0, pos); + + if (isInSVG) { + const rect = document.createElementNS( + "http://www.w3.org/2000/svg", + "rect" + ); + const bbox = parent.getBBox(); + rect.x.baseVal.value = bbox.x; + rect.y.baseVal.value = bbox.y; + rect.width.baseVal.value = bbox.width; + rect.height.baseVal.value = bbox.height; + rect.setAttribute("class", className); + addItems.push({ parent: parent, target: rect }); + } + } + } else if (node.matches && !node.matches("button, select, textarea")) { + node.childNodes.forEach((el) => _highlight(el, addItems, text, className)); + } +}; +const _highlightText = (thisNode, text, className) => { + let addItems = []; + _highlight(thisNode, addItems, text, className); + addItems.forEach((obj) => + obj.parent.insertAdjacentElement("beforebegin", obj.target) + ); +}; + +/** + * Small JavaScript module for the documentation. + */ +const Documentation = { + init: () => { + Documentation.highlightSearchWords(); + Documentation.initDomainIndexTable(); + Documentation.initOnKeyListeners(); + }, + + /** + * i18n support + */ + TRANSLATIONS: {}, + PLURAL_EXPR: (n) => (n === 1 ? 0 : 1), + LOCALE: "unknown", + + // gettext and ngettext don't access this so that the functions + // can safely bound to a different name (_ = Documentation.gettext) + gettext: (string) => { + const translated = Documentation.TRANSLATIONS[string]; + switch (typeof translated) { + case "undefined": + return string; // no translation + case "string": + return translated; // translation exists + default: + return translated[0]; // (singular, plural) translation tuple exists + } + }, + + ngettext: (singular, plural, n) => { + const translated = Documentation.TRANSLATIONS[singular]; + if (typeof translated !== "undefined") + return translated[Documentation.PLURAL_EXPR(n)]; + return n === 1 ? singular : plural; + }, + + addTranslations: (catalog) => { + Object.assign(Documentation.TRANSLATIONS, catalog.messages); + Documentation.PLURAL_EXPR = new Function( + "n", + `return (${catalog.plural_expr})` + ); + Documentation.LOCALE = catalog.locale; + }, + + /** + * highlight the search words provided in the url in the text + */ + highlightSearchWords: () => { + const highlight = + new URLSearchParams(window.location.search).get("highlight") || ""; + const terms = highlight.toLowerCase().split(/\s+/).filter(x => x); + if (terms.length === 0) return; // nothing to do + + // There should never be more than one element matching "div.body" + const divBody = document.querySelectorAll("div.body"); + const body = divBody.length ? divBody[0] : document.querySelector("body"); + window.setTimeout(() => { + terms.forEach((term) => _highlightText(body, term, "highlighted")); + }, 10); + + const searchBox = document.getElementById("searchbox"); + if (searchBox === null) return; + searchBox.appendChild( + document + .createRange() + .createContextualFragment( + '" + ) + ); + }, + + /** + * helper function to hide the search marks again + */ + hideSearchWords: () => { + document + .querySelectorAll("#searchbox .highlight-link") + .forEach((el) => el.remove()); + document + .querySelectorAll("span.highlighted") + .forEach((el) => el.classList.remove("highlighted")); + const url = new URL(window.location); + url.searchParams.delete("highlight"); + window.history.replaceState({}, "", url); + }, + + /** + * helper function to focus on search bar + */ + focusSearchBar: () => { + document.querySelectorAll("input[name=q]")[0]?.focus(); + }, + + /** + * Initialise the domain index toggle buttons + */ + initDomainIndexTable: () => { + const toggler = (el) => { + const idNumber = el.id.substr(7); + const toggledRows = document.querySelectorAll(`tr.cg-${idNumber}`); + if (el.src.substr(-9) === "minus.png") { + el.src = `${el.src.substr(0, el.src.length - 9)}plus.png`; + toggledRows.forEach((el) => (el.style.display = "none")); + } else { + el.src = `${el.src.substr(0, el.src.length - 8)}minus.png`; + toggledRows.forEach((el) => (el.style.display = "")); + } + }; + + const togglerElements = document.querySelectorAll("img.toggler"); + togglerElements.forEach((el) => + el.addEventListener("click", (event) => toggler(event.currentTarget)) + ); + togglerElements.forEach((el) => (el.style.display = "")); + if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) togglerElements.forEach(toggler); + }, + + initOnKeyListeners: () => { + // only install a listener if it is really needed + if ( + !DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS && + !DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS + ) + return; + + const blacklistedElements = new Set([ + "TEXTAREA", + "INPUT", + "SELECT", + "BUTTON", + ]); + document.addEventListener("keydown", (event) => { + if (blacklistedElements.has(document.activeElement.tagName)) return; // bail for input elements + if (event.altKey || event.ctrlKey || event.metaKey) return; // bail with special keys + + if (!event.shiftKey) { + switch (event.key) { + case "ArrowLeft": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const prevLink = document.querySelector('link[rel="prev"]'); + if (prevLink && prevLink.href) { + window.location.href = prevLink.href; + event.preventDefault(); + } + break; + case "ArrowRight": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const nextLink = document.querySelector('link[rel="next"]'); + if (nextLink && nextLink.href) { + window.location.href = nextLink.href; + event.preventDefault(); + } + break; + case "Escape": + if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break; + Documentation.hideSearchWords(); + event.preventDefault(); + } + } + + // some keyboard layouts may need Shift to get / + switch (event.key) { + case "/": + if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break; + Documentation.focusSearchBar(); + event.preventDefault(); + } + }); + }, +}; + +// quick alias for translations +const _ = Documentation.gettext; + +_ready(Documentation.init); diff --git a/_static/documentation_options.js b/_static/documentation_options.js new file mode 100644 index 00000000..30637825 --- /dev/null +++ b/_static/documentation_options.js @@ -0,0 +1,14 @@ +var DOCUMENTATION_OPTIONS = { + URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'), + VERSION: '', + LANGUAGE: 'en', + COLLAPSE_INDEX: false, + BUILDER: 'html', + FILE_SUFFIX: '.html', + LINK_SUFFIX: '.html', + HAS_SOURCE: true, + SOURCELINK_SUFFIX: '', + NAVIGATION_WITH_KEYS: true, + SHOW_SEARCH_SUMMARY: true, + ENABLE_SEARCH_SHORTCUTS: false, +}; \ No newline at end of file diff --git a/_static/file.png b/_static/file.png new file mode 100644 index 0000000000000000000000000000000000000000..a858a410e4faa62ce324d814e4b816fff83a6fb3 GIT binary patch literal 286 zcmV+(0pb3MP)s`hMrGg#P~ix$^RISR_I47Y|r1 z_CyJOe}D1){SET-^Amu_i71Lt6eYfZjRyw@I6OQAIXXHDfiX^GbOlHe=Ae4>0m)d(f|Me07*qoM6N<$f}vM^LjV8( literal 0 HcmV?d00001 diff --git a/_static/images/logo_binder.svg b/_static/images/logo_binder.svg new file mode 100644 index 00000000..45fecf75 --- /dev/null +++ b/_static/images/logo_binder.svg @@ -0,0 +1,19 @@ + + + + +logo + + + + + + + + diff --git a/_static/images/logo_colab.png b/_static/images/logo_colab.png new file mode 100644 index 0000000000000000000000000000000000000000..b7560ec216b2d1b6f77855525fe966c741833428 GIT binary patch literal 7601 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 diff --git a/_static/images/logo_jupyterhub.svg b/_static/images/logo_jupyterhub.svg new file mode 100644 index 00000000..60cfe9f2 --- /dev/null +++ b/_static/images/logo_jupyterhub.svg @@ -0,0 +1 @@ +logo_jupyterhubHub diff --git a/_static/jquery-3.6.0.js b/_static/jquery-3.6.0.js new file mode 100644 index 00000000..fc6c299b --- /dev/null +++ b/_static/jquery-3.6.0.js @@ -0,0 +1,10881 @@ +/*! + * jQuery JavaScript Library v3.6.0 + * https://jquery.com/ + * + * Includes Sizzle.js + * https://sizzlejs.com/ + * + * Copyright OpenJS Foundation and other contributors + * Released under the MIT license + * https://jquery.org/license + * + * Date: 2021-03-02T17:08Z + */ +( function( global, factory ) { + + "use strict"; + + if ( typeof module === "object" && typeof module.exports === "object" ) { + + // For CommonJS and CommonJS-like environments where a proper `window` + // is present, execute the factory and get jQuery. + // For environments that do not have a `window` with a `document` + // (such as Node.js), expose a factory as module.exports. + // This accentuates the need for the creation of a real `window`. + // e.g. var jQuery = require("jquery")(window); + // See ticket #14549 for more info. + module.exports = global.document ? + factory( global, true ) : + function( w ) { + if ( !w.document ) { + throw new Error( "jQuery requires a window with a document" ); + } + return factory( w ); + }; + } else { + factory( global ); + } + +// Pass this if window is not defined yet +} )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) { + +// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1 +// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode +// arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common +// enough that all such attempts are guarded in a try block. +"use strict"; + +var arr = []; + +var getProto = Object.getPrototypeOf; + +var slice = arr.slice; + +var flat = arr.flat ? function( array ) { + return arr.flat.call( array ); +} : function( array ) { + return arr.concat.apply( [], array ); +}; + + +var push = arr.push; + +var indexOf = arr.indexOf; + +var class2type = {}; + +var toString = class2type.toString; + +var hasOwn = class2type.hasOwnProperty; + +var fnToString = hasOwn.toString; + +var ObjectFunctionString = fnToString.call( Object ); + +var support = {}; + +var isFunction = function isFunction( obj ) { + + // Support: Chrome <=57, Firefox <=52 + // In some browsers, typeof returns "function" for HTML elements + // (i.e., `typeof document.createElement( "object" ) === "function"`). + // We don't want to classify *any* DOM node as a function. + // Support: QtWeb <=3.8.5, WebKit <=534.34, wkhtmltopdf tool <=0.12.5 + // Plus for old WebKit, typeof returns "function" for HTML collections + // (e.g., `typeof document.getElementsByTagName("div") === "function"`). (gh-4756) + return typeof obj === "function" && typeof obj.nodeType !== "number" && + typeof obj.item !== "function"; + }; + + +var isWindow = function isWindow( obj ) { + return obj != null && obj === obj.window; + }; + + +var document = window.document; + + + + var preservedScriptAttributes = { + type: true, + src: true, + nonce: true, + noModule: true + }; + + function DOMEval( code, node, doc ) { + doc = doc || document; + + var i, val, + script = doc.createElement( "script" ); + + script.text = code; + if ( node ) { + for ( i in preservedScriptAttributes ) { + + // Support: Firefox 64+, Edge 18+ + // Some browsers don't support the "nonce" property on scripts. + // On the other hand, just using `getAttribute` is not enough as + // the `nonce` attribute is reset to an empty string whenever it + // becomes browsing-context connected. + // See https://github.com/whatwg/html/issues/2369 + // See https://html.spec.whatwg.org/#nonce-attributes + // The `node.getAttribute` check was added for the sake of + // `jQuery.globalEval` so that it can fake a nonce-containing node + // via an object. + val = node[ i ] || node.getAttribute && node.getAttribute( i ); + if ( val ) { + script.setAttribute( i, val ); + } + } + } + doc.head.appendChild( script ).parentNode.removeChild( script ); + } + + +function toType( obj ) { + if ( obj == null ) { + return obj + ""; + } + + // Support: Android <=2.3 only (functionish RegExp) + return typeof obj === "object" || typeof obj === "function" ? + class2type[ toString.call( obj ) ] || "object" : + typeof obj; +} +/* global Symbol */ +// Defining this global in .eslintrc.json would create a danger of using the global +// unguarded in another place, it seems safer to define global only for this module + + + +var + version = "3.6.0", + + // Define a local copy of jQuery + jQuery = function( selector, context ) { + + // The jQuery object is actually just the init constructor 'enhanced' + // Need init if jQuery is called (just allow error to be thrown if not included) + return new jQuery.fn.init( selector, context ); + }; + +jQuery.fn = jQuery.prototype = { + + // The current version of jQuery being used + jquery: version, + + constructor: jQuery, + + // The default length of a jQuery object is 0 + length: 0, + + toArray: function() { + return slice.call( this ); + }, + + // Get the Nth element in the matched element set OR + // Get the whole matched element set as a clean array + get: function( num ) { + + // Return all the elements in a clean array + if ( num == null ) { + return slice.call( this ); + } + + // Return just the one element from the set + return num < 0 ? this[ num + this.length ] : this[ num ]; + }, + + // Take an array of elements and push it onto the stack + // (returning the new matched element set) + pushStack: function( elems ) { + + // Build a new jQuery matched element set + var ret = jQuery.merge( this.constructor(), elems ); + + // Add the old object onto the stack (as a reference) + ret.prevObject = this; + + // Return the newly-formed element set + return ret; + }, + + // Execute a callback for every element in the matched set. + each: function( callback ) { + return jQuery.each( this, callback ); + }, + + map: function( callback ) { + return this.pushStack( jQuery.map( this, function( elem, i ) { + return callback.call( elem, i, elem ); + } ) ); + }, + + slice: function() { + return this.pushStack( slice.apply( this, arguments ) ); + }, + + first: function() { + return this.eq( 0 ); + }, + + last: function() { + return this.eq( -1 ); + }, + + even: function() { + return this.pushStack( jQuery.grep( this, function( _elem, i ) { + return ( i + 1 ) % 2; + } ) ); + }, + + odd: function() { + return this.pushStack( jQuery.grep( this, function( _elem, i ) { + return i % 2; + } ) ); + }, + + eq: function( i ) { + var len = this.length, + j = +i + ( i < 0 ? len : 0 ); + return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] ); + }, + + end: function() { + return this.prevObject || this.constructor(); + }, + + // For internal use only. + // Behaves like an Array's method, not like a jQuery method. + push: push, + sort: arr.sort, + splice: arr.splice +}; + +jQuery.extend = jQuery.fn.extend = function() { + var options, name, src, copy, copyIsArray, clone, + target = arguments[ 0 ] || {}, + i = 1, + length = arguments.length, + deep = false; + + // Handle a deep copy situation + if ( typeof target === "boolean" ) { + deep = target; + + // Skip the boolean and the target + target = arguments[ i ] || {}; + i++; + } + + // Handle case when target is a string or something (possible in deep copy) + if ( typeof target !== "object" && !isFunction( target ) ) { + target = {}; + } + + // Extend jQuery itself if only one argument is passed + if ( i === length ) { + target = this; + i--; + } + + for ( ; i < length; i++ ) { + + // Only deal with non-null/undefined values + if ( ( options = arguments[ i ] ) != null ) { + + // Extend the base object + for ( name in options ) { + copy = options[ name ]; + + // Prevent Object.prototype pollution + // Prevent never-ending loop + if ( name === "__proto__" || target === copy ) { + continue; + } + + // Recurse if we're merging plain objects or arrays + if ( deep && copy && ( jQuery.isPlainObject( copy ) || + ( copyIsArray = Array.isArray( copy ) ) ) ) { + src = target[ name ]; + + // Ensure proper type for the source value + if ( copyIsArray && !Array.isArray( src ) ) { + clone = []; + } else if ( !copyIsArray && !jQuery.isPlainObject( src ) ) { + clone = {}; + } else { + clone = src; + } + copyIsArray = false; + + // Never move original objects, clone them + target[ name ] = jQuery.extend( deep, clone, copy ); + + // Don't bring in undefined values + } else if ( copy !== undefined ) { + target[ name ] = copy; + } + } + } + } + + // Return the modified object + return target; +}; + +jQuery.extend( { + + // Unique for each copy of jQuery on the page + expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), + + // Assume jQuery is ready without the ready module + isReady: true, + + error: function( msg ) { + throw new Error( msg ); + }, + + noop: function() {}, + + isPlainObject: function( obj ) { + var proto, Ctor; + + // Detect obvious negatives + // Use toString instead of jQuery.type to catch host objects + if ( !obj || toString.call( obj ) !== "[object Object]" ) { + return false; + } + + proto = getProto( obj ); + + // Objects with no prototype (e.g., `Object.create( null )`) are plain + if ( !proto ) { + return true; + } + + // Objects with prototype are plain iff they were constructed by a global Object function + Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor; + return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString; + }, + + isEmptyObject: function( obj ) { + var name; + + for ( name in obj ) { + return false; + } + return true; + }, + + // Evaluates a script in a provided context; falls back to the global one + // if not specified. + globalEval: function( code, options, doc ) { + DOMEval( code, { nonce: options && options.nonce }, doc ); + }, + + each: function( obj, callback ) { + var length, i = 0; + + if ( isArrayLike( obj ) ) { + length = obj.length; + for ( ; i < length; i++ ) { + if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { + break; + } + } + } else { + for ( i in obj ) { + if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { + break; + } + } + } + + return obj; + }, + + // results is for internal usage only + makeArray: function( arr, results ) { + var ret = results || []; + + if ( arr != null ) { + if ( isArrayLike( Object( arr ) ) ) { + jQuery.merge( ret, + typeof arr === "string" ? + [ arr ] : arr + ); + } else { + push.call( ret, arr ); + } + } + + return ret; + }, + + inArray: function( elem, arr, i ) { + return arr == null ? -1 : indexOf.call( arr, elem, i ); + }, + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + merge: function( first, second ) { + var len = +second.length, + j = 0, + i = first.length; + + for ( ; j < len; j++ ) { + first[ i++ ] = second[ j ]; + } + + first.length = i; + + return first; + }, + + grep: function( elems, callback, invert ) { + var callbackInverse, + matches = [], + i = 0, + length = elems.length, + callbackExpect = !invert; + + // Go through the array, only saving the items + // that pass the validator function + for ( ; i < length; i++ ) { + callbackInverse = !callback( elems[ i ], i ); + if ( callbackInverse !== callbackExpect ) { + matches.push( elems[ i ] ); + } + } + + return matches; + }, + + // arg is for internal usage only + map: function( elems, callback, arg ) { + var length, value, + i = 0, + ret = []; + + // Go through the array, translating each of the items to their new values + if ( isArrayLike( elems ) ) { + length = elems.length; + for ( ; i < length; i++ ) { + value = callback( elems[ i ], i, arg ); + + if ( value != null ) { + ret.push( value ); + } + } + + // Go through every key on the object, + } else { + for ( i in elems ) { + value = callback( elems[ i ], i, arg ); + + if ( value != null ) { + ret.push( value ); + } + } + } + + // Flatten any nested arrays + return flat( ret ); + }, + + // A global GUID counter for objects + guid: 1, + + // jQuery.support is not used in Core but other projects attach their + // properties to it so it needs to exist. + support: support +} ); + +if ( typeof Symbol === "function" ) { + jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ]; +} + +// Populate the class2type map +jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), + function( _i, name ) { + class2type[ "[object " + name + "]" ] = name.toLowerCase(); + } ); + +function isArrayLike( obj ) { + + // Support: real iOS 8.2 only (not reproducible in simulator) + // `in` check used to prevent JIT error (gh-2145) + // hasOwn isn't used here due to false negatives + // regarding Nodelist length in IE + var length = !!obj && "length" in obj && obj.length, + type = toType( obj ); + + if ( isFunction( obj ) || isWindow( obj ) ) { + return false; + } + + return type === "array" || length === 0 || + typeof length === "number" && length > 0 && ( length - 1 ) in obj; +} +var Sizzle = +/*! + * Sizzle CSS Selector Engine v2.3.6 + * https://sizzlejs.com/ + * + * Copyright JS Foundation and other contributors + * Released under the MIT license + * https://js.foundation/ + * + * Date: 2021-02-16 + */ +( function( window ) { +var i, + support, + Expr, + getText, + isXML, + tokenize, + compile, + select, + outermostContext, + sortInput, + hasDuplicate, + + // Local document vars + setDocument, + document, + docElem, + documentIsHTML, + rbuggyQSA, + rbuggyMatches, + matches, + contains, + + // Instance-specific data + expando = "sizzle" + 1 * new Date(), + preferredDoc = window.document, + dirruns = 0, + done = 0, + classCache = createCache(), + tokenCache = createCache(), + compilerCache = createCache(), + nonnativeSelectorCache = createCache(), + sortOrder = function( a, b ) { + if ( a === b ) { + hasDuplicate = true; + } + return 0; + }, + + // Instance methods + hasOwn = ( {} ).hasOwnProperty, + arr = [], + pop = arr.pop, + pushNative = arr.push, + push = arr.push, + slice = arr.slice, + + // Use a stripped-down indexOf as it's faster than native + // https://jsperf.com/thor-indexof-vs-for/5 + indexOf = function( list, elem ) { + var i = 0, + len = list.length; + for ( ; i < len; i++ ) { + if ( list[ i ] === elem ) { + return i; + } + } + return -1; + }, + + booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|" + + "ismap|loop|multiple|open|readonly|required|scoped", + + // Regular expressions + + // http://www.w3.org/TR/css3-selectors/#whitespace + whitespace = "[\\x20\\t\\r\\n\\f]", + + // https://www.w3.org/TR/css-syntax-3/#ident-token-diagram + identifier = "(?:\\\\[\\da-fA-F]{1,6}" + whitespace + + "?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+", + + // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors + attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace + + + // Operator (capture 2) + "*([*^$|!~]?=)" + whitespace + + + // "Attribute values must be CSS identifiers [capture 5] + // or strings [capture 3 or capture 4]" + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + + whitespace + "*\\]", + + pseudos = ":(" + identifier + ")(?:\\((" + + + // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments: + // 1. quoted (capture 3; capture 4 or capture 5) + "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" + + + // 2. simple (capture 6) + "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" + + + // 3. anything else (capture 2) + ".*" + + ")\\)|)", + + // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter + rwhitespace = new RegExp( whitespace + "+", "g" ), + rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + + whitespace + "+$", "g" ), + + rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), + rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + + "*" ), + rdescend = new RegExp( whitespace + "|>" ), + + rpseudo = new RegExp( pseudos ), + ridentifier = new RegExp( "^" + identifier + "$" ), + + matchExpr = { + "ID": new RegExp( "^#(" + identifier + ")" ), + "CLASS": new RegExp( "^\\.(" + identifier + ")" ), + "TAG": new RegExp( "^(" + identifier + "|[*])" ), + "ATTR": new RegExp( "^" + attributes ), + "PSEUDO": new RegExp( "^" + pseudos ), + "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + + whitespace + "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + + whitespace + "*(\\d+)|))" + whitespace + "*\\)|)", "i" ), + "bool": new RegExp( "^(?:" + booleans + ")$", "i" ), + + // For use in libraries implementing .is() + // We use this for POS matching in `select` + "needsContext": new RegExp( "^" + whitespace + + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + whitespace + + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" ) + }, + + rhtml = /HTML$/i, + rinputs = /^(?:input|select|textarea|button)$/i, + rheader = /^h\d$/i, + + rnative = /^[^{]+\{\s*\[native \w/, + + // Easily-parseable/retrievable ID or TAG or CLASS selectors + rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, + + rsibling = /[+~]/, + + // CSS escapes + // http://www.w3.org/TR/CSS21/syndata.html#escaped-characters + runescape = new RegExp( "\\\\[\\da-fA-F]{1,6}" + whitespace + "?|\\\\([^\\r\\n\\f])", "g" ), + funescape = function( escape, nonHex ) { + var high = "0x" + escape.slice( 1 ) - 0x10000; + + return nonHex ? + + // Strip the backslash prefix from a non-hex escape sequence + nonHex : + + // Replace a hexadecimal escape sequence with the encoded Unicode code point + // Support: IE <=11+ + // For values outside the Basic Multilingual Plane (BMP), manually construct a + // surrogate pair + high < 0 ? + String.fromCharCode( high + 0x10000 ) : + String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 ); + }, + + // CSS string/identifier serialization + // https://drafts.csswg.org/cssom/#common-serializing-idioms + rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, + fcssescape = function( ch, asCodePoint ) { + if ( asCodePoint ) { + + // U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER + if ( ch === "\0" ) { + return "\uFFFD"; + } + + // Control characters and (dependent upon position) numbers get escaped as code points + return ch.slice( 0, -1 ) + "\\" + + ch.charCodeAt( ch.length - 1 ).toString( 16 ) + " "; + } + + // Other potentially-special ASCII characters get backslash-escaped + return "\\" + ch; + }, + + // Used for iframes + // See setDocument() + // Removing the function wrapper causes a "Permission Denied" + // error in IE + unloadHandler = function() { + setDocument(); + }, + + inDisabledFieldset = addCombinator( + function( elem ) { + return elem.disabled === true && elem.nodeName.toLowerCase() === "fieldset"; + }, + { dir: "parentNode", next: "legend" } + ); + +// Optimize for push.apply( _, NodeList ) +try { + push.apply( + ( arr = slice.call( preferredDoc.childNodes ) ), + preferredDoc.childNodes + ); + + // Support: Android<4.0 + // Detect silently failing push.apply + // eslint-disable-next-line no-unused-expressions + arr[ preferredDoc.childNodes.length ].nodeType; +} catch ( e ) { + push = { apply: arr.length ? + + // Leverage slice if possible + function( target, els ) { + pushNative.apply( target, slice.call( els ) ); + } : + + // Support: IE<9 + // Otherwise append directly + function( target, els ) { + var j = target.length, + i = 0; + + // Can't trust NodeList.length + while ( ( target[ j++ ] = els[ i++ ] ) ) {} + target.length = j - 1; + } + }; +} + +function Sizzle( selector, context, results, seed ) { + var m, i, elem, nid, match, groups, newSelector, + newContext = context && context.ownerDocument, + + // nodeType defaults to 9, since context defaults to document + nodeType = context ? context.nodeType : 9; + + results = results || []; + + // Return early from calls with invalid selector or context + if ( typeof selector !== "string" || !selector || + nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) { + + return results; + } + + // Try to shortcut find operations (as opposed to filters) in HTML documents + if ( !seed ) { + setDocument( context ); + context = context || document; + + if ( documentIsHTML ) { + + // If the selector is sufficiently simple, try using a "get*By*" DOM method + // (excepting DocumentFragment context, where the methods don't exist) + if ( nodeType !== 11 && ( match = rquickExpr.exec( selector ) ) ) { + + // ID selector + if ( ( m = match[ 1 ] ) ) { + + // Document context + if ( nodeType === 9 ) { + if ( ( elem = context.getElementById( m ) ) ) { + + // Support: IE, Opera, Webkit + // TODO: identify versions + // getElementById can match elements by name instead of ID + if ( elem.id === m ) { + results.push( elem ); + return results; + } + } else { + return results; + } + + // Element context + } else { + + // Support: IE, Opera, Webkit + // TODO: identify versions + // getElementById can match elements by name instead of ID + if ( newContext && ( elem = newContext.getElementById( m ) ) && + contains( context, elem ) && + elem.id === m ) { + + results.push( elem ); + return results; + } + } + + // Type selector + } else if ( match[ 2 ] ) { + push.apply( results, context.getElementsByTagName( selector ) ); + return results; + + // Class selector + } else if ( ( m = match[ 3 ] ) && support.getElementsByClassName && + context.getElementsByClassName ) { + + push.apply( results, context.getElementsByClassName( m ) ); + return results; + } + } + + // Take advantage of querySelectorAll + if ( support.qsa && + !nonnativeSelectorCache[ selector + " " ] && + ( !rbuggyQSA || !rbuggyQSA.test( selector ) ) && + + // Support: IE 8 only + // Exclude object elements + ( nodeType !== 1 || context.nodeName.toLowerCase() !== "object" ) ) { + + newSelector = selector; + newContext = context; + + // qSA considers elements outside a scoping root when evaluating child or + // descendant combinators, which is not what we want. + // In such cases, we work around the behavior by prefixing every selector in the + // list with an ID selector referencing the scope context. + // The technique has to be used as well when a leading combinator is used + // as such selectors are not recognized by querySelectorAll. + // Thanks to Andrew Dupont for this technique. + if ( nodeType === 1 && + ( rdescend.test( selector ) || rcombinators.test( selector ) ) ) { + + // Expand context for sibling selectors + newContext = rsibling.test( selector ) && testContext( context.parentNode ) || + context; + + // We can use :scope instead of the ID hack if the browser + // supports it & if we're not changing the context. + if ( newContext !== context || !support.scope ) { + + // Capture the context ID, setting it first if necessary + if ( ( nid = context.getAttribute( "id" ) ) ) { + nid = nid.replace( rcssescape, fcssescape ); + } else { + context.setAttribute( "id", ( nid = expando ) ); + } + } + + // Prefix every selector in the list + groups = tokenize( selector ); + i = groups.length; + while ( i-- ) { + groups[ i ] = ( nid ? "#" + nid : ":scope" ) + " " + + toSelector( groups[ i ] ); + } + newSelector = groups.join( "," ); + } + + try { + push.apply( results, + newContext.querySelectorAll( newSelector ) + ); + return results; + } catch ( qsaError ) { + nonnativeSelectorCache( selector, true ); + } finally { + if ( nid === expando ) { + context.removeAttribute( "id" ); + } + } + } + } + } + + // All others + return select( selector.replace( rtrim, "$1" ), context, results, seed ); +} + +/** + * Create key-value caches of limited size + * @returns {function(string, object)} Returns the Object data after storing it on itself with + * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength) + * deleting the oldest entry + */ +function createCache() { + var keys = []; + + function cache( key, value ) { + + // Use (key + " ") to avoid collision with native prototype properties (see Issue #157) + if ( keys.push( key + " " ) > Expr.cacheLength ) { + + // Only keep the most recent entries + delete cache[ keys.shift() ]; + } + return ( cache[ key + " " ] = value ); + } + return cache; +} + +/** + * Mark a function for special use by Sizzle + * @param {Function} fn The function to mark + */ +function markFunction( fn ) { + fn[ expando ] = true; + return fn; +} + +/** + * Support testing using an element + * @param {Function} fn Passed the created element and returns a boolean result + */ +function assert( fn ) { + var el = document.createElement( "fieldset" ); + + try { + return !!fn( el ); + } catch ( e ) { + return false; + } finally { + + // Remove from its parent by default + if ( el.parentNode ) { + el.parentNode.removeChild( el ); + } + + // release memory in IE + el = null; + } +} + +/** + * Adds the same handler for all of the specified attrs + * @param {String} attrs Pipe-separated list of attributes + * @param {Function} handler The method that will be applied + */ +function addHandle( attrs, handler ) { + var arr = attrs.split( "|" ), + i = arr.length; + + while ( i-- ) { + Expr.attrHandle[ arr[ i ] ] = handler; + } +} + +/** + * Checks document order of two siblings + * @param {Element} a + * @param {Element} b + * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b + */ +function siblingCheck( a, b ) { + var cur = b && a, + diff = cur && a.nodeType === 1 && b.nodeType === 1 && + a.sourceIndex - b.sourceIndex; + + // Use IE sourceIndex if available on both nodes + if ( diff ) { + return diff; + } + + // Check if b follows a + if ( cur ) { + while ( ( cur = cur.nextSibling ) ) { + if ( cur === b ) { + return -1; + } + } + } + + return a ? 1 : -1; +} + +/** + * Returns a function to use in pseudos for input types + * @param {String} type + */ +function createInputPseudo( type ) { + return function( elem ) { + var name = elem.nodeName.toLowerCase(); + return name === "input" && elem.type === type; + }; +} + +/** + * Returns a function to use in pseudos for buttons + * @param {String} type + */ +function createButtonPseudo( type ) { + return function( elem ) { + var name = elem.nodeName.toLowerCase(); + return ( name === "input" || name === "button" ) && elem.type === type; + }; +} + +/** + * Returns a function to use in pseudos for :enabled/:disabled + * @param {Boolean} disabled true for :disabled; false for :enabled + */ +function createDisabledPseudo( disabled ) { + + // Known :disabled false positives: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable + return function( elem ) { + + // Only certain elements can match :enabled or :disabled + // https://html.spec.whatwg.org/multipage/scripting.html#selector-enabled + // https://html.spec.whatwg.org/multipage/scripting.html#selector-disabled + if ( "form" in elem ) { + + // Check for inherited disabledness on relevant non-disabled elements: + // * listed form-associated elements in a disabled fieldset + // https://html.spec.whatwg.org/multipage/forms.html#category-listed + // https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled + // * option elements in a disabled optgroup + // https://html.spec.whatwg.org/multipage/forms.html#concept-option-disabled + // All such elements have a "form" property. + if ( elem.parentNode && elem.disabled === false ) { + + // Option elements defer to a parent optgroup if present + if ( "label" in elem ) { + if ( "label" in elem.parentNode ) { + return elem.parentNode.disabled === disabled; + } else { + return elem.disabled === disabled; + } + } + + // Support: IE 6 - 11 + // Use the isDisabled shortcut property to check for disabled fieldset ancestors + return elem.isDisabled === disabled || + + // Where there is no isDisabled, check manually + /* jshint -W018 */ + elem.isDisabled !== !disabled && + inDisabledFieldset( elem ) === disabled; + } + + return elem.disabled === disabled; + + // Try to winnow out elements that can't be disabled before trusting the disabled property. + // Some victims get caught in our net (label, legend, menu, track), but it shouldn't + // even exist on them, let alone have a boolean value. + } else if ( "label" in elem ) { + return elem.disabled === disabled; + } + + // Remaining elements are neither :enabled nor :disabled + return false; + }; +} + +/** + * Returns a function to use in pseudos for positionals + * @param {Function} fn + */ +function createPositionalPseudo( fn ) { + return markFunction( function( argument ) { + argument = +argument; + return markFunction( function( seed, matches ) { + var j, + matchIndexes = fn( [], seed.length, argument ), + i = matchIndexes.length; + + // Match elements found at the specified indexes + while ( i-- ) { + if ( seed[ ( j = matchIndexes[ i ] ) ] ) { + seed[ j ] = !( matches[ j ] = seed[ j ] ); + } + } + } ); + } ); +} + +/** + * Checks a node for validity as a Sizzle context + * @param {Element|Object=} context + * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value + */ +function testContext( context ) { + return context && typeof context.getElementsByTagName !== "undefined" && context; +} + +// Expose support vars for convenience +support = Sizzle.support = {}; + +/** + * Detects XML nodes + * @param {Element|Object} elem An element or a document + * @returns {Boolean} True iff elem is a non-HTML XML node + */ +isXML = Sizzle.isXML = function( elem ) { + var namespace = elem && elem.namespaceURI, + docElem = elem && ( elem.ownerDocument || elem ).documentElement; + + // Support: IE <=8 + // Assume HTML when documentElement doesn't yet exist, such as inside loading iframes + // https://bugs.jquery.com/ticket/4833 + return !rhtml.test( namespace || docElem && docElem.nodeName || "HTML" ); +}; + +/** + * Sets document-related variables once based on the current document + * @param {Element|Object} [doc] An element or document object to use to set the document + * @returns {Object} Returns the current document + */ +setDocument = Sizzle.setDocument = function( node ) { + var hasCompare, subWindow, + doc = node ? node.ownerDocument || node : preferredDoc; + + // Return early if doc is invalid or already selected + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( doc == document || doc.nodeType !== 9 || !doc.documentElement ) { + return document; + } + + // Update global variables + document = doc; + docElem = document.documentElement; + documentIsHTML = !isXML( document ); + + // Support: IE 9 - 11+, Edge 12 - 18+ + // Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936) + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( preferredDoc != document && + ( subWindow = document.defaultView ) && subWindow.top !== subWindow ) { + + // Support: IE 11, Edge + if ( subWindow.addEventListener ) { + subWindow.addEventListener( "unload", unloadHandler, false ); + + // Support: IE 9 - 10 only + } else if ( subWindow.attachEvent ) { + subWindow.attachEvent( "onunload", unloadHandler ); + } + } + + // Support: IE 8 - 11+, Edge 12 - 18+, Chrome <=16 - 25 only, Firefox <=3.6 - 31 only, + // Safari 4 - 5 only, Opera <=11.6 - 12.x only + // IE/Edge & older browsers don't support the :scope pseudo-class. + // Support: Safari 6.0 only + // Safari 6.0 supports :scope but it's an alias of :root there. + support.scope = assert( function( el ) { + docElem.appendChild( el ).appendChild( document.createElement( "div" ) ); + return typeof el.querySelectorAll !== "undefined" && + !el.querySelectorAll( ":scope fieldset div" ).length; + } ); + + /* Attributes + ---------------------------------------------------------------------- */ + + // Support: IE<8 + // Verify that getAttribute really returns attributes and not properties + // (excepting IE8 booleans) + support.attributes = assert( function( el ) { + el.className = "i"; + return !el.getAttribute( "className" ); + } ); + + /* getElement(s)By* + ---------------------------------------------------------------------- */ + + // Check if getElementsByTagName("*") returns only elements + support.getElementsByTagName = assert( function( el ) { + el.appendChild( document.createComment( "" ) ); + return !el.getElementsByTagName( "*" ).length; + } ); + + // Support: IE<9 + support.getElementsByClassName = rnative.test( document.getElementsByClassName ); + + // Support: IE<10 + // Check if getElementById returns elements by name + // The broken getElementById methods don't pick up programmatically-set names, + // so use a roundabout getElementsByName test + support.getById = assert( function( el ) { + docElem.appendChild( el ).id = expando; + return !document.getElementsByName || !document.getElementsByName( expando ).length; + } ); + + // ID filter and find + if ( support.getById ) { + Expr.filter[ "ID" ] = function( id ) { + var attrId = id.replace( runescape, funescape ); + return function( elem ) { + return elem.getAttribute( "id" ) === attrId; + }; + }; + Expr.find[ "ID" ] = function( id, context ) { + if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { + var elem = context.getElementById( id ); + return elem ? [ elem ] : []; + } + }; + } else { + Expr.filter[ "ID" ] = function( id ) { + var attrId = id.replace( runescape, funescape ); + return function( elem ) { + var node = typeof elem.getAttributeNode !== "undefined" && + elem.getAttributeNode( "id" ); + return node && node.value === attrId; + }; + }; + + // Support: IE 6 - 7 only + // getElementById is not reliable as a find shortcut + Expr.find[ "ID" ] = function( id, context ) { + if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { + var node, i, elems, + elem = context.getElementById( id ); + + if ( elem ) { + + // Verify the id attribute + node = elem.getAttributeNode( "id" ); + if ( node && node.value === id ) { + return [ elem ]; + } + + // Fall back on getElementsByName + elems = context.getElementsByName( id ); + i = 0; + while ( ( elem = elems[ i++ ] ) ) { + node = elem.getAttributeNode( "id" ); + if ( node && node.value === id ) { + return [ elem ]; + } + } + } + + return []; + } + }; + } + + // Tag + Expr.find[ "TAG" ] = support.getElementsByTagName ? + function( tag, context ) { + if ( typeof context.getElementsByTagName !== "undefined" ) { + return context.getElementsByTagName( tag ); + + // DocumentFragment nodes don't have gEBTN + } else if ( support.qsa ) { + return context.querySelectorAll( tag ); + } + } : + + function( tag, context ) { + var elem, + tmp = [], + i = 0, + + // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too + results = context.getElementsByTagName( tag ); + + // Filter out possible comments + if ( tag === "*" ) { + while ( ( elem = results[ i++ ] ) ) { + if ( elem.nodeType === 1 ) { + tmp.push( elem ); + } + } + + return tmp; + } + return results; + }; + + // Class + Expr.find[ "CLASS" ] = support.getElementsByClassName && function( className, context ) { + if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) { + return context.getElementsByClassName( className ); + } + }; + + /* QSA/matchesSelector + ---------------------------------------------------------------------- */ + + // QSA and matchesSelector support + + // matchesSelector(:active) reports false when true (IE9/Opera 11.5) + rbuggyMatches = []; + + // qSa(:focus) reports false when true (Chrome 21) + // We allow this because of a bug in IE8/9 that throws an error + // whenever `document.activeElement` is accessed on an iframe + // So, we allow :focus to pass through QSA all the time to avoid the IE error + // See https://bugs.jquery.com/ticket/13378 + rbuggyQSA = []; + + if ( ( support.qsa = rnative.test( document.querySelectorAll ) ) ) { + + // Build QSA regex + // Regex strategy adopted from Diego Perini + assert( function( el ) { + + var input; + + // Select is set to empty string on purpose + // This is to test IE's treatment of not explicitly + // setting a boolean content attribute, + // since its presence should be enough + // https://bugs.jquery.com/ticket/12359 + docElem.appendChild( el ).innerHTML = "" + + ""; + + // Support: IE8, Opera 11-12.16 + // Nothing should be selected when empty strings follow ^= or $= or *= + // The test attribute must be unknown in Opera but "safe" for WinRT + // https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section + if ( el.querySelectorAll( "[msallowcapture^='']" ).length ) { + rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" ); + } + + // Support: IE8 + // Boolean attributes and "value" are not treated correctly + if ( !el.querySelectorAll( "[selected]" ).length ) { + rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" ); + } + + // Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+ + if ( !el.querySelectorAll( "[id~=" + expando + "-]" ).length ) { + rbuggyQSA.push( "~=" ); + } + + // Support: IE 11+, Edge 15 - 18+ + // IE 11/Edge don't find elements on a `[name='']` query in some cases. + // Adding a temporary attribute to the document before the selection works + // around the issue. + // Interestingly, IE 10 & older don't seem to have the issue. + input = document.createElement( "input" ); + input.setAttribute( "name", "" ); + el.appendChild( input ); + if ( !el.querySelectorAll( "[name='']" ).length ) { + rbuggyQSA.push( "\\[" + whitespace + "*name" + whitespace + "*=" + + whitespace + "*(?:''|\"\")" ); + } + + // Webkit/Opera - :checked should return selected option elements + // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked + // IE8 throws error here and will not see later tests + if ( !el.querySelectorAll( ":checked" ).length ) { + rbuggyQSA.push( ":checked" ); + } + + // Support: Safari 8+, iOS 8+ + // https://bugs.webkit.org/show_bug.cgi?id=136851 + // In-page `selector#id sibling-combinator selector` fails + if ( !el.querySelectorAll( "a#" + expando + "+*" ).length ) { + rbuggyQSA.push( ".#.+[+~]" ); + } + + // Support: Firefox <=3.6 - 5 only + // Old Firefox doesn't throw on a badly-escaped identifier. + el.querySelectorAll( "\\\f" ); + rbuggyQSA.push( "[\\r\\n\\f]" ); + } ); + + assert( function( el ) { + el.innerHTML = "" + + ""; + + // Support: Windows 8 Native Apps + // The type and name attributes are restricted during .innerHTML assignment + var input = document.createElement( "input" ); + input.setAttribute( "type", "hidden" ); + el.appendChild( input ).setAttribute( "name", "D" ); + + // Support: IE8 + // Enforce case-sensitivity of name attribute + if ( el.querySelectorAll( "[name=d]" ).length ) { + rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" ); + } + + // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled) + // IE8 throws error here and will not see later tests + if ( el.querySelectorAll( ":enabled" ).length !== 2 ) { + rbuggyQSA.push( ":enabled", ":disabled" ); + } + + // Support: IE9-11+ + // IE's :disabled selector does not pick up the children of disabled fieldsets + docElem.appendChild( el ).disabled = true; + if ( el.querySelectorAll( ":disabled" ).length !== 2 ) { + rbuggyQSA.push( ":enabled", ":disabled" ); + } + + // Support: Opera 10 - 11 only + // Opera 10-11 does not throw on post-comma invalid pseudos + el.querySelectorAll( "*,:x" ); + rbuggyQSA.push( ",.*:" ); + } ); + } + + if ( ( support.matchesSelector = rnative.test( ( matches = docElem.matches || + docElem.webkitMatchesSelector || + docElem.mozMatchesSelector || + docElem.oMatchesSelector || + docElem.msMatchesSelector ) ) ) ) { + + assert( function( el ) { + + // Check to see if it's possible to do matchesSelector + // on a disconnected node (IE 9) + support.disconnectedMatch = matches.call( el, "*" ); + + // This should fail with an exception + // Gecko does not error, returns false instead + matches.call( el, "[s!='']:x" ); + rbuggyMatches.push( "!=", pseudos ); + } ); + } + + rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join( "|" ) ); + rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join( "|" ) ); + + /* Contains + ---------------------------------------------------------------------- */ + hasCompare = rnative.test( docElem.compareDocumentPosition ); + + // Element contains another + // Purposefully self-exclusive + // As in, an element does not contain itself + contains = hasCompare || rnative.test( docElem.contains ) ? + function( a, b ) { + var adown = a.nodeType === 9 ? a.documentElement : a, + bup = b && b.parentNode; + return a === bup || !!( bup && bup.nodeType === 1 && ( + adown.contains ? + adown.contains( bup ) : + a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16 + ) ); + } : + function( a, b ) { + if ( b ) { + while ( ( b = b.parentNode ) ) { + if ( b === a ) { + return true; + } + } + } + return false; + }; + + /* Sorting + ---------------------------------------------------------------------- */ + + // Document order sorting + sortOrder = hasCompare ? + function( a, b ) { + + // Flag for duplicate removal + if ( a === b ) { + hasDuplicate = true; + return 0; + } + + // Sort on method existence if only one input has compareDocumentPosition + var compare = !a.compareDocumentPosition - !b.compareDocumentPosition; + if ( compare ) { + return compare; + } + + // Calculate position if both inputs belong to the same document + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + compare = ( a.ownerDocument || a ) == ( b.ownerDocument || b ) ? + a.compareDocumentPosition( b ) : + + // Otherwise we know they are disconnected + 1; + + // Disconnected nodes + if ( compare & 1 || + ( !support.sortDetached && b.compareDocumentPosition( a ) === compare ) ) { + + // Choose the first element that is related to our preferred document + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( a == document || a.ownerDocument == preferredDoc && + contains( preferredDoc, a ) ) { + return -1; + } + + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( b == document || b.ownerDocument == preferredDoc && + contains( preferredDoc, b ) ) { + return 1; + } + + // Maintain original order + return sortInput ? + ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : + 0; + } + + return compare & 4 ? -1 : 1; + } : + function( a, b ) { + + // Exit early if the nodes are identical + if ( a === b ) { + hasDuplicate = true; + return 0; + } + + var cur, + i = 0, + aup = a.parentNode, + bup = b.parentNode, + ap = [ a ], + bp = [ b ]; + + // Parentless nodes are either documents or disconnected + if ( !aup || !bup ) { + + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + /* eslint-disable eqeqeq */ + return a == document ? -1 : + b == document ? 1 : + /* eslint-enable eqeqeq */ + aup ? -1 : + bup ? 1 : + sortInput ? + ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : + 0; + + // If the nodes are siblings, we can do a quick check + } else if ( aup === bup ) { + return siblingCheck( a, b ); + } + + // Otherwise we need full lists of their ancestors for comparison + cur = a; + while ( ( cur = cur.parentNode ) ) { + ap.unshift( cur ); + } + cur = b; + while ( ( cur = cur.parentNode ) ) { + bp.unshift( cur ); + } + + // Walk down the tree looking for a discrepancy + while ( ap[ i ] === bp[ i ] ) { + i++; + } + + return i ? + + // Do a sibling check if the nodes have a common ancestor + siblingCheck( ap[ i ], bp[ i ] ) : + + // Otherwise nodes in our document sort first + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + /* eslint-disable eqeqeq */ + ap[ i ] == preferredDoc ? -1 : + bp[ i ] == preferredDoc ? 1 : + /* eslint-enable eqeqeq */ + 0; + }; + + return document; +}; + +Sizzle.matches = function( expr, elements ) { + return Sizzle( expr, null, null, elements ); +}; + +Sizzle.matchesSelector = function( elem, expr ) { + setDocument( elem ); + + if ( support.matchesSelector && documentIsHTML && + !nonnativeSelectorCache[ expr + " " ] && + ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) && + ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) { + + try { + var ret = matches.call( elem, expr ); + + // IE 9's matchesSelector returns false on disconnected nodes + if ( ret || support.disconnectedMatch || + + // As well, disconnected nodes are said to be in a document + // fragment in IE 9 + elem.document && elem.document.nodeType !== 11 ) { + return ret; + } + } catch ( e ) { + nonnativeSelectorCache( expr, true ); + } + } + + return Sizzle( expr, document, null, [ elem ] ).length > 0; +}; + +Sizzle.contains = function( context, elem ) { + + // Set document vars if needed + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( ( context.ownerDocument || context ) != document ) { + setDocument( context ); + } + return contains( context, elem ); +}; + +Sizzle.attr = function( elem, name ) { + + // Set document vars if needed + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( ( elem.ownerDocument || elem ) != document ) { + setDocument( elem ); + } + + var fn = Expr.attrHandle[ name.toLowerCase() ], + + // Don't get fooled by Object.prototype properties (jQuery #13807) + val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ? + fn( elem, name, !documentIsHTML ) : + undefined; + + return val !== undefined ? + val : + support.attributes || !documentIsHTML ? + elem.getAttribute( name ) : + ( val = elem.getAttributeNode( name ) ) && val.specified ? + val.value : + null; +}; + +Sizzle.escape = function( sel ) { + return ( sel + "" ).replace( rcssescape, fcssescape ); +}; + +Sizzle.error = function( msg ) { + throw new Error( "Syntax error, unrecognized expression: " + msg ); +}; + +/** + * Document sorting and removing duplicates + * @param {ArrayLike} results + */ +Sizzle.uniqueSort = function( results ) { + var elem, + duplicates = [], + j = 0, + i = 0; + + // Unless we *know* we can detect duplicates, assume their presence + hasDuplicate = !support.detectDuplicates; + sortInput = !support.sortStable && results.slice( 0 ); + results.sort( sortOrder ); + + if ( hasDuplicate ) { + while ( ( elem = results[ i++ ] ) ) { + if ( elem === results[ i ] ) { + j = duplicates.push( i ); + } + } + while ( j-- ) { + results.splice( duplicates[ j ], 1 ); + } + } + + // Clear input after sorting to release objects + // See https://github.com/jquery/sizzle/pull/225 + sortInput = null; + + return results; +}; + +/** + * Utility function for retrieving the text value of an array of DOM nodes + * @param {Array|Element} elem + */ +getText = Sizzle.getText = function( elem ) { + var node, + ret = "", + i = 0, + nodeType = elem.nodeType; + + if ( !nodeType ) { + + // If no nodeType, this is expected to be an array + while ( ( node = elem[ i++ ] ) ) { + + // Do not traverse comment nodes + ret += getText( node ); + } + } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) { + + // Use textContent for elements + // innerText usage removed for consistency of new lines (jQuery #11153) + if ( typeof elem.textContent === "string" ) { + return elem.textContent; + } else { + + // Traverse its children + for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { + ret += getText( elem ); + } + } + } else if ( nodeType === 3 || nodeType === 4 ) { + return elem.nodeValue; + } + + // Do not include comment or processing instruction nodes + + return ret; +}; + +Expr = Sizzle.selectors = { + + // Can be adjusted by the user + cacheLength: 50, + + createPseudo: markFunction, + + match: matchExpr, + + attrHandle: {}, + + find: {}, + + relative: { + ">": { dir: "parentNode", first: true }, + " ": { dir: "parentNode" }, + "+": { dir: "previousSibling", first: true }, + "~": { dir: "previousSibling" } + }, + + preFilter: { + "ATTR": function( match ) { + match[ 1 ] = match[ 1 ].replace( runescape, funescape ); + + // Move the given value to match[3] whether quoted or unquoted + match[ 3 ] = ( match[ 3 ] || match[ 4 ] || + match[ 5 ] || "" ).replace( runescape, funescape ); + + if ( match[ 2 ] === "~=" ) { + match[ 3 ] = " " + match[ 3 ] + " "; + } + + return match.slice( 0, 4 ); + }, + + "CHILD": function( match ) { + + /* matches from matchExpr["CHILD"] + 1 type (only|nth|...) + 2 what (child|of-type) + 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...) + 4 xn-component of xn+y argument ([+-]?\d*n|) + 5 sign of xn-component + 6 x of xn-component + 7 sign of y-component + 8 y of y-component + */ + match[ 1 ] = match[ 1 ].toLowerCase(); + + if ( match[ 1 ].slice( 0, 3 ) === "nth" ) { + + // nth-* requires argument + if ( !match[ 3 ] ) { + Sizzle.error( match[ 0 ] ); + } + + // numeric x and y parameters for Expr.filter.CHILD + // remember that false/true cast respectively to 0/1 + match[ 4 ] = +( match[ 4 ] ? + match[ 5 ] + ( match[ 6 ] || 1 ) : + 2 * ( match[ 3 ] === "even" || match[ 3 ] === "odd" ) ); + match[ 5 ] = +( ( match[ 7 ] + match[ 8 ] ) || match[ 3 ] === "odd" ); + + // other types prohibit arguments + } else if ( match[ 3 ] ) { + Sizzle.error( match[ 0 ] ); + } + + return match; + }, + + "PSEUDO": function( match ) { + var excess, + unquoted = !match[ 6 ] && match[ 2 ]; + + if ( matchExpr[ "CHILD" ].test( match[ 0 ] ) ) { + return null; + } + + // Accept quoted arguments as-is + if ( match[ 3 ] ) { + match[ 2 ] = match[ 4 ] || match[ 5 ] || ""; + + // Strip excess characters from unquoted arguments + } else if ( unquoted && rpseudo.test( unquoted ) && + + // Get excess from tokenize (recursively) + ( excess = tokenize( unquoted, true ) ) && + + // advance to the next closing parenthesis + ( excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length ) ) { + + // excess is a negative index + match[ 0 ] = match[ 0 ].slice( 0, excess ); + match[ 2 ] = unquoted.slice( 0, excess ); + } + + // Return only captures needed by the pseudo filter method (type and argument) + return match.slice( 0, 3 ); + } + }, + + filter: { + + "TAG": function( nodeNameSelector ) { + var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase(); + return nodeNameSelector === "*" ? + function() { + return true; + } : + function( elem ) { + return elem.nodeName && elem.nodeName.toLowerCase() === nodeName; + }; + }, + + "CLASS": function( className ) { + var pattern = classCache[ className + " " ]; + + return pattern || + ( pattern = new RegExp( "(^|" + whitespace + + ")" + className + "(" + whitespace + "|$)" ) ) && classCache( + className, function( elem ) { + return pattern.test( + typeof elem.className === "string" && elem.className || + typeof elem.getAttribute !== "undefined" && + elem.getAttribute( "class" ) || + "" + ); + } ); + }, + + "ATTR": function( name, operator, check ) { + return function( elem ) { + var result = Sizzle.attr( elem, name ); + + if ( result == null ) { + return operator === "!="; + } + if ( !operator ) { + return true; + } + + result += ""; + + /* eslint-disable max-len */ + + return operator === "=" ? result === check : + operator === "!=" ? result !== check : + operator === "^=" ? check && result.indexOf( check ) === 0 : + operator === "*=" ? check && result.indexOf( check ) > -1 : + operator === "$=" ? check && result.slice( -check.length ) === check : + operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 : + operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" : + false; + /* eslint-enable max-len */ + + }; + }, + + "CHILD": function( type, what, _argument, first, last ) { + var simple = type.slice( 0, 3 ) !== "nth", + forward = type.slice( -4 ) !== "last", + ofType = what === "of-type"; + + return first === 1 && last === 0 ? + + // Shortcut for :nth-*(n) + function( elem ) { + return !!elem.parentNode; + } : + + function( elem, _context, xml ) { + var cache, uniqueCache, outerCache, node, nodeIndex, start, + dir = simple !== forward ? "nextSibling" : "previousSibling", + parent = elem.parentNode, + name = ofType && elem.nodeName.toLowerCase(), + useCache = !xml && !ofType, + diff = false; + + if ( parent ) { + + // :(first|last|only)-(child|of-type) + if ( simple ) { + while ( dir ) { + node = elem; + while ( ( node = node[ dir ] ) ) { + if ( ofType ? + node.nodeName.toLowerCase() === name : + node.nodeType === 1 ) { + + return false; + } + } + + // Reverse direction for :only-* (if we haven't yet done so) + start = dir = type === "only" && !start && "nextSibling"; + } + return true; + } + + start = [ forward ? parent.firstChild : parent.lastChild ]; + + // non-xml :nth-child(...) stores cache data on `parent` + if ( forward && useCache ) { + + // Seek `elem` from a previously-cached index + + // ...in a gzip-friendly way + node = parent; + outerCache = node[ expando ] || ( node[ expando ] = {} ); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + ( outerCache[ node.uniqueID ] = {} ); + + cache = uniqueCache[ type ] || []; + nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; + diff = nodeIndex && cache[ 2 ]; + node = nodeIndex && parent.childNodes[ nodeIndex ]; + + while ( ( node = ++nodeIndex && node && node[ dir ] || + + // Fallback to seeking `elem` from the start + ( diff = nodeIndex = 0 ) || start.pop() ) ) { + + // When found, cache indexes on `parent` and break + if ( node.nodeType === 1 && ++diff && node === elem ) { + uniqueCache[ type ] = [ dirruns, nodeIndex, diff ]; + break; + } + } + + } else { + + // Use previously-cached element index if available + if ( useCache ) { + + // ...in a gzip-friendly way + node = elem; + outerCache = node[ expando ] || ( node[ expando ] = {} ); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + ( outerCache[ node.uniqueID ] = {} ); + + cache = uniqueCache[ type ] || []; + nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; + diff = nodeIndex; + } + + // xml :nth-child(...) + // or :nth-last-child(...) or :nth(-last)?-of-type(...) + if ( diff === false ) { + + // Use the same loop as above to seek `elem` from the start + while ( ( node = ++nodeIndex && node && node[ dir ] || + ( diff = nodeIndex = 0 ) || start.pop() ) ) { + + if ( ( ofType ? + node.nodeName.toLowerCase() === name : + node.nodeType === 1 ) && + ++diff ) { + + // Cache the index of each encountered element + if ( useCache ) { + outerCache = node[ expando ] || + ( node[ expando ] = {} ); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + ( outerCache[ node.uniqueID ] = {} ); + + uniqueCache[ type ] = [ dirruns, diff ]; + } + + if ( node === elem ) { + break; + } + } + } + } + } + + // Incorporate the offset, then check against cycle size + diff -= last; + return diff === first || ( diff % first === 0 && diff / first >= 0 ); + } + }; + }, + + "PSEUDO": function( pseudo, argument ) { + + // pseudo-class names are case-insensitive + // http://www.w3.org/TR/selectors/#pseudo-classes + // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters + // Remember that setFilters inherits from pseudos + var args, + fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] || + Sizzle.error( "unsupported pseudo: " + pseudo ); + + // The user may use createPseudo to indicate that + // arguments are needed to create the filter function + // just as Sizzle does + if ( fn[ expando ] ) { + return fn( argument ); + } + + // But maintain support for old signatures + if ( fn.length > 1 ) { + args = [ pseudo, pseudo, "", argument ]; + return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ? + markFunction( function( seed, matches ) { + var idx, + matched = fn( seed, argument ), + i = matched.length; + while ( i-- ) { + idx = indexOf( seed, matched[ i ] ); + seed[ idx ] = !( matches[ idx ] = matched[ i ] ); + } + } ) : + function( elem ) { + return fn( elem, 0, args ); + }; + } + + return fn; + } + }, + + pseudos: { + + // Potentially complex pseudos + "not": markFunction( function( selector ) { + + // Trim the selector passed to compile + // to avoid treating leading and trailing + // spaces as combinators + var input = [], + results = [], + matcher = compile( selector.replace( rtrim, "$1" ) ); + + return matcher[ expando ] ? + markFunction( function( seed, matches, _context, xml ) { + var elem, + unmatched = matcher( seed, null, xml, [] ), + i = seed.length; + + // Match elements unmatched by `matcher` + while ( i-- ) { + if ( ( elem = unmatched[ i ] ) ) { + seed[ i ] = !( matches[ i ] = elem ); + } + } + } ) : + function( elem, _context, xml ) { + input[ 0 ] = elem; + matcher( input, null, xml, results ); + + // Don't keep the element (issue #299) + input[ 0 ] = null; + return !results.pop(); + }; + } ), + + "has": markFunction( function( selector ) { + return function( elem ) { + return Sizzle( selector, elem ).length > 0; + }; + } ), + + "contains": markFunction( function( text ) { + text = text.replace( runescape, funescape ); + return function( elem ) { + return ( elem.textContent || getText( elem ) ).indexOf( text ) > -1; + }; + } ), + + // "Whether an element is represented by a :lang() selector + // is based solely on the element's language value + // being equal to the identifier C, + // or beginning with the identifier C immediately followed by "-". + // The matching of C against the element's language value is performed case-insensitively. + // The identifier C does not have to be a valid language name." + // http://www.w3.org/TR/selectors/#lang-pseudo + "lang": markFunction( function( lang ) { + + // lang value must be a valid identifier + if ( !ridentifier.test( lang || "" ) ) { + Sizzle.error( "unsupported lang: " + lang ); + } + lang = lang.replace( runescape, funescape ).toLowerCase(); + return function( elem ) { + var elemLang; + do { + if ( ( elemLang = documentIsHTML ? + elem.lang : + elem.getAttribute( "xml:lang" ) || elem.getAttribute( "lang" ) ) ) { + + elemLang = elemLang.toLowerCase(); + return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0; + } + } while ( ( elem = elem.parentNode ) && elem.nodeType === 1 ); + return false; + }; + } ), + + // Miscellaneous + "target": function( elem ) { + var hash = window.location && window.location.hash; + return hash && hash.slice( 1 ) === elem.id; + }, + + "root": function( elem ) { + return elem === docElem; + }, + + "focus": function( elem ) { + return elem === document.activeElement && + ( !document.hasFocus || document.hasFocus() ) && + !!( elem.type || elem.href || ~elem.tabIndex ); + }, + + // Boolean properties + "enabled": createDisabledPseudo( false ), + "disabled": createDisabledPseudo( true ), + + "checked": function( elem ) { + + // In CSS3, :checked should return both checked and selected elements + // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked + var nodeName = elem.nodeName.toLowerCase(); + return ( nodeName === "input" && !!elem.checked ) || + ( nodeName === "option" && !!elem.selected ); + }, + + "selected": function( elem ) { + + // Accessing this property makes selected-by-default + // options in Safari work properly + if ( elem.parentNode ) { + // eslint-disable-next-line no-unused-expressions + elem.parentNode.selectedIndex; + } + + return elem.selected === true; + }, + + // Contents + "empty": function( elem ) { + + // http://www.w3.org/TR/selectors/#empty-pseudo + // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5), + // but not by others (comment: 8; processing instruction: 7; etc.) + // nodeType < 6 works because attributes (2) do not appear as children + for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { + if ( elem.nodeType < 6 ) { + return false; + } + } + return true; + }, + + "parent": function( elem ) { + return !Expr.pseudos[ "empty" ]( elem ); + }, + + // Element/input types + "header": function( elem ) { + return rheader.test( elem.nodeName ); + }, + + "input": function( elem ) { + return rinputs.test( elem.nodeName ); + }, + + "button": function( elem ) { + var name = elem.nodeName.toLowerCase(); + return name === "input" && elem.type === "button" || name === "button"; + }, + + "text": function( elem ) { + var attr; + return elem.nodeName.toLowerCase() === "input" && + elem.type === "text" && + + // Support: IE<8 + // New HTML5 attribute values (e.g., "search") appear with elem.type === "text" + ( ( attr = elem.getAttribute( "type" ) ) == null || + attr.toLowerCase() === "text" ); + }, + + // Position-in-collection + "first": createPositionalPseudo( function() { + return [ 0 ]; + } ), + + "last": createPositionalPseudo( function( _matchIndexes, length ) { + return [ length - 1 ]; + } ), + + "eq": createPositionalPseudo( function( _matchIndexes, length, argument ) { + return [ argument < 0 ? argument + length : argument ]; + } ), + + "even": createPositionalPseudo( function( matchIndexes, length ) { + var i = 0; + for ( ; i < length; i += 2 ) { + matchIndexes.push( i ); + } + return matchIndexes; + } ), + + "odd": createPositionalPseudo( function( matchIndexes, length ) { + var i = 1; + for ( ; i < length; i += 2 ) { + matchIndexes.push( i ); + } + return matchIndexes; + } ), + + "lt": createPositionalPseudo( function( matchIndexes, length, argument ) { + var i = argument < 0 ? + argument + length : + argument > length ? + length : + argument; + for ( ; --i >= 0; ) { + matchIndexes.push( i ); + } + return matchIndexes; + } ), + + "gt": createPositionalPseudo( function( matchIndexes, length, argument ) { + var i = argument < 0 ? argument + length : argument; + for ( ; ++i < length; ) { + matchIndexes.push( i ); + } + return matchIndexes; + } ) + } +}; + +Expr.pseudos[ "nth" ] = Expr.pseudos[ "eq" ]; + +// Add button/input type pseudos +for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) { + Expr.pseudos[ i ] = createInputPseudo( i ); +} +for ( i in { submit: true, reset: true } ) { + Expr.pseudos[ i ] = createButtonPseudo( i ); +} + +// Easy API for creating new setFilters +function setFilters() {} +setFilters.prototype = Expr.filters = Expr.pseudos; +Expr.setFilters = new setFilters(); + +tokenize = Sizzle.tokenize = function( selector, parseOnly ) { + var matched, match, tokens, type, + soFar, groups, preFilters, + cached = tokenCache[ selector + " " ]; + + if ( cached ) { + return parseOnly ? 0 : cached.slice( 0 ); + } + + soFar = selector; + groups = []; + preFilters = Expr.preFilter; + + while ( soFar ) { + + // Comma and first run + if ( !matched || ( match = rcomma.exec( soFar ) ) ) { + if ( match ) { + + // Don't consume trailing commas as valid + soFar = soFar.slice( match[ 0 ].length ) || soFar; + } + groups.push( ( tokens = [] ) ); + } + + matched = false; + + // Combinators + if ( ( match = rcombinators.exec( soFar ) ) ) { + matched = match.shift(); + tokens.push( { + value: matched, + + // Cast descendant combinators to space + type: match[ 0 ].replace( rtrim, " " ) + } ); + soFar = soFar.slice( matched.length ); + } + + // Filters + for ( type in Expr.filter ) { + if ( ( match = matchExpr[ type ].exec( soFar ) ) && ( !preFilters[ type ] || + ( match = preFilters[ type ]( match ) ) ) ) { + matched = match.shift(); + tokens.push( { + value: matched, + type: type, + matches: match + } ); + soFar = soFar.slice( matched.length ); + } + } + + if ( !matched ) { + break; + } + } + + // Return the length of the invalid excess + // if we're just parsing + // Otherwise, throw an error or return tokens + return parseOnly ? + soFar.length : + soFar ? + Sizzle.error( selector ) : + + // Cache the tokens + tokenCache( selector, groups ).slice( 0 ); +}; + +function toSelector( tokens ) { + var i = 0, + len = tokens.length, + selector = ""; + for ( ; i < len; i++ ) { + selector += tokens[ i ].value; + } + return selector; +} + +function addCombinator( matcher, combinator, base ) { + var dir = combinator.dir, + skip = combinator.next, + key = skip || dir, + checkNonElements = base && key === "parentNode", + doneName = done++; + + return combinator.first ? + + // Check against closest ancestor/preceding element + function( elem, context, xml ) { + while ( ( elem = elem[ dir ] ) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + return matcher( elem, context, xml ); + } + } + return false; + } : + + // Check against all ancestor/preceding elements + function( elem, context, xml ) { + var oldCache, uniqueCache, outerCache, + newCache = [ dirruns, doneName ]; + + // We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching + if ( xml ) { + while ( ( elem = elem[ dir ] ) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + if ( matcher( elem, context, xml ) ) { + return true; + } + } + } + } else { + while ( ( elem = elem[ dir ] ) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + outerCache = elem[ expando ] || ( elem[ expando ] = {} ); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ elem.uniqueID ] || + ( outerCache[ elem.uniqueID ] = {} ); + + if ( skip && skip === elem.nodeName.toLowerCase() ) { + elem = elem[ dir ] || elem; + } else if ( ( oldCache = uniqueCache[ key ] ) && + oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) { + + // Assign to newCache so results back-propagate to previous elements + return ( newCache[ 2 ] = oldCache[ 2 ] ); + } else { + + // Reuse newcache so results back-propagate to previous elements + uniqueCache[ key ] = newCache; + + // A match means we're done; a fail means we have to keep checking + if ( ( newCache[ 2 ] = matcher( elem, context, xml ) ) ) { + return true; + } + } + } + } + } + return false; + }; +} + +function elementMatcher( matchers ) { + return matchers.length > 1 ? + function( elem, context, xml ) { + var i = matchers.length; + while ( i-- ) { + if ( !matchers[ i ]( elem, context, xml ) ) { + return false; + } + } + return true; + } : + matchers[ 0 ]; +} + +function multipleContexts( selector, contexts, results ) { + var i = 0, + len = contexts.length; + for ( ; i < len; i++ ) { + Sizzle( selector, contexts[ i ], results ); + } + return results; +} + +function condense( unmatched, map, filter, context, xml ) { + var elem, + newUnmatched = [], + i = 0, + len = unmatched.length, + mapped = map != null; + + for ( ; i < len; i++ ) { + if ( ( elem = unmatched[ i ] ) ) { + if ( !filter || filter( elem, context, xml ) ) { + newUnmatched.push( elem ); + if ( mapped ) { + map.push( i ); + } + } + } + } + + return newUnmatched; +} + +function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) { + if ( postFilter && !postFilter[ expando ] ) { + postFilter = setMatcher( postFilter ); + } + if ( postFinder && !postFinder[ expando ] ) { + postFinder = setMatcher( postFinder, postSelector ); + } + return markFunction( function( seed, results, context, xml ) { + var temp, i, elem, + preMap = [], + postMap = [], + preexisting = results.length, + + // Get initial elements from seed or context + elems = seed || multipleContexts( + selector || "*", + context.nodeType ? [ context ] : context, + [] + ), + + // Prefilter to get matcher input, preserving a map for seed-results synchronization + matcherIn = preFilter && ( seed || !selector ) ? + condense( elems, preMap, preFilter, context, xml ) : + elems, + + matcherOut = matcher ? + + // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results, + postFinder || ( seed ? preFilter : preexisting || postFilter ) ? + + // ...intermediate processing is necessary + [] : + + // ...otherwise use results directly + results : + matcherIn; + + // Find primary matches + if ( matcher ) { + matcher( matcherIn, matcherOut, context, xml ); + } + + // Apply postFilter + if ( postFilter ) { + temp = condense( matcherOut, postMap ); + postFilter( temp, [], context, xml ); + + // Un-match failing elements by moving them back to matcherIn + i = temp.length; + while ( i-- ) { + if ( ( elem = temp[ i ] ) ) { + matcherOut[ postMap[ i ] ] = !( matcherIn[ postMap[ i ] ] = elem ); + } + } + } + + if ( seed ) { + if ( postFinder || preFilter ) { + if ( postFinder ) { + + // Get the final matcherOut by condensing this intermediate into postFinder contexts + temp = []; + i = matcherOut.length; + while ( i-- ) { + if ( ( elem = matcherOut[ i ] ) ) { + + // Restore matcherIn since elem is not yet a final match + temp.push( ( matcherIn[ i ] = elem ) ); + } + } + postFinder( null, ( matcherOut = [] ), temp, xml ); + } + + // Move matched elements from seed to results to keep them synchronized + i = matcherOut.length; + while ( i-- ) { + if ( ( elem = matcherOut[ i ] ) && + ( temp = postFinder ? indexOf( seed, elem ) : preMap[ i ] ) > -1 ) { + + seed[ temp ] = !( results[ temp ] = elem ); + } + } + } + + // Add elements to results, through postFinder if defined + } else { + matcherOut = condense( + matcherOut === results ? + matcherOut.splice( preexisting, matcherOut.length ) : + matcherOut + ); + if ( postFinder ) { + postFinder( null, results, matcherOut, xml ); + } else { + push.apply( results, matcherOut ); + } + } + } ); +} + +function matcherFromTokens( tokens ) { + var checkContext, matcher, j, + len = tokens.length, + leadingRelative = Expr.relative[ tokens[ 0 ].type ], + implicitRelative = leadingRelative || Expr.relative[ " " ], + i = leadingRelative ? 1 : 0, + + // The foundational matcher ensures that elements are reachable from top-level context(s) + matchContext = addCombinator( function( elem ) { + return elem === checkContext; + }, implicitRelative, true ), + matchAnyContext = addCombinator( function( elem ) { + return indexOf( checkContext, elem ) > -1; + }, implicitRelative, true ), + matchers = [ function( elem, context, xml ) { + var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || ( + ( checkContext = context ).nodeType ? + matchContext( elem, context, xml ) : + matchAnyContext( elem, context, xml ) ); + + // Avoid hanging onto element (issue #299) + checkContext = null; + return ret; + } ]; + + for ( ; i < len; i++ ) { + if ( ( matcher = Expr.relative[ tokens[ i ].type ] ) ) { + matchers = [ addCombinator( elementMatcher( matchers ), matcher ) ]; + } else { + matcher = Expr.filter[ tokens[ i ].type ].apply( null, tokens[ i ].matches ); + + // Return special upon seeing a positional matcher + if ( matcher[ expando ] ) { + + // Find the next relative operator (if any) for proper handling + j = ++i; + for ( ; j < len; j++ ) { + if ( Expr.relative[ tokens[ j ].type ] ) { + break; + } + } + return setMatcher( + i > 1 && elementMatcher( matchers ), + i > 1 && toSelector( + + // If the preceding token was a descendant combinator, insert an implicit any-element `*` + tokens + .slice( 0, i - 1 ) + .concat( { value: tokens[ i - 2 ].type === " " ? "*" : "" } ) + ).replace( rtrim, "$1" ), + matcher, + i < j && matcherFromTokens( tokens.slice( i, j ) ), + j < len && matcherFromTokens( ( tokens = tokens.slice( j ) ) ), + j < len && toSelector( tokens ) + ); + } + matchers.push( matcher ); + } + } + + return elementMatcher( matchers ); +} + +function matcherFromGroupMatchers( elementMatchers, setMatchers ) { + var bySet = setMatchers.length > 0, + byElement = elementMatchers.length > 0, + superMatcher = function( seed, context, xml, results, outermost ) { + var elem, j, matcher, + matchedCount = 0, + i = "0", + unmatched = seed && [], + setMatched = [], + contextBackup = outermostContext, + + // We must always have either seed elements or outermost context + elems = seed || byElement && Expr.find[ "TAG" ]( "*", outermost ), + + // Use integer dirruns iff this is the outermost matcher + dirrunsUnique = ( dirruns += contextBackup == null ? 1 : Math.random() || 0.1 ), + len = elems.length; + + if ( outermost ) { + + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + outermostContext = context == document || context || outermost; + } + + // Add elements passing elementMatchers directly to results + // Support: IE<9, Safari + // Tolerate NodeList properties (IE: "length"; Safari: ) matching elements by id + for ( ; i !== len && ( elem = elems[ i ] ) != null; i++ ) { + if ( byElement && elem ) { + j = 0; + + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( !context && elem.ownerDocument != document ) { + setDocument( elem ); + xml = !documentIsHTML; + } + while ( ( matcher = elementMatchers[ j++ ] ) ) { + if ( matcher( elem, context || document, xml ) ) { + results.push( elem ); + break; + } + } + if ( outermost ) { + dirruns = dirrunsUnique; + } + } + + // Track unmatched elements for set filters + if ( bySet ) { + + // They will have gone through all possible matchers + if ( ( elem = !matcher && elem ) ) { + matchedCount--; + } + + // Lengthen the array for every element, matched or not + if ( seed ) { + unmatched.push( elem ); + } + } + } + + // `i` is now the count of elements visited above, and adding it to `matchedCount` + // makes the latter nonnegative. + matchedCount += i; + + // Apply set filters to unmatched elements + // NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount` + // equals `i`), unless we didn't visit _any_ elements in the above loop because we have + // no element matchers and no seed. + // Incrementing an initially-string "0" `i` allows `i` to remain a string only in that + // case, which will result in a "00" `matchedCount` that differs from `i` but is also + // numerically zero. + if ( bySet && i !== matchedCount ) { + j = 0; + while ( ( matcher = setMatchers[ j++ ] ) ) { + matcher( unmatched, setMatched, context, xml ); + } + + if ( seed ) { + + // Reintegrate element matches to eliminate the need for sorting + if ( matchedCount > 0 ) { + while ( i-- ) { + if ( !( unmatched[ i ] || setMatched[ i ] ) ) { + setMatched[ i ] = pop.call( results ); + } + } + } + + // Discard index placeholder values to get only actual matches + setMatched = condense( setMatched ); + } + + // Add matches to results + push.apply( results, setMatched ); + + // Seedless set matches succeeding multiple successful matchers stipulate sorting + if ( outermost && !seed && setMatched.length > 0 && + ( matchedCount + setMatchers.length ) > 1 ) { + + Sizzle.uniqueSort( results ); + } + } + + // Override manipulation of globals by nested matchers + if ( outermost ) { + dirruns = dirrunsUnique; + outermostContext = contextBackup; + } + + return unmatched; + }; + + return bySet ? + markFunction( superMatcher ) : + superMatcher; +} + +compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) { + var i, + setMatchers = [], + elementMatchers = [], + cached = compilerCache[ selector + " " ]; + + if ( !cached ) { + + // Generate a function of recursive functions that can be used to check each element + if ( !match ) { + match = tokenize( selector ); + } + i = match.length; + while ( i-- ) { + cached = matcherFromTokens( match[ i ] ); + if ( cached[ expando ] ) { + setMatchers.push( cached ); + } else { + elementMatchers.push( cached ); + } + } + + // Cache the compiled function + cached = compilerCache( + selector, + matcherFromGroupMatchers( elementMatchers, setMatchers ) + ); + + // Save selector and tokenization + cached.selector = selector; + } + return cached; +}; + +/** + * A low-level selection function that works with Sizzle's compiled + * selector functions + * @param {String|Function} selector A selector or a pre-compiled + * selector function built with Sizzle.compile + * @param {Element} context + * @param {Array} [results] + * @param {Array} [seed] A set of elements to match against + */ +select = Sizzle.select = function( selector, context, results, seed ) { + var i, tokens, token, type, find, + compiled = typeof selector === "function" && selector, + match = !seed && tokenize( ( selector = compiled.selector || selector ) ); + + results = results || []; + + // Try to minimize operations if there is only one selector in the list and no seed + // (the latter of which guarantees us context) + if ( match.length === 1 ) { + + // Reduce context if the leading compound selector is an ID + tokens = match[ 0 ] = match[ 0 ].slice( 0 ); + if ( tokens.length > 2 && ( token = tokens[ 0 ] ).type === "ID" && + context.nodeType === 9 && documentIsHTML && Expr.relative[ tokens[ 1 ].type ] ) { + + context = ( Expr.find[ "ID" ]( token.matches[ 0 ] + .replace( runescape, funescape ), context ) || [] )[ 0 ]; + if ( !context ) { + return results; + + // Precompiled matchers will still verify ancestry, so step up a level + } else if ( compiled ) { + context = context.parentNode; + } + + selector = selector.slice( tokens.shift().value.length ); + } + + // Fetch a seed set for right-to-left matching + i = matchExpr[ "needsContext" ].test( selector ) ? 0 : tokens.length; + while ( i-- ) { + token = tokens[ i ]; + + // Abort if we hit a combinator + if ( Expr.relative[ ( type = token.type ) ] ) { + break; + } + if ( ( find = Expr.find[ type ] ) ) { + + // Search, expanding context for leading sibling combinators + if ( ( seed = find( + token.matches[ 0 ].replace( runescape, funescape ), + rsibling.test( tokens[ 0 ].type ) && testContext( context.parentNode ) || + context + ) ) ) { + + // If seed is empty or no tokens remain, we can return early + tokens.splice( i, 1 ); + selector = seed.length && toSelector( tokens ); + if ( !selector ) { + push.apply( results, seed ); + return results; + } + + break; + } + } + } + } + + // Compile and execute a filtering function if one is not provided + // Provide `match` to avoid retokenization if we modified the selector above + ( compiled || compile( selector, match ) )( + seed, + context, + !documentIsHTML, + results, + !context || rsibling.test( selector ) && testContext( context.parentNode ) || context + ); + return results; +}; + +// One-time assignments + +// Sort stability +support.sortStable = expando.split( "" ).sort( sortOrder ).join( "" ) === expando; + +// Support: Chrome 14-35+ +// Always assume duplicates if they aren't passed to the comparison function +support.detectDuplicates = !!hasDuplicate; + +// Initialize against the default document +setDocument(); + +// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27) +// Detached nodes confoundingly follow *each other* +support.sortDetached = assert( function( el ) { + + // Should return 1, but returns 4 (following) + return el.compareDocumentPosition( document.createElement( "fieldset" ) ) & 1; +} ); + +// Support: IE<8 +// Prevent attribute/property "interpolation" +// https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx +if ( !assert( function( el ) { + el.innerHTML = ""; + return el.firstChild.getAttribute( "href" ) === "#"; +} ) ) { + addHandle( "type|href|height|width", function( elem, name, isXML ) { + if ( !isXML ) { + return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 ); + } + } ); +} + +// Support: IE<9 +// Use defaultValue in place of getAttribute("value") +if ( !support.attributes || !assert( function( el ) { + el.innerHTML = ""; + el.firstChild.setAttribute( "value", "" ); + return el.firstChild.getAttribute( "value" ) === ""; +} ) ) { + addHandle( "value", function( elem, _name, isXML ) { + if ( !isXML && elem.nodeName.toLowerCase() === "input" ) { + return elem.defaultValue; + } + } ); +} + +// Support: IE<9 +// Use getAttributeNode to fetch booleans when getAttribute lies +if ( !assert( function( el ) { + return el.getAttribute( "disabled" ) == null; +} ) ) { + addHandle( booleans, function( elem, name, isXML ) { + var val; + if ( !isXML ) { + return elem[ name ] === true ? name.toLowerCase() : + ( val = elem.getAttributeNode( name ) ) && val.specified ? + val.value : + null; + } + } ); +} + +return Sizzle; + +} )( window ); + + + +jQuery.find = Sizzle; +jQuery.expr = Sizzle.selectors; + +// Deprecated +jQuery.expr[ ":" ] = jQuery.expr.pseudos; +jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort; +jQuery.text = Sizzle.getText; +jQuery.isXMLDoc = Sizzle.isXML; +jQuery.contains = Sizzle.contains; +jQuery.escapeSelector = Sizzle.escape; + + + + +var dir = function( elem, dir, until ) { + var matched = [], + truncate = until !== undefined; + + while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) { + if ( elem.nodeType === 1 ) { + if ( truncate && jQuery( elem ).is( until ) ) { + break; + } + matched.push( elem ); + } + } + return matched; +}; + + +var siblings = function( n, elem ) { + var matched = []; + + for ( ; n; n = n.nextSibling ) { + if ( n.nodeType === 1 && n !== elem ) { + matched.push( n ); + } + } + + return matched; +}; + + +var rneedsContext = jQuery.expr.match.needsContext; + + + +function nodeName( elem, name ) { + + return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); + +} +var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i ); + + + +// Implement the identical functionality for filter and not +function winnow( elements, qualifier, not ) { + if ( isFunction( qualifier ) ) { + return jQuery.grep( elements, function( elem, i ) { + return !!qualifier.call( elem, i, elem ) !== not; + } ); + } + + // Single element + if ( qualifier.nodeType ) { + return jQuery.grep( elements, function( elem ) { + return ( elem === qualifier ) !== not; + } ); + } + + // Arraylike of elements (jQuery, arguments, Array) + if ( typeof qualifier !== "string" ) { + return jQuery.grep( elements, function( elem ) { + return ( indexOf.call( qualifier, elem ) > -1 ) !== not; + } ); + } + + // Filtered directly for both simple and complex selectors + return jQuery.filter( qualifier, elements, not ); +} + +jQuery.filter = function( expr, elems, not ) { + var elem = elems[ 0 ]; + + if ( not ) { + expr = ":not(" + expr + ")"; + } + + if ( elems.length === 1 && elem.nodeType === 1 ) { + return jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : []; + } + + return jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) { + return elem.nodeType === 1; + } ) ); +}; + +jQuery.fn.extend( { + find: function( selector ) { + var i, ret, + len = this.length, + self = this; + + if ( typeof selector !== "string" ) { + return this.pushStack( jQuery( selector ).filter( function() { + for ( i = 0; i < len; i++ ) { + if ( jQuery.contains( self[ i ], this ) ) { + return true; + } + } + } ) ); + } + + ret = this.pushStack( [] ); + + for ( i = 0; i < len; i++ ) { + jQuery.find( selector, self[ i ], ret ); + } + + return len > 1 ? jQuery.uniqueSort( ret ) : ret; + }, + filter: function( selector ) { + return this.pushStack( winnow( this, selector || [], false ) ); + }, + not: function( selector ) { + return this.pushStack( winnow( this, selector || [], true ) ); + }, + is: function( selector ) { + return !!winnow( + this, + + // If this is a positional/relative selector, check membership in the returned set + // so $("p:first").is("p:last") won't return true for a doc with two "p". + typeof selector === "string" && rneedsContext.test( selector ) ? + jQuery( selector ) : + selector || [], + false + ).length; + } +} ); + + +// Initialize a jQuery object + + +// A central reference to the root jQuery(document) +var rootjQuery, + + // A simple way to check for HTML strings + // Prioritize #id over to avoid XSS via location.hash (#9521) + // Strict HTML recognition (#11290: must start with <) + // Shortcut simple #id case for speed + rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/, + + init = jQuery.fn.init = function( selector, context, root ) { + var match, elem; + + // HANDLE: $(""), $(null), $(undefined), $(false) + if ( !selector ) { + return this; + } + + // Method init() accepts an alternate rootjQuery + // so migrate can support jQuery.sub (gh-2101) + root = root || rootjQuery; + + // Handle HTML strings + if ( typeof selector === "string" ) { + if ( selector[ 0 ] === "<" && + selector[ selector.length - 1 ] === ">" && + selector.length >= 3 ) { + + // Assume that strings that start and end with <> are HTML and skip the regex check + match = [ null, selector, null ]; + + } else { + match = rquickExpr.exec( selector ); + } + + // Match html or make sure no context is specified for #id + if ( match && ( match[ 1 ] || !context ) ) { + + // HANDLE: $(html) -> $(array) + if ( match[ 1 ] ) { + context = context instanceof jQuery ? context[ 0 ] : context; + + // Option to run scripts is true for back-compat + // Intentionally let the error be thrown if parseHTML is not present + jQuery.merge( this, jQuery.parseHTML( + match[ 1 ], + context && context.nodeType ? context.ownerDocument || context : document, + true + ) ); + + // HANDLE: $(html, props) + if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) { + for ( match in context ) { + + // Properties of context are called as methods if possible + if ( isFunction( this[ match ] ) ) { + this[ match ]( context[ match ] ); + + // ...and otherwise set as attributes + } else { + this.attr( match, context[ match ] ); + } + } + } + + return this; + + // HANDLE: $(#id) + } else { + elem = document.getElementById( match[ 2 ] ); + + if ( elem ) { + + // Inject the element directly into the jQuery object + this[ 0 ] = elem; + this.length = 1; + } + return this; + } + + // HANDLE: $(expr, $(...)) + } else if ( !context || context.jquery ) { + return ( context || root ).find( selector ); + + // HANDLE: $(expr, context) + // (which is just equivalent to: $(context).find(expr) + } else { + return this.constructor( context ).find( selector ); + } + + // HANDLE: $(DOMElement) + } else if ( selector.nodeType ) { + this[ 0 ] = selector; + this.length = 1; + return this; + + // HANDLE: $(function) + // Shortcut for document ready + } else if ( isFunction( selector ) ) { + return root.ready !== undefined ? + root.ready( selector ) : + + // Execute immediately if ready is not present + selector( jQuery ); + } + + return jQuery.makeArray( selector, this ); + }; + +// Give the init function the jQuery prototype for later instantiation +init.prototype = jQuery.fn; + +// Initialize central reference +rootjQuery = jQuery( document ); + + +var rparentsprev = /^(?:parents|prev(?:Until|All))/, + + // Methods guaranteed to produce a unique set when starting from a unique set + guaranteedUnique = { + children: true, + contents: true, + next: true, + prev: true + }; + +jQuery.fn.extend( { + has: function( target ) { + var targets = jQuery( target, this ), + l = targets.length; + + return this.filter( function() { + var i = 0; + for ( ; i < l; i++ ) { + if ( jQuery.contains( this, targets[ i ] ) ) { + return true; + } + } + } ); + }, + + closest: function( selectors, context ) { + var cur, + i = 0, + l = this.length, + matched = [], + targets = typeof selectors !== "string" && jQuery( selectors ); + + // Positional selectors never match, since there's no _selection_ context + if ( !rneedsContext.test( selectors ) ) { + for ( ; i < l; i++ ) { + for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) { + + // Always skip document fragments + if ( cur.nodeType < 11 && ( targets ? + targets.index( cur ) > -1 : + + // Don't pass non-elements to Sizzle + cur.nodeType === 1 && + jQuery.find.matchesSelector( cur, selectors ) ) ) { + + matched.push( cur ); + break; + } + } + } + } + + return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched ); + }, + + // Determine the position of an element within the set + index: function( elem ) { + + // No argument, return index in parent + if ( !elem ) { + return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1; + } + + // Index in selector + if ( typeof elem === "string" ) { + return indexOf.call( jQuery( elem ), this[ 0 ] ); + } + + // Locate the position of the desired element + return indexOf.call( this, + + // If it receives a jQuery object, the first element is used + elem.jquery ? elem[ 0 ] : elem + ); + }, + + add: function( selector, context ) { + return this.pushStack( + jQuery.uniqueSort( + jQuery.merge( this.get(), jQuery( selector, context ) ) + ) + ); + }, + + addBack: function( selector ) { + return this.add( selector == null ? + this.prevObject : this.prevObject.filter( selector ) + ); + } +} ); + +function sibling( cur, dir ) { + while ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {} + return cur; +} + +jQuery.each( { + parent: function( elem ) { + var parent = elem.parentNode; + return parent && parent.nodeType !== 11 ? parent : null; + }, + parents: function( elem ) { + return dir( elem, "parentNode" ); + }, + parentsUntil: function( elem, _i, until ) { + return dir( elem, "parentNode", until ); + }, + next: function( elem ) { + return sibling( elem, "nextSibling" ); + }, + prev: function( elem ) { + return sibling( elem, "previousSibling" ); + }, + nextAll: function( elem ) { + return dir( elem, "nextSibling" ); + }, + prevAll: function( elem ) { + return dir( elem, "previousSibling" ); + }, + nextUntil: function( elem, _i, until ) { + return dir( elem, "nextSibling", until ); + }, + prevUntil: function( elem, _i, until ) { + return dir( elem, "previousSibling", until ); + }, + siblings: function( elem ) { + return siblings( ( elem.parentNode || {} ).firstChild, elem ); + }, + children: function( elem ) { + return siblings( elem.firstChild ); + }, + contents: function( elem ) { + if ( elem.contentDocument != null && + + // Support: IE 11+ + // elements with no `data` attribute has an object + // `contentDocument` with a `null` prototype. + getProto( elem.contentDocument ) ) { + + return elem.contentDocument; + } + + // Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only + // Treat the template element as a regular one in browsers that + // don't support it. + if ( nodeName( elem, "template" ) ) { + elem = elem.content || elem; + } + + return jQuery.merge( [], elem.childNodes ); + } +}, function( name, fn ) { + jQuery.fn[ name ] = function( until, selector ) { + var matched = jQuery.map( this, fn, until ); + + if ( name.slice( -5 ) !== "Until" ) { + selector = until; + } + + if ( selector && typeof selector === "string" ) { + matched = jQuery.filter( selector, matched ); + } + + if ( this.length > 1 ) { + + // Remove duplicates + if ( !guaranteedUnique[ name ] ) { + jQuery.uniqueSort( matched ); + } + + // Reverse order for parents* and prev-derivatives + if ( rparentsprev.test( name ) ) { + matched.reverse(); + } + } + + return this.pushStack( matched ); + }; +} ); +var rnothtmlwhite = ( /[^\x20\t\r\n\f]+/g ); + + + +// Convert String-formatted options into Object-formatted ones +function createOptions( options ) { + var object = {}; + jQuery.each( options.match( rnothtmlwhite ) || [], function( _, flag ) { + object[ flag ] = true; + } ); + return object; +} + +/* + * Create a callback list using the following parameters: + * + * options: an optional list of space-separated options that will change how + * the callback list behaves or a more traditional option object + * + * By default a callback list will act like an event callback list and can be + * "fired" multiple times. + * + * Possible options: + * + * once: will ensure the callback list can only be fired once (like a Deferred) + * + * memory: will keep track of previous values and will call any callback added + * after the list has been fired right away with the latest "memorized" + * values (like a Deferred) + * + * unique: will ensure a callback can only be added once (no duplicate in the list) + * + * stopOnFalse: interrupt callings when a callback returns false + * + */ +jQuery.Callbacks = function( options ) { + + // Convert options from String-formatted to Object-formatted if needed + // (we check in cache first) + options = typeof options === "string" ? + createOptions( options ) : + jQuery.extend( {}, options ); + + var // Flag to know if list is currently firing + firing, + + // Last fire value for non-forgettable lists + memory, + + // Flag to know if list was already fired + fired, + + // Flag to prevent firing + locked, + + // Actual callback list + list = [], + + // Queue of execution data for repeatable lists + queue = [], + + // Index of currently firing callback (modified by add/remove as needed) + firingIndex = -1, + + // Fire callbacks + fire = function() { + + // Enforce single-firing + locked = locked || options.once; + + // Execute callbacks for all pending executions, + // respecting firingIndex overrides and runtime changes + fired = firing = true; + for ( ; queue.length; firingIndex = -1 ) { + memory = queue.shift(); + while ( ++firingIndex < list.length ) { + + // Run callback and check for early termination + if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false && + options.stopOnFalse ) { + + // Jump to end and forget the data so .add doesn't re-fire + firingIndex = list.length; + memory = false; + } + } + } + + // Forget the data if we're done with it + if ( !options.memory ) { + memory = false; + } + + firing = false; + + // Clean up if we're done firing for good + if ( locked ) { + + // Keep an empty list if we have data for future add calls + if ( memory ) { + list = []; + + // Otherwise, this object is spent + } else { + list = ""; + } + } + }, + + // Actual Callbacks object + self = { + + // Add a callback or a collection of callbacks to the list + add: function() { + if ( list ) { + + // If we have memory from a past run, we should fire after adding + if ( memory && !firing ) { + firingIndex = list.length - 1; + queue.push( memory ); + } + + ( function add( args ) { + jQuery.each( args, function( _, arg ) { + if ( isFunction( arg ) ) { + if ( !options.unique || !self.has( arg ) ) { + list.push( arg ); + } + } else if ( arg && arg.length && toType( arg ) !== "string" ) { + + // Inspect recursively + add( arg ); + } + } ); + } )( arguments ); + + if ( memory && !firing ) { + fire(); + } + } + return this; + }, + + // Remove a callback from the list + remove: function() { + jQuery.each( arguments, function( _, arg ) { + var index; + while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { + list.splice( index, 1 ); + + // Handle firing indexes + if ( index <= firingIndex ) { + firingIndex--; + } + } + } ); + return this; + }, + + // Check if a given callback is in the list. + // If no argument is given, return whether or not list has callbacks attached. + has: function( fn ) { + return fn ? + jQuery.inArray( fn, list ) > -1 : + list.length > 0; + }, + + // Remove all callbacks from the list + empty: function() { + if ( list ) { + list = []; + } + return this; + }, + + // Disable .fire and .add + // Abort any current/pending executions + // Clear all callbacks and values + disable: function() { + locked = queue = []; + list = memory = ""; + return this; + }, + disabled: function() { + return !list; + }, + + // Disable .fire + // Also disable .add unless we have memory (since it would have no effect) + // Abort any pending executions + lock: function() { + locked = queue = []; + if ( !memory && !firing ) { + list = memory = ""; + } + return this; + }, + locked: function() { + return !!locked; + }, + + // Call all callbacks with the given context and arguments + fireWith: function( context, args ) { + if ( !locked ) { + args = args || []; + args = [ context, args.slice ? args.slice() : args ]; + queue.push( args ); + if ( !firing ) { + fire(); + } + } + return this; + }, + + // Call all the callbacks with the given arguments + fire: function() { + self.fireWith( this, arguments ); + return this; + }, + + // To know if the callbacks have already been called at least once + fired: function() { + return !!fired; + } + }; + + return self; +}; + + +function Identity( v ) { + return v; +} +function Thrower( ex ) { + throw ex; +} + +function adoptValue( value, resolve, reject, noValue ) { + var method; + + try { + + // Check for promise aspect first to privilege synchronous behavior + if ( value && isFunction( ( method = value.promise ) ) ) { + method.call( value ).done( resolve ).fail( reject ); + + // Other thenables + } else if ( value && isFunction( ( method = value.then ) ) ) { + method.call( value, resolve, reject ); + + // Other non-thenables + } else { + + // Control `resolve` arguments by letting Array#slice cast boolean `noValue` to integer: + // * false: [ value ].slice( 0 ) => resolve( value ) + // * true: [ value ].slice( 1 ) => resolve() + resolve.apply( undefined, [ value ].slice( noValue ) ); + } + + // For Promises/A+, convert exceptions into rejections + // Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in + // Deferred#then to conditionally suppress rejection. + } catch ( value ) { + + // Support: Android 4.0 only + // Strict mode functions invoked without .call/.apply get global-object context + reject.apply( undefined, [ value ] ); + } +} + +jQuery.extend( { + + Deferred: function( func ) { + var tuples = [ + + // action, add listener, callbacks, + // ... .then handlers, argument index, [final state] + [ "notify", "progress", jQuery.Callbacks( "memory" ), + jQuery.Callbacks( "memory" ), 2 ], + [ "resolve", "done", jQuery.Callbacks( "once memory" ), + jQuery.Callbacks( "once memory" ), 0, "resolved" ], + [ "reject", "fail", jQuery.Callbacks( "once memory" ), + jQuery.Callbacks( "once memory" ), 1, "rejected" ] + ], + state = "pending", + promise = { + state: function() { + return state; + }, + always: function() { + deferred.done( arguments ).fail( arguments ); + return this; + }, + "catch": function( fn ) { + return promise.then( null, fn ); + }, + + // Keep pipe for back-compat + pipe: function( /* fnDone, fnFail, fnProgress */ ) { + var fns = arguments; + + return jQuery.Deferred( function( newDefer ) { + jQuery.each( tuples, function( _i, tuple ) { + + // Map tuples (progress, done, fail) to arguments (done, fail, progress) + var fn = isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ]; + + // deferred.progress(function() { bind to newDefer or newDefer.notify }) + // deferred.done(function() { bind to newDefer or newDefer.resolve }) + // deferred.fail(function() { bind to newDefer or newDefer.reject }) + deferred[ tuple[ 1 ] ]( function() { + var returned = fn && fn.apply( this, arguments ); + if ( returned && isFunction( returned.promise ) ) { + returned.promise() + .progress( newDefer.notify ) + .done( newDefer.resolve ) + .fail( newDefer.reject ); + } else { + newDefer[ tuple[ 0 ] + "With" ]( + this, + fn ? [ returned ] : arguments + ); + } + } ); + } ); + fns = null; + } ).promise(); + }, + then: function( onFulfilled, onRejected, onProgress ) { + var maxDepth = 0; + function resolve( depth, deferred, handler, special ) { + return function() { + var that = this, + args = arguments, + mightThrow = function() { + var returned, then; + + // Support: Promises/A+ section 2.3.3.3.3 + // https://promisesaplus.com/#point-59 + // Ignore double-resolution attempts + if ( depth < maxDepth ) { + return; + } + + returned = handler.apply( that, args ); + + // Support: Promises/A+ section 2.3.1 + // https://promisesaplus.com/#point-48 + if ( returned === deferred.promise() ) { + throw new TypeError( "Thenable self-resolution" ); + } + + // Support: Promises/A+ sections 2.3.3.1, 3.5 + // https://promisesaplus.com/#point-54 + // https://promisesaplus.com/#point-75 + // Retrieve `then` only once + then = returned && + + // Support: Promises/A+ section 2.3.4 + // https://promisesaplus.com/#point-64 + // Only check objects and functions for thenability + ( typeof returned === "object" || + typeof returned === "function" ) && + returned.then; + + // Handle a returned thenable + if ( isFunction( then ) ) { + + // Special processors (notify) just wait for resolution + if ( special ) { + then.call( + returned, + resolve( maxDepth, deferred, Identity, special ), + resolve( maxDepth, deferred, Thrower, special ) + ); + + // Normal processors (resolve) also hook into progress + } else { + + // ...and disregard older resolution values + maxDepth++; + + then.call( + returned, + resolve( maxDepth, deferred, Identity, special ), + resolve( maxDepth, deferred, Thrower, special ), + resolve( maxDepth, deferred, Identity, + deferred.notifyWith ) + ); + } + + // Handle all other returned values + } else { + + // Only substitute handlers pass on context + // and multiple values (non-spec behavior) + if ( handler !== Identity ) { + that = undefined; + args = [ returned ]; + } + + // Process the value(s) + // Default process is resolve + ( special || deferred.resolveWith )( that, args ); + } + }, + + // Only normal processors (resolve) catch and reject exceptions + process = special ? + mightThrow : + function() { + try { + mightThrow(); + } catch ( e ) { + + if ( jQuery.Deferred.exceptionHook ) { + jQuery.Deferred.exceptionHook( e, + process.stackTrace ); + } + + // Support: Promises/A+ section 2.3.3.3.4.1 + // https://promisesaplus.com/#point-61 + // Ignore post-resolution exceptions + if ( depth + 1 >= maxDepth ) { + + // Only substitute handlers pass on context + // and multiple values (non-spec behavior) + if ( handler !== Thrower ) { + that = undefined; + args = [ e ]; + } + + deferred.rejectWith( that, args ); + } + } + }; + + // Support: Promises/A+ section 2.3.3.3.1 + // https://promisesaplus.com/#point-57 + // Re-resolve promises immediately to dodge false rejection from + // subsequent errors + if ( depth ) { + process(); + } else { + + // Call an optional hook to record the stack, in case of exception + // since it's otherwise lost when execution goes async + if ( jQuery.Deferred.getStackHook ) { + process.stackTrace = jQuery.Deferred.getStackHook(); + } + window.setTimeout( process ); + } + }; + } + + return jQuery.Deferred( function( newDefer ) { + + // progress_handlers.add( ... ) + tuples[ 0 ][ 3 ].add( + resolve( + 0, + newDefer, + isFunction( onProgress ) ? + onProgress : + Identity, + newDefer.notifyWith + ) + ); + + // fulfilled_handlers.add( ... ) + tuples[ 1 ][ 3 ].add( + resolve( + 0, + newDefer, + isFunction( onFulfilled ) ? + onFulfilled : + Identity + ) + ); + + // rejected_handlers.add( ... ) + tuples[ 2 ][ 3 ].add( + resolve( + 0, + newDefer, + isFunction( onRejected ) ? + onRejected : + Thrower + ) + ); + } ).promise(); + }, + + // Get a promise for this deferred + // If obj is provided, the promise aspect is added to the object + promise: function( obj ) { + return obj != null ? jQuery.extend( obj, promise ) : promise; + } + }, + deferred = {}; + + // Add list-specific methods + jQuery.each( tuples, function( i, tuple ) { + var list = tuple[ 2 ], + stateString = tuple[ 5 ]; + + // promise.progress = list.add + // promise.done = list.add + // promise.fail = list.add + promise[ tuple[ 1 ] ] = list.add; + + // Handle state + if ( stateString ) { + list.add( + function() { + + // state = "resolved" (i.e., fulfilled) + // state = "rejected" + state = stateString; + }, + + // rejected_callbacks.disable + // fulfilled_callbacks.disable + tuples[ 3 - i ][ 2 ].disable, + + // rejected_handlers.disable + // fulfilled_handlers.disable + tuples[ 3 - i ][ 3 ].disable, + + // progress_callbacks.lock + tuples[ 0 ][ 2 ].lock, + + // progress_handlers.lock + tuples[ 0 ][ 3 ].lock + ); + } + + // progress_handlers.fire + // fulfilled_handlers.fire + // rejected_handlers.fire + list.add( tuple[ 3 ].fire ); + + // deferred.notify = function() { deferred.notifyWith(...) } + // deferred.resolve = function() { deferred.resolveWith(...) } + // deferred.reject = function() { deferred.rejectWith(...) } + deferred[ tuple[ 0 ] ] = function() { + deferred[ tuple[ 0 ] + "With" ]( this === deferred ? undefined : this, arguments ); + return this; + }; + + // deferred.notifyWith = list.fireWith + // deferred.resolveWith = list.fireWith + // deferred.rejectWith = list.fireWith + deferred[ tuple[ 0 ] + "With" ] = list.fireWith; + } ); + + // Make the deferred a promise + promise.promise( deferred ); + + // Call given func if any + if ( func ) { + func.call( deferred, deferred ); + } + + // All done! + return deferred; + }, + + // Deferred helper + when: function( singleValue ) { + var + + // count of uncompleted subordinates + remaining = arguments.length, + + // count of unprocessed arguments + i = remaining, + + // subordinate fulfillment data + resolveContexts = Array( i ), + resolveValues = slice.call( arguments ), + + // the primary Deferred + primary = jQuery.Deferred(), + + // subordinate callback factory + updateFunc = function( i ) { + return function( value ) { + resolveContexts[ i ] = this; + resolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value; + if ( !( --remaining ) ) { + primary.resolveWith( resolveContexts, resolveValues ); + } + }; + }; + + // Single- and empty arguments are adopted like Promise.resolve + if ( remaining <= 1 ) { + adoptValue( singleValue, primary.done( updateFunc( i ) ).resolve, primary.reject, + !remaining ); + + // Use .then() to unwrap secondary thenables (cf. gh-3000) + if ( primary.state() === "pending" || + isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) { + + return primary.then(); + } + } + + // Multiple arguments are aggregated like Promise.all array elements + while ( i-- ) { + adoptValue( resolveValues[ i ], updateFunc( i ), primary.reject ); + } + + return primary.promise(); + } +} ); + + +// These usually indicate a programmer mistake during development, +// warn about them ASAP rather than swallowing them by default. +var rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/; + +jQuery.Deferred.exceptionHook = function( error, stack ) { + + // Support: IE 8 - 9 only + // Console exists when dev tools are open, which can happen at any time + if ( window.console && window.console.warn && error && rerrorNames.test( error.name ) ) { + window.console.warn( "jQuery.Deferred exception: " + error.message, error.stack, stack ); + } +}; + + + + +jQuery.readyException = function( error ) { + window.setTimeout( function() { + throw error; + } ); +}; + + + + +// The deferred used on DOM ready +var readyList = jQuery.Deferred(); + +jQuery.fn.ready = function( fn ) { + + readyList + .then( fn ) + + // Wrap jQuery.readyException in a function so that the lookup + // happens at the time of error handling instead of callback + // registration. + .catch( function( error ) { + jQuery.readyException( error ); + } ); + + return this; +}; + +jQuery.extend( { + + // Is the DOM ready to be used? Set to true once it occurs. + isReady: false, + + // A counter to track how many items to wait for before + // the ready event fires. See #6781 + readyWait: 1, + + // Handle when the DOM is ready + ready: function( wait ) { + + // Abort if there are pending holds or we're already ready + if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) { + return; + } + + // Remember that the DOM is ready + jQuery.isReady = true; + + // If a normal DOM Ready event fired, decrement, and wait if need be + if ( wait !== true && --jQuery.readyWait > 0 ) { + return; + } + + // If there are functions bound, to execute + readyList.resolveWith( document, [ jQuery ] ); + } +} ); + +jQuery.ready.then = readyList.then; + +// The ready event handler and self cleanup method +function completed() { + document.removeEventListener( "DOMContentLoaded", completed ); + window.removeEventListener( "load", completed ); + jQuery.ready(); +} + +// Catch cases where $(document).ready() is called +// after the browser event has already occurred. +// Support: IE <=9 - 10 only +// Older IE sometimes signals "interactive" too soon +if ( document.readyState === "complete" || + ( document.readyState !== "loading" && !document.documentElement.doScroll ) ) { + + // Handle it asynchronously to allow scripts the opportunity to delay ready + window.setTimeout( jQuery.ready ); + +} else { + + // Use the handy event callback + document.addEventListener( "DOMContentLoaded", completed ); + + // A fallback to window.onload, that will always work + window.addEventListener( "load", completed ); +} + + + + +// Multifunctional method to get and set values of a collection +// The value/s can optionally be executed if it's a function +var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { + var i = 0, + len = elems.length, + bulk = key == null; + + // Sets many values + if ( toType( key ) === "object" ) { + chainable = true; + for ( i in key ) { + access( elems, fn, i, key[ i ], true, emptyGet, raw ); + } + + // Sets one value + } else if ( value !== undefined ) { + chainable = true; + + if ( !isFunction( value ) ) { + raw = true; + } + + if ( bulk ) { + + // Bulk operations run against the entire set + if ( raw ) { + fn.call( elems, value ); + fn = null; + + // ...except when executing function values + } else { + bulk = fn; + fn = function( elem, _key, value ) { + return bulk.call( jQuery( elem ), value ); + }; + } + } + + if ( fn ) { + for ( ; i < len; i++ ) { + fn( + elems[ i ], key, raw ? + value : + value.call( elems[ i ], i, fn( elems[ i ], key ) ) + ); + } + } + } + + if ( chainable ) { + return elems; + } + + // Gets + if ( bulk ) { + return fn.call( elems ); + } + + return len ? fn( elems[ 0 ], key ) : emptyGet; +}; + + +// Matches dashed string for camelizing +var rmsPrefix = /^-ms-/, + rdashAlpha = /-([a-z])/g; + +// Used by camelCase as callback to replace() +function fcamelCase( _all, letter ) { + return letter.toUpperCase(); +} + +// Convert dashed to camelCase; used by the css and data modules +// Support: IE <=9 - 11, Edge 12 - 15 +// Microsoft forgot to hump their vendor prefix (#9572) +function camelCase( string ) { + return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); +} +var acceptData = function( owner ) { + + // Accepts only: + // - Node + // - Node.ELEMENT_NODE + // - Node.DOCUMENT_NODE + // - Object + // - Any + return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType ); +}; + + + + +function Data() { + this.expando = jQuery.expando + Data.uid++; +} + +Data.uid = 1; + +Data.prototype = { + + cache: function( owner ) { + + // Check if the owner object already has a cache + var value = owner[ this.expando ]; + + // If not, create one + if ( !value ) { + value = {}; + + // We can accept data for non-element nodes in modern browsers, + // but we should not, see #8335. + // Always return an empty object. + if ( acceptData( owner ) ) { + + // If it is a node unlikely to be stringify-ed or looped over + // use plain assignment + if ( owner.nodeType ) { + owner[ this.expando ] = value; + + // Otherwise secure it in a non-enumerable property + // configurable must be true to allow the property to be + // deleted when data is removed + } else { + Object.defineProperty( owner, this.expando, { + value: value, + configurable: true + } ); + } + } + } + + return value; + }, + set: function( owner, data, value ) { + var prop, + cache = this.cache( owner ); + + // Handle: [ owner, key, value ] args + // Always use camelCase key (gh-2257) + if ( typeof data === "string" ) { + cache[ camelCase( data ) ] = value; + + // Handle: [ owner, { properties } ] args + } else { + + // Copy the properties one-by-one to the cache object + for ( prop in data ) { + cache[ camelCase( prop ) ] = data[ prop ]; + } + } + return cache; + }, + get: function( owner, key ) { + return key === undefined ? + this.cache( owner ) : + + // Always use camelCase key (gh-2257) + owner[ this.expando ] && owner[ this.expando ][ camelCase( key ) ]; + }, + access: function( owner, key, value ) { + + // In cases where either: + // + // 1. No key was specified + // 2. A string key was specified, but no value provided + // + // Take the "read" path and allow the get method to determine + // which value to return, respectively either: + // + // 1. The entire cache object + // 2. The data stored at the key + // + if ( key === undefined || + ( ( key && typeof key === "string" ) && value === undefined ) ) { + + return this.get( owner, key ); + } + + // When the key is not a string, or both a key and value + // are specified, set or extend (existing objects) with either: + // + // 1. An object of properties + // 2. A key and value + // + this.set( owner, key, value ); + + // Since the "set" path can have two possible entry points + // return the expected data based on which path was taken[*] + return value !== undefined ? value : key; + }, + remove: function( owner, key ) { + var i, + cache = owner[ this.expando ]; + + if ( cache === undefined ) { + return; + } + + if ( key !== undefined ) { + + // Support array or space separated string of keys + if ( Array.isArray( key ) ) { + + // If key is an array of keys... + // We always set camelCase keys, so remove that. + key = key.map( camelCase ); + } else { + key = camelCase( key ); + + // If a key with the spaces exists, use it. + // Otherwise, create an array by matching non-whitespace + key = key in cache ? + [ key ] : + ( key.match( rnothtmlwhite ) || [] ); + } + + i = key.length; + + while ( i-- ) { + delete cache[ key[ i ] ]; + } + } + + // Remove the expando if there's no more data + if ( key === undefined || jQuery.isEmptyObject( cache ) ) { + + // Support: Chrome <=35 - 45 + // Webkit & Blink performance suffers when deleting properties + // from DOM nodes, so set to undefined instead + // https://bugs.chromium.org/p/chromium/issues/detail?id=378607 (bug restricted) + if ( owner.nodeType ) { + owner[ this.expando ] = undefined; + } else { + delete owner[ this.expando ]; + } + } + }, + hasData: function( owner ) { + var cache = owner[ this.expando ]; + return cache !== undefined && !jQuery.isEmptyObject( cache ); + } +}; +var dataPriv = new Data(); + +var dataUser = new Data(); + + + +// Implementation Summary +// +// 1. Enforce API surface and semantic compatibility with 1.9.x branch +// 2. Improve the module's maintainability by reducing the storage +// paths to a single mechanism. +// 3. Use the same single mechanism to support "private" and "user" data. +// 4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData) +// 5. Avoid exposing implementation details on user objects (eg. expando properties) +// 6. Provide a clear path for implementation upgrade to WeakMap in 2014 + +var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, + rmultiDash = /[A-Z]/g; + +function getData( data ) { + if ( data === "true" ) { + return true; + } + + if ( data === "false" ) { + return false; + } + + if ( data === "null" ) { + return null; + } + + // Only convert to a number if it doesn't change the string + if ( data === +data + "" ) { + return +data; + } + + if ( rbrace.test( data ) ) { + return JSON.parse( data ); + } + + return data; +} + +function dataAttr( elem, key, data ) { + var name; + + // If nothing was found internally, try to fetch any + // data from the HTML5 data-* attribute + if ( data === undefined && elem.nodeType === 1 ) { + name = "data-" + key.replace( rmultiDash, "-$&" ).toLowerCase(); + data = elem.getAttribute( name ); + + if ( typeof data === "string" ) { + try { + data = getData( data ); + } catch ( e ) {} + + // Make sure we set the data so it isn't changed later + dataUser.set( elem, key, data ); + } else { + data = undefined; + } + } + return data; +} + +jQuery.extend( { + hasData: function( elem ) { + return dataUser.hasData( elem ) || dataPriv.hasData( elem ); + }, + + data: function( elem, name, data ) { + return dataUser.access( elem, name, data ); + }, + + removeData: function( elem, name ) { + dataUser.remove( elem, name ); + }, + + // TODO: Now that all calls to _data and _removeData have been replaced + // with direct calls to dataPriv methods, these can be deprecated. + _data: function( elem, name, data ) { + return dataPriv.access( elem, name, data ); + }, + + _removeData: function( elem, name ) { + dataPriv.remove( elem, name ); + } +} ); + +jQuery.fn.extend( { + data: function( key, value ) { + var i, name, data, + elem = this[ 0 ], + attrs = elem && elem.attributes; + + // Gets all values + if ( key === undefined ) { + if ( this.length ) { + data = dataUser.get( elem ); + + if ( elem.nodeType === 1 && !dataPriv.get( elem, "hasDataAttrs" ) ) { + i = attrs.length; + while ( i-- ) { + + // Support: IE 11 only + // The attrs elements can be null (#14894) + if ( attrs[ i ] ) { + name = attrs[ i ].name; + if ( name.indexOf( "data-" ) === 0 ) { + name = camelCase( name.slice( 5 ) ); + dataAttr( elem, name, data[ name ] ); + } + } + } + dataPriv.set( elem, "hasDataAttrs", true ); + } + } + + return data; + } + + // Sets multiple values + if ( typeof key === "object" ) { + return this.each( function() { + dataUser.set( this, key ); + } ); + } + + return access( this, function( value ) { + var data; + + // The calling jQuery object (element matches) is not empty + // (and therefore has an element appears at this[ 0 ]) and the + // `value` parameter was not undefined. An empty jQuery object + // will result in `undefined` for elem = this[ 0 ] which will + // throw an exception if an attempt to read a data cache is made. + if ( elem && value === undefined ) { + + // Attempt to get data from the cache + // The key will always be camelCased in Data + data = dataUser.get( elem, key ); + if ( data !== undefined ) { + return data; + } + + // Attempt to "discover" the data in + // HTML5 custom data-* attrs + data = dataAttr( elem, key ); + if ( data !== undefined ) { + return data; + } + + // We tried really hard, but the data doesn't exist. + return; + } + + // Set the data... + this.each( function() { + + // We always store the camelCased key + dataUser.set( this, key, value ); + } ); + }, null, value, arguments.length > 1, null, true ); + }, + + removeData: function( key ) { + return this.each( function() { + dataUser.remove( this, key ); + } ); + } +} ); + + +jQuery.extend( { + queue: function( elem, type, data ) { + var queue; + + if ( elem ) { + type = ( type || "fx" ) + "queue"; + queue = dataPriv.get( elem, type ); + + // Speed up dequeue by getting out quickly if this is just a lookup + if ( data ) { + if ( !queue || Array.isArray( data ) ) { + queue = dataPriv.access( elem, type, jQuery.makeArray( data ) ); + } else { + queue.push( data ); + } + } + return queue || []; + } + }, + + dequeue: function( elem, type ) { + type = type || "fx"; + + var queue = jQuery.queue( elem, type ), + startLength = queue.length, + fn = queue.shift(), + hooks = jQuery._queueHooks( elem, type ), + next = function() { + jQuery.dequeue( elem, type ); + }; + + // If the fx queue is dequeued, always remove the progress sentinel + if ( fn === "inprogress" ) { + fn = queue.shift(); + startLength--; + } + + if ( fn ) { + + // Add a progress sentinel to prevent the fx queue from being + // automatically dequeued + if ( type === "fx" ) { + queue.unshift( "inprogress" ); + } + + // Clear up the last queue stop function + delete hooks.stop; + fn.call( elem, next, hooks ); + } + + if ( !startLength && hooks ) { + hooks.empty.fire(); + } + }, + + // Not public - generate a queueHooks object, or return the current one + _queueHooks: function( elem, type ) { + var key = type + "queueHooks"; + return dataPriv.get( elem, key ) || dataPriv.access( elem, key, { + empty: jQuery.Callbacks( "once memory" ).add( function() { + dataPriv.remove( elem, [ type + "queue", key ] ); + } ) + } ); + } +} ); + +jQuery.fn.extend( { + queue: function( type, data ) { + var setter = 2; + + if ( typeof type !== "string" ) { + data = type; + type = "fx"; + setter--; + } + + if ( arguments.length < setter ) { + return jQuery.queue( this[ 0 ], type ); + } + + return data === undefined ? + this : + this.each( function() { + var queue = jQuery.queue( this, type, data ); + + // Ensure a hooks for this queue + jQuery._queueHooks( this, type ); + + if ( type === "fx" && queue[ 0 ] !== "inprogress" ) { + jQuery.dequeue( this, type ); + } + } ); + }, + dequeue: function( type ) { + return this.each( function() { + jQuery.dequeue( this, type ); + } ); + }, + clearQueue: function( type ) { + return this.queue( type || "fx", [] ); + }, + + // Get a promise resolved when queues of a certain type + // are emptied (fx is the type by default) + promise: function( type, obj ) { + var tmp, + count = 1, + defer = jQuery.Deferred(), + elements = this, + i = this.length, + resolve = function() { + if ( !( --count ) ) { + defer.resolveWith( elements, [ elements ] ); + } + }; + + if ( typeof type !== "string" ) { + obj = type; + type = undefined; + } + type = type || "fx"; + + while ( i-- ) { + tmp = dataPriv.get( elements[ i ], type + "queueHooks" ); + if ( tmp && tmp.empty ) { + count++; + tmp.empty.add( resolve ); + } + } + resolve(); + return defer.promise( obj ); + } +} ); +var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source; + +var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" ); + + +var cssExpand = [ "Top", "Right", "Bottom", "Left" ]; + +var documentElement = document.documentElement; + + + + var isAttached = function( elem ) { + return jQuery.contains( elem.ownerDocument, elem ); + }, + composed = { composed: true }; + + // Support: IE 9 - 11+, Edge 12 - 18+, iOS 10.0 - 10.2 only + // Check attachment across shadow DOM boundaries when possible (gh-3504) + // Support: iOS 10.0-10.2 only + // Early iOS 10 versions support `attachShadow` but not `getRootNode`, + // leading to errors. We need to check for `getRootNode`. + if ( documentElement.getRootNode ) { + isAttached = function( elem ) { + return jQuery.contains( elem.ownerDocument, elem ) || + elem.getRootNode( composed ) === elem.ownerDocument; + }; + } +var isHiddenWithinTree = function( elem, el ) { + + // isHiddenWithinTree might be called from jQuery#filter function; + // in that case, element will be second argument + elem = el || elem; + + // Inline style trumps all + return elem.style.display === "none" || + elem.style.display === "" && + + // Otherwise, check computed style + // Support: Firefox <=43 - 45 + // Disconnected elements can have computed display: none, so first confirm that elem is + // in the document. + isAttached( elem ) && + + jQuery.css( elem, "display" ) === "none"; + }; + + + +function adjustCSS( elem, prop, valueParts, tween ) { + var adjusted, scale, + maxIterations = 20, + currentValue = tween ? + function() { + return tween.cur(); + } : + function() { + return jQuery.css( elem, prop, "" ); + }, + initial = currentValue(), + unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), + + // Starting value computation is required for potential unit mismatches + initialInUnit = elem.nodeType && + ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) && + rcssNum.exec( jQuery.css( elem, prop ) ); + + if ( initialInUnit && initialInUnit[ 3 ] !== unit ) { + + // Support: Firefox <=54 + // Halve the iteration target value to prevent interference from CSS upper bounds (gh-2144) + initial = initial / 2; + + // Trust units reported by jQuery.css + unit = unit || initialInUnit[ 3 ]; + + // Iteratively approximate from a nonzero starting point + initialInUnit = +initial || 1; + + while ( maxIterations-- ) { + + // Evaluate and update our best guess (doubling guesses that zero out). + // Finish if the scale equals or crosses 1 (making the old*new product non-positive). + jQuery.style( elem, prop, initialInUnit + unit ); + if ( ( 1 - scale ) * ( 1 - ( scale = currentValue() / initial || 0.5 ) ) <= 0 ) { + maxIterations = 0; + } + initialInUnit = initialInUnit / scale; + + } + + initialInUnit = initialInUnit * 2; + jQuery.style( elem, prop, initialInUnit + unit ); + + // Make sure we update the tween properties later on + valueParts = valueParts || []; + } + + if ( valueParts ) { + initialInUnit = +initialInUnit || +initial || 0; + + // Apply relative offset (+=/-=) if specified + adjusted = valueParts[ 1 ] ? + initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] : + +valueParts[ 2 ]; + if ( tween ) { + tween.unit = unit; + tween.start = initialInUnit; + tween.end = adjusted; + } + } + return adjusted; +} + + +var defaultDisplayMap = {}; + +function getDefaultDisplay( elem ) { + var temp, + doc = elem.ownerDocument, + nodeName = elem.nodeName, + display = defaultDisplayMap[ nodeName ]; + + if ( display ) { + return display; + } + + temp = doc.body.appendChild( doc.createElement( nodeName ) ); + display = jQuery.css( temp, "display" ); + + temp.parentNode.removeChild( temp ); + + if ( display === "none" ) { + display = "block"; + } + defaultDisplayMap[ nodeName ] = display; + + return display; +} + +function showHide( elements, show ) { + var display, elem, + values = [], + index = 0, + length = elements.length; + + // Determine new display value for elements that need to change + for ( ; index < length; index++ ) { + elem = elements[ index ]; + if ( !elem.style ) { + continue; + } + + display = elem.style.display; + if ( show ) { + + // Since we force visibility upon cascade-hidden elements, an immediate (and slow) + // check is required in this first loop unless we have a nonempty display value (either + // inline or about-to-be-restored) + if ( display === "none" ) { + values[ index ] = dataPriv.get( elem, "display" ) || null; + if ( !values[ index ] ) { + elem.style.display = ""; + } + } + if ( elem.style.display === "" && isHiddenWithinTree( elem ) ) { + values[ index ] = getDefaultDisplay( elem ); + } + } else { + if ( display !== "none" ) { + values[ index ] = "none"; + + // Remember what we're overwriting + dataPriv.set( elem, "display", display ); + } + } + } + + // Set the display of the elements in a second loop to avoid constant reflow + for ( index = 0; index < length; index++ ) { + if ( values[ index ] != null ) { + elements[ index ].style.display = values[ index ]; + } + } + + return elements; +} + +jQuery.fn.extend( { + show: function() { + return showHide( this, true ); + }, + hide: function() { + return showHide( this ); + }, + toggle: function( state ) { + if ( typeof state === "boolean" ) { + return state ? this.show() : this.hide(); + } + + return this.each( function() { + if ( isHiddenWithinTree( this ) ) { + jQuery( this ).show(); + } else { + jQuery( this ).hide(); + } + } ); + } +} ); +var rcheckableType = ( /^(?:checkbox|radio)$/i ); + +var rtagName = ( /<([a-z][^\/\0>\x20\t\r\n\f]*)/i ); + +var rscriptType = ( /^$|^module$|\/(?:java|ecma)script/i ); + + + +( function() { + var fragment = document.createDocumentFragment(), + div = fragment.appendChild( document.createElement( "div" ) ), + input = document.createElement( "input" ); + + // Support: Android 4.0 - 4.3 only + // Check state lost if the name is set (#11217) + // Support: Windows Web Apps (WWA) + // `name` and `type` must use .setAttribute for WWA (#14901) + input.setAttribute( "type", "radio" ); + input.setAttribute( "checked", "checked" ); + input.setAttribute( "name", "t" ); + + div.appendChild( input ); + + // Support: Android <=4.1 only + // Older WebKit doesn't clone checked state correctly in fragments + support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked; + + // Support: IE <=11 only + // Make sure textarea (and checkbox) defaultValue is properly cloned + div.innerHTML = ""; + support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; + + // Support: IE <=9 only + // IE <=9 replaces "; + support.option = !!div.lastChild; +} )(); + + +// We have to close these tags to support XHTML (#13200) +var wrapMap = { + + // XHTML parsers do not magically insert elements in the + // same way that tag soup parsers do. So we cannot shorten + // this by omitting or other required elements. + thead: [ 1, "", "
" ], + col: [ 2, "", "
" ], + tr: [ 2, "", "
" ], + td: [ 3, "", "
" ], + + _default: [ 0, "", "" ] +}; + +wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; +wrapMap.th = wrapMap.td; + +// Support: IE <=9 only +if ( !support.option ) { + wrapMap.optgroup = wrapMap.option = [ 1, "" ]; +} + + +function getAll( context, tag ) { + + // Support: IE <=9 - 11 only + // Use typeof to avoid zero-argument method invocation on host objects (#15151) + var ret; + + if ( typeof context.getElementsByTagName !== "undefined" ) { + ret = context.getElementsByTagName( tag || "*" ); + + } else if ( typeof context.querySelectorAll !== "undefined" ) { + ret = context.querySelectorAll( tag || "*" ); + + } else { + ret = []; + } + + if ( tag === undefined || tag && nodeName( context, tag ) ) { + return jQuery.merge( [ context ], ret ); + } + + return ret; +} + + +// Mark scripts as having already been evaluated +function setGlobalEval( elems, refElements ) { + var i = 0, + l = elems.length; + + for ( ; i < l; i++ ) { + dataPriv.set( + elems[ i ], + "globalEval", + !refElements || dataPriv.get( refElements[ i ], "globalEval" ) + ); + } +} + + +var rhtml = /<|&#?\w+;/; + +function buildFragment( elems, context, scripts, selection, ignored ) { + var elem, tmp, tag, wrap, attached, j, + fragment = context.createDocumentFragment(), + nodes = [], + i = 0, + l = elems.length; + + for ( ; i < l; i++ ) { + elem = elems[ i ]; + + if ( elem || elem === 0 ) { + + // Add nodes directly + if ( toType( elem ) === "object" ) { + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem ); + + // Convert non-html into a text node + } else if ( !rhtml.test( elem ) ) { + nodes.push( context.createTextNode( elem ) ); + + // Convert html into DOM nodes + } else { + tmp = tmp || fragment.appendChild( context.createElement( "div" ) ); + + // Deserialize a standard representation + tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase(); + wrap = wrapMap[ tag ] || wrapMap._default; + tmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ]; + + // Descend through wrappers to the right content + j = wrap[ 0 ]; + while ( j-- ) { + tmp = tmp.lastChild; + } + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( nodes, tmp.childNodes ); + + // Remember the top-level container + tmp = fragment.firstChild; + + // Ensure the created nodes are orphaned (#12392) + tmp.textContent = ""; + } + } + } + + // Remove wrapper from fragment + fragment.textContent = ""; + + i = 0; + while ( ( elem = nodes[ i++ ] ) ) { + + // Skip elements already in the context collection (trac-4087) + if ( selection && jQuery.inArray( elem, selection ) > -1 ) { + if ( ignored ) { + ignored.push( elem ); + } + continue; + } + + attached = isAttached( elem ); + + // Append to fragment + tmp = getAll( fragment.appendChild( elem ), "script" ); + + // Preserve script evaluation history + if ( attached ) { + setGlobalEval( tmp ); + } + + // Capture executables + if ( scripts ) { + j = 0; + while ( ( elem = tmp[ j++ ] ) ) { + if ( rscriptType.test( elem.type || "" ) ) { + scripts.push( elem ); + } + } + } + } + + return fragment; +} + + +var rtypenamespace = /^([^.]*)(?:\.(.+)|)/; + +function returnTrue() { + return true; +} + +function returnFalse() { + return false; +} + +// Support: IE <=9 - 11+ +// focus() and blur() are asynchronous, except when they are no-op. +// So expect focus to be synchronous when the element is already active, +// and blur to be synchronous when the element is not already active. +// (focus and blur are always synchronous in other supported browsers, +// this just defines when we can count on it). +function expectSync( elem, type ) { + return ( elem === safeActiveElement() ) === ( type === "focus" ); +} + +// Support: IE <=9 only +// Accessing document.activeElement can throw unexpectedly +// https://bugs.jquery.com/ticket/13393 +function safeActiveElement() { + try { + return document.activeElement; + } catch ( err ) { } +} + +function on( elem, types, selector, data, fn, one ) { + var origFn, type; + + // Types can be a map of types/handlers + if ( typeof types === "object" ) { + + // ( types-Object, selector, data ) + if ( typeof selector !== "string" ) { + + // ( types-Object, data ) + data = data || selector; + selector = undefined; + } + for ( type in types ) { + on( elem, type, selector, data, types[ type ], one ); + } + return elem; + } + + if ( data == null && fn == null ) { + + // ( types, fn ) + fn = selector; + data = selector = undefined; + } else if ( fn == null ) { + if ( typeof selector === "string" ) { + + // ( types, selector, fn ) + fn = data; + data = undefined; + } else { + + // ( types, data, fn ) + fn = data; + data = selector; + selector = undefined; + } + } + if ( fn === false ) { + fn = returnFalse; + } else if ( !fn ) { + return elem; + } + + if ( one === 1 ) { + origFn = fn; + fn = function( event ) { + + // Can use an empty set, since event contains the info + jQuery().off( event ); + return origFn.apply( this, arguments ); + }; + + // Use same guid so caller can remove using origFn + fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); + } + return elem.each( function() { + jQuery.event.add( this, types, fn, data, selector ); + } ); +} + +/* + * Helper functions for managing events -- not part of the public interface. + * Props to Dean Edwards' addEvent library for many of the ideas. + */ +jQuery.event = { + + global: {}, + + add: function( elem, types, handler, data, selector ) { + + var handleObjIn, eventHandle, tmp, + events, t, handleObj, + special, handlers, type, namespaces, origType, + elemData = dataPriv.get( elem ); + + // Only attach events to objects that accept data + if ( !acceptData( elem ) ) { + return; + } + + // Caller can pass in an object of custom data in lieu of the handler + if ( handler.handler ) { + handleObjIn = handler; + handler = handleObjIn.handler; + selector = handleObjIn.selector; + } + + // Ensure that invalid selectors throw exceptions at attach time + // Evaluate against documentElement in case elem is a non-element node (e.g., document) + if ( selector ) { + jQuery.find.matchesSelector( documentElement, selector ); + } + + // Make sure that the handler has a unique ID, used to find/remove it later + if ( !handler.guid ) { + handler.guid = jQuery.guid++; + } + + // Init the element's event structure and main handler, if this is the first + if ( !( events = elemData.events ) ) { + events = elemData.events = Object.create( null ); + } + if ( !( eventHandle = elemData.handle ) ) { + eventHandle = elemData.handle = function( e ) { + + // Discard the second event of a jQuery.event.trigger() and + // when an event is called after a page has unloaded + return typeof jQuery !== "undefined" && jQuery.event.triggered !== e.type ? + jQuery.event.dispatch.apply( elem, arguments ) : undefined; + }; + } + + // Handle multiple events separated by a space + types = ( types || "" ).match( rnothtmlwhite ) || [ "" ]; + t = types.length; + while ( t-- ) { + tmp = rtypenamespace.exec( types[ t ] ) || []; + type = origType = tmp[ 1 ]; + namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); + + // There *must* be a type, no attaching namespace-only handlers + if ( !type ) { + continue; + } + + // If event changes its type, use the special event handlers for the changed type + special = jQuery.event.special[ type ] || {}; + + // If selector defined, determine special event api type, otherwise given type + type = ( selector ? special.delegateType : special.bindType ) || type; + + // Update special based on newly reset type + special = jQuery.event.special[ type ] || {}; + + // handleObj is passed to all event handlers + handleObj = jQuery.extend( { + type: type, + origType: origType, + data: data, + handler: handler, + guid: handler.guid, + selector: selector, + needsContext: selector && jQuery.expr.match.needsContext.test( selector ), + namespace: namespaces.join( "." ) + }, handleObjIn ); + + // Init the event handler queue if we're the first + if ( !( handlers = events[ type ] ) ) { + handlers = events[ type ] = []; + handlers.delegateCount = 0; + + // Only use addEventListener if the special events handler returns false + if ( !special.setup || + special.setup.call( elem, data, namespaces, eventHandle ) === false ) { + + if ( elem.addEventListener ) { + elem.addEventListener( type, eventHandle ); + } + } + } + + if ( special.add ) { + special.add.call( elem, handleObj ); + + if ( !handleObj.handler.guid ) { + handleObj.handler.guid = handler.guid; + } + } + + // Add to the element's handler list, delegates in front + if ( selector ) { + handlers.splice( handlers.delegateCount++, 0, handleObj ); + } else { + handlers.push( handleObj ); + } + + // Keep track of which events have ever been used, for event optimization + jQuery.event.global[ type ] = true; + } + + }, + + // Detach an event or set of events from an element + remove: function( elem, types, handler, selector, mappedTypes ) { + + var j, origCount, tmp, + events, t, handleObj, + special, handlers, type, namespaces, origType, + elemData = dataPriv.hasData( elem ) && dataPriv.get( elem ); + + if ( !elemData || !( events = elemData.events ) ) { + return; + } + + // Once for each type.namespace in types; type may be omitted + types = ( types || "" ).match( rnothtmlwhite ) || [ "" ]; + t = types.length; + while ( t-- ) { + tmp = rtypenamespace.exec( types[ t ] ) || []; + type = origType = tmp[ 1 ]; + namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); + + // Unbind all events (on this namespace, if provided) for the element + if ( !type ) { + for ( type in events ) { + jQuery.event.remove( elem, type + types[ t ], handler, selector, true ); + } + continue; + } + + special = jQuery.event.special[ type ] || {}; + type = ( selector ? special.delegateType : special.bindType ) || type; + handlers = events[ type ] || []; + tmp = tmp[ 2 ] && + new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ); + + // Remove matching events + origCount = j = handlers.length; + while ( j-- ) { + handleObj = handlers[ j ]; + + if ( ( mappedTypes || origType === handleObj.origType ) && + ( !handler || handler.guid === handleObj.guid ) && + ( !tmp || tmp.test( handleObj.namespace ) ) && + ( !selector || selector === handleObj.selector || + selector === "**" && handleObj.selector ) ) { + handlers.splice( j, 1 ); + + if ( handleObj.selector ) { + handlers.delegateCount--; + } + if ( special.remove ) { + special.remove.call( elem, handleObj ); + } + } + } + + // Remove generic event handler if we removed something and no more handlers exist + // (avoids potential for endless recursion during removal of special event handlers) + if ( origCount && !handlers.length ) { + if ( !special.teardown || + special.teardown.call( elem, namespaces, elemData.handle ) === false ) { + + jQuery.removeEvent( elem, type, elemData.handle ); + } + + delete events[ type ]; + } + } + + // Remove data and the expando if it's no longer used + if ( jQuery.isEmptyObject( events ) ) { + dataPriv.remove( elem, "handle events" ); + } + }, + + dispatch: function( nativeEvent ) { + + var i, j, ret, matched, handleObj, handlerQueue, + args = new Array( arguments.length ), + + // Make a writable jQuery.Event from the native event object + event = jQuery.event.fix( nativeEvent ), + + handlers = ( + dataPriv.get( this, "events" ) || Object.create( null ) + )[ event.type ] || [], + special = jQuery.event.special[ event.type ] || {}; + + // Use the fix-ed jQuery.Event rather than the (read-only) native event + args[ 0 ] = event; + + for ( i = 1; i < arguments.length; i++ ) { + args[ i ] = arguments[ i ]; + } + + event.delegateTarget = this; + + // Call the preDispatch hook for the mapped type, and let it bail if desired + if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { + return; + } + + // Determine handlers + handlerQueue = jQuery.event.handlers.call( this, event, handlers ); + + // Run delegates first; they may want to stop propagation beneath us + i = 0; + while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) { + event.currentTarget = matched.elem; + + j = 0; + while ( ( handleObj = matched.handlers[ j++ ] ) && + !event.isImmediatePropagationStopped() ) { + + // If the event is namespaced, then each handler is only invoked if it is + // specially universal or its namespaces are a superset of the event's. + if ( !event.rnamespace || handleObj.namespace === false || + event.rnamespace.test( handleObj.namespace ) ) { + + event.handleObj = handleObj; + event.data = handleObj.data; + + ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle || + handleObj.handler ).apply( matched.elem, args ); + + if ( ret !== undefined ) { + if ( ( event.result = ret ) === false ) { + event.preventDefault(); + event.stopPropagation(); + } + } + } + } + } + + // Call the postDispatch hook for the mapped type + if ( special.postDispatch ) { + special.postDispatch.call( this, event ); + } + + return event.result; + }, + + handlers: function( event, handlers ) { + var i, handleObj, sel, matchedHandlers, matchedSelectors, + handlerQueue = [], + delegateCount = handlers.delegateCount, + cur = event.target; + + // Find delegate handlers + if ( delegateCount && + + // Support: IE <=9 + // Black-hole SVG instance trees (trac-13180) + cur.nodeType && + + // Support: Firefox <=42 + // Suppress spec-violating clicks indicating a non-primary pointer button (trac-3861) + // https://www.w3.org/TR/DOM-Level-3-Events/#event-type-click + // Support: IE 11 only + // ...but not arrow key "clicks" of radio inputs, which can have `button` -1 (gh-2343) + !( event.type === "click" && event.button >= 1 ) ) { + + for ( ; cur !== this; cur = cur.parentNode || this ) { + + // Don't check non-elements (#13208) + // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764) + if ( cur.nodeType === 1 && !( event.type === "click" && cur.disabled === true ) ) { + matchedHandlers = []; + matchedSelectors = {}; + for ( i = 0; i < delegateCount; i++ ) { + handleObj = handlers[ i ]; + + // Don't conflict with Object.prototype properties (#13203) + sel = handleObj.selector + " "; + + if ( matchedSelectors[ sel ] === undefined ) { + matchedSelectors[ sel ] = handleObj.needsContext ? + jQuery( sel, this ).index( cur ) > -1 : + jQuery.find( sel, this, null, [ cur ] ).length; + } + if ( matchedSelectors[ sel ] ) { + matchedHandlers.push( handleObj ); + } + } + if ( matchedHandlers.length ) { + handlerQueue.push( { elem: cur, handlers: matchedHandlers } ); + } + } + } + } + + // Add the remaining (directly-bound) handlers + cur = this; + if ( delegateCount < handlers.length ) { + handlerQueue.push( { elem: cur, handlers: handlers.slice( delegateCount ) } ); + } + + return handlerQueue; + }, + + addProp: function( name, hook ) { + Object.defineProperty( jQuery.Event.prototype, name, { + enumerable: true, + configurable: true, + + get: isFunction( hook ) ? + function() { + if ( this.originalEvent ) { + return hook( this.originalEvent ); + } + } : + function() { + if ( this.originalEvent ) { + return this.originalEvent[ name ]; + } + }, + + set: function( value ) { + Object.defineProperty( this, name, { + enumerable: true, + configurable: true, + writable: true, + value: value + } ); + } + } ); + }, + + fix: function( originalEvent ) { + return originalEvent[ jQuery.expando ] ? + originalEvent : + new jQuery.Event( originalEvent ); + }, + + special: { + load: { + + // Prevent triggered image.load events from bubbling to window.load + noBubble: true + }, + click: { + + // Utilize native event to ensure correct state for checkable inputs + setup: function( data ) { + + // For mutual compressibility with _default, replace `this` access with a local var. + // `|| data` is dead code meant only to preserve the variable through minification. + var el = this || data; + + // Claim the first handler + if ( rcheckableType.test( el.type ) && + el.click && nodeName( el, "input" ) ) { + + // dataPriv.set( el, "click", ... ) + leverageNative( el, "click", returnTrue ); + } + + // Return false to allow normal processing in the caller + return false; + }, + trigger: function( data ) { + + // For mutual compressibility with _default, replace `this` access with a local var. + // `|| data` is dead code meant only to preserve the variable through minification. + var el = this || data; + + // Force setup before triggering a click + if ( rcheckableType.test( el.type ) && + el.click && nodeName( el, "input" ) ) { + + leverageNative( el, "click" ); + } + + // Return non-false to allow normal event-path propagation + return true; + }, + + // For cross-browser consistency, suppress native .click() on links + // Also prevent it if we're currently inside a leveraged native-event stack + _default: function( event ) { + var target = event.target; + return rcheckableType.test( target.type ) && + target.click && nodeName( target, "input" ) && + dataPriv.get( target, "click" ) || + nodeName( target, "a" ); + } + }, + + beforeunload: { + postDispatch: function( event ) { + + // Support: Firefox 20+ + // Firefox doesn't alert if the returnValue field is not set. + if ( event.result !== undefined && event.originalEvent ) { + event.originalEvent.returnValue = event.result; + } + } + } + } +}; + +// Ensure the presence of an event listener that handles manually-triggered +// synthetic events by interrupting progress until reinvoked in response to +// *native* events that it fires directly, ensuring that state changes have +// already occurred before other listeners are invoked. +function leverageNative( el, type, expectSync ) { + + // Missing expectSync indicates a trigger call, which must force setup through jQuery.event.add + if ( !expectSync ) { + if ( dataPriv.get( el, type ) === undefined ) { + jQuery.event.add( el, type, returnTrue ); + } + return; + } + + // Register the controller as a special universal handler for all event namespaces + dataPriv.set( el, type, false ); + jQuery.event.add( el, type, { + namespace: false, + handler: function( event ) { + var notAsync, result, + saved = dataPriv.get( this, type ); + + if ( ( event.isTrigger & 1 ) && this[ type ] ) { + + // Interrupt processing of the outer synthetic .trigger()ed event + // Saved data should be false in such cases, but might be a leftover capture object + // from an async native handler (gh-4350) + if ( !saved.length ) { + + // Store arguments for use when handling the inner native event + // There will always be at least one argument (an event object), so this array + // will not be confused with a leftover capture object. + saved = slice.call( arguments ); + dataPriv.set( this, type, saved ); + + // Trigger the native event and capture its result + // Support: IE <=9 - 11+ + // focus() and blur() are asynchronous + notAsync = expectSync( this, type ); + this[ type ](); + result = dataPriv.get( this, type ); + if ( saved !== result || notAsync ) { + dataPriv.set( this, type, false ); + } else { + result = {}; + } + if ( saved !== result ) { + + // Cancel the outer synthetic event + event.stopImmediatePropagation(); + event.preventDefault(); + + // Support: Chrome 86+ + // In Chrome, if an element having a focusout handler is blurred by + // clicking outside of it, it invokes the handler synchronously. If + // that handler calls `.remove()` on the element, the data is cleared, + // leaving `result` undefined. We need to guard against this. + return result && result.value; + } + + // If this is an inner synthetic event for an event with a bubbling surrogate + // (focus or blur), assume that the surrogate already propagated from triggering the + // native event and prevent that from happening again here. + // This technically gets the ordering wrong w.r.t. to `.trigger()` (in which the + // bubbling surrogate propagates *after* the non-bubbling base), but that seems + // less bad than duplication. + } else if ( ( jQuery.event.special[ type ] || {} ).delegateType ) { + event.stopPropagation(); + } + + // If this is a native event triggered above, everything is now in order + // Fire an inner synthetic event with the original arguments + } else if ( saved.length ) { + + // ...and capture the result + dataPriv.set( this, type, { + value: jQuery.event.trigger( + + // Support: IE <=9 - 11+ + // Extend with the prototype to reset the above stopImmediatePropagation() + jQuery.extend( saved[ 0 ], jQuery.Event.prototype ), + saved.slice( 1 ), + this + ) + } ); + + // Abort handling of the native event + event.stopImmediatePropagation(); + } + } + } ); +} + +jQuery.removeEvent = function( elem, type, handle ) { + + // This "if" is needed for plain objects + if ( elem.removeEventListener ) { + elem.removeEventListener( type, handle ); + } +}; + +jQuery.Event = function( src, props ) { + + // Allow instantiation without the 'new' keyword + if ( !( this instanceof jQuery.Event ) ) { + return new jQuery.Event( src, props ); + } + + // Event object + if ( src && src.type ) { + this.originalEvent = src; + this.type = src.type; + + // Events bubbling up the document may have been marked as prevented + // by a handler lower down the tree; reflect the correct value. + this.isDefaultPrevented = src.defaultPrevented || + src.defaultPrevented === undefined && + + // Support: Android <=2.3 only + src.returnValue === false ? + returnTrue : + returnFalse; + + // Create target properties + // Support: Safari <=6 - 7 only + // Target should not be a text node (#504, #13143) + this.target = ( src.target && src.target.nodeType === 3 ) ? + src.target.parentNode : + src.target; + + this.currentTarget = src.currentTarget; + this.relatedTarget = src.relatedTarget; + + // Event type + } else { + this.type = src; + } + + // Put explicitly provided properties onto the event object + if ( props ) { + jQuery.extend( this, props ); + } + + // Create a timestamp if incoming event doesn't have one + this.timeStamp = src && src.timeStamp || Date.now(); + + // Mark it as fixed + this[ jQuery.expando ] = true; +}; + +// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding +// https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html +jQuery.Event.prototype = { + constructor: jQuery.Event, + isDefaultPrevented: returnFalse, + isPropagationStopped: returnFalse, + isImmediatePropagationStopped: returnFalse, + isSimulated: false, + + preventDefault: function() { + var e = this.originalEvent; + + this.isDefaultPrevented = returnTrue; + + if ( e && !this.isSimulated ) { + e.preventDefault(); + } + }, + stopPropagation: function() { + var e = this.originalEvent; + + this.isPropagationStopped = returnTrue; + + if ( e && !this.isSimulated ) { + e.stopPropagation(); + } + }, + stopImmediatePropagation: function() { + var e = this.originalEvent; + + this.isImmediatePropagationStopped = returnTrue; + + if ( e && !this.isSimulated ) { + e.stopImmediatePropagation(); + } + + this.stopPropagation(); + } +}; + +// Includes all common event props including KeyEvent and MouseEvent specific props +jQuery.each( { + altKey: true, + bubbles: true, + cancelable: true, + changedTouches: true, + ctrlKey: true, + detail: true, + eventPhase: true, + metaKey: true, + pageX: true, + pageY: true, + shiftKey: true, + view: true, + "char": true, + code: true, + charCode: true, + key: true, + keyCode: true, + button: true, + buttons: true, + clientX: true, + clientY: true, + offsetX: true, + offsetY: true, + pointerId: true, + pointerType: true, + screenX: true, + screenY: true, + targetTouches: true, + toElement: true, + touches: true, + which: true +}, jQuery.event.addProp ); + +jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateType ) { + jQuery.event.special[ type ] = { + + // Utilize native event if possible so blur/focus sequence is correct + setup: function() { + + // Claim the first handler + // dataPriv.set( this, "focus", ... ) + // dataPriv.set( this, "blur", ... ) + leverageNative( this, type, expectSync ); + + // Return false to allow normal processing in the caller + return false; + }, + trigger: function() { + + // Force setup before trigger + leverageNative( this, type ); + + // Return non-false to allow normal event-path propagation + return true; + }, + + // Suppress native focus or blur as it's already being fired + // in leverageNative. + _default: function() { + return true; + }, + + delegateType: delegateType + }; +} ); + +// Create mouseenter/leave events using mouseover/out and event-time checks +// so that event delegation works in jQuery. +// Do the same for pointerenter/pointerleave and pointerover/pointerout +// +// Support: Safari 7 only +// Safari sends mouseenter too often; see: +// https://bugs.chromium.org/p/chromium/issues/detail?id=470258 +// for the description of the bug (it existed in older Chrome versions as well). +jQuery.each( { + mouseenter: "mouseover", + mouseleave: "mouseout", + pointerenter: "pointerover", + pointerleave: "pointerout" +}, function( orig, fix ) { + jQuery.event.special[ orig ] = { + delegateType: fix, + bindType: fix, + + handle: function( event ) { + var ret, + target = this, + related = event.relatedTarget, + handleObj = event.handleObj; + + // For mouseenter/leave call the handler if related is outside the target. + // NB: No relatedTarget if the mouse left/entered the browser window + if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) { + event.type = handleObj.origType; + ret = handleObj.handler.apply( this, arguments ); + event.type = fix; + } + return ret; + } + }; +} ); + +jQuery.fn.extend( { + + on: function( types, selector, data, fn ) { + return on( this, types, selector, data, fn ); + }, + one: function( types, selector, data, fn ) { + return on( this, types, selector, data, fn, 1 ); + }, + off: function( types, selector, fn ) { + var handleObj, type; + if ( types && types.preventDefault && types.handleObj ) { + + // ( event ) dispatched jQuery.Event + handleObj = types.handleObj; + jQuery( types.delegateTarget ).off( + handleObj.namespace ? + handleObj.origType + "." + handleObj.namespace : + handleObj.origType, + handleObj.selector, + handleObj.handler + ); + return this; + } + if ( typeof types === "object" ) { + + // ( types-object [, selector] ) + for ( type in types ) { + this.off( type, selector, types[ type ] ); + } + return this; + } + if ( selector === false || typeof selector === "function" ) { + + // ( types [, fn] ) + fn = selector; + selector = undefined; + } + if ( fn === false ) { + fn = returnFalse; + } + return this.each( function() { + jQuery.event.remove( this, types, fn, selector ); + } ); + } +} ); + + +var + + // Support: IE <=10 - 11, Edge 12 - 13 only + // In IE/Edge using regex groups here causes severe slowdowns. + // See https://connect.microsoft.com/IE/feedback/details/1736512/ + rnoInnerhtml = /\s*$/g; + +// Prefer a tbody over its parent table for containing new rows +function manipulationTarget( elem, content ) { + if ( nodeName( elem, "table" ) && + nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ) { + + return jQuery( elem ).children( "tbody" )[ 0 ] || elem; + } + + return elem; +} + +// Replace/restore the type attribute of script elements for safe DOM manipulation +function disableScript( elem ) { + elem.type = ( elem.getAttribute( "type" ) !== null ) + "/" + elem.type; + return elem; +} +function restoreScript( elem ) { + if ( ( elem.type || "" ).slice( 0, 5 ) === "true/" ) { + elem.type = elem.type.slice( 5 ); + } else { + elem.removeAttribute( "type" ); + } + + return elem; +} + +function cloneCopyEvent( src, dest ) { + var i, l, type, pdataOld, udataOld, udataCur, events; + + if ( dest.nodeType !== 1 ) { + return; + } + + // 1. Copy private data: events, handlers, etc. + if ( dataPriv.hasData( src ) ) { + pdataOld = dataPriv.get( src ); + events = pdataOld.events; + + if ( events ) { + dataPriv.remove( dest, "handle events" ); + + for ( type in events ) { + for ( i = 0, l = events[ type ].length; i < l; i++ ) { + jQuery.event.add( dest, type, events[ type ][ i ] ); + } + } + } + } + + // 2. Copy user data + if ( dataUser.hasData( src ) ) { + udataOld = dataUser.access( src ); + udataCur = jQuery.extend( {}, udataOld ); + + dataUser.set( dest, udataCur ); + } +} + +// Fix IE bugs, see support tests +function fixInput( src, dest ) { + var nodeName = dest.nodeName.toLowerCase(); + + // Fails to persist the checked state of a cloned checkbox or radio button. + if ( nodeName === "input" && rcheckableType.test( src.type ) ) { + dest.checked = src.checked; + + // Fails to return the selected option to the default selected state when cloning options + } else if ( nodeName === "input" || nodeName === "textarea" ) { + dest.defaultValue = src.defaultValue; + } +} + +function domManip( collection, args, callback, ignored ) { + + // Flatten any nested arrays + args = flat( args ); + + var fragment, first, scripts, hasScripts, node, doc, + i = 0, + l = collection.length, + iNoClone = l - 1, + value = args[ 0 ], + valueIsFunction = isFunction( value ); + + // We can't cloneNode fragments that contain checked, in WebKit + if ( valueIsFunction || + ( l > 1 && typeof value === "string" && + !support.checkClone && rchecked.test( value ) ) ) { + return collection.each( function( index ) { + var self = collection.eq( index ); + if ( valueIsFunction ) { + args[ 0 ] = value.call( this, index, self.html() ); + } + domManip( self, args, callback, ignored ); + } ); + } + + if ( l ) { + fragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored ); + first = fragment.firstChild; + + if ( fragment.childNodes.length === 1 ) { + fragment = first; + } + + // Require either new content or an interest in ignored elements to invoke the callback + if ( first || ignored ) { + scripts = jQuery.map( getAll( fragment, "script" ), disableScript ); + hasScripts = scripts.length; + + // Use the original fragment for the last item + // instead of the first because it can end up + // being emptied incorrectly in certain situations (#8070). + for ( ; i < l; i++ ) { + node = fragment; + + if ( i !== iNoClone ) { + node = jQuery.clone( node, true, true ); + + // Keep references to cloned scripts for later restoration + if ( hasScripts ) { + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( scripts, getAll( node, "script" ) ); + } + } + + callback.call( collection[ i ], node, i ); + } + + if ( hasScripts ) { + doc = scripts[ scripts.length - 1 ].ownerDocument; + + // Reenable scripts + jQuery.map( scripts, restoreScript ); + + // Evaluate executable scripts on first document insertion + for ( i = 0; i < hasScripts; i++ ) { + node = scripts[ i ]; + if ( rscriptType.test( node.type || "" ) && + !dataPriv.access( node, "globalEval" ) && + jQuery.contains( doc, node ) ) { + + if ( node.src && ( node.type || "" ).toLowerCase() !== "module" ) { + + // Optional AJAX dependency, but won't run scripts if not present + if ( jQuery._evalUrl && !node.noModule ) { + jQuery._evalUrl( node.src, { + nonce: node.nonce || node.getAttribute( "nonce" ) + }, doc ); + } + } else { + DOMEval( node.textContent.replace( rcleanScript, "" ), node, doc ); + } + } + } + } + } + } + + return collection; +} + +function remove( elem, selector, keepData ) { + var node, + nodes = selector ? jQuery.filter( selector, elem ) : elem, + i = 0; + + for ( ; ( node = nodes[ i ] ) != null; i++ ) { + if ( !keepData && node.nodeType === 1 ) { + jQuery.cleanData( getAll( node ) ); + } + + if ( node.parentNode ) { + if ( keepData && isAttached( node ) ) { + setGlobalEval( getAll( node, "script" ) ); + } + node.parentNode.removeChild( node ); + } + } + + return elem; +} + +jQuery.extend( { + htmlPrefilter: function( html ) { + return html; + }, + + clone: function( elem, dataAndEvents, deepDataAndEvents ) { + var i, l, srcElements, destElements, + clone = elem.cloneNode( true ), + inPage = isAttached( elem ); + + // Fix IE cloning issues + if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) && + !jQuery.isXMLDoc( elem ) ) { + + // We eschew Sizzle here for performance reasons: https://jsperf.com/getall-vs-sizzle/2 + destElements = getAll( clone ); + srcElements = getAll( elem ); + + for ( i = 0, l = srcElements.length; i < l; i++ ) { + fixInput( srcElements[ i ], destElements[ i ] ); + } + } + + // Copy the events from the original to the clone + if ( dataAndEvents ) { + if ( deepDataAndEvents ) { + srcElements = srcElements || getAll( elem ); + destElements = destElements || getAll( clone ); + + for ( i = 0, l = srcElements.length; i < l; i++ ) { + cloneCopyEvent( srcElements[ i ], destElements[ i ] ); + } + } else { + cloneCopyEvent( elem, clone ); + } + } + + // Preserve script evaluation history + destElements = getAll( clone, "script" ); + if ( destElements.length > 0 ) { + setGlobalEval( destElements, !inPage && getAll( elem, "script" ) ); + } + + // Return the cloned set + return clone; + }, + + cleanData: function( elems ) { + var data, elem, type, + special = jQuery.event.special, + i = 0; + + for ( ; ( elem = elems[ i ] ) !== undefined; i++ ) { + if ( acceptData( elem ) ) { + if ( ( data = elem[ dataPriv.expando ] ) ) { + if ( data.events ) { + for ( type in data.events ) { + if ( special[ type ] ) { + jQuery.event.remove( elem, type ); + + // This is a shortcut to avoid jQuery.event.remove's overhead + } else { + jQuery.removeEvent( elem, type, data.handle ); + } + } + } + + // Support: Chrome <=35 - 45+ + // Assign undefined instead of using delete, see Data#remove + elem[ dataPriv.expando ] = undefined; + } + if ( elem[ dataUser.expando ] ) { + + // Support: Chrome <=35 - 45+ + // Assign undefined instead of using delete, see Data#remove + elem[ dataUser.expando ] = undefined; + } + } + } + } +} ); + +jQuery.fn.extend( { + detach: function( selector ) { + return remove( this, selector, true ); + }, + + remove: function( selector ) { + return remove( this, selector ); + }, + + text: function( value ) { + return access( this, function( value ) { + return value === undefined ? + jQuery.text( this ) : + this.empty().each( function() { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + this.textContent = value; + } + } ); + }, null, value, arguments.length ); + }, + + append: function() { + return domManip( this, arguments, function( elem ) { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + var target = manipulationTarget( this, elem ); + target.appendChild( elem ); + } + } ); + }, + + prepend: function() { + return domManip( this, arguments, function( elem ) { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + var target = manipulationTarget( this, elem ); + target.insertBefore( elem, target.firstChild ); + } + } ); + }, + + before: function() { + return domManip( this, arguments, function( elem ) { + if ( this.parentNode ) { + this.parentNode.insertBefore( elem, this ); + } + } ); + }, + + after: function() { + return domManip( this, arguments, function( elem ) { + if ( this.parentNode ) { + this.parentNode.insertBefore( elem, this.nextSibling ); + } + } ); + }, + + empty: function() { + var elem, + i = 0; + + for ( ; ( elem = this[ i ] ) != null; i++ ) { + if ( elem.nodeType === 1 ) { + + // Prevent memory leaks + jQuery.cleanData( getAll( elem, false ) ); + + // Remove any remaining nodes + elem.textContent = ""; + } + } + + return this; + }, + + clone: function( dataAndEvents, deepDataAndEvents ) { + dataAndEvents = dataAndEvents == null ? false : dataAndEvents; + deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents; + + return this.map( function() { + return jQuery.clone( this, dataAndEvents, deepDataAndEvents ); + } ); + }, + + html: function( value ) { + return access( this, function( value ) { + var elem = this[ 0 ] || {}, + i = 0, + l = this.length; + + if ( value === undefined && elem.nodeType === 1 ) { + return elem.innerHTML; + } + + // See if we can take a shortcut and just use innerHTML + if ( typeof value === "string" && !rnoInnerhtml.test( value ) && + !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) { + + value = jQuery.htmlPrefilter( value ); + + try { + for ( ; i < l; i++ ) { + elem = this[ i ] || {}; + + // Remove element nodes and prevent memory leaks + if ( elem.nodeType === 1 ) { + jQuery.cleanData( getAll( elem, false ) ); + elem.innerHTML = value; + } + } + + elem = 0; + + // If using innerHTML throws an exception, use the fallback method + } catch ( e ) {} + } + + if ( elem ) { + this.empty().append( value ); + } + }, null, value, arguments.length ); + }, + + replaceWith: function() { + var ignored = []; + + // Make the changes, replacing each non-ignored context element with the new content + return domManip( this, arguments, function( elem ) { + var parent = this.parentNode; + + if ( jQuery.inArray( this, ignored ) < 0 ) { + jQuery.cleanData( getAll( this ) ); + if ( parent ) { + parent.replaceChild( elem, this ); + } + } + + // Force callback invocation + }, ignored ); + } +} ); + +jQuery.each( { + appendTo: "append", + prependTo: "prepend", + insertBefore: "before", + insertAfter: "after", + replaceAll: "replaceWith" +}, function( name, original ) { + jQuery.fn[ name ] = function( selector ) { + var elems, + ret = [], + insert = jQuery( selector ), + last = insert.length - 1, + i = 0; + + for ( ; i <= last; i++ ) { + elems = i === last ? this : this.clone( true ); + jQuery( insert[ i ] )[ original ]( elems ); + + // Support: Android <=4.0 only, PhantomJS 1 only + // .get() because push.apply(_, arraylike) throws on ancient WebKit + push.apply( ret, elems.get() ); + } + + return this.pushStack( ret ); + }; +} ); +var rnumnonpx = new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" ); + +var getStyles = function( elem ) { + + // Support: IE <=11 only, Firefox <=30 (#15098, #14150) + // IE throws on elements created in popups + // FF meanwhile throws on frame elements through "defaultView.getComputedStyle" + var view = elem.ownerDocument.defaultView; + + if ( !view || !view.opener ) { + view = window; + } + + return view.getComputedStyle( elem ); + }; + +var swap = function( elem, options, callback ) { + var ret, name, + old = {}; + + // Remember the old values, and insert the new ones + for ( name in options ) { + old[ name ] = elem.style[ name ]; + elem.style[ name ] = options[ name ]; + } + + ret = callback.call( elem ); + + // Revert the old values + for ( name in options ) { + elem.style[ name ] = old[ name ]; + } + + return ret; +}; + + +var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" ); + + + +( function() { + + // Executing both pixelPosition & boxSizingReliable tests require only one layout + // so they're executed at the same time to save the second computation. + function computeStyleTests() { + + // This is a singleton, we need to execute it only once + if ( !div ) { + return; + } + + container.style.cssText = "position:absolute;left:-11111px;width:60px;" + + "margin-top:1px;padding:0;border:0"; + div.style.cssText = + "position:relative;display:block;box-sizing:border-box;overflow:scroll;" + + "margin:auto;border:1px;padding:1px;" + + "width:60%;top:1%"; + documentElement.appendChild( container ).appendChild( div ); + + var divStyle = window.getComputedStyle( div ); + pixelPositionVal = divStyle.top !== "1%"; + + // Support: Android 4.0 - 4.3 only, Firefox <=3 - 44 + reliableMarginLeftVal = roundPixelMeasures( divStyle.marginLeft ) === 12; + + // Support: Android 4.0 - 4.3 only, Safari <=9.1 - 10.1, iOS <=7.0 - 9.3 + // Some styles come back with percentage values, even though they shouldn't + div.style.right = "60%"; + pixelBoxStylesVal = roundPixelMeasures( divStyle.right ) === 36; + + // Support: IE 9 - 11 only + // Detect misreporting of content dimensions for box-sizing:border-box elements + boxSizingReliableVal = roundPixelMeasures( divStyle.width ) === 36; + + // Support: IE 9 only + // Detect overflow:scroll screwiness (gh-3699) + // Support: Chrome <=64 + // Don't get tricked when zoom affects offsetWidth (gh-4029) + div.style.position = "absolute"; + scrollboxSizeVal = roundPixelMeasures( div.offsetWidth / 3 ) === 12; + + documentElement.removeChild( container ); + + // Nullify the div so it wouldn't be stored in the memory and + // it will also be a sign that checks already performed + div = null; + } + + function roundPixelMeasures( measure ) { + return Math.round( parseFloat( measure ) ); + } + + var pixelPositionVal, boxSizingReliableVal, scrollboxSizeVal, pixelBoxStylesVal, + reliableTrDimensionsVal, reliableMarginLeftVal, + container = document.createElement( "div" ), + div = document.createElement( "div" ); + + // Finish early in limited (non-browser) environments + if ( !div.style ) { + return; + } + + // Support: IE <=9 - 11 only + // Style of cloned element affects source element cloned (#8908) + div.style.backgroundClip = "content-box"; + div.cloneNode( true ).style.backgroundClip = ""; + support.clearCloneStyle = div.style.backgroundClip === "content-box"; + + jQuery.extend( support, { + boxSizingReliable: function() { + computeStyleTests(); + return boxSizingReliableVal; + }, + pixelBoxStyles: function() { + computeStyleTests(); + return pixelBoxStylesVal; + }, + pixelPosition: function() { + computeStyleTests(); + return pixelPositionVal; + }, + reliableMarginLeft: function() { + computeStyleTests(); + return reliableMarginLeftVal; + }, + scrollboxSize: function() { + computeStyleTests(); + return scrollboxSizeVal; + }, + + // Support: IE 9 - 11+, Edge 15 - 18+ + // IE/Edge misreport `getComputedStyle` of table rows with width/height + // set in CSS while `offset*` properties report correct values. + // Behavior in IE 9 is more subtle than in newer versions & it passes + // some versions of this test; make sure not to make it pass there! + // + // Support: Firefox 70+ + // Only Firefox includes border widths + // in computed dimensions. (gh-4529) + reliableTrDimensions: function() { + var table, tr, trChild, trStyle; + if ( reliableTrDimensionsVal == null ) { + table = document.createElement( "table" ); + tr = document.createElement( "tr" ); + trChild = document.createElement( "div" ); + + table.style.cssText = "position:absolute;left:-11111px;border-collapse:separate"; + tr.style.cssText = "border:1px solid"; + + // Support: Chrome 86+ + // Height set through cssText does not get applied. + // Computed height then comes back as 0. + tr.style.height = "1px"; + trChild.style.height = "9px"; + + // Support: Android 8 Chrome 86+ + // In our bodyBackground.html iframe, + // display for all div elements is set to "inline", + // which causes a problem only in Android 8 Chrome 86. + // Ensuring the div is display: block + // gets around this issue. + trChild.style.display = "block"; + + documentElement + .appendChild( table ) + .appendChild( tr ) + .appendChild( trChild ); + + trStyle = window.getComputedStyle( tr ); + reliableTrDimensionsVal = ( parseInt( trStyle.height, 10 ) + + parseInt( trStyle.borderTopWidth, 10 ) + + parseInt( trStyle.borderBottomWidth, 10 ) ) === tr.offsetHeight; + + documentElement.removeChild( table ); + } + return reliableTrDimensionsVal; + } + } ); +} )(); + + +function curCSS( elem, name, computed ) { + var width, minWidth, maxWidth, ret, + + // Support: Firefox 51+ + // Retrieving style before computed somehow + // fixes an issue with getting wrong values + // on detached elements + style = elem.style; + + computed = computed || getStyles( elem ); + + // getPropertyValue is needed for: + // .css('filter') (IE 9 only, #12537) + // .css('--customProperty) (#3144) + if ( computed ) { + ret = computed.getPropertyValue( name ) || computed[ name ]; + + if ( ret === "" && !isAttached( elem ) ) { + ret = jQuery.style( elem, name ); + } + + // A tribute to the "awesome hack by Dean Edwards" + // Android Browser returns percentage for some values, + // but width seems to be reliably pixels. + // This is against the CSSOM draft spec: + // https://drafts.csswg.org/cssom/#resolved-values + if ( !support.pixelBoxStyles() && rnumnonpx.test( ret ) && rboxStyle.test( name ) ) { + + // Remember the original values + width = style.width; + minWidth = style.minWidth; + maxWidth = style.maxWidth; + + // Put in the new values to get a computed value out + style.minWidth = style.maxWidth = style.width = ret; + ret = computed.width; + + // Revert the changed values + style.width = width; + style.minWidth = minWidth; + style.maxWidth = maxWidth; + } + } + + return ret !== undefined ? + + // Support: IE <=9 - 11 only + // IE returns zIndex value as an integer. + ret + "" : + ret; +} + + +function addGetHookIf( conditionFn, hookFn ) { + + // Define the hook, we'll check on the first run if it's really needed. + return { + get: function() { + if ( conditionFn() ) { + + // Hook not needed (or it's not possible to use it due + // to missing dependency), remove it. + delete this.get; + return; + } + + // Hook needed; redefine it so that the support test is not executed again. + return ( this.get = hookFn ).apply( this, arguments ); + } + }; +} + + +var cssPrefixes = [ "Webkit", "Moz", "ms" ], + emptyStyle = document.createElement( "div" ).style, + vendorProps = {}; + +// Return a vendor-prefixed property or undefined +function vendorPropName( name ) { + + // Check for vendor prefixed names + var capName = name[ 0 ].toUpperCase() + name.slice( 1 ), + i = cssPrefixes.length; + + while ( i-- ) { + name = cssPrefixes[ i ] + capName; + if ( name in emptyStyle ) { + return name; + } + } +} + +// Return a potentially-mapped jQuery.cssProps or vendor prefixed property +function finalPropName( name ) { + var final = jQuery.cssProps[ name ] || vendorProps[ name ]; + + if ( final ) { + return final; + } + if ( name in emptyStyle ) { + return name; + } + return vendorProps[ name ] = vendorPropName( name ) || name; +} + + +var + + // Swappable if display is none or starts with table + // except "table", "table-cell", or "table-caption" + // See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display + rdisplayswap = /^(none|table(?!-c[ea]).+)/, + rcustomProp = /^--/, + cssShow = { position: "absolute", visibility: "hidden", display: "block" }, + cssNormalTransform = { + letterSpacing: "0", + fontWeight: "400" + }; + +function setPositiveNumber( _elem, value, subtract ) { + + // Any relative (+/-) values have already been + // normalized at this point + var matches = rcssNum.exec( value ); + return matches ? + + // Guard against undefined "subtract", e.g., when used as in cssHooks + Math.max( 0, matches[ 2 ] - ( subtract || 0 ) ) + ( matches[ 3 ] || "px" ) : + value; +} + +function boxModelAdjustment( elem, dimension, box, isBorderBox, styles, computedVal ) { + var i = dimension === "width" ? 1 : 0, + extra = 0, + delta = 0; + + // Adjustment may not be necessary + if ( box === ( isBorderBox ? "border" : "content" ) ) { + return 0; + } + + for ( ; i < 4; i += 2 ) { + + // Both box models exclude margin + if ( box === "margin" ) { + delta += jQuery.css( elem, box + cssExpand[ i ], true, styles ); + } + + // If we get here with a content-box, we're seeking "padding" or "border" or "margin" + if ( !isBorderBox ) { + + // Add padding + delta += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); + + // For "border" or "margin", add border + if ( box !== "padding" ) { + delta += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + + // But still keep track of it otherwise + } else { + extra += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + } + + // If we get here with a border-box (content + padding + border), we're seeking "content" or + // "padding" or "margin" + } else { + + // For "content", subtract padding + if ( box === "content" ) { + delta -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); + } + + // For "content" or "padding", subtract border + if ( box !== "margin" ) { + delta -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + } + } + } + + // Account for positive content-box scroll gutter when requested by providing computedVal + if ( !isBorderBox && computedVal >= 0 ) { + + // offsetWidth/offsetHeight is a rounded sum of content, padding, scroll gutter, and border + // Assuming integer scroll gutter, subtract the rest and round down + delta += Math.max( 0, Math.ceil( + elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] - + computedVal - + delta - + extra - + 0.5 + + // If offsetWidth/offsetHeight is unknown, then we can't determine content-box scroll gutter + // Use an explicit zero to avoid NaN (gh-3964) + ) ) || 0; + } + + return delta; +} + +function getWidthOrHeight( elem, dimension, extra ) { + + // Start with computed style + var styles = getStyles( elem ), + + // To avoid forcing a reflow, only fetch boxSizing if we need it (gh-4322). + // Fake content-box until we know it's needed to know the true value. + boxSizingNeeded = !support.boxSizingReliable() || extra, + isBorderBox = boxSizingNeeded && + jQuery.css( elem, "boxSizing", false, styles ) === "border-box", + valueIsBorderBox = isBorderBox, + + val = curCSS( elem, dimension, styles ), + offsetProp = "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ); + + // Support: Firefox <=54 + // Return a confounding non-pixel value or feign ignorance, as appropriate. + if ( rnumnonpx.test( val ) ) { + if ( !extra ) { + return val; + } + val = "auto"; + } + + + // Support: IE 9 - 11 only + // Use offsetWidth/offsetHeight for when box sizing is unreliable. + // In those cases, the computed value can be trusted to be border-box. + if ( ( !support.boxSizingReliable() && isBorderBox || + + // Support: IE 10 - 11+, Edge 15 - 18+ + // IE/Edge misreport `getComputedStyle` of table rows with width/height + // set in CSS while `offset*` properties report correct values. + // Interestingly, in some cases IE 9 doesn't suffer from this issue. + !support.reliableTrDimensions() && nodeName( elem, "tr" ) || + + // Fall back to offsetWidth/offsetHeight when value is "auto" + // This happens for inline elements with no explicit setting (gh-3571) + val === "auto" || + + // Support: Android <=4.1 - 4.3 only + // Also use offsetWidth/offsetHeight for misreported inline dimensions (gh-3602) + !parseFloat( val ) && jQuery.css( elem, "display", false, styles ) === "inline" ) && + + // Make sure the element is visible & connected + elem.getClientRects().length ) { + + isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box"; + + // Where available, offsetWidth/offsetHeight approximate border box dimensions. + // Where not available (e.g., SVG), assume unreliable box-sizing and interpret the + // retrieved value as a content box dimension. + valueIsBorderBox = offsetProp in elem; + if ( valueIsBorderBox ) { + val = elem[ offsetProp ]; + } + } + + // Normalize "" and auto + val = parseFloat( val ) || 0; + + // Adjust for the element's box model + return ( val + + boxModelAdjustment( + elem, + dimension, + extra || ( isBorderBox ? "border" : "content" ), + valueIsBorderBox, + styles, + + // Provide the current computed size to request scroll gutter calculation (gh-3589) + val + ) + ) + "px"; +} + +jQuery.extend( { + + // Add in style property hooks for overriding the default + // behavior of getting and setting a style property + cssHooks: { + opacity: { + get: function( elem, computed ) { + if ( computed ) { + + // We should always get a number back from opacity + var ret = curCSS( elem, "opacity" ); + return ret === "" ? "1" : ret; + } + } + } + }, + + // Don't automatically add "px" to these possibly-unitless properties + cssNumber: { + "animationIterationCount": true, + "columnCount": true, + "fillOpacity": true, + "flexGrow": true, + "flexShrink": true, + "fontWeight": true, + "gridArea": true, + "gridColumn": true, + "gridColumnEnd": true, + "gridColumnStart": true, + "gridRow": true, + "gridRowEnd": true, + "gridRowStart": true, + "lineHeight": true, + "opacity": true, + "order": true, + "orphans": true, + "widows": true, + "zIndex": true, + "zoom": true + }, + + // Add in properties whose names you wish to fix before + // setting or getting the value + cssProps: {}, + + // Get and set the style property on a DOM Node + style: function( elem, name, value, extra ) { + + // Don't set styles on text and comment nodes + if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) { + return; + } + + // Make sure that we're working with the right name + var ret, type, hooks, + origName = camelCase( name ), + isCustomProp = rcustomProp.test( name ), + style = elem.style; + + // Make sure that we're working with the right name. We don't + // want to query the value if it is a CSS custom property + // since they are user-defined. + if ( !isCustomProp ) { + name = finalPropName( origName ); + } + + // Gets hook for the prefixed version, then unprefixed version + hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; + + // Check if we're setting a value + if ( value !== undefined ) { + type = typeof value; + + // Convert "+=" or "-=" to relative numbers (#7345) + if ( type === "string" && ( ret = rcssNum.exec( value ) ) && ret[ 1 ] ) { + value = adjustCSS( elem, name, ret ); + + // Fixes bug #9237 + type = "number"; + } + + // Make sure that null and NaN values aren't set (#7116) + if ( value == null || value !== value ) { + return; + } + + // If a number was passed in, add the unit (except for certain CSS properties) + // The isCustomProp check can be removed in jQuery 4.0 when we only auto-append + // "px" to a few hardcoded values. + if ( type === "number" && !isCustomProp ) { + value += ret && ret[ 3 ] || ( jQuery.cssNumber[ origName ] ? "" : "px" ); + } + + // background-* props affect original clone's values + if ( !support.clearCloneStyle && value === "" && name.indexOf( "background" ) === 0 ) { + style[ name ] = "inherit"; + } + + // If a hook was provided, use that value, otherwise just set the specified value + if ( !hooks || !( "set" in hooks ) || + ( value = hooks.set( elem, value, extra ) ) !== undefined ) { + + if ( isCustomProp ) { + style.setProperty( name, value ); + } else { + style[ name ] = value; + } + } + + } else { + + // If a hook was provided get the non-computed value from there + if ( hooks && "get" in hooks && + ( ret = hooks.get( elem, false, extra ) ) !== undefined ) { + + return ret; + } + + // Otherwise just get the value from the style object + return style[ name ]; + } + }, + + css: function( elem, name, extra, styles ) { + var val, num, hooks, + origName = camelCase( name ), + isCustomProp = rcustomProp.test( name ); + + // Make sure that we're working with the right name. We don't + // want to modify the value if it is a CSS custom property + // since they are user-defined. + if ( !isCustomProp ) { + name = finalPropName( origName ); + } + + // Try prefixed name followed by the unprefixed name + hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; + + // If a hook was provided get the computed value from there + if ( hooks && "get" in hooks ) { + val = hooks.get( elem, true, extra ); + } + + // Otherwise, if a way to get the computed value exists, use that + if ( val === undefined ) { + val = curCSS( elem, name, styles ); + } + + // Convert "normal" to computed value + if ( val === "normal" && name in cssNormalTransform ) { + val = cssNormalTransform[ name ]; + } + + // Make numeric if forced or a qualifier was provided and val looks numeric + if ( extra === "" || extra ) { + num = parseFloat( val ); + return extra === true || isFinite( num ) ? num || 0 : val; + } + + return val; + } +} ); + +jQuery.each( [ "height", "width" ], function( _i, dimension ) { + jQuery.cssHooks[ dimension ] = { + get: function( elem, computed, extra ) { + if ( computed ) { + + // Certain elements can have dimension info if we invisibly show them + // but it must have a current display style that would benefit + return rdisplayswap.test( jQuery.css( elem, "display" ) ) && + + // Support: Safari 8+ + // Table columns in Safari have non-zero offsetWidth & zero + // getBoundingClientRect().width unless display is changed. + // Support: IE <=11 only + // Running getBoundingClientRect on a disconnected node + // in IE throws an error. + ( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ? + swap( elem, cssShow, function() { + return getWidthOrHeight( elem, dimension, extra ); + } ) : + getWidthOrHeight( elem, dimension, extra ); + } + }, + + set: function( elem, value, extra ) { + var matches, + styles = getStyles( elem ), + + // Only read styles.position if the test has a chance to fail + // to avoid forcing a reflow. + scrollboxSizeBuggy = !support.scrollboxSize() && + styles.position === "absolute", + + // To avoid forcing a reflow, only fetch boxSizing if we need it (gh-3991) + boxSizingNeeded = scrollboxSizeBuggy || extra, + isBorderBox = boxSizingNeeded && + jQuery.css( elem, "boxSizing", false, styles ) === "border-box", + subtract = extra ? + boxModelAdjustment( + elem, + dimension, + extra, + isBorderBox, + styles + ) : + 0; + + // Account for unreliable border-box dimensions by comparing offset* to computed and + // faking a content-box to get border and padding (gh-3699) + if ( isBorderBox && scrollboxSizeBuggy ) { + subtract -= Math.ceil( + elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] - + parseFloat( styles[ dimension ] ) - + boxModelAdjustment( elem, dimension, "border", false, styles ) - + 0.5 + ); + } + + // Convert to pixels if value adjustment is needed + if ( subtract && ( matches = rcssNum.exec( value ) ) && + ( matches[ 3 ] || "px" ) !== "px" ) { + + elem.style[ dimension ] = value; + value = jQuery.css( elem, dimension ); + } + + return setPositiveNumber( elem, value, subtract ); + } + }; +} ); + +jQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft, + function( elem, computed ) { + if ( computed ) { + return ( parseFloat( curCSS( elem, "marginLeft" ) ) || + elem.getBoundingClientRect().left - + swap( elem, { marginLeft: 0 }, function() { + return elem.getBoundingClientRect().left; + } ) + ) + "px"; + } + } +); + +// These hooks are used by animate to expand properties +jQuery.each( { + margin: "", + padding: "", + border: "Width" +}, function( prefix, suffix ) { + jQuery.cssHooks[ prefix + suffix ] = { + expand: function( value ) { + var i = 0, + expanded = {}, + + // Assumes a single number if not a string + parts = typeof value === "string" ? value.split( " " ) : [ value ]; + + for ( ; i < 4; i++ ) { + expanded[ prefix + cssExpand[ i ] + suffix ] = + parts[ i ] || parts[ i - 2 ] || parts[ 0 ]; + } + + return expanded; + } + }; + + if ( prefix !== "margin" ) { + jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber; + } +} ); + +jQuery.fn.extend( { + css: function( name, value ) { + return access( this, function( elem, name, value ) { + var styles, len, + map = {}, + i = 0; + + if ( Array.isArray( name ) ) { + styles = getStyles( elem ); + len = name.length; + + for ( ; i < len; i++ ) { + map[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles ); + } + + return map; + } + + return value !== undefined ? + jQuery.style( elem, name, value ) : + jQuery.css( elem, name ); + }, name, value, arguments.length > 1 ); + } +} ); + + +function Tween( elem, options, prop, end, easing ) { + return new Tween.prototype.init( elem, options, prop, end, easing ); +} +jQuery.Tween = Tween; + +Tween.prototype = { + constructor: Tween, + init: function( elem, options, prop, end, easing, unit ) { + this.elem = elem; + this.prop = prop; + this.easing = easing || jQuery.easing._default; + this.options = options; + this.start = this.now = this.cur(); + this.end = end; + this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" ); + }, + cur: function() { + var hooks = Tween.propHooks[ this.prop ]; + + return hooks && hooks.get ? + hooks.get( this ) : + Tween.propHooks._default.get( this ); + }, + run: function( percent ) { + var eased, + hooks = Tween.propHooks[ this.prop ]; + + if ( this.options.duration ) { + this.pos = eased = jQuery.easing[ this.easing ]( + percent, this.options.duration * percent, 0, 1, this.options.duration + ); + } else { + this.pos = eased = percent; + } + this.now = ( this.end - this.start ) * eased + this.start; + + if ( this.options.step ) { + this.options.step.call( this.elem, this.now, this ); + } + + if ( hooks && hooks.set ) { + hooks.set( this ); + } else { + Tween.propHooks._default.set( this ); + } + return this; + } +}; + +Tween.prototype.init.prototype = Tween.prototype; + +Tween.propHooks = { + _default: { + get: function( tween ) { + var result; + + // Use a property on the element directly when it is not a DOM element, + // or when there is no matching style property that exists. + if ( tween.elem.nodeType !== 1 || + tween.elem[ tween.prop ] != null && tween.elem.style[ tween.prop ] == null ) { + return tween.elem[ tween.prop ]; + } + + // Passing an empty string as a 3rd parameter to .css will automatically + // attempt a parseFloat and fallback to a string if the parse fails. + // Simple values such as "10px" are parsed to Float; + // complex values such as "rotate(1rad)" are returned as-is. + result = jQuery.css( tween.elem, tween.prop, "" ); + + // Empty strings, null, undefined and "auto" are converted to 0. + return !result || result === "auto" ? 0 : result; + }, + set: function( tween ) { + + // Use step hook for back compat. + // Use cssHook if its there. + // Use .style if available and use plain properties where available. + if ( jQuery.fx.step[ tween.prop ] ) { + jQuery.fx.step[ tween.prop ]( tween ); + } else if ( tween.elem.nodeType === 1 && ( + jQuery.cssHooks[ tween.prop ] || + tween.elem.style[ finalPropName( tween.prop ) ] != null ) ) { + jQuery.style( tween.elem, tween.prop, tween.now + tween.unit ); + } else { + tween.elem[ tween.prop ] = tween.now; + } + } + } +}; + +// Support: IE <=9 only +// Panic based approach to setting things on disconnected nodes +Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = { + set: function( tween ) { + if ( tween.elem.nodeType && tween.elem.parentNode ) { + tween.elem[ tween.prop ] = tween.now; + } + } +}; + +jQuery.easing = { + linear: function( p ) { + return p; + }, + swing: function( p ) { + return 0.5 - Math.cos( p * Math.PI ) / 2; + }, + _default: "swing" +}; + +jQuery.fx = Tween.prototype.init; + +// Back compat <1.8 extension point +jQuery.fx.step = {}; + + + + +var + fxNow, inProgress, + rfxtypes = /^(?:toggle|show|hide)$/, + rrun = /queueHooks$/; + +function schedule() { + if ( inProgress ) { + if ( document.hidden === false && window.requestAnimationFrame ) { + window.requestAnimationFrame( schedule ); + } else { + window.setTimeout( schedule, jQuery.fx.interval ); + } + + jQuery.fx.tick(); + } +} + +// Animations created synchronously will run synchronously +function createFxNow() { + window.setTimeout( function() { + fxNow = undefined; + } ); + return ( fxNow = Date.now() ); +} + +// Generate parameters to create a standard animation +function genFx( type, includeWidth ) { + var which, + i = 0, + attrs = { height: type }; + + // If we include width, step value is 1 to do all cssExpand values, + // otherwise step value is 2 to skip over Left and Right + includeWidth = includeWidth ? 1 : 0; + for ( ; i < 4; i += 2 - includeWidth ) { + which = cssExpand[ i ]; + attrs[ "margin" + which ] = attrs[ "padding" + which ] = type; + } + + if ( includeWidth ) { + attrs.opacity = attrs.width = type; + } + + return attrs; +} + +function createTween( value, prop, animation ) { + var tween, + collection = ( Animation.tweeners[ prop ] || [] ).concat( Animation.tweeners[ "*" ] ), + index = 0, + length = collection.length; + for ( ; index < length; index++ ) { + if ( ( tween = collection[ index ].call( animation, prop, value ) ) ) { + + // We're done with this property + return tween; + } + } +} + +function defaultPrefilter( elem, props, opts ) { + var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display, + isBox = "width" in props || "height" in props, + anim = this, + orig = {}, + style = elem.style, + hidden = elem.nodeType && isHiddenWithinTree( elem ), + dataShow = dataPriv.get( elem, "fxshow" ); + + // Queue-skipping animations hijack the fx hooks + if ( !opts.queue ) { + hooks = jQuery._queueHooks( elem, "fx" ); + if ( hooks.unqueued == null ) { + hooks.unqueued = 0; + oldfire = hooks.empty.fire; + hooks.empty.fire = function() { + if ( !hooks.unqueued ) { + oldfire(); + } + }; + } + hooks.unqueued++; + + anim.always( function() { + + // Ensure the complete handler is called before this completes + anim.always( function() { + hooks.unqueued--; + if ( !jQuery.queue( elem, "fx" ).length ) { + hooks.empty.fire(); + } + } ); + } ); + } + + // Detect show/hide animations + for ( prop in props ) { + value = props[ prop ]; + if ( rfxtypes.test( value ) ) { + delete props[ prop ]; + toggle = toggle || value === "toggle"; + if ( value === ( hidden ? "hide" : "show" ) ) { + + // Pretend to be hidden if this is a "show" and + // there is still data from a stopped show/hide + if ( value === "show" && dataShow && dataShow[ prop ] !== undefined ) { + hidden = true; + + // Ignore all other no-op show/hide data + } else { + continue; + } + } + orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop ); + } + } + + // Bail out if this is a no-op like .hide().hide() + propTween = !jQuery.isEmptyObject( props ); + if ( !propTween && jQuery.isEmptyObject( orig ) ) { + return; + } + + // Restrict "overflow" and "display" styles during box animations + if ( isBox && elem.nodeType === 1 ) { + + // Support: IE <=9 - 11, Edge 12 - 15 + // Record all 3 overflow attributes because IE does not infer the shorthand + // from identically-valued overflowX and overflowY and Edge just mirrors + // the overflowX value there. + opts.overflow = [ style.overflow, style.overflowX, style.overflowY ]; + + // Identify a display type, preferring old show/hide data over the CSS cascade + restoreDisplay = dataShow && dataShow.display; + if ( restoreDisplay == null ) { + restoreDisplay = dataPriv.get( elem, "display" ); + } + display = jQuery.css( elem, "display" ); + if ( display === "none" ) { + if ( restoreDisplay ) { + display = restoreDisplay; + } else { + + // Get nonempty value(s) by temporarily forcing visibility + showHide( [ elem ], true ); + restoreDisplay = elem.style.display || restoreDisplay; + display = jQuery.css( elem, "display" ); + showHide( [ elem ] ); + } + } + + // Animate inline elements as inline-block + if ( display === "inline" || display === "inline-block" && restoreDisplay != null ) { + if ( jQuery.css( elem, "float" ) === "none" ) { + + // Restore the original display value at the end of pure show/hide animations + if ( !propTween ) { + anim.done( function() { + style.display = restoreDisplay; + } ); + if ( restoreDisplay == null ) { + display = style.display; + restoreDisplay = display === "none" ? "" : display; + } + } + style.display = "inline-block"; + } + } + } + + if ( opts.overflow ) { + style.overflow = "hidden"; + anim.always( function() { + style.overflow = opts.overflow[ 0 ]; + style.overflowX = opts.overflow[ 1 ]; + style.overflowY = opts.overflow[ 2 ]; + } ); + } + + // Implement show/hide animations + propTween = false; + for ( prop in orig ) { + + // General show/hide setup for this element animation + if ( !propTween ) { + if ( dataShow ) { + if ( "hidden" in dataShow ) { + hidden = dataShow.hidden; + } + } else { + dataShow = dataPriv.access( elem, "fxshow", { display: restoreDisplay } ); + } + + // Store hidden/visible for toggle so `.stop().toggle()` "reverses" + if ( toggle ) { + dataShow.hidden = !hidden; + } + + // Show elements before animating them + if ( hidden ) { + showHide( [ elem ], true ); + } + + /* eslint-disable no-loop-func */ + + anim.done( function() { + + /* eslint-enable no-loop-func */ + + // The final step of a "hide" animation is actually hiding the element + if ( !hidden ) { + showHide( [ elem ] ); + } + dataPriv.remove( elem, "fxshow" ); + for ( prop in orig ) { + jQuery.style( elem, prop, orig[ prop ] ); + } + } ); + } + + // Per-property setup + propTween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim ); + if ( !( prop in dataShow ) ) { + dataShow[ prop ] = propTween.start; + if ( hidden ) { + propTween.end = propTween.start; + propTween.start = 0; + } + } + } +} + +function propFilter( props, specialEasing ) { + var index, name, easing, value, hooks; + + // camelCase, specialEasing and expand cssHook pass + for ( index in props ) { + name = camelCase( index ); + easing = specialEasing[ name ]; + value = props[ index ]; + if ( Array.isArray( value ) ) { + easing = value[ 1 ]; + value = props[ index ] = value[ 0 ]; + } + + if ( index !== name ) { + props[ name ] = value; + delete props[ index ]; + } + + hooks = jQuery.cssHooks[ name ]; + if ( hooks && "expand" in hooks ) { + value = hooks.expand( value ); + delete props[ name ]; + + // Not quite $.extend, this won't overwrite existing keys. + // Reusing 'index' because we have the correct "name" + for ( index in value ) { + if ( !( index in props ) ) { + props[ index ] = value[ index ]; + specialEasing[ index ] = easing; + } + } + } else { + specialEasing[ name ] = easing; + } + } +} + +function Animation( elem, properties, options ) { + var result, + stopped, + index = 0, + length = Animation.prefilters.length, + deferred = jQuery.Deferred().always( function() { + + // Don't match elem in the :animated selector + delete tick.elem; + } ), + tick = function() { + if ( stopped ) { + return false; + } + var currentTime = fxNow || createFxNow(), + remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ), + + // Support: Android 2.3 only + // Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497) + temp = remaining / animation.duration || 0, + percent = 1 - temp, + index = 0, + length = animation.tweens.length; + + for ( ; index < length; index++ ) { + animation.tweens[ index ].run( percent ); + } + + deferred.notifyWith( elem, [ animation, percent, remaining ] ); + + // If there's more to do, yield + if ( percent < 1 && length ) { + return remaining; + } + + // If this was an empty animation, synthesize a final progress notification + if ( !length ) { + deferred.notifyWith( elem, [ animation, 1, 0 ] ); + } + + // Resolve the animation and report its conclusion + deferred.resolveWith( elem, [ animation ] ); + return false; + }, + animation = deferred.promise( { + elem: elem, + props: jQuery.extend( {}, properties ), + opts: jQuery.extend( true, { + specialEasing: {}, + easing: jQuery.easing._default + }, options ), + originalProperties: properties, + originalOptions: options, + startTime: fxNow || createFxNow(), + duration: options.duration, + tweens: [], + createTween: function( prop, end ) { + var tween = jQuery.Tween( elem, animation.opts, prop, end, + animation.opts.specialEasing[ prop ] || animation.opts.easing ); + animation.tweens.push( tween ); + return tween; + }, + stop: function( gotoEnd ) { + var index = 0, + + // If we are going to the end, we want to run all the tweens + // otherwise we skip this part + length = gotoEnd ? animation.tweens.length : 0; + if ( stopped ) { + return this; + } + stopped = true; + for ( ; index < length; index++ ) { + animation.tweens[ index ].run( 1 ); + } + + // Resolve when we played the last frame; otherwise, reject + if ( gotoEnd ) { + deferred.notifyWith( elem, [ animation, 1, 0 ] ); + deferred.resolveWith( elem, [ animation, gotoEnd ] ); + } else { + deferred.rejectWith( elem, [ animation, gotoEnd ] ); + } + return this; + } + } ), + props = animation.props; + + propFilter( props, animation.opts.specialEasing ); + + for ( ; index < length; index++ ) { + result = Animation.prefilters[ index ].call( animation, elem, props, animation.opts ); + if ( result ) { + if ( isFunction( result.stop ) ) { + jQuery._queueHooks( animation.elem, animation.opts.queue ).stop = + result.stop.bind( result ); + } + return result; + } + } + + jQuery.map( props, createTween, animation ); + + if ( isFunction( animation.opts.start ) ) { + animation.opts.start.call( elem, animation ); + } + + // Attach callbacks from options + animation + .progress( animation.opts.progress ) + .done( animation.opts.done, animation.opts.complete ) + .fail( animation.opts.fail ) + .always( animation.opts.always ); + + jQuery.fx.timer( + jQuery.extend( tick, { + elem: elem, + anim: animation, + queue: animation.opts.queue + } ) + ); + + return animation; +} + +jQuery.Animation = jQuery.extend( Animation, { + + tweeners: { + "*": [ function( prop, value ) { + var tween = this.createTween( prop, value ); + adjustCSS( tween.elem, prop, rcssNum.exec( value ), tween ); + return tween; + } ] + }, + + tweener: function( props, callback ) { + if ( isFunction( props ) ) { + callback = props; + props = [ "*" ]; + } else { + props = props.match( rnothtmlwhite ); + } + + var prop, + index = 0, + length = props.length; + + for ( ; index < length; index++ ) { + prop = props[ index ]; + Animation.tweeners[ prop ] = Animation.tweeners[ prop ] || []; + Animation.tweeners[ prop ].unshift( callback ); + } + }, + + prefilters: [ defaultPrefilter ], + + prefilter: function( callback, prepend ) { + if ( prepend ) { + Animation.prefilters.unshift( callback ); + } else { + Animation.prefilters.push( callback ); + } + } +} ); + +jQuery.speed = function( speed, easing, fn ) { + var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : { + complete: fn || !fn && easing || + isFunction( speed ) && speed, + duration: speed, + easing: fn && easing || easing && !isFunction( easing ) && easing + }; + + // Go to the end state if fx are off + if ( jQuery.fx.off ) { + opt.duration = 0; + + } else { + if ( typeof opt.duration !== "number" ) { + if ( opt.duration in jQuery.fx.speeds ) { + opt.duration = jQuery.fx.speeds[ opt.duration ]; + + } else { + opt.duration = jQuery.fx.speeds._default; + } + } + } + + // Normalize opt.queue - true/undefined/null -> "fx" + if ( opt.queue == null || opt.queue === true ) { + opt.queue = "fx"; + } + + // Queueing + opt.old = opt.complete; + + opt.complete = function() { + if ( isFunction( opt.old ) ) { + opt.old.call( this ); + } + + if ( opt.queue ) { + jQuery.dequeue( this, opt.queue ); + } + }; + + return opt; +}; + +jQuery.fn.extend( { + fadeTo: function( speed, to, easing, callback ) { + + // Show any hidden elements after setting opacity to 0 + return this.filter( isHiddenWithinTree ).css( "opacity", 0 ).show() + + // Animate to the value specified + .end().animate( { opacity: to }, speed, easing, callback ); + }, + animate: function( prop, speed, easing, callback ) { + var empty = jQuery.isEmptyObject( prop ), + optall = jQuery.speed( speed, easing, callback ), + doAnimation = function() { + + // Operate on a copy of prop so per-property easing won't be lost + var anim = Animation( this, jQuery.extend( {}, prop ), optall ); + + // Empty animations, or finishing resolves immediately + if ( empty || dataPriv.get( this, "finish" ) ) { + anim.stop( true ); + } + }; + + doAnimation.finish = doAnimation; + + return empty || optall.queue === false ? + this.each( doAnimation ) : + this.queue( optall.queue, doAnimation ); + }, + stop: function( type, clearQueue, gotoEnd ) { + var stopQueue = function( hooks ) { + var stop = hooks.stop; + delete hooks.stop; + stop( gotoEnd ); + }; + + if ( typeof type !== "string" ) { + gotoEnd = clearQueue; + clearQueue = type; + type = undefined; + } + if ( clearQueue ) { + this.queue( type || "fx", [] ); + } + + return this.each( function() { + var dequeue = true, + index = type != null && type + "queueHooks", + timers = jQuery.timers, + data = dataPriv.get( this ); + + if ( index ) { + if ( data[ index ] && data[ index ].stop ) { + stopQueue( data[ index ] ); + } + } else { + for ( index in data ) { + if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) { + stopQueue( data[ index ] ); + } + } + } + + for ( index = timers.length; index--; ) { + if ( timers[ index ].elem === this && + ( type == null || timers[ index ].queue === type ) ) { + + timers[ index ].anim.stop( gotoEnd ); + dequeue = false; + timers.splice( index, 1 ); + } + } + + // Start the next in the queue if the last step wasn't forced. + // Timers currently will call their complete callbacks, which + // will dequeue but only if they were gotoEnd. + if ( dequeue || !gotoEnd ) { + jQuery.dequeue( this, type ); + } + } ); + }, + finish: function( type ) { + if ( type !== false ) { + type = type || "fx"; + } + return this.each( function() { + var index, + data = dataPriv.get( this ), + queue = data[ type + "queue" ], + hooks = data[ type + "queueHooks" ], + timers = jQuery.timers, + length = queue ? queue.length : 0; + + // Enable finishing flag on private data + data.finish = true; + + // Empty the queue first + jQuery.queue( this, type, [] ); + + if ( hooks && hooks.stop ) { + hooks.stop.call( this, true ); + } + + // Look for any active animations, and finish them + for ( index = timers.length; index--; ) { + if ( timers[ index ].elem === this && timers[ index ].queue === type ) { + timers[ index ].anim.stop( true ); + timers.splice( index, 1 ); + } + } + + // Look for any animations in the old queue and finish them + for ( index = 0; index < length; index++ ) { + if ( queue[ index ] && queue[ index ].finish ) { + queue[ index ].finish.call( this ); + } + } + + // Turn off finishing flag + delete data.finish; + } ); + } +} ); + +jQuery.each( [ "toggle", "show", "hide" ], function( _i, name ) { + var cssFn = jQuery.fn[ name ]; + jQuery.fn[ name ] = function( speed, easing, callback ) { + return speed == null || typeof speed === "boolean" ? + cssFn.apply( this, arguments ) : + this.animate( genFx( name, true ), speed, easing, callback ); + }; +} ); + +// Generate shortcuts for custom animations +jQuery.each( { + slideDown: genFx( "show" ), + slideUp: genFx( "hide" ), + slideToggle: genFx( "toggle" ), + fadeIn: { opacity: "show" }, + fadeOut: { opacity: "hide" }, + fadeToggle: { opacity: "toggle" } +}, function( name, props ) { + jQuery.fn[ name ] = function( speed, easing, callback ) { + return this.animate( props, speed, easing, callback ); + }; +} ); + +jQuery.timers = []; +jQuery.fx.tick = function() { + var timer, + i = 0, + timers = jQuery.timers; + + fxNow = Date.now(); + + for ( ; i < timers.length; i++ ) { + timer = timers[ i ]; + + // Run the timer and safely remove it when done (allowing for external removal) + if ( !timer() && timers[ i ] === timer ) { + timers.splice( i--, 1 ); + } + } + + if ( !timers.length ) { + jQuery.fx.stop(); + } + fxNow = undefined; +}; + +jQuery.fx.timer = function( timer ) { + jQuery.timers.push( timer ); + jQuery.fx.start(); +}; + +jQuery.fx.interval = 13; +jQuery.fx.start = function() { + if ( inProgress ) { + return; + } + + inProgress = true; + schedule(); +}; + +jQuery.fx.stop = function() { + inProgress = null; +}; + +jQuery.fx.speeds = { + slow: 600, + fast: 200, + + // Default speed + _default: 400 +}; + + +// Based off of the plugin by Clint Helfers, with permission. +// https://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/ +jQuery.fn.delay = function( time, type ) { + time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time; + type = type || "fx"; + + return this.queue( type, function( next, hooks ) { + var timeout = window.setTimeout( next, time ); + hooks.stop = function() { + window.clearTimeout( timeout ); + }; + } ); +}; + + +( function() { + var input = document.createElement( "input" ), + select = document.createElement( "select" ), + opt = select.appendChild( document.createElement( "option" ) ); + + input.type = "checkbox"; + + // Support: Android <=4.3 only + // Default value for a checkbox should be "on" + support.checkOn = input.value !== ""; + + // Support: IE <=11 only + // Must access selectedIndex to make default options select + support.optSelected = opt.selected; + + // Support: IE <=11 only + // An input loses its value after becoming a radio + input = document.createElement( "input" ); + input.value = "t"; + input.type = "radio"; + support.radioValue = input.value === "t"; +} )(); + + +var boolHook, + attrHandle = jQuery.expr.attrHandle; + +jQuery.fn.extend( { + attr: function( name, value ) { + return access( this, jQuery.attr, name, value, arguments.length > 1 ); + }, + + removeAttr: function( name ) { + return this.each( function() { + jQuery.removeAttr( this, name ); + } ); + } +} ); + +jQuery.extend( { + attr: function( elem, name, value ) { + var ret, hooks, + nType = elem.nodeType; + + // Don't get/set attributes on text, comment and attribute nodes + if ( nType === 3 || nType === 8 || nType === 2 ) { + return; + } + + // Fallback to prop when attributes are not supported + if ( typeof elem.getAttribute === "undefined" ) { + return jQuery.prop( elem, name, value ); + } + + // Attribute hooks are determined by the lowercase version + // Grab necessary hook if one is defined + if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { + hooks = jQuery.attrHooks[ name.toLowerCase() ] || + ( jQuery.expr.match.bool.test( name ) ? boolHook : undefined ); + } + + if ( value !== undefined ) { + if ( value === null ) { + jQuery.removeAttr( elem, name ); + return; + } + + if ( hooks && "set" in hooks && + ( ret = hooks.set( elem, value, name ) ) !== undefined ) { + return ret; + } + + elem.setAttribute( name, value + "" ); + return value; + } + + if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { + return ret; + } + + ret = jQuery.find.attr( elem, name ); + + // Non-existent attributes return null, we normalize to undefined + return ret == null ? undefined : ret; + }, + + attrHooks: { + type: { + set: function( elem, value ) { + if ( !support.radioValue && value === "radio" && + nodeName( elem, "input" ) ) { + var val = elem.value; + elem.setAttribute( "type", value ); + if ( val ) { + elem.value = val; + } + return value; + } + } + } + }, + + removeAttr: function( elem, value ) { + var name, + i = 0, + + // Attribute names can contain non-HTML whitespace characters + // https://html.spec.whatwg.org/multipage/syntax.html#attributes-2 + attrNames = value && value.match( rnothtmlwhite ); + + if ( attrNames && elem.nodeType === 1 ) { + while ( ( name = attrNames[ i++ ] ) ) { + elem.removeAttribute( name ); + } + } + } +} ); + +// Hooks for boolean attributes +boolHook = { + set: function( elem, value, name ) { + if ( value === false ) { + + // Remove boolean attributes when set to false + jQuery.removeAttr( elem, name ); + } else { + elem.setAttribute( name, name ); + } + return name; + } +}; + +jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( _i, name ) { + var getter = attrHandle[ name ] || jQuery.find.attr; + + attrHandle[ name ] = function( elem, name, isXML ) { + var ret, handle, + lowercaseName = name.toLowerCase(); + + if ( !isXML ) { + + // Avoid an infinite loop by temporarily removing this function from the getter + handle = attrHandle[ lowercaseName ]; + attrHandle[ lowercaseName ] = ret; + ret = getter( elem, name, isXML ) != null ? + lowercaseName : + null; + attrHandle[ lowercaseName ] = handle; + } + return ret; + }; +} ); + + + + +var rfocusable = /^(?:input|select|textarea|button)$/i, + rclickable = /^(?:a|area)$/i; + +jQuery.fn.extend( { + prop: function( name, value ) { + return access( this, jQuery.prop, name, value, arguments.length > 1 ); + }, + + removeProp: function( name ) { + return this.each( function() { + delete this[ jQuery.propFix[ name ] || name ]; + } ); + } +} ); + +jQuery.extend( { + prop: function( elem, name, value ) { + var ret, hooks, + nType = elem.nodeType; + + // Don't get/set properties on text, comment and attribute nodes + if ( nType === 3 || nType === 8 || nType === 2 ) { + return; + } + + if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { + + // Fix name and attach hooks + name = jQuery.propFix[ name ] || name; + hooks = jQuery.propHooks[ name ]; + } + + if ( value !== undefined ) { + if ( hooks && "set" in hooks && + ( ret = hooks.set( elem, value, name ) ) !== undefined ) { + return ret; + } + + return ( elem[ name ] = value ); + } + + if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { + return ret; + } + + return elem[ name ]; + }, + + propHooks: { + tabIndex: { + get: function( elem ) { + + // Support: IE <=9 - 11 only + // elem.tabIndex doesn't always return the + // correct value when it hasn't been explicitly set + // https://web.archive.org/web/20141116233347/http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ + // Use proper attribute retrieval(#12072) + var tabindex = jQuery.find.attr( elem, "tabindex" ); + + if ( tabindex ) { + return parseInt( tabindex, 10 ); + } + + if ( + rfocusable.test( elem.nodeName ) || + rclickable.test( elem.nodeName ) && + elem.href + ) { + return 0; + } + + return -1; + } + } + }, + + propFix: { + "for": "htmlFor", + "class": "className" + } +} ); + +// Support: IE <=11 only +// Accessing the selectedIndex property +// forces the browser to respect setting selected +// on the option +// The getter ensures a default option is selected +// when in an optgroup +// eslint rule "no-unused-expressions" is disabled for this code +// since it considers such accessions noop +if ( !support.optSelected ) { + jQuery.propHooks.selected = { + get: function( elem ) { + + /* eslint no-unused-expressions: "off" */ + + var parent = elem.parentNode; + if ( parent && parent.parentNode ) { + parent.parentNode.selectedIndex; + } + return null; + }, + set: function( elem ) { + + /* eslint no-unused-expressions: "off" */ + + var parent = elem.parentNode; + if ( parent ) { + parent.selectedIndex; + + if ( parent.parentNode ) { + parent.parentNode.selectedIndex; + } + } + } + }; +} + +jQuery.each( [ + "tabIndex", + "readOnly", + "maxLength", + "cellSpacing", + "cellPadding", + "rowSpan", + "colSpan", + "useMap", + "frameBorder", + "contentEditable" +], function() { + jQuery.propFix[ this.toLowerCase() ] = this; +} ); + + + + + // Strip and collapse whitespace according to HTML spec + // https://infra.spec.whatwg.org/#strip-and-collapse-ascii-whitespace + function stripAndCollapse( value ) { + var tokens = value.match( rnothtmlwhite ) || []; + return tokens.join( " " ); + } + + +function getClass( elem ) { + return elem.getAttribute && elem.getAttribute( "class" ) || ""; +} + +function classesToArray( value ) { + if ( Array.isArray( value ) ) { + return value; + } + if ( typeof value === "string" ) { + return value.match( rnothtmlwhite ) || []; + } + return []; +} + +jQuery.fn.extend( { + addClass: function( value ) { + var classes, elem, cur, curValue, clazz, j, finalValue, + i = 0; + + if ( isFunction( value ) ) { + return this.each( function( j ) { + jQuery( this ).addClass( value.call( this, j, getClass( this ) ) ); + } ); + } + + classes = classesToArray( value ); + + if ( classes.length ) { + while ( ( elem = this[ i++ ] ) ) { + curValue = getClass( elem ); + cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); + + if ( cur ) { + j = 0; + while ( ( clazz = classes[ j++ ] ) ) { + if ( cur.indexOf( " " + clazz + " " ) < 0 ) { + cur += clazz + " "; + } + } + + // Only assign if different to avoid unneeded rendering. + finalValue = stripAndCollapse( cur ); + if ( curValue !== finalValue ) { + elem.setAttribute( "class", finalValue ); + } + } + } + } + + return this; + }, + + removeClass: function( value ) { + var classes, elem, cur, curValue, clazz, j, finalValue, + i = 0; + + if ( isFunction( value ) ) { + return this.each( function( j ) { + jQuery( this ).removeClass( value.call( this, j, getClass( this ) ) ); + } ); + } + + if ( !arguments.length ) { + return this.attr( "class", "" ); + } + + classes = classesToArray( value ); + + if ( classes.length ) { + while ( ( elem = this[ i++ ] ) ) { + curValue = getClass( elem ); + + // This expression is here for better compressibility (see addClass) + cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); + + if ( cur ) { + j = 0; + while ( ( clazz = classes[ j++ ] ) ) { + + // Remove *all* instances + while ( cur.indexOf( " " + clazz + " " ) > -1 ) { + cur = cur.replace( " " + clazz + " ", " " ); + } + } + + // Only assign if different to avoid unneeded rendering. + finalValue = stripAndCollapse( cur ); + if ( curValue !== finalValue ) { + elem.setAttribute( "class", finalValue ); + } + } + } + } + + return this; + }, + + toggleClass: function( value, stateVal ) { + var type = typeof value, + isValidValue = type === "string" || Array.isArray( value ); + + if ( typeof stateVal === "boolean" && isValidValue ) { + return stateVal ? this.addClass( value ) : this.removeClass( value ); + } + + if ( isFunction( value ) ) { + return this.each( function( i ) { + jQuery( this ).toggleClass( + value.call( this, i, getClass( this ), stateVal ), + stateVal + ); + } ); + } + + return this.each( function() { + var className, i, self, classNames; + + if ( isValidValue ) { + + // Toggle individual class names + i = 0; + self = jQuery( this ); + classNames = classesToArray( value ); + + while ( ( className = classNames[ i++ ] ) ) { + + // Check each className given, space separated list + if ( self.hasClass( className ) ) { + self.removeClass( className ); + } else { + self.addClass( className ); + } + } + + // Toggle whole class name + } else if ( value === undefined || type === "boolean" ) { + className = getClass( this ); + if ( className ) { + + // Store className if set + dataPriv.set( this, "__className__", className ); + } + + // If the element has a class name or if we're passed `false`, + // then remove the whole classname (if there was one, the above saved it). + // Otherwise bring back whatever was previously saved (if anything), + // falling back to the empty string if nothing was stored. + if ( this.setAttribute ) { + this.setAttribute( "class", + className || value === false ? + "" : + dataPriv.get( this, "__className__" ) || "" + ); + } + } + } ); + }, + + hasClass: function( selector ) { + var className, elem, + i = 0; + + className = " " + selector + " "; + while ( ( elem = this[ i++ ] ) ) { + if ( elem.nodeType === 1 && + ( " " + stripAndCollapse( getClass( elem ) ) + " " ).indexOf( className ) > -1 ) { + return true; + } + } + + return false; + } +} ); + + + + +var rreturn = /\r/g; + +jQuery.fn.extend( { + val: function( value ) { + var hooks, ret, valueIsFunction, + elem = this[ 0 ]; + + if ( !arguments.length ) { + if ( elem ) { + hooks = jQuery.valHooks[ elem.type ] || + jQuery.valHooks[ elem.nodeName.toLowerCase() ]; + + if ( hooks && + "get" in hooks && + ( ret = hooks.get( elem, "value" ) ) !== undefined + ) { + return ret; + } + + ret = elem.value; + + // Handle most common string cases + if ( typeof ret === "string" ) { + return ret.replace( rreturn, "" ); + } + + // Handle cases where value is null/undef or number + return ret == null ? "" : ret; + } + + return; + } + + valueIsFunction = isFunction( value ); + + return this.each( function( i ) { + var val; + + if ( this.nodeType !== 1 ) { + return; + } + + if ( valueIsFunction ) { + val = value.call( this, i, jQuery( this ).val() ); + } else { + val = value; + } + + // Treat null/undefined as ""; convert numbers to string + if ( val == null ) { + val = ""; + + } else if ( typeof val === "number" ) { + val += ""; + + } else if ( Array.isArray( val ) ) { + val = jQuery.map( val, function( value ) { + return value == null ? "" : value + ""; + } ); + } + + hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ]; + + // If set returns undefined, fall back to normal setting + if ( !hooks || !( "set" in hooks ) || hooks.set( this, val, "value" ) === undefined ) { + this.value = val; + } + } ); + } +} ); + +jQuery.extend( { + valHooks: { + option: { + get: function( elem ) { + + var val = jQuery.find.attr( elem, "value" ); + return val != null ? + val : + + // Support: IE <=10 - 11 only + // option.text throws exceptions (#14686, #14858) + // Strip and collapse whitespace + // https://html.spec.whatwg.org/#strip-and-collapse-whitespace + stripAndCollapse( jQuery.text( elem ) ); + } + }, + select: { + get: function( elem ) { + var value, option, i, + options = elem.options, + index = elem.selectedIndex, + one = elem.type === "select-one", + values = one ? null : [], + max = one ? index + 1 : options.length; + + if ( index < 0 ) { + i = max; + + } else { + i = one ? index : 0; + } + + // Loop through all the selected options + for ( ; i < max; i++ ) { + option = options[ i ]; + + // Support: IE <=9 only + // IE8-9 doesn't update selected after form reset (#2551) + if ( ( option.selected || i === index ) && + + // Don't return options that are disabled or in a disabled optgroup + !option.disabled && + ( !option.parentNode.disabled || + !nodeName( option.parentNode, "optgroup" ) ) ) { + + // Get the specific value for the option + value = jQuery( option ).val(); + + // We don't need an array for one selects + if ( one ) { + return value; + } + + // Multi-Selects return an array + values.push( value ); + } + } + + return values; + }, + + set: function( elem, value ) { + var optionSet, option, + options = elem.options, + values = jQuery.makeArray( value ), + i = options.length; + + while ( i-- ) { + option = options[ i ]; + + /* eslint-disable no-cond-assign */ + + if ( option.selected = + jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1 + ) { + optionSet = true; + } + + /* eslint-enable no-cond-assign */ + } + + // Force browsers to behave consistently when non-matching value is set + if ( !optionSet ) { + elem.selectedIndex = -1; + } + return values; + } + } + } +} ); + +// Radios and checkboxes getter/setter +jQuery.each( [ "radio", "checkbox" ], function() { + jQuery.valHooks[ this ] = { + set: function( elem, value ) { + if ( Array.isArray( value ) ) { + return ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 ); + } + } + }; + if ( !support.checkOn ) { + jQuery.valHooks[ this ].get = function( elem ) { + return elem.getAttribute( "value" ) === null ? "on" : elem.value; + }; + } +} ); + + + + +// Return jQuery for attributes-only inclusion + + +support.focusin = "onfocusin" in window; + + +var rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, + stopPropagationCallback = function( e ) { + e.stopPropagation(); + }; + +jQuery.extend( jQuery.event, { + + trigger: function( event, data, elem, onlyHandlers ) { + + var i, cur, tmp, bubbleType, ontype, handle, special, lastElement, + eventPath = [ elem || document ], + type = hasOwn.call( event, "type" ) ? event.type : event, + namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split( "." ) : []; + + cur = lastElement = tmp = elem = elem || document; + + // Don't do events on text and comment nodes + if ( elem.nodeType === 3 || elem.nodeType === 8 ) { + return; + } + + // focus/blur morphs to focusin/out; ensure we're not firing them right now + if ( rfocusMorph.test( type + jQuery.event.triggered ) ) { + return; + } + + if ( type.indexOf( "." ) > -1 ) { + + // Namespaced trigger; create a regexp to match event type in handle() + namespaces = type.split( "." ); + type = namespaces.shift(); + namespaces.sort(); + } + ontype = type.indexOf( ":" ) < 0 && "on" + type; + + // Caller can pass in a jQuery.Event object, Object, or just an event type string + event = event[ jQuery.expando ] ? + event : + new jQuery.Event( type, typeof event === "object" && event ); + + // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true) + event.isTrigger = onlyHandlers ? 2 : 3; + event.namespace = namespaces.join( "." ); + event.rnamespace = event.namespace ? + new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ) : + null; + + // Clean up the event in case it is being reused + event.result = undefined; + if ( !event.target ) { + event.target = elem; + } + + // Clone any incoming data and prepend the event, creating the handler arg list + data = data == null ? + [ event ] : + jQuery.makeArray( data, [ event ] ); + + // Allow special events to draw outside the lines + special = jQuery.event.special[ type ] || {}; + if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) { + return; + } + + // Determine event propagation path in advance, per W3C events spec (#9951) + // Bubble up to document, then to window; watch for a global ownerDocument var (#9724) + if ( !onlyHandlers && !special.noBubble && !isWindow( elem ) ) { + + bubbleType = special.delegateType || type; + if ( !rfocusMorph.test( bubbleType + type ) ) { + cur = cur.parentNode; + } + for ( ; cur; cur = cur.parentNode ) { + eventPath.push( cur ); + tmp = cur; + } + + // Only add window if we got to document (e.g., not plain obj or detached DOM) + if ( tmp === ( elem.ownerDocument || document ) ) { + eventPath.push( tmp.defaultView || tmp.parentWindow || window ); + } + } + + // Fire handlers on the event path + i = 0; + while ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) { + lastElement = cur; + event.type = i > 1 ? + bubbleType : + special.bindType || type; + + // jQuery handler + handle = ( dataPriv.get( cur, "events" ) || Object.create( null ) )[ event.type ] && + dataPriv.get( cur, "handle" ); + if ( handle ) { + handle.apply( cur, data ); + } + + // Native handler + handle = ontype && cur[ ontype ]; + if ( handle && handle.apply && acceptData( cur ) ) { + event.result = handle.apply( cur, data ); + if ( event.result === false ) { + event.preventDefault(); + } + } + } + event.type = type; + + // If nobody prevented the default action, do it now + if ( !onlyHandlers && !event.isDefaultPrevented() ) { + + if ( ( !special._default || + special._default.apply( eventPath.pop(), data ) === false ) && + acceptData( elem ) ) { + + // Call a native DOM method on the target with the same name as the event. + // Don't do default actions on window, that's where global variables be (#6170) + if ( ontype && isFunction( elem[ type ] ) && !isWindow( elem ) ) { + + // Don't re-trigger an onFOO event when we call its FOO() method + tmp = elem[ ontype ]; + + if ( tmp ) { + elem[ ontype ] = null; + } + + // Prevent re-triggering of the same event, since we already bubbled it above + jQuery.event.triggered = type; + + if ( event.isPropagationStopped() ) { + lastElement.addEventListener( type, stopPropagationCallback ); + } + + elem[ type ](); + + if ( event.isPropagationStopped() ) { + lastElement.removeEventListener( type, stopPropagationCallback ); + } + + jQuery.event.triggered = undefined; + + if ( tmp ) { + elem[ ontype ] = tmp; + } + } + } + } + + return event.result; + }, + + // Piggyback on a donor event to simulate a different one + // Used only for `focus(in | out)` events + simulate: function( type, elem, event ) { + var e = jQuery.extend( + new jQuery.Event(), + event, + { + type: type, + isSimulated: true + } + ); + + jQuery.event.trigger( e, null, elem ); + } + +} ); + +jQuery.fn.extend( { + + trigger: function( type, data ) { + return this.each( function() { + jQuery.event.trigger( type, data, this ); + } ); + }, + triggerHandler: function( type, data ) { + var elem = this[ 0 ]; + if ( elem ) { + return jQuery.event.trigger( type, data, elem, true ); + } + } +} ); + + +// Support: Firefox <=44 +// Firefox doesn't have focus(in | out) events +// Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787 +// +// Support: Chrome <=48 - 49, Safari <=9.0 - 9.1 +// focus(in | out) events fire after focus & blur events, +// which is spec violation - http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-event-order +// Related ticket - https://bugs.chromium.org/p/chromium/issues/detail?id=449857 +if ( !support.focusin ) { + jQuery.each( { focus: "focusin", blur: "focusout" }, function( orig, fix ) { + + // Attach a single capturing handler on the document while someone wants focusin/focusout + var handler = function( event ) { + jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ) ); + }; + + jQuery.event.special[ fix ] = { + setup: function() { + + // Handle: regular nodes (via `this.ownerDocument`), window + // (via `this.document`) & document (via `this`). + var doc = this.ownerDocument || this.document || this, + attaches = dataPriv.access( doc, fix ); + + if ( !attaches ) { + doc.addEventListener( orig, handler, true ); + } + dataPriv.access( doc, fix, ( attaches || 0 ) + 1 ); + }, + teardown: function() { + var doc = this.ownerDocument || this.document || this, + attaches = dataPriv.access( doc, fix ) - 1; + + if ( !attaches ) { + doc.removeEventListener( orig, handler, true ); + dataPriv.remove( doc, fix ); + + } else { + dataPriv.access( doc, fix, attaches ); + } + } + }; + } ); +} +var location = window.location; + +var nonce = { guid: Date.now() }; + +var rquery = ( /\?/ ); + + + +// Cross-browser xml parsing +jQuery.parseXML = function( data ) { + var xml, parserErrorElem; + if ( !data || typeof data !== "string" ) { + return null; + } + + // Support: IE 9 - 11 only + // IE throws on parseFromString with invalid input. + try { + xml = ( new window.DOMParser() ).parseFromString( data, "text/xml" ); + } catch ( e ) {} + + parserErrorElem = xml && xml.getElementsByTagName( "parsererror" )[ 0 ]; + if ( !xml || parserErrorElem ) { + jQuery.error( "Invalid XML: " + ( + parserErrorElem ? + jQuery.map( parserErrorElem.childNodes, function( el ) { + return el.textContent; + } ).join( "\n" ) : + data + ) ); + } + return xml; +}; + + +var + rbracket = /\[\]$/, + rCRLF = /\r?\n/g, + rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i, + rsubmittable = /^(?:input|select|textarea|keygen)/i; + +function buildParams( prefix, obj, traditional, add ) { + var name; + + if ( Array.isArray( obj ) ) { + + // Serialize array item. + jQuery.each( obj, function( i, v ) { + if ( traditional || rbracket.test( prefix ) ) { + + // Treat each array item as a scalar. + add( prefix, v ); + + } else { + + // Item is non-scalar (array or object), encode its numeric index. + buildParams( + prefix + "[" + ( typeof v === "object" && v != null ? i : "" ) + "]", + v, + traditional, + add + ); + } + } ); + + } else if ( !traditional && toType( obj ) === "object" ) { + + // Serialize object item. + for ( name in obj ) { + buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add ); + } + + } else { + + // Serialize scalar item. + add( prefix, obj ); + } +} + +// Serialize an array of form elements or a set of +// key/values into a query string +jQuery.param = function( a, traditional ) { + var prefix, + s = [], + add = function( key, valueOrFunction ) { + + // If value is a function, invoke it and use its return value + var value = isFunction( valueOrFunction ) ? + valueOrFunction() : + valueOrFunction; + + s[ s.length ] = encodeURIComponent( key ) + "=" + + encodeURIComponent( value == null ? "" : value ); + }; + + if ( a == null ) { + return ""; + } + + // If an array was passed in, assume that it is an array of form elements. + if ( Array.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) { + + // Serialize the form elements + jQuery.each( a, function() { + add( this.name, this.value ); + } ); + + } else { + + // If traditional, encode the "old" way (the way 1.3.2 or older + // did it), otherwise encode params recursively. + for ( prefix in a ) { + buildParams( prefix, a[ prefix ], traditional, add ); + } + } + + // Return the resulting serialization + return s.join( "&" ); +}; + +jQuery.fn.extend( { + serialize: function() { + return jQuery.param( this.serializeArray() ); + }, + serializeArray: function() { + return this.map( function() { + + // Can add propHook for "elements" to filter or add form elements + var elements = jQuery.prop( this, "elements" ); + return elements ? jQuery.makeArray( elements ) : this; + } ).filter( function() { + var type = this.type; + + // Use .is( ":disabled" ) so that fieldset[disabled] works + return this.name && !jQuery( this ).is( ":disabled" ) && + rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) && + ( this.checked || !rcheckableType.test( type ) ); + } ).map( function( _i, elem ) { + var val = jQuery( this ).val(); + + if ( val == null ) { + return null; + } + + if ( Array.isArray( val ) ) { + return jQuery.map( val, function( val ) { + return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; + } ); + } + + return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; + } ).get(); + } +} ); + + +var + r20 = /%20/g, + rhash = /#.*$/, + rantiCache = /([?&])_=[^&]*/, + rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg, + + // #7653, #8125, #8152: local protocol detection + rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, + rnoContent = /^(?:GET|HEAD)$/, + rprotocol = /^\/\//, + + /* Prefilters + * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example) + * 2) These are called: + * - BEFORE asking for a transport + * - AFTER param serialization (s.data is a string if s.processData is true) + * 3) key is the dataType + * 4) the catchall symbol "*" can be used + * 5) execution will start with transport dataType and THEN continue down to "*" if needed + */ + prefilters = {}, + + /* Transports bindings + * 1) key is the dataType + * 2) the catchall symbol "*" can be used + * 3) selection will start with transport dataType and THEN go to "*" if needed + */ + transports = {}, + + // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression + allTypes = "*/".concat( "*" ), + + // Anchor tag for parsing the document origin + originAnchor = document.createElement( "a" ); + +originAnchor.href = location.href; + +// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport +function addToPrefiltersOrTransports( structure ) { + + // dataTypeExpression is optional and defaults to "*" + return function( dataTypeExpression, func ) { + + if ( typeof dataTypeExpression !== "string" ) { + func = dataTypeExpression; + dataTypeExpression = "*"; + } + + var dataType, + i = 0, + dataTypes = dataTypeExpression.toLowerCase().match( rnothtmlwhite ) || []; + + if ( isFunction( func ) ) { + + // For each dataType in the dataTypeExpression + while ( ( dataType = dataTypes[ i++ ] ) ) { + + // Prepend if requested + if ( dataType[ 0 ] === "+" ) { + dataType = dataType.slice( 1 ) || "*"; + ( structure[ dataType ] = structure[ dataType ] || [] ).unshift( func ); + + // Otherwise append + } else { + ( structure[ dataType ] = structure[ dataType ] || [] ).push( func ); + } + } + } + }; +} + +// Base inspection function for prefilters and transports +function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) { + + var inspected = {}, + seekingTransport = ( structure === transports ); + + function inspect( dataType ) { + var selected; + inspected[ dataType ] = true; + jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) { + var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR ); + if ( typeof dataTypeOrTransport === "string" && + !seekingTransport && !inspected[ dataTypeOrTransport ] ) { + + options.dataTypes.unshift( dataTypeOrTransport ); + inspect( dataTypeOrTransport ); + return false; + } else if ( seekingTransport ) { + return !( selected = dataTypeOrTransport ); + } + } ); + return selected; + } + + return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" ); +} + +// A special extend for ajax options +// that takes "flat" options (not to be deep extended) +// Fixes #9887 +function ajaxExtend( target, src ) { + var key, deep, + flatOptions = jQuery.ajaxSettings.flatOptions || {}; + + for ( key in src ) { + if ( src[ key ] !== undefined ) { + ( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ]; + } + } + if ( deep ) { + jQuery.extend( true, target, deep ); + } + + return target; +} + +/* Handles responses to an ajax request: + * - finds the right dataType (mediates between content-type and expected dataType) + * - returns the corresponding response + */ +function ajaxHandleResponses( s, jqXHR, responses ) { + + var ct, type, finalDataType, firstDataType, + contents = s.contents, + dataTypes = s.dataTypes; + + // Remove auto dataType and get content-type in the process + while ( dataTypes[ 0 ] === "*" ) { + dataTypes.shift(); + if ( ct === undefined ) { + ct = s.mimeType || jqXHR.getResponseHeader( "Content-Type" ); + } + } + + // Check if we're dealing with a known content-type + if ( ct ) { + for ( type in contents ) { + if ( contents[ type ] && contents[ type ].test( ct ) ) { + dataTypes.unshift( type ); + break; + } + } + } + + // Check to see if we have a response for the expected dataType + if ( dataTypes[ 0 ] in responses ) { + finalDataType = dataTypes[ 0 ]; + } else { + + // Try convertible dataTypes + for ( type in responses ) { + if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[ 0 ] ] ) { + finalDataType = type; + break; + } + if ( !firstDataType ) { + firstDataType = type; + } + } + + // Or just use first one + finalDataType = finalDataType || firstDataType; + } + + // If we found a dataType + // We add the dataType to the list if needed + // and return the corresponding response + if ( finalDataType ) { + if ( finalDataType !== dataTypes[ 0 ] ) { + dataTypes.unshift( finalDataType ); + } + return responses[ finalDataType ]; + } +} + +/* Chain conversions given the request and the original response + * Also sets the responseXXX fields on the jqXHR instance + */ +function ajaxConvert( s, response, jqXHR, isSuccess ) { + var conv2, current, conv, tmp, prev, + converters = {}, + + // Work with a copy of dataTypes in case we need to modify it for conversion + dataTypes = s.dataTypes.slice(); + + // Create converters map with lowercased keys + if ( dataTypes[ 1 ] ) { + for ( conv in s.converters ) { + converters[ conv.toLowerCase() ] = s.converters[ conv ]; + } + } + + current = dataTypes.shift(); + + // Convert to each sequential dataType + while ( current ) { + + if ( s.responseFields[ current ] ) { + jqXHR[ s.responseFields[ current ] ] = response; + } + + // Apply the dataFilter if provided + if ( !prev && isSuccess && s.dataFilter ) { + response = s.dataFilter( response, s.dataType ); + } + + prev = current; + current = dataTypes.shift(); + + if ( current ) { + + // There's only work to do if current dataType is non-auto + if ( current === "*" ) { + + current = prev; + + // Convert response if prev dataType is non-auto and differs from current + } else if ( prev !== "*" && prev !== current ) { + + // Seek a direct converter + conv = converters[ prev + " " + current ] || converters[ "* " + current ]; + + // If none found, seek a pair + if ( !conv ) { + for ( conv2 in converters ) { + + // If conv2 outputs current + tmp = conv2.split( " " ); + if ( tmp[ 1 ] === current ) { + + // If prev can be converted to accepted input + conv = converters[ prev + " " + tmp[ 0 ] ] || + converters[ "* " + tmp[ 0 ] ]; + if ( conv ) { + + // Condense equivalence converters + if ( conv === true ) { + conv = converters[ conv2 ]; + + // Otherwise, insert the intermediate dataType + } else if ( converters[ conv2 ] !== true ) { + current = tmp[ 0 ]; + dataTypes.unshift( tmp[ 1 ] ); + } + break; + } + } + } + } + + // Apply converter (if not an equivalence) + if ( conv !== true ) { + + // Unless errors are allowed to bubble, catch and return them + if ( conv && s.throws ) { + response = conv( response ); + } else { + try { + response = conv( response ); + } catch ( e ) { + return { + state: "parsererror", + error: conv ? e : "No conversion from " + prev + " to " + current + }; + } + } + } + } + } + } + + return { state: "success", data: response }; +} + +jQuery.extend( { + + // Counter for holding the number of active queries + active: 0, + + // Last-Modified header cache for next request + lastModified: {}, + etag: {}, + + ajaxSettings: { + url: location.href, + type: "GET", + isLocal: rlocalProtocol.test( location.protocol ), + global: true, + processData: true, + async: true, + contentType: "application/x-www-form-urlencoded; charset=UTF-8", + + /* + timeout: 0, + data: null, + dataType: null, + username: null, + password: null, + cache: null, + throws: false, + traditional: false, + headers: {}, + */ + + accepts: { + "*": allTypes, + text: "text/plain", + html: "text/html", + xml: "application/xml, text/xml", + json: "application/json, text/javascript" + }, + + contents: { + xml: /\bxml\b/, + html: /\bhtml/, + json: /\bjson\b/ + }, + + responseFields: { + xml: "responseXML", + text: "responseText", + json: "responseJSON" + }, + + // Data converters + // Keys separate source (or catchall "*") and destination types with a single space + converters: { + + // Convert anything to text + "* text": String, + + // Text to html (true = no transformation) + "text html": true, + + // Evaluate text as a json expression + "text json": JSON.parse, + + // Parse text as xml + "text xml": jQuery.parseXML + }, + + // For options that shouldn't be deep extended: + // you can add your own custom options here if + // and when you create one that shouldn't be + // deep extended (see ajaxExtend) + flatOptions: { + url: true, + context: true + } + }, + + // Creates a full fledged settings object into target + // with both ajaxSettings and settings fields. + // If target is omitted, writes into ajaxSettings. + ajaxSetup: function( target, settings ) { + return settings ? + + // Building a settings object + ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) : + + // Extending ajaxSettings + ajaxExtend( jQuery.ajaxSettings, target ); + }, + + ajaxPrefilter: addToPrefiltersOrTransports( prefilters ), + ajaxTransport: addToPrefiltersOrTransports( transports ), + + // Main method + ajax: function( url, options ) { + + // If url is an object, simulate pre-1.5 signature + if ( typeof url === "object" ) { + options = url; + url = undefined; + } + + // Force options to be an object + options = options || {}; + + var transport, + + // URL without anti-cache param + cacheURL, + + // Response headers + responseHeadersString, + responseHeaders, + + // timeout handle + timeoutTimer, + + // Url cleanup var + urlAnchor, + + // Request state (becomes false upon send and true upon completion) + completed, + + // To know if global events are to be dispatched + fireGlobals, + + // Loop variable + i, + + // uncached part of the url + uncached, + + // Create the final options object + s = jQuery.ajaxSetup( {}, options ), + + // Callbacks context + callbackContext = s.context || s, + + // Context for global events is callbackContext if it is a DOM node or jQuery collection + globalEventContext = s.context && + ( callbackContext.nodeType || callbackContext.jquery ) ? + jQuery( callbackContext ) : + jQuery.event, + + // Deferreds + deferred = jQuery.Deferred(), + completeDeferred = jQuery.Callbacks( "once memory" ), + + // Status-dependent callbacks + statusCode = s.statusCode || {}, + + // Headers (they are sent all at once) + requestHeaders = {}, + requestHeadersNames = {}, + + // Default abort message + strAbort = "canceled", + + // Fake xhr + jqXHR = { + readyState: 0, + + // Builds headers hashtable if needed + getResponseHeader: function( key ) { + var match; + if ( completed ) { + if ( !responseHeaders ) { + responseHeaders = {}; + while ( ( match = rheaders.exec( responseHeadersString ) ) ) { + responseHeaders[ match[ 1 ].toLowerCase() + " " ] = + ( responseHeaders[ match[ 1 ].toLowerCase() + " " ] || [] ) + .concat( match[ 2 ] ); + } + } + match = responseHeaders[ key.toLowerCase() + " " ]; + } + return match == null ? null : match.join( ", " ); + }, + + // Raw string + getAllResponseHeaders: function() { + return completed ? responseHeadersString : null; + }, + + // Caches the header + setRequestHeader: function( name, value ) { + if ( completed == null ) { + name = requestHeadersNames[ name.toLowerCase() ] = + requestHeadersNames[ name.toLowerCase() ] || name; + requestHeaders[ name ] = value; + } + return this; + }, + + // Overrides response content-type header + overrideMimeType: function( type ) { + if ( completed == null ) { + s.mimeType = type; + } + return this; + }, + + // Status-dependent callbacks + statusCode: function( map ) { + var code; + if ( map ) { + if ( completed ) { + + // Execute the appropriate callbacks + jqXHR.always( map[ jqXHR.status ] ); + } else { + + // Lazy-add the new callbacks in a way that preserves old ones + for ( code in map ) { + statusCode[ code ] = [ statusCode[ code ], map[ code ] ]; + } + } + } + return this; + }, + + // Cancel the request + abort: function( statusText ) { + var finalText = statusText || strAbort; + if ( transport ) { + transport.abort( finalText ); + } + done( 0, finalText ); + return this; + } + }; + + // Attach deferreds + deferred.promise( jqXHR ); + + // Add protocol if not provided (prefilters might expect it) + // Handle falsy url in the settings object (#10093: consistency with old signature) + // We also use the url parameter if available + s.url = ( ( url || s.url || location.href ) + "" ) + .replace( rprotocol, location.protocol + "//" ); + + // Alias method option to type as per ticket #12004 + s.type = options.method || options.type || s.method || s.type; + + // Extract dataTypes list + s.dataTypes = ( s.dataType || "*" ).toLowerCase().match( rnothtmlwhite ) || [ "" ]; + + // A cross-domain request is in order when the origin doesn't match the current origin. + if ( s.crossDomain == null ) { + urlAnchor = document.createElement( "a" ); + + // Support: IE <=8 - 11, Edge 12 - 15 + // IE throws exception on accessing the href property if url is malformed, + // e.g. http://example.com:80x/ + try { + urlAnchor.href = s.url; + + // Support: IE <=8 - 11 only + // Anchor's host property isn't correctly set when s.url is relative + urlAnchor.href = urlAnchor.href; + s.crossDomain = originAnchor.protocol + "//" + originAnchor.host !== + urlAnchor.protocol + "//" + urlAnchor.host; + } catch ( e ) { + + // If there is an error parsing the URL, assume it is crossDomain, + // it can be rejected by the transport if it is invalid + s.crossDomain = true; + } + } + + // Convert data if not already a string + if ( s.data && s.processData && typeof s.data !== "string" ) { + s.data = jQuery.param( s.data, s.traditional ); + } + + // Apply prefilters + inspectPrefiltersOrTransports( prefilters, s, options, jqXHR ); + + // If request was aborted inside a prefilter, stop there + if ( completed ) { + return jqXHR; + } + + // We can fire global events as of now if asked to + // Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118) + fireGlobals = jQuery.event && s.global; + + // Watch for a new set of requests + if ( fireGlobals && jQuery.active++ === 0 ) { + jQuery.event.trigger( "ajaxStart" ); + } + + // Uppercase the type + s.type = s.type.toUpperCase(); + + // Determine if request has content + s.hasContent = !rnoContent.test( s.type ); + + // Save the URL in case we're toying with the If-Modified-Since + // and/or If-None-Match header later on + // Remove hash to simplify url manipulation + cacheURL = s.url.replace( rhash, "" ); + + // More options handling for requests with no content + if ( !s.hasContent ) { + + // Remember the hash so we can put it back + uncached = s.url.slice( cacheURL.length ); + + // If data is available and should be processed, append data to url + if ( s.data && ( s.processData || typeof s.data === "string" ) ) { + cacheURL += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data; + + // #9682: remove data so that it's not used in an eventual retry + delete s.data; + } + + // Add or update anti-cache param if needed + if ( s.cache === false ) { + cacheURL = cacheURL.replace( rantiCache, "$1" ); + uncached = ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + ( nonce.guid++ ) + + uncached; + } + + // Put hash and anti-cache on the URL that will be requested (gh-1732) + s.url = cacheURL + uncached; + + // Change '%20' to '+' if this is encoded form body content (gh-2658) + } else if ( s.data && s.processData && + ( s.contentType || "" ).indexOf( "application/x-www-form-urlencoded" ) === 0 ) { + s.data = s.data.replace( r20, "+" ); + } + + // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. + if ( s.ifModified ) { + if ( jQuery.lastModified[ cacheURL ] ) { + jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] ); + } + if ( jQuery.etag[ cacheURL ] ) { + jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] ); + } + } + + // Set the correct header, if data is being sent + if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) { + jqXHR.setRequestHeader( "Content-Type", s.contentType ); + } + + // Set the Accepts header for the server, depending on the dataType + jqXHR.setRequestHeader( + "Accept", + s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[ 0 ] ] ? + s.accepts[ s.dataTypes[ 0 ] ] + + ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) : + s.accepts[ "*" ] + ); + + // Check for headers option + for ( i in s.headers ) { + jqXHR.setRequestHeader( i, s.headers[ i ] ); + } + + // Allow custom headers/mimetypes and early abort + if ( s.beforeSend && + ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || completed ) ) { + + // Abort if not done already and return + return jqXHR.abort(); + } + + // Aborting is no longer a cancellation + strAbort = "abort"; + + // Install callbacks on deferreds + completeDeferred.add( s.complete ); + jqXHR.done( s.success ); + jqXHR.fail( s.error ); + + // Get transport + transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR ); + + // If no transport, we auto-abort + if ( !transport ) { + done( -1, "No Transport" ); + } else { + jqXHR.readyState = 1; + + // Send global event + if ( fireGlobals ) { + globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] ); + } + + // If request was aborted inside ajaxSend, stop there + if ( completed ) { + return jqXHR; + } + + // Timeout + if ( s.async && s.timeout > 0 ) { + timeoutTimer = window.setTimeout( function() { + jqXHR.abort( "timeout" ); + }, s.timeout ); + } + + try { + completed = false; + transport.send( requestHeaders, done ); + } catch ( e ) { + + // Rethrow post-completion exceptions + if ( completed ) { + throw e; + } + + // Propagate others as results + done( -1, e ); + } + } + + // Callback for when everything is done + function done( status, nativeStatusText, responses, headers ) { + var isSuccess, success, error, response, modified, + statusText = nativeStatusText; + + // Ignore repeat invocations + if ( completed ) { + return; + } + + completed = true; + + // Clear timeout if it exists + if ( timeoutTimer ) { + window.clearTimeout( timeoutTimer ); + } + + // Dereference transport for early garbage collection + // (no matter how long the jqXHR object will be used) + transport = undefined; + + // Cache response headers + responseHeadersString = headers || ""; + + // Set readyState + jqXHR.readyState = status > 0 ? 4 : 0; + + // Determine if successful + isSuccess = status >= 200 && status < 300 || status === 304; + + // Get response data + if ( responses ) { + response = ajaxHandleResponses( s, jqXHR, responses ); + } + + // Use a noop converter for missing script but not if jsonp + if ( !isSuccess && + jQuery.inArray( "script", s.dataTypes ) > -1 && + jQuery.inArray( "json", s.dataTypes ) < 0 ) { + s.converters[ "text script" ] = function() {}; + } + + // Convert no matter what (that way responseXXX fields are always set) + response = ajaxConvert( s, response, jqXHR, isSuccess ); + + // If successful, handle type chaining + if ( isSuccess ) { + + // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. + if ( s.ifModified ) { + modified = jqXHR.getResponseHeader( "Last-Modified" ); + if ( modified ) { + jQuery.lastModified[ cacheURL ] = modified; + } + modified = jqXHR.getResponseHeader( "etag" ); + if ( modified ) { + jQuery.etag[ cacheURL ] = modified; + } + } + + // if no content + if ( status === 204 || s.type === "HEAD" ) { + statusText = "nocontent"; + + // if not modified + } else if ( status === 304 ) { + statusText = "notmodified"; + + // If we have data, let's convert it + } else { + statusText = response.state; + success = response.data; + error = response.error; + isSuccess = !error; + } + } else { + + // Extract error from statusText and normalize for non-aborts + error = statusText; + if ( status || !statusText ) { + statusText = "error"; + if ( status < 0 ) { + status = 0; + } + } + } + + // Set data for the fake xhr object + jqXHR.status = status; + jqXHR.statusText = ( nativeStatusText || statusText ) + ""; + + // Success/Error + if ( isSuccess ) { + deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] ); + } else { + deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] ); + } + + // Status-dependent callbacks + jqXHR.statusCode( statusCode ); + statusCode = undefined; + + if ( fireGlobals ) { + globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError", + [ jqXHR, s, isSuccess ? success : error ] ); + } + + // Complete + completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] ); + + if ( fireGlobals ) { + globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] ); + + // Handle the global AJAX counter + if ( !( --jQuery.active ) ) { + jQuery.event.trigger( "ajaxStop" ); + } + } + } + + return jqXHR; + }, + + getJSON: function( url, data, callback ) { + return jQuery.get( url, data, callback, "json" ); + }, + + getScript: function( url, callback ) { + return jQuery.get( url, undefined, callback, "script" ); + } +} ); + +jQuery.each( [ "get", "post" ], function( _i, method ) { + jQuery[ method ] = function( url, data, callback, type ) { + + // Shift arguments if data argument was omitted + if ( isFunction( data ) ) { + type = type || callback; + callback = data; + data = undefined; + } + + // The url can be an options object (which then must have .url) + return jQuery.ajax( jQuery.extend( { + url: url, + type: method, + dataType: type, + data: data, + success: callback + }, jQuery.isPlainObject( url ) && url ) ); + }; +} ); + +jQuery.ajaxPrefilter( function( s ) { + var i; + for ( i in s.headers ) { + if ( i.toLowerCase() === "content-type" ) { + s.contentType = s.headers[ i ] || ""; + } + } +} ); + + +jQuery._evalUrl = function( url, options, doc ) { + return jQuery.ajax( { + url: url, + + // Make this explicit, since user can override this through ajaxSetup (#11264) + type: "GET", + dataType: "script", + cache: true, + async: false, + global: false, + + // Only evaluate the response if it is successful (gh-4126) + // dataFilter is not invoked for failure responses, so using it instead + // of the default converter is kludgy but it works. + converters: { + "text script": function() {} + }, + dataFilter: function( response ) { + jQuery.globalEval( response, options, doc ); + } + } ); +}; + + +jQuery.fn.extend( { + wrapAll: function( html ) { + var wrap; + + if ( this[ 0 ] ) { + if ( isFunction( html ) ) { + html = html.call( this[ 0 ] ); + } + + // The elements to wrap the target around + wrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true ); + + if ( this[ 0 ].parentNode ) { + wrap.insertBefore( this[ 0 ] ); + } + + wrap.map( function() { + var elem = this; + + while ( elem.firstElementChild ) { + elem = elem.firstElementChild; + } + + return elem; + } ).append( this ); + } + + return this; + }, + + wrapInner: function( html ) { + if ( isFunction( html ) ) { + return this.each( function( i ) { + jQuery( this ).wrapInner( html.call( this, i ) ); + } ); + } + + return this.each( function() { + var self = jQuery( this ), + contents = self.contents(); + + if ( contents.length ) { + contents.wrapAll( html ); + + } else { + self.append( html ); + } + } ); + }, + + wrap: function( html ) { + var htmlIsFunction = isFunction( html ); + + return this.each( function( i ) { + jQuery( this ).wrapAll( htmlIsFunction ? html.call( this, i ) : html ); + } ); + }, + + unwrap: function( selector ) { + this.parent( selector ).not( "body" ).each( function() { + jQuery( this ).replaceWith( this.childNodes ); + } ); + return this; + } +} ); + + +jQuery.expr.pseudos.hidden = function( elem ) { + return !jQuery.expr.pseudos.visible( elem ); +}; +jQuery.expr.pseudos.visible = function( elem ) { + return !!( elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length ); +}; + + + + +jQuery.ajaxSettings.xhr = function() { + try { + return new window.XMLHttpRequest(); + } catch ( e ) {} +}; + +var xhrSuccessStatus = { + + // File protocol always yields status code 0, assume 200 + 0: 200, + + // Support: IE <=9 only + // #1450: sometimes IE returns 1223 when it should be 204 + 1223: 204 + }, + xhrSupported = jQuery.ajaxSettings.xhr(); + +support.cors = !!xhrSupported && ( "withCredentials" in xhrSupported ); +support.ajax = xhrSupported = !!xhrSupported; + +jQuery.ajaxTransport( function( options ) { + var callback, errorCallback; + + // Cross domain only allowed if supported through XMLHttpRequest + if ( support.cors || xhrSupported && !options.crossDomain ) { + return { + send: function( headers, complete ) { + var i, + xhr = options.xhr(); + + xhr.open( + options.type, + options.url, + options.async, + options.username, + options.password + ); + + // Apply custom fields if provided + if ( options.xhrFields ) { + for ( i in options.xhrFields ) { + xhr[ i ] = options.xhrFields[ i ]; + } + } + + // Override mime type if needed + if ( options.mimeType && xhr.overrideMimeType ) { + xhr.overrideMimeType( options.mimeType ); + } + + // X-Requested-With header + // For cross-domain requests, seeing as conditions for a preflight are + // akin to a jigsaw puzzle, we simply never set it to be sure. + // (it can always be set on a per-request basis or even using ajaxSetup) + // For same-domain requests, won't change header if already provided. + if ( !options.crossDomain && !headers[ "X-Requested-With" ] ) { + headers[ "X-Requested-With" ] = "XMLHttpRequest"; + } + + // Set headers + for ( i in headers ) { + xhr.setRequestHeader( i, headers[ i ] ); + } + + // Callback + callback = function( type ) { + return function() { + if ( callback ) { + callback = errorCallback = xhr.onload = + xhr.onerror = xhr.onabort = xhr.ontimeout = + xhr.onreadystatechange = null; + + if ( type === "abort" ) { + xhr.abort(); + } else if ( type === "error" ) { + + // Support: IE <=9 only + // On a manual native abort, IE9 throws + // errors on any property access that is not readyState + if ( typeof xhr.status !== "number" ) { + complete( 0, "error" ); + } else { + complete( + + // File: protocol always yields status 0; see #8605, #14207 + xhr.status, + xhr.statusText + ); + } + } else { + complete( + xhrSuccessStatus[ xhr.status ] || xhr.status, + xhr.statusText, + + // Support: IE <=9 only + // IE9 has no XHR2 but throws on binary (trac-11426) + // For XHR2 non-text, let the caller handle it (gh-2498) + ( xhr.responseType || "text" ) !== "text" || + typeof xhr.responseText !== "string" ? + { binary: xhr.response } : + { text: xhr.responseText }, + xhr.getAllResponseHeaders() + ); + } + } + }; + }; + + // Listen to events + xhr.onload = callback(); + errorCallback = xhr.onerror = xhr.ontimeout = callback( "error" ); + + // Support: IE 9 only + // Use onreadystatechange to replace onabort + // to handle uncaught aborts + if ( xhr.onabort !== undefined ) { + xhr.onabort = errorCallback; + } else { + xhr.onreadystatechange = function() { + + // Check readyState before timeout as it changes + if ( xhr.readyState === 4 ) { + + // Allow onerror to be called first, + // but that will not handle a native abort + // Also, save errorCallback to a variable + // as xhr.onerror cannot be accessed + window.setTimeout( function() { + if ( callback ) { + errorCallback(); + } + } ); + } + }; + } + + // Create the abort callback + callback = callback( "abort" ); + + try { + + // Do send the request (this may raise an exception) + xhr.send( options.hasContent && options.data || null ); + } catch ( e ) { + + // #14683: Only rethrow if this hasn't been notified as an error yet + if ( callback ) { + throw e; + } + } + }, + + abort: function() { + if ( callback ) { + callback(); + } + } + }; + } +} ); + + + + +// Prevent auto-execution of scripts when no explicit dataType was provided (See gh-2432) +jQuery.ajaxPrefilter( function( s ) { + if ( s.crossDomain ) { + s.contents.script = false; + } +} ); + +// Install script dataType +jQuery.ajaxSetup( { + accepts: { + script: "text/javascript, application/javascript, " + + "application/ecmascript, application/x-ecmascript" + }, + contents: { + script: /\b(?:java|ecma)script\b/ + }, + converters: { + "text script": function( text ) { + jQuery.globalEval( text ); + return text; + } + } +} ); + +// Handle cache's special case and crossDomain +jQuery.ajaxPrefilter( "script", function( s ) { + if ( s.cache === undefined ) { + s.cache = false; + } + if ( s.crossDomain ) { + s.type = "GET"; + } +} ); + +// Bind script tag hack transport +jQuery.ajaxTransport( "script", function( s ) { + + // This transport only deals with cross domain or forced-by-attrs requests + if ( s.crossDomain || s.scriptAttrs ) { + var script, callback; + return { + send: function( _, complete ) { + script = jQuery( " +{% endmacro %} diff --git a/_static/scripts/bootstrap.js b/_static/scripts/bootstrap.js new file mode 100644 index 00000000..4ec783e7 --- /dev/null +++ b/_static/scripts/bootstrap.js @@ -0,0 +1,32 @@ +!function(t){var e={};function n(i){if(e[i])return e[i].exports;var o=e[i]={i:i,l:!1,exports:{}};return t[i].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=t,n.c=e,n.d=function(t,e,i){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(i,o,function(e){return t[e]}.bind(null,o));return i},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=5)}([function(t,e){t.exports=jQuery},function(t,e,n){"use strict";n.r(e),function(t){ +/**! + * @fileOverview Kickass library to create and place poppers near their reference elements. + * @version 1.16.1 + * @license + * Copyright (c) 2016 Federico Zivolo and contributors + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ +var n="undefined"!=typeof window&&"undefined"!=typeof document&&"undefined"!=typeof navigator,i=function(){for(var t=["Edge","Trident","Firefox"],e=0;e=0)return 1;return 0}();var o=n&&window.Promise?function(t){var e=!1;return function(){e||(e=!0,window.Promise.resolve().then((function(){e=!1,t()})))}}:function(t){var e=!1;return function(){e||(e=!0,setTimeout((function(){e=!1,t()}),i))}};function r(t){return t&&"[object Function]"==={}.toString.call(t)}function a(t,e){if(1!==t.nodeType)return[];var n=t.ownerDocument.defaultView.getComputedStyle(t,null);return e?n[e]:n}function s(t){return"HTML"===t.nodeName?t:t.parentNode||t.host}function l(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body}var e=a(t),n=e.overflow,i=e.overflowX,o=e.overflowY;return/(auto|scroll|overlay)/.test(n+o+i)?t:l(s(t))}function u(t){return t&&t.referenceNode?t.referenceNode:t}var f=n&&!(!window.MSInputMethodContext||!document.documentMode),d=n&&/MSIE 10/.test(navigator.userAgent);function c(t){return 11===t?f:10===t?d:f||d}function h(t){if(!t)return document.documentElement;for(var e=c(10)?document.body:null,n=t.offsetParent||null;n===e&&t.nextElementSibling;)n=(t=t.nextElementSibling).offsetParent;var i=n&&n.nodeName;return i&&"BODY"!==i&&"HTML"!==i?-1!==["TH","TD","TABLE"].indexOf(n.nodeName)&&"static"===a(n,"position")?h(n):n:t?t.ownerDocument.documentElement:document.documentElement}function p(t){return null!==t.parentNode?p(t.parentNode):t}function m(t,e){if(!(t&&t.nodeType&&e&&e.nodeType))return document.documentElement;var n=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,i=n?t:e,o=n?e:t,r=document.createRange();r.setStart(i,0),r.setEnd(o,0);var a,s,l=r.commonAncestorContainer;if(t!==l&&e!==l||i.contains(o))return"BODY"===(s=(a=l).nodeName)||"HTML"!==s&&h(a.firstElementChild)!==a?h(l):l;var u=p(t);return u.host?m(u.host,e):m(t,p(e).host)}function g(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top",n="top"===e?"scrollTop":"scrollLeft",i=t.nodeName;if("BODY"===i||"HTML"===i){var o=t.ownerDocument.documentElement,r=t.ownerDocument.scrollingElement||o;return r[n]}return t[n]}function v(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=g(e,"top"),o=g(e,"left"),r=n?-1:1;return t.top+=i*r,t.bottom+=i*r,t.left+=o*r,t.right+=o*r,t}function _(t,e){var n="x"===e?"Left":"Top",i="Left"===n?"Right":"Bottom";return parseFloat(t["border"+n+"Width"])+parseFloat(t["border"+i+"Width"])}function b(t,e,n,i){return Math.max(e["offset"+t],e["scroll"+t],n["client"+t],n["offset"+t],n["scroll"+t],c(10)?parseInt(n["offset"+t])+parseInt(i["margin"+("Height"===t?"Top":"Left")])+parseInt(i["margin"+("Height"===t?"Bottom":"Right")]):0)}function y(t){var e=t.body,n=t.documentElement,i=c(10)&&getComputedStyle(n);return{height:b("Height",e,n,i),width:b("Width",e,n,i)}}var w=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},E=function(){function t(t,e){for(var n=0;n2&&void 0!==arguments[2]&&arguments[2],i=c(10),o="HTML"===e.nodeName,r=N(t),s=N(e),u=l(t),f=a(e),d=parseFloat(f.borderTopWidth),h=parseFloat(f.borderLeftWidth);n&&o&&(s.top=Math.max(s.top,0),s.left=Math.max(s.left,0));var p=S({top:r.top-s.top-d,left:r.left-s.left-h,width:r.width,height:r.height});if(p.marginTop=0,p.marginLeft=0,!i&&o){var m=parseFloat(f.marginTop),g=parseFloat(f.marginLeft);p.top-=d-m,p.bottom-=d-m,p.left-=h-g,p.right-=h-g,p.marginTop=m,p.marginLeft=g}return(i&&!n?e.contains(u):e===u&&"BODY"!==u.nodeName)&&(p=v(p,e)),p}function k(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.ownerDocument.documentElement,i=D(t,n),o=Math.max(n.clientWidth,window.innerWidth||0),r=Math.max(n.clientHeight,window.innerHeight||0),a=e?0:g(n),s=e?0:g(n,"left"),l={top:a-i.top+i.marginTop,left:s-i.left+i.marginLeft,width:o,height:r};return S(l)}function A(t){var e=t.nodeName;if("BODY"===e||"HTML"===e)return!1;if("fixed"===a(t,"position"))return!0;var n=s(t);return!!n&&A(n)}function O(t){if(!t||!t.parentElement||c())return document.documentElement;for(var e=t.parentElement;e&&"none"===a(e,"transform");)e=e.parentElement;return e||document.documentElement}function I(t,e,n,i){var o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],r={top:0,left:0},a=o?O(t):m(t,u(e));if("viewport"===i)r=k(a,o);else{var f=void 0;"scrollParent"===i?"BODY"===(f=l(s(e))).nodeName&&(f=t.ownerDocument.documentElement):f="window"===i?t.ownerDocument.documentElement:i;var d=D(f,a,o);if("HTML"!==f.nodeName||A(a))r=d;else{var c=y(t.ownerDocument),h=c.height,p=c.width;r.top+=d.top-d.marginTop,r.bottom=h+d.top,r.left+=d.left-d.marginLeft,r.right=p+d.left}}var g="number"==typeof(n=n||0);return r.left+=g?n:n.left||0,r.top+=g?n:n.top||0,r.right-=g?n:n.right||0,r.bottom-=g?n:n.bottom||0,r}function x(t){return t.width*t.height}function j(t,e,n,i,o){var r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===t.indexOf("auto"))return t;var a=I(n,i,r,o),s={top:{width:a.width,height:e.top-a.top},right:{width:a.right-e.right,height:a.height},bottom:{width:a.width,height:a.bottom-e.bottom},left:{width:e.left-a.left,height:a.height}},l=Object.keys(s).map((function(t){return C({key:t},s[t],{area:x(s[t])})})).sort((function(t,e){return e.area-t.area})),u=l.filter((function(t){var e=t.width,i=t.height;return e>=n.clientWidth&&i>=n.clientHeight})),f=u.length>0?u[0].key:l[0].key,d=t.split("-")[1];return f+(d?"-"+d:"")}function L(t,e,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=i?O(e):m(e,u(n));return D(n,o,i)}function P(t){var e=t.ownerDocument.defaultView.getComputedStyle(t),n=parseFloat(e.marginTop||0)+parseFloat(e.marginBottom||0),i=parseFloat(e.marginLeft||0)+parseFloat(e.marginRight||0);return{width:t.offsetWidth+i,height:t.offsetHeight+n}}function F(t){var e={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,(function(t){return e[t]}))}function R(t,e,n){n=n.split("-")[0];var i=P(t),o={width:i.width,height:i.height},r=-1!==["right","left"].indexOf(n),a=r?"top":"left",s=r?"left":"top",l=r?"height":"width",u=r?"width":"height";return o[a]=e[a]+e[l]/2-i[l]/2,o[s]=n===s?e[s]-i[u]:e[F(s)],o}function M(t,e){return Array.prototype.find?t.find(e):t.filter(e)[0]}function H(t,e,n){return(void 0===n?t:t.slice(0,function(t,e,n){if(Array.prototype.findIndex)return t.findIndex((function(t){return t[e]===n}));var i=M(t,(function(t){return t[e]===n}));return t.indexOf(i)}(t,"name",n))).forEach((function(t){t.function&&console.warn("`modifier.function` is deprecated, use `modifier.fn`!");var n=t.function||t.fn;t.enabled&&r(n)&&(e.offsets.popper=S(e.offsets.popper),e.offsets.reference=S(e.offsets.reference),e=n(e,t))})),e}function B(){if(!this.state.isDestroyed){var t={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};t.offsets.reference=L(this.state,this.popper,this.reference,this.options.positionFixed),t.placement=j(this.options.placement,t.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),t.originalPlacement=t.placement,t.positionFixed=this.options.positionFixed,t.offsets.popper=R(this.popper,t.offsets.reference,t.placement),t.offsets.popper.position=this.options.positionFixed?"fixed":"absolute",t=H(this.modifiers,t),this.state.isCreated?this.options.onUpdate(t):(this.state.isCreated=!0,this.options.onCreate(t))}}function q(t,e){return t.some((function(t){var n=t.name;return t.enabled&&n===e}))}function Q(t){for(var e=[!1,"ms","Webkit","Moz","O"],n=t.charAt(0).toUpperCase()+t.slice(1),i=0;i1&&void 0!==arguments[1]&&arguments[1],n=Z.indexOf(t),i=Z.slice(n+1).concat(Z.slice(0,n));return e?i.reverse():i}var et="flip",nt="clockwise",it="counterclockwise";function ot(t,e,n,i){var o=[0,0],r=-1!==["right","left"].indexOf(i),a=t.split(/(\+|\-)/).map((function(t){return t.trim()})),s=a.indexOf(M(a,(function(t){return-1!==t.search(/,|\s/)})));a[s]&&-1===a[s].indexOf(",")&&console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var l=/\s*,\s*|\s+/,u=-1!==s?[a.slice(0,s).concat([a[s].split(l)[0]]),[a[s].split(l)[1]].concat(a.slice(s+1))]:[a];return(u=u.map((function(t,i){var o=(1===i?!r:r)?"height":"width",a=!1;return t.reduce((function(t,e){return""===t[t.length-1]&&-1!==["+","-"].indexOf(e)?(t[t.length-1]=e,a=!0,t):a?(t[t.length-1]+=e,a=!1,t):t.concat(e)}),[]).map((function(t){return function(t,e,n,i){var o=t.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),r=+o[1],a=o[2];if(!r)return t;if(0===a.indexOf("%")){var s=void 0;switch(a){case"%p":s=n;break;case"%":case"%r":default:s=i}return S(s)[e]/100*r}if("vh"===a||"vw"===a){return("vh"===a?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0))/100*r}return r}(t,o,e,n)}))}))).forEach((function(t,e){t.forEach((function(n,i){K(n)&&(o[e]+=n*("-"===t[i-1]?-1:1))}))})),o}var rt={placement:"bottom",positionFixed:!1,eventsEnabled:!0,removeOnDestroy:!1,onCreate:function(){},onUpdate:function(){},modifiers:{shift:{order:100,enabled:!0,fn:function(t){var e=t.placement,n=e.split("-")[0],i=e.split("-")[1];if(i){var o=t.offsets,r=o.reference,a=o.popper,s=-1!==["bottom","top"].indexOf(n),l=s?"left":"top",u=s?"width":"height",f={start:T({},l,r[l]),end:T({},l,r[l]+r[u]-a[u])};t.offsets.popper=C({},a,f[i])}return t}},offset:{order:200,enabled:!0,fn:function(t,e){var n=e.offset,i=t.placement,o=t.offsets,r=o.popper,a=o.reference,s=i.split("-")[0],l=void 0;return l=K(+n)?[+n,0]:ot(n,r,a,s),"left"===s?(r.top+=l[0],r.left-=l[1]):"right"===s?(r.top+=l[0],r.left+=l[1]):"top"===s?(r.left+=l[0],r.top-=l[1]):"bottom"===s&&(r.left+=l[0],r.top+=l[1]),t.popper=r,t},offset:0},preventOverflow:{order:300,enabled:!0,fn:function(t,e){var n=e.boundariesElement||h(t.instance.popper);t.instance.reference===n&&(n=h(n));var i=Q("transform"),o=t.instance.popper.style,r=o.top,a=o.left,s=o[i];o.top="",o.left="",o[i]="";var l=I(t.instance.popper,t.instance.reference,e.padding,n,t.positionFixed);o.top=r,o.left=a,o[i]=s,e.boundaries=l;var u=e.priority,f=t.offsets.popper,d={primary:function(t){var n=f[t];return f[t]l[t]&&!e.escapeWithReference&&(i=Math.min(f[n],l[t]-("right"===t?f.width:f.height))),T({},n,i)}};return u.forEach((function(t){var e=-1!==["left","top"].indexOf(t)?"primary":"secondary";f=C({},f,d[e](t))})),t.offsets.popper=f,t},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(t){var e=t.offsets,n=e.popper,i=e.reference,o=t.placement.split("-")[0],r=Math.floor,a=-1!==["top","bottom"].indexOf(o),s=a?"right":"bottom",l=a?"left":"top",u=a?"width":"height";return n[s]r(i[s])&&(t.offsets.popper[l]=r(i[s])),t}},arrow:{order:500,enabled:!0,fn:function(t,e){var n;if(!G(t.instance.modifiers,"arrow","keepTogether"))return t;var i=e.element;if("string"==typeof i){if(!(i=t.instance.popper.querySelector(i)))return t}else if(!t.instance.popper.contains(i))return console.warn("WARNING: `arrow.element` must be child of its popper element!"),t;var o=t.placement.split("-")[0],r=t.offsets,s=r.popper,l=r.reference,u=-1!==["left","right"].indexOf(o),f=u?"height":"width",d=u?"Top":"Left",c=d.toLowerCase(),h=u?"left":"top",p=u?"bottom":"right",m=P(i)[f];l[p]-ms[p]&&(t.offsets.popper[c]+=l[c]+m-s[p]),t.offsets.popper=S(t.offsets.popper);var g=l[c]+l[f]/2-m/2,v=a(t.instance.popper),_=parseFloat(v["margin"+d]),b=parseFloat(v["border"+d+"Width"]),y=g-t.offsets.popper[c]-_-b;return y=Math.max(Math.min(s[f]-m,y),0),t.arrowElement=i,t.offsets.arrow=(T(n={},c,Math.round(y)),T(n,h,""),n),t},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(t,e){if(q(t.instance.modifiers,"inner"))return t;if(t.flipped&&t.placement===t.originalPlacement)return t;var n=I(t.instance.popper,t.instance.reference,e.padding,e.boundariesElement,t.positionFixed),i=t.placement.split("-")[0],o=F(i),r=t.placement.split("-")[1]||"",a=[];switch(e.behavior){case et:a=[i,o];break;case nt:a=tt(i);break;case it:a=tt(i,!0);break;default:a=e.behavior}return a.forEach((function(s,l){if(i!==s||a.length===l+1)return t;i=t.placement.split("-")[0],o=F(i);var u=t.offsets.popper,f=t.offsets.reference,d=Math.floor,c="left"===i&&d(u.right)>d(f.left)||"right"===i&&d(u.left)d(f.top)||"bottom"===i&&d(u.top)d(n.right),m=d(u.top)d(n.bottom),v="left"===i&&h||"right"===i&&p||"top"===i&&m||"bottom"===i&&g,_=-1!==["top","bottom"].indexOf(i),b=!!e.flipVariations&&(_&&"start"===r&&h||_&&"end"===r&&p||!_&&"start"===r&&m||!_&&"end"===r&&g),y=!!e.flipVariationsByContent&&(_&&"start"===r&&p||_&&"end"===r&&h||!_&&"start"===r&&g||!_&&"end"===r&&m),w=b||y;(c||v||w)&&(t.flipped=!0,(c||v)&&(i=a[l+1]),w&&(r=function(t){return"end"===t?"start":"start"===t?"end":t}(r)),t.placement=i+(r?"-"+r:""),t.offsets.popper=C({},t.offsets.popper,R(t.instance.popper,t.offsets.reference,t.placement)),t=H(t.instance.modifiers,t,"flip"))})),t},behavior:"flip",padding:5,boundariesElement:"viewport",flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(t){var e=t.placement,n=e.split("-")[0],i=t.offsets,o=i.popper,r=i.reference,a=-1!==["left","right"].indexOf(n),s=-1===["top","left"].indexOf(n);return o[a?"left":"top"]=r[n]-(s?o[a?"width":"height"]:0),t.placement=F(e),t.offsets.popper=S(o),t}},hide:{order:800,enabled:!0,fn:function(t){if(!G(t.instance.modifiers,"hide","preventOverflow"))return t;var e=t.offsets.reference,n=M(t.instance.modifiers,(function(t){return"preventOverflow"===t.name})).boundaries;if(e.bottomn.right||e.top>n.bottom||e.right2&&void 0!==arguments[2]?arguments[2]:{};w(this,t),this.scheduleUpdate=function(){return requestAnimationFrame(i.update)},this.update=o(this.update.bind(this)),this.options=C({},t.Defaults,a),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=e&&e.jquery?e[0]:e,this.popper=n&&n.jquery?n[0]:n,this.options.modifiers={},Object.keys(C({},t.Defaults.modifiers,a.modifiers)).forEach((function(e){i.options.modifiers[e]=C({},t.Defaults.modifiers[e]||{},a.modifiers?a.modifiers[e]:{})})),this.modifiers=Object.keys(this.options.modifiers).map((function(t){return C({name:t},i.options.modifiers[t])})).sort((function(t,e){return t.order-e.order})),this.modifiers.forEach((function(t){t.enabled&&r(t.onLoad)&&t.onLoad(i.reference,i.popper,i.options,t,i.state)})),this.update();var s=this.options.eventsEnabled;s&&this.enableEventListeners(),this.state.eventsEnabled=s}return E(t,[{key:"update",value:function(){return B.call(this)}},{key:"destroy",value:function(){return W.call(this)}},{key:"enableEventListeners",value:function(){return Y.call(this)}},{key:"disableEventListeners",value:function(){return z.call(this)}}]),t}();at.Utils=("undefined"!=typeof window?window:t).PopperUtils,at.placements=J,at.Defaults=rt,e.default=at}.call(this,n(3))},function(t,e,n){ +/*! + * Bootstrap v4.6.1 (https://getbootstrap.com/) + * Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */ +!function(t,e,n){"use strict";function i(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var o=i(e),r=i(n);function a(t,e){for(var n=0;n=4)throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0")}};d.jQueryDetection(),o.default.fn.emulateTransitionEnd=f,o.default.event.special[d.TRANSITION_END]={bindType:"transitionend",delegateType:"transitionend",handle:function(t){if(o.default(t.target).is(this))return t.handleObj.handler.apply(this,arguments)}};var c=o.default.fn.alert,h=function(){function t(t){this._element=t}var e=t.prototype;return e.close=function(t){var e=this._element;t&&(e=this._getRootElement(t)),this._triggerCloseEvent(e).isDefaultPrevented()||this._removeElement(e)},e.dispose=function(){o.default.removeData(this._element,"bs.alert"),this._element=null},e._getRootElement=function(t){var e=d.getSelectorFromElement(t),n=!1;return e&&(n=document.querySelector(e)),n||(n=o.default(t).closest(".alert")[0]),n},e._triggerCloseEvent=function(t){var e=o.default.Event("close.bs.alert");return o.default(t).trigger(e),e},e._removeElement=function(t){var e=this;if(o.default(t).removeClass("show"),o.default(t).hasClass("fade")){var n=d.getTransitionDurationFromElement(t);o.default(t).one(d.TRANSITION_END,(function(n){return e._destroyElement(t,n)})).emulateTransitionEnd(n)}else this._destroyElement(t)},e._destroyElement=function(t){o.default(t).detach().trigger("closed.bs.alert").remove()},t._jQueryInterface=function(e){return this.each((function(){var n=o.default(this),i=n.data("bs.alert");i||(i=new t(this),n.data("bs.alert",i)),"close"===e&&i[e](this)}))},t._handleDismiss=function(t){return function(e){e&&e.preventDefault(),t.close(this)}},s(t,null,[{key:"VERSION",get:function(){return"4.6.1"}}]),t}();o.default(document).on("click.bs.alert.data-api",'[data-dismiss="alert"]',h._handleDismiss(new h)),o.default.fn.alert=h._jQueryInterface,o.default.fn.alert.Constructor=h,o.default.fn.alert.noConflict=function(){return o.default.fn.alert=c,h._jQueryInterface};var p=o.default.fn.button,m=function(){function t(t){this._element=t,this.shouldAvoidTriggerChange=!1}var e=t.prototype;return e.toggle=function(){var t=!0,e=!0,n=o.default(this._element).closest('[data-toggle="buttons"]')[0];if(n){var i=this._element.querySelector('input:not([type="hidden"])');if(i){if("radio"===i.type)if(i.checked&&this._element.classList.contains("active"))t=!1;else{var r=n.querySelector(".active");r&&o.default(r).removeClass("active")}t&&("checkbox"!==i.type&&"radio"!==i.type||(i.checked=!this._element.classList.contains("active")),this.shouldAvoidTriggerChange||o.default(i).trigger("change")),i.focus(),e=!1}}this._element.hasAttribute("disabled")||this._element.classList.contains("disabled")||(e&&this._element.setAttribute("aria-pressed",!this._element.classList.contains("active")),t&&o.default(this._element).toggleClass("active"))},e.dispose=function(){o.default.removeData(this._element,"bs.button"),this._element=null},t._jQueryInterface=function(e,n){return this.each((function(){var i=o.default(this),r=i.data("bs.button");r||(r=new t(this),i.data("bs.button",r)),r.shouldAvoidTriggerChange=n,"toggle"===e&&r[e]()}))},s(t,null,[{key:"VERSION",get:function(){return"4.6.1"}}]),t}();o.default(document).on("click.bs.button.data-api",'[data-toggle^="button"]',(function(t){var e=t.target,n=e;if(o.default(e).hasClass("btn")||(e=o.default(e).closest(".btn")[0]),!e||e.hasAttribute("disabled")||e.classList.contains("disabled"))t.preventDefault();else{var i=e.querySelector('input:not([type="hidden"])');if(i&&(i.hasAttribute("disabled")||i.classList.contains("disabled")))return void t.preventDefault();"INPUT"!==n.tagName&&"LABEL"===e.tagName||m._jQueryInterface.call(o.default(e),"toggle","INPUT"===n.tagName)}})).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',(function(t){var e=o.default(t.target).closest(".btn")[0];o.default(e).toggleClass("focus",/^focus(in)?$/.test(t.type))})),o.default(window).on("load.bs.button.data-api",(function(){for(var t=[].slice.call(document.querySelectorAll('[data-toggle="buttons"] .btn')),e=0,n=t.length;e0,this._pointerEvent=Boolean(window.PointerEvent||window.MSPointerEvent),this._addEventListeners()}var e=t.prototype;return e.next=function(){this._isSliding||this._slide("next")},e.nextWhenVisible=function(){var t=o.default(this._element);!document.hidden&&t.is(":visible")&&"hidden"!==t.css("visibility")&&this.next()},e.prev=function(){this._isSliding||this._slide("prev")},e.pause=function(t){t||(this._isPaused=!0),this._element.querySelector(".carousel-item-next, .carousel-item-prev")&&(d.triggerTransitionEnd(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null},e.cycle=function(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))},e.to=function(t){var e=this;this._activeElement=this._element.querySelector(".active.carousel-item");var n=this._getItemIndex(this._activeElement);if(!(t>this._items.length-1||t<0))if(this._isSliding)o.default(this._element).one("slid.bs.carousel",(function(){return e.to(t)}));else{if(n===t)return this.pause(),void this.cycle();var i=t>n?"next":"prev";this._slide(i,this._items[t])}},e.dispose=function(){o.default(this._element).off(v),o.default.removeData(this._element,"bs.carousel"),this._items=null,this._config=null,this._element=null,this._interval=null,this._isPaused=null,this._isSliding=null,this._activeElement=null,this._indicatorsElement=null},e._getConfig=function(t){return t=l({},b,t),d.typeCheckConfig(g,t,y),t},e._handleSwipe=function(){var t=Math.abs(this.touchDeltaX);if(!(t<=40)){var e=t/this.touchDeltaX;this.touchDeltaX=0,e>0&&this.prev(),e<0&&this.next()}},e._addEventListeners=function(){var t=this;this._config.keyboard&&o.default(this._element).on("keydown.bs.carousel",(function(e){return t._keydown(e)})),"hover"===this._config.pause&&o.default(this._element).on("mouseenter.bs.carousel",(function(e){return t.pause(e)})).on("mouseleave.bs.carousel",(function(e){return t.cycle(e)})),this._config.touch&&this._addTouchEventListeners()},e._addTouchEventListeners=function(){var t=this;if(this._touchSupported){var e=function(e){t._pointerEvent&&w[e.originalEvent.pointerType.toUpperCase()]?t.touchStartX=e.originalEvent.clientX:t._pointerEvent||(t.touchStartX=e.originalEvent.touches[0].clientX)},n=function(e){t._pointerEvent&&w[e.originalEvent.pointerType.toUpperCase()]&&(t.touchDeltaX=e.originalEvent.clientX-t.touchStartX),t._handleSwipe(),"hover"===t._config.pause&&(t.pause(),t.touchTimeout&&clearTimeout(t.touchTimeout),t.touchTimeout=setTimeout((function(e){return t.cycle(e)}),500+t._config.interval))};o.default(this._element.querySelectorAll(".carousel-item img")).on("dragstart.bs.carousel",(function(t){return t.preventDefault()})),this._pointerEvent?(o.default(this._element).on("pointerdown.bs.carousel",(function(t){return e(t)})),o.default(this._element).on("pointerup.bs.carousel",(function(t){return n(t)})),this._element.classList.add("pointer-event")):(o.default(this._element).on("touchstart.bs.carousel",(function(t){return e(t)})),o.default(this._element).on("touchmove.bs.carousel",(function(e){return function(e){t.touchDeltaX=e.originalEvent.touches&&e.originalEvent.touches.length>1?0:e.originalEvent.touches[0].clientX-t.touchStartX}(e)})),o.default(this._element).on("touchend.bs.carousel",(function(t){return n(t)})))}},e._keydown=function(t){if(!/input|textarea/i.test(t.target.tagName))switch(t.which){case 37:t.preventDefault(),this.prev();break;case 39:t.preventDefault(),this.next()}},e._getItemIndex=function(t){return this._items=t&&t.parentNode?[].slice.call(t.parentNode.querySelectorAll(".carousel-item")):[],this._items.indexOf(t)},e._getItemByDirection=function(t,e){var n="next"===t,i="prev"===t,o=this._getItemIndex(e),r=this._items.length-1;if((i&&0===o||n&&o===r)&&!this._config.wrap)return e;var a=(o+("prev"===t?-1:1))%this._items.length;return-1===a?this._items[this._items.length-1]:this._items[a]},e._triggerSlideEvent=function(t,e){var n=this._getItemIndex(t),i=this._getItemIndex(this._element.querySelector(".active.carousel-item")),r=o.default.Event("slide.bs.carousel",{relatedTarget:t,direction:e,from:i,to:n});return o.default(this._element).trigger(r),r},e._setActiveIndicatorElement=function(t){if(this._indicatorsElement){var e=[].slice.call(this._indicatorsElement.querySelectorAll(".active"));o.default(e).removeClass("active");var n=this._indicatorsElement.children[this._getItemIndex(t)];n&&o.default(n).addClass("active")}},e._updateInterval=function(){var t=this._activeElement||this._element.querySelector(".active.carousel-item");if(t){var e=parseInt(t.getAttribute("data-interval"),10);e?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,this._config.interval=e):this._config.interval=this._config.defaultInterval||this._config.interval}},e._slide=function(t,e){var n,i,r,a=this,s=this._element.querySelector(".active.carousel-item"),l=this._getItemIndex(s),u=e||s&&this._getItemByDirection(t,s),f=this._getItemIndex(u),c=Boolean(this._interval);if("next"===t?(n="carousel-item-left",i="carousel-item-next",r="left"):(n="carousel-item-right",i="carousel-item-prev",r="right"),u&&o.default(u).hasClass("active"))this._isSliding=!1;else if(!this._triggerSlideEvent(u,r).isDefaultPrevented()&&s&&u){this._isSliding=!0,c&&this.pause(),this._setActiveIndicatorElement(u),this._activeElement=u;var h=o.default.Event("slid.bs.carousel",{relatedTarget:u,direction:r,from:l,to:f});if(o.default(this._element).hasClass("slide")){o.default(u).addClass(i),d.reflow(u),o.default(s).addClass(n),o.default(u).addClass(n);var p=d.getTransitionDurationFromElement(s);o.default(s).one(d.TRANSITION_END,(function(){o.default(u).removeClass(n+" "+i).addClass("active"),o.default(s).removeClass("active "+i+" "+n),a._isSliding=!1,setTimeout((function(){return o.default(a._element).trigger(h)}),0)})).emulateTransitionEnd(p)}else o.default(s).removeClass("active"),o.default(u).addClass("active"),this._isSliding=!1,o.default(this._element).trigger(h);c&&this.cycle()}},t._jQueryInterface=function(e){return this.each((function(){var n=o.default(this).data("bs.carousel"),i=l({},b,o.default(this).data());"object"==typeof e&&(i=l({},i,e));var r="string"==typeof e?e:i.slide;if(n||(n=new t(this,i),o.default(this).data("bs.carousel",n)),"number"==typeof e)n.to(e);else if("string"==typeof r){if(void 0===n[r])throw new TypeError('No method named "'+r+'"');n[r]()}else i.interval&&i.ride&&(n.pause(),n.cycle())}))},t._dataApiClickHandler=function(e){var n=d.getSelectorFromElement(this);if(n){var i=o.default(n)[0];if(i&&o.default(i).hasClass("carousel")){var r=l({},o.default(i).data(),o.default(this).data()),a=this.getAttribute("data-slide-to");a&&(r.interval=!1),t._jQueryInterface.call(o.default(i),r),a&&o.default(i).data("bs.carousel").to(a),e.preventDefault()}}},s(t,null,[{key:"VERSION",get:function(){return"4.6.1"}},{key:"Default",get:function(){return b}}]),t}();o.default(document).on("click.bs.carousel.data-api","[data-slide], [data-slide-to]",E._dataApiClickHandler),o.default(window).on("load.bs.carousel.data-api",(function(){for(var t=[].slice.call(document.querySelectorAll('[data-ride="carousel"]')),e=0,n=t.length;e0&&(this._selector=a,this._triggerArray.push(r))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}var e=t.prototype;return e.toggle=function(){o.default(this._element).hasClass("show")?this.hide():this.show()},e.show=function(){var e,n,i=this;if(!(this._isTransitioning||o.default(this._element).hasClass("show")||(this._parent&&0===(e=[].slice.call(this._parent.querySelectorAll(".show, .collapsing")).filter((function(t){return"string"==typeof i._config.parent?t.getAttribute("data-parent")===i._config.parent:t.classList.contains("collapse")}))).length&&(e=null),e&&(n=o.default(e).not(this._selector).data("bs.collapse"))&&n._isTransitioning))){var r=o.default.Event("show.bs.collapse");if(o.default(this._element).trigger(r),!r.isDefaultPrevented()){e&&(t._jQueryInterface.call(o.default(e).not(this._selector),"hide"),n||o.default(e).data("bs.collapse",null));var a=this._getDimension();o.default(this._element).removeClass("collapse").addClass("collapsing"),this._element.style[a]=0,this._triggerArray.length&&o.default(this._triggerArray).removeClass("collapsed").attr("aria-expanded",!0),this.setTransitioning(!0);var s="scroll"+(a[0].toUpperCase()+a.slice(1)),l=d.getTransitionDurationFromElement(this._element);o.default(this._element).one(d.TRANSITION_END,(function(){o.default(i._element).removeClass("collapsing").addClass("collapse show"),i._element.style[a]="",i.setTransitioning(!1),o.default(i._element).trigger("shown.bs.collapse")})).emulateTransitionEnd(l),this._element.style[a]=this._element[s]+"px"}}},e.hide=function(){var t=this;if(!this._isTransitioning&&o.default(this._element).hasClass("show")){var e=o.default.Event("hide.bs.collapse");if(o.default(this._element).trigger(e),!e.isDefaultPrevented()){var n=this._getDimension();this._element.style[n]=this._element.getBoundingClientRect()[n]+"px",d.reflow(this._element),o.default(this._element).addClass("collapsing").removeClass("collapse show");var i=this._triggerArray.length;if(i>0)for(var r=0;r0},e._getOffset=function(){var t=this,e={};return"function"==typeof this._config.offset?e.fn=function(e){return e.offsets=l({},e.offsets,t._config.offset(e.offsets,t._element)),e}:e.offset=this._config.offset,e},e._getPopperConfig=function(){var t={placement:this._getPlacement(),modifiers:{offset:this._getOffset(),flip:{enabled:this._config.flip},preventOverflow:{boundariesElement:this._config.boundary}}};return"static"===this._config.display&&(t.modifiers.applyStyle={enabled:!1}),l({},t,this._config.popperConfig)},t._jQueryInterface=function(e){return this.each((function(){var n=o.default(this).data("bs.dropdown");if(n||(n=new t(this,"object"==typeof e?e:null),o.default(this).data("bs.dropdown",n)),"string"==typeof e){if(void 0===n[e])throw new TypeError('No method named "'+e+'"');n[e]()}}))},t._clearMenus=function(e){if(!e||3!==e.which&&("keyup"!==e.type||9===e.which))for(var n=[].slice.call(document.querySelectorAll('[data-toggle="dropdown"]')),i=0,r=n.length;i0&&a--,40===e.which&&adocument.documentElement.clientHeight;n||(this._element.style.overflowY="hidden"),this._element.classList.add("modal-static");var i=d.getTransitionDurationFromElement(this._dialog);o.default(this._element).off(d.TRANSITION_END),o.default(this._element).one(d.TRANSITION_END,(function(){t._element.classList.remove("modal-static"),n||o.default(t._element).one(d.TRANSITION_END,(function(){t._element.style.overflowY=""})).emulateTransitionEnd(t._element,i)})).emulateTransitionEnd(i),this._element.focus()}},e._showElement=function(t){var e=this,n=o.default(this._element).hasClass("fade"),i=this._dialog?this._dialog.querySelector(".modal-body"):null;this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),o.default(this._dialog).hasClass("modal-dialog-scrollable")&&i?i.scrollTop=0:this._element.scrollTop=0,n&&d.reflow(this._element),o.default(this._element).addClass("show"),this._config.focus&&this._enforceFocus();var r=o.default.Event("shown.bs.modal",{relatedTarget:t}),a=function(){e._config.focus&&e._element.focus(),e._isTransitioning=!1,o.default(e._element).trigger(r)};if(n){var s=d.getTransitionDurationFromElement(this._dialog);o.default(this._dialog).one(d.TRANSITION_END,a).emulateTransitionEnd(s)}else a()},e._enforceFocus=function(){var t=this;o.default(document).off("focusin.bs.modal").on("focusin.bs.modal",(function(e){document!==e.target&&t._element!==e.target&&0===o.default(t._element).has(e.target).length&&t._element.focus()}))},e._setEscapeEvent=function(){var t=this;this._isShown?o.default(this._element).on("keydown.dismiss.bs.modal",(function(e){t._config.keyboard&&27===e.which?(e.preventDefault(),t.hide()):t._config.keyboard||27!==e.which||t._triggerBackdropTransition()})):this._isShown||o.default(this._element).off("keydown.dismiss.bs.modal")},e._setResizeEvent=function(){var t=this;this._isShown?o.default(window).on("resize.bs.modal",(function(e){return t.handleUpdate(e)})):o.default(window).off("resize.bs.modal")},e._hideModal=function(){var t=this;this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._showBackdrop((function(){o.default(document.body).removeClass("modal-open"),t._resetAdjustments(),t._resetScrollbar(),o.default(t._element).trigger("hidden.bs.modal")}))},e._removeBackdrop=function(){this._backdrop&&(o.default(this._backdrop).remove(),this._backdrop=null)},e._showBackdrop=function(t){var e=this,n=o.default(this._element).hasClass("fade")?"fade":"";if(this._isShown&&this._config.backdrop){if(this._backdrop=document.createElement("div"),this._backdrop.className="modal-backdrop",n&&this._backdrop.classList.add(n),o.default(this._backdrop).appendTo(document.body),o.default(this._element).on("click.dismiss.bs.modal",(function(t){e._ignoreBackdropClick?e._ignoreBackdropClick=!1:t.target===t.currentTarget&&("static"===e._config.backdrop?e._triggerBackdropTransition():e.hide())})),n&&d.reflow(this._backdrop),o.default(this._backdrop).addClass("show"),!t)return;if(!n)return void t();var i=d.getTransitionDurationFromElement(this._backdrop);o.default(this._backdrop).one(d.TRANSITION_END,t).emulateTransitionEnd(i)}else if(!this._isShown&&this._backdrop){o.default(this._backdrop).removeClass("show");var r=function(){e._removeBackdrop(),t&&t()};if(o.default(this._element).hasClass("fade")){var a=d.getTransitionDurationFromElement(this._backdrop);o.default(this._backdrop).one(d.TRANSITION_END,r).emulateTransitionEnd(a)}else r()}else t&&t()},e._adjustDialog=function(){var t=this._element.scrollHeight>document.documentElement.clientHeight;!this._isBodyOverflowing&&t&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!t&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},e._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},e._checkScrollbar=function(){var t=document.body.getBoundingClientRect();this._isBodyOverflowing=Math.round(t.left+t.right)
',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent",customClass:"",sanitize:!0,sanitizeFn:null,whiteList:H,popperConfig:null},X={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(number|string|function)",container:"(string|element|boolean)",fallbackPlacement:"(string|array)",boundary:"(string|element)",customClass:"(string|function)",sanitize:"boolean",sanitizeFn:"(null|function)",whiteList:"object",popperConfig:"(null|object)"},$={HIDE:"hide.bs.tooltip",HIDDEN:"hidden.bs.tooltip",SHOW:"show.bs.tooltip",SHOWN:"shown.bs.tooltip",INSERTED:"inserted.bs.tooltip",CLICK:"click.bs.tooltip",FOCUSIN:"focusin.bs.tooltip",FOCUSOUT:"focusout.bs.tooltip",MOUSEENTER:"mouseenter.bs.tooltip",MOUSELEAVE:"mouseleave.bs.tooltip"},G=function(){function t(t,e){if(void 0===r.default)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=t,this.config=this._getConfig(e),this.tip=null,this._setListeners()}var e=t.prototype;return e.enable=function(){this._isEnabled=!0},e.disable=function(){this._isEnabled=!1},e.toggleEnabled=function(){this._isEnabled=!this._isEnabled},e.toggle=function(t){if(this._isEnabled)if(t){var e=this.constructor.DATA_KEY,n=o.default(t.currentTarget).data(e);n||(n=new this.constructor(t.currentTarget,this._getDelegateConfig()),o.default(t.currentTarget).data(e,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(o.default(this.getTipElement()).hasClass("show"))return void this._leave(null,this);this._enter(null,this)}},e.dispose=function(){clearTimeout(this._timeout),o.default.removeData(this.element,this.constructor.DATA_KEY),o.default(this.element).off(this.constructor.EVENT_KEY),o.default(this.element).closest(".modal").off("hide.bs.modal",this._hideModalHandler),this.tip&&o.default(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,this._activeTrigger=null,this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},e.show=function(){var t=this;if("none"===o.default(this.element).css("display"))throw new Error("Please use show on visible elements");var e=o.default.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){o.default(this.element).trigger(e);var n=d.findShadowRoot(this.element),i=o.default.contains(null!==n?n:this.element.ownerDocument.documentElement,this.element);if(e.isDefaultPrevented()||!i)return;var a=this.getTipElement(),s=d.getUID(this.constructor.NAME);a.setAttribute("id",s),this.element.setAttribute("aria-describedby",s),this.setContent(),this.config.animation&&o.default(a).addClass("fade");var l="function"==typeof this.config.placement?this.config.placement.call(this,a,this.element):this.config.placement,u=this._getAttachment(l);this.addAttachmentClass(u);var f=this._getContainer();o.default(a).data(this.constructor.DATA_KEY,this),o.default.contains(this.element.ownerDocument.documentElement,this.tip)||o.default(a).appendTo(f),o.default(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new r.default(this.element,a,this._getPopperConfig(u)),o.default(a).addClass("show"),o.default(a).addClass(this.config.customClass),"ontouchstart"in document.documentElement&&o.default(document.body).children().on("mouseover",null,o.default.noop);var c=function(){t.config.animation&&t._fixTransition();var e=t._hoverState;t._hoverState=null,o.default(t.element).trigger(t.constructor.Event.SHOWN),"out"===e&&t._leave(null,t)};if(o.default(this.tip).hasClass("fade")){var h=d.getTransitionDurationFromElement(this.tip);o.default(this.tip).one(d.TRANSITION_END,c).emulateTransitionEnd(h)}else c()}},e.hide=function(t){var e=this,n=this.getTipElement(),i=o.default.Event(this.constructor.Event.HIDE),r=function(){"show"!==e._hoverState&&n.parentNode&&n.parentNode.removeChild(n),e._cleanTipClass(),e.element.removeAttribute("aria-describedby"),o.default(e.element).trigger(e.constructor.Event.HIDDEN),null!==e._popper&&e._popper.destroy(),t&&t()};if(o.default(this.element).trigger(i),!i.isDefaultPrevented()){if(o.default(n).removeClass("show"),"ontouchstart"in document.documentElement&&o.default(document.body).children().off("mouseover",null,o.default.noop),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1,o.default(this.tip).hasClass("fade")){var a=d.getTransitionDurationFromElement(n);o.default(n).one(d.TRANSITION_END,r).emulateTransitionEnd(a)}else r();this._hoverState=""}},e.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},e.isWithContent=function(){return Boolean(this.getTitle())},e.addAttachmentClass=function(t){o.default(this.getTipElement()).addClass("bs-tooltip-"+t)},e.getTipElement=function(){return this.tip=this.tip||o.default(this.config.template)[0],this.tip},e.setContent=function(){var t=this.getTipElement();this.setElementContent(o.default(t.querySelectorAll(".tooltip-inner")),this.getTitle()),o.default(t).removeClass("fade show")},e.setElementContent=function(t,e){"object"!=typeof e||!e.nodeType&&!e.jquery?this.config.html?(this.config.sanitize&&(e=Q(e,this.config.whiteList,this.config.sanitizeFn)),t.html(e)):t.text(e):this.config.html?o.default(e).parent().is(t)||t.empty().append(e):t.text(o.default(e).text())},e.getTitle=function(){var t=this.element.getAttribute("data-original-title");return t||(t="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),t},e._getPopperConfig=function(t){var e=this;return l({},{placement:t,modifiers:{offset:this._getOffset(),flip:{behavior:this.config.fallbackPlacement},arrow:{element:".arrow"},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:function(t){t.originalPlacement!==t.placement&&e._handlePopperPlacementChange(t)},onUpdate:function(t){return e._handlePopperPlacementChange(t)}},this.config.popperConfig)},e._getOffset=function(){var t=this,e={};return"function"==typeof this.config.offset?e.fn=function(e){return e.offsets=l({},e.offsets,t.config.offset(e.offsets,t.element)),e}:e.offset=this.config.offset,e},e._getContainer=function(){return!1===this.config.container?document.body:d.isElement(this.config.container)?o.default(this.config.container):o.default(document).find(this.config.container)},e._getAttachment=function(t){return z[t.toUpperCase()]},e._setListeners=function(){var t=this;this.config.trigger.split(" ").forEach((function(e){if("click"===e)o.default(t.element).on(t.constructor.Event.CLICK,t.config.selector,(function(e){return t.toggle(e)}));else if("manual"!==e){var n="hover"===e?t.constructor.Event.MOUSEENTER:t.constructor.Event.FOCUSIN,i="hover"===e?t.constructor.Event.MOUSELEAVE:t.constructor.Event.FOCUSOUT;o.default(t.element).on(n,t.config.selector,(function(e){return t._enter(e)})).on(i,t.config.selector,(function(e){return t._leave(e)}))}})),this._hideModalHandler=function(){t.element&&t.hide()},o.default(this.element).closest(".modal").on("hide.bs.modal",this._hideModalHandler),this.config.selector?this.config=l({},this.config,{trigger:"manual",selector:""}):this._fixTitle()},e._fixTitle=function(){var t=typeof this.element.getAttribute("data-original-title");(this.element.getAttribute("title")||"string"!==t)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},e._enter=function(t,e){var n=this.constructor.DATA_KEY;(e=e||o.default(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),o.default(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusin"===t.type?"focus":"hover"]=!0),o.default(e.getTipElement()).hasClass("show")||"show"===e._hoverState?e._hoverState="show":(clearTimeout(e._timeout),e._hoverState="show",e.config.delay&&e.config.delay.show?e._timeout=setTimeout((function(){"show"===e._hoverState&&e.show()}),e.config.delay.show):e.show())},e._leave=function(t,e){var n=this.constructor.DATA_KEY;(e=e||o.default(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),o.default(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusout"===t.type?"focus":"hover"]=!1),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState="out",e.config.delay&&e.config.delay.hide?e._timeout=setTimeout((function(){"out"===e._hoverState&&e.hide()}),e.config.delay.hide):e.hide())},e._isWithActiveTrigger=function(){for(var t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1},e._getConfig=function(t){var e=o.default(this.element).data();return Object.keys(e).forEach((function(t){-1!==Y.indexOf(t)&&delete e[t]})),"number"==typeof(t=l({},this.constructor.Default,e,"object"==typeof t&&t?t:{})).delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),d.typeCheckConfig(W,t,this.constructor.DefaultType),t.sanitize&&(t.template=Q(t.template,t.whiteList,t.sanitizeFn)),t},e._getDelegateConfig=function(){var t={};if(this.config)for(var e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t},e._cleanTipClass=function(){var t=o.default(this.getTipElement()),e=t.attr("class").match(V);null!==e&&e.length&&t.removeClass(e.join(""))},e._handlePopperPlacementChange=function(t){this.tip=t.instance.popper,this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(t.placement))},e._fixTransition=function(){var t=this.getTipElement(),e=this.config.animation;null===t.getAttribute("x-placement")&&(o.default(t).removeClass("fade"),this.config.animation=!1,this.hide(),this.show(),this.config.animation=e)},t._jQueryInterface=function(e){return this.each((function(){var n=o.default(this),i=n.data("bs.tooltip"),r="object"==typeof e&&e;if((i||!/dispose|hide/.test(e))&&(i||(i=new t(this,r),n.data("bs.tooltip",i)),"string"==typeof e)){if(void 0===i[e])throw new TypeError('No method named "'+e+'"');i[e]()}}))},s(t,null,[{key:"VERSION",get:function(){return"4.6.1"}},{key:"Default",get:function(){return K}},{key:"NAME",get:function(){return W}},{key:"DATA_KEY",get:function(){return"bs.tooltip"}},{key:"Event",get:function(){return $}},{key:"EVENT_KEY",get:function(){return".bs.tooltip"}},{key:"DefaultType",get:function(){return X}}]),t}();o.default.fn[W]=G._jQueryInterface,o.default.fn[W].Constructor=G,o.default.fn[W].noConflict=function(){return o.default.fn[W]=U,G._jQueryInterface};var J="popover",Z=o.default.fn[J],tt=new RegExp("(^|\\s)bs-popover\\S+","g"),et=l({},G.Default,{placement:"right",trigger:"click",content:"",template:''}),nt=l({},G.DefaultType,{content:"(string|element|function)"}),it={HIDE:"hide.bs.popover",HIDDEN:"hidden.bs.popover",SHOW:"show.bs.popover",SHOWN:"shown.bs.popover",INSERTED:"inserted.bs.popover",CLICK:"click.bs.popover",FOCUSIN:"focusin.bs.popover",FOCUSOUT:"focusout.bs.popover",MOUSEENTER:"mouseenter.bs.popover",MOUSELEAVE:"mouseleave.bs.popover"},ot=function(t){var e,n;function i(){return t.apply(this,arguments)||this}n=t,(e=i).prototype=Object.create(n.prototype),e.prototype.constructor=e,u(e,n);var r=i.prototype;return r.isWithContent=function(){return this.getTitle()||this._getContent()},r.addAttachmentClass=function(t){o.default(this.getTipElement()).addClass("bs-popover-"+t)},r.getTipElement=function(){return this.tip=this.tip||o.default(this.config.template)[0],this.tip},r.setContent=function(){var t=o.default(this.getTipElement());this.setElementContent(t.find(".popover-header"),this.getTitle());var e=this._getContent();"function"==typeof e&&(e=e.call(this.element)),this.setElementContent(t.find(".popover-body"),e),t.removeClass("fade show")},r._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},r._cleanTipClass=function(){var t=o.default(this.getTipElement()),e=t.attr("class").match(tt);null!==e&&e.length>0&&t.removeClass(e.join(""))},i._jQueryInterface=function(t){return this.each((function(){var e=o.default(this).data("bs.popover"),n="object"==typeof t?t:null;if((e||!/dispose|hide/.test(t))&&(e||(e=new i(this,n),o.default(this).data("bs.popover",e)),"string"==typeof t)){if(void 0===e[t])throw new TypeError('No method named "'+t+'"');e[t]()}}))},s(i,null,[{key:"VERSION",get:function(){return"4.6.1"}},{key:"Default",get:function(){return et}},{key:"NAME",get:function(){return J}},{key:"DATA_KEY",get:function(){return"bs.popover"}},{key:"Event",get:function(){return it}},{key:"EVENT_KEY",get:function(){return".bs.popover"}},{key:"DefaultType",get:function(){return nt}}]),i}(G);o.default.fn[J]=ot._jQueryInterface,o.default.fn[J].Constructor=ot,o.default.fn[J].noConflict=function(){return o.default.fn[J]=Z,ot._jQueryInterface};var rt="scrollspy",at=o.default.fn[rt],st={offset:10,method:"auto",target:""},lt={offset:"number",method:"string",target:"(string|element)"},ut=function(){function t(t,e){var n=this;this._element=t,this._scrollElement="BODY"===t.tagName?window:t,this._config=this._getConfig(e),this._selector=this._config.target+" .nav-link,"+this._config.target+" .list-group-item,"+this._config.target+" .dropdown-item",this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,o.default(this._scrollElement).on("scroll.bs.scrollspy",(function(t){return n._process(t)})),this.refresh(),this._process()}var e=t.prototype;return e.refresh=function(){var t=this,e=this._scrollElement===this._scrollElement.window?"offset":"position",n="auto"===this._config.method?e:this._config.method,i="position"===n?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),[].slice.call(document.querySelectorAll(this._selector)).map((function(t){var e,r=d.getSelectorFromElement(t);if(r&&(e=document.querySelector(r)),e){var a=e.getBoundingClientRect();if(a.width||a.height)return[o.default(e)[n]().top+i,r]}return null})).filter((function(t){return t})).sort((function(t,e){return t[0]-e[0]})).forEach((function(e){t._offsets.push(e[0]),t._targets.push(e[1])}))},e.dispose=function(){o.default.removeData(this._element,"bs.scrollspy"),o.default(this._scrollElement).off(".bs.scrollspy"),this._element=null,this._scrollElement=null,this._config=null,this._selector=null,this._offsets=null,this._targets=null,this._activeTarget=null,this._scrollHeight=null},e._getConfig=function(t){if("string"!=typeof(t=l({},st,"object"==typeof t&&t?t:{})).target&&d.isElement(t.target)){var e=o.default(t.target).attr("id");e||(e=d.getUID(rt),o.default(t.target).attr("id",e)),t.target="#"+e}return d.typeCheckConfig(rt,t,lt),t},e._getScrollTop=function(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop},e._getScrollHeight=function(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)},e._getOffsetHeight=function(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height},e._process=function(){var t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),n=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=n){var i=this._targets[this._targets.length-1];this._activeTarget!==i&&this._activate(i)}else{if(this._activeTarget&&t0)return this._activeTarget=null,void this._clear();for(var o=this._offsets.length;o--;)this._activeTarget!==this._targets[o]&&t>=this._offsets[o]&&(void 0===this._offsets[o+1]||t li > .active":".active";n=(n=o.default.makeArray(o.default(i).find(a)))[n.length-1]}var s=o.default.Event("hide.bs.tab",{relatedTarget:this._element}),l=o.default.Event("show.bs.tab",{relatedTarget:n});if(n&&o.default(n).trigger(s),o.default(this._element).trigger(l),!l.isDefaultPrevented()&&!s.isDefaultPrevented()){r&&(e=document.querySelector(r)),this._activate(this._element,i);var u=function(){var e=o.default.Event("hidden.bs.tab",{relatedTarget:t._element}),i=o.default.Event("shown.bs.tab",{relatedTarget:n});o.default(n).trigger(e),o.default(t._element).trigger(i)};e?this._activate(e,e.parentNode,u):u()}}},e.dispose=function(){o.default.removeData(this._element,"bs.tab"),this._element=null},e._activate=function(t,e,n){var i=this,r=(!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?o.default(e).children(".active"):o.default(e).find("> li > .active"))[0],a=n&&r&&o.default(r).hasClass("fade"),s=function(){return i._transitionComplete(t,r,n)};if(r&&a){var l=d.getTransitionDurationFromElement(r);o.default(r).removeClass("show").one(d.TRANSITION_END,s).emulateTransitionEnd(l)}else s()},e._transitionComplete=function(t,e,n){if(e){o.default(e).removeClass("active");var i=o.default(e.parentNode).find("> .dropdown-menu .active")[0];i&&o.default(i).removeClass("active"),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}o.default(t).addClass("active"),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),d.reflow(t),t.classList.contains("fade")&&t.classList.add("show");var r=t.parentNode;if(r&&"LI"===r.nodeName&&(r=r.parentNode),r&&o.default(r).hasClass("dropdown-menu")){var a=o.default(t).closest(".dropdown")[0];if(a){var s=[].slice.call(a.querySelectorAll(".dropdown-toggle"));o.default(s).addClass("active")}t.setAttribute("aria-expanded",!0)}n&&n()},t._jQueryInterface=function(e){return this.each((function(){var n=o.default(this),i=n.data("bs.tab");if(i||(i=new t(this),n.data("bs.tab",i)),"string"==typeof e){if(void 0===i[e])throw new TypeError('No method named "'+e+'"');i[e]()}}))},s(t,null,[{key:"VERSION",get:function(){return"4.6.1"}}]),t}();o.default(document).on("click.bs.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',(function(t){t.preventDefault(),dt._jQueryInterface.call(o.default(this),"show")})),o.default.fn.tab=dt._jQueryInterface,o.default.fn.tab.Constructor=dt,o.default.fn.tab.noConflict=function(){return o.default.fn.tab=ft,dt._jQueryInterface};var ct="toast",ht=o.default.fn[ct],pt={animation:!0,autohide:!0,delay:500},mt={animation:"boolean",autohide:"boolean",delay:"number"},gt=function(){function t(t,e){this._element=t,this._config=this._getConfig(e),this._timeout=null,this._setListeners()}var e=t.prototype;return e.show=function(){var t=this,e=o.default.Event("show.bs.toast");if(o.default(this._element).trigger(e),!e.isDefaultPrevented()){this._clearTimeout(),this._config.animation&&this._element.classList.add("fade");var n=function(){t._element.classList.remove("showing"),t._element.classList.add("show"),o.default(t._element).trigger("shown.bs.toast"),t._config.autohide&&(t._timeout=setTimeout((function(){t.hide()}),t._config.delay))};if(this._element.classList.remove("hide"),d.reflow(this._element),this._element.classList.add("showing"),this._config.animation){var i=d.getTransitionDurationFromElement(this._element);o.default(this._element).one(d.TRANSITION_END,n).emulateTransitionEnd(i)}else n()}},e.hide=function(){if(this._element.classList.contains("show")){var t=o.default.Event("hide.bs.toast");o.default(this._element).trigger(t),t.isDefaultPrevented()||this._close()}},e.dispose=function(){this._clearTimeout(),this._element.classList.contains("show")&&this._element.classList.remove("show"),o.default(this._element).off("click.dismiss.bs.toast"),o.default.removeData(this._element,"bs.toast"),this._element=null,this._config=null},e._getConfig=function(t){return t=l({},pt,o.default(this._element).data(),"object"==typeof t&&t?t:{}),d.typeCheckConfig(ct,t,this.constructor.DefaultType),t},e._setListeners=function(){var t=this;o.default(this._element).on("click.dismiss.bs.toast",'[data-dismiss="toast"]',(function(){return t.hide()}))},e._close=function(){var t=this,e=function(){t._element.classList.add("hide"),o.default(t._element).trigger("hidden.bs.toast")};if(this._element.classList.remove("show"),this._config.animation){var n=d.getTransitionDurationFromElement(this._element);o.default(this._element).one(d.TRANSITION_END,e).emulateTransitionEnd(n)}else e()},e._clearTimeout=function(){clearTimeout(this._timeout),this._timeout=null},t._jQueryInterface=function(e){return this.each((function(){var n=o.default(this),i=n.data("bs.toast");if(i||(i=new t(this,"object"==typeof e&&e),n.data("bs.toast",i)),"string"==typeof e){if(void 0===i[e])throw new TypeError('No method named "'+e+'"');i[e](this)}}))},s(t,null,[{key:"VERSION",get:function(){return"4.6.1"}},{key:"DefaultType",get:function(){return mt}},{key:"Default",get:function(){return pt}}]),t}();o.default.fn[ct]=gt._jQueryInterface,o.default.fn[ct].Constructor=gt,o.default.fn[ct].noConflict=function(){return o.default.fn[ct]=ht,gt._jQueryInterface},t.Alert=h,t.Button=m,t.Carousel=E,t.Collapse=D,t.Dropdown=j,t.Modal=R,t.Popover=ot,t.Scrollspy=ut,t.Tab=dt,t.Toast=gt,t.Tooltip=G,t.Util=d,Object.defineProperty(t,"__esModule",{value:!0})}(e,n(0),n(1))},function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(t){"object"==typeof window&&(n=window)}t.exports=n},,function(t,e,n){"use strict";n.r(e);n(0),n(2),n.p;$('[data-toggle="tooltip"]').tooltip({delay:{show:500,hide:100}})}]); \ No newline at end of file diff --git a/_static/scripts/pydata-sphinx-theme.js b/_static/scripts/pydata-sphinx-theme.js new file mode 100644 index 00000000..04d3cd80 --- /dev/null +++ b/_static/scripts/pydata-sphinx-theme.js @@ -0,0 +1 @@ +!function(e){var t={};function o(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)o.d(n,r,function(t){return e[t]}.bind(null,r));return n},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=4)}([function(e,t){e.exports=jQuery},,,,function(e,t,o){"use strict";o.r(t);o(0),o.p;var n=window.matchMedia("(prefers-color-scheme: dark)");function r(e){document.documentElement.dataset.theme=n.matches?"dark":"light"}function a(e){"light"!==e&&"dark"!==e&&"auto"!==e&&(console.error(`Got invalid theme mode: ${e}. Resetting to auto.`),e="auto");var t=n.matches?"dark":"light";document.documentElement.dataset.mode=e;var o="auto"==e?t:e;document.documentElement.dataset.theme=o,localStorage.setItem("mode",e),localStorage.setItem("theme",o),console.log(`[PST]: Changed to ${e} mode using the ${o} theme.`),n.onchange="auto"==e?r:""}function c(){const e=document.documentElement.dataset.defaultMode||"auto",t=localStorage.getItem("mode")||e;var o,r,c=n.matches?["auto","light","dark"]:["auto","dark","light"];a(((r=(o=c).indexOf(t)+1)===o.length&&(r=0),o[r]))}var l=()=>{let e=document.querySelectorAll("form.bd-search");return e.length?(1==e.length?e[0]:document.querySelector("div:not(.search-button__search-container) > form.bd-search")).querySelector("input"):void 0},i=()=>{let e=l(),t=document.querySelector(".search-button__wrapper");e===t.querySelector("input")&&t.classList.toggle("show"),document.activeElement===e?e.blur():(e.focus(),e.select(),e.scrollIntoView({block:"center"}))};function d(e){const t=DOCUMENTATION_OPTIONS.pagename+".html",o=e.target.getAttribute("href");let n=o.replace(t,"");return $.ajax({type:"HEAD",url:o,success:function(){location.href=o}}).fail((function(){location.href=n})),!1}var s=document.querySelectorAll("version-switcher__button");s&&$.getJSON(DOCUMENTATION_OPTIONS.theme_switcher_json_url,(function(e,t,o){const n=DOCUMENTATION_OPTIONS.pagename+".html";s.forEach(e=>{e.dataset.activeVersionName="",e.dataset.activeVersion=""}),$.each(e,(function(e,t){"name"in t||(t.name=t.version);const o=document.createElement("span");o.textContent=""+t.name;const r=document.createElement("a");r.setAttribute("class","list-group-item list-group-item-action py-1"),r.setAttribute("href",`${t.url}${n}`),r.appendChild(o),r.onclick=d,r.dataset.versionName=t.name,r.dataset.version=t.version,$(".version-switcher__menu").append(r),"DOCUMENTATION_OPTIONS.version_switcher_version_match"==t.version&&(r.classList.add("active"),s.forEach(e=>{e.innerText=e.dataset.activeVersionName=t.name,e.dataset.activeVersion=t.version}))}))})),$((function(){a(document.documentElement.dataset.mode),document.querySelectorAll(".theme-switch-button").forEach(e=>{e.addEventListener("click",c)})})),$((function(){if(!document.getElementById("bd-docs-nav"))return;var e=document.querySelector("div.bd-sidebar");let t=parseInt(sessionStorage.getItem("sidebar-scroll-top"),10);if(isNaN(t)){var o=document.getElementById("bd-docs-nav").querySelectorAll(".active");if(o.length>0){var n=o[o.length-1],r=n.getBoundingClientRect().y-e.getBoundingClientRect().y;if(n.getBoundingClientRect().y>.5*window.innerHeight){let t=.25;e.scrollTop=r-e.clientHeight*t,console.log("[PST]: Scrolled sidebar using last active link...")}}}else e.scrollTop=t,console.log("[PST]: Scrolled sidebar using stored browser position...");window.addEventListener("beforeunload",()=>{sessionStorage.setItem("sidebar-scroll-top",e.scrollTop)})})),$((function(){$(window).on("activate.bs.scrollspy",(function(){document.querySelectorAll("#bd-toc-nav a").forEach(e=>{e.parentElement.classList.remove("active")});document.querySelectorAll("#bd-toc-nav a.active").forEach(e=>{e.parentElement.classList.add("active")})}))})),$(()=>{(()=>{let e=document.querySelectorAll("form.bd-search");window.navigator.platform.toUpperCase().indexOf("MAC")>=0&&e.forEach(e=>e.querySelector("kbd.kbd-shortcut__modifier").innerText="⌘")})(),window.addEventListener("keydown",e=>{let t=l();(e.ctrlKey||e.metaKey)&&"KeyK"==e.code?(e.preventDefault(),i()):document.activeElement===t&&"Escape"==e.code&&i()},!0),document.querySelectorAll(".search-button__button").forEach(e=>{e.onclick=i});let e=document.querySelector(".search-button__overlay");e&&(e.onclick=i)}),$((function(){new MutationObserver((e,t)=>{e.forEach(e=>{0!==e.addedNodes.length&&void 0!==e.addedNodes[0].data&&-1!=e.addedNodes[0].data.search("Inserted RTD Footer")&&e.addedNodes.forEach(e=>{document.getElementById("rtd-footer-container").append(e)})})}).observe(document.body,{childList:!0})}))}]); \ No newline at end of file diff --git a/_static/scripts/sphinx-book-theme.js b/_static/scripts/sphinx-book-theme.js new file mode 100644 index 00000000..116ff5ad --- /dev/null +++ b/_static/scripts/sphinx-book-theme.js @@ -0,0 +1,2 @@ +!function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=0)}([function(e,t,n){e.exports=n(1)},function(e,t,n){"use strict";n.r(t);n.p;var r=e=>{"loading"!=document.readyState?e():document.addEventListener?document.addEventListener("DOMContentLoaded",e):document.attachEvent("onreadystatechange",(function(){"complete"==document.readyState&&e()}))};window.initThebeSBT=()=>{var e=$("div.section h1")[0];$(e).next().hasClass("thebe-launch-button")||$("").insertAfter($(e)),initThebe()},window.printPdf=e=>{let t=$(e).attr("aria-describedby"),n=$("#"+t).detach();window.print(),$("body").append(n)},window.toggleFullScreen=()=>{var e=document.fullscreenElement&&null!==document.fullscreenElement||document.webkitFullscreenElement&&null!==document.webkitFullscreenElement;let t=document.documentElement;e?(console.log("[SBT]: Exiting full screen"),document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen&&document.webkitExitFullscreen()):(console.log("[SBT]: Entering full screen"),t.requestFullscreen?t.requestFullscreen():t.webkitRequestFullscreen&&t.webkitRequestFullscreen())},r(()=>{var e=[];let t=new IntersectionObserver((t,n)=>{t.forEach(t=>{if(t.isIntersecting)e.push(t.target);else for(let n=0;n0?$("div.bd-sidebar-secondary").addClass("hide"):$("div.bd-sidebar-secondary").removeClass("hide")},{rootMargin:"0px 0px -33% 0px"});let n=[];["marginnote","sidenote","margin","margin-caption","full-width","sidebar","popout"].forEach(e=>{n.push("."+e,".tag_"+e,"."+e.replace("-","_"),".tag_"+e.replace("-","_"))}),document.querySelectorAll(n.join(", ")).forEach(e=>{t.observe(e)}),new IntersectionObserver((e,t)=>{e[0].boundingClientRect.y<0?document.body.classList.add("scrolled"):document.body.classList.remove("scrolled")}).observe(document.querySelector(".sbt-scroll-pixel-helper"))}),r((function(){$("div.bd-sidebar-primary").addClass("noprint"),$("div.bd-sidebar-secondary").addClass("noprint"),$("div.bd-header-article").addClass("noprint"),$("div.bd-header-announcement").addClass("noprint"),$("footer.bd-footer-article").addClass("noprint")})),r((function(){document.documentElement.dataset.mode="light",document.documentElement.dataset.theme="light"}))}]); +//# sourceMappingURL=sphinx-book-theme.js.map \ No newline at end of file diff --git a/_static/scripts/sphinx-book-theme.js.map b/_static/scripts/sphinx-book-theme.js.map new file mode 100644 index 00000000..df2d2159 --- /dev/null +++ b/_static/scripts/sphinx-book-theme.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/sphinx_book_theme/assets/styles/index.scss","webpack:///./src/sphinx_book_theme/assets/scripts/index.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","sbRunWhenDOMLoaded","cb","document","readyState","addEventListener","attachEvent","window","initThebeSBT","title","$","next","hasClass","insertAfter","initThebe","printPdf","el","tooltipID","attr","tooltipTextDiv","detach","print","append","toggleFullScreen","isInFullScreen","fullscreenElement","webkitFullscreenElement","docElm","documentElement","console","log","exitFullscreen","webkitExitFullscreen","requestFullscreen","webkitRequestFullscreen","onScreenItems","tocObserver","IntersectionObserver","entries","observer","forEach","entry","isIntersecting","push","target","ii","length","splice","addClass","removeClass","rootMargin","marginSelector","replace","querySelectorAll","join","observe","boundingClientRect","y","body","classList","add","remove","querySelector","dataset","theme"],"mappings":"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","file":"scripts/sphinx-book-theme.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","export default __webpack_public_path__ + \"styles/sphinx-book-theme.css\";","// Import CSS variables\n// ref: https://css-tricks.com/getting-javascript-to-talk-to-css-and-sass/\nimport \"../styles/index.scss\";\n\n/**\n * A helper function to load scripts when the DOM is loaded.\n * This waits for everything to be on the page first before running, since\n * some functionality doesn't behave properly until everything is ready.\n */\nvar sbRunWhenDOMLoaded = (cb) => {\n if (document.readyState != \"loading\") {\n cb();\n } else if (document.addEventListener) {\n document.addEventListener(\"DOMContentLoaded\", cb);\n } else {\n document.attachEvent(\"onreadystatechange\", function () {\n if (document.readyState == \"complete\") cb();\n });\n }\n};\n\n/**\n * Toggle full-screen with button\n *\n * There are some browser-specific hacks in here:\n * - Safari requires a `webkit` prefix, so this uses conditionals to check for that\n * ref: https://developer.mozilla.org/en-US/docs/Web/API/Fullscreen_API\n */\nvar toggleFullScreen = () => {\n var isInFullScreen =\n (document.fullscreenElement && document.fullscreenElement !== null) ||\n (document.webkitFullscreenElement &&\n document.webkitFullscreenElement !== null);\n let docElm = document.documentElement;\n if (!isInFullScreen) {\n console.log(\"[SBT]: Entering full screen\");\n if (docElm.requestFullscreen) {\n docElm.requestFullscreen();\n } else if (docElm.webkitRequestFullscreen) {\n docElm.webkitRequestFullscreen();\n }\n } else {\n console.log(\"[SBT]: Exiting full screen\");\n if (document.exitFullscreen) {\n document.exitFullscreen();\n } else if (document.webkitExitFullscreen) {\n document.webkitExitFullscreen();\n }\n }\n};\n\n/**\n * Called when the \"print to PDF\" button is clicked.\n * This is a hack to prevent tooltips from showing up in the printed PDF.\n */\nvar printPdf = (el) => {\n // Detach the tooltip text from DOM to hide in PDF\n // and then reattach it for HTML\n let tooltipID = $(el).attr(\"aria-describedby\");\n let tooltipTextDiv = $(\"#\" + tooltipID).detach();\n window.print();\n $(\"body\").append(tooltipTextDiv);\n};\n\n/**\n * Manage scrolling behavior. This is primarily two things:\n *\n * 1. Hide the Table of Contents any time sidebar content is on the screen.\n *\n * This will be triggered any time a sidebar item enters or exits the screen.\n * It adds/removes items from an array if they have entered the screen, and\n * removes them when they exit the screen. It hides the TOC if anything is\n * on-screen.\n *\n * ref: https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n *\n * 2. Add a `scrolled` class to to trigger CSS changes.\n */\nvar initTocHide = () => {\n var onScreenItems = [];\n let hideTocCallback = (entries, observer) => {\n // Check whether any sidebar item is displayed\n entries.forEach((entry) => {\n if (entry.isIntersecting) {\n // If an element just came on screen, add it our list\n onScreenItems.push(entry.target);\n } else {\n // Otherwise, if it's in our list then remove it\n for (let ii = 0; ii < onScreenItems.length; ii++) {\n if (onScreenItems[ii] === entry.target) {\n onScreenItems.splice(ii, 1);\n break;\n }\n }\n }\n });\n\n // Hide the TOC if any margin content is displayed on the screen\n if (onScreenItems.length > 0) {\n $(\"div.bd-sidebar-secondary\").addClass(\"hide\");\n } else {\n $(\"div.bd-sidebar-secondary\").removeClass(\"hide\");\n }\n };\n let manageScrolledClassOnBody = (entries, observer) => {\n // The pixel is at the top, so if we're < 0 that it means we've scrolled\n if (entries[0].boundingClientRect.y < 0) {\n document.body.classList.add(\"scrolled\");\n } else {\n document.body.classList.remove(\"scrolled\");\n }\n };\n\n // Set up the intersection observer to watch all margin content\n let options = {\n // Trigger callback when the top of a margin item is 1/3 up the screen\n rootMargin: \"0px 0px -33% 0px\",\n };\n let tocObserver = new IntersectionObserver(hideTocCallback, options);\n // TODO: deprecate popout after v0.5.0\n const selectorClasses = [\n \"marginnote\",\n \"sidenote\",\n \"margin\",\n \"margin-caption\",\n \"full-width\",\n \"sidebar\",\n \"popout\",\n ];\n let marginSelector = [];\n selectorClasses.forEach((ii) => {\n // Use three permutations of each class name because `tag_` and `_` used to be supported\n marginSelector.push(\n ...[\n `.${ii}`,\n `.tag_${ii}`,\n `.${ii.replace(\"-\", \"_\")}`,\n `.tag_${ii.replace(\"-\", \"_\")}`,\n ],\n );\n });\n document.querySelectorAll(marginSelector.join(\", \")).forEach((ii) => {\n tocObserver.observe(ii);\n });\n\n // Set up the observer to check if we've scrolled from top of page\n let scrollObserver = new IntersectionObserver(manageScrolledClassOnBody);\n scrollObserver.observe(document.querySelector(\".sbt-scroll-pixel-helper\"));\n};\n\n/**\n * Activate Thebe with a custom button click.\n */\nvar initThebeSBT = () => {\n var title = $(\"div.section h1\")[0];\n if (!$(title).next().hasClass(\"thebe-launch-button\")) {\n $(\"\").insertAfter($(title));\n }\n initThebe();\n};\n\n/**\n * Add no print class to certain DOM elements\n */\n\nfunction addNoPrint() {\n $(\"div.bd-sidebar-primary\").addClass(\"noprint\");\n $(\"div.bd-sidebar-secondary\").addClass(\"noprint\");\n $(\"div.bd-header-article\").addClass(\"noprint\");\n $(\"div.bd-header-announcement\").addClass(\"noprint\");\n $(\"footer.bd-footer-article\").addClass(\"noprint\");\n}\n\n/**\n * Set Mode of the theme\n * Remove this function once all modes are supported.\n */\n\nfunction setMode() {\n document.documentElement.dataset.mode = \"light\";\n document.documentElement.dataset.theme = \"light\";\n}\n\n/**\n * Set up callback functions for UI click actions\n */\nwindow.initThebeSBT = initThebeSBT;\nwindow.printPdf = printPdf;\nwindow.toggleFullScreen = toggleFullScreen;\n\n/**\n * Set up functions to load when the DOM is ready\n */\nsbRunWhenDOMLoaded(initTocHide);\nsbRunWhenDOMLoaded(addNoPrint);\nsbRunWhenDOMLoaded(setMode);\n"],"sourceRoot":""} \ No newline at end of file diff --git a/_static/searchtools.js b/_static/searchtools.js new file mode 100644 index 00000000..ac4d5861 --- /dev/null +++ b/_static/searchtools.js @@ -0,0 +1,531 @@ +/* + * searchtools.js + * ~~~~~~~~~~~~~~~~ + * + * Sphinx JavaScript utilities for the full-text search. + * + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ +"use strict"; + +/** + * Simple result scoring code. + */ +if (typeof Scorer === "undefined") { + var Scorer = { + // Implement the following function to further tweak the score for each result + // The function takes a result array [docname, title, anchor, descr, score, filename] + // and returns the new score. + /* + score: result => { + const [docname, title, anchor, descr, score, filename] = result + return score + }, + */ + + // query matches the full name of an object + objNameMatch: 11, + // or matches in the last dotted part of the object name + objPartialMatch: 6, + // Additive scores depending on the priority of the object + objPrio: { + 0: 15, // used to be importantResults + 1: 5, // used to be objectResults + 2: -5, // used to be unimportantResults + }, + // Used when the priority is not in the mapping. + objPrioDefault: 0, + + // query found in title + title: 15, + partialTitle: 7, + // query found in terms + term: 5, + partialTerm: 2, + }; +} + +const _removeChildren = (element) => { + while (element && element.lastChild) element.removeChild(element.lastChild); +}; + +/** + * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#escaping + */ +const _escapeRegExp = (string) => + string.replace(/[.*+\-?^${}()|[\]\\]/g, "\\$&"); // $& means the whole matched string + +const _displayItem = (item, highlightTerms, searchTerms) => { + const docBuilder = DOCUMENTATION_OPTIONS.BUILDER; + const docUrlRoot = DOCUMENTATION_OPTIONS.URL_ROOT; + const docFileSuffix = DOCUMENTATION_OPTIONS.FILE_SUFFIX; + const docLinkSuffix = DOCUMENTATION_OPTIONS.LINK_SUFFIX; + const showSearchSummary = DOCUMENTATION_OPTIONS.SHOW_SEARCH_SUMMARY; + + const [docName, title, anchor, descr] = item; + + let listItem = document.createElement("li"); + let requestUrl; + let linkUrl; + if (docBuilder === "dirhtml") { + // dirhtml builder + let dirname = docName + "/"; + if (dirname.match(/\/index\/$/)) + dirname = dirname.substring(0, dirname.length - 6); + else if (dirname === "index/") dirname = ""; + requestUrl = docUrlRoot + dirname; + linkUrl = requestUrl; + } else { + // normal html builders + requestUrl = docUrlRoot + docName + docFileSuffix; + linkUrl = docName + docLinkSuffix; + } + const params = new URLSearchParams(); + params.set("highlight", [...highlightTerms].join(" ")); + let linkEl = listItem.appendChild(document.createElement("a")); + linkEl.href = linkUrl + "?" + params.toString() + anchor; + linkEl.innerHTML = title; + if (descr) + listItem.appendChild(document.createElement("span")).innerText = + " (" + descr + ")"; + else if (showSearchSummary) + fetch(requestUrl) + .then((responseData) => responseData.text()) + .then((data) => { + if (data) + listItem.appendChild( + Search.makeSearchSummary(data, searchTerms, highlightTerms) + ); + }); + Search.output.appendChild(listItem); +}; +const _finishSearch = (resultCount) => { + Search.stopPulse(); + Search.title.innerText = _("Search Results"); + if (!resultCount) + Search.status.innerText = Documentation.gettext( + "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories." + ); + else + Search.status.innerText = _( + `Search finished, found ${resultCount} page(s) matching the search query.` + ); +}; +const _displayNextItem = ( + results, + resultCount, + highlightTerms, + searchTerms +) => { + // results left, load the summary and display it + // this is intended to be dynamic (don't sub resultsCount) + if (results.length) { + _displayItem(results.pop(), highlightTerms, searchTerms); + setTimeout( + () => _displayNextItem(results, resultCount, highlightTerms, searchTerms), + 5 + ); + } + // search finished, update title and status message + else _finishSearch(resultCount); +}; + +/** + * Default splitQuery function. Can be overridden in ``sphinx.search`` with a + * custom function per language. + * + * The regular expression works by splitting the string on consecutive characters + * that are not Unicode letters, numbers, underscores, or emoji characters. + * This is the same as ``\W+`` in Python, preserving the surrogate pair area. + */ +if (typeof splitQuery === "undefined") { + var splitQuery = (query) => query + .split(/[^\p{Letter}\p{Number}_\p{Emoji_Presentation}]+/gu) + .filter(term => term) // remove remaining empty strings +} + +/** + * Search Module + */ +const Search = { + _index: null, + _queued_query: null, + _pulse_status: -1, + + htmlToText: (htmlString) => { + const htmlElement = document + .createRange() + .createContextualFragment(htmlString); + _removeChildren(htmlElement.querySelectorAll(".headerlink")); + const docContent = htmlElement.querySelector('[role="main"]'); + if (docContent !== undefined) return docContent.textContent; + console.warn( + "Content block not found. Sphinx search tries to obtain it via '[role=main]'. Could you check your theme or template." + ); + return ""; + }, + + init: () => { + const query = new URLSearchParams(window.location.search).get("q"); + document + .querySelectorAll('input[name="q"]') + .forEach((el) => (el.value = query)); + if (query) Search.performSearch(query); + }, + + loadIndex: (url) => + (document.body.appendChild(document.createElement("script")).src = url), + + setIndex: (index) => { + Search._index = index; + if (Search._queued_query !== null) { + const query = Search._queued_query; + Search._queued_query = null; + Search.query(query); + } + }, + + hasIndex: () => Search._index !== null, + + deferQuery: (query) => (Search._queued_query = query), + + stopPulse: () => (Search._pulse_status = -1), + + startPulse: () => { + if (Search._pulse_status >= 0) return; + + const pulse = () => { + Search._pulse_status = (Search._pulse_status + 1) % 4; + Search.dots.innerText = ".".repeat(Search._pulse_status); + if (Search._pulse_status >= 0) window.setTimeout(pulse, 500); + }; + pulse(); + }, + + /** + * perform a search for something (or wait until index is loaded) + */ + performSearch: (query) => { + // create the required interface elements + const searchText = document.createElement("h2"); + searchText.textContent = _("Searching"); + const searchSummary = document.createElement("p"); + searchSummary.classList.add("search-summary"); + searchSummary.innerText = ""; + const searchList = document.createElement("ul"); + searchList.classList.add("search"); + + const out = document.getElementById("search-results"); + Search.title = out.appendChild(searchText); + Search.dots = Search.title.appendChild(document.createElement("span")); + Search.status = out.appendChild(searchSummary); + Search.output = out.appendChild(searchList); + + const searchProgress = document.getElementById("search-progress"); + // Some themes don't use the search progress node + if (searchProgress) { + searchProgress.innerText = _("Preparing search..."); + } + Search.startPulse(); + + // index already loaded, the browser was quick! + if (Search.hasIndex()) Search.query(query); + else Search.deferQuery(query); + }, + + /** + * execute search (requires search index to be loaded) + */ + query: (query) => { + // stem the search terms and add them to the correct list + const stemmer = new Stemmer(); + const searchTerms = new Set(); + const excludedTerms = new Set(); + const highlightTerms = new Set(); + const objectTerms = new Set(splitQuery(query.toLowerCase().trim())); + splitQuery(query.trim()).forEach((queryTerm) => { + const queryTermLower = queryTerm.toLowerCase(); + + // maybe skip this "word" + // stopwords array is from language_data.js + if ( + stopwords.indexOf(queryTermLower) !== -1 || + queryTerm.match(/^\d+$/) + ) + return; + + // stem the word + let word = stemmer.stemWord(queryTermLower); + // select the correct list + if (word[0] === "-") excludedTerms.add(word.substr(1)); + else { + searchTerms.add(word); + highlightTerms.add(queryTermLower); + } + }); + + // console.debug("SEARCH: searching for:"); + // console.info("required: ", [...searchTerms]); + // console.info("excluded: ", [...excludedTerms]); + + // array of [docname, title, anchor, descr, score, filename] + let results = []; + _removeChildren(document.getElementById("search-progress")); + + // lookup as object + objectTerms.forEach((term) => + results.push(...Search.performObjectSearch(term, objectTerms)) + ); + + // lookup as search terms in fulltext + results.push(...Search.performTermsSearch(searchTerms, excludedTerms)); + + // let the scorer override scores with a custom scoring function + if (Scorer.score) results.forEach((item) => (item[4] = Scorer.score(item))); + + // now sort the results by score (in opposite order of appearance, since the + // display function below uses pop() to retrieve items) and then + // alphabetically + results.sort((a, b) => { + const leftScore = a[4]; + const rightScore = b[4]; + if (leftScore === rightScore) { + // same score: sort alphabetically + const leftTitle = a[1].toLowerCase(); + const rightTitle = b[1].toLowerCase(); + if (leftTitle === rightTitle) return 0; + return leftTitle > rightTitle ? -1 : 1; // inverted is intentional + } + return leftScore > rightScore ? 1 : -1; + }); + + // remove duplicate search results + // note the reversing of results, so that in the case of duplicates, the highest-scoring entry is kept + let seen = new Set(); + results = results.reverse().reduce((acc, result) => { + let resultStr = result.slice(0, 4).concat([result[5]]).map(v => String(v)).join(','); + if (!seen.has(resultStr)) { + acc.push(result); + seen.add(resultStr); + } + return acc; + }, []); + + results = results.reverse(); + + // for debugging + //Search.lastresults = results.slice(); // a copy + // console.info("search results:", Search.lastresults); + + // print the results + _displayNextItem(results, results.length, highlightTerms, searchTerms); + }, + + /** + * search for object names + */ + performObjectSearch: (object, objectTerms) => { + const filenames = Search._index.filenames; + const docNames = Search._index.docnames; + const objects = Search._index.objects; + const objNames = Search._index.objnames; + const titles = Search._index.titles; + + const results = []; + + const objectSearchCallback = (prefix, match) => { + const name = match[4] + const fullname = (prefix ? prefix + "." : "") + name; + const fullnameLower = fullname.toLowerCase(); + if (fullnameLower.indexOf(object) < 0) return; + + let score = 0; + const parts = fullnameLower.split("."); + + // check for different match types: exact matches of full name or + // "last name" (i.e. last dotted part) + if (fullnameLower === object || parts.slice(-1)[0] === object) + score += Scorer.objNameMatch; + else if (parts.slice(-1)[0].indexOf(object) > -1) + score += Scorer.objPartialMatch; // matches in last name + + const objName = objNames[match[1]][2]; + const title = titles[match[0]]; + + // If more than one term searched for, we require other words to be + // found in the name/title/description + const otherTerms = new Set(objectTerms); + otherTerms.delete(object); + if (otherTerms.size > 0) { + const haystack = `${prefix} ${name} ${objName} ${title}`.toLowerCase(); + if ( + [...otherTerms].some((otherTerm) => haystack.indexOf(otherTerm) < 0) + ) + return; + } + + let anchor = match[3]; + if (anchor === "") anchor = fullname; + else if (anchor === "-") anchor = objNames[match[1]][1] + "-" + fullname; + + const descr = objName + _(", in ") + title; + + // add custom score for some objects according to scorer + if (Scorer.objPrio.hasOwnProperty(match[2])) + score += Scorer.objPrio[match[2]]; + else score += Scorer.objPrioDefault; + + results.push([ + docNames[match[0]], + fullname, + "#" + anchor, + descr, + score, + filenames[match[0]], + ]); + }; + Object.keys(objects).forEach((prefix) => + objects[prefix].forEach((array) => + objectSearchCallback(prefix, array) + ) + ); + return results; + }, + + /** + * search for full-text terms in the index + */ + performTermsSearch: (searchTerms, excludedTerms) => { + // prepare search + const terms = Search._index.terms; + const titleTerms = Search._index.titleterms; + const docNames = Search._index.docnames; + const filenames = Search._index.filenames; + const titles = Search._index.titles; + + const scoreMap = new Map(); + const fileMap = new Map(); + + // perform the search on the required terms + searchTerms.forEach((word) => { + const files = []; + const arr = [ + { files: terms[word], score: Scorer.term }, + { files: titleTerms[word], score: Scorer.title }, + ]; + // add support for partial matches + if (word.length > 2) { + const escapedWord = _escapeRegExp(word); + Object.keys(terms).forEach((term) => { + if (term.match(escapedWord) && !terms[word]) + arr.push({ files: terms[term], score: Scorer.partialTerm }); + }); + Object.keys(titleTerms).forEach((term) => { + if (term.match(escapedWord) && !titleTerms[word]) + arr.push({ files: titleTerms[word], score: Scorer.partialTitle }); + }); + } + + // no match but word was a required one + if (arr.every((record) => record.files === undefined)) return; + + // found search word in contents + arr.forEach((record) => { + if (record.files === undefined) return; + + let recordFiles = record.files; + if (recordFiles.length === undefined) recordFiles = [recordFiles]; + files.push(...recordFiles); + + // set score for the word in each file + recordFiles.forEach((file) => { + if (!scoreMap.has(file)) scoreMap.set(file, {}); + scoreMap.get(file)[word] = record.score; + }); + }); + + // create the mapping + files.forEach((file) => { + if (fileMap.has(file) && fileMap.get(file).indexOf(word) === -1) + fileMap.get(file).push(word); + else fileMap.set(file, [word]); + }); + }); + + // now check if the files don't contain excluded terms + const results = []; + for (const [file, wordList] of fileMap) { + // check if all requirements are matched + + // as search terms with length < 3 are discarded + const filteredTermCount = [...searchTerms].filter( + (term) => term.length > 2 + ).length; + if ( + wordList.length !== searchTerms.size && + wordList.length !== filteredTermCount + ) + continue; + + // ensure that none of the excluded terms is in the search result + if ( + [...excludedTerms].some( + (term) => + terms[term] === file || + titleTerms[term] === file || + (terms[term] || []).includes(file) || + (titleTerms[term] || []).includes(file) + ) + ) + break; + + // select one (max) score for the file. + const score = Math.max(...wordList.map((w) => scoreMap.get(file)[w])); + // add result to the result list + results.push([ + docNames[file], + titles[file], + "", + null, + score, + filenames[file], + ]); + } + return results; + }, + + /** + * helper function to return a node containing the + * search summary for a given text. keywords is a list + * of stemmed words, highlightWords is the list of normal, unstemmed + * words. the first one is used to find the occurrence, the + * latter for highlighting it. + */ + makeSearchSummary: (htmlText, keywords, highlightWords) => { + const text = Search.htmlToText(htmlText).toLowerCase(); + if (text === "") return null; + + const actualStartPosition = [...keywords] + .map((k) => text.indexOf(k.toLowerCase())) + .filter((i) => i > -1) + .slice(-1)[0]; + const startWithContext = Math.max(actualStartPosition - 120, 0); + + const top = startWithContext === 0 ? "" : "..."; + const tail = startWithContext + 240 < text.length ? "..." : ""; + + let summary = document.createElement("div"); + summary.classList.add("context"); + summary.innerText = top + text.substr(startWithContext, 240).trim() + tail; + + highlightWords.forEach((highlightWord) => + _highlightText(summary, highlightWord, "highlighted") + ); + + return summary; + }, +}; + +_ready(Search.init); diff --git a/_static/sphinx-thebe.css b/_static/sphinx-thebe.css new file mode 100644 index 00000000..1da27930 --- /dev/null +++ b/_static/sphinx-thebe.css @@ -0,0 +1,129 @@ +/* Thebelab Buttons */ +.thebelab-button { + z-index: 999; + display: inline-block; + padding: 0.35em 1.2em; + margin: 0px 1px; + border-radius: 0.12em; + box-sizing: border-box; + text-decoration: none; + font-family: "Roboto", sans-serif; + font-weight: 300; + text-align: center; + transition: all 0.2s; + background-color: #dddddd; + border: 0.05em solid white; + color: #000000; +} + +.thebelab-button:hover { + border: 0.05em solid black; + background-color: #fcfcfc; +} + +.thebe-launch-button { + height: 2.2em; + font-size: 0.8em; + border: 1px black solid; +} + +/* Thebelab Cell */ +.thebelab-cell pre { + background: none; +} + +.thebelab-cell .thebelab-input { + padding-left: 1em; + margin-bottom: 0.5em; + margin-top: 0.5em; +} + +.thebelab-cell .jp-OutputArea { + margin-top: 0.5em; + margin-left: 1em; +} + +button.thebelab-button.thebelab-run-button { + margin-left: 1.5em; + margin-bottom: 0.5em; +} + +/* Loading button */ +button.thebe-launch-button div.spinner { + float: left; + margin-right: 1em; +} + +/* Remove the spinner when thebelab is ready */ +.thebe-launch-button.thebe-status-ready .spinner { + display: none; +} + +.thebe-launch-button span.status { + font-family: monospace; + font-weight: bold; +} + +.thebe-launch-button.thebe-status-ready span.status { + color: green; +} + +.spinner { + height: 2em; + text-align: center; + font-size: 0.7em; +} + +.spinner > div { + background-color: #f37726; + height: 100%; + width: 6px; + display: inline-block; + + -webkit-animation: sk-stretchdelay 1.2s infinite ease-in-out; + animation: sk-stretchdelay 1.2s infinite ease-in-out; +} + +.spinner .rect2 { + -webkit-animation-delay: -1.1s; + animation-delay: -1.1s; +} + +.spinner .rect3 { + -webkit-animation-delay: -1s; + animation-delay: -1s; +} + +.spinner .rect4 { + -webkit-animation-delay: -0.9s; + animation-delay: -0.9s; +} + +.spinner .rect5 { + -webkit-animation-delay: -0.8s; + animation-delay: -0.8s; +} + +@-webkit-keyframes sk-stretchdelay { + 0%, + 40%, + 100% { + -webkit-transform: scaleY(0.4); + } + 20% { + -webkit-transform: scaleY(1); + } +} + +@keyframes sk-stretchdelay { + 0%, + 40%, + 100% { + transform: scaleY(0.4); + -webkit-transform: scaleY(0.4); + } + 20% { + transform: scaleY(1); + -webkit-transform: scaleY(1); + } +} diff --git a/_static/sphinx-thebe.js b/_static/sphinx-thebe.js new file mode 100644 index 00000000..7626dbb0 --- /dev/null +++ b/_static/sphinx-thebe.js @@ -0,0 +1,126 @@ +/** + * Add attributes to Thebe blocks to initialize thebe properly + */ +var configureThebe = () => { + // Load thebe config in case we want to update it as some point + console.log("[sphinx-thebe]: Loading thebe config..."); + thebe_config = $('script[type="text/x-thebe-config"]')[0]; + + // If we already detect a Thebe cell, don't re-run + if (document.querySelectorAll("div.thebe-cell").length > 0) { + return; + } + + // Update thebe buttons with loading message + $(".thebe-launch-button").each((ii, button) => { + button.innerHTML = ` +
+
+
+
+
+
+ `; + }); + + // Set thebe event hooks + var thebeStatus; + thebelab.on("status", function (evt, data) { + console.log("Status changed:", data.status, data.message); + + $(".thebe-launch-button ") + .removeClass("thebe-status-" + thebeStatus) + .addClass("thebe-status-" + data.status) + .find(".loading-text") + .html( + "Launching from mybinder.org: " + + data.status + + "" + ); + + // Now update our thebe status + thebeStatus = data.status; + + // Find any cells with an initialization tag and ask thebe to run them when ready + if (data.status === "ready") { + var thebeInitCells = document.querySelectorAll( + ".thebe-init, .tag_thebe-init" + ); + thebeInitCells.forEach((cell) => { + console.log("Initializing Thebe with cell: " + cell.id); + cell.querySelector(".thebelab-run-button").click(); + }); + } + }); +}; + +/** + * Update the page DOM to use Thebe elements + */ +var modifyDOMForThebe = () => { + // Find all code cells, replace with Thebe interactive code cells + const codeCells = document.querySelectorAll(thebe_selector); + codeCells.forEach((codeCell, index) => { + const codeCellId = (index) => `codecell${index}`; + codeCell.id = codeCellId(index); + codeCellText = codeCell.querySelector(thebe_selector_input); + codeCellOutput = codeCell.querySelector(thebe_selector_output); + + // Clean up the language to make it work w/ CodeMirror and add it to the cell + dataLanguage = detectLanguage(kernelName); + + // Re-arrange the cell and add metadata + if (codeCellText) { + codeCellText.setAttribute("data-language", dataLanguage); + codeCellText.setAttribute("data-executable", "true"); + + // If we had an output, insert it just after the `pre` cell + if (codeCellOutput) { + $(codeCellOutput).attr("data-output", ""); + $(codeCellOutput).insertAfter(codeCellText); + } + } + + // Remove sphinx-copybutton blocks, which are common in Sphinx + codeCell.querySelectorAll("button.copybtn").forEach((el) => { + el.remove(); + }); + }); +}; + +var initThebe = () => { + // Load thebe dynamically if it's not already loaded + if (typeof thebelab === "undefined") { + console.log("[sphinx-thebe]: Loading thebe from CDN..."); + $(".thebe-launch-button ").text("Loading thebe from CDN..."); + + const script = document.createElement("script"); + script.src = `${THEBE_JS_URL}`; + document.head.appendChild(script); + + // Runs once the script has finished loading + script.addEventListener("load", () => { + console.log("[sphinx-thebe]: Finished loading thebe from CDN..."); + configureThebe(); + modifyDOMForThebe(); + thebelab.bootstrap(); + }); + } else { + console.log( + "[sphinx-thebe]: thebe already loaded, not loading from CDN..." + ); + configureThebe(); + modifyDOMForThebe(); + thebelab.bootstrap(); + } +}; + +// Helper function to munge the language name +var detectLanguage = (language) => { + if (language.indexOf("python") > -1) { + language = "python"; + } else if (language === "ir") { + language = "r"; + } + return language; +}; diff --git a/_static/styles/bootstrap.css b/_static/styles/bootstrap.css new file mode 100644 index 00000000..034bf60e --- /dev/null +++ b/_static/styles/bootstrap.css @@ -0,0 +1,6 @@ +/*! + * Bootstrap v4.6.1 (https://getbootstrap.com/) + * Copyright 2011-2021 The Bootstrap Authors + * Copyright 2011-2021 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#007bff;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:540px;--breakpoint-md:720px;--breakpoint-lg:960px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);font-family:sans-serif;line-height:1.15}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{background-color:#fff;color:#212529;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,Liberation Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:1rem;font-weight:400;line-height:1.5;margin:0;text-align:left}[tabindex="-1"]:focus:not(:focus-visible){outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;margin-top:0}p{margin-bottom:1rem;margin-top:0}abbr[data-original-title],abbr[title]{border-bottom:0;cursor:help;text-decoration:underline;text-decoration:underline dotted;text-decoration-skip-ink:none}address{font-style:normal;line-height:inherit}address,dl,ol,ul{margin-bottom:1rem}dl,ol,ul{margin-top:0}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{background-color:transparent;color:#007bff;text-decoration:none}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}pre{-ms-overflow-style:scrollbar;margin-bottom:1rem;margin-top:0;overflow:auto}figure{margin:0 0 1rem}img{border-style:none}img,svg{vertical-align:middle}svg{overflow:hidden}table{border-collapse:collapse}caption{caption-side:bottom;color:#6c757d;padding-bottom:.75rem;padding-top:.75rem;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}textarea{overflow:auto;resize:vertical}fieldset{border:0;margin:0;min-width:0;padding:0}legend{color:inherit;display:block;font-size:1.5rem;line-height:inherit;margin-bottom:.5rem;max-width:100%;padding:0;white-space:normal;width:100%}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:none;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}output{display:inline-block}summary{cursor:pointer;display:list-item}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-weight:500;line-height:1.2;margin-bottom:.5rem}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem}.display-1,.display-2{font-weight:300;line-height:1.2}.display-2{font-size:5.5rem}.display-3{font-size:4.5rem}.display-3,.display-4{font-weight:300;line-height:1.2}.display-4{font-size:3.5rem}hr{border:0;border-top:1px solid rgba(0,0,0,.1);margin-bottom:1rem;margin-top:1rem}.small,small{font-size:80%;font-weight:400}.mark,mark{background-color:#fcf8e3;padding:.2em}.list-inline,.list-unstyled{list-style:none;padding-left:0}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{font-size:1.25rem;margin-bottom:1rem}.blockquote-footer{color:#6c757d;display:block;font-size:80%}.blockquote-footer:before{content:"\2014\00A0"}.img-fluid,.img-thumbnail{height:auto;max-width:100%}.img-thumbnail{background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;padding:.25rem}.figure{display:inline-block}.figure-img{line-height:1;margin-bottom:.5rem}.figure-caption{color:#6c757d;font-size:90%}code{word-wrap:break-word;color:#e83e8c;font-size:87.5%}a>code{color:inherit}kbd{background-color:#212529;border-radius:.2rem;color:#fff;font-size:87.5%;padding:.2rem .4rem}kbd kbd{font-size:100%;font-weight:700;padding:0}pre{color:#212529;display:block;font-size:87.5%}pre code{color:inherit;font-size:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;width:100%}@media (min-width:540px){.container,.container-sm{max-width:540px}}@media (min-width:720px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:960px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1400px}}.row{display:flex;flex-wrap:wrap;margin-left:-15px;margin-right:-15px}.no-gutters{margin-left:0;margin-right:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-left:0;padding-right:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{padding-left:15px;padding-right:15px;position:relative;width:100%}.col{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-auto{flex:0 0 auto;max-width:100%;width:auto}.col-1{flex:0 0 8.33333%;max-width:8.33333%}.col-2{flex:0 0 16.66667%;max-width:16.66667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.33333%;max-width:33.33333%}.col-5{flex:0 0 41.66667%;max-width:41.66667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.33333%;max-width:58.33333%}.col-8{flex:0 0 66.66667%;max-width:66.66667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.33333%;max-width:83.33333%}.col-11{flex:0 0 91.66667%;max-width:91.66667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.33333%}.offset-2{margin-left:16.66667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333%}.offset-5{margin-left:41.66667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333%}.offset-8{margin-left:66.66667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333%}.offset-11{margin-left:91.66667%}@media (min-width:540px){.col-sm{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-sm-auto{flex:0 0 auto;max-width:100%;width:auto}.col-sm-1{flex:0 0 8.33333%;max-width:8.33333%}.col-sm-2{flex:0 0 16.66667%;max-width:16.66667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.33333%;max-width:33.33333%}.col-sm-5{flex:0 0 41.66667%;max-width:41.66667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.33333%;max-width:58.33333%}.col-sm-8{flex:0 0 66.66667%;max-width:66.66667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.33333%;max-width:83.33333%}.col-sm-11{flex:0 0 91.66667%;max-width:91.66667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333%}.offset-sm-2{margin-left:16.66667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333%}.offset-sm-5{margin-left:41.66667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333%}.offset-sm-8{margin-left:66.66667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333%}.offset-sm-11{margin-left:91.66667%}}@media (min-width:720px){.col-md{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-md-auto{flex:0 0 auto;max-width:100%;width:auto}.col-md-1{flex:0 0 8.33333%;max-width:8.33333%}.col-md-2{flex:0 0 16.66667%;max-width:16.66667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.33333%;max-width:33.33333%}.col-md-5{flex:0 0 41.66667%;max-width:41.66667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.33333%;max-width:58.33333%}.col-md-8{flex:0 0 66.66667%;max-width:66.66667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.33333%;max-width:83.33333%}.col-md-11{flex:0 0 91.66667%;max-width:91.66667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333%}.offset-md-2{margin-left:16.66667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333%}.offset-md-5{margin-left:41.66667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333%}.offset-md-8{margin-left:66.66667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333%}.offset-md-11{margin-left:91.66667%}}@media (min-width:960px){.col-lg{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-lg-auto{flex:0 0 auto;max-width:100%;width:auto}.col-lg-1{flex:0 0 8.33333%;max-width:8.33333%}.col-lg-2{flex:0 0 16.66667%;max-width:16.66667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.33333%;max-width:33.33333%}.col-lg-5{flex:0 0 41.66667%;max-width:41.66667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.33333%;max-width:58.33333%}.col-lg-8{flex:0 0 66.66667%;max-width:66.66667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.33333%;max-width:83.33333%}.col-lg-11{flex:0 0 91.66667%;max-width:91.66667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333%}.offset-lg-2{margin-left:16.66667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333%}.offset-lg-5{margin-left:41.66667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333%}.offset-lg-8{margin-left:66.66667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333%}.offset-lg-11{margin-left:91.66667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.33333%;max-width:33.33333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.66667%;max-width:16.66667%}.col-xl-auto{flex:0 0 auto;max-width:100%;width:auto}.col-xl-1{flex:0 0 8.33333%;max-width:8.33333%}.col-xl-2{flex:0 0 16.66667%;max-width:16.66667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.33333%;max-width:33.33333%}.col-xl-5{flex:0 0 41.66667%;max-width:41.66667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.33333%;max-width:58.33333%}.col-xl-8{flex:0 0 66.66667%;max-width:66.66667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.33333%;max-width:83.33333%}.col-xl-11{flex:0 0 91.66667%;max-width:91.66667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333%}.offset-xl-2{margin-left:16.66667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333%}.offset-xl-5{margin-left:41.66667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333%}.offset-xl-8{margin-left:66.66667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333%}.offset-xl-11{margin-left:91.66667%}}.table{color:#212529;margin-bottom:1rem;width:100%}.table td,.table th{border-top:1px solid #dee2e6;padding:.75rem;vertical-align:top}.table thead th{border-bottom:2px solid #dee2e6;vertical-align:bottom}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered,.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{background-color:rgba(0,0,0,.075);color:#212529}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover,.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover,.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover,.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover,.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover,.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover,.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover,.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th,.table-hover .table-active:hover,.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{background-color:#343a40;border-color:#454d55;color:#fff}.table .thead-light th{background-color:#e9ecef;border-color:#dee2e6;color:#495057}.table-dark{background-color:#343a40;color:#fff}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:hsla(0,0%,100%,.05)}.table-dark.table-hover tbody tr:hover{background-color:hsla(0,0%,100%,.075);color:#fff}@media (max-width:539.98px){.table-responsive-sm{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto;width:100%}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:719.98px){.table-responsive-md{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto;width:100%}.table-responsive-md>.table-bordered{border:0}}@media (max-width:959.98px){.table-responsive-lg{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto;width:100%}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto;width:100%}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto;width:100%}.table-responsive>.table-bordered{border:0}.form-control{background-clip:padding-box;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem;color:#495057;display:block;font-size:1rem;font-weight:400;height:calc(1.5em + .75rem + 2px);line-height:1.5;padding:.375rem .75rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:100%}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:focus{background-color:#fff;border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25);color:#495057;outline:0}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}input[type=date].form-control,input[type=datetime-local].form-control,input[type=month].form-control,input[type=time].form-control{appearance:none}select.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}select.form-control:focus::-ms-value{background-color:#fff;color:#495057}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{font-size:inherit;line-height:1.5;margin-bottom:0;padding-bottom:calc(.375rem + 1px);padding-top:calc(.375rem + 1px)}.col-form-label-lg{font-size:1.25rem;line-height:1.5;padding-bottom:calc(.5rem + 1px);padding-top:calc(.5rem + 1px)}.col-form-label-sm{font-size:.875rem;line-height:1.5;padding-bottom:calc(.25rem + 1px);padding-top:calc(.25rem + 1px)}.form-control-plaintext{background-color:transparent;border:solid transparent;border-width:1px 0;color:#212529;display:block;font-size:1rem;line-height:1.5;margin-bottom:0;padding:.375rem 0;width:100%}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-left:0;padding-right:0}.form-control-sm{border-radius:.2rem;font-size:.875rem;height:calc(1.5em + .5rem + 2px);line-height:1.5;padding:.25rem .5rem}.form-control-lg{border-radius:.3rem;font-size:1.25rem;height:calc(1.5em + 1rem + 2px);line-height:1.5;padding:.5rem 1rem}select.form-control[multiple],select.form-control[size],textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:flex;flex-wrap:wrap;margin-left:-5px;margin-right:-5px}.form-row>.col,.form-row>[class*=col-]{padding-left:5px;padding-right:5px}.form-check{display:block;padding-left:1.25rem;position:relative}.form-check-input{margin-left:-1.25rem;margin-top:.3rem;position:absolute}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{align-items:center;display:inline-flex;margin-right:.75rem;padding-left:0}.form-check-inline .form-check-input{margin-left:0;margin-right:.3125rem;margin-top:0;position:static}.valid-feedback{color:#28a745;display:none;font-size:80%;margin-top:.25rem;width:100%}.valid-tooltip{background-color:rgba(40,167,69,.9);border-radius:.25rem;color:#fff;display:none;font-size:.875rem;left:0;line-height:1.5;margin-top:.1rem;max-width:100%;padding:.25rem .5rem;position:absolute;top:100%;z-index:5}.form-row>.col>.valid-tooltip,.form-row>[class*=col-]>.valid-tooltip{left:5px}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%2328a745' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");background-position:right calc(.375em + .1875rem) center;background-repeat:no-repeat;background-size:calc(.75em + .375rem) calc(.75em + .375rem);border-color:#28a745;padding-right:calc(1.5em + .75rem)!important}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated select.form-control:valid,select.form-control.is-valid{background-position:right 1.5rem center;padding-right:3rem!important}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem);padding-right:calc(1.5em + .75rem)}.custom-select.is-valid,.was-validated .custom-select:valid{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0 0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") right .75rem center/8px 10px no-repeat,#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%2328a745' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E") center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem) no-repeat;border-color:#28a745;padding-right:calc(.75em + 2.3125rem)!important}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label:before,.was-validated .custom-control-input:valid~.custom-control-label:before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label:before,.was-validated .custom-control-input:valid:checked~.custom-control-label:before{background-color:#34ce57;border-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label:before,.was-validated .custom-control-input:valid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before{border-color:#28a745}.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{color:#dc3545;display:none;font-size:80%;margin-top:.25rem;width:100%}.invalid-tooltip{background-color:rgba(220,53,69,.9);border-radius:.25rem;color:#fff;display:none;font-size:.875rem;left:0;line-height:1.5;margin-top:.1rem;max-width:100%;padding:.25rem .5rem;position:absolute;top:100%;z-index:5}.form-row>.col>.invalid-tooltip,.form-row>[class*=col-]>.invalid-tooltip{left:5px}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E");background-position:right calc(.375em + .1875rem) center;background-repeat:no-repeat;background-size:calc(.75em + .375rem) calc(.75em + .375rem);border-color:#dc3545;padding-right:calc(1.5em + .75rem)!important}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated select.form-control:invalid,select.form-control.is-invalid{background-position:right 1.5rem center;padding-right:3rem!important}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem);padding-right:calc(1.5em + .75rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0 0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") right .75rem center/8px 10px no-repeat,#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E") center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem) no-repeat;border-color:#dc3545;padding-right:calc(.75em + 2.3125rem)!important}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label:before,.was-validated .custom-control-input:invalid~.custom-control-label:before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label:before,.was-validated .custom-control-input:invalid:checked~.custom-control-label:before{background-color:#e4606d;border-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before{border-color:#dc3545}.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{align-items:center;display:flex;flex-flow:row wrap}.form-inline .form-check{width:100%}@media (min-width:540px){.form-inline label{justify-content:center}.form-inline .form-group,.form-inline label{align-items:center;display:flex;margin-bottom:0}.form-inline .form-group{flex:0 0 auto;flex-flow:row wrap}.form-inline .form-control{display:inline-block;vertical-align:middle;width:auto}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{align-items:center;display:flex;justify-content:center;padding-left:0;width:auto}.form-inline .form-check-input{flex-shrink:0;margin-left:0;margin-right:.25rem;margin-top:0;position:relative}.form-inline .custom-control{align-items:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{background-color:transparent;border:1px solid transparent;border-radius:.25rem;color:#212529;display:inline-block;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem .75rem;text-align:center;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;user-select:none;vertical-align:middle}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.25);outline:0}.btn.disabled,.btn:disabled{opacity:.65}.btn:not(:disabled):not(.disabled){cursor:pointer}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{background-color:#007bff;border-color:#007bff;color:#fff}.btn-primary.focus,.btn-primary:focus,.btn-primary:hover{background-color:#0069d9;border-color:#0062cc;color:#fff}.btn-primary.focus,.btn-primary:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{background-color:#007bff;border-color:#007bff;color:#fff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{background-color:#0062cc;border-color:#005cbf;color:#fff}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-secondary.focus,.btn-secondary:focus,.btn-secondary:hover{background-color:#5a6268;border-color:#545b62;color:#fff}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 0 0 .2rem hsla(208,6%,54%,.5)}.btn-secondary.disabled,.btn-secondary:disabled{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{background-color:#545b62;border-color:#4e555b;color:#fff}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem hsla(208,6%,54%,.5)}.btn-success{background-color:#28a745;border-color:#28a745;color:#fff}.btn-success.focus,.btn-success:focus,.btn-success:hover{background-color:#218838;border-color:#1e7e34;color:#fff}.btn-success.focus,.btn-success:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{background-color:#28a745;border-color:#28a745;color:#fff}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{background-color:#1e7e34;border-color:#1c7430;color:#fff}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{background-color:#17a2b8;border-color:#17a2b8;color:#fff}.btn-info.focus,.btn-info:focus,.btn-info:hover{background-color:#138496;border-color:#117a8b;color:#fff}.btn-info.focus,.btn-info:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{background-color:#17a2b8;border-color:#17a2b8;color:#fff}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{background-color:#117a8b;border-color:#10707f;color:#fff}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{background-color:#ffc107;border-color:#ffc107;color:#212529}.btn-warning.focus,.btn-warning:focus,.btn-warning:hover{background-color:#e0a800;border-color:#d39e00;color:#212529}.btn-warning.focus,.btn-warning:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{background-color:#ffc107;border-color:#ffc107;color:#212529}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{background-color:#d39e00;border-color:#c69500;color:#212529}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-danger.focus,.btn-danger:focus,.btn-danger:hover{background-color:#c82333;border-color:#bd2130;color:#fff}.btn-danger.focus,.btn-danger:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{background-color:#bd2130;border-color:#b21f2d;color:#fff}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{background-color:#f8f9fa;border-color:#f8f9fa;color:#212529}.btn-light.focus,.btn-light:focus,.btn-light:hover{background-color:#e2e6ea;border-color:#dae0e5;color:#212529}.btn-light.focus,.btn-light:focus{box-shadow:0 0 0 .2rem hsla(220,4%,85%,.5)}.btn-light.disabled,.btn-light:disabled{background-color:#f8f9fa;border-color:#f8f9fa;color:#212529}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{background-color:#dae0e5;border-color:#d3d9df;color:#212529}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem hsla(220,4%,85%,.5)}.btn-dark{background-color:#343a40;border-color:#343a40;color:#fff}.btn-dark.focus,.btn-dark:focus,.btn-dark:hover{background-color:#23272b;border-color:#1d2124;color:#fff}.btn-dark.focus,.btn-dark:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{background-color:#343a40;border-color:#343a40;color:#fff}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{background-color:#1d2124;border-color:#171a1d;color:#fff}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{border-color:#007bff;color:#007bff}.btn-outline-primary:hover{background-color:#007bff;border-color:#007bff;color:#fff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{background-color:transparent;color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{background-color:#007bff;border-color:#007bff;color:#fff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{border-color:#6c757d;color:#6c757d}.btn-outline-secondary:hover{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem hsla(208,7%,46%,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{background-color:transparent;color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem hsla(208,7%,46%,.5)}.btn-outline-success{border-color:#28a745;color:#28a745}.btn-outline-success:hover{background-color:#28a745;border-color:#28a745;color:#fff}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{background-color:transparent;color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{background-color:#28a745;border-color:#28a745;color:#fff}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{border-color:#17a2b8;color:#17a2b8}.btn-outline-info:hover{background-color:#17a2b8;border-color:#17a2b8;color:#fff}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{background-color:transparent;color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{background-color:#17a2b8;border-color:#17a2b8;color:#fff}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{border-color:#ffc107;color:#ffc107}.btn-outline-warning:hover{background-color:#ffc107;border-color:#ffc107;color:#212529}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{background-color:transparent;color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{background-color:#ffc107;border-color:#ffc107;color:#212529}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{border-color:#dc3545;color:#dc3545}.btn-outline-danger:hover{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{background-color:transparent;color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{border-color:#f8f9fa;color:#f8f9fa}.btn-outline-light:hover{background-color:#f8f9fa;border-color:#f8f9fa;color:#212529}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{background-color:transparent;color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{background-color:#f8f9fa;border-color:#f8f9fa;color:#212529}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{border-color:#343a40;color:#343a40}.btn-outline-dark:hover{background-color:#343a40;border-color:#343a40;color:#fff}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{background-color:transparent;color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{background-color:#343a40;border-color:#343a40;color:#fff}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{color:#007bff;font-weight:400;text-decoration:none}.btn-link:hover{color:#0056b3}.btn-link.focus,.btn-link:focus,.btn-link:hover{text-decoration:underline}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{border-radius:.3rem;font-size:1.25rem;line-height:1.5;padding:.5rem 1rem}.btn-group-sm>.btn,.btn-sm{border-radius:.2rem;font-size:.875rem;line-height:1.5;padding:.25rem .5rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;position:relative;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{border-bottom:0;border-left:.3em solid transparent;border-right:.3em solid transparent;border-top:.3em solid;content:"";display:inline-block;margin-left:.255em;vertical-align:.255em}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0,0,0,.15);border-radius:.25rem;color:#212529;display:none;float:left;font-size:1rem;left:0;list-style:none;margin:.125rem 0 0;min-width:10rem;padding:.5rem 0;position:absolute;text-align:left;top:100%;z-index:1000}.dropdown-menu-left{left:0;right:auto}.dropdown-menu-right{left:auto;right:0}@media (min-width:540px){.dropdown-menu-sm-left{left:0;right:auto}.dropdown-menu-sm-right{left:auto;right:0}}@media (min-width:720px){.dropdown-menu-md-left{left:0;right:auto}.dropdown-menu-md-right{left:auto;right:0}}@media (min-width:960px){.dropdown-menu-lg-left{left:0;right:auto}.dropdown-menu-lg-right{left:auto;right:0}}@media (min-width:1200px){.dropdown-menu-xl-left{left:0;right:auto}.dropdown-menu-xl-right{left:auto;right:0}}.dropup .dropdown-menu{bottom:100%;margin-bottom:.125rem;margin-top:0;top:auto}.dropup .dropdown-toggle:after{border-bottom:.3em solid;border-left:.3em solid transparent;border-right:.3em solid transparent;border-top:0;content:"";display:inline-block;margin-left:.255em;vertical-align:.255em}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-menu{left:100%;margin-left:.125rem;margin-top:0;right:auto;top:0}.dropright .dropdown-toggle:after{border-bottom:.3em solid transparent;border-left:.3em solid;border-right:0;border-top:.3em solid transparent;content:"";display:inline-block;margin-left:.255em;vertical-align:.255em}.dropright .dropdown-toggle:empty:after{margin-left:0}.dropright .dropdown-toggle:after{vertical-align:0}.dropleft .dropdown-menu{left:auto;margin-right:.125rem;margin-top:0;right:100%;top:0}.dropleft .dropdown-toggle:after{content:"";display:inline-block;display:none;margin-left:.255em;vertical-align:.255em}.dropleft .dropdown-toggle:before{border-bottom:.3em solid transparent;border-right:.3em solid;border-top:.3em solid transparent;content:"";display:inline-block;margin-right:.255em;vertical-align:.255em}.dropleft .dropdown-toggle:empty:after{margin-left:0}.dropleft .dropdown-toggle:before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{bottom:auto;right:auto}.dropdown-divider{border-top:1px solid #e9ecef;height:0;margin:.5rem 0;overflow:hidden}.dropdown-item{background-color:transparent;border:0;clear:both;color:#212529;display:block;font-weight:400;padding:.25rem 1.5rem;text-align:inherit;white-space:nowrap;width:100%}.dropdown-item:focus,.dropdown-item:hover{background-color:#e9ecef;color:#16181b;text-decoration:none}.dropdown-item.active,.dropdown-item:active{background-color:#007bff;color:#fff;text-decoration:none}.dropdown-item.disabled,.dropdown-item:disabled{background-color:transparent;color:#adb5bd;pointer-events:none}.dropdown-menu.show{display:block}.dropdown-header{color:#6c757d;display:block;font-size:.875rem;margin-bottom:0;padding:.5rem 1.5rem;white-space:nowrap}.dropdown-item-text{color:#212529;display:block;padding:.25rem 1.5rem}.btn-group,.btn-group-vertical{display:inline-flex;position:relative;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{flex:1 1 auto;position:relative}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.dropdown-toggle-split{padding-left:.5625rem;padding-right:.5625rem}.dropdown-toggle-split:after,.dropright .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropleft .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-left:.375rem;padding-right:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-left:.75rem;padding-right:.75rem}.btn-group-vertical{align-items:flex-start;flex-direction:column;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-left-radius:0;border-bottom-right-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio],.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio]{clip:rect(0,0,0,0);pointer-events:none;position:absolute}.input-group{align-items:stretch;display:flex;flex-wrap:wrap;position:relative;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{flex:1 1 auto;margin-bottom:0;min-width:0;position:relative;width:1%}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.input-group>.custom-file{align-items:center;display:flex}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label:after{border-bottom-right-radius:0;border-top-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-bottom-left-radius:0;border-top-left-radius:0}.input-group.has-validation>.custom-file:nth-last-child(n+3) .custom-file-label,.input-group.has-validation>.custom-file:nth-last-child(n+3) .custom-file-label:after,.input-group.has-validation>.custom-select:nth-last-child(n+3),.input-group.has-validation>.form-control:nth-last-child(n+3),.input-group:not(.has-validation)>.custom-file:not(:last-child) .custom-file-label,.input-group:not(.has-validation)>.custom-file:not(:last-child) .custom-file-label:after,.input-group:not(.has-validation)>.custom-select:not(:last-child),.input-group:not(.has-validation)>.form-control:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.input-group-append,.input-group-prepend{display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{align-items:center;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem;color:#495057;display:flex;font-size:1rem;font-weight:400;line-height:1.5;margin-bottom:0;padding:.375rem .75rem;text-align:center;white-space:nowrap}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{border-radius:.3rem;font-size:1.25rem;line-height:1.5;padding:.5rem 1rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{border-radius:.2rem;font-size:.875rem;line-height:1.5;padding:.25rem .5rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group.has-validation>.input-group-append:nth-last-child(n+3)>.btn,.input-group.has-validation>.input-group-append:nth-last-child(n+3)>.input-group-text,.input-group:not(.has-validation)>.input-group-append:not(:last-child)>.btn,.input-group:not(.has-validation)>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-bottom-right-radius:0;border-top-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-bottom-left-radius:0;border-top-left-radius:0}.custom-control{color-adjust:exact;display:block;min-height:1.5rem;padding-left:1.5rem;position:relative;z-index:1}.custom-control-inline{display:inline-flex;margin-right:1rem}.custom-control-input{height:1.25rem;left:0;opacity:0;position:absolute;width:1rem;z-index:-1}.custom-control-input:checked~.custom-control-label:before{background-color:#007bff;border-color:#007bff;color:#fff}.custom-control-input:focus~.custom-control-label:before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label:before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label:before{background-color:#b3d7ff;border-color:#b3d7ff;color:#fff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label:before,.custom-control-input[disabled]~.custom-control-label:before{background-color:#e9ecef}.custom-control-label{margin-bottom:0;position:relative;vertical-align:top}.custom-control-label:before{background-color:#fff;border:1px solid #adb5bd;pointer-events:none}.custom-control-label:after,.custom-control-label:before{content:"";display:block;height:1rem;left:-1.5rem;position:absolute;top:.25rem;width:1rem}.custom-control-label:after{background:50%/50% 50% no-repeat}.custom-checkbox .custom-control-label:before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%23fff' d='m6.564.75-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before{background-color:#007bff;border-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label:before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label:before{border-radius:.5rem;left:-2.25rem;pointer-events:all;width:1.75rem}.custom-switch .custom-control-label:after{background-color:#adb5bd;border-radius:.5rem;height:calc(1rem - 4px);left:calc(-2.25rem + 2px);top:calc(.25rem + 2px);transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:calc(1rem - 4px)}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label:after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label:after{background-color:#fff;transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before{background-color:rgba(0,123,255,.5)}.custom-select{appearance:none;background:#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23343a40' d='M2 0 0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") right .75rem center/8px 10px no-repeat;border:1px solid #ced4da;border-radius:.25rem;color:#495057;display:inline-block;font-size:1rem;font-weight:400;height:calc(1.5em + .75rem + 2px);line-height:1.5;padding:.375rem 1.75rem .375rem .75rem;vertical-align:middle;width:100%}.custom-select:focus{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25);outline:0}.custom-select:focus::-ms-value{background-color:#fff;color:#495057}.custom-select[multiple],.custom-select[size]:not([size="1"]){background-image:none;height:auto;padding-right:.75rem}.custom-select:disabled{background-color:#e9ecef;color:#6c757d}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{font-size:.875rem;height:calc(1.5em + .5rem + 2px);padding-bottom:.25rem;padding-left:.5rem;padding-top:.25rem}.custom-select-lg{font-size:1.25rem;height:calc(1.5em + 1rem + 2px);padding-bottom:.5rem;padding-left:1rem;padding-top:.5rem}.custom-file{display:inline-block;margin-bottom:0}.custom-file,.custom-file-input{height:calc(1.5em + .75rem + 2px);position:relative;width:100%}.custom-file-input{margin:0;opacity:0;overflow:hidden;z-index:2}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label:after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]:after{content:attr(data-browse)}.custom-file-label{background-color:#fff;border:1px solid #ced4da;border-radius:.25rem;font-weight:400;height:calc(1.5em + .75rem + 2px);left:0;overflow:hidden;z-index:1}.custom-file-label,.custom-file-label:after{color:#495057;line-height:1.5;padding:.375rem .75rem;position:absolute;right:0;top:0}.custom-file-label:after{background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0;bottom:0;content:"Browse";display:block;height:calc(1.5em + .75rem);z-index:3}.custom-range{appearance:none;background-color:transparent;height:1.4rem;padding:0;width:100%}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{appearance:none;background-color:#007bff;border:0;border-radius:1rem;height:1rem;margin-top:-.25rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:1rem}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{background-color:#dee2e6;border-color:transparent;border-radius:1rem;color:transparent;cursor:pointer;height:.5rem;width:100%}.custom-range::-moz-range-thumb{appearance:none;background-color:#007bff;border:0;border-radius:1rem;height:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:1rem}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{background-color:#dee2e6;border-color:transparent;border-radius:1rem;color:transparent;cursor:pointer;height:.5rem;width:100%}.custom-range::-ms-thumb{appearance:none;background-color:#007bff;border:0;border-radius:1rem;height:1rem;margin-left:.2rem;margin-right:.2rem;margin-top:0;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:1rem}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{background-color:transparent;border-color:transparent;border-width:.5rem;color:transparent;cursor:pointer;height:.5rem;width:100%}.custom-range::-ms-fill-lower,.custom-range::-ms-fill-upper{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label:before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label:before,.custom-file-label,.custom-select{transition:none}}.nav{display:flex;flex-wrap:wrap;list-style:none;margin-bottom:0;padding-left:0}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;cursor:default;pointer-events:none}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem;margin-bottom:-1px}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{background-color:transparent;border-color:transparent;color:#6c757d}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{background-color:#fff;border-color:#dee2e6 #dee2e6 #fff;color:#495057}.nav-tabs .dropdown-menu{border-top-left-radius:0;border-top-right-radius:0;margin-top:-1px}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{background-color:#007bff;color:#fff}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{flex-basis:0;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{padding:.5rem 1rem;position:relative}.navbar,.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between}.navbar-brand{display:inline-block;font-size:1.25rem;line-height:inherit;margin-right:1rem;padding-bottom:.3125rem;padding-top:.3125rem;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:flex;flex-direction:column;list-style:none;margin-bottom:0;padding-left:0}.navbar-nav .nav-link{padding-left:0;padding-right:0}.navbar-nav .dropdown-menu{float:none;position:static}.navbar-text{display:inline-block;padding-bottom:.5rem;padding-top:.5rem}.navbar-collapse{align-items:center;flex-basis:100%;flex-grow:1}.navbar-toggler{background-color:transparent;border:1px solid transparent;border-radius:.25rem;font-size:1.25rem;line-height:1;padding:.25rem .75rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{background:50%/100% 100% no-repeat;content:"";display:inline-block;height:1.5em;vertical-align:middle;width:1.5em}.navbar-nav-scroll{max-height:75vh;overflow-y:auto}@media (max-width:539.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-left:0;padding-right:0}}@media (min-width:540px){.navbar-expand-sm{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{flex-wrap:nowrap}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:719.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-left:0;padding-right:0}}@media (min-width:720px){.navbar-expand-md{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{flex-wrap:nowrap}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:959.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-left:0;padding-right:0}}@media (min-width:960px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{flex-wrap:nowrap}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-left:0;padding-right:0}}@media (min-width:1200px){.navbar-expand-xl{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{flex-wrap:nowrap}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-left:0;padding-right:0}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{flex-wrap:nowrap}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{border-color:rgba(0,0,0,.1);color:rgba(0,0,0,.5)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath stroke='rgba(0,0,0,0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{border-color:hsla(0,0%,100%,.1);color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath stroke='rgba(255,255,255,0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.5)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{word-wrap:break-word;background-clip:border-box;background-color:#fff;border:1px solid rgba(0,0,0,.125);border-radius:.25rem;display:flex;flex-direction:column;min-width:0;position:relative}.card>hr{margin-left:0;margin-right:0}.card>.list-group{border-bottom:inherit;border-top:inherit}.card>.list-group:first-child{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px);border-top-width:0}.card>.list-group:last-child{border-bottom-left-radius:calc(.25rem - 1px);border-bottom-right-radius:calc(.25rem - 1px);border-bottom-width:0}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125);margin-bottom:0;padding:.75rem 1.25rem}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-footer{background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125);padding:.75rem 1.25rem}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{border-bottom:0;margin-bottom:-.75rem}.card-header-pills,.card-header-tabs{margin-left:-.625rem;margin-right:-.625rem}.card-img-overlay{border-radius:calc(.25rem - 1px);bottom:0;left:0;padding:1.25rem;position:absolute;right:0;top:0}.card-img,.card-img-bottom,.card-img-top{flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-left-radius:calc(.25rem - 1px);border-bottom-right-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:540px){.card-deck{display:flex;flex-flow:row wrap;margin-left:-15px;margin-right:-15px}.card-deck .card{flex:1 0 0%;margin-bottom:0;margin-left:15px;margin-right:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:540px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{border-left:0;margin-left:0}.card-group>.card:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:540px){.card-columns{column-count:3;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion{overflow-anchor:none}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{background-color:#e9ecef;border-radius:.25rem;display:flex;flex-wrap:wrap;list-style:none;margin-bottom:1rem;padding:.75rem 1rem}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{color:#6c757d;content:"/";float:left;padding-right:.5rem}.breadcrumb-item+.breadcrumb-item:hover:before{text-decoration:underline;text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{border-radius:.25rem;display:flex;list-style:none;padding-left:0}.page-link{background-color:#fff;border:1px solid #dee2e6;color:#007bff;display:block;line-height:1.25;margin-left:-1px;padding:.5rem .75rem;position:relative}.page-link:hover{background-color:#e9ecef;border-color:#dee2e6;color:#0056b3;text-decoration:none;z-index:2}.page-link:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.25);outline:0;z-index:3}.page-item:first-child .page-link{border-bottom-left-radius:.25rem;border-top-left-radius:.25rem;margin-left:0}.page-item:last-child .page-link{border-bottom-right-radius:.25rem;border-top-right-radius:.25rem}.page-item.active .page-link{background-color:#007bff;border-color:#007bff;color:#fff;z-index:3}.page-item.disabled .page-link{background-color:#fff;border-color:#dee2e6;color:#6c757d;cursor:auto;pointer-events:none}.pagination-lg .page-link{font-size:1.25rem;line-height:1.5;padding:.75rem 1.5rem}.pagination-lg .page-item:first-child .page-link{border-bottom-left-radius:.3rem;border-top-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-bottom-right-radius:.3rem;border-top-right-radius:.3rem}.pagination-sm .page-link{font-size:.875rem;line-height:1.5;padding:.25rem .5rem}.pagination-sm .page-item:first-child .page-link{border-bottom-left-radius:.2rem;border-top-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-bottom-right-radius:.2rem;border-top-right-radius:.2rem}.badge{border-radius:.25rem;display:inline-block;font-size:75%;font-weight:700;line-height:1;padding:.25em .4em;text-align:center;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;vertical-align:baseline;white-space:nowrap}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{border-radius:10rem;padding-left:.6em;padding-right:.6em}.badge-primary{background-color:#007bff;color:#fff}a.badge-primary:focus,a.badge-primary:hover{background-color:#0062cc;color:#fff}a.badge-primary.focus,a.badge-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5);outline:0}.badge-secondary{background-color:#6c757d;color:#fff}a.badge-secondary:focus,a.badge-secondary:hover{background-color:#545b62;color:#fff}a.badge-secondary.focus,a.badge-secondary:focus{box-shadow:0 0 0 .2rem hsla(208,7%,46%,.5);outline:0}.badge-success{background-color:#28a745;color:#fff}a.badge-success:focus,a.badge-success:hover{background-color:#1e7e34;color:#fff}a.badge-success.focus,a.badge-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5);outline:0}.badge-info{background-color:#17a2b8;color:#fff}a.badge-info:focus,a.badge-info:hover{background-color:#117a8b;color:#fff}a.badge-info.focus,a.badge-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5);outline:0}.badge-warning{background-color:#ffc107;color:#212529}a.badge-warning:focus,a.badge-warning:hover{background-color:#d39e00;color:#212529}a.badge-warning.focus,a.badge-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5);outline:0}.badge-danger{background-color:#dc3545;color:#fff}a.badge-danger:focus,a.badge-danger:hover{background-color:#bd2130;color:#fff}a.badge-danger.focus,a.badge-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5);outline:0}.badge-light{background-color:#f8f9fa;color:#212529}a.badge-light:focus,a.badge-light:hover{background-color:#dae0e5;color:#212529}a.badge-light.focus,a.badge-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5);outline:0}.badge-dark{background-color:#343a40;color:#fff}a.badge-dark:focus,a.badge-dark:hover{background-color:#1d2124;color:#fff}a.badge-dark.focus,a.badge-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5);outline:0}.jumbotron{background-color:#e9ecef;border-radius:.3rem;margin-bottom:2rem;padding:2rem 1rem}@media (min-width:540px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{border-radius:0;padding-left:0;padding-right:0}.alert{border:1px solid transparent;border-radius:.25rem;margin-bottom:1rem;padding:.75rem 1.25rem;position:relative}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{color:inherit;padding:.75rem 1.25rem;position:absolute;right:0;top:0;z-index:2}.alert-primary{background-color:#cce5ff;border-color:#b8daff;color:#004085}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{background-color:#e2e3e5;border-color:#d6d8db;color:#383d41}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{background-color:#d4edda;border-color:#c3e6cb;color:#155724}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{background-color:#d1ecf1;border-color:#bee5eb;color:#0c5460}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{background-color:#fff3cd;border-color:#ffeeba;color:#856404}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{background-color:#f8d7da;border-color:#f5c6cb;color:#721c24}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{background-color:#fefefe;border-color:#fdfdfe;color:#818182}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{background-color:#d6d8d9;border-color:#c6c8ca;color:#1b1e21}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress{background-color:#e9ecef;border-radius:.25rem;font-size:.75rem;height:1rem;line-height:0}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{background-color:#007bff;color:#fff;flex-direction:column;justify-content:center;text-align:center;transition:width .6s ease;white-space:nowrap}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{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);background-size:1rem 1rem}.progress-bar-animated{animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.media{align-items:flex-start;display:flex}.media-body{flex:1}.list-group{border-radius:.25rem;display:flex;flex-direction:column;margin-bottom:0;padding-left:0}.list-group-item-action{color:#495057;text-align:inherit;width:100%}.list-group-item-action:focus,.list-group-item-action:hover{background-color:#f8f9fa;color:#495057;text-decoration:none;z-index:1}.list-group-item-action:active{background-color:#e9ecef;color:#212529}.list-group-item{background-color:#fff;border:1px solid rgba(0,0,0,.125);display:block;padding:.75rem 1.25rem;position:relative}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{background-color:#fff;color:#6c757d;pointer-events:none}.list-group-item.active{background-color:#007bff;border-color:#007bff;color:#fff;z-index:2}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{border-top-width:1px;margin-top:-1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}@media (min-width:540px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:720px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-md>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:960px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 1px}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{background-color:#b8daff;color:#004085}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{background-color:#9fcdff;color:#004085}.list-group-item-primary.list-group-item-action.active{background-color:#004085;border-color:#004085;color:#fff}.list-group-item-secondary{background-color:#d6d8db;color:#383d41}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{background-color:#c8cbcf;color:#383d41}.list-group-item-secondary.list-group-item-action.active{background-color:#383d41;border-color:#383d41;color:#fff}.list-group-item-success{background-color:#c3e6cb;color:#155724}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{background-color:#b1dfbb;color:#155724}.list-group-item-success.list-group-item-action.active{background-color:#155724;border-color:#155724;color:#fff}.list-group-item-info{background-color:#bee5eb;color:#0c5460}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{background-color:#abdde5;color:#0c5460}.list-group-item-info.list-group-item-action.active{background-color:#0c5460;border-color:#0c5460;color:#fff}.list-group-item-warning{background-color:#ffeeba;color:#856404}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{background-color:#ffe8a1;color:#856404}.list-group-item-warning.list-group-item-action.active{background-color:#856404;border-color:#856404;color:#fff}.list-group-item-danger{background-color:#f5c6cb;color:#721c24}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{background-color:#f1b0b7;color:#721c24}.list-group-item-danger.list-group-item-action.active{background-color:#721c24;border-color:#721c24;color:#fff}.list-group-item-light{background-color:#fdfdfe;color:#818182}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{background-color:#ececf6;color:#818182}.list-group-item-light.list-group-item-action.active{background-color:#818182;border-color:#818182;color:#fff}.list-group-item-dark{background-color:#c6c8ca;color:#1b1e21}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{background-color:#b9bbbe;color:#1b1e21}.list-group-item-dark.list-group-item-action.active{background-color:#1b1e21;border-color:#1b1e21;color:#fff}.close{color:#000;float:right;font-size:1.5rem;font-weight:700;line-height:1;opacity:.5;text-shadow:0 1px 0 #fff}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{background-color:transparent;border:0;padding:0}a.close.disabled{pointer-events:none}.toast{background-clip:padding-box;background-color:hsla(0,0%,100%,.85);border:1px solid rgba(0,0,0,.1);border-radius:.25rem;box-shadow:0 .25rem .75rem rgba(0,0,0,.1);flex-basis:350px;font-size:.875rem;max-width:350px;opacity:0}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{align-items:center;background-clip:padding-box;background-color:hsla(0,0%,100%,.85);border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px);color:#6c757d;display:flex;padding:.25rem .75rem}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{display:none;height:100%;left:0;outline:0;overflow:hidden;position:fixed;top:0;width:100%;z-index:1050}.modal-dialog{margin:.5rem;pointer-events:none;position:relative;width:auto}.modal.fade .modal-dialog{transform:translateY(-50px);transition:transform .3s ease-out}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{align-items:center;display:flex;min-height:calc(100% - 1rem)}.modal-dialog-centered:before{content:"";display:block;height:calc(100vh - 1rem);height:min-content}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;height:100%;justify-content:center}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable:before{content:none}.modal-content{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;display:flex;flex-direction:column;outline:0;pointer-events:auto;position:relative;width:100%}.modal-backdrop{background-color:#000;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:1040}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{align-items:flex-start;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px);display:flex;justify-content:space-between;padding:1rem}.modal-header .close{margin:-1rem -1rem -1rem auto;padding:1rem}.modal-title{line-height:1.5;margin-bottom:0}.modal-body{flex:1 1 auto;padding:1rem;position:relative}.modal-footer{align-items:center;border-bottom-left-radius:calc(.3rem - 1px);border-bottom-right-radius:calc(.3rem - 1px);border-top:1px solid #dee2e6;display:flex;flex-wrap:wrap;justify-content:flex-end;padding:.75rem}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{height:50px;overflow:scroll;position:absolute;top:-9999px;width:50px}@media (min-width:540px){.modal-dialog{margin:1.75rem auto;max-width:500px}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered:before{height:calc(100vh - 3.5rem);height:min-content}.modal-sm{max-width:300px}}@media (min-width:960px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{word-wrap:break-word;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,Liberation Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:.875rem;font-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.5;margin:0;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}.tooltip.show{opacity:.9}.tooltip .arrow{display:block;height:.4rem;position:absolute;width:.8rem}.tooltip .arrow:before{border-color:transparent;border-style:solid;content:"";position:absolute}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow:before,.bs-tooltip-top .arrow:before{border-top-color:#000;border-width:.4rem .4rem 0;top:0}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{height:.8rem;left:0;width:.4rem}.bs-tooltip-auto[x-placement^=right] .arrow:before,.bs-tooltip-right .arrow:before{border-right-color:#000;border-width:.4rem .4rem .4rem 0;right:0}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow:before,.bs-tooltip-bottom .arrow:before{border-bottom-color:#000;border-width:0 .4rem .4rem;bottom:0}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{height:.8rem;right:0;width:.4rem}.bs-tooltip-auto[x-placement^=left] .arrow:before,.bs-tooltip-left .arrow:before{border-left-color:#000;border-width:.4rem 0 .4rem .4rem;left:0}.tooltip-inner{background-color:#000;border-radius:.25rem;color:#fff;max-width:200px;padding:.25rem .5rem;text-align:center}.popover{word-wrap:break-word;background-clip:padding-box;background-color:#fff;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,Liberation Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:.875rem;font-style:normal;font-weight:400;left:0;letter-spacing:normal;line-break:auto;line-height:1.5;max-width:276px;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}.popover,.popover .arrow{display:block;position:absolute}.popover .arrow{height:.5rem;margin:0 .3rem;width:1rem}.popover .arrow:after,.popover .arrow:before{border-color:transparent;border-style:solid;content:"";display:block;position:absolute}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow:before,.bs-popover-top>.arrow:before{border-top-color:rgba(0,0,0,.25);border-width:.5rem .5rem 0;bottom:0}.bs-popover-auto[x-placement^=top]>.arrow:after,.bs-popover-top>.arrow:after{border-top-color:#fff;border-width:.5rem .5rem 0;bottom:1px}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{height:1rem;left:calc(-.5rem - 1px);margin:.3rem 0;width:.5rem}.bs-popover-auto[x-placement^=right]>.arrow:before,.bs-popover-right>.arrow:before{border-right-color:rgba(0,0,0,.25);border-width:.5rem .5rem .5rem 0;left:0}.bs-popover-auto[x-placement^=right]>.arrow:after,.bs-popover-right>.arrow:after{border-right-color:#fff;border-width:.5rem .5rem .5rem 0;left:1px}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow:before,.bs-popover-bottom>.arrow:before{border-bottom-color:rgba(0,0,0,.25);border-width:0 .5rem .5rem;top:0}.bs-popover-auto[x-placement^=bottom]>.arrow:after,.bs-popover-bottom>.arrow:after{border-bottom-color:#fff;border-width:0 .5rem .5rem;top:1px}.bs-popover-auto[x-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{border-bottom:1px solid #f7f7f7;content:"";display:block;left:50%;margin-left:-.5rem;position:absolute;top:0;width:1rem}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{height:1rem;margin:.3rem 0;right:calc(-.5rem - 1px);width:.5rem}.bs-popover-auto[x-placement^=left]>.arrow:before,.bs-popover-left>.arrow:before{border-left-color:rgba(0,0,0,.25);border-width:.5rem 0 .5rem .5rem;right:0}.bs-popover-auto[x-placement^=left]>.arrow:after,.bs-popover-left>.arrow:after{border-left-color:#fff;border-width:.5rem 0 .5rem .5rem;right:1px}.popover-header{background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px);font-size:1rem;margin-bottom:0;padding:.5rem .75rem}.popover-header:empty{display:none}.popover-body{color:#212529;padding:.5rem .75rem}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{overflow:hidden;position:relative;width:100%}.carousel-inner:after{clear:both;content:"";display:block}.carousel-item{backface-visibility:hidden;display:none;float:left;margin-right:-100%;position:relative;transition:transform .6s ease-in-out;width:100%}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transform:none;transition-property:opacity}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{opacity:1;z-index:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{opacity:0;transition:opacity 0s .6s;z-index:0}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{align-items:center;background:none;border:0;bottom:0;color:#fff;display:flex;justify-content:center;opacity:.5;padding:0;position:absolute;text-align:center;top:0;transition:opacity .15s ease;width:15%;z-index:1}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;opacity:.9;outline:0;text-decoration:none}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{background:50%/100% 100% no-repeat;display:inline-block;height:20px;width:20px}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8'%3E%3Cpath d='m5.25 0-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3E%3C/svg%3E")}.carousel-control-next-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8'%3E%3Cpath d='m2.75 0-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3E%3C/svg%3E")}.carousel-indicators{bottom:0;display:flex;justify-content:center;left:0;list-style:none;margin-left:15%;margin-right:15%;padding-left:0;position:absolute;right:0;z-index:15}.carousel-indicators li{background-clip:padding-box;background-color:#fff;border-bottom:10px solid transparent;border-top:10px solid transparent;box-sizing:content-box;cursor:pointer;flex:0 1 auto;height:3px;margin-left:3px;margin-right:3px;opacity:.5;text-indent:-999px;transition:opacity .6s ease;width:30px}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{bottom:20px;color:#fff;left:15%;padding-bottom:20px;padding-top:20px;position:absolute;right:15%;text-align:center;z-index:10}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-border{animation:spinner-border .75s linear infinite;border:.25em solid;border-radius:50%;border-right:.25em solid transparent;display:inline-block;height:2rem;vertical-align:-.125em;width:2rem}.spinner-border-sm{border-width:.2em;height:1rem;width:1rem}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{animation:spinner-grow .75s linear infinite;background-color:currentColor;border-radius:50%;display:inline-block;height:2rem;opacity:0;vertical-align:-.125em;width:2rem}.spinner-grow-sm{height:1rem;width:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{animation-duration:1.5s}}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important}.rounded-right,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-right{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-left{border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix:after{clear:both;content:"";display:block}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}@media (min-width:540px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}}@media (min-width:720px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}}@media (min-width:960px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}}.embed-responsive{display:block;overflow:hidden;padding:0;position:relative;width:100%}.embed-responsive:before{content:"";display:block}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{border:0;bottom:0;height:100%;left:0;position:absolute;top:0;width:100%}.embed-responsive-21by9:before{padding-top:42.85714%}.embed-responsive-16by9:before{padding-top:56.25%}.embed-responsive-4by3:before{padding-top:75%}.embed-responsive-1by1:before{padding-top:100%}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:540px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:720px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:960px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:540px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:720px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:960px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.user-select-all{user-select:all!important}.user-select-auto{user-select:auto!important}.user-select-none{user-select:none!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.fixed-top{top:0}.fixed-bottom,.fixed-top{left:0;position:fixed;right:0;z-index:1030}.fixed-bottom{bottom:0}@supports (position:sticky){.sticky-top{position:sticky;top:0;z-index:1020}}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;overflow:visible;position:static;white-space:normal;width:auto}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:540px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:720px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:960px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.stretched-link:after{background-color:transparent;bottom:0;content:"";left:0;pointer-events:auto;position:absolute;right:0;top:0;z-index:1}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:540px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:720px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:960px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-hide{background-color:transparent;border:0;color:transparent;font:0/0 a;text-shadow:none}.text-decoration-none{text-decoration:none!important}.text-break{word-wrap:break-word!important;word-break:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,:after,:before{box-shadow:none!important;text-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd}blockquote,img,pre,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}.container,body{min-width:960px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{border-color:#dee2e6;color:inherit}} \ No newline at end of file diff --git a/_static/styles/pydata-sphinx-theme.css b/_static/styles/pydata-sphinx-theme.css new file mode 100644 index 00000000..4685d7ac --- /dev/null +++ b/_static/styles/pydata-sphinx-theme.css @@ -0,0 +1 @@ +html{--pst-header-height:3rem;--pst-header-article-height:calc(var(--pst-header-height)*2/3);--pst-sidebar-secondary:17rem;--pst-font-size-base:15px;--pst-font-size-h1:36px;--pst-font-size-h2:32px;--pst-font-size-h3:26px;--pst-font-size-h4:21px;--pst-font-size-h5:18px;--pst-font-size-h6:16px;--pst-font-size-milli:12px;--pst-sidebar-font-size:0.9em;--pst-sidebar-font-size-mobile:1.2em;--pst-sidebar-header-font-size:1.2em;--pst-sidebar-header-font-weight:600;--pst-font-weight-caption:300;--pst-font-weight-heading:600;--pst-font-family-base-system:-apple-system,BlinkMacSystemFont,Segoe UI,"Helvetica Neue",Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;--pst-font-family-monospace-system:"SFMono-Regular",Menlo,Consolas,Monaco,Liberation Mono,Lucida Console,monospace;--pst-font-family-base:var(--pst-font-family-base-system);--pst-font-family-heading:var(--pst-font-family-base-system);--pst-font-family-monospace:var(--pst-font-family-monospace-system);--pst-font-size-icon:1.5rem;--pst-icon-check-circle:"\f058";--pst-icon-info-circle:"\f05a";--pst-icon-exclamation-triangle:"\f071";--pst-icon-exclamation-circle:"\f06a";--pst-icon-times-circle:"\f057";--pst-icon-lightbulb:"\f0eb";--pst-icon-download:"\f019";--pst-icon-angle-left:"\f104";--pst-icon-angle-right:"\f105";--pst-icon-external-link:"\f35d";--pst-icon-search-minus:"\f010";--pst-icon-github:"\f09b";--pst-icon-gitlab:"\f296";--pst-icon-share:"\f064";--pst-icon-bell:"\f0f3";--pst-icon-pencil:"\f303";--pst-icon-admonition-default:var(--pst-icon-bell);--pst-icon-admonition-note:var(--pst-icon-info-circle);--pst-icon-admonition-attention:var(--pst-icon-exclamation-circle);--pst-icon-admonition-caution:var(--pst-icon-exclamation-triangle);--pst-icon-admonition-warning:var(--pst-icon-exclamation-triangle);--pst-icon-admonition-danger:var(--pst-icon-exclamation-triangle);--pst-icon-admonition-error:var(--pst-icon-times-circle);--pst-icon-admonition-hint:var(--pst-icon-lightbulb);--pst-icon-admonition-tip:var(--pst-icon-lightbulb);--pst-icon-admonition-important:var(--pst-icon-exclamation-circle);--pst-icon-admonition-seealso:var(--pst-icon-share);--pst-icon-admonition-todo:var(--pst-icon-pencil);--pst-icon-versionmodified-default:var(--pst-icon-exclamation-circle);--pst-icon-versionmodified-added:var(--pst-icon-exclamation-circle);--pst-icon-versionmodified-changed:var(--pst-icon-exclamation-circle);--pst-icon-versionmodified-deprecated:var(--pst-icon-exclamation-circle)}html[data-theme=light]{--pst-color-attention:#ffc107;--pst-color-text-base:#323232;--pst-color-text-muted:#646464;--pst-color-shadow:#d8d8d8;--pst-color-border:#c9c9c9;--pst-color-inline-code:#e83e8c;--pst-color-target:#fbe54e;--pst-color-background:#fff;--pst-color-on-background:#fff;--pst-color-surface:#f5f5f5;--pst-color-on-surface:#e1e1e1;--pst-color-link:var(--pst-color-primary);--pst-color-link-hover:var(--pst-color-warning)}html[data-theme=light] .only-dark{display:none!important}html[data-theme=dark]{--pst-color-attention:#dca90f;--pst-color-text-base:#cecece;--pst-color-text-muted:#a6a6a6;--pst-color-shadow:#212121;--pst-color-border:silver;--pst-color-inline-code:#dd9ec2;--pst-color-target:#472700;--pst-color-background:#121212;--pst-color-on-background:#1e1e1e;--pst-color-surface:#212121;--pst-color-on-surface:#373737;--pst-color-link:var(--pst-color-primary);--pst-color-link-hover:var(--pst-color-warning)}html[data-theme=dark] .only-light{display:none!important}html[data-theme=dark] img:not(.only-dark):not(.dark-light){filter:brightness(.8) contrast(1.2)}html[data-theme=dark] .bd-content img:not(.only-dark):not(.dark-light){background:#fff;border-radius:.25rem}html[data-theme=dark] .MathJax_SVG *{fill:var(--pst-color-text-base)}html{font-size:var(--pst-font-size-base);scroll-padding-top:calc(var(--pst-header-height) + 12px)}body{background-color:var(--pst-color-background);color:var(--pst-color-text-base);display:flex;flex-direction:column;font-family:var(--pst-font-family-base);font-weight:400;line-height:1.65;min-height:100vh}body::-webkit-scrollbar{height:.5rem;width:.5rem}body::-webkit-scrollbar-thumb{background:var(--pst-color-text-muted);border-radius:.25rem}body::-webkit-scrollbar-track{background:transparent}body::-webkit-scrollbar-thumb{background:var(--pst-color-on-surface)}body::-webkit-scrollbar-thumb:hover,body:hover::-webkit-scrollbar-thumb{background:var(--pst-color-text-muted)}body::-webkit-scrollbar-track{background:var(--pst-color-background)}p{color:var(--pst-color-text-base);font-size:1em;margin-bottom:1.15rem}p.rubric{border-bottom:1px solid var(--pst-color-border)}p.centered{text-align:center}a{color:var(--pst-color-link);text-decoration:none}a:hover{color:var(--pst-color-link-hover);text-decoration:underline}a.headerlink{color:var(--pst-color-warning);font-size:.8em;margin-left:.2em;opacity:.4;padding:0 4px;text-decoration:none;transition:all .2s ease-out;user-select:none}a.headerlink:hover{opacity:1}a:before{color:var(--pst-color-text-muted);font-family:Font Awesome\ 6 Brands;margin-right:.25rem}a.github:before{content:var(--pst-icon-github)}a.gitlab:before{content:var(--pst-icon-gitlab)}.heading-style,h1,h2,h3,h4,h5,h6{font-family:var(--pst-font-family-heading);font-weight:400;line-height:1.15;margin:2.75rem 0 1.05rem}h1{font-size:var(--pst-font-size-h1);margin-top:0}h1,h2{color:var(--pst-color-primary)}h2{font-size:var(--pst-font-size-h2)}h3{font-size:var(--pst-font-size-h3)}h3,h4{color:var(--pst-color-text-base)}h4{font-size:var(--pst-font-size-h4)}h5{font-size:var(--pst-font-size-h5)}h5,h6{color:var(--pst-color-text-base)}h6{font-size:var(--pst-font-size-h6)}.text_small,small{font-size:var(--pst-font-size-milli)}hr{border:0;border-top:1px solid var(--pst-color-border)}code,kbd,pre,samp{font-family:var(--pst-font-family-monospace)}kbd{background-color:var(--pst-color-on-background);color:var(--pst-color-text-muted)}kbd:not(.compound){border:1px solid var(--pst-color-border);box-shadow:1px 1px 1px var(--pst-color-shadow);margin:0 .1rem;padding:.1rem .4rem}code{color:var(--pst-color-inline-code)}pre{background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);border-radius:.25rem;color:var(--pst-color-text-base);line-height:1.2em;margin:1.5em 0;padding:1rem}pre::-webkit-scrollbar{height:.5rem;width:.5rem}pre::-webkit-scrollbar-thumb{background:var(--pst-color-text-muted);border-radius:.25rem}pre::-webkit-scrollbar-track{background:transparent}pre::-webkit-scrollbar-thumb{background:var(--pst-color-on-surface)}pre::-webkit-scrollbar-thumb:hover,pre:hover::-webkit-scrollbar-thumb{background:var(--pst-color-text-muted)}pre .linenos{opacity:.5;padding-right:10px}.skip-link{background-color:var(--pst-color-background);border-bottom:1px solid var(--pst-color-border);color:var(--pst-color-link);left:0;padding:.5rem;position:fixed;right:0;text-align:center;top:0;transition:translate .15s ease-in-out;translate:0 -100%;z-index:1050}.skip-link:focus{translate:0}.bd-container{display:flex;flex-grow:1;justify-content:center}.bd-container .bd-container__inner{display:flex}.bd-page-width{width:100%}@media (min-width:960px){.bd-page-width{max-width:88rem}}.bd-header-announcement{align-items:center;display:flex;justify-content:center;min-height:3rem;padding:.5rem 12.5%;position:relative;text-align:center;width:100%}@media (max-width:1199.98px){.bd-header-announcement{padding:.5rem 2%}}.bd-header-announcement p{font-weight:700;margin:0}.bd-header-announcement:after{background-color:var(--pst-color-info);content:"";height:100%;left:0;opacity:.2;position:absolute;top:0;width:100%;z-index:-1}.bd-header-announcement:empty{display:none}.bd-main{display:flex;flex-direction:column;flex-grow:1;min-width:0}.bd-main .bd-content{display:flex;height:100%;justify-content:center}.bd-main .bd-content .bd-article-container{display:flex;flex-direction:column;justify-content:start;max-width:60em;overflow-x:auto;padding:1rem;width:100%}@media (min-width:1200px){.bd-main .bd-content .bd-article-container .bd-article{padding-left:2rem;padding-top:1.5rem}}footer.bd-footer{border-top:1px solid var(--pst-color-border);padding:10px;width:100%}footer.bd-footer .footer-item p{margin-bottom:0}.bd-footer-article{display:flex;margin-top:auto}.bd-header{background:var(--pst-color-on-background)!important;box-shadow:0 .125rem .25rem 0 var(--pst-color-shadow);justify-content:center;max-width:100vw;min-height:var(--pst-header-height);padding:.5rem 0;position:sticky;top:0;width:100%;z-index:1030}.bd-header .bd-header__inner{align-items:center;display:flex;height:100%;padding-left:1rem;padding-right:1rem}@media (min-width:960px){.bd-header .navbar-header-items{display:flex;flex-grow:1;padding:0 0 0 .5rem}}.bd-header #navbar-center,.bd-header #navbar-end,.bd-header #navbar-start{align-items:center;display:flex;flex-flow:wrap}.bd-header #navbar-center,.bd-header #navbar-end{gap:1rem}.bd-header #navbar-start{gap:.5rem;margin-right:auto}.bd-header #navbar-end{justify-content:end}.bd-header .navbar-nav{display:flex}@media (min-width:960px){.bd-header .navbar-nav{align-items:center}}.bd-header .navbar-nav li a.nav-link{color:var(--pst-color-text-muted)}.bd-header .navbar-nav li a.nav-link:focus,.bd-header .navbar-nav li a.nav-link:hover{color:var(--pst-color-primary)}.bd-header .navbar-nav>.active>.nav-link{color:var(--pst-color-primary);font-weight:600}.bd-header .navbar-nav .dropdown button{border:none;color:var(--pst-color-text-muted);display:unset}.bd-header .navbar-nav .dropdown .dropdown-menu{background-color:var(--pst-color-on-background);border:1px solid var(--pst-color-border);box-shadow:0 0 .3rem .1rem var(--pst-color-shadow);margin:.5rem 0;min-width:20rem;padding:.5rem 1rem;z-index:1060}.bd-header .navbar-nav .dropdown .dropdown-menu:not(.show){display:none}@media (min-width:960px){.navbar-center-item{display:inline-block}}.toc-entry>.nav-link.active{background-color:transparent;border-left:2px solid var(--pst-color-primary);color:var(--pst-color-primary);font-weight:600}.nav-link:hover{border-style:none}.nav-link.nav-external:after{content:var(--pst-icon-external-link);font-family:Font Awesome\ 6 Free;font-size:.75em;font-weight:900;margin-left:.3em}#navbar-main-elements li.nav-item i{font-size:.7rem;padding-left:2px;vertical-align:middle}.bd-header label.sidebar-toggle{align-items:center;color:var(--pst-color-muted);cursor:pointer;display:flex;font-size:var(--pst-font-size-icon);margin-bottom:0}.bd-header label.primary-toggle{padding-right:1rem}@media (min-width:960px){.bd-header label.primary-toggle{display:none}}.bd-header label.secondary-toggle{padding-left:1rem}@media (min-width:1200px){.bd-header label.secondary-toggle{display:none}}.bd-header .navbar-header-items{display:none}@media (min-width:960px){.bd-header .navbar-header-items{display:inherit}}.navbar-persistent--mobile{margin-left:auto}@media (min-width:960px){.navbar-persistent--mobile{display:none}}.navbar-persistent--container{display:none}@media (min-width:960px){.navbar-persistent--container{display:flex}}.bd-header-article__inner{align-items:center;display:flex;min-height:var(--pst-header-article-height);padding:0 .5rem}.bd-header-article__inner .bd-header-article__end{margin-left:auto}.bd-sidebar-primary{background-color:var(--pst-color-background);border-right:1px solid var(--pst-color-border);display:flex;flex:0 0 25%;flex-direction:column;font-size:var(--pst-sidebar-font-size-mobile);gap:1rem;max-height:calc(100vh - var(--pst-header-height));max-width:25%;overflow-y:auto;padding:2rem 1rem 1rem;position:sticky;top:var(--pst-header-height)}.bd-sidebar-primary::-webkit-scrollbar{height:.5rem;width:.5rem}.bd-sidebar-primary::-webkit-scrollbar-thumb{background:var(--pst-color-text-muted);border-radius:.25rem}.bd-sidebar-primary::-webkit-scrollbar-track{background:transparent}.bd-sidebar-primary::-webkit-scrollbar-thumb{background:var(--pst-color-on-surface)}.bd-sidebar-primary::-webkit-scrollbar-thumb:hover,.bd-sidebar-primary:hover::-webkit-scrollbar-thumb{background:var(--pst-color-text-muted)}@media (min-width:960px){.bd-sidebar-primary{font-size:var(--pst-sidebar-font-size)}}.bd-sidebar-primary.no-sidebar{border-right:0}@media (min-width:960px){.bd-sidebar-primary.hide-on-wide{display:none}}.bd-sidebar-primary .sidebar-end-items__item,.bd-sidebar-primary .sidebar-start-items__item{padding:.5rem 0}.bd-sidebar-primary .sidebar-header-items{display:flex;flex-direction:column}.bd-sidebar-primary .sidebar-header-items .sidebar-header-items__title{color:var(--pst-color-text-base);font-size:var(--pst-sidebar-header-font-size);font-weight:var(--pst-sidebar-header-font-weight);margin-bottom:.5rem}.bd-sidebar-primary .sidebar-header-items .nav-item.dropdown button{display:none}.bd-sidebar-primary .sidebar-header-items .nav-item.dropdown .dropdown-menu{background-color:inherit;border:none;display:flex;flex-direction:column;font-size:inherit;margin:0;padding:0}.bd-sidebar-primary .sidebar-header-items .sidebar-header-items__center{display:flex;flex-direction:column}.bd-sidebar-primary .sidebar-header-items .sidebar-header-items__end{align-items:center;display:flex;gap:.5rem}@media (min-width:960px){.bd-sidebar-primary .sidebar-header-items{display:none}}.bd-sidebar-primary .sidebar-start-items{border-top:1px solid var(--pst-color-border)}@media (min-width:960px){.bd-sidebar-primary .sidebar-start-items{border-top:none}}.bd-sidebar-primary .sidebar-end-items{margin-bottom:1em;margin-top:auto}.bd-sidebar-primary .list-caption{list-style:none;padding-left:0}.bd-sidebar-primary li{position:relative}.bd-sidebar-primary li.has-children>.reference{padding-right:30px}.bd-sidebar-primary label.toctree-toggle{align-items:center;cursor:pointer;display:flex;height:30px;justify-content:center;position:absolute;right:0;top:0;width:30px}.bd-sidebar-primary label.toctree-toggle:hover{background:var(--pst-color-surface)}.bd-sidebar-primary label.toctree-toggle i{display:inline-block;font-size:.75rem;text-align:center}.bd-sidebar-primary label.toctree-toggle i:hover{color:var(--pst-color-primary)}.bd-sidebar-primary .label-parts{height:100%;width:100%}.bd-sidebar-primary .label-parts:hover{background:none}.bd-sidebar-primary .label-parts i{position:absolute;right:0;top:.3em;width:30px}nav.bd-links{margin-right:-1rem}@media (min-width:960px){nav.bd-links{display:block}}nav.bd-links ul{list-style:none}nav.bd-links ul ul{padding:0 0 0 1rem}nav.bd-links li>a{color:var(--pst-color-text-muted);display:block;padding:.25rem 0}nav.bd-links li>a:hover{background-color:transparent;color:var(--pst-color-primary);text-decoration:none}nav.bd-links li>a.reference.external:after{content:var(--pst-icon-external-link);font-family:Font Awesome\ 6 Free;font-size:.75em;font-weight:900;margin-left:.3em}nav.bd-links .active:hover>a,nav.bd-links .active>a{color:var(--pst-color-primary);font-weight:600}nav.bd-links p.bd-links__title{font-size:var(--pst-sidebar-header-font-size);font-weight:var(--pst-sidebar-header-font-weight);margin-bottom:.5rem}nav.bd-links p.caption{color:var(--pst-color-text-base);font-weight:var(--pst-sidebar-header-font-weight);margin-bottom:.5em;margin-top:1.25em;position:relative}nav.bd-links p.caption:first-child{margin-top:0}.bd-sidebar-secondary{background-color:var(--pst-color-background);display:flex;flex-direction:column;flex-shrink:0;font-size:var(--pst-sidebar-font-size-mobile);max-height:calc(100vh - var(--pst-header-height));order:2;overflow-y:auto;padding:2rem 1rem 1rem;position:sticky;top:var(--pst-header-height);width:var(--pst-sidebar-secondary)}@media (min-width:1200px){.bd-sidebar-secondary{font-size:var(--pst-sidebar-secondary-font-size)}}.bd-sidebar-secondary .onthispage{color:var(--pst-color-text-base);font-weight:var(--pst-sidebar-header-font-weight)}.bd-sidebar-secondary::-webkit-scrollbar{height:.5rem;width:.5rem}.bd-sidebar-secondary::-webkit-scrollbar-thumb{background:var(--pst-color-text-muted);border-radius:.25rem}.bd-sidebar-secondary::-webkit-scrollbar-track{background:transparent}.bd-sidebar-secondary::-webkit-scrollbar-thumb{background:var(--pst-color-on-surface)}.bd-sidebar-secondary::-webkit-scrollbar-thumb:hover,.bd-sidebar-secondary:hover::-webkit-scrollbar-thumb{background:var(--pst-color-text-muted)}.toc-item{padding:.5rem}@media (min-width:1200px){.toc-item{border-left:1px solid var(--pst-color-border);padding-left:1rem}}.toc-item i{padding-right:.5rem}.section-nav{border-bottom:none;padding-left:0}.section-nav ul{padding-left:1rem}div#searchbox p.highlight-link{margin-bottom:0}div#searchbox p.highlight-link a:before{color:unset;content:var(--pst-icon-search-minus);font-family:Font Awesome\ 6 Free;font-weight:900;margin-right:0;padding-right:.5rem}input.sidebar-toggle{display:none}label.overlay{background-color:#000;height:0;left:0;opacity:.5;position:fixed;top:0;transition:opacity .2s ease-out;width:0;z-index:1040}input#__primary:checked+label.overlay.overlay-primary,input#__secondary:checked+label.overlay.overlay-secondary{height:100vh;width:100vw}input#__primary:checked~.bd-container .bd-sidebar-primary{margin-left:0;visibility:visible}input#__secondary:checked~.bd-container .bd-sidebar-secondary{margin-right:0;visibility:visible}@media (min-width:960px){label.sidebar-toggle.primary-toggle{display:none}input#__primary:checked+label.overlay.overlay-primary{height:0;width:0}.bd-sidebar-primary{margin-left:0;visibility:visible}}@media (max-width:959.98px){.bd-sidebar-primary{flex-grow:0.75;height:100vh;left:0;margin-left:-75%;max-height:100vh;max-width:350px;position:fixed;top:0;transition:visibility .2s ease-out,margin .2s ease-out;visibility:hidden;width:75%;z-index:1050}}@media (max-width:1199.98px){.bd-sidebar-secondary{flex-grow:0.75;height:100vh;margin-right:-75%;max-height:100vh;max-width:350px;position:fixed;right:0;top:0;transition:visibility .2s ease-out,margin .2s ease-out;visibility:hidden;width:75%;z-index:1050}}#navbar-icon-links i.fa-brands,#navbar-icon-links i.fa-regular,#navbar-icon-links i.fa-solid{font-size:var(--pst-font-size-icon);font-style:normal;vertical-align:middle}#navbar-icon-links i.fa-square-twitter:before{color:#55acee}#navbar-icon-links i.fa-square-gitlab:before{color:#548}#navbar-icon-links i.fa-bitbucket:before{color:#0052cc}#navbar-icon-links img.icon-link-image{border-radius:.2rem;height:1.5em}#navbar-icon-links li:first-child a{padding-left:0}#navbar-icon-links a span{align-items:center;display:flex}@media (max-width:1199.98px){#navbar-icon-links{flex-direction:row}#navbar-icon-links a{padding:0 .5rem}}.navbar-brand{align-items:center;display:flex;gap:.5rem;height:var(--pst-header-height);margin:0;padding:0;position:relative;width:auto}.navbar-brand p{margin-bottom:0}.navbar-brand img{height:100%;max-width:100%;width:auto}.navbar-nav ul{display:block;list-style:none}.navbar-nav ul ul{padding:0 0 0 1rem}.navbar-nav li{display:flex;flex-direction:column}.navbar-nav li a{align-items:center;color:var(--pst-color-text-muted);display:flex;height:100%;padding-bottom:.25rem;padding-top:.25rem}.navbar-nav li a:hover{border-style:none;text-decoration-line:none}.navbar-nav li a:focus,.navbar-nav li a:hover,.navbar-nav li.current>a{color:var(--pst-color-primary)}.navbar-nav li.current>a{font-weight:600}.navbar-nav .toctree-checkbox{display:none;position:absolute}.navbar-nav .toctree-checkbox~ul{display:none}.navbar-nav .toctree-checkbox~label i{transform:rotate(0deg)}.navbar-nav .toctree-checkbox:checked~ul{display:block}.navbar-nav .toctree-checkbox:checked~label i{transform:rotate(180deg)}.bd-header .navbar-nav>p.sidebar-header-items__title{display:none}.prev-next-area{width:100%}.prev-next-area p{line-height:1.3em;margin:0 .3em}.prev-next-area i{font-size:1.2em}.prev-next-area a{align-items:center;border:none;color:var(--pst-color-text-muted);display:flex;max-width:45%;overflow-x:hidden;padding:10px;text-decoration:none}.prev-next-area a p.prev-next-title{color:var(--pst-color-primary);font-size:1.1em;font-weight:var(--pst-font-weight-heading)}.prev-next-area a:hover p.prev-next-title{text-decoration:underline}.prev-next-area a .prev-next-info{flex-direction:column;margin:0 .5em}.prev-next-area a .prev-next-info .prev-next-subtitle{text-transform:capitalize}.prev-next-area a.left-prev{float:left}.prev-next-area a.right-next{float:right}.prev-next-area a.right-next div.prev-next-info{text-align:right}.bd-search{margin-left:-15px;margin-right:-15px;padding:1rem 15px;position:relative}.bd-search .icon{color:var(--pst-color-border);left:25px;position:absolute}.bd-search i.fa-solid.fa-magnifying-glass{color:var(--pst-color-text-muted);left:1.6rem;position:absolute}.bd-search input{background-color:var(--pst-color-background);border:1px solid var(--pst-color-border);border-radius:.25rem;color:var(--pst-color-text-base);padding-left:2.5rem}.bd-search input::placeholder{color:var(--pst-color-border)}.bd-search input:active,.bd-search input:focus{background-color:var(--pst-color-background);color:var(--pst-color-text-base)}.bd-search input::-webkit-search-cancel-button,.bd-search input::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.bd-search .search-button__kbd-shortcut{color:var(--pst-color-border);position:absolute;right:2em}.search-button{align-content:center;align-items:center;color:var(--pst-color-text-muted);display:flex;padding:0}.search-button:hover{color:var(--pst-color-primary)}.search-button i{font-size:1.3rem}.search-button__overlay,.search-button__search-container{display:none}.search-button__wrapper.show .search-button__search-container{display:flex;left:50%;margin-top:.5rem;max-width:800px;position:fixed;right:1rem;top:30%;transform:translate(-50%,-50%);width:90%;z-index:1050}.search-button__wrapper.show .search-button__overlay{background-color:#000;display:flex;height:100%;left:0;opacity:.5;position:fixed;top:0;width:100%;z-index:1040}.search-button__wrapper.show form.bd-search{flex-grow:1;padding-bottom:0;padding-top:0}.search-button__wrapper.show i,.search-button__wrapper.show input{font-size:var(--pst-font-size-icon)}.theme-switch-button{border-color:var(--pst-color-on-background);font-size:calc(var(--pst-font-size-icon) - .1rem);margin:0 -.5rem;padding:0}.theme-switch-button span{color:var(--pst-color-text-muted);display:none;padding:.5rem}.theme-switch-button span:active,.theme-switch-button span:focus,.theme-switch-button span:hover{text-decoration:none}.theme-switch-button:active,.theme-switch-button:hover{background-color:var(--pst-color-on-surface)!important;border-color:var(--pst-color-on-background)!important}.theme-switch-button:active a,.theme-switch-button:hover a{color:var(--pst-color-text-muted)}.bd-sidebar-primary .theme-switch-button{border-color:var(--pst-color-background)}.bd-sidebar-primary .theme-switch-button:active,.bd-sidebar-primary .theme-switch-button:hover{border-color:var(--pst-color-background)!important}html[data-mode=auto] .theme-switch-button span[data-mode=auto],html[data-mode=dark] .theme-switch-button span[data-mode=dark],html[data-mode=light] .theme-switch-button span[data-mode=light]{display:flex}button.version-switcher__button{border-color:var(--pst-color-border);color:var(--pst-color-text-base);margin-bottom:1em}@media (min-width:960px){button.version-switcher__button{margin-bottom:unset}}button.version-switcher__button:hover{color:var(--pst-color-text-base)}.version-switcher__menu{border-color:var(--pst-color-border)}.version-switcher__menu a.list-group-item{background-color:var(--pst-color-on-background);border-color:var(--pst-color-border);color:var(--pst-color-text-base)}.version-switcher__menu a.list-group-item:hover{background-color:var(--pst-color-surface)}.version-switcher__menu a.list-group-item.active{color:var(--pst-color-primary)}.version-switcher__menu a.list-group-item.active span:before{background-color:var(--pst-color-primary);content:"";height:100%;left:0;opacity:.1;position:absolute;top:0;width:100%}.version-switcher__menu,button.version-switcher__button{font-size:1.1em}@media (min-width:960px){.version-switcher__menu,button.version-switcher__button{font-size:unset}}nav.page-toc{margin-bottom:1rem}nav.page-toc ul>li{font-size:.95em}.bd-toc .nav .nav,.list-caption .nav{display:none}.bd-toc .nav .nav.visible,.bd-toc .nav>.active>ul,.list-caption .nav.visible,.list-caption>.active>ul,.toc-entry{display:block}.toc-entry a.nav-link{color:var(--pst-color-text-muted);display:block;margin-left:-1rem;padding:.125rem 0 .125rem 1rem}.toc-entry a.nav-link:hover{color:var(--pst-color-primary);text-decoration:none}.toc-entry a.nav-link.active{background-color:transparent;border-left:2px solid var(--pst-color-primary);color:var(--pst-color-primary);font-weight:600}div.deprecated,div.versionadded,div.versionchanged{background-color:var(--pst-color-on-background);border-left:.2rem solid;border-color:var(--pst-color-info);border-radius:.25rem;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important;margin:1.5625em auto;overflow:hidden;padding:0 .6rem;page-break-inside:avoid;position:relative;transition:color .25s,background-color .25s,border-color .25s;vertical-align:middle}div.deprecated>p,div.versionadded>p,div.versionchanged>p{margin-bottom:.6rem;margin-top:.6rem}div.deprecated>p:before,div.versionadded>p:before,div.versionchanged>p:before{background-color:var(--pst-color-info);content:"";height:100%;left:0;opacity:.1;pointer-events:none;position:absolute;top:0;width:100%}div.versionadded{border-color:var(--pst-color-success)}div.versionadded p:before{background-color:var(--pst-color-success)}div.versionchanged{border-color:var(--pst-color-warning)}div.versionchanged p:before{background-color:var(--pst-color-warning)}div.deprecated{border-color:var(--pst-color-danger)}div.deprecated p:before{background-color:var(--pst-color-danger)}span.versionmodified{font-weight:600}span.versionmodified:before{color:var(--pst-color-info);content:var(--pst-icon-versionmodified-default);font-family:Font Awesome\ 6 Free;font-style:normal;font-weight:900;margin-right:.6rem}span.versionmodified.added:before{color:var(--pst-color-success);content:var(--pst-icon-versionmodified-added)}span.versionmodified.changed:before{color:var(--pst-color-warning);content:var(--pst-icon-versionmodified-changed)}span.versionmodified.deprecated:before{color:var(--pst-color-danger);content:var(--pst-icon-versionmodified-deprecated)}.sidebar-indices-items{border-top:1px solid var(--pst-color-border);display:flex;flex-direction:column}@media (min-width:960px){.sidebar-indices-items{border-top:none}}.sidebar-indices-items .sidebar-indices-items__title{color:var(--pst-color-text-base);font-size:var(--pst-sidebar-header-font-size);font-weight:var(--pst-sidebar-header-font-weight);margin-bottom:.5rem}.sidebar-indices-items ul.indices-link{list-style:none;margin-right:-1rem;padding:0}.sidebar-indices-items ul.indices-link li>a{color:var(--pst-color-text-muted);display:block;padding:.25rem 0}.sidebar-indices-items ul.indices-link li>a:hover{background-color:transparent;color:var(--pst-color-primary);text-decoration:none}.bd-sidebar-primary div#rtd-footer-container{bottom:-1rem;margin:-1rem;position:sticky}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge{font-family:var(--pst-font-family-base);font-size:.9em;max-width:unset;position:unset}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .rst-current-version{align-items:center;background-color:var(--pst-color-background);border-top:1px solid var(--pst-color-border);color:var(--pst-color-success);display:flex;gap:.2rem;height:2.5rem;transition:background-color .2s ease-out}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .fa.fa-book{color:var(--pst-color-text-muted);margin-right:auto}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .fa.fa-book:after{color:var(--pst-color-text-base);content:"Read The Docs";font-family:var(--pst-font-family-base);font-weight:var(--pst-font-weight-heading)}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .fa.fa-caret-down{color:var(--pst-color-text-muted)}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge.shift-up .rst-current-version{border-bottom:1px solid var(--pst-color-border)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions{background-color:var(--pst-color-surface);color:var(--pst-color-text-base)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions dl dd a{color:var(--pst-color-text-muted)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions hr{background-color:var(--pst-color-border)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions small a{color:var(--pst-color-link)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions input{background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);padding-left:.5rem}.admonition,div.admonition{background-color:var(--pst-color-on-background);border-left:.2rem solid;border-color:var(--pst-color-info);border-radius:.25rem;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important;margin:1.5625em auto;overflow:hidden;padding:0 .6rem .8rem;page-break-inside:avoid}.admonition :last-child,div.admonition :last-child{margin-bottom:0}.admonition p.admonition-title~*,div.admonition p.admonition-title~*{margin-left:1.4rem;margin-right:1.4rem}.admonition>ol,.admonition>ul,div.admonition>ol,div.admonition>ul{margin-left:1em}.admonition>.admonition-title,div.admonition>.admonition-title{font-weight:var(--pst-font-weight-heading);margin:0 -.6rem;padding:.4rem .6rem .4rem 2rem;position:relative}.admonition>.admonition-title:after,div.admonition>.admonition-title:after{color:var(--pst-color-info);content:var(--pst-icon-admonition-default);font-family:Font Awesome\ 6 Free;font-weight:900;height:1rem;left:.5rem;opacity:1;position:absolute;width:1rem}.admonition>.admonition-title:before,div.admonition>.admonition-title:before{background-color:var(--pst-color-info);content:"";height:100%;left:0;opacity:.1;pointer-events:none;position:absolute;top:0;width:100%}.admonition>.admonition-title+*,div.admonition>.admonition-title+*{margin-top:.4em}.admonition.attention,div.admonition.attention{border-color:var(--pst-color-attention)}.admonition.attention>.admonition-title:before,div.admonition.attention>.admonition-title:before{background-color:var(--pst-color-attention)}.admonition.attention>.admonition-title:after,div.admonition.attention>.admonition-title:after{color:var(--pst-color-attention);content:var(--pst-icon-admonition-attention)}.admonition.caution,div.admonition.caution{border-color:var(--pst-color-warning)}.admonition.caution>.admonition-title:before,div.admonition.caution>.admonition-title:before{background-color:var(--pst-color-warning)}.admonition.caution>.admonition-title:after,div.admonition.caution>.admonition-title:after{color:var(--pst-color-warning);content:var(--pst-icon-admonition-caution)}.admonition.warning,div.admonition.warning{border-color:var(--pst-color-warning)}.admonition.warning>.admonition-title:before,div.admonition.warning>.admonition-title:before{background-color:var(--pst-color-warning)}.admonition.warning>.admonition-title:after,div.admonition.warning>.admonition-title:after{color:var(--pst-color-warning);content:var(--pst-icon-admonition-warning)}.admonition.danger,div.admonition.danger{border-color:var(--pst-color-danger)}.admonition.danger>.admonition-title:before,div.admonition.danger>.admonition-title:before{background-color:var(--pst-color-danger)}.admonition.danger>.admonition-title:after,div.admonition.danger>.admonition-title:after{color:var(--pst-color-danger);content:var(--pst-icon-admonition-danger)}.admonition.error,div.admonition.error{border-color:var(--pst-color-danger)}.admonition.error>.admonition-title:before,div.admonition.error>.admonition-title:before{background-color:var(--pst-color-danger)}.admonition.error>.admonition-title:after,div.admonition.error>.admonition-title:after{color:var(--pst-color-danger);content:var(--pst-icon-admonition-error)}.admonition.hint,div.admonition.hint{border-color:var(--pst-color-success)}.admonition.hint>.admonition-title:before,div.admonition.hint>.admonition-title:before{background-color:var(--pst-color-success)}.admonition.hint>.admonition-title:after,div.admonition.hint>.admonition-title:after{color:var(--pst-color-success);content:var(--pst-icon-admonition-hint)}.admonition.tip,div.admonition.tip{border-color:var(--pst-color-success)}.admonition.tip>.admonition-title:before,div.admonition.tip>.admonition-title:before{background-color:var(--pst-color-success)}.admonition.tip>.admonition-title:after,div.admonition.tip>.admonition-title:after{color:var(--pst-color-success);content:var(--pst-icon-admonition-tip)}.admonition.important,div.admonition.important{border-color:var(--pst-color-attention)}.admonition.important>.admonition-title:before,div.admonition.important>.admonition-title:before{background-color:var(--pst-color-attention)}.admonition.important>.admonition-title:after,div.admonition.important>.admonition-title:after{color:var(--pst-color-attention);content:var(--pst-icon-admonition-important)}.admonition.note,div.admonition.note{border-color:var(--pst-color-info)}.admonition.note>.admonition-title:before,div.admonition.note>.admonition-title:before{background-color:var(--pst-color-info)}.admonition.note>.admonition-title:after,div.admonition.note>.admonition-title:after{color:var(--pst-color-info);content:var(--pst-icon-admonition-note)}.admonition.seealso,div.admonition.seealso{border-color:var(--pst-color-success)}.admonition.seealso>.admonition-title:before,div.admonition.seealso>.admonition-title:before{background-color:var(--pst-color-success)}.admonition.seealso>.admonition-title:after,div.admonition.seealso>.admonition-title:after{color:var(--pst-color-success);content:var(--pst-icon-admonition-seealso)}.admonition.admonition-todo,div.admonition.admonition-todo{border-color:var(--pst-color-border)}.admonition.admonition-todo>.admonition-title:before,div.admonition.admonition-todo>.admonition-title:before{background-color:var(--pst-color-border)}.admonition.admonition-todo>.admonition-title:after,div.admonition.admonition-todo>.admonition-title:after{color:var(--pst-color-border);content:var(--pst-icon-admonition-todo)}.admonition.sidebar,div.admonition.sidebar{border-width:0 0 0 .2rem;clear:both;float:right;margin-left:.5rem;margin-top:0;max-width:40%}.admonition.sidebar.attention,.admonition.sidebar.important,div.admonition.sidebar.attention,div.admonition.sidebar.important{border-color:var(--pst-color-attention)}.admonition.sidebar.caution,.admonition.sidebar.warning,div.admonition.sidebar.caution,div.admonition.sidebar.warning{border-color:var(--pst-color-warning)}.admonition.sidebar.danger,.admonition.sidebar.error,div.admonition.sidebar.danger,div.admonition.sidebar.error{border-color:var(--pst-color-danger)}.admonition.sidebar.hint,.admonition.sidebar.seealso,.admonition.sidebar.tip,div.admonition.sidebar.hint,div.admonition.sidebar.seealso,div.admonition.sidebar.tip{border-color:var(--pst-color-success)}.admonition.sidebar.note,.admonition.sidebar.todo,div.admonition.sidebar.note,div.admonition.sidebar.todo{border-color:var(--pst-color-info)}.admonition.sidebar p.admonition-title~*,div.admonition.sidebar p.admonition-title~*{margin-left:0;margin-right:0}aside.topic,div.topic,div.topic.contents,nav.contents{background-color:var(--pst-color-surface);border-color:var(--pst-color-border);border-radius:.25rem;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important;display:flex;flex-direction:column;padding:1rem 1.25rem}aside.topic .topic-title,div.topic .topic-title,div.topic.contents .topic-title,nav.contents .topic-title{margin:0 0 .5rem}aside.topic ul.simple,div.topic ul.simple,div.topic.contents ul.simple,nav.contents ul.simple{padding-left:1rem}aside.topic ul.simple ul,div.topic ul.simple ul,div.topic.contents ul.simple ul,nav.contents ul.simple ul{padding-left:2em}aside.sidebar{background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);border-radius:.25rem;margin-left:.5rem;padding:0}aside.sidebar>:last-child{padding-bottom:1rem}aside.sidebar p.sidebar-title{border-bottom:1px solid var(--pst-color-border);font-family:var(--pst-font-family-heading);font-weight:var(--pst-font-weight-heading);margin-bottom:0;padding-bottom:.5rem;padding-top:.5rem;position:relative}aside.sidebar>:not(.sidebar-title):first-child,aside.sidebar>p.sidebar-title+*{margin-top:1rem}aside.sidebar>*{padding-left:1rem;padding-right:1rem}p.rubric{display:flex;flex-direction:column}.seealso dd{margin-bottom:0;margin-top:0}table.field-list{border-collapse:separate;border-spacing:10px;margin-left:1px}table.field-list th.field-name{background-color:var(--pst-color-surface);padding:1px 8px 1px 5px;white-space:nowrap}table.field-list td.field-body p{font-style:italic}table.field-list td.field-body p>strong{font-style:normal}table.field-list td.field-body blockquote{border-left:none;margin:0 0 .3em;padding-left:30px}.table.autosummary td:first-child{white-space:nowrap}.sig{font-family:var(--pst-font-family-monospace)}.sig-inline.c-texpr,.sig-inline.cpp-texpr{font-family:unset}.sig.c .k,.sig.c .kt,.sig.c .m,.sig.c .s,.sig.c .sc,.sig.cpp .k,.sig.cpp .kt,.sig.cpp .m,.sig.cpp .s,.sig.cpp .sc{color:var(--pst-color-text-base)}.sig-name{color:var(--pst-color-inline-code)}dt:target,span.highlighted{background-color:var(--pst-color-target)}.viewcode-back{font-family:var(--pst-font-family-base)}.viewcode-block:target{background-color:var(--pst-color-target);border-bottom:1px solid var(--pst-color-border);border-top:1px solid var(--pst-color-border);position:relative}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dd{margin-left:2rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dd>dl.simple>dt{display:flex}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dl.field-list{display:grid;grid-template-columns:unset}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dt.field-even,dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dt.field-odd{background-color:var(--pst-color-surface);margin-bottom:.1rem;margin-top:.2rem}div.highlight,div.literal-block-wrapper,div[class*=highlight-]{border-radius:.25rem;display:flex;flex-direction:column;width:unset}div.literal-block-wrapper{border:1px solid var(--pst-color-border);border-radius:.25rem}div.literal-block-wrapper div.code-block-caption{border-bottom:1px solid var(--pst-color-border);font-size:1rem;font-weight:var(--pst-font-weight-caption);margin:0;padding:.5rem}div.literal-block-wrapper div.code-block-caption a.headerlink{font-size:inherit}div.literal-block-wrapper div[class*=highlight-]{border-radius:0;margin:0}div.literal-block-wrapper div[class*=highlight-] pre{border:none;box-shadow:none}code.literal{background-color:var(--pst-color-surface);border:1px solid var(--pst-color-on-surface);border-radius:.25rem;padding:.1rem .25rem}figure a.headerlink{font-size:inherit;position:absolute}figure:hover a.headerlink{visibility:visible}figure figcaption{color:var(--pst-color-text-muted);font-family:var(--pst-font-family-heading);font-weight:var(--pst-font-weight-caption);margin-left:auto;margin-right:auto}figure figcaption table.table{margin-left:auto;margin-right:auto;width:fit-content}dt.label>span.brackets:not(:only-child):before{content:"["}dt.label>span.brackets:not(:only-child):after{content:"]"}a.footnote-reference{font-size:small;vertical-align:super}aside.footnote{margin-bottom:.5rem}aside.footnote:last-child{margin-bottom:1rem}aside.footnote span.backrefs,aside.footnote span.label{font-weight:700}aside.footnote:target{background-color:var(--pst-color-target)}div.doctest>div.highlight span.gp,span.linenos,table.highlighttable td.linenos{user-select:none;-webkit-user-select:text;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}dd{margin-bottom:10px;margin-left:30px;margin-top:3px}ol li>p:first-child,ul li>p:first-child{margin-bottom:.25rem;margin-top:.25rem}blockquote{border-left:.25em solid var(--pst-color-border);border-radius:.25rem;padding:1em;position:relative}blockquote,blockquote p{color:var(--pst-color-text-muted)}blockquote .line-block{margin:0}blockquote p:last-child{margin-bottom:0}blockquote:before{background-color:var(--pst-color-border);content:"";height:100%;left:0;opacity:.1;pointer-events:none;position:absolute;top:0;width:100%;z-index:-1}span.guilabel{border:1px solid var(--pst-color-info);border-radius:4px;color:var(--pst-color-info);font-size:80%;font-weight:700;margin:auto 2px;padding:2.4px 6px;position:relative}span.guilabel:before{background-color:var(--pst-color-info);content:"";height:100%;left:0;opacity:.1;pointer-events:none;position:absolute;top:0;width:100%}a.reference.download:before{color:var(--pst-color-text-muted);content:var(--pst-icon-download);font-family:Font Awesome\ 6 Free;font-size:.8em;font-weight:600;padding:0 .25em}table{display:table;margin-left:auto;margin-right:auto;max-width:100%;overflow:auto;width:fit-content}table::-webkit-scrollbar{height:.5rem;width:.5rem}table::-webkit-scrollbar-thumb{background:var(--pst-color-text-muted);border-radius:.25rem}table::-webkit-scrollbar-track{background:transparent}table::-webkit-scrollbar-thumb{background:var(--pst-color-on-surface)}table::-webkit-scrollbar-thumb:hover,table:hover::-webkit-scrollbar-thumb{background:var(--pst-color-text-muted)}table.table-right{margin-right:0}table.table-left{margin-left:0}table caption{caption-side:top;color:var(--pst-color-text-muted);text-align:center}td.text-align\:left,th.text-align\:left{text-align:left}td.text-align\:right,th.text-align\:right{text-align:right}td.text-align\:center,th.text-align\:center{text-align:center}.toctree-wrapper p.caption{font-size:1.5em;margin-bottom:0}.toctree-wrapper>ul{padding-left:0}.toctree-wrapper li[class^=toctree-l]{list-style:none;margin-bottom:.2em}.toctree-wrapper li[class^=toctree-l]>a{font-size:1.1em;list-style:none}.toctree-wrapper li[class^=toctree-l]>ul{list-style:none;padding-inline-start:1.5em}.toctree-wrapper .toctree-l1>a{font-size:1.3em}div.topic.contents ul.simple,nav.contents ul.simple{list-style:none;padding-left:0}div.math,span.math{align-items:center;display:flex;max-width:100%;overflow:hidden}span.math{display:inline-flex}div.math{flex-direction:row-reverse;gap:.5em}div.math span.eqno a.headerlink{font-size:1em;position:relative}div.math mjx-container{flex-grow:1;overflow-x:auto;padding-bottom:.2rem}div.math mjx-container::-webkit-scrollbar{height:.5rem;width:.5rem}div.math mjx-container::-webkit-scrollbar-thumb{background:var(--pst-color-text-muted);border-radius:.25rem}div.math mjx-container::-webkit-scrollbar-track{background:transparent}div.math mjx-container::-webkit-scrollbar-thumb{background:var(--pst-color-on-surface)}div.math mjx-container::-webkit-scrollbar-thumb:hover,div.math mjx-container:hover::-webkit-scrollbar-thumb{background:var(--pst-color-text-muted)}.bd-sidebar-primary .sidebar-start-items>h2,.bd-sidebar-primary .sidebar-start-items>h3{margin-top:1rem}.bd-sidebar-primary .sidebar-start-items>ul{list-style:none;padding-left:0}article.bd-article>section+div.section{font-size:1.2em}article.bd-article>section+div.section span:first-child:before{content:var(--pst-icon-angle-left);font-family:Font Awesome\ 6 Free;font-weight:800}article.bd-article>section+div.section span:last-child:after{content:var(--pst-icon-angle-right);font-family:Font Awesome\ 6 Free;font-weight:800}.ablog-post ul.ablog-archive{padding-left:0}.docutils.container{margin-left:unset;margin-right:unset;max-width:unset;padding-left:unset;padding-right:unset;width:unset}div.highlight button.copybtn{align-items:center;background-color:unset;background-color:var(--pst-color-surface);border:none;display:flex;justify-content:center}div.highlight button.copybtn:not(.success){color:var(--pst-color-muted)}div.highlight button.copybtn:hover:not(.success){color:var(--pst-color-text)}div.highlight button.copybtn.o-tooltip--left:after{background-color:var(--pst-color-surface);color:var(--pst-color-text)}#ethical-ad-placement .ethical-footer a,#ethical-ad-placement .ethical-footer a:active,#ethical-ad-placement .ethical-footer a:hover,#ethical-ad-placement .ethical-footer a:visited,#ethical-ad-placement .ethical-sidebar a,#ethical-ad-placement .ethical-sidebar a:active,#ethical-ad-placement .ethical-sidebar a:hover,#ethical-ad-placement .ethical-sidebar a:visited{color:var(--pst-color-text-base)}#ethical-ad-placement .ethical-footer,#ethical-ad-placement .ethical-sidebar{background-color:var(--pst-color-background);border:1px solid var(--pst-color-border);border-radius:5px;color:var(--pst-color-text-base);font-size:14px;line-height:20px}html[data-theme=dark] .bd-content div.jupyter_container{background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);border-radius:.25rem}html[data-theme=dark] .bd-content div.jupyter_container div.highlight,html[data-theme=dark] .bd-content div.jupyter_container div.output{border-radius:.25rem}html[data-theme=dark] .bd-content div.jupyter_container div.highlight{background-color:var(--pst-color-surface)}.xr-wrap[hidden]{display:block!important}html[data-theme=light]{--pst-color-primary:#459db9;--pst-color-primary-text:#fff;--pst-color-primary-highlight:#306e81;--sd-color-primary:var(--pst-color-primary);--sd-color-primary-text:var(--pst-color-primary-text);--sd-color-primary-highlight:var(--pst-color-primary-highlight);--pst-color-secondary:#ee9040;--pst-color-secondary-text:#fff;--pst-color-secondary-highlight:#cf6912;--sd-color-secondary:var(--pst-color-secondary);--sd-color-secondary-text:var(--pst-color-secondary-text);--sd-color-secondary-highlight:var(--pst-color-secondary-highlight);--pst-color-success:#28a745;--pst-color-success-text:#fff;--pst-color-success-highlight:#19692c;--sd-color-success:var(--pst-color-success);--sd-color-success-text:var(--pst-color-success-text);--sd-color-success-highlight:var(--pst-color-success-highlight);--pst-color-info:#459db9;--pst-color-info-text:#fff;--pst-color-info-highlight:#306e81;--sd-color-info:var(--pst-color-info);--sd-color-info-text:var(--pst-color-info-text);--sd-color-info-highlight:var(--pst-color-info-highlight);--pst-color-warning:#ee9040;--pst-color-warning-text:#fff;--pst-color-warning-highlight:#cf6912;--sd-color-warning:var(--pst-color-warning);--sd-color-warning-text:var(--pst-color-warning-text);--sd-color-warning-highlight:var(--pst-color-warning-highlight);--pst-color-danger:#dc3545;--pst-color-danger-text:#fff;--pst-color-danger-highlight:#a71d2a;--sd-color-danger:var(--pst-color-danger);--sd-color-danger-text:var(--pst-color-danger-text);--sd-color-danger-highlight:var(--pst-color-danger-highlight);--pst-color-light:#c9c9c9;--pst-color-light-text:#000;--pst-color-light-highlight:#a3a3a3;--sd-color-light:var(--pst-color-light);--sd-color-light-text:var(--pst-color-light-text);--sd-color-light-highlight:var(--pst-color-light-highlight);--pst-color-muted:#646464;--pst-color-muted-text:#fff;--pst-color-muted-highlight:#3e3e3e;--sd-color-muted:var(--pst-color-muted);--sd-color-muted-text:var(--pst-color-muted-text);--sd-color-muted-highlight:var(--pst-color-muted-highlight);--pst-color-dark:#323232;--pst-color-dark-text:#fff;--pst-color-dark-highlight:#0c0c0c;--sd-color-dark:var(--pst-color-dark);--sd-color-dark-text:var(--pst-color-dark-text);--sd-color-dark-highlight:var(--pst-color-dark-highlight);--pst-color-black:#000;--pst-color-black-text:#fff;--pst-color-black-highlight:#000;--sd-color-black:var(--pst-color-black);--sd-color-black-text:var(--pst-color-black-text);--sd-color-black-highlight:var(--pst-color-black-highlight);--pst-color-white:#fff;--pst-color-white-text:#000;--pst-color-white-highlight:#d9d9d9;--sd-color-white:var(--pst-color-white);--sd-color-white-text:var(--pst-color-white-text);--sd-color-white-highlight:var(--pst-color-white-highlight)}html[data-theme=dark]{--pst-color-primary:#459db9;--pst-color-primary-text:#fff;--pst-color-primary-highlight:#306e81;--sd-color-primary:var(--pst-color-primary);--sd-color-primary-text:var(--pst-color-primary-text);--sd-color-primary-highlight:var(--pst-color-primary-highlight);--pst-color-secondary:#ee9040;--pst-color-secondary-text:#fff;--pst-color-secondary-highlight:#cf6912;--sd-color-secondary:var(--pst-color-secondary);--sd-color-secondary-text:var(--pst-color-secondary-text);--sd-color-secondary-highlight:var(--pst-color-secondary-highlight);--pst-color-success:#488757;--pst-color-success-text:#fff;--pst-color-success-highlight:#2d5537;--sd-color-success:var(--pst-color-success);--sd-color-success-text:var(--pst-color-success-text);--sd-color-success-highlight:var(--pst-color-success-highlight);--pst-color-info:#459db9;--pst-color-info-text:#fff;--pst-color-info-highlight:#306e81;--sd-color-info:var(--pst-color-info);--sd-color-info-text:var(--pst-color-info-text);--sd-color-info-highlight:var(--pst-color-info-highlight);--pst-color-warning:#ee9040;--pst-color-warning-text:#fff;--pst-color-warning-highlight:#cf6912;--sd-color-warning:var(--pst-color-warning);--sd-color-warning-text:var(--pst-color-warning-text);--sd-color-warning-highlight:var(--pst-color-warning-highlight);--pst-color-danger:#cb4653;--pst-color-danger-text:#fff;--pst-color-danger-highlight:#992b36;--sd-color-danger:var(--pst-color-danger);--sd-color-danger-text:var(--pst-color-danger-text);--sd-color-danger-highlight:var(--pst-color-danger-highlight);--pst-color-light:#c9c9c9;--pst-color-light-text:#000;--pst-color-light-highlight:#a3a3a3;--sd-color-light:var(--pst-color-light);--sd-color-light-text:var(--pst-color-light-text);--sd-color-light-highlight:var(--pst-color-light-highlight);--pst-color-muted:#a6a6a6;--pst-color-muted-text:#fff;--pst-color-muted-highlight:gray;--sd-color-muted:var(--pst-color-muted);--sd-color-muted-text:var(--pst-color-muted-text);--sd-color-muted-highlight:var(--pst-color-muted-highlight);--pst-color-dark:#cecece;--pst-color-dark-text:#000;--pst-color-dark-highlight:#a8a8a8;--sd-color-dark:var(--pst-color-dark);--sd-color-dark-text:var(--pst-color-dark-text);--sd-color-dark-highlight:var(--pst-color-dark-highlight);--pst-color-black:#000;--pst-color-black-text:#fff;--pst-color-black-highlight:#000;--sd-color-black:var(--pst-color-black);--sd-color-black-text:var(--pst-color-black-text);--sd-color-black-highlight:var(--pst-color-black-highlight);--pst-color-white:#fff;--pst-color-white-text:#000;--pst-color-white-highlight:#d9d9d9;--sd-color-white:var(--pst-color-white);--sd-color-white-text:var(--pst-color-white-text);--sd-color-white-highlight:var(--pst-color-white-highlight)}html[data-theme=dark],html[data-theme=light]{--sd-color-card-border:var(--pst-color-border)}html[data-theme=light] .sd-shadow-lg,html[data-theme=light] .sd-shadow-md,html[data-theme=light] .sd-shadow-sm,html[data-theme=light] .sd-shadow-xs{box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important}.bd-content .sd-card{border:1px solid var(--pst-color-border)}.bd-content .sd-card .sd-card-header{background-color:var(--pst-color-panel-background);border-bottom:1px solid var(--pst-color-border)}.bd-content .sd-card .sd-card-footer{border-top:1px solid var(--pst-color-border)}.bd-content .sd-card .sd-card-body,.bd-content .sd-card .sd-card-footer{background-color:var(--pst-color-panel-background)}.bd-content .sd-tab-set>input:checked+label,.bd-content .sd-tab-set>input:not(:checked)+label:hover{border-color:var(--pst-color-primary);color:var(--pst-color-primary)}.bd-content .sd-tab-set>input:not(:checked)+label:hover{opacity:.5}.bd-content .sd-tab-set>label{color:var(--pst-color-text-muted)}html .bd-content .sd-tab-set>label:hover{border-color:var(--pst-color-primary);color:var(--pst-color-primary);opacity:.5}details.sd-dropdown{border:0!important;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important}details.sd-dropdown summary.sd-card-header{border:0!important}details.sd-dropdown summary.sd-card-header+div.sd-summary-content{border:0}details.sd-dropdown summary.sd-card-header{align-items:center;background-color:unset!important;border-left:.2rem solid var(--pst-sd-dropdown-color)!important;color:var(--pst-color-text)!important;display:flex;font-weight:600;padding-bottom:.5rem;padding-top:.5rem;position:relative}details.sd-dropdown summary.sd-card-header,details.sd-dropdown summary.sd-card-header+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-card-border)}details.sd-dropdown summary.sd-card-header.sd-bg-primary,details.sd-dropdown summary.sd-card-header.sd-bg-primary+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-primary)}details.sd-dropdown summary.sd-card-header.sd-bg-secondary,details.sd-dropdown summary.sd-card-header.sd-bg-secondary+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-secondary)}details.sd-dropdown summary.sd-card-header.sd-bg-success,details.sd-dropdown summary.sd-card-header.sd-bg-success+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-success)}details.sd-dropdown summary.sd-card-header.sd-bg-info,details.sd-dropdown summary.sd-card-header.sd-bg-info+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-info)}details.sd-dropdown summary.sd-card-header.sd-bg-warning,details.sd-dropdown summary.sd-card-header.sd-bg-warning+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-warning)}details.sd-dropdown summary.sd-card-header.sd-bg-danger,details.sd-dropdown summary.sd-card-header.sd-bg-danger+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-danger)}details.sd-dropdown summary.sd-card-header.sd-bg-light,details.sd-dropdown summary.sd-card-header.sd-bg-light+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-light)}details.sd-dropdown summary.sd-card-header.sd-bg-muted,details.sd-dropdown summary.sd-card-header.sd-bg-muted+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-muted)}details.sd-dropdown summary.sd-card-header.sd-bg-dark,details.sd-dropdown summary.sd-card-header.sd-bg-dark+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-dark)}details.sd-dropdown summary.sd-card-header.sd-bg-black,details.sd-dropdown summary.sd-card-header.sd-bg-black+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-black)}details.sd-dropdown summary.sd-card-header.sd-bg-white,details.sd-dropdown summary.sd-card-header.sd-bg-white+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-white)}details.sd-dropdown summary.sd-card-header:before{background-color:var(--pst-sd-dropdown-color);content:"";height:100%;left:0;opacity:.1;pointer-events:none;position:absolute;top:0;width:100%}details.sd-dropdown summary.sd-card-header+div.sd-summary-content{border-bottom-left-radius:calc(.25rem - 1px);border-left:.2rem solid var(--pst-sd-dropdown-color)!important}details.sd-dropdown summary.sd-card-header span.sd-summary-icon{align-items:center;color:var(--pst-sd-dropdown-color)!important;display:inline-flex}details.sd-dropdown summary.sd-card-header .sd-summary-down,details.sd-dropdown summary.sd-card-header .sd-summary-up{top:.7rem}@use "../variables/color" as *;html[data-theme=dark],html[data-theme=light]{--pst-color-panel-background:$value}.container[role=main]{max-width:none;padding-left:0;padding-right:0}.sphinx-bs .card{background-color:var(--pst-color-panel-background);border:1px solid var(--pst-color-border)}.sphinx-bs .card .card-header{border-bottom:1px solid var(--pst-color-border)}.sphinx-bs .card .card-footer{border-top:1px solid var(--pst-color-border)}.bd-content .tabbed-set>input:checked+label,.bd-content .tabbed-set>input:not(:checked)+label:hover{border-color:var(--pst-color-primary);color:var(--pst-color-primary)}.bd-content .tabbed-set>input:not(:checked)+label:hover{opacity:.5}.bd-content .tabbed-set>label{color:var(--pst-color-text-muted)}html .bd-content .tabbed-set>label:hover{border-color:var(--pst-color-primary);color:var(--pst-color-primary);opacity:.5}.bd-content .tabbed-set>.tabbed-content{border-color:var(--pst-color-border)}.bd-content .admonition button.toggle-button{color:inherit}.bd-content details.toggle-details summary{border-left:3px solid var(--pst-color-primary)}html div.rendered_html table{table-layout:auto}html[data-theme=dark] .bd-content .nboutput .output_area.rendered_html{background-color:var(--pst-color-text-base);border-radius:.25rem;color:var(--pst-color-on-background);padding:.5rem}html[data-theme=dark] .bd-content .nboutput .output_area.stderr{background:var(--pst-color-danger)}div.nblast.container{margin-bottom:1rem}div.cell_output .output{max-width:100%;overflow-x:auto}div.cell_output .output::-webkit-scrollbar{height:.5rem;width:.5rem}div.cell_output .output::-webkit-scrollbar-thumb{background:var(--pst-color-text-muted);border-radius:.25rem}div.cell_output .output::-webkit-scrollbar-track{background:transparent}div.cell_output .output::-webkit-scrollbar-thumb{background:var(--pst-color-on-surface)}div.cell_output .output::-webkit-scrollbar-thumb:hover,div.cell_output .output:hover::-webkit-scrollbar-thumb{background:var(--pst-color-text-muted)}html[data-theme=dark] .bd-content div.cell_output .text_html,html[data-theme=dark] .bd-content div.cell_output img{background-color:var(--pst-color-text-base);border-radius:.25rem;color:var(--pst-color-on-background);padding:.5rem}.bd-content div.cell_input{display:flex;flex-direction:column;justify-content:stretch}.bd-content div.cell_input,.bd-content div.output{border-radius:.25rem}.bd-content div.output table{table-layout:auto}.bd-search-container div#search-results>h2{font-size:var(--pst-font-size-icon);margin-top:0}.bd-search-container div#search-results p.search-summary{color:var(--pst-color-text-muted)}.bd-search-container ul.search{list-style:none;margin:0}.bd-search-container ul.search li{background-image:none;border-top:1px solid var(--pst-color-text-muted);margin:1rem 0;padding:1rem 0}.bd-search-container ul.search li>a{font-size:1.2em}.bd-search-container ul.search li div.context,.bd-search-container ul.search li p.context{color:var(--pst-color-text-base);margin:.5em 0 0}.bd-search-container ul.search li div.context a:before,.bd-search-container ul.search li p.context a:before{color:var(--pst-color-text-muted);content:"#";padding-right:.2em} \ No newline at end of file diff --git a/_static/styles/sphinx-book-theme.css b/_static/styles/sphinx-book-theme.css new file mode 100644 index 00000000..9fc514ed --- /dev/null +++ b/_static/styles/sphinx-book-theme.css @@ -0,0 +1,8 @@ +/*! sphinx-book-theme CSS + * BSD 3-Clause License + * Copyright (c) 2020, EBP + * All rights reserved. + * + * This follows the 7-1 pattern described here: + * https://sass-guidelin.es/#architecture + */html{--pst-font-size-base:none;--pst-header-height:0px}html[data-theme=light]{--sbt-color-announcement:#616161}html[data-theme=dark],html[data-theme=light]{--pst-color-primary:#579aca}.sbt-scroll-pixel-helper{position:absolute;width:0;height:0;top:0;left:0}.d-n,.onlyprint{display:none}@media print{.onlyprint{display:block!important}}@media print{.noprint{display:none!important}}.bd-article-container h1,.bd-article-container h2,.bd-article-container h3,.bd-article-container h4,.bd-article-container h5{color:var(--pst-color-text-muted)}a.brackets:before{color:inherit;font-family:inherit;margin-right:0}table{position:relative}@media print{.bd-main .bd-content{margin-left:3rem;height:auto}.bd-main .bd-content #jb-print-docs-body{margin-left:0}.bd-main .bd-content #jb-print-docs-body h1{font-size:3em;text-align:center;margin-bottom:0}.bd-main .bd-content .bd-article{padding-top:0}.bd-main .bd-content .bd-article h1:first-of-type{display:none}.bd-main .bd-content .container{min-width:0!important}.bd-main .bd-content h1{margin-top:1em;margin-bottom:1em}.bd-main .bd-content h1,.bd-main .bd-content h2,.bd-main .bd-content h3,.bd-main .bd-content h4{break-after:avoid;color:#000}.bd-main .bd-content table{break-inside:avoid}.bd-main .bd-content pre{word-wrap:break-word}.bd-main .bd-content a.headerlink{display:none}.bd-main .bd-content blockquote.epigraph{border:none}.bd-main .bd-content .footer{margin-top:1em}.bd-main .bd-content #jb-print-toc{margin-bottom:1.5rem;margin-left:0}.bd-main .bd-content #jb-print-toc .section-nav{border-left:0!important;list-style-type:disc!important;margin-left:3em!important}.bd-main .bd-content #jb-print-toc .section-nav a{text-decoration:none!important}.bd-main .bd-content #jb-print-toc .section-nav li{display:list-item!important}.bd-main .bd-content #jb-print-toc .section-nav .nav{display:none}}.bd-header-announcement{background-color:var(--sbt-color-announcement);color:#fff}.bd-main{flex-grow:0}.bd-main .bd-content .bd-article-container{padding:0;overflow-x:unset;min-width:0}.bd-main .bd-content .bd-article-container .bd-article{padding-right:2rem;padding-left:2rem}@media (min-width:768px){label.sidebar-toggle.primary-toggle{display:inline-block}}@media (max-width:768px){label.sidebar-toggle.primary-toggle{margin-bottom:0}}@media (min-width:992px){label.sidebar-toggle.secondary-toggle{display:none}}@media (max-width:768px){label.sidebar-toggle.secondary-toggle{margin-bottom:0}}.bd-header-article{height:3rem;background-color:var(--pst-color-background);transition:left .2s;font-size:.9em;position:sticky;top:0;padding:0 1rem;z-index:1018}@media (max-width:768px){.bd-header-article{height:3.75rem}}.scrolled .bd-header-article{box-shadow:0 6px 6px -6px var(--pst-color-shadow)}.bd-header-article .header-article-main{height:3rem;padding:0!important}@media (max-width:768px){.bd-header-article .header-article-main{height:3.75rem}}.bd-header-article .header-article-main .header-article__left,.bd-header-article .header-article-main .header-article__right{display:flex;align-items:center}.bd-header-article .header-article-main .header-article__right{margin-left:auto}div.header-article-main .btn{font-size:1.3rem;color:var(--pst-color-text-muted);border:none;padding:0 .75rem}div.header-article-main .btn.show,div.header-article-main .btn:hover{color:var(--pst-color-text-base);border:none}div.header-article-main .btn.show+.dropdown-menu,div.header-article-main .btn:hover+.dropdown-menu{display:block}div.header-article-main .btn:focus{box-shadow:none}div.header-article-main .btn.dropdown-toggle:after{display:none}div.header-article-main .dropdown-menu{margin-top:0;transform:translateX(-75%)}div.header-article-main .dropdown-menu:hover{display:block}div.header-article-main .dropdown-menu .dropdown-item{display:inline-flex;align-items:center;padding-left:.5em;font-size:1em}div.header-article-main .dropdown-menu .dropdown-item:hover{text-decoration:none;background-color:initial}div.header-article-main .dropdown-menu .dropdown-item span img{height:1em}div.header-article-main .dropdown-menu .dropdown-item span.btn__icon-container{width:1.7em;align-items:center;display:inline-flex;justify-content:center}div.tooltip{z-index:1049}.bd-header{display:none}.bd-sidebar-primary{transition:margin-left .25s ease 0s,opacity .25s ease 0s,visibility .25s ease 0s;font-size:87.5%}.bd-sidebar-primary .navbar-brand{height:unset}.bd-sidebar-primary .sidebar-header-items{display:none}.bd-sidebar-primary .sidebar-start-items{border-top:none}@media (min-width:768px){.bd-sidebar-primary{flex-basis:20%}}@media (min-width:768px){input#__primary:checked~.bd-container .bd-sidebar-primary{margin-left:-20%;visibility:hidden;opacity:0}}@media (min-width:768px){.bd-sidebar-secondary{background:var(--pst-color-background);height:fit-content;transition:max-height .4s ease;z-index:2;padding:0}.bd-sidebar-secondary .toc-item{border-left-color:var(--pst-color-surface);padding-top:0}.bd-sidebar-secondary .toc-item .onthispage{height:3rem;display:flex;align-items:center}.bd-sidebar-secondary .toc-item nav.page-toc{margin-bottom:0;transition:opacity .4s ease}.bd-sidebar-secondary.hide:not(:hover){max-height:3rem;overflow-y:hidden}.scrolled .bd-sidebar-secondary.hide:not(:hover){box-shadow:0 6px 6px -6px rgba(0,0,0,.3)}.bd-sidebar-secondary.hide:not(:hover) .onthispage:after{opacity:1;content:"\f107";font-family:Font Awesome\ 5 Free;font-weight:900;padding-left:.5em;transition:opacity .3s ease}.bd-sidebar-secondary.hide:not(:hover) nav.page-toc{opacity:0}}footer{font-size:var(--sbt-font-size-small-1)}footer.bd-footer-content{display:flex;flex-wrap:wrap;padding:15px;border-top:1px solid #ccc;font-size:87.5%}footer.bd-footer-content .bd-footer-content__inner{padding-left:0}footer.bd-footer-content .bd-footer-content__inner p{margin-bottom:0}.bd-footer-article{padding:0 1rem}.bd-search-container{margin:2em}.bd-search-container #search-results h2:first-child,.bd-search-container h1:first-child{display:none}.bd-search-container .bd-search{display:none!important}img{max-width:100%}img.align-center{margin-left:auto;margin-right:auto;display:block}img.align-left{clear:left;float:left;margin-right:1em}img.align-right{clear:right;float:right;margin-left:1em}div.figure{width:100%;margin-bottom:1em;text-align:center}div.figure.align-left{text-align:left}div.figure.align-left p.caption{margin-left:0}div.figure.align-right{text-align:right}div.figure.align-right p.caption{margin-right:0}div.figure p.caption{margin:.5em 10%}div.figure.margin-caption p.caption,div.figure.margin p.caption{margin:.5em 0}div.figure.margin-caption p.caption{text-align:left}div.figure span.caption-number{font-weight:700}div.figure span{font-size:.9rem}label.margin-toggle{margin-bottom:0}label.margin-toggle.marginnote-label{display:none}label.margin-toggle sup{user-select:none}@media (max-width:992px){label.margin-toggle{cursor:pointer;color:#0071bc}label.margin-toggle.marginnote-label{display:inline}label.margin-toggle.marginnote-label:after{content:"\2295"}}input.margin-toggle{display:none}@media (max-width:992px){input.margin-toggle:checked+.marginnote,input.margin-toggle:checked+.sidenote{display:block;float:left;left:1rem;clear:both;width:95%;margin:1rem 2.5%;position:relative}}span.marginnote,span.sidenote{z-index:2;position:relative;width:40%;float:right;background-color:unset;font-size:.9em;margin-left:.5rem;border-left:none}span.marginnote sup,span.sidenote sup{user-select:none}@media (min-width:992px){span.marginnote,span.sidenote{width:33%;margin:0 -36% 0 0;clear:right}span.marginnote p.sidebar-title,span.sidenote p.sidebar-title{margin-bottom:-1rem;border-bottom:none;padding-left:0}span.marginnote p.sidebar-title~*,span.sidenote p.sidebar-title~*{padding-left:0;padding-right:0}}@media (max-width:992px){span.marginnote,span.sidenote{display:none}}aside.sidebar .note{margin:1rem;padding:0 0 1rem}aside.sidebar .admonition-title{margin:0 -1rem 0 0}aside.sidebar.margin .sidebar-title:empty{display:none}aside.sidebar.margin .admonition{margin:.5rem;padding-left:0;padding-right:0}aside.sidebar.margin .admonition .admonition-title{margin-left:0;margin-right:0}@media (min-width:992px){aside.sidebar.margin{border:none}aside.sidebar.margin .admonition{margin:1rem 0;padding:0 0 1rem}}.cell.tag_margin,.cell.tag_popout,aside.margin,div.margin,figure.margin{z-index:2;position:relative;width:40%;float:right;background-color:unset;font-size:.9em;margin-left:.5rem}@media (min-width:992px){.cell.tag_margin,.cell.tag_popout,aside.margin,div.margin,figure.margin{width:33%;margin:0 -36% 0 0;clear:right}.cell.tag_margin p.sidebar-title,.cell.tag_popout p.sidebar-title,aside.margin p.sidebar-title,div.margin p.sidebar-title,figure.margin p.sidebar-title{margin-bottom:-1rem;border-bottom:none;padding-left:0}.cell.tag_margin p.sidebar-title~*,.cell.tag_popout p.sidebar-title~*,aside.margin p.sidebar-title~*,div.margin p.sidebar-title~*,figure.margin p.sidebar-title~*{padding-left:0;padding-right:0}}.cell.tag_margin div.cell.tag_margin .cell_output,.cell.tag_popout div.cell.tag_margin .cell_output,aside.margin div.cell.tag_margin .cell_output,div.margin div.cell.tag_margin .cell_output,figure.margin div.cell.tag_margin .cell_output{padding-left:0}div.figure.margin-caption figcaption,div.figure.margin-caption p.caption,figure.margin-caption figcaption{z-index:2;position:relative;width:40%;float:right;background-color:unset;font-size:.9em;margin-left:.5rem}@media (min-width:992px){div.figure.margin-caption figcaption,div.figure.margin-caption p.caption,figure.margin-caption figcaption{width:33%;margin:0 -36% 0 0;clear:right}div.figure.margin-caption figcaption p.sidebar-title,div.figure.margin-caption p.caption p.sidebar-title,figure.margin-caption figcaption p.sidebar-title{margin-bottom:-1rem;border-bottom:none;padding-left:0}div.figure.margin-caption figcaption p.sidebar-title~*,div.figure.margin-caption p.caption p.sidebar-title~*,figure.margin-caption figcaption p.sidebar-title~*{padding-left:0;padding-right:0}}.margin-caption figcaption{text-align:left}div.cell.tag_full-width,div.cell.tag_full_width,div.full-width,div.full_width{z-index:2;position:relative}@media (min-width:992px){div.cell.tag_full-width,div.cell.tag_full_width,div.full-width,div.full_width{max-width:136%;width:136%}}blockquote.epigraph,blockquote.highlights,blockquote.pull-quote{font-size:1.25em;border-left:none;background-color:var(--pst-color-background)}blockquote div>p+p.attribution{font-style:normal;font-size:.9em;text-align:right;color:#6c757d;padding-right:2em}div[class*=highlight-],pre{clear:none}div.cell.tag_output_scroll div.cell_output,div.cell.tag_scroll-output div.cell_output{max-height:24em;overflow-y:auto}@media only print{div.utterances,hypothesis-sidebar{display:none}}.thebelab-cell{border:none!important;margin-right:.5em!important}.thebelab-cell .thebelab-input{padding-left:10px!important}.cell.docutils.container{padding-right:0!important}button.thebe-launch-button{height:2.5em;font-size:1em} \ No newline at end of file diff --git a/_static/styles/theme.css b/_static/styles/theme.css new file mode 100644 index 00000000..4519dd91 --- /dev/null +++ b/_static/styles/theme.css @@ -0,0 +1,2 @@ +/* Provided by Sphinx's 'basic' theme, and included in the final set of assets */ +@import "../basic.css"; diff --git a/_static/togglebutton.css b/_static/togglebutton.css new file mode 100644 index 00000000..54a67879 --- /dev/null +++ b/_static/togglebutton.css @@ -0,0 +1,160 @@ +/** + * Admonition-based toggles + */ + +/* Visibility of the target */ +.admonition.toggle .admonition-title ~ * { + transition: opacity .3s, height .3s; +} + +/* Toggle buttons inside admonitions so we see the title */ +.admonition.toggle { + position: relative; +} + +/* Titles should cut off earlier to avoid overlapping w/ button */ +.admonition.toggle .admonition-title { + padding-right: 25%; + cursor: pointer; +} + +/* Hovering will cause a slight shift in color to make it feel interactive */ +.admonition.toggle .admonition-title:hover { + box-shadow: inset 0 0 0px 20px rgb(0 0 0 / 1%); +} + +/* Hovering will cause a slight shift in color to make it feel interactive */ +.admonition.toggle .admonition-title:active { + box-shadow: inset 0 0 0px 20px rgb(0 0 0 / 3%); +} + +/* Remove extra whitespace below the admonition title when hidden */ +.admonition.toggle-hidden { + padding-bottom: 0; +} + +.admonition.toggle-hidden .admonition-title { + margin-bottom: 0; +} + +/* hides all the content of a page until de-toggled */ +.admonition.toggle-hidden .admonition-title ~ * { + height: 0; + margin: 0; + opacity: 0; + visibility: hidden; +} + +/* General button style and position*/ +button.toggle-button { + /** + * Background and shape. By default there's no background + * but users can style as they wish + */ + background: none; + border: none; + outline: none; + + /* Positioning just inside the admonition title */ + position: absolute; + right: 0.5em; + padding: 0px; + border: none; + outline: none; +} + +/* Display the toggle hint on wide screens */ +@media (min-width: 768px) { + button.toggle-button.toggle-button-hidden:before { + content: attr(data-toggle-hint); /* This will be filled in by JS */ + font-size: .8em; + align-self: center; + } +} + +/* Icon behavior */ +.tb-icon { + transition: transform .2s ease-out; + height: 1.5em; + width: 1.5em; + stroke: currentColor; /* So that we inherit the color of other text */ +} + +/* The icon should point right when closed, down when open. */ +/* Open */ +.admonition.toggle button .tb-icon { + transform: rotate(90deg); +} + +/* Closed */ +.admonition.toggle button.toggle-button-hidden .tb-icon { + transform: rotate(0deg); +} + +/* With details toggles, we don't rotate the icon so it points right */ +details.toggle-details .tb-icon { + height: 1.4em; + width: 1.4em; + margin-top: 0.1em; /* To center the button vertically */ +} + + +/** + * Details-based toggles. + * In this case, we wrap elements with `.toggle` in a details block. + */ + +/* Details blocks */ +details.toggle-details { + margin: 1em 0; +} + + +details.toggle-details summary { + display: flex; + align-items: center; + cursor: pointer; + list-style: none; + border-radius: .2em; + border-left: 3px solid #1976d2; + background-color: rgb(204 204 204 / 10%); + padding: 0.2em 0.7em 0.3em 0.5em; /* Less padding on left because the SVG has left margin */ + font-size: 0.9em; +} + +details.toggle-details summary:hover { + background-color: rgb(204 204 204 / 20%); +} + +details.toggle-details summary:active { + background: rgb(204 204 204 / 28%); +} + +.toggle-details__summary-text { + margin-left: 0.2em; +} + +details.toggle-details[open] summary { + margin-bottom: .5em; +} + +details.toggle-details[open] summary .tb-icon { + transform: rotate(90deg); +} + +details.toggle-details[open] summary ~ * { + animation: toggle-fade-in .3s ease-out; +} + +@keyframes toggle-fade-in { + from {opacity: 0%;} + to {opacity: 100%;} +} + +/* Print rules - we hide all toggle button elements at print */ +@media print { + /* Always hide the summary so the button doesn't show up */ + details.toggle-details summary { + display: none; + } +} \ No newline at end of file diff --git a/_static/togglebutton.js b/_static/togglebutton.js new file mode 100644 index 00000000..215a7eef --- /dev/null +++ b/_static/togglebutton.js @@ -0,0 +1,187 @@ +/** + * Add Toggle Buttons to elements + */ + +let toggleChevron = ` + + + +`; + +var initToggleItems = () => { + var itemsToToggle = document.querySelectorAll(togglebuttonSelector); + console.log(`[togglebutton]: Adding toggle buttons to ${itemsToToggle.length} items`) + // Add the button to each admonition and hook up a callback to toggle visibility + itemsToToggle.forEach((item, index) => { + if (item.classList.contains("admonition")) { + // If it's an admonition block, then we'll add a button inside + // Generate unique IDs for this item + var toggleID = `toggle-${index}`; + var buttonID = `button-${toggleID}`; + + item.setAttribute('id', toggleID); + if (!item.classList.contains("toggle")){ + item.classList.add("toggle"); + } + // This is the button that will be added to each item to trigger the toggle + var collapseButton = ` + `; + + title = item.querySelector(".admonition-title") + title.insertAdjacentHTML("beforeend", collapseButton); + thisButton = document.getElementById(buttonID); + + // Add click handlers for the button + admonition title (if admonition) + admonitionTitle = document.querySelector(`#${toggleID} > .admonition-title`) + if (admonitionTitle) { + // If an admonition, then make the whole title block clickable + admonitionTitle.addEventListener('click', toggleClickHandler); + admonitionTitle.dataset.target = toggleID + admonitionTitle.dataset.button = buttonID + } else { + // If not an admonition then we'll listen for the button click + thisButton.addEventListener('click', toggleClickHandler); + } + + // Now hide the item for this toggle button unless explicitly noted to show + if (!item.classList.contains("toggle-shown")) { + toggleHidden(thisButton); + } + } else { + // If not an admonition, wrap the block in a
block + // Define the structure of the details block and insert it as a sibling + var detailsBlock = ` +
+ + ${toggleChevron} + ${toggleHintShow} + +
`; + item.insertAdjacentHTML("beforebegin", detailsBlock); + + // Now move the toggle-able content inside of the details block + details = item.previousElementSibling + details.appendChild(item) + item.classList.add("toggle-details__container") + + // Set up a click trigger to change the text as needed + details.addEventListener('click', (click) => { + let parent = click.target.parentElement; + if (parent.tagName.toLowerCase() == "details") { + summary = parent.querySelector("summary"); + details = parent; + } else { + summary = parent; + details = parent.parentElement; + } + // Update the inner text for the proper hint + if (details.open) { + summary.querySelector("span.toggle-details__summary-text").innerText = toggleHintShow; + } else { + summary.querySelector("span.toggle-details__summary-text").innerText = toggleHintHide; + } + + }); + + // If we have a toggle-shown class, open details block should be open + if (item.classList.contains("toggle-shown")) { + details.click(); + } + } + }) +}; + +// This should simply add / remove the collapsed class and change the button text +var toggleHidden = (button) => { + target = button.dataset['target'] + var itemToToggle = document.getElementById(target); + if (itemToToggle.classList.contains("toggle-hidden")) { + itemToToggle.classList.remove("toggle-hidden"); + button.classList.remove("toggle-button-hidden"); + } else { + itemToToggle.classList.add("toggle-hidden"); + button.classList.add("toggle-button-hidden"); + } +} + +var toggleClickHandler = (click) => { + // Be cause the admonition title is clickable and extends to the whole admonition + // We only look for a click event on this title to trigger the toggle. + + if (click.target.classList.contains("admonition-title")) { + button = click.target.querySelector(".toggle-button"); + } else if (click.target.classList.contains("tb-icon")) { + // We've clicked the icon and need to search up one parent for the button + button = click.target.parentElement; + } else if (click.target.tagName == "polyline") { + // We've clicked the SVG elements inside the button, need to up 2 layers + button = click.target.parentElement.parentElement; + } else if (click.target.classList.contains("toggle-button")) { + // We've clicked the button itself and so don't need to do anything + button = click.target; + } else { + console.log(`[togglebutton]: Couldn't find button for ${click.target}`) + } + target = document.getElementById(button.dataset['button']); + toggleHidden(target); +} + +// If we want to blanket-add toggle classes to certain cells +var addToggleToSelector = () => { + const selector = ""; + if (selector.length > 0) { + document.querySelectorAll(selector).forEach((item) => { + item.classList.add("toggle"); + }) + } +} + +// Helper function to run when the DOM is finished +const sphinxToggleRunWhenDOMLoaded = cb => { + if (document.readyState != 'loading') { + cb() + } else if (document.addEventListener) { + document.addEventListener('DOMContentLoaded', cb) + } else { + document.attachEvent('onreadystatechange', function() { + if (document.readyState == 'complete') cb() + }) + } +} +sphinxToggleRunWhenDOMLoaded(addToggleToSelector) +sphinxToggleRunWhenDOMLoaded(initToggleItems) + +/** Toggle details blocks to be open when printing */ +if (toggleOpenOnPrint == "true") { + window.addEventListener("beforeprint", () => { + // Open the details + document.querySelectorAll("details.toggle-details").forEach((el) => { + el.dataset["togglestatus"] = el.open; + el.open = true; + }); + + // Open the admonitions + document.querySelectorAll(".admonition.toggle.toggle-hidden").forEach((el) => { + console.log(el); + el.querySelector("button.toggle-button").click(); + el.dataset["toggle_after_print"] = "true"; + }); + }); + window.addEventListener("afterprint", () => { + // Re-close the details that were closed + document.querySelectorAll("details.toggle-details").forEach((el) => { + el.open = el.dataset["togglestatus"] == "true"; + delete el.dataset["togglestatus"]; + }); + + // Re-close the admonition toggle buttons + document.querySelectorAll(".admonition.toggle").forEach((el) => { + if (el.dataset["toggle_after_print"] == "true") { + el.querySelector("button.toggle-button").click(); + delete el.dataset["toggle_after_print"]; + } + }); + }); +} diff --git a/_static/underscore-1.13.1.js b/_static/underscore-1.13.1.js new file mode 100644 index 00000000..ffd77af9 --- /dev/null +++ b/_static/underscore-1.13.1.js @@ -0,0 +1,2042 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define('underscore', factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (function () { + var current = global._; + var exports = global._ = factory(); + exports.noConflict = function () { global._ = current; return exports; }; + }())); +}(this, (function () { + // Underscore.js 1.13.1 + // https://underscorejs.org + // (c) 2009-2021 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors + // Underscore may be freely distributed under the MIT license. + + // Current version. + var VERSION = '1.13.1'; + + // Establish the root object, `window` (`self`) in the browser, `global` + // on the server, or `this` in some virtual machines. We use `self` + // instead of `window` for `WebWorker` support. + var root = typeof self == 'object' && self.self === self && self || + typeof global == 'object' && global.global === global && global || + Function('return this')() || + {}; + + // Save bytes in the minified (but not gzipped) version: + var ArrayProto = Array.prototype, ObjProto = Object.prototype; + var SymbolProto = typeof Symbol !== 'undefined' ? Symbol.prototype : null; + + // Create quick reference variables for speed access to core prototypes. + var push = ArrayProto.push, + slice = ArrayProto.slice, + toString = ObjProto.toString, + hasOwnProperty = ObjProto.hasOwnProperty; + + // Modern feature detection. + var supportsArrayBuffer = typeof ArrayBuffer !== 'undefined', + supportsDataView = typeof DataView !== 'undefined'; + + // All **ECMAScript 5+** native function implementations that we hope to use + // are declared here. + var nativeIsArray = Array.isArray, + nativeKeys = Object.keys, + nativeCreate = Object.create, + nativeIsView = supportsArrayBuffer && ArrayBuffer.isView; + + // Create references to these builtin functions because we override them. + var _isNaN = isNaN, + _isFinite = isFinite; + + // Keys in IE < 9 that won't be iterated by `for key in ...` and thus missed. + var hasEnumBug = !{toString: null}.propertyIsEnumerable('toString'); + var nonEnumerableProps = ['valueOf', 'isPrototypeOf', 'toString', + 'propertyIsEnumerable', 'hasOwnProperty', 'toLocaleString']; + + // The largest integer that can be represented exactly. + var MAX_ARRAY_INDEX = Math.pow(2, 53) - 1; + + // Some functions take a variable number of arguments, or a few expected + // arguments at the beginning and then a variable number of values to operate + // on. This helper accumulates all remaining arguments past the function’s + // argument length (or an explicit `startIndex`), into an array that becomes + // the last argument. Similar to ES6’s "rest parameter". + function restArguments(func, startIndex) { + startIndex = startIndex == null ? func.length - 1 : +startIndex; + return function() { + var length = Math.max(arguments.length - startIndex, 0), + rest = Array(length), + index = 0; + for (; index < length; index++) { + rest[index] = arguments[index + startIndex]; + } + switch (startIndex) { + case 0: return func.call(this, rest); + case 1: return func.call(this, arguments[0], rest); + case 2: return func.call(this, arguments[0], arguments[1], rest); + } + var args = Array(startIndex + 1); + for (index = 0; index < startIndex; index++) { + args[index] = arguments[index]; + } + args[startIndex] = rest; + return func.apply(this, args); + }; + } + + // Is a given variable an object? + function isObject(obj) { + var type = typeof obj; + return type === 'function' || type === 'object' && !!obj; + } + + // Is a given value equal to null? + function isNull(obj) { + return obj === null; + } + + // Is a given variable undefined? + function isUndefined(obj) { + return obj === void 0; + } + + // Is a given value a boolean? + function isBoolean(obj) { + return obj === true || obj === false || toString.call(obj) === '[object Boolean]'; + } + + // Is a given value a DOM element? + function isElement(obj) { + return !!(obj && obj.nodeType === 1); + } + + // Internal function for creating a `toString`-based type tester. + function tagTester(name) { + var tag = '[object ' + name + ']'; + return function(obj) { + return toString.call(obj) === tag; + }; + } + + var isString = tagTester('String'); + + var isNumber = tagTester('Number'); + + var isDate = tagTester('Date'); + + var isRegExp = tagTester('RegExp'); + + var isError = tagTester('Error'); + + var isSymbol = tagTester('Symbol'); + + var isArrayBuffer = tagTester('ArrayBuffer'); + + var isFunction = tagTester('Function'); + + // Optimize `isFunction` if appropriate. Work around some `typeof` bugs in old + // v8, IE 11 (#1621), Safari 8 (#1929), and PhantomJS (#2236). + var nodelist = root.document && root.document.childNodes; + if (typeof /./ != 'function' && typeof Int8Array != 'object' && typeof nodelist != 'function') { + isFunction = function(obj) { + return typeof obj == 'function' || false; + }; + } + + var isFunction$1 = isFunction; + + var hasObjectTag = tagTester('Object'); + + // In IE 10 - Edge 13, `DataView` has string tag `'[object Object]'`. + // In IE 11, the most common among them, this problem also applies to + // `Map`, `WeakMap` and `Set`. + var hasStringTagBug = ( + supportsDataView && hasObjectTag(new DataView(new ArrayBuffer(8))) + ), + isIE11 = (typeof Map !== 'undefined' && hasObjectTag(new Map)); + + var isDataView = tagTester('DataView'); + + // In IE 10 - Edge 13, we need a different heuristic + // to determine whether an object is a `DataView`. + function ie10IsDataView(obj) { + return obj != null && isFunction$1(obj.getInt8) && isArrayBuffer(obj.buffer); + } + + var isDataView$1 = (hasStringTagBug ? ie10IsDataView : isDataView); + + // Is a given value an array? + // Delegates to ECMA5's native `Array.isArray`. + var isArray = nativeIsArray || tagTester('Array'); + + // Internal function to check whether `key` is an own property name of `obj`. + function has$1(obj, key) { + return obj != null && hasOwnProperty.call(obj, key); + } + + var isArguments = tagTester('Arguments'); + + // Define a fallback version of the method in browsers (ahem, IE < 9), where + // there isn't any inspectable "Arguments" type. + (function() { + if (!isArguments(arguments)) { + isArguments = function(obj) { + return has$1(obj, 'callee'); + }; + } + }()); + + var isArguments$1 = isArguments; + + // Is a given object a finite number? + function isFinite$1(obj) { + return !isSymbol(obj) && _isFinite(obj) && !isNaN(parseFloat(obj)); + } + + // Is the given value `NaN`? + function isNaN$1(obj) { + return isNumber(obj) && _isNaN(obj); + } + + // Predicate-generating function. Often useful outside of Underscore. + function constant(value) { + return function() { + return value; + }; + } + + // Common internal logic for `isArrayLike` and `isBufferLike`. + function createSizePropertyCheck(getSizeProperty) { + return function(collection) { + var sizeProperty = getSizeProperty(collection); + return typeof sizeProperty == 'number' && sizeProperty >= 0 && sizeProperty <= MAX_ARRAY_INDEX; + } + } + + // Internal helper to generate a function to obtain property `key` from `obj`. + function shallowProperty(key) { + return function(obj) { + return obj == null ? void 0 : obj[key]; + }; + } + + // Internal helper to obtain the `byteLength` property of an object. + var getByteLength = shallowProperty('byteLength'); + + // Internal helper to determine whether we should spend extensive checks against + // `ArrayBuffer` et al. + var isBufferLike = createSizePropertyCheck(getByteLength); + + // Is a given value a typed array? + var typedArrayPattern = /\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/; + function isTypedArray(obj) { + // `ArrayBuffer.isView` is the most future-proof, so use it when available. + // Otherwise, fall back on the above regular expression. + return nativeIsView ? (nativeIsView(obj) && !isDataView$1(obj)) : + isBufferLike(obj) && typedArrayPattern.test(toString.call(obj)); + } + + var isTypedArray$1 = supportsArrayBuffer ? isTypedArray : constant(false); + + // Internal helper to obtain the `length` property of an object. + var getLength = shallowProperty('length'); + + // Internal helper to create a simple lookup structure. + // `collectNonEnumProps` used to depend on `_.contains`, but this led to + // circular imports. `emulatedSet` is a one-off solution that only works for + // arrays of strings. + function emulatedSet(keys) { + var hash = {}; + for (var l = keys.length, i = 0; i < l; ++i) hash[keys[i]] = true; + return { + contains: function(key) { return hash[key]; }, + push: function(key) { + hash[key] = true; + return keys.push(key); + } + }; + } + + // Internal helper. Checks `keys` for the presence of keys in IE < 9 that won't + // be iterated by `for key in ...` and thus missed. Extends `keys` in place if + // needed. + function collectNonEnumProps(obj, keys) { + keys = emulatedSet(keys); + var nonEnumIdx = nonEnumerableProps.length; + var constructor = obj.constructor; + var proto = isFunction$1(constructor) && constructor.prototype || ObjProto; + + // Constructor is a special case. + var prop = 'constructor'; + if (has$1(obj, prop) && !keys.contains(prop)) keys.push(prop); + + while (nonEnumIdx--) { + prop = nonEnumerableProps[nonEnumIdx]; + if (prop in obj && obj[prop] !== proto[prop] && !keys.contains(prop)) { + keys.push(prop); + } + } + } + + // Retrieve the names of an object's own properties. + // Delegates to **ECMAScript 5**'s native `Object.keys`. + function keys(obj) { + if (!isObject(obj)) return []; + if (nativeKeys) return nativeKeys(obj); + var keys = []; + for (var key in obj) if (has$1(obj, key)) keys.push(key); + // Ahem, IE < 9. + if (hasEnumBug) collectNonEnumProps(obj, keys); + return keys; + } + + // Is a given array, string, or object empty? + // An "empty" object has no enumerable own-properties. + function isEmpty(obj) { + if (obj == null) return true; + // Skip the more expensive `toString`-based type checks if `obj` has no + // `.length`. + var length = getLength(obj); + if (typeof length == 'number' && ( + isArray(obj) || isString(obj) || isArguments$1(obj) + )) return length === 0; + return getLength(keys(obj)) === 0; + } + + // Returns whether an object has a given set of `key:value` pairs. + function isMatch(object, attrs) { + var _keys = keys(attrs), length = _keys.length; + if (object == null) return !length; + var obj = Object(object); + for (var i = 0; i < length; i++) { + var key = _keys[i]; + if (attrs[key] !== obj[key] || !(key in obj)) return false; + } + return true; + } + + // If Underscore is called as a function, it returns a wrapped object that can + // be used OO-style. This wrapper holds altered versions of all functions added + // through `_.mixin`. Wrapped objects may be chained. + function _$1(obj) { + if (obj instanceof _$1) return obj; + if (!(this instanceof _$1)) return new _$1(obj); + this._wrapped = obj; + } + + _$1.VERSION = VERSION; + + // Extracts the result from a wrapped and chained object. + _$1.prototype.value = function() { + return this._wrapped; + }; + + // Provide unwrapping proxies for some methods used in engine operations + // such as arithmetic and JSON stringification. + _$1.prototype.valueOf = _$1.prototype.toJSON = _$1.prototype.value; + + _$1.prototype.toString = function() { + return String(this._wrapped); + }; + + // Internal function to wrap or shallow-copy an ArrayBuffer, + // typed array or DataView to a new view, reusing the buffer. + function toBufferView(bufferSource) { + return new Uint8Array( + bufferSource.buffer || bufferSource, + bufferSource.byteOffset || 0, + getByteLength(bufferSource) + ); + } + + // We use this string twice, so give it a name for minification. + var tagDataView = '[object DataView]'; + + // Internal recursive comparison function for `_.isEqual`. + function eq(a, b, aStack, bStack) { + // Identical objects are equal. `0 === -0`, but they aren't identical. + // See the [Harmony `egal` proposal](https://wiki.ecmascript.org/doku.php?id=harmony:egal). + if (a === b) return a !== 0 || 1 / a === 1 / b; + // `null` or `undefined` only equal to itself (strict comparison). + if (a == null || b == null) return false; + // `NaN`s are equivalent, but non-reflexive. + if (a !== a) return b !== b; + // Exhaust primitive checks + var type = typeof a; + if (type !== 'function' && type !== 'object' && typeof b != 'object') return false; + return deepEq(a, b, aStack, bStack); + } + + // Internal recursive comparison function for `_.isEqual`. + function deepEq(a, b, aStack, bStack) { + // Unwrap any wrapped objects. + if (a instanceof _$1) a = a._wrapped; + if (b instanceof _$1) b = b._wrapped; + // Compare `[[Class]]` names. + var className = toString.call(a); + if (className !== toString.call(b)) return false; + // Work around a bug in IE 10 - Edge 13. + if (hasStringTagBug && className == '[object Object]' && isDataView$1(a)) { + if (!isDataView$1(b)) return false; + className = tagDataView; + } + switch (className) { + // These types are compared by value. + case '[object RegExp]': + // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i') + case '[object String]': + // Primitives and their corresponding object wrappers are equivalent; thus, `"5"` is + // equivalent to `new String("5")`. + return '' + a === '' + b; + case '[object Number]': + // `NaN`s are equivalent, but non-reflexive. + // Object(NaN) is equivalent to NaN. + if (+a !== +a) return +b !== +b; + // An `egal` comparison is performed for other numeric values. + return +a === 0 ? 1 / +a === 1 / b : +a === +b; + case '[object Date]': + case '[object Boolean]': + // Coerce dates and booleans to numeric primitive values. Dates are compared by their + // millisecond representations. Note that invalid dates with millisecond representations + // of `NaN` are not equivalent. + return +a === +b; + case '[object Symbol]': + return SymbolProto.valueOf.call(a) === SymbolProto.valueOf.call(b); + case '[object ArrayBuffer]': + case tagDataView: + // Coerce to typed array so we can fall through. + return deepEq(toBufferView(a), toBufferView(b), aStack, bStack); + } + + var areArrays = className === '[object Array]'; + if (!areArrays && isTypedArray$1(a)) { + var byteLength = getByteLength(a); + if (byteLength !== getByteLength(b)) return false; + if (a.buffer === b.buffer && a.byteOffset === b.byteOffset) return true; + areArrays = true; + } + if (!areArrays) { + if (typeof a != 'object' || typeof b != 'object') return false; + + // Objects with different constructors are not equivalent, but `Object`s or `Array`s + // from different frames are. + var aCtor = a.constructor, bCtor = b.constructor; + if (aCtor !== bCtor && !(isFunction$1(aCtor) && aCtor instanceof aCtor && + isFunction$1(bCtor) && bCtor instanceof bCtor) + && ('constructor' in a && 'constructor' in b)) { + return false; + } + } + // Assume equality for cyclic structures. The algorithm for detecting cyclic + // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`. + + // Initializing stack of traversed objects. + // It's done here since we only need them for objects and arrays comparison. + aStack = aStack || []; + bStack = bStack || []; + var length = aStack.length; + while (length--) { + // Linear search. Performance is inversely proportional to the number of + // unique nested structures. + if (aStack[length] === a) return bStack[length] === b; + } + + // Add the first object to the stack of traversed objects. + aStack.push(a); + bStack.push(b); + + // Recursively compare objects and arrays. + if (areArrays) { + // Compare array lengths to determine if a deep comparison is necessary. + length = a.length; + if (length !== b.length) return false; + // Deep compare the contents, ignoring non-numeric properties. + while (length--) { + if (!eq(a[length], b[length], aStack, bStack)) return false; + } + } else { + // Deep compare objects. + var _keys = keys(a), key; + length = _keys.length; + // Ensure that both objects contain the same number of properties before comparing deep equality. + if (keys(b).length !== length) return false; + while (length--) { + // Deep compare each member + key = _keys[length]; + if (!(has$1(b, key) && eq(a[key], b[key], aStack, bStack))) return false; + } + } + // Remove the first object from the stack of traversed objects. + aStack.pop(); + bStack.pop(); + return true; + } + + // Perform a deep comparison to check if two objects are equal. + function isEqual(a, b) { + return eq(a, b); + } + + // Retrieve all the enumerable property names of an object. + function allKeys(obj) { + if (!isObject(obj)) return []; + var keys = []; + for (var key in obj) keys.push(key); + // Ahem, IE < 9. + if (hasEnumBug) collectNonEnumProps(obj, keys); + return keys; + } + + // Since the regular `Object.prototype.toString` type tests don't work for + // some types in IE 11, we use a fingerprinting heuristic instead, based + // on the methods. It's not great, but it's the best we got. + // The fingerprint method lists are defined below. + function ie11fingerprint(methods) { + var length = getLength(methods); + return function(obj) { + if (obj == null) return false; + // `Map`, `WeakMap` and `Set` have no enumerable keys. + var keys = allKeys(obj); + if (getLength(keys)) return false; + for (var i = 0; i < length; i++) { + if (!isFunction$1(obj[methods[i]])) return false; + } + // If we are testing against `WeakMap`, we need to ensure that + // `obj` doesn't have a `forEach` method in order to distinguish + // it from a regular `Map`. + return methods !== weakMapMethods || !isFunction$1(obj[forEachName]); + }; + } + + // In the interest of compact minification, we write + // each string in the fingerprints only once. + var forEachName = 'forEach', + hasName = 'has', + commonInit = ['clear', 'delete'], + mapTail = ['get', hasName, 'set']; + + // `Map`, `WeakMap` and `Set` each have slightly different + // combinations of the above sublists. + var mapMethods = commonInit.concat(forEachName, mapTail), + weakMapMethods = commonInit.concat(mapTail), + setMethods = ['add'].concat(commonInit, forEachName, hasName); + + var isMap = isIE11 ? ie11fingerprint(mapMethods) : tagTester('Map'); + + var isWeakMap = isIE11 ? ie11fingerprint(weakMapMethods) : tagTester('WeakMap'); + + var isSet = isIE11 ? ie11fingerprint(setMethods) : tagTester('Set'); + + var isWeakSet = tagTester('WeakSet'); + + // Retrieve the values of an object's properties. + function values(obj) { + var _keys = keys(obj); + var length = _keys.length; + var values = Array(length); + for (var i = 0; i < length; i++) { + values[i] = obj[_keys[i]]; + } + return values; + } + + // Convert an object into a list of `[key, value]` pairs. + // The opposite of `_.object` with one argument. + function pairs(obj) { + var _keys = keys(obj); + var length = _keys.length; + var pairs = Array(length); + for (var i = 0; i < length; i++) { + pairs[i] = [_keys[i], obj[_keys[i]]]; + } + return pairs; + } + + // Invert the keys and values of an object. The values must be serializable. + function invert(obj) { + var result = {}; + var _keys = keys(obj); + for (var i = 0, length = _keys.length; i < length; i++) { + result[obj[_keys[i]]] = _keys[i]; + } + return result; + } + + // Return a sorted list of the function names available on the object. + function functions(obj) { + var names = []; + for (var key in obj) { + if (isFunction$1(obj[key])) names.push(key); + } + return names.sort(); + } + + // An internal function for creating assigner functions. + function createAssigner(keysFunc, defaults) { + return function(obj) { + var length = arguments.length; + if (defaults) obj = Object(obj); + if (length < 2 || obj == null) return obj; + for (var index = 1; index < length; index++) { + var source = arguments[index], + keys = keysFunc(source), + l = keys.length; + for (var i = 0; i < l; i++) { + var key = keys[i]; + if (!defaults || obj[key] === void 0) obj[key] = source[key]; + } + } + return obj; + }; + } + + // Extend a given object with all the properties in passed-in object(s). + var extend = createAssigner(allKeys); + + // Assigns a given object with all the own properties in the passed-in + // object(s). + // (https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/assign) + var extendOwn = createAssigner(keys); + + // Fill in a given object with default properties. + var defaults = createAssigner(allKeys, true); + + // Create a naked function reference for surrogate-prototype-swapping. + function ctor() { + return function(){}; + } + + // An internal function for creating a new object that inherits from another. + function baseCreate(prototype) { + if (!isObject(prototype)) return {}; + if (nativeCreate) return nativeCreate(prototype); + var Ctor = ctor(); + Ctor.prototype = prototype; + var result = new Ctor; + Ctor.prototype = null; + return result; + } + + // Creates an object that inherits from the given prototype object. + // If additional properties are provided then they will be added to the + // created object. + function create(prototype, props) { + var result = baseCreate(prototype); + if (props) extendOwn(result, props); + return result; + } + + // Create a (shallow-cloned) duplicate of an object. + function clone(obj) { + if (!isObject(obj)) return obj; + return isArray(obj) ? obj.slice() : extend({}, obj); + } + + // Invokes `interceptor` with the `obj` and then returns `obj`. + // The primary purpose of this method is to "tap into" a method chain, in + // order to perform operations on intermediate results within the chain. + function tap(obj, interceptor) { + interceptor(obj); + return obj; + } + + // Normalize a (deep) property `path` to array. + // Like `_.iteratee`, this function can be customized. + function toPath$1(path) { + return isArray(path) ? path : [path]; + } + _$1.toPath = toPath$1; + + // Internal wrapper for `_.toPath` to enable minification. + // Similar to `cb` for `_.iteratee`. + function toPath(path) { + return _$1.toPath(path); + } + + // Internal function to obtain a nested property in `obj` along `path`. + function deepGet(obj, path) { + var length = path.length; + for (var i = 0; i < length; i++) { + if (obj == null) return void 0; + obj = obj[path[i]]; + } + return length ? obj : void 0; + } + + // Get the value of the (deep) property on `path` from `object`. + // If any property in `path` does not exist or if the value is + // `undefined`, return `defaultValue` instead. + // The `path` is normalized through `_.toPath`. + function get(object, path, defaultValue) { + var value = deepGet(object, toPath(path)); + return isUndefined(value) ? defaultValue : value; + } + + // Shortcut function for checking if an object has a given property directly on + // itself (in other words, not on a prototype). Unlike the internal `has` + // function, this public version can also traverse nested properties. + function has(obj, path) { + path = toPath(path); + var length = path.length; + for (var i = 0; i < length; i++) { + var key = path[i]; + if (!has$1(obj, key)) return false; + obj = obj[key]; + } + return !!length; + } + + // Keep the identity function around for default iteratees. + function identity(value) { + return value; + } + + // Returns a predicate for checking whether an object has a given set of + // `key:value` pairs. + function matcher(attrs) { + attrs = extendOwn({}, attrs); + return function(obj) { + return isMatch(obj, attrs); + }; + } + + // Creates a function that, when passed an object, will traverse that object’s + // properties down the given `path`, specified as an array of keys or indices. + function property(path) { + path = toPath(path); + return function(obj) { + return deepGet(obj, path); + }; + } + + // Internal function that returns an efficient (for current engines) version + // of the passed-in callback, to be repeatedly applied in other Underscore + // functions. + function optimizeCb(func, context, argCount) { + if (context === void 0) return func; + switch (argCount == null ? 3 : argCount) { + case 1: return function(value) { + return func.call(context, value); + }; + // The 2-argument case is omitted because we’re not using it. + case 3: return function(value, index, collection) { + return func.call(context, value, index, collection); + }; + case 4: return function(accumulator, value, index, collection) { + return func.call(context, accumulator, value, index, collection); + }; + } + return function() { + return func.apply(context, arguments); + }; + } + + // An internal function to generate callbacks that can be applied to each + // element in a collection, returning the desired result — either `_.identity`, + // an arbitrary callback, a property matcher, or a property accessor. + function baseIteratee(value, context, argCount) { + if (value == null) return identity; + if (isFunction$1(value)) return optimizeCb(value, context, argCount); + if (isObject(value) && !isArray(value)) return matcher(value); + return property(value); + } + + // External wrapper for our callback generator. Users may customize + // `_.iteratee` if they want additional predicate/iteratee shorthand styles. + // This abstraction hides the internal-only `argCount` argument. + function iteratee(value, context) { + return baseIteratee(value, context, Infinity); + } + _$1.iteratee = iteratee; + + // The function we call internally to generate a callback. It invokes + // `_.iteratee` if overridden, otherwise `baseIteratee`. + function cb(value, context, argCount) { + if (_$1.iteratee !== iteratee) return _$1.iteratee(value, context); + return baseIteratee(value, context, argCount); + } + + // Returns the results of applying the `iteratee` to each element of `obj`. + // In contrast to `_.map` it returns an object. + function mapObject(obj, iteratee, context) { + iteratee = cb(iteratee, context); + var _keys = keys(obj), + length = _keys.length, + results = {}; + for (var index = 0; index < length; index++) { + var currentKey = _keys[index]; + results[currentKey] = iteratee(obj[currentKey], currentKey, obj); + } + return results; + } + + // Predicate-generating function. Often useful outside of Underscore. + function noop(){} + + // Generates a function for a given object that returns a given property. + function propertyOf(obj) { + if (obj == null) return noop; + return function(path) { + return get(obj, path); + }; + } + + // Run a function **n** times. + function times(n, iteratee, context) { + var accum = Array(Math.max(0, n)); + iteratee = optimizeCb(iteratee, context, 1); + for (var i = 0; i < n; i++) accum[i] = iteratee(i); + return accum; + } + + // Return a random integer between `min` and `max` (inclusive). + function random(min, max) { + if (max == null) { + max = min; + min = 0; + } + return min + Math.floor(Math.random() * (max - min + 1)); + } + + // A (possibly faster) way to get the current timestamp as an integer. + var now = Date.now || function() { + return new Date().getTime(); + }; + + // Internal helper to generate functions for escaping and unescaping strings + // to/from HTML interpolation. + function createEscaper(map) { + var escaper = function(match) { + return map[match]; + }; + // Regexes for identifying a key that needs to be escaped. + var source = '(?:' + keys(map).join('|') + ')'; + var testRegexp = RegExp(source); + var replaceRegexp = RegExp(source, 'g'); + return function(string) { + string = string == null ? '' : '' + string; + return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string; + }; + } + + // Internal list of HTML entities for escaping. + var escapeMap = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''', + '`': '`' + }; + + // Function for escaping strings to HTML interpolation. + var _escape = createEscaper(escapeMap); + + // Internal list of HTML entities for unescaping. + var unescapeMap = invert(escapeMap); + + // Function for unescaping strings from HTML interpolation. + var _unescape = createEscaper(unescapeMap); + + // By default, Underscore uses ERB-style template delimiters. Change the + // following template settings to use alternative delimiters. + var templateSettings = _$1.templateSettings = { + evaluate: /<%([\s\S]+?)%>/g, + interpolate: /<%=([\s\S]+?)%>/g, + escape: /<%-([\s\S]+?)%>/g + }; + + // When customizing `_.templateSettings`, if you don't want to define an + // interpolation, evaluation or escaping regex, we need one that is + // guaranteed not to match. + var noMatch = /(.)^/; + + // Certain characters need to be escaped so that they can be put into a + // string literal. + var escapes = { + "'": "'", + '\\': '\\', + '\r': 'r', + '\n': 'n', + '\u2028': 'u2028', + '\u2029': 'u2029' + }; + + var escapeRegExp = /\\|'|\r|\n|\u2028|\u2029/g; + + function escapeChar(match) { + return '\\' + escapes[match]; + } + + // In order to prevent third-party code injection through + // `_.templateSettings.variable`, we test it against the following regular + // expression. It is intentionally a bit more liberal than just matching valid + // identifiers, but still prevents possible loopholes through defaults or + // destructuring assignment. + var bareIdentifier = /^\s*(\w|\$)+\s*$/; + + // JavaScript micro-templating, similar to John Resig's implementation. + // Underscore templating handles arbitrary delimiters, preserves whitespace, + // and correctly escapes quotes within interpolated code. + // NB: `oldSettings` only exists for backwards compatibility. + function template(text, settings, oldSettings) { + if (!settings && oldSettings) settings = oldSettings; + settings = defaults({}, settings, _$1.templateSettings); + + // Combine delimiters into one regular expression via alternation. + var matcher = RegExp([ + (settings.escape || noMatch).source, + (settings.interpolate || noMatch).source, + (settings.evaluate || noMatch).source + ].join('|') + '|$', 'g'); + + // Compile the template source, escaping string literals appropriately. + var index = 0; + var source = "__p+='"; + text.replace(matcher, function(match, escape, interpolate, evaluate, offset) { + source += text.slice(index, offset).replace(escapeRegExp, escapeChar); + index = offset + match.length; + + if (escape) { + source += "'+\n((__t=(" + escape + "))==null?'':_.escape(__t))+\n'"; + } else if (interpolate) { + source += "'+\n((__t=(" + interpolate + "))==null?'':__t)+\n'"; + } else if (evaluate) { + source += "';\n" + evaluate + "\n__p+='"; + } + + // Adobe VMs need the match returned to produce the correct offset. + return match; + }); + source += "';\n"; + + var argument = settings.variable; + if (argument) { + // Insure against third-party code injection. (CVE-2021-23358) + if (!bareIdentifier.test(argument)) throw new Error( + 'variable is not a bare identifier: ' + argument + ); + } else { + // If a variable is not specified, place data values in local scope. + source = 'with(obj||{}){\n' + source + '}\n'; + argument = 'obj'; + } + + source = "var __t,__p='',__j=Array.prototype.join," + + "print=function(){__p+=__j.call(arguments,'');};\n" + + source + 'return __p;\n'; + + var render; + try { + render = new Function(argument, '_', source); + } catch (e) { + e.source = source; + throw e; + } + + var template = function(data) { + return render.call(this, data, _$1); + }; + + // Provide the compiled source as a convenience for precompilation. + template.source = 'function(' + argument + '){\n' + source + '}'; + + return template; + } + + // Traverses the children of `obj` along `path`. If a child is a function, it + // is invoked with its parent as context. Returns the value of the final + // child, or `fallback` if any child is undefined. + function result(obj, path, fallback) { + path = toPath(path); + var length = path.length; + if (!length) { + return isFunction$1(fallback) ? fallback.call(obj) : fallback; + } + for (var i = 0; i < length; i++) { + var prop = obj == null ? void 0 : obj[path[i]]; + if (prop === void 0) { + prop = fallback; + i = length; // Ensure we don't continue iterating. + } + obj = isFunction$1(prop) ? prop.call(obj) : prop; + } + return obj; + } + + // Generate a unique integer id (unique within the entire client session). + // Useful for temporary DOM ids. + var idCounter = 0; + function uniqueId(prefix) { + var id = ++idCounter + ''; + return prefix ? prefix + id : id; + } + + // Start chaining a wrapped Underscore object. + function chain(obj) { + var instance = _$1(obj); + instance._chain = true; + return instance; + } + + // Internal function to execute `sourceFunc` bound to `context` with optional + // `args`. Determines whether to execute a function as a constructor or as a + // normal function. + function executeBound(sourceFunc, boundFunc, context, callingContext, args) { + if (!(callingContext instanceof boundFunc)) return sourceFunc.apply(context, args); + var self = baseCreate(sourceFunc.prototype); + var result = sourceFunc.apply(self, args); + if (isObject(result)) return result; + return self; + } + + // Partially apply a function by creating a version that has had some of its + // arguments pre-filled, without changing its dynamic `this` context. `_` acts + // as a placeholder by default, allowing any combination of arguments to be + // pre-filled. Set `_.partial.placeholder` for a custom placeholder argument. + var partial = restArguments(function(func, boundArgs) { + var placeholder = partial.placeholder; + var bound = function() { + var position = 0, length = boundArgs.length; + var args = Array(length); + for (var i = 0; i < length; i++) { + args[i] = boundArgs[i] === placeholder ? arguments[position++] : boundArgs[i]; + } + while (position < arguments.length) args.push(arguments[position++]); + return executeBound(func, bound, this, this, args); + }; + return bound; + }); + + partial.placeholder = _$1; + + // Create a function bound to a given object (assigning `this`, and arguments, + // optionally). + var bind = restArguments(function(func, context, args) { + if (!isFunction$1(func)) throw new TypeError('Bind must be called on a function'); + var bound = restArguments(function(callArgs) { + return executeBound(func, bound, context, this, args.concat(callArgs)); + }); + return bound; + }); + + // Internal helper for collection methods to determine whether a collection + // should be iterated as an array or as an object. + // Related: https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength + // Avoids a very nasty iOS 8 JIT bug on ARM-64. #2094 + var isArrayLike = createSizePropertyCheck(getLength); + + // Internal implementation of a recursive `flatten` function. + function flatten$1(input, depth, strict, output) { + output = output || []; + if (!depth && depth !== 0) { + depth = Infinity; + } else if (depth <= 0) { + return output.concat(input); + } + var idx = output.length; + for (var i = 0, length = getLength(input); i < length; i++) { + var value = input[i]; + if (isArrayLike(value) && (isArray(value) || isArguments$1(value))) { + // Flatten current level of array or arguments object. + if (depth > 1) { + flatten$1(value, depth - 1, strict, output); + idx = output.length; + } else { + var j = 0, len = value.length; + while (j < len) output[idx++] = value[j++]; + } + } else if (!strict) { + output[idx++] = value; + } + } + return output; + } + + // Bind a number of an object's methods to that object. Remaining arguments + // are the method names to be bound. Useful for ensuring that all callbacks + // defined on an object belong to it. + var bindAll = restArguments(function(obj, keys) { + keys = flatten$1(keys, false, false); + var index = keys.length; + if (index < 1) throw new Error('bindAll must be passed function names'); + while (index--) { + var key = keys[index]; + obj[key] = bind(obj[key], obj); + } + return obj; + }); + + // Memoize an expensive function by storing its results. + function memoize(func, hasher) { + var memoize = function(key) { + var cache = memoize.cache; + var address = '' + (hasher ? hasher.apply(this, arguments) : key); + if (!has$1(cache, address)) cache[address] = func.apply(this, arguments); + return cache[address]; + }; + memoize.cache = {}; + return memoize; + } + + // Delays a function for the given number of milliseconds, and then calls + // it with the arguments supplied. + var delay = restArguments(function(func, wait, args) { + return setTimeout(function() { + return func.apply(null, args); + }, wait); + }); + + // Defers a function, scheduling it to run after the current call stack has + // cleared. + var defer = partial(delay, _$1, 1); + + // Returns a function, that, when invoked, will only be triggered at most once + // during a given window of time. Normally, the throttled function will run + // as much as it can, without ever going more than once per `wait` duration; + // but if you'd like to disable the execution on the leading edge, pass + // `{leading: false}`. To disable execution on the trailing edge, ditto. + function throttle(func, wait, options) { + var timeout, context, args, result; + var previous = 0; + if (!options) options = {}; + + var later = function() { + previous = options.leading === false ? 0 : now(); + timeout = null; + result = func.apply(context, args); + if (!timeout) context = args = null; + }; + + var throttled = function() { + var _now = now(); + if (!previous && options.leading === false) previous = _now; + var remaining = wait - (_now - previous); + context = this; + args = arguments; + if (remaining <= 0 || remaining > wait) { + if (timeout) { + clearTimeout(timeout); + timeout = null; + } + previous = _now; + result = func.apply(context, args); + if (!timeout) context = args = null; + } else if (!timeout && options.trailing !== false) { + timeout = setTimeout(later, remaining); + } + return result; + }; + + throttled.cancel = function() { + clearTimeout(timeout); + previous = 0; + timeout = context = args = null; + }; + + return throttled; + } + + // When a sequence of calls of the returned function ends, the argument + // function is triggered. The end of a sequence is defined by the `wait` + // parameter. If `immediate` is passed, the argument function will be + // triggered at the beginning of the sequence instead of at the end. + function debounce(func, wait, immediate) { + var timeout, previous, args, result, context; + + var later = function() { + var passed = now() - previous; + if (wait > passed) { + timeout = setTimeout(later, wait - passed); + } else { + timeout = null; + if (!immediate) result = func.apply(context, args); + // This check is needed because `func` can recursively invoke `debounced`. + if (!timeout) args = context = null; + } + }; + + var debounced = restArguments(function(_args) { + context = this; + args = _args; + previous = now(); + if (!timeout) { + timeout = setTimeout(later, wait); + if (immediate) result = func.apply(context, args); + } + return result; + }); + + debounced.cancel = function() { + clearTimeout(timeout); + timeout = args = context = null; + }; + + return debounced; + } + + // Returns the first function passed as an argument to the second, + // allowing you to adjust arguments, run code before and after, and + // conditionally execute the original function. + function wrap(func, wrapper) { + return partial(wrapper, func); + } + + // Returns a negated version of the passed-in predicate. + function negate(predicate) { + return function() { + return !predicate.apply(this, arguments); + }; + } + + // Returns a function that is the composition of a list of functions, each + // consuming the return value of the function that follows. + function compose() { + var args = arguments; + var start = args.length - 1; + return function() { + var i = start; + var result = args[start].apply(this, arguments); + while (i--) result = args[i].call(this, result); + return result; + }; + } + + // Returns a function that will only be executed on and after the Nth call. + function after(times, func) { + return function() { + if (--times < 1) { + return func.apply(this, arguments); + } + }; + } + + // Returns a function that will only be executed up to (but not including) the + // Nth call. + function before(times, func) { + var memo; + return function() { + if (--times > 0) { + memo = func.apply(this, arguments); + } + if (times <= 1) func = null; + return memo; + }; + } + + // Returns a function that will be executed at most one time, no matter how + // often you call it. Useful for lazy initialization. + var once = partial(before, 2); + + // Returns the first key on an object that passes a truth test. + function findKey(obj, predicate, context) { + predicate = cb(predicate, context); + var _keys = keys(obj), key; + for (var i = 0, length = _keys.length; i < length; i++) { + key = _keys[i]; + if (predicate(obj[key], key, obj)) return key; + } + } + + // Internal function to generate `_.findIndex` and `_.findLastIndex`. + function createPredicateIndexFinder(dir) { + return function(array, predicate, context) { + predicate = cb(predicate, context); + var length = getLength(array); + var index = dir > 0 ? 0 : length - 1; + for (; index >= 0 && index < length; index += dir) { + if (predicate(array[index], index, array)) return index; + } + return -1; + }; + } + + // Returns the first index on an array-like that passes a truth test. + var findIndex = createPredicateIndexFinder(1); + + // Returns the last index on an array-like that passes a truth test. + var findLastIndex = createPredicateIndexFinder(-1); + + // Use a comparator function to figure out the smallest index at which + // an object should be inserted so as to maintain order. Uses binary search. + function sortedIndex(array, obj, iteratee, context) { + iteratee = cb(iteratee, context, 1); + var value = iteratee(obj); + var low = 0, high = getLength(array); + while (low < high) { + var mid = Math.floor((low + high) / 2); + if (iteratee(array[mid]) < value) low = mid + 1; else high = mid; + } + return low; + } + + // Internal function to generate the `_.indexOf` and `_.lastIndexOf` functions. + function createIndexFinder(dir, predicateFind, sortedIndex) { + return function(array, item, idx) { + var i = 0, length = getLength(array); + if (typeof idx == 'number') { + if (dir > 0) { + i = idx >= 0 ? idx : Math.max(idx + length, i); + } else { + length = idx >= 0 ? Math.min(idx + 1, length) : idx + length + 1; + } + } else if (sortedIndex && idx && length) { + idx = sortedIndex(array, item); + return array[idx] === item ? idx : -1; + } + if (item !== item) { + idx = predicateFind(slice.call(array, i, length), isNaN$1); + return idx >= 0 ? idx + i : -1; + } + for (idx = dir > 0 ? i : length - 1; idx >= 0 && idx < length; idx += dir) { + if (array[idx] === item) return idx; + } + return -1; + }; + } + + // Return the position of the first occurrence of an item in an array, + // or -1 if the item is not included in the array. + // If the array is large and already in sort order, pass `true` + // for **isSorted** to use binary search. + var indexOf = createIndexFinder(1, findIndex, sortedIndex); + + // Return the position of the last occurrence of an item in an array, + // or -1 if the item is not included in the array. + var lastIndexOf = createIndexFinder(-1, findLastIndex); + + // Return the first value which passes a truth test. + function find(obj, predicate, context) { + var keyFinder = isArrayLike(obj) ? findIndex : findKey; + var key = keyFinder(obj, predicate, context); + if (key !== void 0 && key !== -1) return obj[key]; + } + + // Convenience version of a common use case of `_.find`: getting the first + // object containing specific `key:value` pairs. + function findWhere(obj, attrs) { + return find(obj, matcher(attrs)); + } + + // The cornerstone for collection functions, an `each` + // implementation, aka `forEach`. + // Handles raw objects in addition to array-likes. Treats all + // sparse array-likes as if they were dense. + function each(obj, iteratee, context) { + iteratee = optimizeCb(iteratee, context); + var i, length; + if (isArrayLike(obj)) { + for (i = 0, length = obj.length; i < length; i++) { + iteratee(obj[i], i, obj); + } + } else { + var _keys = keys(obj); + for (i = 0, length = _keys.length; i < length; i++) { + iteratee(obj[_keys[i]], _keys[i], obj); + } + } + return obj; + } + + // Return the results of applying the iteratee to each element. + function map(obj, iteratee, context) { + iteratee = cb(iteratee, context); + var _keys = !isArrayLike(obj) && keys(obj), + length = (_keys || obj).length, + results = Array(length); + for (var index = 0; index < length; index++) { + var currentKey = _keys ? _keys[index] : index; + results[index] = iteratee(obj[currentKey], currentKey, obj); + } + return results; + } + + // Internal helper to create a reducing function, iterating left or right. + function createReduce(dir) { + // Wrap code that reassigns argument variables in a separate function than + // the one that accesses `arguments.length` to avoid a perf hit. (#1991) + var reducer = function(obj, iteratee, memo, initial) { + var _keys = !isArrayLike(obj) && keys(obj), + length = (_keys || obj).length, + index = dir > 0 ? 0 : length - 1; + if (!initial) { + memo = obj[_keys ? _keys[index] : index]; + index += dir; + } + for (; index >= 0 && index < length; index += dir) { + var currentKey = _keys ? _keys[index] : index; + memo = iteratee(memo, obj[currentKey], currentKey, obj); + } + return memo; + }; + + return function(obj, iteratee, memo, context) { + var initial = arguments.length >= 3; + return reducer(obj, optimizeCb(iteratee, context, 4), memo, initial); + }; + } + + // **Reduce** builds up a single result from a list of values, aka `inject`, + // or `foldl`. + var reduce = createReduce(1); + + // The right-associative version of reduce, also known as `foldr`. + var reduceRight = createReduce(-1); + + // Return all the elements that pass a truth test. + function filter(obj, predicate, context) { + var results = []; + predicate = cb(predicate, context); + each(obj, function(value, index, list) { + if (predicate(value, index, list)) results.push(value); + }); + return results; + } + + // Return all the elements for which a truth test fails. + function reject(obj, predicate, context) { + return filter(obj, negate(cb(predicate)), context); + } + + // Determine whether all of the elements pass a truth test. + function every(obj, predicate, context) { + predicate = cb(predicate, context); + var _keys = !isArrayLike(obj) && keys(obj), + length = (_keys || obj).length; + for (var index = 0; index < length; index++) { + var currentKey = _keys ? _keys[index] : index; + if (!predicate(obj[currentKey], currentKey, obj)) return false; + } + return true; + } + + // Determine if at least one element in the object passes a truth test. + function some(obj, predicate, context) { + predicate = cb(predicate, context); + var _keys = !isArrayLike(obj) && keys(obj), + length = (_keys || obj).length; + for (var index = 0; index < length; index++) { + var currentKey = _keys ? _keys[index] : index; + if (predicate(obj[currentKey], currentKey, obj)) return true; + } + return false; + } + + // Determine if the array or object contains a given item (using `===`). + function contains(obj, item, fromIndex, guard) { + if (!isArrayLike(obj)) obj = values(obj); + if (typeof fromIndex != 'number' || guard) fromIndex = 0; + return indexOf(obj, item, fromIndex) >= 0; + } + + // Invoke a method (with arguments) on every item in a collection. + var invoke = restArguments(function(obj, path, args) { + var contextPath, func; + if (isFunction$1(path)) { + func = path; + } else { + path = toPath(path); + contextPath = path.slice(0, -1); + path = path[path.length - 1]; + } + return map(obj, function(context) { + var method = func; + if (!method) { + if (contextPath && contextPath.length) { + context = deepGet(context, contextPath); + } + if (context == null) return void 0; + method = context[path]; + } + return method == null ? method : method.apply(context, args); + }); + }); + + // Convenience version of a common use case of `_.map`: fetching a property. + function pluck(obj, key) { + return map(obj, property(key)); + } + + // Convenience version of a common use case of `_.filter`: selecting only + // objects containing specific `key:value` pairs. + function where(obj, attrs) { + return filter(obj, matcher(attrs)); + } + + // Return the maximum element (or element-based computation). + function max(obj, iteratee, context) { + var result = -Infinity, lastComputed = -Infinity, + value, computed; + if (iteratee == null || typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null) { + obj = isArrayLike(obj) ? obj : values(obj); + for (var i = 0, length = obj.length; i < length; i++) { + value = obj[i]; + if (value != null && value > result) { + result = value; + } + } + } else { + iteratee = cb(iteratee, context); + each(obj, function(v, index, list) { + computed = iteratee(v, index, list); + if (computed > lastComputed || computed === -Infinity && result === -Infinity) { + result = v; + lastComputed = computed; + } + }); + } + return result; + } + + // Return the minimum element (or element-based computation). + function min(obj, iteratee, context) { + var result = Infinity, lastComputed = Infinity, + value, computed; + if (iteratee == null || typeof iteratee == 'number' && typeof obj[0] != 'object' && obj != null) { + obj = isArrayLike(obj) ? obj : values(obj); + for (var i = 0, length = obj.length; i < length; i++) { + value = obj[i]; + if (value != null && value < result) { + result = value; + } + } + } else { + iteratee = cb(iteratee, context); + each(obj, function(v, index, list) { + computed = iteratee(v, index, list); + if (computed < lastComputed || computed === Infinity && result === Infinity) { + result = v; + lastComputed = computed; + } + }); + } + return result; + } + + // Sample **n** random values from a collection using the modern version of the + // [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher–Yates_shuffle). + // If **n** is not specified, returns a single random element. + // The internal `guard` argument allows it to work with `_.map`. + function sample(obj, n, guard) { + if (n == null || guard) { + if (!isArrayLike(obj)) obj = values(obj); + return obj[random(obj.length - 1)]; + } + var sample = isArrayLike(obj) ? clone(obj) : values(obj); + var length = getLength(sample); + n = Math.max(Math.min(n, length), 0); + var last = length - 1; + for (var index = 0; index < n; index++) { + var rand = random(index, last); + var temp = sample[index]; + sample[index] = sample[rand]; + sample[rand] = temp; + } + return sample.slice(0, n); + } + + // Shuffle a collection. + function shuffle(obj) { + return sample(obj, Infinity); + } + + // Sort the object's values by a criterion produced by an iteratee. + function sortBy(obj, iteratee, context) { + var index = 0; + iteratee = cb(iteratee, context); + return pluck(map(obj, function(value, key, list) { + return { + value: value, + index: index++, + criteria: iteratee(value, key, list) + }; + }).sort(function(left, right) { + var a = left.criteria; + var b = right.criteria; + if (a !== b) { + if (a > b || a === void 0) return 1; + if (a < b || b === void 0) return -1; + } + return left.index - right.index; + }), 'value'); + } + + // An internal function used for aggregate "group by" operations. + function group(behavior, partition) { + return function(obj, iteratee, context) { + var result = partition ? [[], []] : {}; + iteratee = cb(iteratee, context); + each(obj, function(value, index) { + var key = iteratee(value, index, obj); + behavior(result, value, key); + }); + return result; + }; + } + + // Groups the object's values by a criterion. Pass either a string attribute + // to group by, or a function that returns the criterion. + var groupBy = group(function(result, value, key) { + if (has$1(result, key)) result[key].push(value); else result[key] = [value]; + }); + + // Indexes the object's values by a criterion, similar to `_.groupBy`, but for + // when you know that your index values will be unique. + var indexBy = group(function(result, value, key) { + result[key] = value; + }); + + // Counts instances of an object that group by a certain criterion. Pass + // either a string attribute to count by, or a function that returns the + // criterion. + var countBy = group(function(result, value, key) { + if (has$1(result, key)) result[key]++; else result[key] = 1; + }); + + // Split a collection into two arrays: one whose elements all pass the given + // truth test, and one whose elements all do not pass the truth test. + var partition = group(function(result, value, pass) { + result[pass ? 0 : 1].push(value); + }, true); + + // Safely create a real, live array from anything iterable. + var reStrSymbol = /[^\ud800-\udfff]|[\ud800-\udbff][\udc00-\udfff]|[\ud800-\udfff]/g; + function toArray(obj) { + if (!obj) return []; + if (isArray(obj)) return slice.call(obj); + if (isString(obj)) { + // Keep surrogate pair characters together. + return obj.match(reStrSymbol); + } + if (isArrayLike(obj)) return map(obj, identity); + return values(obj); + } + + // Return the number of elements in a collection. + function size(obj) { + if (obj == null) return 0; + return isArrayLike(obj) ? obj.length : keys(obj).length; + } + + // Internal `_.pick` helper function to determine whether `key` is an enumerable + // property name of `obj`. + function keyInObj(value, key, obj) { + return key in obj; + } + + // Return a copy of the object only containing the allowed properties. + var pick = restArguments(function(obj, keys) { + var result = {}, iteratee = keys[0]; + if (obj == null) return result; + if (isFunction$1(iteratee)) { + if (keys.length > 1) iteratee = optimizeCb(iteratee, keys[1]); + keys = allKeys(obj); + } else { + iteratee = keyInObj; + keys = flatten$1(keys, false, false); + obj = Object(obj); + } + for (var i = 0, length = keys.length; i < length; i++) { + var key = keys[i]; + var value = obj[key]; + if (iteratee(value, key, obj)) result[key] = value; + } + return result; + }); + + // Return a copy of the object without the disallowed properties. + var omit = restArguments(function(obj, keys) { + var iteratee = keys[0], context; + if (isFunction$1(iteratee)) { + iteratee = negate(iteratee); + if (keys.length > 1) context = keys[1]; + } else { + keys = map(flatten$1(keys, false, false), String); + iteratee = function(value, key) { + return !contains(keys, key); + }; + } + return pick(obj, iteratee, context); + }); + + // Returns everything but the last entry of the array. Especially useful on + // the arguments object. Passing **n** will return all the values in + // the array, excluding the last N. + function initial(array, n, guard) { + return slice.call(array, 0, Math.max(0, array.length - (n == null || guard ? 1 : n))); + } + + // Get the first element of an array. Passing **n** will return the first N + // values in the array. The **guard** check allows it to work with `_.map`. + function first(array, n, guard) { + if (array == null || array.length < 1) return n == null || guard ? void 0 : []; + if (n == null || guard) return array[0]; + return initial(array, array.length - n); + } + + // Returns everything but the first entry of the `array`. Especially useful on + // the `arguments` object. Passing an **n** will return the rest N values in the + // `array`. + function rest(array, n, guard) { + return slice.call(array, n == null || guard ? 1 : n); + } + + // Get the last element of an array. Passing **n** will return the last N + // values in the array. + function last(array, n, guard) { + if (array == null || array.length < 1) return n == null || guard ? void 0 : []; + if (n == null || guard) return array[array.length - 1]; + return rest(array, Math.max(0, array.length - n)); + } + + // Trim out all falsy values from an array. + function compact(array) { + return filter(array, Boolean); + } + + // Flatten out an array, either recursively (by default), or up to `depth`. + // Passing `true` or `false` as `depth` means `1` or `Infinity`, respectively. + function flatten(array, depth) { + return flatten$1(array, depth, false); + } + + // Take the difference between one array and a number of other arrays. + // Only the elements present in just the first array will remain. + var difference = restArguments(function(array, rest) { + rest = flatten$1(rest, true, true); + return filter(array, function(value){ + return !contains(rest, value); + }); + }); + + // Return a version of the array that does not contain the specified value(s). + var without = restArguments(function(array, otherArrays) { + return difference(array, otherArrays); + }); + + // Produce a duplicate-free version of the array. If the array has already + // been sorted, you have the option of using a faster algorithm. + // The faster algorithm will not work with an iteratee if the iteratee + // is not a one-to-one function, so providing an iteratee will disable + // the faster algorithm. + function uniq(array, isSorted, iteratee, context) { + if (!isBoolean(isSorted)) { + context = iteratee; + iteratee = isSorted; + isSorted = false; + } + if (iteratee != null) iteratee = cb(iteratee, context); + var result = []; + var seen = []; + for (var i = 0, length = getLength(array); i < length; i++) { + var value = array[i], + computed = iteratee ? iteratee(value, i, array) : value; + if (isSorted && !iteratee) { + if (!i || seen !== computed) result.push(value); + seen = computed; + } else if (iteratee) { + if (!contains(seen, computed)) { + seen.push(computed); + result.push(value); + } + } else if (!contains(result, value)) { + result.push(value); + } + } + return result; + } + + // Produce an array that contains the union: each distinct element from all of + // the passed-in arrays. + var union = restArguments(function(arrays) { + return uniq(flatten$1(arrays, true, true)); + }); + + // Produce an array that contains every item shared between all the + // passed-in arrays. + function intersection(array) { + var result = []; + var argsLength = arguments.length; + for (var i = 0, length = getLength(array); i < length; i++) { + var item = array[i]; + if (contains(result, item)) continue; + var j; + for (j = 1; j < argsLength; j++) { + if (!contains(arguments[j], item)) break; + } + if (j === argsLength) result.push(item); + } + return result; + } + + // Complement of zip. Unzip accepts an array of arrays and groups + // each array's elements on shared indices. + function unzip(array) { + var length = array && max(array, getLength).length || 0; + var result = Array(length); + + for (var index = 0; index < length; index++) { + result[index] = pluck(array, index); + } + return result; + } + + // Zip together multiple lists into a single array -- elements that share + // an index go together. + var zip = restArguments(unzip); + + // Converts lists into objects. Pass either a single array of `[key, value]` + // pairs, or two parallel arrays of the same length -- one of keys, and one of + // the corresponding values. Passing by pairs is the reverse of `_.pairs`. + function object(list, values) { + var result = {}; + for (var i = 0, length = getLength(list); i < length; i++) { + if (values) { + result[list[i]] = values[i]; + } else { + result[list[i][0]] = list[i][1]; + } + } + return result; + } + + // Generate an integer Array containing an arithmetic progression. A port of + // the native Python `range()` function. See + // [the Python documentation](https://docs.python.org/library/functions.html#range). + function range(start, stop, step) { + if (stop == null) { + stop = start || 0; + start = 0; + } + if (!step) { + step = stop < start ? -1 : 1; + } + + var length = Math.max(Math.ceil((stop - start) / step), 0); + var range = Array(length); + + for (var idx = 0; idx < length; idx++, start += step) { + range[idx] = start; + } + + return range; + } + + // Chunk a single array into multiple arrays, each containing `count` or fewer + // items. + function chunk(array, count) { + if (count == null || count < 1) return []; + var result = []; + var i = 0, length = array.length; + while (i < length) { + result.push(slice.call(array, i, i += count)); + } + return result; + } + + // Helper function to continue chaining intermediate results. + function chainResult(instance, obj) { + return instance._chain ? _$1(obj).chain() : obj; + } + + // Add your own custom functions to the Underscore object. + function mixin(obj) { + each(functions(obj), function(name) { + var func = _$1[name] = obj[name]; + _$1.prototype[name] = function() { + var args = [this._wrapped]; + push.apply(args, arguments); + return chainResult(this, func.apply(_$1, args)); + }; + }); + return _$1; + } + + // Add all mutator `Array` functions to the wrapper. + each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) { + var method = ArrayProto[name]; + _$1.prototype[name] = function() { + var obj = this._wrapped; + if (obj != null) { + method.apply(obj, arguments); + if ((name === 'shift' || name === 'splice') && obj.length === 0) { + delete obj[0]; + } + } + return chainResult(this, obj); + }; + }); + + // Add all accessor `Array` functions to the wrapper. + each(['concat', 'join', 'slice'], function(name) { + var method = ArrayProto[name]; + _$1.prototype[name] = function() { + var obj = this._wrapped; + if (obj != null) obj = method.apply(obj, arguments); + return chainResult(this, obj); + }; + }); + + // Named Exports + + var allExports = { + __proto__: null, + VERSION: VERSION, + restArguments: restArguments, + isObject: isObject, + isNull: isNull, + isUndefined: isUndefined, + isBoolean: isBoolean, + isElement: isElement, + isString: isString, + isNumber: isNumber, + isDate: isDate, + isRegExp: isRegExp, + isError: isError, + isSymbol: isSymbol, + isArrayBuffer: isArrayBuffer, + isDataView: isDataView$1, + isArray: isArray, + isFunction: isFunction$1, + isArguments: isArguments$1, + isFinite: isFinite$1, + isNaN: isNaN$1, + isTypedArray: isTypedArray$1, + isEmpty: isEmpty, + isMatch: isMatch, + isEqual: isEqual, + isMap: isMap, + isWeakMap: isWeakMap, + isSet: isSet, + isWeakSet: isWeakSet, + keys: keys, + allKeys: allKeys, + values: values, + pairs: pairs, + invert: invert, + functions: functions, + methods: functions, + extend: extend, + extendOwn: extendOwn, + assign: extendOwn, + defaults: defaults, + create: create, + clone: clone, + tap: tap, + get: get, + has: has, + mapObject: mapObject, + identity: identity, + constant: constant, + noop: noop, + toPath: toPath$1, + property: property, + propertyOf: propertyOf, + matcher: matcher, + matches: matcher, + times: times, + random: random, + now: now, + escape: _escape, + unescape: _unescape, + templateSettings: templateSettings, + template: template, + result: result, + uniqueId: uniqueId, + chain: chain, + iteratee: iteratee, + partial: partial, + bind: bind, + bindAll: bindAll, + memoize: memoize, + delay: delay, + defer: defer, + throttle: throttle, + debounce: debounce, + wrap: wrap, + negate: negate, + compose: compose, + after: after, + before: before, + once: once, + findKey: findKey, + findIndex: findIndex, + findLastIndex: findLastIndex, + sortedIndex: sortedIndex, + indexOf: indexOf, + lastIndexOf: lastIndexOf, + find: find, + detect: find, + findWhere: findWhere, + each: each, + forEach: each, + map: map, + collect: map, + reduce: reduce, + foldl: reduce, + inject: reduce, + reduceRight: reduceRight, + foldr: reduceRight, + filter: filter, + select: filter, + reject: reject, + every: every, + all: every, + some: some, + any: some, + contains: contains, + includes: contains, + include: contains, + invoke: invoke, + pluck: pluck, + where: where, + max: max, + min: min, + shuffle: shuffle, + sample: sample, + sortBy: sortBy, + groupBy: groupBy, + indexBy: indexBy, + countBy: countBy, + partition: partition, + toArray: toArray, + size: size, + pick: pick, + omit: omit, + first: first, + head: first, + take: first, + initial: initial, + last: last, + rest: rest, + tail: rest, + drop: rest, + compact: compact, + flatten: flatten, + without: without, + uniq: uniq, + unique: uniq, + union: union, + intersection: intersection, + difference: difference, + unzip: unzip, + transpose: unzip, + zip: zip, + object: object, + range: range, + chunk: chunk, + mixin: mixin, + 'default': _$1 + }; + + // Default Export + + // Add all of the Underscore functions to the wrapper object. + var _ = mixin(allExports); + // Legacy Node.js API. + _._ = _; + + return _; + +}))); +//# sourceMappingURL=underscore-umd.js.map diff --git a/_static/underscore.js b/_static/underscore.js new file mode 100644 index 00000000..cf177d42 --- /dev/null +++ b/_static/underscore.js @@ -0,0 +1,6 @@ +!function(n,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define("underscore",r):(n="undefined"!=typeof globalThis?globalThis:n||self,function(){var t=n._,e=n._=r();e.noConflict=function(){return n._=t,e}}())}(this,(function(){ +// Underscore.js 1.13.1 +// https://underscorejs.org +// (c) 2009-2021 Jeremy Ashkenas, Julian Gonggrijp, and DocumentCloud and Investigative Reporters & Editors +// Underscore may be freely distributed under the MIT license. +var n="1.13.1",r="object"==typeof self&&self.self===self&&self||"object"==typeof global&&global.global===global&&global||Function("return this")()||{},t=Array.prototype,e=Object.prototype,u="undefined"!=typeof Symbol?Symbol.prototype:null,o=t.push,i=t.slice,a=e.toString,f=e.hasOwnProperty,c="undefined"!=typeof ArrayBuffer,l="undefined"!=typeof DataView,s=Array.isArray,p=Object.keys,v=Object.create,h=c&&ArrayBuffer.isView,y=isNaN,d=isFinite,g=!{toString:null}.propertyIsEnumerable("toString"),b=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],m=Math.pow(2,53)-1;function j(n,r){return r=null==r?n.length-1:+r,function(){for(var t=Math.max(arguments.length-r,0),e=Array(t),u=0;u=0&&t<=m}}function J(n){return function(r){return null==r?void 0:r[n]}}var G=J("byteLength"),H=K(G),Q=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;var X=c?function(n){return h?h(n)&&!q(n):H(n)&&Q.test(a.call(n))}:C(!1),Y=J("length");function Z(n,r){r=function(n){for(var r={},t=n.length,e=0;e":">",'"':""","'":"'","`":"`"},Cn=Ln($n),Kn=Ln(_n($n)),Jn=tn.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g},Gn=/(.)^/,Hn={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},Qn=/\\|'|\r|\n|\u2028|\u2029/g;function Xn(n){return"\\"+Hn[n]}var Yn=/^\s*(\w|\$)+\s*$/;var Zn=0;function nr(n,r,t,e,u){if(!(e instanceof r))return n.apply(t,u);var o=Mn(n.prototype),i=n.apply(o,u);return _(i)?i:o}var rr=j((function(n,r){var t=rr.placeholder,e=function(){for(var u=0,o=r.length,i=Array(o),a=0;a1)ur(a,r-1,t,e),u=e.length;else for(var f=0,c=a.length;f0&&(t=r.apply(this,arguments)),n<=1&&(r=null),t}}var lr=rr(cr,2);function sr(n,r,t){r=qn(r,t);for(var e,u=nn(n),o=0,i=u.length;o0?0:u-1;o>=0&&o0?a=o>=0?o:Math.max(o+f,a):f=o>=0?Math.min(o+1,f):o+f+1;else if(t&&o&&f)return e[o=t(e,u)]===u?o:-1;if(u!=u)return(o=r(i.call(e,a,f),$))>=0?o+a:-1;for(o=n>0?a:f-1;o>=0&&o0?0:i-1;for(u||(e=r[o?o[a]:a],a+=n);a>=0&&a=3;return r(n,Fn(t,u,4),e,o)}}var Ar=wr(1),xr=wr(-1);function Sr(n,r,t){var e=[];return r=qn(r,t),jr(n,(function(n,t,u){r(n,t,u)&&e.push(n)})),e}function Or(n,r,t){r=qn(r,t);for(var e=!er(n)&&nn(n),u=(e||n).length,o=0;o=0}var Br=j((function(n,r,t){var e,u;return D(r)?u=r:(r=Nn(r),e=r.slice(0,-1),r=r[r.length-1]),_r(n,(function(n){var o=u;if(!o){if(e&&e.length&&(n=In(n,e)),null==n)return;o=n[r]}return null==o?o:o.apply(n,t)}))}));function Nr(n,r){return _r(n,Rn(r))}function Ir(n,r,t){var e,u,o=-1/0,i=-1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=er(n)?n:jn(n)).length;ao&&(o=e);else r=qn(r,t),jr(n,(function(n,t,e){((u=r(n,t,e))>i||u===-1/0&&o===-1/0)&&(o=n,i=u)}));return o}function Tr(n,r,t){if(null==r||t)return er(n)||(n=jn(n)),n[Wn(n.length-1)];var e=er(n)?En(n):jn(n),u=Y(e);r=Math.max(Math.min(r,u),0);for(var o=u-1,i=0;i1&&(e=Fn(e,r[1])),r=an(n)):(e=qr,r=ur(r,!1,!1),n=Object(n));for(var u=0,o=r.length;u1&&(t=r[1])):(r=_r(ur(r,!1,!1),String),e=function(n,t){return!Er(r,t)}),Ur(n,e,t)}));function zr(n,r,t){return i.call(n,0,Math.max(0,n.length-(null==r||t?1:r)))}function Lr(n,r,t){return null==n||n.length<1?null==r||t?void 0:[]:null==r||t?n[0]:zr(n,n.length-r)}function $r(n,r,t){return i.call(n,null==r||t?1:r)}var Cr=j((function(n,r){return r=ur(r,!0,!0),Sr(n,(function(n){return!Er(r,n)}))})),Kr=j((function(n,r){return Cr(n,r)}));function Jr(n,r,t,e){A(r)||(e=t,t=r,r=!1),null!=t&&(t=qn(t,e));for(var u=[],o=[],i=0,a=Y(n);ir?(e&&(clearTimeout(e),e=null),a=c,i=n.apply(u,o),e||(u=o=null)):e||!1===t.trailing||(e=setTimeout(f,l)),i};return c.cancel=function(){clearTimeout(e),a=0,e=u=o=null},c},debounce:function(n,r,t){var e,u,o,i,a,f=function(){var c=zn()-u;r>c?e=setTimeout(f,r-c):(e=null,t||(i=n.apply(a,o)),e||(o=a=null))},c=j((function(c){return a=this,o=c,u=zn(),e||(e=setTimeout(f,r),t&&(i=n.apply(a,o))),i}));return c.cancel=function(){clearTimeout(e),e=o=a=null},c},wrap:function(n,r){return rr(r,n)},negate:fr,compose:function(){var n=arguments,r=n.length-1;return function(){for(var t=r,e=n[r].apply(this,arguments);t--;)e=n[t].call(this,e);return e}},after:function(n,r){return function(){if(--n<1)return r.apply(this,arguments)}},before:cr,once:lr,findKey:sr,findIndex:vr,findLastIndex:hr,sortedIndex:yr,indexOf:gr,lastIndexOf:br,find:mr,detect:mr,findWhere:function(n,r){return mr(n,Dn(r))},each:jr,forEach:jr,map:_r,collect:_r,reduce:Ar,foldl:Ar,inject:Ar,reduceRight:xr,foldr:xr,filter:Sr,select:Sr,reject:function(n,r,t){return Sr(n,fr(qn(r)),t)},every:Or,all:Or,some:Mr,any:Mr,contains:Er,includes:Er,include:Er,invoke:Br,pluck:Nr,where:function(n,r){return Sr(n,Dn(r))},max:Ir,min:function(n,r,t){var e,u,o=1/0,i=1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=er(n)?n:jn(n)).length;ae||void 0===t)return 1;if(tli{position:relative}.fa-li{left:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{-webkit-animation-name:fa-beat;animation-name:fa-beat;-webkit-animation-delay:var(--fa-animation-delay,0);animation-delay:var(--fa-animation-delay,0);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{-webkit-animation-name:fa-bounce;animation-name:fa-bounce;-webkit-animation-delay:var(--fa-animation-delay,0);animation-delay:var(--fa-animation-delay,0);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{-webkit-animation-name:fa-fade;animation-name:fa-fade;-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{-webkit-animation-delay:var(--fa-animation-delay,0);animation-delay:var(--fa-animation-delay,0);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{-webkit-animation-name:fa-beat-fade;animation-name:fa-beat-fade;-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{-webkit-animation-name:fa-flip;animation-name:fa-flip;-webkit-animation-delay:var(--fa-animation-delay,0);animation-delay:var(--fa-animation-delay,0);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{-webkit-animation-name:fa-shake;animation-name:fa-shake;-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{-webkit-animation-delay:var(--fa-animation-delay,0);animation-delay:var(--fa-animation-delay,0);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-duration:var(--fa-animation-duration,2s);animation-duration:var(--fa-animation-duration,2s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,steps(8));animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{-webkit-animation-delay:-1ms;animation-delay:-1ms;-webkit-animation-duration:1ms;animation-duration:1ms;-webkit-animation-iteration-count:1;animation-iteration-count:1;transition-delay:0s;transition-duration:0s}}@-webkit-keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@-webkit-keyframes fa-bounce{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@keyframes fa-bounce{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@-webkit-keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@-webkit-keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@-webkit-keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@-webkit-keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}.fa-rotate-by{-webkit-transform:rotate(var(--fa-rotate-angle,none));transform:rotate(var(--fa-rotate-angle,none))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%;z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)}.fa-0:before{content:"\30"}.fa-1:before{content:"\31"}.fa-2:before{content:"\32"}.fa-3:before{content:"\33"}.fa-4:before{content:"\34"}.fa-5:before{content:"\35"}.fa-6:before{content:"\36"}.fa-7:before{content:"\37"}.fa-8:before{content:"\38"}.fa-9:before{content:"\39"}.fa-a:before{content:"\41"}.fa-address-book:before,.fa-contact-book:before{content:"\f2b9"}.fa-address-card:before,.fa-contact-card:before,.fa-vcard:before{content:"\f2bb"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-anchor:before{content:"\f13d"}.fa-anchor-circle-check:before{content:"\e4aa"}.fa-anchor-circle-exclamation:before{content:"\e4ab"}.fa-anchor-circle-xmark:before{content:"\e4ac"}.fa-anchor-lock:before{content:"\e4ad"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-double-down:before,.fa-angles-down:before{content:"\f103"}.fa-angle-double-left:before,.fa-angles-left:before{content:"\f100"}.fa-angle-double-right:before,.fa-angles-right:before{content:"\f101"}.fa-angle-double-up:before,.fa-angles-up:before{content:"\f102"}.fa-ankh:before{content:"\f644"}.fa-apple-alt:before,.fa-apple-whole:before{content:"\f5d1"}.fa-archway:before{content:"\f557"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-down-1-9:before,.fa-sort-numeric-asc:before,.fa-sort-numeric-down:before{content:"\f162"}.fa-arrow-down-9-1:before,.fa-sort-numeric-desc:before,.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-arrow-down-a-z:before,.fa-sort-alpha-asc:before,.fa-sort-alpha-down:before{content:"\f15d"}.fa-arrow-down-long:before,.fa-long-arrow-down:before{content:"\f175"}.fa-arrow-down-short-wide:before,.fa-sort-amount-desc:before,.fa-sort-amount-down-alt:before{content:"\f884"}.fa-arrow-down-up-across-line:before{content:"\e4af"}.fa-arrow-down-up-lock:before{content:"\e4b0"}.fa-arrow-down-wide-short:before,.fa-sort-amount-asc:before,.fa-sort-amount-down:before{content:"\f160"}.fa-arrow-down-z-a:before,.fa-sort-alpha-desc:before,.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-left-long:before,.fa-long-arrow-left:before{content:"\f177"}.fa-arrow-pointer:before,.fa-mouse-pointer:before{content:"\f245"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-right-arrow-left:before,.fa-exchange:before{content:"\f0ec"}.fa-arrow-right-from-bracket:before,.fa-sign-out:before{content:"\f08b"}.fa-arrow-right-long:before,.fa-long-arrow-right:before{content:"\f178"}.fa-arrow-right-to-bracket:before,.fa-sign-in:before{content:"\f090"}.fa-arrow-right-to-city:before{content:"\e4b3"}.fa-arrow-left-rotate:before,.fa-arrow-rotate-back:before,.fa-arrow-rotate-backward:before,.fa-arrow-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-arrow-right-rotate:before,.fa-arrow-rotate-forward:before,.fa-arrow-rotate-right:before,.fa-redo:before{content:"\f01e"}.fa-arrow-trend-down:before{content:"\e097"}.fa-arrow-trend-up:before{content:"\e098"}.fa-arrow-turn-down:before,.fa-level-down:before{content:"\f149"}.fa-arrow-turn-up:before,.fa-level-up:before{content:"\f148"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-up-1-9:before,.fa-sort-numeric-up:before{content:"\f163"}.fa-arrow-up-9-1:before,.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-arrow-up-a-z:before,.fa-sort-alpha-up:before{content:"\f15e"}.fa-arrow-up-from-bracket:before{content:"\e09a"}.fa-arrow-up-from-ground-water:before{content:"\e4b5"}.fa-arrow-up-from-water-pump:before{content:"\e4b6"}.fa-arrow-up-long:before,.fa-long-arrow-up:before{content:"\f176"}.fa-arrow-up-right-dots:before{content:"\e4b7"}.fa-arrow-up-right-from-square:before,.fa-external-link:before{content:"\f08e"}.fa-arrow-up-short-wide:before,.fa-sort-amount-up-alt:before{content:"\f885"}.fa-arrow-up-wide-short:before,.fa-sort-amount-up:before{content:"\f161"}.fa-arrow-up-z-a:before,.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-arrows-down-to-line:before{content:"\e4b8"}.fa-arrows-down-to-people:before{content:"\e4b9"}.fa-arrows-h:before,.fa-arrows-left-right:before{content:"\f07e"}.fa-arrows-left-right-to-line:before{content:"\e4ba"}.fa-arrows-rotate:before,.fa-refresh:before,.fa-sync:before{content:"\f021"}.fa-arrows-spin:before{content:"\e4bb"}.fa-arrows-split-up-and-left:before{content:"\e4bc"}.fa-arrows-to-circle:before{content:"\e4bd"}.fa-arrows-to-dot:before{content:"\e4be"}.fa-arrows-to-eye:before{content:"\e4bf"}.fa-arrows-turn-right:before{content:"\e4c0"}.fa-arrows-turn-to-dots:before{content:"\e4c1"}.fa-arrows-up-down:before,.fa-arrows-v:before{content:"\f07d"}.fa-arrows-up-down-left-right:before,.fa-arrows:before{content:"\f047"}.fa-arrows-up-to-line:before{content:"\e4c2"}.fa-asterisk:before{content:"\2a"}.fa-at:before{content:"\40"}.fa-atom:before{content:"\f5d2"}.fa-audio-description:before{content:"\f29e"}.fa-austral-sign:before{content:"\e0a9"}.fa-award:before{content:"\f559"}.fa-b:before{content:"\42"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before,.fa-carriage-baby:before{content:"\f77d"}.fa-backward:before{content:"\f04a"}.fa-backward-fast:before,.fa-fast-backward:before{content:"\f049"}.fa-backward-step:before,.fa-step-backward:before{content:"\f048"}.fa-bacon:before{content:"\f7e5"}.fa-bacteria:before{content:"\e059"}.fa-bacterium:before{content:"\e05a"}.fa-bag-shopping:before,.fa-shopping-bag:before{content:"\f290"}.fa-bahai:before,.fa-haykal:before{content:"\f666"}.fa-baht-sign:before{content:"\e0ac"}.fa-ban:before,.fa-cancel:before{content:"\f05e"}.fa-ban-smoking:before,.fa-smoking-ban:before{content:"\f54d"}.fa-band-aid:before,.fa-bandage:before{content:"\f462"}.fa-barcode:before{content:"\f02a"}.fa-bars:before,.fa-navicon:before{content:"\f0c9"}.fa-bars-progress:before,.fa-tasks-alt:before{content:"\f828"}.fa-bars-staggered:before,.fa-reorder:before,.fa-stream:before{content:"\f550"}.fa-baseball-ball:before,.fa-baseball:before{content:"\f433"}.fa-baseball-bat-ball:before{content:"\f432"}.fa-basket-shopping:before,.fa-shopping-basket:before{content:"\f291"}.fa-basketball-ball:before,.fa-basketball:before{content:"\f434"}.fa-bath:before,.fa-bathtub:before{content:"\f2cd"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-battery-5:before,.fa-battery-full:before,.fa-battery:before{content:"\f240"}.fa-battery-3:before,.fa-battery-half:before{content:"\f242"}.fa-battery-2:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-4:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-bed:before{content:"\f236"}.fa-bed-pulse:before,.fa-procedures:before{content:"\f487"}.fa-beer-mug-empty:before,.fa-beer:before{content:"\f0fc"}.fa-bell:before{content:"\f0f3"}.fa-bell-concierge:before,.fa-concierge-bell:before{content:"\f562"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bicycle:before{content:"\f206"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-bitcoin-sign:before{content:"\e0b4"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blog:before{content:"\f781"}.fa-bold:before{content:"\f032"}.fa-bolt:before,.fa-zap:before{content:"\f0e7"}.fa-bolt-lightning:before{content:"\e0b7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-atlas:before,.fa-book-atlas:before{content:"\f558"}.fa-bible:before,.fa-book-bible:before{content:"\f647"}.fa-book-bookmark:before{content:"\e0bb"}.fa-book-journal-whills:before,.fa-journal-whills:before{content:"\f66a"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-open-reader:before,.fa-book-reader:before{content:"\f5da"}.fa-book-quran:before,.fa-quran:before{content:"\f687"}.fa-book-dead:before,.fa-book-skull:before{content:"\f6b7"}.fa-book-tanakh:before,.fa-tanakh:before{content:"\f827"}.fa-bookmark:before{content:"\f02e"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before,.fa-border-top-left:before{content:"\f853"}.fa-bore-hole:before{content:"\e4c3"}.fa-bottle-droplet:before{content:"\e4c4"}.fa-bottle-water:before{content:"\e4c5"}.fa-bowl-food:before{content:"\e4c6"}.fa-bowl-rice:before{content:"\e2eb"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-archive:before,.fa-box-archive:before{content:"\f187"}.fa-box-open:before{content:"\f49e"}.fa-box-tissue:before{content:"\e05b"}.fa-boxes-packing:before{content:"\e4c7"}.fa-boxes-alt:before,.fa-boxes-stacked:before,.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-brazilian-real-sign:before{content:"\e46c"}.fa-bread-slice:before{content:"\f7ec"}.fa-bridge:before{content:"\e4c8"}.fa-bridge-circle-check:before{content:"\e4c9"}.fa-bridge-circle-exclamation:before{content:"\e4ca"}.fa-bridge-circle-xmark:before{content:"\e4cb"}.fa-bridge-lock:before{content:"\e4cc"}.fa-bridge-water:before{content:"\e4ce"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broom:before{content:"\f51a"}.fa-broom-ball:before,.fa-quidditch-broom-ball:before,.fa-quidditch:before{content:"\f458"}.fa-brush:before{content:"\f55d"}.fa-bucket:before{content:"\e4cf"}.fa-bug:before{content:"\f188"}.fa-bug-slash:before{content:"\e490"}.fa-bugs:before{content:"\e4d0"}.fa-building:before{content:"\f1ad"}.fa-building-circle-arrow-right:before{content:"\e4d1"}.fa-building-circle-check:before{content:"\e4d2"}.fa-building-circle-exclamation:before{content:"\e4d3"}.fa-building-circle-xmark:before{content:"\e4d4"}.fa-bank:before,.fa-building-columns:before,.fa-institution:before,.fa-museum:before,.fa-university:before{content:"\f19c"}.fa-building-flag:before{content:"\e4d5"}.fa-building-lock:before{content:"\e4d6"}.fa-building-ngo:before{content:"\e4d7"}.fa-building-shield:before{content:"\e4d8"}.fa-building-un:before{content:"\e4d9"}.fa-building-user:before{content:"\e4da"}.fa-building-wheat:before{content:"\e4db"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burger:before,.fa-hamburger:before{content:"\f805"}.fa-burst:before{content:"\e4dc"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before,.fa-bus-simple:before{content:"\f55e"}.fa-briefcase-clock:before,.fa-business-time:before{content:"\f64a"}.fa-c:before{content:"\43"}.fa-cable-car:before,.fa-tram:before{content:"\f7da"}.fa-birthday-cake:before,.fa-cake-candles:before,.fa-cake:before{content:"\f1fd"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-alt:before,.fa-calendar-days:before{content:"\f073"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-week:before{content:"\f784"}.fa-calendar-times:before,.fa-calendar-xmark:before{content:"\f273"}.fa-camera-alt:before,.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-camera-rotate:before{content:"\e0d8"}.fa-campground:before{content:"\f6bb"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-battery-car:before,.fa-car-battery:before{content:"\f5df"}.fa-car-burst:before,.fa-car-crash:before{content:"\f5e1"}.fa-car-on:before{content:"\e4dd"}.fa-car-alt:before,.fa-car-rear:before{content:"\f5de"}.fa-car-side:before{content:"\f5e4"}.fa-car-tunnel:before{content:"\e4de"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-flatbed:before,.fa-dolly-flatbed:before{content:"\f474"}.fa-cart-flatbed-suitcase:before,.fa-luggage-cart:before{content:"\f59d"}.fa-cart-plus:before{content:"\f217"}.fa-cart-shopping:before,.fa-shopping-cart:before{content:"\f07a"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cedi-sign:before{content:"\e0df"}.fa-cent-sign:before{content:"\e3f5"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-blackboard:before,.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before,.fa-chalkboard-user:before{content:"\f51c"}.fa-champagne-glasses:before,.fa-glass-cheers:before{content:"\f79f"}.fa-charging-station:before{content:"\f5e7"}.fa-area-chart:before,.fa-chart-area:before{content:"\f1fe"}.fa-bar-chart:before,.fa-chart-bar:before{content:"\f080"}.fa-chart-column:before{content:"\e0e3"}.fa-chart-gantt:before{content:"\e0e4"}.fa-chart-line:before,.fa-line-chart:before{content:"\f201"}.fa-chart-pie:before,.fa-pie-chart:before{content:"\f200"}.fa-chart-simple:before{content:"\e473"}.fa-check:before{content:"\f00c"}.fa-check-double:before{content:"\f560"}.fa-check-to-slot:before,.fa-vote-yea:before{content:"\f772"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-child-dress:before{content:"\e59c"}.fa-child-reaching:before{content:"\e59d"}.fa-child-rifle:before{content:"\e4e0"}.fa-children:before{content:"\e4e1"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-arrow-circle-down:before,.fa-circle-arrow-down:before{content:"\f0ab"}.fa-arrow-circle-left:before,.fa-circle-arrow-left:before{content:"\f0a8"}.fa-arrow-circle-right:before,.fa-circle-arrow-right:before{content:"\f0a9"}.fa-arrow-circle-up:before,.fa-circle-arrow-up:before{content:"\f0aa"}.fa-check-circle:before,.fa-circle-check:before{content:"\f058"}.fa-chevron-circle-down:before,.fa-circle-chevron-down:before{content:"\f13a"}.fa-chevron-circle-left:before,.fa-circle-chevron-left:before{content:"\f137"}.fa-chevron-circle-right:before,.fa-circle-chevron-right:before{content:"\f138"}.fa-chevron-circle-up:before,.fa-circle-chevron-up:before{content:"\f139"}.fa-circle-dollar-to-slot:before,.fa-donate:before{content:"\f4b9"}.fa-circle-dot:before,.fa-dot-circle:before{content:"\f192"}.fa-arrow-alt-circle-down:before,.fa-circle-down:before{content:"\f358"}.fa-circle-exclamation:before,.fa-exclamation-circle:before{content:"\f06a"}.fa-circle-h:before,.fa-hospital-symbol:before{content:"\f47e"}.fa-adjust:before,.fa-circle-half-stroke:before{content:"\f042"}.fa-circle-info:before,.fa-info-circle:before{content:"\f05a"}.fa-arrow-alt-circle-left:before,.fa-circle-left:before{content:"\f359"}.fa-circle-minus:before,.fa-minus-circle:before{content:"\f056"}.fa-circle-nodes:before{content:"\e4e2"}.fa-circle-notch:before{content:"\f1ce"}.fa-circle-pause:before,.fa-pause-circle:before{content:"\f28b"}.fa-circle-play:before,.fa-play-circle:before{content:"\f144"}.fa-circle-plus:before,.fa-plus-circle:before{content:"\f055"}.fa-circle-question:before,.fa-question-circle:before{content:"\f059"}.fa-circle-radiation:before,.fa-radiation-alt:before{content:"\f7ba"}.fa-arrow-alt-circle-right:before,.fa-circle-right:before{content:"\f35a"}.fa-circle-stop:before,.fa-stop-circle:before{content:"\f28d"}.fa-arrow-alt-circle-up:before,.fa-circle-up:before{content:"\f35b"}.fa-circle-user:before,.fa-user-circle:before{content:"\f2bd"}.fa-circle-xmark:before,.fa-times-circle:before,.fa-xmark-circle:before{content:"\f057"}.fa-city:before{content:"\f64f"}.fa-clapperboard:before{content:"\e131"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clipboard-question:before{content:"\e4e3"}.fa-clipboard-user:before{content:"\f7f3"}.fa-clock-four:before,.fa-clock:before{content:"\f017"}.fa-clock-rotate-left:before,.fa-history:before{content:"\f1da"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-arrow-down:before,.fa-cloud-download-alt:before,.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-arrow-up:before,.fa-cloud-upload-alt:before,.fa-cloud-upload:before{content:"\f0ee"}.fa-cloud-bolt:before,.fa-thunderstorm:before{content:"\f76c"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-showers-water:before{content:"\e4e4"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-clover:before{content:"\e139"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-code-commit:before{content:"\f386"}.fa-code-compare:before{content:"\e13a"}.fa-code-fork:before{content:"\e13b"}.fa-code-merge:before{content:"\f387"}.fa-code-pull-request:before{content:"\e13c"}.fa-coins:before{content:"\f51e"}.fa-colon-sign:before{content:"\e140"}.fa-comment:before{content:"\f075"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before,.fa-commenting:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comment-sms:before,.fa-sms:before{content:"\f7cd"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compass-drafting:before,.fa-drafting-compass:before{content:"\f568"}.fa-compress:before{content:"\f066"}.fa-computer:before{content:"\e4e5"}.fa-computer-mouse:before,.fa-mouse:before{content:"\f8cc"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-couch:before{content:"\f4b8"}.fa-cow:before{content:"\f6c8"}.fa-credit-card-alt:before,.fa-credit-card:before{content:"\f09d"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before,.fa-crop-simple:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-cruzeiro-sign:before{content:"\e152"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cubes-stacked:before{content:"\e4e6"}.fa-d:before{content:"\44"}.fa-database:before{content:"\f1c0"}.fa-backspace:before,.fa-delete-left:before{content:"\f55a"}.fa-democrat:before{content:"\f747"}.fa-desktop-alt:before,.fa-desktop:before{content:"\f390"}.fa-dharmachakra:before{content:"\f655"}.fa-diagram-next:before{content:"\e476"}.fa-diagram-predecessor:before{content:"\e477"}.fa-diagram-project:before,.fa-project-diagram:before{content:"\f542"}.fa-diagram-successor:before{content:"\e47a"}.fa-diamond:before{content:"\f219"}.fa-diamond-turn-right:before,.fa-directions:before{content:"\f5eb"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-disease:before{content:"\f7fa"}.fa-display:before{content:"\e163"}.fa-divide:before{content:"\f529"}.fa-dna:before{content:"\f471"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before,.fa-dollar:before,.fa-usd:before{content:"\24"}.fa-dolly-box:before,.fa-dolly:before{content:"\f472"}.fa-dong-sign:before{content:"\e169"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dove:before{content:"\f4ba"}.fa-compress-alt:before,.fa-down-left-and-up-right-to-center:before{content:"\f422"}.fa-down-long:before,.fa-long-arrow-alt-down:before{content:"\f309"}.fa-download:before{content:"\f019"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-droplet:before,.fa-tint:before{content:"\f043"}.fa-droplet-slash:before,.fa-tint-slash:before{content:"\f5c7"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-e:before{content:"\45"}.fa-deaf:before,.fa-deafness:before,.fa-ear-deaf:before,.fa-hard-of-hearing:before{content:"\f2a4"}.fa-assistive-listening-systems:before,.fa-ear-listen:before{content:"\f2a2"}.fa-earth-africa:before,.fa-globe-africa:before{content:"\f57c"}.fa-earth-america:before,.fa-earth-americas:before,.fa-earth:before,.fa-globe-americas:before{content:"\f57d"}.fa-earth-asia:before,.fa-globe-asia:before{content:"\f57e"}.fa-earth-europe:before,.fa-globe-europe:before{content:"\f7a2"}.fa-earth-oceania:before,.fa-globe-oceania:before{content:"\e47b"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elevator:before{content:"\e16d"}.fa-ellipsis-h:before,.fa-ellipsis:before{content:"\f141"}.fa-ellipsis-v:before,.fa-ellipsis-vertical:before{content:"\f142"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-circle-check:before{content:"\e4e8"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelopes-bulk:before,.fa-mail-bulk:before{content:"\f674"}.fa-equals:before{content:"\3d"}.fa-eraser:before{content:"\f12d"}.fa-ethernet:before{content:"\f796"}.fa-eur:before,.fa-euro-sign:before,.fa-euro:before{content:"\f153"}.fa-exclamation:before{content:"\21"}.fa-expand:before{content:"\f065"}.fa-explosion:before{content:"\e4e9"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper-empty:before,.fa-eye-dropper:before,.fa-eyedropper:before{content:"\f1fb"}.fa-eye-low-vision:before,.fa-low-vision:before{content:"\f2a8"}.fa-eye-slash:before{content:"\f070"}.fa-f:before{content:"\46"}.fa-angry:before,.fa-face-angry:before{content:"\f556"}.fa-dizzy:before,.fa-face-dizzy:before{content:"\f567"}.fa-face-flushed:before,.fa-flushed:before{content:"\f579"}.fa-face-frown:before,.fa-frown:before{content:"\f119"}.fa-face-frown-open:before,.fa-frown-open:before{content:"\f57a"}.fa-face-grimace:before,.fa-grimace:before{content:"\f57f"}.fa-face-grin:before,.fa-grin:before{content:"\f580"}.fa-face-grin-beam:before,.fa-grin-beam:before{content:"\f582"}.fa-face-grin-beam-sweat:before,.fa-grin-beam-sweat:before{content:"\f583"}.fa-face-grin-hearts:before,.fa-grin-hearts:before{content:"\f584"}.fa-face-grin-squint:before,.fa-grin-squint:before{content:"\f585"}.fa-face-grin-squint-tears:before,.fa-grin-squint-tears:before{content:"\f586"}.fa-face-grin-stars:before,.fa-grin-stars:before{content:"\f587"}.fa-face-grin-tears:before,.fa-grin-tears:before{content:"\f588"}.fa-face-grin-tongue:before,.fa-grin-tongue:before{content:"\f589"}.fa-face-grin-tongue-squint:before,.fa-grin-tongue-squint:before{content:"\f58a"}.fa-face-grin-tongue-wink:before,.fa-grin-tongue-wink:before{content:"\f58b"}.fa-face-grin-wide:before,.fa-grin-alt:before{content:"\f581"}.fa-face-grin-wink:before,.fa-grin-wink:before{content:"\f58c"}.fa-face-kiss:before,.fa-kiss:before{content:"\f596"}.fa-face-kiss-beam:before,.fa-kiss-beam:before{content:"\f597"}.fa-face-kiss-wink-heart:before,.fa-kiss-wink-heart:before{content:"\f598"}.fa-face-laugh:before,.fa-laugh:before{content:"\f599"}.fa-face-laugh-beam:before,.fa-laugh-beam:before{content:"\f59a"}.fa-face-laugh-squint:before,.fa-laugh-squint:before{content:"\f59b"}.fa-face-laugh-wink:before,.fa-laugh-wink:before{content:"\f59c"}.fa-face-meh:before,.fa-meh:before{content:"\f11a"}.fa-face-meh-blank:before,.fa-meh-blank:before{content:"\f5a4"}.fa-face-rolling-eyes:before,.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-face-sad-cry:before,.fa-sad-cry:before{content:"\f5b3"}.fa-face-sad-tear:before,.fa-sad-tear:before{content:"\f5b4"}.fa-face-smile:before,.fa-smile:before{content:"\f118"}.fa-face-smile-beam:before,.fa-smile-beam:before{content:"\f5b8"}.fa-face-smile-wink:before,.fa-smile-wink:before{content:"\f4da"}.fa-face-surprise:before,.fa-surprise:before{content:"\f5c2"}.fa-face-tired:before,.fa-tired:before{content:"\f5c8"}.fa-fan:before{content:"\f863"}.fa-faucet:before{content:"\e005"}.fa-faucet-drip:before{content:"\e006"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before,.fa-feather-pointed:before{content:"\f56b"}.fa-ferry:before{content:"\e4ea"}.fa-file:before{content:"\f15b"}.fa-file-arrow-down:before,.fa-file-download:before{content:"\f56d"}.fa-file-arrow-up:before,.fa-file-upload:before{content:"\f574"}.fa-file-audio:before{content:"\f1c7"}.fa-file-circle-check:before{content:"\e5a0"}.fa-file-circle-exclamation:before{content:"\e4eb"}.fa-file-circle-minus:before{content:"\e4ed"}.fa-file-circle-plus:before{content:"\e494"}.fa-file-circle-question:before{content:"\e4ef"}.fa-file-circle-xmark:before{content:"\e5a1"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-excel:before{content:"\f1c3"}.fa-arrow-right-from-file:before,.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-arrow-right-to-file:before,.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-alt:before,.fa-file-lines:before,.fa-file-text:before{content:"\f15c"}.fa-file-medical:before{content:"\f477"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-edit:before,.fa-file-pen:before{content:"\f31c"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-shield:before{content:"\e4f0"}.fa-file-signature:before{content:"\f573"}.fa-file-video:before{content:"\f1c8"}.fa-file-medical-alt:before,.fa-file-waveform:before{content:"\f478"}.fa-file-word:before{content:"\f1c2"}.fa-file-archive:before,.fa-file-zipper:before{content:"\f1c6"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-filter-circle-dollar:before,.fa-funnel-dollar:before{content:"\f662"}.fa-filter-circle-xmark:before{content:"\e17b"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-burner:before{content:"\e4f1"}.fa-fire-extinguisher:before{content:"\f134"}.fa-fire-alt:before,.fa-fire-flame-curved:before{content:"\f7e4"}.fa-burn:before,.fa-fire-flame-simple:before{content:"\f46a"}.fa-fish:before{content:"\f578"}.fa-fish-fins:before{content:"\e4f2"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flask-vial:before{content:"\e4f3"}.fa-floppy-disk:before,.fa-save:before{content:"\f0c7"}.fa-florin-sign:before{content:"\e184"}.fa-folder-blank:before,.fa-folder:before{content:"\f07b"}.fa-folder-closed:before{content:"\e185"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-folder-tree:before{content:"\f802"}.fa-font:before{content:"\f031"}.fa-football-ball:before,.fa-football:before{content:"\f44e"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before,.fa-forward-fast:before{content:"\f050"}.fa-forward-step:before,.fa-step-forward:before{content:"\f051"}.fa-franc-sign:before{content:"\e18f"}.fa-frog:before{content:"\f52e"}.fa-futbol-ball:before,.fa-futbol:before,.fa-soccer-ball:before{content:"\f1e3"}.fa-g:before{content:"\47"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-dashboard:before,.fa-gauge-med:before,.fa-gauge:before,.fa-tachometer-alt-average:before{content:"\f624"}.fa-gauge-high:before,.fa-tachometer-alt-fast:before,.fa-tachometer-alt:before{content:"\f625"}.fa-gauge-simple-med:before,.fa-gauge-simple:before,.fa-tachometer-average:before{content:"\f629"}.fa-gauge-simple-high:before,.fa-tachometer-fast:before,.fa-tachometer:before{content:"\f62a"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-glass-water:before{content:"\e4f4"}.fa-glass-water-droplet:before{content:"\e4f5"}.fa-glasses:before{content:"\f530"}.fa-globe:before{content:"\f0ac"}.fa-golf-ball-tee:before,.fa-golf-ball:before{content:"\f450"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-greater-than:before{content:"\3e"}.fa-greater-than-equal:before{content:"\f532"}.fa-grip-horizontal:before,.fa-grip:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-group-arrows-rotate:before{content:"\e4f6"}.fa-guarani-sign:before{content:"\e19a"}.fa-guitar:before{content:"\f7a6"}.fa-gun:before{content:"\e19b"}.fa-h:before{content:"\48"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-paper:before,.fa-hand:before{content:"\f256"}.fa-hand-back-fist:before,.fa-hand-rock:before{content:"\f255"}.fa-allergies:before,.fa-hand-dots:before{content:"\f461"}.fa-fist-raised:before,.fa-hand-fist:before{content:"\f6de"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-dollar:before,.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-holding-droplet:before,.fa-hand-holding-water:before{content:"\f4c1"}.fa-hand-holding-hand:before{content:"\e4f7"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-medical:before{content:"\e05c"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-sparkles:before{content:"\e05d"}.fa-hand-spock:before{content:"\f259"}.fa-handcuffs:before{content:"\e4f8"}.fa-hands:before,.fa-sign-language:before,.fa-signing:before{content:"\f2a7"}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before,.fa-hands-american-sign-language-interpreting:before,.fa-hands-asl-interpreting:before{content:"\f2a3"}.fa-hands-bound:before{content:"\e4f9"}.fa-hands-bubbles:before,.fa-hands-wash:before{content:"\e05e"}.fa-hands-clapping:before{content:"\e1a8"}.fa-hands-holding:before{content:"\f4c2"}.fa-hands-holding-child:before{content:"\e4fa"}.fa-hands-holding-circle:before{content:"\e4fb"}.fa-hands-praying:before,.fa-praying-hands:before{content:"\f684"}.fa-handshake:before{content:"\f2b5"}.fa-hands-helping:before,.fa-handshake-angle:before{content:"\f4c4"}.fa-handshake-alt:before,.fa-handshake-simple:before{content:"\f4c6"}.fa-handshake-alt-slash:before,.fa-handshake-simple-slash:before{content:"\e05f"}.fa-handshake-slash:before{content:"\e060"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-drive:before,.fa-hdd:before{content:"\f0a0"}.fa-hashtag:before{content:"\23"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-head-side-cough:before{content:"\e061"}.fa-head-side-cough-slash:before{content:"\e062"}.fa-head-side-mask:before{content:"\e063"}.fa-head-side-virus:before{content:"\e064"}.fa-header:before,.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before,.fa-headphones-simple:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-circle-bolt:before{content:"\e4fc"}.fa-heart-circle-check:before{content:"\e4fd"}.fa-heart-circle-exclamation:before{content:"\e4fe"}.fa-heart-circle-minus:before{content:"\e4ff"}.fa-heart-circle-plus:before{content:"\e500"}.fa-heart-circle-xmark:before{content:"\e501"}.fa-heart-broken:before,.fa-heart-crack:before{content:"\f7a9"}.fa-heart-pulse:before,.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-helicopter-symbol:before{content:"\e502"}.fa-hard-hat:before,.fa-hat-hard:before,.fa-helmet-safety:before{content:"\f807"}.fa-helmet-un:before{content:"\e503"}.fa-highlighter:before{content:"\f591"}.fa-hill-avalanche:before{content:"\e507"}.fa-hill-rockslide:before{content:"\e508"}.fa-hippo:before{content:"\f6ed"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital-alt:before,.fa-hospital-wide:before,.fa-hospital:before{content:"\f0f8"}.fa-hospital-user:before{content:"\f80d"}.fa-hot-tub-person:before,.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hourglass-empty:before,.fa-hourglass:before{content:"\f254"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-home-alt:before,.fa-home-lg-alt:before,.fa-home:before,.fa-house:before{content:"\f015"}.fa-home-lg:before,.fa-house-chimney:before{content:"\e3af"}.fa-house-chimney-crack:before,.fa-house-damage:before{content:"\f6f1"}.fa-clinic-medical:before,.fa-house-chimney-medical:before{content:"\f7f2"}.fa-house-chimney-user:before{content:"\e065"}.fa-house-chimney-window:before{content:"\e00d"}.fa-house-circle-check:before{content:"\e509"}.fa-house-circle-exclamation:before{content:"\e50a"}.fa-house-circle-xmark:before{content:"\e50b"}.fa-house-crack:before{content:"\e3b1"}.fa-house-fire:before{content:"\e50c"}.fa-house-flag:before{content:"\e50d"}.fa-house-flood-water:before{content:"\e50e"}.fa-house-flood-water-circle-arrow-right:before{content:"\e50f"}.fa-house-laptop:before,.fa-laptop-house:before{content:"\e066"}.fa-house-lock:before{content:"\e510"}.fa-house-medical:before{content:"\e3b2"}.fa-house-medical-circle-check:before{content:"\e511"}.fa-house-medical-circle-exclamation:before{content:"\e512"}.fa-house-medical-circle-xmark:before{content:"\e513"}.fa-house-medical-flag:before{content:"\e514"}.fa-house-signal:before{content:"\e012"}.fa-house-tsunami:before{content:"\e515"}.fa-home-user:before,.fa-house-user:before{content:"\e1b0"}.fa-hryvnia-sign:before,.fa-hryvnia:before{content:"\f6f2"}.fa-hurricane:before{content:"\f751"}.fa-i:before{content:"\49"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-heart-music-camera-bolt:before,.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before,.fa-id-card-clip:before{content:"\f47f"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-image-portrait:before,.fa-portrait:before{content:"\f3e0"}.fa-images:before{content:"\f302"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-indian-rupee-sign:before,.fa-indian-rupee:before,.fa-inr:before{content:"\e1bc"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-italic:before{content:"\f033"}.fa-j:before{content:"\4a"}.fa-jar:before{content:"\e516"}.fa-jar-wheat:before{content:"\e517"}.fa-jedi:before{content:"\f669"}.fa-fighter-jet:before,.fa-jet-fighter:before{content:"\f0fb"}.fa-jet-fighter-up:before{content:"\e518"}.fa-joint:before{content:"\f595"}.fa-jug-detergent:before{content:"\e519"}.fa-k:before{content:"\4b"}.fa-kaaba:before{content:"\f66b"}.fa-key:before{content:"\f084"}.fa-keyboard:before{content:"\f11c"}.fa-khanda:before{content:"\f66d"}.fa-kip-sign:before{content:"\e1c4"}.fa-first-aid:before,.fa-kit-medical:before{content:"\f479"}.fa-kitchen-set:before{content:"\e51a"}.fa-kiwi-bird:before{content:"\f535"}.fa-l:before{content:"\4c"}.fa-land-mine-on:before{content:"\e51b"}.fa-landmark:before{content:"\f66f"}.fa-landmark-alt:before,.fa-landmark-dome:before{content:"\f752"}.fa-landmark-flag:before{content:"\e51c"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-file:before{content:"\e51d"}.fa-laptop-medical:before{content:"\f812"}.fa-lari-sign:before{content:"\e1c8"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-left-long:before,.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-arrows-alt-h:before,.fa-left-right:before{content:"\f337"}.fa-lemon:before{content:"\f094"}.fa-less-than:before{content:"\3c"}.fa-less-than-equal:before{content:"\f537"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-lines-leaning:before{content:"\e51e"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-chain-broken:before,.fa-chain-slash:before,.fa-link-slash:before,.fa-unlink:before{content:"\f127"}.fa-lira-sign:before{content:"\f195"}.fa-list-squares:before,.fa-list:before{content:"\f03a"}.fa-list-check:before,.fa-tasks:before{content:"\f0ae"}.fa-list-1-2:before,.fa-list-numeric:before,.fa-list-ol:before{content:"\f0cb"}.fa-list-dots:before,.fa-list-ul:before{content:"\f0ca"}.fa-litecoin-sign:before{content:"\e1d3"}.fa-location-arrow:before{content:"\f124"}.fa-location-crosshairs:before,.fa-location:before{content:"\f601"}.fa-location-dot:before,.fa-map-marker-alt:before{content:"\f3c5"}.fa-location-pin:before,.fa-map-marker:before{content:"\f041"}.fa-location-pin-lock:before{content:"\e51f"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-locust:before{content:"\e520"}.fa-lungs:before{content:"\f604"}.fa-lungs-virus:before{content:"\e067"}.fa-m:before{content:"\4d"}.fa-magnet:before{content:"\f076"}.fa-magnifying-glass:before,.fa-search:before{content:"\f002"}.fa-magnifying-glass-arrow-right:before{content:"\e521"}.fa-magnifying-glass-chart:before{content:"\e522"}.fa-magnifying-glass-dollar:before,.fa-search-dollar:before{content:"\f688"}.fa-magnifying-glass-location:before,.fa-search-location:before{content:"\f689"}.fa-magnifying-glass-minus:before,.fa-search-minus:before{content:"\f010"}.fa-magnifying-glass-plus:before,.fa-search-plus:before{content:"\f00e"}.fa-manat-sign:before{content:"\e1d5"}.fa-map:before{content:"\f279"}.fa-map-location:before,.fa-map-marked:before{content:"\f59f"}.fa-map-location-dot:before,.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-pin:before{content:"\f276"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-and-venus:before{content:"\f224"}.fa-mars-and-venus-burst:before{content:"\e523"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before,.fa-mars-stroke-right:before{content:"\f22b"}.fa-mars-stroke-up:before,.fa-mars-stroke-v:before{content:"\f22a"}.fa-glass-martini-alt:before,.fa-martini-glass:before{content:"\f57b"}.fa-cocktail:before,.fa-martini-glass-citrus:before{content:"\f561"}.fa-glass-martini:before,.fa-martini-glass-empty:before{content:"\f000"}.fa-mask:before{content:"\f6fa"}.fa-mask-face:before{content:"\e1d7"}.fa-mask-ventilator:before{content:"\e524"}.fa-masks-theater:before,.fa-theater-masks:before{content:"\f630"}.fa-mattress-pillow:before{content:"\e525"}.fa-expand-arrows-alt:before,.fa-maximize:before{content:"\f31e"}.fa-medal:before{content:"\f5a2"}.fa-memory:before{content:"\f538"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-comment-alt:before,.fa-message:before{content:"\f27a"}.fa-meteor:before{content:"\f753"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before,.fa-microphone-lines:before{content:"\f3c9"}.fa-microphone-alt-slash:before,.fa-microphone-lines-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-mill-sign:before{content:"\e1ed"}.fa-compress-arrows-alt:before,.fa-minimize:before{content:"\f78c"}.fa-minus:before,.fa-subtract:before{content:"\f068"}.fa-mitten:before{content:"\f7b5"}.fa-mobile-android:before,.fa-mobile-phone:before,.fa-mobile:before{content:"\f3ce"}.fa-mobile-button:before{content:"\f10b"}.fa-mobile-retro:before{content:"\e527"}.fa-mobile-android-alt:before,.fa-mobile-screen:before{content:"\f3cf"}.fa-mobile-alt:before,.fa-mobile-screen-button:before{content:"\f3cd"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-1:before,.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-1-wave:before,.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-bill-transfer:before{content:"\e528"}.fa-money-bill-trend-up:before{content:"\e529"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wheat:before{content:"\e52a"}.fa-money-bills:before{content:"\e1f3"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before,.fa-money-check-dollar:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-mosquito:before{content:"\e52b"}.fa-mosquito-net:before{content:"\e52c"}.fa-motorcycle:before{content:"\f21c"}.fa-mound:before{content:"\e52d"}.fa-mountain:before{content:"\f6fc"}.fa-mountain-city:before{content:"\e52e"}.fa-mountain-sun:before{content:"\e52f"}.fa-mug-hot:before{content:"\f7b6"}.fa-coffee:before,.fa-mug-saucer:before{content:"\f0f4"}.fa-music:before{content:"\f001"}.fa-n:before{content:"\4e"}.fa-naira-sign:before{content:"\e1f6"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-not-equal:before{content:"\f53e"}.fa-notdef:before{content:"\e1fe"}.fa-note-sticky:before,.fa-sticky-note:before{content:"\f249"}.fa-notes-medical:before{content:"\f481"}.fa-o:before{content:"\4f"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-oil-can:before{content:"\f613"}.fa-oil-well:before{content:"\e532"}.fa-om:before{content:"\f679"}.fa-otter:before{content:"\f700"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-p:before{content:"\50"}.fa-pager:before{content:"\f815"}.fa-paint-roller:before{content:"\f5aa"}.fa-paint-brush:before,.fa-paintbrush:before{content:"\f1fc"}.fa-palette:before{content:"\f53f"}.fa-pallet:before{content:"\f482"}.fa-panorama:before{content:"\e209"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-passport:before{content:"\f5ab"}.fa-file-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-pause:before{content:"\f04c"}.fa-paw:before{content:"\f1b0"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before,.fa-pen-clip:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-ruler:before,.fa-pencil-ruler:before{content:"\f5ae"}.fa-edit:before,.fa-pen-to-square:before{content:"\f044"}.fa-pencil-alt:before,.fa-pencil:before{content:"\f303"}.fa-people-arrows-left-right:before,.fa-people-arrows:before{content:"\e068"}.fa-people-carry-box:before,.fa-people-carry:before{content:"\f4ce"}.fa-people-group:before{content:"\e533"}.fa-people-line:before{content:"\e534"}.fa-people-pulling:before{content:"\e535"}.fa-people-robbery:before{content:"\e536"}.fa-people-roof:before{content:"\e537"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before,.fa-percentage:before{content:"\25"}.fa-male:before,.fa-person:before{content:"\f183"}.fa-person-arrow-down-to-line:before{content:"\e538"}.fa-person-arrow-up-from-line:before{content:"\e539"}.fa-biking:before,.fa-person-biking:before{content:"\f84a"}.fa-person-booth:before{content:"\f756"}.fa-person-breastfeeding:before{content:"\e53a"}.fa-person-burst:before{content:"\e53b"}.fa-person-cane:before{content:"\e53c"}.fa-person-chalkboard:before{content:"\e53d"}.fa-person-circle-check:before{content:"\e53e"}.fa-person-circle-exclamation:before{content:"\e53f"}.fa-person-circle-minus:before{content:"\e540"}.fa-person-circle-plus:before{content:"\e541"}.fa-person-circle-question:before{content:"\e542"}.fa-person-circle-xmark:before{content:"\e543"}.fa-digging:before,.fa-person-digging:before{content:"\f85e"}.fa-diagnoses:before,.fa-person-dots-from-line:before{content:"\f470"}.fa-female:before,.fa-person-dress:before{content:"\f182"}.fa-person-dress-burst:before{content:"\e544"}.fa-person-drowning:before{content:"\e545"}.fa-person-falling:before{content:"\e546"}.fa-person-falling-burst:before{content:"\e547"}.fa-person-half-dress:before{content:"\e548"}.fa-person-harassing:before{content:"\e549"}.fa-hiking:before,.fa-person-hiking:before{content:"\f6ec"}.fa-person-military-pointing:before{content:"\e54a"}.fa-person-military-rifle:before{content:"\e54b"}.fa-person-military-to-person:before{content:"\e54c"}.fa-person-praying:before,.fa-pray:before{content:"\f683"}.fa-person-pregnant:before{content:"\e31e"}.fa-person-rays:before{content:"\e54d"}.fa-person-rifle:before{content:"\e54e"}.fa-person-running:before,.fa-running:before{content:"\f70c"}.fa-person-shelter:before{content:"\e54f"}.fa-person-skating:before,.fa-skating:before{content:"\f7c5"}.fa-person-skiing:before,.fa-skiing:before{content:"\f7c9"}.fa-person-skiing-nordic:before,.fa-skiing-nordic:before{content:"\f7ca"}.fa-person-snowboarding:before,.fa-snowboarding:before{content:"\f7ce"}.fa-person-swimming:before,.fa-swimmer:before{content:"\f5c4"}.fa-person-through-window:before{content:"\e5a9"}.fa-person-walking:before,.fa-walking:before{content:"\f554"}.fa-person-walking-arrow-loop-left:before{content:"\e551"}.fa-person-walking-arrow-right:before{content:"\e552"}.fa-person-walking-dashed-line-arrow-right:before{content:"\e553"}.fa-person-walking-luggage:before{content:"\e554"}.fa-blind:before,.fa-person-walking-with-cane:before{content:"\f29d"}.fa-peseta-sign:before{content:"\e221"}.fa-peso-sign:before{content:"\e222"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before,.fa-phone-flip:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-volume:before,.fa-volume-control-phone:before{content:"\f2a0"}.fa-photo-film:before,.fa-photo-video:before{content:"\f87c"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-circle-check:before{content:"\e555"}.fa-plane-circle-exclamation:before{content:"\e556"}.fa-plane-circle-xmark:before{content:"\e557"}.fa-plane-departure:before{content:"\f5b0"}.fa-plane-lock:before{content:"\e558"}.fa-plane-slash:before{content:"\e069"}.fa-plane-up:before{content:"\e22d"}.fa-plant-wilt:before{content:"\e5aa"}.fa-plate-wheat:before{content:"\e55a"}.fa-play:before{content:"\f04b"}.fa-plug:before{content:"\f1e6"}.fa-plug-circle-bolt:before{content:"\e55b"}.fa-plug-circle-check:before{content:"\e55c"}.fa-plug-circle-exclamation:before{content:"\e55d"}.fa-plug-circle-minus:before{content:"\e55e"}.fa-plug-circle-plus:before{content:"\e55f"}.fa-plug-circle-xmark:before{content:"\e560"}.fa-add:before,.fa-plus:before{content:"\2b"}.fa-plus-minus:before{content:"\e43c"}.fa-podcast:before{content:"\f2ce"}.fa-poo:before{content:"\f2fe"}.fa-poo-bolt:before,.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-power-off:before{content:"\f011"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before,.fa-prescription-bottle-medical:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-pump-medical:before{content:"\e06a"}.fa-pump-soap:before{content:"\e06b"}.fa-puzzle-piece:before{content:"\f12e"}.fa-q:before{content:"\51"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\3f"}.fa-quote-left-alt:before,.fa-quote-left:before{content:"\f10d"}.fa-quote-right-alt:before,.fa-quote-right:before{content:"\f10e"}.fa-r:before{content:"\52"}.fa-radiation:before{content:"\f7b9"}.fa-radio:before{content:"\f8d7"}.fa-rainbow:before{content:"\f75b"}.fa-ranking-star:before{content:"\e561"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-ad:before,.fa-rectangle-ad:before{content:"\f641"}.fa-list-alt:before,.fa-rectangle-list:before{content:"\f022"}.fa-rectangle-times:before,.fa-rectangle-xmark:before,.fa-times-rectangle:before,.fa-window-close:before{content:"\f410"}.fa-recycle:before{content:"\f1b8"}.fa-registered:before{content:"\f25d"}.fa-repeat:before{content:"\f363"}.fa-mail-reply:before,.fa-reply:before{content:"\f3e5"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-republican:before{content:"\f75e"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-ribbon:before{content:"\f4d6"}.fa-right-from-bracket:before,.fa-sign-out-alt:before{content:"\f2f5"}.fa-exchange-alt:before,.fa-right-left:before{content:"\f362"}.fa-long-arrow-alt-right:before,.fa-right-long:before{content:"\f30b"}.fa-right-to-bracket:before,.fa-sign-in-alt:before{content:"\f2f6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-road-barrier:before{content:"\e562"}.fa-road-bridge:before{content:"\e563"}.fa-road-circle-check:before{content:"\e564"}.fa-road-circle-exclamation:before{content:"\e565"}.fa-road-circle-xmark:before{content:"\e566"}.fa-road-lock:before{content:"\e567"}.fa-road-spikes:before{content:"\e568"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rotate:before,.fa-sync-alt:before{content:"\f2f1"}.fa-rotate-back:before,.fa-rotate-backward:before,.fa-rotate-left:before,.fa-undo-alt:before{content:"\f2ea"}.fa-redo-alt:before,.fa-rotate-forward:before,.fa-rotate-right:before{content:"\f2f9"}.fa-route:before{content:"\f4d7"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-rouble:before,.fa-rub:before,.fa-ruble-sign:before,.fa-ruble:before{content:"\f158"}.fa-rug:before{content:"\e569"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-rupee-sign:before,.fa-rupee:before{content:"\f156"}.fa-rupiah-sign:before{content:"\e23d"}.fa-s:before{content:"\53"}.fa-sack-dollar:before{content:"\f81d"}.fa-sack-xmark:before{content:"\e56a"}.fa-sailboat:before{content:"\e445"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-balance-scale:before,.fa-scale-balanced:before{content:"\f24e"}.fa-balance-scale-left:before,.fa-scale-unbalanced:before{content:"\f515"}.fa-balance-scale-right:before,.fa-scale-unbalanced-flip:before{content:"\f516"}.fa-school:before{content:"\f549"}.fa-school-circle-check:before{content:"\e56b"}.fa-school-circle-exclamation:before{content:"\e56c"}.fa-school-circle-xmark:before{content:"\e56d"}.fa-school-flag:before{content:"\e56e"}.fa-school-lock:before{content:"\e56f"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-screwdriver:before{content:"\f54a"}.fa-screwdriver-wrench:before,.fa-tools:before{content:"\f7d9"}.fa-scroll:before{content:"\f70e"}.fa-scroll-torah:before,.fa-torah:before{content:"\f6a0"}.fa-sd-card:before{content:"\f7c2"}.fa-section:before{content:"\e447"}.fa-seedling:before,.fa-sprout:before{content:"\f4d8"}.fa-server:before{content:"\f233"}.fa-shapes:before,.fa-triangle-circle-square:before{content:"\f61f"}.fa-arrow-turn-right:before,.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-share-from-square:before,.fa-share-square:before{content:"\f14d"}.fa-share-alt:before,.fa-share-nodes:before{content:"\f1e0"}.fa-sheet-plastic:before{content:"\e571"}.fa-ils:before,.fa-shekel-sign:before,.fa-shekel:before,.fa-sheqel-sign:before,.fa-sheqel:before{content:"\f20b"}.fa-shield-blank:before,.fa-shield:before{content:"\f132"}.fa-shield-cat:before{content:"\e572"}.fa-shield-dog:before{content:"\e573"}.fa-shield-alt:before,.fa-shield-halved:before{content:"\f3ed"}.fa-shield-heart:before{content:"\e574"}.fa-shield-virus:before{content:"\e06c"}.fa-ship:before{content:"\f21a"}.fa-shirt:before,.fa-t-shirt:before,.fa-tshirt:before{content:"\f553"}.fa-shoe-prints:before{content:"\f54b"}.fa-shop:before,.fa-store-alt:before{content:"\f54f"}.fa-shop-lock:before{content:"\e4a5"}.fa-shop-slash:before,.fa-store-alt-slash:before{content:"\e070"}.fa-shower:before{content:"\f2cc"}.fa-shrimp:before{content:"\e448"}.fa-random:before,.fa-shuffle:before{content:"\f074"}.fa-shuttle-space:before,.fa-space-shuttle:before{content:"\f197"}.fa-sign-hanging:before,.fa-sign:before{content:"\f4d9"}.fa-signal-5:before,.fa-signal-perfect:before,.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-map-signs:before,.fa-signs-post:before{content:"\f277"}.fa-sim-card:before{content:"\f7c4"}.fa-sink:before{content:"\e06d"}.fa-sitemap:before{content:"\f0e8"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before,.fa-sliders:before{content:"\f1de"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-soap:before{content:"\e06e"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-spa:before{content:"\f5bb"}.fa-pastafarianism:before,.fa-spaghetti-monster-flying:before{content:"\f67b"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spoon:before,.fa-utensil-spoon:before{content:"\f2e5"}.fa-spray-can:before{content:"\f5bd"}.fa-air-freshener:before,.fa-spray-can-sparkles:before{content:"\f5d0"}.fa-square:before{content:"\f0c8"}.fa-external-link-square:before,.fa-square-arrow-up-right:before{content:"\f14c"}.fa-caret-square-down:before,.fa-square-caret-down:before{content:"\f150"}.fa-caret-square-left:before,.fa-square-caret-left:before{content:"\f191"}.fa-caret-square-right:before,.fa-square-caret-right:before{content:"\f152"}.fa-caret-square-up:before,.fa-square-caret-up:before{content:"\f151"}.fa-check-square:before,.fa-square-check:before{content:"\f14a"}.fa-envelope-square:before,.fa-square-envelope:before{content:"\f199"}.fa-square-full:before{content:"\f45c"}.fa-h-square:before,.fa-square-h:before{content:"\f0fd"}.fa-minus-square:before,.fa-square-minus:before{content:"\f146"}.fa-square-nfi:before{content:"\e576"}.fa-parking:before,.fa-square-parking:before{content:"\f540"}.fa-pen-square:before,.fa-pencil-square:before,.fa-square-pen:before{content:"\f14b"}.fa-square-person-confined:before{content:"\e577"}.fa-phone-square:before,.fa-square-phone:before{content:"\f098"}.fa-phone-square-alt:before,.fa-square-phone-flip:before{content:"\f87b"}.fa-plus-square:before,.fa-square-plus:before{content:"\f0fe"}.fa-poll-h:before,.fa-square-poll-horizontal:before{content:"\f682"}.fa-poll:before,.fa-square-poll-vertical:before{content:"\f681"}.fa-square-root-alt:before,.fa-square-root-variable:before{content:"\f698"}.fa-rss-square:before,.fa-square-rss:before{content:"\f143"}.fa-share-alt-square:before,.fa-square-share-nodes:before{content:"\f1e1"}.fa-external-link-square-alt:before,.fa-square-up-right:before{content:"\f360"}.fa-square-virus:before{content:"\e578"}.fa-square-xmark:before,.fa-times-square:before,.fa-xmark-square:before{content:"\f2d3"}.fa-rod-asclepius:before,.fa-rod-snake:before,.fa-staff-aesculapius:before,.fa-staff-snake:before{content:"\e579"}.fa-stairs:before{content:"\e289"}.fa-stamp:before{content:"\f5bf"}.fa-stapler:before{content:"\e5af"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before,.fa-star-half-stroke:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-gbp:before,.fa-pound-sign:before,.fa-sterling-sign:before{content:"\f154"}.fa-stethoscope:before{content:"\f0f1"}.fa-stop:before{content:"\f04d"}.fa-stopwatch:before{content:"\f2f2"}.fa-stopwatch-20:before{content:"\e06f"}.fa-store:before{content:"\f54e"}.fa-store-slash:before{content:"\e071"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stroopwafel:before{content:"\f551"}.fa-subscript:before{content:"\f12c"}.fa-suitcase:before{content:"\f0f2"}.fa-medkit:before,.fa-suitcase-medical:before{content:"\f0fa"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-sun-plant-wilt:before{content:"\e57a"}.fa-superscript:before{content:"\f12b"}.fa-swatchbook:before{content:"\f5c3"}.fa-synagogue:before{content:"\f69b"}.fa-syringe:before{content:"\f48e"}.fa-t:before{content:"\54"}.fa-table:before{content:"\f0ce"}.fa-table-cells:before,.fa-th:before{content:"\f00a"}.fa-table-cells-large:before,.fa-th-large:before{content:"\f009"}.fa-columns:before,.fa-table-columns:before{content:"\f0db"}.fa-table-list:before,.fa-th-list:before{content:"\f00b"}.fa-ping-pong-paddle-ball:before,.fa-table-tennis-paddle-ball:before,.fa-table-tennis:before{content:"\f45d"}.fa-tablet-android:before,.fa-tablet:before{content:"\f3fb"}.fa-tablet-button:before{content:"\f10a"}.fa-tablet-alt:before,.fa-tablet-screen-button:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-digital-tachograph:before,.fa-tachograph-digital:before{content:"\f566"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tarp:before{content:"\e57b"}.fa-tarp-droplet:before{content:"\e57c"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-temperature-arrow-down:before,.fa-temperature-down:before{content:"\e03f"}.fa-temperature-arrow-up:before,.fa-temperature-up:before{content:"\e040"}.fa-temperature-0:before,.fa-temperature-empty:before,.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-temperature-4:before,.fa-temperature-full:before,.fa-thermometer-4:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-temperature-2:before,.fa-temperature-half:before,.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-temperature-1:before,.fa-temperature-quarter:before,.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-temperature-3:before,.fa-temperature-three-quarters:before,.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-tenge-sign:before,.fa-tenge:before{content:"\f7d7"}.fa-tent:before{content:"\e57d"}.fa-tent-arrow-down-to-line:before{content:"\e57e"}.fa-tent-arrow-left-right:before{content:"\e57f"}.fa-tent-arrow-turn-left:before{content:"\e580"}.fa-tent-arrows-down:before{content:"\e581"}.fa-tents:before{content:"\e582"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-remove-format:before,.fa-text-slash:before{content:"\f87d"}.fa-text-width:before{content:"\f035"}.fa-thermometer:before{content:"\f491"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumb-tack:before,.fa-thumbtack:before{content:"\f08d"}.fa-ticket:before{content:"\f145"}.fa-ticket-alt:before,.fa-ticket-simple:before{content:"\f3ff"}.fa-timeline:before{content:"\e29c"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toilet-paper-slash:before{content:"\e072"}.fa-toilet-portable:before{content:"\e583"}.fa-toilets-portable:before{content:"\e584"}.fa-toolbox:before{content:"\f552"}.fa-tooth:before{content:"\f5c9"}.fa-torii-gate:before{content:"\f6a1"}.fa-tornado:before{content:"\f76f"}.fa-broadcast-tower:before,.fa-tower-broadcast:before{content:"\f519"}.fa-tower-cell:before{content:"\e585"}.fa-tower-observation:before{content:"\e586"}.fa-tractor:before{content:"\f722"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-trailer:before{content:"\e041"}.fa-train:before{content:"\f238"}.fa-subway:before,.fa-train-subway:before{content:"\f239"}.fa-train-tram:before{content:"\e5b4"}.fa-transgender-alt:before,.fa-transgender:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-arrow-up:before,.fa-trash-restore:before{content:"\f829"}.fa-trash-alt:before,.fa-trash-can:before{content:"\f2ed"}.fa-trash-can-arrow-up:before,.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-tree-city:before{content:"\e587"}.fa-exclamation-triangle:before,.fa-triangle-exclamation:before,.fa-warning:before{content:"\f071"}.fa-trophy:before{content:"\f091"}.fa-trowel:before{content:"\e589"}.fa-trowel-bricks:before{content:"\e58a"}.fa-truck:before{content:"\f0d1"}.fa-truck-arrow-right:before{content:"\e58b"}.fa-truck-droplet:before{content:"\e58c"}.fa-shipping-fast:before,.fa-truck-fast:before{content:"\f48b"}.fa-truck-field:before{content:"\e58d"}.fa-truck-field-un:before{content:"\e58e"}.fa-truck-front:before{content:"\e2b7"}.fa-ambulance:before,.fa-truck-medical:before{content:"\f0f9"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-truck-plane:before{content:"\e58f"}.fa-truck-loading:before,.fa-truck-ramp-box:before{content:"\f4de"}.fa-teletype:before,.fa-tty:before{content:"\f1e4"}.fa-try:before,.fa-turkish-lira-sign:before,.fa-turkish-lira:before{content:"\e2bb"}.fa-level-down-alt:before,.fa-turn-down:before{content:"\f3be"}.fa-level-up-alt:before,.fa-turn-up:before{content:"\f3bf"}.fa-television:before,.fa-tv-alt:before,.fa-tv:before{content:"\f26c"}.fa-u:before{content:"\55"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-universal-access:before{content:"\f29a"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before,.fa-unlock-keyhole:before{content:"\f13e"}.fa-arrows-alt-v:before,.fa-up-down:before{content:"\f338"}.fa-arrows-alt:before,.fa-up-down-left-right:before{content:"\f0b2"}.fa-long-arrow-alt-up:before,.fa-up-long:before{content:"\f30c"}.fa-expand-alt:before,.fa-up-right-and-down-left-from-center:before{content:"\f424"}.fa-external-link-alt:before,.fa-up-right-from-square:before{content:"\f35d"}.fa-upload:before{content:"\f093"}.fa-user:before{content:"\f007"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-clock:before{content:"\f4fd"}.fa-user-doctor:before,.fa-user-md:before{content:"\f0f0"}.fa-user-cog:before,.fa-user-gear:before{content:"\f4fe"}.fa-user-graduate:before{content:"\f501"}.fa-user-friends:before,.fa-user-group:before{content:"\f500"}.fa-user-injured:before{content:"\f728"}.fa-user-alt:before,.fa-user-large:before{content:"\f406"}.fa-user-alt-slash:before,.fa-user-large-slash:before{content:"\f4fa"}.fa-user-lock:before{content:"\f502"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-edit:before,.fa-user-pen:before{content:"\f4ff"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before,.fa-user-xmark:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-between-lines:before{content:"\e591"}.fa-users-cog:before,.fa-users-gear:before{content:"\f509"}.fa-users-line:before{content:"\e592"}.fa-users-rays:before{content:"\e593"}.fa-users-rectangle:before{content:"\e594"}.fa-users-slash:before{content:"\e073"}.fa-users-viewfinder:before{content:"\e595"}.fa-cutlery:before,.fa-utensils:before{content:"\f2e7"}.fa-v:before{content:"\56"}.fa-shuttle-van:before,.fa-van-shuttle:before{content:"\f5b6"}.fa-vault:before{content:"\e2c5"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-vest:before{content:"\e085"}.fa-vest-patches:before{content:"\e086"}.fa-vial:before{content:"\f492"}.fa-vial-circle-check:before{content:"\e596"}.fa-vial-virus:before{content:"\e597"}.fa-vials:before{content:"\f493"}.fa-video-camera:before,.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-virus:before{content:"\e074"}.fa-virus-covid:before{content:"\e4a8"}.fa-virus-covid-slash:before{content:"\e4a9"}.fa-virus-slash:before{content:"\e075"}.fa-viruses:before{content:"\e076"}.fa-voicemail:before{content:"\f897"}.fa-volcano:before{content:"\f770"}.fa-volleyball-ball:before,.fa-volleyball:before{content:"\f45f"}.fa-volume-high:before,.fa-volume-up:before{content:"\f028"}.fa-volume-down:before,.fa-volume-low:before{content:"\f027"}.fa-volume-off:before{content:"\f026"}.fa-volume-mute:before,.fa-volume-times:before,.fa-volume-xmark:before{content:"\f6a9"}.fa-vr-cardboard:before{content:"\f729"}.fa-w:before{content:"\57"}.fa-walkie-talkie:before{content:"\f8ef"}.fa-wallet:before{content:"\f555"}.fa-magic:before,.fa-wand-magic:before{content:"\f0d0"}.fa-magic-wand-sparkles:before,.fa-wand-magic-sparkles:before{content:"\e2ca"}.fa-wand-sparkles:before{content:"\f72b"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-ladder-water:before,.fa-swimming-pool:before,.fa-water-ladder:before{content:"\f5c5"}.fa-wave-square:before{content:"\f83e"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weight-scale:before,.fa-weight:before{content:"\f496"}.fa-wheat-alt:before,.fa-wheat-awn:before{content:"\e2cd"}.fa-wheat-awn-circle-exclamation:before{content:"\e598"}.fa-wheelchair:before{content:"\f193"}.fa-wheelchair-alt:before,.fa-wheelchair-move:before{content:"\e2ce"}.fa-glass-whiskey:before,.fa-whiskey-glass:before{content:"\f7a0"}.fa-wifi-3:before,.fa-wifi-strong:before,.fa-wifi:before{content:"\f1eb"}.fa-wind:before{content:"\f72e"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before,.fa-wine-glass-empty:before{content:"\f5ce"}.fa-krw:before,.fa-won-sign:before,.fa-won:before{content:"\f159"}.fa-worm:before{content:"\e599"}.fa-wrench:before{content:"\f0ad"}.fa-x:before{content:"\58"}.fa-x-ray:before{content:"\f497"}.fa-close:before,.fa-multiply:before,.fa-remove:before,.fa-times:before,.fa-xmark:before{content:"\f00d"}.fa-xmarks-lines:before{content:"\e59a"}.fa-y:before{content:"\59"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen-sign:before,.fa-yen:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-z:before{content:"\5a"}.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:host,:root{--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}.fa-brands,.fab{font-family:"Font Awesome 6 Brands";font-weight:400}.fa-42-group:before,.fa-innosoft:before{content:"\e080"}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-adn:before{content:"\f170"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-alipay:before{content:"\f642"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-amilia:before{content:"\f36d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-pay:before{content:"\f415"}.fa-artstation:before{content:"\f77a"}.fa-asymmetrik:before{content:"\f372"}.fa-atlassian:before{content:"\f77b"}.fa-audible:before{content:"\f373"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-aws:before{content:"\f375"}.fa-bandcamp:before{content:"\f2d5"}.fa-battle-net:before{content:"\f835"}.fa-behance:before{content:"\f1b4"}.fa-bilibili:before{content:"\e3d9"}.fa-bimobject:before{content:"\f378"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bootstrap:before{content:"\f836"}.fa-bots:before{content:"\e340"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-buromobelexperte:before{content:"\f37f"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-cloudflare:before{content:"\e07d"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cmplid:before{content:"\e360"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cotton-bureau:before{content:"\f89e"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-critical-role:before{content:"\f6c9"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\e052"}.fa-dashcube:before{content:"\f210"}.fa-deezer:before{content:"\e077"}.fa-delicious:before{content:"\f1a5"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dhl:before{content:"\f790"}.fa-diaspora:before{content:"\f791"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-draft2digital:before{content:"\f396"}.fa-dribbble:before{content:"\f17d"}.fa-dropbox:before{content:"\f16b"}.fa-drupal:before{content:"\f1a9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edge-legacy:before{content:"\e078"}.fa-elementor:before{content:"\f430"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envira:before{content:"\f299"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-etsy:before{content:"\f2d7"}.fa-evernote:before{content:"\f839"}.fa-expeditedssl:before{content:"\f23e"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-figma:before{content:"\f799"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\e007"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-fly:before{content:"\f417"}.fa-font-awesome-flag:before,.fa-font-awesome-logo-full:before,.fa-font-awesome:before{content:"\f2b4"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-fulcrum:before{content:"\f50b"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-gofore:before{content:"\f3a7"}.fa-golang:before{content:"\e40f"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-pay:before{content:"\e079"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-wallet:before{content:"\f1ee"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guilded:before{content:"\e07e"}.fa-gulp:before{content:"\f3ae"}.fa-hacker-news:before{content:"\f1d4"}.fa-hackerrank:before{content:"\f5f7"}.fa-hashnode:before{content:"\e499"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-hive:before{content:"\e07f"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-hotjar:before{content:"\f3b1"}.fa-houzz:before{content:"\f27c"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-ideal:before{content:"\e013"}.fa-imdb:before{content:"\f2d8"}.fa-instagram:before{content:"\f16d"}.fa-instalod:before{content:"\e081"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joomla:before{content:"\f1aa"}.fa-js:before{content:"\f3b8"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaggle:before{content:"\f5fa"}.fa-keybase:before{content:"\f4f5"}.fa-keycdn:before{content:"\f3ba"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-korvue:before{content:"\f42f"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-leanpub:before{content:"\f212"}.fa-less:before{content:"\f41d"}.fa-line:before{content:"\f3c0"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-mailchimp:before{content:"\f59e"}.fa-mandalorian:before{content:"\f50f"}.fa-markdown:before{content:"\f60f"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medapps:before{content:"\f3c6"}.fa-medium-m:before,.fa-medium:before{content:"\f23a"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-mendeley:before{content:"\f7b3"}.fa-meta:before{content:"\e49b"}.fa-microblog:before{content:"\e01a"}.fa-microsoft:before{content:"\f3ca"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\e056"}.fa-mizuni:before{content:"\f3cc"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-nfc-directional:before{content:"\e530"}.fa-nfc-symbol:before{content:"\e531"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-octopus-deploy:before{content:"\e082"}.fa-odnoklassniki:before{content:"\f263"}.fa-old-republic:before{content:"\f510"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-padlet:before{content:"\e4a0"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-palfed:before{content:"\f3d8"}.fa-patreon:before{content:"\f3d9"}.fa-paypal:before{content:"\f1ed"}.fa-perbyte:before{content:"\e083"}.fa-periscope:before{content:"\f3da"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pix:before{content:"\e43a"}.fa-playstation:before{content:"\f3df"}.fa-product-hunt:before{content:"\f288"}.fa-pushed:before{content:"\f3e1"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-r-project:before{content:"\f4f7"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-redhat:before{content:"\f7bc"}.fa-renren:before{content:"\f18b"}.fa-replyd:before{content:"\f3e6"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-rev:before{content:"\f5b2"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-rust:before{content:"\e07a"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-schlix:before{content:"\f3ea"}.fa-screenpal:before{content:"\e570"}.fa-scribd:before{content:"\f28a"}.fa-searchengin:before{content:"\f3eb"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-servicestack:before{content:"\f3ec"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shopify:before{content:"\e057"}.fa-shopware:before{content:"\f5b5"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sith:before{content:"\f512"}.fa-sitrox:before{content:"\e44a"}.fa-sketch:before{content:"\f7c6"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack-hash:before,.fa-slack:before{content:"\f198"}.fa-slideshare:before{content:"\f1e7"}.fa-snapchat-ghost:before,.fa-snapchat:before{content:"\f2ab"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-space-awesome:before{content:"\e5ac"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spotify:before{content:"\f1bc"}.fa-behance-square:before,.fa-square-behance:before{content:"\f1b5"}.fa-dribbble-square:before,.fa-square-dribbble:before{content:"\f397"}.fa-facebook-square:before,.fa-square-facebook:before{content:"\f082"}.fa-square-font-awesome:before{content:"\e5ad"}.fa-font-awesome-alt:before,.fa-square-font-awesome-stroke:before{content:"\f35c"}.fa-git-square:before,.fa-square-git:before{content:"\f1d2"}.fa-github-square:before,.fa-square-github:before{content:"\f092"}.fa-gitlab-square:before,.fa-square-gitlab:before{content:"\e5ae"}.fa-google-plus-square:before,.fa-square-google-plus:before{content:"\f0d4"}.fa-hacker-news-square:before,.fa-square-hacker-news:before{content:"\f3af"}.fa-instagram-square:before,.fa-square-instagram:before{content:"\e055"}.fa-js-square:before,.fa-square-js:before{content:"\f3b9"}.fa-lastfm-square:before,.fa-square-lastfm:before{content:"\f203"}.fa-odnoklassniki-square:before,.fa-square-odnoklassniki:before{content:"\f264"}.fa-pied-piper-square:before,.fa-square-pied-piper:before{content:"\e01e"}.fa-pinterest-square:before,.fa-square-pinterest:before{content:"\f0d3"}.fa-reddit-square:before,.fa-square-reddit:before{content:"\f1a2"}.fa-snapchat-square:before,.fa-square-snapchat:before{content:"\f2ad"}.fa-square-steam:before,.fa-steam-square:before{content:"\f1b7"}.fa-square-tumblr:before,.fa-tumblr-square:before{content:"\f174"}.fa-square-twitter:before,.fa-twitter-square:before{content:"\f081"}.fa-square-viadeo:before,.fa-viadeo-square:before{content:"\f2aa"}.fa-square-vimeo:before,.fa-vimeo-square:before{content:"\f194"}.fa-square-whatsapp:before,.fa-whatsapp-square:before{content:"\f40c"}.fa-square-xing:before,.fa-xing-square:before{content:"\f169"}.fa-square-youtube:before,.fa-youtube-square:before{content:"\f431"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-symbol:before{content:"\f3f6"}.fa-sticker-mule:before{content:"\f3f7"}.fa-strava:before{content:"\f428"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-superpowers:before{content:"\f2dd"}.fa-supple:before{content:"\f3f9"}.fa-suse:before{content:"\f7d6"}.fa-swift:before{content:"\f8e1"}.fa-symfony:before{content:"\f83d"}.fa-teamspeak:before{content:"\f4f9"}.fa-telegram-plane:before,.fa-telegram:before{content:"\f2c6"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-the-red-yeti:before{content:"\f69d"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-think-peaks:before{content:"\f731"}.fa-tiktok:before{content:"\e07b"}.fa-trade-federation:before{content:"\f513"}.fa-trello:before{content:"\f181"}.fa-tumblr:before{content:"\f173"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-uncharted:before{content:"\e084"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\e049"}.fa-unsplash:before{content:"\e07c"}.fa-untappd:before{content:"\f405"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-vaadin:before{content:"\f408"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viber:before{content:"\f409"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-vuejs:before{content:"\f41f"}.fa-watchman-monitoring:before{content:"\e087"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whmcs:before{content:"\f40d"}.fa-wikipedia-w:before{content:"\f266"}.fa-windows:before{content:"\f17a"}.fa-wirsindhandwerk:before,.fa-wsh:before{content:"\e2d0"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wodu:before{content:"\e088"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-rendact:before,.fa-wpressr:before{content:"\f3e4"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-zhihu:before{content:"\f63f"}:host,:root{--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}.fa-regular,.far{font-family:"Font Awesome 6 Free";font-weight:400}:host,:root{--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}.fa-solid,.fas{font-family:"Font Awesome 6 Free";font-weight:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-v4compatibility.woff2) format("woff2"),url(../webfonts/fa-v4compatibility.ttf) format("truetype");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a} \ No newline at end of file diff --git a/_static/vendor/fontawesome/6.1.2/webfonts/fa-brands-400.ttf b/_static/vendor/fontawesome/6.1.2/webfonts/fa-brands-400.ttf new file mode 100644 index 0000000000000000000000000000000000000000..24ca8b17c0fb50b39033f4514bc9a2a0ba1974f9 GIT binary patch literal 181264 zcmd4437A|}oi}{W-D|nE-@3K0T~*y(y;OB|cXih8tOQ6PgoLmJNB{-dj1mP|TL_yX zA|iqdL+?PD^L$-7 z_nv+IpZ|9L=Z0~{n43*9ndMGAd2s0L(>9;N81F{x)^jh}wq0HPvCWLRE?`Xi-T4>4 z@9my#pE-uH*f5hmvh{+uZ9A{<5BoME@56AT7a&4esr17C3S8F(m+ZLWUw&?!hx%?| zOy6_yJI~!F_3cL9zfSEP5J4UuCYc=WqGlzn$%0yq|d_6l3hy%I1sa-iM~7Nj`v1OZ2UdN_b@!%hvKA>+Cl!vnL1^hw0a_~*UO~FmTvG$w%lk@x(?zm1o zMs!%7DaH>AJNa{>ZYnd?uA}pwWLc4)(%_^C=iQ0J40{nr6VXcjrC9bc8eW+M62_jSYR6H;+u3z?xv) z=J!FgJIUgB8%Q^iuE52_cqc`B6wi+8Si3)y;@#iwhY#;?+pnX2P57x^%ID;DV5;qx zCffa^xg?7v+)zEJ zuid8{+DWwQwL4|oZ>m?UIno_C-6PskDZO3BS*I!HL7Xm4Aio0})Sl59_iXvOa-Dw0 z+IUY}e)Fs}cU8-j-wm z7+`!?J0IdZVUcGN;R$AoI>`^$sb5-;_U~xtpJXYj7cP!GIXDS;%iHc}r(aH6P8~7o zyJ%}llym$}8o_sGJ|qFpxw*We9F=v-b7=y3ClRK;AP!-|D^y=tgpr0g#vc`NPCHK7 zPJZ65i}Bq~9qoP@G-skOD33bBqMfOBJ(Hqc+B;63HjK>AgER*YkQL()<)sPapJYkO z*G_lVn8I-FwgoN};mKLNNc)P)IN z|2}Dz(?2n0s%HZ0jdy1bkSBdu*hv$xfiwpPO)`NiI%B8tQu$8*;E$nRABEvhwc95@ z;aEN|?2MD(6Z;P75*+0d`&js$I^vx&m4&GkH2wJW6VuO3|6=-A(|cyN z%)DpjnwiO&8)t5r`S8rgXFf4=|I7n3kIj5zW@_f?nP+CcJM-+!?wRLiUYz;$%qugm z&irNOKWAoU{yNjzr|vWN+57VQiu+3Y>igF1+pur*zSH*oWZ!T1{chi1_eb{Mx&OZX zpWFZW{g3Vc+Wv3ue`f#g{r|du@BRb(|Mt57_0a3%uP=Z7)31O3_1&+(c%XjZ%mY^) zxbeWP2R?M*BM0t1@Rb8!J@Dj#XAb<^ffo+Ebl^7!mmFMv@V{1jV=5Cygr-uT)yY#w^*MV*5~2Z-Y?eY-q(KIUY|u`ea^@FT(oyP*5|Ul@7p_x z^|@87&nK`xyY@c5_sPBA-}~I&-|zkN-q)t3X=B=)4q$!iSf7Q{$76lAPMB;GxSf7th-;MQoaQX{apGT%2#rixw{gdfmiuJi*=8Bo?W^Taxd~oI?GxyGXdge1T z56wJ|_4!VFeZG(N`7ze#rJ3Kg*JnT0N7|?F3+{`H^(oI=pI5Lxzu)ivKU$yfiS?;r zeXeY;&m9Loe&EYkpRc#q=hs-D;e+Fcug{@h9s2R1A7GXK?!R0%7s>f@p6pB6pJ#uX zeIol$nPutiX`XsHbzy2G)^TXzc%nzEknzxuYn>U&}%^S??%}MiG^BRz(tIey-E6mHy_n14(%glEp=2G(# zJl|%XXKpjMnrFj*rn%f)YA!Svc)#g=6e#P<-ut};uk8(c{a($hc;4{r_q^u$i|2=) zXFbn&9`iiv+3C67)9wCm_Z#j%yFcN6r~730aqeT>E8WZ8OWfV=iaY1F-5$5g&E3rP zsO!tFjjnaBURTj&x%>j#VO{tq{{G+Jy_|0?F8%Ug+sl`i@|mnjHMrC zEYkp%b0AueW_cUYgM%-m+V~4@mdl9|@Wv_() z%0D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띰kq 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 I{1*cQ03ENt>Hq)$ literal 0 HcmV?d00001 diff --git a/_static/vendor/fontawesome/6.1.2/webfonts/fa-regular-400.ttf b/_static/vendor/fontawesome/6.1.2/webfonts/fa-regular-400.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c5ac00957778d6d0b317615275b6511277b246e8 GIT binary patch literal 60236 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 C9oP{7 literal 0 HcmV?d00001 diff --git a/_static/vendor/fontawesome/6.1.2/webfonts/fa-regular-400.woff2 b/_static/vendor/fontawesome/6.1.2/webfonts/fa-regular-400.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..7dca1d907fde034ebacc631acfcdef45dea89274 GIT binary patch literal 24028 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 literal 0 HcmV?d00001 diff --git a/_static/vendor/fontawesome/6.1.2/webfonts/fa-solid-900.ttf b/_static/vendor/fontawesome/6.1.2/webfonts/fa-solid-900.ttf new file mode 100644 index 0000000000000000000000000000000000000000..43ba1cc7d94f6cb27d7e7e596c5bfefa242205a7 GIT binary patch literal 389948 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

    `}m6pgdhRBIgqU zUUkRWyhVeraT=*1HeFvh>a0B2{&e`ASZrNm{p1@oeBOY?D}1s(w(gxd#d+}5Nb%u? z(mOTk>Y?SC@0=NbXZNR%O6B?+6B;8XbPEvO-7ZLl^_- zG(6!S1U9HHkPRrE;TmWCgw{j+qY{W=#gFib;%Dqc!{;l7CTs%u*O=!c8Rm`(nAYuV zcRHJ!UD^Y6I9Hrb*$6Ix3v)id??9)D#p1DQXJx4{4-+pJm!zhPxk6*lQsesSbgody zWC{p~0vOL=on4H#g8#^(N$KYWyC#4jF&4pEM9vGAu{%~xPd&qcK3jpSIQmA&(7-bi#^x6BY|C#oedj$x ze2m7SJ>SsPe!~b}J=A=j-_Ui~{aw)CYat7i0*i<;xGwOizyN$vB5g5Edlob4HMrC$ z0~;}0Bv0GqWE(xH6W5J_T8K8xG7@w{`V~VP$re6dAzzp%tIVt=XR*?elD3qeht%tT z24d9qyh2V)f?oT^t$wsjTL8RIU0P*|l16EOy^dUj7$Whun@uFnZoO5m_uP9d0nj2b zO(yfX*nBe2G0UALoYf&h`q=Z|_^&^&2YbGg!#3ep7O>sqi9!nh6;9x?aAiIj%XQ}c zWiGQq9Y!9bwTC*$&805WWz;F(x5o_<+JIpX4mHrmDdzXj32ls5Sdt9D1S!*vHid&( zNb;tQIJM@V9&Ny41nlU@;shxn`Tj8Yg^WiVx`BTRJ>vf`Xgo&Z?T^$u{gfc-Q?|sq z2zf0Uit^Liwr9h?(cc|K$bb$Yqty}f@GbC$GGg$rMlLA0q#!~;ETDN)B3m#o$xfNr zuC>864YX1-f{_@zOs{SUvN5)?-~=MV8p=?tusdsbd=Rc&{3Mbb%+8b{032j-%Vb`7 z@eE>cAl%-S2!-tG-itSaCoOBO5)FmocO(5E((})&n<`7kf$Hwf#}T>@Z&dp3I12w_ zrKMQ-aMea$&AT9|!Ud&z@`&&A5#F!PBdQnw-F$Jydl}I+_RP}pTPsbVN7qupL;f1v z%F@Ld$3e@gzLo(_`7KDRfo~o$qKyw}mr`ms5{kSE8}tYI(y5b*x~>aKJY-DvRGiRL7#8t9-n1 z`1kbKXjEc+7Viv##L`JSgtGkdg3A2-o_8WUcm#niv0I~@-J~PW#LE& z-;*jaU*82lL3$8F01GWhP7;277MF~lWc(4_@WpJ1V0fWjy=(!${E>B$z^{9+Z-@0ZET3j2gNY ze-U{ZZ}@BWAST~b_n@Bhd|~*#t?%g;p*YLGKsQ4lOI{5;`D@4fUq4UfCi$MnBJP-^TZ&!^DbBO>{VJTgK+x~v{S z334P;iiH;m5l?cdarRl{Q;LsUO5ro65Peco$k>1aSR1(yn#VojH)W^D3PKgW6d_` z7!$&$wj&8bvbN0^>QT)Q$^@$c3_1Fw{=Qi1)`w?#x2}uQf@VsxamHFw+CdOHTEq9n zojP7_v<|*5zy`qTr4c&q%0LC)5c@8~WT_u^yhd69jXT3C0P}$C3tcm&DW3_fMSAgTRlprB?+gLfVPa#kfaO3DnJjc)(l$LGk)CDMpqw- zNr(#nX|WCrzmsj6@o9qC0FwTuamsG8-1e;K;0ZPGgqqB+jM6tT1H!3IEGL`9Fb%Z) zmr0cGdwM!L&DuSiq~eh7)bZR+!-bHU(M8 zR+yFn@9lqHXBbxE|HIaHyhTilbXg4Rxcy4e>LWVild3r3=3bO@Ckh-4>`lP98}AQ& z*pQBy2Rx(DdXKhhIgBoP=xuRfp=f=00{f3*W!*$EnJ!Hyor$S*dU6tfW>9&Jzo`i) zIbBL8i+7qxws9gCkC$%(&o&U5%boAqE1fnv!q9jeDFcDPh*<|Z5xzp zF@%mq3Wb?M9&4yeC8Yn&mSzeCNZ`W1hgsPrxqE@-U8>7O0|{=?gn$F)YamKw(`g*C z>SuOeh=nfsd{fiNQg;IO5$HDBPf{NdNkev%g%bpWw5qs32eTK$7q#aeD-1d?B%(Z~ ze-PBFR()w(;=*kR5@v)E??@!98MuEVs8`*dR>$J;ZX(eYr!j#KckcIp7YiU{M28y~ zQ!)#kG_-rpH^gU5U79eX(SJ(TrT+EdA4`R(78xbq%vauwypo^cMNJMvFPY8ero_1M zv%qy@E9)Z4=W6WexiumJJ=Alxx5mm)B&ToRqt$Wv$x7Wu%rc^1S5}uS9E^c%;gmN4 zk((Mee( z1|-Cz7-vS*ykdLbG;?9zy&ZkLK!t77-X6fQ zJxXT7>*A>v_iorLAvYI*!SG1~V(eXDbUXZ3+c4mnK?z1 zZ`uy1T_Rn6U|8)M)B^so8(zKkhXt|o2C_UWU^{=r$`1^^^9QGl;dcnuY4V(xVK+^k z(*=9Rip~ti!li|vNy;-9AkIRVe5OHO)8LiPmi5#^WNV-%BhW2GnS{lOP4C@}PSu-) z8G$9KH(ki-?@OZCWn!0!s9OV(PLCPaG~UN((04-&`O{)ug?E#4&A1%e! zE;IqoJV2#aG|DYtHgC)1B@+@Rx2NY@hWcBQe3Akl1nN|BNTHrVl5sF$VZPXvICzqVYu$(VlT`Qfv-tYlaPSN~ks>3D9$IDw4rOe2*3K0Ylaq-; zHd1$Ng_I6%#!XG7GE>RvM7S6)gQVWFVc75tAi%mYat&VtP`h~3Zg%VnOI37PtX>%NH^ZAKJWAWMp88vbj zuS+AbVr~>=(;hdgJ$~wItnaC>?B@1W7W*ocU?q|mtw39_t>y*B@&lNqK_Xh|+*8$YyJA8Z$rPE{Bt&g9c-Sw%jtUA4Y9JdRX1Agng zqepBSK0f}+?jv+|+@kibWuIImMHZa%(c*goAO1HPLCpY)7<>{u$$d9L_FrQZ*S8Pi zE`smB(KzlZE}x&Te)Rt*BY9o{``=_Z&o7Yw8;$Du#rQyUM5i@ax{tyOqxU0un;BWL zHtv`xe+V2F)+lTM13MI^=SHR>rcXV5WNAGfMl<5G#!$~fkUK*jcShuS86Rzs**@_- zORQ5QPN(lEWbfU?$00g;b6pp9Rpz7~%Pl_{_?Q_5z=Z!JkYT&X@bgDRhKjK<0m2LJphDu@CB9 z@IX^q!N^JcNU^jgkbQPZ3TV+_&K}6Adfz73Y!Jbmf5&EWe-vnpF4VdfUD<}yEcb&@-8tplOrJuTwYk!> z5hjdmwzaEb*e+GC{t52%znP*#c244Yq z{N9Afj%1=Tb0`)&G*dxdEay$J1JEFEAFBi(&nO4>ezouL;k}^|crU0H^vCUKj~n5W zDW4MxwIgnQadCdW6bhB*=NA|2ZlvA*&8a?YSFOyO%k2u*y|hvNQA4oTOLd{^$|Fq((R z!~E+{P6yt`?1Eb7BE{a#o(Z!8|lO{*Yg z7`^HR><^)G`nu3q^Z$ftRFfkzXpH7o#AA(~2FARSSG_Hmu{)PMO)Aj56Vr*lI3L3V zKLY$+Ijrl`_yMolF7aji!Sy}hbR{uA`c$+&X`YNZ?(XD&cHBB2C-w1HU;lhh{bk4P zI5)mLJ-&3ued>)n)*nB8+$!G5_TnIcOql;61RNGYKn^;epTssGVFoe|tRa+Kn+KYc>w6{4w|z zuS3+}%h292Qpv6W3=;4;O6$IBh7rJrj-(V4XN~1{#yf_^CY(O70UoDy29zO6tu7YY z2u-)&H6#DxcTd29K3!wXr3;ln0^E6F)uv;G{A41OJC_T`-+gq1ApvtWd^D43Gt3JI zb%wE9ZN`hYm54*@EVh2wNtbVMnh&Ewe86P>ez@t}P)=h)kFT!A)hA6`M#)eaJ=SK0 z%ZyOVWRTd-&0r|Q!eauMBcjNRJ&9~{SeGG-29V-v4V|ZXWxj zksIhuhO@GRWO)?gIug>v0AUF-$Iye{fgD88W9GPV2%XL$*I|4@ft$~YHtfj4V!)Ac ziGZUlMLv$WYsnY`DOAdJZomd0lZ>Wd6vZSq2bn-iQ#N+~;^M!9m4iwA>Ggql3P9jz zF0WRnAh_$COYv3V5_?Nl<{~`QJ=G!!8KREV@xqJ<`yrL)U(4&og{kC?dzIRIBlh^S z`I-E$>G%6G8jrs*mb)h``9E(;gfdg|!CSLX8>kVVLD5<+_A>n~fK}od2D1JogM8z+ z2j0IMWU-?Rd^;z$K-LdfGMQcTKCU`;%d^CV;eg^dquC>P7_<|W2>c{U$?7%Id=CMUIvXtCkw>Z&o)(pMh z&5oq4;^(bmsV=vf%vAGR@3&*kNch)P=sBe&Qz(__!^34nw5w(dT2iYN3ii2o^h4IU zQ26Qu?9m#hM3<;wef164cQ>F!niLVp7g1-LY5Nnd2s@(V2879cIb1AV!C7Vi(s_f^ z+Kycv)YK@<&P!H>;hv9ULmO^pbBhMFKE5EFE5)qH(X@*0O@hg(I{apt?9|a#T5XB9 zMjuFhBbKFv0~*>VQI4v8Wg!;HTVZ5a2u<4Q6xm%iH#e2ZDyw1rw7;aMYgs2Sj&pppMfL$uVzZ6 zWNDV+W!4B$A2U~UX}>L%&&JwvQ1_XuRDSp`2Ey)XE<<}`tYX2LoH$V=qs?B(XGs%3p|9$PK)xRMLfRU z3>o!q_N53Huqo^ADK{~&;xz*@Gg*_kKEY6Tkil3+eS7>GjcaDBmTTf~H`*nV8=qBO zxcx^arm^Db6Gx4#jVWP-wm?jspI>JdsQD4KCc=GyU+Hdcc6sMd^C{1b9u34I=kyO)2Hk>AQ|(?|KX~KQHDgZ%{+>neY-yOQpRqp zw6$y50ovKsVBqP{WVRLw29s;p#3+gdU%2{{@vkiFE6iIFSbWcXm;BiTJDA6>NtD+R zdKn#mq{ivV{ESa+Y`v{*{W=H6S6K5{;%6W0Ru|w;xZ2<*n4@t02<1I8j(QLa$H3f) zm@rKuYcnL~jux2=18&({1M<{4!L4i>+wWzM=5pUelr61d8=sz1sx|yGQsOs}#~`C# zwB5(H-BH@-i{*48JX6`fluZ77T9R1||2`j!o?Iq-J@<2n1ljJZ-jR!n^4}M&E_h}e z`olVU3pQv6IoFXL3fYlgHnd`M$cywq)Gft8(AJcYu81CHQM352je^@z|93K%wci;G z-jPiu($Bw=d!b?Kh_7Gk*zw#Q;qZxQ+Hqe2%bb-8<@2G`uk6)hG+xR4#7JRK|H+Le z^20w2hSrc2GyMWHXRM?$nNT$nxibTK@n)soTd=Icd)377T3Lo9s)MZcddw=cxm!>h zNl`~w@-1{=Y28D>Zr$OU;aB_fP)kz@_L07htWwo&4C z(a4MW4CV*bL$9xKBM2E8{z^U`iMUs@>2DoAp_qjwxuR51m8aaPGSf7arZQ9IU~q-o z2B?}kIm8BR&uBv6`&igpF5`enHrB_3AIoP>St=6@VXta86wFxaR3`sp_;I7x+js_S zU+Y}NF`ZZQB6#V%c$TM^Sraoa4VzmcHv`0V68Td~s=14&TC{>bdiPW^YVPV^)_64T zA9ftq&iV`WZl`%r$K}hkb-_-l?snd=-sdDC2Q5)Q)$WW^vUz&(xDOXWXL$;}z=)hT zx|Y@htpkok%{45*#lqxyL~L_4(FMD?BO&T&?8HH$Vhbr{*O08=QRNbFIKPm^*6Pn} zG#@7XB3KcfiiR@bn9RB1q%(CLyblH8# zR`WCD`sDXMrJpkxpL9yla5%+@s|fQQCp!Gp5}`nrn+xxUOvW%pF8n3;tbmbf@xt4` zS+xC~JH)N+&^LCLQMV;wA#Nhu6ceajz7G-S)#^$tQJGu}hUSp=-Eo3Ntg|TuXfq~{g$v2zCPgdq&d8p+{c2q_&SP?2MX14a`YikFX)g6nC*(vClT%c1ZRHkMd zi`Qpz*-)%fE@f^jWS#i_{c$H-xGhsES7M=TE_3~fQDf0ob$ifp@}+V)=eoIa8S11H zJeEu(3!QW(n_J_n>+7s$Etk!tI|cl7>;Zot4NVajr=hW3PU&M!tJ@h5mqv@n8wL1n zn4!Kf&Y^<9R58wJRSp5Ec!`qPF$F7}STnH?53&$Ywb3mf=u^i*%(L3iH}}S|cB?Y{ zT7?Um;y+@>>Wlqw`!k(z7faNkn#tPkQSblx25fLWg}G37=R=QW@)a%yLp}M-W8SLf z?nW$n!wu2chOsZOpLy^O${3KaM5y9`Vc(KNSgTSbxt*{YP?>wkuBIx%VzK^<^I3O`{8NZ}b<^qOZMR{sEp68mTR{$T z>_L-9o*x8=JYq-4%FdQ3UrU5RQz*4EStp4I){J$Y#szBfUo!i>OzL|R8Cvl&6M1aI z3jR4gmH*Pt_72ZE@?Yd{{}xOs5{NzVHTBQxKSOhWK0J2+A@KWwzr_rMRqJ^fWi59B zxkW0|y^!@^BRaqaV4~jVAs`54uxyJP#9}p{IJ+s&0m?{&A)8T^@`WNf+NiV<-t{+F z5@o|0%Y^@VU&kD_su!3Ypm?aEi3y+strTBossE3;HvyCEy2=FOzF1!DOU9OaMr34W zWMwTGky*J^l}Z(*wMvVXmbH{**$OR|W#N&^7~8T~Is~#Uw*eP;>`$x?yIJI=P0=iN zw?C|up&LU(Q#6J)-_SUL9xyOXm+_b}LpwD8f9|_4UMyLQN}@-leDB3u?>+b2bIv_0 z7#|x-MGKq1j5ss2Pu>`koE*&WN^&^^(#!AF+p;dV{4qNKbyp%33PeT_i3ZA^icgi0 zk1Xg%8T&%^FXIVHy}?X0;FPsTwG}@HDOWtGo8P($|K=;ZZe%gb$YDn?5ki2MjnJz>h^ekf~BnBYwh=k zjz(}6{?^JWXT$0dCWGm3Ts+A$JdP1W>C2%q#{SryI?9a`g(nO|8$&LIU+}G zB>YHcM)`n4lYOAcbBN6Jf%#}Gg1f%xAmk^+99V}i&R~jISojV4%qWrah?$P*0f-AU z!2+tTPQE$ex1uPslDzvd=5IeX9=4*9^yxjNB&;Ow^Zl6bQ?S75>c0|{K&B27;sh`72zG6`0_Q8o84hy{upzZWZ-w?q z^!O^DMf@+MN1o?(-iOJg*HTAlAK1VtDc_5gSMO_(L9@Og%WXczIf%C`J`>kxXx?&10u2id8%bzY-xD#%8o<{MTpI9wg z0p=z*tPHJ82izB^;%IfYTAeNSKeyBKUGER#gTzi-P4KXrm{}H?U!-6h0KYErA;{<{ zDS0%FgRX>Os-$m35Lq|_#YOFkxgcp`4DNUW=6Q#Xqe3jz{WnBYspur?=0>UhUoNWS zW6LxNfb2vjqN!vIbvX(9719$NZ{!|GdK-bmNJY8xXZ?97ZAe!B*&F7 zj8$Zur83G%5Ki^I{*VBjU`N!jGkFm7Q`FhVU`3N0We>m|D;Nj|7)FDlCJ0xVU{%w} z6cS?QVx3<={xX$aO=bX-Fp!T~5>AvvNp1!) zOma1gJCI6DJ?G6Q_J;_gDOM^)1kl`*PNqlF#j&v>cFFWTzlQtU6Ip07>{u+atY3Dr zeBd^|J^S#~!k^+ri+{Q>^>CINuiFlkPwHkZM`AG>dXenJ$4v4yW$c-HEUsn@sa}bb zN;ouVS#&(F2CQGO=H}Kn=H``}pW9fUo3oyK#h|IPPnq(5*f(BTusL>Mt}#lmfkEpD zQHHc!)Wv#^>$wg*)`7}kVSP*g4X%J8eaqZO?(@Cyn1KEh>0i}k2m>4W;*#ZGURpc2 zn9VL8Jh-m}ll1JKo9ipqz*_$on=rwK=cWT8JFE|9ATfux*7pXZ(ce69)selGK(Lz6 zSA&7dRJB^oSS$6L`<0!yp9qD+>tQ<>&<99Q*4NK#E}@_0i)(c++P^`SO`kgV@;Wx4 z#Wgg@jNcJhR$k5s7Rg8Z6l^bJ^juAit6#dj{teZ#nYnHHc=Qr_IArX!c*cHSykmpI z=FzlWUYA@*fL~~z3)7FAFQFep<{HO|(aErPK{Q&IvZt_jtzEoV1Cy;y2~Z4L@V7EY zm)E^rDh<6teciQ=!bK8utpvv zi_v-p3j&BiWJvXSS+nLT1ZOp;=e4>Gamp2*v``IghLNwexj`f=)wt)Xqw(XhrM*Xw z?p=xxVq5rn@H_S`gaSJ7c~xKYdyj z@%-Yv=)5!di!JTAg8sckF`90aY3;r zF(~NKY3nYEdCh3(>3^{>iZZRG()#+f4_9k4G% zi5xQBVvqi4-KtY%x9UiBfCs9u%@1Vn(*fh&HJ2ZbC?a8NLwQksOyssoOuL#`3i)8I z%I)zq%sMdaq~o&_mCD5U_$acmb$(0T??sQ2_s3{95}oM$I{j5FG*msT9u9>lo>^t> z_7b-J0VJXw-#3b?(0p?uF*`oaw--^pPOVRBWYOEE_ebZyVX(z@Mjf4qMn*c&MZ30$ zHtG{seCx;$doScTdT8i`MT4jit$?mgB%N&L{IjrvZmlKH_>UA5n_WEs3eF6;W z$)m5XUsl(5Wtf)>f!$fAmWK#~I&vO71Q_Hm70F2*VHtpGRVyCMBF|NF z?`ppShrk@$1?}ITO|8$OP~m^QRLfIkLM%@Y(g%9zG8#i!4f|O!Y9Xi?XrID3pB0!>#J0}K`?Nwt0u+-as#9bA&VK|m#4{^ zPB+lhhB~eZO{2Rj=OT7`C!ha-q}da*vJ>ms@!=7Nd^@{sDCUye>GZogA2qa!{uHb` z^22B;)$kQFCQfk+v=Z7K(;|BvED*8~clamVj+2)15XV-wI2P4C#u#2=nCHdIyI+5! zuKof!Lkbz?x2C4M)h_6Gk}iZpnX}pK**|<4)kt2rtlA~c2M#B}NKeA<%N#RO`$AbK z;WwQ`CcxI&%db&#`f>`I=+`@Z_I`|42A;1ck@w|SFlK|x-JwZ8G@Hc;Rf-rLsrJG> zn3IjUNc}7{FPA?|b;v@O{~S^f_w%Qr2}0Ui7-NkD@N1EJF&Yt4Bc<%f$lG6r3(c*U zUA<-`t7`r1a7Yf3%3)vvvE&ZRl3FuFlxS#lZhr6H`Of*v_rtmCa_ip2VMy%K<|B~8 z-VEUkG2BB5%>`r;PGrcp`7F$7&}V9mu$#A!f|)D?dP>J4;l6_Ak3?#BI{hmwK|gJs zp=hcpSX=L)HZ>JwOCw28`BVD*P}=;__|)V)1F%(z&r#>z(zkP0{avky@*XwYisBf&ovRPld1PSf9KbI|a zzDd(n2`!2$Un~}nLN+_Tys6T)q_s&y(I#sBh60e))Mo!==o8kiS)83M(2~}si&-+d z6H)f(Emf89hD{V4PAME(H{ezN&3;tvm)wlJ-i61VzUCD{gcM${jWh??CDX}eLS?ic zD1$=X6~Se=gx8g8HLkqr6^6|2(%zMVXIH`RilDT+6zHWjIq;+Fc9(SMXzG<}{GN%W zHDR1^&ZHX1;sP64VtP=orTqvdJTB4g_B)5CHxoc1-nL?i+|J&^}h_WMXFab z#ETJN&6Q}T55kC79NSx-9a%d1&1|+Ahk+^Ftv#k-*>09zjwIDgqK%1oAQ%d( zv9bB-LNOAsMlT{kp@E^1wY3}W+T65a#*+X!0CVLZ{VAUKqnAk){DfQs9iA#qnC<=!SU z=pOjCw|lL~;v>lGogH(hDmB_|pr@Am-1Z#SYp!nOz{T36$usa6a|~#WiqFz?&x!oN z2?}*)C%rXx5X2;-jSsq^E5Z%@=6d11yzI1g3oI@99${GLBYA4z2nwI z{LRtmn>D==U#}7PdZEpfywP5*YbDV@9l|bpp{0(Ra1Fv-9du}e7Go{EBd4SkYM1W_ zhYUAa!k}f!-xwcN;G_$8T`qpq^mO!VaxS8GRU4u%AJN zzCnv^6)VWTzzP^dWU8<$7=j9h0(TG_Ng+9Pf<4{m_@Nr5be;0qG6X${qVl+zf-LE< zip7kC4&hDmW}Mn$2h1em{&!;4g@Z;cI=E1cok$iQ6=OII)Q=XDCw{Qs_d|^~Id12< z5jo-69U8M+eCV`!G7XS603UE2#lJC~!l)7#zIcZ12+0LWcaKxUx4Is_L zWMdU_$yf%E#zu|uSwYY<&*_$zO0Q==iH$UT&lEyRHo&nkG&$LXV#uj~LN<;*#RuG* z_8sR8r;7zf-6+#3USQHd+l=|V8e9bl?*7$QYu?VSgNLu_Z0TDh&ge?#e&czwZ6zP* ze6_LIsN+wm+DI^5>>MkEgCjL&NJ(L4lO*cLusxkpJKOT#Z$Qw8hXxX#CQIr!K(o7Y zKdJODjSuxB88l0i3^-^ z{Otx0&(w$!N&?hK5`k+@sAj5!fVFh9sW^=rTq~W1nTt1z?W1|teFgB>;4AR>OuE(D zZZ^>kp;bGeRc-LXMIUUqGPlw2g$+KGoll=T*ft6!~ocQDX$ z4}LRg+p6J@#uDy9Pn2pj5ef!)w`!RqR1x_kALz9B2#*kFh9eGUOOK8Op1I>d+?j#4 za*MTPKr)c%1OF5BggB`RFp9(mVjFdn7z+*#FYpH3b;;}C=O-4c)6p=8)~yF*Hlc6qUJX-22rNZk*Y(NqfU4333PVokF%COiB3A%NP+#F! z#nq}^wO2Q)KxD$LP@G@2HH7Qx#Pyq-QLK-kfb10Ic_w|3T;|!X`iR>Tf5=Z zkt3FMvV@|=)=OxIqiVp(nIIShQ( zK71HFH{62udaz`cdjsVl6R2cWrECMU2dT9%CT!aqWck+OM6UHpv;U_#umL?P1>Kuv~WsDNGNkOQ33 zDCmG|;GRJuDkBgXd!H8vtxJK>Wm)o?QP+2nD8yt z^2H?!8SJ&}vu4Ygs%F_n;C8~`vcjh`gi|@Ad|jcL?3ogwv)fT6L+Lv^KGJOEHM6s-piv+dl3zC6#iki!AA3tk+x;zqy@UUU{V+%M}vZiu4yoa zma~4Lib1;Q8NX05-dK^gcDuzkH;nLBfbm7>r=be6{OJDR#jXB3ASj9S#C1{2g^7El zTF<+WZ9Qq;C8Uo(F6BUN89J_W7Q84ib4AeaHy~>6t-kLA&Qq?HdbA_~kl3)Hs|U*XaL6k(mMm0lq6zFLDGHsK8hMc#P)lNsH?3lR z^a&9V0@5f=q>KB0hW-5v96UO&E&OYu@V_oF;Zei38>ID-Z-gKb7ajN(GBueBAW$s(M|@{2nJ2%UkW;z;!c#4Nwz1vduGH_64*G73 z?UVdz1%4p6AvWlZsGoy8MT8>4cj}svQXi-pD#c0g1a2OZj`j#k6GWXp}|8zQ(pU&s+ zxihOL;r*#dXOGCnZ6g(TnmnqBcr8atF6k4sw!vewSDy`r{HS^AOm37G4Zr3!{0u+W zOs8+TLpLJQ`D611_fu{C=C*w6G@DVA1z#;qK$|ac4;Ul$9(X8W92b8zZyx1md>=sW zq8~^0y-2< zD#`X0tP|!y1RtJzzUMygk2BszH+TK9bwx-6ym4|hz6AO5!g=q>3bd zbv-3Hz9f()I2C#T>ecW+#5G6q)`XMj=Ig%xRIJ7I_fjE5X&`kz7<2Y^hheP z6gvLQ^c)=7xLTh5vBh|Jv>L;O8iIN1Rzca}BC;ffBehgE62+r_D{j z_qyN`bh_!yO*^tVbIeF)$7VJo_9lWOM(P`p(A`f>AwX(;X?}b>RNRwHFRf-%@pL1R zs;(@I+J|6q!)A10rJ71KxIS22N+Oy-~w|EpC!_^636x@T%gQ1bOCXiiN=Fk{w+-oU}uU zMkutfP#g^}h4KGrabY18Y9vB-^6*mBUK$OK2ZBs8l81Dh3MP^I0|A!^6x_RFkZ7f} z81&X)(4S*U(ST_)1nuHQ^7WwWU;D zd9_k!(Axd`(fYSSYR`7Ah9)iYR+Xq0@L%=UP-q>XOJxwt=kV7SX#X-a$0xyGAM(B3 z$4n@C5#L1>APjMc!o5rr0xcb`nYstvu^+|JtpGk%bSVz5e49kT?sysOvS?YY~y|L4= zuaze!q5+2}Qo&D$mi`rr? z2$3$DmEB5nlY)<`1+~M0iTM)C$BksBoV!{?&~X22I$!D+0k^x4m>2U!+k9N!p&s?N zgD-sR(lrOGc|D#J$?=Io`ga~Nj?8JC-Lf?0nT>Sg~SB1UO zD4TYU&+OID>~-IbcP-r^Z;&nLlh!}#F|Hsd%SqqQVpa`!%1fpaSGmsxK~Pl5)WA{I zFM$^2>OiD$kZ%&>EY}tkT!0T;NMN*O52P`BS?YO4Ro{ry; zn2SfU^#$)e*I9x3x<0X9XI6mg^gTugNx#t%R4Q-zK4i2K-icGEHx*ZP!t0P#6CkH> z2p9vXn)#7zSr{j1R*^4+WDGYTN&q*KpfUffb4bNJWL8e_B1-7?P13p_v5$CMuO3ly zzF3!}eMVyD{;urEdvmj~8K|XD)wmE31cEkvB_`5#B)0-hnI94a=wBdzV=)3+t74;3 z70ri&?>g*9Xg0`|e>$B<1bH$Mi~2_+DL{tEzpj?ZhrC}pvX~6mN3}}#sxg0{o4nB6 zwPkNkCxglC$jp3{jbLMv;dJr%dL(`yb5OG}r*54n!w40KjRrt7t(DF{u@P*{`@WlP zU|Y__BGF`v$#=Vj0?bD`U)etwv9H#O=p$DnmNMWAV-2v3aa+gSyAPR!G*1J0q>;}y zwi-|1(pm=NAilgZW;)^pT*f;DqJOOql1?lG#7ZE#b4jhh$)yLf8yV%7F;(Yv5)IoQ z$sPgD1G-edVs|7PMIl2ty~P5Nuuer64xj0VIXs^GM&ab%(S>P^zBSB)o_BKK%IbLt zhX@IZCM(yLI{!)E+G^>&S}9#yF(Xl#LCTt za(~hLz89>fjFQkmt^Y25iC?1+|wFRt4}qXX<4`K*<{A z5&~@jXrY9pVwXb+&HWhlo_C;edO>HMj`;&Ny^K14*ZDdKhz*@bOqEkNSC6LD6n?W19CtTX7CNZ57Y~e>fg5;Gkwyzxyx97Z+ zu!mrJFZ_Bh0W?Gsnf5M|NP^b|-1T+_I`@;HlSBL@IO$}(T~_5Gj4EID8o0GqY)uw# z8>lZT;ZZZ5lnu_{Gj|&eRRdFGbjk*3kb1^G3`P9-^f)x}hb2EZ#L+3`SR)J*JGGTg zL-$T9#`Qa}c}!EZE$+4kY1;4CggD_74;08(3J(DKHs4=+LBBw6UwEO}e7Anp_&4+< z`Np{Z&{iaZfT>p*c2EJ=g$#KUYiqLPx&gfcuu~s=wScE?yb$#K#5<`mkP!)b2-ZP3 z(pbkNy-xHZBh=t1WteoW0;fcW5Y;4DN8ClgwQ&bjw}O_6eJsn|-&ws? zgKMMTe+}}hAh}gK72Q9tF$nG%t9Wmg@842Er2GI&wBCf`nCbN7jlp0vmQLL7z7ucu z*da4mM?LOY-I4CeN<$KzXfcqW7(PcGjz$#>59@v!$Ds~0<^)ZC_4B0bX051xK_v|% z$t941n`98wYu6b%4G{7kvc>=7mY5w1Eo_Xf1d(ejyt|q4jA2b?->Kp8ukJoozv^LI z>Sv06=pn9O*b}}j77WFju* zXJ~mtbST$=B0W45J7n&Ngl}k*ceY{d>yAL;NRQg;L*P()B!X0J?Tb;sgE*?6>&FtO z%0VwwgbD5+iy>7n7vY2fYLoPpF76A)7y_Ylj?_3Xv2L2EAbPE4X4OTbYE5iL7hZ3W z2=oC(h5vFPRvbV;oZ)=xNzVJSq4sP)(9UQ(h*fYCX}pqfYjXDT@9Y+p9xzAHSO?2_`Pg^4WgMRRmm#}Di{8P@S#k4~C@D5Mf z{0hR^oyiwZ>Flhjy0CxM@OQWTHLo0)cMaBhC8z#{W4DYSUIsNiXg{Ka1|iF3sd+#0 zgI!>G%C$m|bDm*I+D~uel0{)F1!W3lU`HZ;ZeiBQ!E5QUvFZ5q*jReatW;;`S<{Hl zaz+~FKEpCdKk@R#;(!14LuUDU?-&wPC&%tJ%hyA1M-8K<7HXPikD5m+b&2A!$j3XV zbJK=pgprB20vg19}ZG+Vw28na8NBa_&(q)9o9Q zr(SA6n$)S9>OC4xnHI{2_U5wXLwAoR_eq7VL_D(azsH;;XK_ zZQiB*@?W&R2Yo$)DuUl*=I>>7)aVPLJjdJ@HLek-gEjMU_F z|II2F!3O}$4P#xvRJV2ojDuyc{PwAA)#<9=KW~i`OIW-|jKgdImcl7LvyX?BKlU0~ z^Bz$jxoj{J_VZeIYXJFsbAdoT89wg?5h&yfTpo zZg5p6rdJQ98Jf73(Fo;Px&i6DmE=zMLu1qK)zG2!K!wLsV`I)zMM}SUXyqX5*y>Tk zIja!WTpvUA#!g#Lza~hThxlSR`f!HJmM1x!JSq*MRe?2h;!~heLv6ydB9R{rNie z$YPeM*_m{F&smkyvGysoOqY_HYz6_|`6f9R6`(z80u5@LCToW5=-hwT8P2H>Ni4^oDaKTfB=RRuvBzD@R;Vp&Szj{t<&Q<0e zw?qN~W`>Wff8tXUnF9cK3mv8sGBu5?1jvY=c-)Re?1~PMs+?B#$M1Da0oOgv2l;|~ z4}2;!^;3o?=zf8gzW^V{aYRqu25$h&w_|SC&=a>;=wcQ&4@9s)9{^0*5Jj8gm6r18 zm8!hKiJXM@3kZK5oYsqOS;#akbl2(lXWTwpKY3#PGh>r0qlNq9p>T3CZg2W&XqfX` zE&v`cSSH&r%XY4#Fi9#E2t;m47JeldYN;OsC>)@`U(LY7j&weB@8g#Bk1>Q;{|quF zhtiQmQvs9W#{xkYKtH64Izw_%K{20v{9eA9UwC>f)%muCc^j5_>jQm?`6dvN&rEEr zUj8G1+=|4^2}Zzu#gX&`HOT6UvyR=oScO7Ydpu(fJE2h2uRszME{H?M3PIQDJVB1J zN(U732pHwpSBsigh^w`TIH>JFO9p(AoY@Q9tN&^msPzO~T#`>jX^*22;Qwx`t#W59 zKN08)@3)Y@y}|R=gXRviZ}PN*X*}2He2e~i>9^%M0;kh-1*Eg}nTDJ`Eg7KQ(+Y|& zOr&(uAD0*L4RpwFPmMf*mzMTE27Z8y`XxK~A17#B^~gg_-fYm6t?2v*IwV4R1>LuYLtl{-~UtLmZv*)9W6A- ztv7hH4Dk}8C5J|0w&ZxDKCfp7=_uUq`gri}YO=1a2q41vq`#iY+(ysxEpU@_^d;Y7 zc+*y=w#6T}v5qgI@Zed#C3g*>mbb}=}8Q*e0uqS&{tR}1|4v+kdL(` z1E^_CK|~--YFwhr00Ift%*CBnApiC|o&;%|b>1LlZ8(|9dJWUn)RpuU zSRWv#N5IN0UxwdGyx;ub z)otYiecmTCv|4UCMo|+uqVdF3Z!i|-VdM79t37V>vy)GJ6rtCU)VAY-NH@M?)Vud8Oiyz`{E!8`Vi%`Y54S-R0EGHxgLL;`zntoui-#;@m)%iPESnea@jymO*A(KK&|YqzT_Z=2xw3DJ@4T!r9_;nTZdQwz z(e>TU6EAbrFJy}Fz+pcy{T?rO0n#&h69S~52#2C}7~Uhv!6j$s*f#k6NN6(9IE*OU ze*E8JEQV&lZAbQm)&ocMZ%_{!#J=NjCOej{WN+LXi0nxsIdR_vc#vX0JtrV(QJCef z##i&4lbKRt9@MvC7f7PI=Nuw>u7-^I21F}=kJR`SPUdj7OOM|)PiaQzK28zc;fVB@ z$ZP)To`E>pbJ<3PJCr$u7>q0My5R~_^6bC~2Wli{)03bT*71eOW!N@|;Z`lV& zQ4`KTda$6`Ps`cu^!}8*dgdA~sqcqXCOCi44g~z8h@lGDYY2_8QR6Tas)fG@LcFbC zz+D4BJtP#vK-=a`ggM8HS#$YSD)LHbX5>T~#(#ZTw%^D036kx*urjjK&m7 z_KgzWednE;^I@yKtFJXh!s~3pW(7aFYX{0$`#_yAcR(TTZmsV zn0|gP8jZ!~2g$y=a%c^{RDX=~t&3N6XlEYwy$y7zn}}FXIH4`FesL2Md*;{?HG_o3 zb(xi589Hw0sKPq*l2`5~^Quh2nSE1}NUK@WbI>#KZc+}Z&{xiK0jJ4PTkp84#1Ze3 ztf-u3n1Xi&W@h%Yq=cE4o~hSp=||0_65nx=r9JaB_!RVauSd?>6<`^caqwh;j;?ph z<#l-tZ$z$Cv&JUN*+A@XG-f~4yZL@Z`{cg;Kdq8(kqOqb8tUeFz#sYF|7HL7*I^G; zf7AH~5a@({hRbHO4K_h1?_C9XU7=shW-wkb<(qslLw+4m~wWsSFOz^*2!(H{_Zerk%ARBG;H=+pHUT!Uaer6BS z5n5zeoo%uzt5n*vG;N1kDj0%SOggh%qg{G=nRe>hGR@Nm4yd1xge6QUa^sCpjLcRx zHg7kEx!X54DzhWVWgmEM@HzcH$3Kg*!J2r+ywP_WwSaU@`zdP7tElNCdIa{4-Ww|$ z7%!}oF+o?Qx0D+o_`%kTQ*OQ&NC@2@R1)bC79G-H7(~xH8^Zs8{oYJ8Ho7ps|H!@+ zGyBhvp$Gx?quIHTWO8qG&ePc`7R`L`2Qt|Ybbf#t5wS8hTP?by~5uA8KH2Q`&noNW#IQlT9 zvuw7Z+Tkij8g$<9ShLSe@@tFH=m~xu(xcCI46stL`y z5Bb#IiSYr20o6f~22y4o;)hGRSgk>b4~Q~~G;n!_J3z;HFUd78lc>2A47Pw(SqeeH zlkcHzW$$gObedCr>)uD`!9^-@))*Ggnlq2w3)#RpXPW)FF11ppyTq$=#&f>qIR;s& zfuO;oeq>^YZ$53_blN@DpkT3WzHj!WE^XT43pJstnS<`B6xq3l9wm`k=Q_l6JmmX+ zR%alD0aM2gkgu+bTZ@?z0LoC#;P=3h8SJ`11=K--^n}s_0Y-7@Qk*F3HPKJ0S#SX| z4JIC9LZWF)-2J?K;!nFk?jD^tWZvx0T~N*gDBU4R{{&co@QeqSVYGqaW_f&Met=JO zzS#w^jHd?wvtGW&kDs^{Sx|H_5+7YeecS`CJg8G;W;`p>%*F!j-bF@+z*Scy5c!ow zEeszUsS^lOAZ-(yJ{5~K$(gW`eVaep?`T0hGHBe{0UEdD*%o+LlMD=-b?)1;>HKZ0 z1sOjL8~=I86k*B0g}mYzX`;?Tb(I_b@WTfNQx7u^|EM?MKS|xXTDPm1g?d)5*_Gd9 z);wm$dz*$m3Y10c-_2Nobf#W!MzFlSf2E#I2h_;#gu@VZAwMyFZR7Y^KIZ*X>A>A~ zZsn$%PoCT#2<$(3^5&aXa`xSUbB&gfnOY65QM&D)L%w8IX*bQTUZB}XVYde4)-(g% zp(`5$Lh8~TU1|liL=lHj*Dr--$gcgkf8^#RA|4-j7-`#-Bc-h*OJzG)30;G zyVUvf*+zp1RZ6KO68mxpt;d-TimMcbY?O>~G5wrCmNa-Z?mi+}E<|bfPth|Mdpm@i zH(L(d|C=1#f9_ok4#Af@2U^3_21R z=(1-jdm4Gx@DZ~w?TM!|c8#Sn@Si=oo||AC0mNFJl&;+ck`My{T*Gi1v;TvonB`A3 z`3Amea|4;Dvy+dQ3wXF%(aFpVS`5QER6NKOPEWg`}|bWf~S57ui`L{M>4%++gC$|g(+ z_pcr|G<8v;O|A=wc9-Nio#w3A=eN=cOD(1`!p)c1?;FKJ(4$t*rMK5pNSVl>lk&JIKiB%l}#BMVnrCNm$= zw8rGxxYl>4@8V>1MA^G2#TTGddylynZ(ly&D(*B8Mr1co-eUAju*Jw@3znX68L^lpoh9&uP>cdX1v z3b~C&GL`{o`@K<}_Ad4wwu`b~w=)C1Q1@jgC$q5_w_{8io5_q#n!sAVvag%1fgXZ& zxjq^N{J?A=A!oo(HBX}xa^51KB$3VT#1LS?1cWWvilPx!vSK^x-^Jq}jV6%=CK}t> zL2^CdRMf3CPMTIkJ&R4uP&#=!k$f^qF@Tt#kb3dG8ANOJPP8MKyey4b&HsG@fhLG4 zL4;3LVr%wfGT)ueJ|DA2^FR3&u4GFRc&Q5Cr~3YlSw7!o{~tQr{)qV6klkC z<3H=||Ifz5t3rCbS)4HoeQ1`Q*m?t6Zbc)h<^wOJB2gTp)!FCOcS3rxPcVdN zdYaKgC;ET?aTwwW#C=HdsWw`U{&?G6!aC5WOO-&T#rltUInemv@K)cg-nKeBE9_6@ zax$s!kLSn0X1-CrHnV$N?Hy4p?PMjmms*Yx2A>8M~v*^4pm z*YBB8(S{%(>4F>ygGC;`#_8GW85HxB)J`P~FH5 zhr0S9jmN}>AGHIy=M%|~C7l*N(Conu)b;@Oa{Tv|` zz*eL+nvq%jF9-n@sG$?bXUaH+#Hqz=ObjsvBeiBj#2}HCut0$XEPri1-AbiK=Sjjt ztMk>fXL!9K8)L`ret!+RiQCW$?QH<=NofUTbiB>**t6#^@xC3jMH209?{1(s+8+7AEtAV)Haqx#z@aB8~GV*(f(^wB^wges# z!d%oLxFC6m)5B6h=$*c>AzTc+qwYttJ-J)zu{l?>I@2|IUe3<)%4(JM*I-xU9fT>5 z@=Ohi-*^u`#&h}lF+}nN(`jtr+#V0+^FgF)RA1~KcdyR{1GpHEhw^`tXTHxke!o9% zxKjN6Z%w{8`SEw%vas-A%+BUxsZ=bVwPUD$%6*ja^gOG+fW=s%isbhA2C51N<12>` zuP~m-d(4W!3;Xw1k^L^zS>{Li@%{VxO@3P)Naqbx&Zj&7`E{jI^L4LlPmL9jF27Q( zR`BKg*cA5RNMUShYAla7Reefw_>9F7j|t{gP(1wKc=!9I^oE26YTn6F_TVQ18CA z*8P@{Hr;~ZXU|9M;vRm=A&za-IH~L@+7Yv^!jL%f6>)MNvaBT5wVC&q#RPztfQ>hR zkczgtI`z;sD4Csp$(Kzgf?J`?NaFZIvDp2EiAl)QP0qf*edu^%Boo>SCX%QUlnDmn z*F41YO~~7m6NUR@F@BqR8EqFWLq51wDvE&Pq)*lWni{}7lz6?Y-(h0nu%llk+AUo zd}QPV*6q%^#wwgZ@SNR@X0y?z9r-8yT*KK>z%|FcSMbaDBeyUXE09WWLiS2{H((qv zH}s-H3Oh_0d2}y)g|vi^IpG|DETHiB8i2N{lVI}%uaZDR3E8Lc@h?yhhsQCSsPq7Y zm(eF;U4sBx9n0P7)TEMSFfpfP&^FCGtkSKkFpe8&n!SG9K!y7qnvknMN9O!0ceww{*&$;Za&4FAQP46e<J@Et9uO12^KpC68}VaP6NHwmLOD z;SV4?BT#>JVB0xQ3D?TyGl^IxpR*_?cZtd?1==RmZ&Uel8ATHdW!Sf&(Q|aGQY+&c ztU&MaeTTtVOkw6Z$~g%foHf)ioW;zPMHd4NWQuOA1uqqWOOye2=0^_h8Cg>SvSmH5 z2C=oIFX*lM)xCS~>io9BRY13R)$&`-Eapp?qMd>^CB%LD;6vr28hAxR0IMYJPWf1rHzX%ym1RvhX zp+Eo@H~gV|{weF;*CQ=lXyv=Z$e;8qL=(}nizuTjaRX9?w5&t0owl~pJLypJxn$@| zq{jR^XAab352*h(n<Oa635^ z%_&e(6v>2D-qw=hik9R^IqLI}1_(w-3419PSIO&WITP1nQWhQPv@wuWP+Z4l2uPpt z=o*%5))xEo?X%o=kN+U+)hK3vi8$BHCMR>*@Lj+xXu?K>QUDEak3hy5TOA2e<-CK7 zsMsD$He=CG_r9a^LJ_*p0*hZ3P@Ji#o;QQgshJ~nf+%a&Io!8-A`&kan1g#m%6{Mz z)5T(JELlrsaE$Yr)N;~qeSiP6I)n^zs2B#ZhYV(eFKQZ;LDb(Gyzl72^$bR209>y! z>><|l`5ms7|2e?^xQ3b0)L9Kp^ItWfcg|^ArMHxWVWPx3opq==FUrs=Uk%ys3Dk-G zLElefB(OAel#?jLLB$g_db?!N(NYKJgM-u6;`-Xk>Ix+0)fHhUIY3!R3ui_hj^_|B zJ@>Cc8?0xSo^`81P$6fEfuF#h(0hONG(7=N(1>-T`YVcDC=Q-Xp7{3J6Z~-_tzA}_ zLKzB-Fq@jbs>*YDDFu)gO)&w9LB?3q4#;?Pv;l8%T&zTtCLZL=jzYy@k8mp{X9kELC1#)6x{OJ7r=FRfLB_zR zz2ibyi%9N;b<--)9>~w0Dp;K@Y`SOEmri-xqr~0Xy?xOPp4ktdbfbEbE<}j{pELKG z{lLJ3(YpP&3Y`<)1~6Asw{=||MH`V%bI4+M1IF9cK#2Jj#FWv}9F>d+Bt`hG)8DUe zsH!#>f>8Bgk&UCe4{dO;d`6`vS2+U!rY5x7?SB8({^;M9Mow%$weQeExhhWII&Q7m zyl8YzP-2$Kstp~(ZOF*?uY8||tm?8~%1)43VU1s{*DAR~YIe0&cdVF29Ie(5BD-NN zzp|ExezG3&c3x(IjsC9+{ui|N7i3NIBk{6u*24rC075+`j|8Q~%R<&6z3EF538oD^K_X znPNdIVvdf&Z(IHwDNc2V1UI#tO<+~;YrW076n~75>+k7pm^jNn$`9SOM-JlN7aG3 z#LV7GEE0)LFI1=E*E25^D!)W0Cu8wgtQ4H)Q7j%Ug{GrZ@W7A9D*e;tjE0T3;Dgki zKSe3!?t4Pv13WlfE=TPn6bF`rq1eGtBt8>}?^(eB+OzRepd3YV>dDFY^*T@3b!g7Q zG%_v3%S+R-sp`TM>bS*AJZ3X--1)3=(KmZgKHUkq*^`!-v5Ov;&JvpnJ{=?|sq$N;QQ6kBu*M z{+v(p4O=>^>hp$y_U#gb$1+V;P3L%6{=uG(NoU2w5EG*p4w)? zQf<>FWe^XTdT{7zxqY`stfro`U7^1J_qTsOliAoH@~y8^GQ=?ubYlZ~A`f{_ZxU~L zI+NafAO413laN~d1#CMl?@awi_wl|*otO5V)prlS#3 zQh*qI3D9M6HR@){2M!4j6LF#PReFg^X+UVY=%?{x%w#_^i8QdWn5Dvp=MNvAKO*VI zzRp=FCEhTP=WV{{wtbeh?>3WceEtnkT+pC|$G6NL zeWYLM6POAPDl61T5uwvPt-IE5A8D!fu1O}_-m9$_*|$`zo`6>R_ut`#enAXKn_y2xeC<4 zv%%m?KItzUh6W>;2ILCfO5viKKCu7l{qytSsd%AkHCnBKK%{}7Uv1Cn_KA^vBEw#& zPv91P3rflZbQ7kqq>U1k2#^9^25+~{4a5ZfNBW-+2~eHWLwKpZ+%1j-<}&i#7ooo; zp3?v79_suC^(IA6?N~jQB;`PfLyZ{z>X>-LH?c-h2(A5?c8;J zP~AMJggy6tv4lp~6><;NG_UH&`nFL+aq{h(+_C_=ih#OWW$ssv&i0!V>67519^2y8 z09GYKc15)AbwDIAR(A7FG>>Fd3C36LK762?2m1hhd}hYDrHfF{73c1Ta%-Z+GwU#1 zOih(b#q~^_4t)QW<~H1TpX(N z`SKbt1Tg&ec})}$O4`QJG~BDgb7OOJOMB)OiWMZc>D%(*_YlyU@-V9R9YH@Fs*CmYn39aC`vdqG(}Q*qRM9nYAX)93f_$phUt-XJTbAPMwZ5taTGd?C$eu7 zZ(XZ$4KxDbY9g}H+K40;!^p~UO+{qm#kZZ*5aCQD#nQVWKh&92IvvM17$d_^!T+~L z;iJ7gc}*w;Me7DMp*Xl^a=A@8rgj?dE9p0JN1EZjz2W`g@Kff$CLM+>2JTr!d=_XA zt42|{f<2mOSXtY!t7TjL1AMoOo$HG5-2S7Q%nPIzhLS3gTmJGtd{`}gSiKh|dMyiO zdjCiwxo9)seP{pZCqDdPjveT~WB1+*HR=_uitR}=Elr)I9jjW@Vcv? z#5lnzr1N?;KexUas91PjLjnOVHyL)w|CvM9f6d=%9N?p z_nyhx!NjAZ{&YI?bZaD?vc?`whCnFDb&IaDt*LW5eaTD+L!PNlqFfU>Kp99VxfH%?!c&a}Ljq~@Q&qRJZ!yzvNzM>PX zLcN5=1|W~}4aK$Yk12)ahkFG!OZP`H@42l=kDUr=q=h_*Ul3sT#5i?SQGXansG{cSh^*>e-?&}(*UO^~e-mDUE2f^3Z( z$vJ2{y;p}fv-6cxr#4TWI)Ca^r*-Po*G`>koH}*RoZ6-3P~6CW+s?kbGd8PUSh62p zUm00RYiUawI$s7Smd5uTiBQ><>N^5nd`-cTT=_b!!K1Ey$O~`Xz-`&-E$O_kgt)UN zMjT_!TF(xdl4Y<2fk1m(SD&TBDD@mIt!sGnZ}>yq%`H7iTUrP5*x%4g2(Oa&Ht=5H zkmL$Cp(9?c4aE@BNF65vDyBB{+u!mQ=XHgrb77fk?C5h_4t&sZG%Gki@1 z0YZ@fChFrbpOr^Y{wK5oB2;-m%9DLDh z%t*+Fp1q=Q#n^N26oVs15D&cSQpc`@C@uFncwYj4rYY`eHOWk_o3%vA{?=dMFuy zy*7C$njQ(nQt5DJWcXc3m*@B1^$EyS6%%F!%qK0wA7n1#k&cvx;iSS`%VM&ctuNRM z_N;h7W72R{0$YT+Sb;r4{5)_;D?|ZASjicRY}fHl3=LKdP=r!5Zz**MN=+a}1H*`u zn-=~{<5UU1qsm9U@=I~G&Eakb5Fj3l<1s#dO2!=;Y^Z`_nbXR;p07?ucOuIEvuG0I zZe;p##EtlZkVNHwPHWoX_)jLT?T2q(f%*)%_Ry*V5S%!4ST92lA3EVZ9*s4#iTKE! zmXz~pV4d1`gLAVl5o*LCY99J-A%F0wmiFwR|81;Tpj8dCpSmrdXF4So3=H|dwOFdWW! z_|(S`H;7dXW`3E3fcY%6ppBd&%gSG=BG+TFVyhSI(a!d$eKa8Qsc2mSNAKS*ZPZk< zwoy{gk_G+0skEz^X{J;E*!c?Ts5da5N|5i*tFyiazC=Be>k4%QA6{_QwW35NVhTs$ z@arX~@adu!QJ}<7=h5Rcx=Y83DbE3^t4jb(<>{-4jwoF zQb{ta&N$EE7(B<+Rw;!oD@p~^K6zsG>Z@1zbg{U2gZ_-bOY_aMzPig*BvFVoUY4XX zvvgyL!nBKYbr%&lHiC}uA1G~=Jcig{h==ATM+to_@9_`!sB>)QfdlI&HaCia5OO)i zV}VSyy1Gy<<@f29we$`}^>(|28)o(&Si?JzY&3{fKR|KQ66{)wd#>YC2qH<;kTEWk zp$C_K9ii0uJKjF*O3w@8ek1>KZqtkI5UA!|i0pamuJW(RcGtBW^`BYG51iR>RUee% z94(0VPz%oPilfuu+N16EN%w5%R&1y{G(8R7441Fl-d8yjP@mfNUipfdkFM>_Jqp;jE7Dm^Xpey>P8*QMG_NnvLjOnk&^_UAB zInenya4QR$booUJ8C89tT_C`cK@~D#K0_XdkCQ`W)wu6Q*F=%g|i32sez_p?KtdcbFF4@xBx@P_#Nv=OTgdlT_C|fI81lLd%^e3^*P; zk|ShRp+6hy|{{+R%oWx!E`(v3){0JS?l_v zi2hA474hE^`x~}bCnhH+R{#2fJw}W@dpvny|Kv^3BW<(p%7C-3t#09pC6A z@G_XeG|JRf$YM*dSR@`na(&6MRS}~-*F}4P#H<-?rgYXZj#lp^IOC%{ggO@$#Y{rV0`U$3ZJb?IYvavm+z#rD%9IONckTY(=$k7MI>TGJ^d_ zIC^Kitj-6v?CRF&zpM2 zeL=3Rc~Apw198;Al%0ef%!_^m2!T{C-NS6x6b3yd8`(K0-XyS0h_KJW?)=_1R$!?Y z6JSH#qpu@3gDeJ+1W%P@HsK-dlZoZkNaXfp;he!07ilE88qYN_-m-R-{4^lrI>P|) zQu3&1#D&A7elvo?LqGoGp|B3ta~cXv4ZQWO@LpBoHfZefKER`dh{yx*V)1E>xE3!( zgrYK@$-TKHsQl%%GP6PHHOM@JZ)Cv5l@{@gYjA39Q91(TDH#h;O6UM(ga*}&HKMej z^|`+sZ$u72(eU5dLGU}=(!?SE@Mx2NeAP?7W)l-iKlinX>tC0^Q@Ge_cGnth*tB4; zM9!WWx`jIC<}#a%X^;8Lsi3JI&ylzBu3vv@HXgm%Xp(iy*^HZ`@!6whV9g#AcxHxI z9XA6U>AY|=GZr-WVw@6Vl|;IF`Rp<^w)2qF@nL_D0Ivmg&?Vz_C}O=V=BgV-2oB@# z4;S*0_l-L+(K{>CcETSVSbb}A^K?ml2a>VoIv)mT^ljMIYTjR`#V9B97kJc$hwn0U zSw0xK2$XKaBsZSM0s;@rbXh}{aI36k!4e2P{!+)W7J|`hTYoa0*83eAx1gZ={nG}x zr_Y=@V~+pRY>n4-(>mLF&$m>jCP#jhAm*K|&UOpO;}auUpuWcc9clL-{GfJmukve^ zZ_lzXt5w4~6b6gB7T$m4Jq_J3r=2~&b#fP{8BSvwdXKG^mn^P94wB=lvb!wTlfwfo zk`GyWWjqPsaRPzzV8?o82J%>;`C2bgjwvKw(~t-C_AKdbRWhNsXnCWgo8QvAQnz`3 ztykW-g)4WQ*9&;P^`4Ujivxv{0lMj}^Lk$Hd^Y-*Pz*Y6lQ-bk;3Rh5V%P4 z9gRgUTp&w0>P@ZA@Gn#}=EDG}Vdua`fWb4sJiXv`V6&`{#o7S_THA6EuBicooE!%G z_c(wUYy0b%f!ZD08SOC?9mpQGPE|l;l!(;Th zwtlzXN)}7^1m+-l=*9b19Bi}%pmqBoHz1!>KL}J~TYt{kHO)|)rgzwM_eTpi_dn9x zxh_87)*ZJicu5ZoNMA0kZ&xsGZRh(#cSAbn;<@Q>Z`ZDL+y)0JGkEG!adM!omoRVx z&%FHpgc5phr?r)zvOm^0kd7dWt_Fv=;v(R9AQErbIj~5uJm+0teciX7 zqFf?EO-((k@vAH8UF>%U5i0uGf+Z^n=S63_r_QK}A`$n`b4Vrj6z>{IHWqT4vJtzp5Pga78t zAm+#8k04hq>~i7ABL?^N<1M|@+nyQR_Fnm=MB=tkAQ1a$C?P}0dnEQdO}C8w?v2CY z(9OAV`C!-x(GtRC54acdLtiNv#$6!9VlNL44|jn8hyV`I{b18jE%ArZS|ukVEG4}% z#JU+#HNj@1)l0IN@9dc6zg}Q$EBFCD{&#)xhz7)lw3FxyZNVYj-hmhws9Cg z9H|4<=X*ot(n3{AiW2TNf3ZPuA|Ooyb{PvlKns&Wr!@`+!jVd2bqXZ?y zc7Iy^JA5BHLG%RvS@<7dN00cA!al#c%0&!M=taXqHI0=|r7|8(rK00li=!5YW1nxz zY8E-hskfm1^XY{{o12^SiNrj1hZb(phWJ~Uq_hUBz1$9yDci#}%C`C^^?AvkhAhV7 zQvz3M?dlQSD2kC;Fk_>>K~0yQuV|*WpzD<@T?x=w1`Rq2Z@nB;e*>e$gVQ60!pKPH zi_bs!d?axSZexMzKqTi77rj$Hm#%Py_ma=72Ak?RK8=@TG9$muH{jt|By}ng`6aQJ zLNb9g*?CDn{{Zc*Jn?{efl@p|U-9SI{~$%rBS)&B6yuNJek23XRqAL{6>8bQ(V86= zO;1nWqE!^8)^e3IY25peCqoCNh)TxtMNUMeIL*l0Gx`9(6VVeQ{YEoyN4NvTVE(?u z`(DJ&a7Dm7_^=%4hZFcAAK}4?C}iss`tpVEivu=7ub|>?!S4cyk?ne105`SA1u%ie z&H_f7M8uu}q|tJMJ(~RQ+ws^o21vnMBrPk!4%rTuo{Dn4-Hs)bv5z9wDG%3hL_F#7 z;D_-|SSw(N&|?7qzja_eQzB~Z!mN*?)i8lRJm8p)(TEgOBMj8BG< zM>qM*Pw|6#+u6?Jvp@L*daK*+^jq2xhnK2PArY9{L1eS;>9G2pPrILc$@gN+)8Ti2 z@Qx4SQw4R5uOHr5$OkRR2PxnlXE`%siO!@LRBwS9qtMwIg-K6wQ~K-F_(bAtDv_L2 z&B*dhbNDST2jcpN^3nB2(Npv?H;)Y>S>xV zIy(rAm*i7qLCCv7<=ajkM>x=@oUw!HL--r)!S1XVT_m|%5f_K3a8%D8qWVNzNv1# zLoti7%)A~Cw}6#{ka^5tK{)xU`{_^di=Wb0RI@|>4j}sv5aSAZtC7KAoW@AEuZV1L z=9*6HD|R@VoMk{ketWvCX85?QmPyckP z=@-Yw$F1Z2oE_gK&E0{@u}#}rk?zzzMARX!JBjEvG5~5t!Y4n;g?>r@#A%-W#3$q$ z-`BwV8s>c@v^t)?868+L#*;Zp4iMSE=5cXeZ4oRcM+Hi7ZF>@jeCqnwQ0DOfRnrRv41~y(PCxhguDM`8yE*`)e#?q2$kgeBAb<`+{q6G#)!t(? zNjD7J#Vu(X>@ilM1lu3?yLYSQK8JT8>V=b3BmODwJpEu??0bOyvYt0X!Uku#aMuo3 zT?IKwsS#GRHK(h8;|PmvS@#=ns3~F8-CHR9cOU1=y00dp?0B19Leo#w>+z@tLo{Bm zLl)#X4LMuVSN6@6qIrFPK3baDH~cKcH}^}j#=h{&J)i7+$HiaY{ip}dT$90* z2k_4prDN@JUEXbFfE1yyhP(jzv-7);Y5vtlz?kN4kEvC#asu})`h=Xvb^dw_pdvgI zn{9jxoO-^y%IGQ$$@W}^XRFVecXxhQ51Lx-e)kieclUkO;m?02aw)$h%N!#Zt!28O z7OemmIO<(aJJH%`Uk`o@ZvJS2NZ#HSNb8($Q3n2~+b!JfPAYDHlA<3 zzaOGrXq$fhf3&>`m?T$qCYm>LiO79lYR{~!s?6HDGAp|(yQ`PVZmHGX5|Ti&HOANM3oe^>4-Wzv0_uRAHa{v}y`&(F38=$Uen21}AIX8KJ zfFdM*>swc&5NEvg$Xdx83Pxs0i7zaiIdca{;^9t9()uvPA)5T$7Zlx8Y%(zDr%I=e%7%*6gB0% zHf|r56Qvk;u})jhI(}RB{1@${)?fwqcZc`(O9_WzmvE9Wtd1$_F#oV(X2bav{S~_m z9@;21%+7QS$EfjW4x7KX+cF-b2Fhh-DZ?-rPnfasbm_3d1LHAlk#fcZEpr-gw|dp znP|+FF+&g`E}GWX4OpW>-(!w@;Li}p8BjGe+MwuBH*%rk)oc)3s)^Mag@H8lRyP*M z7PoFe)L%6{1>N!XdSeQv3bV7#OljrVJYx^e`}2id-q;HGvsQ3keRyi-_~!XrZ#&jH zdUS>s-ZMv!ww7_EsQ-)bTv;k@O-@fQ2d1Ydr;M|q;NtQ!#K5E}ca4_d)@^84;9JTj zeC>v9=+?qeQLOQ_0Xhel&?0}*7xsr8s8>Yt%Uh?5s^IfEGDBYDNs&~TUoPiy_66rz z^5wZ&?bNASZSG*o7ab#A=c)$of+^1Q`EZ~U;t+VzES1Y}+%Z|66$hQLP{)l%W6}n#P*C6YEJhRXrDaBJ^qeiWr4?$t0{dw0$j(3h|K>o0bD4&T!-d zv^$028VKzACrV4pjbZ1)natE15-=|P_Er8~zHl$jzAD3OaA<uR8BZr7>KcD99lt38o=?2hL$o_nIk~uK81wzl42NUx z$jzbP>BXuM+L{KC>iPFz{^Ry(a#%FXnqKVaBC@DJaVSU+tLu~+f%g9H4`TUz><@6# zW?X%094Bu2e<`#+4g*?y5Z;V>ESv3rJV%}=lga%LL2z;gW*?dp*+vgA*+T?C$j!kC zU>t#w_z#*C+a-dQPXO^j8VtcO5FoDVkEdp4yxy6asV5%_rjMn(^+%Td))Mq7uzXU{ zCCk73NZp${mJUAjq&C>1@0_b~F`0cYoGX!g@T9J$->^L$YQ2Jcu^O zp%j)&3{3l)L0OU9i6j$7J2*evG>2OqP8n59^=t&AQTt3N(bj$0!EH;$pjC{;b}r$h zPBenM+ar+2ZYM(3%JS}x&e+CNb?KAgfInIL8z6ZS4}TM_fj|u-+|SNawIn=}@h%KP zwieyoIM&mdcq_21^@ekRWk)M!OTZvu7Q89Hj)cM?B#dSxlYxg$!@oXP&eXSPh%f$6 zj&GfZ25@3>ZEfon%?hIEAtDM))e>o)wzal4DQX$LwgC)X$VIB~hX{xzl=74IChuVJ z4FvatfDX2MR5g`1N_(CY zM9FR0!cW#}OGVwnP43~S$9P2e#dCy2_!S|FAA%N^JS9e8b;P)FF-JC?Z< zLFm``75KM`?3jFtsVl>L0t-Fk6mTkihO__+K$p}fU`WhT9(RJKyjn<<9&CcnPG1tx zW$y)I0Y>e#U#Wi%>kjWGe60MNpgKy7-v4aMe^Tx)2)1wp+j8v?PwYwQsdPlan@BGQ z&leP%rPL{2`+{T+WOo$@>4{ITm&uR0-oO``h;+O z!j?!8e{0us060UJ=@MXaE=8te#pQM3cg3X-ij6T*!^tkuOzf>JZ=6+k6) zDj;_RMAoCZ*=||7bRP}uif}UeaLVUJ`{|2@?pOLR)a)^Hx!#n zz+Ixa8cKN0bYe0d^84Wez#l=tE4Xco;6WjpL?}L)NSoe-_$2b0nZ#5q#0r=-oc|{d zVs)}zHv$I+)>It+*}d^83(gH9$_NDfDqzLJ8Oa)oBdb4PsDoMg z5d?qpqM4bA1G~XI+|Y(Hp}5!UN3N0IGBJ%73L~a)$ih)(wkx3gmO0{EKCcg%(W*%h zgY;r=d+zIhQbvv+IAq)uz2YmM7efcwL-09d#pZbE$aygfqs9*FUay%B_Jj%U(g2OY zJPJq($*5^KY|;cAcvYw)GOh@1h!=WD(vw^BYgV4K190DqYv=Qr9O>5Bw$g&bx-IfJkuLjIzL-(sN!B9Tq*TY0H(Fi@mBxB z1>!=E$*$nS1)hg%ib{ua?ZH`-p>@WP(3&4=Acq7S1Vv)Lj|B#)XSZdeV*BDqDePqR z>WrTwtv7ITBbp^8S_4rn%$cr(dWWWF>kA@rYa z(7uZUQx^}1B_S7dVTXpm6PYe0)_PyQ4lt2l?txzI0bAS(ucpKp<)b880YBWs@)_+L zkpdn5Ne_uiM9e^g6i%N|_2@3{ME|G7$#SxggV3PZ&p7E%J%r(nzUToPjPv0SrToAr zra5-}y;BB!pZK{47}2lAfIqXoG;oM9{oZ2}rUiW0PiDZS-r(> z02E}@o0AH`2|1b3a2$J1(pxCZ%~$U#g^DR)EYQ~^KUg=uQ4E#ts?N_93f>PEr>0Uz z>gy|0M~_aetgo-8rlyKEpF^6ujPro-NSw|!>W}~owIaZv!iza98s7MAwZCTVw6?@H zzr;A293ApUZ#ZN{V|vuvx&%_fT365H0beB;x!?hJBjBD{>2nT{0(c#`MKuG5CGPdP z2oG?2Um#xP6l?XHo?l1W&8d{>#A|KjTgEg0Kq_wYj;xJRZY&`cY}G2%&V?7hhRiig;sj zs4viP;dx#Z-<8}MFu439#RIIz81p%hIYfZ!#k^T~>XAoIod$XNP$6=}N^XoTE*@Qp z=N`*?Pdx;x^Yp1l9(k%@=6$)xatQvlxH!I;Kam6&I&c*F@WPy7WUSI>T z<(nlP2}d`xl!aA+;1aAJN-l9>g5lxUzTM-vsa{J^xD2Gx>Wjz^+z42b4x}9_EGJO)^d#tNc1VG;8VzdW*q%ZT;Rpz9)SB zLPd9lZ#dFKhvPY)%APvfC>8x)h^n*7k3IL)#eiPc5ANK)wr1}!>R9u&uYGdHG2~~v zQ>jUnfN0X^FP0jO(;35;yLjqUWg&1yZ%fcV-M;gnuIkCxzP5Qx^<{*dnc>wQe-C63 z8I1lh@kJ-_E8@En8!D{_!vtFVZXTjjfW^;A5**vKtW+IWzCKBeyvq3YqI+sp&bVVJ4YMZ6gnYopi8O(k>(#~b8 zDp1Yl1b=-I^64)S=ES0U7}vn@KRfh7%Pwga&!K?_l(5jl+Al6N6P^{EweTiR!~EKt z+K&3X!6Qcy%P_i~^1=xGbi#|17%Qvc$o2C?!mH{-`^q8hf30pgbHoXQ{4)({d>v7+ zp8)lp0VZ$}-XJovp!%93-ITd=J%KNoQfc}ta#2;xD?%fCaxtY?ljK>TuIBucp|x$l z1iYKO_LSO}mAmvz?f87x^xf|%>ONZfftT+Oc^UK6h{jbYl-1&a?TzC2IEHTfjv~=aI%BC)zaJ?Jfncwilqoq z+~;Jold(&AiWs{aJ>LgTXvm1z16GFHSdO4rqyXMQb{}=6Y~XmfGqQHJ24W)u%K`<^ zbX#Q6nqWa1PCPX+n%wFr%K%o(!mf8XD(FSR)@t14Q@^KQTubcD(FvB=mGSY?(QO&H zL^cF!kE(9Ol=X%|*LC$E>EB~jeGNxDV1jMbc&z`dJ5Mnc!UNSZK*{%t+)dV+@bgt85LY<#ba zVq|7393L&`#^4g?3vdGBKz3;B{te-6Dq_ep=toQ6?E?~r57UGB@_~e7=o;Bg{|&&@2M}@_I*sd$WUAYd=q5%p$5U9*w?F?iK8cb+fGkBhmSj=tJI+!5jqDP>nUukjsRjaPmTd^4sZNZ9KX7TH+Ksj z0d70A=`RL@>-OC2>FgtLhzJMWT2@C|=4Fg~h188E)^HHUCfax=%Z8fkG+l=3Q9bE< zyKs2Z`@bjC@~8%z{k_mWxiq{pj_DNQm~KFVa62Rj4`QFn*!VG*ZE{%4+}shQdZ9u> zd6`0P@R20Oz!rcW1+5K?3Jy7!FSC!0JdRls%LXa|V2rvcQcN&7b?jX7qORKB&rv4) zIq%b!^)9dXUEwDa)sw3$`5(I)OeJ9c1rxADD%k(u@++$+tBEHsGxNKUwUr9$9FY)m z_*eube-K%ivsap#De+&6mtqnB9^6b;s>hnuvesghtIcCooDX}jI8!R(UuovWYIFGZ zI5R)Ex%nV7VKc%OF6T790Pl^kpa!C=FTl4Pc3O07fn5amJ(McuI5K!A2$3=a_4nSO zW#0PASD1!3I9FXO79o57)oeC9Ihp^}xoWLkM!(#55W*j z(Q1{sU(HQT!S(O2Mgmr`bY!XA|23VN5#{JJjD7>CuPlRCc!j4;N+V6Zu7Di*Sxi

    EaM%;M{$wJx0}rObDo?WHPQ|0${Rt22+VyYu(1$&>;wz*% zD3{Q78uU%250c021Cqcs5T?|9;W2e}EF4OFhSnCX=x5_0^#L9*%%^vsN{6g)EtI%@ zH=Q5o?t0+gRz;7h6<%c*|3=6BdOIZuX%QXRYi_X13f37k+-b+LzR^C-ruDAu@IhF% z9d-e;j^|Fddzt)I?TXW_E43E}+VdK-T)xa#HGr?~r(XB)>M}U1E5Qq}ngJqmAQv#q z*a2wT@O&=TIt-qG1N4?h5e>S9B)~hdui>$F%%C4`RNK`!Vw+qrBVqG=C}74b_p7KM zPOWz=3w8-nb$^BL&szYN3w&RF0IiJdSUo%k3_Q2>v(C-hjKBpGw%`|n{!wrJLA*uZ zxE6Zw!^jv?w-s1O4sf)9|*t(7T+#+aI3=5=a%W&QOht5pMMSJed^U^J@LlOGX*3gkd2{EDVu;P_z`HozRFsVNlF)g5$V+#ua8dvSC z{UR)|-on)Y2`X_tpo46z z001wxrz5`7tT`ZpNCvN{-1T$AwzC5R=?ZumIEiBHFv;%l_CiMetCizhD+@mVj6#ey z1hX?tm4qYzv0`!Ta-jf!lw(FX8VQ<)5mrYUjmpx}eSLw<>=8Bq;P(sVPkA^DwoecUMQBvGF~HT0A+_53Qo=V{PU~F zw^kqjA1KnWi||860hl?TzdTkd7P2U!Fp_(VTy}5^;FA8zaMnrW85jo8%KQ~R4LgOc z%;)~mruXI5xw%|^n(BkV3VaYVP)z>{tzf~LEq}}BqibhKn&#-fU@?^pVx=#+Z_TFD z%W8c&ozC|E&zji^)c)1V=RYy@4*7}C&(D?(qdYr**KJm)+YMQ_c_=^Zsc+%C^scyr zRp? zS3_+Eju>#wr56^`Ip>L2bKxU@L3HTgNkNM42fqB5t)C8uS>gAq4`<Q+)sy0z6j+r|RyoPPI-EQ~0yL;2c1u{Se z`=IZ|FR9;BpOt8*bZ&+vs#!%Br-N-lukiuzGa^N>0tm;tdMrIQmVO@8*z$7eX?@J| z>BgBejau#b`L(tAa`|e0YAT=2UeWKags_ILLSXk;I{iG$6pJ7d`R?gjjpd#%ms##= zHp_BX^t&sONGNobUt&Lo^5Hzr^uzWMTe!%U0DUsnju_P|z~+D-fs?eXNFA{}v+C1# zLAe_IdqPz1wXGzynEY(t1$nwiynD{;zfULnUuTk&!0R<`+}P#u!!~Og z1d6E3Tc~pcAtwaiKH|<#)wA#@1M?~m z>9dX|sSbF?V)`g2ZHH1|J=8XMiGADgeU${BIu1SN{hr625#YLTP{zFD&dFu5H9Y7# zZ1ku!t)6z*hIs~qKSV{j{DJuB1FzgR!McY+-A}Q~GyHe&Lou=fo%JWz_MRtXFS>`L zd+0-Pf4T1d1j>IZu$3qRhGt+j_DcABe3w1%v>LNL!P>KX0=S2_^|aoHvB0@cn-pbm z&}~`|3;4Sj_aFJh{Ldw!94%9QK!b-P zf_0>9hd-2NEa8CBnvEDNa zSex8ScZJWIV2qA=62AeW6kY+M@`s&j6G0(3Zq&Z=PoF(|}lY zL^K?M{gOXAwzOPZU04hGgSY+k)v?@mAs_IiWAk%2B7@gw2BIH4w-gM7Be}mG zPI6{E9QOwbKIr^d5pX9CSd1Sl7hn~fgqNUPB<%Gjy@5asL++bfnXE62k0*^Rqa%T8 zchdNZt2f9LSycC+cz1D}u4^Z&gNcKP1~MAR;q7^Q$yjbCIG%<{9!LC$ zV=dGc6sN1NIqmfJHCz)ka zm1EHuE!u`frEJmDQ*D-ot*UsR!6=cuuYACrck!t(yl_25MXI!cZEkr=u#%RtX~L#v z1IZZW-{vk03p|8*3Zt+kg<}KR3TY(9W;}#WN@LQJs+?>jJsidZF$23@)xp1!gcCIK z9y5%r#H#f}5u6KDR{vW} z`5{O{g8!5$yKp@i`+#MAAO@?-mivLAs%gNMhu?G0XG!Msn7d+D`?ymP>#@swoc11Q z?Saxs=>P1$g69zv{PSAr@so{QCy$WE_*1I^(eHMLpGyz~ky&5q*|7oPbCRrBa^$(|~EN=nH;} zM^-m+fI8ukUaniK-w0Yc)AT=%bIc(#7eu*G5cydXcqZPx+aJoE2nL@BMI)gj z_VvUOOa|ewCpM}$TcfcF9jn0@m9v4UZIA~2_qXIs3yw0=IMaRWKe{FbY!?wY-^d@KB%1nt!0Glnbto=&>lf6kBe^6*~$QueXT(uBd>@tK{EwHR? z$Y#-UHX-Y21`W5I$6>lMpB|C=v^g>_f|lF4Wj`e7OHEYp=2hS|V)v6~ARBOyJtIRN)(98rVhL`XJKl5-f5MN8i>9JVc4K37MY zCQd6as(8ffM|iNPKj05$Gh>YO2a~?II#W1*{$AONL-*cvzJRFRR%NkT2?gWXY-u8$ z4u`!e7+ye9Fc455`#~_WA)1o0vI4ZLaE1AUGziT;a^gfNrB_)hbmGJ#mfvqKnSryh z*dzlD#pB6@iAYCh14xBkFmZuzu#Om0uF4ZI48kWA3qXS%(;^euxpDp%2#P$5AG~xIkqNZO|YMgpDx?HOeG(=goQ*@-Vhl*`4#o_Y?dacSoBOLy-3Y2Jx9l(yzAKz)avE*U# zOcEYJ8-!lLkv2zkd}zCI{5hGxIjfveq2D+(=Vi3}zcA~9ZuA0sy@TV_0`uHI@CRMY z{fw>vof;G@MDZGy7b*hRq7svNz!Kho)y}$*kTm}im5NBAz`yVefg};RRW?`;l$Kf! z#Nt^~um6Qgdw)pvVhYAaK*>a@;V`_yzQzhcP>Uo=-Zbd&4v(-~KUSVoK`Yw-fv6Q! zSsF+r^HnCrRY8MnL2Reu)qFA$Xrzv;o<`01 z!s*o`sS}$H<{_RiXuD(7FlHC&i9*{#K)s|bx`_PP(+w!1D6g5(-a(lRZM064cxNb} zxi{hv!I@bHJE~pcg=j2Gv~Xmm=xxr;!3btM7w{R`8E_TVMVuX<$$Gtk+%~AWx$-ez zef=U2`{dxoDVLvh+N*Z>G?vZ;Z(pHXlF7-X=+g4ZpG^CsMmCWP1m0PloG{3zyekmM zC9*gNmj0;|%gd2-M~)cATJ8Mp!AyFLtr;4*6X)*=?G!~ss515K8fs*JPnMG4%dr7q zDV9Orv*UvNN#?W5!p(I!7gsnbFM4W-Mt{Xrm$gZ;<^x>!?{}uIe@Q)CtuiuvRr79| z-NL<#KeN}OhUqz+p@w%>el-hqB85R@BL$z!9NE-pw(g~XtwB )gyt!Pq{S>33jE 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 A-~a#s literal 0 HcmV?d00001 diff --git a/_static/vendor/fontawesome/6.1.2/webfonts/fa-solid-900.woff2 b/_static/vendor/fontawesome/6.1.2/webfonts/fa-solid-900.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..4a7f96652ca9a7f6c7106cc548515ba3d7281af9 GIT binary patch literal 154840 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