aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsotech117 <michael_foiani@brown.edu>2024-05-07 07:00:43 -0400
committersotech117 <michael_foiani@brown.edu>2024-05-07 07:00:43 -0400
commitbc515d3acdd94847b6e7aa6135bc234b46161db6 (patch)
tree3184e9797e93b238e672442aea56b210ba5e5751
parent95eb65429d24a897307601415c716e9042033982 (diff)
add hw9 and hw8
-rw-r--r--.DS_Storebin14340 -> 12292 bytes
-rw-r--r--hw8/10-14-0.0001.pngbin0 -> 17051 bytes
-rw-r--r--hw8/10-14-0.001.pngbin0 -> 60938 bytes
-rw-r--r--hw8/10-14-0.01.pngbin0 -> 19005 bytes
-rw-r--r--hw8/10-14-0.1.pngbin0 -> 17313 bytes
-rw-r--r--hw8/10-14-E.pngbin0 -> 14507 bytes
-rw-r--r--hw8/10-14-psi.mp4bin0 -> 3519376 bytes
-rw-r--r--hw8/10-14-psi.pngbin0 -> 61965 bytes
-rw-r--r--hw8/10-14.jl68
-rw-r--r--hw8/10-17-1.pngbin0 -> 10080 bytes
-rw-r--r--hw8/10-17-2.05.pngbin0 -> 24566 bytes
-rw-r--r--hw8/10-17-2.pngbin0 -> 30436 bytes
-rw-r--r--hw8/10-17-3.05.pngbin0 -> 28064 bytes
-rw-r--r--hw8/10-17-3.pngbin0 -> 29569 bytes
-rw-r--r--hw8/10-17-width-.05.pngbin0 -> 46547 bytes
-rw-r--r--hw8/10-17-width-.1.pngbin0 -> 28921 bytes
-rw-r--r--hw8/10-17-width-.2.pngbin0 -> 30538 bytes
-rw-r--r--hw8/10-17.jl64
-rw-r--r--hw8/10-3-long.pngbin0 -> 27534 bytes
-rw-r--r--hw8/10-3.jl39
-rw-r--r--hw8/10-3.pngbin0 -> 60650 bytes
-rw-r--r--hw8/TimeDependentSchrodingerEquation.jl38
-rw-r--r--hw9/12-11-all.pngbin0 -> 50155 bytes
-rw-r--r--hw9/12-11-all.svg131
-rw-r--r--hw9/12-11.jl272
-rw-r--r--hw9/12-12-all.pngbin0 -> 32142 bytes
-rw-r--r--hw9/12-12-test.pngbin0 -> 29601 bytes
-rw-r--r--hw9/12-12.jl253
-rw-r--r--hw9/YaoQuantumComputing.jl28
-rw-r--r--hw9/qubit00.svg39
-rw-r--r--hw9/qubit01.svg39
-rw-r--r--hw9/qubit10.svg39
-rw-r--r--hw9/qubit11.svg39
-rw-r--r--hw9/yao-assigment-2.jl75
34 files changed, 1067 insertions, 57 deletions
diff --git a/.DS_Store b/.DS_Store
index cd84abd..2b5a296 100644
--- a/.DS_Store
+++ b/.DS_Store
Binary files differ
diff --git a/hw8/10-14-0.0001.png b/hw8/10-14-0.0001.png
new file mode 100644
index 0000000..0dc656a
--- /dev/null
+++ b/hw8/10-14-0.0001.png
Binary files differ
diff --git a/hw8/10-14-0.001.png b/hw8/10-14-0.001.png
new file mode 100644
index 0000000..fcf13d4
--- /dev/null
+++ b/hw8/10-14-0.001.png
Binary files differ
diff --git a/hw8/10-14-0.01.png b/hw8/10-14-0.01.png
new file mode 100644
index 0000000..8c6d987
--- /dev/null
+++ b/hw8/10-14-0.01.png
Binary files differ
diff --git a/hw8/10-14-0.1.png b/hw8/10-14-0.1.png
new file mode 100644
index 0000000..74f5045
--- /dev/null
+++ b/hw8/10-14-0.1.png
Binary files differ
diff --git a/hw8/10-14-E.png b/hw8/10-14-E.png
new file mode 100644
index 0000000..d13b721
--- /dev/null
+++ b/hw8/10-14-E.png
Binary files differ
diff --git a/hw8/10-14-psi.mp4 b/hw8/10-14-psi.mp4
new file mode 100644
index 0000000..37c0d10
--- /dev/null
+++ b/hw8/10-14-psi.mp4
Binary files differ
diff --git a/hw8/10-14-psi.png b/hw8/10-14-psi.png
new file mode 100644
index 0000000..7911c89
--- /dev/null
+++ b/hw8/10-14-psi.png
Binary files differ
diff --git a/hw8/10-14.jl b/hw8/10-14.jl
index 27d1b5c..8a6307a 100644
--- a/hw8/10-14.jl
+++ b/hw8/10-14.jl
@@ -52,9 +52,12 @@ plot(prob(psi0))
# integrate forward in time
tf = 1.0
-dt = 0.1
+dt = 0.0007
tspan = (0.0, tf)
+println("dx = ", dx)
+println("dt = ", dt)
+
function timeEvolve(psi0, tf, dt) # second order Runge-Kutta algorithm
psi = psi0
for t in range(0, stop = tf, step = dt)
@@ -64,19 +67,56 @@ function timeEvolve(psi0, tf, dt) # second order Runge-Kutta algorithm
return psi
end
-# tendency(psi, dx, t) = derivative(psi, dx) # use ODE solver
-# problem = ODEProblem(tendency, psi0, tspan, dx) # specify ODE
-# sol = solve(problem, Tsit5(), reltol = 1e-12, abstol = 1e-12) # solve using Tsit5 algorithm to specified accuracy
+# get energy of psi
+function energy(psi, dx)
+ e_complex = dot(psi, H(psi, dx))
+ return real(e_complex)
+end
# compare initial and final wavefunction probabilities
-psi = timeEvolve(psi0, tf, dt)
-# psi = sol[:, end]
-times = sol.t
-
+psi_1 = timeEvolve(psi0, tf, dt)
+psi_2 = timeEvolve(psi0, tf, 0.00088)
+psi_3 = timeEvolve(psi0, tf, 0.00089)
+psi_4 = timeEvolve(psi0, tf, 0.0009)
# check that normalization hasn't deviated too far from 1.0
-println("norm = ", normalization(psi, dx))
-
-plot([prob(psi0), prob(psi)])
-savefig("10-14.png")
-
-
+println("norm euler dt=.0007 ->", normalization(psi_1, dx))
+println("norm euler dt=.00088 ->", normalization(psi_2, dx))
+println("norm euler dt=.00089 -> ", normalization(psi_3, dx))
+println("norm euler dt=.0009 -> ", normalization(psi_4, dx))
+
+
+tendency(psi, dx, t) = derivative(psi, dx) # use ODE solver
+problem = ODEProblem(tendency, psi0, tspan, dx) # specify ODE
+sol = solve(problem, Tsit5(), reltol = 1e-13, abstol = 1e-13) # solve using Tsit5 algorithm to specified accuracy
+psi_5 = sol[:, end]
+times_2 = sol.t
+println("norm ode :", normalization(psi_5, dx))
+
+# cluclate the energy at each timestep
+# energies_over_time = [energy(sol[:, i], dx) for i in 1:length(times_2)]
+# plot(times_2, energies_over_time, title = "Energy of Wave Packet over Time", xlabel = "t", ylabel = "E", lw = 1.5, ylim = (85, 90), legend = false)
+# savefig("hw8/10-14-E.png")
+
+# make an animation of the wave packet
+# anim = @animate for i in 1:length(times_2)
+# plot(x, prob(sol[:, i]), title = "Propagation of Wave Packet", xlabel = "x", ylabel = "|ψ(x)|²", lw = 1.5, ylim = (0, 1), label = "t = $(round(times_2[i], digits = 3))", legend = :topright)
+# end
+# mp4(anim, "hw8/10-14-psi.mp4", fps = 75)
+
+# plot([prob(psi0), prob(psi_1), prob(psi_2)], label = ["Initial" "Final (Euler dt = $dt) @ t=$tf" "Final (ODE abserr = 10^(-12)) @ t=$tf"], lw = 1.5, title = "Propagation of Wave Packet", xlabel = "x", ylabel = "|ψ(x)|²")
+# plot(
+# [prob(psi0), prob(psi_1), prob(psi_2), prob(psi_3), prob(psi_4)],
+# label = ["Initial" "Final (Euler dt = $dt) @ t=$tf" "Final (Euler dt = 0.00088) @ t=$tf" "Final (Euler dt = 0.00089) @ t=$tf" "Final (ODE abserr = 10^(-12)) @ t=$tf"],
+# lw = 1.5,
+# title = "Errors on Propagation of Wave Packet k_0 = 1000.0",
+# xlabel = "x",
+# )
+plot(
+ [prob(psi0), prob(psi_1), prob(psi_2), prob(psi_3), prob(psi_4), prob(psi_5)],
+ label = ["Initial" "Final (Euler dt = $dt) @ t=$tf" "Final (Euler dt = 0.00088) @ t=$tf" "Final (Euler dt = 0.00089) @ t=$tf" "Final (Euler dt = 0.0009) @ t=$tf" "Final (ODE abserr = 10^(-12)) @ t=$tf"],
+ lw = 1.5,
+ title = "Propagation of Wave Packet (k_0 = 1000.0)",
+ xlabel = "x",
+ ylabel = "|ψ(x)|²",
+)
+savefig("hw8/10-14-psi.png")
diff --git a/hw8/10-17-1.png b/hw8/10-17-1.png
new file mode 100644
index 0000000..5646660
--- /dev/null
+++ b/hw8/10-17-1.png
Binary files differ
diff --git a/hw8/10-17-2.05.png b/hw8/10-17-2.05.png
new file mode 100644
index 0000000..885a984
--- /dev/null
+++ b/hw8/10-17-2.05.png
Binary files differ
diff --git a/hw8/10-17-2.png b/hw8/10-17-2.png
new file mode 100644
index 0000000..7453918
--- /dev/null
+++ b/hw8/10-17-2.png
Binary files differ
diff --git a/hw8/10-17-3.05.png b/hw8/10-17-3.05.png
new file mode 100644
index 0000000..d18dc6d
--- /dev/null
+++ b/hw8/10-17-3.05.png
Binary files differ
diff --git a/hw8/10-17-3.png b/hw8/10-17-3.png
new file mode 100644
index 0000000..e140e1c
--- /dev/null
+++ b/hw8/10-17-3.png
Binary files differ
diff --git a/hw8/10-17-width-.05.png b/hw8/10-17-width-.05.png
new file mode 100644
index 0000000..61829cc
--- /dev/null
+++ b/hw8/10-17-width-.05.png
Binary files differ
diff --git a/hw8/10-17-width-.1.png b/hw8/10-17-width-.1.png
new file mode 100644
index 0000000..b2e77cb
--- /dev/null
+++ b/hw8/10-17-width-.1.png
Binary files differ
diff --git a/hw8/10-17-width-.2.png b/hw8/10-17-width-.2.png
new file mode 100644
index 0000000..ec49ca7
--- /dev/null
+++ b/hw8/10-17-width-.2.png
Binary files differ
diff --git a/hw8/10-17.jl b/hw8/10-17.jl
index 6dfff2b..d1d18b7 100644
--- a/hw8/10-17.jl
+++ b/hw8/10-17.jl
@@ -4,20 +4,29 @@ using Plots
using LinearAlgebra
using DifferentialEquations
+k_0 = 700.0
# useful functions:
-function H(psi, dx) # action of Hamiltonian on wavefunction
+function H(psi, dx, k = 0, width = 0.1) # action of Hamiltonian on wavefunction
Hpsi = zeros(ComplexF64, size(psi))
# -(1/2) * laplacian(psi) (m = hbar = 1)
Hpsi[2:end-1] = 0.5 * (2.0 * psi[2:end-1] - psi[3:end] - psi[1:end-2]) / (dx * dx)
+ # add the potential function V_0 = 2 * k_0^2 for specific region
+ for i in 1:length(psi)
+ x = i * dx
+ if x >= 30.0 && x <= 30.0 + width
+ Hpsi[i] = 2 * k^2 * psi[i]
+ end
+ end
+
# periodic boundary conditions
#Hpsi[1] = 0.5 * (2.0*psi[1] - psi[2] - psi[end])/(dx*dx)
#Hpsi[end] = 0.5 * (2.0*psi[end] - psi[end-1] - psi[1])/(dx*dx)
return Hpsi
end
-derivative(psi, dx) = -1.0im * H(psi, dx)
+derivative(psi, dx) = -1.0im * H(psi, dx, k_0)
function initialWavefunction(x::Vector{Float64}, x0 = 10.0, Delta = 1.0, k = 4.0)
Delta2 = Delta^2
@@ -32,15 +41,16 @@ end
prob(psi) = real(psi .* conj(psi))
# The actual simulation
-N = 400 # number of lattice points
-L = 20.0 # x runs from 0 to L
+N = 5000 # number of lattice points
+L = 40.0 # x runs from 0 to L
dx = L / N
x = range(0.0, L, N) |> collect # lattice along x-axis
-#println(x)
+println("dx = ", dx)
+
# initial wavefunction has position (x0), width (Delta), and momentum (k)
-psi0 = initialWavefunction(x, 10.0, 0.05, 700.0)
+psi0 = initialWavefunction(x, 10.0, 0.05, k_0)
# normalize wavefunction
n = normalization(psi0, dx)
@@ -51,31 +61,49 @@ println("norm = ", normalization(psi0, dx))
plot(prob(psi0))
# integrate forward in time
-tf = 1.0
+tf = 3.0
dt = 5e-7
tspan = (0.0, tf)
-function timeEvolve(psi0, tf, dt) # second order Runge-Kutta algorithm
- psi = psi0
- for t in range(0, stop = tf, step = dt)
- psiMid = psi + 0.5 * dt * derivative(psi, dx)
- psi = psi + dt * derivative(psiMid, dx)
- end
- return psi
-end
+# function timeEvolve(psi0, tf, dt) # second order Runge-Kutta algorithm
+# psi = psi0
+# for t in range(0, stop = tf, step = dt)
+# psiMid = psi + 0.5 * dt * derivative(psi, dx)
+# psi = psi + dt * derivative(psiMid, dx)
+
+# # println("t = ", t, " norm = ", real(normalization(psi, dx)))
+
+# if real(normalization(psi, dx)) < 0.999 || real(normalization(psi, dx)) > 1.010
+# println("dt = ", dt, " t = ", t, " norm = ", normalization(psi, dx))
+# println("Normalization deviated too far from 1.0")
+# break
+# end
+# end
+# return psi
+# end
tendency(psi, dx, t) = derivative(psi, dx) # use ODE solver
problem = ODEProblem(tendency, psi0, tspan, dx) # specify ODE
-sol = solve(problem, Tsit5(), reltol = 1e-12, abstol = 1e-12) # solve using Tsit5 algorithm to specified accuracy
+sol = solve(problem, Tsit5(), reltol = 1e-14, abstol = 1e-14) # solve using Tsit5 algorithm to specified accuracy
# compare initial and final wavefunction probabilities
-#psi = timeEvolve(psi0, tf, dt)
+# psi = timeEvolve(psi0, tf, dt)
psi = sol[:, end]
times = sol.t
# check that normalization hasn't deviated too far from 1.0
println("norm = ", normalization(psi, dx))
-plot([prob(psi0), prob(psi)])
+plot(prob(psi0))
+savefig("10-17-1.png")
+# plot a vertical line where the barrier is
+# barrier_on_lattice = 6.5 / dx
+barrier_on_lattice = 30.0 / dx
+plot(prob(psi), label = "final (t=$tf)", xlabel = "x", ylabel = "|ψ|^2", title = "Initial and final probability densities k_0=$k_0", lw = 1.5)
+plot!([barrier_on_lattice, barrier_on_lattice], [0.0, 0.3], color = :red, label = "barrier (width .2)", lw = 1.5, linestyle = :dash)
+savefig("10-17-width-.1.png")
+# plot([prob(psi0), prob(psi)], label = ["initial" "final (t=$tf)"], xlabel = "x", ylabel = "probability density", title = "Initial and final probability densities k_0=$k_0", lw = 1.5)
+# plot!([barrier_on_lattice, barrier_on_lattice], [0.0, 2.0], color = :red, label = "barrier (width .2)", lw = 1.5, linestyle = :dash)
+# savefig("10-17-width-.2.png")
diff --git a/hw8/10-3-long.png b/hw8/10-3-long.png
new file mode 100644
index 0000000..8d782a4
--- /dev/null
+++ b/hw8/10-3-long.png
Binary files differ
diff --git a/hw8/10-3.jl b/hw8/10-3.jl
index 8616a69..2f4a690 100644
--- a/hw8/10-3.jl
+++ b/hw8/10-3.jl
@@ -60,16 +60,43 @@ function map_n_to_energies(n)
return e
end
-n_max = 18
-n_to_e = [map_n_to_energies(n) for n in 1:n_max]
+n_s = collect(0:1:18)
+n_to_e = [map_n_to_energies(n) for n in n_s]
# plot e[0] for all N
-eList = zeros(0)
-for i in 1:n_max
- push!(eList, n_to_e[i][1])
+ground_state = []
+excited_1 = []
+excited_2 = []
+excited_3 = []
+for i in 1:length(n_to_e)
+ push!(ground_state, n_to_e[i][1])
+ push!(excited_1, n_to_e[i][2])
+ push!(excited_2, n_to_e[i][3])
+ push!(excited_3, n_to_e[i][4])
end
-plot(eList)
+plot(ground_state, label = "groud state energy for n", xlabel = "n (level)", ylabel = "energy", title = "excited energy levels for V(n) = abs(x)^n", marker = :circle)
+plot!(excited_1, label = "1st excited state", marker = :circle)
+plot!(excited_2, label = "2nd excited state", marker = :circle)
+plot!(excited_3, label = "3rd excited state", marker = :circle)
+
+# plot the energies for an inifinite square well as a horizontial line
+# function excited_state_to_energy_inf_square_well(n)
+# return n^2 * pi^2 / 2
+# end
+
+# ground_state_inf_square_well = [excited_state_to_energy_inf_square_well(1) for i in 1:length(n_s)]
+# excited_1_inf_square_well = [excited_state_to_energy_inf_square_well(2) for i in 1:length(n_s)]
+# excited_2_inf_square_well = [excited_state_to_energy_inf_square_well(3) for i in 1:length(n_s)]
+# excited_3_inf_square_well = [excited_state_to_energy_inf_square_well(4) for i in 1:length(n_s)]
+
+# plot!(ground_state_inf_square_well, label = "ground state energy for infinite square well")
+# plot!(excited_1_inf_square_well, label = "1st excited state for infinite square well")
+# plot!(excited_2_inf_square_well, label = "2nd excited state for infinite square well")
+# plot!(excited_3_inf_square_well, label = "3rd excited state for infinite square well")
+
+
+savefig("hw8/10-3.png")
# gs(x) = exp(-0.5 * x^2) # Gaussian that is exact ground state of SHO
diff --git a/hw8/10-3.png b/hw8/10-3.png
new file mode 100644
index 0000000..23c15a9
--- /dev/null
+++ b/hw8/10-3.png
Binary files differ
diff --git a/hw8/TimeDependentSchrodingerEquation.jl b/hw8/TimeDependentSchrodingerEquation.jl
index dacbced..1d4f315 100644
--- a/hw8/TimeDependentSchrodingerEquation.jl
+++ b/hw8/TimeDependentSchrodingerEquation.jl
@@ -7,26 +7,26 @@ using DifferentialEquations
# useful functions:
function H(psi, dx) # action of Hamiltonian on wavefunction
- Hpsi = zeros(ComplexF64, size(psi))
- # -(1/2) * laplacian(psi) (m = hbar = 1)
- Hpsi[2:end-1] = 0.5 * (2.0*psi[2:end-1] - psi[3:end] - psi[1:end-2])/(dx*dx)
-
- # periodic boundary conditions
- #Hpsi[1] = 0.5 * (2.0*psi[1] - psi[2] - psi[end])/(dx*dx)
- #Hpsi[end] = 0.5 * (2.0*psi[end] - psi[end-1] - psi[1])/(dx*dx)
- return Hpsi
+ Hpsi = zeros(ComplexF64, size(psi))
+ # -(1/2) * laplacian(psi) (m = hbar = 1)
+ Hpsi[2:end-1] = 0.5 * (2.0 * psi[2:end-1] - psi[3:end] - psi[1:end-2]) / (dx * dx)
+
+ # periodic boundary conditions
+ #Hpsi[1] = 0.5 * (2.0*psi[1] - psi[2] - psi[end])/(dx*dx)
+ #Hpsi[end] = 0.5 * (2.0*psi[end] - psi[end-1] - psi[1])/(dx*dx)
+ return Hpsi
end
derivative(psi, dx) = -1.0im * H(psi, dx)
function initialWavefunction(x::Vector{Float64}, x0 = 10.0, Delta = 1.0, k = 4.0)
- Delta2 = Delta^2
- return exp.(- (x .- x0).^2 / Delta2 ) .* exp.(1.0im * k * x)
+ Delta2 = Delta^2
+ return exp.(-(x .- x0) .^ 2 / Delta2) .* exp.(1.0im * k * x)
end
function normalization(psi, dx) # normalization of wavefunction
- n2 = dot(psi, psi) * dx
- return sqrt(n2)
+ n2 = dot(psi, psi) * dx
+ return sqrt(n2)
end
prob(psi) = real(psi .* conj(psi))
@@ -56,17 +56,17 @@ dt = 0.0001
tspan = (0.0, tf)
function timeEvolve(psi0, tf, dt) # second order Runge-Kutta algorithm
- psi = psi0
- for t in range(0, stop=tf, step=dt)
- psiMid = psi + 0.5 * dt * derivative(psi, dx)
- psi = psi + dt * derivative(psiMid, dx)
- end
- return psi
+ psi = psi0
+ for t in range(0, stop = tf, step = dt)
+ psiMid = psi + 0.5 * dt * derivative(psi, dx)
+ psi = psi + dt * derivative(psiMid, dx)
+ end
+ return psi
end
tendency(psi, dx, t) = derivative(psi, dx) # use ODE solver
problem = ODEProblem(tendency, psi0, tspan, dx) # specify ODE
-sol = solve(problem, Tsit5(), reltol=1e-12, abstol=1e-12) # solve using Tsit5 algorithm to specified accuracy
+sol = solve(problem, Tsit5(), reltol = 1e-12, abstol = 1e-12) # solve using Tsit5 algorithm to specified accuracy
# compare initial and final wavefunction probabilities
#psi = timeEvolve(psi0, tf, dt)
diff --git a/hw9/12-11-all.png b/hw9/12-11-all.png
new file mode 100644
index 0000000..ac5589d
--- /dev/null
+++ b/hw9/12-11-all.png
Binary files differ
diff --git a/hw9/12-11-all.svg b/hw9/12-11-all.svg
new file mode 100644
index 0000000..c6bc3c6
--- /dev/null
+++ b/hw9/12-11-all.svg
@@ -0,0 +1,131 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="600" height="400" viewBox="0 0 2400 1600">
+<defs>
+ <clipPath id="clip180">
+ <rect x="0" y="0" width="2400" height="1600"></rect>
+ </clipPath>
+</defs>
+<path clip-path="url(#clip180)" d="M0 1600 L2400 1600 L2400 8.88178e-14 L0 8.88178e-14 Z" fill="#ffffff" fill-rule="evenodd" fill-opacity="1"></path>
+<defs>
+ <clipPath id="clip181">
+ <rect x="480" y="0" width="1681" height="1600"></rect>
+ </clipPath>
+</defs>
+<path clip-path="url(#clip180)" d="M249.542 1423.18 L2352.76 1423.18 L2352.76 123.472 L249.542 123.472 Z" fill="#ffffff" fill-rule="evenodd" fill-opacity="1"></path>
+<defs>
+ <clipPath id="clip182">
+ <rect x="249" y="123" width="2104" height="1301"></rect>
+ </clipPath>
+</defs>
+<polyline clip-path="url(#clip182)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; stroke-opacity:0.1; fill:none" points="529.53,1423.18 529.53,123.472 "></polyline>
+<polyline clip-path="url(#clip182)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; stroke-opacity:0.1; fill:none" points="970.455,1423.18 970.455,123.472 "></polyline>
+<polyline clip-path="url(#clip182)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; stroke-opacity:0.1; fill:none" points="1411.38,1423.18 1411.38,123.472 "></polyline>
+<polyline clip-path="url(#clip182)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; stroke-opacity:0.1; fill:none" points="1852.31,1423.18 1852.31,123.472 "></polyline>
+<polyline clip-path="url(#clip182)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; stroke-opacity:0.1; fill:none" points="2293.23,1423.18 2293.23,123.472 "></polyline>
+<polyline clip-path="url(#clip180)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="249.542,1423.18 2352.76,1423.18 "></polyline>
+<polyline clip-path="url(#clip180)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="529.53,1423.18 529.53,1404.28 "></polyline>
+<polyline clip-path="url(#clip180)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="970.455,1423.18 970.455,1404.28 "></polyline>
+<polyline clip-path="url(#clip180)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="1411.38,1423.18 1411.38,1404.28 "></polyline>
+<polyline clip-path="url(#clip180)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="1852.31,1423.18 1852.31,1404.28 "></polyline>
+<polyline clip-path="url(#clip180)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="2293.23,1423.18 2293.23,1404.28 "></polyline>
+<path clip-path="url(#clip180)" d="M507.713 1454.1 Q504.102 1454.1 502.273 1457.66 Q500.467 1461.2 500.467 1468.33 Q500.467 1475.44 502.273 1479.01 Q504.102 1482.55 507.713 1482.55 Q511.347 1482.55 513.152 1479.01 Q514.981 1475.44 514.981 1468.33 Q514.981 1461.2 513.152 1457.66 Q511.347 1454.1 507.713 1454.1 M507.713 1450.39 Q513.523 1450.39 516.578 1455 Q519.657 1459.58 519.657 1468.33 Q519.657 1477.06 516.578 1481.67 Q513.523 1486.25 507.713 1486.25 Q501.902 1486.25 498.824 1481.67 Q495.768 1477.06 495.768 1468.33 Q495.768 1459.58 498.824 1455 Q501.902 1450.39 507.713 1450.39 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M527.875 1479.7 L532.759 1479.7 L532.759 1485.58 L527.875 1485.58 L527.875 1479.7 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M546.972 1481.64 L563.291 1481.64 L563.291 1485.58 L541.347 1485.58 L541.347 1481.64 Q544.009 1478.89 548.592 1474.26 Q553.198 1469.61 554.379 1468.27 Q556.624 1465.74 557.504 1464.01 Q558.407 1462.25 558.407 1460.56 Q558.407 1457.8 556.462 1456.07 Q554.541 1454.33 551.439 1454.33 Q549.24 1454.33 546.786 1455.09 Q544.356 1455.86 541.578 1457.41 L541.578 1452.69 Q544.402 1451.55 546.856 1450.97 Q549.31 1450.39 551.347 1450.39 Q556.717 1450.39 559.911 1453.08 Q563.106 1455.77 563.106 1460.26 Q563.106 1462.39 562.296 1464.31 Q561.509 1466.2 559.402 1468.8 Q558.823 1469.47 555.722 1472.69 Q552.62 1475.88 546.972 1481.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M947.596 1454.1 Q943.985 1454.1 942.157 1457.66 Q940.351 1461.2 940.351 1468.33 Q940.351 1475.44 942.157 1479.01 Q943.985 1482.55 947.596 1482.55 Q951.231 1482.55 953.036 1479.01 Q954.865 1475.44 954.865 1468.33 Q954.865 1461.2 953.036 1457.66 Q951.231 1454.1 947.596 1454.1 M947.596 1450.39 Q953.406 1450.39 956.462 1455 Q959.541 1459.58 959.541 1468.33 Q959.541 1477.06 956.462 1481.67 Q953.406 1486.25 947.596 1486.25 Q941.786 1486.25 938.707 1481.67 Q935.652 1477.06 935.652 1468.33 Q935.652 1459.58 938.707 1455 Q941.786 1450.39 947.596 1450.39 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M967.758 1479.7 L972.642 1479.7 L972.642 1485.58 L967.758 1485.58 L967.758 1479.7 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M995.675 1455.09 L983.869 1473.54 L995.675 1473.54 L995.675 1455.09 M994.448 1451.02 L1000.33 1451.02 L1000.33 1473.54 L1005.26 1473.54 L1005.26 1477.43 L1000.33 1477.43 L1000.33 1485.58 L995.675 1485.58 L995.675 1477.43 L980.073 1477.43 L980.073 1472.92 L994.448 1451.02 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1388.68 1454.1 Q1385.07 1454.1 1383.24 1457.66 Q1381.44 1461.2 1381.44 1468.33 Q1381.44 1475.44 1383.24 1479.01 Q1385.07 1482.55 1388.68 1482.55 Q1392.32 1482.55 1394.12 1479.01 Q1395.95 1475.44 1395.95 1468.33 Q1395.95 1461.2 1394.12 1457.66 Q1392.32 1454.1 1388.68 1454.1 M1388.68 1450.39 Q1394.49 1450.39 1397.55 1455 Q1400.63 1459.58 1400.63 1468.33 Q1400.63 1477.06 1397.55 1481.67 Q1394.49 1486.25 1388.68 1486.25 Q1382.87 1486.25 1379.79 1481.67 Q1376.74 1477.06 1376.74 1468.33 Q1376.74 1459.58 1379.79 1455 Q1382.87 1450.39 1388.68 1450.39 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1408.85 1479.7 L1413.73 1479.7 L1413.73 1485.58 L1408.85 1485.58 L1408.85 1479.7 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1434.49 1466.44 Q1431.35 1466.44 1429.49 1468.59 Q1427.66 1470.74 1427.66 1474.49 Q1427.66 1478.22 1429.49 1480.39 Q1431.35 1482.55 1434.49 1482.55 Q1437.64 1482.55 1439.47 1480.39 Q1441.32 1478.22 1441.32 1474.49 Q1441.32 1470.74 1439.47 1468.59 Q1437.64 1466.44 1434.49 1466.44 M1443.78 1451.78 L1443.78 1456.04 Q1442.02 1455.21 1440.21 1454.77 Q1438.43 1454.33 1436.67 1454.33 Q1432.04 1454.33 1429.59 1457.45 Q1427.16 1460.58 1426.81 1466.9 Q1428.17 1464.89 1430.23 1463.82 Q1432.29 1462.73 1434.77 1462.73 Q1439.98 1462.73 1442.99 1465.9 Q1446.02 1469.05 1446.02 1474.49 Q1446.02 1479.82 1442.87 1483.03 Q1439.73 1486.25 1434.49 1486.25 Q1428.5 1486.25 1425.33 1481.67 Q1422.16 1477.06 1422.16 1468.33 Q1422.16 1460.14 1426.04 1455.28 Q1429.93 1450.39 1436.48 1450.39 Q1438.24 1450.39 1440.03 1450.74 Q1441.83 1451.09 1443.78 1451.78 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1829.74 1454.1 Q1826.13 1454.1 1824.3 1457.66 Q1822.49 1461.2 1822.49 1468.33 Q1822.49 1475.44 1824.3 1479.01 Q1826.13 1482.55 1829.74 1482.55 Q1833.37 1482.55 1835.18 1479.01 Q1837 1475.44 1837 1468.33 Q1837 1461.2 1835.18 1457.66 Q1833.37 1454.1 1829.74 1454.1 M1829.74 1450.39 Q1835.55 1450.39 1838.6 1455 Q1841.68 1459.58 1841.68 1468.33 Q1841.68 1477.06 1838.6 1481.67 Q1835.55 1486.25 1829.74 1486.25 Q1823.93 1486.25 1820.85 1481.67 Q1817.79 1477.06 1817.79 1468.33 Q1817.79 1459.58 1820.85 1455 Q1823.93 1450.39 1829.74 1450.39 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1849.9 1479.7 L1854.78 1479.7 L1854.78 1485.58 L1849.9 1485.58 L1849.9 1479.7 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1874.97 1469.17 Q1871.63 1469.17 1869.71 1470.95 Q1867.81 1472.73 1867.81 1475.86 Q1867.81 1478.98 1869.71 1480.77 Q1871.63 1482.55 1874.97 1482.55 Q1878.3 1482.55 1880.22 1480.77 Q1882.14 1478.96 1882.14 1475.86 Q1882.14 1472.73 1880.22 1470.95 Q1878.32 1469.17 1874.97 1469.17 M1870.29 1467.18 Q1867.28 1466.44 1865.59 1464.38 Q1863.93 1462.32 1863.93 1459.35 Q1863.93 1455.21 1866.87 1452.8 Q1869.83 1450.39 1874.97 1450.39 Q1880.13 1450.39 1883.07 1452.8 Q1886.01 1455.21 1886.01 1459.35 Q1886.01 1462.32 1884.32 1464.38 Q1882.65 1466.44 1879.67 1467.18 Q1883.05 1467.96 1884.92 1470.26 Q1886.82 1472.55 1886.82 1475.86 Q1886.82 1480.88 1883.74 1483.57 Q1880.69 1486.25 1874.97 1486.25 Q1869.25 1486.25 1866.17 1483.57 Q1863.12 1480.88 1863.12 1475.86 Q1863.12 1472.55 1865.01 1470.26 Q1866.91 1467.96 1870.29 1467.18 M1868.58 1459.79 Q1868.58 1462.48 1870.25 1463.98 Q1871.94 1465.49 1874.97 1465.49 Q1877.98 1465.49 1879.67 1463.98 Q1881.38 1462.48 1881.38 1459.79 Q1881.38 1457.11 1879.67 1455.6 Q1877.98 1454.1 1874.97 1454.1 Q1871.94 1454.1 1870.25 1455.6 Q1868.58 1457.11 1868.58 1459.79 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M2260.38 1481.64 L2268.02 1481.64 L2268.02 1455.28 L2259.71 1456.95 L2259.71 1452.69 L2267.98 1451.02 L2272.65 1451.02 L2272.65 1481.64 L2280.29 1481.64 L2280.29 1485.58 L2260.38 1485.58 L2260.38 1481.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M2289.74 1479.7 L2294.62 1479.7 L2294.62 1485.58 L2289.74 1485.58 L2289.74 1479.7 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M2314.8 1454.1 Q2311.19 1454.1 2309.37 1457.66 Q2307.56 1461.2 2307.56 1468.33 Q2307.56 1475.44 2309.37 1479.01 Q2311.19 1482.55 2314.8 1482.55 Q2318.44 1482.55 2320.24 1479.01 Q2322.07 1475.44 2322.07 1468.33 Q2322.07 1461.2 2320.24 1457.66 Q2318.44 1454.1 2314.8 1454.1 M2314.8 1450.39 Q2320.62 1450.39 2323.67 1455 Q2326.75 1459.58 2326.75 1468.33 Q2326.75 1477.06 2323.67 1481.67 Q2320.62 1486.25 2314.8 1486.25 Q2308.99 1486.25 2305.92 1481.67 Q2302.86 1477.06 2302.86 1468.33 Q2302.86 1459.58 2305.92 1455 Q2308.99 1450.39 2314.8 1450.39 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1174.98 1525.81 L1174.98 1562.76 L1182.75 1562.76 Q1192.58 1562.76 1197.13 1558.3 Q1201.72 1553.85 1201.72 1544.24 Q1201.72 1534.69 1197.13 1530.26 Q1192.58 1525.81 1182.75 1525.81 L1174.98 1525.81 M1168.55 1520.52 L1181.76 1520.52 Q1195.57 1520.52 1202.03 1526.28 Q1208.5 1532.01 1208.5 1544.24 Q1208.5 1556.52 1202 1562.28 Q1195.51 1568.04 1181.76 1568.04 L1168.55 1568.04 L1168.55 1520.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1234.69 1550.12 Q1227.59 1550.12 1224.86 1551.75 Q1222.12 1553.37 1222.12 1557.29 Q1222.12 1560.4 1224.16 1562.25 Q1226.22 1564.07 1229.76 1564.07 Q1234.63 1564.07 1237.56 1560.63 Q1240.52 1557.16 1240.52 1551.43 L1240.52 1550.12 L1234.69 1550.12 M1246.37 1547.71 L1246.37 1568.04 L1240.52 1568.04 L1240.52 1562.63 Q1238.51 1565.88 1235.52 1567.44 Q1232.53 1568.97 1228.2 1568.97 Q1222.72 1568.97 1219.48 1565.91 Q1216.26 1562.82 1216.26 1557.67 Q1216.26 1551.65 1220.27 1548.6 Q1224.31 1545.54 1232.3 1545.54 L1240.52 1545.54 L1240.52 1544.97 Q1240.52 1540.93 1237.84 1538.73 Q1235.2 1536.5 1230.39 1536.5 Q1227.34 1536.5 1224.44 1537.23 Q1221.55 1537.97 1218.87 1539.43 L1218.87 1534.02 Q1222.09 1532.78 1225.11 1532.17 Q1228.13 1531.54 1231 1531.54 Q1238.73 1531.54 1242.55 1535.55 Q1246.37 1539.56 1246.37 1547.71 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1286.19 1539.24 Q1288.39 1535.29 1291.44 1533.41 Q1294.5 1531.54 1298.63 1531.54 Q1304.2 1531.54 1307.23 1535.45 Q1310.25 1539.33 1310.25 1546.53 L1310.25 1568.04 L1304.36 1568.04 L1304.36 1546.72 Q1304.36 1541.59 1302.55 1539.11 Q1300.74 1536.63 1297.01 1536.63 Q1292.46 1536.63 1289.82 1539.65 Q1287.18 1542.68 1287.18 1547.9 L1287.18 1568.04 L1281.29 1568.04 L1281.29 1546.72 Q1281.29 1541.56 1279.47 1539.11 Q1277.66 1536.63 1273.87 1536.63 Q1269.38 1536.63 1266.74 1539.68 Q1264.1 1542.71 1264.1 1547.9 L1264.1 1568.04 L1258.21 1568.04 L1258.21 1532.4 L1264.1 1532.4 L1264.1 1537.93 Q1266.11 1534.66 1268.91 1533.1 Q1271.71 1531.54 1275.56 1531.54 Q1279.44 1531.54 1282.15 1533.51 Q1284.88 1535.48 1286.19 1539.24 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1338.13 1550.12 Q1331.04 1550.12 1328.3 1551.75 Q1325.56 1553.37 1325.56 1557.29 Q1325.56 1560.4 1327.6 1562.25 Q1329.67 1564.07 1333.2 1564.07 Q1338.07 1564.07 1341 1560.63 Q1343.96 1557.16 1343.96 1551.43 L1343.96 1550.12 L1338.13 1550.12 M1349.81 1547.71 L1349.81 1568.04 L1343.96 1568.04 L1343.96 1562.63 Q1341.95 1565.88 1338.96 1567.44 Q1335.97 1568.97 1331.64 1568.97 Q1326.17 1568.97 1322.92 1565.91 Q1319.71 1562.82 1319.71 1557.67 Q1319.71 1551.65 1323.72 1548.6 Q1327.76 1545.54 1335.75 1545.54 L1343.96 1545.54 L1343.96 1544.97 Q1343.96 1540.93 1341.28 1538.73 Q1338.64 1536.5 1333.84 1536.5 Q1330.78 1536.5 1327.88 1537.23 Q1324.99 1537.97 1322.31 1539.43 L1322.31 1534.02 Q1325.53 1532.78 1328.55 1532.17 Q1331.58 1531.54 1334.44 1531.54 Q1342.18 1531.54 1346 1535.55 Q1349.81 1539.56 1349.81 1547.71 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1385.34 1549.81 Q1385.34 1543.44 1382.69 1539.94 Q1380.08 1536.44 1375.34 1536.44 Q1370.63 1536.44 1367.99 1539.94 Q1365.38 1543.44 1365.38 1549.81 Q1365.38 1556.14 1367.99 1559.64 Q1370.63 1563.14 1375.34 1563.14 Q1380.08 1563.14 1382.69 1559.64 Q1385.34 1556.14 1385.34 1549.81 M1391.19 1563.62 Q1391.19 1572.72 1387.15 1577.15 Q1383.11 1581.6 1374.77 1581.6 Q1371.68 1581.6 1368.94 1581.13 Q1366.21 1580.68 1363.63 1579.72 L1363.63 1574.03 Q1366.21 1575.43 1368.72 1576.1 Q1371.24 1576.76 1373.85 1576.76 Q1379.61 1576.76 1382.47 1573.74 Q1385.34 1570.75 1385.34 1564.67 L1385.34 1561.77 Q1383.52 1564.92 1380.69 1566.48 Q1377.86 1568.04 1373.91 1568.04 Q1367.35 1568.04 1363.34 1563.05 Q1359.33 1558.05 1359.33 1549.81 Q1359.33 1541.53 1363.34 1536.53 Q1367.35 1531.54 1373.91 1531.54 Q1377.86 1531.54 1380.69 1533.1 Q1383.52 1534.66 1385.34 1537.81 L1385.34 1532.4 L1391.19 1532.4 L1391.19 1563.62 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1433.75 1548.76 L1433.75 1551.62 L1406.82 1551.62 Q1407.2 1557.67 1410.45 1560.85 Q1413.73 1564 1419.55 1564 Q1422.92 1564 1426.08 1563.17 Q1429.26 1562.35 1432.38 1560.69 L1432.38 1566.23 Q1429.23 1567.57 1425.92 1568.27 Q1422.61 1568.97 1419.2 1568.97 Q1410.67 1568.97 1405.67 1564 Q1400.71 1559.04 1400.71 1550.57 Q1400.71 1541.82 1405.42 1536.69 Q1410.16 1531.54 1418.18 1531.54 Q1425.38 1531.54 1429.55 1536.18 Q1433.75 1540.8 1433.75 1548.76 M1427.89 1547.04 Q1427.83 1542.23 1425.18 1539.37 Q1422.57 1536.5 1418.25 1536.5 Q1413.34 1536.5 1410.38 1539.27 Q1407.46 1542.04 1407.01 1547.07 L1427.89 1547.04 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><polyline clip-path="url(#clip182)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; stroke-opacity:0.1; fill:none" points="249.542,1386.4 2352.76,1386.4 "></polyline>
+<polyline clip-path="url(#clip182)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; stroke-opacity:0.1; fill:none" points="249.542,1079.86 2352.76,1079.86 "></polyline>
+<polyline clip-path="url(#clip182)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; stroke-opacity:0.1; fill:none" points="249.542,773.326 2352.76,773.326 "></polyline>
+<polyline clip-path="url(#clip182)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; stroke-opacity:0.1; fill:none" points="249.542,466.791 2352.76,466.791 "></polyline>
+<polyline clip-path="url(#clip182)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:2; stroke-opacity:0.1; fill:none" points="249.542,160.256 2352.76,160.256 "></polyline>
+<polyline clip-path="url(#clip180)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="249.542,1423.18 249.542,123.472 "></polyline>
+<polyline clip-path="url(#clip180)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="249.542,1386.4 268.44,1386.4 "></polyline>
+<polyline clip-path="url(#clip180)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="249.542,1079.86 268.44,1079.86 "></polyline>
+<polyline clip-path="url(#clip180)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="249.542,773.326 268.44,773.326 "></polyline>
+<polyline clip-path="url(#clip180)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="249.542,466.791 268.44,466.791 "></polyline>
+<polyline clip-path="url(#clip180)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="249.542,160.256 268.44,160.256 "></polyline>
+<path clip-path="url(#clip180)" d="M126.205 1372.19 Q122.593 1372.19 120.765 1375.76 Q118.959 1379.3 118.959 1386.43 Q118.959 1393.54 120.765 1397.1 Q122.593 1400.64 126.205 1400.64 Q129.839 1400.64 131.644 1397.1 Q133.473 1393.54 133.473 1386.43 Q133.473 1379.3 131.644 1375.76 Q129.839 1372.19 126.205 1372.19 M126.205 1368.49 Q132.015 1368.49 135.07 1373.1 Q138.149 1377.68 138.149 1386.43 Q138.149 1395.16 135.07 1399.76 Q132.015 1404.35 126.205 1404.35 Q120.394 1404.35 117.316 1399.76 Q114.26 1395.16 114.26 1386.43 Q114.26 1377.68 117.316 1373.1 Q120.394 1368.49 126.205 1368.49 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M146.366 1397.8 L151.251 1397.8 L151.251 1403.68 L146.366 1403.68 L146.366 1397.8 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M171.436 1372.19 Q167.825 1372.19 165.996 1375.76 Q164.19 1379.3 164.19 1386.43 Q164.19 1393.54 165.996 1397.1 Q167.825 1400.64 171.436 1400.64 Q175.07 1400.64 176.876 1397.1 Q178.704 1393.54 178.704 1386.43 Q178.704 1379.3 176.876 1375.76 Q175.07 1372.19 171.436 1372.19 M171.436 1368.49 Q177.246 1368.49 180.301 1373.1 Q183.38 1377.68 183.38 1386.43 Q183.38 1395.16 180.301 1399.76 Q177.246 1404.35 171.436 1404.35 Q165.626 1404.35 162.547 1399.76 Q159.491 1395.16 159.491 1386.43 Q159.491 1377.68 162.547 1373.1 Q165.626 1368.49 171.436 1368.49 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M201.598 1372.19 Q197.987 1372.19 196.158 1375.76 Q194.352 1379.3 194.352 1386.43 Q194.352 1393.54 196.158 1397.1 Q197.987 1400.64 201.598 1400.64 Q205.232 1400.64 207.037 1397.1 Q208.866 1393.54 208.866 1386.43 Q208.866 1379.3 207.037 1375.76 Q205.232 1372.19 201.598 1372.19 M201.598 1368.49 Q207.408 1368.49 210.463 1373.1 Q213.542 1377.68 213.542 1386.43 Q213.542 1395.16 210.463 1399.76 Q207.408 1404.35 201.598 1404.35 Q195.787 1404.35 192.709 1399.76 Q189.653 1395.16 189.653 1386.43 Q189.653 1377.68 192.709 1373.1 Q195.787 1368.49 201.598 1368.49 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M127.2 1065.66 Q123.589 1065.66 121.76 1069.22 Q119.955 1072.77 119.955 1079.9 Q119.955 1087 121.76 1090.57 Q123.589 1094.11 127.2 1094.11 Q130.834 1094.11 132.64 1090.57 Q134.468 1087 134.468 1079.9 Q134.468 1072.77 132.64 1069.22 Q130.834 1065.66 127.2 1065.66 M127.2 1061.96 Q133.01 1061.96 136.066 1066.56 Q139.144 1071.15 139.144 1079.9 Q139.144 1088.62 136.066 1093.23 Q133.01 1097.81 127.2 1097.81 Q121.39 1097.81 118.311 1093.23 Q115.256 1088.62 115.256 1079.9 Q115.256 1071.15 118.311 1066.56 Q121.39 1061.96 127.2 1061.96 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M147.362 1091.26 L152.246 1091.26 L152.246 1097.14 L147.362 1097.14 L147.362 1091.26 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M166.459 1093.21 L182.778 1093.21 L182.778 1097.14 L160.834 1097.14 L160.834 1093.21 Q163.496 1090.45 168.079 1085.82 Q172.686 1081.17 173.866 1079.83 Q176.112 1077.3 176.991 1075.57 Q177.894 1073.81 177.894 1072.12 Q177.894 1069.36 175.95 1067.63 Q174.028 1065.89 170.927 1065.89 Q168.727 1065.89 166.274 1066.65 Q163.843 1067.42 161.065 1068.97 L161.065 1064.25 Q163.89 1063.11 166.343 1062.53 Q168.797 1061.96 170.834 1061.96 Q176.204 1061.96 179.399 1064.64 Q182.593 1067.33 182.593 1071.82 Q182.593 1073.95 181.783 1075.87 Q180.996 1077.77 178.889 1080.36 Q178.311 1081.03 175.209 1084.25 Q172.107 1087.44 166.459 1093.21 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M192.639 1062.58 L210.996 1062.58 L210.996 1066.52 L196.922 1066.52 L196.922 1074.99 Q197.94 1074.64 198.959 1074.48 Q199.977 1074.29 200.996 1074.29 Q206.783 1074.29 210.162 1077.47 Q213.542 1080.64 213.542 1086.05 Q213.542 1091.63 210.07 1094.73 Q206.598 1097.81 200.278 1097.81 Q198.102 1097.81 195.834 1097.44 Q193.588 1097.07 191.181 1096.33 L191.181 1091.63 Q193.264 1092.77 195.487 1093.32 Q197.709 1093.88 200.186 1093.88 Q204.19 1093.88 206.528 1091.77 Q208.866 1089.66 208.866 1086.05 Q208.866 1082.44 206.528 1080.34 Q204.19 1078.23 200.186 1078.23 Q198.311 1078.23 196.436 1078.65 Q194.584 1079.06 192.639 1079.94 L192.639 1062.58 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M126.205 759.125 Q122.593 759.125 120.765 762.689 Q118.959 766.231 118.959 773.361 Q118.959 780.467 120.765 784.032 Q122.593 787.574 126.205 787.574 Q129.839 787.574 131.644 784.032 Q133.473 780.467 133.473 773.361 Q133.473 766.231 131.644 762.689 Q129.839 759.125 126.205 759.125 M126.205 755.421 Q132.015 755.421 135.07 760.027 Q138.149 764.611 138.149 773.361 Q138.149 782.088 135.07 786.694 Q132.015 791.277 126.205 791.277 Q120.394 791.277 117.316 786.694 Q114.26 782.088 114.26 773.361 Q114.26 764.611 117.316 760.027 Q120.394 755.421 126.205 755.421 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M146.366 784.726 L151.251 784.726 L151.251 790.606 L146.366 790.606 L146.366 784.726 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M161.482 756.046 L179.839 756.046 L179.839 759.981 L165.765 759.981 L165.765 768.453 Q166.783 768.106 167.802 767.944 Q168.82 767.759 169.839 767.759 Q175.626 767.759 179.005 770.93 Q182.385 774.101 182.385 779.518 Q182.385 785.097 178.913 788.199 Q175.44 791.277 169.121 791.277 Q166.945 791.277 164.677 790.907 Q162.431 790.537 160.024 789.796 L160.024 785.097 Q162.107 786.231 164.329 786.787 Q166.552 787.342 169.028 787.342 Q173.033 787.342 175.371 785.236 Q177.709 783.129 177.709 779.518 Q177.709 775.907 175.371 773.801 Q173.033 771.694 169.028 771.694 Q167.153 771.694 165.278 772.111 Q163.427 772.527 161.482 773.407 L161.482 756.046 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M201.598 759.125 Q197.987 759.125 196.158 762.689 Q194.352 766.231 194.352 773.361 Q194.352 780.467 196.158 784.032 Q197.987 787.574 201.598 787.574 Q205.232 787.574 207.037 784.032 Q208.866 780.467 208.866 773.361 Q208.866 766.231 207.037 762.689 Q205.232 759.125 201.598 759.125 M201.598 755.421 Q207.408 755.421 210.463 760.027 Q213.542 764.611 213.542 773.361 Q213.542 782.088 210.463 786.694 Q207.408 791.277 201.598 791.277 Q195.787 791.277 192.709 786.694 Q189.653 782.088 189.653 773.361 Q189.653 764.611 192.709 760.027 Q195.787 755.421 201.598 755.421 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M127.2 452.59 Q123.589 452.59 121.76 456.155 Q119.955 459.696 119.955 466.826 Q119.955 473.932 121.76 477.497 Q123.589 481.039 127.2 481.039 Q130.834 481.039 132.64 477.497 Q134.468 473.932 134.468 466.826 Q134.468 459.696 132.64 456.155 Q130.834 452.59 127.2 452.59 M127.2 448.886 Q133.01 448.886 136.066 453.493 Q139.144 458.076 139.144 466.826 Q139.144 475.553 136.066 480.159 Q133.01 484.742 127.2 484.742 Q121.39 484.742 118.311 480.159 Q115.256 475.553 115.256 466.826 Q115.256 458.076 118.311 453.493 Q121.39 448.886 127.2 448.886 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M147.362 478.192 L152.246 478.192 L152.246 484.071 L147.362 484.071 L147.362 478.192 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M161.251 449.511 L183.473 449.511 L183.473 451.502 L170.927 484.071 L166.042 484.071 L177.848 453.446 L161.251 453.446 L161.251 449.511 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M192.639 449.511 L210.996 449.511 L210.996 453.446 L196.922 453.446 L196.922 461.918 Q197.94 461.571 198.959 461.409 Q199.977 461.224 200.996 461.224 Q206.783 461.224 210.162 464.395 Q213.542 467.567 213.542 472.983 Q213.542 478.562 210.07 481.664 Q206.598 484.742 200.278 484.742 Q198.102 484.742 195.834 484.372 Q193.588 484.002 191.181 483.261 L191.181 478.562 Q193.264 479.696 195.487 480.252 Q197.709 480.807 200.186 480.807 Q204.19 480.807 206.528 478.701 Q208.866 476.594 208.866 472.983 Q208.866 469.372 206.528 467.266 Q204.19 465.159 200.186 465.159 Q198.311 465.159 196.436 465.576 Q194.584 465.993 192.639 466.872 L192.639 449.511 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M117.015 173.601 L124.654 173.601 L124.654 147.236 L116.343 148.902 L116.343 144.643 L124.607 142.976 L129.283 142.976 L129.283 173.601 L136.922 173.601 L136.922 177.536 L117.015 177.536 L117.015 173.601 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M146.366 171.657 L151.251 171.657 L151.251 177.536 L146.366 177.536 L146.366 171.657 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M171.436 146.055 Q167.825 146.055 165.996 149.62 Q164.19 153.161 164.19 160.291 Q164.19 167.397 165.996 170.962 Q167.825 174.504 171.436 174.504 Q175.07 174.504 176.876 170.962 Q178.704 167.397 178.704 160.291 Q178.704 153.161 176.876 149.62 Q175.07 146.055 171.436 146.055 M171.436 142.351 Q177.246 142.351 180.301 146.958 Q183.38 151.541 183.38 160.291 Q183.38 169.018 180.301 173.624 Q177.246 178.208 171.436 178.208 Q165.626 178.208 162.547 173.624 Q159.491 169.018 159.491 160.291 Q159.491 151.541 162.547 146.958 Q165.626 142.351 171.436 142.351 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M201.598 146.055 Q197.987 146.055 196.158 149.62 Q194.352 153.161 194.352 160.291 Q194.352 167.397 196.158 170.962 Q197.987 174.504 201.598 174.504 Q205.232 174.504 207.037 170.962 Q208.866 167.397 208.866 160.291 Q208.866 153.161 207.037 149.62 Q205.232 146.055 201.598 146.055 M201.598 142.351 Q207.408 142.351 210.463 146.958 Q213.542 151.541 213.542 160.291 Q213.542 169.018 210.463 173.624 Q207.408 178.208 201.598 178.208 Q195.787 178.208 192.709 173.624 Q189.653 169.018 189.653 160.291 Q189.653 151.541 192.709 146.958 Q195.787 142.351 201.598 142.351 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M18.0438 946.616 L24.314 946.616 Q22.5634 950.277 21.704 953.523 Q20.8447 956.77 20.8447 959.793 Q20.8447 965.045 22.8817 967.91 Q24.9187 970.742 28.6745 970.742 Q31.8255 970.742 33.4488 968.865 Q35.0402 966.955 36.0269 961.671 L36.8226 957.788 Q38.1912 950.595 41.6605 947.189 Q45.098 943.752 50.8908 943.752 Q57.7976 943.752 61.3624 948.399 Q64.9272 953.014 64.9272 961.958 Q64.9272 965.332 64.1633 969.151 Q63.3994 972.939 61.9035 977.013 L55.2831 977.013 Q57.4793 973.098 58.5933 969.342 Q59.7073 965.586 59.7073 961.958 Q59.7073 956.451 57.543 953.46 Q55.3786 950.468 51.3682 950.468 Q47.8671 950.468 45.8937 952.632 Q43.9204 954.765 42.9337 959.666 L42.1698 963.581 Q40.7375 970.774 37.682 973.989 Q34.6264 977.204 29.1837 977.204 Q22.8817 977.204 19.2532 972.779 Q15.6248 968.323 15.6248 960.526 Q15.6248 957.184 16.2295 953.714 Q16.8343 950.245 18.0438 946.616 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M49.9359 934.585 L28.3562 934.585 L28.3562 928.729 L49.7131 928.729 Q54.7739 928.729 57.3202 926.755 Q59.8346 924.782 59.8346 920.835 Q59.8346 916.093 56.8109 913.356 Q53.7872 910.587 48.5673 910.587 L28.3562 910.587 L28.3562 904.73 L64.0042 904.73 L64.0042 910.587 L58.5296 910.587 Q61.7762 912.719 63.3676 915.552 Q64.9272 918.353 64.9272 922.077 Q64.9272 928.22 61.1078 931.402 Q57.2883 934.585 49.9359 934.585 M27.4968 919.849 L27.4968 919.849 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M29.7248 867.013 L35.1993 867.013 Q33.8307 869.496 33.1623 872.01 Q32.4621 874.493 32.4621 877.039 Q32.4621 882.737 36.0905 885.888 Q39.6872 889.039 46.212 889.039 Q52.7369 889.039 56.3653 885.888 Q59.9619 882.737 59.9619 877.039 Q59.9619 874.493 59.2935 872.01 Q58.5933 869.496 57.2247 867.013 L62.6355 867.013 Q63.7814 869.464 64.3543 872.106 Q64.9272 874.716 64.9272 877.676 Q64.9272 885.728 59.8664 890.471 Q54.8057 895.213 46.212 895.213 Q37.491 895.213 32.4939 890.439 Q27.4968 885.633 27.4968 877.294 Q27.4968 874.588 28.0697 872.01 Q28.6108 869.432 29.7248 867.013 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M29.7248 831.174 L35.1993 831.174 Q33.8307 833.657 33.1623 836.171 Q32.4621 838.654 32.4621 841.2 Q32.4621 846.898 36.0905 850.049 Q39.6872 853.2 46.212 853.2 Q52.7369 853.2 56.3653 850.049 Q59.9619 846.898 59.9619 841.2 Q59.9619 838.654 59.2935 836.171 Q58.5933 833.657 57.2247 831.174 L62.6355 831.174 Q63.7814 833.625 64.3543 836.267 Q64.9272 838.877 64.9272 841.837 Q64.9272 849.89 59.8664 854.632 Q54.8057 859.374 46.212 859.374 Q37.491 859.374 32.4939 854.6 Q27.4968 849.794 27.4968 841.455 Q27.4968 838.75 28.0697 836.171 Q28.6108 833.593 29.7248 831.174 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M44.7161 790.497 L47.5806 790.497 L47.5806 817.424 Q53.6281 817.042 56.8109 813.796 Q59.9619 810.518 59.9619 804.693 Q59.9619 801.319 59.1344 798.168 Q58.3069 794.985 56.6518 791.866 L62.1899 791.866 Q63.5267 795.017 64.227 798.327 Q64.9272 801.637 64.9272 805.043 Q64.9272 813.573 59.9619 818.57 Q54.9967 823.535 46.5303 823.535 Q37.7774 823.535 32.6531 818.825 Q27.4968 814.082 27.4968 806.062 Q27.4968 798.868 32.1438 794.699 Q36.7589 790.497 44.7161 790.497 M42.9973 796.354 Q38.1912 796.418 35.3266 799.059 Q32.4621 801.669 32.4621 805.998 Q32.4621 810.9 35.2312 813.86 Q38.0002 816.788 43.0292 817.233 L42.9973 796.354 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M29.4065 758.16 L34.9447 758.16 Q33.6716 760.642 33.035 763.316 Q32.3984 765.99 32.3984 768.854 Q32.3984 773.215 33.7352 775.411 Q35.072 777.575 37.7456 777.575 Q39.7826 777.575 40.9603 776.015 Q42.1061 774.456 43.1565 769.745 L43.6021 767.74 Q44.9389 761.502 47.3897 758.892 Q49.8086 756.25 54.1691 756.25 Q59.1344 756.25 62.0308 760.197 Q64.9272 764.112 64.9272 770.987 Q64.9272 773.851 64.3543 776.97 Q63.8132 780.058 62.6992 783.495 L56.6518 783.495 Q58.3387 780.249 59.198 777.098 Q60.0256 773.947 60.0256 770.859 Q60.0256 766.722 58.6251 764.494 Q57.1929 762.266 54.6147 762.266 Q52.2276 762.266 50.9545 763.889 Q49.6813 765.48 48.5037 770.923 L48.0262 772.96 Q46.8804 778.403 44.5251 780.822 Q42.138 783.241 38.0002 783.241 Q32.9713 783.241 30.2341 779.676 Q27.4968 776.111 27.4968 769.554 Q27.4968 766.308 27.9743 763.443 Q28.4517 760.579 29.4065 758.16 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M29.4065 724.199 L34.9447 724.199 Q33.6716 726.681 33.035 729.355 Q32.3984 732.028 32.3984 734.893 Q32.3984 739.254 33.7352 741.45 Q35.072 743.614 37.7456 743.614 Q39.7826 743.614 40.9603 742.054 Q42.1061 740.495 43.1565 735.784 L43.6021 733.779 Q44.9389 727.541 47.3897 724.931 Q49.8086 722.289 54.1691 722.289 Q59.1344 722.289 62.0308 726.236 Q64.9272 730.151 64.9272 737.026 Q64.9272 739.89 64.3543 743.009 Q63.8132 746.097 62.6992 749.534 L56.6518 749.534 Q58.3387 746.288 59.198 743.137 Q60.0256 739.986 60.0256 736.898 Q60.0256 732.761 58.6251 730.533 Q57.1929 728.305 54.6147 728.305 Q52.2276 728.305 50.9545 729.928 Q49.6813 731.519 48.5037 736.962 L48.0262 738.999 Q46.8804 744.442 44.5251 746.861 Q42.138 749.28 38.0002 749.28 Q32.9713 749.28 30.2341 745.715 Q27.4968 742.15 27.4968 735.593 Q27.4968 732.347 27.9743 729.482 Q28.4517 726.618 29.4065 724.199 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M33.8307 671.586 Q33.2578 672.573 33.0032 673.75 Q32.7167 674.896 32.7167 676.297 Q32.7167 681.262 35.9632 683.936 Q39.1779 686.577 45.2253 686.577 L64.0042 686.577 L64.0042 692.466 L28.3562 692.466 L28.3562 686.577 L33.8944 686.577 Q30.6479 684.731 29.0883 681.771 Q27.4968 678.811 27.4968 674.578 Q27.4968 673.973 27.5923 673.241 Q27.656 672.509 27.8151 671.618 L33.8307 671.586 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M46.0847 649.242 Q46.0847 656.34 47.7079 659.077 Q49.3312 661.815 53.2461 661.815 Q56.3653 661.815 58.2114 659.778 Q60.0256 657.709 60.0256 654.176 Q60.0256 649.306 56.5881 646.378 Q53.1188 643.418 47.3897 643.418 L46.0847 643.418 L46.0847 649.242 M43.6657 637.561 L64.0042 637.561 L64.0042 643.418 L58.5933 643.418 Q61.8398 645.423 63.3994 648.415 Q64.9272 651.407 64.9272 655.735 Q64.9272 661.21 61.8716 664.456 Q58.7843 667.671 53.6281 667.671 Q47.6125 667.671 44.5569 663.661 Q41.5014 659.619 41.5014 651.63 L41.5014 643.418 L40.9285 643.418 Q36.8862 643.418 34.6901 646.091 Q32.4621 648.733 32.4621 653.539 Q32.4621 656.595 33.1941 659.491 Q33.9262 662.388 35.3903 665.061 L29.9795 665.061 Q28.7381 661.847 28.1334 658.823 Q27.4968 655.799 27.4968 652.935 Q27.4968 645.2 31.5072 641.381 Q35.5176 637.561 43.6657 637.561 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M18.2347 619.706 L28.3562 619.706 L28.3562 607.643 L32.9077 607.643 L32.9077 619.706 L52.2594 619.706 Q56.6199 619.706 57.8613 618.528 Q59.1026 617.318 59.1026 613.658 L59.1026 607.643 L64.0042 607.643 L64.0042 613.658 Q64.0042 620.438 61.4897 623.016 Q58.9434 625.594 52.2594 625.594 L32.9077 625.594 L32.9077 629.891 L28.3562 629.891 L28.3562 625.594 L18.2347 625.594 L18.2347 619.706 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M44.7161 569.448 L47.5806 569.448 L47.5806 596.375 Q53.6281 595.993 56.8109 592.747 Q59.9619 589.468 59.9619 583.644 Q59.9619 580.27 59.1344 577.119 Q58.3069 573.936 56.6518 570.817 L62.1899 570.817 Q63.5267 573.968 64.227 577.278 Q64.9272 580.588 64.9272 583.994 Q64.9272 592.524 59.9619 597.521 Q54.9967 602.486 46.5303 602.486 Q37.7774 602.486 32.6531 597.776 Q27.4968 593.033 27.4968 585.012 Q27.4968 577.819 32.1438 573.65 Q36.7589 569.448 44.7161 569.448 M42.9973 575.305 Q38.1912 575.368 35.3266 578.01 Q32.4621 580.62 32.4621 584.949 Q32.4621 589.85 35.2312 592.81 Q38.0002 595.739 43.0292 596.184 L42.9973 575.305 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M495.039 12.096 L506.058 12.096 L532.875 62.6918 L532.875 12.096 L540.815 12.096 L540.815 72.576 L529.796 72.576 L502.979 21.9802 L502.979 72.576 L495.039 72.576 L495.039 12.096 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M557.099 12.096 L568.118 12.096 L594.935 62.6918 L594.935 12.096 L602.874 12.096 L602.874 72.576 L591.856 72.576 L565.039 21.9802 L565.039 72.576 L557.099 72.576 L557.099 12.096 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M674.13 28.5427 L674.13 35.5912 Q670.97 33.9709 667.567 33.1607 Q664.165 32.3505 660.519 32.3505 Q654.969 32.3505 652.174 34.0519 Q649.419 35.7533 649.419 39.156 Q649.419 41.7486 651.404 43.2475 Q653.389 44.7058 659.384 46.0426 L661.937 46.6097 Q669.876 48.3111 673.198 51.4303 Q676.56 54.509 676.56 60.0587 Q676.56 66.3781 671.537 70.0644 Q666.555 73.7508 657.805 73.7508 Q654.159 73.7508 650.189 73.0216 Q646.26 72.3329 641.885 70.9151 L641.885 63.2184 Q646.016 65.3654 650.027 66.4591 Q654.037 67.5124 657.967 67.5124 Q663.233 67.5124 666.068 65.73 Q668.904 63.9071 668.904 60.6258 Q668.904 57.5877 666.838 55.9673 Q664.813 54.3469 657.886 52.8481 L655.293 52.2405 Q648.366 50.7821 645.287 47.7845 Q642.209 44.7463 642.209 39.4801 Q642.209 33.0797 646.746 29.5959 Q651.283 26.1121 659.628 26.1121 Q663.759 26.1121 667.405 26.7198 Q671.051 27.3274 674.13 28.5427 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M687.66 54.671 L687.66 27.2059 L695.113 27.2059 L695.113 54.3874 Q695.113 60.8284 697.625 64.0691 Q700.137 67.2693 705.16 67.2693 Q711.196 67.2693 714.679 63.421 Q718.204 59.5726 718.204 52.9291 L718.204 27.2059 L725.657 27.2059 L725.657 72.576 L718.204 72.576 L718.204 65.6084 Q715.489 69.7404 711.884 71.7658 Q708.319 73.7508 703.58 73.7508 Q695.762 73.7508 691.711 68.8897 Q687.66 64.0286 687.66 54.671 M706.415 26.1121 L706.415 26.1121 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M773.66 28.9478 L773.66 35.9153 Q770.501 34.1734 767.301 33.3227 Q764.141 32.4315 760.9 32.4315 Q753.649 32.4315 749.639 37.0496 Q745.628 41.6271 745.628 49.9314 Q745.628 58.2358 749.639 62.8538 Q753.649 67.4314 760.9 67.4314 Q764.141 67.4314 767.301 66.5807 Q770.501 65.6895 773.66 63.9476 L773.66 70.8341 Q770.541 72.2924 767.179 73.0216 Q763.857 73.7508 760.09 73.7508 Q749.841 73.7508 743.805 67.3098 Q737.769 60.8689 737.769 49.9314 Q737.769 38.832 743.846 32.472 Q749.963 26.1121 760.576 26.1121 Q764.019 26.1121 767.301 26.8413 Q770.582 27.5299 773.66 28.9478 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M819.274 28.9478 L819.274 35.9153 Q816.114 34.1734 812.914 33.3227 Q809.754 32.4315 806.513 32.4315 Q799.262 32.4315 795.252 37.0496 Q791.241 41.6271 791.241 49.9314 Q791.241 58.2358 795.252 62.8538 Q799.262 67.4314 806.513 67.4314 Q809.754 67.4314 812.914 66.5807 Q816.114 65.6895 819.274 63.9476 L819.274 70.8341 Q816.154 72.2924 812.792 73.0216 Q809.47 73.7508 805.703 73.7508 Q795.454 73.7508 789.418 67.3098 Q783.383 60.8689 783.383 49.9314 Q783.383 38.832 789.459 32.472 Q795.576 26.1121 806.189 26.1121 Q809.633 26.1121 812.914 26.8413 Q816.195 27.5299 819.274 28.9478 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M871.044 48.0275 L871.044 51.6733 L836.774 51.6733 Q837.26 59.3701 841.392 63.421 Q845.564 67.4314 852.977 67.4314 Q857.271 67.4314 861.282 66.3781 Q865.332 65.3249 869.302 63.2184 L869.302 70.267 Q865.292 71.9684 861.079 72.8596 Q856.866 73.7508 852.532 73.7508 Q841.675 73.7508 835.315 67.4314 Q828.996 61.1119 828.996 50.3365 Q828.996 39.1965 834.991 32.6746 Q841.027 26.1121 851.235 26.1121 Q860.39 26.1121 865.697 32.0264 Q871.044 37.9003 871.044 48.0275 M863.591 45.84 Q863.51 39.7232 860.147 36.0774 Q856.826 32.4315 851.316 32.4315 Q845.078 32.4315 841.311 35.9558 Q837.584 39.4801 837.017 45.8805 L863.591 45.84 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M912.201 28.5427 L912.201 35.5912 Q909.042 33.9709 905.639 33.1607 Q902.236 32.3505 898.59 32.3505 Q893.041 32.3505 890.245 34.0519 Q887.491 35.7533 887.491 39.156 Q887.491 41.7486 889.476 43.2475 Q891.461 44.7058 897.456 46.0426 L900.008 46.6097 Q907.948 48.3111 911.27 51.4303 Q914.632 54.509 914.632 60.0587 Q914.632 66.3781 909.609 70.0644 Q904.626 73.7508 895.876 73.7508 Q892.23 73.7508 888.261 73.0216 Q884.331 72.3329 879.956 70.9151 L879.956 63.2184 Q884.088 65.3654 888.099 66.4591 Q892.109 67.5124 896.038 67.5124 Q901.304 67.5124 904.14 65.73 Q906.976 63.9071 906.976 60.6258 Q906.976 57.5877 904.91 55.9673 Q902.884 54.3469 895.957 52.8481 L893.365 52.2405 Q886.438 50.7821 883.359 47.7845 Q880.28 44.7463 880.28 39.4801 Q880.28 33.0797 884.817 29.5959 Q889.354 26.1121 897.699 26.1121 Q901.831 26.1121 905.477 26.7198 Q909.123 27.3274 912.201 28.5427 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M955.425 28.5427 L955.425 35.5912 Q952.265 33.9709 948.862 33.1607 Q945.459 32.3505 941.814 32.3505 Q936.264 32.3505 933.469 34.0519 Q930.714 35.7533 930.714 39.156 Q930.714 41.7486 932.699 43.2475 Q934.684 44.7058 940.679 46.0426 L943.231 46.6097 Q951.171 48.3111 954.493 51.4303 Q957.855 54.509 957.855 60.0587 Q957.855 66.3781 952.832 70.0644 Q947.849 73.7508 939.099 73.7508 Q935.454 73.7508 931.484 73.0216 Q927.554 72.3329 923.179 70.9151 L923.179 63.2184 Q927.311 65.3654 931.322 66.4591 Q935.332 67.5124 939.261 67.5124 Q944.528 67.5124 947.363 65.73 Q950.199 63.9071 950.199 60.6258 Q950.199 57.5877 948.133 55.9673 Q946.107 54.3469 939.18 52.8481 L936.588 52.2405 Q929.661 50.7821 926.582 47.7845 Q923.503 44.7463 923.503 39.4801 Q923.503 33.0797 928.04 29.5959 Q932.577 26.1121 940.922 26.1121 Q945.054 26.1121 948.7 26.7198 Q952.346 27.3274 955.425 28.5427 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1022.39 34.1734 Q1021.13 33.4443 1019.63 33.1202 Q1018.17 32.7556 1016.39 32.7556 Q1010.07 32.7556 1006.67 36.8875 Q1003.31 40.9789 1003.31 48.6757 L1003.31 72.576 L995.812 72.576 L995.812 27.2059 L1003.31 27.2059 L1003.31 34.2544 Q1005.66 30.1225 1009.42 28.1376 Q1013.19 26.1121 1018.58 26.1121 Q1019.35 26.1121 1020.28 26.2337 Q1021.21 26.3147 1022.35 26.5172 L1022.39 34.1734 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1050.82 49.7694 Q1041.79 49.7694 1038.31 51.8354 Q1034.82 53.9013 1034.82 58.8839 Q1034.82 62.8538 1037.41 65.2034 Q1040.05 67.5124 1044.54 67.5124 Q1050.74 67.5124 1054.47 63.1374 Q1058.24 58.7219 1058.24 51.4303 L1058.24 49.7694 L1050.82 49.7694 M1065.69 46.6907 L1065.69 72.576 L1058.24 72.576 L1058.24 65.6895 Q1055.68 69.8214 1051.88 71.8063 Q1048.07 73.7508 1042.56 73.7508 Q1035.59 73.7508 1031.46 69.8619 Q1027.37 65.9325 1027.37 59.3701 Q1027.37 51.7138 1032.47 47.825 Q1037.62 43.9361 1047.79 43.9361 L1058.24 43.9361 L1058.24 43.2069 Q1058.24 38.0623 1054.83 35.2672 Q1051.47 32.4315 1045.35 32.4315 Q1041.47 32.4315 1037.78 33.3632 Q1034.09 34.295 1030.69 36.1584 L1030.69 29.2718 Q1034.78 27.692 1038.63 26.9223 Q1042.48 26.1121 1046.12 26.1121 Q1055.97 26.1121 1060.83 31.2163 Q1065.69 36.3204 1065.69 46.6907 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1088.42 14.324 L1088.42 27.2059 L1103.77 27.2059 L1103.77 32.9987 L1088.42 32.9987 L1088.42 57.6282 Q1088.42 63.1779 1089.91 64.7578 Q1091.45 66.3376 1096.11 66.3376 L1103.77 66.3376 L1103.77 72.576 L1096.11 72.576 Q1087.48 72.576 1084.2 69.3758 Q1080.92 66.1351 1080.92 57.6282 L1080.92 32.9987 L1075.45 32.9987 L1075.45 27.2059 L1080.92 27.2059 L1080.92 14.324 L1088.42 14.324 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1152.38 48.0275 L1152.38 51.6733 L1118.11 51.6733 Q1118.59 59.3701 1122.73 63.421 Q1126.9 67.4314 1134.31 67.4314 Q1138.61 67.4314 1142.62 66.3781 Q1146.67 65.3249 1150.64 63.2184 L1150.64 70.267 Q1146.63 71.9684 1142.41 72.8596 Q1138.2 73.7508 1133.87 73.7508 Q1123.01 73.7508 1116.65 67.4314 Q1110.33 61.1119 1110.33 50.3365 Q1110.33 39.1965 1116.33 32.6746 Q1122.36 26.1121 1132.57 26.1121 Q1141.73 26.1121 1147.03 32.0264 Q1152.38 37.9003 1152.38 48.0275 M1144.93 45.84 Q1144.84 39.7232 1141.48 36.0774 Q1138.16 32.4315 1132.65 32.4315 Q1126.41 32.4315 1122.65 35.9558 Q1118.92 39.4801 1118.35 45.8805 L1144.93 45.84 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1185.64 27.2059 L1193.54 27.2059 L1207.71 65.2844 L1221.89 27.2059 L1229.79 27.2059 L1212.78 72.576 L1202.65 72.576 L1185.64 27.2059 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1269.01 28.5427 L1269.01 35.5912 Q1265.85 33.9709 1262.44 33.1607 Q1259.04 32.3505 1255.39 32.3505 Q1249.84 32.3505 1247.05 34.0519 Q1244.29 35.7533 1244.29 39.156 Q1244.29 41.7486 1246.28 43.2475 Q1248.26 44.7058 1254.26 46.0426 L1256.81 46.6097 Q1264.75 48.3111 1268.07 51.4303 Q1271.44 54.509 1271.44 60.0587 Q1271.44 66.3781 1266.41 70.0644 Q1261.43 73.7508 1252.68 73.7508 Q1249.03 73.7508 1245.06 73.0216 Q1241.13 72.3329 1236.76 70.9151 L1236.76 63.2184 Q1240.89 65.3654 1244.9 66.4591 Q1248.91 67.5124 1252.84 67.5124 Q1258.11 67.5124 1260.94 65.73 Q1263.78 63.9071 1263.78 60.6258 Q1263.78 57.5877 1261.71 55.9673 Q1259.69 54.3469 1252.76 52.8481 L1250.17 52.2405 Q1243.24 50.7821 1240.16 47.7845 Q1237.08 44.7463 1237.08 39.4801 Q1237.08 33.0797 1241.62 29.5959 Q1246.16 26.1121 1254.5 26.1121 Q1258.63 26.1121 1262.28 26.7198 Q1265.93 27.3274 1269.01 28.5427 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1339.53 34.0924 L1339.53 9.54393 L1346.98 9.54393 L1346.98 72.576 L1339.53 72.576 L1339.53 65.7705 Q1337.18 69.8214 1333.58 71.8063 Q1330.01 73.7508 1324.99 73.7508 Q1316.77 73.7508 1311.58 67.1883 Q1306.44 60.6258 1306.44 49.9314 Q1306.44 39.2371 1311.58 32.6746 Q1316.77 26.1121 1324.99 26.1121 Q1330.01 26.1121 1333.58 28.0971 Q1337.18 30.0415 1339.53 34.0924 M1314.13 49.9314 Q1314.13 58.1548 1317.49 62.8538 Q1320.9 67.5124 1326.81 67.5124 Q1332.73 67.5124 1336.13 62.8538 Q1339.53 58.1548 1339.53 49.9314 Q1339.53 41.7081 1336.13 37.0496 Q1332.73 32.3505 1326.81 32.3505 Q1320.9 32.3505 1317.49 37.0496 Q1314.13 41.7081 1314.13 49.9314 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1382.96 49.7694 Q1373.92 49.7694 1370.44 51.8354 Q1366.96 53.9013 1366.96 58.8839 Q1366.96 62.8538 1369.55 65.2034 Q1372.18 67.5124 1376.68 67.5124 Q1382.88 67.5124 1386.6 63.1374 Q1390.37 58.7219 1390.37 51.4303 L1390.37 49.7694 L1382.96 49.7694 M1397.82 46.6907 L1397.82 72.576 L1390.37 72.576 L1390.37 65.6895 Q1387.82 69.8214 1384.01 71.8063 Q1380.2 73.7508 1374.69 73.7508 Q1367.73 73.7508 1363.59 69.8619 Q1359.5 65.9325 1359.5 59.3701 Q1359.5 51.7138 1364.61 47.825 Q1369.75 43.9361 1379.92 43.9361 L1390.37 43.9361 L1390.37 43.2069 Q1390.37 38.0623 1386.97 35.2672 Q1383.61 32.4315 1377.49 32.4315 Q1373.6 32.4315 1369.91 33.3632 Q1366.23 34.295 1362.82 36.1584 L1362.82 29.2718 Q1366.92 27.692 1370.76 26.9223 Q1374.61 26.1121 1378.26 26.1121 Q1388.1 26.1121 1392.96 31.2163 Q1397.82 36.3204 1397.82 46.6907 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1448.5 35.9153 Q1451.3 30.8922 1455.18 28.5022 Q1459.07 26.1121 1464.34 26.1121 Q1471.43 26.1121 1475.28 31.0947 Q1479.13 36.0368 1479.13 45.1919 L1479.13 72.576 L1471.63 72.576 L1471.63 45.4349 Q1471.63 38.913 1469.32 35.7533 Q1467.01 32.5936 1462.27 32.5936 Q1456.48 32.5936 1453.12 36.4419 Q1449.76 40.2903 1449.76 46.9338 L1449.76 72.576 L1442.26 72.576 L1442.26 45.4349 Q1442.26 38.8725 1439.95 35.7533 Q1437.64 32.5936 1432.82 32.5936 Q1427.11 32.5936 1423.75 36.4824 Q1420.39 40.3308 1420.39 46.9338 L1420.39 72.576 L1412.89 72.576 L1412.89 27.2059 L1420.39 27.2059 L1420.39 34.2544 Q1422.94 30.082 1426.5 28.0971 Q1430.07 26.1121 1434.97 26.1121 Q1439.91 26.1121 1443.36 28.6237 Q1446.84 31.1352 1448.5 35.9153 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1514.61 49.7694 Q1505.58 49.7694 1502.09 51.8354 Q1498.61 53.9013 1498.61 58.8839 Q1498.61 62.8538 1501.2 65.2034 Q1503.84 67.5124 1508.33 67.5124 Q1514.53 67.5124 1518.26 63.1374 Q1522.02 58.7219 1522.02 51.4303 L1522.02 49.7694 L1514.61 49.7694 M1529.48 46.6907 L1529.48 72.576 L1522.02 72.576 L1522.02 65.6895 Q1519.47 69.8214 1515.66 71.8063 Q1511.86 73.7508 1506.35 73.7508 Q1499.38 73.7508 1495.25 69.8619 Q1491.16 65.9325 1491.16 59.3701 Q1491.16 51.7138 1496.26 47.825 Q1501.41 43.9361 1511.57 43.9361 L1522.02 43.9361 L1522.02 43.2069 Q1522.02 38.0623 1518.62 35.2672 Q1515.26 32.4315 1509.14 32.4315 Q1505.25 32.4315 1501.57 33.3632 Q1497.88 34.295 1494.48 36.1584 L1494.48 29.2718 Q1498.57 27.692 1502.42 26.9223 Q1506.27 26.1121 1509.91 26.1121 Q1519.76 26.1121 1524.62 31.2163 Q1529.48 36.3204 1529.48 46.6907 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1574.69 49.3643 Q1574.69 41.2625 1571.32 36.8065 Q1568 32.3505 1561.97 32.3505 Q1555.97 32.3505 1552.61 36.8065 Q1549.29 41.2625 1549.29 49.3643 Q1549.29 57.4256 1552.61 61.8816 Q1555.97 66.3376 1561.97 66.3376 Q1568 66.3376 1571.32 61.8816 Q1574.69 57.4256 1574.69 49.3643 M1582.14 66.9452 Q1582.14 78.5308 1577 84.1616 Q1571.85 89.8329 1561.24 89.8329 Q1557.31 89.8329 1553.82 89.2252 Q1550.34 88.6581 1547.06 87.4428 L1547.06 80.1917 Q1550.34 81.9741 1553.54 82.8248 Q1556.74 83.6755 1560.06 83.6755 Q1567.39 83.6755 1571.04 79.8271 Q1574.69 76.0193 1574.69 68.282 L1574.69 64.5957 Q1572.38 68.6061 1568.77 70.5911 Q1565.17 72.576 1560.14 72.576 Q1551.8 72.576 1546.69 66.2161 Q1541.59 59.8562 1541.59 49.3643 Q1541.59 38.832 1546.69 32.472 Q1551.8 26.1121 1560.14 26.1121 Q1565.17 26.1121 1568.77 28.0971 Q1572.38 30.082 1574.69 34.0924 L1574.69 27.2059 L1582.14 27.2059 L1582.14 66.9452 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1636.3 48.0275 L1636.3 51.6733 L1602.03 51.6733 Q1602.52 59.3701 1606.65 63.421 Q1610.82 67.4314 1618.23 67.4314 Q1622.53 67.4314 1626.54 66.3781 Q1630.59 65.3249 1634.56 63.2184 L1634.56 70.267 Q1630.55 71.9684 1626.34 72.8596 Q1622.12 73.7508 1617.79 73.7508 Q1606.93 73.7508 1600.57 67.4314 Q1594.25 61.1119 1594.25 50.3365 Q1594.25 39.1965 1600.25 32.6746 Q1606.28 26.1121 1616.49 26.1121 Q1625.65 26.1121 1630.95 32.0264 Q1636.3 37.9003 1636.3 48.0275 M1628.85 45.84 Q1628.77 39.7232 1625.4 36.0774 Q1622.08 32.4315 1616.57 32.4315 Q1610.33 32.4315 1606.57 35.9558 Q1602.84 39.4801 1602.27 45.8805 L1628.85 45.84 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1682.12 65.7705 L1682.12 89.8329 L1674.62 89.8329 L1674.62 27.2059 L1682.12 27.2059 L1682.12 34.0924 Q1684.47 30.0415 1688.03 28.0971 Q1691.64 26.1121 1696.62 26.1121 Q1704.88 26.1121 1710.03 32.6746 Q1715.21 39.2371 1715.21 49.9314 Q1715.21 60.6258 1710.03 67.1883 Q1704.88 73.7508 1696.62 73.7508 Q1691.64 73.7508 1688.03 71.8063 Q1684.47 69.8214 1682.12 65.7705 M1707.47 49.9314 Q1707.47 41.7081 1704.07 37.0496 Q1700.71 32.3505 1694.8 32.3505 Q1688.88 32.3505 1685.48 37.0496 Q1682.12 41.7081 1682.12 49.9314 Q1682.12 58.1548 1685.48 62.8538 Q1688.88 67.5124 1694.8 67.5124 Q1700.71 67.5124 1704.07 62.8538 Q1707.47 58.1548 1707.47 49.9314 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1753.86 34.1734 Q1752.6 33.4443 1751.1 33.1202 Q1749.64 32.7556 1747.86 32.7556 Q1741.54 32.7556 1738.14 36.8875 Q1734.78 40.9789 1734.78 48.6757 L1734.78 72.576 L1727.28 72.576 L1727.28 27.2059 L1734.78 27.2059 L1734.78 34.2544 Q1737.13 30.1225 1740.89 28.1376 Q1744.66 26.1121 1750.05 26.1121 Q1750.82 26.1121 1751.75 26.2337 Q1752.68 26.3147 1753.82 26.5172 L1753.86 34.1734 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1777.43 32.4315 Q1771.44 32.4315 1767.95 37.1306 Q1764.47 41.7891 1764.47 49.9314 Q1764.47 58.0738 1767.91 62.7728 Q1771.4 67.4314 1777.43 67.4314 Q1783.39 67.4314 1786.87 62.7323 Q1790.36 58.0333 1790.36 49.9314 Q1790.36 41.8701 1786.87 37.1711 Q1783.39 32.4315 1777.43 32.4315 M1777.43 26.1121 Q1787.16 26.1121 1792.71 32.4315 Q1798.26 38.7509 1798.26 49.9314 Q1798.26 61.0714 1792.71 67.4314 Q1787.16 73.7508 1777.43 73.7508 Q1767.67 73.7508 1762.12 67.4314 Q1756.61 61.0714 1756.61 49.9314 Q1756.61 38.7509 1762.12 32.4315 Q1767.67 26.1121 1777.43 26.1121 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1843.18 49.9314 Q1843.18 41.7081 1839.78 37.0496 Q1836.42 32.3505 1830.5 32.3505 Q1824.59 32.3505 1821.18 37.0496 Q1817.82 41.7081 1817.82 49.9314 Q1817.82 58.1548 1821.18 62.8538 Q1824.59 67.5124 1830.5 67.5124 Q1836.42 67.5124 1839.78 62.8538 Q1843.18 58.1548 1843.18 49.9314 M1817.82 34.0924 Q1820.17 30.0415 1823.74 28.0971 Q1827.34 26.1121 1832.32 26.1121 Q1840.59 26.1121 1845.73 32.6746 Q1850.92 39.2371 1850.92 49.9314 Q1850.92 60.6258 1845.73 67.1883 Q1840.59 73.7508 1832.32 73.7508 Q1827.34 73.7508 1823.74 71.8063 Q1820.17 69.8214 1817.82 65.7705 L1817.82 72.576 L1810.33 72.576 L1810.33 9.54393 L1817.82 9.54393 L1817.82 34.0924 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1883.89 49.7694 Q1874.86 49.7694 1871.37 51.8354 Q1867.89 53.9013 1867.89 58.8839 Q1867.89 62.8538 1870.48 65.2034 Q1873.12 67.5124 1877.61 67.5124 Q1883.81 67.5124 1887.54 63.1374 Q1891.3 58.7219 1891.3 51.4303 L1891.3 49.7694 L1883.89 49.7694 M1898.76 46.6907 L1898.76 72.576 L1891.3 72.576 L1891.3 65.6895 Q1888.75 69.8214 1884.95 71.8063 Q1881.14 73.7508 1875.63 73.7508 Q1868.66 73.7508 1864.53 69.8619 Q1860.44 65.9325 1860.44 59.3701 Q1860.44 51.7138 1865.54 47.825 Q1870.69 43.9361 1880.85 43.9361 L1891.3 43.9361 L1891.3 43.2069 Q1891.3 38.0623 1887.9 35.2672 Q1884.54 32.4315 1878.42 32.4315 Q1874.53 32.4315 1870.85 33.3632 Q1867.16 34.295 1863.76 36.1584 L1863.76 29.2718 Q1867.85 27.692 1871.7 26.9223 Q1875.55 26.1121 1879.19 26.1121 Q1889.04 26.1121 1893.9 31.2163 Q1898.76 36.3204 1898.76 46.6907 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1946.68 49.9314 Q1946.68 41.7081 1943.28 37.0496 Q1939.92 32.3505 1934 32.3505 Q1928.09 32.3505 1924.68 37.0496 Q1921.32 41.7081 1921.32 49.9314 Q1921.32 58.1548 1924.68 62.8538 Q1928.09 67.5124 1934 67.5124 Q1939.92 67.5124 1943.28 62.8538 Q1946.68 58.1548 1946.68 49.9314 M1921.32 34.0924 Q1923.67 30.0415 1927.24 28.0971 Q1930.84 26.1121 1935.82 26.1121 Q1944.09 26.1121 1949.23 32.6746 Q1954.42 39.2371 1954.42 49.9314 Q1954.42 60.6258 1949.23 67.1883 Q1944.09 73.7508 1935.82 73.7508 Q1930.84 73.7508 1927.24 71.8063 Q1923.67 69.8214 1921.32 65.7705 L1921.32 72.576 L1913.83 72.576 L1913.83 9.54393 L1921.32 9.54393 L1921.32 34.0924 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1966.77 27.2059 L1974.23 27.2059 L1974.23 72.576 L1966.77 72.576 L1966.77 27.2059 M1966.77 9.54393 L1974.23 9.54393 L1974.23 18.9825 L1966.77 18.9825 L1966.77 9.54393 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M1989.82 9.54393 L1997.28 9.54393 L1997.28 72.576 L1989.82 72.576 L1989.82 9.54393 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M2012.87 27.2059 L2020.33 27.2059 L2020.33 72.576 L2012.87 72.576 L2012.87 27.2059 M2012.87 9.54393 L2020.33 9.54393 L2020.33 18.9825 L2012.87 18.9825 L2012.87 9.54393 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M2043.29 14.324 L2043.29 27.2059 L2058.65 27.2059 L2058.65 32.9987 L2043.29 32.9987 L2043.29 57.6282 Q2043.29 63.1779 2044.79 64.7578 Q2046.33 66.3376 2050.99 66.3376 L2058.65 66.3376 L2058.65 72.576 L2050.99 72.576 Q2042.36 72.576 2039.08 69.3758 Q2035.8 66.1351 2035.8 57.6282 L2035.8 32.9987 L2030.33 32.9987 L2030.33 27.2059 L2035.8 27.2059 L2035.8 14.324 L2043.29 14.324 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M2087.33 76.7889 Q2084.17 84.8907 2081.17 87.3618 Q2078.17 89.8329 2073.15 89.8329 L2067.2 89.8329 L2067.2 83.5945 L2071.57 83.5945 Q2074.65 83.5945 2076.35 82.1361 Q2078.05 80.6778 2080.12 75.2496 L2081.45 71.8468 L2063.1 27.2059 L2071 27.2059 L2085.18 62.6918 L2099.36 27.2059 L2107.26 27.2059 L2087.33 76.7889 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><polyline clip-path="url(#clip182)" style="stroke:#009af9; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="309.067,160.256 419.298,160.256 529.53,160.256 639.761,160.256 749.992,160.256 860.224,160.256 970.455,160.256 1080.69,160.256 1190.92,160.256 1301.15,160.256 1411.38,160.256 1521.61,528.098 1631.84,405.484 1742.07,773.326 1852.31,528.098 1962.54,773.326 2072.77,1141.17 2183,1386.4 2293.23,650.712 "></polyline>
+<circle clip-path="url(#clip182)" cx="309.067" cy="160.256" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="419.298" cy="160.256" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="529.53" cy="160.256" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="639.761" cy="160.256" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="749.992" cy="160.256" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="860.224" cy="160.256" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="970.455" cy="160.256" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1080.69" cy="160.256" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1190.92" cy="160.256" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1301.15" cy="160.256" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1411.38" cy="160.256" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1521.61" cy="528.098" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1631.84" cy="405.484" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1742.07" cy="773.326" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1852.31" cy="528.098" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1962.54" cy="773.326" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="2072.77" cy="1141.17" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="2183" cy="1386.4" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="2293.23" cy="650.712" r="14.4" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<polyline clip-path="url(#clip182)" style="stroke:#e26f46; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="309.067,160.256 419.298,160.256 529.53,160.256 639.761,160.256 749.992,160.256 860.224,160.256 970.455,160.256 1080.69,160.256 1190.92,160.256 1301.15,160.256 1411.38,405.484 1521.61,405.484 1631.84,1018.55 1742.07,282.87 1852.31,895.94 1962.54,405.484 2072.77,1386.4 2183,1386.4 2293.23,1386.4 "></polyline>
+<circle clip-path="url(#clip182)" cx="309.067" cy="160.256" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="419.298" cy="160.256" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="529.53" cy="160.256" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="639.761" cy="160.256" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="749.992" cy="160.256" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="860.224" cy="160.256" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="970.455" cy="160.256" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1080.69" cy="160.256" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1190.92" cy="160.256" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1301.15" cy="160.256" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1411.38" cy="405.484" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1521.61" cy="405.484" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1631.84" cy="1018.55" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1742.07" cy="282.87" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1852.31" cy="895.94" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1962.54" cy="405.484" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="2072.77" cy="1386.4" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="2183" cy="1386.4" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="2293.23" cy="1386.4" r="14.4" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<polyline clip-path="url(#clip182)" style="stroke:#3da44d; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="309.067,160.256 419.298,160.256 529.53,160.256 639.761,160.256 749.992,160.256 860.224,160.256 970.455,160.256 1080.69,160.256 1190.92,160.256 1301.15,160.256 1411.38,160.256 1521.61,160.256 1631.84,160.256 1742.07,773.326 1852.31,773.326 1962.54,282.87 2072.77,1386.4 2183,1386.4 2293.23,773.326 "></polyline>
+<circle clip-path="url(#clip182)" cx="309.067" cy="160.256" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="419.298" cy="160.256" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="529.53" cy="160.256" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="639.761" cy="160.256" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="749.992" cy="160.256" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="860.224" cy="160.256" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="970.455" cy="160.256" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1080.69" cy="160.256" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1190.92" cy="160.256" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1301.15" cy="160.256" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1411.38" cy="160.256" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1521.61" cy="160.256" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1631.84" cy="160.256" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1742.07" cy="773.326" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1852.31" cy="773.326" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1962.54" cy="282.87" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="2072.77" cy="1386.4" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="2183" cy="1386.4" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="2293.23" cy="773.326" r="14.4" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<polyline clip-path="url(#clip182)" style="stroke:#c271d2; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="309.067,160.256 419.298,160.256 529.53,160.256 639.761,160.256 749.992,160.256 860.224,160.256 970.455,160.256 1080.69,160.256 1190.92,405.484 1301.15,160.256 1411.38,160.256 1521.61,650.712 1631.84,160.256 1742.07,160.256 1852.31,405.484 1962.54,650.712 2072.77,773.326 2183,1386.4 2293.23,650.712 "></polyline>
+<circle clip-path="url(#clip182)" cx="309.067" cy="160.256" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="419.298" cy="160.256" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="529.53" cy="160.256" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="639.761" cy="160.256" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="749.992" cy="160.256" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="860.224" cy="160.256" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="970.455" cy="160.256" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1080.69" cy="160.256" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1190.92" cy="405.484" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1301.15" cy="160.256" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1411.38" cy="160.256" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1521.61" cy="650.712" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1631.84" cy="160.256" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1742.07" cy="160.256" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1852.31" cy="405.484" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="1962.54" cy="650.712" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="2072.77" cy="773.326" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="2183" cy="1386.4" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<circle clip-path="url(#clip182)" cx="2293.23" cy="650.712" r="14.4" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="3.2"></circle>
+<path clip-path="url(#clip180)" d="M319.649 1379.86 L868.672 1379.86 L868.672 1120.66 L319.649 1120.66 Z" fill="#ffffff" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip180)" style="stroke:#000000; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="319.649,1379.86 868.672,1379.86 868.672,1120.66 319.649,1120.66 319.649,1379.86 "></polyline>
+<polyline clip-path="url(#clip180)" style="stroke:#009af9; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="343.018,1172.5 483.232,1172.5 "></polyline>
+<circle clip-path="url(#clip180)" cx="413.125" cy="1172.5" r="19.4742" fill="#009af9" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="4.55111"></circle>
+<path clip-path="url(#clip180)" d="M506.602 1155.22 L513.569 1155.22 L522.388 1178.73 L531.254 1155.22 L538.222 1155.22 L538.222 1189.78 L533.662 1189.78 L533.662 1159.43 L524.75 1183.13 L520.051 1183.13 L511.139 1159.43 L511.139 1189.78 L506.602 1189.78 L506.602 1155.22 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M573.384 1157.88 L573.384 1162.81 Q571.022 1160.61 568.337 1159.52 Q565.675 1158.43 562.666 1158.43 Q556.74 1158.43 553.592 1162.07 Q550.444 1165.68 550.444 1172.53 Q550.444 1179.36 553.592 1182.99 Q556.74 1186.6 562.666 1186.6 Q565.675 1186.6 568.337 1185.52 Q571.022 1184.43 573.384 1182.23 L573.384 1187.11 Q570.93 1188.78 568.175 1189.61 Q565.444 1190.45 562.388 1190.45 Q554.541 1190.45 550.027 1185.66 Q545.513 1180.84 545.513 1172.53 Q545.513 1164.2 550.027 1159.41 Q554.541 1154.59 562.388 1154.59 Q565.49 1154.59 568.222 1155.42 Q570.976 1156.23 573.384 1157.88 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M612.018 1164.61 L612.018 1168.64 Q610.212 1167.72 608.268 1167.25 Q606.323 1166.79 604.24 1166.79 Q601.069 1166.79 599.471 1167.76 Q597.897 1168.73 597.897 1170.68 Q597.897 1172.16 599.032 1173.02 Q600.166 1173.85 603.592 1174.61 L605.05 1174.94 Q609.587 1175.91 611.485 1177.69 Q613.406 1179.45 613.406 1182.62 Q613.406 1186.23 610.536 1188.34 Q607.689 1190.45 602.689 1190.45 Q600.606 1190.45 598.337 1190.03 Q596.092 1189.64 593.592 1188.83 L593.592 1184.43 Q595.953 1185.66 598.245 1186.28 Q600.536 1186.88 602.782 1186.88 Q605.791 1186.88 607.411 1185.86 Q609.032 1184.82 609.032 1182.95 Q609.032 1181.21 607.851 1180.29 Q606.694 1179.36 602.735 1178.5 L601.254 1178.16 Q597.295 1177.32 595.536 1175.61 Q593.777 1173.87 593.777 1170.86 Q593.777 1167.21 596.37 1165.22 Q598.962 1163.23 603.731 1163.23 Q606.092 1163.23 608.175 1163.57 Q610.258 1163.92 612.018 1164.61 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M624.402 1156.49 L624.402 1163.85 L633.175 1163.85 L633.175 1167.16 L624.402 1167.16 L624.402 1181.23 Q624.402 1184.41 625.258 1185.31 Q626.138 1186.21 628.8 1186.21 L633.175 1186.21 L633.175 1189.78 L628.8 1189.78 Q623.869 1189.78 621.994 1187.95 Q620.119 1186.1 620.119 1181.23 L620.119 1167.16 L616.994 1167.16 L616.994 1163.85 L620.119 1163.85 L620.119 1156.49 L624.402 1156.49 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M660.953 1175.75 L660.953 1177.83 L641.369 1177.83 Q641.647 1182.23 644.008 1184.54 Q646.392 1186.84 650.629 1186.84 Q653.082 1186.84 655.374 1186.23 Q657.689 1185.63 659.957 1184.43 L659.957 1188.46 Q657.666 1189.43 655.258 1189.94 Q652.851 1190.45 650.374 1190.45 Q644.17 1190.45 640.536 1186.84 Q636.925 1183.23 636.925 1177.07 Q636.925 1170.7 640.351 1166.98 Q643.8 1163.23 649.633 1163.23 Q654.865 1163.23 657.897 1166.61 Q660.953 1169.96 660.953 1175.75 M656.693 1174.5 Q656.647 1171 654.726 1168.92 Q652.828 1166.84 649.679 1166.84 Q646.115 1166.84 643.962 1168.85 Q641.832 1170.86 641.508 1174.52 L656.693 1174.5 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M672.064 1185.89 L672.064 1199.64 L667.781 1199.64 L667.781 1163.85 L672.064 1163.85 L672.064 1167.79 Q673.406 1165.47 675.443 1164.36 Q677.503 1163.23 680.351 1163.23 Q685.073 1163.23 688.013 1166.98 Q690.976 1170.73 690.976 1176.84 Q690.976 1182.95 688.013 1186.7 Q685.073 1190.45 680.351 1190.45 Q677.503 1190.45 675.443 1189.34 Q673.406 1188.2 672.064 1185.89 M686.554 1176.84 Q686.554 1172.14 684.61 1169.48 Q682.689 1166.79 679.309 1166.79 Q675.929 1166.79 673.985 1169.48 Q672.064 1172.14 672.064 1176.84 Q672.064 1181.54 673.985 1184.22 Q675.929 1186.88 679.309 1186.88 Q682.689 1186.88 684.61 1184.22 Q686.554 1181.54 686.554 1176.84 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M714.563 1164.61 L714.563 1168.64 Q712.758 1167.72 710.813 1167.25 Q708.869 1166.79 706.786 1166.79 Q703.614 1166.79 702.017 1167.76 Q700.443 1168.73 700.443 1170.68 Q700.443 1172.16 701.577 1173.02 Q702.712 1173.85 706.137 1174.61 L707.596 1174.94 Q712.133 1175.91 714.031 1177.69 Q715.952 1179.45 715.952 1182.62 Q715.952 1186.23 713.082 1188.34 Q710.235 1190.45 705.235 1190.45 Q703.151 1190.45 700.883 1190.03 Q698.638 1189.64 696.138 1188.83 L696.138 1184.43 Q698.499 1185.66 700.79 1186.28 Q703.082 1186.88 705.327 1186.88 Q708.337 1186.88 709.957 1185.86 Q711.577 1184.82 711.577 1182.95 Q711.577 1181.21 710.397 1180.29 Q709.239 1179.36 705.281 1178.5 L703.8 1178.16 Q699.841 1177.32 698.082 1175.61 Q696.323 1173.87 696.323 1170.86 Q696.323 1167.21 698.915 1165.22 Q701.508 1163.23 706.276 1163.23 Q708.637 1163.23 710.721 1163.57 Q712.804 1163.92 714.563 1164.61 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M738.36 1168.25 L768.035 1168.25 L768.035 1172.14 L738.36 1172.14 L738.36 1168.25 M738.36 1177.69 L768.035 1177.69 L768.035 1181.63 L738.36 1181.63 L738.36 1177.69 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M797.225 1185.84 L813.544 1185.84 L813.544 1189.78 L791.6 1189.78 L791.6 1185.84 Q794.262 1183.09 798.845 1178.46 Q803.452 1173.8 804.632 1172.46 Q806.878 1169.94 807.757 1168.2 Q808.66 1166.44 808.66 1164.75 Q808.66 1162 806.716 1160.26 Q804.794 1158.53 801.693 1158.53 Q799.493 1158.53 797.04 1159.29 Q794.609 1160.05 791.831 1161.61 L791.831 1156.88 Q794.656 1155.75 797.109 1155.17 Q799.563 1154.59 801.6 1154.59 Q806.97 1154.59 810.165 1157.28 Q813.359 1159.96 813.359 1164.45 Q813.359 1166.58 812.549 1168.5 Q811.762 1170.4 809.655 1172.99 Q809.077 1173.67 805.975 1176.88 Q802.873 1180.08 797.225 1185.84 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><polyline clip-path="url(#clip180)" style="stroke:#e26f46; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="343.018,1224.34 483.232,1224.34 "></polyline>
+<circle clip-path="url(#clip180)" cx="413.125" cy="1224.34" r="19.4742" fill="#e26f46" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="4.55111"></circle>
+<path clip-path="url(#clip180)" d="M506.602 1207.06 L513.569 1207.06 L522.388 1230.57 L531.254 1207.06 L538.222 1207.06 L538.222 1241.62 L533.662 1241.62 L533.662 1211.27 L524.75 1234.97 L520.051 1234.97 L511.139 1211.27 L511.139 1241.62 L506.602 1241.62 L506.602 1207.06 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M573.384 1209.72 L573.384 1214.65 Q571.022 1212.45 568.337 1211.36 Q565.675 1210.27 562.666 1210.27 Q556.74 1210.27 553.592 1213.91 Q550.444 1217.52 550.444 1224.37 Q550.444 1231.2 553.592 1234.83 Q556.74 1238.44 562.666 1238.44 Q565.675 1238.44 568.337 1237.36 Q571.022 1236.27 573.384 1234.07 L573.384 1238.95 Q570.93 1240.62 568.175 1241.45 Q565.444 1242.29 562.388 1242.29 Q554.541 1242.29 550.027 1237.5 Q545.513 1232.68 545.513 1224.37 Q545.513 1216.04 550.027 1211.25 Q554.541 1206.43 562.388 1206.43 Q565.49 1206.43 568.222 1207.26 Q570.976 1208.07 573.384 1209.72 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M612.018 1216.45 L612.018 1220.48 Q610.212 1219.56 608.268 1219.09 Q606.323 1218.63 604.24 1218.63 Q601.069 1218.63 599.471 1219.6 Q597.897 1220.57 597.897 1222.52 Q597.897 1224 599.032 1224.86 Q600.166 1225.69 603.592 1226.45 L605.05 1226.78 Q609.587 1227.75 611.485 1229.53 Q613.406 1231.29 613.406 1234.46 Q613.406 1238.07 610.536 1240.18 Q607.689 1242.29 602.689 1242.29 Q600.606 1242.29 598.337 1241.87 Q596.092 1241.48 593.592 1240.67 L593.592 1236.27 Q595.953 1237.5 598.245 1238.12 Q600.536 1238.72 602.782 1238.72 Q605.791 1238.72 607.411 1237.7 Q609.032 1236.66 609.032 1234.79 Q609.032 1233.05 607.851 1232.13 Q606.694 1231.2 602.735 1230.34 L601.254 1230 Q597.295 1229.16 595.536 1227.45 Q593.777 1225.71 593.777 1222.7 Q593.777 1219.05 596.37 1217.06 Q598.962 1215.07 603.731 1215.07 Q606.092 1215.07 608.175 1215.41 Q610.258 1215.76 612.018 1216.45 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M624.402 1208.33 L624.402 1215.69 L633.175 1215.69 L633.175 1219 L624.402 1219 L624.402 1233.07 Q624.402 1236.25 625.258 1237.15 Q626.138 1238.05 628.8 1238.05 L633.175 1238.05 L633.175 1241.62 L628.8 1241.62 Q623.869 1241.62 621.994 1239.79 Q620.119 1237.94 620.119 1233.07 L620.119 1219 L616.994 1219 L616.994 1215.69 L620.119 1215.69 L620.119 1208.33 L624.402 1208.33 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M660.953 1227.59 L660.953 1229.67 L641.369 1229.67 Q641.647 1234.07 644.008 1236.38 Q646.392 1238.68 650.629 1238.68 Q653.082 1238.68 655.374 1238.07 Q657.689 1237.47 659.957 1236.27 L659.957 1240.3 Q657.666 1241.27 655.258 1241.78 Q652.851 1242.29 650.374 1242.29 Q644.17 1242.29 640.536 1238.68 Q636.925 1235.07 636.925 1228.91 Q636.925 1222.54 640.351 1218.82 Q643.8 1215.07 649.633 1215.07 Q654.865 1215.07 657.897 1218.45 Q660.953 1221.8 660.953 1227.59 M656.693 1226.34 Q656.647 1222.84 654.726 1220.76 Q652.828 1218.68 649.679 1218.68 Q646.115 1218.68 643.962 1220.69 Q641.832 1222.7 641.508 1226.36 L656.693 1226.34 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M672.064 1237.73 L672.064 1251.48 L667.781 1251.48 L667.781 1215.69 L672.064 1215.69 L672.064 1219.63 Q673.406 1217.31 675.443 1216.2 Q677.503 1215.07 680.351 1215.07 Q685.073 1215.07 688.013 1218.82 Q690.976 1222.57 690.976 1228.68 Q690.976 1234.79 688.013 1238.54 Q685.073 1242.29 680.351 1242.29 Q677.503 1242.29 675.443 1241.18 Q673.406 1240.04 672.064 1237.73 M686.554 1228.68 Q686.554 1223.98 684.61 1221.32 Q682.689 1218.63 679.309 1218.63 Q675.929 1218.63 673.985 1221.32 Q672.064 1223.98 672.064 1228.68 Q672.064 1233.38 673.985 1236.06 Q675.929 1238.72 679.309 1238.72 Q682.689 1238.72 684.61 1236.06 Q686.554 1233.38 686.554 1228.68 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M714.563 1216.45 L714.563 1220.48 Q712.758 1219.56 710.813 1219.09 Q708.869 1218.63 706.786 1218.63 Q703.614 1218.63 702.017 1219.6 Q700.443 1220.57 700.443 1222.52 Q700.443 1224 701.577 1224.86 Q702.712 1225.69 706.137 1226.45 L707.596 1226.78 Q712.133 1227.75 714.031 1229.53 Q715.952 1231.29 715.952 1234.46 Q715.952 1238.07 713.082 1240.18 Q710.235 1242.29 705.235 1242.29 Q703.151 1242.29 700.883 1241.87 Q698.638 1241.48 696.138 1240.67 L696.138 1236.27 Q698.499 1237.5 700.79 1238.12 Q703.082 1238.72 705.327 1238.72 Q708.337 1238.72 709.957 1237.7 Q711.577 1236.66 711.577 1234.79 Q711.577 1233.05 710.397 1232.13 Q709.239 1231.2 705.281 1230.34 L703.8 1230 Q699.841 1229.16 698.082 1227.45 Q696.323 1225.71 696.323 1222.7 Q696.323 1219.05 698.915 1217.06 Q701.508 1215.07 706.276 1215.07 Q708.637 1215.07 710.721 1215.41 Q712.804 1215.76 714.563 1216.45 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M738.36 1220.09 L768.035 1220.09 L768.035 1223.98 L738.36 1223.98 L738.36 1220.09 M738.36 1229.53 L768.035 1229.53 L768.035 1233.47 L738.36 1233.47 L738.36 1229.53 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M793.243 1207.06 L811.6 1207.06 L811.6 1210.99 L797.526 1210.99 L797.526 1219.46 Q798.544 1219.12 799.563 1218.95 Q800.581 1218.77 801.6 1218.77 Q807.387 1218.77 810.767 1221.94 Q814.146 1225.11 814.146 1230.53 Q814.146 1236.11 810.674 1239.21 Q807.202 1242.29 800.882 1242.29 Q798.706 1242.29 796.438 1241.92 Q794.193 1241.55 791.785 1240.81 L791.785 1236.11 Q793.868 1237.24 796.091 1237.8 Q798.313 1238.35 800.79 1238.35 Q804.794 1238.35 807.132 1236.25 Q809.47 1234.14 809.47 1230.53 Q809.47 1226.92 807.132 1224.81 Q804.794 1222.7 800.79 1222.7 Q798.915 1222.7 797.04 1223.12 Q795.188 1223.54 793.243 1224.42 L793.243 1207.06 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><polyline clip-path="url(#clip180)" style="stroke:#3da44d; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="343.018,1276.18 483.232,1276.18 "></polyline>
+<circle clip-path="url(#clip180)" cx="413.125" cy="1276.18" r="19.4742" fill="#3da44d" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="4.55111"></circle>
+<path clip-path="url(#clip180)" d="M506.602 1258.9 L513.569 1258.9 L522.388 1282.41 L531.254 1258.9 L538.222 1258.9 L538.222 1293.46 L533.662 1293.46 L533.662 1263.11 L524.75 1286.81 L520.051 1286.81 L511.139 1263.11 L511.139 1293.46 L506.602 1293.46 L506.602 1258.9 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M573.384 1261.56 L573.384 1266.49 Q571.022 1264.29 568.337 1263.2 Q565.675 1262.11 562.666 1262.11 Q556.74 1262.11 553.592 1265.75 Q550.444 1269.36 550.444 1276.21 Q550.444 1283.04 553.592 1286.67 Q556.74 1290.28 562.666 1290.28 Q565.675 1290.28 568.337 1289.2 Q571.022 1288.11 573.384 1285.91 L573.384 1290.79 Q570.93 1292.46 568.175 1293.29 Q565.444 1294.13 562.388 1294.13 Q554.541 1294.13 550.027 1289.34 Q545.513 1284.52 545.513 1276.21 Q545.513 1267.88 550.027 1263.09 Q554.541 1258.27 562.388 1258.27 Q565.49 1258.27 568.222 1259.1 Q570.976 1259.91 573.384 1261.56 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M612.018 1268.29 L612.018 1272.32 Q610.212 1271.4 608.268 1270.93 Q606.323 1270.47 604.24 1270.47 Q601.069 1270.47 599.471 1271.44 Q597.897 1272.41 597.897 1274.36 Q597.897 1275.84 599.032 1276.7 Q600.166 1277.53 603.592 1278.29 L605.05 1278.62 Q609.587 1279.59 611.485 1281.37 Q613.406 1283.13 613.406 1286.3 Q613.406 1289.91 610.536 1292.02 Q607.689 1294.13 602.689 1294.13 Q600.606 1294.13 598.337 1293.71 Q596.092 1293.32 593.592 1292.51 L593.592 1288.11 Q595.953 1289.34 598.245 1289.96 Q600.536 1290.56 602.782 1290.56 Q605.791 1290.56 607.411 1289.54 Q609.032 1288.5 609.032 1286.63 Q609.032 1284.89 607.851 1283.97 Q606.694 1283.04 602.735 1282.18 L601.254 1281.84 Q597.295 1281 595.536 1279.29 Q593.777 1277.55 593.777 1274.54 Q593.777 1270.89 596.37 1268.9 Q598.962 1266.91 603.731 1266.91 Q606.092 1266.91 608.175 1267.25 Q610.258 1267.6 612.018 1268.29 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M624.402 1260.17 L624.402 1267.53 L633.175 1267.53 L633.175 1270.84 L624.402 1270.84 L624.402 1284.91 Q624.402 1288.09 625.258 1288.99 Q626.138 1289.89 628.8 1289.89 L633.175 1289.89 L633.175 1293.46 L628.8 1293.46 Q623.869 1293.46 621.994 1291.63 Q620.119 1289.78 620.119 1284.91 L620.119 1270.84 L616.994 1270.84 L616.994 1267.53 L620.119 1267.53 L620.119 1260.17 L624.402 1260.17 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M660.953 1279.43 L660.953 1281.51 L641.369 1281.51 Q641.647 1285.91 644.008 1288.22 Q646.392 1290.52 650.629 1290.52 Q653.082 1290.52 655.374 1289.91 Q657.689 1289.31 659.957 1288.11 L659.957 1292.14 Q657.666 1293.11 655.258 1293.62 Q652.851 1294.13 650.374 1294.13 Q644.17 1294.13 640.536 1290.52 Q636.925 1286.91 636.925 1280.75 Q636.925 1274.38 640.351 1270.66 Q643.8 1266.91 649.633 1266.91 Q654.865 1266.91 657.897 1270.29 Q660.953 1273.64 660.953 1279.43 M656.693 1278.18 Q656.647 1274.68 654.726 1272.6 Q652.828 1270.52 649.679 1270.52 Q646.115 1270.52 643.962 1272.53 Q641.832 1274.54 641.508 1278.2 L656.693 1278.18 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M672.064 1289.57 L672.064 1303.32 L667.781 1303.32 L667.781 1267.53 L672.064 1267.53 L672.064 1271.47 Q673.406 1269.15 675.443 1268.04 Q677.503 1266.91 680.351 1266.91 Q685.073 1266.91 688.013 1270.66 Q690.976 1274.41 690.976 1280.52 Q690.976 1286.63 688.013 1290.38 Q685.073 1294.13 680.351 1294.13 Q677.503 1294.13 675.443 1293.02 Q673.406 1291.88 672.064 1289.57 M686.554 1280.52 Q686.554 1275.82 684.61 1273.16 Q682.689 1270.47 679.309 1270.47 Q675.929 1270.47 673.985 1273.16 Q672.064 1275.82 672.064 1280.52 Q672.064 1285.22 673.985 1287.9 Q675.929 1290.56 679.309 1290.56 Q682.689 1290.56 684.61 1287.9 Q686.554 1285.22 686.554 1280.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M714.563 1268.29 L714.563 1272.32 Q712.758 1271.4 710.813 1270.93 Q708.869 1270.47 706.786 1270.47 Q703.614 1270.47 702.017 1271.44 Q700.443 1272.41 700.443 1274.36 Q700.443 1275.84 701.577 1276.7 Q702.712 1277.53 706.137 1278.29 L707.596 1278.62 Q712.133 1279.59 714.031 1281.37 Q715.952 1283.13 715.952 1286.3 Q715.952 1289.91 713.082 1292.02 Q710.235 1294.13 705.235 1294.13 Q703.151 1294.13 700.883 1293.71 Q698.638 1293.32 696.138 1292.51 L696.138 1288.11 Q698.499 1289.34 700.79 1289.96 Q703.082 1290.56 705.327 1290.56 Q708.337 1290.56 709.957 1289.54 Q711.577 1288.5 711.577 1286.63 Q711.577 1284.89 710.397 1283.97 Q709.239 1283.04 705.281 1282.18 L703.8 1281.84 Q699.841 1281 698.082 1279.29 Q696.323 1277.55 696.323 1274.54 Q696.323 1270.89 698.915 1268.9 Q701.508 1266.91 706.276 1266.91 Q708.637 1266.91 710.721 1267.25 Q712.804 1267.6 714.563 1268.29 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M738.36 1271.93 L768.035 1271.93 L768.035 1275.82 L738.36 1275.82 L738.36 1271.93 M738.36 1281.37 L768.035 1281.37 L768.035 1285.31 L738.36 1285.31 L738.36 1281.37 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M794.007 1289.52 L801.646 1289.52 L801.646 1263.16 L793.336 1264.82 L793.336 1260.56 L801.6 1258.9 L806.276 1258.9 L806.276 1289.52 L813.915 1289.52 L813.915 1293.46 L794.007 1293.46 L794.007 1289.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M833.359 1261.97 Q829.748 1261.97 827.919 1265.54 Q826.114 1269.08 826.114 1276.21 Q826.114 1283.32 827.919 1286.88 Q829.748 1290.42 833.359 1290.42 Q836.993 1290.42 838.799 1286.88 Q840.627 1283.32 840.627 1276.21 Q840.627 1269.08 838.799 1265.54 Q836.993 1261.97 833.359 1261.97 M833.359 1258.27 Q839.169 1258.27 842.225 1262.88 Q845.303 1267.46 845.303 1276.21 Q845.303 1284.94 842.225 1289.54 Q839.169 1294.13 833.359 1294.13 Q827.549 1294.13 824.47 1289.54 Q821.415 1284.94 821.415 1276.21 Q821.415 1267.46 824.47 1262.88 Q827.549 1258.27 833.359 1258.27 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><polyline clip-path="url(#clip180)" style="stroke:#c271d2; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="343.018,1328.02 483.232,1328.02 "></polyline>
+<circle clip-path="url(#clip180)" cx="413.125" cy="1328.02" r="19.4742" fill="#c271d2" fill-rule="evenodd" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="4.55111"></circle>
+<path clip-path="url(#clip180)" d="M506.602 1310.74 L513.569 1310.74 L522.388 1334.25 L531.254 1310.74 L538.222 1310.74 L538.222 1345.3 L533.662 1345.3 L533.662 1314.95 L524.75 1338.65 L520.051 1338.65 L511.139 1314.95 L511.139 1345.3 L506.602 1345.3 L506.602 1310.74 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M573.384 1313.4 L573.384 1318.33 Q571.022 1316.13 568.337 1315.04 Q565.675 1313.95 562.666 1313.95 Q556.74 1313.95 553.592 1317.59 Q550.444 1321.2 550.444 1328.05 Q550.444 1334.88 553.592 1338.51 Q556.74 1342.12 562.666 1342.12 Q565.675 1342.12 568.337 1341.04 Q571.022 1339.95 573.384 1337.75 L573.384 1342.63 Q570.93 1344.3 568.175 1345.13 Q565.444 1345.97 562.388 1345.97 Q554.541 1345.97 550.027 1341.18 Q545.513 1336.36 545.513 1328.05 Q545.513 1319.72 550.027 1314.93 Q554.541 1310.11 562.388 1310.11 Q565.49 1310.11 568.222 1310.94 Q570.976 1311.75 573.384 1313.4 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M612.018 1320.13 L612.018 1324.16 Q610.212 1323.24 608.268 1322.77 Q606.323 1322.31 604.24 1322.31 Q601.069 1322.31 599.471 1323.28 Q597.897 1324.25 597.897 1326.2 Q597.897 1327.68 599.032 1328.54 Q600.166 1329.37 603.592 1330.13 L605.05 1330.46 Q609.587 1331.43 611.485 1333.21 Q613.406 1334.97 613.406 1338.14 Q613.406 1341.75 610.536 1343.86 Q607.689 1345.97 602.689 1345.97 Q600.606 1345.97 598.337 1345.55 Q596.092 1345.16 593.592 1344.35 L593.592 1339.95 Q595.953 1341.18 598.245 1341.8 Q600.536 1342.4 602.782 1342.4 Q605.791 1342.4 607.411 1341.38 Q609.032 1340.34 609.032 1338.47 Q609.032 1336.73 607.851 1335.81 Q606.694 1334.88 602.735 1334.02 L601.254 1333.68 Q597.295 1332.84 595.536 1331.13 Q593.777 1329.39 593.777 1326.38 Q593.777 1322.73 596.37 1320.74 Q598.962 1318.75 603.731 1318.75 Q606.092 1318.75 608.175 1319.09 Q610.258 1319.44 612.018 1320.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M624.402 1312.01 L624.402 1319.37 L633.175 1319.37 L633.175 1322.68 L624.402 1322.68 L624.402 1336.75 Q624.402 1339.93 625.258 1340.83 Q626.138 1341.73 628.8 1341.73 L633.175 1341.73 L633.175 1345.3 L628.8 1345.3 Q623.869 1345.3 621.994 1343.47 Q620.119 1341.62 620.119 1336.75 L620.119 1322.68 L616.994 1322.68 L616.994 1319.37 L620.119 1319.37 L620.119 1312.01 L624.402 1312.01 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M660.953 1331.27 L660.953 1333.35 L641.369 1333.35 Q641.647 1337.75 644.008 1340.06 Q646.392 1342.36 650.629 1342.36 Q653.082 1342.36 655.374 1341.75 Q657.689 1341.15 659.957 1339.95 L659.957 1343.98 Q657.666 1344.95 655.258 1345.46 Q652.851 1345.97 650.374 1345.97 Q644.17 1345.97 640.536 1342.36 Q636.925 1338.75 636.925 1332.59 Q636.925 1326.22 640.351 1322.5 Q643.8 1318.75 649.633 1318.75 Q654.865 1318.75 657.897 1322.13 Q660.953 1325.48 660.953 1331.27 M656.693 1330.02 Q656.647 1326.52 654.726 1324.44 Q652.828 1322.36 649.679 1322.36 Q646.115 1322.36 643.962 1324.37 Q641.832 1326.38 641.508 1330.04 L656.693 1330.02 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M672.064 1341.41 L672.064 1355.16 L667.781 1355.16 L667.781 1319.37 L672.064 1319.37 L672.064 1323.31 Q673.406 1320.99 675.443 1319.88 Q677.503 1318.75 680.351 1318.75 Q685.073 1318.75 688.013 1322.5 Q690.976 1326.25 690.976 1332.36 Q690.976 1338.47 688.013 1342.22 Q685.073 1345.97 680.351 1345.97 Q677.503 1345.97 675.443 1344.86 Q673.406 1343.72 672.064 1341.41 M686.554 1332.36 Q686.554 1327.66 684.61 1325 Q682.689 1322.31 679.309 1322.31 Q675.929 1322.31 673.985 1325 Q672.064 1327.66 672.064 1332.36 Q672.064 1337.06 673.985 1339.74 Q675.929 1342.4 679.309 1342.4 Q682.689 1342.4 684.61 1339.74 Q686.554 1337.06 686.554 1332.36 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M714.563 1320.13 L714.563 1324.16 Q712.758 1323.24 710.813 1322.77 Q708.869 1322.31 706.786 1322.31 Q703.614 1322.31 702.017 1323.28 Q700.443 1324.25 700.443 1326.2 Q700.443 1327.68 701.577 1328.54 Q702.712 1329.37 706.137 1330.13 L707.596 1330.46 Q712.133 1331.43 714.031 1333.21 Q715.952 1334.97 715.952 1338.14 Q715.952 1341.75 713.082 1343.86 Q710.235 1345.97 705.235 1345.97 Q703.151 1345.97 700.883 1345.55 Q698.638 1345.16 696.138 1344.35 L696.138 1339.95 Q698.499 1341.18 700.79 1341.8 Q703.082 1342.4 705.327 1342.4 Q708.337 1342.4 709.957 1341.38 Q711.577 1340.34 711.577 1338.47 Q711.577 1336.73 710.397 1335.81 Q709.239 1334.88 705.281 1334.02 L703.8 1333.68 Q699.841 1332.84 698.082 1331.13 Q696.323 1329.39 696.323 1326.38 Q696.323 1322.73 698.915 1320.74 Q701.508 1318.75 706.276 1318.75 Q708.637 1318.75 710.721 1319.09 Q712.804 1319.44 714.563 1320.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M738.36 1323.77 L768.035 1323.77 L768.035 1327.66 L738.36 1327.66 L738.36 1323.77 M738.36 1333.21 L768.035 1333.21 L768.035 1337.15 L738.36 1337.15 L738.36 1333.21 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M797.225 1341.36 L813.544 1341.36 L813.544 1345.3 L791.6 1345.3 L791.6 1341.36 Q794.262 1338.61 798.845 1333.98 Q803.452 1329.32 804.632 1327.98 Q806.878 1325.46 807.757 1323.72 Q808.66 1321.96 808.66 1320.27 Q808.66 1317.52 806.716 1315.78 Q804.794 1314.05 801.693 1314.05 Q799.493 1314.05 797.04 1314.81 Q794.609 1315.57 791.831 1317.13 L791.831 1312.4 Q794.656 1311.27 797.109 1310.69 Q799.563 1310.11 801.6 1310.11 Q806.97 1310.11 810.165 1312.8 Q813.359 1315.48 813.359 1319.97 Q813.359 1322.1 812.549 1324.02 Q811.762 1325.92 809.655 1328.51 Q809.077 1329.19 805.975 1332.4 Q802.873 1335.6 797.225 1341.36 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip180)" d="M833.359 1313.81 Q829.748 1313.81 827.919 1317.38 Q826.114 1320.92 826.114 1328.05 Q826.114 1335.16 827.919 1338.72 Q829.748 1342.26 833.359 1342.26 Q836.993 1342.26 838.799 1338.72 Q840.627 1335.16 840.627 1328.05 Q840.627 1320.92 838.799 1317.38 Q836.993 1313.81 833.359 1313.81 M833.359 1310.11 Q839.169 1310.11 842.225 1314.72 Q845.303 1319.3 845.303 1328.05 Q845.303 1336.78 842.225 1341.38 Q839.169 1345.97 833.359 1345.97 Q827.549 1345.97 824.47 1341.38 Q821.415 1336.78 821.415 1328.05 Q821.415 1319.3 824.47 1314.72 Q827.549 1310.11 833.359 1310.11 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path></svg> \ No newline at end of file
diff --git a/hw9/12-11.jl b/hw9/12-11.jl
new file mode 100644
index 0000000..ee7e2b1
--- /dev/null
+++ b/hw9/12-11.jl
@@ -0,0 +1,272 @@
+# my neural net from 12.11
+
+# first, store the memory of A as a lattice of 1, -1, where 1 is the memory and -1 is the absence of memory
+A = [
+ -1 -1 -1 -1 1 1 -1 -1 -1 -1;
+ -1 -1 -1 1 1 1 1 -1 -1 -1;
+ -1 -1 1 1 -1 -1 1 1 -1 -1;
+ -1 1 1 -1 -1 -1 -1 1 1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 1 1;
+ -1 1 1 -1 -1 -1 -1 1 1 -1;
+ -1 -1 1 1 -1 -1 1 1 -1 -1;
+ -1 -1 -1 1 1 1 1 -1 -1 -1;
+ -1 -1 -1 -1 1 1 -1 -1 -1 -1
+]
+
+B = [
+ 1 1 1 1 1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 1 1 1 -1 -1 -1 -1 -1;
+ 1 1 1 1 1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 1 1 1 -1 -1 -1 -1 -1
+]
+
+C = [
+ -1 1 1 1 1 1 1 -1 -1 -1;
+ 1 1 1 1 1 1 1 -1 -1 -1;
+ 1 1 1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 1 1 1 1 1 -1 -1 -1;
+ -1 1 1 1 1 1 1 -1 -1 -1
+]
+
+D = [
+ 1 1 1 1 1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 1 1 1 -1 -1 -1 -1 -1
+]
+
+E_letter = [
+ 1 1 1 1 1 1 1 1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 1 1 1 1 1 1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 1 1 1 1 1 1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 1 1 1 1 1 1 1 1
+]
+
+F = [
+ 1 1 1 1 1 1 1 1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 1 1 1 1 1 1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1
+]
+
+G = [
+ 1 1 1 1 1 1 1 1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 1 1;
+ -1 1 1 1 1 1 1 1 1 1;
+ -1 -1 1 1 1 1 1 1 1 1
+]
+
+encodings = [A, B, F, G]
+
+spin_numbers(row, col) = (row - 1) * 10 + col
+
+# create strength of interactions between ith and jth spinds in Ji,j
+J = zeros(100, 100)
+for m in 1:100 # row
+ for n in 1:100 # col
+ i = (m - 1) % 10 + 1
+ j = (n - 1) % 10 + 1
+ k = (m - 1) ÷ 10 + 1
+ l = (n - 1) ÷ 10 + 1
+
+ J[m, n] = 0
+ for encoding in encodings
+ J[m, n] += encoding[i, k] * encoding[j, l]
+ end
+ J[m, n] /= length(encodings)
+ end
+end
+
+# the energy function
+function energy(s, J)
+ E = 0
+ for i in 1:100
+ for j in 1:100
+ E += J[i, j] * s[i] * s[j]
+ end
+ end
+ return -E
+end
+
+# the update function (uses monte carlo steps)
+function monte_carlo(s, J)
+ for i in 1:100 # systematically go through each point in the lattice
+ # calculate the energy of the system
+ E = energy(s, J)
+ # randomly flip a spin
+ s[i] = -s[i]
+ # calculate the new energy of the system
+ E_new = energy(s, J)
+ # calculate the change in energy
+ dE = E_new - E
+ # if the change in energy is positive, flip the spin back
+ if dE > 0
+ s[i] = -s[i]
+ end
+ end
+ return s
+end
+
+# create the main function
+function main(s, J, nsteps)
+ E = energy(s, J)
+ for i in 1:nsteps
+ s = monte_carlo(s, J)
+ E = energy(s, J)
+ end
+ return s, E
+end
+
+# run the main function
+
+# randomly change some values in A to see if NN works
+function produce_test_arr(enc, prob_change = 0.1)
+ tmp = zeros(10, 10)
+ for i in 1:10
+ for j in 1:10
+ if rand() < prob_change
+ tmp[i, j] = rand([-1, 1]) # set some random values
+ else
+ tmp[i, j] = enc[i, j]
+ end
+ end
+ end
+ return tmp
+end
+
+function check_if_same(s, enc)
+ for i in 1:10
+ for j in 1:10
+ if s[i, j] != enc[i, j]
+ println("The neural net did not work")
+ return false
+ end
+ end
+ end
+ # println("The neural net worked")
+ return true
+end
+
+function apply_damage_to_J(J, prob_damage = 0.8)
+ println("Applying damage to J with probability ", prob_damage)
+ ret = copy(J)
+ for i in 1:100
+ for j in 1:100
+ if rand() < prob_damage
+ ret[i, j] = 0
+ else
+ ret[i, j] = J[i, j]
+ end
+ end
+ end
+ return ret
+end
+
+function run_tests(num_times, Js, MC_steps = 2)
+ num_correct = 0
+ num_total = 0
+
+ for i in 1:num_times
+ # randomly select a memory
+ enc = encodings[rand(1:length(encodings))]
+ # produce a test array
+ s = produce_test_arr(enc)
+ # run theNN
+ s, E = main(s, Js, MC_steps)
+ # check if the NN worked
+ if check_if_same(s, enc)
+ num_correct += 1
+ end
+ num_total += 1
+ end
+
+ println("Number of correct tests: ", num_correct)
+
+ return num_correct / num_total
+end
+
+function run_tests_for_damage_range(damages, num_times, MC_steps = 2, init_J = J)
+ res = []
+
+ for damage in damages
+ damaged_J = apply_damage_to_J(init_J, damage)
+ p = run_tests(num_times, damaged_J, MC_steps)
+
+ push!(res, p)
+ end
+
+ return res
+end
+
+
+# J = apply_damage_to_J(J, 0.8)
+
+# s = produce_test_arr(F)
+# s, E = main(s, J, 2)
+# check_if_same(s, F)
+
+s = produce_test_arr(A)
+s, E = main(s, J, 2)
+check_if_same(s, A)
+
+# s = produce_test_arr(C, 0.0)
+# s, E = main(s, J, 2)
+# check_if_same(s, C)
+
+damage_range = collect(0.1:0.05:1.0)
+res = run_tests_for_damage_range(damage_range, 100)
+
+#plot the results
+using Plots
+plot(damage_range, res, xlabel = "Damage", ylabel = "Success rate", title = "NN success rate vs damage probability", marker = :circle, label = "MC steps = 2")
+
+# do the same for different number of MC steps
+res = run_tests_for_damage_range(damage_range, 100, 5)
+plot!(damage_range, res, xlabel = "Damage", ylabel = "Success rate", title = "NN success rate vs damage probability", marker = :circle, label = "MC steps = 5")
+
+res = run_tests_for_damage_range(damage_range, 100, 10)
+plot!(damage_range, res, xlabel = "Damage", ylabel = "Success rate", title = "NN success rate vs damage probability", marker = :circle, label = "MC steps = 10")
+
+res = run_tests_for_damage_range(damage_range, 100, 20)
+plot!(damage_range, res, xlabel = "Damage", ylabel = "Success rate", title = "NN success rate vs damage probability", marker = :circle, label = "MC steps = 20")
+
+savefig("12-11-all.png")
+
+
+
diff --git a/hw9/12-12-all.png b/hw9/12-12-all.png
new file mode 100644
index 0000000..edfb678
--- /dev/null
+++ b/hw9/12-12-all.png
Binary files differ
diff --git a/hw9/12-12-test.png b/hw9/12-12-test.png
new file mode 100644
index 0000000..f86297e
--- /dev/null
+++ b/hw9/12-12-test.png
Binary files differ
diff --git a/hw9/12-12.jl b/hw9/12-12.jl
new file mode 100644
index 0000000..e08eadc
--- /dev/null
+++ b/hw9/12-12.jl
@@ -0,0 +1,253 @@
+# my neural net from 12.11
+
+# first, store the memory of A as a lattice of 1, -1, where 1 is the memory and -1 is the absence of memory
+A = [
+ -1 -1 -1 -1 1 1 -1 -1 -1 -1;
+ -1 -1 -1 1 1 1 1 -1 -1 -1;
+ -1 -1 1 1 -1 -1 1 1 -1 -1;
+ -1 1 1 -1 -1 -1 -1 1 1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 1 1;
+ -1 1 1 -1 -1 -1 -1 1 1 -1;
+ -1 -1 1 1 -1 -1 1 1 -1 -1;
+ -1 -1 -1 1 1 1 1 -1 -1 -1;
+ -1 -1 -1 -1 1 1 -1 -1 -1 -1
+]
+
+B = [
+ 1 1 1 1 1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 1 1 1 -1 -1 -1 -1 -1;
+ 1 1 1 1 1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 1 1 1 -1 -1 -1 -1 -1
+]
+
+C = [
+ -1 1 1 1 1 1 1 -1 -1 -1;
+ 1 1 1 1 1 1 1 -1 -1 -1;
+ 1 1 1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 1 1 1 1 1 -1 -1 -1;
+ -1 1 1 1 1 1 1 -1 -1 -1
+]
+
+D = [
+ 1 1 1 1 1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 -1 -1 1 1 -1 -1 -1 -1;
+ 1 1 1 1 1 -1 -1 -1 -1 -1
+]
+
+E_letter = [
+ 1 1 1 1 1 1 1 1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 1 1 1 1 1 1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 1 1 1 1 1 1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 1 1 1 1 1 1 1 1
+]
+
+F = [
+ 1 1 1 1 1 1 1 1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 1 1 1 1 1 1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1
+]
+
+G = [
+ 1 1 1 1 1 1 1 1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 -1 -1 -1;
+ 1 1 -1 -1 -1 -1 -1 1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 1 1;
+ 1 1 -1 -1 -1 -1 -1 -1 1 1;
+ -1 1 1 1 1 1 1 1 1 1;
+ -1 -1 1 1 1 1 1 1 1 1
+]
+
+encodings = [A, B, C, D, E_letter, F, G]
+
+spin_numbers(row, col) = (row - 1) * 10 + col
+
+# create strength of interactions between ith and jth spinds in Ji,j
+J = zeros(100, 100)
+for m in 1:100 # row
+ for n in 1:100 # col
+ i = (m - 1) % 10 + 1
+ j = (n - 1) % 10 + 1
+ k = (m - 1) ÷ 10 + 1
+ l = (n - 1) ÷ 10 + 1
+
+ J[m, n] = 0
+ for encoding in encodings
+ J[m, n] += encoding[i, k] * encoding[j, l]
+ end
+ J[m, n] /= length(encodings)
+ end
+end
+
+# the energy function
+function energy(s, J)
+ E = 0
+ for i in 1:100
+ for j in 1:100
+ E += J[i, j] * s[i] * s[j]
+ end
+ end
+ return -E
+end
+
+# the update function (uses monte carlo steps)
+function monte_carlo(s, J)
+ for i in 1:100 # systematically go through each point in the lattice
+ # calculate the energy of the system
+ E = energy(s, J)
+ # randomly flip a spin
+ s[i] = -s[i]
+ # calculate the new energy of the system
+ E_new = energy(s, J)
+ # calculate the change in energy
+ dE = E_new - E
+ # if the change in energy is positive, flip the spin back
+ if dE > 0
+ s[i] = -s[i]
+ end
+ end
+ return s
+end
+
+# create the main function
+function main(s, J, nsteps)
+ E = energy(s, J)
+ for i in 1:nsteps
+ s = monte_carlo(s, J)
+ E = energy(s, J)
+ end
+ return s, E
+end
+
+# run the main function
+
+# randomly change some values in A to see if NN works
+function produce_test_arr(enc, prob_change = 0.1)
+ tmp = zeros(10, 10)
+ for i in 1:10
+ for j in 1:10
+ if rand() < prob_change
+ tmp[i, j] = rand([-1, 1]) # set some random values
+ else
+ tmp[i, j] = enc[i, j]
+ end
+ end
+ end
+ return tmp
+end
+
+function check_if_same(s, enc)
+ for i in 1:10
+ for j in 1:10
+ if s[i, j] != enc[i, j]
+ println("The neural net did not work")
+ return false
+ end
+ end
+ end
+ # println("The neural net worked")
+ return true
+end
+
+function apply_damage_to_J(J, prob_damage = 0.8)
+ println("Applying damage to J with probability ", prob_damage)
+ ret = copy(J)
+ for i in 1:100
+ for j in 1:100
+ if rand() < prob_damage
+ ret[i, j] = 0
+ else
+ ret[i, j] = J[i, j]
+ end
+ end
+ end
+ return ret
+end
+
+function run_tests(num_times, Js, MC_steps = 2)
+ num_correct = 0
+ num_total = 0
+
+ for i in 1:num_times
+ # randomly select a memory
+ enc = encodings[rand(1:length(encodings))]
+ # produce a test array
+ s = produce_test_arr(enc)
+ # run theNN
+ s, E = main(s, Js, MC_steps)
+ # check if the NN worked
+ if check_if_same(s, enc)
+ num_correct += 1
+ end
+ num_total += 1
+ end
+
+ println("Number of correct tests: ", num_correct)
+
+ return num_correct / num_total
+end
+
+function run_tests_for_damage_range(damages, num_times, MC_steps = 2, init_J = J)
+ res = []
+
+ for damage in damages
+ damaged_J = apply_damage_to_J(init_J, damage)
+ p = run_tests(num_times, damaged_J, MC_steps)
+
+ push!(res, p)
+ end
+
+ return res
+end
+
+damage_range = collect(0.0:0.1:0.15)
+res = run_tests_for_damage_range(damage_range, 10)
+
+#plot the results
+using Plots
+plot(damage_range, res, xlabel = "Damage", ylabel = "Success rate", title = "NN success rate vs damage probability", marker = :circle, label = "MC steps = 2")
+
+res = run_tests_for_damage_range(damage_range, 10, 10)
+plot!(damage_range, res, xlabel = "Damage", ylabel = "Success rate", title = "NN success rate vs damage probability", marker = :circle, label = "MC steps = 10")
+
+res = run_tests_for_damage_range(damage_range, 10, 100)
+plot!(damage_range, res, xlabel = "Damage", ylabel = "Success rate", title = "NN success rate vs damage probability", marker = :circle, label = "MC steps = 100")
+
+res = run_tests_for_damage_range(damage_range, 10, 1000)
+plot!(damage_range, res, xlabel = "Damage", ylabel = "Success rate", title = "NN success rate vs damage probability", marker = :circle, label = "MC steps = 1000")
+
+savefig("12-12-all.png") \ No newline at end of file
diff --git a/hw9/YaoQuantumComputing.jl b/hw9/YaoQuantumComputing.jl
new file mode 100644
index 0000000..36c22d6
--- /dev/null
+++ b/hw9/YaoQuantumComputing.jl
@@ -0,0 +1,28 @@
+using Yao, YaoPlots
+
+let
+ circuit = chain(2, put(1=>X), put(2=>X))
+ plot(circuit)
+end
+
+
+begin
+ bellcircuit = chain(2, put(1=>H), control(1, 2=>X))
+ plot(bellcircuit)
+end
+
+
+q1 = ArrayReg(bit"00") #creating the system of two qubits with state |00>
+println(state(q1))
+println(q1 |> r->measure(r, nshots=10))
+
+a = (q1 |> bellcircuit)
+println(state(a))
+println(a |> r->measure(r, nshots=10))
+
+
+reversebellcircuit = chain(2, control(1,2=>X), put(1=>H))
+plot(reversebellcircuit)
+
+b = (a |> reversebellcircuit)
+println(state(b)) \ No newline at end of file
diff --git a/hw9/qubit00.svg b/hw9/qubit00.svg
new file mode 100644
index 0000000..677f7e7
--- /dev/null
+++ b/hw9/qubit00.svg
@@ -0,0 +1,39 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="300" height="400" viewBox="0 0 1200 1600">
+<defs>
+ <clipPath id="clip260">
+ <rect x="0" y="0" width="1200" height="1600"></rect>
+ </clipPath>
+</defs>
+<path clip-path="url(#clip260)" d="M0 1600 L1200 1600 L1200 0 L0 0 Z" fill="#ffffff" fill-rule="evenodd" fill-opacity="1"></path>
+<defs>
+ <clipPath id="clip261">
+ <rect x="320" y="159" width="1121" height="1121"></rect>
+ </clipPath>
+</defs>
+<path clip-path="url(#clip260)" d="M47.2441 1552.76 L1152.76 1552.76 L1152.76 47.2441 L47.2441 47.2441 Z" fill="#ffffff" fill-rule="evenodd" fill-opacity="1"></path>
+<defs>
+ <clipPath id="clip262">
+ <rect x="47" y="47" width="1107" height="1507"></rect>
+ </clipPath>
+</defs>
+<path clip-path="url(#clip262)" d="M108.049 47.2441 L108.049 1552.76 L315.186 1552.76 L315.186 47.2441 L108.049 47.2441 L108.049 47.2441 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip262)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="108.049,47.2441 108.049,1552.76 315.186,1552.76 315.186,47.2441 108.049,47.2441 "></polyline>
+<path clip-path="url(#clip262)" d="M366.971 1552.76 L366.971 1552.76 L574.108 1552.76 L574.108 1552.76 L366.971 1552.76 L366.971 1552.76 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip262)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="366.971,1552.76 366.971,1552.76 574.108,1552.76 366.971,1552.76 "></polyline>
+<path clip-path="url(#clip262)" d="M625.892 1552.76 L625.892 1552.76 L833.029 1552.76 L833.029 1552.76 L625.892 1552.76 L625.892 1552.76 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip262)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="625.892,1552.76 625.892,1552.76 833.029,1552.76 625.892,1552.76 "></polyline>
+<path clip-path="url(#clip262)" d="M884.814 1552.76 L884.814 1552.76 L1091.95 1552.76 L1091.95 1552.76 L884.814 1552.76 L884.814 1552.76 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip262)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="884.814,1552.76 884.814,1552.76 1091.95,1552.76 884.814,1552.76 "></polyline>
+<circle clip-path="url(#clip262)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="211.618" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip262)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="470.539" cy="1552.76" r="2"></circle>
+<circle clip-path="url(#clip262)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="729.461" cy="1552.76" r="2"></circle>
+<circle clip-path="url(#clip262)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="988.382" cy="1552.76" r="2"></circle>
+<circle clip-path="url(#clip262)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="211.618" cy="1551.29" r="2"></circle>
+<circle clip-path="url(#clip262)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="470.539" cy="1551.29" r="2"></circle>
+<circle clip-path="url(#clip262)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="729.461" cy="1551.29" r="2"></circle>
+<circle clip-path="url(#clip262)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="988.382" cy="1551.29" r="2"></circle>
+<path clip-path="url(#clip260)" d="M144.535 1518.13 L144.535 1601.09 L137.648 1601.09 L137.648 1518.13 L144.535 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M181.439 1526.43 Q175.119 1526.43 171.919 1532.67 Q168.759 1538.87 168.759 1551.35 Q168.759 1563.78 171.919 1570.02 Q175.119 1576.22 181.439 1576.22 Q187.798 1576.22 190.958 1570.02 Q194.158 1563.78 194.158 1551.35 Q194.158 1538.87 190.958 1532.67 Q187.798 1526.43 181.439 1526.43 M181.439 1519.95 Q191.606 1519.95 196.954 1528.01 Q202.341 1536.03 202.341 1551.35 Q202.341 1566.62 196.954 1574.68 Q191.606 1582.7 181.439 1582.7 Q171.271 1582.7 165.883 1574.68 Q160.536 1566.62 160.536 1551.35 Q160.536 1536.03 165.883 1528.01 Q171.271 1519.95 181.439 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M234.222 1526.43 Q227.902 1526.43 224.702 1532.67 Q221.543 1538.87 221.543 1551.35 Q221.543 1563.78 224.702 1570.02 Q227.902 1576.22 234.222 1576.22 Q240.582 1576.22 243.741 1570.02 Q246.942 1563.78 246.942 1551.35 Q246.942 1538.87 243.741 1532.67 Q240.582 1526.43 234.222 1526.43 M234.222 1519.95 Q244.39 1519.95 249.737 1528.01 Q255.125 1536.03 255.125 1551.35 Q255.125 1566.62 249.737 1574.68 Q244.39 1582.7 234.222 1582.7 Q224.054 1582.7 218.666 1574.68 Q213.319 1566.62 213.319 1551.35 Q213.319 1536.03 218.666 1528.01 Q224.054 1519.95 234.222 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M285.587 1555.52 L274.164 1592.46 L267.277 1592.46 L278.701 1555.52 L267.277 1518.57 L274.164 1518.57 L285.587 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M403.456 1518.13 L403.456 1601.09 L396.57 1601.09 L396.57 1518.13 L403.456 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M440.36 1526.43 Q434.041 1526.43 430.84 1532.67 Q427.681 1538.87 427.681 1551.35 Q427.681 1563.78 430.84 1570.02 Q434.041 1576.22 440.36 1576.22 Q446.72 1576.22 449.88 1570.02 Q453.08 1563.78 453.08 1551.35 Q453.08 1538.87 449.88 1532.67 Q446.72 1526.43 440.36 1526.43 M440.36 1519.95 Q450.528 1519.95 455.875 1528.01 Q461.263 1536.03 461.263 1551.35 Q461.263 1566.62 455.875 1574.68 Q450.528 1582.7 440.36 1582.7 Q430.192 1582.7 424.805 1574.68 Q419.457 1566.62 419.457 1551.35 Q419.457 1536.03 424.805 1528.01 Q430.192 1519.95 440.36 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M477.061 1574.64 L490.429 1574.64 L490.429 1528.5 L475.886 1531.42 L475.886 1523.96 L490.348 1521.05 L498.531 1521.05 L498.531 1574.64 L511.899 1574.64 L511.899 1581.53 L477.061 1581.53 L477.061 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M544.509 1555.52 L533.085 1592.46 L526.199 1592.46 L537.622 1555.52 L526.199 1518.57 L533.085 1518.57 L544.509 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M662.378 1518.13 L662.378 1601.09 L655.491 1601.09 L655.491 1518.13 L662.378 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M683.199 1574.64 L696.567 1574.64 L696.567 1528.5 L682.025 1531.42 L682.025 1523.96 L696.486 1521.05 L704.669 1521.05 L704.669 1574.64 L718.037 1574.64 L718.037 1581.53 L683.199 1581.53 L683.199 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M752.065 1526.43 Q745.745 1526.43 742.545 1532.67 Q739.385 1538.87 739.385 1551.35 Q739.385 1563.78 742.545 1570.02 Q745.745 1576.22 752.065 1576.22 Q758.425 1576.22 761.584 1570.02 Q764.785 1563.78 764.785 1551.35 Q764.785 1538.87 761.584 1532.67 Q758.425 1526.43 752.065 1526.43 M752.065 1519.95 Q762.233 1519.95 767.58 1528.01 Q772.967 1536.03 772.967 1551.35 Q772.967 1566.62 767.58 1574.68 Q762.233 1582.7 752.065 1582.7 Q741.897 1582.7 736.509 1574.68 Q731.162 1566.62 731.162 1551.35 Q731.162 1536.03 736.509 1528.01 Q741.897 1519.95 752.065 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M803.43 1555.52 L792.007 1592.46 L785.12 1592.46 L796.544 1555.52 L785.12 1518.57 L792.007 1518.57 L803.43 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M921.299 1518.13 L921.299 1601.09 L914.413 1601.09 L914.413 1518.13 L921.299 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M942.121 1574.64 L955.489 1574.64 L955.489 1528.5 L940.946 1531.42 L940.946 1523.96 L955.408 1521.05 L963.591 1521.05 L963.591 1574.64 L976.959 1574.64 L976.959 1581.53 L942.121 1581.53 L942.121 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M994.904 1574.64 L1008.27 1574.64 L1008.27 1528.5 L993.729 1531.42 L993.729 1523.96 L1008.19 1521.05 L1016.37 1521.05 L1016.37 1574.64 L1029.74 1574.64 L1029.74 1581.53 L994.904 1581.53 L994.904 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M1062.35 1555.52 L1050.93 1592.46 L1044.04 1592.46 L1055.47 1555.52 L1044.04 1518.57 L1050.93 1518.57 L1062.35 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><circle clip-path="url(#clip262)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="211.618" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip262)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="470.539" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip262)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="729.461" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip262)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="988.382" cy="47.2441" r="2"></circle>
+<path clip-path="url(#clip260)" d="M114.113 70.5976 L127.481 70.5976 L127.481 24.4578 L112.938 27.3744 L112.938 19.9207 L127.4 17.0041 L135.582 17.0041 L135.582 70.5976 L148.95 70.5976 L148.95 77.4841 L114.113 77.4841 L114.113 70.5976 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M182.978 22.3918 Q176.658 22.3918 173.458 28.6302 Q170.299 34.8281 170.299 47.3049 Q170.299 59.7411 173.458 65.9795 Q176.658 72.1774 182.978 72.1774 Q189.338 72.1774 192.498 65.9795 Q195.698 59.7411 195.698 47.3049 Q195.698 34.8281 192.498 28.6302 Q189.338 22.3918 182.978 22.3918 M182.978 15.9104 Q193.146 15.9104 198.493 23.9716 Q203.881 31.9924 203.881 47.3049 Q203.881 62.5768 198.493 70.6381 Q193.146 78.6589 182.978 78.6589 Q172.81 78.6589 167.422 70.6381 Q162.075 62.5768 162.075 47.3049 Q162.075 31.9924 167.422 23.9716 Q172.81 15.9104 182.978 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M225.31 70.5976 L253.869 70.5976 L253.869 77.4841 L215.466 77.4841 L215.466 70.5976 Q220.125 65.777 228.145 57.6752 Q236.207 49.5329 238.273 47.1833 Q242.202 42.7678 243.741 39.7297 Q245.321 36.651 245.321 33.6938 Q245.321 28.8732 241.919 25.8351 Q238.556 22.7969 233.128 22.7969 Q229.28 22.7969 224.986 24.1337 Q220.732 25.4705 215.871 28.1846 L215.871 19.9207 Q220.813 17.9358 225.107 16.9231 Q229.401 15.9104 232.966 15.9104 Q242.364 15.9104 247.954 20.6094 Q253.545 25.3084 253.545 33.1672 Q253.545 36.894 252.127 40.2563 Q250.75 43.578 247.063 48.115 Q246.05 49.2898 240.622 54.9206 Q235.194 60.5108 225.31 70.5976 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M293.527 24.1337 L272.867 56.4194 L293.527 56.4194 L293.527 24.1337 M291.38 17.0041 L301.669 17.0041 L301.669 56.4194 L310.298 56.4194 L310.298 63.2249 L301.669 63.2249 L301.669 77.4841 L293.527 77.4841 L293.527 63.2249 L266.224 63.2249 L266.224 55.3256 L291.38 17.0041 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M470.539 22.3918 Q464.22 22.3918 461.02 28.6302 Q457.86 34.8281 457.86 47.3049 Q457.86 59.7411 461.02 65.9795 Q464.22 72.1774 470.539 72.1774 Q476.899 72.1774 480.059 65.9795 Q483.259 59.7411 483.259 47.3049 Q483.259 34.8281 480.059 28.6302 Q476.899 22.3918 470.539 22.3918 M470.539 15.9104 Q480.707 15.9104 486.054 23.9716 Q491.442 31.9924 491.442 47.3049 Q491.442 62.5768 486.054 70.6381 Q480.707 78.6589 470.539 78.6589 Q460.371 78.6589 454.984 70.6381 Q449.637 62.5768 449.637 47.3049 Q449.637 31.9924 454.984 23.9716 Q460.371 15.9104 470.539 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M729.461 22.3918 Q723.141 22.3918 719.941 28.6302 Q716.781 34.8281 716.781 47.3049 Q716.781 59.7411 719.941 65.9795 Q723.141 72.1774 729.461 72.1774 Q735.821 72.1774 738.98 65.9795 Q742.181 59.7411 742.181 47.3049 Q742.181 34.8281 738.98 28.6302 Q735.821 22.3918 729.461 22.3918 M729.461 15.9104 Q739.629 15.9104 744.976 23.9716 Q750.363 31.9924 750.363 47.3049 Q750.363 62.5768 744.976 70.6381 Q739.629 78.6589 729.461 78.6589 Q719.293 78.6589 713.905 70.6381 Q708.558 62.5768 708.558 47.3049 Q708.558 31.9924 713.905 23.9716 Q719.293 15.9104 729.461 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip260)" d="M988.382 22.3918 Q982.063 22.3918 978.863 28.6302 Q975.703 34.8281 975.703 47.3049 Q975.703 59.7411 978.863 65.9795 Q982.063 72.1774 988.382 72.1774 Q994.742 72.1774 997.902 65.9795 Q1001.1 59.7411 1001.1 47.3049 Q1001.1 34.8281 997.902 28.6302 Q994.742 22.3918 988.382 22.3918 M988.382 15.9104 Q998.55 15.9104 1003.9 23.9716 Q1009.28 31.9924 1009.28 47.3049 Q1009.28 62.5768 1003.9 70.6381 Q998.55 78.6589 988.382 78.6589 Q978.214 78.6589 972.827 70.6381 Q967.48 62.5768 967.48 47.3049 Q967.48 31.9924 972.827 23.9716 Q978.214 15.9104 988.382 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path></svg> \ No newline at end of file
diff --git a/hw9/qubit01.svg b/hw9/qubit01.svg
new file mode 100644
index 0000000..e24d9f4
--- /dev/null
+++ b/hw9/qubit01.svg
@@ -0,0 +1,39 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="300" height="400" viewBox="0 0 1200 1600">
+<defs>
+ <clipPath id="clip320">
+ <rect x="0" y="0" width="1200" height="1600"></rect>
+ </clipPath>
+</defs>
+<path clip-path="url(#clip320)" d="M0 1600 L1200 1600 L1200 0 L0 0 Z" fill="#ffffff" fill-rule="evenodd" fill-opacity="1"></path>
+<defs>
+ <clipPath id="clip321">
+ <rect x="320" y="159" width="1121" height="1121"></rect>
+ </clipPath>
+</defs>
+<path clip-path="url(#clip320)" d="M47.2441 1552.76 L1152.76 1552.76 L1152.76 47.2441 L47.2441 47.2441 Z" fill="#ffffff" fill-rule="evenodd" fill-opacity="1"></path>
+<defs>
+ <clipPath id="clip322">
+ <rect x="47" y="47" width="1107" height="1507"></rect>
+ </clipPath>
+</defs>
+<path clip-path="url(#clip322)" d="M108.049 1552.76 L108.049 1552.76 L315.186 1552.76 L315.186 1552.76 L108.049 1552.76 L108.049 1552.76 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip322)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="108.049,1552.76 108.049,1552.76 315.186,1552.76 108.049,1552.76 "></polyline>
+<path clip-path="url(#clip322)" d="M366.971 47.2441 L366.971 1552.76 L574.108 1552.76 L574.108 47.2441 L366.971 47.2441 L366.971 47.2441 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip322)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="366.971,47.2441 366.971,1552.76 574.108,1552.76 574.108,47.2441 366.971,47.2441 "></polyline>
+<path clip-path="url(#clip322)" d="M625.892 1552.76 L625.892 1552.76 L833.029 1552.76 L833.029 1552.76 L625.892 1552.76 L625.892 1552.76 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip322)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="625.892,1552.76 625.892,1552.76 833.029,1552.76 625.892,1552.76 "></polyline>
+<path clip-path="url(#clip322)" d="M884.814 1552.76 L884.814 1552.76 L1091.95 1552.76 L1091.95 1552.76 L884.814 1552.76 L884.814 1552.76 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip322)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="884.814,1552.76 884.814,1552.76 1091.95,1552.76 884.814,1552.76 "></polyline>
+<circle clip-path="url(#clip322)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="211.618" cy="1552.76" r="2"></circle>
+<circle clip-path="url(#clip322)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="470.539" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip322)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="729.461" cy="1552.76" r="2"></circle>
+<circle clip-path="url(#clip322)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="988.382" cy="1552.76" r="2"></circle>
+<circle clip-path="url(#clip322)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="211.618" cy="1551.29" r="2"></circle>
+<circle clip-path="url(#clip322)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="470.539" cy="1551.29" r="2"></circle>
+<circle clip-path="url(#clip322)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="729.461" cy="1551.29" r="2"></circle>
+<circle clip-path="url(#clip322)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="988.382" cy="1551.29" r="2"></circle>
+<path clip-path="url(#clip320)" d="M144.535 1518.13 L144.535 1601.09 L137.648 1601.09 L137.648 1518.13 L144.535 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M181.439 1526.43 Q175.119 1526.43 171.919 1532.67 Q168.759 1538.87 168.759 1551.35 Q168.759 1563.78 171.919 1570.02 Q175.119 1576.22 181.439 1576.22 Q187.798 1576.22 190.958 1570.02 Q194.158 1563.78 194.158 1551.35 Q194.158 1538.87 190.958 1532.67 Q187.798 1526.43 181.439 1526.43 M181.439 1519.95 Q191.606 1519.95 196.954 1528.01 Q202.341 1536.03 202.341 1551.35 Q202.341 1566.62 196.954 1574.68 Q191.606 1582.7 181.439 1582.7 Q171.271 1582.7 165.883 1574.68 Q160.536 1566.62 160.536 1551.35 Q160.536 1536.03 165.883 1528.01 Q171.271 1519.95 181.439 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M234.222 1526.43 Q227.902 1526.43 224.702 1532.67 Q221.543 1538.87 221.543 1551.35 Q221.543 1563.78 224.702 1570.02 Q227.902 1576.22 234.222 1576.22 Q240.582 1576.22 243.741 1570.02 Q246.942 1563.78 246.942 1551.35 Q246.942 1538.87 243.741 1532.67 Q240.582 1526.43 234.222 1526.43 M234.222 1519.95 Q244.39 1519.95 249.737 1528.01 Q255.125 1536.03 255.125 1551.35 Q255.125 1566.62 249.737 1574.68 Q244.39 1582.7 234.222 1582.7 Q224.054 1582.7 218.666 1574.68 Q213.319 1566.62 213.319 1551.35 Q213.319 1536.03 218.666 1528.01 Q224.054 1519.95 234.222 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M285.587 1555.52 L274.164 1592.46 L267.277 1592.46 L278.701 1555.52 L267.277 1518.57 L274.164 1518.57 L285.587 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M403.456 1518.13 L403.456 1601.09 L396.57 1601.09 L396.57 1518.13 L403.456 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M440.36 1526.43 Q434.041 1526.43 430.84 1532.67 Q427.681 1538.87 427.681 1551.35 Q427.681 1563.78 430.84 1570.02 Q434.041 1576.22 440.36 1576.22 Q446.72 1576.22 449.88 1570.02 Q453.08 1563.78 453.08 1551.35 Q453.08 1538.87 449.88 1532.67 Q446.72 1526.43 440.36 1526.43 M440.36 1519.95 Q450.528 1519.95 455.875 1528.01 Q461.263 1536.03 461.263 1551.35 Q461.263 1566.62 455.875 1574.68 Q450.528 1582.7 440.36 1582.7 Q430.192 1582.7 424.805 1574.68 Q419.457 1566.62 419.457 1551.35 Q419.457 1536.03 424.805 1528.01 Q430.192 1519.95 440.36 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M477.061 1574.64 L490.429 1574.64 L490.429 1528.5 L475.886 1531.42 L475.886 1523.96 L490.348 1521.05 L498.531 1521.05 L498.531 1574.64 L511.899 1574.64 L511.899 1581.53 L477.061 1581.53 L477.061 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M544.509 1555.52 L533.085 1592.46 L526.199 1592.46 L537.622 1555.52 L526.199 1518.57 L533.085 1518.57 L544.509 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M662.378 1518.13 L662.378 1601.09 L655.491 1601.09 L655.491 1518.13 L662.378 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M683.199 1574.64 L696.567 1574.64 L696.567 1528.5 L682.025 1531.42 L682.025 1523.96 L696.486 1521.05 L704.669 1521.05 L704.669 1574.64 L718.037 1574.64 L718.037 1581.53 L683.199 1581.53 L683.199 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M752.065 1526.43 Q745.745 1526.43 742.545 1532.67 Q739.385 1538.87 739.385 1551.35 Q739.385 1563.78 742.545 1570.02 Q745.745 1576.22 752.065 1576.22 Q758.425 1576.22 761.584 1570.02 Q764.785 1563.78 764.785 1551.35 Q764.785 1538.87 761.584 1532.67 Q758.425 1526.43 752.065 1526.43 M752.065 1519.95 Q762.233 1519.95 767.58 1528.01 Q772.967 1536.03 772.967 1551.35 Q772.967 1566.62 767.58 1574.68 Q762.233 1582.7 752.065 1582.7 Q741.897 1582.7 736.509 1574.68 Q731.162 1566.62 731.162 1551.35 Q731.162 1536.03 736.509 1528.01 Q741.897 1519.95 752.065 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M803.43 1555.52 L792.007 1592.46 L785.12 1592.46 L796.544 1555.52 L785.12 1518.57 L792.007 1518.57 L803.43 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M921.299 1518.13 L921.299 1601.09 L914.413 1601.09 L914.413 1518.13 L921.299 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M942.121 1574.64 L955.489 1574.64 L955.489 1528.5 L940.946 1531.42 L940.946 1523.96 L955.408 1521.05 L963.591 1521.05 L963.591 1574.64 L976.959 1574.64 L976.959 1581.53 L942.121 1581.53 L942.121 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M994.904 1574.64 L1008.27 1574.64 L1008.27 1528.5 L993.729 1531.42 L993.729 1523.96 L1008.19 1521.05 L1016.37 1521.05 L1016.37 1574.64 L1029.74 1574.64 L1029.74 1581.53 L994.904 1581.53 L994.904 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M1062.35 1555.52 L1050.93 1592.46 L1044.04 1592.46 L1055.47 1555.52 L1044.04 1518.57 L1050.93 1518.57 L1062.35 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><circle clip-path="url(#clip322)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="211.618" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip322)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="470.539" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip322)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="729.461" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip322)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="988.382" cy="47.2441" r="2"></circle>
+<path clip-path="url(#clip320)" d="M211.618 22.3918 Q205.298 22.3918 202.098 28.6302 Q198.938 34.8281 198.938 47.3049 Q198.938 59.7411 202.098 65.9795 Q205.298 72.1774 211.618 72.1774 Q217.978 72.1774 221.137 65.9795 Q224.338 59.7411 224.338 47.3049 Q224.338 34.8281 221.137 28.6302 Q217.978 22.3918 211.618 22.3918 M211.618 15.9104 Q221.786 15.9104 227.133 23.9716 Q232.52 31.9924 232.52 47.3049 Q232.52 62.5768 227.133 70.6381 Q221.786 78.6589 211.618 78.6589 Q201.45 78.6589 196.062 70.6381 Q190.715 62.5768 190.715 47.3049 Q190.715 31.9924 196.062 23.9716 Q201.45 15.9104 211.618 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M373.034 70.5976 L386.402 70.5976 L386.402 24.4578 L371.859 27.3744 L371.859 19.9207 L386.321 17.0041 L394.504 17.0041 L394.504 70.5976 L407.872 70.5976 L407.872 77.4841 L373.034 77.4841 L373.034 70.5976 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M441.899 22.3918 Q435.58 22.3918 432.38 28.6302 Q429.22 34.8281 429.22 47.3049 Q429.22 59.7411 432.38 65.9795 Q435.58 72.1774 441.899 72.1774 Q448.259 72.1774 451.419 65.9795 Q454.619 59.7411 454.619 47.3049 Q454.619 34.8281 451.419 28.6302 Q448.259 22.3918 441.899 22.3918 M441.899 15.9104 Q452.067 15.9104 457.414 23.9716 Q462.802 31.9924 462.802 47.3049 Q462.802 62.5768 457.414 70.6381 Q452.067 78.6589 441.899 78.6589 Q431.732 78.6589 426.344 70.6381 Q420.997 62.5768 420.997 47.3049 Q420.997 31.9924 426.344 23.9716 Q431.732 15.9104 441.899 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M484.231 70.5976 L512.79 70.5976 L512.79 77.4841 L474.388 77.4841 L474.388 70.5976 Q479.046 65.777 487.067 57.6752 Q495.128 49.5329 497.194 47.1833 Q501.124 42.7678 502.663 39.7297 Q504.243 36.651 504.243 33.6938 Q504.243 28.8732 500.84 25.8351 Q497.478 22.7969 492.05 22.7969 Q488.201 22.7969 483.907 24.1337 Q479.654 25.4705 474.793 28.1846 L474.793 19.9207 Q479.735 17.9358 484.029 16.9231 Q488.323 15.9104 491.888 15.9104 Q501.286 15.9104 506.876 20.6094 Q512.466 25.3084 512.466 33.1672 Q512.466 36.894 511.048 40.2563 Q509.671 43.578 505.985 48.115 Q504.972 49.2898 499.544 54.9206 Q494.116 60.5108 484.231 70.5976 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M552.449 24.1337 L531.789 56.4194 L552.449 56.4194 L552.449 24.1337 M550.302 17.0041 L560.591 17.0041 L560.591 56.4194 L569.219 56.4194 L569.219 63.2249 L560.591 63.2249 L560.591 77.4841 L552.449 77.4841 L552.449 63.2249 L525.145 63.2249 L525.145 55.3256 L550.302 17.0041 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M729.461 22.3918 Q723.141 22.3918 719.941 28.6302 Q716.781 34.8281 716.781 47.3049 Q716.781 59.7411 719.941 65.9795 Q723.141 72.1774 729.461 72.1774 Q735.821 72.1774 738.98 65.9795 Q742.181 59.7411 742.181 47.3049 Q742.181 34.8281 738.98 28.6302 Q735.821 22.3918 729.461 22.3918 M729.461 15.9104 Q739.629 15.9104 744.976 23.9716 Q750.363 31.9924 750.363 47.3049 Q750.363 62.5768 744.976 70.6381 Q739.629 78.6589 729.461 78.6589 Q719.293 78.6589 713.905 70.6381 Q708.558 62.5768 708.558 47.3049 Q708.558 31.9924 713.905 23.9716 Q719.293 15.9104 729.461 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip320)" d="M988.382 22.3918 Q982.063 22.3918 978.863 28.6302 Q975.703 34.8281 975.703 47.3049 Q975.703 59.7411 978.863 65.9795 Q982.063 72.1774 988.382 72.1774 Q994.742 72.1774 997.902 65.9795 Q1001.1 59.7411 1001.1 47.3049 Q1001.1 34.8281 997.902 28.6302 Q994.742 22.3918 988.382 22.3918 M988.382 15.9104 Q998.55 15.9104 1003.9 23.9716 Q1009.28 31.9924 1009.28 47.3049 Q1009.28 62.5768 1003.9 70.6381 Q998.55 78.6589 988.382 78.6589 Q978.214 78.6589 972.827 70.6381 Q967.48 62.5768 967.48 47.3049 Q967.48 31.9924 972.827 23.9716 Q978.214 15.9104 988.382 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path></svg> \ No newline at end of file
diff --git a/hw9/qubit10.svg b/hw9/qubit10.svg
new file mode 100644
index 0000000..8dcead0
--- /dev/null
+++ b/hw9/qubit10.svg
@@ -0,0 +1,39 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="300" height="400" viewBox="0 0 1200 1600">
+<defs>
+ <clipPath id="clip350">
+ <rect x="0" y="0" width="1200" height="1600"></rect>
+ </clipPath>
+</defs>
+<path clip-path="url(#clip350)" d="M0 1600 L1200 1600 L1200 0 L0 0 Z" fill="#ffffff" fill-rule="evenodd" fill-opacity="1"></path>
+<defs>
+ <clipPath id="clip351">
+ <rect x="320" y="159" width="1121" height="1121"></rect>
+ </clipPath>
+</defs>
+<path clip-path="url(#clip350)" d="M47.2441 1552.76 L1152.76 1552.76 L1152.76 47.2441 L47.2441 47.2441 Z" fill="#ffffff" fill-rule="evenodd" fill-opacity="1"></path>
+<defs>
+ <clipPath id="clip352">
+ <rect x="47" y="47" width="1107" height="1507"></rect>
+ </clipPath>
+</defs>
+<path clip-path="url(#clip352)" d="M108.049 1552.76 L108.049 1552.76 L315.186 1552.76 L315.186 1552.76 L108.049 1552.76 L108.049 1552.76 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip352)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="108.049,1552.76 108.049,1552.76 315.186,1552.76 108.049,1552.76 "></polyline>
+<path clip-path="url(#clip352)" d="M366.971 1552.76 L366.971 1552.76 L574.108 1552.76 L574.108 1552.76 L366.971 1552.76 L366.971 1552.76 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip352)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="366.971,1552.76 366.971,1552.76 574.108,1552.76 366.971,1552.76 "></polyline>
+<path clip-path="url(#clip352)" d="M625.892 47.2441 L625.892 1552.76 L833.029 1552.76 L833.029 47.2441 L625.892 47.2441 L625.892 47.2441 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip352)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="625.892,47.2441 625.892,1552.76 833.029,1552.76 833.029,47.2441 625.892,47.2441 "></polyline>
+<path clip-path="url(#clip352)" d="M884.814 1552.76 L884.814 1552.76 L1091.95 1552.76 L1091.95 1552.76 L884.814 1552.76 L884.814 1552.76 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip352)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="884.814,1552.76 884.814,1552.76 1091.95,1552.76 884.814,1552.76 "></polyline>
+<circle clip-path="url(#clip352)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="211.618" cy="1552.76" r="2"></circle>
+<circle clip-path="url(#clip352)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="470.539" cy="1552.76" r="2"></circle>
+<circle clip-path="url(#clip352)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="729.461" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip352)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="988.382" cy="1552.76" r="2"></circle>
+<circle clip-path="url(#clip352)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="211.618" cy="1551.29" r="2"></circle>
+<circle clip-path="url(#clip352)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="470.539" cy="1551.29" r="2"></circle>
+<circle clip-path="url(#clip352)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="729.461" cy="1551.29" r="2"></circle>
+<circle clip-path="url(#clip352)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="988.382" cy="1551.29" r="2"></circle>
+<path clip-path="url(#clip350)" d="M144.535 1518.13 L144.535 1601.09 L137.648 1601.09 L137.648 1518.13 L144.535 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M181.439 1526.43 Q175.119 1526.43 171.919 1532.67 Q168.759 1538.87 168.759 1551.35 Q168.759 1563.78 171.919 1570.02 Q175.119 1576.22 181.439 1576.22 Q187.798 1576.22 190.958 1570.02 Q194.158 1563.78 194.158 1551.35 Q194.158 1538.87 190.958 1532.67 Q187.798 1526.43 181.439 1526.43 M181.439 1519.95 Q191.606 1519.95 196.954 1528.01 Q202.341 1536.03 202.341 1551.35 Q202.341 1566.62 196.954 1574.68 Q191.606 1582.7 181.439 1582.7 Q171.271 1582.7 165.883 1574.68 Q160.536 1566.62 160.536 1551.35 Q160.536 1536.03 165.883 1528.01 Q171.271 1519.95 181.439 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M234.222 1526.43 Q227.902 1526.43 224.702 1532.67 Q221.543 1538.87 221.543 1551.35 Q221.543 1563.78 224.702 1570.02 Q227.902 1576.22 234.222 1576.22 Q240.582 1576.22 243.741 1570.02 Q246.942 1563.78 246.942 1551.35 Q246.942 1538.87 243.741 1532.67 Q240.582 1526.43 234.222 1526.43 M234.222 1519.95 Q244.39 1519.95 249.737 1528.01 Q255.125 1536.03 255.125 1551.35 Q255.125 1566.62 249.737 1574.68 Q244.39 1582.7 234.222 1582.7 Q224.054 1582.7 218.666 1574.68 Q213.319 1566.62 213.319 1551.35 Q213.319 1536.03 218.666 1528.01 Q224.054 1519.95 234.222 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M285.587 1555.52 L274.164 1592.46 L267.277 1592.46 L278.701 1555.52 L267.277 1518.57 L274.164 1518.57 L285.587 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M403.456 1518.13 L403.456 1601.09 L396.57 1601.09 L396.57 1518.13 L403.456 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M440.36 1526.43 Q434.041 1526.43 430.84 1532.67 Q427.681 1538.87 427.681 1551.35 Q427.681 1563.78 430.84 1570.02 Q434.041 1576.22 440.36 1576.22 Q446.72 1576.22 449.88 1570.02 Q453.08 1563.78 453.08 1551.35 Q453.08 1538.87 449.88 1532.67 Q446.72 1526.43 440.36 1526.43 M440.36 1519.95 Q450.528 1519.95 455.875 1528.01 Q461.263 1536.03 461.263 1551.35 Q461.263 1566.62 455.875 1574.68 Q450.528 1582.7 440.36 1582.7 Q430.192 1582.7 424.805 1574.68 Q419.457 1566.62 419.457 1551.35 Q419.457 1536.03 424.805 1528.01 Q430.192 1519.95 440.36 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M477.061 1574.64 L490.429 1574.64 L490.429 1528.5 L475.886 1531.42 L475.886 1523.96 L490.348 1521.05 L498.531 1521.05 L498.531 1574.64 L511.899 1574.64 L511.899 1581.53 L477.061 1581.53 L477.061 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M544.509 1555.52 L533.085 1592.46 L526.199 1592.46 L537.622 1555.52 L526.199 1518.57 L533.085 1518.57 L544.509 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M662.378 1518.13 L662.378 1601.09 L655.491 1601.09 L655.491 1518.13 L662.378 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M683.199 1574.64 L696.567 1574.64 L696.567 1528.5 L682.025 1531.42 L682.025 1523.96 L696.486 1521.05 L704.669 1521.05 L704.669 1574.64 L718.037 1574.64 L718.037 1581.53 L683.199 1581.53 L683.199 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M752.065 1526.43 Q745.745 1526.43 742.545 1532.67 Q739.385 1538.87 739.385 1551.35 Q739.385 1563.78 742.545 1570.02 Q745.745 1576.22 752.065 1576.22 Q758.425 1576.22 761.584 1570.02 Q764.785 1563.78 764.785 1551.35 Q764.785 1538.87 761.584 1532.67 Q758.425 1526.43 752.065 1526.43 M752.065 1519.95 Q762.233 1519.95 767.58 1528.01 Q772.967 1536.03 772.967 1551.35 Q772.967 1566.62 767.58 1574.68 Q762.233 1582.7 752.065 1582.7 Q741.897 1582.7 736.509 1574.68 Q731.162 1566.62 731.162 1551.35 Q731.162 1536.03 736.509 1528.01 Q741.897 1519.95 752.065 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M803.43 1555.52 L792.007 1592.46 L785.12 1592.46 L796.544 1555.52 L785.12 1518.57 L792.007 1518.57 L803.43 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M921.299 1518.13 L921.299 1601.09 L914.413 1601.09 L914.413 1518.13 L921.299 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M942.121 1574.64 L955.489 1574.64 L955.489 1528.5 L940.946 1531.42 L940.946 1523.96 L955.408 1521.05 L963.591 1521.05 L963.591 1574.64 L976.959 1574.64 L976.959 1581.53 L942.121 1581.53 L942.121 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M994.904 1574.64 L1008.27 1574.64 L1008.27 1528.5 L993.729 1531.42 L993.729 1523.96 L1008.19 1521.05 L1016.37 1521.05 L1016.37 1574.64 L1029.74 1574.64 L1029.74 1581.53 L994.904 1581.53 L994.904 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M1062.35 1555.52 L1050.93 1592.46 L1044.04 1592.46 L1055.47 1555.52 L1044.04 1518.57 L1050.93 1518.57 L1062.35 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><circle clip-path="url(#clip352)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="211.618" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip352)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="470.539" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip352)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="729.461" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip352)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="988.382" cy="47.2441" r="2"></circle>
+<path clip-path="url(#clip350)" d="M211.618 22.3918 Q205.298 22.3918 202.098 28.6302 Q198.938 34.8281 198.938 47.3049 Q198.938 59.7411 202.098 65.9795 Q205.298 72.1774 211.618 72.1774 Q217.978 72.1774 221.137 65.9795 Q224.338 59.7411 224.338 47.3049 Q224.338 34.8281 221.137 28.6302 Q217.978 22.3918 211.618 22.3918 M211.618 15.9104 Q221.786 15.9104 227.133 23.9716 Q232.52 31.9924 232.52 47.3049 Q232.52 62.5768 227.133 70.6381 Q221.786 78.6589 211.618 78.6589 Q201.45 78.6589 196.062 70.6381 Q190.715 62.5768 190.715 47.3049 Q190.715 31.9924 196.062 23.9716 Q201.45 15.9104 211.618 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M470.539 22.3918 Q464.22 22.3918 461.02 28.6302 Q457.86 34.8281 457.86 47.3049 Q457.86 59.7411 461.02 65.9795 Q464.22 72.1774 470.539 72.1774 Q476.899 72.1774 480.059 65.9795 Q483.259 59.7411 483.259 47.3049 Q483.259 34.8281 480.059 28.6302 Q476.899 22.3918 470.539 22.3918 M470.539 15.9104 Q480.707 15.9104 486.054 23.9716 Q491.442 31.9924 491.442 47.3049 Q491.442 62.5768 486.054 70.6381 Q480.707 78.6589 470.539 78.6589 Q460.371 78.6589 454.984 70.6381 Q449.637 62.5768 449.637 47.3049 Q449.637 31.9924 454.984 23.9716 Q460.371 15.9104 470.539 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M631.955 70.5976 L645.323 70.5976 L645.323 24.4578 L630.781 27.3744 L630.781 19.9207 L645.242 17.0041 L653.425 17.0041 L653.425 70.5976 L666.793 70.5976 L666.793 77.4841 L631.955 77.4841 L631.955 70.5976 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M700.821 22.3918 Q694.501 22.3918 691.301 28.6302 Q688.142 34.8281 688.142 47.3049 Q688.142 59.7411 691.301 65.9795 Q694.501 72.1774 700.821 72.1774 Q707.181 72.1774 710.34 65.9795 Q713.541 59.7411 713.541 47.3049 Q713.541 34.8281 710.34 28.6302 Q707.181 22.3918 700.821 22.3918 M700.821 15.9104 Q710.989 15.9104 716.336 23.9716 Q721.724 31.9924 721.724 47.3049 Q721.724 62.5768 716.336 70.6381 Q710.989 78.6589 700.821 78.6589 Q690.653 78.6589 685.265 70.6381 Q679.918 62.5768 679.918 47.3049 Q679.918 31.9924 685.265 23.9716 Q690.653 15.9104 700.821 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M743.153 70.5976 L771.712 70.5976 L771.712 77.4841 L733.309 77.4841 L733.309 70.5976 Q737.968 65.777 745.988 57.6752 Q754.05 49.5329 756.116 47.1833 Q760.045 42.7678 761.584 39.7297 Q763.164 36.651 763.164 33.6938 Q763.164 28.8732 759.761 25.8351 Q756.399 22.7969 750.971 22.7969 Q747.123 22.7969 742.829 24.1337 Q738.575 25.4705 733.714 28.1846 L733.714 19.9207 Q738.656 17.9358 742.95 16.9231 Q747.244 15.9104 750.809 15.9104 Q760.207 15.9104 765.797 20.6094 Q771.388 25.3084 771.388 33.1672 Q771.388 36.894 769.97 40.2563 Q768.592 43.578 764.906 48.115 Q763.893 49.2898 758.465 54.9206 Q753.037 60.5108 743.153 70.5976 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M811.37 24.1337 L790.71 56.4194 L811.37 56.4194 L811.37 24.1337 M809.223 17.0041 L819.512 17.0041 L819.512 56.4194 L828.141 56.4194 L828.141 63.2249 L819.512 63.2249 L819.512 77.4841 L811.37 77.4841 L811.37 63.2249 L784.067 63.2249 L784.067 55.3256 L809.223 17.0041 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip350)" d="M988.382 22.3918 Q982.063 22.3918 978.863 28.6302 Q975.703 34.8281 975.703 47.3049 Q975.703 59.7411 978.863 65.9795 Q982.063 72.1774 988.382 72.1774 Q994.742 72.1774 997.902 65.9795 Q1001.1 59.7411 1001.1 47.3049 Q1001.1 34.8281 997.902 28.6302 Q994.742 22.3918 988.382 22.3918 M988.382 15.9104 Q998.55 15.9104 1003.9 23.9716 Q1009.28 31.9924 1009.28 47.3049 Q1009.28 62.5768 1003.9 70.6381 Q998.55 78.6589 988.382 78.6589 Q978.214 78.6589 972.827 70.6381 Q967.48 62.5768 967.48 47.3049 Q967.48 31.9924 972.827 23.9716 Q978.214 15.9104 988.382 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path></svg> \ No newline at end of file
diff --git a/hw9/qubit11.svg b/hw9/qubit11.svg
new file mode 100644
index 0000000..0833dcc
--- /dev/null
+++ b/hw9/qubit11.svg
@@ -0,0 +1,39 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="300" height="400" viewBox="0 0 1200 1600">
+<defs>
+ <clipPath id="clip380">
+ <rect x="0" y="0" width="1200" height="1600"></rect>
+ </clipPath>
+</defs>
+<path clip-path="url(#clip380)" d="M0 1600 L1200 1600 L1200 0 L0 0 Z" fill="#ffffff" fill-rule="evenodd" fill-opacity="1"></path>
+<defs>
+ <clipPath id="clip381">
+ <rect x="320" y="159" width="1121" height="1121"></rect>
+ </clipPath>
+</defs>
+<path clip-path="url(#clip380)" d="M47.2441 1552.76 L1152.76 1552.76 L1152.76 47.2441 L47.2441 47.2441 Z" fill="#ffffff" fill-rule="evenodd" fill-opacity="1"></path>
+<defs>
+ <clipPath id="clip382">
+ <rect x="47" y="47" width="1107" height="1507"></rect>
+ </clipPath>
+</defs>
+<path clip-path="url(#clip382)" d="M108.049 1552.76 L108.049 1552.76 L315.186 1552.76 L315.186 1552.76 L108.049 1552.76 L108.049 1552.76 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip382)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="108.049,1552.76 108.049,1552.76 315.186,1552.76 108.049,1552.76 "></polyline>
+<path clip-path="url(#clip382)" d="M366.971 1552.76 L366.971 1552.76 L574.108 1552.76 L574.108 1552.76 L366.971 1552.76 L366.971 1552.76 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip382)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="366.971,1552.76 366.971,1552.76 574.108,1552.76 366.971,1552.76 "></polyline>
+<path clip-path="url(#clip382)" d="M625.892 1552.76 L625.892 1552.76 L833.029 1552.76 L833.029 1552.76 L625.892 1552.76 L625.892 1552.76 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip382)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="625.892,1552.76 625.892,1552.76 833.029,1552.76 625.892,1552.76 "></polyline>
+<path clip-path="url(#clip382)" d="M884.814 47.2441 L884.814 1552.76 L1091.95 1552.76 L1091.95 47.2441 L884.814 47.2441 L884.814 47.2441 Z" fill="#add8e6" fill-rule="evenodd" fill-opacity="1"></path>
+<polyline clip-path="url(#clip382)" style="stroke:#add8e6; stroke-linecap:round; stroke-linejoin:round; stroke-width:4; stroke-opacity:1; fill:none" points="884.814,47.2441 884.814,1552.76 1091.95,1552.76 1091.95,47.2441 884.814,47.2441 "></polyline>
+<circle clip-path="url(#clip382)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="211.618" cy="1552.76" r="2"></circle>
+<circle clip-path="url(#clip382)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="470.539" cy="1552.76" r="2"></circle>
+<circle clip-path="url(#clip382)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="729.461" cy="1552.76" r="2"></circle>
+<circle clip-path="url(#clip382)" style="fill:#add8e6; stroke:none; fill-opacity:0" cx="988.382" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip382)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="211.618" cy="1551.29" r="2"></circle>
+<circle clip-path="url(#clip382)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="470.539" cy="1551.29" r="2"></circle>
+<circle clip-path="url(#clip382)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="729.461" cy="1551.29" r="2"></circle>
+<circle clip-path="url(#clip382)" style="fill:#e26f46; stroke:none; fill-opacity:1" cx="988.382" cy="1551.29" r="2"></circle>
+<path clip-path="url(#clip380)" d="M144.535 1518.13 L144.535 1601.09 L137.648 1601.09 L137.648 1518.13 L144.535 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M181.439 1526.43 Q175.119 1526.43 171.919 1532.67 Q168.759 1538.87 168.759 1551.35 Q168.759 1563.78 171.919 1570.02 Q175.119 1576.22 181.439 1576.22 Q187.798 1576.22 190.958 1570.02 Q194.158 1563.78 194.158 1551.35 Q194.158 1538.87 190.958 1532.67 Q187.798 1526.43 181.439 1526.43 M181.439 1519.95 Q191.606 1519.95 196.954 1528.01 Q202.341 1536.03 202.341 1551.35 Q202.341 1566.62 196.954 1574.68 Q191.606 1582.7 181.439 1582.7 Q171.271 1582.7 165.883 1574.68 Q160.536 1566.62 160.536 1551.35 Q160.536 1536.03 165.883 1528.01 Q171.271 1519.95 181.439 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M234.222 1526.43 Q227.902 1526.43 224.702 1532.67 Q221.543 1538.87 221.543 1551.35 Q221.543 1563.78 224.702 1570.02 Q227.902 1576.22 234.222 1576.22 Q240.582 1576.22 243.741 1570.02 Q246.942 1563.78 246.942 1551.35 Q246.942 1538.87 243.741 1532.67 Q240.582 1526.43 234.222 1526.43 M234.222 1519.95 Q244.39 1519.95 249.737 1528.01 Q255.125 1536.03 255.125 1551.35 Q255.125 1566.62 249.737 1574.68 Q244.39 1582.7 234.222 1582.7 Q224.054 1582.7 218.666 1574.68 Q213.319 1566.62 213.319 1551.35 Q213.319 1536.03 218.666 1528.01 Q224.054 1519.95 234.222 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M285.587 1555.52 L274.164 1592.46 L267.277 1592.46 L278.701 1555.52 L267.277 1518.57 L274.164 1518.57 L285.587 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M403.456 1518.13 L403.456 1601.09 L396.57 1601.09 L396.57 1518.13 L403.456 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M440.36 1526.43 Q434.041 1526.43 430.84 1532.67 Q427.681 1538.87 427.681 1551.35 Q427.681 1563.78 430.84 1570.02 Q434.041 1576.22 440.36 1576.22 Q446.72 1576.22 449.88 1570.02 Q453.08 1563.78 453.08 1551.35 Q453.08 1538.87 449.88 1532.67 Q446.72 1526.43 440.36 1526.43 M440.36 1519.95 Q450.528 1519.95 455.875 1528.01 Q461.263 1536.03 461.263 1551.35 Q461.263 1566.62 455.875 1574.68 Q450.528 1582.7 440.36 1582.7 Q430.192 1582.7 424.805 1574.68 Q419.457 1566.62 419.457 1551.35 Q419.457 1536.03 424.805 1528.01 Q430.192 1519.95 440.36 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M477.061 1574.64 L490.429 1574.64 L490.429 1528.5 L475.886 1531.42 L475.886 1523.96 L490.348 1521.05 L498.531 1521.05 L498.531 1574.64 L511.899 1574.64 L511.899 1581.53 L477.061 1581.53 L477.061 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M544.509 1555.52 L533.085 1592.46 L526.199 1592.46 L537.622 1555.52 L526.199 1518.57 L533.085 1518.57 L544.509 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M662.378 1518.13 L662.378 1601.09 L655.491 1601.09 L655.491 1518.13 L662.378 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M683.199 1574.64 L696.567 1574.64 L696.567 1528.5 L682.025 1531.42 L682.025 1523.96 L696.486 1521.05 L704.669 1521.05 L704.669 1574.64 L718.037 1574.64 L718.037 1581.53 L683.199 1581.53 L683.199 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M752.065 1526.43 Q745.745 1526.43 742.545 1532.67 Q739.385 1538.87 739.385 1551.35 Q739.385 1563.78 742.545 1570.02 Q745.745 1576.22 752.065 1576.22 Q758.425 1576.22 761.584 1570.02 Q764.785 1563.78 764.785 1551.35 Q764.785 1538.87 761.584 1532.67 Q758.425 1526.43 752.065 1526.43 M752.065 1519.95 Q762.233 1519.95 767.58 1528.01 Q772.967 1536.03 772.967 1551.35 Q772.967 1566.62 767.58 1574.68 Q762.233 1582.7 752.065 1582.7 Q741.897 1582.7 736.509 1574.68 Q731.162 1566.62 731.162 1551.35 Q731.162 1536.03 736.509 1528.01 Q741.897 1519.95 752.065 1519.95 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M803.43 1555.52 L792.007 1592.46 L785.12 1592.46 L796.544 1555.52 L785.12 1518.57 L792.007 1518.57 L803.43 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M921.299 1518.13 L921.299 1601.09 L914.413 1601.09 L914.413 1518.13 L921.299 1518.13 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M942.121 1574.64 L955.489 1574.64 L955.489 1528.5 L940.946 1531.42 L940.946 1523.96 L955.408 1521.05 L963.591 1521.05 L963.591 1574.64 L976.959 1574.64 L976.959 1581.53 L942.121 1581.53 L942.121 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M994.904 1574.64 L1008.27 1574.64 L1008.27 1528.5 L993.729 1531.42 L993.729 1523.96 L1008.19 1521.05 L1016.37 1521.05 L1016.37 1574.64 L1029.74 1574.64 L1029.74 1581.53 L994.904 1581.53 L994.904 1574.64 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M1062.35 1555.52 L1050.93 1592.46 L1044.04 1592.46 L1055.47 1555.52 L1044.04 1518.57 L1050.93 1518.57 L1062.35 1555.52 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><circle clip-path="url(#clip382)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="211.618" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip382)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="470.539" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip382)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="729.461" cy="47.2441" r="2"></circle>
+<circle clip-path="url(#clip382)" style="fill:#3da44d; stroke:none; fill-opacity:1" cx="988.382" cy="47.2441" r="2"></circle>
+<path clip-path="url(#clip380)" d="M211.618 22.3918 Q205.298 22.3918 202.098 28.6302 Q198.938 34.8281 198.938 47.3049 Q198.938 59.7411 202.098 65.9795 Q205.298 72.1774 211.618 72.1774 Q217.978 72.1774 221.137 65.9795 Q224.338 59.7411 224.338 47.3049 Q224.338 34.8281 221.137 28.6302 Q217.978 22.3918 211.618 22.3918 M211.618 15.9104 Q221.786 15.9104 227.133 23.9716 Q232.52 31.9924 232.52 47.3049 Q232.52 62.5768 227.133 70.6381 Q221.786 78.6589 211.618 78.6589 Q201.45 78.6589 196.062 70.6381 Q190.715 62.5768 190.715 47.3049 Q190.715 31.9924 196.062 23.9716 Q201.45 15.9104 211.618 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M470.539 22.3918 Q464.22 22.3918 461.02 28.6302 Q457.86 34.8281 457.86 47.3049 Q457.86 59.7411 461.02 65.9795 Q464.22 72.1774 470.539 72.1774 Q476.899 72.1774 480.059 65.9795 Q483.259 59.7411 483.259 47.3049 Q483.259 34.8281 480.059 28.6302 Q476.899 22.3918 470.539 22.3918 M470.539 15.9104 Q480.707 15.9104 486.054 23.9716 Q491.442 31.9924 491.442 47.3049 Q491.442 62.5768 486.054 70.6381 Q480.707 78.6589 470.539 78.6589 Q460.371 78.6589 454.984 70.6381 Q449.637 62.5768 449.637 47.3049 Q449.637 31.9924 454.984 23.9716 Q460.371 15.9104 470.539 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M729.461 22.3918 Q723.141 22.3918 719.941 28.6302 Q716.781 34.8281 716.781 47.3049 Q716.781 59.7411 719.941 65.9795 Q723.141 72.1774 729.461 72.1774 Q735.821 72.1774 738.98 65.9795 Q742.181 59.7411 742.181 47.3049 Q742.181 34.8281 738.98 28.6302 Q735.821 22.3918 729.461 22.3918 M729.461 15.9104 Q739.629 15.9104 744.976 23.9716 Q750.363 31.9924 750.363 47.3049 Q750.363 62.5768 744.976 70.6381 Q739.629 78.6589 729.461 78.6589 Q719.293 78.6589 713.905 70.6381 Q708.558 62.5768 708.558 47.3049 Q708.558 31.9924 713.905 23.9716 Q719.293 15.9104 729.461 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M890.877 70.5976 L904.245 70.5976 L904.245 24.4578 L889.702 27.3744 L889.702 19.9207 L904.164 17.0041 L912.347 17.0041 L912.347 70.5976 L925.715 70.5976 L925.715 77.4841 L890.877 77.4841 L890.877 70.5976 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M959.742 22.3918 Q953.423 22.3918 950.223 28.6302 Q947.063 34.8281 947.063 47.3049 Q947.063 59.7411 950.223 65.9795 Q953.423 72.1774 959.742 72.1774 Q966.102 72.1774 969.262 65.9795 Q972.462 59.7411 972.462 47.3049 Q972.462 34.8281 969.262 28.6302 Q966.102 22.3918 959.742 22.3918 M959.742 15.9104 Q969.91 15.9104 975.257 23.9716 Q980.645 31.9924 980.645 47.3049 Q980.645 62.5768 975.257 70.6381 Q969.91 78.6589 959.742 78.6589 Q949.575 78.6589 944.187 70.6381 Q938.84 62.5768 938.84 47.3049 Q938.84 31.9924 944.187 23.9716 Q949.575 15.9104 959.742 15.9104 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M1002.07 70.5976 L1030.63 70.5976 L1030.63 77.4841 L992.231 77.4841 L992.231 70.5976 Q996.889 65.777 1004.91 57.6752 Q1012.97 49.5329 1015.04 47.1833 Q1018.97 42.7678 1020.51 39.7297 Q1022.09 36.651 1022.09 33.6938 Q1022.09 28.8732 1018.68 25.8351 Q1015.32 22.7969 1009.89 22.7969 Q1006.04 22.7969 1001.75 24.1337 Q997.497 25.4705 992.636 28.1846 L992.636 19.9207 Q997.578 17.9358 1001.87 16.9231 Q1006.17 15.9104 1009.73 15.9104 Q1019.13 15.9104 1024.72 20.6094 Q1030.31 25.3084 1030.31 33.1672 Q1030.31 36.894 1028.89 40.2563 Q1027.51 43.578 1023.83 48.115 Q1022.81 49.2898 1017.39 54.9206 Q1011.96 60.5108 1002.07 70.5976 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path><path clip-path="url(#clip380)" d="M1070.29 24.1337 L1049.63 56.4194 L1070.29 56.4194 L1070.29 24.1337 M1068.14 17.0041 L1078.43 17.0041 L1078.43 56.4194 L1087.06 56.4194 L1087.06 63.2249 L1078.43 63.2249 L1078.43 77.4841 L1070.29 77.4841 L1070.29 63.2249 L1042.99 63.2249 L1042.99 55.3256 L1068.14 17.0041 Z" fill="#000000" fill-rule="nonzero" fill-opacity="1"></path></svg> \ No newline at end of file
diff --git a/hw9/yao-assigment-2.jl b/hw9/yao-assigment-2.jl
new file mode 100644
index 0000000..7de7987
--- /dev/null
+++ b/hw9/yao-assigment-2.jl
@@ -0,0 +1,75 @@
+begin
+ using Pkg
+ Pkg.activate(mktempdir())
+ Pkg.Registry.update()
+ Pkg.add("Yao")
+ Pkg.add("YaoPlots")
+ Pkg.add("StatsBase")
+ Pkg.add("Plots")
+ Pkg.add("BitBasis")
+end
+
+using Yao, YaoPlots
+
+# make the bell circuit
+bellcircuit = chain(2, put(1 => H), control(1, 2 => X))
+
+# make the reverse bell circuit
+reversebellcircuit = chain(2, control(1, 2 => X), put(1 => H))
+
+# circuit that takes two qubits and passes it through
+# the bell circuit then the reverse bell circuit
+circuit = chain(2, bellcircuit, reversebellcircuit)
+# plot(circuit)
+
+# make the qubits |00>, |01>, |10>, |11>
+qubit00 = ArrayReg(bit"00")
+qubit10 = ArrayReg(bit"10") # circuit reads in reverse order
+qubit01 = ArrayReg(bit"01")
+qubit11 = ArrayReg(bit"11")
+
+using StatsBase: Histogram, fit
+using Plots: bar, scatter!, gr;
+gr();
+using BitBasis
+function plotmeasure(x::Array{BitStr{n, Int}, 1}) where n
+ hist = fit(Histogram, Int.(x), 0:2^n)
+ x = 0
+ if (n <= 3)
+ s = 8
+ elseif (n > 3 && n <= 6)
+ s = 5
+ elseif (n > 6 && n <= 10)
+ s = 3.2
+ elseif (n > 10 && n <= 15)
+ s = 2
+ elseif (n > 15)
+ s = 1
+ end
+ bar(hist.edges[1] .- 0.5, hist.weights, legend = :none, size = (600 * (2^n) / s, 400), ylims = (0:maximum(hist.weights)), xlims = (0:2^n), grid = :false, ticks = false, border = :none, color = :lightblue, lc = :lightblue)
+ scatter!(0:2^n-1, ones(2^n, 1), markersize = 0,
+ series_annotations = "|" .* string.(hist.edges[1]; base = 2, pad = n) .* "⟩")
+ scatter!(0:2^n-1, zeros(2^n, 1) .+ maximum(hist.weights), markersize = 0,
+ series_annotations = string.(hist.weights))
+end
+
+# pass them through the circuit 1024 times, taking measurements
+println("Qubit 00")
+measured_qubits00 = qubit00 |> circuit -> measure(circuit, nshots = 1024)
+println(measured_qubits00)
+plotmeasure(measured_qubits00)
+
+println("Qubit 01")
+measured_qubits01 = qubit01 |> circuit -> measure(circuit, nshots = 1024)
+println(measured_qubits01)
+plotmeasure(measured_qubits01)
+
+println("Qubit 10")
+measured_qubits10 = qubit10 |> circuit -> measure(circuit, nshots = 1024)
+println(measured_qubits10)
+plotmeasure(measured_qubits10)
+
+println("Qubit 11")
+measured_qubits11 = qubit11 |> circuit -> measure(circuit, nshots = 1024)
+println(measured_qubits11)
+plotmeasure(measured_qubits11)