### A Pluto.jl notebook ### # v0.19.14 using Markdown using InteractiveUtils # ╔═╡ acaedbac-4402-11ed-3b9c-17a6ab36557c begin using Plots using LaTeXStrings using DSP using FFTW using Statistics # for plotting time-domain discrete sequences stem(x, y; kw...) = plot(x, y; legend=false, line=:stem, linecolor=:blue, marker=:circle, markercolor=:blue, markerstrokecolor=:blue, kw...) stem(y; kw...) = stem(0:length(y)-1, y; kw...) # for plotting frequency-domain discrete sequences stemf(x, y; kw...) = plot(x, y; legend=false, line=:stem, linecolor=:blue, marker=:circle, markercolor=:white, markerstrokecolor=:blue, kw...) stemf(y; kw...) = stemf(0:length(y)÷2-1, y[1:length(y)÷2]; kw...) md"(Some setup code and definitions)" end # ╔═╡ c41a9e82-4163-4bdf-a2fa-0376546a1e9b md""" Julia versions of some of the numerical demonstrations from Digital Signal Processing (DSP, L314) Michaelmas 2022. Markus Kuhn """ # ╔═╡ 4630de8d-5de1-4e63-95cd-a53bcd671878 md""" # Analog electronics (slide 4) """ # ╔═╡ 85ed177a-5cc8-40d9-b79c-6ae4154b5ab8 let L = 1.0 C = 1.0 R = 1.0 Uin = 1.0 ω = 1e-10:0.01:4 Uout = Uin * 1.0im ./ (R * (1 ./ (ω*L) - ω*C) .+ 1.0im) plot(ω, abs.(Uout); legend=false, xticks = ([1/sqrt(L*C)], [L"1/\sqrt{LC}"]), yticks = ([Uin], [L"U_\mathrm{in}"]), xlabel = L"\omega =2\pi f", ylabel = L"$|U_\mathrm{out}|$") end # ╔═╡ 54f2d5f8-ed4a-4c67-9991-116db53d86ea let x=zeros(500) x[30] = 1 x[200:350] .= 1 f = digitalfilter(Bandpass(0.1, 0.12), Butterworth(1)) plot([x.+0.3,filt(f, x)], label=[L"U_\mathrm{in}" L"U_\mathrm{out}"], xlabel=L"t", xticks=false, yticks=([0, 0.8],[L"U_\mathrm{out}",L"U_\mathrm{in}"])) end # ╔═╡ 26a371f9-a77a-4528-a62b-c020f18c1d89 md""" # Sinusodial sequences (slide 11) """ # ╔═╡ 624ede40-e5b5-4546-acd8-450f3283cf38 let n = 0:40 fs = 8000 f = 400 φ = 2π x = cos.(2π * f * n/fs .+ φ) stem(n, x) end # ╔═╡ 20efaf3a-7a12-4c12-8623-5d66cbc799f6 md""" Try $f=1000, 2000, 3000, 4000, 5000$ Hz. Try negative $f$. Try sine instead of cosine. Try adding phase offsets $\varphi$ of $\pm\frac\pi4$, $\pm\frac\pi2$, and $\pm\pi$. """ # ╔═╡ 07d3cb1b-01a8-441a-b731-83519c9ae94e let x = [ 0, 0, 0, -4, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 0, -3, -3, -3, 0, 0, 0, 0, 0, 1, -4, 0, 4, 3, -1, 2, -3, -1, 0, 2, -4, -2, 1, 0, 0, 0, 3, -3, 3, -3, 3, -3, 3, -3, 3, -3, 0, 0, 0, 0, 0, 0 ]; y = filt([1, 1, 1, 1]/4, [1], x) plot([x y], linecolor=[:blue :red], markercolor=[:blue :red], markershape=[:x :circle], markerstrokewidth=3, size = (800, 250), xticks=[], yticks=[0], label=["x" "y"], legend=true, ylim=[-7,7]) end # ╔═╡ dfdfb0a0-a157-4053-90b8-016b54101419 md""" # Discrete Time Fourier Transform """ # ╔═╡ 9a7d108d-b8c3-483d-ae59-46c659dc000a md""" dtft_plot(x::AbstractVector, n1::Int; show_complex=0, show_dft=0) Plot a finite-support discrete sequence `x`, as well as its Discrete-Time Fourier Transform. Vector `x` contains the sequence elements. By default the middle element of an odd-length sequence or the first element of an even-length sequence are $x_0$ (i.e., at index $0$). Optional parameter `n1` can be used to set the sequence index of `x[1]`. """ # ╔═╡ 016e53cc-919e-4aa1-88b3-95b560869b3b function dtft_plot(x::AbstractVector, n1=iseven(length(x)) ? 0 : -div(length(x)-1, 2); show_complex=0, show_dft=0, kwargs...) l = length(x) n = range(n1, length=l) nfft = nextpow(2, max(l, 1024)) x2 = zeros(typeof(x[begin] + 0.0), nfft) for i in eachindex(x) x2[mod(n1+i-1, nfft) + 1] = x[i]; end f = circshift(fft(x2), div(nfft,2)) td = plot(n,x; legend=false, line=:stem, marker=:circle) w = range(-pi, step=2pi/nfft, length=nfft) if show_complex > 0 fd = plot(w, [real(f) imag(f)]; label=["DTFT real" "DTFT imag"], kwargs...) else fd = plot(w, abs.(f); label="DTFT mag", kwargs...) end xticks!(fd, (pi.*(-1.0:0.25:1.0),[L"-\pi", L"-0.75\pi", L"-\pi/2", L"-\pi/4", L"0", L"\pi/4", L"\pi/2", L"0.75\pi", L"\pi"])) if show_complex>0; ylims!((-2.2,7.2)); end if show_dft > 0 wn = 2pi*(0:l-1)/l # DFT frequencies (positive) wn = mod.(wn .+ pi, 2pi) .- pi dft = fft(x) .* cis.(-n1*wn) # timeshift DFT output to n1 if show_complex > 0 plot!(wn, [real(dft) imag(dft)]; line=:stem, marker=:circle, label=["DFT real" "DFT imag"]) else plot!(wn, abs.(dft); line=:stem, marker=:circle, label="DFT mag") end end plot(td, fd; layout=(1, 2), size=(800,300)) end; # ╔═╡ 0dee1763-9ead-4693-b45d-e6e9367825a4 dtft_plot([0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0]; show_complex=1) # ╔═╡ 8eeec730-65fb-4c56-b506-ed566e38a0ae dtft_plot([0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0]; show_complex=1) # ╔═╡ d06ffc45-2fa3-4d15-a63d-5d4ed8c1536b dtft_plot([0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0]; show_complex=1) # ╔═╡ 63493e61-48fb-479f-973c-8dcf0ebf5097 md""" ## Windowing """ # ╔═╡ 66ae2ff3-afd0-4753-99d6-56c4ca437482 begin n = 255 padding = 8 label = ["rect" "triangle" "Hann" "Hamming"] b = [Windows.rect(n) Windows.triang(n) Windows.hanning(n) Windows.hamming(n)] b = [zeros(padding, size(b,2)); b; zeros(padding, size(b,2))] t = 0-padding/(n-1):1/(n-1):1+padding/(n-1) plot(t, b; label, xticks=[]) end # ╔═╡ eb46da1f-5350-4d34-8f52-9fec32bc9024 dtft_plot(cos.(2pi*(0:15)/16*4); show_dft=1, ylims=(-0.1, 8.5)) # ╔═╡ 398e8a64-b950-48aa-888b-32ad90161da8 dtft_plot(cos.(2pi*(0:15)/16*4.2); show_dft=1, ylims=(-0.1, 8.5)) # ╔═╡ b0f80781-8ad2-4218-8042-358230c5e52f dtft_plot(cos.(2pi*(0:15)/16*4.2) .* Windows.hamming(16); show_dft=1, ylims=(-0.1, 8.5)) # ╔═╡ 6514ae0b-2958-4291-a27c-22694c50d579 dtft_plot(Windows.rect(33); yaxis=:log, ylims=(0.02,40)) # ╔═╡ 95373cb6-945f-451e-998d-17c296423df9 dtft_plot(Windows.triang(33); yaxis=:log, ylims=(0.02,40)) # ╔═╡ fa56b2b3-5d56-4ea0-83ba-79a40171fa82 dtft_plot(Windows.hanning(33); yaxis=:log, ylims=(0.02,40)) # ╔═╡ 8d963f3d-6291-4463-b028-aeab74be175b dtft_plot(Windows.hamming(33); yaxis=:log, ylims=(0.02,40)) # ╔═╡ 86cbe90a-77f5-4665-8f89-ea69d7a0af5d md""" # Example: a single-pole filter The $z$-transform of the impulse response of an IIR filter is a rational function, which defines a complex-valued surface over the complex plane. The DTFT can be read off there on the unit circle. """ # ╔═╡ 190fc757-6c83-4f10-aadd-7a0a5582c97c let b = [0.8]; a = [1, -0.2] H(z) = sum(b .* z.^-(eachindex(b).-1)) ./ sum(a .* z.^-(eachindex(a).-1)) r = nextfloat(-1.0):0.05:1.0 # nextfloat() avoids hitting 0 or 0.2 exactly z = r .+ (1im * r') u = cis.(2pi * (0:1/64:1)) plot(real(u), imag(u), zeros(length(u)), label="unit circle") scatter!([0],[0],[0], marker=:circle, label="zero"); scatter!([0],[0.2],[0], marker=:xcross, label="pole"); plot!(real(u), imag(u), abs.(H.(u)), line=:stem, label="DTFT") wireframe!(r, r, min.(abs.(H.(z)),2); camera=(50,15), xlabel="real", ylabel="imag", zlabel=L"|H(z)|", zlim=(0,2)) end # ╔═╡ b4bdd709-54f1-4ca0-999b-cc6011b29082 md""" ## Visual verification Predict the effect that an IIR filter has on a sinusodial test signal of frequency $f$, by evaluation the $z$-transform of its impulse response on the unit circle, and compare it visually with the result of applying it using the `filt` function. """ # ╔═╡ cccbf053-7b75-4751-a407-40f846e3ef2e let n = 0:15; fs = 8000; f = 1500; x = cos.(2*pi*f*n/fs); b = [0.8]; a = [1, -0.2]; y1 = filt(b, a, x); z = exp.(1im*2*pi*f/fs); H = 0.8 * z / (z-0.2); A = abs.(H); theta = atan.(imag.(H) ./ real.(H)); y2 = A * cos.(2*pi*f*n/fs.+theta); plot(n, [x y1 y2]; color=[:blue :green :red], marker=[:cross :diamond :xcross], markersize=8, markerstrokewidth = 2, label=["x" "y (time domain)" "y (z-transform)"], ylim=(-1.1, 1.5)) end # ╔═╡ 662ba58f-ac54-40a1-8a9c-cfe3d1728ba1 md""" ## How do poles affect the time domain? """ # ╔═╡ 95623aa6-b4e2-4d50-a14c-829246893747 function zeropole_plot(f::Filters.ZeroPoleGain) u = cis.(2pi * (0:1/64:1)) plot(u; aspect_ratio=:equal, size=(400, 400)) scatter!(real(f.z), imag(f.z); markers=:circle, markerstrokewidth=2, markersize=6) scatter!(real(f.p), imag(f.p); markers=:xcross, markersize=5, markerstrokewidth=4, legend=false, label=["unit circle" "zeros" "poles"]) end # ╔═╡ 8c31c56e-89fd-4e4f-84e0-e8f304766943 function impulse_response_plot(f) x = [1; zeros(31)] y = filt(f, x) stem(0:length(y)-1, y) end # ╔═╡ 57ed2ed3-ba8c-4048-988f-f3599226035f function filter_plot(f) zp = zeropole_plot(f) ir = impulse_response_plot(f) plot(zp, ir; size=(600,300)) end # ╔═╡ 164d9fd1-8835-406b-bd6f-ae04f262f6e0 filter_plot(ZeroPoleGain([0.0], [0.7], 1)) # ╔═╡ 35bb671b-d314-4d8f-aa53-fdb02f72ac87 filter_plot(ZeroPoleGain([0.0], [0.9], 1)) # ╔═╡ 042ab4f1-e2db-4d06-96ea-b5f518b77de9 filter_plot(ZeroPoleGain([0.0], [1.0], 1)) # ╔═╡ 44a7ebb5-e268-47d9-9169-2bb037db4fb7 filter_plot(ZeroPoleGain([0.0], [1.1], 1)) # ╔═╡ 130e7ff3-ae1d-43d8-907d-4440ee4b0dd2 filter_plot(ZeroPoleGain([0.0, 0.0], 0.9 * cis.([-1,1] .* pi/6), 1)) # ╔═╡ 0bad950f-6def-473d-9bb0-d9e9b9cf35c7 filter_plot(ZeroPoleGain([0.0, 0.0], 1.0 * cis.([-1,1] .* pi/6), 1)) # ╔═╡ f6f299cf-36b9-438f-9389-649c46132c4a md""" ## Some IIR filter design methods """ # ╔═╡ 977a6687-1ac1-4c39-b7e6-bc146a1529cd function filter2_plot(f::ZeroPoleGain) zp = zeropole_plot(f) ir = impulse_response_plot(f) H, w = freqresp(f) xticks = (pi.*(0:0.25:1.0),[L"0", L"\pi/4", L"\pi/2", L"0.75\pi", L"\pi"]) fr = plot(w, 20*log10.(abs.(H)); xticks, legend=false, ylabel="amplitude (dB)", ylims=(-50, 3)) yticks = (pi.*(-1.0:0.25:1.0),[L"-\pi", L"-0.75\pi", L"-\pi/2", L"-\pi/4", L"0", L"\pi/4", L"\pi/2", L"0.75\pi", L"\pi"]) pr = plot(w, angle.(H); xticks, yticks, legend=false, ylims=(-1,1).*pi, ylabel="phase") plot(zp, ir, fr, pr; size=(600,600)) end # ╔═╡ 8e1470ad-fad9-42ba-9399-c6206c27b3b1 filter2_plot(b::Vector{<:Number}) = filter2_plot(convert(ZeroPoleGain, PolynomialRatio(b, [1]))) # ╔═╡ 0d5d9934-3ae2-4371-9d0d-d9d02b75b09a filter2_plot(digitalfilter(Lowpass(0.3), Butterworth(1))) # ╔═╡ 8aa9d2e3-d445-438b-8491-d87d14eeef66 filter2_plot(digitalfilter(Lowpass(0.3), Butterworth(5))) # ╔═╡ 4feeb297-c9d4-4f91-9f03-d18c1a9610f3 filter2_plot(digitalfilter(Lowpass(0.5), Chebyshev1(5, 3))) # ╔═╡ 85f77adf-9a23-42ef-bd6f-75f5c0bf9f40 filter2_plot(digitalfilter(Lowpass(0.5), Chebyshev2(5, 20))) # ╔═╡ cf75f102-a156-490e-af6b-db5d8414f2dd filter2_plot(digitalfilter(Lowpass(0.5), Elliptic(5, 3, 20))) # ╔═╡ 519ccc83-8c52-40be-99a7-fb45e5540a01 filter2_plot(ZeroPoleGain(cis.(0.25pi.*[-1, 1]), 0.9*cis.(0.25pi.*[-1, 1]), 1)) # ╔═╡ 3bdc232d-22b9-415c-a082-29c10d129c9a filter2_plot(ZeroPoleGain([-1, 1], 0.9*cis.(0.25pi.*[-1, 1]), 1e-1)) # ╔═╡ 0ae75fa3-6333-44ac-a9c7-01bbe802138c filter2_plot(digitalfilter(Lowpass(0.25), FIRWindow(hamming(30)))) # ╔═╡ e8a16d5e-a5b9-4bc1-a9f2-a6e526115402 md""" ### Comparison of required filter order """ # ╔═╡ 2eba9819-9cc2-4dad-8c4d-967795678e2e # A Butterworth low-pass filter with a transion band from 0.4*fs/2 to 0.5*fs/2 # with at most 1 dB ripple in the pass band and at least 30 dB attenuation # in the stop band requires filter order 13 Filters.buttord(0.4, 0.5, 1, 30; domain=:z) # ╔═╡ d9217802-6293-4d32-a71a-90c3b843129f # Chebyshev 1/2 filters can do the same in order 6 Filters.cheb1ord(0.4, 0.5, 1, 30; domain=:z) # ╔═╡ 575012fd-7225-4ed9-930e-42b84cfa98c5 Filters.cheb2ord(0.4, 0.5, 1, 30; domain=:z) # ╔═╡ b8218263-2c23-4fc3-a6aa-e6c5e64c63ba # Elliptic can do the same in order 4 Filters.ellipord(0.4, 0.5, 1, 30; domain=:z) # ╔═╡ 131cd5e2-e190-424d-bc57-8f57ae72571b # A FIR filter needs order 29 filter2_plot(remez(29, [(0, 0.4) => 1, (0.5, 1.0) => 0]; Hz = 2)) # ╔═╡ 98086cbd-ce41-457c-add4-fe85867df85b md""" ## Covert spread-spectrum communication demo """ # ╔═╡ 772d4275-51c2-476d-a3fe-2906de0a3753 let n = randn(10000) a = 0.3; l = 1000 pattern = rand((-a, a), l) b0 = [zeros(2000); pattern; zeros(7000)] b1 = [zeros(4000); -pattern; zeros(5000)] r = n .+ b0 .+ b1 f1 = plot([n b0 b1 r] .- [0 -3 -4 -7]; label = ["n" "b0" "b1" "r"], yticks=[]) x = conv(r,reverse(pattern)) # or: x = xcorr(r,pattern) f2 = plot(x; label="xcorr") xlims!(f1, 1, length(n)+2*l); xlims!(f2, 1, length(n)+2*l) plot(f1, f2; layout=(2,1)) end # ╔═╡ 39483220-98b2-4404-b660-97d8d2dfd368 md""" ## Covert spread-spectrum radar demo """ # ╔═╡ 02056c94-7e84-424d-9b70-25e3edd7bdcd let x = randn(10000) h = [0, 0, 0.4, 0, 0, 0.3, 0, 0, 0.2, 0, 0]; y = conv(x, h); f1 = plot(1:length(x), x; label = "x beam") plot!(f1, 1:length(y), y .- 5, label = "y return", yticks=[]); c = conv(reverse(x),y); lags = -20:20 f2 = stem(lags, c[length(c)÷2 .+ lags]); plot(f1, f2; layout=(2,1)) end # ╔═╡ 0c350605-fa57-4488-a074-dc7e92f1442b md""" ## Spectral estimation """ # ╔═╡ da2607e6-e7a2-4ad4-b28f-380035c4097e let n = 64 # block length m = 1000 # blocks averaged k = 1:(n*m) x = randn(n*m) + sin.(2*pi*k * 8.00 ./ n) + sin.(2*pi*k * 14.32 ./ n) xx = reshape(x, n, m) s1 = abs.(fft(x[1:n])/n) s2 = abs.(fft(x[1:8n])/8n) s3 = mean(abs.(fft(xx, 1)/n),dims=2) s4 = abs.(mean(fft(xx, 1)/n,dims=2)) plots = stemf.([s1,s2,s3,s4]; ylims=(0, 0.75), yticks = [0]); plot(plots...) end # ╔═╡ 0e38d1bf-765c-4687-a385-33db2a67d78d # Lookup table to map slide framenumberlabel to slide number, generated with # perl -nE 'BEGIN{print("Dict("),}END{print(")")}/^\\newlabel\{(.+?)\}\{\{(\d+)\}\{/ && print "\"$1\"=>$2,"' dsp-slides.aux begin slide=Dict("ref:impulse-sequence"=>10,"weberfechner"=>14,"lti-avr"=>19,"lti-exp"=>20,"lti-acc"=>21,"lti-diff"=>22,"ref:direct-form1"=>25,"convolution<1>"=>26,"convolution"=>26,"convolution<2>"=>27,"convolution<3>"=>27,"convolution<4>"=>28,"convolution<5>"=>28,"stars"=>31,"hz"=>38,"diracprop"=>48,"am"=>53,"ex:dac"=>7,"ex:sampling"=>10,"deconv"=>86,"deconv-noise"=>88,"ex:dtmf"=>14,"ztransform"=>118,"ex:ztrans"=>16,"iqdown"=>166,"fmdemo1"=>19,"dct2bases"=>218,) nothing end # ╔═╡ 006e7bf0-8423-4399-9545-7a943effd13e md""" # $M$-point moving average system (slide $(slide["lti-avr"])) """ # ╔═╡ 00000000-0000-0000-0000-000000000001 PLUTO_PROJECT_TOML_CONTENTS = """ [deps] DSP = "717857b8-e6f2-59f4-9121-6e50c889abd2" FFTW = "7a1cc6ca-52ef-59f5-83cd-3a7055c09341" LaTeXStrings = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f" Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" [compat] DSP = "~0.7.7" FFTW = "~1.5.0" LaTeXStrings = "~1.3.0" Plots = "~1.35.2" """ # ╔═╡ 00000000-0000-0000-0000-000000000002 PLUTO_MANIFEST_TOML_CONTENTS = """ # This file is machine-generated - editing it directly is not advised julia_version = "1.8.2" manifest_format = "2.0" project_hash = "05be50cc52e16b8d1d3d6a9f807e9d25a80936c3" [[deps.AbstractFFTs]] deps = ["ChainRulesCore", "LinearAlgebra"] git-tree-sha1 = "69f7020bd72f069c219b5e8c236c1fa90d2cb409" uuid = "621f4979-c628-5d54-868e-fcf4e3e8185c" version = "1.2.1" [[deps.ArgTools]] uuid = "0dad84c5-d112-42e6-8d28-ef12dabb789f" version = "1.1.1" [[deps.Artifacts]] uuid = "56f22d72-fd6d-98f1-02f0-08ddc0907c33" [[deps.Base64]] uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" [[deps.BitFlags]] git-tree-sha1 = "84259bb6172806304b9101094a7cc4bc6f56dbc6" uuid = "d1d4a3ce-64b1-5f1a-9ba4-7e7e69966f35" version = "0.1.5" [[deps.Bzip2_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "19a35467a82e236ff51bc17a3a44b69ef35185a2" uuid = "6e34b625-4abd-537c-b88f-471c36dfa7a0" version = "1.0.8+0" [[deps.Cairo_jll]] deps = ["Artifacts", "Bzip2_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "JLLWrappers", "LZO_jll", "Libdl", "Pixman_jll", "Pkg", "Xorg_libXext_jll", "Xorg_libXrender_jll", "Zlib_jll", "libpng_jll"] git-tree-sha1 = "4b859a208b2397a7a623a03449e4636bdb17bcf2" uuid = "83423d85-b0ee-5818-9007-b63ccbeb887a" version = "1.16.1+1" [[deps.ChainRulesCore]] deps = ["Compat", "LinearAlgebra", "SparseArrays"] git-tree-sha1 = "e7ff6cadf743c098e08fca25c91103ee4303c9bb" uuid = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" version = "1.15.6" [[deps.ChangesOfVariables]] deps = ["ChainRulesCore", "LinearAlgebra", "Test"] git-tree-sha1 = "38f7a08f19d8810338d4f5085211c7dfa5d5bdd8" uuid = "9e997f8a-9a97-42d5-a9f1-ce6bfc15e2c0" version = "0.1.4" [[deps.CodecZlib]] deps = ["TranscodingStreams", "Zlib_jll"] git-tree-sha1 = "ded953804d019afa9a3f98981d99b33e3db7b6da" uuid = "944b1d66-785c-5afd-91f1-9de20f533193" version = "0.7.0" [[deps.ColorSchemes]] deps = ["ColorTypes", "ColorVectorSpace", "Colors", "FixedPointNumbers", "Random"] git-tree-sha1 = "1fd869cc3875b57347f7027521f561cf46d1fcd8" uuid = "35d6a980-a343-548e-a6ea-1d62b119f2f4" version = "3.19.0" [[deps.ColorTypes]] deps = ["FixedPointNumbers", "Random"] git-tree-sha1 = "eb7f0f8307f71fac7c606984ea5fb2817275d6e4" uuid = "3da002f7-5984-5a60-b8a6-cbb66c0b333f" version = "0.11.4" [[deps.ColorVectorSpace]] deps = ["ColorTypes", "FixedPointNumbers", "LinearAlgebra", "SpecialFunctions", "Statistics", "TensorCore"] git-tree-sha1 = "d08c20eef1f2cbc6e60fd3612ac4340b89fea322" uuid = "c3611d14-8923-5661-9e6a-0046d554d3a4" version = "0.9.9" [[deps.Colors]] deps = ["ColorTypes", "FixedPointNumbers", "Reexport"] git-tree-sha1 = "417b0ed7b8b838aa6ca0a87aadf1bb9eb111ce40" uuid = "5ae59095-9a9b-59fe-a467-6f913c188581" version = "0.12.8" [[deps.Compat]] deps = ["Dates", "LinearAlgebra", "UUIDs"] git-tree-sha1 = "3ca828fe1b75fa84b021a7860bd039eaea84d2f2" uuid = "34da2185-b29b-5c13-b0c7-acf172513d20" version = "4.3.0" [[deps.CompilerSupportLibraries_jll]] deps = ["Artifacts", "Libdl"] uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae" version = "0.5.2+0" [[deps.Contour]] git-tree-sha1 = "d05d9e7b7aedff4e5b51a029dced05cfb6125781" uuid = "d38c429a-6771-53c6-b99e-75d170b6e991" version = "0.6.2" [[deps.DSP]] deps = ["Compat", "FFTW", "IterTools", "LinearAlgebra", "Polynomials", "Random", "Reexport", "SpecialFunctions", "Statistics"] git-tree-sha1 = "4ba2a190a9d05a36e8c26182eb1ba06cd12c1051" uuid = "717857b8-e6f2-59f4-9121-6e50c889abd2" version = "0.7.7" [[deps.DataAPI]] git-tree-sha1 = "e08915633fcb3ea83bf9d6126292e5bc5c739922" uuid = "9a962f9c-6df0-11e9-0e5d-c546b8b5ee8a" version = "1.13.0" [[deps.DataStructures]] deps = ["Compat", "InteractiveUtils", "OrderedCollections"] git-tree-sha1 = "d1fff3a548102f48987a52a2e0d114fa97d730f0" uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8" version = "0.18.13" [[deps.Dates]] deps = ["Printf"] uuid = "ade2ca70-3891-5945-98fb-dc099432e06a" [[deps.DelimitedFiles]] deps = ["Mmap"] uuid = "8bb1440f-4735-579b-a4ab-409b98df4dab" [[deps.DocStringExtensions]] deps = ["LibGit2"] git-tree-sha1 = "c36550cb29cbe373e95b3f40486b9a4148f89ffd" uuid = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" version = "0.9.2" [[deps.Downloads]] deps = ["ArgTools", "FileWatching", "LibCURL", "NetworkOptions"] uuid = "f43a241f-c20a-4ad4-852c-f6b1247861c6" version = "1.6.0" [[deps.Expat_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "bad72f730e9e91c08d9427d5e8db95478a3c323d" uuid = "2e619515-83b5-522b-bb60-26c02a35a201" version = "2.4.8+0" [[deps.FFMPEG]] deps = ["FFMPEG_jll"] git-tree-sha1 = "b57e3acbe22f8484b4b5ff66a7499717fe1a9cc8" uuid = "c87230d0-a227-11e9-1b43-d7ebe4e7570a" version = "0.4.1" [[deps.FFMPEG_jll]] deps = ["Artifacts", "Bzip2_jll", "FreeType2_jll", "FriBidi_jll", "JLLWrappers", "LAME_jll", "Libdl", "Ogg_jll", "OpenSSL_jll", "Opus_jll", "PCRE2_jll", "Pkg", "Zlib_jll", "libaom_jll", "libass_jll", "libfdk_aac_jll", "libvorbis_jll", "x264_jll", "x265_jll"] git-tree-sha1 = "74faea50c1d007c85837327f6775bea60b5492dd" uuid = "b22a6f82-2f65-5046-a5b2-351ab43fb4e5" version = "4.4.2+2" [[deps.FFTW]] deps = ["AbstractFFTs", "FFTW_jll", "LinearAlgebra", "MKL_jll", "Preferences", "Reexport"] git-tree-sha1 = "90630efff0894f8142308e334473eba54c433549" uuid = "7a1cc6ca-52ef-59f5-83cd-3a7055c09341" version = "1.5.0" [[deps.FFTW_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "c6033cc3892d0ef5bb9cd29b7f2f0331ea5184ea" uuid = "f5851436-0d7a-5f13-b9de-f02708fd171a" version = "3.3.10+0" [[deps.FileWatching]] uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee" [[deps.FixedPointNumbers]] deps = ["Statistics"] git-tree-sha1 = "335bfdceacc84c5cdf16aadc768aa5ddfc5383cc" uuid = "53c48c17-4a7d-5ca2-90c5-79b7896eea93" version = "0.8.4" [[deps.Fontconfig_jll]] deps = ["Artifacts", "Bzip2_jll", "Expat_jll", "FreeType2_jll", "JLLWrappers", "Libdl", "Libuuid_jll", "Pkg", "Zlib_jll"] git-tree-sha1 = "21efd19106a55620a188615da6d3d06cd7f6ee03" uuid = "a3f928ae-7b40-5064-980b-68af3947d34b" version = "2.13.93+0" [[deps.Formatting]] deps = ["Printf"] git-tree-sha1 = "8339d61043228fdd3eb658d86c926cb282ae72a8" uuid = "59287772-0a20-5a39-b81b-1366585eb4c0" version = "0.4.2" [[deps.FreeType2_jll]] deps = ["Artifacts", "Bzip2_jll", "JLLWrappers", "Libdl", "Pkg", "Zlib_jll"] git-tree-sha1 = "87eb71354d8ec1a96d4a7636bd57a7347dde3ef9" uuid = "d7e528f0-a631-5988-bf34-fe36492bcfd7" version = "2.10.4+0" [[deps.FriBidi_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "aa31987c2ba8704e23c6c8ba8a4f769d5d7e4f91" uuid = "559328eb-81f9-559d-9380-de523a88c83c" version = "1.0.10+0" [[deps.GLFW_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Libglvnd_jll", "Pkg", "Xorg_libXcursor_jll", "Xorg_libXi_jll", "Xorg_libXinerama_jll", "Xorg_libXrandr_jll"] git-tree-sha1 = "d972031d28c8c8d9d7b41a536ad7bb0c2579caca" uuid = "0656b61e-2033-5cc2-a64a-77c0f6c09b89" version = "3.3.8+0" [[deps.GR]] deps = ["Base64", "DelimitedFiles", "GR_jll", "HTTP", "JSON", "Libdl", "LinearAlgebra", "Pkg", "Preferences", "Printf", "Random", "Serialization", "Sockets", "Test", "UUIDs"] git-tree-sha1 = "00a9d4abadc05b9476e937a5557fcce476b9e547" uuid = "28b8d3ca-fb5f-59d9-8090-bfdbd6d07a71" version = "0.69.5" [[deps.GR_jll]] deps = ["Artifacts", "Bzip2_jll", "Cairo_jll", "FFMPEG_jll", "Fontconfig_jll", "GLFW_jll", "JLLWrappers", "JpegTurbo_jll", "Libdl", "Libtiff_jll", "Pixman_jll", "Pkg", "Qt5Base_jll", "Zlib_jll", "libpng_jll"] git-tree-sha1 = "bc9f7725571ddb4ab2c4bc74fa397c1c5ad08943" uuid = "d2c73de3-f751-5644-a686-071e5b155ba9" version = "0.69.1+0" [[deps.Gettext_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Libiconv_jll", "Pkg", "XML2_jll"] git-tree-sha1 = "9b02998aba7bf074d14de89f9d37ca24a1a0b046" uuid = "78b55507-aeef-58d4-861c-77aaff3498b1" version = "0.21.0+0" [[deps.Glib_jll]] deps = ["Artifacts", "Gettext_jll", "JLLWrappers", "Libdl", "Libffi_jll", "Libiconv_jll", "Libmount_jll", "PCRE2_jll", "Pkg", "Zlib_jll"] git-tree-sha1 = "fb83fbe02fe57f2c068013aa94bcdf6760d3a7a7" uuid = "7746bdde-850d-59dc-9ae8-88ece973131d" version = "2.74.0+1" [[deps.Graphite2_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "344bf40dcab1073aca04aa0df4fb092f920e4011" uuid = "3b182d85-2403-5c21-9c21-1e1f0cc25472" version = "1.3.14+0" [[deps.Grisu]] git-tree-sha1 = "53bb909d1151e57e2484c3d1b53e19552b887fb2" uuid = "42e2da0e-8278-4e71-bc24-59509adca0fe" version = "1.0.2" [[deps.HTTP]] deps = ["Base64", "CodecZlib", "Dates", "IniFile", "Logging", "LoggingExtras", "MbedTLS", "NetworkOptions", "OpenSSL", "Random", "SimpleBufferStream", "Sockets", "URIs", "UUIDs"] git-tree-sha1 = "8c7e6b82abd41364b8ffe40ffc63b33e590c8722" uuid = "cd3eb016-35fb-5094-929b-558a96fad6f3" version = "1.5.3" [[deps.HarfBuzz_jll]] deps = ["Artifacts", "Cairo_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "Graphite2_jll", "JLLWrappers", "Libdl", "Libffi_jll", "Pkg"] git-tree-sha1 = "129acf094d168394e80ee1dc4bc06ec835e510a3" uuid = "2e76f6c2-a576-52d4-95c1-20adfe4de566" version = "2.8.1+1" [[deps.IniFile]] git-tree-sha1 = "f550e6e32074c939295eb5ea6de31849ac2c9625" uuid = "83e8ac13-25f8-5344-8a64-a9f2b223428f" version = "0.5.1" [[deps.IntelOpenMP_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "d979e54b71da82f3a65b62553da4fc3d18c9004c" uuid = "1d5cc7b8-4909-519e-a0f8-d0f5ad9712d0" version = "2018.0.3+2" [[deps.InteractiveUtils]] deps = ["Markdown"] uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" [[deps.InverseFunctions]] deps = ["Test"] git-tree-sha1 = "49510dfcb407e572524ba94aeae2fced1f3feb0f" uuid = "3587e190-3f89-42d0-90ee-14403ec27112" version = "0.1.8" [[deps.IrrationalConstants]] git-tree-sha1 = "7fd44fd4ff43fc60815f8e764c0f352b83c49151" uuid = "92d709cd-6900-40b7-9082-c6be49f344b6" version = "0.1.1" [[deps.IterTools]] git-tree-sha1 = "fa6287a4469f5e048d763df38279ee729fbd44e5" uuid = "c8e1da08-722c-5040-9ed9-7db0dc04731e" version = "1.4.0" [[deps.JLFzf]] deps = ["Pipe", "REPL", "Random", "fzf_jll"] git-tree-sha1 = "f377670cda23b6b7c1c0b3893e37451c5c1a2185" uuid = "1019f520-868f-41f5-a6de-eb00f4b6a39c" version = "0.1.5" [[deps.JLLWrappers]] deps = ["Preferences"] git-tree-sha1 = "abc9885a7ca2052a736a600f7fa66209f96506e1" uuid = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210" version = "1.4.1" [[deps.JSON]] deps = ["Dates", "Mmap", "Parsers", "Unicode"] git-tree-sha1 = "3c837543ddb02250ef42f4738347454f95079d4e" uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" version = "0.21.3" [[deps.JpegTurbo_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "b53380851c6e6664204efb2e62cd24fa5c47e4ba" uuid = "aacddb02-875f-59d6-b918-886e6ef4fbf8" version = "2.1.2+0" [[deps.LAME_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "f6250b16881adf048549549fba48b1161acdac8c" uuid = "c1c5ebd0-6772-5130-a774-d5fcae4a789d" version = "3.100.1+0" [[deps.LERC_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "bf36f528eec6634efc60d7ec062008f171071434" uuid = "88015f11-f218-50d7-93a8-a6af411a945d" version = "3.0.0+1" [[deps.LZO_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "e5b909bcf985c5e2605737d2ce278ed791b89be6" uuid = "dd4b983a-f0e5-5f8d-a1b7-129d4a5fb1ac" version = "2.10.1+0" [[deps.LaTeXStrings]] git-tree-sha1 = "f2355693d6778a178ade15952b7ac47a4ff97996" uuid = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f" version = "1.3.0" [[deps.Latexify]] deps = ["Formatting", "InteractiveUtils", "LaTeXStrings", "MacroTools", "Markdown", "OrderedCollections", "Printf", "Requires"] git-tree-sha1 = "ab9aa169d2160129beb241cb2750ca499b4e90e9" uuid = "23fbe1c1-3f47-55db-b15f-69d7ec21a316" version = "0.15.17" [[deps.LazyArtifacts]] deps = ["Artifacts", "Pkg"] uuid = "4af54fe1-eca0-43a8-85a7-787d91b784e3" [[deps.LibCURL]] deps = ["LibCURL_jll", "MozillaCACerts_jll"] uuid = "b27032c2-a3e7-50c8-80cd-2d36dbcbfd21" version = "0.6.3" [[deps.LibCURL_jll]] deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll", "Zlib_jll", "nghttp2_jll"] uuid = "deac9b47-8bc7-5906-a0fe-35ac56dc84c0" version = "7.84.0+0" [[deps.LibGit2]] deps = ["Base64", "NetworkOptions", "Printf", "SHA"] uuid = "76f85450-5226-5b5a-8eaa-529ad045b433" [[deps.LibSSH2_jll]] deps = ["Artifacts", "Libdl", "MbedTLS_jll"] uuid = "29816b5a-b9ab-546f-933c-edad1886dfa8" version = "1.10.2+0" [[deps.Libdl]] uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" [[deps.Libffi_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "0b4a5d71f3e5200a7dff793393e09dfc2d874290" uuid = "e9f186c6-92d2-5b65-8a66-fee21dc1b490" version = "3.2.2+1" [[deps.Libgcrypt_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgpg_error_jll", "Pkg"] git-tree-sha1 = "64613c82a59c120435c067c2b809fc61cf5166ae" uuid = "d4300ac3-e22c-5743-9152-c294e39db1e4" version = "1.8.7+0" [[deps.Libglvnd_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libX11_jll", "Xorg_libXext_jll"] git-tree-sha1 = "7739f837d6447403596a75d19ed01fd08d6f56bf" uuid = "7e76a0d4-f3c7-5321-8279-8d96eeed0f29" version = "1.3.0+3" [[deps.Libgpg_error_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "c333716e46366857753e273ce6a69ee0945a6db9" uuid = "7add5ba3-2f88-524e-9cd5-f83b8a55f7b8" version = "1.42.0+0" [[deps.Libiconv_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "42b62845d70a619f063a7da093d995ec8e15e778" uuid = "94ce4f54-9a6c-5748-9c1c-f9c7231a4531" version = "1.16.1+1" [[deps.Libmount_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "9c30530bf0effd46e15e0fdcf2b8636e78cbbd73" uuid = "4b2f31a3-9ecc-558c-b454-b3730dcb73e9" version = "2.35.0+0" [[deps.Libtiff_jll]] deps = ["Artifacts", "JLLWrappers", "JpegTurbo_jll", "LERC_jll", "Libdl", "Pkg", "Zlib_jll", "Zstd_jll"] git-tree-sha1 = "3eb79b0ca5764d4799c06699573fd8f533259713" uuid = "89763e89-9b03-5906-acba-b20f662cd828" version = "4.4.0+0" [[deps.Libuuid_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "7f3efec06033682db852f8b3bc3c1d2b0a0ab066" uuid = "38a345b3-de98-5d2b-a5d3-14cd9215e700" version = "2.36.0+0" [[deps.LinearAlgebra]] deps = ["Libdl", "libblastrampoline_jll"] uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" [[deps.LogExpFunctions]] deps = ["ChainRulesCore", "ChangesOfVariables", "DocStringExtensions", "InverseFunctions", "IrrationalConstants", "LinearAlgebra"] git-tree-sha1 = "94d9c52ca447e23eac0c0f074effbcd38830deb5" uuid = "2ab3a3ac-af41-5b50-aa03-7779005ae688" version = "0.3.18" [[deps.Logging]] uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" [[deps.LoggingExtras]] deps = ["Dates", "Logging"] git-tree-sha1 = "5d4d2d9904227b8bd66386c1138cf4d5ffa826bf" uuid = "e6f89c97-d47a-5376-807f-9c37f3926c36" version = "0.4.9" [[deps.MKL_jll]] deps = ["Artifacts", "IntelOpenMP_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "Pkg"] git-tree-sha1 = "2ce8695e1e699b68702c03402672a69f54b8aca9" uuid = "856f044c-d86e-5d09-b602-aeab76dc8ba7" version = "2022.2.0+0" [[deps.MacroTools]] deps = ["Markdown", "Random"] git-tree-sha1 = "42324d08725e200c23d4dfb549e0d5d89dede2d2" uuid = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09" version = "0.5.10" [[deps.Markdown]] deps = ["Base64"] uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" [[deps.MbedTLS]] deps = ["Dates", "MbedTLS_jll", "MozillaCACerts_jll", "Random", "Sockets"] git-tree-sha1 = "03a9b9718f5682ecb107ac9f7308991db4ce395b" uuid = "739be429-bea8-5141-9913-cc70e7f3736d" version = "1.1.7" [[deps.MbedTLS_jll]] deps = ["Artifacts", "Libdl"] uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1" version = "2.28.0+0" [[deps.Measures]] git-tree-sha1 = "e498ddeee6f9fdb4551ce855a46f54dbd900245f" uuid = "442fdcdd-2543-5da2-b0f3-8c86c306513e" version = "0.3.1" [[deps.Missings]] deps = ["DataAPI"] git-tree-sha1 = "bf210ce90b6c9eed32d25dbcae1ebc565df2687f" uuid = "e1d29d7a-bbdc-5cf2-9ac0-f12de2c33e28" version = "1.0.2" [[deps.Mmap]] uuid = "a63ad114-7e13-5084-954f-fe012c677804" [[deps.MozillaCACerts_jll]] uuid = "14a3606d-f60d-562e-9121-12d972cd8159" version = "2022.2.1" [[deps.NaNMath]] deps = ["OpenLibm_jll"] git-tree-sha1 = "a7c3d1da1189a1c2fe843a3bfa04d18d20eb3211" uuid = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" version = "1.0.1" [[deps.NetworkOptions]] uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908" version = "1.2.0" [[deps.Ogg_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "887579a3eb005446d514ab7aeac5d1d027658b8f" uuid = "e7412a2a-1a6e-54c0-be00-318e2571c051" version = "1.3.5+1" [[deps.OpenBLAS_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "Libdl"] uuid = "4536629a-c528-5b80-bd46-f80d51c5b363" version = "0.3.20+0" [[deps.OpenLibm_jll]] deps = ["Artifacts", "Libdl"] uuid = "05823500-19ac-5b8b-9628-191a04bc5112" version = "0.8.1+0" [[deps.OpenSSL]] deps = ["BitFlags", "Dates", "MozillaCACerts_jll", "OpenSSL_jll", "Sockets"] git-tree-sha1 = "5628f092c6186a80484bfefdf89ff64efdaec552" uuid = "4d8831e6-92b7-49fb-bdf8-b643e874388c" version = "1.3.1" [[deps.OpenSSL_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "f6e9dba33f9f2c44e08a020b0caf6903be540004" uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95" version = "1.1.19+0" [[deps.OpenSpecFun_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "13652491f6856acfd2db29360e1bbcd4565d04f1" uuid = "efe28fd5-8261-553b-a9e1-b2916fc3738e" version = "0.5.5+0" [[deps.Opus_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "51a08fb14ec28da2ec7a927c4337e4332c2a4720" uuid = "91d4177d-7536-5919-b921-800302f37372" version = "1.3.2+0" [[deps.OrderedCollections]] git-tree-sha1 = "85f8e6578bf1f9ee0d11e7bb1b1456435479d47c" uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" version = "1.4.1" [[deps.PCRE2_jll]] deps = ["Artifacts", "Libdl"] uuid = "efcefdf7-47ab-520b-bdef-62a2eaa19f15" version = "10.40.0+0" [[deps.Parsers]] deps = ["Dates", "SnoopPrecompile"] git-tree-sha1 = "cceb0257b662528ecdf0b4b4302eb00e767b38e7" uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0" version = "2.5.0" [[deps.Pipe]] git-tree-sha1 = "6842804e7867b115ca9de748a0cf6b364523c16d" uuid = "b98c9c47-44ae-5843-9183-064241ee97a0" version = "1.3.0" [[deps.Pixman_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "b4f5d02549a10e20780a24fce72bea96b6329e29" uuid = "30392449-352a-5448-841d-b1acce4e97dc" version = "0.40.1+0" [[deps.Pkg]] deps = ["Artifacts", "Dates", "Downloads", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "Serialization", "TOML", "Tar", "UUIDs", "p7zip_jll"] uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" version = "1.8.0" [[deps.PlotThemes]] deps = ["PlotUtils", "Statistics"] git-tree-sha1 = "1f03a2d339f42dca4a4da149c7e15e9b896ad899" uuid = "ccf2f8ad-2431-5c83-bf29-c5338b663b6a" version = "3.1.0" [[deps.PlotUtils]] deps = ["ColorSchemes", "Colors", "Dates", "Printf", "Random", "Reexport", "SnoopPrecompile", "Statistics"] git-tree-sha1 = "21303256d239f6b484977314674aef4bb1fe4420" uuid = "995b91a9-d308-5afd-9ec6-746e21dbc043" version = "1.3.1" [[deps.Plots]] deps = ["Base64", "Contour", "Dates", "Downloads", "FFMPEG", "FixedPointNumbers", "GR", "JLFzf", "JSON", "LaTeXStrings", "Latexify", "LinearAlgebra", "Measures", "NaNMath", "Pkg", "PlotThemes", "PlotUtils", "Printf", "REPL", "Random", "RecipesBase", "RecipesPipeline", "Reexport", "RelocatableFolders", "Requires", "Scratch", "Showoff", "SnoopPrecompile", "SparseArrays", "Statistics", "StatsBase", "UUIDs", "UnicodeFun", "Unzip"] git-tree-sha1 = "b434dce10c0290ab22cb941a9d72c470f304c71d" uuid = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" version = "1.35.8" [[deps.Polynomials]] deps = ["LinearAlgebra", "RecipesBase"] git-tree-sha1 = "3010a6dd6ad4c7384d2f38c58fa8172797d879c1" uuid = "f27b6e38-b328-58d1-80ce-0feddd5e7a45" version = "3.2.0" [[deps.Preferences]] deps = ["TOML"] git-tree-sha1 = "47e5f437cc0e7ef2ce8406ce1e7e24d44915f88d" uuid = "21216c6a-2e73-6563-6e65-726566657250" version = "1.3.0" [[deps.Printf]] deps = ["Unicode"] uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" [[deps.Qt5Base_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "Fontconfig_jll", "Glib_jll", "JLLWrappers", "Libdl", "Libglvnd_jll", "OpenSSL_jll", "Pkg", "Xorg_libXext_jll", "Xorg_libxcb_jll", "Xorg_xcb_util_image_jll", "Xorg_xcb_util_keysyms_jll", "Xorg_xcb_util_renderutil_jll", "Xorg_xcb_util_wm_jll", "Zlib_jll", "xkbcommon_jll"] git-tree-sha1 = "0c03844e2231e12fda4d0086fd7cbe4098ee8dc5" uuid = "ea2cea3b-5b76-57ae-a6ef-0a8af62496e1" version = "5.15.3+2" [[deps.REPL]] deps = ["InteractiveUtils", "Markdown", "Sockets", "Unicode"] uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" [[deps.Random]] deps = ["SHA", "Serialization"] uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" [[deps.RecipesBase]] deps = ["SnoopPrecompile"] git-tree-sha1 = "d12e612bba40d189cead6ff857ddb67bd2e6a387" uuid = "3cdcf5f2-1ef4-517c-9805-6587b60abb01" version = "1.3.1" [[deps.RecipesPipeline]] deps = ["Dates", "NaNMath", "PlotUtils", "RecipesBase", "SnoopPrecompile"] git-tree-sha1 = "a030182cccc5c461386c6f055c36ab8449ef1340" uuid = "01d81517-befc-4cb6-b9ec-a95719d0359c" version = "0.6.10" [[deps.Reexport]] git-tree-sha1 = "45e428421666073eab6f2da5c9d310d99bb12f9b" uuid = "189a3867-3050-52da-a836-e630ba90ab69" version = "1.2.2" [[deps.RelocatableFolders]] deps = ["SHA", "Scratch"] git-tree-sha1 = "90bc7a7c96410424509e4263e277e43250c05691" uuid = "05181044-ff0b-4ac5-8273-598c1e38db00" version = "1.0.0" [[deps.Requires]] deps = ["UUIDs"] git-tree-sha1 = "838a3a4188e2ded87a4f9f184b4b0d78a1e91cb7" uuid = "ae029012-a4dd-5104-9daa-d747884805df" version = "1.3.0" [[deps.SHA]] uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" version = "0.7.0" [[deps.Scratch]] deps = ["Dates"] git-tree-sha1 = "f94f779c94e58bf9ea243e77a37e16d9de9126bd" uuid = "6c6a2e73-6563-6170-7368-637461726353" version = "1.1.1" [[deps.Serialization]] uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" [[deps.Showoff]] deps = ["Dates", "Grisu"] git-tree-sha1 = "91eddf657aca81df9ae6ceb20b959ae5653ad1de" uuid = "992d4aef-0814-514b-bc4d-f2e9a6c4116f" version = "1.0.3" [[deps.SimpleBufferStream]] git-tree-sha1 = "874e8867b33a00e784c8a7e4b60afe9e037b74e1" uuid = "777ac1f9-54b0-4bf8-805c-2214025038e7" version = "1.1.0" [[deps.SnoopPrecompile]] git-tree-sha1 = "f604441450a3c0569830946e5b33b78c928e1a85" uuid = "66db9d55-30c0-4569-8b51-7e840670fc0c" version = "1.0.1" [[deps.Sockets]] uuid = "6462fe0b-24de-5631-8697-dd941f90decc" [[deps.SortingAlgorithms]] deps = ["DataStructures"] git-tree-sha1 = "b3363d7460f7d098ca0912c69b082f75625d7508" uuid = "a2af1166-a08f-5f64-846c-94a0d3cef48c" version = "1.0.1" [[deps.SparseArrays]] deps = ["LinearAlgebra", "Random"] uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" [[deps.SpecialFunctions]] deps = ["ChainRulesCore", "IrrationalConstants", "LogExpFunctions", "OpenLibm_jll", "OpenSpecFun_jll"] git-tree-sha1 = "d75bda01f8c31ebb72df80a46c88b25d1c79c56d" uuid = "276daf66-3868-5448-9aa4-cd146d93841b" version = "2.1.7" [[deps.Statistics]] deps = ["LinearAlgebra", "SparseArrays"] uuid = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" [[deps.StatsAPI]] deps = ["LinearAlgebra"] git-tree-sha1 = "f9af7f195fb13589dd2e2d57fdb401717d2eb1f6" uuid = "82ae8749-77ed-4fe6-ae5f-f523153014b0" version = "1.5.0" [[deps.StatsBase]] deps = ["DataAPI", "DataStructures", "LinearAlgebra", "LogExpFunctions", "Missings", "Printf", "Random", "SortingAlgorithms", "SparseArrays", "Statistics", "StatsAPI"] git-tree-sha1 = "d1bf48bfcc554a3761a133fe3a9bb01488e06916" uuid = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91" version = "0.33.21" [[deps.TOML]] deps = ["Dates"] uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76" version = "1.0.0" [[deps.Tar]] deps = ["ArgTools", "SHA"] uuid = "a4e569a6-e804-4fa4-b0f3-eef7a1d5b13e" version = "1.10.1" [[deps.TensorCore]] deps = ["LinearAlgebra"] git-tree-sha1 = "1feb45f88d133a655e001435632f019a9a1bcdb6" uuid = "62fd8b95-f654-4bbd-a8a5-9c27f68ccd50" version = "0.1.1" [[deps.Test]] deps = ["InteractiveUtils", "Logging", "Random", "Serialization"] uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [[deps.TranscodingStreams]] deps = ["Random", "Test"] git-tree-sha1 = "8a75929dcd3c38611db2f8d08546decb514fcadf" uuid = "3bb67fe8-82b1-5028-8e26-92a6c54297fa" version = "0.9.9" [[deps.URIs]] git-tree-sha1 = "e59ecc5a41b000fa94423a578d29290c7266fc10" uuid = "5c2747f8-b7ea-4ff2-ba2e-563bfd36b1d4" version = "1.4.0" [[deps.UUIDs]] deps = ["Random", "SHA"] uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4" [[deps.Unicode]] uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5" [[deps.UnicodeFun]] deps = ["REPL"] git-tree-sha1 = "53915e50200959667e78a92a418594b428dffddf" uuid = "1cfade01-22cf-5700-b092-accc4b62d6e1" version = "0.4.1" [[deps.Unzip]] git-tree-sha1 = "ca0969166a028236229f63514992fc073799bb78" uuid = "41fe7b60-77ed-43a1-b4f0-825fd5a5650d" version = "0.2.0" [[deps.Wayland_jll]] deps = ["Artifacts", "Expat_jll", "JLLWrappers", "Libdl", "Libffi_jll", "Pkg", "XML2_jll"] git-tree-sha1 = "3e61f0b86f90dacb0bc0e73a0c5a83f6a8636e23" uuid = "a2964d1f-97da-50d4-b82a-358c7fce9d89" version = "1.19.0+0" [[deps.Wayland_protocols_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "4528479aa01ee1b3b4cd0e6faef0e04cf16466da" uuid = "2381bf8a-dfd0-557d-9999-79630e7b1b91" version = "1.25.0+0" [[deps.XML2_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Libiconv_jll", "Pkg", "Zlib_jll"] git-tree-sha1 = "58443b63fb7e465a8a7210828c91c08b92132dff" uuid = "02c8fc9c-b97f-50b9-bbe4-9be30ff0a78a" version = "2.9.14+0" [[deps.XSLT_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgcrypt_jll", "Libgpg_error_jll", "Libiconv_jll", "Pkg", "XML2_jll", "Zlib_jll"] git-tree-sha1 = "91844873c4085240b95e795f692c4cec4d805f8a" uuid = "aed1982a-8fda-507f-9586-7b0439959a61" version = "1.1.34+0" [[deps.Xorg_libX11_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libxcb_jll", "Xorg_xtrans_jll"] git-tree-sha1 = "5be649d550f3f4b95308bf0183b82e2582876527" uuid = "4f6342f7-b3d2-589e-9d20-edeb45f2b2bc" version = "1.6.9+4" [[deps.Xorg_libXau_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "4e490d5c960c314f33885790ed410ff3a94ce67e" uuid = "0c0b7dd1-d40b-584c-a123-a41640f87eec" version = "1.0.9+4" [[deps.Xorg_libXcursor_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libXfixes_jll", "Xorg_libXrender_jll"] git-tree-sha1 = "12e0eb3bc634fa2080c1c37fccf56f7c22989afd" uuid = "935fb764-8cf2-53bf-bb30-45bb1f8bf724" version = "1.2.0+4" [[deps.Xorg_libXdmcp_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "4fe47bd2247248125c428978740e18a681372dd4" uuid = "a3789734-cfe1-5b06-b2d0-1dd0d9d62d05" version = "1.1.3+4" [[deps.Xorg_libXext_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libX11_jll"] git-tree-sha1 = "b7c0aa8c376b31e4852b360222848637f481f8c3" uuid = "1082639a-0dae-5f34-9b06-72781eeb8cb3" version = "1.3.4+4" [[deps.Xorg_libXfixes_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libX11_jll"] git-tree-sha1 = "0e0dc7431e7a0587559f9294aeec269471c991a4" uuid = "d091e8ba-531a-589c-9de9-94069b037ed8" version = "5.0.3+4" [[deps.Xorg_libXi_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libXext_jll", "Xorg_libXfixes_jll"] git-tree-sha1 = "89b52bc2160aadc84d707093930ef0bffa641246" uuid = "a51aa0fd-4e3c-5386-b890-e753decda492" version = "1.7.10+4" [[deps.Xorg_libXinerama_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libXext_jll"] git-tree-sha1 = "26be8b1c342929259317d8b9f7b53bf2bb73b123" uuid = "d1454406-59df-5ea1-beac-c340f2130bc3" version = "1.1.4+4" [[deps.Xorg_libXrandr_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libXext_jll", "Xorg_libXrender_jll"] git-tree-sha1 = "34cea83cb726fb58f325887bf0612c6b3fb17631" uuid = "ec84b674-ba8e-5d96-8ba1-2a689ba10484" version = "1.5.2+4" [[deps.Xorg_libXrender_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libX11_jll"] git-tree-sha1 = "19560f30fd49f4d4efbe7002a1037f8c43d43b96" uuid = "ea2f1a96-1ddc-540d-b46f-429655e07cfa" version = "0.9.10+4" [[deps.Xorg_libpthread_stubs_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "6783737e45d3c59a4a4c4091f5f88cdcf0908cbb" uuid = "14d82f49-176c-5ed1-bb49-ad3f5cbd8c74" version = "0.1.0+3" [[deps.Xorg_libxcb_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "XSLT_jll", "Xorg_libXau_jll", "Xorg_libXdmcp_jll", "Xorg_libpthread_stubs_jll"] git-tree-sha1 = "daf17f441228e7a3833846cd048892861cff16d6" uuid = "c7cfdc94-dc32-55de-ac96-5a1b8d977c5b" version = "1.13.0+3" [[deps.Xorg_libxkbfile_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libX11_jll"] git-tree-sha1 = "926af861744212db0eb001d9e40b5d16292080b2" uuid = "cc61e674-0454-545c-8b26-ed2c68acab7a" version = "1.1.0+4" [[deps.Xorg_xcb_util_image_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_xcb_util_jll"] git-tree-sha1 = "0fab0a40349ba1cba2c1da699243396ff8e94b97" uuid = "12413925-8142-5f55-bb0e-6d7ca50bb09b" version = "0.4.0+1" [[deps.Xorg_xcb_util_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libxcb_jll"] git-tree-sha1 = "e7fd7b2881fa2eaa72717420894d3938177862d1" uuid = "2def613f-5ad1-5310-b15b-b15d46f528f5" version = "0.4.0+1" [[deps.Xorg_xcb_util_keysyms_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_xcb_util_jll"] git-tree-sha1 = "d1151e2c45a544f32441a567d1690e701ec89b00" uuid = "975044d2-76e6-5fbe-bf08-97ce7c6574c7" version = "0.4.0+1" [[deps.Xorg_xcb_util_renderutil_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_xcb_util_jll"] git-tree-sha1 = "dfd7a8f38d4613b6a575253b3174dd991ca6183e" uuid = "0d47668e-0667-5a69-a72c-f761630bfb7e" version = "0.3.9+1" [[deps.Xorg_xcb_util_wm_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_xcb_util_jll"] git-tree-sha1 = "e78d10aab01a4a154142c5006ed44fd9e8e31b67" uuid = "c22f9ab0-d5fe-5066-847c-f4bb1cd4e361" version = "0.4.1+1" [[deps.Xorg_xkbcomp_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libxkbfile_jll"] git-tree-sha1 = "4bcbf660f6c2e714f87e960a171b119d06ee163b" uuid = "35661453-b289-5fab-8a00-3d9160c6a3a4" version = "1.4.2+4" [[deps.Xorg_xkeyboard_config_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_xkbcomp_jll"] git-tree-sha1 = "5c8424f8a67c3f2209646d4425f3d415fee5931d" uuid = "33bec58e-1273-512f-9401-5d533626f822" version = "2.27.0+4" [[deps.Xorg_xtrans_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "79c31e7844f6ecf779705fbc12146eb190b7d845" uuid = "c5fb5394-a638-5e4d-96e5-b29de1b5cf10" version = "1.4.0+3" [[deps.Zlib_jll]] deps = ["Libdl"] uuid = "83775a58-1f1d-513f-b197-d71354ab007a" version = "1.2.12+3" [[deps.Zstd_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "e45044cd873ded54b6a5bac0eb5c971392cf1927" uuid = "3161d3a3-bdf6-5164-811a-617609db77b4" version = "1.5.2+0" [[deps.fzf_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "868e669ccb12ba16eaf50cb2957ee2ff61261c56" uuid = "214eeab7-80f7-51ab-84ad-2988db7cef09" version = "0.29.0+0" [[deps.libaom_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "3a2ea60308f0996d26f1e5354e10c24e9ef905d4" uuid = "a4ae2306-e953-59d6-aa16-d00cac43593b" version = "3.4.0+0" [[deps.libass_jll]] deps = ["Artifacts", "Bzip2_jll", "FreeType2_jll", "FriBidi_jll", "HarfBuzz_jll", "JLLWrappers", "Libdl", "Pkg", "Zlib_jll"] git-tree-sha1 = "5982a94fcba20f02f42ace44b9894ee2b140fe47" uuid = "0ac62f75-1d6f-5e53-bd7c-93b484bb37c0" version = "0.15.1+0" [[deps.libblastrampoline_jll]] deps = ["Artifacts", "Libdl", "OpenBLAS_jll"] uuid = "8e850b90-86db-534c-a0d3-1478176c7d93" version = "5.1.1+0" [[deps.libfdk_aac_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "daacc84a041563f965be61859a36e17c4e4fcd55" uuid = "f638f0a6-7fb0-5443-88ba-1cc74229b280" version = "2.0.2+0" [[deps.libpng_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Zlib_jll"] git-tree-sha1 = "94d180a6d2b5e55e447e2d27a29ed04fe79eb30c" uuid = "b53b4c65-9356-5827-b1ea-8c7a1a84506f" version = "1.6.38+0" [[deps.libvorbis_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Ogg_jll", "Pkg"] git-tree-sha1 = "b910cb81ef3fe6e78bf6acee440bda86fd6ae00c" uuid = "f27f6e37-5d2b-51aa-960f-b287f2bc3b7a" version = "1.3.7+1" [[deps.nghttp2_jll]] deps = ["Artifacts", "Libdl"] uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d" version = "1.48.0+0" [[deps.p7zip_jll]] deps = ["Artifacts", "Libdl"] uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0" version = "17.4.0+0" [[deps.x264_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "4fea590b89e6ec504593146bf8b988b2c00922b2" uuid = "1270edf5-f2f9-52d2-97e9-ab00b5d0237a" version = "2021.5.5+0" [[deps.x265_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "ee567a171cce03570d77ad3a43e90218e38937a9" uuid = "dfaa095f-4041-5dcd-9319-2fabd8486b76" 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 = "9ebfc140cc56e8c2156a15ceac2f0302e327ac0a" uuid = "d8fb68d0-12a3-5cfd-a85a-d49703b185fd" version = "1.4.1+0" """ # ╔═╡ Cell order: # ╟─c41a9e82-4163-4bdf-a2fa-0376546a1e9b # ╟─4630de8d-5de1-4e63-95cd-a53bcd671878 # ╟─85ed177a-5cc8-40d9-b79c-6ae4154b5ab8 # ╟─54f2d5f8-ed4a-4c67-9991-116db53d86ea # ╟─26a371f9-a77a-4528-a62b-c020f18c1d89 # ╠═624ede40-e5b5-4546-acd8-450f3283cf38 # ╟─20efaf3a-7a12-4c12-8623-5d66cbc799f6 # ╟─006e7bf0-8423-4399-9545-7a943effd13e # ╟─07d3cb1b-01a8-441a-b731-83519c9ae94e # ╟─dfdfb0a0-a157-4053-90b8-016b54101419 # ╟─9a7d108d-b8c3-483d-ae59-46c659dc000a # ╠═016e53cc-919e-4aa1-88b3-95b560869b3b # ╠═0dee1763-9ead-4693-b45d-e6e9367825a4 # ╠═8eeec730-65fb-4c56-b506-ed566e38a0ae # ╠═d06ffc45-2fa3-4d15-a63d-5d4ed8c1536b # ╟─63493e61-48fb-479f-973c-8dcf0ebf5097 # ╟─66ae2ff3-afd0-4753-99d6-56c4ca437482 # ╠═eb46da1f-5350-4d34-8f52-9fec32bc9024 # ╠═398e8a64-b950-48aa-888b-32ad90161da8 # ╠═b0f80781-8ad2-4218-8042-358230c5e52f # ╠═6514ae0b-2958-4291-a27c-22694c50d579 # ╠═95373cb6-945f-451e-998d-17c296423df9 # ╠═fa56b2b3-5d56-4ea0-83ba-79a40171fa82 # ╠═8d963f3d-6291-4463-b028-aeab74be175b # ╟─86cbe90a-77f5-4665-8f89-ea69d7a0af5d # ╠═190fc757-6c83-4f10-aadd-7a0a5582c97c # ╟─b4bdd709-54f1-4ca0-999b-cc6011b29082 # ╠═cccbf053-7b75-4751-a407-40f846e3ef2e # ╠═662ba58f-ac54-40a1-8a9c-cfe3d1728ba1 # ╠═95623aa6-b4e2-4d50-a14c-829246893747 # ╠═8c31c56e-89fd-4e4f-84e0-e8f304766943 # ╠═57ed2ed3-ba8c-4048-988f-f3599226035f # ╠═164d9fd1-8835-406b-bd6f-ae04f262f6e0 # ╠═35bb671b-d314-4d8f-aa53-fdb02f72ac87 # ╠═042ab4f1-e2db-4d06-96ea-b5f518b77de9 # ╠═44a7ebb5-e268-47d9-9169-2bb037db4fb7 # ╠═130e7ff3-ae1d-43d8-907d-4440ee4b0dd2 # ╠═0bad950f-6def-473d-9bb0-d9e9b9cf35c7 # ╟─f6f299cf-36b9-438f-9389-649c46132c4a # ╠═977a6687-1ac1-4c39-b7e6-bc146a1529cd # ╠═0d5d9934-3ae2-4371-9d0d-d9d02b75b09a # ╠═8aa9d2e3-d445-438b-8491-d87d14eeef66 # ╠═4feeb297-c9d4-4f91-9f03-d18c1a9610f3 # ╠═85f77adf-9a23-42ef-bd6f-75f5c0bf9f40 # ╠═cf75f102-a156-490e-af6b-db5d8414f2dd # ╠═519ccc83-8c52-40be-99a7-fb45e5540a01 # ╠═3bdc232d-22b9-415c-a082-29c10d129c9a # ╠═8e1470ad-fad9-42ba-9399-c6206c27b3b1 # ╠═0ae75fa3-6333-44ac-a9c7-01bbe802138c # ╟─e8a16d5e-a5b9-4bc1-a9f2-a6e526115402 # ╠═2eba9819-9cc2-4dad-8c4d-967795678e2e # ╠═d9217802-6293-4d32-a71a-90c3b843129f # ╠═575012fd-7225-4ed9-930e-42b84cfa98c5 # ╠═b8218263-2c23-4fc3-a6aa-e6c5e64c63ba # ╠═131cd5e2-e190-424d-bc57-8f57ae72571b # ╟─98086cbd-ce41-457c-add4-fe85867df85b # ╠═772d4275-51c2-476d-a3fe-2906de0a3753 # ╠═39483220-98b2-4404-b660-97d8d2dfd368 # ╠═02056c94-7e84-424d-9b70-25e3edd7bdcd # ╟─0c350605-fa57-4488-a074-dc7e92f1442b # ╠═da2607e6-e7a2-4ad4-b28f-380035c4097e # ╟─acaedbac-4402-11ed-3b9c-17a6ab36557c # ╟─0e38d1bf-765c-4687-a385-33db2a67d78d # ╟─00000000-0000-0000-0000-000000000001 # ╟─00000000-0000-0000-0000-000000000002