From 96d07fbd971eceae2d31b03d882a3075d2f13dae Mon Sep 17 00:00:00 2001 From: Bryan Weber Date: Tue, 5 Sep 2023 09:10:55 -0400 Subject: [PATCH 1/7] First draft --- .../time-since-periapsis.md | 74 ++++++++++++++++++- 1 file changed, 73 insertions(+), 1 deletion(-) diff --git a/time-since-periapsis-and-keplers-equation/time-since-periapsis.md b/time-since-periapsis-and-keplers-equation/time-since-periapsis.md index bf8622c..21dd799 100644 --- a/time-since-periapsis-and-keplers-equation/time-since-periapsis.md +++ b/time-since-periapsis-and-keplers-equation/time-since-periapsis.md @@ -15,10 +15,82 @@ kernelspec: In the last chapter, we derived equations for the position of an object in a two-body system as a function of the true anomaly. However, humans don't really think in terms of true anomaly, we think in terms of time. The only place time appeared in the last chapter was in the calculation of the orbital period. -As we'll find in this chapter, the equations to relate the orbital position to time are **transcendental** for all but the circular orbit. This means we will need to use Newton's method to solve them. Initially, we will derive separate equations each for the elliptical, parabolic, and hyperbolic orbits. Next, we will combine these using a universal variable formulation. +As we'll find in this chapter, the equations to relate the orbital position to time are **transcendental** for all but the circular orbit. This means we will need to use Newton's method to solve them. Initially, we will derive separate equations each for the elliptical, parabolic, and hyperbolic orbits. Then, we will combine these using a universal variable formulation. ## Time Since Periapsis +The goal of this section is to relate the time since periapsis, $t$, to an object's position in the orbit defined by the true anomaly, $\nu$. We know that the direct relationship between $t$ and $\nu$ is complex because the object speeds up near periapsis and slows down near apoapsis. This phenomenon is one of the insights from Kepler's second law, which states that equal areas are swept out in equal times. + +Instead of trying to find this direct relationship between $t$ and $\nu$, we're going to take a different route that has three main steps: + +1. Calculate the area that the object sweeps out inside the orbit during a time interval $t$ +2. Calculate the area that the object sweeps out inside an imaginary circle around the true orbit during the same time interval +3. Relate these two areas to each other to find an indirect relationship between $t$ and $\nu$ + +Let's start with the first area inside the orbit. + +### Swept Area Inside the Orbit + +Since Kepler's second law says that equal areas are swept in equal times, the swept area is _directly proportional_ to the time. Let's define a variable to capture this idea and call it the **Mean anomaly**, $M_e$: + +:::{math} +M_e = C t +::: + +where $C$ is the constant of proporionality. For an elliptical orbit, the swept area is the elapsed fraction of the orbital period multiplied by the total area of the ellipse: + +:::{math} +M_e = C t = \frac{1}{2} a b \frac{t}{T} +::: + +where $a$ and $b$ are the semimajor and semiminor axes, and $T$ is the orbial period. This is really convenient because linear relationships are much easier to work with than non-linear relationships. + +:::{margin} +We'll use the example of an ellipse here, but the procedure shown here is the similar for a parabola or hyperbola. +::: + +### Swept Area Inside a Circumscribing Circle + +Step two is to relate the true anomaly to a circle that touches the ellipse at either end of the major axis. The reason we use a circle for this is that we know the swept area of a circular sector is directly proportional to the included angle. Directly proportional relationships are very convenient. We can also think of creating this circle as _stretching_ the ellipse along its minor axis until it becomes a circle. + +:::{margin} +The circle here is called an **circumscribing circle** because it is tangent to the ellipse at two points, on both ends of the major axis. These positions are also the periapsis and apoapsis. +::: + +As we imagine stretching the ellipse into the circle, we also need to bring the object with us. The object will move along a line perpendicular to the major axis since we're only stretching in the minor axis direction. Once the object touches the circumscribing circle, we've defined a sector that is related to the original position of the object, and therefore to its true anomaly. + +Let's define a variable called the **Eccentric area**, $A_E$, to be the area inside the cicrumscribing circle for the sector we just found: + +:::{math} +A_E = a^2 \frac{E}{2} +::: + +where $E$ is the included angle inside the circumscribing circle and $a$ is the radius of the circle and the semimajor axis of the ellipse. + +### Relating the Two Areas Together + +Now we've defined two areas: + +1. The Mean anomaly, $M_e$, the swept area inside the orbit +2. The Eccentric area, $E$, the area of a circular sector on the circumscribing circle + +We can turn the eccentric area into the mean anomaly by subtracting out the triangle from the origin to the focus and up to the circle, then squishing the remaining part back down into an ellipse. + +The base of the triangle we want to subtract is the length from the origin to the focus, $ae$ and its height is $a\sin E$, so the area of the leftover part is: + +:::{math} +\frac{1}{2} a^2 E - \frac{1}{2} a^2 e \sin E = \frac{1}{2} a^2\left(E - e \sin E\right) +::: + +Then we need to scale this leftover area back into an ellipse so it matches the mean anomaly. To scale back into the ellipse we need to multiply the circle by a factor $b/a$: + +:::{math} +\frac{1}{2}a b \left(E - e \sin E\right) = \frac{1}{2} a b \frac{t}{T} +::: + + +## An Alternative Interpretation + Recall the orbit equation, Eq. {eq}`eq:scalar-orbit-equation`, defined in terms of the true anomaly: :::{math} From dec850257a89e79efcbd46b638539f334df90a38 Mon Sep 17 00:00:00 2001 From: Bryan Weber Date: Fri, 15 Mar 2024 14:48:02 -0400 Subject: [PATCH 2/7] Add jupyterlab deps --- pyproject.toml | 1 + uv.lock | 513 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 514 insertions(+) diff --git a/pyproject.toml b/pyproject.toml index 823bd70..dcc5830 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -31,6 +31,7 @@ python-preference = "only-system" [dependency-groups] dev = ["doit>=0.36.0", "pyyaml>=6.0.1", "ruff>=0.5.0", "requests>=2.32.3"] +lab = ["jupyterlab>=4.1.4"] [tool.uv.sources] # Unfortunately, poliastro is no longer maintained. I updated some dependencies on my diff --git a/uv.lock b/uv.lock index 2bf6ca5..3fd24aa 100644 --- a/uv.lock +++ b/uv.lock @@ -36,6 +36,21 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/32/34/d4e1c02d3bee589efb5dfa17f88ea08bdb3e3eac12bc475462aec52ed223/alabaster-0.7.16-py3-none-any.whl", hash = "sha256:b46733c07dce03ae4e150330b975c75737fa60f0a7c591b6c8bf4928a28e2c92", size = 13511 }, ] +[[package]] +name = "anyio" +version = "4.8.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "exceptiongroup", marker = "python_full_version < '3.11'" }, + { name = "idna" }, + { name = "sniffio" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a3/73/199a98fc2dae33535d6b8e8e6ec01f8c1d76c9adb096c6b7d64823038cde/anyio-4.8.0.tar.gz", hash = "sha256:1d9fe889df5212298c0c0723fa20479d1b94883a2df44bd3897aa91083316f7a", size = 181126 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/46/eb/e7f063ad1fec6b3178a3cd82d1a3c4de82cccf283fc42746168188e1cdd5/anyio-4.8.0-py3-none-any.whl", hash = "sha256:b5011f270ab5eb0abf13385f851315585cc37ef330dd88e27ec3d34d651fd47a", size = 96041 }, +] + [[package]] name = "appnope" version = "0.1.4" @@ -45,6 +60,52 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/81/29/5ecc3a15d5a33e31b26c11426c45c501e439cb865d0bff96315d86443b78/appnope-0.1.4-py2.py3-none-any.whl", hash = "sha256:502575ee11cd7a28c0205f379b525beefebab9d161b7c964670864014ed7213c", size = 4321 }, ] +[[package]] +name = "argon2-cffi" +version = "23.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "argon2-cffi-bindings" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/31/fa/57ec2c6d16ecd2ba0cf15f3c7d1c3c2e7b5fcb83555ff56d7ab10888ec8f/argon2_cffi-23.1.0.tar.gz", hash = "sha256:879c3e79a2729ce768ebb7d36d4609e3a78a4ca2ec3a9f12286ca057e3d0db08", size = 42798 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a4/6a/e8a041599e78b6b3752da48000b14c8d1e8a04ded09c88c714ba047f34f5/argon2_cffi-23.1.0-py3-none-any.whl", hash = "sha256:c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea", size = 15124 }, +] + +[[package]] +name = "argon2-cffi-bindings" +version = "21.2.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cffi" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b9/e9/184b8ccce6683b0aa2fbb7ba5683ea4b9c5763f1356347f1312c32e3c66e/argon2-cffi-bindings-21.2.0.tar.gz", hash = "sha256:bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3", size = 1779911 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d4/13/838ce2620025e9666aa8f686431f67a29052241692a3dd1ae9d3692a89d3/argon2_cffi_bindings-21.2.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:ccb949252cb2ab3a08c02024acb77cfb179492d5701c7cbdbfd776124d4d2367", size = 29658 }, + { url = "https://files.pythonhosted.org/packages/b3/02/f7f7bb6b6af6031edb11037639c697b912e1dea2db94d436e681aea2f495/argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9524464572e12979364b7d600abf96181d3541da11e23ddf565a32e70bd4dc0d", size = 80583 }, + { url = "https://files.pythonhosted.org/packages/ec/f7/378254e6dd7ae6f31fe40c8649eea7d4832a42243acaf0f1fff9083b2bed/argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b746dba803a79238e925d9046a63aa26bf86ab2a2fe74ce6b009a1c3f5c8f2ae", size = 86168 }, + { url = "https://files.pythonhosted.org/packages/74/f6/4a34a37a98311ed73bb80efe422fed95f2ac25a4cacc5ae1d7ae6a144505/argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:58ed19212051f49a523abb1dbe954337dc82d947fb6e5a0da60f7c8471a8476c", size = 82709 }, + { url = "https://files.pythonhosted.org/packages/74/2b/73d767bfdaab25484f7e7901379d5f8793cccbb86c6e0cbc4c1b96f63896/argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:bd46088725ef7f58b5a1ef7ca06647ebaf0eb4baff7d1d0d177c6cc8744abd86", size = 83613 }, + { url = "https://files.pythonhosted.org/packages/4f/fd/37f86deef67ff57c76f137a67181949c2d408077e2e3dd70c6c42912c9bf/argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_i686.whl", hash = "sha256:8cd69c07dd875537a824deec19f978e0f2078fdda07fd5c42ac29668dda5f40f", size = 84583 }, + { url = "https://files.pythonhosted.org/packages/6f/52/5a60085a3dae8fded8327a4f564223029f5f54b0cb0455a31131b5363a01/argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:f1152ac548bd5b8bcecfb0b0371f082037e47128653df2e8ba6e914d384f3c3e", size = 88475 }, + { url = "https://files.pythonhosted.org/packages/8b/95/143cd64feb24a15fa4b189a3e1e7efbaeeb00f39a51e99b26fc62fbacabd/argon2_cffi_bindings-21.2.0-cp36-abi3-win32.whl", hash = "sha256:603ca0aba86b1349b147cab91ae970c63118a0f30444d4bc80355937c950c082", size = 27698 }, + { url = "https://files.pythonhosted.org/packages/37/2c/e34e47c7dee97ba6f01a6203e0383e15b60fb85d78ac9a15cd066f6fe28b/argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl", hash = "sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f", size = 30817 }, + { url = "https://files.pythonhosted.org/packages/5a/e4/bf8034d25edaa495da3c8a3405627d2e35758e44ff6eaa7948092646fdcc/argon2_cffi_bindings-21.2.0-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:e415e3f62c8d124ee16018e491a009937f8cf7ebf5eb430ffc5de21b900dad93", size = 53104 }, +] + +[[package]] +name = "arrow" +version = "1.3.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "python-dateutil" }, + { name = "types-python-dateutil" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/2e/00/0f6e8fcdb23ea632c866620cc872729ff43ed91d284c866b515c6342b173/arrow-1.3.0.tar.gz", hash = "sha256:d4540617648cb5f895730f1ad8c82a65f2dad0166f57b75f3ca54759c4d67a85", size = 131960 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f8/ed/e97229a566617f2ae958a6b13e7cc0f585470eac730a73e9e82c32a3cdd2/arrow-1.3.0-py3-none-any.whl", hash = "sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80", size = 66419 }, +] + [[package]] name = "astropy" version = "6.1.1" @@ -117,6 +178,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/25/8a/c46dcc25341b5bce5472c718902eb3d38600a903b14fa6aeecef3f21a46f/asttokens-3.0.0-py3-none-any.whl", hash = "sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2", size = 26918 }, ] +[[package]] +name = "async-lru" +version = "2.0.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions", marker = "python_full_version < '3.11'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/80/e2/2b4651eff771f6fd900d233e175ddc5e2be502c7eb62c0c42f975c6d36cd/async-lru-2.0.4.tar.gz", hash = "sha256:b8a59a5df60805ff63220b2a0c5b5393da5521b113cd5465a44eb037d81a5627", size = 10019 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fa/9f/3c3503693386c4b0f245eaf5ca6198e3b28879ca0a40bde6b0e319793453/async_lru-2.0.4-py3-none-any.whl", hash = "sha256:ff02944ce3c288c5be660c42dbcca0742b32c3b279d6dceda655190240b99224", size = 6111 }, +] + [[package]] name = "attrs" version = "24.3.0" @@ -156,6 +229,23 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/b1/fe/e8c672695b37eecc5cbf43e1d0638d88d66ba3a44c4d321c796f4e59167f/beautifulsoup4-4.12.3-py3-none-any.whl", hash = "sha256:b80878c9f40111313e55da8ba20bdba06d8fa3969fc68304167741bbf9e082ed", size = 147925 }, ] +[[package]] +name = "bleach" +version = "6.2.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "webencodings" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/76/9a/0e33f5054c54d349ea62c277191c020c2d6ef1d65ab2cb1993f91ec846d1/bleach-6.2.0.tar.gz", hash = "sha256:123e894118b8a599fd80d3ec1a6d4cc7ce4e5882b1317a7e1ba69b56e95f991f", size = 203083 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fc/55/96142937f66150805c25c4d0f31ee4132fd33497753400734f9dfdcbdc66/bleach-6.2.0-py3-none-any.whl", hash = "sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e", size = 163406 }, +] + +[package.optional-dependencies] +css = [ + { name = "tinycss2" }, +] + [[package]] name = "bokeh" version = "3.4.2" @@ -433,6 +523,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/d5/50/83c593b07763e1161326b3b8c6686f0f4b0f24d5526546bee538c89837d6/decorator-5.1.1-py3-none-any.whl", hash = "sha256:b8c3f85900b9dc423225913c5aace94729fe1fa9763b38939a95226f02d37186", size = 9073 }, ] +[[package]] +name = "defusedxml" +version = "0.7.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0f/d5/c66da9b79e5bdb124974bfe172b4daf3c984ebd9c2a06e2b8a4dc7331c72/defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69", size = 75520 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61", size = 25604 }, +] + [[package]] name = "docutils" version = "0.20.1" @@ -539,6 +638,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/99/3b/406d17b1f63e04a82aa621936e6e1c53a8c05458abd66300ac85ea7f9ae9/fonttools-4.55.3-py3-none-any.whl", hash = "sha256:f412604ccbeee81b091b420272841e5ec5ef68967a9790e80bffd0e30b8e2977", size = 1111638 }, ] +[[package]] +name = "fqdn" +version = "1.5.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/30/3e/a80a8c077fd798951169626cde3e239adeba7dab75deb3555716415bd9b0/fqdn-1.5.1.tar.gz", hash = "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f", size = 6015 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl", hash = "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014", size = 9121 }, +] + [[package]] name = "greenlet" version = "3.1.1" @@ -574,6 +682,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/43/21/a5d9df1d21514883333fc86584c07c2b49ba7c602e670b174bd73cfc9c7f/greenlet-3.1.1-cp312-cp312-win_amd64.whl", hash = "sha256:7124e16b4c55d417577c2077be379514321916d5790fa287c9ed6f23bd2ffd01", size = 299655 }, ] +[[package]] +name = "h11" +version = "0.14.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f5/38/3af3d3633a34a3316095b39c8e8fb4853a28a536e55d347bd8d8e9a14b03/h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d", size = 100418 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/95/04/ff642e65ad6b90db43e668d70ffb6736436c7ce41fcc549f4e9472234127/h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761", size = 58259 }, +] + [[package]] name = "html5lib" version = "1.1" @@ -587,6 +704,34 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/6c/dd/a834df6482147d48e225a49515aabc28974ad5a4ca3215c18a882565b028/html5lib-1.1-py2.py3-none-any.whl", hash = "sha256:0d78f8fde1c230e99fe37986a60526d7049ed4bf8a9fadbad5f00e22e58e041d", size = 112173 }, ] +[[package]] +name = "httpcore" +version = "1.0.7" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "h11" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/6a/41/d7d0a89eb493922c37d343b607bc1b5da7f5be7e383740b4753ad8943e90/httpcore-1.0.7.tar.gz", hash = "sha256:8551cb62a169ec7162ac7be8d4817d561f60e08eaa485234898414bb5a8a0b4c", size = 85196 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/87/f5/72347bc88306acb359581ac4d52f23c0ef445b57157adedb9aee0cd689d2/httpcore-1.0.7-py3-none-any.whl", hash = "sha256:a3fff8f43dc260d5bd363d9f9cf1830fa3a458b332856f34282de498ed420edd", size = 78551 }, +] + +[[package]] +name = "httpx" +version = "0.28.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "certifi" }, + { name = "httpcore" }, + { name = "idna" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b1/df/48c586a5fe32a0f01324ee087459e112ebb7224f646c0b5023f5e79e9956/httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc", size = 141406 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad", size = 73517 }, +] + [[package]] name = "idna" version = "3.10" @@ -696,6 +841,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/22/2d/9c0b76f2f9cc0ebede1b9371b6f317243028ed60b90705863d493bae622e/ipywidgets-8.1.5-py3-none-any.whl", hash = "sha256:3290f526f87ae6e77655555baba4f36681c555b8bdbbff430b70e52c34c86245", size = 139767 }, ] +[[package]] +name = "isoduration" +version = "20.11.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "arrow" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/7c/1a/3c8edc664e06e6bd06cce40c6b22da5f1429aa4224d0c590f3be21c91ead/isoduration-20.11.0.tar.gz", hash = "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9", size = 11649 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl", hash = "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042", size = 11321 }, +] + [[package]] name = "jaraco-classes" version = "3.4.0" @@ -777,6 +934,24 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/b7/29/b29df8198777badb21d11a0fdb32b7f3afd765390dd1e8b99c86354489b6/jplephem-2.22-py3-none-any.whl", hash = "sha256:efe4b3590f3eef1a5dfcf7078e8e93803f8ce3276c3306e93bfd20b3536b2c60", size = 47243 }, ] +[[package]] +name = "json5" +version = "0.10.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/85/3d/bbe62f3d0c05a689c711cff57b2e3ac3d3e526380adb7c781989f075115c/json5-0.10.0.tar.gz", hash = "sha256:e66941c8f0a02026943c52c2eb34ebeb2a6f819a0be05920a6f5243cd30fd559", size = 48202 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/aa/42/797895b952b682c3dafe23b1834507ee7f02f4d6299b65aaa61425763278/json5-0.10.0-py3-none-any.whl", hash = "sha256:19b23410220a7271e8377f81ba8aacba2fdd56947fbb137ee5977cbe1f5e8dfa", size = 34049 }, +] + +[[package]] +name = "jsonpointer" +version = "3.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6a/0a/eebeb1fa92507ea94016a2a790b93c2ae41a7e18778f85471dc54475ed25/jsonpointer-3.0.0.tar.gz", hash = "sha256:2b2d729f2091522d61c3b31f82e11870f60b68f43fbc705cb76bf4b832af59ef", size = 9114 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/71/92/5e77f98553e9e75130c78900d000368476aed74276eb8ae8796f65f00918/jsonpointer-3.0.0-py2.py3-none-any.whl", hash = "sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942", size = 7595 }, +] + [[package]] name = "jsonschema" version = "4.23.0" @@ -792,6 +967,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/69/4a/4f9dbeb84e8850557c02365a0eee0649abe5eb1d84af92a25731c6c0f922/jsonschema-4.23.0-py3-none-any.whl", hash = "sha256:fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566", size = 88462 }, ] +[package.optional-dependencies] +format-nongpl = [ + { name = "fqdn" }, + { name = "idna" }, + { name = "isoduration" }, + { name = "jsonpointer" }, + { name = "rfc3339-validator" }, + { name = "rfc3986-validator" }, + { name = "uri-template" }, + { name = "webcolors" }, +] + [[package]] name = "jsonschema-specifications" version = "2024.10.1" @@ -882,6 +1069,131 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/c9/fb/108ecd1fe961941959ad0ee4e12ee7b8b1477247f30b1fdfd83ceaf017f0/jupyter_core-5.7.2-py3-none-any.whl", hash = "sha256:4f7315d2f6b4bcf2e3e7cb6e46772eba760ae459cd1f59d29eb57b0a01bd7409", size = 28965 }, ] +[[package]] +name = "jupyter-events" +version = "0.11.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jsonschema", extra = ["format-nongpl"] }, + { name = "python-json-logger" }, + { name = "pyyaml" }, + { name = "referencing" }, + { name = "rfc3339-validator" }, + { name = "rfc3986-validator" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f4/65/5791c8a979b5646ca29ea50e42b6708908b789f7ff389d1a03c1b93a1c54/jupyter_events-0.11.0.tar.gz", hash = "sha256:c0bc56a37aac29c1fbc3bcfbddb8c8c49533f9cf11f1c4e6adadba936574ab90", size = 62039 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3f/8c/9b65cb2cd4ea32d885993d5542244641590530836802a2e8c7449a4c61c9/jupyter_events-0.11.0-py3-none-any.whl", hash = "sha256:36399b41ce1ca45fe8b8271067d6a140ffa54cec4028e95491c93b78a855cacf", size = 19423 }, +] + +[[package]] +name = "jupyter-lsp" +version = "2.2.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-server" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/85/b4/3200b0b09c12bc3b72d943d923323c398eff382d1dcc7c0dbc8b74630e40/jupyter-lsp-2.2.5.tar.gz", hash = "sha256:793147a05ad446f809fd53ef1cd19a9f5256fd0a2d6b7ce943a982cb4f545001", size = 48741 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/07/e0/7bd7cff65594fd9936e2f9385701e44574fc7d721331ff676ce440b14100/jupyter_lsp-2.2.5-py3-none-any.whl", hash = "sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da", size = 69146 }, +] + +[[package]] +name = "jupyter-server" +version = "2.15.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "argon2-cffi" }, + { name = "jinja2" }, + { name = "jupyter-client" }, + { name = "jupyter-core" }, + { name = "jupyter-events" }, + { name = "jupyter-server-terminals" }, + { name = "nbconvert" }, + { name = "nbformat" }, + { name = "overrides" }, + { name = "packaging" }, + { name = "prometheus-client" }, + { name = "pywinpty", marker = "os_name == 'nt'" }, + { name = "pyzmq" }, + { name = "send2trash" }, + { name = "terminado" }, + { name = "tornado" }, + { name = "traitlets" }, + { name = "websocket-client" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/61/8c/df09d4ab646141f130f9977b32b206ba8615d1969b2eba6a2e84b7f89137/jupyter_server-2.15.0.tar.gz", hash = "sha256:9d446b8697b4f7337a1b7cdcac40778babdd93ba614b6d68ab1c0c918f1c4084", size = 725227 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e2/a2/89eeaf0bb954a123a909859fa507fa86f96eb61b62dc30667b60dbd5fdaf/jupyter_server-2.15.0-py3-none-any.whl", hash = "sha256:872d989becf83517012ee669f09604aa4a28097c0bd90b2f424310156c2cdae3", size = 385826 }, +] + +[[package]] +name = "jupyter-server-terminals" +version = "0.5.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pywinpty", marker = "os_name == 'nt'" }, + { name = "terminado" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/fc/d5/562469734f476159e99a55426d697cbf8e7eb5efe89fb0e0b4f83a3d3459/jupyter_server_terminals-0.5.3.tar.gz", hash = "sha256:5ae0295167220e9ace0edcfdb212afd2b01ee8d179fe6f23c899590e9b8a5269", size = 31430 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/07/2d/2b32cdbe8d2a602f697a649798554e4f072115438e92249624e532e8aca6/jupyter_server_terminals-0.5.3-py3-none-any.whl", hash = "sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa", size = 13656 }, +] + +[[package]] +name = "jupyterlab" +version = "4.3.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "async-lru" }, + { name = "httpx" }, + { name = "ipykernel" }, + { name = "jinja2" }, + { name = "jupyter-core" }, + { name = "jupyter-lsp" }, + { name = "jupyter-server" }, + { name = "jupyterlab-server" }, + { name = "notebook-shim" }, + { name = "packaging" }, + { name = "setuptools" }, + { name = "tomli", marker = "python_full_version < '3.11'" }, + { name = "tornado" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a7/45/1052f842e066902b1d78126df7e2269b1b9408991e1344e167b2e429f9e1/jupyterlab-4.3.4.tar.gz", hash = "sha256:f0bb9b09a04766e3423cccc2fc23169aa2ffedcdf8713e9e0fb33cac0b6859d0", size = 21797583 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/61/48/af57263e53cfc220e522de047aa0993f53bab734fe812af1e03e33ac6d7c/jupyterlab-4.3.4-py3-none-any.whl", hash = "sha256:b754c2601c5be6adf87cb5a1d8495d653ffb945f021939f77776acaa94dae952", size = 11665373 }, +] + +[[package]] +name = "jupyterlab-pygments" +version = "0.3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/90/51/9187be60d989df97f5f0aba133fa54e7300f17616e065d1ada7d7646b6d6/jupyterlab_pygments-0.3.0.tar.gz", hash = "sha256:721aca4d9029252b11cfa9d185e5b5af4d54772bb8072f9b7036f4170054d35d", size = 512900 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl", hash = "sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780", size = 15884 }, +] + +[[package]] +name = "jupyterlab-server" +version = "2.27.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "babel" }, + { name = "jinja2" }, + { name = "json5" }, + { name = "jsonschema" }, + { name = "jupyter-server" }, + { name = "packaging" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0a/c9/a883ce65eb27905ce77ace410d83587c82ea64dc85a48d1f7ed52bcfa68d/jupyterlab_server-2.27.3.tar.gz", hash = "sha256:eb36caca59e74471988f0ae25c77945610b887f777255aa21f8065def9e51ed4", size = 76173 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/54/09/2032e7d15c544a0e3cd831c51d77a8ca57f7555b2e1b2922142eddb02a84/jupyterlab_server-2.27.3-py3-none-any.whl", hash = "sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4", size = 59700 }, +] + [[package]] name = "jupyterlab-widgets" version = "3.0.13" @@ -1135,6 +1447,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8", size = 9979 }, ] +[[package]] +name = "mistune" +version = "3.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions", marker = "python_full_version < '3.11'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/79/6e/96fc7cb3288666c5de2c396eb0e338dc95f7a8e4920e43e38783a22d0084/mistune-3.1.0.tar.gz", hash = "sha256:dbcac2f78292b9dc066cd03b7a3a26b62d85f8159f2ea5fd28e55df79908d667", size = 94401 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b4/b3/743ffc3f59da380da504d84ccd1faf9a857a1445991ff19bf2ec754163c2/mistune-3.1.0-py3-none-any.whl", hash = "sha256:b05198cf6d671b3deba6c87ec6cf0d4eb7b72c524636eddb6dbf13823b52cee1", size = 53694 }, +] + [[package]] name = "more-itertools" version = "10.5.0" @@ -1221,6 +1545,31 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/34/6d/e7fa07f03a4a7b221d94b4d586edb754a9b0dc3c9e2c93353e9fa4e0d117/nbclient-0.10.2-py3-none-any.whl", hash = "sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d", size = 25434 }, ] +[[package]] +name = "nbconvert" +version = "7.16.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "beautifulsoup4" }, + { name = "bleach", extra = ["css"] }, + { name = "defusedxml" }, + { name = "jinja2" }, + { name = "jupyter-core" }, + { name = "jupyterlab-pygments" }, + { name = "markupsafe" }, + { name = "mistune" }, + { name = "nbclient" }, + { name = "nbformat" }, + { name = "packaging" }, + { name = "pandocfilters" }, + { name = "pygments" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/46/2c/d026c0367f2be2463d4c2f5b538e28add2bc67bc13730abb7f364ae4eb8b/nbconvert-7.16.5.tar.gz", hash = "sha256:c83467bb5777fdfaac5ebbb8e864f300b277f68692ecc04d6dab72f2d8442344", size = 856367 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8f/9e/2dcc9fe00cf55d95a8deae69384e9cea61816126e345754f6c75494d32ec/nbconvert-7.16.5-py3-none-any.whl", hash = "sha256:e12eac052d6fd03040af4166c563d76e7aeead2e9aadf5356db552a1784bd547", size = 258061 }, +] + [[package]] name = "nbformat" version = "5.10.4" @@ -1245,6 +1594,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl", hash = "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c", size = 5195 }, ] +[[package]] +name = "notebook-shim" +version = "0.2.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-server" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/54/d2/92fa3243712b9a3e8bafaf60aac366da1cada3639ca767ff4b5b3654ec28/notebook_shim-0.2.4.tar.gz", hash = "sha256:b4b2cfa1b65d98307ca24361f5b30fe785b53c3fd07b7a47e89acb5e6ac638cb", size = 13167 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl", hash = "sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef", size = 13307 }, +] + [[package]] name = "numba" version = "0.61.0rc2" @@ -1335,6 +1696,9 @@ dev = [ { name = "requests" }, { name = "ruff" }, ] +lab = [ + { name = "jupyterlab" }, +] [package.metadata] requires-dist = [ @@ -1364,6 +1728,16 @@ dev = [ { name = "requests", specifier = ">=2.32.3" }, { name = "ruff", specifier = ">=0.5.0" }, ] +lab = [{ name = "jupyterlab", specifier = ">=4.1.4" }] + +[[package]] +name = "overrides" +version = "7.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/36/86/b585f53236dec60aba864e050778b25045f857e17f6e5ea0ae95fe80edd2/overrides-7.7.0.tar.gz", hash = "sha256:55158fa3d93b98cc75299b1e67078ad9003ca27945c76162c1c0766d6f91820a", size = 22812 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl", hash = "sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49", size = 17832 }, +] [[package]] name = "packaging" @@ -1409,6 +1783,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/29/d4/1244ab8edf173a10fd601f7e13b9566c1b525c4f365d6bee918e68381889/pandas-2.2.3-cp312-cp312-win_amd64.whl", hash = "sha256:59ef3764d0fe818125a5097d2ae867ca3fa64df032331b7e0917cf5d7bf66b13", size = 11504248 }, ] +[[package]] +name = "pandocfilters" +version = "1.5.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/70/6f/3dd4940bbe001c06a65f88e36bad298bc7a0de5036115639926b0c5c0458/pandocfilters-1.5.1.tar.gz", hash = "sha256:002b4a555ee4ebc03f8b66307e287fa492e4a77b4ea14d3f934328297bb4939e", size = 8454 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl", hash = "sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc", size = 8663 }, +] + [[package]] name = "parso" version = "0.8.4" @@ -1546,6 +1929,15 @@ requires-dist = [ { name = "scipy", specifier = ">=1.4.0" }, ] +[[package]] +name = "prometheus-client" +version = "0.21.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/62/14/7d0f567991f3a9af8d1cd4f619040c93b68f09a02b6d0b6ab1b2d1ded5fe/prometheus_client-0.21.1.tar.gz", hash = "sha256:252505a722ac04b0456be05c05f75f45d760c2911ffc45f2a06bcaed9f3ae3fb", size = 78551 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ff/c2/ab7d37426c179ceb9aeb109a85cda8948bb269b7561a0be870cc656eefe4/prometheus_client-0.21.1-py3-none-any.whl", hash = "sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301", size = 54682 }, +] + [[package]] name = "prompt-toolkit" version = "3.0.48" @@ -1693,6 +2085,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427", size = 229892 }, ] +[[package]] +name = "python-json-logger" +version = "3.2.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e3/c4/358cd13daa1d912ef795010897a483ab2f0b41c9ea1b35235a8b2f7d15a7/python_json_logger-3.2.1.tar.gz", hash = "sha256:8eb0554ea17cb75b05d2848bc14fb02fbdbd9d6972120781b974380bfa162008", size = 16287 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4b/72/2f30cf26664fcfa0bd8ec5ee62ec90c03bd485e4a294d92aabc76c5203a5/python_json_logger-3.2.1-py3-none-any.whl", hash = "sha256:cdc17047eb5374bd311e748b42f99d71223f3b0e186f4206cc5d52aefe85b090", size = 14924 }, +] + [[package]] name = "pytz" version = "2024.2" @@ -1740,6 +2141,17 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl", hash = "sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8", size = 30756 }, ] +[[package]] +name = "pywinpty" +version = "2.0.14" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f1/82/90f8750423cba4b9b6c842df227609fb60704482d7abf6dd47e2babc055a/pywinpty-2.0.14.tar.gz", hash = "sha256:18bd9529e4a5daf2d9719aa17788ba6013e594ae94c5a0c27e83df3278b0660e", size = 27769 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/07/09/56376af256eab8cc5f8982a3b138d387136eca27fa1a8a68660e8ed59e4b/pywinpty-2.0.14-cp310-none-win_amd64.whl", hash = "sha256:0b149c2918c7974f575ba79f5a4aad58bd859a52fa9eb1296cc22aa412aa411f", size = 1397115 }, + { url = "https://files.pythonhosted.org/packages/be/e2/af1a99c0432e4e58c9ac8e334ee191790ec9793d33559189b9d2069bdc1d/pywinpty-2.0.14-cp311-none-win_amd64.whl", hash = "sha256:cf2a43ac7065b3e0dc8510f8c1f13a75fb8fde805efa3b8cff7599a1ef497bc7", size = 1397223 }, + { url = "https://files.pythonhosted.org/packages/ad/79/759ae767a3b78d340446efd54dd1fe4f7dafa4fc7be96ed757e44bcdba54/pywinpty-2.0.14-cp312-none-win_amd64.whl", hash = "sha256:55dad362ef3e9408ade68fd173e4f9032b3ce08f68cfe7eacb2c263ea1179737", size = 1397207 }, +] + [[package]] name = "pyyaml" version = "6.0.2" @@ -1855,6 +2267,27 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6", size = 64928 }, ] +[[package]] +name = "rfc3339-validator" +version = "0.1.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "six" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/28/ea/a9387748e2d111c3c2b275ba970b735e04e15cdb1eb30693b6b5708c4dbd/rfc3339_validator-0.1.4.tar.gz", hash = "sha256:138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b", size = 5513 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl", hash = "sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa", size = 3490 }, +] + +[[package]] +name = "rfc3986-validator" +version = "0.1.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/da/88/f270de456dd7d11dcc808abfa291ecdd3f45ff44e3b549ffa01b126464d0/rfc3986_validator-0.1.1.tar.gz", hash = "sha256:3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055", size = 6760 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl", hash = "sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9", size = 4242 }, +] + [[package]] name = "rpds-py" version = "0.22.3" @@ -1987,6 +2420,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/54/24/b4293291fa1dd830f353d2cb163295742fa87f179fcc8a20a306a81978b7/SecretStorage-3.3.3-py3-none-any.whl", hash = "sha256:f356e6628222568e3af06f2eba8df495efa13b3b63081dafd4f7d9a7b7bc9f99", size = 15221 }, ] +[[package]] +name = "send2trash" +version = "1.8.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/fd/3a/aec9b02217bb79b87bbc1a21bc6abc51e3d5dcf65c30487ac96c0908c722/Send2Trash-1.8.3.tar.gz", hash = "sha256:b18e7a3966d99871aefeb00cfbcfdced55ce4871194810fc71f4aa484b953abf", size = 17394 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/40/b0/4562db6223154aa4e22f939003cb92514c79f3d4dccca3444253fd17f902/Send2Trash-1.8.3-py3-none-any.whl", hash = "sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9", size = 18072 }, +] + [[package]] name = "setuptools" version = "75.7.0" @@ -2049,6 +2491,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/f5/e9/0f3818de7684d9ea4b3e41740a22e407898fecd544af5724ef39b5a12104/skyfield-1.49-py3-none-any.whl", hash = "sha256:4986b7d5368f159050106282dec0f97e193c32689605ee4077d7d49465aaf13e", size = 336226 }, ] +[[package]] +name = "sniffio" +version = "1.3.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/a2/87/a6771e1546d97e7e041b6ae58d80074f81b7d5121207425c964ddf5cfdbd/sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc", size = 20372 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2", size = 10235 }, +] + [[package]] name = "snowballstemmer" version = "2.2.0" @@ -2361,6 +2812,32 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/b6/cb/b86984bed139586d01532a587464b5805f12e397594f19f931c4c2fbfa61/tenacity-9.0.0-py3-none-any.whl", hash = "sha256:93de0c98785b27fcf659856aa9f54bfbd399e29969b0621bc7f762bd441b4539", size = 28169 }, ] +[[package]] +name = "terminado" +version = "0.18.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "ptyprocess", marker = "os_name != 'nt'" }, + { name = "pywinpty", marker = "os_name == 'nt'" }, + { name = "tornado" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/8a/11/965c6fd8e5cc254f1fe142d547387da17a8ebfd75a3455f637c663fb38a0/terminado-0.18.1.tar.gz", hash = "sha256:de09f2c4b85de4765f7714688fff57d3e75bad1f909b589fde880460c753fd2e", size = 32701 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl", hash = "sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0", size = 14154 }, +] + +[[package]] +name = "tinycss2" +version = "1.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "webencodings" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/7a/fd/7a5ee21fd08ff70d3d33a5781c255cbe779659bd03278feb98b19ee550f4/tinycss2-1.4.0.tar.gz", hash = "sha256:10c0972f6fc0fbee87c3edb76549357415e94548c1ae10ebccdea16fb404a9b7", size = 87085 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl", hash = "sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289", size = 26610 }, +] + [[package]] name = "tomli" version = "2.2.1" @@ -2417,6 +2894,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/00/c0/8f5d070730d7836adc9c9b6408dec68c6ced86b304a9b26a14df072a6e8c/traitlets-5.14.3-py3-none-any.whl", hash = "sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f", size = 85359 }, ] +[[package]] +name = "types-python-dateutil" +version = "2.9.0.20241206" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/a9/60/47d92293d9bc521cd2301e423a358abfac0ad409b3a1606d8fbae1321961/types_python_dateutil-2.9.0.20241206.tar.gz", hash = "sha256:18f493414c26ffba692a72369fea7a154c502646301ebfe3d56a04b3767284cb", size = 13802 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0f/b3/ca41df24db5eb99b00d97f89d7674a90cb6b3134c52fb8121b6d8d30f15c/types_python_dateutil-2.9.0.20241206-py3-none-any.whl", hash = "sha256:e248a4bc70a486d3e3ec84d0dc30eec3a5f979d6e7ee4123ae043eedbb987f53", size = 14384 }, +] + [[package]] name = "typing-extensions" version = "4.12.2" @@ -2444,6 +2930,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/37/87/1f677586e8ac487e29672e4b17455758fce261de06a0d086167bb760361a/uc_micro_py-1.0.3-py3-none-any.whl", hash = "sha256:db1dffff340817673d7b466ec86114a9dc0e9d4d9b5ba229d9d60e5c12600cd5", size = 6229 }, ] +[[package]] +name = "uri-template" +version = "1.3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/31/c7/0336f2bd0bcbada6ccef7aaa25e443c118a704f828a0620c6fa0207c1b64/uri-template-1.3.0.tar.gz", hash = "sha256:0e00f8eb65e18c7de20d595a14336e9f337ead580c70934141624b6d1ffdacc7", size = 21678 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl", hash = "sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363", size = 11140 }, +] + [[package]] name = "urllib3" version = "2.3.0" @@ -2462,6 +2957,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl", hash = "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859", size = 34166 }, ] +[[package]] +name = "webcolors" +version = "24.11.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/7b/29/061ec845fb58521848f3739e466efd8250b4b7b98c1b6c5bf4d40b419b7e/webcolors-24.11.1.tar.gz", hash = "sha256:ecb3d768f32202af770477b8b65f318fa4f566c22948673a977b00d589dd80f6", size = 45064 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/60/e8/c0e05e4684d13459f93d312077a9a2efbe04d59c393bc2b8802248c908d4/webcolors-24.11.1-py3-none-any.whl", hash = "sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9", size = 14934 }, +] + [[package]] name = "webencodings" version = "0.5.1" @@ -2471,6 +2975,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78", size = 11774 }, ] +[[package]] +name = "websocket-client" +version = "1.8.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e6/30/fba0d96b4b5fbf5948ed3f4681f7da2f9f64512e1d303f94b4cc174c24a5/websocket_client-1.8.0.tar.gz", hash = "sha256:3239df9f44da632f96012472805d40a23281a991027ce11d2f45a6f24ac4c3da", size = 54648 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5a/84/44687a29792a70e111c5c477230a72c4b957d88d16141199bf9acb7537a3/websocket_client-1.8.0-py3-none-any.whl", hash = "sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526", size = 58826 }, +] + [[package]] name = "wheel" version = "0.45.1" From acac2dc92e0ce7a1ca9e8b7f85347a6dd8738ce9 Mon Sep 17 00:00:00 2001 From: Bryan Weber Date: Fri, 15 Mar 2024 14:48:14 -0400 Subject: [PATCH 3/7] Add script to draw the time since periapsis figure --- drawing-scripts/apse-line.ipynb | 101 +++++----- .../elliptical-orbit-definitions.ipynb | 8 +- .../time-since-periapsis-area.ipynb | 175 ++++++++++++++++++ 3 files changed, 227 insertions(+), 57 deletions(-) create mode 100644 drawing-scripts/time-since-periapsis-area.ipynb diff --git a/drawing-scripts/apse-line.ipynb b/drawing-scripts/apse-line.ipynb index 9460f96..3dd28ef 100644 --- a/drawing-scripts/apse-line.ipynb +++ b/drawing-scripts/apse-line.ipynb @@ -12,7 +12,7 @@ }, { "cell_type": "code", - "execution_count": 30, + "execution_count": 2, "id": "04a954fc-dc9f-4267-aa55-5ec2d6637832", "metadata": {}, "outputs": [], @@ -23,7 +23,7 @@ }, { "cell_type": "code", - "execution_count": 115, + "execution_count": 3, "id": "de90a182-c281-454e-80c3-d8e568a88740", "metadata": {}, "outputs": [ @@ -31,64 +31,59 @@ "data": { "image/svg+xml": [ "\n", - "\n", + "\n", "\n", "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", + "\n", + "\n", "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", "\n", - "\n", - " \n", - " \n", - " \n", - " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", "\n", + "\n", + "\n", + "\n", + "\n", + "\n", "\n", "\n" ], "text/plain": [] }, - "execution_count": 115, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } @@ -199,15 +194,15 @@ ], "metadata": { "kernelspec": { - "display_name": "Julia 1.4.1", + "display_name": "Julia 1.10.2", "language": "julia", - "name": "julia-1.4" + "name": "julia-1.10" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", - "version": "1.4.1" + "version": "1.10.2" } }, "nbformat": 4, diff --git a/drawing-scripts/elliptical-orbit-definitions.ipynb b/drawing-scripts/elliptical-orbit-definitions.ipynb index 3abc1aa..f58349a 100644 --- a/drawing-scripts/elliptical-orbit-definitions.ipynb +++ b/drawing-scripts/elliptical-orbit-definitions.ipynb @@ -112,7 +112,7 @@ "\n", " offset /= 5\n", " end\n", - " \n", + "\n", " @layer begin\n", " setcolor(252/255, 141/255, 98/255, 1.0)\n", " circle(semimajor, 0, pointradius/2, :fill)\n", @@ -162,15 +162,15 @@ ], "metadata": { "kernelspec": { - "display_name": "Julia 1.6.3", + "display_name": "Julia 1.10.2", "language": "julia", - "name": "julia-1.6" + "name": "julia-1.10" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", - "version": "1.6.3" + "version": "1.10.2" } }, "nbformat": 4, diff --git a/drawing-scripts/time-since-periapsis-area.ipynb b/drawing-scripts/time-since-periapsis-area.ipynb new file mode 100644 index 0000000..c864047 --- /dev/null +++ b/drawing-scripts/time-since-periapsis-area.ipynb @@ -0,0 +1,175 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "f3e1ca6c-23e3-4764-b1fb-8d970d310112", + "metadata": {}, + "outputs": [], + "source": [ + "using Luxor, LightXML" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "d2a3ba7b-3e72-4301-aba6-b555ad30cfc7", + "metadata": {}, + "outputs": [], + "source": [ + "pointradius = 4\n", + "linewidth = 2;" + ] + }, + { + "cell_type": "code", + "execution_count": 77, + "id": "ce4c8295-bd78-4022-9d00-35ed0851dfad", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "image/svg+xml": [ + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/plain": [] + }, + "execution_count": 77, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "drawing_height = 400\n", + "drawing_width = 500\n", + "Drawing(drawing_width, drawing_height, :svg)\n", + "box(O, Point(drawing_width, drawing_height), :stroke)\n", + "# bbox = BoundingBox(;centered=false)\n", + "x_axis_height = 13/16*drawing_height\n", + "origin(drawing_width/2, x_axis_height)\n", + "\n", + "@layer begin\n", + " setdash(\"dash\")\n", + " setline(linewidth/2)\n", + " rule(O)\n", + "end\n", + "\n", + "origin(100, x_axis_height)\n", + "semimajor = 300\n", + "periapsis = Point(semimajor, 0)\n", + "r_p = 65\n", + "m1 = Point(semimajor - r_p, 0)\n", + "e = 1 - r_p/semimajor\n", + "semiminor = -semimajor * sqrt(1 - e^2)\n", + "epoly = ellipse(m1, -m1, 2semimajor, vertices=true)\n", + "B = epoly[60]\n", + "angle = slope(m1, B)\n", + "circle_point = B * Point(1, -semimajor/semiminor)\n", + "angle_E = slope(O, circle_point)\n", + "\n", + "@layer begin\n", + " setcolor(sethue(\"goldenrod\")..., 0.8)\n", + " move(periapsis)\n", + " poly(epoly[60:101])\n", + " carc(O, semimajor, 0, angle_E)\n", + " fillpath()\n", + "end\n", + "@layer begin\n", + " setcolor(sethue(\"mediumpurple\")..., 0.2)\n", + " move(O)\n", + " line(circle_point)\n", + " line(m1)\n", + " line(O)\n", + " fillpath()\n", + "end\n", + "@layer begin\n", + " setcolor(sethue(\"mistyrose\")..., 0.8)\n", + " move(epoly[60])\n", + " poly(epoly[60:101])\n", + " line(m1)\n", + " line(epoly[60])\n", + " fillpath()\n", + "end\n", + "\n", + "@layer begin\n", + " setcolor(\"gray80\")\n", + " circle(m1, pointradius, :fill)\n", + " circle(O, semimajor, :stroke)\n", + " circle(O, pointradius, :fill)\n", + "end\n", + "@layer begin\n", + " setcolor(141/255, 160/255, 203/255, 1.0)\n", + " poly(epoly, :stroke)\n", + "end\n", + "@layer begin\n", + " setline(linewidth/2)\n", + " line(m1, B, :stroke)\n", + " arrow(m1, semimajor/5, 0, angle, clockwise=false)\n", + " arrow(O, 50, 0, angle_E, clockwise=false)\n", + " line(Point(B.x, 0), circle_point, :stroke)\n", + " line(O, circle_point, :stroke)\n", + " # line(m1, circle_point, :stroke)\n", + "end\n", + "\n", + "top_left_corner = getworldposition(Point(0, 0), centered=false)\n", + "finish()\n", + "preview()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "48a2242c-c291-4e13-bc40-bccc228ce5b4", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ac93eb1a-1e34-4db4-b612-2623af426e7c", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Julia 1.10.2", + "language": "julia", + "name": "julia-1.10" + }, + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.10.2" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From 6f699d835121bc1600f438c47ec43167cd71ebfc Mon Sep 17 00:00:00 2001 From: Bryan Weber Date: Tue, 14 Jan 2025 15:00:38 -0500 Subject: [PATCH 4/7] Jupyter Lab wants to have node available --- .mise.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/.mise.toml b/.mise.toml index dfa00fd..011167a 100644 --- a/.mise.toml +++ b/.mise.toml @@ -4,6 +4,7 @@ python = "3.12" uv = "latest" julia = "latest" bun = "latest" +node = "22" [env] _.python.venv = { path = ".venv", create = true } From a2793a8bb956322c18100d02360c92a80fd01dd3 Mon Sep 17 00:00:00 2001 From: Bryan Weber Date: Tue, 14 Jan 2025 15:00:54 -0500 Subject: [PATCH 5/7] Julia updates --- .mise.toml | 7 + Manifest.toml | 1708 +++++++++++++++++++++++++++++++++---------------- Project.toml | 1 + 3 files changed, 1160 insertions(+), 556 deletions(-) diff --git a/.mise.toml b/.mise.toml index 011167a..5e9f948 100644 --- a/.mise.toml +++ b/.mise.toml @@ -33,3 +33,10 @@ format = { depends = [ "ruff_format_format", "markdownlint_format", ], description = "Run all the formatting tools", env = { MISE_JOBS = "1" } } +julia_upgrade = { run = "julia --project=. -e 'using Pkg; Pkg.update()'", description = "Upgrade Julia dependencies" } +julia_install = { run = "julia --project=. -e 'using Pkg; Pkg.instantiate()'", description = "Install Julia dependencies", depends = [ + "julia_upgrade", +] } +julia = { depends = [ + "julia_install", +], description = "Upgrade and install Julia dependencies", env = { MISE_JOBS = "1" } } diff --git a/Manifest.toml b/Manifest.toml index 3e55ee5..029f07d 100644 --- a/Manifest.toml +++ b/Manifest.toml @@ -1,47 +1,95 @@ # This file is machine-generated - editing it directly is not advised -julia_version = "1.10.2" +julia_version = "1.11.2" manifest_format = "2.0" -project_hash = "c58a762052c2959d818e0fa9f26be5bfad7d33fb" +project_hash = "e3b33b2c28f4320d78862e3bd56854792daee9be" [[deps.ADTypes]] -git-tree-sha1 = "016833eb52ba2d6bea9fcb50ca295980e728ee24" +git-tree-sha1 = "72af59f5b8f09faee36b4ec48e014a79210f2f4f" uuid = "47edcb42-4c32-4615-8424-f2b9edc5f35b" -version = "0.2.7" +version = "1.11.0" +weakdeps = ["ChainRulesCore", "ConstructionBase", "EnzymeCore"] + + [deps.ADTypes.extensions] + ADTypesChainRulesCoreExt = "ChainRulesCore" + ADTypesConstructionBaseExt = "ConstructionBase" + ADTypesEnzymeCoreExt = "EnzymeCore" + +[[deps.Accessors]] +deps = ["CompositionsBase", "ConstructionBase", "InverseFunctions", "MacroTools"] +git-tree-sha1 = "e93c42e833e6d4bd28be7b3b56d8deb99fd51f25" +uuid = "7d9f7c33-5ae7-4f3b-8dc6-eff91059b697" +version = "0.1.40" + + [deps.Accessors.extensions] + AxisKeysExt = "AxisKeys" + DatesExt = "Dates" + IntervalSetsExt = "IntervalSets" + LinearAlgebraExt = "LinearAlgebra" + StaticArraysExt = "StaticArrays" + StructArraysExt = "StructArrays" + TestExt = "Test" + UnitfulExt = "Unitful" + + [deps.Accessors.weakdeps] + AxisKeys = "94b1ba4f-4ee9-5380-92f1-94cde586c3c5" + Dates = "ade2ca70-3891-5945-98fb-dc099432e06a" + IntervalSets = "8197267c-284f-5f27-9208-e0e47529a953" + LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" + Requires = "ae029012-a4dd-5104-9daa-d747884805df" + StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" + StructArrays = "09ab397b-f2b6-538f-b94a-2f83cf4a842a" + Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" + Unitful = "1986cc42-f94f-5a68-af5c-568840ba703d" [[deps.Adapt]] deps = ["LinearAlgebra", "Requires"] -git-tree-sha1 = "cea4ac3f5b4bc4b3000aa55afb6e5626518948fa" +git-tree-sha1 = "50c3c56a52972d78e8be9fd135bfb91c9574c140" uuid = "79e6a3ab-5dfb-504d-930d-738a2a938a0e" -version = "4.0.3" +version = "4.1.1" weakdeps = ["StaticArrays"] [deps.Adapt.extensions] AdaptStaticArraysExt = "StaticArrays" +[[deps.AliasTables]] +deps = ["PtrArrays", "Random"] +git-tree-sha1 = "9876e1e164b144ca45e9e3198d0b689cadfed9ff" +uuid = "66dad0bd-aa9a-41b7-9441-69ab47430ed8" +version = "1.1.3" + +[[deps.AlmostBlockDiagonals]] +deps = ["ConcreteStructs"] +git-tree-sha1 = "743abe5e5fe8cff96dad4123f263c0d8eee281c0" +uuid = "a95523ee-d6da-40b5-98cc-27bc505739d5" +version = "0.1.10" + [[deps.ArgTools]] uuid = "0dad84c5-d112-42e6-8d28-ef12dabb789f" -version = "1.1.1" +version = "1.1.2" [[deps.ArnoldiMethod]] deps = ["LinearAlgebra", "Random", "StaticArrays"] -git-tree-sha1 = "62e51b39331de8911e4a7ff6f5aaf38a5f4cc0ae" +git-tree-sha1 = "d57bd3762d308bded22c3b82d033bff85f6195c6" uuid = "ec485272-7323-5ecc-a04f-4719b315124d" -version = "0.2.0" +version = "0.4.0" [[deps.ArrayInterface]] -deps = ["Adapt", "LinearAlgebra", "SparseArrays", "SuiteSparse"] -git-tree-sha1 = "44691067188f6bd1b2289552a23e4b7572f4528d" +deps = ["Adapt", "LinearAlgebra"] +git-tree-sha1 = "017fcb757f8e921fb44ee063a7aafe5f89b86dd1" uuid = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9" -version = "7.9.0" +version = "7.18.0" [deps.ArrayInterface.extensions] ArrayInterfaceBandedMatricesExt = "BandedMatrices" ArrayInterfaceBlockBandedMatricesExt = "BlockBandedMatrices" ArrayInterfaceCUDAExt = "CUDA" + ArrayInterfaceCUDSSExt = "CUDSS" + ArrayInterfaceChainRulesCoreExt = "ChainRulesCore" ArrayInterfaceChainRulesExt = "ChainRules" ArrayInterfaceGPUArraysCoreExt = "GPUArraysCore" ArrayInterfaceReverseDiffExt = "ReverseDiff" + ArrayInterfaceSparseArraysExt = "SparseArrays" ArrayInterfaceStaticArraysCoreExt = "StaticArraysCore" ArrayInterfaceTrackerExt = "Tracker" @@ -49,17 +97,20 @@ version = "7.9.0" BandedMatrices = "aae01518-5342-5314-be14-df237901396f" BlockBandedMatrices = "ffab5731-97b5-5995-9138-79e8c1846df0" CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" + CUDSS = "45b445bb-4962-46a0-9369-b4df9d0f772e" ChainRules = "082447d4-558c-5d27-93f4-14fc19e9eca2" + ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" GPUArraysCore = "46192b85-c4d5-4398-a991-12ede77f4527" ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" + SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" StaticArraysCore = "1e83bf80-4336-4d27-bf5d-d5a4f845583c" Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" [[deps.ArrayLayouts]] deps = ["FillArrays", "LinearAlgebra"] -git-tree-sha1 = "e46675dbc095ddfdf2b5fba247d5a25f34e1f8a2" +git-tree-sha1 = "2bf6e01f453284cb61c312836b4680331ddfc44b" uuid = "4c555306-a7a7-4459-81d9-ec55ddd5c99a" -version = "1.6.1" +version = "1.11.0" weakdeps = ["SparseArrays"] [deps.ArrayLayouts.extensions] @@ -67,12 +118,13 @@ weakdeps = ["SparseArrays"] [[deps.Artifacts]] uuid = "56f22d72-fd6d-98f1-02f0-08ddc0907c33" +version = "1.11.0" [[deps.BandedMatrices]] deps = ["ArrayLayouts", "FillArrays", "LinearAlgebra", "PrecompileTools"] -git-tree-sha1 = "fe7ed7b33416db994f706f66e31bbd1b378f71b7" +git-tree-sha1 = "fc8d8197de6c69ad6fd01c255b6b386ca8199331" uuid = "aae01518-5342-5314-be14-df237901396f" -version = "1.6.0" +version = "1.9.0" weakdeps = ["SparseArrays"] [deps.BandedMatrices.extensions] @@ -80,43 +132,82 @@ weakdeps = ["SparseArrays"] [[deps.Base64]] uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" - -[[deps.BenchmarkTools]] -deps = ["JSON", "Logging", "Printf", "Profile", "Statistics", "UUIDs"] -git-tree-sha1 = "f1dff6729bc61f4d49e140da1af55dcd1ac97b2f" -uuid = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf" -version = "1.5.0" +version = "1.11.0" [[deps.BitFlags]] -git-tree-sha1 = "2dc09997850d68179b69dafb58ae806167a32b1b" +git-tree-sha1 = "0691e34b3bb8be9307330f88d1a3c3f25466c24d" uuid = "d1d4a3ce-64b1-5f1a-9ba4-7e7e69966f35" -version = "0.1.8" +version = "0.1.9" [[deps.BitTwiddlingConvenienceFunctions]] deps = ["Static"] -git-tree-sha1 = "0c5f81f47bbbcf4aea7b2959135713459170798b" +git-tree-sha1 = "f21cfd4950cb9f0587d5067e69405ad2acd27b87" uuid = "62783981-4cbd-42fc-bca8-16325de8dc4b" -version = "0.1.5" +version = "0.1.6" [[deps.BoundaryValueDiffEq]] -deps = ["ADTypes", "Adapt", "ArrayInterface", "BandedMatrices", "ConcreteStructs", "DiffEqBase", "FastAlmostBandedMatrices", "ForwardDiff", "LinearAlgebra", "LinearSolve", "NonlinearSolve", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays", "SparseDiffTools", "Tricks", "TruncatedStacktraces", "UnPack"] -git-tree-sha1 = "3ff968887be48760b0e9e8650c2d05c96cdea9d8" +deps = ["ADTypes", "Adapt", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqAscher", "BoundaryValueDiffEqCore", "BoundaryValueDiffEqFIRK", "BoundaryValueDiffEqMIRK", "BoundaryValueDiffEqMIRKN", "BoundaryValueDiffEqShooting", "ConcreteStructs", "DiffEqBase", "FastAlmostBandedMatrices", "FastClosures", "ForwardDiff", "LineSearch", "LinearAlgebra", "LinearSolve", "Logging", "NonlinearSolveFirstOrder", "OrdinaryDiffEq", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays", "SparseDiffTools"] +git-tree-sha1 = "b1389abc8d064d930419714b852c1b584c8f7dd1" uuid = "764a87c0-6b3e-53db-9096-fe964310641d" -version = "5.6.3" +version = "5.13.0" [deps.BoundaryValueDiffEq.extensions] BoundaryValueDiffEqODEInterfaceExt = "ODEInterface" - BoundaryValueDiffEqOrdinaryDiffEqExt = "OrdinaryDiffEq" [deps.BoundaryValueDiffEq.weakdeps] ODEInterface = "54ca160b-1b9f-5127-a996-1867f4bc2a2c" - OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" + +[[deps.BoundaryValueDiffEqAscher]] +deps = ["ADTypes", "Adapt", "AlmostBlockDiagonals", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "FastClosures", "ForwardDiff", "LinearAlgebra", "LinearSolve", "Logging", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays", "SparseDiffTools"] +git-tree-sha1 = "6f1104ac172140ad5dc8d7541357f47e30946031" +uuid = "7227322d-7511-4e07-9247-ad6ff830280e" +version = "1.2.0" + +[[deps.BoundaryValueDiffEqCore]] +deps = ["ADTypes", "Adapt", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "ForwardDiff", "LineSearch", "LinearAlgebra", "LinearSolve", "Logging", "NonlinearSolveFirstOrder", "PreallocationTools", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays", "SparseDiffTools"] +git-tree-sha1 = "7ecf44dd453add837fda0e7dfb4740d7638e3c81" +uuid = "56b672f2-a5fe-4263-ab2d-da677488eb3a" +version = "1.3.0" + +[[deps.BoundaryValueDiffEqFIRK]] +deps = ["ADTypes", "Adapt", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "FastAlmostBandedMatrices", "FastClosures", "ForwardDiff", "LinearAlgebra", "LinearSolve", "Logging", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays", "SparseDiffTools"] +git-tree-sha1 = "feee7d8530e65c0ac38cc81321348c0a92c66f91" +uuid = "85d9eb09-370e-4000-bb32-543851f73618" +version = "1.3.0" + +[[deps.BoundaryValueDiffEqMIRK]] +deps = ["ADTypes", "Adapt", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "FastAlmostBandedMatrices", "FastClosures", "ForwardDiff", "LinearAlgebra", "LinearSolve", "Logging", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays", "SparseDiffTools"] +git-tree-sha1 = "b642f3b968efa51abba41aaf29d2ad869631cf0c" +uuid = "1a22d4ce-7765-49ea-b6f2-13c8438986a6" +version = "1.3.0" + +[[deps.BoundaryValueDiffEqMIRKN]] +deps = ["ADTypes", "Adapt", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "FastAlmostBandedMatrices", "FastClosures", "ForwardDiff", "LineSearch", "LinearAlgebra", "LinearSolve", "Logging", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays", "SparseDiffTools"] +git-tree-sha1 = "8cb77e53a8695cef049e5d0556e6936f5a7503d6" +uuid = "9255f1d6-53bf-473e-b6bd-23f1ff009da4" +version = "1.1.0" + +[[deps.BoundaryValueDiffEqShooting]] +deps = ["ADTypes", "Adapt", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "FastAlmostBandedMatrices", "FastClosures", "ForwardDiff", "LinearAlgebra", "LinearSolve", "Logging", "OrdinaryDiffEq", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays", "SparseDiffTools"] +git-tree-sha1 = "bffd6c187eb8f55057d444754fda85efc2d6f5a6" +uuid = "ed55bfe0-3725-4db6-871e-a1dc9f42a757" +version = "1.3.0" + +[[deps.BracketingNonlinearSolve]] +deps = ["CommonSolve", "ConcreteStructs", "NonlinearSolveBase", "PrecompileTools", "Reexport", "SciMLBase"] +git-tree-sha1 = "95cb19c37ea427617e9795655667712f03058d98" +uuid = "70df07ce-3d50-431d-a3e7-ca6ddb60ac1e" +version = "1.1.0" +weakdeps = ["ForwardDiff"] + + [deps.BracketingNonlinearSolve.extensions] + BracketingNonlinearSolveForwardDiffExt = "ForwardDiff" [[deps.Bzip2_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "9e2a6b69137e6969bab0152632dcb3bc108c8bdd" +git-tree-sha1 = "8873e196c2eb87962a2048b3b8e08946535864a1" uuid = "6e34b625-4abd-537c-b88f-471c36dfa7a0" -version = "1.0.8+1" +version = "1.0.8+4" [[deps.CEnum]] git-tree-sha1 = "389ad5c84de1ae7cf0e28e381131c98ea87d54fc" @@ -125,33 +216,33 @@ version = "0.5.0" [[deps.CPUSummary]] deps = ["CpuId", "IfElse", "PrecompileTools", "Static"] -git-tree-sha1 = "601f7e7b3d36f18790e2caf83a882d88e9b71ff1" +git-tree-sha1 = "5a97e67919535d6841172016c9530fd69494e5ec" uuid = "2a0fbf3d-bb9c-48f3-b0a9-814d99fd7ab9" -version = "0.2.4" +version = "0.2.6" + +[[deps.CSTParser]] +deps = ["Tokenize"] +git-tree-sha1 = "0157e592151e39fa570645e2b2debcdfb8a0f112" +uuid = "00ebfdb7-1f24-5e51-bd34-a7502290713f" +version = "3.4.3" [[deps.Cairo]] deps = ["Cairo_jll", "Colors", "Glib_jll", "Graphics", "Libdl", "Pango_jll"] -git-tree-sha1 = "d0b3f8b4ad16cb0a2988c6788646a5e6a17b6b1b" +git-tree-sha1 = "71aa551c5c33f1a4415867fe06b7844faadb0ae9" uuid = "159f3aea-2a34-519c-b102-8c37f9878175" -version = "1.0.5" +version = "1.1.1" [[deps.Cairo_jll]] deps = ["Artifacts", "Bzip2_jll", "CompilerSupportLibraries_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "JLLWrappers", "LZO_jll", "Libdl", "Pixman_jll", "Xorg_libXext_jll", "Xorg_libXrender_jll", "Zlib_jll", "libpng_jll"] -git-tree-sha1 = "a4c43f59baa34011e303e76f5c8c91bf58415aaf" +git-tree-sha1 = "009060c9a6168704143100f36ab08f06c2af4642" uuid = "83423d85-b0ee-5818-9007-b63ccbeb887a" -version = "1.18.0+1" - -[[deps.Calculus]] -deps = ["LinearAlgebra"] -git-tree-sha1 = "f641eb0a4f00c343bbc32346e1217b86f3ce9dad" -uuid = "49dc2e85-a5d0-5ad3-a950-438e2897f1b9" -version = "0.5.1" +version = "1.18.2+1" [[deps.ChainRulesCore]] deps = ["Compat", "LinearAlgebra"] -git-tree-sha1 = "575cd02e080939a33b6df6c5853d14924c08e35b" +git-tree-sha1 = "1713c74e00545bfe14605d2a2be1712de8fbcb58" uuid = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" -version = "1.23.0" +version = "1.25.1" weakdeps = ["SparseArrays"] [deps.ChainRulesCore.extensions] @@ -159,33 +250,27 @@ weakdeps = ["SparseArrays"] [[deps.CloseOpenIntervals]] deps = ["Static", "StaticArrayInterface"] -git-tree-sha1 = "70232f82ffaab9dc52585e0dd043b5e0c6b714f1" +git-tree-sha1 = "05ba0d07cd4fd8b7a39541e31a7b0254704ea581" uuid = "fb6a15b2-703c-40df-9091-08a04967cfa9" -version = "0.1.12" - -[[deps.CodecBzip2]] -deps = ["Bzip2_jll", "Libdl", "TranscodingStreams"] -git-tree-sha1 = "9b1ca1aa6ce3f71b3d1840c538a8210a043625eb" -uuid = "523fee87-0ab8-5b00-afb7-3ecf72e48cfd" -version = "0.8.2" +version = "0.1.13" [[deps.CodecZlib]] deps = ["TranscodingStreams", "Zlib_jll"] -git-tree-sha1 = "59939d8a997469ee05c4b4944560a820f9ba0d73" +git-tree-sha1 = "bce6804e5e6044c6daab27bb533d1295e4a2e759" uuid = "944b1d66-785c-5afd-91f1-9de20f533193" -version = "0.7.4" +version = "0.7.6" [[deps.ColorSchemes]] deps = ["ColorTypes", "ColorVectorSpace", "Colors", "FixedPointNumbers", "PrecompileTools", "Random"] -git-tree-sha1 = "67c1f244b991cad9b0aa4b7540fb758c2488b129" +git-tree-sha1 = "c785dfb1b3bfddd1da557e861b919819b82bbe5b" uuid = "35d6a980-a343-548e-a6ea-1d62b119f2f4" -version = "3.24.0" +version = "3.27.1" [[deps.ColorTypes]] deps = ["FixedPointNumbers", "Random"] -git-tree-sha1 = "eb7f0f8307f71fac7c606984ea5fb2817275d6e4" +git-tree-sha1 = "b10d0b65641d57b8b4d5e234446582de5047050d" uuid = "3da002f7-5984-5a60-b8a6-cbb66c0b333f" -version = "0.11.4" +version = "0.11.5" [[deps.ColorVectorSpace]] deps = ["ColorTypes", "FixedPointNumbers", "LinearAlgebra", "Requires", "Statistics", "TensorCore"] @@ -199,9 +284,15 @@ weakdeps = ["SpecialFunctions"] [[deps.Colors]] deps = ["ColorTypes", "FixedPointNumbers", "Reexport"] -git-tree-sha1 = "fc08e5930ee9a4e03f84bfb5211cb54e7769758a" +git-tree-sha1 = "362a287c3aa50601b0bc359053d5c2468f0e7ce0" uuid = "5ae59095-9a9b-59fe-a467-6f913c188581" -version = "0.12.10" +version = "0.12.11" + +[[deps.CommonMark]] +deps = ["Crayons", "PrecompileTools"] +git-tree-sha1 = "3faae67b8899797592335832fccf4b3c80bb04fa" +uuid = "a80b9123-70ca-4bc0-993e-6e3bcb318db6" +version = "0.8.15" [[deps.CommonSolve]] git-tree-sha1 = "0eee5eb66b1cf62cd6ad1b460238e60e4b09400c" @@ -209,16 +300,21 @@ uuid = "38540f10-b2f7-11e9-35d8-d573e4eb0ff2" version = "0.2.4" [[deps.CommonSubexpressions]] -deps = ["MacroTools", "Test"] -git-tree-sha1 = "7b8a93dba8af7e3b42fecabf646260105ac373f7" +deps = ["MacroTools"] +git-tree-sha1 = "cda2cfaebb4be89c9084adaca7dd7333369715c5" uuid = "bbf7d656-a473-5ed7-a52c-81e309532950" -version = "0.3.0" +version = "0.3.1" + +[[deps.CommonWorldInvalidations]] +git-tree-sha1 = "ae52d1c52048455e85a387fbee9be553ec2b68d0" +uuid = "f70d9fcc-98c5-4d4a-abd7-e4cdeebd8ca8" +version = "1.0.0" [[deps.Compat]] deps = ["TOML", "UUIDs"] -git-tree-sha1 = "c955881e3c981181362ae4088b35995446298b80" +git-tree-sha1 = "8ae8d32e09f0dcf42a36b90d4e17f5dd2e4c4215" uuid = "34da2185-b29b-5c13-b0c7-acf172513d20" -version = "4.14.0" +version = "4.16.0" weakdeps = ["Dates", "LinearAlgebra"] [deps.Compat.extensions] @@ -227,7 +323,16 @@ weakdeps = ["Dates", "LinearAlgebra"] [[deps.CompilerSupportLibraries_jll]] deps = ["Artifacts", "Libdl"] uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae" -version = "1.1.0+0" +version = "1.1.1+0" + +[[deps.CompositionsBase]] +git-tree-sha1 = "802bb88cd69dfd1509f6670416bd4434015693ad" +uuid = "a33af91c-f02d-484b-be07-31d278c5ca2b" +version = "0.1.2" +weakdeps = ["InverseFunctions"] + + [deps.CompositionsBase.extensions] + CompositionsBaseInverseFunctionsExt = "InverseFunctions" [[deps.ConcreteStructs]] git-tree-sha1 = "f749037478283d372048690eb3b5f92a79432b34" @@ -236,34 +341,35 @@ version = "0.2.3" [[deps.ConcurrentUtilities]] deps = ["Serialization", "Sockets"] -git-tree-sha1 = "87944e19ea747808b73178ce5ebb74081fdf2d35" +git-tree-sha1 = "f36e5e8fdffcb5646ea5da81495a5a7566005127" uuid = "f0e56b4a-5159-44fe-b623-3e5288b988bb" -version = "2.4.0" +version = "2.4.3" [[deps.Conda]] deps = ["Downloads", "JSON", "VersionParsing"] -git-tree-sha1 = "51cab8e982c5b598eea9c8ceaced4b58d9dd37c9" +git-tree-sha1 = "b19db3927f0db4151cb86d073689f2428e524576" uuid = "8f4d0f93-b110-5947-807f-2305c1781a2d" -version = "1.10.0" +version = "1.10.2" [[deps.ConstructionBase]] -deps = ["LinearAlgebra"] -git-tree-sha1 = "c53fc348ca4d40d7b371e71fd52251839080cbc9" +git-tree-sha1 = "76219f1ed5771adbb096743bff43fb5fdd4c1157" uuid = "187b0558-2788-49d3-abe0-74a17ed4e7c9" -version = "1.5.4" +version = "1.5.8" [deps.ConstructionBase.extensions] ConstructionBaseIntervalSetsExt = "IntervalSets" + ConstructionBaseLinearAlgebraExt = "LinearAlgebra" ConstructionBaseStaticArraysExt = "StaticArrays" [deps.ConstructionBase.weakdeps] IntervalSets = "8197267c-284f-5f27-9208-e0e47529a953" + LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" [[deps.Contour]] -git-tree-sha1 = "d05d9e7b7aedff4e5b51a029dced05cfb6125781" +git-tree-sha1 = "439e35b0b36e2e5881738abc8857bd92ad6ff9a8" uuid = "d38c429a-6771-53c6-b99e-75d170b6e991" -version = "0.6.2" +version = "0.6.3" [[deps.CpuId]] deps = ["Markdown"] @@ -271,6 +377,11 @@ git-tree-sha1 = "fcbb72b032692610bfbdb15018ac16a36cf2e406" uuid = "adafc99b-e345-5852-983c-f28acb93d879" version = "0.3.1" +[[deps.Crayons]] +git-tree-sha1 = "249fe38abf76d48563e2f4556bebd215aa317e15" +uuid = "a8cc5b0e-0ffa-5ad4-8c14-923d3ee1735f" +version = "4.1.1" + [[deps.DataAPI]] git-tree-sha1 = "abe83f3a2f1b857aac70ef8b269080af17764bbe" uuid = "9a962f9c-6df0-11e9-0e5d-c546b8b5ee8a" @@ -278,9 +389,9 @@ version = "1.16.0" [[deps.DataStructures]] deps = ["Compat", "InteractiveUtils", "OrderedCollections"] -git-tree-sha1 = "0f4b5d62a88d8f59003e43c25a8a90de9eb76317" +git-tree-sha1 = "1d0a14036acb104d9e89698bd408f63ab58cdc82" uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8" -version = "0.18.18" +version = "0.18.20" [[deps.DataValueInterfaces]] git-tree-sha1 = "bfc1187b79289637fa0ef6d4436ebdfe6905cbd6" @@ -290,12 +401,19 @@ version = "1.0.0" [[deps.Dates]] deps = ["Printf"] uuid = "ade2ca70-3891-5945-98fb-dc099432e06a" +version = "1.11.0" + +[[deps.Dbus_jll]] +deps = ["Artifacts", "Expat_jll", "JLLWrappers", "Libdl"] +git-tree-sha1 = "fc173b380865f70627d7dd1190dc2fce6cc105af" +uuid = "ee1fde0b-3d02-5ea6-8484-8dfef6360eab" +version = "1.14.10+0" [[deps.DelayDiffEq]] -deps = ["ArrayInterface", "DataStructures", "DiffEqBase", "LinearAlgebra", "Logging", "OrdinaryDiffEq", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SimpleNonlinearSolve", "SimpleUnPack"] -git-tree-sha1 = "bfae672496149b369172eae6296290a381df2bdf" +deps = ["ArrayInterface", "DataStructures", "DiffEqBase", "LinearAlgebra", "Logging", "OrdinaryDiffEq", "OrdinaryDiffEqCore", "OrdinaryDiffEqDefault", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "OrdinaryDiffEqRosenbrock", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SimpleNonlinearSolve", "SimpleUnPack", "SymbolicIndexingInterface"] +git-tree-sha1 = "7123a01ba4ec2d4058bd14478afd5318c49ea6c1" uuid = "bcd4f6db-9728-5f36-b5f7-82caef46ccdb" -version = "5.47.1" +version = "5.52.0" [[deps.DelimitedFiles]] deps = ["Mmap"] @@ -304,12 +422,13 @@ uuid = "8bb1440f-4735-579b-a4ab-409b98df4dab" version = "1.9.1" [[deps.DiffEqBase]] -deps = ["ArrayInterface", "DataStructures", "DocStringExtensions", "EnumX", "EnzymeCore", "FastBroadcast", "ForwardDiff", "FunctionWrappers", "FunctionWrappersWrappers", "LinearAlgebra", "Logging", "Markdown", "MuladdMacro", "Parameters", "PreallocationTools", "PrecompileTools", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "SparseArrays", "Static", "StaticArraysCore", "Statistics", "Tricks", "TruncatedStacktraces"] -git-tree-sha1 = "b19b2bb1ecd1271334e4b25d605e50f75e68fcae" +deps = ["ArrayInterface", "ConcreteStructs", "DataStructures", "DocStringExtensions", "EnumX", "EnzymeCore", "FastBroadcast", "FastClosures", "FastPower", "ForwardDiff", "FunctionWrappers", "FunctionWrappersWrappers", "LinearAlgebra", "Logging", "Markdown", "MuladdMacro", "Parameters", "PreallocationTools", "PrecompileTools", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SciMLStructures", "Setfield", "Static", "StaticArraysCore", "Statistics", "TruncatedStacktraces"] +git-tree-sha1 = "b1e23a7fe7371934d9d538114a7e7166c1d09e05" uuid = "2b5f629d-d688-5b77-993f-72d75c75574e" -version = "6.148.0" +version = "6.161.0" [deps.DiffEqBase.extensions] + DiffEqBaseCUDAExt = "CUDA" DiffEqBaseChainRulesCoreExt = "ChainRulesCore" DiffEqBaseDistributionsExt = "Distributions" DiffEqBaseEnzymeExt = ["ChainRulesCore", "Enzyme"] @@ -318,10 +437,12 @@ version = "6.148.0" DiffEqBaseMeasurementsExt = "Measurements" DiffEqBaseMonteCarloMeasurementsExt = "MonteCarloMeasurements" DiffEqBaseReverseDiffExt = "ReverseDiff" + DiffEqBaseSparseArraysExt = "SparseArrays" DiffEqBaseTrackerExt = "Tracker" DiffEqBaseUnitfulExt = "Unitful" [deps.DiffEqBase.weakdeps] + CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" Distributions = "31c24e10-a181-5473-b8eb-7969acd0382f" Enzyme = "7da242da-08ed-463a-9acd-ee780be4f1d9" @@ -330,21 +451,21 @@ version = "6.148.0" Measurements = "eff96d63-e80a-5855-80a2-b1b0885c5ab7" MonteCarloMeasurements = "0987c9cc-fe09-11e8-30f0-b96dd679fdca" ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" + SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" Unitful = "1986cc42-f94f-5a68-af5c-568840ba703d" [[deps.DiffEqCallbacks]] -deps = ["DataStructures", "DiffEqBase", "ForwardDiff", "Functors", "LinearAlgebra", "Markdown", "NonlinearSolve", "Parameters", "RecipesBase", "RecursiveArrayTools", "SciMLBase", "StaticArraysCore"] -git-tree-sha1 = "a731383bbafb87d496fb5e66f60c40e4a5f8f726" +deps = ["ConcreteStructs", "DataStructures", "DiffEqBase", "DifferentiationInterface", "Functors", "LinearAlgebra", "Markdown", "RecipesBase", "RecursiveArrayTools", "SciMLBase", "StaticArraysCore"] +git-tree-sha1 = "f6bc598f21c7bf2f7885cff9b3c9078e606ab075" uuid = "459566f4-90b8-5000-8ac3-15dfb0a30def" -version = "3.4.0" -weakdeps = ["OrdinaryDiffEq", "Sundials"] +version = "4.2.2" [[deps.DiffEqNoiseProcess]] -deps = ["DiffEqBase", "Distributions", "GPUArraysCore", "LinearAlgebra", "Markdown", "Optim", "PoissonRandom", "QuadGK", "Random", "Random123", "RandomNumbers", "RecipesBase", "RecursiveArrayTools", "Requires", "ResettableStacks", "SciMLBase", "StaticArraysCore", "Statistics"] -git-tree-sha1 = "65cbbe1450ced323b4b17228ccd96349d96795a7" +deps = ["DiffEqBase", "Distributions", "GPUArraysCore", "LinearAlgebra", "Markdown", "Optim", "PoissonRandom", "QuadGK", "Random", "Random123", "RandomNumbers", "RecipesBase", "RecursiveArrayTools", "ResettableStacks", "SciMLBase", "StaticArraysCore", "Statistics"] +git-tree-sha1 = "880d1fcf95e6492a4e7d65c2866dbdbf6580d4f8" uuid = "77a26b50-5914-5dd7-bc55-306e6241c503" -version = "5.21.0" +version = "5.24.0" [deps.DiffEqNoiseProcess.extensions] DiffEqNoiseProcessReverseDiffExt = "ReverseDiff" @@ -366,15 +487,59 @@ version = "1.15.1" [[deps.DifferentialEquations]] deps = ["BoundaryValueDiffEq", "DelayDiffEq", "DiffEqBase", "DiffEqCallbacks", "DiffEqNoiseProcess", "JumpProcesses", "LinearAlgebra", "LinearSolve", "NonlinearSolve", "OrdinaryDiffEq", "Random", "RecursiveArrayTools", "Reexport", "SciMLBase", "SteadyStateDiffEq", "StochasticDiffEq", "Sundials"] -git-tree-sha1 = "81042254a307980b8ab5b67033aca26c2e157ebb" +git-tree-sha1 = "d55af9d6b51c54f81ae30d1a463206d32cc4c24a" uuid = "0c46a032-eb83-5123-abaf-570d42b7fbaa" -version = "7.13.0" +version = "7.15.0" + +[[deps.DifferentiationInterface]] +deps = ["ADTypes", "LinearAlgebra"] +git-tree-sha1 = "5df172ce4e9da710603591f48c7af74eef288892" +uuid = "a0c0ee7d-e4b9-4e03-894e-1c5f64a51d63" +version = "0.6.28" + + [deps.DifferentiationInterface.extensions] + DifferentiationInterfaceChainRulesCoreExt = "ChainRulesCore" + DifferentiationInterfaceDiffractorExt = "Diffractor" + DifferentiationInterfaceEnzymeExt = ["EnzymeCore", "Enzyme"] + DifferentiationInterfaceFastDifferentiationExt = "FastDifferentiation" + DifferentiationInterfaceFiniteDiffExt = "FiniteDiff" + DifferentiationInterfaceFiniteDifferencesExt = "FiniteDifferences" + DifferentiationInterfaceForwardDiffExt = ["ForwardDiff", "DiffResults"] + DifferentiationInterfaceMooncakeExt = "Mooncake" + DifferentiationInterfacePolyesterForwardDiffExt = "PolyesterForwardDiff" + DifferentiationInterfaceReverseDiffExt = ["ReverseDiff", "DiffResults"] + DifferentiationInterfaceSparseArraysExt = "SparseArrays" + DifferentiationInterfaceSparseMatrixColoringsExt = "SparseMatrixColorings" + DifferentiationInterfaceStaticArraysExt = "StaticArrays" + DifferentiationInterfaceSymbolicsExt = "Symbolics" + DifferentiationInterfaceTrackerExt = "Tracker" + DifferentiationInterfaceZygoteExt = ["Zygote", "ForwardDiff"] + + [deps.DifferentiationInterface.weakdeps] + ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" + DiffResults = "163ba53b-c6d8-5494-b064-1a9d43ac40c5" + Diffractor = "9f5e2b26-1114-432f-b630-d3fe2085c51c" + Enzyme = "7da242da-08ed-463a-9acd-ee780be4f1d9" + EnzymeCore = "f151be2c-9106-41f4-ab19-57ee4f262869" + FastDifferentiation = "eb9bf01b-bf85-4b60-bf87-ee5de06c00be" + FiniteDiff = "6a86dc24-6348-571c-b903-95158fe2bd41" + FiniteDifferences = "26cc04aa-876d-5657-8c51-4c34ba976000" + ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210" + Mooncake = "da2b9cff-9c12-43a0-ae48-6db2b0edb7d6" + PolyesterForwardDiff = "98d1487c-24ca-40b6-b7ab-df2af84e126b" + ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" + SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" + SparseMatrixColorings = "0a514795-09f3-496d-8182-132a7b665d35" + StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" + Symbolics = "0c5d862f-8b57-4792-8d23-62f2024744c7" + Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" + Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" [[deps.Distances]] deps = ["LinearAlgebra", "Statistics", "StatsAPI"] -git-tree-sha1 = "66c4c81f259586e8f002eacebc177e1fb06363b0" +git-tree-sha1 = "c7e3a542b999843086e2f29dac96a618c105be1d" uuid = "b4f34e82-e78d-54a5-968a-f98e89d6e8f7" -version = "0.10.11" +version = "0.10.12" weakdeps = ["ChainRulesCore", "SparseArrays"] [deps.Distances.extensions] @@ -384,12 +549,13 @@ weakdeps = ["ChainRulesCore", "SparseArrays"] [[deps.Distributed]] deps = ["Random", "Serialization", "Sockets"] uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b" +version = "1.11.0" [[deps.Distributions]] -deps = ["FillArrays", "LinearAlgebra", "PDMats", "Printf", "QuadGK", "Random", "SpecialFunctions", "Statistics", "StatsAPI", "StatsBase", "StatsFuns"] -git-tree-sha1 = "7c302d7a5fec5214eb8a5a4c466dcf7a51fcf169" +deps = ["AliasTables", "FillArrays", "LinearAlgebra", "PDMats", "Printf", "QuadGK", "Random", "SpecialFunctions", "Statistics", "StatsAPI", "StatsBase", "StatsFuns"] +git-tree-sha1 = "7901a6117656e29fa2c74a58adb682f380922c47" uuid = "31c24e10-a181-5473-b8eb-7969acd0382f" -version = "0.25.107" +version = "0.25.116" [deps.Distributions.extensions] DistributionsChainRulesCoreExt = "ChainRulesCore" @@ -412,21 +578,15 @@ deps = ["ArgTools", "FileWatching", "LibCURL", "NetworkOptions"] uuid = "f43a241f-c20a-4ad4-852c-f6b1247861c6" version = "1.6.0" -[[deps.DualNumbers]] -deps = ["Calculus", "NaNMath", "SpecialFunctions"] -git-tree-sha1 = "5837a837389fccf076445fce071c8ddaea35a566" -uuid = "fa6b7ba4-c1ee-5f82-b5fc-ecf0adba8f74" -version = "0.6.8" - [[deps.EnumX]] git-tree-sha1 = "bdb1942cd4c45e3c678fd11569d5cccd80976237" uuid = "4e289a0a-7415-4d19-859d-a7e5c4648b56" version = "1.0.4" [[deps.EnzymeCore]] -git-tree-sha1 = "59c44d8fbc651c0395d8a6eda64b05ce316f58b4" +git-tree-sha1 = "0cdb7af5c39e92d78a0ee8d0a447d32f7593137e" uuid = "f151be2c-9106-41f4-ab19-57ee4f262869" -version = "0.6.5" +version = "0.8.8" weakdeps = ["Adapt"] [deps.EnzymeCore.extensions] @@ -434,38 +594,48 @@ weakdeps = ["Adapt"] [[deps.EpollShim_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "8e9441ee83492030ace98f9789a654a6d0b1f643" +git-tree-sha1 = "8a4be429317c42cfae6a7fc03c31bad1970c310d" uuid = "2702e6a9-849d-5ed8-8c21-79e8b8f9ee43" -version = "0.0.20230411+0" +version = "0.0.20230411+1" [[deps.ExceptionUnwrapping]] deps = ["Test"] -git-tree-sha1 = "dcb08a0d93ec0b1cdc4af184b26b591e9695423a" +git-tree-sha1 = "d36f682e590a83d63d1c7dbd287573764682d12a" uuid = "460bff9d-24e4-43bc-9d9f-a8973cb893f4" -version = "0.1.10" +version = "0.1.11" [[deps.Expat_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "4558ab818dcceaab612d1bb8c19cee87eda2b83c" +git-tree-sha1 = "e51db81749b0777b2147fbe7b783ee79045b8e99" uuid = "2e619515-83b5-522b-bb60-26c02a35a201" -version = "2.5.0+0" +version = "2.6.4+3" [[deps.ExponentialUtilities]] deps = ["Adapt", "ArrayInterface", "GPUArraysCore", "GenericSchur", "LinearAlgebra", "PrecompileTools", "Printf", "SparseArrays", "libblastrampoline_jll"] -git-tree-sha1 = "8e18940a5ba7f4ddb41fe2b79b6acaac50880a86" +git-tree-sha1 = "cae251c76f353e32d32d76fae2fea655eab652af" uuid = "d4d017d3-3776-5f7e-afef-a10c40355c18" -version = "1.26.1" +version = "1.27.0" +weakdeps = ["StaticArrays"] + + [deps.ExponentialUtilities.extensions] + ExponentialUtilitiesStaticArraysExt = "StaticArrays" [[deps.ExprTools]] git-tree-sha1 = "27415f162e6028e81c72b82ef756bf321213b6ec" uuid = "e2ba6199-217a-4e67-a87a-7c52f15ade04" version = "0.1.10" +[[deps.Expronicon]] +deps = ["MLStyle", "Pkg", "TOML"] +git-tree-sha1 = "fc3951d4d398b5515f91d7fe5d45fc31dccb3c9b" +uuid = "6b7a57c9-7cc1-4fdf-b7f5-e857abae3636" +version = "0.8.5" + [[deps.FFMPEG]] deps = ["FFMPEG_jll"] -git-tree-sha1 = "b57e3acbe22f8484b4b5ff66a7499717fe1a9cc8" +git-tree-sha1 = "53ebe7511fa11d33bec688a9178fac4e49eeee00" uuid = "c87230d0-a227-11e9-1b43-d7ebe4e7570a" -version = "0.4.1" +version = "0.4.2" [[deps.FFMPEG_jll]] deps = ["Artifacts", "Bzip2_jll", "FreeType2_jll", "FriBidi_jll", "JLLWrappers", "LAME_jll", "Libdl", "Ogg_jll", "OpenSSL_jll", "Opus_jll", "PCRE2_jll", "Zlib_jll", "libaom_jll", "libass_jll", "libfdk_aac_jll", "libvorbis_jll", "x264_jll", "x265_jll"] @@ -475,41 +645,73 @@ version = "4.4.4+1" [[deps.FastAlmostBandedMatrices]] deps = ["ArrayInterface", "ArrayLayouts", "BandedMatrices", "ConcreteStructs", "LazyArrays", "LinearAlgebra", "MatrixFactorizations", "PrecompileTools", "Reexport"] -git-tree-sha1 = "178316d87f883f0702e79d9c83a8049484c9f619" +git-tree-sha1 = "3f03d94c71126b6cfe20d3cbcc41c5cd27e1c419" uuid = "9d29842c-ecb8-4973-b1e9-a27b1157504e" -version = "0.1.0" +version = "0.1.4" [[deps.FastBroadcast]] deps = ["ArrayInterface", "LinearAlgebra", "Polyester", "Static", "StaticArrayInterface", "StrideArraysCore"] -git-tree-sha1 = "a6e756a880fc419c8b41592010aebe6a5ce09136" +git-tree-sha1 = "ab1b34570bcdf272899062e1a56285a53ecaae08" uuid = "7034ab61-46d4-4ed7-9d0f-46aef9175898" -version = "0.2.8" +version = "0.3.5" [[deps.FastClosures]] git-tree-sha1 = "acebe244d53ee1b461970f8910c235b259e772ef" uuid = "9aa1b823-49e4-5ca5-8b0f-3971ec8bab6a" version = "0.3.2" +[[deps.FastGaussQuadrature]] +deps = ["LinearAlgebra", "SpecialFunctions", "StaticArrays"] +git-tree-sha1 = "fd923962364b645f3719855c88f7074413a6ad92" +uuid = "442a2c76-b920-505d-bb47-c5924d526838" +version = "1.0.2" + [[deps.FastLapackInterface]] deps = ["LinearAlgebra"] -git-tree-sha1 = "0a59c7d1002f3131de53dc4568a47d15a44daef7" +git-tree-sha1 = "cbf5edddb61a43669710cbc2241bc08b36d9e660" uuid = "29a986be-02c6-4525-aec4-84b980013641" -version = "2.0.2" +version = "2.0.4" + +[[deps.FastPower]] +git-tree-sha1 = "58c3431137131577a7c379d00fea00be524338fb" +uuid = "a4df4552-cc26-4903-aec0-212e50a0e84b" +version = "1.1.1" + + [deps.FastPower.extensions] + FastPowerEnzymeExt = "Enzyme" + FastPowerForwardDiffExt = "ForwardDiff" + FastPowerMeasurementsExt = "Measurements" + FastPowerMonteCarloMeasurementsExt = "MonteCarloMeasurements" + FastPowerReverseDiffExt = "ReverseDiff" + FastPowerTrackerExt = "Tracker" + + [deps.FastPower.weakdeps] + Enzyme = "7da242da-08ed-463a-9acd-ee780be4f1d9" + ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210" + Measurements = "eff96d63-e80a-5855-80a2-b1b0885c5ab7" + MonteCarloMeasurements = "0987c9cc-fe09-11e8-30f0-b96dd679fdca" + ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" + Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" [[deps.FileIO]] deps = ["Pkg", "Requires", "UUIDs"] -git-tree-sha1 = "c5c28c245101bd59154f649e19b038d15901b5dc" +git-tree-sha1 = "2dd20384bf8c6d411b5c7370865b1e9b26cb2ea3" uuid = "5789e2e9-d7fb-5bc7-8068-2c6fae9b9549" -version = "1.16.2" +version = "1.16.6" +weakdeps = ["HTTP"] + + [deps.FileIO.extensions] + HTTPExt = "HTTP" [[deps.FileWatching]] uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee" +version = "1.11.0" [[deps.FillArrays]] -deps = ["LinearAlgebra", "Random"] -git-tree-sha1 = "5b93957f6dcd33fc343044af3d48c215be2562f1" +deps = ["LinearAlgebra"] +git-tree-sha1 = "6a70198746448456524cb442b8af316927ff3e1a" uuid = "1a297f60-69ca-5386-bcde-b61e274b549b" -version = "1.9.3" +version = "1.13.0" weakdeps = ["PDMats", "SparseArrays", "Statistics"] [deps.FillArrays.extensions] @@ -518,43 +720,45 @@ weakdeps = ["PDMats", "SparseArrays", "Statistics"] FillArraysStatisticsExt = "Statistics" [[deps.FiniteDiff]] -deps = ["ArrayInterface", "LinearAlgebra", "Requires", "Setfield", "SparseArrays"] -git-tree-sha1 = "bc0c5092d6caaea112d3c8e3b238d61563c58d5f" +deps = ["ArrayInterface", "LinearAlgebra", "Setfield"] +git-tree-sha1 = "84e3a47db33be7248daa6274b287507dd6ff84e8" uuid = "6a86dc24-6348-571c-b903-95158fe2bd41" -version = "2.23.0" +version = "2.26.2" [deps.FiniteDiff.extensions] FiniteDiffBandedMatricesExt = "BandedMatrices" FiniteDiffBlockBandedMatricesExt = "BlockBandedMatrices" + FiniteDiffSparseArraysExt = "SparseArrays" FiniteDiffStaticArraysExt = "StaticArrays" [deps.FiniteDiff.weakdeps] BandedMatrices = "aae01518-5342-5314-be14-df237901396f" BlockBandedMatrices = "ffab5731-97b5-5995-9138-79e8c1846df0" + SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" [[deps.FixedPointNumbers]] deps = ["Statistics"] -git-tree-sha1 = "335bfdceacc84c5cdf16aadc768aa5ddfc5383cc" +git-tree-sha1 = "05882d6995ae5c12bb5f36dd2ed3f61c98cbb172" uuid = "53c48c17-4a7d-5ca2-90c5-79b7896eea93" -version = "0.8.4" +version = "0.8.5" [[deps.Fontconfig_jll]] -deps = ["Artifacts", "Bzip2_jll", "Expat_jll", "FreeType2_jll", "JLLWrappers", "Libdl", "Libuuid_jll", "Pkg", "Zlib_jll"] -git-tree-sha1 = "21efd19106a55620a188615da6d3d06cd7f6ee03" +deps = ["Artifacts", "Bzip2_jll", "Expat_jll", "FreeType2_jll", "JLLWrappers", "Libdl", "Libuuid_jll", "Zlib_jll"] +git-tree-sha1 = "21fac3c77d7b5a9fc03b0ec503aa1a6392c34d2b" uuid = "a3f928ae-7b40-5064-980b-68af3947d34b" -version = "2.13.93+0" +version = "2.15.0+0" [[deps.Format]] -git-tree-sha1 = "f3cf88025f6d03c194d73f5d13fee9004a108329" +git-tree-sha1 = "9c68794ef81b08086aeb32eeaf33531668d5f5fc" uuid = "1fa38f19-a742-5d3f-a2b9-30dd87b9d5f8" -version = "1.3.6" +version = "1.3.7" [[deps.ForwardDiff]] deps = ["CommonSubexpressions", "DiffResults", "DiffRules", "LinearAlgebra", "LogExpFunctions", "NaNMath", "Preferences", "Printf", "Random", "SpecialFunctions"] -git-tree-sha1 = "cf0fe81336da9fb90944683b8c41984b08793dad" +git-tree-sha1 = "a2df1b776752e3f344e5116c06d75a10436ab853" uuid = "f6369f11-7733-5829-9624-2563aa707210" -version = "0.10.36" +version = "0.10.38" weakdeps = ["StaticArrays"] [deps.ForwardDiff.extensions] @@ -562,15 +766,15 @@ weakdeps = ["StaticArrays"] [[deps.FreeType2_jll]] deps = ["Artifacts", "Bzip2_jll", "JLLWrappers", "Libdl", "Zlib_jll"] -git-tree-sha1 = "d8db6a5a2fe1381c1ea4ef2cab7c69c2de7f9ea0" +git-tree-sha1 = "786e968a8d2fb167f2e4880baba62e0e26bd8e4e" uuid = "d7e528f0-a631-5988-bf34-fe36492bcfd7" -version = "2.13.1+0" +version = "2.13.3+1" [[deps.FriBidi_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "aa31987c2ba8704e23c6c8ba8a4f769d5d7e4f91" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "846f7026a9decf3679419122b49f8a1fdb48d2d5" uuid = "559328eb-81f9-559d-9380-de523a88c83c" -version = "1.0.10+0" +version = "1.0.16+0" [[deps.FunctionWrappers]] git-tree-sha1 = "d62485945ce5ae9c0c48f124a84998d755bae00e" @@ -584,44 +788,45 @@ uuid = "77dc65aa-8811-40c2-897b-53d922fa7daf" version = "0.1.3" [[deps.Functors]] -deps = ["LinearAlgebra"] -git-tree-sha1 = "8ae30e786837ce0a24f5e2186938bf3251ab94b2" +deps = ["Compat", "ConstructionBase", "LinearAlgebra", "Random"] +git-tree-sha1 = "60a0339f28a233601cb74468032b5c302d5067de" uuid = "d9f16b24-f501-4c13-a1f2-28368ffc5196" -version = "0.4.8" +version = "0.5.2" [[deps.Future]] deps = ["Random"] uuid = "9fa8497b-333b-5362-9e8d-4d0656e87820" +version = "1.11.0" [[deps.GLFW_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Libglvnd_jll", "Xorg_libXcursor_jll", "Xorg_libXi_jll", "Xorg_libXinerama_jll", "Xorg_libXrandr_jll"] -git-tree-sha1 = "ff38ba61beff76b8f4acad8ab0c97ef73bb670cb" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Libglvnd_jll", "Xorg_libXcursor_jll", "Xorg_libXi_jll", "Xorg_libXinerama_jll", "Xorg_libXrandr_jll", "libdecor_jll", "xkbcommon_jll"] +git-tree-sha1 = "fcb0584ff34e25155876418979d4c8971243bb89" uuid = "0656b61e-2033-5cc2-a64a-77c0f6c09b89" -version = "3.3.9+0" +version = "3.4.0+2" [[deps.GPUArraysCore]] deps = ["Adapt"] -git-tree-sha1 = "ec632f177c0d990e64d955ccc1b8c04c485a0950" +git-tree-sha1 = "83cf05ab16a73219e5f6bd1bdfa9848fa24ac627" uuid = "46192b85-c4d5-4398-a991-12ede77f4527" -version = "0.1.6" +version = "0.2.0" [[deps.GR]] -deps = ["Artifacts", "Base64", "DelimitedFiles", "Downloads", "GR_jll", "HTTP", "JSON", "Libdl", "LinearAlgebra", "Pkg", "Preferences", "Printf", "Random", "Serialization", "Sockets", "TOML", "Tar", "Test", "UUIDs", "p7zip_jll"] -git-tree-sha1 = "3437ade7073682993e092ca570ad68a2aba26983" +deps = ["Artifacts", "Base64", "DelimitedFiles", "Downloads", "GR_jll", "HTTP", "JSON", "Libdl", "LinearAlgebra", "Preferences", "Printf", "Qt6Wayland_jll", "Random", "Serialization", "Sockets", "TOML", "Tar", "Test", "p7zip_jll"] +git-tree-sha1 = "424c8f76017e39fdfcdbb5935a8e6742244959e8" uuid = "28b8d3ca-fb5f-59d9-8090-bfdbd6d07a71" -version = "0.73.3" +version = "0.73.10" [[deps.GR_jll]] deps = ["Artifacts", "Bzip2_jll", "Cairo_jll", "FFMPEG_jll", "Fontconfig_jll", "FreeType2_jll", "GLFW_jll", "JLLWrappers", "JpegTurbo_jll", "Libdl", "Libtiff_jll", "Pixman_jll", "Qt6Base_jll", "Zlib_jll", "libpng_jll"] -git-tree-sha1 = "a96d5c713e6aa28c242b0d25c1347e258d6541ab" +git-tree-sha1 = "b90934c8cb33920a8dc66736471dc3961b42ec9f" uuid = "d2c73de3-f751-5644-a686-071e5b155ba9" -version = "0.73.3+0" +version = "0.73.10+0" [[deps.GenericSchur]] deps = ["LinearAlgebra", "Printf"] -git-tree-sha1 = "fb69b2a645fa69ba5f474af09221b9308b160ce6" +git-tree-sha1 = "af49a0851f8113fcfae2ef5027c6d49d0acec39b" uuid = "c145ed77-6b09-5dd9-b285-bf645a82121e" -version = "0.5.3" +version = "0.5.4" [[deps.Gettext_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Libiconv_jll", "Pkg", "XML2_jll"] @@ -631,27 +836,32 @@ version = "0.21.0+0" [[deps.Glib_jll]] deps = ["Artifacts", "Gettext_jll", "JLLWrappers", "Libdl", "Libffi_jll", "Libiconv_jll", "Libmount_jll", "PCRE2_jll", "Zlib_jll"] -git-tree-sha1 = "359a1ba2e320790ddbe4ee8b4d54a305c0ea2aff" +git-tree-sha1 = "b0036b392358c80d2d2124746c2bf3d48d457938" uuid = "7746bdde-850d-59dc-9ae8-88ece973131d" -version = "2.80.0+0" +version = "2.82.4+0" + +[[deps.Glob]] +git-tree-sha1 = "97285bbd5230dd766e9ef6749b80fc617126d496" +uuid = "c27321d9-0574-5035-807b-f59d2c89b15c" +version = "1.3.1" [[deps.Graphics]] deps = ["Colors", "LinearAlgebra", "NaNMath"] -git-tree-sha1 = "d61890399bc535850c4bf08e4e0d3a7ad0f21cbd" +git-tree-sha1 = "a641238db938fff9b2f60d08ed9030387daf428c" uuid = "a2bd30eb-e257-5431-a919-1863eab51364" -version = "1.1.2" +version = "1.1.3" [[deps.Graphite2_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "344bf40dcab1073aca04aa0df4fb092f920e4011" +git-tree-sha1 = "01979f9b37367603e2848ea225918a3b3861b606" uuid = "3b182d85-2403-5c21-9c21-1e1f0cc25472" -version = "1.3.14+0" +version = "1.3.14+1" [[deps.Graphs]] deps = ["ArnoldiMethod", "Compat", "DataStructures", "Distributed", "Inflate", "LinearAlgebra", "Random", "SharedArrays", "SimpleTraits", "SparseArrays", "Statistics"] -git-tree-sha1 = "899050ace26649433ef1af25bc17a815b3db52b7" +git-tree-sha1 = "1dc470db8b1131cfc7fb4c115de89fe391b9e780" uuid = "86223c79-3864-5bf0-83f7-82e725a168b6" -version = "1.9.0" +version = "1.12.0" [[deps.Grisu]] git-tree-sha1 = "53bb909d1151e57e2484c3d1b53e19552b887fb2" @@ -659,34 +869,34 @@ uuid = "42e2da0e-8278-4e71-bc24-59509adca0fe" version = "1.0.2" [[deps.HTTP]] -deps = ["Base64", "CodecZlib", "ConcurrentUtilities", "Dates", "ExceptionUnwrapping", "Logging", "LoggingExtras", "MbedTLS", "NetworkOptions", "OpenSSL", "Random", "SimpleBufferStream", "Sockets", "URIs", "UUIDs"] -git-tree-sha1 = "db864f2d91f68a5912937af80327d288ea1f3aee" +deps = ["Base64", "CodecZlib", "ConcurrentUtilities", "Dates", "ExceptionUnwrapping", "Logging", "LoggingExtras", "MbedTLS", "NetworkOptions", "OpenSSL", "PrecompileTools", "Random", "SimpleBufferStream", "Sockets", "URIs", "UUIDs"] +git-tree-sha1 = "c67b33b085f6e2faf8bf79a61962e7339a81129c" uuid = "cd3eb016-35fb-5094-929b-558a96fad6f3" -version = "1.10.3" +version = "1.10.15" [[deps.HarfBuzz_jll]] -deps = ["Artifacts", "Cairo_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "Graphite2_jll", "JLLWrappers", "Libdl", "Libffi_jll", "Pkg"] -git-tree-sha1 = "129acf094d168394e80ee1dc4bc06ec835e510a3" +deps = ["Artifacts", "Cairo_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "Graphite2_jll", "JLLWrappers", "Libdl", "Libffi_jll"] +git-tree-sha1 = "55c53be97790242c29031e5cd45e8ac296dadda3" uuid = "2e76f6c2-a576-52d4-95c1-20adfe4de566" -version = "2.8.1+1" +version = "8.5.0+0" [[deps.HostCPUFeatures]] deps = ["BitTwiddlingConvenienceFunctions", "IfElse", "Libdl", "Static"] -git-tree-sha1 = "eb8fed28f4994600e29beef49744639d985a04b2" +git-tree-sha1 = "8e070b599339d622e9a081d17230d74a5c473293" uuid = "3e5b6fbb-0976-4d2c-9146-d79de83f2fb0" -version = "0.1.16" +version = "0.1.17" [[deps.HypergeometricFunctions]] -deps = ["DualNumbers", "LinearAlgebra", "OpenLibm_jll", "SpecialFunctions"] -git-tree-sha1 = "f218fe3736ddf977e0e772bc9a586b2383da2685" +deps = ["LinearAlgebra", "OpenLibm_jll", "SpecialFunctions"] +git-tree-sha1 = "b1c2585431c382e3fe5805874bda6aea90a95de9" uuid = "34004b35-14d8-5ef3-9330-4cdb6864b03a" -version = "0.3.23" +version = "0.3.25" [[deps.IJulia]] deps = ["Base64", "Conda", "Dates", "InteractiveUtils", "JSON", "Libdl", "Logging", "Markdown", "MbedTLS", "Pkg", "Printf", "REPL", "Random", "SoftGlobalScope", "Test", "UUIDs", "ZMQ"] -git-tree-sha1 = "47ac8cc196b81001a711f4b2c12c97372338f00c" +git-tree-sha1 = "1b1299f7d6617291f3d260e9f5b0250afdaac8c0" uuid = "7073ff75-c697-5162-941a-fcdaad2a7d2a" -version = "1.24.2" +version = "1.26.0" [[deps.IfElse]] git-tree-sha1 = "debdd00ffef04665ccbb3e150747a77560e8fad1" @@ -694,19 +904,30 @@ uuid = "615f187c-cbe4-4ef1-ba3b-2fcf58d6d173" version = "0.1.1" [[deps.Inflate]] -git-tree-sha1 = "ea8031dea4aff6bd41f1df8f2fdfb25b33626381" +git-tree-sha1 = "d1b1b796e47d94588b3757fe84fbf65a5ec4a80d" uuid = "d25df0c9-e2be-5dd7-82c8-3ad0b3e990b9" -version = "0.1.4" +version = "0.1.5" [[deps.IntelOpenMP_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "5fdf2fe6724d8caabf43b557b84ce53f3b7e2f6b" +deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl"] +git-tree-sha1 = "10bd689145d2c3b2a9844005d01087cc1194e79e" uuid = "1d5cc7b8-4909-519e-a0f8-d0f5ad9712d0" -version = "2024.0.2+0" +version = "2024.2.1+0" [[deps.InteractiveUtils]] deps = ["Markdown"] uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" +version = "1.11.0" + +[[deps.InverseFunctions]] +git-tree-sha1 = "a779299d77cd080bf77b97535acecd73e1c5e5cb" +uuid = "3587e190-3f89-42d0-90ee-14403ec27112" +version = "0.1.17" +weakdeps = ["Dates", "Test"] + + [deps.InverseFunctions.extensions] + InverseFunctionsDatesExt = "Dates" + InverseFunctionsTestExt = "Test" [[deps.IrrationalConstants]] git-tree-sha1 = "630b497eafcc20001bba38a4651b327dcfc491d2" @@ -720,15 +941,15 @@ version = "1.0.0" [[deps.JLFzf]] deps = ["Pipe", "REPL", "Random", "fzf_jll"] -git-tree-sha1 = "a53ebe394b71470c7f97c2e7e170d51df21b17af" +git-tree-sha1 = "71b48d857e86bf7a1838c4736545699974ce79a2" uuid = "1019f520-868f-41f5-a6de-eb00f4b6a39c" -version = "0.1.7" +version = "0.1.9" [[deps.JLLWrappers]] deps = ["Artifacts", "Preferences"] -git-tree-sha1 = "7e5d6779a1e09a36db2a7b6cff50942a0a7d0fca" +git-tree-sha1 = "a007feb38b422fbdab534406aeca1b86823cb4d6" uuid = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210" -version = "1.5.0" +version = "1.7.0" [[deps.JSON]] deps = ["Dates", "Mmap", "Parsers", "Unicode"] @@ -736,28 +957,31 @@ git-tree-sha1 = "31e996f0a15c7b280ba9f76636b3ff9e2ae58c9a" uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" version = "0.21.4" +[[deps.JSONRPC]] +deps = ["JSON", "UUIDs"] +git-tree-sha1 = "3928eaef5261194e95e8e99b1405e069e82b981e" +uuid = "b9b8584e-8fd3-41f9-ad0c-7255d428e418" +version = "1.4.2" + [[deps.JpegTurbo_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "3336abae9a713d2210bb57ab484b1e065edd7d23" +git-tree-sha1 = "eac1206917768cb54957c65a615460d87b455fc1" uuid = "aacddb02-875f-59d6-b918-886e6ef4fbf8" -version = "3.0.2+0" +version = "3.1.1+0" + +[[deps.JuliaFormatter]] +deps = ["CSTParser", "CommonMark", "DataStructures", "Glob", "PrecompileTools", "TOML", "Tokenize"] +git-tree-sha1 = "59cf7ad64f1b0708a4fa4369879d33bad3239b56" +uuid = "98e50ef6-434e-11e9-1051-2b60c6c9e899" +version = "1.0.62" [[deps.JumpProcesses]] -deps = ["ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "FunctionWrappers", "Graphs", "LinearAlgebra", "Markdown", "PoissonRandom", "Random", "RandomNumbers", "RecursiveArrayTools", "Reexport", "SciMLBase", "StaticArrays", "UnPack"] -git-tree-sha1 = "c451feb97251965a9fe40bacd62551a72cc5902c" +deps = ["ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "FunctionWrappers", "Graphs", "LinearAlgebra", "Markdown", "PoissonRandom", "Random", "RandomNumbers", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "StaticArrays", "SymbolicIndexingInterface", "UnPack"] +git-tree-sha1 = "ed3b5f80be8fc7d1b0185edb862f2273e02cbec2" uuid = "ccbc3e58-028d-4f4c-8cd5-9ae44345cda5" -version = "9.10.1" +version = "9.14.1" weakdeps = ["FastBroadcast"] - [deps.JumpProcesses.extensions] - JumpProcessFastBroadcastExt = "FastBroadcast" - -[[deps.Juno]] -deps = ["Base64", "Logging", "Media", "Profile"] -git-tree-sha1 = "07cb43290a840908a771552911a6274bc6c072c7" -uuid = "e5e0dc1b-0480-54bc-9374-aad01c23163d" -version = "0.8.4" - [[deps.KLU]] deps = ["LinearAlgebra", "SparseArrays", "SuiteSparse_jll"] git-tree-sha1 = "07649c499349dad9f08dde4243a4c597064663e9" @@ -766,72 +990,89 @@ version = "0.6.0" [[deps.Krylov]] deps = ["LinearAlgebra", "Printf", "SparseArrays"] -git-tree-sha1 = "8a6837ec02fe5fb3def1abc907bb802ef11a0729" +git-tree-sha1 = "4f20a2df85a9e5d55c9e84634bbf808ed038cabd" uuid = "ba0b0d4f-ebba-5204-a429-3ac8c609bfb7" -version = "0.9.5" +version = "0.9.8" [[deps.LAME_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "f6250b16881adf048549549fba48b1161acdac8c" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "170b660facf5df5de098d866564877e119141cbd" uuid = "c1c5ebd0-6772-5130-a774-d5fcae4a789d" -version = "3.100.1+0" +version = "3.100.2+0" [[deps.LERC_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "bf36f528eec6634efc60d7ec062008f171071434" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "aaafe88dccbd957a8d82f7d05be9b69172e0cee3" uuid = "88015f11-f218-50d7-93a8-a6af411a945d" -version = "3.0.0+1" +version = "4.0.1+0" [[deps.LLVMOpenMP_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "d986ce2d884d49126836ea94ed5bfb0f12679713" +git-tree-sha1 = "78211fb6cbc872f77cad3fc0b6cf647d923f4929" uuid = "1d63c593-3942-5779-bab2-d838dc0a180e" -version = "15.0.7+0" +version = "18.1.7+0" [[deps.LZO_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "e5b909bcf985c5e2605737d2ce278ed791b89be6" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "1c602b1127f4751facb671441ca72715cc95938a" uuid = "dd4b983a-f0e5-5f8d-a1b7-129d4a5fb1ac" -version = "2.10.1+0" +version = "2.10.3+0" [[deps.LaTeXStrings]] -git-tree-sha1 = "50901ebc375ed41dbf8058da26f9de442febbbec" +git-tree-sha1 = "dda21b8cbd6a6c40d9d02a73230f9d70fed6918c" uuid = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f" -version = "1.3.1" +version = "1.4.0" + +[[deps.LanguageServer]] +deps = ["CSTParser", "JSON", "JSONRPC", "JuliaFormatter", "Logging", "Markdown", "Pkg", "PrecompileTools", "REPL", "StaticLint", "SymbolServer", "TestItemDetection", "Tokenize", "URIs", "UUIDs"] +git-tree-sha1 = "6d9ff7a24c4334e25f80b61f1188cac1e58d2c28" +uuid = "2b0e0bc5-e4fd-59b4-8912-456d1b03d8d7" +version = "4.5.1" [[deps.Latexify]] deps = ["Format", "InteractiveUtils", "LaTeXStrings", "MacroTools", "Markdown", "OrderedCollections", "Requires"] -git-tree-sha1 = "cad560042a7cc108f5a4c24ea1431a9221f22c1b" +git-tree-sha1 = "ce5f5621cac23a86011836badfedf664a612cee4" uuid = "23fbe1c1-3f47-55db-b15f-69d7ec21a316" -version = "0.16.2" +version = "0.16.5" [deps.Latexify.extensions] DataFramesExt = "DataFrames" + SparseArraysExt = "SparseArrays" SymEngineExt = "SymEngine" [deps.Latexify.weakdeps] DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" + SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" SymEngine = "123dc426-2d89-5057-bbad-38513e3affd8" [[deps.LayoutPointers]] deps = ["ArrayInterface", "LinearAlgebra", "ManualMemory", "SIMDTypes", "Static", "StaticArrayInterface"] -git-tree-sha1 = "62edfee3211981241b57ff1cedf4d74d79519277" +git-tree-sha1 = "a9eaadb366f5493a5654e843864c13d8b107548c" uuid = "10f19ff3-798f-405d-979b-55457f8fc047" -version = "0.1.15" +version = "0.1.17" [[deps.LazyArrays]] -deps = ["ArrayLayouts", "FillArrays", "LinearAlgebra", "MacroTools", "MatrixFactorizations", "SparseArrays"] -git-tree-sha1 = "9cfca23ab83b0dfac93cb1a1ef3331ab9fe596a5" +deps = ["ArrayLayouts", "FillArrays", "LinearAlgebra", "MacroTools", "SparseArrays"] +git-tree-sha1 = "f289bee714e11708df257c57514585863aa02b33" uuid = "5078a376-72f3-5289-bfd5-ec5146d43c02" -version = "1.8.3" -weakdeps = ["StaticArrays"] +version = "2.3.1" [deps.LazyArrays.extensions] + LazyArraysBandedMatricesExt = "BandedMatrices" + LazyArraysBlockArraysExt = "BlockArrays" + LazyArraysBlockBandedMatricesExt = "BlockBandedMatrices" LazyArraysStaticArraysExt = "StaticArrays" + [deps.LazyArrays.weakdeps] + BandedMatrices = "aae01518-5342-5314-be14-df237901396f" + BlockArrays = "8e7c35d0-a365-5155-bbbb-fb81a777f24e" + BlockBandedMatrices = "ffab5731-97b5-5995-9138-79e8c1846df0" + StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" + [[deps.LazyArtifacts]] deps = ["Artifacts", "Pkg"] uuid = "4af54fe1-eca0-43a8-85a7-787d91b784e3" +version = "1.11.0" [[deps.LevyArea]] deps = ["LinearAlgebra", "Random", "SpecialFunctions"] @@ -847,16 +1088,17 @@ version = "0.6.4" [[deps.LibCURL_jll]] deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll", "Zlib_jll", "nghttp2_jll"] uuid = "deac9b47-8bc7-5906-a0fe-35ac56dc84c0" -version = "8.4.0+0" +version = "8.6.0+0" [[deps.LibGit2]] deps = ["Base64", "LibGit2_jll", "NetworkOptions", "Printf", "SHA"] uuid = "76f85450-5226-5b5a-8eaa-529ad045b433" +version = "1.11.0" [[deps.LibGit2_jll]] deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll"] uuid = "e37daf67-58a4-590a-8e99-b0245dd2ffc5" -version = "1.6.4+0" +version = "1.7.2+0" [[deps.LibSSH2_jll]] deps = ["Artifacts", "Libdl", "MbedTLS_jll"] @@ -865,42 +1107,43 @@ version = "1.11.0+1" [[deps.Libdl]] uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" +version = "1.11.0" [[deps.Libffi_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "0b4a5d71f3e5200a7dff793393e09dfc2d874290" +git-tree-sha1 = "27ecae93dd25ee0909666e6835051dd684cc035e" uuid = "e9f186c6-92d2-5b65-8a66-fee21dc1b490" -version = "3.2.2+1" +version = "3.2.2+2" [[deps.Libgcrypt_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgpg_error_jll", "Pkg"] -git-tree-sha1 = "64613c82a59c120435c067c2b809fc61cf5166ae" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgpg_error_jll"] +git-tree-sha1 = "8be878062e0ffa2c3f67bb58a595375eda5de80b" uuid = "d4300ac3-e22c-5743-9152-c294e39db1e4" -version = "1.8.7+0" +version = "1.11.0+0" [[deps.Libglvnd_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libX11_jll", "Xorg_libXext_jll"] -git-tree-sha1 = "6f73d1dd803986947b2c750138528a999a6c7733" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll", "Xorg_libXext_jll"] +git-tree-sha1 = "ff3b4b9d35de638936a525ecd36e86a8bb919d11" uuid = "7e76a0d4-f3c7-5321-8279-8d96eeed0f29" -version = "1.6.0+0" +version = "1.7.0+0" [[deps.Libgpg_error_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "c333716e46366857753e273ce6a69ee0945a6db9" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "df37206100d39f79b3376afb6b9cee4970041c61" uuid = "7add5ba3-2f88-524e-9cd5-f83b8a55f7b8" -version = "1.42.0+0" +version = "1.51.1+0" [[deps.Libiconv_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "f9557a255370125b405568f9767d6d195822a175" +git-tree-sha1 = "61dfdba58e585066d8bce214c5a51eaa0539f269" uuid = "94ce4f54-9a6c-5748-9c1c-f9c7231a4531" -version = "1.17.0+0" +version = "1.17.0+1" [[deps.Libmount_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "dae976433497a2f841baadea93d27e68f1a12a97" +git-tree-sha1 = "89211ea35d9df5831fca5d33552c02bd33878419" uuid = "4b2f31a3-9ecc-558c-b454-b3730dcb73e9" -version = "2.39.3+0" +version = "2.40.3+0" [[deps.Librsvg_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pango_jll", "Pkg", "gdk_pixbuf_jll"] @@ -910,15 +1153,15 @@ version = "2.54.5+0" [[deps.Libtiff_jll]] deps = ["Artifacts", "JLLWrappers", "JpegTurbo_jll", "LERC_jll", "Libdl", "XZ_jll", "Zlib_jll", "Zstd_jll"] -git-tree-sha1 = "2da088d113af58221c52828a80378e16be7d037a" +git-tree-sha1 = "4ab7581296671007fc33f07a721631b8855f4b1d" uuid = "89763e89-9b03-5906-acba-b20f662cd828" -version = "4.5.1+1" +version = "4.7.1+0" [[deps.Libuuid_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "0a04a1318df1bf510beb2562cf90fb0c386f58c4" +git-tree-sha1 = "e888ad02ce716b319e6bdb985d2ef300e7089889" uuid = "38a345b3-de98-5d2b-a5d3-14cd9215e700" -version = "2.39.3+1" +version = "2.40.3+0" [[deps.LightXML]] deps = ["Libdl", "XML2_jll"] @@ -926,28 +1169,40 @@ git-tree-sha1 = "3a994404d3f6709610701c7dabfc03fed87a81f8" uuid = "9c8b4983-aa76-5018-a973-4c85ecc9e179" version = "0.9.1" +[[deps.LineSearch]] +deps = ["ADTypes", "CommonSolve", "ConcreteStructs", "FastClosures", "LinearAlgebra", "MaybeInplace", "SciMLBase", "SciMLJacobianOperators", "StaticArraysCore"] +git-tree-sha1 = "97d502765cc5cf3a722120f50da03c2474efce04" +uuid = "87fe0de2-c867-4266-b59a-2f0a94fc965b" +version = "0.1.4" +weakdeps = ["LineSearches"] + + [deps.LineSearch.extensions] + LineSearchLineSearchesExt = "LineSearches" + [[deps.LineSearches]] deps = ["LinearAlgebra", "NLSolversBase", "NaNMath", "Parameters", "Printf"] -git-tree-sha1 = "7bbea35cec17305fc70a0e5b4641477dc0789d9d" +git-tree-sha1 = "e4c3be53733db1051cc15ecf573b1042b3a712a1" uuid = "d3d80556-e9d4-5f37-9878-2ab0fcc64255" -version = "7.2.0" +version = "7.3.0" [[deps.LinearAlgebra]] deps = ["Libdl", "OpenBLAS_jll", "libblastrampoline_jll"] uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" +version = "1.11.0" [[deps.LinearSolve]] -deps = ["ArrayInterface", "ChainRulesCore", "ConcreteStructs", "DocStringExtensions", "EnumX", "FastLapackInterface", "GPUArraysCore", "InteractiveUtils", "KLU", "Krylov", "Libdl", "LinearAlgebra", "MKL_jll", "Markdown", "PrecompileTools", "Preferences", "RecursiveFactorization", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "SparseArrays", "Sparspak", "StaticArraysCore", "UnPack"] -git-tree-sha1 = "73d8f61f8d27f279edfbafc93faaea93ea447e94" +deps = ["ArrayInterface", "ChainRulesCore", "ConcreteStructs", "DocStringExtensions", "EnumX", "FastLapackInterface", "GPUArraysCore", "InteractiveUtils", "KLU", "Krylov", "LazyArrays", "Libdl", "LinearAlgebra", "MKL_jll", "Markdown", "PrecompileTools", "Preferences", "RecursiveFactorization", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "SparseArrays", "Sparspak", "StaticArraysCore", "UnPack"] +git-tree-sha1 = "9d5872d134bd33dd3e120767004f760770958863" uuid = "7ed4a6bd-45f5-4d41-b270-4a48e9bafcae" -version = "2.27.0" +version = "2.38.0" [deps.LinearSolve.extensions] LinearSolveBandedMatricesExt = "BandedMatrices" LinearSolveBlockDiagonalsExt = "BlockDiagonals" LinearSolveCUDAExt = "CUDA" - LinearSolveEnzymeExt = ["Enzyme", "EnzymeCore"] - LinearSolveFastAlmostBandedMatricesExt = ["FastAlmostBandedMatrices"] + LinearSolveCUDSSExt = "CUDSS" + LinearSolveEnzymeExt = "EnzymeCore" + LinearSolveFastAlmostBandedMatricesExt = "FastAlmostBandedMatrices" LinearSolveHYPREExt = "HYPRE" LinearSolveIterativeSolversExt = "IterativeSolvers" LinearSolveKernelAbstractionsExt = "KernelAbstractions" @@ -960,7 +1215,7 @@ version = "2.27.0" BandedMatrices = "aae01518-5342-5314-be14-df237901396f" BlockDiagonals = "0a1fb500-61f7-11e9-3c65-f5ef3456f9f0" CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" - Enzyme = "7da242da-08ed-463a-9acd-ee780be4f1d9" + CUDSS = "45b445bb-4962-46a0-9369-b4df9d0f772e" EnzymeCore = "f151be2c-9106-41f4-ab19-57ee4f262869" FastAlmostBandedMatrices = "9d29842c-ecb8-4973-b1e9-a27b1157504e" HYPRE = "b5ffcf37-a2bd-41ab-a3da-4bd9bc8ad771" @@ -973,9 +1228,9 @@ version = "2.27.0" [[deps.LogExpFunctions]] deps = ["DocStringExtensions", "IrrationalConstants", "LinearAlgebra"] -git-tree-sha1 = "18144f3e9cbe9b15b070288eef858f71b291ce37" +git-tree-sha1 = "13ca9e2586b89836fd20cccf56e57e2b9ae7f38f" uuid = "2ab3a3ac-af41-5b50-aa03-7779005ae688" -version = "0.3.27" +version = "0.3.29" [deps.LogExpFunctions.extensions] LogExpFunctionsChainRulesCoreExt = "ChainRulesCore" @@ -989,18 +1244,19 @@ version = "0.3.27" [[deps.Logging]] uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" +version = "1.11.0" [[deps.LoggingExtras]] deps = ["Dates", "Logging"] -git-tree-sha1 = "c1dd6d7978c12545b4179fb6153b9250c96b0075" +git-tree-sha1 = "f02b56007b064fbfddb4c9cd60161b6dd0f40df3" uuid = "e6f89c97-d47a-5376-807f-9c37f3926c36" -version = "1.0.3" +version = "1.1.0" [[deps.LoopVectorization]] deps = ["ArrayInterface", "CPUSummary", "CloseOpenIntervals", "DocStringExtensions", "HostCPUFeatures", "IfElse", "LayoutPointers", "LinearAlgebra", "OffsetArrays", "PolyesterWeave", "PrecompileTools", "SIMDTypes", "SLEEFPirates", "Static", "StaticArrayInterface", "ThreadingUtilities", "UnPack", "VectorizationBase"] -git-tree-sha1 = "0f5648fbae0d015e3abe5867bca2b362f67a5894" +git-tree-sha1 = "8084c25a250e00ae427a379a5b607e7aed96a2dd" uuid = "bdcacae8-1622-11e9-2a5c-532679323890" -version = "0.12.166" +version = "0.12.171" weakdeps = ["ChainRulesCore", "ForwardDiff", "SpecialFunctions"] [deps.LoopVectorization.extensions] @@ -1008,22 +1264,33 @@ weakdeps = ["ChainRulesCore", "ForwardDiff", "SpecialFunctions"] SpecialFunctionsExt = "SpecialFunctions" [[deps.Luxor]] -deps = ["Base64", "Cairo", "Colors", "DataStructures", "Dates", "FFMPEG", "FileIO", "Juno", "LaTeXStrings", "PrecompileTools", "Random", "Requires", "Rsvg"] -git-tree-sha1 = "aa3eb624552373a6204c19b00e95ce62ea932d32" +deps = ["Base64", "Cairo", "Colors", "DataStructures", "Dates", "FFMPEG", "FileIO", "PolygonAlgorithms", "PrecompileTools", "Random", "Rsvg"] +git-tree-sha1 = "134570038473304d709de27384621bd0810d23fa" uuid = "ae8d54c2-7ccd-5906-9d76-62fc9837b5bc" -version = "3.8.0" +version = "4.1.0" + + [deps.Luxor.extensions] + LuxorExtLatex = ["LaTeXStrings", "MathTeXEngine"] + + [deps.Luxor.weakdeps] + LaTeXStrings = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f" + MathTeXEngine = "0a4f8689-d25c-4efe-a92b-7142dfc1aa53" [[deps.MKL_jll]] -deps = ["Artifacts", "IntelOpenMP_jll", "JLLWrappers", "LazyArtifacts", "Libdl"] -git-tree-sha1 = "72dc3cf284559eb8f53aa593fe62cb33f83ed0c0" +deps = ["Artifacts", "IntelOpenMP_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "oneTBB_jll"] +git-tree-sha1 = "f046ccd0c6db2832a9f639e2c669c6fe867e5f4f" uuid = "856f044c-d86e-5d09-b602-aeab76dc8ba7" -version = "2024.0.0+0" +version = "2024.2.0+0" + +[[deps.MLStyle]] +git-tree-sha1 = "bc38dff0548128765760c79eb7388a4b37fae2c8" +uuid = "d8e11817-5142-5d16-987a-aa16d5891078" +version = "0.4.17" [[deps.MacroTools]] -deps = ["Markdown", "Random"] -git-tree-sha1 = "2fa9ee3e63fd3a4f7a9a4f4744a52f4856de82df" +git-tree-sha1 = "72aebe0b5051e5143a079a4685a46da330a40472" uuid = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09" -version = "0.5.13" +version = "0.5.15" [[deps.ManualMemory]] git-tree-sha1 = "bcaef4fc7a0cfe2cba636d84cda54b5e4e4ca3cd" @@ -1033,24 +1300,27 @@ version = "0.1.8" [[deps.Markdown]] deps = ["Base64"] uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" - -[[deps.MathOptInterface]] -deps = ["BenchmarkTools", "CodecBzip2", "CodecZlib", "DataStructures", "ForwardDiff", "JSON", "LinearAlgebra", "MutableArithmetics", "NaNMath", "OrderedCollections", "PrecompileTools", "Printf", "SparseArrays", "SpecialFunctions", "Test", "Unicode"] -git-tree-sha1 = "679c1aec6934d322783bd15db4d18f898653be4f" -uuid = "b8f27783-ece8-5eb3-8dc8-9495eed66fee" -version = "1.27.0" +version = "1.11.0" [[deps.MatrixFactorizations]] deps = ["ArrayLayouts", "LinearAlgebra", "Printf", "Random"] -git-tree-sha1 = "78f6e33434939b0ac9ba1df81e6d005ee85a7396" +git-tree-sha1 = "16a726dba99685d9e94c8d0a8f655383121fc608" uuid = "a3b82374-2e81-5b9e-98ce-41277c0e4c87" -version = "2.1.0" +version = "3.0.1" +weakdeps = ["BandedMatrices"] + + [deps.MatrixFactorizations.extensions] + MatrixFactorizationsBandedMatricesExt = "BandedMatrices" [[deps.MaybeInplace]] -deps = ["ArrayInterface", "LinearAlgebra", "MacroTools", "SparseArrays"] -git-tree-sha1 = "a85c6a98c9e5a2a7046bc1bb89f28a3241e1de4d" +deps = ["ArrayInterface", "LinearAlgebra", "MacroTools"] +git-tree-sha1 = "54e2fdc38130c05b42be423e90da3bade29b74bd" uuid = "bb5d69b7-63fc-4a16-80bd-7e42200c7bdb" -version = "0.1.1" +version = "0.1.4" +weakdeps = ["SparseArrays"] + + [deps.MaybeInplace.extensions] + MaybeInplaceSparseArraysExt = "SparseArrays" [[deps.MbedTLS]] deps = ["Dates", "MbedTLS_jll", "MozillaCACerts_jll", "NetworkOptions", "Random", "Sockets"] @@ -1061,43 +1331,32 @@ version = "1.1.9" [[deps.MbedTLS_jll]] deps = ["Artifacts", "Libdl"] uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1" -version = "2.28.2+1" +version = "2.28.6+0" [[deps.Measures]] git-tree-sha1 = "c13304c81eec1ed3af7fc20e75fb6b26092a1102" uuid = "442fdcdd-2543-5da2-b0f3-8c86c306513e" version = "0.3.2" -[[deps.Media]] -deps = ["MacroTools", "Test"] -git-tree-sha1 = "75a54abd10709c01f1b86b84ec225d26e840ed58" -uuid = "e89f7d12-3494-54d1-8411-f7d8b9ae1f27" -version = "0.5.0" - [[deps.Missings]] deps = ["DataAPI"] -git-tree-sha1 = "f66bdc5de519e8f8ae43bdc598782d35a25b1272" +git-tree-sha1 = "ec4f7fbeab05d7747bdf98eb74d130a2a2ed298d" uuid = "e1d29d7a-bbdc-5cf2-9ac0-f12de2c33e28" -version = "1.1.0" +version = "1.2.0" [[deps.Mmap]] uuid = "a63ad114-7e13-5084-954f-fe012c677804" +version = "1.11.0" [[deps.MozillaCACerts_jll]] uuid = "14a3606d-f60d-562e-9121-12d972cd8159" -version = "2023.1.10" +version = "2023.12.12" [[deps.MuladdMacro]] git-tree-sha1 = "cac9cc5499c25554cba55cd3c30543cff5ca4fab" uuid = "46d2c3a1-f734-5fdb-9937-b9b9aeba4221" version = "0.2.4" -[[deps.MutableArithmetics]] -deps = ["LinearAlgebra", "SparseArrays", "Test"] -git-tree-sha1 = "302fd161eb1c439e4115b51ae456da4e9984f130" -uuid = "d8a4904e-b15c-11e9-3269-09a3773c0cb0" -version = "1.4.1" - [[deps.NLSolversBase]] deps = ["DiffResults", "Distributed", "FiniteDiff", "ForwardDiff"] git-tree-sha1 = "a0b464d183da839699f4c79e7606d9d186ec172c" @@ -1112,50 +1371,92 @@ version = "4.5.1" [[deps.NaNMath]] deps = ["OpenLibm_jll"] -git-tree-sha1 = "0877504529a3e5c3343c6f8b4c0381e57e4387e4" +git-tree-sha1 = "030ea22804ef91648f29b7ad3fc15fa49d0e6e71" uuid = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" -version = "1.0.2" +version = "1.0.3" [[deps.NetworkOptions]] uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908" version = "1.2.0" [[deps.NonlinearSolve]] -deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "FastBroadcast", "FastClosures", "FiniteDiff", "ForwardDiff", "LazyArrays", "LineSearches", "LinearAlgebra", "LinearSolve", "MaybeInplace", "PrecompileTools", "Preferences", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SimpleNonlinearSolve", "SparseArrays", "SparseDiffTools", "StaticArraysCore", "TimerOutputs"] -git-tree-sha1 = "d52bac2b94358b4b960cbfb896d5193d67f3ff09" +deps = ["ADTypes", "ArrayInterface", "BracketingNonlinearSolve", "CommonSolve", "ConcreteStructs", "DiffEqBase", "DifferentiationInterface", "FastClosures", "FiniteDiff", "ForwardDiff", "LineSearch", "LinearAlgebra", "LinearSolve", "NonlinearSolveBase", "NonlinearSolveFirstOrder", "NonlinearSolveQuasiNewton", "NonlinearSolveSpectralMethods", "PrecompileTools", "Preferences", "Reexport", "SciMLBase", "SimpleNonlinearSolve", "SparseArrays", "SparseMatrixColorings", "StaticArraysCore", "SymbolicIndexingInterface"] +git-tree-sha1 = "d0caebdb5a31e1a11ca9f7f189cdbf341ac89f0e" uuid = "8913a72c-1f9b-4ce2-8d82-65094dcecaec" -version = "3.8.0" +version = "4.3.0" [deps.NonlinearSolve.extensions] - NonlinearSolveBandedMatricesExt = "BandedMatrices" NonlinearSolveFastLevenbergMarquardtExt = "FastLevenbergMarquardt" NonlinearSolveFixedPointAccelerationExt = "FixedPointAcceleration" NonlinearSolveLeastSquaresOptimExt = "LeastSquaresOptim" NonlinearSolveMINPACKExt = "MINPACK" NonlinearSolveNLSolversExt = "NLSolvers" - NonlinearSolveNLsolveExt = "NLsolve" + NonlinearSolveNLsolveExt = ["NLsolve", "LineSearches"] + NonlinearSolvePETScExt = ["PETSc", "MPI"] NonlinearSolveSIAMFANLEquationsExt = "SIAMFANLEquations" NonlinearSolveSpeedMappingExt = "SpeedMapping" - NonlinearSolveSymbolicsExt = "Symbolics" - NonlinearSolveZygoteExt = "Zygote" + NonlinearSolveSundialsExt = "Sundials" [deps.NonlinearSolve.weakdeps] - BandedMatrices = "aae01518-5342-5314-be14-df237901396f" FastLevenbergMarquardt = "7a0df574-e128-4d35-8cbd-3d84502bf7ce" FixedPointAcceleration = "817d07cb-a79a-5c30-9a31-890123675176" LeastSquaresOptim = "0fc2ff8b-aaa3-5acd-a817-1944a5e08891" + LineSearches = "d3d80556-e9d4-5f37-9878-2ab0fcc64255" MINPACK = "4854310b-de5a-5eb6-a2a5-c1dee2bd17f9" + MPI = "da04e1cc-30fd-572f-bb4f-1f8673147195" NLSolvers = "337daf1e-9722-11e9-073e-8b9effe078ba" NLsolve = "2774e3e8-f4cf-5e23-947b-6d7e65073b56" + PETSc = "ace2c81b-2b5f-4b1e-a30d-d662738edfe0" SIAMFANLEquations = "084e46ad-d928-497d-ad5e-07fa361a48c4" SpeedMapping = "f1835b91-879b-4a3f-a438-e4baacf14412" - Symbolics = "0c5d862f-8b57-4792-8d23-62f2024744c7" - Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" + Sundials = "c3572dad-4567-51f8-b174-8c6c989267f4" + +[[deps.NonlinearSolveBase]] +deps = ["ADTypes", "Adapt", "ArrayInterface", "CommonSolve", "Compat", "ConcreteStructs", "DifferentiationInterface", "EnzymeCore", "FastClosures", "LinearAlgebra", "Markdown", "MaybeInplace", "Preferences", "Printf", "RecursiveArrayTools", "SciMLBase", "SciMLJacobianOperators", "SciMLOperators", "StaticArraysCore", "SymbolicIndexingInterface", "TimerOutputs"] +git-tree-sha1 = "5bca24ce7b0c034dcbdc6ad6d658b02e0eed566e" +uuid = "be0214bd-f91f-a760-ac4e-3421ce2b2da0" +version = "1.4.0" +weakdeps = ["BandedMatrices", "DiffEqBase", "ForwardDiff", "LineSearch", "LinearSolve", "SparseArrays", "SparseMatrixColorings"] + + [deps.NonlinearSolveBase.extensions] + NonlinearSolveBaseBandedMatricesExt = "BandedMatrices" + NonlinearSolveBaseDiffEqBaseExt = "DiffEqBase" + NonlinearSolveBaseForwardDiffExt = "ForwardDiff" + NonlinearSolveBaseLineSearchExt = "LineSearch" + NonlinearSolveBaseLinearSolveExt = "LinearSolve" + NonlinearSolveBaseSparseArraysExt = "SparseArrays" + NonlinearSolveBaseSparseMatrixColoringsExt = "SparseMatrixColorings" + +[[deps.NonlinearSolveFirstOrder]] +deps = ["ADTypes", "ArrayInterface", "CommonSolve", "ConcreteStructs", "DiffEqBase", "FiniteDiff", "ForwardDiff", "LineSearch", "LinearAlgebra", "LinearSolve", "MaybeInplace", "NonlinearSolveBase", "PrecompileTools", "Reexport", "SciMLBase", "SciMLJacobianOperators", "Setfield", "StaticArraysCore"] +git-tree-sha1 = "a1ea35ab0bcc99753e26d574ba1e339f19d100fa" +uuid = "5959db7a-ea39-4486-b5fe-2dd0bf03d60d" +version = "1.2.0" + +[[deps.NonlinearSolveQuasiNewton]] +deps = ["ArrayInterface", "CommonSolve", "ConcreteStructs", "DiffEqBase", "LinearAlgebra", "LinearSolve", "MaybeInplace", "NonlinearSolveBase", "PrecompileTools", "Reexport", "SciMLBase", "SciMLOperators", "StaticArraysCore"] +git-tree-sha1 = "8f14b848afcfc0a2941cd3cca1bef04c987465bb" +uuid = "9a2c21bd-3a47-402d-9113-8faf9a0ee114" +version = "1.1.0" +weakdeps = ["ForwardDiff"] + + [deps.NonlinearSolveQuasiNewton.extensions] + NonlinearSolveQuasiNewtonForwardDiffExt = "ForwardDiff" + +[[deps.NonlinearSolveSpectralMethods]] +deps = ["CommonSolve", "ConcreteStructs", "DiffEqBase", "LineSearch", "MaybeInplace", "NonlinearSolveBase", "PrecompileTools", "Reexport", "SciMLBase"] +git-tree-sha1 = "f28b1ab17b5f15eb2b174eaf8813cf17f0b3e6c0" +uuid = "26075421-4e9a-44e1-8bd1-420ed7ad02b2" +version = "1.1.0" +weakdeps = ["ForwardDiff"] + + [deps.NonlinearSolveSpectralMethods.extensions] + NonlinearSolveSpectralMethodsForwardDiffExt = "ForwardDiff" [[deps.OffsetArrays]] -git-tree-sha1 = "6a731f2b5c03157418a20c12195eb4b74c8f8621" +git-tree-sha1 = "5e1897147d1ff8d98883cda2be2187dcf57d8f0c" uuid = "6fe1bfb0-de20-5000-8ca7-80f57d26f881" -version = "1.13.0" +version = "1.15.0" weakdeps = ["Adapt"] [deps.OffsetArrays.extensions] @@ -1170,7 +1471,7 @@ version = "1.3.5+1" [[deps.OpenBLAS_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "Libdl"] uuid = "4536629a-c528-5b80-bd46-f80d51c5b363" -version = "0.3.23+4" +version = "0.3.27+1" [[deps.OpenLibm_jll]] deps = ["Artifacts", "Libdl"] @@ -1179,44 +1480,234 @@ version = "0.8.1+2" [[deps.OpenSSL]] deps = ["BitFlags", "Dates", "MozillaCACerts_jll", "OpenSSL_jll", "Sockets"] -git-tree-sha1 = "af81a32750ebc831ee28bdaaba6e1067decef51e" +git-tree-sha1 = "38cb508d080d21dc1128f7fb04f20387ed4c0af4" uuid = "4d8831e6-92b7-49fb-bdf8-b643e874388c" -version = "1.4.2" +version = "1.4.3" [[deps.OpenSSL_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "60e3045590bd104a16fefb12836c00c0ef8c7f8c" +git-tree-sha1 = "7493f61f55a6cce7325f197443aa80d32554ba10" uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95" -version = "3.0.13+0" +version = "3.0.15+3" [[deps.OpenSpecFun_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "13652491f6856acfd2db29360e1bbcd4565d04f1" +deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl"] +git-tree-sha1 = "1346c9208249809840c91b26703912dff463d335" uuid = "efe28fd5-8261-553b-a9e1-b2916fc3738e" -version = "0.5.5+0" +version = "0.5.6+0" [[deps.Optim]] -deps = ["Compat", "FillArrays", "ForwardDiff", "LineSearches", "LinearAlgebra", "MathOptInterface", "NLSolversBase", "NaNMath", "Parameters", "PositiveFactorizations", "Printf", "SparseArrays", "StatsBase"] -git-tree-sha1 = "d024bfb56144d947d4fafcd9cb5cafbe3410b133" +deps = ["Compat", "FillArrays", "ForwardDiff", "LineSearches", "LinearAlgebra", "NLSolversBase", "NaNMath", "Parameters", "PositiveFactorizations", "Printf", "SparseArrays", "StatsBase"] +git-tree-sha1 = "ab7edad78cdef22099f43c54ef77ac63c2c9cc64" uuid = "429524aa-4258-5aef-a3af-852621145aeb" -version = "1.9.2" +version = "1.10.0" + + [deps.Optim.extensions] + OptimMOIExt = "MathOptInterface" + + [deps.Optim.weakdeps] + MathOptInterface = "b8f27783-ece8-5eb3-8dc8-9495eed66fee" [[deps.Opus_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "51a08fb14ec28da2ec7a927c4337e4332c2a4720" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "6703a85cb3781bd5909d48730a67205f3f31a575" uuid = "91d4177d-7536-5919-b921-800302f37372" -version = "1.3.2+0" +version = "1.3.3+0" [[deps.OrderedCollections]] -git-tree-sha1 = "dfdf5519f235516220579f949664f1bf44e741c5" +git-tree-sha1 = "12f1439c4f986bb868acda6ea33ebc78e19b95ad" uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" -version = "1.6.3" +version = "1.7.0" [[deps.OrdinaryDiffEq]] -deps = ["ADTypes", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "ExponentialUtilities", "FastBroadcast", "FastClosures", "FillArrays", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "IfElse", "InteractiveUtils", "LineSearches", "LinearAlgebra", "LinearSolve", "Logging", "MacroTools", "MuladdMacro", "NonlinearSolve", "Polyester", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SimpleNonlinearSolve", "SimpleUnPack", "SparseArrays", "SparseDiffTools", "StaticArrayInterface", "StaticArrays", "TruncatedStacktraces"] -git-tree-sha1 = "287159684e32db56c82dbf545004a7884c6e5198" +deps = ["ADTypes", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "EnumX", "ExponentialUtilities", "FastBroadcast", "FastClosures", "FillArrays", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "InteractiveUtils", "LineSearches", "LinearAlgebra", "LinearSolve", "Logging", "MacroTools", "MuladdMacro", "NonlinearSolve", "OrdinaryDiffEqAdamsBashforthMoulton", "OrdinaryDiffEqBDF", "OrdinaryDiffEqCore", "OrdinaryDiffEqDefault", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqExplicitRK", "OrdinaryDiffEqExponentialRK", "OrdinaryDiffEqExtrapolation", "OrdinaryDiffEqFIRK", "OrdinaryDiffEqFeagin", "OrdinaryDiffEqFunctionMap", "OrdinaryDiffEqHighOrderRK", "OrdinaryDiffEqIMEXMultistep", "OrdinaryDiffEqLinear", "OrdinaryDiffEqLowOrderRK", "OrdinaryDiffEqLowStorageRK", "OrdinaryDiffEqNonlinearSolve", "OrdinaryDiffEqNordsieck", "OrdinaryDiffEqPDIRK", "OrdinaryDiffEqPRK", "OrdinaryDiffEqQPRK", "OrdinaryDiffEqRKN", "OrdinaryDiffEqRosenbrock", "OrdinaryDiffEqSDIRK", "OrdinaryDiffEqSSPRK", "OrdinaryDiffEqStabilizedIRK", "OrdinaryDiffEqStabilizedRK", "OrdinaryDiffEqSymplecticRK", "OrdinaryDiffEqTsit5", "OrdinaryDiffEqVerner", "Polyester", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SciMLStructures", "SimpleNonlinearSolve", "SimpleUnPack", "SparseArrays", "SparseDiffTools", "Static", "StaticArrayInterface", "StaticArrays", "TruncatedStacktraces"] +git-tree-sha1 = "36ce9bfc14a4b3dcf1490e80b5f1f4d35bfddf39" uuid = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" -version = "6.74.0" +version = "6.90.1" + +[[deps.OrdinaryDiffEqAdamsBashforthMoulton]] +deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqLowOrderRK", "Polyester", "RecursiveArrayTools", "Reexport", "Static"] +git-tree-sha1 = "8e3c5978d0531a961f70d2f2730d1d16ed3bbd12" +uuid = "89bda076-bce5-4f1c-845f-551c83cdda9a" +version = "1.1.0" + +[[deps.OrdinaryDiffEqBDF]] +deps = ["ADTypes", "ArrayInterface", "DiffEqBase", "FastBroadcast", "LinearAlgebra", "MacroTools", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "OrdinaryDiffEqSDIRK", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "StaticArrays", "TruncatedStacktraces"] +git-tree-sha1 = "86ccea2bd0fdfa5570172a9717061f6417e21dea" +uuid = "6ad6398a-0878-4a85-9266-38940aa047c8" +version = "1.2.0" + +[[deps.OrdinaryDiffEqCore]] +deps = ["ADTypes", "Accessors", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "EnumX", "FastBroadcast", "FastClosures", "FastPower", "FillArrays", "FunctionWrappersWrappers", "InteractiveUtils", "LinearAlgebra", "Logging", "MacroTools", "MuladdMacro", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SciMLStructures", "SimpleUnPack", "Static", "StaticArrayInterface", "StaticArraysCore", "SymbolicIndexingInterface", "TruncatedStacktraces"] +git-tree-sha1 = "72c77ae685fddb6291fff22dba13f4f32602475c" +uuid = "bbf590c4-e513-4bbe-9b18-05decba2e5d8" +version = "1.14.1" +weakdeps = ["EnzymeCore"] + + [deps.OrdinaryDiffEqCore.extensions] + OrdinaryDiffEqCoreEnzymeCoreExt = "EnzymeCore" + +[[deps.OrdinaryDiffEqDefault]] +deps = ["ADTypes", "DiffEqBase", "EnumX", "LinearAlgebra", "LinearSolve", "OrdinaryDiffEqBDF", "OrdinaryDiffEqCore", "OrdinaryDiffEqRosenbrock", "OrdinaryDiffEqTsit5", "OrdinaryDiffEqVerner", "PrecompileTools", "Preferences", "Reexport"] +git-tree-sha1 = "2ee6ef0bbed24976e4acfccf609801f8a5bf8223" +uuid = "50262376-6c5a-4cf5-baba-aaf4f84d72d7" +version = "1.2.0" + +[[deps.OrdinaryDiffEqDifferentiation]] +deps = ["ADTypes", "ArrayInterface", "DiffEqBase", "FastBroadcast", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "LinearAlgebra", "LinearSolve", "OrdinaryDiffEqCore", "SciMLBase", "SparseArrays", "SparseDiffTools", "StaticArrayInterface", "StaticArrays"] +git-tree-sha1 = "e4adff09a6d47b74c16e7e08f10fa32000e2e5ed" +uuid = "4302a76b-040a-498a-8c04-15b101fed76b" +version = "1.3.0" + +[[deps.OrdinaryDiffEqExplicitRK]] +deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "TruncatedStacktraces"] +git-tree-sha1 = "4dbce3f9e6974567082ce5176e21aab0224a69e9" +uuid = "9286f039-9fbf-40e8-bf65-aa933bdc4db0" +version = "1.1.0" + +[[deps.OrdinaryDiffEqExponentialRK]] +deps = ["ADTypes", "DiffEqBase", "ExponentialUtilities", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqSDIRK", "OrdinaryDiffEqVerner", "RecursiveArrayTools", "Reexport", "SciMLBase"] +git-tree-sha1 = "8659d5fdfe0798bbb5bcd8dc8d08092744b6dfa4" +uuid = "e0540318-69ee-4070-8777-9e2de6de23de" +version = "1.2.0" + +[[deps.OrdinaryDiffEqExtrapolation]] +deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "FastPower", "LinearSolve", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "Polyester", "RecursiveArrayTools", "Reexport"] +git-tree-sha1 = "b8d852b23246b1427178520442e8e7d89aa1c64c" +uuid = "becaefa8-8ca2-5cf9-886d-c06f3d2bd2c4" +version = "1.3.0" + +[[deps.OrdinaryDiffEqFIRK]] +deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "FastGaussQuadrature", "FastPower", "LinearAlgebra", "LinearSolve", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators"] +git-tree-sha1 = "39a52e278e21018585fc02c04a54f0ab98d03369" +uuid = "5960d6e9-dd7a-4743-88e7-cf307b64f125" +version = "1.6.0" + +[[deps.OrdinaryDiffEqFeagin]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "RecursiveArrayTools", "Reexport", "Static"] +git-tree-sha1 = "a7cc74d3433db98e59dc3d58bc28174c6c290adf" +uuid = "101fe9f7-ebb6-4678-b671-3a81e7194747" +version = "1.1.0" + +[[deps.OrdinaryDiffEqFunctionMap]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "SciMLBase", "Static"] +git-tree-sha1 = "925a91583d1ab84f1f0fea121be1abf1179c5926" +uuid = "d3585ca7-f5d3-4ba6-8057-292ed1abd90f" +version = "1.1.1" + +[[deps.OrdinaryDiffEqHighOrderRK]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "Static"] +git-tree-sha1 = "103e017ff186ac39d731904045781c9bacfca2b0" +uuid = "d28bc4f8-55e1-4f49-af69-84c1a99f0f58" +version = "1.1.0" + +[[deps.OrdinaryDiffEqIMEXMultistep]] +deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "Reexport"] +git-tree-sha1 = "b35b6db127ad50bc502f72dbd5a84a1e1d1bbf01" +uuid = "9f002381-b378-40b7-97a6-27a27c83f129" +version = "1.2.0" + +[[deps.OrdinaryDiffEqLinear]] +deps = ["DiffEqBase", "ExponentialUtilities", "LinearAlgebra", "OrdinaryDiffEqCore", "OrdinaryDiffEqTsit5", "OrdinaryDiffEqVerner", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators"] +git-tree-sha1 = "0f81a77ede3da0dc714ea61e81c76b25db4ab87a" +uuid = "521117fe-8c41-49f8-b3b6-30780b3f0fb5" +version = "1.1.0" + +[[deps.OrdinaryDiffEqLowOrderRK]] +deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "SciMLBase", "Static"] +git-tree-sha1 = "d4bb32e09d6b68ce2eb45fb81001eab46f60717a" +uuid = "1344f307-1e59-4825-a18e-ace9aa3fa4c6" +version = "1.2.0" + +[[deps.OrdinaryDiffEqLowStorageRK]] +deps = ["Adapt", "DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static", "StaticArrays"] +git-tree-sha1 = "590561f3af623d5485d070b4d7044f8854535f5a" +uuid = "b0944070-b475-4768-8dec-fb6eb410534d" +version = "1.2.1" + +[[deps.OrdinaryDiffEqNonlinearSolve]] +deps = ["ADTypes", "ArrayInterface", "DiffEqBase", "FastBroadcast", "FastClosures", "ForwardDiff", "LinearAlgebra", "LinearSolve", "MuladdMacro", "NonlinearSolve", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "PreallocationTools", "RecursiveArrayTools", "SciMLBase", "SciMLOperators", "SciMLStructures", "SimpleNonlinearSolve", "StaticArrays"] +git-tree-sha1 = "3a3eb0b7ef3f996c468d6f8013eac9525bcfd788" +uuid = "127b3ac7-2247-4354-8eb6-78cf4e7c58e8" +version = "1.3.0" + +[[deps.OrdinaryDiffEqNordsieck]] +deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqTsit5", "Polyester", "RecursiveArrayTools", "Reexport", "Static"] +git-tree-sha1 = "ef44754f10e0dfb9bb55ded382afed44cd94ab57" +uuid = "c9986a66-5c92-4813-8696-a7ec84c806c8" +version = "1.1.0" + +[[deps.OrdinaryDiffEqPDIRK]] +deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "Polyester", "Reexport", "StaticArrays"] +git-tree-sha1 = "70e348c116ce62df4e4b4f90f3c8bb4a8164df31" +uuid = "5dd0a6cf-3d4b-4314-aa06-06d4e299bc89" +version = "1.2.0" + +[[deps.OrdinaryDiffEqPRK]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "Reexport"] +git-tree-sha1 = "da525d277962a1b76102c79f30cb0c31e13fe5b9" +uuid = "5b33eab2-c0f1-4480-b2c3-94bc1e80bda1" +version = "1.1.0" + +[[deps.OrdinaryDiffEqQPRK]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "Static"] +git-tree-sha1 = "332f9d17d0229218f66a73492162267359ba85e9" +uuid = "04162be5-8125-4266-98ed-640baecc6514" +version = "1.1.0" + +[[deps.OrdinaryDiffEqRKN]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "RecursiveArrayTools", "Reexport"] +git-tree-sha1 = "41c09d9c20877546490f907d8dffdd52690dd65f" +uuid = "af6ede74-add8-4cfd-b1df-9a4dbb109d7a" +version = "1.1.0" + +[[deps.OrdinaryDiffEqRosenbrock]] +deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "FiniteDiff", "ForwardDiff", "LinearAlgebra", "LinearSolve", "MacroTools", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static"] +git-tree-sha1 = "749518f27e886164ee07e6df49b631beaca8c9ac" +uuid = "43230ef6-c299-4910-a778-202eb28ce4ce" +version = "1.4.0" + +[[deps.OrdinaryDiffEqSDIRK]] +deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "LinearAlgebra", "MacroTools", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "RecursiveArrayTools", "Reexport", "SciMLBase", "TruncatedStacktraces"] +git-tree-sha1 = "45eed1444fbfa510e1806d4153f83bd862d2d035" +uuid = "2d112036-d095-4a1e-ab9a-08536f3ecdbf" +version = "1.2.0" + +[[deps.OrdinaryDiffEqSSPRK]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static", "StaticArrays"] +git-tree-sha1 = "7dbe4ac56f930df5e9abd003cedb54e25cbbea86" +uuid = "669c94d9-1f4b-4b64-b377-1aa079aa2388" +version = "1.2.0" + +[[deps.OrdinaryDiffEqStabilizedIRK]] +deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "RecursiveArrayTools", "Reexport", "StaticArrays"] +git-tree-sha1 = "f2533f086540db6eb3a5eddbecf963cbc4ab6015" +uuid = "e3e12d00-db14-5390-b879-ac3dd2ef6296" +version = "1.2.0" + +[[deps.OrdinaryDiffEqStabilizedRK]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "StaticArrays"] +git-tree-sha1 = "1b0d894c880e25f7d0b022d7257638cf8ce5b311" +uuid = "358294b1-0aab-51c3-aafe-ad5ab194a2ad" +version = "1.1.0" + +[[deps.OrdinaryDiffEqSymplecticRK]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "RecursiveArrayTools", "Reexport"] +git-tree-sha1 = "4e8b8c8b81df3df17e2eb4603115db3b30a88235" +uuid = "fa646aed-7ef9-47eb-84c4-9443fc8cbfa8" +version = "1.1.0" + +[[deps.OrdinaryDiffEqTsit5]] +deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static", "TruncatedStacktraces"] +git-tree-sha1 = "96552f7d4619fabab4038a29ed37dd55e9eb513a" +uuid = "b1df2697-797e-41e3-8120-5422d3b24e4a" +version = "1.1.0" + +[[deps.OrdinaryDiffEqVerner]] +deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static", "TruncatedStacktraces"] +git-tree-sha1 = "81d7841e73e385b9925d5c8e4427f2adcdda55db" +uuid = "79d7bb75-1356-48c1-b8c0-6832512096c2" +version = "1.1.1" [[deps.PCRE2_jll]] deps = ["Artifacts", "Libdl"] @@ -1237,9 +1728,9 @@ weakdeps = ["Requires", "TOML"] [[deps.Pango_jll]] deps = ["Artifacts", "Cairo_jll", "Fontconfig_jll", "FreeType2_jll", "FriBidi_jll", "Glib_jll", "HarfBuzz_jll", "JLLWrappers", "Libdl"] -git-tree-sha1 = "526f5a03792669e4187e584e8ec9d534248ca765" +git-tree-sha1 = "ed6834e95bd326c52d5675b4181386dfbe885afb" uuid = "36c8627f-9965-5494-a995-c6b170f724f3" -version = "1.52.1+0" +version = "1.55.5+0" [[deps.Parameters]] deps = ["OrderedCollections", "UnPack"] @@ -1260,32 +1751,36 @@ version = "1.3.0" [[deps.Pixman_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LLVMOpenMP_jll", "Libdl"] -git-tree-sha1 = "64779bc4c9784fee475689a1752ef4d5747c5e87" +git-tree-sha1 = "35621f10a7531bc8fa58f74610b1bfb70a3cfc6b" uuid = "30392449-352a-5448-841d-b1acce4e97dc" -version = "0.42.2+0" +version = "0.43.4+0" [[deps.Pkg]] -deps = ["Artifacts", "Dates", "Downloads", "FileWatching", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "Serialization", "TOML", "Tar", "UUIDs", "p7zip_jll"] +deps = ["Artifacts", "Dates", "Downloads", "FileWatching", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "Random", "SHA", "TOML", "Tar", "UUIDs", "p7zip_jll"] uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" -version = "1.10.0" +version = "1.11.0" +weakdeps = ["REPL"] + + [deps.Pkg.extensions] + REPLExt = "REPL" [[deps.PlotThemes]] deps = ["PlotUtils", "Statistics"] -git-tree-sha1 = "1f03a2d339f42dca4a4da149c7e15e9b896ad899" +git-tree-sha1 = "41031ef3a1be6f5bbbf3e8073f210556daeae5ca" uuid = "ccf2f8ad-2431-5c83-bf29-c5338b663b6a" -version = "3.1.0" +version = "3.3.0" [[deps.PlotUtils]] -deps = ["ColorSchemes", "Colors", "Dates", "PrecompileTools", "Printf", "Random", "Reexport", "Statistics"] -git-tree-sha1 = "7b1a9df27f072ac4c9c7cbe5efb198489258d1f5" +deps = ["ColorSchemes", "Colors", "Dates", "PrecompileTools", "Printf", "Random", "Reexport", "StableRNGs", "Statistics"] +git-tree-sha1 = "3ca9a356cd2e113c420f2c13bea19f8d3fb1cb18" uuid = "995b91a9-d308-5afd-9ec6-746e21dbc043" -version = "1.4.1" +version = "1.4.3" [[deps.Plots]] -deps = ["Base64", "Contour", "Dates", "Downloads", "FFMPEG", "FixedPointNumbers", "GR", "JLFzf", "JSON", "LaTeXStrings", "Latexify", "LinearAlgebra", "Measures", "NaNMath", "Pkg", "PlotThemes", "PlotUtils", "PrecompileTools", "Printf", "REPL", "Random", "RecipesBase", "RecipesPipeline", "Reexport", "RelocatableFolders", "Requires", "Scratch", "Showoff", "SparseArrays", "Statistics", "StatsBase", "UUIDs", "UnicodeFun", "UnitfulLatexify", "Unzip"] -git-tree-sha1 = "3c403c6590dd93b36752634115e20137e79ab4df" +deps = ["Base64", "Contour", "Dates", "Downloads", "FFMPEG", "FixedPointNumbers", "GR", "JLFzf", "JSON", "LaTeXStrings", "Latexify", "LinearAlgebra", "Measures", "NaNMath", "Pkg", "PlotThemes", "PlotUtils", "PrecompileTools", "Printf", "REPL", "Random", "RecipesBase", "RecipesPipeline", "Reexport", "RelocatableFolders", "Requires", "Scratch", "Showoff", "SparseArrays", "Statistics", "StatsBase", "TOML", "UUIDs", "UnicodeFun", "UnitfulLatexify", "Unzip"] +git-tree-sha1 = "dae01f8c2e069a683d3a6e17bbae5070ab94786f" uuid = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" -version = "1.40.2" +version = "1.40.9" [deps.Plots.extensions] FileIOExt = "FileIO" @@ -1308,16 +1803,21 @@ uuid = "e409e4f3-bfea-5376-8464-e040bb5c01ab" version = "0.4.4" [[deps.Polyester]] -deps = ["ArrayInterface", "BitTwiddlingConvenienceFunctions", "CPUSummary", "IfElse", "ManualMemory", "PolyesterWeave", "Requires", "Static", "StaticArrayInterface", "StrideArraysCore", "ThreadingUtilities"] -git-tree-sha1 = "fca25670784a1ae44546bcb17288218310af2778" +deps = ["ArrayInterface", "BitTwiddlingConvenienceFunctions", "CPUSummary", "IfElse", "ManualMemory", "PolyesterWeave", "Static", "StaticArrayInterface", "StrideArraysCore", "ThreadingUtilities"] +git-tree-sha1 = "6d38fea02d983051776a856b7df75b30cf9a3c1f" uuid = "f517fe37-dbe3-4b94-8317-1923a5111588" -version = "0.7.9" +version = "0.7.16" [[deps.PolyesterWeave]] deps = ["BitTwiddlingConvenienceFunctions", "CPUSummary", "IfElse", "Static", "ThreadingUtilities"] -git-tree-sha1 = "240d7170f5ffdb285f9427b92333c3463bf65bf6" +git-tree-sha1 = "645bed98cd47f72f67316fd42fc47dee771aefcd" uuid = "1d0040c9-8b98-4ee7-8388-3f51789ca0ad" -version = "0.2.1" +version = "0.2.2" + +[[deps.PolygonAlgorithms]] +git-tree-sha1 = "a5ded6396172cff3bacdd1354d190b93cb667c4b" +uuid = "32a0d02f-32d9-4438-b5ed-3a2932b48f96" +version = "0.2.0" [[deps.PositiveFactorizations]] deps = ["LinearAlgebra"] @@ -1327,9 +1827,9 @@ version = "0.2.4" [[deps.PreallocationTools]] deps = ["Adapt", "ArrayInterface", "ForwardDiff"] -git-tree-sha1 = "b6665214f2d0739f2d09a17474dd443b9139784a" +git-tree-sha1 = "6c62ce45f268f3f958821a1e5192cf91c75ae89c" uuid = "d236fae5-4411-538c-8e31-a6e3d9e00b46" -version = "0.4.20" +version = "0.4.24" [deps.PreallocationTools.extensions] PreallocationToolsReverseDiffExt = "ReverseDiff" @@ -1352,22 +1852,48 @@ version = "1.4.3" [[deps.Printf]] deps = ["Unicode"] uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" +version = "1.11.0" -[[deps.Profile]] -deps = ["Printf"] -uuid = "9abbd945-dff8-562f-b5e8-e1ebf5ef1b79" +[[deps.PtrArrays]] +git-tree-sha1 = "77a42d78b6a92df47ab37e177b2deac405e1c88f" +uuid = "43287f4e-b6f4-7ad1-bb20-aadabca52c3d" +version = "1.2.1" [[deps.Qt6Base_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "Fontconfig_jll", "Glib_jll", "JLLWrappers", "Libdl", "Libglvnd_jll", "OpenSSL_jll", "Vulkan_Loader_jll", "Xorg_libSM_jll", "Xorg_libXext_jll", "Xorg_libXrender_jll", "Xorg_libxcb_jll", "Xorg_xcb_util_cursor_jll", "Xorg_xcb_util_image_jll", "Xorg_xcb_util_keysyms_jll", "Xorg_xcb_util_renderutil_jll", "Xorg_xcb_util_wm_jll", "Zlib_jll", "libinput_jll", "xkbcommon_jll"] -git-tree-sha1 = "37b7bb7aabf9a085e0044307e1717436117f2b3b" +git-tree-sha1 = "492601870742dcd38f233b23c3ec629628c1d724" uuid = "c0090381-4147-56d7-9ebc-da0b1113ec56" -version = "6.5.3+1" +version = "6.7.1+1" + +[[deps.Qt6Declarative_jll]] +deps = ["Artifacts", "JLLWrappers", "Libdl", "Qt6Base_jll", "Qt6ShaderTools_jll"] +git-tree-sha1 = "e5dd466bf2569fe08c91a2cc29c1003f4797ac3b" +uuid = "629bc702-f1f5-5709-abd5-49b8460ea067" +version = "6.7.1+2" + +[[deps.Qt6ShaderTools_jll]] +deps = ["Artifacts", "JLLWrappers", "Libdl", "Qt6Base_jll"] +git-tree-sha1 = "1a180aeced866700d4bebc3120ea1451201f16bc" +uuid = "ce943373-25bb-56aa-8eca-768745ed7b5a" +version = "6.7.1+1" + +[[deps.Qt6Wayland_jll]] +deps = ["Artifacts", "JLLWrappers", "Libdl", "Qt6Base_jll", "Qt6Declarative_jll"] +git-tree-sha1 = "729927532d48cf79f49070341e1d918a65aba6b0" +uuid = "e99dba38-086e-5de3-a5b1-6e4c66e897c3" +version = "6.7.1+1" [[deps.QuadGK]] deps = ["DataStructures", "LinearAlgebra"] -git-tree-sha1 = "9b23c31e76e333e6fb4c1595ae6afa74966a729e" +git-tree-sha1 = "cda3b045cf9ef07a08ad46731f5a3165e56cf3da" uuid = "1fd47b50-473d-5c70-9696-f719f8f3bcdc" -version = "2.9.4" +version = "2.11.1" + + [deps.QuadGK.extensions] + QuadGKEnzymeExt = "Enzyme" + + [deps.QuadGK.weakdeps] + Enzyme = "7da242da-08ed-463a-9acd-ee780be4f1d9" [[deps.Quaternions]] deps = ["LinearAlgebra", "Random", "RealDot"] @@ -1376,12 +1902,14 @@ uuid = "94ee1d12-ae83-5a48-8b1c-48b8ff168ae0" version = "0.7.6" [[deps.REPL]] -deps = ["InteractiveUtils", "Markdown", "Sockets", "Unicode"] +deps = ["InteractiveUtils", "Markdown", "Sockets", "StyledStrings", "Unicode"] uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" +version = "1.11.0" [[deps.Random]] deps = ["SHA"] uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" +version = "1.11.0" [[deps.Random123]] deps = ["Random", "RandomNumbers"] @@ -1390,10 +1918,10 @@ uuid = "74087812-796a-5b5d-8853-05524746bad3" version = "1.7.0" [[deps.RandomNumbers]] -deps = ["Random", "Requires"] -git-tree-sha1 = "043da614cc7e95c703498a491e2c21f58a2b8111" +deps = ["Random"] +git-tree-sha1 = "c6ec94d2aaba1ab2ff983052cf6a606ca5985902" uuid = "e6cf234a-135c-5ec9-84dd-332b85af5143" -version = "1.5.3" +version = "1.6.0" [[deps.RealDot]] deps = ["LinearAlgebra"] @@ -1414,10 +1942,10 @@ uuid = "01d81517-befc-4cb6-b9ec-a95719d0359c" version = "0.6.12" [[deps.RecursiveArrayTools]] -deps = ["Adapt", "ArrayInterface", "DocStringExtensions", "GPUArraysCore", "IteratorInterfaceExtensions", "LinearAlgebra", "RecipesBase", "SparseArrays", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] -git-tree-sha1 = "a94d22ca9ad49a7a169ecbc5419c59b9793937cc" +deps = ["Adapt", "ArrayInterface", "DocStringExtensions", "GPUArraysCore", "IteratorInterfaceExtensions", "LinearAlgebra", "RecipesBase", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] +git-tree-sha1 = "32f824db4e5bab64e25a12b22483a30a6b813d08" uuid = "731186ca-8d62-57ce-b412-fbd966d074cd" -version = "3.12.0" +version = "3.27.4" [deps.RecursiveArrayTools.extensions] RecursiveArrayToolsFastBroadcastExt = "FastBroadcast" @@ -1425,6 +1953,8 @@ version = "3.12.0" RecursiveArrayToolsMeasurementsExt = "Measurements" RecursiveArrayToolsMonteCarloMeasurementsExt = "MonteCarloMeasurements" RecursiveArrayToolsReverseDiffExt = ["ReverseDiff", "Zygote"] + RecursiveArrayToolsSparseArraysExt = ["SparseArrays"] + RecursiveArrayToolsStructArraysExt = "StructArrays" RecursiveArrayToolsTrackerExt = "Tracker" RecursiveArrayToolsZygoteExt = "Zygote" @@ -1434,14 +1964,16 @@ version = "3.12.0" Measurements = "eff96d63-e80a-5855-80a2-b1b0885c5ab7" MonteCarloMeasurements = "0987c9cc-fe09-11e8-30f0-b96dd679fdca" ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" + SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" + StructArrays = "09ab397b-f2b6-538f-b94a-2f83cf4a842a" Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" [[deps.RecursiveFactorization]] deps = ["LinearAlgebra", "LoopVectorization", "Polyester", "PrecompileTools", "StrideArraysCore", "TriangularSolve"] -git-tree-sha1 = "8bc86c78c7d8e2a5fe559e3721c0f9c9e303b2ed" +git-tree-sha1 = "6db1a75507051bc18bfa131fbc7c3f169cc4b2f6" uuid = "f2c3362d-daeb-58d1-803e-2bc74f2840b4" -version = "0.2.21" +version = "0.2.23" [[deps.Reexport]] git-tree-sha1 = "45e428421666073eab6f2da5c9d310d99bb12f9b" @@ -1468,21 +2000,21 @@ version = "1.1.1" [[deps.Rmath]] deps = ["Random", "Rmath_jll"] -git-tree-sha1 = "f65dcb5fa46aee0cf9ed6274ccbd597adc49aa7b" +git-tree-sha1 = "852bd0f55565a9e973fcfee83a84413270224dc4" uuid = "79098fc4-a85e-5d69-aa6a-4863f24498fa" -version = "0.7.1" +version = "0.8.0" [[deps.Rmath_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "6ed52fdd3382cf21947b15e8870ac0ddbff736da" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "58cdd8fb2201a6267e1db87ff148dd6c1dbd8ad8" uuid = "f50d1b31-88e8-58de-be2c-1cc44531875f" -version = "0.4.0+0" +version = "0.5.1+0" [[deps.Rotations]] deps = ["LinearAlgebra", "Quaternions", "Random", "StaticArrays"] -git-tree-sha1 = "2a0a5d8569f481ff8840e3b7c84bbf188db6a3fe" +git-tree-sha1 = "5680a9276685d392c87407df00d57c9924d9f11e" uuid = "6038ab10-8711-5258-84ad-4b1120ba62dc" -version = "1.7.0" +version = "1.7.1" weakdeps = ["RecipesBase"] [deps.Rotations.extensions] @@ -1496,9 +2028,9 @@ version = "1.0.0" [[deps.RuntimeGeneratedFunctions]] deps = ["ExprTools", "SHA", "Serialization"] -git-tree-sha1 = "6aacc5eefe8415f47b3e34214c1d79d2674a0ba2" +git-tree-sha1 = "04c968137612c4a5629fa531334bb81ad5680f00" uuid = "7e49a35a-f44a-4d26-94aa-eba1b4ca6b47" -version = "0.5.12" +version = "0.5.13" [[deps.SHA]] uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" @@ -1511,15 +2043,15 @@ version = "0.1.0" [[deps.SLEEFPirates]] deps = ["IfElse", "Static", "VectorizationBase"] -git-tree-sha1 = "3aac6d68c5e57449f5b9b865c9ba50ac2970c4cf" +git-tree-sha1 = "456f610ca2fbd1c14f5fcf31c6bfadc55e7d66e0" uuid = "476501e8-09a2-5ece-8869-fb82de89a1fa" -version = "0.6.42" +version = "0.6.43" [[deps.SciMLBase]] -deps = ["ADTypes", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "PrecompileTools", "Preferences", "Printf", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] -git-tree-sha1 = "3a281a9fce9cd62b849d7f16e412933a5fe755cb" +deps = ["ADTypes", "Accessors", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "Expronicon", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "PrecompileTools", "Preferences", "Printf", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "SciMLStructures", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface"] +git-tree-sha1 = "3e5a9c5d6432b77a271646b4ada2573f239ac5c4" uuid = "0bca4576-84f4-4d90-8ffe-ffa030f20462" -version = "2.29.0" +version = "2.70.0" [deps.SciMLBase.extensions] SciMLBaseChainRulesCoreExt = "ChainRulesCore" @@ -1540,11 +2072,28 @@ version = "2.29.0" RCall = "6f49c342-dc21-5d91-9882-a32aef131414" Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" +[[deps.SciMLJacobianOperators]] +deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "ConstructionBase", "DifferentiationInterface", "FastClosures", "LinearAlgebra", "SciMLBase", "SciMLOperators"] +git-tree-sha1 = "f66048bb969e67bd7d1bdd03cd0b81219642bbd0" +uuid = "19f34311-ddf3-4b8b-af20-060888a46c0e" +version = "0.1.1" + [[deps.SciMLOperators]] -deps = ["ArrayInterface", "DocStringExtensions", "LinearAlgebra", "MacroTools", "Setfield", "SparseArrays", "StaticArraysCore"] -git-tree-sha1 = "10499f619ef6e890f3f4a38914481cc868689cd5" +deps = ["Accessors", "ArrayInterface", "DocStringExtensions", "LinearAlgebra", "MacroTools"] +git-tree-sha1 = "6149620767866d4b0f0f7028639b6e661b6a1e44" uuid = "c0aeaf25-5076-4817-a8d5-81caf7dfa961" -version = "0.3.8" +version = "0.3.12" +weakdeps = ["SparseArrays", "StaticArraysCore"] + + [deps.SciMLOperators.extensions] + SciMLOperatorsSparseArraysExt = "SparseArrays" + SciMLOperatorsStaticArraysCoreExt = "StaticArraysCore" + +[[deps.SciMLStructures]] +deps = ["ArrayInterface"] +git-tree-sha1 = "0444a37a25fab98adbd90baa806ee492a3af133a" +uuid = "53ae85a6-f571-4167-b2af-e1d143709226" +version = "1.6.1" [[deps.Scratch]] deps = ["Dates"] @@ -1554,6 +2103,7 @@ version = "1.2.1" [[deps.Serialization]] uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" +version = "1.11.0" [[deps.Setfield]] deps = ["ConstructionBase", "Future", "MacroTools", "StaticArraysCore"] @@ -1564,6 +2114,7 @@ version = "1.1.1" [[deps.SharedArrays]] deps = ["Distributed", "Mmap", "Random", "Serialization"] uuid = "1a1011a3-84de-559e-8e89-a11a2f7dc383" +version = "1.11.0" [[deps.Showoff]] deps = ["Dates", "Grisu"] @@ -1572,31 +2123,27 @@ uuid = "992d4aef-0814-514b-bc4d-f2e9a6c4116f" version = "1.0.3" [[deps.SimpleBufferStream]] -git-tree-sha1 = "874e8867b33a00e784c8a7e4b60afe9e037b74e1" +git-tree-sha1 = "f305871d2f381d21527c770d4788c06c097c9bc1" uuid = "777ac1f9-54b0-4bf8-805c-2214025038e7" -version = "1.1.0" +version = "1.2.0" [[deps.SimpleNonlinearSolve]] -deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "DiffResults", "FastClosures", "FiniteDiff", "ForwardDiff", "LinearAlgebra", "MaybeInplace", "PrecompileTools", "Reexport", "SciMLBase", "StaticArraysCore"] -git-tree-sha1 = "a535ae5083708f59e75d5bb3042c36d1be9bc778" +deps = ["ADTypes", "ArrayInterface", "BracketingNonlinearSolve", "CommonSolve", "ConcreteStructs", "DifferentiationInterface", "FastClosures", "FiniteDiff", "ForwardDiff", "LineSearch", "LinearAlgebra", "MaybeInplace", "NonlinearSolveBase", "PrecompileTools", "Reexport", "SciMLBase", "Setfield", "StaticArraysCore"] +git-tree-sha1 = "a3868a6add9f5989d1f4bd21de0333ef89fb9d9f" uuid = "727e6d20-b764-4bd8-a329-72de5adea6c7" -version = "1.6.0" +version = "2.1.0" [deps.SimpleNonlinearSolve.extensions] SimpleNonlinearSolveChainRulesCoreExt = "ChainRulesCore" - SimpleNonlinearSolvePolyesterForwardDiffExt = "PolyesterForwardDiff" + SimpleNonlinearSolveDiffEqBaseExt = "DiffEqBase" SimpleNonlinearSolveReverseDiffExt = "ReverseDiff" - SimpleNonlinearSolveStaticArraysExt = "StaticArrays" SimpleNonlinearSolveTrackerExt = "Tracker" - SimpleNonlinearSolveZygoteExt = "Zygote" [deps.SimpleNonlinearSolve.weakdeps] ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" - PolyesterForwardDiff = "98d1487c-24ca-40b6-b7ab-df2af84e126b" + DiffEqBase = "2b5f629d-d688-5b77-993f-72d75c75574e" ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" - StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" - Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" [[deps.SimpleTraits]] deps = ["InteractiveUtils", "MacroTools"] @@ -1611,6 +2158,7 @@ version = "1.1.0" [[deps.Sockets]] uuid = "6462fe0b-24de-5631-8697-dd941f90decc" +version = "1.11.0" [[deps.SoftGlobalScope]] deps = ["REPL"] @@ -1627,13 +2175,13 @@ version = "1.2.1" [[deps.SparseArrays]] deps = ["Libdl", "LinearAlgebra", "Random", "Serialization", "SuiteSparse_jll"] uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" -version = "1.10.0" +version = "1.11.0" [[deps.SparseDiffTools]] -deps = ["ADTypes", "Adapt", "ArrayInterface", "Compat", "DataStructures", "FiniteDiff", "ForwardDiff", "Graphs", "LinearAlgebra", "PackageExtensionCompat", "Random", "Reexport", "SciMLOperators", "Setfield", "SparseArrays", "StaticArrayInterface", "StaticArrays", "Tricks", "UnPack", "VertexSafeGraphs"] -git-tree-sha1 = "a616ac46c38da60ac05cecf52064d44732edd05e" +deps = ["ADTypes", "Adapt", "ArrayInterface", "Compat", "DataStructures", "FiniteDiff", "ForwardDiff", "Graphs", "LinearAlgebra", "PackageExtensionCompat", "Random", "Reexport", "SciMLOperators", "Setfield", "SparseArrays", "StaticArrayInterface", "StaticArrays", "UnPack", "VertexSafeGraphs"] +git-tree-sha1 = "d79802152d958607f414f5447cb25e314db979c0" uuid = "47a9eef4-7e08-11e9-0b38-333d64bd3804" -version = "2.17.0" +version = "2.23.1" [deps.SparseDiffTools.extensions] SparseDiffToolsEnzymeExt = "Enzyme" @@ -1649,6 +2197,16 @@ version = "2.17.0" Symbolics = "0c5d862f-8b57-4792-8d23-62f2024744c7" Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" +[[deps.SparseMatrixColorings]] +deps = ["ADTypes", "DataStructures", "DocStringExtensions", "LinearAlgebra", "Random", "SparseArrays"] +git-tree-sha1 = "76b44c879661552d64f382acf66faa29ab56b3d9" +uuid = "0a514795-09f3-496d-8182-132a7b665d35" +version = "0.4.10" +weakdeps = ["Colors"] + + [deps.SparseMatrixColorings.extensions] + SparseMatrixColoringsColorsExt = "Colors" + [[deps.Sparspak]] deps = ["Libdl", "LinearAlgebra", "Logging", "OffsetArrays", "Printf", "SparseArrays", "Test"] git-tree-sha1 = "342cf4b449c299d8d1ceaf00b7a49f4fbc7940e7" @@ -1657,25 +2215,31 @@ version = "0.3.9" [[deps.SpecialFunctions]] deps = ["IrrationalConstants", "LogExpFunctions", "OpenLibm_jll", "OpenSpecFun_jll"] -git-tree-sha1 = "e2cfc4012a19088254b3950b85c3c1d8882d864d" +git-tree-sha1 = "64cca0c26b4f31ba18f13f6c12af7c85f478cfde" uuid = "276daf66-3868-5448-9aa4-cd146d93841b" -version = "2.3.1" +version = "2.5.0" weakdeps = ["ChainRulesCore"] [deps.SpecialFunctions.extensions] SpecialFunctionsChainRulesCoreExt = "ChainRulesCore" +[[deps.StableRNGs]] +deps = ["Random"] +git-tree-sha1 = "83e6cce8324d49dfaf9ef059227f91ed4441a8e5" +uuid = "860ef19b-820b-49d6-a774-d7a799459cd3" +version = "1.0.2" + [[deps.Static]] -deps = ["IfElse"] -git-tree-sha1 = "d2fdac9ff3906e27f7a618d47b676941baa6c80c" +deps = ["CommonWorldInvalidations", "IfElse", "PrecompileTools"] +git-tree-sha1 = "87d51a3ee9a4b0d2fe054bdd3fc2436258db2603" uuid = "aedffcd0-7271-4cad-89d0-dc628f76c6d3" -version = "0.8.10" +version = "1.1.1" [[deps.StaticArrayInterface]] -deps = ["ArrayInterface", "Compat", "IfElse", "LinearAlgebra", "PrecompileTools", "Requires", "SparseArrays", "Static", "SuiteSparse"] -git-tree-sha1 = "5d66818a39bb04bf328e92bc933ec5b4ee88e436" +deps = ["ArrayInterface", "Compat", "IfElse", "LinearAlgebra", "PrecompileTools", "Static"] +git-tree-sha1 = "96381d50f1ce85f2663584c8e886a6ca97e60554" uuid = "0d7ed370-da01-4f52-bd93-41d350b8b718" -version = "1.5.0" +version = "1.8.0" weakdeps = ["OffsetArrays", "StaticArrays"] [deps.StaticArrayInterface.extensions] @@ -1684,9 +2248,9 @@ weakdeps = ["OffsetArrays", "StaticArrays"] [[deps.StaticArrays]] deps = ["LinearAlgebra", "PrecompileTools", "Random", "StaticArraysCore"] -git-tree-sha1 = "bf074c045d3d5ffd956fa0a461da38a44685d6b2" +git-tree-sha1 = "47091a0340a675c738b1304b58161f3b0839d454" uuid = "90137ffa-7385-5640-81b9-e52037218182" -version = "1.9.3" +version = "1.9.10" weakdeps = ["ChainRulesCore", "Statistics"] [deps.StaticArrays.extensions] @@ -1694,14 +2258,25 @@ weakdeps = ["ChainRulesCore", "Statistics"] StaticArraysStatisticsExt = "Statistics" [[deps.StaticArraysCore]] -git-tree-sha1 = "36b3d696ce6366023a0ea192b4cd442268995a0d" +git-tree-sha1 = "192954ef1208c7019899fbf8049e717f92959682" uuid = "1e83bf80-4336-4d27-bf5d-d5a4f845583c" -version = "1.4.2" +version = "1.4.3" + +[[deps.StaticLint]] +deps = ["CSTParser", "Serialization", "SymbolServer"] +git-tree-sha1 = "36732c098f291ee3b867718bb9933e8b67ab4798" +uuid = "b3cc710f-9c33-5bdb-a03d-a94903873e97" +version = "8.2.2" [[deps.Statistics]] -deps = ["LinearAlgebra", "SparseArrays"] +deps = ["LinearAlgebra"] +git-tree-sha1 = "ae3bb1eb3bba077cd276bc5cfc337cc65c3075c0" uuid = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" -version = "1.10.0" +version = "1.11.1" +weakdeps = ["SparseArrays"] + + [deps.Statistics.extensions] + SparseArraysExt = ["SparseArrays"] [[deps.StatsAPI]] deps = ["LinearAlgebra"] @@ -1710,42 +2285,43 @@ uuid = "82ae8749-77ed-4fe6-ae5f-f523153014b0" version = "1.7.0" [[deps.StatsBase]] -deps = ["DataAPI", "DataStructures", "LinearAlgebra", "LogExpFunctions", "Missings", "Printf", "Random", "SortingAlgorithms", "SparseArrays", "Statistics", "StatsAPI"] -git-tree-sha1 = "1d77abd07f617c4868c33d4f5b9e1dbb2643c9cf" +deps = ["AliasTables", "DataAPI", "DataStructures", "LinearAlgebra", "LogExpFunctions", "Missings", "Printf", "Random", "SortingAlgorithms", "SparseArrays", "Statistics", "StatsAPI"] +git-tree-sha1 = "29321314c920c26684834965ec2ce0dacc9cf8e5" uuid = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91" -version = "0.34.2" +version = "0.34.4" [[deps.StatsFuns]] deps = ["HypergeometricFunctions", "IrrationalConstants", "LogExpFunctions", "Reexport", "Rmath", "SpecialFunctions"] -git-tree-sha1 = "cef0472124fab0695b58ca35a77c6fb942fdab8a" +git-tree-sha1 = "b423576adc27097764a90e163157bcfc9acf0f46" uuid = "4c63d2b9-4356-54db-8cca-17b64c39e42c" -version = "1.3.1" +version = "1.3.2" +weakdeps = ["ChainRulesCore", "InverseFunctions"] [deps.StatsFuns.extensions] StatsFunsChainRulesCoreExt = "ChainRulesCore" StatsFunsInverseFunctionsExt = "InverseFunctions" - [deps.StatsFuns.weakdeps] - ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" - InverseFunctions = "3587e190-3f89-42d0-90ee-14403ec27112" - [[deps.SteadyStateDiffEq]] deps = ["ConcreteStructs", "DiffEqBase", "DiffEqCallbacks", "LinearAlgebra", "Reexport", "SciMLBase"] -git-tree-sha1 = "3875ef009bc726f12c8af2ea9a8bb115ff545d6d" +git-tree-sha1 = "920acf6ae36c86f23969fea1d317e040dbfccf53" uuid = "9672c7b4-1e72-59bd-8a11-6ac3964bc41f" -version = "2.1.0" +version = "2.4.1" [[deps.StochasticDiffEq]] -deps = ["Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DiffEqNoiseProcess", "DocStringExtensions", "FiniteDiff", "ForwardDiff", "JumpProcesses", "LevyArea", "LinearAlgebra", "Logging", "MuladdMacro", "NLsolve", "OrdinaryDiffEq", "Random", "RandomNumbers", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SparseArrays", "SparseDiffTools", "StaticArrays", "UnPack"] -git-tree-sha1 = "97e5d0b7e5ec2e68eec6626af97c59e9f6b6c3d0" +deps = ["ADTypes", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DiffEqNoiseProcess", "DocStringExtensions", "FastPower", "FiniteDiff", "ForwardDiff", "JumpProcesses", "LevyArea", "LinearAlgebra", "Logging", "MuladdMacro", "NLsolve", "OrdinaryDiffEq", "OrdinaryDiffEqCore", "Random", "RandomNumbers", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SparseArrays", "SparseDiffTools", "StaticArrays", "UnPack"] +git-tree-sha1 = "b0a5dce397b3bc5478ee1de3127878daa061db28" uuid = "789caeaf-c7a9-5a7d-9973-96adeb23e2a0" -version = "6.65.1" +version = "6.72.1" [[deps.StrideArraysCore]] -deps = ["ArrayInterface", "CloseOpenIntervals", "IfElse", "LayoutPointers", "ManualMemory", "SIMDTypes", "Static", "StaticArrayInterface", "ThreadingUtilities"] -git-tree-sha1 = "d6415f66f3d89c615929af907fdc6a3e17af0d8c" +deps = ["ArrayInterface", "CloseOpenIntervals", "IfElse", "LayoutPointers", "LinearAlgebra", "ManualMemory", "SIMDTypes", "Static", "StaticArrayInterface", "ThreadingUtilities"] +git-tree-sha1 = "f35f6ab602df8413a50c4a25ca14de821e8605fb" uuid = "7792a7ef-975c-4747-a70f-980b88e8d1da" -version = "0.5.2" +version = "0.5.7" + +[[deps.StyledStrings]] +uuid = "f489334b-da3d-4c2e-b8f0-e476e12c162b" +version = "1.11.0" [[deps.SuiteSparse]] deps = ["Libdl", "LinearAlgebra", "Serialization", "SparseArrays"] @@ -1754,25 +2330,31 @@ uuid = "4607b0f0-06f3-5cda-b6b1-a6196a1729e9" [[deps.SuiteSparse_jll]] deps = ["Artifacts", "Libdl", "libblastrampoline_jll"] uuid = "bea87d4a-7f5b-5778-9afe-8cc45184846c" -version = "7.2.1+1" +version = "7.7.0+0" [[deps.Sundials]] deps = ["CEnum", "DataStructures", "DiffEqBase", "Libdl", "LinearAlgebra", "Logging", "PrecompileTools", "Reexport", "SciMLBase", "SparseArrays", "Sundials_jll"] -git-tree-sha1 = "e15f5a73f0d14b9079b807a9d1dac13e4302e997" +git-tree-sha1 = "56661ac133ea6df96fea8d6bb4eb18875b002206" uuid = "c3572dad-4567-51f8-b174-8c6c989267f4" -version = "4.24.0" +version = "4.26.1" [[deps.Sundials_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "SuiteSparse_jll", "libblastrampoline_jll"] -git-tree-sha1 = "ba4d38faeb62de7ef47155ed321dce40a549c305" +git-tree-sha1 = "91db7ed92c66f81435fe880947171f1212936b14" uuid = "fb77eaff-e24c-56d4-86b1-d163f2edb164" -version = "5.2.2+0" +version = "5.2.3+0" + +[[deps.SymbolServer]] +deps = ["InteractiveUtils", "LibGit2", "Markdown", "Pkg", "REPL", "SHA", "Serialization", "Sockets", "UUIDs"] +git-tree-sha1 = "adcc6a2335e5448adc05939f67d382fb8d17a367" +uuid = "cf896787-08d5-524d-9de7-132aaa0cb996" +version = "7.4.0" [[deps.SymbolicIndexingInterface]] -deps = ["MacroTools", "RuntimeGeneratedFunctions"] -git-tree-sha1 = "f7b1fc9fc2bc938436b7684c243be7d317919056" +deps = ["Accessors", "ArrayInterface", "RuntimeGeneratedFunctions", "StaticArraysCore"] +git-tree-sha1 = "fd2d4f0499f6bb4a0d9f5030f5c7d61eed385e03" uuid = "2efcf032-c050-4f8e-a9bb-153293bab1f5" -version = "0.3.11" +version = "0.3.37" [[deps.TOML]] deps = ["Dates"] @@ -1786,10 +2368,10 @@ uuid = "3783bdb8-4a98-5b6b-af9a-565f29a5fe9c" version = "1.0.1" [[deps.Tables]] -deps = ["DataAPI", "DataValueInterfaces", "IteratorInterfaceExtensions", "LinearAlgebra", "OrderedCollections", "TableTraits"] -git-tree-sha1 = "cb76cf677714c095e535e3501ac7954732aeea2d" +deps = ["DataAPI", "DataValueInterfaces", "IteratorInterfaceExtensions", "OrderedCollections", "TableTraits"] +git-tree-sha1 = "598cd7c1f68d1e205689b1c2fe65a9f85846f297" uuid = "bd369af6-aec1-5ad0-b16a-f7cc5008161c" -version = "1.11.1" +version = "1.12.0" [[deps.Tar]] deps = ["ArgTools", "SHA"] @@ -1805,12 +2387,19 @@ version = "0.1.1" [[deps.Test]] deps = ["InteractiveUtils", "Logging", "Random", "Serialization"] uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" +version = "1.11.0" + +[[deps.TestItemDetection]] +deps = ["CSTParser"] +git-tree-sha1 = "c63abb8bf01ba3f0e5421760454d578ee9bd12ca" +uuid = "76b0de8b-5c4b-48ef-a724-914b33ca988d" +version = "0.2.0" [[deps.Thebes]] deps = ["Colors", "Luxor", "PackageExtensionCompat", "Random", "Rotations", "StaticArrays"] -git-tree-sha1 = "52be2beb73e37ff3f010b5e4135295d7872e1e27" +git-tree-sha1 = "d8fb0b66ef1d0566cd4567c0ee801c2459f6965e" uuid = "8b424ff8-82f5-59a4-86a6-de3761897198" -version = "1.0.0" +version = "1.1.0" [deps.Thebes.extensions] LaTeXExt = ["LaTeXStrings", "MathTeXEngine"] @@ -1827,29 +2416,25 @@ version = "0.5.2" [[deps.TimerOutputs]] deps = ["ExprTools", "Printf"] -git-tree-sha1 = "f548a9e9c490030e545f72074a41edfd0e5bcdd7" +git-tree-sha1 = "d7298ebdfa1654583468a487e8e83fae9d72dac3" uuid = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f" -version = "0.5.23" +version = "0.5.26" + +[[deps.Tokenize]] +git-tree-sha1 = "468b4685af4abe0e9fd4d7bf495a6554a6276e75" +uuid = "0796e94c-ce3b-5d07-9a54-7f471281c624" +version = "0.5.29" [[deps.TranscodingStreams]] -git-tree-sha1 = "3caa21522e7efac1ba21834a03734c57b4611c7e" +git-tree-sha1 = "0c45878dcfdcfa8480052b6ab162cdd138781742" uuid = "3bb67fe8-82b1-5028-8e26-92a6c54297fa" -version = "0.10.4" -weakdeps = ["Random", "Test"] - - [deps.TranscodingStreams.extensions] - TestExt = ["Test", "Random"] +version = "0.11.3" [[deps.TriangularSolve]] deps = ["CloseOpenIntervals", "IfElse", "LayoutPointers", "LinearAlgebra", "LoopVectorization", "Polyester", "Static", "VectorizationBase"] -git-tree-sha1 = "fadebab77bf3ae041f77346dd1c290173da5a443" +git-tree-sha1 = "be986ad9dac14888ba338c2554dcfec6939e1393" uuid = "d5829a12-d9aa-46ab-831f-fb7c9ab06edf" -version = "0.1.20" - -[[deps.Tricks]] -git-tree-sha1 = "eae1bb484cd63b36999ee58be2de6c178105112f" -uuid = "410a4b4d-49e4-4fbc-ab6d-cb71b17b3775" -version = "0.1.8" +version = "0.2.1" [[deps.TruncatedStacktraces]] deps = ["InteractiveUtils", "MacroTools", "Preferences"] @@ -1865,6 +2450,7 @@ version = "1.5.1" [[deps.UUIDs]] deps = ["Random", "SHA"] uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4" +version = "1.11.0" [[deps.UnPack]] git-tree-sha1 = "387c1f73762231e86e0c9c5443ce3b4a0a9a0c2b" @@ -1873,6 +2459,7 @@ version = "1.0.2" [[deps.Unicode]] uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5" +version = "1.11.0" [[deps.UnicodeFun]] deps = ["REPL"] @@ -1882,23 +2469,20 @@ version = "0.4.1" [[deps.Unitful]] deps = ["Dates", "LinearAlgebra", "Random"] -git-tree-sha1 = "3c793be6df9dd77a0cf49d80984ef9ff996948fa" +git-tree-sha1 = "c0667a8e676c53d390a09dc6870b3d8d6650e2bf" uuid = "1986cc42-f94f-5a68-af5c-568840ba703d" -version = "1.19.0" +version = "1.22.0" +weakdeps = ["ConstructionBase", "InverseFunctions"] [deps.Unitful.extensions] ConstructionBaseUnitfulExt = "ConstructionBase" InverseFunctionsUnitfulExt = "InverseFunctions" - [deps.Unitful.weakdeps] - ConstructionBase = "187b0558-2788-49d3-abe0-74a17ed4e7c9" - InverseFunctions = "3587e190-3f89-42d0-90ee-14403ec27112" - [[deps.UnitfulLatexify]] deps = ["LaTeXStrings", "Latexify", "Unitful"] -git-tree-sha1 = "e2d817cc500e960fdbafcf988ac8436ba3208bfd" +git-tree-sha1 = "975c354fcd5f7e1ddcc1f1a23e6e091d99e99bc8" uuid = "45397f5d-5981-4c77-b2b3-fc36d6e9b728" -version = "1.6.3" +version = "1.6.4" [[deps.Unzip]] git-tree-sha1 = "ca0969166a028236229f63514992fc073799bb78" @@ -1907,9 +2491,9 @@ version = "0.2.0" [[deps.VectorizationBase]] deps = ["ArrayInterface", "CPUSummary", "HostCPUFeatures", "IfElse", "LayoutPointers", "Libdl", "LinearAlgebra", "SIMDTypes", "Static", "StaticArrayInterface"] -git-tree-sha1 = "7209df901e6ed7489fe9b7aa3e46fb788e15db85" +git-tree-sha1 = "4ab62a49f1d8d9548a1c8d1a75e5f55cf196f64e" uuid = "3d5dd08c-fd9d-11e8-17fa-ed2836048c2f" -version = "0.21.65" +version = "0.21.71" [[deps.VersionParsing]] git-tree-sha1 = "58d6e80b4ee071f5efd07fda82cb9fbe17200868" @@ -1930,123 +2514,123 @@ version = "1.3.243+0" [[deps.Wayland_jll]] deps = ["Artifacts", "EpollShim_jll", "Expat_jll", "JLLWrappers", "Libdl", "Libffi_jll", "Pkg", "XML2_jll"] -git-tree-sha1 = "7558e29847e99bc3f04d6569e82d0f5c54460703" +git-tree-sha1 = "85c7811eddec9e7f22615371c3cc81a504c508ee" uuid = "a2964d1f-97da-50d4-b82a-358c7fce9d89" -version = "1.21.0+1" +version = "1.21.0+2" [[deps.Wayland_protocols_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "93f43ab61b16ddfb2fd3bb13b3ce241cafb0e6c9" +git-tree-sha1 = "5db3e9d307d32baba7067b13fc7b5aa6edd4a19a" uuid = "2381bf8a-dfd0-557d-9999-79630e7b1b91" -version = "1.31.0+0" +version = "1.36.0+0" [[deps.XML2_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Libiconv_jll", "Zlib_jll"] -git-tree-sha1 = "07e470dabc5a6a4254ffebc29a1b3fc01464e105" +git-tree-sha1 = "a2fccc6559132927d4c5dc183e3e01048c6dcbd6" uuid = "02c8fc9c-b97f-50b9-bbe4-9be30ff0a78a" -version = "2.12.5+0" +version = "2.13.5+0" [[deps.XSLT_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgcrypt_jll", "Libgpg_error_jll", "Libiconv_jll", "Pkg", "XML2_jll", "Zlib_jll"] -git-tree-sha1 = "91844873c4085240b95e795f692c4cec4d805f8a" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgcrypt_jll", "Libgpg_error_jll", "Libiconv_jll", "XML2_jll", "Zlib_jll"] +git-tree-sha1 = "7d1671acbe47ac88e981868a078bd6b4e27c5191" uuid = "aed1982a-8fda-507f-9586-7b0439959a61" -version = "1.1.34+0" +version = "1.1.42+0" [[deps.XZ_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "31c421e5516a6248dfb22c194519e37effbf1f30" +git-tree-sha1 = "beef98d5aad604d9e7d60b2ece5181f7888e2fd6" uuid = "ffd25f8a-64ca-5728-b0f7-c24cf3aae800" -version = "5.6.1+0" +version = "5.6.4+0" [[deps.Xorg_libICE_jll]] -deps = ["Libdl", "Pkg"] -git-tree-sha1 = "e5becd4411063bdcac16be8b66fc2f9f6f1e8fe5" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "326b4fea307b0b39892b3e85fa451692eda8d46c" uuid = "f67eecfb-183a-506d-b269-f58e52b52d7c" -version = "1.0.10+1" +version = "1.1.1+0" [[deps.Xorg_libSM_jll]] -deps = ["Libdl", "Pkg", "Xorg_libICE_jll"] -git-tree-sha1 = "4a9d9e4c180e1e8119b5ffc224a7b59d3a7f7e18" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libICE_jll"] +git-tree-sha1 = "3796722887072218eabafb494a13c963209754ce" uuid = "c834827a-8449-5923-a945-d239c165b7dd" -version = "1.2.3+0" +version = "1.2.4+0" [[deps.Xorg_libX11_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libxcb_jll", "Xorg_xtrans_jll"] -git-tree-sha1 = "afead5aba5aa507ad5a3bf01f58f82c8d1403495" +git-tree-sha1 = "9dafcee1d24c4f024e7edc92603cedba72118283" uuid = "4f6342f7-b3d2-589e-9d20-edeb45f2b2bc" -version = "1.8.6+0" +version = "1.8.6+3" [[deps.Xorg_libXau_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "6035850dcc70518ca32f012e46015b9beeda49d8" +git-tree-sha1 = "e9216fdcd8514b7072b43653874fd688e4c6c003" uuid = "0c0b7dd1-d40b-584c-a123-a41640f87eec" -version = "1.0.11+0" +version = "1.0.12+0" [[deps.Xorg_libXcursor_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libXfixes_jll", "Xorg_libXrender_jll"] -git-tree-sha1 = "12e0eb3bc634fa2080c1c37fccf56f7c22989afd" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libXfixes_jll", "Xorg_libXrender_jll"] +git-tree-sha1 = "807c226eaf3651e7b2c468f687ac788291f9a89b" uuid = "935fb764-8cf2-53bf-bb30-45bb1f8bf724" -version = "1.2.0+4" +version = "1.2.3+0" [[deps.Xorg_libXdmcp_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "34d526d318358a859d7de23da945578e8e8727b7" +git-tree-sha1 = "89799ae67c17caa5b3b5a19b8469eeee474377db" uuid = "a3789734-cfe1-5b06-b2d0-1dd0d9d62d05" -version = "1.1.4+0" +version = "1.1.5+0" [[deps.Xorg_libXext_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libX11_jll"] -git-tree-sha1 = "b7c0aa8c376b31e4852b360222848637f481f8c3" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll"] +git-tree-sha1 = "d7155fea91a4123ef59f42c4afb5ab3b4ca95058" uuid = "1082639a-0dae-5f34-9b06-72781eeb8cb3" -version = "1.3.4+4" +version = "1.3.6+3" [[deps.Xorg_libXfixes_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libX11_jll"] -git-tree-sha1 = "0e0dc7431e7a0587559f9294aeec269471c991a4" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll"] +git-tree-sha1 = "6fcc21d5aea1a0b7cce6cab3e62246abd1949b86" uuid = "d091e8ba-531a-589c-9de9-94069b037ed8" -version = "5.0.3+4" +version = "6.0.0+0" [[deps.Xorg_libXi_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libXext_jll", "Xorg_libXfixes_jll"] -git-tree-sha1 = "89b52bc2160aadc84d707093930ef0bffa641246" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libXext_jll", "Xorg_libXfixes_jll"] +git-tree-sha1 = "984b313b049c89739075b8e2a94407076de17449" uuid = "a51aa0fd-4e3c-5386-b890-e753decda492" -version = "1.7.10+4" +version = "1.8.2+0" [[deps.Xorg_libXinerama_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libXext_jll"] -git-tree-sha1 = "26be8b1c342929259317d8b9f7b53bf2bb73b123" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libXext_jll"] +git-tree-sha1 = "a1a7eaf6c3b5b05cb903e35e8372049b107ac729" uuid = "d1454406-59df-5ea1-beac-c340f2130bc3" -version = "1.1.4+4" +version = "1.1.5+0" [[deps.Xorg_libXrandr_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libXext_jll", "Xorg_libXrender_jll"] -git-tree-sha1 = "34cea83cb726fb58f325887bf0612c6b3fb17631" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libXext_jll", "Xorg_libXrender_jll"] +git-tree-sha1 = "b6f664b7b2f6a39689d822a6300b14df4668f0f4" uuid = "ec84b674-ba8e-5d96-8ba1-2a689ba10484" -version = "1.5.2+4" +version = "1.5.4+0" [[deps.Xorg_libXrender_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libX11_jll"] -git-tree-sha1 = "19560f30fd49f4d4efbe7002a1037f8c43d43b96" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll"] +git-tree-sha1 = "a490c6212a0e90d2d55111ac956f7c4fa9c277a6" uuid = "ea2f1a96-1ddc-540d-b46f-429655e07cfa" -version = "0.9.10+4" +version = "0.9.11+1" [[deps.Xorg_libpthread_stubs_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "8fdda4c692503d44d04a0603d9ac0982054635f9" +git-tree-sha1 = "c57201109a9e4c0585b208bb408bc41d205ac4e9" uuid = "14d82f49-176c-5ed1-bb49-ad3f5cbd8c74" -version = "0.1.1+0" +version = "0.1.2+0" [[deps.Xorg_libxcb_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "XSLT_jll", "Xorg_libXau_jll", "Xorg_libXdmcp_jll", "Xorg_libpthread_stubs_jll"] -git-tree-sha1 = "b4bfde5d5b652e22b9c790ad00af08b6d042b97d" +git-tree-sha1 = "1a74296303b6524a0472a8cb12d3d87a78eb3612" uuid = "c7cfdc94-dc32-55de-ac96-5a1b8d977c5b" -version = "1.15.0+0" +version = "1.17.0+3" [[deps.Xorg_libxkbfile_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll"] -git-tree-sha1 = "730eeca102434283c50ccf7d1ecdadf521a765a4" +git-tree-sha1 = "dbc53e4cf7701c6c7047c51e17d6e64df55dca94" uuid = "cc61e674-0454-545c-8b26-ed2c68acab7a" -version = "1.1.2+0" +version = "1.1.2+1" [[deps.Xorg_xcb_util_cursor_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_xcb_util_image_jll", "Xorg_xcb_util_jll", "Xorg_xcb_util_renderutil_jll"] @@ -2086,9 +2670,9 @@ version = "0.4.1+1" [[deps.Xorg_xkbcomp_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libxkbfile_jll"] -git-tree-sha1 = "330f955bc41bb8f5270a369c473fc4a5a4e4d3cb" +git-tree-sha1 = "ab2221d309eda71020cdda67a973aa582aa85d69" uuid = "35661453-b289-5fab-8a00-3d9160c6a3a4" -version = "1.4.6+0" +version = "1.4.6+1" [[deps.Xorg_xkeyboard_config_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_xkbcomp_jll"] @@ -2098,21 +2682,21 @@ version = "2.39.0+0" [[deps.Xorg_xtrans_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "e92a1a012a10506618f10b7047e478403a046c77" +git-tree-sha1 = "6dba04dbfb72ae3ebe5418ba33d087ba8aa8cb00" uuid = "c5fb5394-a638-5e4d-96e5-b29de1b5cf10" -version = "1.5.0+0" +version = "1.5.1+0" [[deps.ZMQ]] -deps = ["FileWatching", "Sockets", "ZeroMQ_jll"] -git-tree-sha1 = "356d2bdcc0bce90aabee1d1c0f6d6f301eda8f77" +deps = ["FileWatching", "PrecompileTools", "Sockets", "ZeroMQ_jll"] +git-tree-sha1 = "33333bdded3835f81b9b6353da9243dc4ec62e0f" uuid = "c2297ded-f4af-51ae-bb23-16f91089e4e1" -version = "1.2.2" +version = "1.4.0" [[deps.ZeroMQ_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "libsodium_jll"] -git-tree-sha1 = "42f97fb27394378591666ab0e9cee369e6d0e1f9" +git-tree-sha1 = "f02ce8f0fda1ed40f4d0d59a2ad05e35e8ac9b0e" uuid = "8f1865be-045e-5c20-9c9f-bfbfb0764568" -version = "4.3.5+0" +version = "4.3.5+3" [[deps.Zlib_jll]] deps = ["Libdl"] @@ -2121,9 +2705,9 @@ version = "1.2.13+1" [[deps.Zstd_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "49ce682769cd5de6c72dcf1b94ed7790cd08974c" +git-tree-sha1 = "622cf78670d067c738667aaa96c553430b65e269" uuid = "3161d3a3-bdf6-5164-811a-617609db77b4" -version = "1.5.5+0" +version = "1.5.7+0" [[deps.eudev_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "gperf_jll"] @@ -2133,38 +2717,44 @@ version = "3.2.9+0" [[deps.fzf_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "a68c9655fbe6dfcab3d972808f1aafec151ce3f8" +git-tree-sha1 = "6e50f145003024df4f5cb96c7fce79466741d601" uuid = "214eeab7-80f7-51ab-84ad-2988db7cef09" -version = "0.43.0+0" +version = "0.56.3+0" [[deps.gdk_pixbuf_jll]] deps = ["Artifacts", "Glib_jll", "JLLWrappers", "JpegTurbo_jll", "Libdl", "Libtiff_jll", "Xorg_libX11_jll", "libpng_jll"] -git-tree-sha1 = "86e7731be08b12fa5e741f719603ae740e16b666" +git-tree-sha1 = "cc803af2e0d7647ae880e7eaf4be491094def6c7" uuid = "da03df04-f53b-5353-a52f-6a8b0620ced0" -version = "2.42.10+0" +version = "2.42.12+0" [[deps.gperf_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "3516a5630f741c9eecb3720b1ec9d8edc3ecc033" +git-tree-sha1 = "0ba42241cb6809f1a278d0bcb976e0483c3f1f2d" uuid = "1a1c6b14-54f6-533d-8383-74cd7377aa70" -version = "3.1.1+0" +version = "3.1.1+1" [[deps.libaom_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "3a2ea60308f0996d26f1e5354e10c24e9ef905d4" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "522c1df09d05a71785765d19c9524661234738e9" uuid = "a4ae2306-e953-59d6-aa16-d00cac43593b" -version = "3.4.0+0" +version = "3.11.0+0" [[deps.libass_jll]] -deps = ["Artifacts", "Bzip2_jll", "FreeType2_jll", "FriBidi_jll", "HarfBuzz_jll", "JLLWrappers", "Libdl", "Pkg", "Zlib_jll"] -git-tree-sha1 = "5982a94fcba20f02f42ace44b9894ee2b140fe47" +deps = ["Artifacts", "Bzip2_jll", "FreeType2_jll", "FriBidi_jll", "HarfBuzz_jll", "JLLWrappers", "Libdl", "Zlib_jll"] +git-tree-sha1 = "e17c115d55c5fbb7e52ebedb427a0dca79d4484e" uuid = "0ac62f75-1d6f-5e53-bd7c-93b484bb37c0" -version = "0.15.1+0" +version = "0.15.2+0" [[deps.libblastrampoline_jll]] deps = ["Artifacts", "Libdl"] uuid = "8e850b90-86db-534c-a0d3-1478176c7d93" -version = "5.8.0+1" +version = "5.11.0+0" + +[[deps.libdecor_jll]] +deps = ["Artifacts", "Dbus_jll", "JLLWrappers", "Libdl", "Libglvnd_jll", "Pango_jll", "Wayland_jll", "xkbcommon_jll"] +git-tree-sha1 = "9bf7903af251d2050b467f76bdbe57ce541f7f4f" +uuid = "1183f4f0-6f2a-5f1a-908b-139f9cdfea6f" +version = "0.2.2+0" [[deps.libevdev_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] @@ -2173,10 +2763,10 @@ uuid = "2db6ffa8-e38f-5e21-84af-90c45d0032cc" version = "1.11.0+0" [[deps.libfdk_aac_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "daacc84a041563f965be61859a36e17c4e4fcd55" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "8a22cf860a7d27e4f3498a0fe0811a7957badb38" uuid = "f638f0a6-7fb0-5443-88ba-1cc74229b280" -version = "2.0.2+0" +version = "2.0.3+0" [[deps.libinput_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "eudev_jll", "libevdev_jll", "mtdev_jll"] @@ -2186,21 +2776,21 @@ version = "1.18.0+0" [[deps.libpng_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Zlib_jll"] -git-tree-sha1 = "d7015d2e18a5fd9a4f47de711837e980519781a4" +git-tree-sha1 = "d7b5bbf1efbafb5eca466700949625e07533aff2" uuid = "b53b4c65-9356-5827-b1ea-8c7a1a84506f" -version = "1.6.43+1" +version = "1.6.45+1" [[deps.libsodium_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "848ab3d00fe39d6fbc2a8641048f8f272af1c51e" +git-tree-sha1 = "f76d682d87eefadd3f165d8d9fda436464213142" uuid = "a9144af2-ca23-56d9-984f-0d03f7b5ccf8" -version = "1.0.20+0" +version = "1.0.20+3" [[deps.libvorbis_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Ogg_jll", "Pkg"] -git-tree-sha1 = "b910cb81ef3fe6e78bf6acee440bda86fd6ae00c" +git-tree-sha1 = "490376214c4721cdaca654041f635213c6165cb3" uuid = "f27f6e37-5d2b-51aa-960f-b287f2bc3b7a" -version = "1.3.7+1" +version = "1.3.7+2" [[deps.mtdev_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] @@ -2211,7 +2801,13 @@ version = "1.1.6+0" [[deps.nghttp2_jll]] deps = ["Artifacts", "Libdl"] uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d" -version = "1.52.0+1" +version = "1.59.0+0" + +[[deps.oneTBB_jll]] +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "7d0ea0f4895ef2f5cb83645fa689e52cb55cf493" +uuid = "1317d2d5-d96f-522e-a858-c73665f53c3e" +version = "2021.12.0+0" [[deps.p7zip_jll]] deps = ["Artifacts", "Libdl"] @@ -2232,6 +2828,6 @@ version = "3.5.0+0" [[deps.xkbcommon_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Wayland_jll", "Wayland_protocols_jll", "Xorg_libxcb_jll", "Xorg_xkeyboard_config_jll"] -git-tree-sha1 = "9c304562909ab2bab0262639bd4f444d7bc2be37" +git-tree-sha1 = "63406453ed9b33a0df95d570816d5366c92b7809" uuid = "d8fb68d0-12a3-5cfd-a85a-d49703b185fd" -version = "1.4.1+1" +version = "1.4.1+2" diff --git a/Project.toml b/Project.toml index 2335096..7bc13db 100644 --- a/Project.toml +++ b/Project.toml @@ -2,6 +2,7 @@ Colors = "5ae59095-9a9b-59fe-a467-6f913c188581" DifferentialEquations = "0c46a032-eb83-5123-abaf-570d42b7fbaa" IJulia = "7073ff75-c697-5162-941a-fcdaad2a7d2a" +LanguageServer = "2b0e0bc5-e4fd-59b4-8912-456d1b03d8d7" LightXML = "9c8b4983-aa76-5018-a973-4c85ecc9e179" Luxor = "ae8d54c2-7ccd-5906-9d76-62fc9837b5bc" NLsolve = "2774e3e8-f4cf-5e23-947b-6d7e65073b56" From a79e8679a51af2ee5eea2248334ce876f111b9cd Mon Sep 17 00:00:00 2001 From: Bryan Weber Date: Tue, 14 Jan 2025 15:01:12 -0500 Subject: [PATCH 6/7] Jupyterlab updates --- pyproject.toml | 5 ++++- uv.lock | 23 ++++++++++++++++++++++- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index dcc5830..e4157c9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -31,7 +31,10 @@ python-preference = "only-system" [dependency-groups] dev = ["doit>=0.36.0", "pyyaml>=6.0.1", "ruff>=0.5.0", "requests>=2.32.3"] -lab = ["jupyterlab>=4.1.4"] +lab = [ + "jupyterlab>=4.1.4", + "jupytext>=1.16.6", +] [tool.uv.sources] # Unfortunately, poliastro is no longer maintained. I updated some dependencies on my diff --git a/uv.lock b/uv.lock index 3fd24aa..762967d 100644 --- a/uv.lock +++ b/uv.lock @@ -1203,6 +1203,23 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a9/93/858e87edc634d628e5d752ba944c2833133a28fa87bb093e6832ced36a3e/jupyterlab_widgets-3.0.13-py3-none-any.whl", hash = "sha256:e3cda2c233ce144192f1e29914ad522b2f4c40e77214b0cc97377ca3d323db54", size = 214392 }, ] +[[package]] +name = "jupytext" +version = "1.16.6" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "markdown-it-py" }, + { name = "mdit-py-plugins" }, + { name = "nbformat" }, + { name = "packaging" }, + { name = "pyyaml" }, + { name = "tomli", marker = "python_full_version < '3.11'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/10/e7/58d6fd374e1065d2bccefd07953d2f1f911d8de03fd7dc33dd5a25ac659c/jupytext-1.16.6.tar.gz", hash = "sha256:dbd03f9263c34b737003f388fc069e9030834fb7136879c4c32c32473557baa0", size = 3726029 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f4/02/27191f18564d4f2c0e543643aa94b54567de58f359cd6a3bed33adb723ac/jupytext-1.16.6-py3-none-any.whl", hash = "sha256:900132031f73fee15a1c9ebd862e05eb5f51e1ad6ab3a2c6fdd97ce2f9c913b4", size = 154200 }, +] + [[package]] name = "keyring" version = "25.6.0" @@ -1698,6 +1715,7 @@ dev = [ ] lab = [ { name = "jupyterlab" }, + { name = "jupytext" }, ] [package.metadata] @@ -1728,7 +1746,10 @@ dev = [ { name = "requests", specifier = ">=2.32.3" }, { name = "ruff", specifier = ">=0.5.0" }, ] -lab = [{ name = "jupyterlab", specifier = ">=4.1.4" }] +lab = [ + { name = "jupyterlab", specifier = ">=4.1.4" }, + { name = "jupytext", specifier = ">=1.16.6" }, +] [[package]] name = "overrides" From 62eaa523914eab8df473bcf82e9b7eb3651da623 Mon Sep 17 00:00:00 2001 From: Bryan Weber Date: Tue, 14 Jan 2025 15:01:32 -0500 Subject: [PATCH 7/7] SVG updates --- .devcontainer/Dockerfile.math-api | 6 +- drawing-scripts/apse-line.ipynb | 58 +- .../common-apse-line-transfer.ipynb | 8 +- .../coordinate-relative-to-m1.ipynb | 42 +- .../definition-of-angular-momentum.ipynb | 64 +- .../definition-of-argument-of-periapsis.ipynb | 3 +- .../definition-of-inclination.ipynb | 2 +- ...definition-of-mean-eccentric-anomaly.ipynb | 2 +- drawing-scripts/definition-of-raan.ipynb | 2 +- drawing-scripts/definition-of-vr-vp.ipynb | 56 +- .../elliptical-orbit-definitions.ipynb | 8 +- drawing-scripts/flight-path-angle.ipynb | 286 ++++---- drawing-scripts/non-hohmann-delta-v.ipynb | 18 +- .../parabolic-orbit-definitions.ipynb | 8 +- drawing-scripts/periapsis-and-apoapsis.ipynb | 22 +- .../phasing-maneuver-example.ipynb | 20 +- .../time-since-periapsis-area.ipynb | 24 +- drawing-scripts/two-point-masses.ipynb | 60 +- images/apse-line.svg | 91 ++- images/cartesian-axes.svg | 2 +- images/center-of-curvature.svg | 2 +- ...circular-restricted-three-body-problem.svg | 2 +- images/common-apse-line-transfer.svg | 59 +- images/coordinate-relative-to-m1.svg | 38 +- ...efinition-of-eccentric-anomaly-ellipse.svg | 2 +- images/definition-of-perifocal-frame.svg | 2 +- images/definition-of-vr-vp.svg | 44 +- images/earth-centered-earth-fixed.svg | 2 +- images/ecef-to-eci.svg | 2 +- images/elliptical-orbit-definitions.svg | 145 ++-- images/flight-path-angle.svg | 274 ++++---- ...interplanetary-arrival-inward-transfer.svg | 2 +- images/interplanetary-arrival.svg | 2 +- ...terplanetary-depahture-inward-transfer.svg | 2 +- images/interplanetary-depahture.svg | 2 +- ...terplanetary-departure-inward-transfer.svg | 2 +- images/interplanetary-departure.svg | 2 +- images/interplanetary-flyby-phi-angle.svg | 2 +- images/interplanetary-initial-phase-angle.svg | 2 +- images/interplanetary-leading-flyby.svg | 2 +- images/interplanetary-phase-angle-example.svg | 2 +- images/interplanetary-phase-angle.svg | 2 +- images/interplanetary-trailing-flyby.svg | 2 +- images/non-hohmann-delta-v.svg | 302 ++++---- images/orbital-angular-momentum.svg | 60 +- images/parabolic-orbit-definitions.svg | 58 +- images/periapsis-and-apoapsis-circle.svg | 87 ++- images/periapsis-and-apoapsis-ellipse.svg | 221 +++--- images/periapsis-and-apoapsis-hyperbola.svg | 374 +++++----- images/periapsis-and-apoapsis-parabola.svg | 121 ++-- images/phasing-maneuver-example.svg | 651 ++++++++---------- images/plane-change-maneuver-2d.svg | 2 +- images/plane-change-maneuver-3d-zoom.svg | 2 +- images/plane-change-maneuver-3d.svg | 2 +- images/position-vector-to-point.svg | 2 +- images/swept-angle.svg | 2 +- images/topocentric-horizon.svg | 2 +- images/two-point-masses.svg | 56 +- raw_svg/apse-line.svg | 89 ++- raw_svg/common-apse-line-transfer.svg | 57 +- raw_svg/coordinate-relative-to-m1.svg | 36 +- raw_svg/definition-of-vr-vp.svg | 42 +- raw_svg/elliptical-orbit-definitions.svg | 143 ++-- raw_svg/flight-path-angle.svg | 272 ++++---- raw_svg/non-hohmann-delta-v.svg | 300 ++++---- raw_svg/orbital-angular-momentum.svg | 50 +- raw_svg/parabolic-orbit-definitions.svg | 56 +- raw_svg/periapsis-and-apoapsis-circle.svg | 85 ++- raw_svg/periapsis-and-apoapsis-ellipse.svg | 219 +++--- raw_svg/periapsis-and-apoapsis-hyperbola.svg | 372 +++++----- raw_svg/periapsis-and-apoapsis-parabola.svg | 119 ++-- raw_svg/render_math_svg.py | 4 +- raw_svg/two-point-masses.svg | 54 +- 73 files changed, 2493 insertions(+), 2725 deletions(-) diff --git a/.devcontainer/Dockerfile.math-api b/.devcontainer/Dockerfile.math-api index 0f130e8..fb657e3 100644 --- a/.devcontainer/Dockerfile.math-api +++ b/.devcontainer/Dockerfile.math-api @@ -1,11 +1,11 @@ # syntax=docker/dockerfile:1 -FROM node:20-alpine AS deps +FROM node:22-alpine AS deps WORKDIR /usr/src/app ADD https://github.com/bryanwweber/math-api.git . RUN yarn install --frozen-lockfile -FROM node:20-alpine AS builder +FROM node:22-alpine AS builder WORKDIR /usr/src/app COPY --from=deps /usr/src/app/server.ts . COPY --from=deps /usr/src/app/index.ts . @@ -15,7 +15,7 @@ COPY --from=deps /usr/src/app/package.json . COPY --from=deps /usr/src/app/node_modules ./node_modules RUN npm run build -FROM node:20-alpine as runner +FROM node:22-alpine AS runner WORKDIR /usr/src/app ENV NODE_ENV=production diff --git a/drawing-scripts/apse-line.ipynb b/drawing-scripts/apse-line.ipynb index 3dd28ef..2c06b7b 100644 --- a/drawing-scripts/apse-line.ipynb +++ b/drawing-scripts/apse-line.ipynb @@ -34,26 +34,26 @@ "\n", "\n", "\n", - "\n", - "\n", + "\n", + "\n", "\n", - "\n", - "\n", + "\n", + "\n", "\n", - "\n", - "\n", + "\n", + "\n", "\n", - "\n", - "\n", + "\n", + "\n", "\n", - "\n", - "\n", + "\n", + "\n", "\n", - "\n", - "\n", + "\n", + "\n", "\n", - "\n", - "\n", + "\n", + "\n", "\n", "\n", "\n", @@ -68,16 +68,16 @@ "\n", "\n", "\n", - "\n", - "\n", - "\n", - "\n", + "\n", + "\n", + "\n", + "\n", "\n", "\n", - "\n", - "\n", - "\n", - "\n", + "\n", + "\n", + "\n", + "\n", "\n", "\n" ], @@ -131,7 +131,7 @@ }, { "cell_type": "code", - "execution_count": 116, + "execution_count": 4, "id": "2a3d89a2-fdfc-4288-b9dd-9c894b5af4f5", "metadata": {}, "outputs": [], @@ -148,7 +148,7 @@ }, { "cell_type": "code", - "execution_count": 117, + "execution_count": 5, "id": "772435ae-0ccd-4359-8dde-6af2ecf04e60", "metadata": {}, "outputs": [], @@ -160,7 +160,7 @@ }, { "cell_type": "code", - "execution_count": 118, + "execution_count": 6, "id": "1b2bf74a-a95f-4bc1-9203-fedfb22923dd", "metadata": {}, "outputs": [], @@ -175,7 +175,7 @@ }, { "cell_type": "code", - "execution_count": 119, + "execution_count": 7, "id": "6908034d-6c92-4aee-b89c-7b732fa894cb", "metadata": {}, "outputs": [], @@ -194,15 +194,15 @@ ], "metadata": { "kernelspec": { - "display_name": "Julia 1.10.2", + "display_name": "Julia 1.11.2", "language": "julia", - "name": "julia-1.10" + "name": "julia-1.11" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", - "version": "1.10.2" + "version": "1.11.2" } }, "nbformat": 4, diff --git a/drawing-scripts/common-apse-line-transfer.ipynb b/drawing-scripts/common-apse-line-transfer.ipynb index a796ace..eb5be0b 100644 --- a/drawing-scripts/common-apse-line-transfer.ipynb +++ b/drawing-scripts/common-apse-line-transfer.ipynb @@ -23,7 +23,7 @@ }, { "cell_type": "code", - "execution_count": 36, + "execution_count": 3, "id": "fe9804ad-dc32-4936-b44e-2594d332a113", "metadata": {}, "outputs": [], @@ -125,15 +125,15 @@ ], "metadata": { "kernelspec": { - "display_name": "Julia 1.6.3", + "display_name": "Julia 1.11.2", "language": "julia", - "name": "julia-1.6" + "name": "julia-1.11" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", - "version": "1.6.3" + "version": "1.11.2" } }, "nbformat": 4, diff --git a/drawing-scripts/coordinate-relative-to-m1.ipynb b/drawing-scripts/coordinate-relative-to-m1.ipynb index 51587d8..f3e2572 100644 --- a/drawing-scripts/coordinate-relative-to-m1.ipynb +++ b/drawing-scripts/coordinate-relative-to-m1.ipynb @@ -110,25 +110,23 @@ "data": { "image/svg+xml": [ "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", "\n" ], "text/plain": [] @@ -225,15 +223,15 @@ ], "metadata": { "kernelspec": { - "display_name": "Julia 1.4.1", + "display_name": "Julia 1.11.2", "language": "julia", - "name": "julia-1.4" + "name": "julia-1.11" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", - "version": "1.4.1" + "version": "1.11.2" } }, "nbformat": 4, diff --git a/drawing-scripts/definition-of-angular-momentum.ipynb b/drawing-scripts/definition-of-angular-momentum.ipynb index ea861df..122b032 100644 --- a/drawing-scripts/definition-of-angular-momentum.ipynb +++ b/drawing-scripts/definition-of-angular-momentum.ipynb @@ -57,7 +57,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 4, "id": "100d6ec3-f9d7-41ea-a88a-aa6339439160", "metadata": {}, "outputs": [ @@ -65,36 +65,34 @@ "data": { "image/svg+xml": [ "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", "\n" ], "text/plain": [] }, - "execution_count": 8, + "execution_count": 4, "metadata": {}, "output_type": "execute_result" } @@ -186,7 +184,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 5, "id": "40039f96-fe97-49fb-be55-7bfff156c108", "metadata": {}, "outputs": [], @@ -198,7 +196,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 6, "id": "0c1afa7e-d7c8-49ba-b132-d968c5d99b5d", "metadata": {}, "outputs": [], @@ -218,7 +216,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 7, "id": "1c264e6a-9134-4026-b39a-879b25bd8c9b", "metadata": {}, "outputs": [], @@ -237,15 +235,15 @@ ], "metadata": { "kernelspec": { - "display_name": "Julia 1.4.1", + "display_name": "Julia 1.11.2", "language": "julia", - "name": "julia-1.4" + "name": "julia-1.11" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", - "version": "1.4.1" + "version": "1.11.2" } }, "nbformat": 4, diff --git a/drawing-scripts/definition-of-argument-of-periapsis.ipynb b/drawing-scripts/definition-of-argument-of-periapsis.ipynb index 73c61f8..4f13f3e 100644 --- a/drawing-scripts/definition-of-argument-of-periapsis.ipynb +++ b/drawing-scripts/definition-of-argument-of-periapsis.ipynb @@ -6221,6 +6221,7 @@ } } }, + "image/png": "iVBORw0KGgoAAAANSUhEUgAACFAAAAH0CAYAAAAQKEukAAAgAElEQVR4XuzdC5idVXk3/HsmMzkJJJwDCARQ3oDEoMRKLTSJ5gOrtEQtgkg1iCC1+STUUoilAh6Qg704vBRBXj+g8nJoVcCqBYwkERVQNIkcysFASMBmBgKTEJKZHGa+WQ8+4xyTyczsPfvwW9c1VzJ7P89a9/qtZ1Ls/s9aNW3tLTQCBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAQBUL1AhQVPHqmzoBAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECCQCQhQeBAIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgACBqhcQoKj6RwAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgIEDhGSBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgSqXkCAouofAQAECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgUH4Cbe0l15Rf2SVcsQBFCS+O0ggQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAIHiCAhQFMfZKAQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgEAJCwhQlPDiKI0AAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAojoAARXGcjUKAAAECBAgQIECAAAECBAgQIECAAAECBAgQKAmBtvYqakqiEkUQIECAAIHSEhCgKK31UA0BAgQIECBAgAABAgQIlKxAa3tltSVbncIIEOi/gJ/m/lu5kgABAgQIECBAgAABAtUkIEBRTattrgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgMSEMIcEJubCBAgUFYCAhRltVyKJUCAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAohIEBRCFV9EiBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAmUlIEBRVsulWAIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQKAQAgIUhVDVJwECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgMXKC1/dbagd/uTgIDERCgGIiaewgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAIGKEhCgqKjlNBkCBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIEBgIAICFANRcw8BAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBQUQICFBW1nCZDgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIDERAgGIgau4hQIAAAQIEyligtb322jKuX+kECBAgQIAAAQIECBAgQKB6BPyv+OpZazMlQIAAAQKlICBAUQqroAYCBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIEBgWAUEKIaV3+AECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgUBwBexsVx7l8RxGgKN+1UzkBAgQIECBAgAABAgQIECBAgAABAgQIEOi3QFv7lTX9vtqFBAgQIECAAIHqE6i6AIVMUfU95GZMgAABAgQIECBAgAABAgQIECBAgACBggr4fzwXlFfnBCpJwD8XlbSa5kKAQCUKVF2AohIX0ZxKSMB/+ZTQYihlWAT8DAwLu0EJECBAgAABAgQIECBAgAABAgQIECBAgAABAgQGL1CkAIWNwQa/VMXvwaoV39yIBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIDA8AkUKUAzP5IxKgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIEOiPgABFf5RcQ4AAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECFS0gABFRS+vyREgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQL9ERCg6I+SawgQIECAAAECBAhUukBr+wRrK32S5keAAAECBAgQIECAAAECBAgQIECAAIG+BQQoPB0ECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIBA1QsIUFT9IwCAAAECBAgQIECAAAECBAgQIECAAAECBAhUmEBb+3xqKmxOpkOAAAECBAgUXECAouDEpTqAPZpLdWXURYAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQLFFxCgKL65EQkQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAIESExCgKLEFUQ4BAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBQfAEBiuKbG5EAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAoMQEBihJbEOUQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQqHSBtvYJ1lT6JEtofq3ttdSWUD1KIVCqAgIUpboy6iJAgAABAgQKLuB/pBWc2AAECBAgQIAAAQIECBAgQIAAAQIECBAgQKBsBAQoymapFEqAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgUSkCAolCy+iVAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgTKRkCAomyWSqEECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIBAoQQEKAolq18CBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECgbAQEKMpmqRRa6gJt7QXWlHqR6ht+gdb2EmqHvwwVECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECDQVUCAwhNBgAABAgQIECBAgAABAgQIECBQtQJy7lW79CZOgAABAgQIECBAgACBHgICFGX3UNjnoOyWTMEECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgUPICZRWgEB0o+edJgQQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAoCwFyipAUZbCiiZAgAABAgQIECBAgAABAgQIECBQ1QIOSqnq5Td5AgQIECBAgAABAmUkIEBRRoulVAIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQKAwAgIUhXHVKwECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIFBGAgIUZbRYSiVAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQKIyBAURhXvRIgQIAAAQIECBAgQIAAAQIECBAgUOICre311ZZ4jcojQIAAAQIECBAgQKB4AgIUxbM2EgECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIFCiAgIUJbowyiJAgAABAgQIECBAgMAbAn431pNAgAABAgQIECBAgAABAgQIECBAoBgCAhTFUDYGAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgUNICAhQlvTyKI0CAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBIohIEBRDGVjECBAoEIF2trnVVOhczMtAgQIECBAgAABAgQIECBAgAABAgQIECBAgACB6hIQoKiu9TZbAgQIECBAgAABAgQIEBg2gdb2kWuHbXQDEyBAgAABAgQIECBAgAABAgQIbF1AgMITQoAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECFS9gABF1T8CAAgQIECAAAECBAiUh4Cjo8pjnVRJgAABAgQIECBAgAABAgQIECBAoFwFBCjKdeXUTaBSBexqXKkra14ECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIESlpAgKKkl0dxBAgQGLyATMrgDfVAgAABAgQIDL2A/0YZelM9EiBAgAABAgQIECBAgAABAgQIDE5AgGJwfu4mQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIEKkBAgKICFtEUCBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECGxToK39ipptXuUCAgQIVK2AAEXVLr2JEyBAgAABAgQIECBAgAABAgQIECBAgAABAgMTcCjdwNzcRYAAAQIESltAgKK010d1BAgQIECAAAECBAhUsIBf/KngxTU1AgQIECBAgAABAgQIECBAgACBshMQoCi7JVMwAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgMNQCAhRDLao/AgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAoOwEBCjKbskUTIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECAy1gADFUIvqjwABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECg7AQGKslsyBRMgQIAAAQIECBAgQIAAAQIECBAgUCkCre0Tqa2UyZgHAQIECBAgQIAAgTIXEKAo8wVUPgECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIDB4AQGKwRvqgQABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIEChzAQGKMl9A5RMgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQKDFxCgGLyhHggQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAIEyFxCgKPMFVD4BAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECAweAEBisEb6oEAAQIECBAoaYG29upqSrpCxREgQIAAAQIECBAgQIAAAQIECBAgQIAAAQLDLyBAMfxroAICBAgQIECAAAECBEpQoLW9ptoSrEtJBAgQIECAAAECBAgQIECAAAECBAgURkCAojCueiVAgAABAgQIECBAgAABAgQIECBAgAABAgQIlKmAHT3LdOGUTYAAAQKDFBCgGCSg2wkQIECAAIEhEPC/yYcAURcECBAgQIAAAQIECBAgQIAAAQIECBAgQIDAYAQEKAaj514CBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECgIgQEKCpiGU2CAAECBAgQIECAAAECBAgQIECAAAECBAgQIDBIAbuEDhLQ7QQIECBQ7gICFOW+guonQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIEBi0gQDFoQh0QIECAAAECBAgQIECAAAECBAhUi0Br+0Rrq2Wy5kmAAAECBAgQIECAAIEqExCgqLIFN10CBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECgp4AAhaeCAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQqHoBAYqqfwQAECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgIUngECBAgQGHIBZwIPOakOCRAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECiwgQFFgYN0TIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECpS8gQFH6a6RCAgQIECBAoGQE7K9SMktRrEIsebGkjUOAAAECBAgQIECAAAECBAgQIECAAIFhFxCgGPYlUAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECAw3AICFMO9AsYnQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIEhl1AgGLYl0ABBAgQIFBdAs4DqK71NlsCBAgQIECAAAECBAgQIECAAAECBAgQIECgXAQEKMplpdRJgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIFExAgKJgtDomQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIEykVAgKJcVkqdBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAQMEEBCgKRqtjAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAoFwEBCjKZaXUSYDAkAi0tfdSMyQ96YQAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAgUoSEKCopNU0FwIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQGBAAgIUA2JzEwECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIFBJAgIUlbSa5kKAAAECBAgQIECAAAECBAgQIECgagQc1Fk1S22iBAgQIECAAAECBIokIEBRJGjDECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECiMgGBhYVz1SoBAtQkIUFTbipsvAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAg0ENAgMJDQYAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECFS9gABF1T8CAAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAEBCs8AAQIECBAgQIAAAQIECJSvgGN+y3ftVE6AAAECBAgQIECAAAECBAgQKDEBAYoSWxDlECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAsUXEKAovrkRCRAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAgRITEKAosQVRDgECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIFB8AQGK4psbkQABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECgxAQGKElsQ5RAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQLFFxCgKL65EQkQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAIESExCgKLEFUQ4BAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBQfAEBiuKbG5EAgcEItLbfXDuYDtxLgAABAgQIECBAgECxBW6++eaYPXv2oIadPn16LFiwYFB9uJkAAQIECBAgQIAAAQIECBAgsDUBAQrPBwECBAgQqHCBtvb51VT4HE2PAAECBAgQKG2Bu+++O2bNmjWoItP9d95556D6cDMBAgQIECBAgAABAgQIECBAYGsCAhSeDwIECBAgQIAAAQIECBAgQKDgAgsXLuxzjOeff77He0uWLIkrr7yy4/X097POOqvgdRqAAAECBAgQIECAAAECBAgQqN4t4QUoPP0ECBAgQIAAAQIECBAgQIBASQk0NTXFjBkzIoUoUkvHf9x4440lVaNiCBAgQIAAAQIECBAgQIAAgcoTEKCovDUt4RlVb1KphBdFaQQIECBAgACB8hPwn5Xlt2YqJrCdAmeffXbH7hMTJ06MxYsXx/jx47ezF5cTIECAAAECBAgQIECAAAECBLZPQIBi+7xcTYAAAQIECBAgQIAAAQIECBRQ4Kqrroq5c+dmI6TQRApPpBCFVqYCQm9lunDKJkCAAAECBAgMnYD/JBw6Sz0RIFB4AQGKwhsbgQABAgQIECBAgAABAgQIEOiHwKJFi2L69OkdVy5cuDCmTZvWjztdQoAAAQIECBAgQIAAAQIECBAYvIAAxeAN9UCAAAECBAgQIECAAAECBAgMUmD58uUxY8aMSH+mduGFF8YFF1wwyF7dToAAAQIECBAgQIAAAQIECBDov4AARf+tXEmAAAECBAgQIECAAAECBAgUQKCpqSkLTyxZsiTrffbs2XHjjTcWYCRd9k+grf2ymv5d6ioCBAgQIECAAAECBAgQIFBBAgIUFbSYpkKAAAECBAgQIECAAAECBMpR4Oyzz44rr7wyK/3www+PBQsWxPjx48txKmomQIAAAQIECBAgQIAAAQIEylhAgKKMF0/pBEpBoLW9iNpSKEQNBAgQIECgDAT8Pm8ZLJISCRAousBVV10Vc+fOzcZNoYnFixfHxIkTi16HAQkQIECAAAECBAgQIECAAAECAhSeAQIECBAgQIAAAQIECBAgQGBYBBYtWhTTp0/vGHvhwoUxbdq0YanFoAQIECBAgAABAgQIECBAgAABAQrPAAECBAgQIECAAAECBAgQIFB0geXLl8eMGTMi/ZlaOsLjrLPOKnodBiRAgAABAgQIECBAgAABAgTKW2Aod/4VoCjvZ0H1BAgQIECAAAECBAgQIECg7ASampqy8MSSJUuy2mfPnh033nhj2c1DwQQIECBAgAABAgTKQmAoP1ksiwkrkgABAgMXEKAYuJ07CRAgQIAAAQIECBAgQIAAgQEInH322dmOE6kdfvjhsWDBghg/fvwAenILAQIECFSuQGv71Gord3pmRoAAAQIECBAgUJICAhQluSyKIkCAAAECBAgQIECAAAEClSlw1VVXxdy5c7PJpdDE4sWLY+LEiZU5WbMiQIAAAQIECBAYWgE7KQytp94IECBAoIeAAIWHggABAgQIECBAgAABAgQIECiKwKJFi2L69OkdYy1cuDCmTZtWlLENQoAAAQIECBAgQIAAAQIECBDYloAAxbaEvE+AAAECBAgQIECAAAECBAgMWmD58uUxY8aMSH+mlo7wOOusswbdrw4IECBAgAABAgQIECBAgAABAkMlIEAxVJL6IUCAAAECBAgQIECAAAECBHoVaGpqysITS5Ysyd6fPXt23HjjjbQIECBAgAABAgQIECBAgAABAiUlIEBRUsuhGAIECBAgQIAAAQIECBAgUHkCF110UVx44YUdE0vHeEycOHG7Jyp0sd1kbiBAgAABAgQIEKg4gbb2GdVU3KxMiAABAqUiIEBRKiuhDgIECBAgQIAAAQIECBAgUKECp556atx0002Dnl1bW/p/FmsECBAgQIAAAQIECBAgQIAAgcIICFAUxlWvBAgQIECAAAECBAgQIECAwB8E0g4UCxcuHLTHggULBt2HDggQIECAAAECBAgQIECAAAECfQkIUHg2CBAgQIAAAQIECJSlQGt71bVlWbmiCRAgQIAAAQIECBAgQIAAAQIECBAgUIoCAhSluCpqIkCAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBIoqIEDRg9tv8hX1CTQYAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAoAQEBihJYBCUMs4DMzDAvgOEJECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECAw/AICFMO/BiogQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIEhllAgGKYF8DwBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAwPALCFAM/xqogAABAgQIECBAgAABAgQIECiSQFv7ODVFGsswBAgQIECAAAECBAgQIECguAL+V+9gvQUoBivofgIESlfA/40o3bVRGQECBAgQIECgDARaWlqyKkeNGlUG1SqRAAECBAgQIECAAAECBAgQIEBgsAICFIMVdD8BAgQIECBAgAABAgQIVJxACk80NDR0mde4ceOy70ePHi1UUXErbkIECBAgQIAAAQIECBAgQIAAgfZdK9vaGwgCBAgQIECAAAECBAgQIEDgDYHewhN92XQOU+QBC44ECBAgQIAAAQIECBAgQIAAAQLlKSBAUZ7rpmoCBAgQIECAAAECBAgQKJDAihUrBtVz51CF3SoGRelmAgQIECBAgAABAgQIECBAgEBRBQQoisptMAIECBAgQIAAAQIECBAoZYHGxsZobm4uSImOACkIq04JECBAgAABAgQIECBAgAABAkMmIEAxZJQ6IkCAAAECBAgQIECAAIFyFihkeKIvF0eAlPMTo3YCBAgQIECAAAECBAgQIECg0gSGNkDR1s5TU2lE5kOAAAECBAgQIECAAAEClS4wHOGJrZnaraLSnzjzI0CAAAECBAgQIECAAAECBEpRYGgDFKU4QzURIECAAAECBAgQIECAAIGtCLS0tERDQ0PJG+WhilRo57+XfOEKJECAAAECBAgQIECAAAECBAiUiYAARZkslDIJECBAgAABAgQIECBAYOgFyiU80dfMHQEy9M+EHgkQIFCWAnYGLstlUzQBAgQIECBAgEDpCQhQlN6aqIgAAQIECBAgQIAAAQIEiiBQ7uGJrRE5AqQID5AhCBAgQIAAAQIECBAgQIAAgYoTEKCouCU1IQIECBAgQIAAAQIECBDoj0BjY2M0Nzf359KKuMYRIBWxjCZBgAABAgQIECBAgAABAgQIFFBAgKKAuLomQIAAAQKlLGCH11JeHbURIECAQKEFqi080ZenI0AK/aTpnwABAgQIECBAgAABAgQIECgnAQGKclottRIgQIAAAQIECBAgQIDAoAWEJ7ZN6AiQbRu5ggABAgQIECBAgAABAgQIEKg8AQGKyltTMyJAgAABAgQIECBAgACBPgRaWlqioaGBzwAEHAEyADS3ECBAgAABAgQIECBAgAABAmUlIEBRVsulWAIECBAgQIAAAQIECBAYqIDwxEDl+r6v8xEgnf8+9CPpkQABAgQIECBAgAABAgQIECBQeAEBisIbG4EAAQIECBAgQIAAAQIEhllAeKK4C+AIkOJ6G40AAQIECBAgQIAAAQIECBAYGgEBiqFx1AsBAgQIECBAgAABAgQIlLDAihUrSri66iit8w4VnY8DqY7ZmyUBAgQIECBAgAABAgQIECBQDgICFOWwSmokQIAAAQIECBAgQIAA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7EP79AH+kUcemb2cghCnnHJK1NXVRQpHfPjDH476+vq4/PLLY6+99orf/e53WQDi6KOPzq5PR4S89NJLWR/5++n+c889N04++eTsmrT7xfe///0snJECAGvWrMnGTe25557L/kx9pmMsUuDgrLPOyl5L4YUlS5Zk4YI8OJBeSy0/NiOFDNL7KZCRXkvG6bUUlEjzS9+nvt/xjndkf8+vueqqq7KaU00pFNFXywMUqc5UX7o+H7t7gCIFI1L9qZ4U3sjnmYdF0hjJP/XR/ZoUkug8zxQUSeGJVGMKvzz//POZWR7IKMoDZBACBAgQIECAAAECBEpeQICi5JdIgQQIECBAgAABAgQIECisgPBEYX07955/eJp+KzxvEydOjJ/85CexJerjvodfjpaNW6J18/rs6I72vxSvuGEYaaABinRkx7vXPRNj29445iS1A9oDFGtHj49vv777MMzEkIUS6B6iiDVL41OfeuMD/84/QymkUOgQRR5+WrZsWRaGSDtJvPvd787CAgceeGBWTvpwPoUBOv+Md6417WBxzTXXxEMPPdTr0R/5GN131kgf/Kd+87BGHqB49dVXO7pPAYcUQEiv5aGHVE8KKuS7NaRQQQot9CdAke5L/z6llkIXKTCR5prCCnmwofM12c9he9/pnv4GKNLuEinEkPfTPUCRH9HSub/8nryWzoGMHCO3yOeZh0m676KR95WbFeo51i8BAgQIECBAgAABAuUjIEBRPmulUgIECBAgQIAAAQIECAy5gPDEkJNutcP04elXvvKVLtfkH5Qu+M2rsXrNpuy99asebN9Z4ZXiFjcMow00QDH9tcdibOsfwxOp9LfsNi52GjMyvv7aPo7xGIa1LOSQnUMUu46rj/X/84v47Gc/22XItDNEClGMGTOmYKWknSFS+9a3vtUxxic+8Ylsl4j8SJ48VDFz5sxsR4n3ve99se+++3Zc/6UvfSlefvnlSEdw9NbSB/xpZ4j8WI38mieffDL+67/+K9s1IbUUoKitre3YuSG9locG8jDChz70oeza7sdppJBD56MtetuBItWR72SR11BTU5Pt4PDJT34y25Git2tSXymk0d8AReq78y4U3QMUacwUAsl30EjXpzDEzjvv3PF6b8d+pOvSvXmAIg9KpHnnoZC8r9R/HsYo2MOjYwIECBAgQIAAAQIEykZAgKJslkqh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sX8sv78BinR8xzk7vtBj3t9ev0c8v+WND8g1AlFbF/sfekz86TsObQ9MtEbzhpr44Y9+0SXglH6e08/s7ruNiMMPGxH77rOx7IIUAhSedQIECBAgQIAAAQIECBROQICicLZ6JkCAAAECBAgQIECAQFEE8gBFGmzhwoVxyCGHRHNzczb2rbfeGvPmzesRbPj85z8f3/nOd+Laa6/NjofIW/qAPgUSnn/++XjooYc6Qhd5sCFd94Mf/KDHDhV9BShSQKGurq6Hwze+8Y245JJL4qqrrspCDXnb2jj5XFKo4tJLL81uyUMR5557bnz2s5/tMk73sXsLUKQdL84666xs94zO2/2njvqqfVvHd/S16A8+tjZefKk52lo3RX92n8j7qaRjPPbYY49IX/vvv382vb1ferD966EuZL/f/cj4/e5/2vHamjVrYvzyX8fha57qct3Aj+8oyo+lQYZBIO3YstMu74kfLRiZjV4/oiZqWl/L/p3o3N76lrfE/u3BstR227U2C1LstccrZbEbxejRo7OfIY0AAQIECBAgQIAAAQIECiMgQFEYV70SIECAQJULOPKhyh8A0ydAgECRBfIAxfTp07MdJPLwRF5G2jUiHW2RQhGppWDAQQcdlO0K8a1vfatHtXmooHO4IQ82dN9hIr+5rwBFXxR5DWnXh7STQ97ycfqqLc0l7ZCRH+uRAiOf/OQnew1AdB97awGK7kGOrS1hHqB47rnnItmnuWyrtWyuif98oCG77Kkl98Uuo1+L9EFof1p+jEe69j3veU889thj/bmtZK5J9afjZMaNG5fVnnblyI8imXP0XjHn6L271HrNA7+Pax74n47X3vrWt8b1x7099nx9VZfrftqyU/x04/iSmadChlfgbW87ItZtfEf8evHa9o0o3hS19W/KChq/Y328uPLZjuN98iqPaj/GZ/SoUR1Ff/CYkbHLuNUlH6JIP0fpSyNAgAABAgQIECBAgACBwggIUBTGVa8ECBAgQIAAAQIECBAomkAeoEh/zp49u8e4X/rSl7KgxG9+85vsGI08IPGJT3yi4yiLzjc9+eSTcfLJJ3fZtSIPNvQVNNhagCLtanHvvffGE0880TFMeu373/9+drzI3Xff3fH6tsb553/+5/i3f/u37EP4tBV/6mfSpEnZ/WkXiSOPPLLH7hh5570FKFatWhXvfve7sw/4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U6zRci6BfgUEKPqdvc4JECBAgAABAgQIEGhDQICijTnqggABAgQIECBAgAABAgR2FAhvpYihih2XtRQBAoULCFAUPiDlESBAgAABAgQIECBA4IKAAIVHhAABAgQIECBAgAABAgQI3CAgTHEDnksJNCYwz3NjHWmHAAECBAgQIECAAAECfQkIUPQ1b90SIECAAAECBAgQIECAQEIBW30kxHVrAhUICFBUMCQlEiBAgAABAgQIECBA4BMBAQqPBwECBAgQIECAAAECBAgQSCAgTJEA1S0JFC4gQFH4gJRHgAABAgQIECBAgACBCwICFB4RAgQIECBAgAABAgQIECCwg4CtPnZAtgSBjAKHw2E4Ho8ZK7A0AQIECBAgQIAAAQIECNwqIEBxq6DrCRAgQIAAAQIECBAgQIDASgFhipVgTidQgcA0TUP4OAgQIECAAAECLQiclyYeW2hEDwQIEFgpIECxEszpBAgQIECAAAECBAh8JOB/rXguCGwVsNXHVjnXEShLQICirHmohgABAgQIECBAgAABAlsEBCi2qLmGAAECBAgQIECAAAECBAgkEBCmSIDqlgR2EhCg2AnaMgQIECBAgAABAgQIEEgoIECRENetCRAgUIWAfzBcxZgUSYAAAQIECPQpYKuPPueu6zoFTqfTMI5jncWrmgABAgQIECBAgAABAgTeBQQoPAgECBAgQIAAAQIECBAgQKACAWGKCoakxK4F5nnuun/NEyBAgAABAgQIECBAoAUBAYoWpqgHAgQIECBAgAABAgQIEOhKwFYfXY1bs5UICFBUMihlEiBAgAABAgQIECBA4BMBAQqPBwECBAgQIECAAAECBAgQqFhAmKLi4Sm9KQEBiqbGqRkCBAgQIECAAAECBDoVEKDodPDaJkCAAAECBAgQIECAAIE2BWz10eZcdVW2wOFwGI7HY9lFqo4AAQIECBAgQIAAAQIELgoIUFwkcgIBAgQI3EfgbbnNw31u5S4ECBAgQIAAAQJXCQhTXMXkJAI3C0zTNISPgwABAgQIECBAgAABAgTqFhCgqHt+qidAgEA7AvIV7cxSJwQIECBAgECRArb6KHIsimpEQICikUFqgwABAgQIECBAgACB7gUEKLp/BAAQIECAAAECBAgQIECAQG8CwhS9TVy/qQUEKFILuz8BAgQIECBAgAABAgT2ERCg2MfZKgQIECBAgAABAgQIECBAoFgBW30UOxqFVSIwz3MllSqTAAECBAgQIECAAAECBD4TEKDwfBAgQIAAAQIECBAgQIAAAQJ/CQhTeBgIrBcQoFhv5goCBAgQIECAAAECBAiUKCBAUeJU1ESAAAECBAgQIECAAAECBAoQCGGKcMSvBZSkBAJFCghQFDkWRREgQIAAAQIECBAgQGC1gADFajIXECBAgAABAgQIECBAgACB/gReXl6G79+/C1P0N3odXyEgQHEFklMIECBAgAABAgQIECBQgYAARQVDUiIBAgQIECBAgAABAgQIEChJIIYp4teSalMLgb0FpmkawsdBgAABAgQIECBAgAABAvULCFDUP0MdECBAgAABAgQIECBAgACBrAJhiw9hiqwjsHhGAQGKjPiWJkCAAAECBAgQIECAwJ0FBCjuDOp2BAgQIECAAAECBAgQIECgZ4EQpghH/Nqzhd77EBCg6GPOuiRAgAABAgQIECBAoA8BAYo+5qxLAgRuFDgv1z/eeA+XEyBAgAABAgQIEOhNIL6VQpiit8n31e/pdBrGceyrad0SIECAAAECBAgQIECgUQEBikYHqy0CBAgQIECAAAECBAgQIFCSQAxT2OqjpKmo5R4C8zzf4zbuQYAAAQIECBAgQIAAAQIFCAhQFDAEJRAgQIAAAQIECBAgQIAAgd4EwlsphCl6m3qb/QpQtDlXXREgQIAAAQIECBAg0KeAAEWfc9c1AQIECBAgQIAAAQIECBAoRiBu8WGrj2JGopAVAgIUK7CcSoAAAQIECBAgQOAjgbflDx/QEChDQICijDmoggABAgQIECBAgAABAgQIEFgE4lsphCk8DjUIHA6H4Xg81lCqGgkQIECAAAECBAgQIEDgCgEBiiuQnEKAAAECBAgQaE9ArLu9meqIAAEC7QnEMIWtPtqbbSsdTdM0hI+DAAECBAgQIECAAAECBNoQEKBoY466IECAAAECBAgQIECAAAECzQuEt1IIUzQ/5qoaFKCoalyKJUCAAAECBAgQIECAwEUBAYqLRE4gQIAAAQIECBAgQIAAAQIEShOIW3zY6qO0yfRVjwBFX/PWLQECBAgQIECAAAEC7QsIULQ/Yx0SIECAAAECBAgQIECAAIGmBeJbKYQpmh5zkc2dTqdhHMcia1MUAQIECBAgQIAAAQIECKwXEKBYb+YKAgQIECBAgAABAgQIECBAoFCBGKaw1UehA2qsrHmeG+tIOwQIECBAgAABAgQIEOhbQICi7/nrngABAgQIECBAgAABAgQINC0Q3kohTNH0iLM2J0CRld/iBAgQIECAwL8JvC0/eMBDgAABAlsEBCi2qLmGAAECBAgQIECAAAECBAgQqE5AmKK6kRVfsABF8SPKUKC/scqAbkkCBAgQ+FcBv5c8HAQIEFgrIECxVsz5BAhULOA/FisentIJECBAgAABAgQI3FUgvpUihCocBLYITNM0hI+DAAECBAgQIECAAAECBNoREKBoZ5Y6eRfwF+QeBAIECBAgQIAAAQIECBBYJyBMsc7L2b8EBCg8CQQIECBAgAABAgQIENguUOrf6gpQbJ+pKwkQIECAAAECBAgQIEDgU4Hz8tNHRgSqE7DVR3Ujy1KwAEUWdosSIECAAAECBAgQIEAgqYAARVJeNydAgAABAgQIECBAgAABAgRqFhCmqHl6aWsXoEjr6+4ECBAgQIAAAQIECBDIISBAkUPdmgQIECBAgAABAgQIECBAgEB1An1v9RHeJhPeKuOIAvM8wyBAgAABAgQIECBAgACBxgQEKBobqHYIECBAgAABAgQIECBAgACB9AJ9hynS+9awggBFDVNSIwECBAgQIECAAAECBNYJCFCs83I2AQIECBAgQIAAAQIECBAgQOAfArb66O+hEKDob+Y6JkCAAAECBGoUCG9RC29TcxAgQOA6AQGK65ycRYAAAQIECBAgQIAAAQIECBC4SkCY4iqm6k8SoKh+hBogQIAAAQIECBAgQIDAPwQEKDwUBAgQIECAAAECBAgQIECAAIFEArb6SASb+bbTNA3h4yBAgAABAgQIECBAgACBtgQEKNqap24IECBAgAABAgQIECBAgACBQgWEKQodzIayBCg2oLmEwGqBt+WKh9VXuYAAAQIECBAgQIDALQICFLfouZYAAQIECBAgQIAAAQIECBAgsFHAVh8b4Qq4TICigCEogQABAgQIECBAgAABAgkEBCgSoLolAQIECBAgQIAAAQIECBAgQGCNgDDFGq38555Op2Ecx/yFqIAAAQIECBAgQIAAAQIE7iogQHFXTjcjQIAAAQIECBAgQIAAAQIECNwmYKuP2/z2uHqe5z2WsQYBAgQIECBAgAABAgQI7CwgQLEzuOUIECBAgAABAgQIECBAgAABAtcKCFNcK7XveQIU+3pbjQABAgQIECBAgAABAnsJCFDsJW0dAgQIECBAgAABAgQIECBAgMCNArb6uBHwTpcLUNwJ0m0IECBAgAABAgQIECBQmIAARWEDUQ4BAgQIECBAgEA6gfNy68d0t3dnAgQIECCwq8D+YYrwWzT8Nu37OBwOw/F47BtB9wQIECBAgAABAgQIEGhUQICi0cFqiwABAgQIECBAgAABAgQIEOhHwFYf+816mqYhfBwECBAgQIAAAQIECBAg0J6AAEV7M9URAQIECBAgQIAAAQIECBAg0LGAMEXa4QtQpPV1dwIECBAgQIAAgQIE3pYaHgqoQwkEMggIUGRAtyQBAgQIECBAgAABAgQIECBAYA+BGKaIX/dYs/U1BChan7D+CBAgQIAAAQIECBDoWUCAoufp650AAQIECBAgQIAAAQIECBDoSuD5+XkQprht5PM833YDVxMgQIAAAQIECBAgQIBAsQICFMWORmEECBAgQIBAMwLnpZPHZrrRCAECBAgQINCIQAhThCN+baSt5G0IUCQntgABAgQIECBAgAABAgSyCQhQZKO3MAECBAgQIECAAAECBAgQIECgDIH4VgphisvzEKC4bOQMAgQIECBAgAABAgQI1CogQFHr5NRNgAABAgQIECBAgAABAgQIEEggEMMUtvr4GFeAIsFD55YECBAgQIAAAQIECBAoRECAopBBKIMAAQIECBAgQIAAAQJ1CdifqK55qZbAdoHwVgphil9+0zS9fxwECBAgQIAAAQIECBAg0KaAAEWbc9UVAQIECBAgQIAAAQIECBAgQODuAnGLj163+hCguPsj5YYECBAgQIAAAQIECBAoSkCAoqhxKIYAAQIECBAgQIAAAQIECBAgUIdAfCtFT2EKAYo6nk1VEiBAgAABAgQIECBAYKuAAMVWOdcRIECAAAECBAgQIECAAAECBAi8C8QwRetbfQhQeOAJECBAgAABAgQIlCDwthTxUEIhamhQQICiwaFqiQABAgQIECBAgAABAgQIECCQUyC8laLFMMU8zzlZrU2AAAECBAgQIECAAAECiQUEKBIDuz0BAgQIECBAgAABAgQIECBAoGeBuMVHC1t9CFD0/CTrnQABAgQIECBAgACBHgQEKHqYsh4JECBAgAABAgQIECBwq4C3Y94q6HoCBBaB+FaKWsMUAhTXPsZ+aVwr5TwCBAgQIECAAAECBMoSEKAoax6qIUCAAAECBAgQIECAAAECBAh0IRDDFLVs9XE4HIbj8djFbDRJgAABAgQIECBAgACBXgUEKHqdvL4JECBAgAABAgQIECBAgAABAgUJhLdSlBymmKZpCB8HAQIECBAgQIAAAQIECLQrIEDR7mx1RoAAAQIECBAgQIAAAQIECBCoUiBu8VHSVh8CFFU+SoomQIAAAQIECBAgQIDAKgEBilVcTiZAgAABAgQIECBAgAABAgQIENhTIL6VIneYQoBiz6lbiwABAgQIECBAgAABAnkEBCjyuFuVAAECBAgQIECAAAECBAgQIEBgpUDOMMXpdBrGcVxZsdMJECBAgAABAgQIECBAoCYBAYqapqVWAgQIECBAgAABAgQIECBAgACBvwTCWyliqCI1yzzPqZdwfwIEcgm8LQs/5FrcugQIECBAgAABAiUJCFCUNA21ECBAgAABAgQIECBAgAABAgQIbBJIHaYQoNg0FhcRIECAAAECBAgQIECgKgEBiqrGpVgCBAgQIECAAAECBAgQIECAAIFLAim2+hCguKTu53UKnJeyH+ssfUPVXjSxAc0lBAgQIECAAIHOBAQoOhu4dgkQIECAAAECBAgQIECAAAECPQncI0wxTdMQPg4CBAgQIECAAAECBAgQaFvgv6M+xgMevcffAAAAAElFTkSuQmCC", "text/html": [ "