{ "cells": [ { "cell_type": "markdown", "source": [ "# Introduction to periodic problems and plane-wave discretisations" ], "metadata": {} }, { "cell_type": "markdown", "source": [ "In this example we want to show how DFTK can be used to solve simple one-dimensional\n", "periodic problems. Along the lines this notebook serves as a concise introduction into\n", "the underlying theory and jargon for solving periodic problems using plane-wave\n", "discretizations." ], "metadata": {} }, { "cell_type": "markdown", "source": [ "## Periodicity and lattices\n", "A periodic problem is characterized by being invariant to certain translations.\n", "For example the ``\\sin`` function is periodic with periodicity ``2π``, i.e.\n", "$$\n", " \\sin(x) = \\sin(x + 2πm) \\quad ∀ m ∈ \\mathbb{Z},\n", "$$\n", "This is nothing else than saying that any translation by an integer multiple of ``2π``\n", "keeps the ``\\sin`` function invariant. In a more formal one can use the\n", "translation operator ``T_{-2πm}`` to write this as:\n", "$$\n", " T_{-2πm} \\, \\sin(x) = \\sin(x + 2πm) = \\sin(x).\n", "$$\n", "\n", "Whenever such periodicity exists one can exploit it to save computational work.\n", "Consider a problem in which we want to find a function ``f : \\mathbb{R} → \\mathbb{R}``,\n", "but *a priori* the solution is known to be periodic with periodicity ``a``. As a consequence\n", "of said periodicity it is sufficient to determine the values of ``f`` for all ``x`` from the\n", "interval ``[-a/2, a/2)`` to uniquely define ``f`` on the full real axis. Naturally exploiting\n", "periodicity in a computational procedure thus greatly reduces the required amount of work.\n", "\n", "Let us introduce some jargon: The periodicity of our problem implies that we may define\n", "a **lattice**\n", "```\n", " -3a/2 -a/2 +a/2 +3a/2\n", " ... |---------|---------|---------| ...\n", " a a a\n", "```\n", "with lattice constant ``a``. Each cell of the lattice is an identical periodic image of\n", "any of its neighbors. For finding ``f`` it is thus sufficient to consider only the\n", "problem inside a **unit cell** ``[-a/2, a/2)``. In passing we note that the definition\n", "of the unit cell is itself only unique up to translations. A choice ``[0, a)``,\n", "for example, would have done just as well.\n", "\n", "## Periodic operators and the Bloch transform\n", "Not only functions, but also operators can feature periodicity.\n", "Consider for example the **free-electron Hamiltonian**\n", "$$\n", " H = -\\frac12 Δ.\n", "$$\n", "In free-electron model (which gives rise to this Hamiltonian) electron motion is only\n", "by their own kinetic energy. As this model features no potential which could make one point\n", "in space more preferred than another, we would expect this model to be periodic.\n", "If an operator is periodic with respect to a lattice such as the one defined above,\n", "then it commutes with all lattice translations. For the free-electron case ``H``\n", "one can easily show exactly that, i.e.\n", "$$\n", " T_{ma} H = H T_{ma} \\quad ∀ m ∈ \\mathbb{Z}.\n", "$$\n", "We note in passing that the free-electron model is actually very special in the sense that\n", "the choice of ``a`` is completely arbitrary here. In other words ``H`` is periodic\n", "with respect to any translation. In general, however, periodicity is only\n", "attained with respect to a finite number of translations ``a`` and we will take this\n", "viewpoint here.\n", "\n", "**Bloch's theorem** now tells us that for periodic operators,\n", "the solutions to the eigenproblem\n", "$$\n", " H ψ_{kn} = ε_{kn} ψ_{kn}\n", "$$\n", "satisfy a factorization\n", "$$\n", " ψ_{kn}(x) = e^{i k⋅x} u_{kn}(x)\n", "$$\n", "into a plane wave ``e^{i k⋅x}`` and a lattice-periodic function\n", "$$\n", " T_{ma} u_{kn}(x) = u_{kn}(x - ma) = u_{kn}(x) \\quad ∀ m ∈ \\mathbb{Z}.\n", "$$\n", "In this ``n`` is a labeling integer index and ``k`` is a real number,\n", "whose details will be clarified in the next section.\n", "The index ``n`` is sometimes also called the **band index** and\n", "functions ``ψ_{kn}`` satisfying this factorization are also known as\n", "**Bloch functions** or **Bloch states**.\n", "\n", "Consider the application of ``2H = -Δ = - \\frac{d^2}{d x^2}``\n", "to such a Bloch wave. First we notice for any function ``f``\n", "$$\n", " -i∇ \\left( e^{i k⋅x} f \\right)\n", " = -i\\frac{d}{dx} \\left( e^{i k⋅x} f \\right)\n", " = k e^{i k⋅x} f + e^{i k⋅x} (-i∇) f = e^{i k⋅x} (-i∇ + k) f.\n", "$$\n", "Using this result twice one shows that applying ``-Δ`` yields\n", "$$\n", "\\begin{aligned}\n", " -\\Delta \\left(e^{i k⋅x} u_{kn}(x)\\right)\n", " &= -i∇ ⋅ \\left[-i∇ \\left(u_{kn}(x) e^{i k⋅x} \\right) \\right] \\\\\n", " &= -i∇ ⋅ \\left[e^{i k⋅x} (-i∇ + k) u_{kn}(x) \\right] \\\\\n", " &= e^{i k⋅x} (-i∇ + k)^2 u_{kn}(x) \\\\\n", " &= e^{i k⋅x} 2H_k u_{kn}(x),\n", "\\end{aligned}\n", "$$\n", "where we defined\n", "$$\n", " H_k = \\frac12 (-i∇ + k)^2.\n", "$$\n", "The action of this operator on a function ``u_{kn}`` is given by\n", "$$\n", " H_k u_{kn} = e^{-i k⋅x} H e^{i k⋅x} u_{kn},\n", "$$\n", "which in particular implies that\n", "$$\n", " H_k u_{kn} = ε_{kn} u_{kn} \\quad ⇔ \\quad H (e^{i k⋅x} u_{kn}) = ε_{kn} (e^{i k⋅x} u_{kn}).\n", "$$\n", "To seek the eigenpairs of ``H`` we may thus equivalently\n", "find the eigenpairs of *all* ``H_k``.\n", "The point of this is that the eigenfunctions ``u_{kn}`` of ``H_k``\n", "are periodic (unlike the eigenfunctions ``ψ_{kn}`` of ``H``).\n", "In contrast to ``ψ_{kn}`` the functions ``u_{kn}`` can thus be fully\n", "represented considering the eigenproblem only on the unit cell.\n", "\n", "A detailed mathematical analysis shows that the transformation from ``H``\n", "to the set of all ``H_k`` for a suitable set of values for ``k`` (details below)\n", "is actually a unitary transformation, the so-called **Bloch transform**.\n", "This transform brings the Hamiltonian into the symmetry-adapted basis for\n", "translational symmetry, which are exactly the Bloch functions.\n", "Similar to the case of choosing a symmetry-adapted basis for other kinds of symmetries\n", "(like the point group symmetry in molecules), the Bloch transform also makes\n", "the Hamiltonian ``H`` block-diagonal[^1]:\n", "$$\n", " T_B H T_B^{-1} ⟶ \\left( \\begin{array}{cccc} H_1&&&0 \\\\ &H_2\\\\&&H_3\\\\0&&&\\ddots \\end{array} \\right)\n", "$$\n", "with each block ``H_k`` taking care of one value ``k``.\n", "This block-diagonal structure under the basis of Bloch functions lets us\n", "completely describe the spectrum of ``H`` by looking only at the spectrum\n", "of all ``H_k`` blocks.\n", "\n", "[^1]: Notice that block-diagonal is a bit an abuse of terms here, since the Hamiltonian\n", " is not a matrix but an operator and the number of blocks is essentially infinite.\n", " The mathematically precise term is that the Bloch transform reveals the fibers\n", " of the Hamiltonian.\n", "\n", "## The Brillouin zone\n", "\n", "We now consider the parameter ``k`` of the Hamiltonian blocks in detail.\n", "\n", "- As discussed ``k`` is a real number. It turns out, however, that some of\n", " these ``k∈\\mathbb{R}`` give rise to operators related by unitary transformations\n", " (again due to translational symmetry).\n", "- Since such operators have the same eigenspectrum, only one version needs to be considered.\n", "- The smallest subset from which ``k`` is chosen is the **Brillouin zone** (BZ).\n", "\n", "- The BZ is the unit cell of the **reciprocal lattice**, which may be constructed from\n", " the **real-space lattice** by a Fourier transform.\n", "- In our simple 1D case the reciprocal lattice is just\n", " ```\n", " ... |--------|--------|--------| ...\n", " 2π/a 2π/a 2π/a\n", " ```\n", " i.e. like the real-space lattice, but just with a different lattice constant\n", " ``b = 2π / a``.\n", "- The BZ in our example is thus ``B = [-π/a, π/a)``. The members of ``B``\n", " are typically called ``k``-points.\n", "\n", "## Discretization and plane-wave basis sets\n", "\n", "With what we discussed so far the strategy to find all eigenpairs of a periodic\n", "Hamiltonian ``H`` thus reduces to finding the eigenpairs of all ``H_k`` with ``k ∈ B``.\n", "This requires *two* discretisations:\n", "\n", " - ``B`` is infinite (and not countable). To discretize we first only pick a finite number\n", " of ``k``-points. Usually this **``k``-point sampling** is done by picking ``k``-points\n", " along a regular grid inside the BZ, the **``k``-grid**.\n", " - Each ``H_k`` is still an infinite-dimensional operator.\n", " Following a standard Ritz-Galerkin ansatz we project the operator into a finite basis\n", " and diagonalize the resulting matrix.\n", "\n", "For the second step multiple types of bases are used in practice (finite differences,\n", "finite elements, Gaussians, ...). In DFTK we currently support only plane-wave\n", "discretizations.\n", "\n", "For our 1D example normalized plane waves are defined as the functions\n", "$$\n", "e_{G}(x) = \\frac{e^{i G x}}{\\sqrt{a}} \\qquad G \\in b\\mathbb{Z}\n", "$$\n", "and typically one forms basis sets from these by specifying a\n", "**kinetic energy cutoff** ``E_\\text{cut}``:\n", "$$\n", "\\left\\{ e_{G} \\, \\big| \\, (G + k)^2 \\leq 2E_\\text{cut} \\right\\}\n", "$$\n", "\n", "## Correspondence of theory to DFTK code\n", "\n", "Before solving a few example problems numerically in DFTK, a short overview\n", "of the correspondence of the introduced quantities to data structures inside DFTK.\n", "\n", "- ``H`` is represented by a `Hamiltonian` object and variables for hamiltonians are usually called `ham`.\n", "- ``H_k`` by a `HamiltonianBlock` and variables are `hamk`.\n", "- ``ψ_{kn}`` is usually just called `ψ`.\n", " ``u_{kn}`` is not stored (in favor of ``ψ_{kn}``).\n", "- ``ε_{kn}`` is called `eigenvalues`.\n", "- ``k``-points are represented by `Kpoint` and respective variables called `kpt`.\n", "- The basis of plane waves is managed by `PlaneWaveBasis` and variables usually just called `basis`.\n", "\n", "## Solving the free-electron Hamiltonian\n", "\n", "One typical approach to get physical insight into a Hamiltonian ``H`` is to plot\n", "a so-called **band structure**, that is the eigenvalues of ``H_k`` versus ``k``.\n", "In DFTK we achieve this using the following steps:\n", "\n", "Step 1: Build the 1D lattice. DFTK is mostly tailored for 3D problems.\n", "Therefore quantities related to the problem space are have a fixed\n", "dimension 3. The convention is that for 1D / 2D problems the\n", "trailing entries are always zero and ignored in the computation.\n", "For the lattice we therefore construct a 3x3 matrix with only one entry." ], "metadata": {} }, { "outputs": [], "cell_type": "code", "source": [ "using DFTK\n", "\n", "lattice = zeros(3, 3)\n", "lattice[1, 1] = 20.;" ], "metadata": {}, "execution_count": 1 }, { "cell_type": "markdown", "source": [ "Step 2: Select a model. In this case we choose a free-electron model,\n", "which is the same as saying that there is only a Kinetic term\n", "(and no potential) in the model." ], "metadata": {} }, { "outputs": [ { "output_type": "execute_result", "data": { "text/plain": "Model(custom, 1D):\n lattice (in Bohr) : [20 , 0 , 0 ]\n [0 , 0 , 0 ]\n [0 , 0 , 0 ]\n unit cell volume : 20 Bohr³\n\n num. electrons : 0\n spin polarization : none\n temperature : 0 Ha\n\n terms : Kinetic()" }, "metadata": {}, "execution_count": 2 } ], "cell_type": "code", "source": [ "model = Model(lattice; terms=[Kinetic()])" ], "metadata": {}, "execution_count": 2 }, { "cell_type": "markdown", "source": [ "Step 3: Define a plane-wave basis using this model and a cutoff ``E_\\text{cut}``\n", "of 300 Hartree. The ``k``-point grid is given as a regular grid in the BZ\n", "(a so-called **Monkhorst-Pack** grid). Here we select only one ``k``-point (1x1x1),\n", "see the note below for some details on this choice." ], "metadata": {} }, { "outputs": [ { "output_type": "execute_result", "data": { "text/plain": "PlaneWaveBasis discretization:\n Ecut : 300.0 Ha\n fft_size : (320, 1, 1), 320 total points\n kgrid type : Monkhorst-Pack\n kgrid : [1, 1, 1]\n num. irred. kpoints : 1\n\n Discretized Model(custom, 1D):\n lattice (in Bohr) : [20 , 0 , 0 ]\n [0 , 0 , 0 ]\n [0 , 0 , 0 ]\n unit cell volume : 20 Bohr³\n \n num. electrons : 0\n spin polarization : none\n temperature : 0 Ha\n \n terms : Kinetic()" }, "metadata": {}, "execution_count": 3 } ], "cell_type": "code", "source": [ "basis = PlaneWaveBasis(model; Ecut=300, kgrid=(1, 1, 1))" ], "metadata": {}, "execution_count": 3 }, { "cell_type": "markdown", "source": [ "Step 4: Plot the bands! Select a density of ``k``-points for the ``k``-grid to use\n", "for the bandstructure calculation, discretize the problem and diagonalize it.\n", "Afterwards plot the bands." ], "metadata": {} }, { "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Computing bands along kpath:\n", " -½ -> ½\n", "\rDiagonalising Hamiltonian kblocks: 6%|█ | ETA: 0:00:09\u001b[K\rDiagonalising Hamiltonian kblocks: 100%|████████████████| Time: 0:00:00\u001b[K\n" ] }, { "output_type": "execute_result", "data": { "text/plain": "Plot{Plots.GRBackend() n=6}", "image/png": "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", "text/html": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ] }, "metadata": {}, "execution_count": 4 } ], "cell_type": "code", "source": [ "using Unitful\n", "using UnitfulAtomic\n", "using Plots\n", "\n", "plot_bandstructure(basis; n_bands=6, kline_density=100)" ], "metadata": {}, "execution_count": 4 }, { "cell_type": "markdown", "source": [ "!!! note \"Selection of k-point grids in `PlaneWaveBasis` construction\"\n", " You might wonder why we only selected a single ``k``-point (clearly a very crude\n", " and inaccurate approximation). In this example the `kgrid` parameter specified\n", " in the construction of the `PlaneWaveBasis`\n", " is not actually used for plotting the bands. It is only used when solving more\n", " involved models like density-functional theory (DFT) where the Hamiltonian is\n", " non-linear. In these cases before plotting the bands the self-consistent field\n", " equations (SCF) need to be solved first. This is typically done on\n", " a different ``k``-point grid than the grid used for the bands later on.\n", " In our case we don't need this extra step and therefore the `kgrid` value passed\n", " to `PlaneWaveBasis` is actually arbitrary." ], "metadata": {} }, { "cell_type": "markdown", "source": [ "## Adding potentials\n", "So far so good. But free electrons are actually a little boring,\n", "so let's add a potential interacting with the electrons.\n", "\n", "- The modified problem we will look at consists of diagonalizing\n", " $$\n", " H_k = \\frac12 (-i \\nabla + k)^2 + V\n", " $$\n", " for all ``k \\in B`` with a periodic potential ``V`` interacting with the electrons.\n", "\n", "- A number of \"standard\" potentials are readily implemented in DFTK and\n", " can be assembled using the `terms` kwarg of the model.\n", " This allows to seamlessly construct\n", "\n", " * density-functial theory (DFT) models for treating electronic structures\n", " (see the Tutorial).\n", " * Gross-Pitaevskii models for bosonic systems\n", " (see Gross-Pitaevskii equation in one dimension)\n", " * even some more unusual cases like anyonic models.\n", "\n", "In this tutorial we will go a little more low-level and directly provide\n", "an analytic potential describing the interaction with the electrons to DFTK.\n", "\n", "First we define a custom Gaussian potential as a new \"element\" inside DFTK:" ], "metadata": {} }, { "outputs": [], "cell_type": "code", "source": [ "struct ElementGaussian <: DFTK.Element\n", " α # Prefactor\n", " L # Extend\n", "end\n", "\n", "# Some default values\n", "ElementGaussian() = ElementGaussian(0.3, 10.0)\n", "\n", "# Real-space representation of a Gaussian\n", "function DFTK.local_potential_real(el::ElementGaussian, r::Real)\n", " -el.α / (√(2π) * el.L) * exp(- (r / el.L)^2 / 2)\n", "end\n", "\n", "# Fourier-space representation of the Gaussian\n", "function DFTK.local_potential_fourier(el::ElementGaussian, q::Real)\n", " # = ∫ -α exp(-(r/L)^2 exp(-ir⋅q) dr\n", " -el.α * exp(- (q * el.L)^2 / 2)\n", "end" ], "metadata": {}, "execution_count": 5 }, { "cell_type": "markdown", "source": [ "A single potential looks like:" ], "metadata": {} }, { "outputs": [ { "output_type": "execute_result", "data": { "text/plain": "Plot{Plots.GRBackend() n=1}", "image/png": "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", "text/html": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ] }, "metadata": {}, "execution_count": 6 } ], "cell_type": "code", "source": [ "using Plots\n", "using LinearAlgebra\n", "nucleus = ElementGaussian()\n", "plot(r -> DFTK.local_potential_real(nucleus, norm(r)), xlims=(-50, 50))" ], "metadata": {}, "execution_count": 6 }, { "cell_type": "markdown", "source": [ "With this element at hand we can easily construct a setting\n", "where two potentials of this form are located at positions\n", "``20`` and ``80`` inside the lattice ``[0, 100]``:" ], "metadata": {} }, { "outputs": [ { "output_type": "execute_result", "data": { "text/plain": "Plot{Plots.GRBackend() n=1}", "image/png": "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", "text/html": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ] }, "metadata": {}, "execution_count": 7 } ], "cell_type": "code", "source": [ "using LinearAlgebra\n", "\n", "# Define the 1D lattice [0, 100]\n", "lattice = diagm([100., 0, 0])\n", "\n", "# Place them at 20 and 80 in *fractional coordinates*,\n", "# that is 0.2 and 0.8, since the lattice is 100 wide.\n", "nucleus = ElementGaussian()\n", "atoms = [nucleus, nucleus]\n", "positions = [[0.2, 0, 0], [0.8, 0, 0]]\n", "\n", "# Assemble the model, discretize and build the Hamiltonian\n", "model = Model(lattice, atoms, positions; terms=[Kinetic(), AtomicLocal()])\n", "basis = PlaneWaveBasis(model; Ecut=300, kgrid=(1, 1, 1));\n", "ham = Hamiltonian(basis)\n", "\n", "# Extract the total potential term of the Hamiltonian and plot it\n", "potential = DFTK.total_local_potential(ham)[:, 1, 1]\n", "rvecs = collect(r_vectors_cart(basis))[:, 1, 1] # slice along the x axis\n", "x = [r[1] for r in rvecs] # only keep the x coordinate\n", "plot(x, potential, label=\"\", xlabel=\"x\", ylabel=\"V(x)\")" ], "metadata": {}, "execution_count": 7 }, { "cell_type": "markdown", "source": [ "This potential is the sum of two \"atomic\" potentials (the two \"Gaussian\" elements).\n", "Due to the periodic setting we are considering interactions naturally also occur\n", "across the unit cell boundary (i.e. wrapping from `100` over to `0`).\n", "The required periodization of the atomic potential is automatically taken care,\n", "such that the potential is smooth across the cell boundary at `100`/`0`.\n", "\n", "With this setup, let's look at the bands:" ], "metadata": {} }, { "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Computing bands along kpath:\n", " -½ -> ½\n" ] }, { "output_type": "execute_result", "data": { "text/plain": "Plot{Plots.GRBackend() n=6}", "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nOzdd1hU19YH4B9D7whIL4IiUhQpilJEERBQYh3sxG5yLWi+JBo1CSYmV03sSa5REyPEBkZRUCNgQUFFBakiRRAREATpbZjy/TETNIjRKHCAWe/D43PmsMdZozDr7H323ktCIBCAEEIIEVcspgMghBBCmESJkBBCiFijREgIIUSsUSIkhBAi1igREkIIEWuUCAkhhIg1SoSEEELEGiVCQgghYo0SISGEELFGiZAQQohYE6NEWFFRkZ+fz3QUhBBCus6bbCMqRonw7NmzX3zxBdNREEII6SJ8Pp/L5b62mRglQkIIIeRllAgJIYSINUqEhBBCxBolQkIIIWKNEiEhhBCxRomQEEKIWKNESAghRKxRIiSkl4uOvmxtPfazzzYzHQgh3RQlQkJ6s+RkvP/+royM/23fHnrqFLelhemACOl+KBES0guVlGDbNgwZgilT4OKyQFc3YPhw9507pQwMEBiIO3eYjo+Q7kSK6QAIIR2mqQnR0QgJwaVL8PXF9u0YOxYSEu8B7wkbFBbiyBHMmgUpKfj74/33YWLCbMiEMI96hIT0BomJCAyEkRF278aECSgoQHAwPDwgIfG3ZoaGWLMG2dkICUFlJUaMgIsL9u1DXR1DcRPSDVAiJKQHe/QIW7bAzAwBAejTB7dvIzoaAQFQVHzNE+3tsWsXHj3CmjWIiYG+Pvz9EREBHq9L4iakO6FESEgPc/bsBX19RwuL6c7OPEdHPHmCsDBkZCAoCMbG/+6vkpWFnx9CQ5GdDScnfPklTE3h7v6TtvawDz74rHPCJ6TboURISI/B5SIyEh98EF5c/E1+fsUHH5QWFmLHDgwd+q5/s7Y2Vq1CUhIiI5GcfLisLPzXX8/9+CMqKjoibkK6N0qEhPQAGRlYuxYGBggKwuzZyxwcfggMHDN3rp5UR093GzwYISFf2tktWb36k9RUDBwIPz+EhYHD6eAXIqT7oFmjhHRfxcUIC8OhQygvx6xZuHYNZmYArIHwznvR8eO9xo/3Eh7v3InISAQH48MPMXUq5s6Fs3PbCTiE9HSUCAnpdpqaEBGB4GDcuAFfX2zdKlwFwUAk8vJgs8Fm4/Fj/PEHli1DczNmzEBAAExNGYiHkM5AQ6OEMK+2tpbH4/H5iIvD0qXQ1cW+fWCz8ehR+6sgup5wJX5KCg4fRmUlnJxE6y5qawGgsrKS4fgIeQeUCAlh2OnTZ/v181JXdzQyqgwMhKUlsrJEqyAUFJgO7iWt6y7+7/9w/jyMjGBgMN/UlD1z5nKmQyPkLdHQKCGMKSvD0aPYsiW5snKKrOzlH34omjSpD9NBvREZGUyejMmTUVEBM7P0qqqtYWHr9fQwd24HTGElpItRj5CQria8BejvDzMzxMdj+/ZlK1fW79zpP2mSNdOh/WsaGjh//qeFC8+dOfOTlhbYbFhZISgI+flMR0bIG5MQCARMx9BFgoODo6OjQ0JCmA6EiCk+H9evIyQEoaGwskJAAGbNgpIS02F1tMREBAfj2DHRfjczZkBFhemYiLji8/k8Hk9aWvqfm9HQKCGdLjMTx48jOBjy8ggIQGYmdHSYjqnT2NvD3h5btyIqCiEh+OQTjBqFgABMmoTXfRwRwgwaGiWk4924cSMtLa2iAvv2wcUFnp6orMQffyAjA2vW9OYs2Kp187aCArDZ2LcPurpYuhRxcSgvLz937lxjYyPTMRIiQj1CQjrY0aPhixYdbGl5Ji+/a+pUu6+/hpsbWOJ6zammhoAABAQgNxe//47581FQ4MNieTg5Hb10ie5TkG5BXH87CeloPB7+/BNz52LJEj6HIykrK3n+vODXXzFmjPhmwRcNGICgIOTkQENDwONJx8fz3dywfz9oCSJhHP2CEvKuWjcC3bABDg7IyZkcExMYG7vdycme6dC6o7t3I8PC7MrL93/+Oa5dw4AB8PNDcDAaGpiOjIgrGhol5C0Jq70fPIimJsyYgatXhRuBApDQ0XFjNrbuTEdHZ9KkSQA8PODhgcZG0XamH30EX1+w2fD1haQk01EScUI9QkL+ncpKBAfD0xO2tsjLw4EDyM/H5s2tWZD8O8LtTCMikJoKe3ts2YJ+/RAYiKQkpiMjYoN6hIS8RktLy4YNWxoaWkaPXnv8uPyFCxg3DitXwtub1gN0JD09BAYiMBD37iE0FP7+kJUFmw1l5dDExGubNq02pX2+SeegREjIP+Hx8O2357ZvL+Fyla5ePfHJJ3N//bUXroLvViwtERSEL77AtWv47bfaQ4e2CgTr09M3Xr16SE2N6eBIb0SJkJD23bqFI0dw/Di0tAYrKn4tLy9x+PBc6563CVpPxWLBzQ2urorJyer5+VtZrMX9+mHsWMyeDV9fyMkxHR/pRSgREvI3BQU4duz5FJgrV2Bubsrl3uTz+TIyMkxHJ3ZYLNbdu1GNjY3y8vLV1Th9GgcPYskS0bQaHx9I0WcYeWc0WYYQAGjdBcbe/m9TYMzNAUBKSoqyIIPk5eUBqKoiIKCdaTVxcUzHR3o4SoRETAm3m29sRFgY/PxgaoqYGKxZg5IS/PwzXFyYr4VLXkU4rSYuDtHR6NMHCxbAwkK0Wl9IfGoJkA7BTCLkcDjJycmFhYX/0CY7OzsjI4PP57c5X1lZyeFw2pzMy8tLTU3l8XgdHCjpjaqqqiwtR/ft6+jhkaCri8OHMXcunjxBaCj8/GgiaE8izH9ZWfj1V1RUwMUFI0Y0GRl56+oOP38+munoSI/BQCK8d++emZnZ0qVLhw0btmrVqpcbNDc3+/j4+Pj4TJ8+ffjw4c+ePROeDwgI0NTUVFdXP3LkSGtjPp8/c+ZMNze3efPmWVtbFxUVddHbID0Qn4/Ll/H++5n37xtWVMyTl7+Sl4fwcPj7Q16e6eDI25KQwMiR2LMHRUVYvLiwrEyytPT/liyJCg5GTQ3TwZGegIFEuHbt2jlz5iQkJKSmph45cuTWrVttGoSEhJSVlWVmZqalpenr6+/YsUN4ftasWQkJCY6Oji82joiIuHPnTmZmZlJSkpOT09dff91Fb4P0KBkZCArCgAFYvhxDhzq+/77p5MnJv/wyX12d6chIx5GSwsKFZp9+OtrH50JQ0PKYGPTrR/u3kTcg6Fo1NTWSkpL5+fnChwsWLPjoo4/atPH09Ny5c6fw+PTp02ZmZi9+d8SIEQcPHmx9OHPmzPXr1wuPr1+/rqam9qqXPnTo0Jw5c971DZAeJT9fsHmzwNxcYGwsWLNGkJnJdECka1VWCg4dEkyYINDQEMydKzhzRsDhMB0T6UI8Ho/zBv/lXT31WDh0aWRkJHxoamqakpLSpk1BQYGJiUlrg0ePHgkEAolXTF0oKCgYO3Zsa+OqqqqamhqVV5TEfvr0aUxMjPBYQUHBycnp3d4N6aaKinDiBMLC8PAhpk7FgQNwdqbJL+KotQhURQX++ANbtmDBAkyZgrlz6UeCPNfVibChoUFaWpr1V1kaeXn5urq6l9vI/bVcVk5OjsPhtLS0vGryemNj44uNAdTV1b0qEWZlZX377bfCYx0dncGDB7/buyHdRXJycmZmtrv7xEuXlE6dkrp1S9LLi7tyJdfTkytcZ/bSTxkRLzIymDkTM2eisJB14oTUwoXSDQ2YMIE7eza3ru5qaenT996bIEVrEnsdPp8vKysr/bopcF39H6+trd3U1CRcHgugvLxc56Vy3dra2q0TZCoqKtTV1f9hCVebxiwWS0tL61WNXVxcQkKoFmhvk5dXOn78R/X1Y6SkfpgyJejDD3H6NGRkpAGaAErasrTEF1/giy9w9y6OHJFhs+8/fbpFUtLs0aOmzz9fzHR0pIPx+fw3WU3Q1ZNldHR09PX14+PjhQ+vX7/u4ODQpo2Dg0Nrg/j4+JcbtGl8/fr11sZDhw6lyzox0dSEU6fg7w9bW1kOhyMv/3Dduj5Hj+K990Br38lr2driu+9w7ZqSsnKNhETh99+rOTlh926UlDAdGelyXZ0zJCUlV65cuWrVqm3btt2+fTszM3P27NkAUlNTvb29Hz16JCUltWzZMmdnZzs7OzU1tf/+97+tfbgLFy4UFBSUlpbGxsZyOBwfHx9DQ8PFixcPGTJkz549pqamGzZs+Oabb7r4HZEuxuPhxg2EhCAsDJaWYLPxww9qLNbFgoICe3sqhEv+nQEDTNPTz1RVVQ0aZHXjBsLCMHQozMzAZmPmTLx6dIn0Kgx0nj7++GNFRcU9e/bo6OjExsaqqqoC6NOnz7Rp04T3DgcPHhwREbF3797m5ub9+/d7e3sLn/jgwYOUlBRPT08AiYmJTk5OhoaGRkZGMTExu3btiomJ2bRp05w5c7r+HZEuwOfj+nWEheH4cWhoICAAGRnQ1W39vqampiaD4ZGeS19fX19fH4CLC1xcsHUroqIQFoYvv8SwYZg7F5Mm4RWzDkgvISEQm72IgoODo6Oj6R5hj5ORgbAwBAeLKrjOmYMBA5iOiYiBxkbExCAkBBcuYNQosNmYOhWKikyHRf4N4T3C106Wob1GSXc0efIiXV3HqVNPDxiAKVMgEODs2eeL4gnpAvLy8PNDaCjy8zFxIg4dgqEhpk8v6ddvrIXF6H/eIZL0LJQISfeSk4MvvqiPiEh78uSnxMTjoaHIysLGjbCwYDoyIq7U1bFoES5eREYGFBXjCguds7K85s27cuUKXtoLmfRIlAhJt1BYiF274OICJyeUlirOmTPNzu7zY8dW2dkxHRkhf9HVxa5d3j4+j0aNyvTwmLBhA7S1ERCAmBiIzS2m3onuERImtW4Bc/8+lVolPU9BAcLDERaGggJMmQI2mzas6V7oHiHpvp49Q3Aw/PwwdCgSE0VVAIVnKAuSHsTYWFQZ8cIF9OmDxYthYkK1gnse+tQhXSE1NTUyMmby5Om3b+uHheHqVYwahYAA/PEHLX4nvYGlJYKCEBQkmuS8YAG4XPj7Y/bslri4YA0NNX//qUzHSF6JEiHpdNXVcHMLqK7+6Isvlk6ZEjl/PkJDqf4f6Z2srGBlhaAgJCTg+HG4uf1eXZ0kI/OYz9eeMcOF6ehI+2holHSW2locPoyJE2FsDD5fXVn5/NSp/UJDMWUKZUHS+zk6Yvt2HDtmqKycKiFRuHKljr09tmxBfj7TkZGXUI+QdDDhMuSwMJw9CycnsNkICYGCQlRubu6gQYOYjo6QLuXl5ZGRYaGgoKCq2ke4NZKzM/r0oa0huhdKhKRjNDUhOhphYThzBtbWYLOxfTte2PVMirIgEU/C/dvw1xZuO3aINgt0cYGGBthszJ2L/v2ZjVHc0dAoeUtlZWUAmpoQEYGAAOjqYssW2NsjJwdxcQgMBO39ScjLWCy4uGDXLhQV4eefUVkJJyc4OGDXLhQXA0BlZWVLSwvTYYoX6hGSt+HjE3DzZoWSkk5d3S/DhsHfHzt2QEOD6bAI6TkkJUV9xO+/R0wMQkPx9dfQ0jpVWLhNRaUxPT2mT58+TMcoLigRkn+hqQkXLiAsDFFRWXz+RimpjdnZ6NuX6bAI6cmkpeHjAx8fcDiYNSv9/v0J9fUXx40rff/9PlOn4qXK5aTjUSIkr9d6/y8yUlQCcP78fadOhX7wwX7KgoR0FBkZ/PLLSjOzHywsFpmaDhIWRxwwAGw22Gzo6TEdX+9FW6yRV3o5/02fTtenhHQdYRlqYRlOyohv4Q23WKMeIWnr5fy3dSvlP0IY0Hofcft2UUa0s6OM2PFo1igBgJCQE/37O8+cuf3F+Z/37onmf1IWJIRZwowonGu6eTPy8mBnBxcXBAZeHzBgdEDAKvEZ2+sM1CMUd/X1OHcOy5btqq2NfPzYbc+ej/6+/o8Q0o209hG/+w4xMfjww4OPHm1+9GiDmVnZvHnahoZMx9czUY9QTDU0iNb/6etj1y68994KI6Pxn34asGQJZUFCegAZGfj64vff55mZfTp6tEV5udawYaJtTrOzmQ6up6EeoXipqkJ0NCIicPo0Bg8Gm43vv4eWFgB/wJ/p6Agh/46rq3N29lXhcet9RDc3qKuDzcaMGaANnd4EJUKxUFmJiAi01j9is7FnD1RVmQ6LENJxWkdNW3dxGzsWampgs+HvD0tLpuPrxigR9k65ublBQXs8PNxZrIkv5r/Dh6GiwnRwhJDOJNzFrTUjRkbivfcgKws/PwwZknX27I/TpnlNnjyB6TC7EVpH2AsVF2PMmOnZ2XMkJDZMm3bb31/G1xcKCkyHRQhhiECAGzfwxx/48cfJzc1L5eU/uXo12cFBkum4Oh2tIxQ7Dx/i5EmcPInMTBgbj1JV3Wxmph8aSgXgCRF3EhJwcoKTE1RV3Xbu/FpBwXTWLEkuF1OmYMoUjBgBlnjPm6QeYY+Xn48zZxAWhvv34esLNhvjxkFGBvX19YqKikxHRwjpXlo/GTIyEBmJiAhkZ8PbG2w2vL3xur5TD0M9wl4uI0O0+cujR/D2xpo1bX+IKQsSQl7W+slgZQUrK6xZI7qY3rIF8+eLLqa9vCAry2yYXUq8+8M9R21t7a5de+Pj4zMyEBQECwuMH4/KSuzciSdPEBwMP7/edilHCOkaJiYIDERcHO7ehb09du+Glhb8/BAcjKysx999tyu7t69MpKHRHoDHw+TJa86eVQZODxhwjs3uO3UqbG2ZDosQ0kuVlCA8HCdP4vJlTz5/robGntzc2z1xwRUNjfZ4zc24eBGnTuH0aUhLG8jJRSsptSQmyispMR0ZIaRX09XFhx/iww/h5aV78+bllhZ1IyM4O2PyZEycKNyCo1ehRNjtNDYiJuZ58Qc/P8THw8xsxf37ngYGBkqUBgkhXeXPP39LT0+3tLRsaRF9Lq1ZI/pcmjIFZmZMx9dBKBF2F8+eITISkZGIioK1NdhsbNkCXd3nDQbRXkmEkK7FYrGGDBkCQEoKfn7w8wOXi5s3RRu59ekDNht+frC3ZzrQd0OJkBlcLvf06TOGhga6usPPn0dExPPNX/bvp83PCCHdlJRU221rZs4Elws/P7DZMDEpjomJ8fX16du3L9OR/guUCJnx2Wf/27UrQyBIU1b+beJEs8WLERoKeXmmwyKEkDfTupHbf/+LxEScOoUlS5CTw+bz/U1MZt2/Hy3Vc9JLz4m05+PzcesWwsMRHo6nT1VYrFJ5+cbERDkTE6YjI4SQtyUhAQcHODjgm29gYSFfUPCwrExJRwe+vpg0CePGofsvaaZ1hJ2OxxPVeTcywuzZaGzEgQMoL3//+vXP09MjTEyokiYhpJdISor488/J5eXHMzPh4YGDB6GnB09P7NqFkhKmg3s1WkfYWRoacPGiaPKnqSkmTKDaYIQQsVNfj0uXGPskpHWEXYrP5//xR7iSkoKDg/f586LKf8OHY8KEtpM/CSFEfCgqtp1u6uEBVVX4+WHCBGhqZsXGXmOzp6irqzMYJCXCjvH992Gff36Wz3+moKA4caLrvHk4dqwHjIwTQkjXeHG6aUICwsOxcKHgwQN/gWDB3r0fJiQcl2GuUg4lwrfH4SA2FhERiIhAU5MGi/VIXr7hyhW1oUOZjowQQrorFgsjR2LkSGzZImFsLF9envL4saa2Njw84OcHX19oanZ1SJQI/7Vnz3DxIiIing95nzgBOzuPvDwTWVlZAwMDpgMkhJCe4f79yxkZGXZ2dpWVuHQJERFYtUr0udqV6/QpEb6pvDxR8rt1S3Tzb/Nm6Ok9b9C/f3/moiOEkJ5HXl7ewcEBgIYG2Gyw2WhqQlwcIiIweTKkpODpiQkTRDVWOw8lwvZxudwNG7bU1jZOnrwuJkYhIgLl5Rg3DkuW4NQp0H6fhBDSGeTk4OEBDw/s2iUqHbxlC2bPhpsb2GzU1h6Nj7/+zTcfmXTo+mtKhG3V1yMxEb/9diEkpJDL1Th37vi8efNDQmBrCwkJpoMjhBCx0Vo6uLgYkZE4erT6woWdAsGnt29//d13vzo6dtiEfEqE4PNx/z5u3cLNm7h5E7m5GDIElpaDVVW/lJKSOH16+pAhTIdICCFiTE8PS5Zg0SJlOzvVgoLvLC3/c+AAFi+GggIcHTFiBBwdYWf39rtUilcibG5uFh5UV+P2bcTFITERN25ARgb29nBxwZw5cHCAnBwAo59/TuDz+a9diUkIIaQLsFis5OSopqYmOTk54ZniYiQmIj4ea9YgJQVGRqJPcmdnWFiAxUJDQwOPx1N9XR0D8dpZZunSEAeH/5SUTK6owPDhcHQUfXX9bF1CCCEdqKkJd+8iIQEJCbh5EzU1sLOrTEgYExwcPmlSv39+rnj1CLlcex2dh/v2YdAguuFHCCG9h5ycaHmiUGkpIiKq4+OVBYLXl7UTr0To6JgQEnL+r141IYSQ3klbG4sW9dPTW29uXgv0+efG4lV9oqSkqaKigukoCCGEdDqBQBAVdaO8vOG1LcUrET58uMDP79AvvyAtDTwe09EQQgjpBEVFwkLBWT/9lFJc/PqtTsRraFRZ+dexY/dcvYrvv0dREezsRFNmhg2DkRHTwRFCCHkrNTW4cwcJCbh1C7dugcvF8OGws+tnaspVUMgFLP756eI1a/TFeoS1tUhJQWIiEhNx7RqamuDgAHt72Ntj5EhoauL27dtNTU2urq7Mhk0IIUSooKAgLS3Ny8uLxZLJyhJ9gMfHIyMDVlZwdhZ9hltaiqZDUj3C11BWFtUEESosxK1bSEjAtm1ISoK6+s0nT9azWEo//FC5YMF7jEZKCCEE5eWNQ4e+V1/v3qfP1fr6rf37Y9gwODpiwQJYWUHqHbKZ+CbCNgwNYWiIqVMBgMdDaChr8WJeSwtv9WrJXbvg6wsfHzg5vdO/NSGEkH8rOxvnzuH8edy8iaYmsFjckSNlf/+9I/d8ps/1dkhKYubM4RYWO5uamoYPH3H3LmJisG4dUlPh5gY/P4wfD319pqMkhJBeSliDIiYGERGoqICXFxYtQmiofG3t2YyMDHd3947d8uuf7hHW19eXl5dLSUlpamrKysp25Msyoc09wrdQXo7Ll0XFmHR14ecHDw+4uYF2YSOEkHeXn4/oaMTEIDoa/fuLqhLa2b39/idvf4/w+vXrhw4dunTpUm5urvCMpKSkjY2Nl5fXggULzMzM3jKink9TU1Qxi8dDcjIiIrB2LQoKMGYMHB2fhoev1NBQOHx4t6KiItOREkJID7B5849Hj56ZN29taemYmBg8eoTRozFhAvbtg5pa14Xxtx7hxYsXP/3006SkpH79+jk5OQ0cOFBdXZ3L5VZUVKSmpt64caOiomLChAlbt24dNGhQ18XYQd69R9iuoiKcP4+fftp39269pGTxjBluq1ZNsLMDS7yWaBJCyL9QWIhz5wQrV9pwOKcUFZd/9tl5H5+Or3b3r3uEJ0+enDt37qJFiw4cOGBra/tyUx6Pd/HixQMHDtjY2GRnZxsbG3dkvD2Wvj4WLYK7u4ev7wIuV0ZNbc3776OiAt7e8PWFl1eXXtcQQki3xeUiPh7nz+PcOZSUwNtbYuRIz5ycmV99tWrhQiYDe94jzMnJUVZW1tHRee1z0tPT9fX1+/R5ze5t3U0n9Qjb9fAhoqI6cqSbEEJ6qKdPceVK29kVo0d3xST8N+wRiu+C+q7ROvfpzBlUVGDcOPj5wcsLqqp48uSJqqqq/FuXkiSEkG5GIBA8fPjQxMSEz4dwvn1EBJPz7TtsQb1AIEhPTy8tLRU+9PDw6IDoxIacHDw84OGBzZuRnY2zZ7F/PxYuRL9+4Xl52xUUatLTo7S0tJgOkxBCOoCz89R791jKyspNTQd1deHri2++gbNzd1+B/froJk2aVF5erv9XHqdE+NYGDsTAgVi9GvX1WLw4JyPDrbExwc7u6cSJWj4+cHeHggLTIRJCyL/E5yMpSXTn79atx3z+Wnn5nUlJMDRkOrI39ppEWF1dzeVy4+PjuyYaMaGoiAMHltnYHOjf/0M7O6uYGPz8M2bMwNChotFze3umQySEkH/07BkuXkRMDCIjRUNf69bBwODgiROn58//tQdlQbw2EaqoqKjRrMdOoKCgsGbNSuHxkiVYsgQNDbh+HRERmDoVLBY8PeHhgXHjoKLCbKSEEPJcRgYiIxETg9u3MWwYJkzAunV4YQ2Bla2tFYPhvZ1/miyza9eupqamuLg4JSWloUOHCk+uWbOmq2LrYIxMlnk7eXmiGVY3boi6iUOGFIWGbndyGrp48VymoyOEiIvExLvbtv3q7z+1pWV0TAzOnoWsLDw8MGECvLzQ/Tcc67DJMi6tBRpIVzE1RWAgAgNRW4uYGPz5J776amtDg92xY/tlZMZOm6ZHe9cQQjoVn4/ERPj4rKio2Hrs2DI/v7s+Pm06f73HPyXCwMDALouDtEtZGZMnY/JkuLg4r1q1Q0pK+tAhjRUrMHw4vL3h7Q1ra6ZDJIT0ImVluHABf/6J6Ghoa8PQ0I3HW+vsPPT0aaYj60x/2wcsODg4MTGx9WFaWlp1dXXrw6SkJEqNTJk717+w8GJp6dVLl2SfPMHatSgvx/Tp0NGBvz+Cg1FZyXSIhJCeicdDYiK2bIGLCwYMQGgo3Nxw5w7S0nD37jePH5+PjDzIdIyd62+J8PPPP4+KihIe8/n8IUOGnD9/vvW79+/f3717d5dGR16g8NfqCgUF0cLEjAxcvw4PD0RGwtQUDg5YuxZxceDzAaC0tJQvPCKEkL+UlpYKp4aUliI4GP7+6NsXAQGorERQEMrLERGBJUtgZCRqLw5VBLr3KkfyOqamokmnTU24ehUXLmDpUpSXQ0try6NHF3V1mzIzYyVoYzdCCABg9eqvf/stTlq6RVv7UmkpPD3h54cffoCY7+rBTCKMiIg4cOAAgIULF7733nsvN8jNzf3mm2+Ki4vd3Nw++eST1jk/Bw4cOHnypJKS0kcffTRixAgANTU1n3zySesT/fz8JkyY0CVvonuRk4OXF7y8sKdWALsAACAASURBVG0bHj2Ct3dKTc37tbVbHBxavL1lvLzg5ER1EwkRU/fv48IFXLiAqKgUHm+BgsKmAwd4w4ZJUpEcIQb+GeLj4wMCAubMmRMQEDBv3rxr1661adDc3Ozu7q6vr//ZZ59FRkauX79eeP63337btGlTYGDg2LFjx40bV1BQAKChoeHXX3+1/4uurm5Xv5/ux8gIUVFbV63KvnBh1759Mioq2LQJffvC0xNbtuCFu8CEkF6rrg4xMQgMhIkJxoxBYiLmz8fdu9sDAzPOnv3R0ZGy4AsELzAyMvr222+FxzweD8DRo0dbv3v48OE27d+Ov7//hg0bhMdBQUHTpk1r0+D3338fMmSI8Pju3buqqqoNDQ0CgcDGxiYkJER4fubMmevXrxcIBCUlJTIyMm/yuocOHZozZ867x99DlZcLQkMFS5YIjIwEpqaCJUsEoaGCykqmwyKEdBweT3DnjmDzZoGHh0BVVeDhIdi8WXDnDtNhMYfH43E4nNc2azs0GhUVVVdX1/rw+PHjaWlpwuOMjIwOSb1JSUnz5s0THjs5OQUHB7/cwMnJSXhsY2PT0tKSm5trYWGRlpbWet7JyencuXPCYx6Pt3DhQikpqbFjx7LZbLol1i4NDbDZYLMBIC8PMTEIC8OSJejfHx4e0Na+fPz4rsWL/RcunMV0pISQN5WRkfHhh0EODsNHjvwkIgJnz0JNDR4eWLkSnp6Qk2M6vh6ibSK8cuXKlStXWh+Gh4eHh4d37EuWlpaqq6sLj9XV1Z88efJyA6O/ZixJSEgI22hqavL5/NYnamhoCJ8oIyPzf//3fzY2NhUVFR9//PGdO3e2bt36qpe+fPlya81hAwODI0eOdOxb6yn69sXMmZg5E42NiI+XunhRcseOLzic4OTkSc3NU9zdufr64lKci5AeqqFB4to1yU8/3ZGfvzQublNu7szx4zW/+IKrrS365W1pQUsLszEyj8/ny8rK/rudZRITE4Ujop1KUVGxsbFReNzQ0KCsrNymgZKSUlNTU+tDYRslJSUAjY2Nwr1P6+vrhU9UV1ffsmWLsKWdnZ27u/umTZtkZGTafWlbW9ugoCDhsays7MsvLW5aF+wbGs7cvp09cKDn1atyX34puqHo5QU3NygpMR0lIQTAX7u9REcjKgqJiRg2DM7OU+rqPrOyMgkP12PRTb+XCLdYe22zvyVCTU3NTovnOWNj4/z8/NGjRwPIz89v7fy1MjIyunXrlvC4srKyqqrKyMhIWVlZTU0tLy9POB2m3ScOGDCAw+HU1NS86o2oqanZU2WH9qxZ8581a/7T+lC4r+7OnZg+HYMGiUoqurnRvFNCGPDkCa5dQ0QEzp2Dqio8PLBsWeuO/L6AL9MB9ngMXEFMnz79119/5XK5PB7v119/nT59uvD8//73v8LCQgD+/v4XL17Mz88HcODAARcXFz09PeET9+3bB6CmpubYsWPCJxYWFgq7j3w+f+fOnQMHDuyadN67WVlhzRpER6OsDJs3A8DatdDQgJ8f9u3Dw4coKSk5ePBQa7lmQkiHaGlpOX487Pbt2/X1iInB2rVwcMCQIQgLg4sLkpLw4AF+/hlsNtWl6VCt02ZCQ0NXrlxZXFz8z7NrUlJSpkyZkp2d/dbTeOrr68eOHWtiYmJqauru7l5XVyc8r6ioGBUVJTzetGmTurq6vb29gYFBUlKS8GRRUZG1tbW1tbWOjs68efN4PJ5AIPjf//6noqIyePBgPT09CwuLO6+eICXms0bfXVGR4OBBwaxZAi0tgYyMK4u128hoTFUV02ER0lu0tAgWLfpeWnqZtPQIBYV8Dw/Bli2CpCQBn890ZD3WG84afV6GKS8vb+HChfHx8ePGjZs6daqjo6O5ublw0JnD4aSkpMTHxx8/fvzWrVtz5sz58ccfld7t3tGDBw8A9O/fv/VMY2OjrKxs6zB3RUVFcXGxubn5izf8+Hx+VlaWsrKygYFB68nKysrHjx+rqakZGBj8w5TRHlSGqZsTCGBt7Z2fbykjk83nR1pZicZOR47EK27OEkJeKTMTMTGIiUFsLJSV95eX/yknl5eUdM7EhFZFv6s3LMPUth7h2bNn9+zZEx0dLdymUk1NjcvlChdUyMnJsdns1atXt0687FkoEXagpqamW7duOTo6SkrKpqSIfo2FhTqFSdHWFnTnnpBXKStDbKyoyFpLC1xc4OGB8eOhr487d+7o6ekJ7weRd/SWiVCopKTkypUraWlppaWlsrKyWlpaw4YNc3V1VenJw9KUCDtbXR1u3hQlxUePMHo0PDzg5YV+/cDn8x8+fGhqasp0jIR0tbKyMjk5ORUVlfp63Lgh+gXJzoajo+iqkSbwdZ53SoS9EiXCrlRQIPqFv3QJamp49syDw1H18TE8dmwn06ER0nWioy/7+69vaWm0sDhx/35/R0eMHQsPD9jZQVKS6eDEQIdVqCfkLRgbY+FCLFwIgQCpqXB1fVpbu+DEicMODnB3h7s7XF0hBtVdiDji85GcjEuXcOkSrlzJb252kJZ+PGtW8Qcf9JeXZzo40h5KhKRzSUjAxgaxsb+Fh0fNn7+3ogIxMdi2DdOmPV+h6OoKWVmmAyXk3Qh3LhSOgghX+82fj4MH5x4/3tKnj9Pcua5MB0heiYZGCTMaGxEfj7g4xMeLZtk4O8PF5fmyfQ6H86odgghhkHCnEklJSQAlJYiLazvnxccHhoZMR0kA0NAo6ebk5UXdQQBVVYiNxaVLWLUKxcVwcxMkJY2vqysPClq6YsVCpiMl5LkHDx64uk5vboaHx+9JSYNqazFmDNzdsWYNaCpYz0WJkDBPTQ0TJ2LiRAAoLcX58w3nz5c2N2/8+ONj8fELR4/GmDEwN2c6SiLGyssRG4srV3D6dMqTJ84SErJyckmnTg2ysgJVu+kFKBGS7kVbG/PmKQKfnD17dvXqL4uKEBOD775DfT1GjRINn9J0c9IFamuRkNB2tcOhQxPCw1P4fN53302hIke9Bt0jJD1DcTHi4xETg6goNDXB1RUeHnB2hpWVqAGXy5WSogs78jZaf3heXAsrTH7Ca69Ro2jXpB6J7hGSXkVP73lh4dxcXLmCy5excSOkpeHq2hwb69vUVPPzz19OnjyB6UhJT1JRUTF8uF9VFdfHZ3dW1oisLIwYgTFjsGcPhg0DXVmJCfp/Jj3PgAEYMACLFgFAVhb++KMkLIzV3Lw6IODSlCkT3NwwahQGDGA6StKNPXuGuDjExuLcufv5+aaAfWlp/I4dI4YPp56fOKJESHo2c3OsW9dPSmrSrVtXV69e/+AB4uOxaRMaG+HqKhrXsrOjGQ0EZWVISBANsLcOe+7ePfLChStPnjzcvftLdXWmQyQMoXuEpHdqvacYF4fycgwfLlrjJdwNvLm5uaGhoU+fPkyHSTpeS0tLdXW1sC6psKStcLlqTg6GDxfdWqaen5h4p3uE8fHxEhISTk5OABobG7/88suEhIRhw4Z9/fXX8rRHEOkJXrynWFSE2FhcvYq5c/HkCYYNe5KQ4MtiyR069KWf3zimIyUdqba2dtCgMbW1CjY2H5aUzKythasrRo3CggUYPJgqopD2tZ8I586du2rVKmEiDAoK+v77752dnffv319aWko9KtLj6Otj1izMmgUAZWU4dKgoNlafw7Fjs++NHDnO1RVOTnByopLfPRWXi+RkxMUhLg5Xr1ZUVCgKBBOlpNLPnIGlJdPBkZ6gnaHRuro6ZWXlxMREOzs7Ho+nq6s7Z86c7du3R0VFjR8/vry8XFVVlZFY3xENjZJWv/wSUlBQsnz5suxsxdad3nR14eICZ2e4usLEhOkQyT+qr8fdu6Jd+uLioK4uuh/s7Iz09JPJyZmffvofGvomb1+Gqbi4WF9f/+HDh8bGxnfu3Bk2bNj169dHjhzZ1NQkLy+fnJxsY2PTaWF3IkqE5B9wuUhJEWXE2FhISoo+VV1cYGuL6OgoDoczYcJ4CZp10+Xu3bt3+3bi1KmT6+qUbt8WJb+7d2FhIfoPcneHhgbTUZJu6e3vEfbt25fFYuXm5hobG584cUJFRcXBwQGAsE69JBXRIr2RlBTs7WFvj8BAAMjKQnw8rl3DTz+huPhSc/MPLJb8unXc1asnKSszHavY4HKRmNjo6Tmzvn7K8uWfycruEWa+rVvh4ECzXUiHaScRSktLe3t7f/DBB2w2e+/evVOmTBGm07S0NBaLZUjbqhMxYG4Oc3MsWAAA0dGqU6eWt7TInDih9t13MDGBoyNGjoSjIywsaP5FByspQUICbtxAQgKSkmBoKMXjScjJ5U2caBgSQstgSKdof/lEUVHR0qVLk5KS7OzsfvnlF21tbQDvv/9+WlpaUlJSlwfZMWholLy1vLw8Lpc7cOBALhdZWUhMFA3QPX6MwYNhby8qIKWlxXSgPVBLC1JTEReHxEQkJqKoSFSTy94eTk7Q0EBVVVVWVtbw4cNpXJr8W29/j7C3okRIOlxFBRISkJCAmzeRkIC+fTFiBExMsg4eXKiiIhMbGypczUZeNHfuqqioeG/vD9XUFty8ifR0WFpixAg4OsLREWZmTMdHepEO2GuUy+UWFBSUlpYK11EQQtrQ0ICvL3x9AYDPx/37SEjAL79cKiqa9vjxw5Ejb7u5+djawtYWNjZQVGQ6XIbweMjKwt27oq/Lly8JBCdPn/7w888XsNmwtwctTibMaj8R8ni8oKCgHTt21NfX6+vrP378GEBgYGBTU9PPP//ctRES0jOwWLC0hKUl/PzYc+asVlVVWbNmTHo6EhNx9Cju3oWqqmg+jr09HB178zhq6wCy8Cs5GSoqoje+ahXc3VeFh6/asuVzd3emAyUEwKuGRjds2PD999+vXr1aTU1tz549wkQYGRk5c+bM8vJyWVnZLo+zA9DQKGFQa264dw8ZGbhxAzIyotygoZG6c+dKU1PdyMjfeuIv16ZNu/ftO8xmL7KxWSzMfCkpMDKCvT2srGBpKbrVR0jXe/t7hC0tLRoaGl999dWqVatiY2Nnz54tTISPHz82NDTMzc3t379/Z0XdmSgRku6Dz8eDB0hKwt27OHbsy4ICGwmJcCur1TY2tgMHwsxM9NUN967gcJCXh+xs5OSIvmJjbXm8azIyY+bPv21nB1tbDB4MKlpLuoO3v0f49OnT2tpaLy+vNueFG8o8e/ashyZCQroPFkuU6qZPx7x5M2fMCDQwMPz8c+tHj5CXh/PnsW0bcnIgKQlTU9GXpSWsrDBwIJqby7//fq+zs52fn29nxJaTk/PTT7/PmuU3bJhDcTHu3UNenugrIwN5edDTex7V+PFwcVlx5Ij3p5+uWry4M8IhpNO1kwiVlZVZLFZJSYnl3/fpS0tLA6Crq9tFoREiHgYNGpScfEF47Oj4t28VFz/ve506ha1b8eABJCW/bmgYKC29ccaMYTo6fVVUoKqKF/9UUxMdC6+Ds7Ozg4L2TJ7swWZPFP61VVWorkZNDWpqRAfV1aKT1dU4cmRpVdXqH35YLCV1V1v7effU1RVmZjAxQZvLaz+/BRs3Luj8fydCOkv7idDV1TUoKOjFhTtVVVVr1qwZOnSogYFB10ZIiPjS04OeHkaPfn6Gz8fXXw/eseOIrKxg+HDlujrU1KCk5HlKq6lBVRWqqlBTAxkZqKigunpdY+PC0NA1//d/vjU10tXVUFX9W+4UHvTpAxUV6OvDympIRsbPpqbG8fE0wknEQvuTZVJSUtzc3BQVFS0tLRMSEiZPnnzhwoXq6uqYmBhnZ+euj7JD0D1C0muUlpZqamq+dr/D+nrU1GDr1j2HDh01MtI8ffqMsL/4WsXFxXp6eh0TKyHMecN7hO1vD2VjY3Pnzp2xY8emp6fX1taePn16xIgRN27c6LlZkJDeRFtb+012/VVUhK4uduxYUVR0MTn5jLHxG2VBAJQFiVh55YL6AQMGBAcHd2UohJBOQvW0CfkHtGEwIYQQsdZ+j/CTTz6pqalp91u0swwhhJDepP1EePXq1fLy8taHNTU15eXlCgoKOjo6XRUYIYQQ0hXaT4QJCQltzty7d2/WrFmffvpp54dECCGEdJ03vUdoaWm5e/fuDz74oKGhoVMDIoQQQrrSv5gsY25uXltbm5WV1XnREEIIIV3sXyTCiIgI0BZrhBBCepc3mjXK5XJzc3OvXbvm6elJ82UIIYT0Jm80a1RKSsrAwGDz5s3Lly/vqsAIIYSQrvCms0YJIT0Uj8eLj48fMmSI2htusEaImHnlFmuEkO6prq7u8OHjtraDhw8f3uZbfL6oBkVtLerqUFuLqips3746JaVFTi7wp5+SVFQklJSgrCyqO6GsDFnZtn//kydPTpwI9/b2GDBgQBe9JUIY9TwRPn36NDc397VPGDlyZGfGQwhpX00N8vORn4+tW79KSFCUlv5pzJhoDkddWERQmPkaGqCmBmVlKCtDmPD69EFxcR2HYyohwT95kl9XJylMkMKyTbW1EAigrPz8WcrKuHlzXlXVVBWVGT/+eMfEBCYmoBlypHd7nggjIyMXLHh9dc12yzYRQt4al8s9d+68oaGBra0tAA4HDx+Kct6LX83NEKYlgUBbTu66rCxv3jzZvn2f9+2UlKCk1M7fX1u768yZiBEjTvbv307BCg4HtbV/60c+eaKVk5MgK6ty9qzopaurYWoqevUXv1RVAaC0tPTSpcteXp4aGhqd+y9FSOd4Xo+wtLT0TdYIjho1qpND6ixUj5B0N1wuHjzApk27Q0PTJSTSbGyOFBebPH0KA4N2so6W1vMnpqenGxkZqaiodEZUfD4/OTnZ2tpaRkZGeKahAXl57eRmaWmYmCA7e1RDw3v6+hdOnIi2sGg/GRPCiDesR/i8R6itra2trd3JUREivrhc5OYiIwP37iEjA5mZyMmBvj7k5eVZrCppac7HH0sPHw4DA7y21KC1tXXnxclisezs7F48o6AAa2u8/Jrl5cjPB5st09LytKFB9oMPcP8+tLRgYQFra9GfgwZBWbnzgiWkA9BkGUI6WHl5eUDAR6qqKl988X1urpww7d27h3v3oKYGKytYWsLdHcuXw9YWiooQCBbdvGmtp6dnbGzAdOz/jqYmNDWRkXH6xo0bzs5BwqKHxcWiTH/zJn75BSkpUFYWvWvhnzdv/hoWFv7f/37s7t5Th5dILyPxqnt+CQkJoaGheXl5dXV1L56Pjo7uksA6Hg2Nkk5VXIzUVKSm4sSJvXfuNAoED/X0vB0dfVq7R4MGQU6O6Si7HJ+Phw/RejWQkYGkpCECwR8qKv9Ztix66FAMHoyBA1/fCSbkLfzrodEXHT16dM6cOYaGhhwOR05OTlVV9d69ezIyMiNGjOiEUAnpeZqakJEhynypqUhJAYsFGxsMGYKpU8eUlCxQUZGNjf1cU5PpQJnGYsHUFKammDBBdGbOnDHR0bPee+9DOTmEhmL9ehQXw8ICNjYYPBhDhsDGBjTthnSl9hPhhg0b2Gz24cOHFy1apK+vv2nTpvz8/GnTpvXcmTKEvLXy8nJf3/cbGrgbNvxaWqqfmIh793D/PoyNRWN9q1bBygqmpq3PMF+zJp7BgLu533/f1eYMh4OcHCQmIjERZ88iJQVcLiwtYW8Pe3scPboiKyvpxx+DfHw8GQmY9HrtJML6+vr8/PwjR45ISkoC4HA4AExMTPbt2+fs7BwYGNhJc9UI6T6am5GRgZQUpKQgJuZqRoaDhITKN99E+/rOGzcOH38MCwu8briFvCkZGVhZwcoKAQGiMwUFSE1FWhrCw2uio5N4vJ+mT/9u6lRPYZ976FCoqzMaMeld2kmEjY2NAoFAVVUVgIaGRuumo5aWls3Nzbm5uW1mlBHSC1RWIiND1Clp0+HbsMF99+6jEhItp07te3ENA+k8xsYwNoafHwCVZctGX7wY+NlnmyQkRF3G5GRIS4v+d4S9xkGD6C4jeXvtJEINDQ0lJaWCgoJBgwYNHDhw06ZNdXV1SkpKFy9eBKBJNz1ID1dbWzt6tH9ZWc1//vNjdfXQ5GSkpqK5GUOHYsgQuLtj9WpYWeGvRXQA1GbMCGMwYDH344/ftB4Lu4wCAfLzRf31U6cQFISnT2FtDRsbWFtzDhyYUVFR/Pvv37m5uTIWNOlR2p81OmnSJB0dnb1799bW1pqYmCgqKg4cOPDatWsjRoy4fPmyhIRE1wf67mjWqDirqkJKimhWS3z89aysAwKBq6Vl6axZa21sYGMDQ0OmQyTvoLpa9J979Wr2qVOfcLkLVVSueXl9J/zPHTIExsZMh0iY8IazRttPhM+ePWtoaDAwMACQnp6+a9eu/Px8W1vb9evX99wN7CkR9m48Hk/yhdGx4uLn45wZGXj8GGZmopE0G5uW/fs/LS4uDgnZJvwhJ72GQCBYseLzu3fvffXV5oaGga0/AxUVsLZ+PppqZwcFhefPavPDQ3qNd0qEvRIlwt6qubnZ0dHv8eNKf/+NAoGvcJKFhoaoK2Bjg6FDYWqKnjmQQTpGeTmSk0WjqampyM6GqSmGDIGZ2bNffnmPx+OEh//g6Ni2mgfp6d5pHeG6dev8/Pyo0ATpngQC5OUhJQVpaUhNRWJiyaNHEAg+jomJWbHCd+ZMDBmCHjtyQTqFpiY8PODhIXrI4SAzEykpOH8+s7TUlMu1d3e/NnLk8CFDIPyytBTH3Q/EVvs9QjMzs9zcXHNz83nz5s2dO1dfX7/rI+tw1CPsQfh8fllZmY6OjvBhTQ1ycp7P6nxx1y57e1hZ4ezZXYmJabt3f25M94LIv8Hn8z/9dNPjx6WbNm188kSzdSw9JQVaWs9/wCwtYWkpGlSoq6vj8/m0iqxHeKehUQ6Hc+HChZCQkPDwcB6PN3LkyICAgNmzZysqKnZOtF2BEmFPweHwzc1dnj1THDrUR1X1o7Q0lJfD2lo0zincfERYAIiQTtLSgsxM0VpG4WhqUxOGDIG+fkZkZICkpERExH5nZ1umwySv8U5DozIyMn5+fn5+fqWlpUeOHDl06NDSpUvXrFkzffr0vXv3dkK0RKw9foz0dKSlIS0N6em4f7+Zw2ng8ZY8eXIlMBA2NjAxAYvFdJREnEhLi8ZIW5WXIyUFR48+aGiw4fNlxo7N0de3HTxYdIlmbY2BAyFFVQx6pjedLHPt2rW5c+cWFBT03Mk11CNkUGlp6Y0bNzw9PRUVFV8c57x3D6mpaGl5XprA3h62trhx49KFC3EffbRYl4qjk+6Ez+fv3r2Py+WtWrW0rEyqdSg1MRF5eTA1/VudDUtLAILY2FgVFRXah4QRHTNrlM/nX7x48dChQ6dOnWpoaHB2do6Li+vQOLsOJUJGNDYiMxPjxg2rrh6vonJfUfFYZSUsLUUX0cKradqkgfQCjY24d080qiH8s6EB2tqh+fmh0tJPd+zYOXmyLf2od7F3GhoFkJWVdfTo0eDg4Pz8fH19/RUrVixYsGDgwIEdHSfpVZqbkZmJe/eQni66Ui4qwsCBaGpisVgcIyPWiRMwMaGVDKQXkpcX7ffWqqICe/ZIbt3K4/F4e/ey1q6FpCQGDxaVLLa0hLU1bZraLbTfIxw3blxUVJS8vPyUKVPef//9sWPHsnr+LRrqEXags2ejdu0KDgycb2ExtrXOnHB0SE/v+dCQlRWsrSEri4qKioSEhDFjxsgLi7cSIjauX7+uoqJibW2Nv7a0ba3O2Oa+gJUV+vYt3rgxyMLCdNOmNT10D69u5Z2GRqdMmeLr6+vv79+bpghTInxHtbXIykJmJjIzsXOnfWPjYQmJuZaWt4UXtsJfYzMzmi9AyL9QVISMDFFeTE9HUtIXHI6JtPSZadO+cnUdbG4OCwvQjfK39k5DoydPnuyEkEi3VlRUpKen13oRWlYmKsIgzHxZWaiogLk5Bg2CpSVcXLySkgKmT/f58UdmoyakZ9PXh74+vLxEDy9dcp858xMFBWVbW9OUFISG4t49cDii37tBgzBoECwsYGLyvNrGkydPNDU1pegK9B38079dRUVFUVFRS0vLiyftXxwCJ71CSwv8/VddvvxATQ2enhHC/MdiwcICFhYYNAi+vjA3h7Hx83t769f/l8/n94IBc0K6FXf30SUlCW1+s549E12P3r+PK1dw/z5KSmBmhkGDUFW198aNMBWV2tTUOHV1mVf8reQ12k+E9+7d++CDD65du/byt3ru8gki9PgxsrORk4OcHGRlITsbjx6Bz8/gcJZzuV8OG4aAAFhYvH4mJ2VBQjrDy79Z6upwdoaz8/MzjY3IysL9+/j224y6uqkNDQf19WvV1TUGDsTAgTAzw8CBMDeHqSmVj34j7SfCGTNmlJWV7dixw9zc/LWjq6QbunLlWmDg156eHjNnfpqXh7w80U2I7GxIScHUFKamsLREQABMTWFhgZKSvT/9FDJr1i/U4Sek+5OXx9ChGDoUHh5fbtv2s5vbN97eGq0zcfLycOsW8vKQlQUtLdHvu/BXvqrq8nfffTtlik9Q0EdMv4lupJ3JMjU1NWpqan/88cfkyZMZiamT9OLJMgIBiorw4AGEOe/BA0RGTq2t/UpCIsDW9rq5uazw8lB4ndiL5j8RQv4Jh4P8fNHAT04OsrMRH+/X0rJdUpLt65s4YICkMEH2749+/SAry3S4neBd1xEadmah0pqamsTERE1NzcGDB7fbgMfj3blzp6WlZfjw4TIvVAovKytLTU01MTHp379/60mBQJCUlFRXVzd8+PDeOju/sLBw7drvnJyGLly44MWEJzzIy4OGBlp/pn19YWkZsHfvgtGjnX//vTf+dBNC3oCMDMzNYW7+/Mzhw/PWrp1jZzd23jzJvDzcu4fISOTl4dEjaGs//wxpPcjNvb1164HFi9ne3h6vfp0er/3lE+PHj3dwcNi4cWNnvGRSUpKvr+/QoUOzs7NdXV0PHTrUpkFDwDIEtgAAIABJREFUQ4Onp2dDQ4OiomJ5eXlsbKy2tjaAM2fOLFiwwNHRMSkpafny5evXrwfA5XLfe++9hw8f6urq5uTkXLlyxdTUtN3X7Vk9wqoqFBaioACPHqGwEMeOrXz40JHF2icldcTUVL/ND6upKXrpBQAhpCvweCgsfH553XqRXV3twufvkJNbsmTJXSMjGBnB0BBGRtDV7RnbYrxTj3DVqlULFy6sqqry8fHp27fvi99691mjn3322YoVK9avX19VVWVpaXnt2jVXV9cXGxw8eFAgENy5c0dSUnLGjBnbtm3bunUrn89ftWrV3r17p02b9uDBg8GDB8+fP19PT+/kyZMFBQVJSUlycnIrVqz4+uuvDx48+I4RdoG8vLw5cz7q18/wq692lJRItSa8wkI8fIjCQgAwNES/fjA0hKEhfHxGHTv2nZaWQnJyXyqTRgjpWJKS6NcP/frB3f1v55cuHXviRKCZmYOpKQoKcPOm6JPq2TPo60OYGo2NRR9TRkaIiQnZv//QunXLZs7sSXfW2u8R6ujolJaWtvuEd5w1KrwBWVBQIBx6Xbp0qby8/M6dO19s4+7uPnXq1GXLlgE4d+7c8uXL8/Ly7ty5M3bs2IqKCuFymdGjR0+fPv3DDz+cPn26hYVFUFAQgNu3b48dO7ampqbdl+7sHmFycrK8vLz5i8MQQHU1SkpQVobiYpSVobRUdJCY+FVp6UDgnI7OygEDHF78STI2hpFRO2WGmpubZXvlKD4hpBtr95OnuVl04f7oEV68jr9/31YguCgt7e3icktPD1pa0NGBjg60tCB8qKX1t0oylZWVycnJLi4unTQr8516hKGhoRwOpxOiQlFREYvFMjAwED40NjZOSkpq06awsLC1vKqxsXFRUZFAIHj8+LGenl7rolFjY+PHjx8LG3t7e7eerK2traqqUntFefKioqLQ0FDhsZKSUusT25WamtrY2Ojo6Njud6uqUFWF6mrhl8TVq+f27t0N1Hl7725psXv6VKKkBKWlkJWFrq7wp0GgrQ1tbYwahb59UV09Yf36lfr6faOiLOTl+S///fyXzklLS/NfPksIIZ2p3U8eaWnRrZk21q3zDw4eN336PD8/gfCiv6QE6ekoLcWTJxJlZaiogIaGMC8KtLRw+rQnh+M8aNDhdev2q6pCTU2gqgo1Naiqtr/wo6ioKDMz083N7Q0T5xt+ZrafCEeNGvUmT34LTU1N0tLSrduXyMrKNjY2tmnT3Nzc+iZlZGRaWlq4XK7wia1tZGVlGxoaWv/C1sYAGhsbX5UI4+PL6upOKikZAlBV1eLxxgBoaUF9vQQALhd1dRIAeDxkZt75/fd1fL7SmDFL+vQZX1WFmhqJ6moJYdqrrpZQURGoqkJVVaCiIlBV5dfU1HO5aiwW39i4fsSIZk1NgY4OX0tL8OphzIETJ/4JQCAQCN8IIYT0dBs2rNiwYQUAoL7dBjwenj6VePpUoqREoqwM4eFcDkertPReSAhP+BlbWYmaGomaGgkZmeefsWpqUFERKCk1hoWN53JdbWwuTpv2lfDTVVZWIJwhISMDBQUBAGlpKCoKAHC5jcuWzdy2bYePj9U/h/1PO8vk5+dnZGRUV1fPnj0bQE1NjbS09DtOy9TR0WlqaqqvrxcWu3/69OnLBed0dHQqKiqEx+Xl5ZqamtLS0i+eFD5xwIABLzeWlJTU0tJ61atzucvz858ZG68D0NyM3bsBQFoaSkoAICUFZWUAYLHQ0MDi86UEAml9fQkXFynhFUrrn336ABDmclFGFwjYFy6oKikpuri4vMu/DyGE9G6qqhgwQHTs63smPv76hAkrlZXbJqO6OonqalRVCf9EdTWePpU6cUKCz5drbuY/fizb1AQATU0QdqY4HNTXA0BLC+rqAKC+/lFOjlx19QC8lqA9dXV1U6dOFTbQ19cXnlywYMG4cePabf/meDxev379IiMjhQ9Hjhy5f//+Nm1WrFixZMkS4fF///tfPz8/gUDw7NkzeXn5nJwcgUDQ0tKipaV19epVgUCwcePGyZMnCxsfOHBgxIgRr3rpQ4cOmZmNLCkpecNQb968eeXKlX/x3gghhHSmvLy806dPNzU1vUljPp+/Zs03t2/ff23L9hPhvHnzNDQ0goODjx492poIL126JCMjU19f/+ZBt2vPnj39+/c/duzYRx99ZGBgUFtbKxAIEhMT5eTkWlpaBALB/fv3VVRUtm3b9ssvv6ipqV2+fFn4xOXLl48YMeLEiRMzZsxoTXjFxcXq6uobN24MCQnR1tY+ceLEq1730KFDc+bMecfgyf+3d99xTdz/H8DfCSRhZoEDGSIiuHdBpRUV92irKA7q3toqVq21lrq16rc/9atV60at1L2xCqjIULEOVBRFQcQgECAJ2fN+fxzfGCHA2SpU7/188PBxfu6d43MhudfdJfc5hBD6UBiNRp1OV22ZleEiNRpNdHT0hg0bRo8ebXnesnnz5jqdLpf8av8/8PXXXy9btuzs2bNMJjM5OdnJyQkA6tev/91335GD7Pn7+1++fDkzMzM5Ofn48ePdunUjH7h+/fpRo0adOHHC39///PnzZKObm1tycnJRUVFcXNzOnTvNB7IIIYQQFVYunxCJRB4eHo8ePWratGlCQkJ4eDj5/UypVCoQCG7evNmxY8fa6Oo/9WFdUI8QQugfonj5hJUjQqFQyGKxMjIyyrVfv36dwWCYL2xACCGEPgJWgtDe3n7gwIELFy7Mzs42X+fw5MmTOXPmdO/evdxAMwghhNAHzfrlE5s2beratWvTpk29vb1LSkoCAwPv3Lnj4uJy+vTpGu4fQggh9F5Zv7equ7v77du3lyxZ0qBBA09PTxsbm7lz5969e7dJkyY13D+EEELovar0gnoej7dw4cKFCxfWZG8QQgihGmb9iBAhhBCiCetHhGFhYRKJpGK7s7Nzo0aNBg8ejAOJIYQQ+jhUekR48+bNK1euFBYWEgQhEoni4+MfPHhQVFS0f//+rl27rl27tiZ7iRBCCL0n1oOwc+fO3t7ejx8/TktLi4uLe/jw4Z07dzgczuzZs3Nzc6dMmRIZGVnZDQsRQgihD4iVINTr9UuXLt24caOPxc2m2rRps2TJkiVLlnA4nPXr1zMYjJSUlBrsJ0IIIfReWAnCoqIimUzm6uparr1OnTqZmZkAYG9v7+npKZfLa6KD75Rer6/tLiCEEKoher1eQ96uqUpWviwjFAodHR337t27bt06cyNBEHv37jWPr0beJvBd9bXGnDmTt2zZuS5dBgAAjwfM/+0GcDjg4PC6TCCA4uKi0NCvdDrd+fO7vb29qSz86dOnHA7H09PznXcbIYQ+SiqVKj09vUOHDkxm9ZcwEAQxePDkW7cerFu3tE+fPkol6HRls0wmkMksFwtaLSiVsilTeuzadXjgQOeql2wlCDkczrx585YtW5aenj5w4MA6derk5eUdPnw4JSVlz549AJCQkCCTyTp06EB5Zf8ttNqe+/Y9SkwcAAAyGZhMZe3mWzuSJBLQ61OUynYEUadRozhn50lsNvB4YG8PdnbA4wGbDc7O4OAAHA7w+cDhQF5e3B9/rGAwVMuX72rduhWPBwIBcLnA44HV4V4Jgrh27Vr9+vUtzz8jhNAHTS6XX79+PSgoyMHy2MICeYtd88/Eid2Vypa+vpzQ0C1KJSgUoNOBVFq2TS4tBZ0OSktBrQaNBmQyqcn0GOC/Y8b86uTUx9ER2OyyxTKZwOO9/i3kxlmtLpZIuApF9cOCWr98YvHixXw+f+3atea7Hfn6+v7++++jRo0CgDZt2mRlZdWrV+8tnp5/hw4dLsXHnyXvR181haLH8OFH1eqsQ4c2czjl/hig1YJCAeT+iEQCOh2IxcU6nSeDITl+XHr6NJhvqSyTARmi5A+XC3w+8PmQnb07KemCrW3WypXH/PwaCgQgFJb9/G941/KePn3aoEGDyl5eCCH0zhEE8ejRI39/fxsbG6sFcjmUlIBEAiUlUFICs2d/XlLSycVl0+efn7YMPJkMSktBKn29MeTxgMcj5HKNVttSKr2u04FAAB4er48uHBzA2bls+2lnB/b2wOMJ5s3reelS5G+/rQgMpNJ9n+jome3aSQC4VddZuQ2TpaKiovz8fA8PDz6fT+XX/pu919swmUymEydOOTo69O3bp9wspbL8q0EigbNnt1y48BeT+ahXrwM6XWPLV5I5FC3TMS3t18uXYzgc0aFDye7uji4u4OICVZ9LMBgMtraVjhyEEKInKluG0lIoLoaiIvjmm3GPHhn5fPHEiX9abqbM0xzOG1uquLjPlMpB9epd+uGHP9/MPOByQSAo/4uePHly5Uri0KGDhULh+1hZirdhqubpcHV1/RA/C6x5TCYzNHSw1VmOjuDoCA0avNE4ceLUCxe8GzRo0LZtY8t2grDyUispgefPc1SqIJ3u5PffK+Vyx+JiKC4GgQDIRHRxAaHw9bSLCyQm7jp48Dc/P6/4+KN4DIkQAgCDAVas2LZ5825vb5/IyD/IzUhREZATxcVQUlI2YWcHQiG4usKTJy/l8vEm03qDARo2hHbtyu+mm09OkgoLj125cqVXr+iKmWeVn5+fn5/f+1jZt/L6iPDZs2fJycnt27dv2bLlkSNH1JYfmlkYM2ZMDXbvXfqgb8xbWlq6Y8e+jh1bBwd3JVsI4o0XruV0URHExQ2TSmcwmd+y2TcYDLY5LF1dwdX1jdQkp+Pjj/7yy/qvvgpdsuTb2l1ThBB1SUkpkyb90L5929Wr15eUMMRi65sFMu0UCmAyv9Dr59vazujX746rqw25EXB1Lb8zbY63Fy9e7N9/JDR0QNOmTWt1Rf8mikeEr4Nwz549EyZMWLVq1cKFC+vVq1dYWGj1AVWfSv03+6CD8G09eJC+cOEvgwf3nDBhlEr1+l1h3vsr91bJyvrMaDzNZAb7+t4jd/TIN0a5afJNwuPBmTMX1q/fO3/+xH79etb2uiL08RCJRNOn/9S8eePVqxeq1QzzySHL96xl47NnkzWaiQzGj25uv9etW8+cahVPFLm6Ap8PaWn3Fi1aHxbWb8yYsNpe15rw1kGoVqulUimXy3V0dCwsLDQajVYf4Obm9o57WlNoFYRvKyrq8NKlGwYPHjJlyjzzu87yHWj5JlQqgSA6mEx/cDijQkJuCgRg/iHPmVj+kCdmY2IuHjhw5vvvp7Ru3aq21xWhmqNQKBYu/NnFhf/TT98ymUyDoezzDomk/A/Z+NdfkSKRL5N5isVaymC0qrg/ak448ufp0+TvvlsYENDmwIH/Mir7oh2NvXUQfvQwCN8VgwEmTvwhJiauW7d+48YtLfdOLvfeJggQCkEsbm0wbOZylw8cGEt+b5bHAz4fBILX0+QEhwMAsG/foXPnrq5cOcfX17e2Vxeh13Q63cKFq/V6w9q1i+zs7AgCpFKQSMq+JS6Vlp+4fXvb/fv5TGa2i8sYtTpEpapqr1EohOfPE1atmu/qyk1IOFWnjmNtr+4H758GIUEQKSkp6enpBoNhxowZACASiTgczof73RkMwnfLZDJRuQZWrQaJBEJDRzx+/LJ7935Dhiwqt7GQSN7YcNjYAI+nEos/MxqXuLgc6tHjAJcLzs5g/pfPf/1fZ2fg84HLJWbN+vHWrQe7d69u3rw5xf4bjcbKvhGOPnTU/7g6nW7cuG9FooLff1/P5XrI5SCXQ2lp2Xf9yWmykXx9ZmYeT0tLMJnYQmE7g2GUTGZlZ46cIKfF4tQ1a75ms00nT55q1sydW83X+AEov7MQFf8oCIuKir744gtyNFF3d/eXL18CwDfffHPv3r2EhIT30d0agEFYu5RKpaNj9Xu4KhVIJETfvgNEopKRIyd36zZRJntjeySRvPFfmQyk0iyAWQTxtbPzn35+GxwcwMGhLCkdHcHBoewMrbnRZJLMmPG5RqP97bf/du3ayfKy3MokJSXpdLoePXq8m+cCvY1nz57dvXu3f//+9vb2VVdKJCCXa/r2HSQWS7//fkWbNn1kMlCpyi5hUihApQKFAiwbxeLEly/3m0ydAIqdneeTe1fkUBg83hu7XOQQGQrFsx9+GM5gMKKj97dv35TKZWUajYbFYuFeV634R5dPTJ06NTc3NzY2liCI8ePHk40jR47cunWrXC53dq5muBqEKqKSggBkYjHu34/RarUc8jxpdfR6z549HbKylv7885qmTUGpBJWqLCzJ7Z1EAi9fvm4sKHj88qWX0dh5zJirNjadFArQ64HPBzYbnJzKxqQwjx9kbw8SydXY2FUEYT98uKp584HOzmBrC2R8ktf5stng6Ag2NkDu75eWZo8cOcnZ2f7Chf0CCt8iVygUGzZs9/PzDgsbQmV9jUZjUlKSr6+vu7s7lXqCIO7evevv709xNAaNRpOYmBgQEMCzHKujcg8ePNi//8SECWH+/v5U6r/+OvLUqYsLFsz58ssROl3ZOBU6HSiVYDRCaSmQ5xsBQCYDnU6zevUQrbZf48aJn322QSYrG3NELge9HqRS0GrL4k2vB4EAmMyXUinLaIxYuza+des+XG7ZzhCfD46Or08nmBsJos3Eiavl8j2nT29t2ZJK9xuPH3+DIAjqF+na2dlRrES1xcrfUqVSnT59+vDhwz179rQ8/vPz8zMajbm5udTPPiH0t1FMQQBgsVgJCYepL9lkCliwoOmLFw83b15a53+jL0kkoNe/HjBIKgW9HuRyUKkgI4MTH68iCKNWy5FIICcHjMayMqsb8YKCP1WqIQDPhcLrAP24XCAPBszD2/L5ZeMHkSmZlbXp+XOdre3W3bubcbnNnJzeGJaPzF0zLhcuXlx148ZzW9u/5s9P4nBe75WWG2XKbN+++XfvFtjZPVq58mbF71OQozJa2rFjtEjU2Nl56dy5SaWlYPm1OcuBCQFAKgWCgJiYiUrlD7/+OrFz5ySAskyynJDLwWAAAPjf0k4B/BkRMWbNmhHmnQkWC5ycXu9MkM8MjwcEwWQywdZWUreuIDCw7FNkBwdwcgI2u2z3hbxU93+H9b7Ll/e6devKpk0/URv3l5uWFkOlzgyP7T4+VoJQKpUaDIbKrhqp7PpChD4UTCZz3brIco3klrduXauPCPzqq60Gg6FNmzZUlv/q1ZdDh85wdnY8dqyro+Pr8CBjw3JCIgEASEhounHjehZLHhZWx9n5dX6QzClCkslAodAZjc5MJlMiMVruLZhM8PSplf7k5haq1e1MprS//jIymeXf8uQIupY0Gp3BwNPrDRIJmFOc5O39xnhGZKJnZHi/eBHVtGmTBQsA4HUmmRPdnOXk0pYvn3Dw4Kiff17wxRfVPpcAwJ4/PzY9Pb1r164UAygycg6lOoT+x8pnhFqtViAQ7Nq1a+TIkQkJCeHh4eRnhEePHh0+fHhRURGVsz3/QvgZIfrXKigo4PF4FM+h6XS68+fPN2vWjOKQHBKJJDr6SHBwUIsWLajUy2SyixcvfvbZZ/Xr16dSDwA5OTnmW9Mg9O/x9z8j5HA4Q4cOXbBgQePGjc0nUpKSkubMmTNo0KAPNAUR+jd7qyHs2Wz2F9QOpkgCgWDGjCnU63k83rBhw6jXAwCmIPqgWf+8d8OGDX369AkMDBQKhXK53MPDQyQS+fn5bdmypYb7hxBCCL1X1oNQKBQmJydHR0dfvHixsLCQy+UGBwdPnDiR4hf/EEIIoQ9Fpd8AZrPZY8eOHTt2bE32BiGEEKphOH4BQgghWsMgRAghRGsYhAghhGgNgxAhhBCtYRAihBCiNQxChBBCtIZBiBBCiNYwCBFCCNEaBiFCCCFawyBECCFEaxiECCGEaA2DECGEEK1hECKEEKI1DEKEEEK0hkGIEEKI1jAIEUII0RoGIUIIIVrDIEQIIURrGIQIIYRoDYMQIYQQrWEQIoQQojUMQoQQQrSGQYgQQojWMAgRQgjRGgYhQgghWsMgRAghRGsYhAghhGgNgxAhhBCtYRAihBCiNQxChBBCtIZBiBBCiNYwCBFCCNEaBiFCCCFawyBECCFEaxiECCGEaA2DECGEEK1hECKEEKI1DEKEEEK0hkGIEEKI1jAIEUII0RoGIUIIIVqrnSA8cOBA165du3btun//fqsF9+7d+/LLLwMCAubPn69Wq8lGgiDWrVvXuXPn3r17x8bGko1SqTTMwtGjR2toHRBCCH0UbGv+V8bHx8+ZMyc6OprJZI4YMaJ+/fq9evWyLFCpVL169fruu+969uw5b968+fPnb968GQC2bt26a9euffv2PX/+fOjQobdu3fL19dVoNCdOnDh48CD52ObNm9f8GiGEEPpwMQiCqOFfOWTIkHbt2kVGRgLAqlWrUlNTT548aVmwd+/eX3/99ebNmwCQnp7eqVOnV69eOTk5tWjRYvHixWFhYQAwduzYevXqrV27Nj8/v2HDhlqtttrfu2/fvtjY2MqOQRFCCH1kTCaT0WhksVhVl9XCqdG0tLSAgAByOjAwMC0trYqCFi1aEATx7NkzvV7/6NEjywfeu3ePnDYYDKGhocOHD9++fbvRaKyRlUAIIfSReC+nRvPy8rKysso1MhiMoKAgACgsLOTz+WSjQCAoKCgoVykWixs2bGj+r1AoLCgoqFOnDkEQFR9oZ2e3cuXKNm3aiMXilStX3rlzZ+vWrZV17MKFC40aNSKnvby8zp49+4/WEyGE0L+YyWTicDjVHhG+lyC8du3apk2byjXa2NjEx8cDAJfLValUZKNCoTBnm5mzs7O5AADkcjmfz+dyuQCgUqnIevMD+Xz+999/T1Y2b968c+fOGzZs4HA4Vjv22WefrVu3jpxmsVjOzs7/bEURQgj9e5GnRqstey9BGBoaGhoaWtncRo0aZWZmdu/eHQCePn1qefBH8vb2TkxMJKfFYrFcLvfy8nJycnJ1dc3MzGzQoEFlD3R3dzcYDEqlsrIgdHBw8PHx+dvrhRBC6ONTC58Rjho1aseOHVqtVqfTbd++PTw8nGxfvXo1eUJ1xIgRV65cefToEQD8+uuv3bt3r1+/PvnAzZs3EwRRXFwcHR1NPjAzM1MikQCAXq9fsWJF69athUJhza8UQgihD1QtBOHEiRO9vb09PT09PT09PDwmT55Mtv/nP//Jzs4GgIYNG65Zs6ZLly6+vr7R0dHms6yRkZGvXr3y8vJq0qRJaGhoz549ASA5OdnLy8vT09PFxeXOnTvR0dE1v0YIIYQ+XLVw+QSpuLgYAFxcXCor0Gg0RUVF7u7uDAbDsj0/P9/BwYH8yJCk0+nIL+A4OTlV8Rvx8gmEEKIVipdP1MIF9aQqIpBkZ2fn4eFRsZ08TWqJzWZbrUQIIYSqhWONIoQQojUMQoQQQrSGQYgQQojWMAgRQgjRGgYhQgghWsMgRAghRGsYhAghhGgNgxAhhBCtYRAihBCiNQxChBBCtIZBiBBCiNYwCBFCCNEaBiFCCCFawyBECCFEaxiECCGEaA2DECGEEK1hECKEEKI1DEKEEEK0hkGIEEKI1jAIEUII0RoGIUIIIVrDIEQIIURrGIQIIYRoDYMQIYQQrWEQIoQQojUMQoQQQrSGQYg+EiaTiXqxXq8vLS2lXl9QUJCXl0e9Pi0t7enTpxSLTSZTbGzso0ePKNZrtdpjx45Tr5fL5QcPRj979oxivVQqjY7+g/r6SiSSkydPymQyivUymSwhIUGv11Os12g01FcWAIxGo1QqpV4Pb/niQR8f29ruQI16q5e7TqczGo329vYU60tLS1ksFvX63NxcPp/v7OxMpZggiNTUVB8fnzp16lCpVyqV58+f79ChQ6NGjajUv3jxYu/eQ4MH923VqhWV+sTE5E2bfo+IGNOlSycq9f/97659+46vWjW3d+8eVOrDw79JSrr1888/9e3bt9wsoxHKRZhOpx069PPCwpKlS5cGBPSvbJkqFWi1AAASScHMmf31etaCBcs7duxFztXrQaGw/sCcnLTlyycRhO306f9p3Dio6p5rtXDr1tnDhzczmbJJk35zc2tddT0AJCRsi4+/YWv7aOzYI1xuw2rrY2OX3bunYbOXT5lymcPhV1t//Pjs7OxGHM7PM2feZjBsqq0/cGBMQcGnjo6Dp027UW0xAOzaNVgmC3F13TZ79p9U6teu7a1WB3p77500aY+TUzXFJpPhxx+76HSNevRoHx6+yGoNhwMODmXTarViypQeajV72rRZPXuGAQCTCTxepcvXaEpGj/5CpdJu2bK5bdsAy1l2dlDx3SwWFw4bNgbAdP783gYNGlTTe4CCgoLRo78VCHhRUf9nZ2dXbb1YLF64cG2zZj5z506vthgAJBLJb79FderUrlu3YCr1CoXi/PnzAQEBDRtW/0oDAL1ef/369Q4dOjiYn+IqmUymzMxMPz8/BoNBpZ4giMLCwnr16lEpJpWWlnK5XIrFBEHo9XoWi1V1Gb2C8PTprC1b4gMDQwBAIqmq8tWrrDlzhplMjJUrtzdp0r7aJWdk3IiM/IbJ1K9ff7RBg8Zgsdm1Kjn56O7dW2xsStau/ZPPr6/RgFpddc/XXb6cZmPzYN68RA7H+otAqQSdrmz65Mlvnz2ry+EsnzHjFpNpSxBQxS6yRAKxsZOl0rE//zxm4MA75nadDpRK6w+5ejVCp9t86tSsVq3e2FZWttbPn280mU737z+By30jCCumGrkqADcBto8Zs9rZuXwQ2thAuXeBwZAnEoHROH/hwjhf30qD0MEBOBwAgNLSXKnU02Bot3Pn/fj4siBksaCyjXJBQYFa3YggHG7fflXtkQaHAxKJ0mgUEoSxpERNYdMHBgODyTQxGASPx+BXn2vA5TrY2opsbEwCgQ25RlVzcnJisfJsbZkCAaWtk729PYtVyGazBYLqiwHAxobsP6Pq95SZXq/X6dxVqtsiUaU7H2YGg06pNGm1QbeMCvPYAAAW5klEQVRuPWGzrddotaBSlU2r1eLiYkeD4cvff79761YYAJhMUMXBqkTyMCenkcn0yeTJiXz+G0GoVoNGU75ep0tQKjsD2Lm7xwOMLjfX3h7K/cW12iMqVWcG40li4lV7+97l6hkMKPcXf/lyc2Ght43NucOHu3K5LSp2uNwLNTV1yYsXXizW3H79LgoEwsqeIkdHIGcdO/bN8+cN7exWzJhxh8FgWu2DpR07wl+9asDnRy5efKXSIgBbWyB36X/88cuCAm6jRvDDDwcqK7bcNZkxo69YDD16dJ4+fUkVyyeZTMYpU3pIpcbw8LGDB0+uotLJCVgsUKkUo0b12r59f79+vlUvmV5BqFKFrljxV4MGIQBQ9Zu8uPixVNqWIFw2b77foEH1QZiXl1FaGsRkijduzBIKG4O1t4Slhw9zlMpAW9vUY8dKuNz6Vvc9LeXkyLVaDzY7o7hYX1mloyM4Opqn7WxtS2xtGQIBg8kEBgMaN6504QIBiEQ+Dx6cdnGpM2zY63Y2+/UCy2EwAm7dmt+5c5elS99oN4dNOQsX9r56dVhExPQpU95or2Rv3XHOnL4XL0Zs2bIsmNJubqPly/umpv65adNP3t5U6jtu3fr5ixevFi2aUu0RCQAA9P7jD5lGoxszZgiTwocJBBEWE+PM5Tp/9lkglaWbTFOvXPH38PDw8/OiUj9//sLk5OQmTZrUr0/pdMK8eeuTk5Nbt17N51P6KCQiYl9ycvInnyymdrYCpk49kZiY2K3btxTrp08/kZiYNGjQtCoO1Cw4TJu24+rVGxMmrKYWzI0OHJh2+/ajRYvmurhUX200dp43L+7ly4dbty53da2+XirtNWTIEaPRdOzYtor1FbMzM7PniBGT7O3t9+9fUjFvKu6hJiV1XrZssYMD86efPK2+lcrtntra+pSUXORwTGFhDlotVHa+2byX7OBAbhlszHtFBFHVUYFSqdBofBSK67duVVoDAAYDyOUAACJRgVI5Kitr25EjlRZb7JoQOTl5Ot3S+PgoKp9UGAyKvDyVXj/nyJFLT55UFYQKBej1oNW+ys/nlpa6Vb9ogjaioqLatPlUIpFQKTYYDMuW/bJgwQq1Wk2lXqvVLl/+y4YN20wmE5V6lUr1f/+35fTps1SKCYJQq9UHDhxMS0ujWK/X6+Pj48ViMcV6giAyMjIMBgP1eqVSSb0YIUSRSqWiuBkhPXv2jOJmiiAInU4XFxdXXFxMsV4sFu/evTc3N5difUZGxtKla7OysijWX7ly9ZtvfszOzqZYf+jQ8UmT5r948YJi/aZNO+/ff1ZtGYMgiOrT8qOwb9++2NjY/fv313ZHEEII1QSTyWQ0Gqv9jBC/NYoQQojWMAgRQgjRGgYhQgghWsMgRAghRGsYhAghhGgNgxAhhBCt0SsI3+paEfJ7t29V//Y9QgghWnurzSwAUB+llvrybZYsWfJWC/1wpaWlrV9/wcXFD6Dhq1dQ9c/du7nduvX5z392NGzYRaOpW1mZRAIKBUgkkJqaHhz8+caNuzt16q/XO0skUPVPfPz1kJAhu3cfDg4eolCwLWcpFGAygUbzxs/585f69Bl1+nT8wIGDtVpmubnkD5sN5nFPTp06P2DAuPT0J4MG9aLy5Bw/fnbo0GlqtbpLl45U6o8ePTNlyg9CoXPTpk2o1J84cW7Rol+aNPF0c6tPpf7MmfObNu1t3dqf4qCCFy/GHj16tnXr5hwqY44BxMdfSk6+1rx5Uxub6sfeBICEhIQnTzIbVzE8z5sSExNLSkrc3CgMaQFAEMS1a9cMBoOA2tApJpMpJSWFw+E4URsXx2g0JiUl8Xg8KmNdAoBWq01MTHR1daX4ZMrl8oSEBDc3t2qv1iIVFBRcunTJ09OTYn1mZmZ8/KVGjRpRrL927drFi5eaNfOnWH/kyPHY2Cvt2rW2ta1+pC2j0bhmzaYrV1K6dOlI5cVTWlr6zTc/JSendu8exKQwLtGLFy/Cwr6+dSutd+9gKgPi3bz514AB4+/fzxgwIKTaYgA4duzMwIHjMzOz+/d/PdhhaSmoVFY2KRoNrF27NTx8ZmamKCioW7lZpaVQWFh+yzZz5sLp07/PzpY0a/ZptZtBiQRCQ8fOn7+6pMTg4/OJRAJiMTx/XulmWSQy9e49YMmSzUqlA5fbutrNeFaWslu3Xs2bBzdpUs0gQ/S6oH78eEm9euoGDb6vtlgmO5eVdY4g6nh5NXR1nVBZmXmMULl8Z1FRPoPxqm7dAQ4OlQ53aVZSslwq9WAyY93c5nI4HSxnWR39WamcqdMNYTDWcbk7mExPq8ssLQWLXZ9QgNUAIwGuAVgff9ByELjS0s+MxuMMRgiff89qMTl2n9mLFx0MhhO2tkO8vP4qV2k5ArJZWlprg+E3e/vI5s3jLNudnaHixsdoVCUlBen181xdL7ZtG1VZH8zUatHFi8P0+oGNGyvatVtlbq9svLeSkvtnzsw2GJoFBLRo1WpGxQIeDyw3Wbm5CcePryEI+4EDx/n6DrKyxDc9fnz8/Pn9NjYlEyf+n7t7h2rrU1K2x8ZeYjIzZ806yeNZ/+Na+vPPldevP2Gx7s6bl8ThVD+s2aFDszIy9Gz29e+/v01l27pz53CRyMPJKXXu3MRqiwFg48YQiSSwTp20mTPPUan/+eeOKlVfd/fssLDfqy02GNRbt3bS6QY0baocMGCj5aw3X/BllMqXx44N1eu7tWzpEBj4U8UFlht6VCK5dfXqTwZD01atfPz8Zlrtg+UIZGLxqQcPzhEEu0WLT+vVG1GxWCoFy21qYeHWly+LmcwsH59RXG5Py0qr7/Ti4kiZrKmNzQk3t5/Y7Ncjtlc2CppSOUWnG8dgRHK5B5nMelDp+L1mgwD+CzAY4BZAWZBzuVBZpstknU2mUwxGbz7/brlZVodgzMlpZzSesLUd7uVFZcR2IienjdG4k8NZ4u4eAxZjllplNMoePOhjMPzA45309d1d7dI1msePH8/5/fdjYWHV3AuBXmONNmt2JCHhFJURCPX63t99l6pQqDdsGF7ZeJuWSkvDZs6MdHbmbdjQs7Jxby2JRBMmT/6hcePGGze2ozJ85YMH08eP/75z54CNGz2ojJt84cKMWbMm9es3aMOGSntjOS7i7t2T168f8PnnQ1eutF5Mjt1ntnz5oLNnBw8ZErpgQflKyxGQzWbPbvvo0Zwvvxwy483ckcvBYChfTBD2kydzZbIdn38eOnJkpX2wWBFuSopar7/Stetwy5tVVDYCeHEx98IFia3t0xYtunewllMyGVie51Yo7JhMOUHoBAJ7Ksdsjo4MBoMgCEIupzQOtVyuMxgcbW1ZEomByvn10lKVwVCXyWRKJEYqx2wKhUKn82EyTRKJicrdJ1QqlU7XQKfTURxEW6czGAw8nU5Psd5kAgCCzWZQeTKNRhtbWzCZipycXMrVN2xoZfOtVDqcOaO2scnw8+tr9Y9bbnjb4uK6f/2VZzSW9u0bYrUe3hyXODfXf968ZQTB+PrrKT4+VorL7UVlZARGRExhsWw2bWpRbmxSqxv9mzf7RkTMcXV1+eMPX8tRhfl8sPrGv3JlZETEvBYtmh04UJcsqPpuG2fPfv3tt2O++GLYunWUzoWcOPHjkiVfTZv27XRKN8OAP/5YvHnz3B9+WNG/+sMBAGDs2/fjwYObV65cWdmT/ybetm3TY2PPrVnzg281w2iT/Nes6e/nJwKopppeR4Q4xFot0ul0bCr7CAAAQBCERCIRCoUU69VqtVgs9vKiNGg1ABQUFEilUn9/f4r1jx49MhgMFO9RBQBJSUlOTk5t27alUmw0Gv/8809PT8/Wrau/ZxMAaLXaU6dOt2rVslmzZlTq5XL56dNnOnUKpHhqVyKRnDsX06NHdyq3GQIAsVh8+fLlXr16UTy1W1hYeOPGjZ49e1K8Z5lYLH748OGnn35K8Tx2SUlJXl5ey5YtqRQDgFwuVygUFM9jAwA5sCfF2xIBgMFgYDKZVM6LoneO4hBrGIQIIYQ+TjjWKEIIIVQ9DEKEEEK0RqMgvHHjRmpqam33AiGEUA05f/782LFjqy2jURAaDAZDxW8oIoQQ+kjpdDqlUlltGY2CECGEEKoIgxAhhBCt0eiCejc3N4VC0asXpSHHEEIIfegkEkmbNm2qLaPRdYQAkJycrCaHREMIIUQDgYGBzlWM2wYAdAtChBBCqBz8jBAhhBCtYRAihBCiNQxChBBCtIZBiBBCiNZoEYTFxcXx8fH379+3bExNTc3IyKitLiGEEHofcnNzY2JicnNzLRtjYmLEYnFlD6FFECYkJBw5cuTgwYPmltLS0qlTp9avX78We4UQQuidO3fu3LZt21JSUswtDx8+XLNmjWu5OyNboMUF9UOGDGGxWJbPy5IlS+bMmcPn82uxVwghhN65adOmFRYWWrZERERs2LCBwWBU9hBaHBGWk56efufOndGjR9d2RxBCCL1f0dHR/v7+7dq1q6KGFkeEUqm0oKBAKpXm5+fXq1dv1qxZv/zyS1RUVHZ2dqdOnfr161fbHUQIIfRuFBQUSCSSwsLCkpISFou1du3a48ePb9mypbCwcNCgQR06dKj4kI8zCHU63ZkzZ8jpwYMH3759++nTpzweLyYmhs1mt2rVqlmzZgUFBZ988sm0adNcXV0/+eST2u0wQgihdyIuLo7D4YhEotTU1Li4uNmzZ9vY2LRp04bNZo8YMeL27dsVR1z7OIdYk8vls2bNIqe3b9/OYrHIaZlM1q1btytXrvB4PABQqVSffvrpuXPn3Nzcaq2vCCGE3oP09PSZM2devnyZ/HQwOzt76NChqampNjY25So/ziCsTERERMeOHb/66isAUKlUI0eOjIiI6N69e233CyGE0DvWq1evdevWtW3bFgByc3PHjh27c+dOHx+fipU0+rLMvXv37t+/Hx4eDgAajaZfv37t27c3Go35+fm13TWEEELv0sGDB5s1a2ZOwb59+44aNSorK8vqDetpFISPHz/evHkzeYxsNBrDw8Pd3Nwqe14QQgh9uIqKipYtW0ZOm0ym2bNnm0ymrKwsvV5fsZhep0YRQgihcmh0RIgQQghVhEGIEEKI1jAIEUII0RoGIUIIIVrDIEQIIURrGIQIIYRoDYMQIYQQrWEQIoT+jpycnO3bt5eUlNR2RxD6pzAIEUJ/x71796ZOnZqXl1fbHUHon8IgRKiWabVasVj89x6r0+ny8/PVavU/74Zarc7Pz9fpdFbnarXaKuZa7ZVGo6m6wGAw/M2+IvROYRAi9I4FBwdPmjSJnCYIokmTJnXr1lUoFGTL4sWL/fz8yKENd+/e3bJlSzs7u7p163K53PDwcKlUSpZNmTKlRYsWJpPJcskBAQEjR44kp6VS6fjx4wUCgZubG4/HGzZsWHFxsdX+hISEDBw40LJFpVJ5enpGRkaS/83Jyfniiy94PJ6bm5tAIJg5c6ZWqzUX5+bmhoaGknPt7Ow6deqUl5cXHR09atQoAAgKChIKhUKh8P79+wCgVConT57M5/Pd3Ny4XO6wYcMsM97NzW3VqlXffvst2e1r1679vWcYoXeMQAi9UxEREfXr1zeZTARB3Lt3DwDYbHZMTAw5t2PHjsOGDSOnV61atWXLluvXr6enp+/cuVMoFIaGhpKzYmJiACAuLs682Bs3bgDAoUOHCILQarUBAQHu7u779+9PT08/duyYp6dnUFAQ+UvL2bBhA4PByMrKMrfs378fAO7cuUMQRFFRkaenZ4sWLU6dOpWenr5r1y4ejzdu3DiysqioyMvLq169env27Hnw4EFCQsKCBQuePn0qEomWL18OADt27IiNjY2NjS0tLSUIYtCgQWw2e/369ffu3du9ezeXy+3QoYNeryeXxuFw6tat27Nnz3Pnzl2+fPnly5fv8nlH6O/CIEToHTtz5gwAPHjwgCCI9evX+/v7h4SEzJ07lyAIiURiY2Ozbds2qw/csmULk8lUqVQEQRiNRg8Pj9GjR5vnzpgxg8fjkXOjoqIAICUlxTw3Pj4eAJKSkioutqioiMPhLF++3NzSs2fPVq1akdOLFi2yt7fPzc0t1438/HyCICIjIxkMxs2bNysu9vTp0wBw//59c8udO3cAYNmyZeaWvXv3AsCxY8fI/3I4HC8vL41GU9lTh1CtwFOjCL1jwcHBLBYrLi4OAOLj40NCQkJCQsigunTpktFoDAkJMRffuHFjxYoVX3/99dSpU2NiYsg7xQAAk8kMDw8/fvy4XC4HAJ1Od/jw4fDwcHt7ewC4ePEij8dTKpVx/6PVahkMxoMHDyr2x8XFpX///lFRUQRBAIBIJLp8+fKECRPIuRcuXPDx8cnIyDAvisVimUymhw8fAkBsbGzr1q07duxIZcXv3r0LAMOHDze3hIWFMRiMq1evmlv69evH4XDe8hlF6P2yre0OIPSxcXZ27tixY3x8/MyZM69evbpnzx5PT89FixaJxeL4+HgvLy9fX1+ycuLEifv27evRo4evr69AICA/R5TJZOTcCRMmrFmz5ujRo+PHjz99+nRRUdHYsWPJWQUFBUqlMiwszPL38vl8iURitUtjx4798ssvU1JSgoKCoqKiGAyG+bPGwsLC/Pz8cosSCARFRUUAUFRU1LRpU4ornpOTAwBubm7mFnt7e4FAYPnhZb169SguDaEag0GI0LsXEhKycePGlJQUpVLZrVs3Ho/H5/MvX75MHiCSNdnZ2bt37/71119nzJhBthw5cuTgwYPmhfj5+QUGBkZFRY0fPz4qKsrf3z8gIICcxePx6tatKxKJKPZnwIAB9evXj4qKCgoK2r9//8CBA82BxOVyfXx8Ll++bPWBfD4/Pz+f4m9xdHQEgKKiImdnZ7JFr9dLpVIej2euIe+MjdC/Cp4aRejdCwkJkcvla9asad++vVAotLGxCQ4O3rdv3+PHj81B+Pz5cwDo0KGD+VHkF2QsjR079urVq9evX79w4YL5ZCYABAcH5+XlJSUlUeyPra3tyJEjDx06dOnSpYyMDPORJbmo1NRU8mCuouDg4LS0tCdPnlSc5eTkBACWV2506tQJAM6dO2duOXfunMlk6ty5M8V+IlQ7avtDSoQ+QhqNxsHBAQAWLFhAtmzevBkAGAyGSCQiW169esVms0NDQwsLC4uLi9esWcPlcgEgOTnZvByJRGJnZ+ft7W1jY2N+IEEQCoXCz8/Pw8Pj2LFjxcXFxcXF169fnz179rNnzyrrEvkBnre3d506dXQ6nbk9JydHKBS2atUqPj6+tLQ0Pz//0qVL48aNMxgMBEG8fPlSKBQ2a9bs8uXLcrk8Nzd327ZtL168IAhCJBLZ2tqOGzcuMTHxr7/+UiqVJpOpS5cuAoHg5MmTMpksPj7e3d29cePGarWa/F0cDmfx4sXv6klG6F3BIETovejVqxcAxMbGkv8lv3vSvHlzy5pdu3aRpxMBoE2bNnv27CkXhARBkN896devX7nli0SigQMHMpllJ3WYTGZQUFBeXl4VXWrbti0ARERElGu/d+9ely5dzDvHbDa7T58+RqORnHvnzp127dqZ53p4eDx//pyctW3bNh8fHxaLBf+7GCM/P793797m4k8++SQzM9P8izAI0b8TgyCI93i8iRCqklwuz8zMdHJy8vPz+xsPLykpefr0qYODg6enp+VHcX9DXl7ey5cvnZycvL29ycNZS9nZ2WKxWCgU+vj4mNO3MiKRSCQSubq6+vj4/JMuIVQzMAgRQgjRGn5ZBiGEEK1hECKEEKI1DEKEEEK0hkGIEEKI1jAIEUII0RoGIUIIIVr7fy4WAdGJ4bckAAAAAElFTkSuQmCC", "text/html": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ] }, "metadata": {}, "execution_count": 8 } ], "cell_type": "code", "source": [ "using Unitful\n", "using UnitfulAtomic\n", "\n", "plot_bandstructure(basis; n_bands=6, kline_density=500)" ], "metadata": {}, "execution_count": 8 }, { "cell_type": "markdown", "source": [ "The bands are noticeably different.\n", " - The bands no longer overlap, meaning that the spectrum of $H$ is no longer continuous\n", " but has gaps.\n", "\n", " - The two lowest bands are almost flat. This is because they represent\n", " two tightly bound and localized electrons inside the two Gaussians.\n", "\n", " - The higher the bands are in energy, the more free-electron-like they are.\n", " In other words the higher the kinetic energy of the electrons, the less they feel\n", " the effect of the two Gaussian potentials. As it turns out the curvature of the bands,\n", " (the degree to which they are free-electron-like) is highly related to the delocalization\n", " of electrons in these bands: The more curved the more delocalized. In some sense\n", " \"free electrons\" correspond to perfect delocalization." ], "metadata": {} } ], "nbformat_minor": 3, "metadata": { "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", "version": "1.7.3" }, "kernelspec": { "name": "julia-1.7", "display_name": "Julia 1.7.3", "language": "julia" } }, "nbformat": 4 }