{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Quantum Fisher Information\n", "\n", " Copyright (c) 2021 Institute for Quantum Computing, Baidu Inc. All Rights Reserved. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Overview\n", "\n", "In this tutorial, we briefly introduce the concepts of the classical and quantum Fisher information, along with their applications in quantum machine learning, and show how to compute them with Paddle Quantum." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Background\n", "\n", "The quantum Fisher information (QFI) originates from the field of quantum sensing and have been versatile tools to study parameterized quantum systems [[1]](https://arxiv.org/abs/2103.15191), such as characterizing the overparameterization [[2]](https://arxiv.org/abs/2102.01659) and performing the quantum natural gradient descent [[3]](https://arxiv.org/abs/1909.02108). The QFI is a quantum analogue of the classical Fisher information (CFI). The CFI characterizes the sensibility of a parameterized **probability distribution** to parameter changes, while the QFI characterizes the sensibility of a parameterized **quantum state** to parameter changes.\n", "\n", "In a traditional introduction, the CFI will appear as a quantity of parameter estimation in mathematical statistics, which might be complicated and confusing for the beginners. This tutorial will introduce the CFI from a geometric point of view, which is not only helpful for intuitive understanding, but also easier to see the relationship between the CFI and QFI." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Classical Fisher information\n", "\n", "Let's consider the classical Fisher information first. Suppose we now have a parameterized probability distribution $p(\\boldsymbol{x};\\boldsymbol{\\theta})$. Here comes a question:\n", "\n", "- How much does a small parameter change result in the probability distribution change ?\n", "\n", "Since the question sounds like a perturbation problem, an intuition is to perform something like the Taylor expansion. But before expansion, we need to know which function to expand, i.e. we need to quantify the probability distribution change first. More formally, we need to define a distance measure between any two probability distributions, denoted by $d(p(\\boldsymbol{x};\\boldsymbol{\\theta}),p(\\boldsymbol{x};\\boldsymbol{\\theta}'))$, or $d(\\boldsymbol{\\theta},\\boldsymbol{\\theta}')$ for short.\n", "\n", "Generally, a legal distance measure is supposed to be non-negative and equal to zero if and only if two points are identical, i.e.\n", "\n", "$$\n", "\\begin{aligned}\n", "&d(\\boldsymbol{\\theta},\\boldsymbol{\\theta}')\\geq 0,\\\\\n", "&d(\\boldsymbol{\\theta},\\boldsymbol{\\theta}')=0~\\Leftrightarrow~\\boldsymbol{\\theta}=\\boldsymbol{\\theta}'.\n", "\\end{aligned}\n", "\\tag{1}\n", "$$\n", "\n", "Considering the expansion of a small distance $d(\\boldsymbol{\\theta},\\boldsymbol{\\theta}+\\boldsymbol{\\delta})$, the conditions above lead to\n", "\n", "$$\n", "\\begin{aligned}\n", "&d(\\boldsymbol{\\theta},\\boldsymbol{\\theta})=0~\\Rightarrow~\\text{the zero order}=0,\\\\\n", "&d(\\boldsymbol{\\theta},\\boldsymbol{\\theta}+\\boldsymbol{\\delta})\\geq 0~\\Rightarrow~\\boldsymbol{\\delta}=0~\\text{takes minimum}\n", "~\\Rightarrow~\\text{the first order}=0.\n", "\\end{aligned}\n", "\\tag{2}\n", "$$\n", "\n", "Thus, the second order is the lowest order that does not vanish in the expansion. So the expansion can be written as\n", "\n", "$$\n", "\\begin{aligned}\n", "d(\\boldsymbol{\\theta},\\boldsymbol{\\theta}+\\boldsymbol{\\delta})\n", "=\\frac{1}{2}\\sum_{ij}\\delta_iM_{ij}\\delta_j+O(\\|\\boldsymbol{\\delta}\\|^3) \n", "=\\frac{1}{2} \\boldsymbol{\\delta}^T M \\boldsymbol{\\delta} + O(\\|\\boldsymbol{\\delta}\\|^3),\n", "\\end{aligned}\n", "\\tag{3}\n", "$$\n", "\n", "where\n", "\n", "$$\n", "M_{ij}(\\boldsymbol{\\theta})=\\left.\\frac{\\partial^2}{\\partial\\delta_i\\partial\\delta_j}d(\\boldsymbol{\\theta},\\boldsymbol{\\theta}+\\boldsymbol{\\delta})\\right|_{\\boldsymbol{\\delta}=0},\n", "\\tag{4}\n", "$$\n", "\n", "is exactly the Hessian matrix of the distance expansion, which is called [metric](http://en.wikipedia.org/wiki/Metric_tensor) of manifold in the context of differentiable geometry. The brief derivation above tells us that we can approximate a small distance as a quadratic form of the corresponding parameters, as shown in Fig.1, and the coefficient matrix of the quadratic form is exactly the Hessian matrix from the distance expansion, up to a $1/2$ factor.\n", "\n", "![feature map](./figures/FIM-fig-Sphere-metric.png \"Figure 1. Approximate a small distance on the 2-sphere as a quadratic form\")\n", "
Figure 1. Approximate a small distance on the 2-sphere as a quadratic form
\n", "\n", "If the distance measure is specified to be the relative entropy / KL divergence, i.e.\n", "$$\n", "d_{\\mathrm{KL}}(\\boldsymbol{\\theta}, \\boldsymbol{\\theta}^{\\prime})=\\sum_{\\boldsymbol{x}} p(\\boldsymbol{x};\\boldsymbol{\\theta}) \\log \\frac{p(\\boldsymbol{x};\\boldsymbol{\\theta})}{p(\\boldsymbol{x};\\boldsymbol{\\theta}^{\\prime})}.\n", "\\tag{5}\n", "$$\n", "\n", "The corresponding Hessian matrix\n", "\n", "$$\n", "\\begin{aligned}\n", "\\mathcal{I}_{ij}(\\boldsymbol{\\theta})&= \\left.\\frac{\\partial^2}{\\partial\\delta_i\\partial\\delta_j}d_{\\mathrm{KL}}(\\boldsymbol{\\theta},\\boldsymbol{\\theta}+\\boldsymbol{\\delta})\\right|_{\\boldsymbol{\\delta}=0}\\\\\n", "&=-\\sum_{\\boldsymbol{x}} p(\\boldsymbol{x};\\boldsymbol{\\theta}) \\partial_{i} \\partial_{j} \\log p(\\boldsymbol{x};\\boldsymbol{\\theta})\n", "=\\mathbb{E}_{\\boldsymbol{x}}[-\\partial_{i} \\partial_{j} \\log p(\\boldsymbol{x};\\boldsymbol{\\theta})] \\\\\n", "&=\\sum_{\\boldsymbol{x}} \\frac{1}{p(\\boldsymbol{x};\\boldsymbol{\\theta})} \\partial_i p(\\boldsymbol{x};\\boldsymbol{\\theta}) \\cdot \\partial_j p(\\boldsymbol{x};\\boldsymbol{\\theta})\n", "=\\mathbb{E}_{\\boldsymbol{x}}[\\partial_i\\log p(\\boldsymbol{x};\\boldsymbol{\\theta})\\cdot \\partial_j \\log p(\\boldsymbol{x};\\boldsymbol{\\theta})].\n", "\\end{aligned}\n", "\\tag{6}\n", "$$\n", "\n", "is the so-called classical Fisher information matrix (CFIM), with large entries indicating large sensibility to the corresponding parameter changes. Here we use the notation $\\partial_i=\\partial/\\partial \\theta_i$.\n", "\n", "Why is $\\mathcal{I}(\\boldsymbol{\\theta})$ called \"information\"? Geometrically, the CFIM characterizes the sensitivity / sharpness of a probability distribution in the vicinity of $\\boldsymbol{\\theta}$. The more sensitive it is to a parameter change, the easier one can discriminate it from others, the fewer samples are needed to discriminate it, the more information per sample can give.\n", "\n", "The measurement outcomes from a parameterized quantum circuit (PQC) form a parameterized probability distribution. So one can define a CFIM for each kind of measurement on a PQC. Currently, the main challenge of calculating CFIM on NISQ devices is that the number of possible measurement outputs increases exponentially with the number of qubits, which means that there may be many measurement outputs with low probabilities that never appear, leading to divergence in CFIM calculations. Possible solutions includes neglecting small probabilities (cause diverge) and Bayesian updating [[1]](https://arxiv.org/abs/2103.15191)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Quantum Fisher information\n", "\n", "The quantum Fisher information is a natural quantum analogue of the classical notion above, where the expanded distance is not defined between two probability distributions, but two quantum states. A common choice is the fidelity distance \n", "\n", "$$\n", "d_f(\\boldsymbol{\\theta},\\boldsymbol{\\theta}')=2-2|\\langle\\psi(\\boldsymbol{\\theta})|\\psi(\\boldsymbol{\\theta}')\\rangle|^2.\n", "\\tag{7}\n", "$$\n", "\n", "where an additional factor $2$ here is manually multiplied to make the subsequent results resemble the CFIM. Hence formally, the quantum Fisher information matrix (QFIM) at a parameterized pure quantum state $|\\psi(\\boldsymbol{\\theta})\\rangle, \\boldsymbol{\\theta}\\in\\mathbb{R}^m$ is the Hessian matrix of the fidelity distance expansion, i.e.\n", "\n", "$$\n", "\\begin{aligned}\n", "\\mathcal{F}_{ij}(\\boldsymbol{\\theta})\n", "&= \\left.\\frac{\\partial^2}{\\partial\\delta_i\\partial\\delta_j}d_{f}(\\boldsymbol{\\theta},\\boldsymbol{\\theta}+\\boldsymbol{\\delta})\\right|_{\\boldsymbol{\\delta}=0} \\\\\n", "&=4 \\operatorname{Re}\\left[\\left\\langle\\partial_{i} \\psi \\mid \\partial_{j} \\psi\\right\\rangle - \\left\\langle\\partial_{i} \\psi \\mid \\psi\\right\\rangle\\left\\langle\\psi \\mid \\partial_{j} \\psi\\right\\rangle\\right],\n", "\\end{aligned}\n", "\\tag{8}\n", "$$\n", "\n", "where we have omitted the argument $\\boldsymbol{\\theta}$ for simplicity. Similar to the CFIM, the QFIM characterizes the sensibility of a parameterized quantum state to a small change of parameters. In addition, it is worth mentioning that the QFIM can be seen as the real part of a complex matrix called the quantum geometric tensor, or say the Fubini-Study metric [[1]](https://arxiv.org/abs/2103.15191).\n", "\n", "Currently, the community has developed some techniques to calculate the QFIM for pure states on NISQ devices, among which the two most straight methods are\n", "\n", "- applying the second order parameter shift rule [[4]](https://arxiv.org/abs/2008.06517)\n", "$$\n", "\\begin{aligned}\n", "\\mathcal{F}_{i j}=-\\frac{1}{2} \\Big(&|\\langle\\psi(\\boldsymbol{\\theta}) \\mid \\psi(\\boldsymbol{\\theta}+(\\boldsymbol{e}_{i}+\\boldsymbol{e}_{j}) \\frac{\\pi}{2})\\rangle|^{2}\n", "-|\\langle\\psi(\\boldsymbol{\\theta}) \\mid \\psi(\\boldsymbol{\\theta}+(\\boldsymbol{e}_{i}-\\boldsymbol{e}_{j}) \\frac{\\pi}{2})\\rangle|^{2}\\\\\n", "-&|\\langle\\psi(\\boldsymbol{\\theta}) \\mid \\psi(\\boldsymbol{\\theta}-(\\boldsymbol{e}_{i}-\\boldsymbol{e}_{j}) \\frac{\\pi}{2})\\rangle|^{2}\n", "+|\\langle\\psi(\\boldsymbol{\\theta}) \\mid \\psi(\\boldsymbol{\\theta}-(\\boldsymbol{e}_{i}+\\boldsymbol{e}_{j}) \\frac{\\pi}{2})\\rangle|^{2}\\Big),\n", "\\end{aligned}\n", "\\tag{9}\n", "$$\n", "where $\\boldsymbol{e}_{i}$ denotes the unit vector corresponding to $\\theta_i$. Note that the parameter shift rule can not be directly applied to the case where there are dependencies among parameters in single-qubit rotation gates, such as controlled rotation gates.\n", "\n", "- applying the finite difference expression to calculate the projection along a certain direction [[1]](https://arxiv.org/abs/2103.15191)\n", "$$\n", "\\boldsymbol{v}^{T} \\mathcal{F} \\boldsymbol{v} \\approx \\frac{4 d_{f}(\\boldsymbol{\\theta}, \\boldsymbol{\\theta}+\\epsilon \\boldsymbol{v})}{\\epsilon^{2}}.\n", "\\tag{10}\n", "$$\n", "which can be regarded as the quantum analogue of the famed Fisher-Rao norm.\n", "\n", "For mixed states, the QFIM can be defined by the expansion of the Bures fidelity distance\n", "\n", "$$\n", "d_B(\\boldsymbol{\\theta},\\boldsymbol{\\theta}')\\equiv \n", "2-2\\left[\\text{Tr}\\left([\\sqrt{\\rho(\\boldsymbol{\\theta})} \\rho(\\boldsymbol{\\theta}')\\sqrt{\\rho(\\boldsymbol{\\theta})}]^{1/2}\\right)\\right]^2,\n", "\\tag{11}\n", "$$\n", "\n", "or equivalently ($\\log x\\sim x-1$), the $\\alpha=1/2$ \"sandwiched\" Rényi relative entropy [[5]](https://arxiv.org/abs/1308.5961)\n", "\n", "$$\n", "\\begin{aligned}\n", "d_R(\\boldsymbol{\\theta},\\boldsymbol{\\theta}') &\\equiv 2\\widetilde{D}_{\\alpha=1/2}(\\rho(\\boldsymbol{\\theta'}) \\| \\rho(\\boldsymbol{\\theta})), \\\\\n", "\\widetilde{D}_{\\alpha}(\\rho \\| \\sigma) \n", "&\\equiv \n", "\\frac{1}{\\alpha-1} \\log \\operatorname{Tr}\\left[\\left(\\sigma^{\\frac{1-\\alpha}{2 \\alpha}} \\rho \\sigma^{\\frac{1-\\alpha}{2 \\alpha}}\\right)^{\\alpha}\\right].\\\\\n", "\\end{aligned}\n", "\\tag{12}\n", "$$\n", "\n", "Please see the review [[1]](https://arxiv.org/abs/2103.15191) for more details." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### The relation between CFIM and QFIM\n", "\n", "By definition, for a parameterized quantum circuit, the CFIM depends on the measurement bases while the QFIM does not. In fact, one can prove that the QFIM of a quantum state $\\rho(\\boldsymbol{\\theta})$ is an upper bound of the CFIM obtained by arbitrary measurement from the same quantum state, i.e.\n", "\n", "$$\n", "\\mathcal{I}[\\mathcal{E}[\\rho(\\boldsymbol{\\theta})]]\\leq \\mathcal{F}[\\rho(\\boldsymbol{\\theta})],~\\forall\\mathcal{E},\n", "\\tag{13}\n", "$$\n", "\n", "where $\\mathcal{E}$ denotes the quantum operation corresponding to the measurement, and the inequality between two positive matrices means that the large minus the small is still a positive matrix. This is a natural result since measurements can not extract more information than the quantum state itself, which mathematically stems from the monotonicity of the fidelity distance with respect to trace-preserving quantum operations [[1]](https://arxiv.org/abs/2103.15191)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Application: effective dimension\n", "\n", "The maximal rank of the CFIM / QFIM over the parameter space $\\Theta$ is a quantity to characterize the **capacity** of a classical / quantum neural network, called effective classical / quantum dimension\n", "\n", "$$\n", "d_{\\text{eff}}=\\underset{\\boldsymbol{\\theta}\\in\\Theta} {\\max}\n", "\\operatorname{rank}{\\mathcal{F}}(\\boldsymbol{\\theta}).\n", "\\tag{14}\n", "$$\n", "\n", "The rank captures in how many directions parameter changes will result in the probability distribution / quantum state changes. A not-full rank means that some changes of parameters can not actually change the probability distribution / quantum state, or say there are redundant degrees of freedom of parameters that can be projected out and the model is therefore overparameterized. On the other hand, a larger effective dimension corresponds to more directions that can be extended, suggesting a more extensive space occupied by the model, i.e. a larger capacity.\n", "\n", "In the context of machine learning, the so-called empirical CFIM [[6]](https://arxiv.org/abs/2011.00027) is more widely used, which is defined by a summation over samples instead of the expectation in the original definition\n", "\n", "$$\n", "\\tilde{\\mathcal{I}}_{ij}(\\boldsymbol{\\theta})\n", "=\\frac{1}{n}\\sum_{k=1}^{n}\n", "\\partial_i\\log p(x_k,y_k;\\boldsymbol{\\theta})\n", "\\partial_j\\log p(x_k,y_k;\\boldsymbol{\\theta}),\n", "\\tag{15}\n", "$$\n", "\n", "where $(x_k,y_k)^{n}_{k=1}$ are identical independent distributed training data drawn from the distribution $p(x,y;\\boldsymbol{\\theta})=p(y|x;\\boldsymbol{\\theta})p(x)$. Clearly, the empirical CFIM can converge to the CFIM in the limit of infinite samples if (1) the model has been well-trained and (2) the model has enough capacity to cover the underlying data distribution. The advantage of the empirical CFIM is that it can be calculated directly using the training data at hand, instead of calculating the original integral by generating new samples. \n", "\n", "By use of the empirical CFIM, a variant of the effective dimension can be defined as\n", "\n", "$$\n", "d_{\\text{eff}}(\\gamma, n)=\n", "2 \\frac{\\log \\left(\\frac{1}{V_{\\Theta}} \\int_{\\Theta} \\sqrt{\\operatorname{det}\\left( 1 + \\frac{\\gamma n}{2 \\pi \\log n} \\hat{\\mathcal{I}}( \\boldsymbol{\\theta})\\right)} \\mathrm{d} \\boldsymbol{\\theta} \\right)}\n", "{\\log \\left(\\frac{\\gamma n}{2 \\pi \\log n}\\right)},\n", "\\tag{16}\n", "$$\n", "\n", "where $V_{\\Theta}:=\\int_{\\Theta} \\mathrm{d} \\boldsymbol{\\theta} \\in \\mathbb{R}_{+}$ is the volume of the parameter space. $\\gamma\\in(0,1]$ is an artificial tunable parameter. $\\hat{\\mathcal{I}} (\\boldsymbol{\\theta}) \\in \\mathbb{R}^{d\\times d}$ is the normalized empirical CFIM\n", "\n", "$$\n", "\\hat{\\mathcal{I}}_{i j}(\\boldsymbol{\\theta}):= \\frac{V_{\\Theta} d }{\\int_{\\Theta} \\operatorname{Tr}(F( \\boldsymbol{\\theta} ) \\mathrm{d} \\theta} \\tilde{\\mathcal{I}}_{i j}(\\boldsymbol{\\theta}).\n", "\\tag{17}\n", "$$\n", "\n", "This definition might be strange and confusing at first glance, which is far more complicated than the maximal rank of the CFIM. However, it can converge to the maximal rank of the CFIM in the limit of infinite samples $n\\rightarrow \\infty$ [[6]](https://arxiv.org/abs/2011.00027). Regardless of the coefficients and the logarithm, the effective dimension here can be seen roughly as the geometric mean of the spectrum of the normalized CFIM plus an identity, then averaging over the parameter space. Associated with the inequality between the geometric mean and the arithmetic mean, we may expect that a more uniform empirical CFIM spectrum leads to a larger effective dimension, which is consistent with our natural impression. In this sense, it is a \"soft\" version of the effective dimension.\n", "\n", "In addition, the Fisher information can not only provide an capacity measure, but also can serve as an indicator of trainability. If the entries of the Fisher information vanish exponentially with the system size averaging over the parameter space, i.e. the sensitivity becomes exponentially small, we can not distinguish them efficiently, which indicates the existence of barrens plateaus [[6]](https://arxiv.org/abs/2011.00027)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Paddle Quantum Implementation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Calculate the QFIM\n", "\n", "With Paddle Quantum, one can obtain the QFIM conveniently by the following steps.\n", "\n", "1. Define a quantum circuit using `Circuit`.\n", "2. Define a `QuantumFisher` class as a calculator of the QFIM.\n", "3. Use the method `get_qfisher_matrix()` to calculate the QFIM.\n", "\n", "The calculator `QuantumFisher` will keep track of the change of the circuit `Circuit`.\n", "\n", "Now let's code. Firstly, import packages." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/Users/v_zhanglei48/opt/anaconda3/envs/pq/lib/python3.8/site-packages/paddle/tensor/creation.py:125: DeprecationWarning: `np.object` is a deprecated alias for the builtin `object`. To silence this warning, use `object` by itself. Doing this will not modify any behavior and is safe. \n", "Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations\n", " if data.dtype == np.object:\n", "/Users/v_zhanglei48/opt/anaconda3/envs/pq/lib/python3.8/site-packages/paddle/tensor/creation.py:125: DeprecationWarning: `np.object` is a deprecated alias for the builtin `object`. To silence this warning, use `object` by itself. Doing this will not modify any behavior and is safe. \n", "Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations\n", " if data.dtype == np.object:\n" ] } ], "source": [ "import paddle\n", "from paddle_quantum.ansatz import Circuit\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "from paddle_quantum.fisher import QuantumFisher, ClassicalFisher\n", "import warnings\n", "warnings.filterwarnings(\"ignore\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Then, define a quantum circuit. As a simple example, we exploit a single qubit parameterized by two Bloch angles\n", "\n", "$$\n", "|\\psi(\\theta,\\phi)\\rangle=R_z(\\phi)R_y(\\theta)|0\\rangle=e^{-i\\phi/2}\\cos\\frac{\\theta}{2}|0\\rangle+e^{i\\phi/2}\\sin\\frac{\\theta}{2}|1\\rangle.\n", "\\tag{18}\n", "$$\n", "\n", "The corresponding QFIM can be directly calculated using Eq.(8). The analytical result reads\n", "\n", "$$\n", "\\mathcal{F}(\\theta,\\phi)=\\left(\\begin{matrix}\n", "1&0\\\\\n", "0&\\sin^2\\theta\n", "\\end{matrix}\\right).\n", "\\tag{19}\n", "$$" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "def circuit_bloch():\n", " cir = Circuit(1)\n", " cir.ry()\n", " cir.rz()\n", " return cir" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "--Ry(0.754)----Rz(6.117)--\n", " \n" ] } ], "source": [ "cir = circuit_bloch()\n", "print(cir)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Define a QFIM calculator and calculate the QFIM element $\\mathcal{F}_{\\phi\\phi}$ corresponding to different $\\theta$." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The QFIM at [0. 6.11720181] is \n", " [[1.00000024e+00 0.00000000e+00]\n", " [0.00000000e+00 2.38418590e-07]].\n", "The QFIM at [0.15707963 6.11720181] is \n", " [[1.00000024e+00 4.52859700e-08]\n", " [4.52859700e-08 2.44718779e-02]].\n", "The QFIM at [0.31415927 6.11720181] is \n", " [[1.00000024e+00 4.79417900e-08]\n", " [4.79417900e-08 9.54915827e-02]].\n", "The QFIM at [0.4712389 6.11720181] is \n", " [[1.00000000e+00 4.99490500e-08]\n", " [4.99490500e-08 2.06107258e-01]].\n", "The QFIM at [0.62831853 6.11720181] is \n", " [[1.00000024 0. ]\n", " [0. 0.34549158]].\n", "The QFIM at [0.78539816 6.11720181] is \n", " [[ 1.00000024e+00 -6.65203000e-08]\n", " [-6.65203000e-08 5.00000213e-01]].\n", "The QFIM at [0.9424778 6.11720181] is \n", " [[1.00000024 0. ]\n", " [0. 0.65450871]].\n", "The QFIM at [1.09955743 6.11720181] is \n", " [[1.00000000e+00 3.25239200e-08]\n", " [3.25239200e-08 7.93892663e-01]].\n", "The QFIM at [1.25663706 6.11720181] is \n", " [[1. 0. ]\n", " [0. 0.90450854]].\n", "The QFIM at [1.41371669 6.11720181] is \n", " [[1.0000000e+00 4.5285970e-08]\n", " [4.5285970e-08 9.7552822e-01]].\n", "The QFIM at [1.57079633 6.11720181] is \n", " [[ 1.000000e+00 -4.214685e-08]\n", " [-4.214685e-08 1.000000e+00]].\n", "The QFIM at [1.72787596 6.11720181] is \n", " [[1. 0. ]\n", " [0. 0.97552828]].\n", "The QFIM at [1.88495559 6.11720181] is \n", " [[1.00000024e+00 3.54160800e-08]\n", " [3.54160800e-08 9.04508740e-01]].\n", "The QFIM at [2.04203522 6.11720181] is \n", " [[ 1.00000024e+00 -9.98981200e-08]\n", " [-9.98981200e-08 7.93892820e-01]].\n", "The QFIM at [2.19911486 6.11720181] is \n", " [[ 1.00000024e+00 -5.11963400e-08]\n", " [-5.11963400e-08 6.54508710e-01]].\n", "The QFIM at [2.35619449 6.11720181] is \n", " [[1.00000024e+00 6.65203000e-08]\n", " [6.65203000e-08 5.00000256e-01]].\n", "The QFIM at [2.51327412 6.11720181] is \n", " [[1.00000024e+00 3.05229200e-08]\n", " [3.05229200e-08 3.45491583e-01]].\n", "The QFIM at [2.67035376 6.11720181] is \n", " [[1.00000024e+00 3.25239100e-08]\n", " [3.25239100e-08 2.06107816e-01]].\n", "The QFIM at [2.82743339 6.11720181] is \n", " [[ 1.00000024e+00 -1.25257200e-08]\n", " [-1.25257200e-08 9.54918095e-02]].\n", "The QFIM at [2.98451302 6.11720181] is \n", " [[1. 0. ]\n", " [0. 0.02447176]].\n", "The QFIM at [3.14159265 6.11720181] is \n", " [[1.00000024e+00 4.21468500e-08]\n", " [4.21468500e-08 2.38418590e-07]].\n" ] } ], "source": [ "qf = QuantumFisher(cir)\n", "# Record the QFIM element F_{phi,phi}\n", "list_qfisher_elements = []\n", "num_thetas = 21\n", "thetas = np.linspace(0, np.pi, num_thetas)\n", "for theta in thetas:\n", " list_param = cir.param.tolist()\n", " list_param[0] = theta\n", " cir.update_param(list_param)\n", " # Calculate the QFIM\n", " qfim = qf.get_qfisher_matrix()\n", " print(f'The QFIM at {np.array(list_param)} is \\n {qfim.round(14)}.')\n", " list_qfisher_elements.append(qfim[1][1])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Plot the outputs of the QFIM element $\\mathcal{F}_{\\phi\\phi}$ as function of $\\theta$." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAyQAAAIhCAYAAAC/sH4DAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAACbEUlEQVR4nOzdd3gUVd/G8e+mkp5QQ0JvSm8iYKRHBBUElSIgVewF5cGGBfR5RBTs2EVAUZAionSQjqA0ASlKCSV00gup8/6xZl+QtE02mWRzf64rF0Nmzsy9yWZ3fjtzzrEYhmEgIiIiIiJiAhezA4iIiIiISNmlgkREREREREyjgkREREREREyjgkREREREREyjgkREREREREyjgkREREREREyjgkREREREREyjgkREREREREzjZnaAsi4zM5PTp0/j5+eHxWIxO46IiIiISKEZhkF8fDwhISG4uOR+DUQFiclOnz5N9erVzY4hIiIiIuJwJ0+epFq1arluo4LEZH5+foD1l+Xv729yGhERERGRwouLi6N69eq2c93cqCAxWdZtWv7+/ipIRERERMSp5KdLgjq1i4iIiIiIaVSQiIiIiIiIaVSQiIiIiIiIaVSQiIiIiIiIaVSQiIiIiIiIaVSQiIiIiIiIaVSQiIiIiIiIaVSQiIiIiIiIaVSQiIiIiIiIaZxmpvakpCTWr1/Pjh072LlzJzt27ODEiRMAvPLKK0yYMKHQxzh37hxvvvkmP//8MydOnMDLy4vGjRszbNgwRo0ala+ZKEVEpGhFxiQTnZha4PZBPh6EBno5MJGIiOTGaQqS3377jdtuu63I9r9jxw5uvfVWLl26BICvry/x8fFs2rSJTZs2MX/+fBYvXoyHh0eRZRARkdxFxiQTPnU9yWkZBd6Hl7srq8d2UlEiIlJMnKYgAQgKCqJVq1a2r6eeeoqzZ88Wer+xsbHccccdXLp0ieuvv56vv/6aG264gdTUVD7//HOeeuopVqxYwZgxY/joo48c8EhERKQgohNTSU7L4N0BLahX2dfu9ofPJzBm7m6iE1NVkIiIFBOnKUg6dOhAVFTUVd977rnnHLLvKVOmcPbsWby8vFi6dCm1a9cGwMPDg0cffZS4uDheeOEFPvvsM8aMGUODBg0cclwRESmYepV9aRIaYHYMERHJB6fp1O7q6lpk+541axYAAwcOtBUjV3r88cfx9fUlIyOD2bNnF1kOERERERFn4zQFSVE5dOiQrXN8z549s93G19eXDh06ALBy5cpiyyYiIiIiUtqpIMnDvn37bMtNmjTJcbusdfv37y/yTCIiIiIizkIFSR5Onz5tWw4NDc1xu6x1cXFxJCQkFHkuERGxU0o8XI41O4WIiPyLCpI8xMfH25a9vb1z3O7KdVe2+beUlBTi4uKu+hIRkSKSHA27v4VvB8KbdeH3L81OJCIi/+I0o2yVFpMmTWLixIlmxxARcVoViCXowGz4ZRUc2wCZ6f+/8vSu7BslXICUOKBisWQUEZH/p4IkD35+frblpKQk/P39s90uKSkp2zb/9vzzz/P000/b/h8XF0f16tUdkFREpGQwZab0uNNw4Cdq717Ib57bcN1k/P+6yo2g0Z3QsDdUbph9+11fw5qJ1C3fkCdcG+MZVQlC2oDFYlcMzRIvImI/FSR5CAkJsS1HRkbmWJBERkYC4O/vj69vzpNxeXp64unp6diQIiIlhGkzpW+fDhvewgfAAkkVm+HdvA80vBMq1su7fcI5sLjiFXWAp90PwIL5sK4+NOptLWSqNs+zONEs8SIiBaOCJA9Xjqy1b98+GjbM/tO1rNG4GjVqVCy5RERKoiKfKT09Fdw8rv1+w95wbANnQrrTb0NFPunb176JEXtOhk7PcmrrAg6tnU0X9z9xufQ3bJxq/QqsYT1Gs/7W4iQbmiVeRKRgVJDkoUGDBtSoUYMTJ06wfPly+vXrd802iYmJbNy4EYDu3bsXd0QRkRLHYTOlGwac2wf7F8OBxVCns7V4+LeqzWDUSi5FxnJq/aaCHcu7PDHX9WfUyhCWjmxOo/hf4cCP8PdqiDkBv34I7l45FiRZNEu8iIh9NMpWHiwWC0OHDgVgzpw5REREXLPNtGnTSEhIwNXVlcGDBxdzQhERZ2PgdX43rHoZ3m8Jn9wMG96ECwfhr+XWIqWIZXr4QbN+MOAbeOYI9J8FTe6BRn2yb5AcDZlpRZ5LRMQZOVVBEh0dzcWLF21fmZmZgLXD+ZXf//c8IRMmTMBisWCxWLItOP7zn/8QHBxMUlISt99+Ozt27AAgNTWVjz/+mJdeegmABx54gAYNGhTtgxQRcUaZGXB8C8G/TmCz5xPU/bE3bH4Poo+BWzm4/g7o+xk8sN7ujuaF5uFj7RR/z5cQnMMEuWsn0fDrlkx1/xi/4ysh7XLxZhQRKcWc6patli1bcvz48Wu+/9Zbb/HWW2/Z/j9s2DBmzJiR7/0GBATw888/c+utt7J//35uuOEG/Pz8uHz5Mmlp1k/EunfvzjvvvFPoxyAiUibt+hp+etI66K4FMtx9cG1wq7VTeb1bwNO+PhmHzxdsgtqCtuPkNlxT47jbdSOs3AjrfKF+9wLnFxEpS5yqIClKrVu35s8//2Ty5Mn8/PPPnDx5Eh8fH5o0acKwYcMYOXIkLi5OdcFJRKT4NOgBXkFEV+vKuD9r8dSIB2lcs4rduwny8cDL3ZUxc3cXOIqXuytBPtl0nM/N6F84unMN6xd9wZCAPbgnnoE/F1q/3MpBvXBrp/jrekA59S8REbmSxTCK4WZcyVFcXBwBAQHExsbmOKSwiEhpsS8yljs+2MTPj998bcfuM3sg6gg07pt948wM9p1JyLl9Ppk1F4jtsT8WRhOOWDvE719sve0sy+1Toc39ubcvxGMXESkp7DnH1RUSEREpeie2wex+kJoAXkHW0bL+zcXVIYcKDfQyd9hciwVCW0O11hA+8f9HCTv4s7UvjIiIXEUFiYiIFK0ja2HOIEhLgurtoGoLsxMVH4sFgptav7qONzuNiEiJpIJERESKzoGfYf4IyEiFul2tw+h6+JidSkREShD1whYRkaLxxxz4fqi1GGnYC+6do2IkO0fXFcvcKiIiJZUKEhERcbjyf86EHx4EIwOaD4J7ZoCbp9mxSp6tn8CsO+HnMda5WEREyiDdsiUiIo5jGDziuoiQLd9b/3/jg9DjDdCw6Nnz8AGLC+yYQbWYKNy4x+xEIiLFTgWJiIg4TLmLe3jG/Z9ipOM46DK++GdWL01a3WedNHHBaAKPLOZT95NY0tsBGvZXRMoOFSQiIuIwlys159W0+7irRRW47nE4HWdX+wLPlF6C2P0YArvi2/1Lqq16gG7sInH5UBg2D8ppbioRKRtUkIiIiMME+XjwncsdTN+RATs2FWgfBZopvQQo3CzxbrSxPMNXHm/he2artV/JkAXgXd7RMUVEShzN1G4yzdQuIs7GrJnSS4LCPvbKCQeovOheSI6CSg1h6CLwC3ZcQBGRYmLPOa4KEpOpIBGRUislwdo/REP5Otb5g/B1H4g/A5Wuh4c2g6tuaBCR0sWec1wNeyIiIvZLirLeVjR3CKSnmJ3GuVS+HkYuhwr1oOtLKkZExOnpVU5EROwTfw6+7gvn/wSvIIg+DpUamJ3KuQTVgod/BbfS15dGRMReKkhERCT/Yk5Yr4xEHQXfYLjvBxUjRUXFiIiUESpIREQkfy7+bS1G4iIhsAYM/RHK1zE7VdmTmQEurmanEBFxGPUhERGRvJ3ZA9N7WIuRitfByBUqRsyQFAWfd4U/F5mdRETEYVSQiIhI7k5sgxl3QNJFqNocRiwF/xCzU5VNv30GZ3bD/BGw6xuz04iIOIQKEhERyVnEJusQtCmxUOMmGPYT+FQ0O1XZ1XEctBoKRib8+Chs/djsRCIihaY+JCIikrPydcCnElSsD/2/Bg9vsxOVbS6u0Ot98PSHXz+E5c/B5Tjo9Ix1ThgRkVJIBYmIiOTMPwRGLLMWJRr1qWSwWKD7f6FcAKz9H6x7HVLirN9TUSIipZBu2RIRkdwFhKoYKWksFutVkR5vWP//64ew+HHrCFwiIqWMrpCIiDiZyJhkohNTC9w+yMeD0EAvByaSItPuYfD0sxYju74mKSGWYx3exnAtWAGp372ImEEFiYiIE4mMSSZ86nqS0+z9pNzgP27fsymzKX+4NmX12E46MS0tWg4BD1+MBffz91/7uXfvBpIoV6Bdebm76ncvIsVOBYmIiBOJTkwlOS2Ddwe0oF5l3/w1yswgZPOLlD/4Iw+6raZdwhSiE1N1UlqaNO5DRFI5hi6I5fUB7fL/u7/C4fMJjJm7W797ESl2KkhERJxQvcq+NAkNyHvDjDT44SE4OB+wcL79y1xalY92UuIkhrQnlk35/92LiJQQ6tQuIlJWpSXD3CGwbz64uME904m+/l6zU4mISBmjgkREpCxKiYfZ/eCv5eBWDgZ+B03uMjuVFIX9P0LUMbNTiIjkSAWJiEhZkxQFs+6EiI3g4QdDFkKD7mankqLw10qYNwK+6gnnD5qdRkQkWypIRETKkvizMON2iNwBXuVh2GKoFWZ2KikqVZtBxQYQf8ZalJzeZXYiEZFrqCARESlLtnwA5/eDb7B1BvbQVmYnkqLkFwwjlkJIK0j+58pY7CmzU4mIXEUFiYhIWdL9v9DnYxi5HCpfb3YaKQ7e/1wJC2kJl2Phx8fAMMxOJSJio4JERKQssVigxSAoX9vsJFKcPP3grs/BzQuOroXfvzA7kYiIjQoSERGRsqBifQifYF1e9TJcOmJqHBGRLCpIREREyoobH4BaHSAtCRY9ApkZZicSEVFBIiLi1KKO6aRT/p+LC/T5yDrc86nf4MSvZicSEcHN7AAiIlJELsfCjDvAPwT6z7T+KxJYA/pMs460VqOt2WlERFSQiIg4rWXPQdwpcHWHcgFmp5GSpNGdZicQEbFRQSIi4oQS/vgR/vgWAwvHbp5C0oV0IDbPdofPJxR9OClSBf0d6ncvImZRQSIi4kSCfDwIcU+k7rbxYIFP0+/gjXkpwKZ878PL3ZUgH4+iCylFIsjHAy93V8bM3V3gfeh3LyJmUEEiIuJEQgPKsea6RXgdjuNyUAM69JnKzW7l7NpHkI8HoYFeRZRQikpooBerx3YiOjG1QO1dUmIJ8PfV715Eip0KEhERZ7J3Hl6Hl4CLG+X6f0HjqlXMTiTFKDTQq2AFxdH18MND0Lgv9Hjd8cFERHKhYX9FRJxF3GlY+h/rcqdnoWpzc/NI6ZGeAvGnYetHEJH/2/tERBxBBYmIiDMwDFj8uHWo35CWcPNTZieS0qRBd2g1FDBg0cOQEm92IhEpQ1SQiIg4g9QEyEwHV0/o+6l1qF8Re9z6unWOkpgTsGK82WlEpAxRQSIi4gw8/WDIDzB6DVS6zuw0Uhp5+sGdH1mXd86Ev1aam0dEygwVJCIizsLFBYKbmp1CSrPaHaDdI9blxY9DUpS5eUSkTFBBIiIiIv+v28tQoT4knP3/QRJERIqQChIRERH5f+5e1n5IFlfYtwD2LTQ7kYg4ORUkIiKlUUYa/DEXMjPNTiLOqFpr6PC0dfnCQXOziIjT08SIIiKl0capsG4SHPwZBnxtdhpxRh2fgXrhUKOd2UlExMnpComISGlzehdseMu63OhOc7OI83LzUDEiIsVCBYmISGmSdhl+eMg650ijPtDkbrMTiYiIFIoKEhGR0mTtf6339PtUhtvfBovF7EQiIiKFooJERKS0OL4FtnxoXe79PvhUMDePlD0p8XB0vdkpRMTJqCARESkNUhJg0cOAAS2GwHU9zU4kZU3cafg4DL4dABcPm51GRJyIChIRkdJg1UsQHQEB1aHH62ankbLINxjK14b0ZPjhQchINzuRiDgJFSQiIiXd4dWwfbp1+c5pUC7A3DxSNrm4WJ9/nv4QuR22vGd2IhFxEipIRERKuvJ1oEZ7uPFBqNPJ7DRSlgVUg56TrctrJ8HZvebmERGnoIJERKSkK18Hhi+B7q+ZnUQEmt8L190OmWnWIajTU8xOJCKlnAoSEZHSwMUV3DzNTiFiHWq617vgXQHO7YP1k81OJCKlnAoSERERsY9vZbjjHevypnfg5O/m5hGRUk0FiYiIiNiv0Z3QtD8YmbDoIUhNMjuRiJRSKkhEREqavfNhxwwwDLOTiOTutjfBLwRqhlkLExGRAnAzO4CIiFwh9hT8/BSkxIGHLzS9x+xEIjnzCoJHtlj/FREpIF0hEREpKTIz4cdHrcVItTbQqI/ZiUTypmJERArJ6QqS+Ph4JkyYQNOmTfH19SUgIIA2bdowdepUUlNTC7Xv+fPn06tXL0JCQvDw8MDHx4frrruO0aNHs3v3bsc8ABEpu7Z/CUfXgZsX9PkEXHURW0REnJ/FMJznJuXjx4/TuXNnIiIiAPD29iYjI4OUFOsY6S1btmTNmjUEBdn3aU5KSgr9+vXjp59+sn3P19eX1NRUW5Hj4uLClClTeOqpp+zad1xcHAEBAcTGxuLv729XWxFxIpeOwCc3Q1oS9JgM7R4yO5GIiEiB2XOO6zQfv6Wnp9OrVy8iIiKoWrUqs2bNIjw8nMzMTObNm8fo0aPZtWsXQ4YMYcmSJXbt+/XXX7cVI4888ggvvPACoaGhZGZmsmvXLsaMGcOmTZsYO3YsHTt2pHXr1kXxEEWklIiMSSY60Y4rspkZ1P55ND5pSSRUvYnY6+4jtOjiiRSZyJhkYmJjqbTrAy41vZ+McuXtah/k40FooFcRpRORkspprpB8+eWX3H///QBs2bKF9u3bX7X+u+++Y9CgQQCsXr2abt265XvftWvXJiIigk6dOrFu3bpr1sfGxlKtWjUSEhJ47rnnmDRpUr73rSskIs4lMiaZ8KnrSU7LyHebh1wX85z7HOINL3qkvEGUezCrx3bSiZmUKlnP/Xd5i1tdt/NzRlseS3sCsOR7H17urnruiziJMnmFZObMmQB06dLlmmIEYODAgYwfP55jx44xa9YsuwqSM2fOAHDDDTdkuz4gIIAGDRqwc+dOEhISCpBeRJxFdGIqyWkZvDugBfUq++a5vWfUQer+sBAyIbbTq4wLuoUxc3cTnZiqkzIpVbKe+x63PouxYSB3uG6jeXgUsfXuzFf7w+cT9NwXKaOcoiBJSkpi8+bNAPTs2TPbbSwWCz169ODjjz9m5cqVdu2/Tp06HDhwgB07dmS7PjY2lr/++gvIuWgRkbKlXmVfmoQG5L6RYcCyFyEzFRr0oFqX0cScjiuegCJFpFKDtlgYB+vfoPqvL1G95S3gX9XsWCJSgjnFKFsHDhwgM9M6IVOTJk1y3C5r3dmzZ4mKisr3/h9++GEA1q1bx6OPPkpkZCQAhmGwc+dO7rjjDhISEmjfvj1Dhgwp6MMQkbLGYoE7P4S63aDX+9b/iziDjv+Bqi3gcgwsflyTfIpIrpyiIDl9+rRtOTQ0566gV667sk1eHn30UZ555hlcXFz46KOPqFatGn5+fpQrV47WrVtz+PBhnnvuOdasWYOrq2vBHoSIlE2VroP7FoJfFbOTiDiOqzv0/QRcPeHwKtg50+xEIlKCOUVBEh8fb1v29vbOcbsr113ZJi8uLi5MmjSJ6dOn4+trvSc8ISHBNuTv5cuXiY2NJTExMc99paSkEBcXd9WXiIiI06ncELq+aF1eMR6iI0yNIyIll1MUJEXt4sWLdOvWjeHDh9O+fXs2bdpETEwMZ86cYeHChVSqVImPP/6Ytm3b2m7nysmkSZMICAiwfVWvXr2YHoWIiEgxa/8o1LgJUhNg0SPwz+3VIiJXcoqCxM/Pz7aclJSU43ZXrruyTV6GDRvGunXr6NSpEytWrCAsLIyAgACCg4Pp27cvmzZtomLFihw9epTnnnsu1309//zzxMbG2r5OnjyZ7xwiIiKliosr9JkG7j5wfDP89qnZiUSkBHKKgiQkJMS2nNsViivXXdkmNwcOHGDp0qUAjB07Fks2nU4rV67M0KFDAVi4cCG5Te3i6emJv7//VV8iUkZkZsK3A2Hn15CZ/3lKREq18nWgx+vQegQ07mt2GhEpgZyiIGnYsCEuLtaHsm/fvhy3y1oXHBxM+fL5mz12//79tuW6devmuF39+vUB61WY8+fP52vfIlLG7JsPfy2DFS9AcozZaUSKT+vh0Otd8As2O4mIlEBOUZB4e3sTFhYGwPLly7PdxjAMVqxYAUD37t3zve+sQgfg+PHjOW537tw523JWx3cREZv0FPjlNety2JPgU8HcPCIiIiWEUxQkYO3nAbB27Vq2bdt2zfp58+Zx9OhRANvtVfnRqlUr2/LHH3+c7TaJiYnMmjULgGbNmuHj45Pv/YtIGfH7lxBzAvyqQrtHzE4jIiJSYjhVQdK0aVMMw+Duu+9mzZo1AGRmZjJv3jxGjx4NWGdy79at21VtJ0yYgMViwWKxEBERcdW6mjVr0qtXLwB++ukn7rvvPo4cOYJhGKSlpbFlyxY6d+5sK3bGjh1bxI9UREqdy7Gw4S3rcufnwSPn4clFRETKGjezAziKm5sbixcvpkuXLkRERBAeHo63tzeZmZlcvnwZgJYtWzJ79my79z19+nR69OjBjh07+Oabb/jmm2/w9vYmNTWV9PR023bjxo2z6+qLiJQRm9+D5Cio2ABaDDY7jYj50pLhwM/QrJ/ZSUSkBHCaKyQAtWrVYs+ePbz88ss0adIEi8WCu7s7rVu3ZsqUKWzdupWgoCC791uxYkW2bt3KF198wa233kqVKlVIS0vDzc2NOnXqMGTIEDZu3Mibb75ZBI9KREq1uNPw60fW5fAJ4Oo0nwOJFEx6CkxrCwvvhyNrzU4jIiWA070z+vn5MXHiRCZOnJjvNhMmTGDChAm5buPm5saoUaMYNWpUIROKSFlw+HwCACEbJlI+PZnEKq055hsGkbH5aidSWuXnORwc2pWKMV+RvOxFjvT5GSwueu6LlGFOV5CIiJgpyMcDL3dXxszdTV1LJCs95oIF7jvRi50fbs7XPrzcXQny8SjipCKOdeVzPy/lact6zzn4XdzHZx9NYXHmTYCe+yJllcXIbRY/KXJxcXEEBAQQGxurSRJFnERkTDLRial4Rh0iZPN4MjyDONH983y3D/LxIDTQqwgTihSNrOd+flTa+T5Vdkwh1a86f/f7BcPVU899ESdizzmuChKTqSARcXKGAamJ4Kn5iUSukpoI77eChLPQYzK0e8jsRCLiQPac4zpVp3YRkRLHYlExIpIdDx/o/Jx1ecObcDnO3DwiYhoVJCIiImKOlvdBhfqQdMk6PLaIlEkqSERERMQcrm4Q/op1+ddpEH/W3DwiYgoVJCIijhQbae03IiL5c/0dUO1GSE+GQ0vNTiMiJiiWYX/379/PjBkzOHXqFIGBgbRu3ZpevXpRuXLl4ji8iEjxSE2Ez7tC+dpw95cQEGp2IpGSz2KB296CjDSo3sbsNCJigiIvSJYsWcLdd99NaurVwwB6eHjw0EMPMXnyZDw9PYs6hohI0dv6sXXEIDcP8KlodhqR0iOkhdkJRMREDr9l6+LFi1f9/9lnn6VChQosXbqUhIQEzp07x5IlS+jfvz8ffPABPXv2JD093dExRESKV+IVnXK7vgxu+qBFREQkPxxekFSuXJng4GDCw8MZM2YMhw4d4r777uOWW27B29ubSpUq0bNnT2bNmsXKlSv59ddfefPNNx0dQ0SkeG14C1LiILgZNLnb7DQiIiKlhsMnRnz99df5888/2bdvH4cOHSItLQ2w3qLVpEkTWrZsScuWLWndujXNmjXjlVdeYeHChfz999+OjFFqaGJEEScQHQEf3ACZaXDfD1C3q9mJRERETFViZmpPT08nMDCQ2267jZCQEHbt2sUff/xBXFwcFosFFxcXgoKCiI6O5o033qBRo0Y0btyYGjVqFFWkEkcFiYgTWHA/7J0HdbrA0EVmpxEp3QwDDi2DP76Fe2ZYhwYWkVLHnnPcIv0rd3NzIywsjLNnzzJ37lwsFgsAhw8fZufOnezcuZOVK1dy8eJFxo0bZ1vv6+tLbGxsUUYTEXGM07utxQjALRNNjSLiFFIT4MdHIDnaWpS0Gmp2IhEpYkU+D8nEiRPZunUrvXv35vTp0wDUq1eP/v3788Ybb9C0aVP8/f05ffo0K1as4O2332bgwIFFHUtExDFWT7D+27QfVG1uahQRp+DpBx3HWZfXvg6pSebmEZEiV+TXQdu1a8fXX3/NiBEjqFWrFu3bt6dly5Z4e3uzadMmNm/ezJAhQwgODrZ1hhcRKRUiNsHRteDiDl1fNDuNiPNocz9s/QRiT8C2j6HDWLMTiUgRKtI+JFc6evQokydPZtGiRVy4cMH2/T59+jBjxowy239CfUhESrHMDPjjO4g/Cx3/Y3YaEefyx1z44QHw9Icn/wDv8mYnEhE7lJhO7Tk5deoUUVFRhISEULFi2Z48TAWJiIhINjIz4dOOcG4vtHsUerxudiIRsYM957hF3ockO9WqVaNZs2ZlvhgRERGRHLi4wC0TrMu/fw7Rx02NIyJFp1jG0tu/fz8zZszg1KlTBAYG0rp1a3r16kXlypWL4/AiIiJSGtXtBrU7wbH1sPZ/cNdnZicSkSJQ5AXJkiVLuPvuu0lNTb3q+x4eHjz00ENMnjwZT0/Poo4hIiIipY3FYh1O+7POsOd7aP8YVG1mdioRcTCH37J18eLFq/7/7LPPUqFCBZYuXUpCQgLnzp1jyZIl9O/fnw8++ICePXuSnp7u6BgiIkVj73y48JfZKUTKjpCW0ORuqHQ9pF82O42IFAGHd2p3cXGhcuXKNGnShCZNmjBt2jTGjh3L//73P1xdXa/ads2aNdxxxx289NJLvPDCC46MUWqoU7tIKRJ3Gt5vBRmp8MA6fVIrUlySY6zzk7i45rmpiJQMpo6y9frrr/Pnn3+yb98+Dh06RFpaGmC9RatJkya0bNmSli1b0rp1a5o1a8Yrr7zCwoUL+fvvvx0Zo9RQQSJSiix+AnbOhOptYeQK6+0kIiIico0SM+xveno6gYGB3HbbbYSEhLBr1y7++OMP4uLisFgsuLi4EBQURHR0NG+88QaNGjWicePG1KhRo6gilTgqSERKiQuH4KN2YGRai5Ea7cxOJCIiUmLZc45bpJ3a3dzcCAsL4+zZs8ydOxfLP58mHj58mJ07d7Jz505WrlzJxYsXGTdunG29r68vsbGxRRlNRMQ+a161FiPX3a5iRERExIGKfJStiRMn0rFjR3r37s2nn35KSEgI9erVo169evTv358zZ85w9OhRDh48yL59+/jzzz/Zv39/UccSEcm/E1vh4M9gcYHwV8xOIyIAiZfAp4LZKUTEAYq8IGnXrh1ff/01I0aMoFatWrRv356WLVvi7e3Npk2b2Lx5M0OGDCE4OJjg4GDCw8OLOpKISP4ZBqx62brc8j6odJ25eUTKuqQoWPw4nPgVntgN5XS7s0hpVywTIw4YMIA2bdowefJkFi1axMaNG23r+vTpwwcffFAcMURE7HdoKZzcBm5e0Pl5s9OIiKc/XDgISZdgy/vQ9UWzE4lIIRW4U/ulS5eYOHEix44dIzw8nCeffDLfbU+dOkVUVBQhISFUrFixIId3GurULlKCZaTDx+3h4l/QYSx0e9nsRCICsH8xfH8fuHvDE7vAL9jsRCLyL8XSqb137978+uuvWCwWli5dSqVKlRg0aFC+2larVo1q1aoV9NAiIsXjwkGIPwde5SEs/x+6iEgRa9gLqt0Ip36DdW9Ar3fNTiQihVCgmdo3b95MVFQUM2bMAMAwDDw9PR2ZS0TEfMFN4MndMOAbKBdgdhoRyWKxwC0Trcs7Z8HFsjmXmYizKNAVkrVr1/LYY48xdOhQ6tevT2Jiojqji4hz8i4PtcLMTiEi/1bzJmjQE/5aBqsnwMDZZicSkQIq0BWSAwcO0L59ewDat29/TTHy3//+t/DJRERERHITPsE6HPfBn+Hkb2anEZECKnBBUqdOnRzXv/KKxukXERGRIlb5emgx2Lq86mXrMN0iUuoUqCA5e/Ysfn5+Oa4v4MBdIiIiIvbp/Dy4lbPOS/L3SrPTiEgBFKgPSWxsLIcPH+a667KfIMxisRQqlIiIaRY/AT6VIOwJdWQXKQ0CQqHTM2BxhdodzU4jIgVQoIIkLS2NsLAw7rnnHrp160bnzp2pVKmSo7OJiBSvM3/AzpnW5Ya9IKSFqXFEJJ86jDU7gYgUQoEKkszMTKKjo/n888/5/PPPAWjUqBFdu3alU6dODg0oIlJsVv3T/61pPxUjIiIixaRAM7VXrFiRqKioq3f0r9u0wsLC6NOnD3feeSd169YtXEonppnaRUqII7/A133BxR0e3w5BtcxOJCIiUmrZc45boE7tlStXpk+fPuzcuZMvv/yS/v37ExgYiGEYtq/Nmzczbtw4GjRoQNOmTXnjjTe4cOFCgR6QiEiRysz8/6sjbe5XMSIiIlKMClSQtG3blhtuuIEWLVowYsQI5syZw4ULF9i0aRPjx4+nVatWALbiZP/+/YwfP55atWoxdepUhz4AEZFC27cAzu4BDz/oOM7sNCJSWHFn4M9FZqcQkXwqUB+S7t27s2bNmqu+5+Liwk033cRNN93Ea6+9xvnz51m+fDnLly9n5cqVREVFkZyczDPPPEPFihUZNmyYQx6AiEh2ImOSiU5MzXM7S0YK9VdOxAM41+whLsS4QUwsQT4ehAZ6FX1QEXGIrL95j7gI6s3vDkYmf7vWI82ver7a629exDwF6kOSmprKzTffzPr16/HyyvuP1zAMtm3bxrx58/jqq6+oUaMGu3fvLkhep6M+JCKOFxmTTPjU9SSnZeS57QjXZbzi/jXnjEA6p7xNMuUA8HJ3ZfXYTjpBESkFrv6bN5jt/jphrn+yMONmnk57JF/70N+8iGPZc45boCskHh4eTJ48mZdffpm33norz+0tFgvt2rWjXbt2PP3007Rr164ghxURyZfoxFSS0zJ4d0AL6lX2zXE7l9Q4Gsx5FFIgvcOzzGsYDsDh8wmMmbub6MRUnZyIlAL//psvd2EyLLqDvq6badZvPJcrNM61vf7mRcxVoIIEoEuXLhw+fJhdu3bRsmXLfLcLDQ3ls88+K+hhRUTyrV5lX5qE5jK5YWIaXN8TTu8ktMsDhLoW+CVRREoA2998aAc4fDeWfQuo98cUuG+h2dFEJBeFevcdPXp0gdr17NmzMIcVEXEMn4rQ92NISwYVIyLOpetLsH8xHFkDR9dBnc5mJxKRHBRolC0REafirls0RJxO+dpww0jr8qpXrMN7i0iJpIJEREREnFOnZ6zDeZ/ZDX/qti2RkkoFiYiIiDgnn4oQ9qR1+ZfXID3vocBFpPipIBGRsiXhPGSkmZ1CRIpL+0fAtwrEnYaT28xOIyLZUC9OESlbfnwUzh+EPh9B7Q5mpxGRoubhA/1mQGBNCAg1O42IZEMFiYiUHad3wd8rweIC/iFmpxGR4lLzJrMTiEgudMuWiJQdG6ZY/23aDyrUNTeLiIiIAA4oSE6cOEFkZGS+tz99+jQnTpwo7GFFROxzdh8c/BmwQIf/mJ1GRERE/lHoW7Zq1apF1apV812UhIWFcfLkSdLT0wt7aBGR/Nv4z9WRxn2gUgNTo4iIiMj/c8gtW4ZhFOn2IiKFcuEQ/LnIutxxnKlRRMRkqUmw9WM4uMTsJCLyj2Lv1H758mXc3NSXXkSK0capgAHX3wFVGpudRkTM9PvnsOplqHQ9NOgJLupOK2K2Yq0MTp8+zYULF6hcuXJxHlZEyqjD5xPwiI2g/t55WIDD1z/E5cjYfLUTkdInP3+7LiF3cZ3HFFwvHOTE5jnE1bldf/MiJrO7INmwYQPr1q276nsJCQm8+uqrObYxDIOYmBiWLl2KYRi0bdvW7qAiIvkV5OOBl7srY+bu5k23T2nglskvGS0YOScO2JSvfXi5uxLk41G0QUXEIa78m8+Pp9y68aTbDySumkSvVD8MXPQ3L2Iii2Fnh46JEycyceJELBYLYC02spbzYhgG5cqVY926ddx44432p3VCcXFxBAQEEBsbi7+/v9lxRJxGZEwy0Ymp+ERupvKu9zjb5jmSq7TKd/sgHw9CA72KMKGIOFLW33x+uF6OocGc9rimJXL8li+Ir9Vdf/MiDmbPOa7dV0hq1apFp06dbP9fv3497u7utG/fPsc2Li4u+Pv706RJE4YNG0a9evXsPayIiF1CA72sJxeht8GNt6FZR0Scm+1vPl8C4MbRsPldau77EG66B/L54aqIOJ7dV0j+zcXFheDgYE6fPu2oTGWKrpCIiIiYIOECvNsU0pNh8Hyof4vZiUScSpFeIfm3r776Ci8vXeIUERGRUsS3EtwwErZOg/VvQr1wXSURMUmhr5BI4egKiYiIiEniz8K7zSAjBYb+CHU6m51IxGnYc47rdINvx8fHM2HCBJo2bYqvry8BAQG0adOGqVOnkpqav85uuTl79iwvvfQSrVu3pnz58nh5eVGzZk169OjBG2+8QVpamgMehYgUSvRx0GctIpIXv2BoNdS6fHSdqVFEyjKHXSE5cuQI33//PXv27CEqKirXE3OLxcKaNWsccdirHD9+nM6dOxMREQGAt7c3GRkZpKSkANCyZUvWrFlDUFBQgfY/d+5cHnjgAeLi4gAoV64cHh4etv8DREdHExgYmO996gqJiIMlXrTeF161OQz8FrzLm51IREqyuNMQdwaqtTY7iYhTKdY+JGAdCvi///0vmZmZ5Ke+ye8wwfZIT0+nV69eREREULVqVWbNmkV4eDiZmZnMmzeP0aNHs2vXLoYMGcKSJUvs3v+8efMYNGgQmZmZPPDAAzz55JM0atQIsF6V2b17Nz/88APu7u6OfmgiYo9fp0FaEqQlg1fBPnwQkTLEP8T6JSKmKXRBMnv2bCZOnAhASEgIt956KyEhIbi5Fesk8MycOZO9e/cCsGDBAtswxC4uLgwYMIDMzEwGDRrE0qVLWbNmDd26dcv3vs+cOcODDz5IZmYmU6dO5emnn75qvZ+fHx06dKBDhw6Oe0AiYr+kKPjtc+typ2fUQVVERKQUKHTVMG3aNAB69+7N999/j4eHObOczpw5E4AuXbpkOyfKwIEDGT9+PMeOHWPWrFl2FSTvv/8+0dHRtGzZkqeeesphmUXEwbZ9CqnxUKUJXHeb2WlEREQkHwrdqX3fvn1YLBY++ugj04qRpKQkNm/eDEDPnj2z3cZisdCjRw8AVq5cadf+Z82aBcCQIUOK5HYzEXGAy3Gw7WPrcsf/6OqIiIhIKVHogsRiseDv709IiHn3Xx44cIDMzEwAmjRpkuN2WevOnj1LVFRUvvZ97Ngx26SPrVu3Zu/evQwaNIiqVavi6elJtWrVGDBggK0gEhGT/PYZXI6FitdBwzvNTiMipZFhwMGlsOZVs5OIlCmFLkiuv/56kpKSbCNZmeHKWeJDQ0Nz3O7KdfmdWf6vv/6yLW/evJkbbriB7777jtjYWMqVK0dkZCTff/89HTp04LXXXitAehEptJQEa2d2sF4dcXG6Ec1FpDhEHYU5g2DjVDj3p9lpRMqMQr9r33///aSlpTFv3jxH5CmQ+Ph427K3t3eO21257so2uYmOjrYtv/TSS4SEhLBq1SoSEhKIjY3lzz//pHPnzhiGwcsvv8zChQtz3V9KSgpxcXFXfYlIIW2fDslRUL4ONL7L7DQiUlpVqAuN/rnCumGKuVlEypBCFySjR4+md+/ePPHEE2zYsMERmUqUrFvBAAzDYMGCBYSHh+PyzyewjRo14qeffiI4OBjANuJYTiZNmkRAQIDtq3r16kUXXqQsSE2CLe9blzuMBdfiHeFPRJxMx3HWf//8AS78lfu2IuIQhX7nfvXVV2nevDkbN26kS5cuhIWF0bZtW/z8/HJt9/LLLxf20DZXHispKSnH7a5cl1e+7Lbr1q0brVq1umYbX19fHn30UV566SX27NnDuXPnqFKlSrb7e/75568aNjguLk5FiUhhuLpD15dg33xoNsDsNCJS2gU3getuh0NLrLdu3fWp2YlEnF6hC5IJEybYRp4yDINNmzblq4O3IwuSKzvUR0ZG0qxZs2y3i4yMzLZNbq7sd9KwYcMct8uaJBGsM8bnVJB4enri6emZr2OLSD64ukPrYdYvERFH6DTOWpDsnQedn7XeDioiRabQBUnHjh1NHwq3YcOGuLi4kJmZyb59+3Ic+nffvn0ABAcHU758+Xztu1GjRri6upKRkZHrdlfOUG/2z0NEREQKIaQl1LsFDq+CjW/DnR+anUjEqRW6IFm3bp0DYhSOt7c3YWFhbNy4keXLlzNu3LhrtjEMgxUrVgDQvXv3fO+7XLlydOzYkbVr13LgwIEct9u/fz9gLUZq1apl3wMQERGRkqXTM9aC5I/vrMuBNcxOJOK0nGZszGHDrLdrrF27lm3btl2zft68eRw9ehSAoUOH2rXvESNGALBmzRp27tx5zfqEhAQ++ugjANq2bUulSpXs2r+IiIiUMNVvhNqdIDMdNr1rdhoRp+ZUBUnTpk0xDIO7776bNWvWANZRsubNm8fo0aMB60zu3bp1u6ptVj8Yi8VCRETENfsePHgwN95441X7zhp968CBA/Tu3ZuzZ8/i4uLC//73v6J9oCICGekQdczsFCLi7Do9Y/331G/W1x0RKRIOGx/z1KlTvP3226xYsYLjx49z+fJl0tP//483Ojqajz/+GIvFwrhx43Bzc+zQnG5ubixevJguXboQERFBeHg43t7eZGZmcvnyZQBatmzJ7Nmz7d63i4sLP/74I926dWP//v22fbu7uxMbGwuAu7s706ZNo2vXrg59XCKSjX3zYdEj0PYh6PG62WlExFnVuhnu+8F6pcTF1ew0Ik7LIVXBqlWr6N+/P3FxcbbO3f/u2B0UFMSiRYvYsWMHjRs3pnfv3o449FVq1arFnj17mDJlCgsXLuTYsWO4u7vTuHFj7r33Xh5//HE8PDwKtO/g4GB27tzJhx9+yNy5c/nrr79ITk6mVq1adO3alaeeeoomTZo4+BGJyDUyM6wTlhkZ4FPB7DQi4uzq6oNGkaJmMa4cHqoATp48SZMmTYiPj6d3794MHTqU0aNHExMTc83IVJ988gmPPPIIo0eP5tNPNa43WOchCQgIIDY2Fn9/f7PjiJR8+xbA/JFQLhDG7IVy+rsREREpaew5xy10H5KpU6cSHx9P//79WbRoEXfddVeOVyFuvfVWAH7//ffCHlZEyqLMTOvVEYB2j6gYERERcQKFLkhWrFiBxWLhtddey3Pb2rVr4+npybFj6owqIgVwaAmc3w+e/tD2QbPTiIiIiAMUuiA5ceIEXl5e1K9fP1/b+/r6kpiYWNjDikhZYxiw/k3r8o0PgFegqXFEpAw69yf88BAkR5udRMSpFLogyZohPT/S09OJi4tTXwkRsd9fK+DsHnD3sd6uJSJSnAwDFj5onShxm/rBijhSoQuSmjVrkpKSwokTJ/LcdsOGDaSlpeX7aoqICGA9Edjwz9WRNqM0upaIFD+LBTo8bV3e+hFcjjM3j4gTKXRBEh4eDlhH0MpNWloa48ePx2Kx0LNnz8IeVkTKkiO/QOQOcPOCmx43O42IlFWN7oSKDeByLPz+udlpRJxGoQuSp556Cg8PD6ZOncqXX36Z7TY7d+4kPDycbdu24efnxyOP6HYLEbFD1RbQYSzc9Bj4VjY7jYiUVS6u0OE/1uVfp0Gq+sSKOEKh5yEBmD17NsOGDcMwDCpWrEhsbCxpaWm0bduW48ePc/bsWQzDwM3Njfnz5xfJpIilleYhERERKUUy0uHDGyD6GHT/r67aiuSgWOchARg8eDDLli2jbt26XLhwgdTUVAzDYOvWrZw5cwbDMKhXrx7Lly9XMSIiIiKll6ub9YotwOb3IS3Z3DwiTsAhV0iyGIbBhg0b2Lx5M6dPnyYjI4Pg4GDCwsLo0qULrq6ujjqU09AVEhERkVImIw3ebwWxJ6Dnm5oXSSQb9pzjOrQgEfupIBERESmFfv8SljwNfiHw5G5w8zQ7kUiJUuy3bImIOFzsKetINiIiJVHLIdZiJC0Jzh8wO41IqeZmdgARkWwtHQfHN8OdH0HDO8xOIyJyNTdPGDgbKtSDcrrDQaQwHFqQZGRk8PfffxMdHU1aWlqu23bs2NGRhxYRZ3J2LxxaClig0nVmpxERyV5oK7MTiDgFhxQkp06d4oUXXmDhwoUkJ+c92oTFYiE9Pd0RhxYRZ7ThLeu/Te6CivXNzSIiIiJFqtAFydGjRwkLC+P8+fPkt3+8+tGLSI7OH4T9i63LWROQiYiIiNMqdKf2F154gXPnzlGxYkW+/PJLTp06RVpaGpmZmbl+iYhka+MUwICGvaBKI7PTiIiISBEr9BWS1atXY7FYmDNnDl26dHFEJhEpqy4ehn0LrMsdx5mbRUTEHgkX4NcPoNqNGohDxE6FLkguX76Ml5eXihERKbyNU8HIhAY9oGpzs9OIiOTf9umw+T2o3Biuuw1cNLOCSH4V+q+ldu3a6hMiIoUXdQz2zLUud3zG3CwiIvZq+wB4+MH5P/8ZJVBE8qvQBcmAAQO4fPkya9ascUQeESmrNr0DRgbU7QbVWpudRkTEPl5B1qIEYMOboA9rRfKt0AXJ2LFjad68OQ888ADHjh1zRCYRKYvaPgRN7oZOujoiIqVUu0fB3QfO/AF/rzI7jUipYTEccL9VVFQUo0ePZsWKFdxzzz20adMGPz+/XNsMHTq0sId1CnFxcQQEBBAbG4u/v2Z6FRERKdVWvghbPoBqbWDUKrBYzE4kYgp7znEdUpDs3LmTJ554gi1btmDJxx+eJkb8fypIxFlFxiQTnZha4PZBPh6EBno5MJGISNHJes1zSzpPgzlhuGSkcOy22SSGdshXe73mibOx5xy30KNs7dmzh86dO5OYmAiAh4cHFStWxM3NIZPAi0gpFBmTTPjU9SSnZRR4H17urqwe20lv0CJS4v37Ne8Vt86McFvB+Z9fY0Dqy/nah17zpCwrdNXwyiuvkJCQQJ06dfj888/p1KkTLhrqTqRMi05MJTktg3cHtKBeZV+72x8+n8CYubuJTkzVm7OIlHj/fs1zS6xH5py1tOUgv9zjRlLVdrm212uelHWFLkiybtOaO3curVtrZBwR+X/1KvvSJDQg5w3O7oPKDcHFtfhCiYgUkf9/zQuAVkNg5yzqpB2G0FvNjiZSohW6IElKSsLHx0fFiIjYJykKpt8KvlVg+M/gH2J2IhERx+n0LISNgaCaZicRKfEKfW9VvXr1SEtLIyOj4PeKi0gZtPVjSE0AD2/wq2p2GhERx/ILVjEikk+FLkiGDh1KSkoKixcvdkQeESkLLsfCtk+tyx3HaVhMERGRMqzQBckTTzxB165defDBB/n1118dkUlEnN22zyAlFio1hOt7mZ1GRERETFToPiT/+9//aN++PTt37uTmm2/m5ptv5sYbb8xzYsSXX87fMHgi4mRS4mHrNOtyx/+ARuUTEREp0wpdkEyYMME2GaJhGGzcuJFNmzbl2U4FiUgZ9fuXkBwNFepB475mpxERKXrpKbB7Nlw8DD1eNzuNSIlT6IKkY8eO+ZqdXUSE1ETY8oF1ucNYDfcrImXDpSPw81OABVoPg0rXmZ1IpEQpdEGybt06B8QQkTJhxwxIugiBNaFpP7PTiIgUjyqN4Po74ODPsGEK3P252YlEShTdvC0ixSPtMmx+37rcYSy4upubR0SkOHUcZ/1333zrFRMRsVFBIiLFw80Ter9v/ZSw+b1mpxERKV4hLaD+rWBkwsa3zU4jUqI4rCA5deoUTz/9NI0bN8bX1xc3t6vvBouOjub1119n0qRJpKenO+qwIlJaWCzQ4FYYOBvcPMxOIyJS/Do9Y/13zxyIPm5uFpESpNB9SABWrVpF//79iYuLwzAMgGs6ugcFBbFo0SJ27NhB48aN6d27tyMOLSIiIlI6VLsB6nSBo2th0zvQ612zE4mUCIUuSE6ePMk999xDfHw8vXv3ZujQoYwePZqYmJhrth05ciTbt29nyZIlKkhEyoDD5xOKtZ2IiJny89rl3egR6hxdS+au2fzV4CHSfavqNU/KvEIXJFOnTiU+Pp7+/fszZ84cAB599NFst7311lsB+P333wt7WBEpwYJ8PPByd2XM3N0F3oeXuytBPrq1S0RKPntf8+Z4NKQdB/j165eZmD4M0GuelG0WI+seqwJq2LAhf/31FwcPHqR+/foAVK1alfPnz5ORkXHN9l5eXpQrV47o6OjCHNZpxMXFERAQQGxsLP7+/mbHEXGYyJhkouOT8bq0j+RKze1uH+TjQWigVxEkExFxvMiYZKITU/O1rU/kJmovHUR8tc4c7zETLBa95onTsecct9BXSE6cOIGXl5etGMmLr68vsbGxhT2siJRwoYFehJ5cAotGWWdk7zfD7EgiIkUmNNAr/wVFyG1QbR1+IS1pUrSxREqFQo+y5eLiQmZmZr62TU9PJy4uTlcCRMqCzEzY8JZ1uXJjc7OIiJQkFguEtDQ7hUiJUeiCpGbNmqSkpHDixIk8t92wYQNpaWn5vpoiIqXYgcVw4SB4BkDbB8xOIyIiIiVUoQuS8PBwAD755JNct0tLS2P8+PFYLBZ69uxZ2MOKSElmGLBhinW57YNQLsDcPCIiIlJiFbogeeqpp/Dw8GDq1Kl8+eWX2W6zc+dOwsPD2bZtG35+fjzyyCOFPayIlGSHlsG5veDhC+0eNjuNiIiIlGAOuWXriy++ICMjgwceeIAqVarYRtC66aabCA0NpU2bNmzcuBE3NzdmzZpFxYoVCx1cREoow4ANb1qXbxwN3uXNzSMiUpIZBhxeA9/cA8kxZqcRMUWhCxKAwYMHs2zZMurWrcuFCxdITU3FMAy2bt3KmTNnMAyDevXqsXz5ck2IKOLsDq+B07vA3RvaP2Z2GhGRks0wYPnzcHgV/Pa52WlETFHoYX+z3HLLLRw6dIgNGzawefNmTp8+TUZGBsHBwYSFhdGlSxdcXV0ddTgRKYmuvDpyw0jw0dVQEZFcubhAx//AwtGwdRq0ewg8/cxOJVKsCj0xohSOJkYUp3JsA8zsBa6eMGYP+AWbnUhEpOTLSIdpbSDqKIRPhJvHmJ1IpNDsOcd1yC1bIiIAVGsDPd+CjuNUjIiI5JerG3QYa13+9UNITTI3j0gxU0EiIo7j7mWdc6TTOLOTiIiULs0GQGANSLwAO2aYnUakWNnVh2TkyJEOOajFYslxiGARERGRMsfVHW5+Gn4eA5vfs/bDcy9ndiqRYmFXHxIXFxcsFgsF7XaS1dZisZCRkVGgfTgb9SERERERANJT4P2WEBcJt02xDp0uUkrZc45r1xWSoUOHYrFYChVORERERLLh5glhY2DZONj0LrQaBm4eZqcSKXJ2FSQzZswoohgiUmpFHQMXNwisbnYSEZHSr9V9sHGKtaN7zHGoWN/sRCJFzmHzkIhIGbXqJTi0HO54x/pGKiIiBefuBcN+gvJ1rUWJSBmgZ7qIFNy5/XDgJ8BiHfJXREQKr9J1ZicQKVYa9ldECm7jFOu/jXpD5evNzSIiIiKlksMKklOnTvH000/TuHFjfH19cXO7+uJLdHQ0r7/+OpMmTSI9Pd1RhxURs1z4C/YttC531LwjIiIiUjAOuWVr1apV9O/fn7i4ONuQwP8ejSsoKIhFixaxY8cOGjduTO/evR1xaBExy8apgAHX3QbBTc1OIyIiIqVUoa+QnDx5knvuuYfY2Fh69erF/PnzCQoKynbbkSNHYhgGS5YsKexhRcRMUUdh7zzrsq6OiIgUnQt/wcIH/+mvJ+KcCl2QTJ06lfj4ePr378+iRYu466678PDIfszsW2+9FYDff/+9sIcVETNtfBuMDKgXDqGtzE4jIuK89n4Pe+bA+slQwImpRUq6QhckK1aswGKx8Nprr+W5be3atfH09OTYsWOFPayImCXmBPzxnXW54zPmZhERcXbtHgEPXzi7F/5abnYakSJR6ILkxIkTeHl5Ub9+/ibu8fX1JTExsbCHzVF8fDwTJkygadOm+Pr6EhAQQJs2bZg6dSqpqakOPdZDDz2ExWLBYrFQq1Yth+5bpMTa/D5kpkPtjlCjrdlpREScm3d5aDPKurz+TV0lEadU6E7tLi4uZGRk5Gvb9PR04uLi8Pf3L+xhs3X8+HE6d+5MREQEAN7e3qSkpLB9+3a2b9/O7NmzWbNmTY59XOyxdu1aPvvss0LvR6TU6fgfcPO0dmYXEZGi1/5x2PYZnN4JR9ZYb5cVcSKFvkJSs2ZNUlJSOHHiRJ7bbtiwgbS0tHxfTbFHeno6vXr1IiIigqpVq7Jq1SoSExNJSkpizpw5+Pn5sWvXLoYMGVLoYyUlJTF69Gjc3Ny44YYbHJBepBTxC4Zb/we1wsxOIiJSNvhWghtGWJfXv6WrJOJ0Cl2QhIdbq/RPPvkk1+3S0tIYP348FouFnj17Fvaw15g5cyZ79+4FYMGCBbZcLi4uDBgwgE8//RSApUuXsmbNmkIda/z48Rw5coRnnnmGxo0bFy64iIiISF5uegJcPeHkVojYaHYaEYcqdEHy1FNP4eHhwdSpU/nyyy+z3Wbnzp2Eh4ezbds2/Pz8eOSRRwp72GvMnDkTgC5dutC+fftr1g8cOJDatWsDMGvWrAIfZ+vWrbz//vs0aNCAF198scD7EREREck3/6rQ6j7r8vo3zc0i4mAOuWXriy++ICMjgwceeIAqVaoQHR0NwE033URoaCht2rRh48aNuLm5MWvWLCpWrFjo4FdKSkpi8+bNADlefbFYLPTo0QOAlStXFug4KSkptrlUPvvsM8qVK1ewwCIiIiL2ChsDLu7WKyQntpqdRsRhCl2QAAwePJhly5ZRt25dLly4QGpqKoZhsHXrVs6cOYNhGNSrV4/ly5cXyQztBw4cIDMzE4AmTZrkuF3WurNnzxIVFWX3cV599VUOHDjAqFGj6NSpU8HCipRGx3+F1KIbHU9ERPIhsDq0uBc8/CA6wuw0Ig5T6FG2stxyyy0cOnSIDRs2sHnzZk6fPk1GRgbBwcGEhYXRpUsXXF1dHXW4q5w+fdq2HBoamuN2V647ffo05cuXz/cxdu3axZtvvkmVKlV46623ChZUpDRKjobZ/cDNA0atggp1zU4kIlJ2dX0ZbnkVvAo/YqhISeGwggSst0V16tSp2K8exMfH25a9vb1z3O7KdVe2yUt6ejojR44kPT2d999/n8DAwALlBOttXykpKbb/x8XFFXhfIsVi26eQGg+BjSCottlpRETKNt9KZicQcTiH3LLl7N544w12797NHXfcQf/+/Qu1r0mTJhEQEGD7ql69uoNSihSBy3Gw9SPrcsf/gIteMkRERMSxnOLsws/Pz7aclJSU43ZXrruyTW7279/Pa6+9hq+vLx999FHBQ/7j+eefJzY21vZ18uTJQu9TpMj8/jlcjoUK9aFRH7PTiIiIiBNy6C1bZgkJCbEtR0ZG0qxZs2y3i4yMzLZNbh599FFSU1OZOHEiQUFBJCQkXLU+PT0dAMMwbOs8PT1xd3fPdn+enp54enrm69gipkpNhF+nWZc7/gdciqYPmIiIiJRtTnGFpGHDhrj8cyvJvn37ctwua11wcHC+O7QfO3YMsF7Z8PPzu+Zr9uzZAJw4ccL2vWnTphXm4YiUDNunQ9Ila7+RJveYnUZERP4tORrWvg4/P2V2EpFCcYqCxNvbm7CwMACWL1+e7TaGYbBixQoAunfvXmzZREqltGTY/L51ucPT4OoUF1NFRJxLzElYPxm2fwUX/zY7jUiBOUVBAjBs2DAA1q5dy7Zt265ZP2/ePI4ePQrA0KFD873fiIgIDMPI8SvruDVr1rR9b8yYMYV/QCJm2jkLEs9DQHVoNtDsNCIikp2qzaBBT8CAjVPNTiNSYE5VkDRt2hTDMLj77rtZs2YNAJmZmcybN4/Ro0cD1pncu3XrdlXbCRMmYLFYsFgsREREFHd0kZIlIx02v2ddvnmMdf4REREpmTqNs/6753uIOmZuFpECcpqCxM3NjcWLF1OrVi0iIyMJDw/Hx8cHHx8f+vfvT1xcHC1btrT1+RCRHLi6wcBvoeUQaDHE7DQiIpKb0NZQtxsYGbDpbbPTiBSI0xQkALVq1WLPnj28/PLLNGnSBIvFgru7O61bt2bKlCls3bqVoCDNbCqSp5AWcOc0cC9ndhIREclLp2es/+7+ztqvRKSUsRiGYdjT4MSJEw45cI0aNRyyn9IuLi6OgIAAYmNj8ff3NzuOiIiIlEYz7oCIjdDmfrhd/UnEfPac49o9dE6tWrWwWCwFDgdgsVhs83eIiIiISCF1esZakOz8Gjr8B/yrmp1IJN8KdMtWbqNO5fdLRERERBykVgeo3g4yUmDL+2anEbFLgSYXsFgs1KpVi+HDh9OxY0dHZxKR4paZAYdXQ71bwMWpupaJiJQNFot1xK3Z/SAl3uw0Inaxuw/J7bffzsqVK8nIyMBisVCnTh1GjBjBsGHDCA0NLaqcTkt9SKRE2LcQ5o+AGjfBiKXWNzYRESldDAOiI6B8bbOTiNh1jmt3QQJw5swZZs6cyYwZM/jrr7+wWCy4uLgQHh7OyJEjufPOO/Hw0NwF+aGCRIpKZEwy0YmpeW9oZFJvYQ/KRR3kfKsxnG/9NABBPh6EBnoVcUoREXGEfL/m50Cv+eJoRV6QXGnz5s1Mnz6defPmkZCQgMViISgoiEGDBjF8+HBatWpVmN07PRUkUhQiY5IJn7qe5LSMPLft7vI7n3m8Q7zhRVjKe8ThC4CXuyurx3bSG5SISAlnz2t+TvSaL45WpKNs/VtYWBhhYWF88MEHzJ07l6+++opNmzbx4YcfMm3aNJo0acKoUaMYPHgwFSpUKOzhRCQfohNTSU7L4N0BLahX2TfnDQ2Duoteh4twueVIvm3TA4DD5xMYM3c30YmpenMSESnh8v2anwO95ovZCl2QZPH29mbEiBGMGDGCI0eOMH36dL7++mv27t3LU089xalTp3jzzTcddTgRyYd6lX1pEhqQ8wZ/rYSL+8Ddm0q3PE0ln1y2FRGREi3P13yREqpIhtOpW7cuI0eOZNCgQepLIlJSGQZs+OdDghtGgk9Fc/OIiIjjZKTDrtnweTe4HGd2GpFcOewKCUBSUhLff/8906dPZ/PmzYB1zpKmTZvSrVs3Rx5KRArr6Do49Tu4lYObnjA7jYiIOJLFApvegUt/w+9fQIenzU4kkiOHFCSbNm1i+vTpzJ8/n8TERAzDICgoiHvvvZcRI0bQunVrRxxGRBxpw1vWf1sNA78q5mYRERHHcnGFDmNh0UPw64fQ9kHw8DE7lUi2ClyQnD59mhkzZjBjxgyOHDmCYRi4uLhwyy23MGLECPr27avbtURKqpO/wfHN4OoBYU+anUZERIpC036w/g3r3CTbv4KbHjM7kUi27C5Ivv/+e7766itWr15NZmYmhmFQt25dhg8fzrBhw6hWrVpR5BQRRwq9Afp/DdHHIEATmoqIOCVXN7j5afjpCdj8LrQeDp72j8IlUtTsLkgGDhyIxWLB29ubfv36MWLECDp06FAU2USkqLi4QKPeZqcQEZGi1vxea1+S6GPw6zTo/KzZiUSuUeBbtry9vVm3bh3r1q2zu63FYuHIkSMFPbSIiIiI5IebB3R7CeaPhC3vW0dV9K1kdiqRqxSoIDEMgwsXLnDhwoUCHdRisRSonYiIiIjYqVFfCPkATu+yDvd+21tmJxK5it0FySuvvFIUOURERESkKLi4QPhEmNUbtk+Htg9BhbpmpxKxUUEiUlb8uQgCa0BoK7OTiIhIcavTCeqFw+VYSL9sdhqRqzh0YkQRKaGSo62jrFyOhWE/Qe2OZicSEZHids908PS3TpooUoKoIBEpCza+bS1GKjeCmmFmpxERETOUCzA7gUi2VJCIOLHD5xNwTzhN/W2f4gJEtBxHwpmEfLUTEZHSpaCv3XrNF7PZXZC4uroW+qAWi4X09PRC70dEshfk44GXuytj5u7mLbdPuM4tha2ZDRn4owewKV/78HJ3JcjHo2iDiohIoV35ml9Qes0XM1kMwzDsaeDi4lL4g1osZGRkFHo/ziAuLo6AgABiY2Px9/c3O444kciYZJJO7qHegluxYHDkzsUkV26R7/ZBPh6EBnoVXUAREXGYyJhkohNT7WtkGLgmXyTDu5Je88Xh7DnH1ShbIk4qNNALlkwFDGjUh7otO5kdSUREikhooJd9BUVsJPzwIERHwGPbwb1ckWUTyYsKEhFnFbEJ/l4BLm7Q7WWz04iISEniXR4uHYH40/D753DT42YnkjKs8PdfiUjJYxiw6p8ipPVwTYAlIiJXc/eCLi9YlzdMgeQYU+NI2aaCRMQZxZyA2FPg7gOdnjU7jYiIlEQtBkGlhnA5Bja9Y3YaKcNUkIg4o6Ca8MQuGDwPfCubnUZEREoiF1cI/+dW/G2fWD/IEjGB3QWJi4sLoaGh2a47cOAAe/bsKXQoEXEADx+opUkQRUQkFw16QI2bIP0yrJtkdhopowp0hSSnkYK7du1Kq1atChVIRERERIqJxQK3vGpd3v0tnD9gbh4pkxx+y5ad05qIiIiIiJmqt4GGvcDIhNUTzE4jZZD6kIg4C30YICIiBdXtFbC4wl/L4cQ2s9NIGWP3PCQiUkItfx4y06yjaqkju4iI2KNifegwFvxDILS12WmkjFFBIuIMLh2xTmyVmQ6N+qggERER+3Udb3YCKaN0y5aIM1jzqrUYqd8dancwO42IiIhIvqkgESntTu2A/YsAi/UeYBEREZFSpEC3bJ07dw5XV9cc1+e2DsBisZCenl6QQ4vIlQwDVr1sXW5+LwQ3MTePiIiIiJ0KPA9JYb9ExAH+XgXHN4GrJ3R5wew0IiLiTC4dgf2LzU4hZYDdV0heeUW3hIiUCJkZsPqfv8e2D0BgdXPziIiI8zi9G77oBm7loEZ78K1kdiJxYipIREqrPXPh/H4oFwA3P212GhERcSbBzSC4KZzeBRvehNveMjuRODF1ahcpjdIuwy//sy53GAve5c3NIyIizsXFBcInWpe3T4eoo+bmEafm0ILkxIkT7Nq1i61bt3Lo0CHS0tIcuXsRyZKRCg17QVBtuPEBs9OIiIgzqtMJ6oVbh5Vf85rZacSJWYxC9jD/5Zdf+PDDD1m/fj0xMTFXrXNzc6N9+/YMHz6c++67L8/Rt8qiuLg4AgICiI2Nxd/f3+w4Utqkp4Cbp9kpRETEWZ3dC590AAwY/YtmcZd8s+cct8BXSKKjo+nduze33HILP/74I9HR0deMpJWWlsbGjRsZNWoUzZs3Z9++fdfs59ixYwWNICIqRkREpCgFN4VmA6zLq16xDjcv4mAFukISExNDWFgYBw8exDAM/Pz86N69Oy1atKBixYoAXLx4kV27drFq1Sri4+MBCAwMZO3atTRv3hyAAwcOcMstt3Dq1CkHPqTSRVdIREREpESLOQEftLbeLjx4AdQPNzuRlAL2nOMWaGLEYcOGceDAATw8PHjxxRd56qmn8PHxyXbbxMRE3n77bf73v/8RExNDv3792LNnDwcOHODWW2/l0qVLBYkgIiIiIsUhsIa1v+KvH1qHm6/bBVx0G744jt23bG3cuJGffvoJd3d3Fi1axIsvvphjMQLg4+PDSy+9xA8//ICbmxtHjhzhoYceolu3bly8eJHrr7++UA9ApMyIOw0p8WanEBGRsqjDWPAMsF4tuXDI7DTiZOwuSGbPng3AY489Ro8ePfLdrmfPnjz22GMYhsHXX39NTEwM7du3Z+PGjfZGECmbfhoD77eEw6vNTiIiImWNd3kYMAue2A1VGpmdRpyM3QXJhg0bsFgsPPjgg3Yf7OGHH7Yt9+7dmzVr1lC+vOZPEMlTxCb4ewUkR1uH+hURESludTqDTwWzU4gTsrsgOX36NJ6enjRo0MDug9WvX59y5coB8MMPP9iWRSQXhgGrXrYutx4OFeqaGkdERETEkezu1J6amoqnZ8GHGs1qa7FYCrwPkTJl/48QuQPcfaDTs2anEREREXEou6+QVKpUibi4OGJjY+0+WGxsLLGxsbahgUUkDxlpsOZV6/JNj4NvZXPziIiIiDiY3QVJs2bNAOstV/ZauHAhgG0eEhHJw44ZEHUEfCrBTY+ZnUZERMQqJR7WToJlunIvhWd3QXLHHXdgGAYvv/wyUVFR+W536dIlXnnlFSwWC7fffru9hxUpe1ISYP1k63KnZ8HTz9w8IiIiWc4fhPVvwG+fwfkDZqeRUs7ugmT48OGEhoYSGRlJt27dOHz4cJ5t/v77b7p168apU6eoWrUqI0aMKFBYkTLl1w8h8QKUr2PtzC4iIlJSVG8DDXuBkQmrJ5idRko5uwsST09Ppk+fjqurK3v27KFZs2bcf//9LF26lDNnzpCamkpqaipnzpxhyZIljBw5kubNm7Nnzx7c3Nz48ssvC9UpXqRMSImHLR9al7u+BK7u5uYRERH5t26vgMUV/loOEZvNTiOlmMUwDKMgDefOncuoUaNISkrKc8QswzDw8vLiiy++4N577y1QUGcVFxdHQEAAsbGx+Pv7mx1HSpIzf8Dub6HHG6BR6UREpCT6+SnYPh2qtYFRq/R+JTb2nOPafYUky4ABA9i+fTt9+/bFYrFgGEa2XxaLhbvuuovt27erGBGxR9Xm0HOyXtxFRKTk6vQsuHvDqd/hwE9mp5FSqsBXSK509uxZ1q1bx59//smlS5cAqFChAo0aNaJLly4EBwcXOqiz0hUSERERKdV++R9seBMq1INHtuo2YwHsO8d1SEEiBaeCREREREq1y3HwfktIugi3vw1tRpmdSEqAYrllS0RERESEcv7Q6Rnr8ro3rMPWi9hBBYlISXFsI+xbCLpoKSIipU3rEVC+LtTpDOmXzU4jpYyb2QFEnFlkTDLRial5b5iZQb2f/kO5qIOcOXWMS03vByDIx4PQQK8iTikiIlI4kQkZxPReguHuDTFATKxd7fV+V7apIBEpIpExyYRPXU9yWkae297tsoGpHgeJNbzpsa4ases2AeDl7srqsZ30Ii0iIiWWPe93OdH7XdmmgkSkiEQnppKclsG7A1pQr7JvjttZ0i9T//v/QCIkt32S2c17AHD4fAJj5u4mOjFVL9AiIlJi5ff9Lid6vxOnK0ji4+OZOnUqCxYs4NixY7i6utKgQQMGDhzI448/joeHh937jIyM5Mcff2Tt2rXs2rWLyMhIAIKDg2nXrh2jR4+ma9eujn4o4iTqVfalSWhAzhtsngmJp8E/lOBbniTYXS/GIiJS+uT5fieSA6cqSI4fP07nzp2JiIgAwNvbm5SUFLZv38727duZPXs2a9asISgoKN/7PHnyJDVr1uTK0ZG9vb0xDIOIiAgiIiKYM2cOI0eO5LPPPsPV1dXRD0ucWXI0bJxqXe7yAqgYERERZ5GeCslR4Kf56CR3TjPKVnp6Or169SIiIoKqVauyatUqEhMTSUpKYs6cOfj5+bFr1y6GDBli134zMjIwDINu3boxc+ZMIiMjSUxMJCEhgT///JM777wTgOnTpzNhwoQieGTi1Da9A5djoHIjaH6v2WlEREQc4+TvMO1GWDhao0dKnpymIJk5cyZ79+4FYMGCBYSHhwPg4uLCgAED+PTTTwFYunQpa9asyfd+g4KC2LFjB6tXr2bo0KGEhITY9tuoUSN++OEHevSw3vP/7rvvcvmyhrqTfIo9BVs/sS6HTwAXXV0TEREn4VsZ4iLh2AY4nP/zLimbnKogAejSpQvt27e/Zv3AgQOpXbs2ALNmzcr3fgMCAmjVqlWO6y0WCyNHjgQgISGBAwcO2BNbyrK1r0NGCtQMg/rdzU4jIiLiOEE14cYHrMurX4HMTHPzSInmFAVJUlISmzdvBqBnz57ZbmOxWGxXMlauXOnQ45crV862nJFR8CHvpAxJT4Xz+63Lt7wKFou5eURERBytw1jwDIBz++CP78xOIyWYUxQkBw4cIPOfyrtJkyY5bpe17uzZs0RFRTns+OvWrQPAw8ODBg0aOGy/4sTcPOD+X2DEMqh2g9lpREREHM+7PHR42rq84gWIO2NuHimxnKIgOX36tG05NDQ0x+2uXHdlm8I4duwYn3xi7QcwYMAA/P39HbJfKQNcXKDmTWanEBERKTrtH4WqLawDuCx+XB3cJVtOUZDEx8fblr29vXPc7sp1V7YpqOTkZPr160dSUhIVK1bkjTfeyLNNSkoKcXFxV32JiIiIOCVXd+j7Kbh6wuFVsHOm2YmkBHKKgsQM6enpDBo0iB07duDu7s7s2bNtI3DlZtKkSQQEBNi+qlevXgxpRURERExS+Xro9pJ1ecV4iI4wNY6UPE5RkPj5+dmWk5KSctzuynVXtrFXRkYGgwcPZtGiRbi5ufHtt9/SvXv+Rkl6/vnniY2NtX2dPHmywDmklDn5my5Vi4hI2dTuEahxE6QmwKFlZqeREsYpZmq/8spEZGQkzZo1y3a7yMjIbNvYIyMjgyFDhvD999/j6urKN998wz333JPv9p6ennh6ehbo2FKKRWyCGXdAvW4w8Dtrp3YREZGywsUV+nwElw5D/VvMTiMljFNcIWnYsCEuLtaHsm/fvhy3y1oXHBxM+fLl7T5O1pWROXPm2IqRAQMGFCy0lBkuqQmw6GHAAP9QFSMiIlI2la+tYkSy5RRXSLy9vQkLC2Pjxo0sX76ccePGXbONYRisWLECIN+3V10pIyODQYMGXXVlZODAgYXOLs7Pe93LEHOCVN/qHG76LJmRsflqd/h8QhEnExERcZyCvm/p/U6coiABGDZsGBs3bmTt2rVs27aNtm3bXrV+3rx5HD16FIChQ4fate+sKyPff/89bm5uujIi+RLk48Gt7nuodXw+mYaF+y4NZ9unu+3ah5e7K0E+uqIiIiIlV5CPB17uroyZu7vA+9D7XdlmMQzn6GWbnp5Oq1at2Lt3L6GhocycOZNu3bqRmZnJggULuP/++4mLi6Nnz54sXbr0qrYTJkxg4sSJgHVekVq1atnWZfUZmTNnjq0De79+/RyWOy4ujoCAAGJjYzWHibNJiiJjWjtcE89xscn9nG3/st27CPLxIDTQqwjCiYiIOE5kTDLRial2t7OkJ+OWdAHfqvX0fudk7DnHdZorJG5ubixevJguXboQERFBeHg43t7eZGZmcvnyZQBatmzJ7Nmz7drv5s2bmTNnDgAWi4XHH3+cxx9/PMft33vvPV09Eaul/8E18RxUbEDFO/9LRXe90IqIiHMKDfSyv6A4fwAWDgEXd3hwfdEEk1LBaQoSgFq1arFnzx6mTJnCwoULOXbsGO7u7jRu3Jh7772Xxx9/HA8P+y4HZmZm2pbT0tI4d+5crtsnJycXKLs4mX0LYd8CsLhC309AxYiIiMjVfCrB5VhIvABr/we3vGp2IjGJ09yyVVrpli0nFH8WPmoHydHQ8RnoOt7sRCIiIiXTwSUwZxBggZHLoUY7sxOJg9hzjusUw/6KlChpyRBUG4KbQcdrR3wTERGRf1x/OzQfBBjww0OQohG3yiIVJCKOVr42jFoFg+dpzhEREZG89HwD/KtB9DFY/YrZacQEKkhEioKrG/gFm51CRESk5CsXAHd+aF3+/Qs48ou5eaTYqSAREREREXPV7QJtRluXFz0KyTGmxpHipYJERERERMx3y0QoXwfiT8OyZ81OI8VIBYlIYV08DH/MAQ1YJyIiUnAePtDnE7D8c3qakW5uHik2TjUPiUixy0iHHx6EyO0Qe1KjaomIiBRGjbbw8K9Q+Xqzk0gx0hUSkcLY8p61GPEMgOb3mp1GRESk9FMxUuaoIBEpqLN7Ye0k63LPyRBQzdw8Ig60ceNGbr/9dipVqoSrqysWi4U+ffoAMGPGDCwWC7Vq1XLIsRy9PzFHcfweX3zxRSwWC5MnT77q+wkJCVSqVImgoCAuXbqUZ8Yrv1q0aOHwnO++++41x+ncufM12/17G4vFwu7dux2aJSYmJtvjREREOPQ4IoWhW7ZECiI9xTqBU2YaXH8HNB9odqIiExmTTHRiaoHbB/l4EBro5cBEzmHdunWsW7eOWrVqMXz4cLPjXGXr1q107dqV9PR0LBYLFSpUwNXVlaCgILOjiQMtWrSI3bt306JFC1uxWZKdOnWKt99+m0qVKvHYY49dtc7X15exY8fy/PPP8+qrr/Lee+/lui8XFxcqVaoEQMWKFbPdZuPGjezcuZOdO3eyY8cODh48SEZGBp06dWLdunW57t/Hx4cqVaoA1mIpMTEx1+2DgoLw8LDOW+Xu7n7N+oiICDZt2sSOHTvYuXMnu3btIj4+HoBjx47lWgS6uLjYsmRkZHDx4sVcs4iYQQWJSEGsewPO7QPvCnDHu2CxmJ2oSETGJBM+dT3JaRkF3oeXuyurx3ZSUfIv69atY+LEiXTq1KnEFSTvvvsu6enphIWFsXjxYsqXL3/V+oCAAK677jpCQ0NNSiiOsGjRImbOnMmwYcMcUpAU9fNi/PjxJCcn8+qrr+Lj43PN+scee4ypU6fy8ccf8/jjj1OvXr0c91W9evU8rxB07NixwFlHjx7N6NHWIWwnTJjAxIkTc91+4cKF2V5ByTJhwgRmzpxZoCz+/v6cPXsWsBY2tWvXLtB+TJWeAn98B62GOe37bVmngkTEXid/g83vWpfveBd8K5mZpkhFJ6aSnJbBuwNaUK+yr93tD59PYMzc3UQnpqogKUX27t0LwMCBA68pRgD69u1L3759izuWlHBF+byIjIxk9uzZeHh4MHLkyGy38fX1ZfDgwbz33nu8++67fPjhh4U6ppeXF02bNqVVq1a0bt2a+fPns2LFikLts6BcXFyoW7curVu3plWrVhiGwfPPP29KlmKXmQnTe8DpnZCZAW1GmZ1IioAKEhF7pCZab9UyMqHZAGjU2+xExaJeZV+ahAaYHUOKSVJSEmA9wRMpCT7//HMyMjLo1atXtkVyliFDhvDee+/xzTff8Oabb+Lt7V3gY8bHx+Pq6mr7/6ZNmwq8r8L6/PPPr8qS1y1jTsXFBZr2sxYkK1+yTqBYvo7ZqcTB1KldxB5rXoOoI+AXYu3ILk7BMAy++uor2rdvj5+fHwEBAbRt25bPPvsMwzAYPnw4Foslx1ur9u3bxwMPPED9+vXx9vbG19eXZs2aMX78+Gvu146IiMBisdhu4Vi/fv01nU1nzJhR6McUGRnJgw8+SPXq1fH09KRatWqMGDGCw4cP2zL8u2Prv783YsSIbDvB5tV5edu2bQwePJjatWtTrlw5fHx8qFmzJp06deK1117j1KlTuWbfsWMH/fv3p2rVqnh6elKnTh2efvppoqOjc20XHx/PG2+8Qfv27Slfvjyenp5Ur16dgQMH8uuvv2bb5t8/iyNHjvDAAw9Qu3ZtPD09C9VBe926dbZ9A+zZs4d7772XkJAQvLy8aNiwIVOmTCE9/f/nWti8eTN9+vShatWqlCtXjiZNmjBt2jSMHOY5Onv2LB988AF33nknDRs2JCAgAC8vL+rVq8f999/Pn3/+mWOurFuAZs6cec1z8MoT3lq1atmelwkJCbz88ss0bdoUPz+/fD0vtmzZgpubGxaLhXfeeSfbx3Hq1CkqVKiAxWKx3eqUxTAMvvzySwAGDRqU8w8cuOGGG6hfvz6xsbHMnTs3123zcmUBYLaSlMUUbR+CmjdDWiL88LD1Sok4F0NMFRsbawBGbGys2VEkP87sNYyPwgzj71VmJykWe0/FGDWf/dnYeyrGlPbFIT093RgwYIABGIBhsViMoKAgw8XFxQCMe++91xg2bJgBGMOGDbum/eTJk23bAoa3t7fh4eFh+3/VqlWNnTt32rY/ceKEUaVKFcPHx8cADHd3d6NKlSpXfc2ZM6dQj2nHjh1GUFCQLYOXl5fh6+trAIa/v78xd+5c27pjx47Z2mUdP+vx+Pv7X5XrxIkThmEYxldffWUARs2aNa859owZMwyLxWLbv6enp+Hv72/7P2B89dVXV7W5cn+zZ8823N3dDcAICAi46mfbuHFjIz4+PtvHvGvXLqNatWq2bV1dXQ0/P7+rfq+vv/76Ne2OHTtm22b27Nm2n5O3t7fh4+OT7WPMr7Vr19r2vXTpUqNcuXK2x3Xlz2jgwIGGYRjG559/bri6uhoWi8UICAi46mf27LPPZnuMrOcmYLi5uRnly5c33Nzcrvr5z58//6o2mzdvNqpUqWLLU65cuWueg5s3b7ZtX7NmTQMwpkyZYjRo0MAADA8PDyMwMPCq51Buz4tXX33V1u7KvwfDMIyMjAyjU6dOBmA0bNjQSExMvGr9nj17bI/nzJkzef7cR40aZQBG//79r1mXW8a8ZP2sO3XqZFe7V155Jcd2WY9r7dq1du3zyufWlX/Debny+W5PuxIh6phh/C/EMF7xN4xN75mdRvLBnnNcFSQmU0FSCmWkm52g2JSFgmTSpEm2N+inn37auHjxomEY1r/N119/3VagZFeQfPHFFwZg+Pr6Gv/73/9sJ0vp6enG9u3bja5duxqAUa1atWtOpHM7SSmMuLg4o0aNGgZg1KhRw1i5cqWRmZlpGIZhbNmyxWjcuLHtRDKnk5KsE9B/Fw5ZcjqpS0xMtBUBQ4YMMQ4fPmxbl5CQYGzfvt0YN26csWTJkmz35+3tbXh6ehr333+/rfhJTEw0PvzwQ1uR8tJLL12T5/Tp00blypUNwLjrrruM7du3G6mpqYZhGMa5c+eMl156yXaS/sMPP1zV9soTNF9fX6Nt27bG77//blt/6NChbH8G+XHlSWNgYKAxYMAA4/jx44ZhWH9Pzz//vG39pEmTDHd3d+Pxxx83zp07ZxiGYURFRRnDhw83AMPFxSXbLK+99prx1ltvGXv37jXS0tIMw7Ce4O/bt88YPHiwARg+Pj5GZGTkNW1zK7SvlPV88PX1NYKDg40ffvjB9vM9efKkrYDI7WQ/IyPD6Ny5swEYDRo0MBISEmzrJk6caCuedu/efU3bDz/80ACM6tWr55ozy2effWYARnBw8DXrVJCU4oLEMAxj+wxrQfJqRcM4t9/sNJIHFSSliAoSKcmcvSBJSEiwfXo/atSobLfJOpn494lbXFyc7cR++fLl2bZNS0szWrdubQDGO++8k+1+HV2QTJ482fZJ9P79175hnzlz5qqrJ44sSLZt22Y7Ac46Oc6PrP3ldnL89NNPG4BRr169a9aNHDnSAIxBgwbleIy3337bAIzmzZtf9f0rT9Bq1qyZ4xWYgrjypPGWW26xFYZX6tChg22b+++//5r16enpRu3atQ3AeO211+zOcPvtt+fY1t6CxNXV9ZqrG1fK62T/1KlTRoUKFQzAGD58uGEYhrFp0ybD1dXVAIz33sv+U+/77rvPAIw77rgj15xZfv/9d9vP9OjRo3ZlzI0KkhIgM9MwvulnLUo+6WAY6almJ5Jc2HOOqz4kIlJmrVy5kri4OMA6pGh2xo4dm23H2AULFhATE0PLli259dZbs23r5ubGvffeC1Bso/PMmTMHgH79+tGwYcNr1gcHB/PQQw8VybEDAwMBSE1NzXVyuty8+OKL2X7/zjvvBODw4cO2TvcAly9f5ttvvwXg2WefzXG/Q4cOBeCPP/7g3Llz2W7z2GOPFVlH/meffdbWl+RKVz53shs1ydXVlW7dugHWPij2uv322wHHdMju0aMHLVu2LHD70NBQpk+fDlj7m3z88ccMGjSIjIwM7rjjDp544ols250+fRrANm9IXq6cVySrrTgJiwV6vw/lAuHMH7BhitmJxEE0ypaIlFk7d+4EoEaNGjmOze/n50fr1q3ZuHHjVd/fvHkzAAcOHCA4ODjHYyQnJwNw/PhxR0TOVWpqqm3I3q5du+a4XdeuXZk0aZLDj1+3bl2uv/56Dh48SNu2bXn44Ye59dZbadq0ab465ZYvXz7HuSNCQkJsy9HR0bYicceOHVy+fBmA7t275yvn8ePHbRPFXSksLCxf7QvixhtvzPb7WTnKly9PnTrZjxyUtU1Onfr/+OMPPv30UzZt2kRERAQJCQnXdILPayCB/HDEz6d379489thjfPjhhzzyyCMAVK1ala+++irHNhcuXADIdXStK125XVZbcSJ+wXD7VFgwCja8BQ1uhdBWZqeSQlJBIpITw4AlT0PtTtC4j9lppAhknaxcebKbnewmesv65PXy5cu2E+LcXPmpflGJioqyjdiU2+R01apVK5Lju7q6MmfOHPr27cuxY8d47rnneO655/D29uamm27irrvuYtiwYTkOxern55fjvt3c/v/tKi0tzbZ85SfgOV35+LecfheVK1fOV/uCyOmxZT2u/Dz2Kx93lg8//JAnn3ySzMxMwDpSWkBAAJ6enoC1II6Li8tzpvD8cNTPZ8qUKfzwww9ERkYCMH369BxnSwdsf19ZjykvXl7/P+dRfv42pRRqeg8c/BmMTAisaXYacQDdsiWSk30LYPt066cwUcfMTiNFKLtbafKSkWEddnLAgAEY1v54uX7lNSu0s2jevDkHDx5kwYIFPPDAAzRp0oTk5GRWr17NI488wvXXX2+7iuMIWb8HsJ585+d3kdOM2KVtaNUDBw4wZswYMjMz6devH7/99huXL18mOjqas2fPcvbsWd5++22AHIcNtoejfj5LliyxFSNgHfo6NxUqVAByvkL0b1FRUde0FSfU91PoNxN89Dt2BipIRLITdwaWjLUudxwH5bO/nUdKt6x70vO6z/zKk6csWbdpFcetWPlVvnx520ljdpmz5LbOETw8PLjrrrv49NNP2bt3LxcuXOCTTz6hfPnynDx5kmHDhjnsWFfeLleSfhfFYf78+WRkZNCwYUPmzJlDmzZt8PDwuGqbs2fPmpQueydPnuT+++8HoFmzZgC8+eab/PLLLzm2yfo7vbLQyM2V2+W334mUQm6e1j4l4hRUkIj8m2HA4sfgcgxUbQEdxpqdSIpIq1bW+46PHz+e4xWMhIQEduzYcc33s+6n37FjB2fOnLH72C4u1pdfR3xyncXDw8N2krd27doct8vt5K8oVKhQgQcffJDJk62Tie7atavAnd7/7cqT8J9++skh+ywtTp48CVivSmU9n/5t9erVObYviudgbjIyMhg8eDDR0dE0atSIrVu30rdvXzIzM7nvvvtyfE40atQIgKNHj+brOMeOWa9ou7m5Ub9+fceEF5EipYJE5N92zIDDq8HV03pJ2NXd7ERSRLp3746/vz8Ar7/+erbbvPPOO9n2OejXrx+BgYGkpaXx9NNP53pSl5mZSUxMzFXfyzruv79fWAMGDABg3rx5HDp06Jr158+f55NPPnHoMbOkpKTkuv7Ke/tzOoG2l4+Pj2327smTJ3PixIlct8/vp+ylQUBAAAB79+7N9vm3bNmyq2Zc/7eieg7m5L///S8bN27E09OTOXPm4OXlxRdffEG1atU4ffo0I0aMyLZdx44dAWvn/byeYwDbtm0DoHXr1vj4+DjuAYhIkVFBInKlqGOw4p/hX7u9BJWvNzePFCkfHx/bULGff/45zzzzjO2ENT4+nsmTJzNhwgSCgoKuaRsYGMi7774LWIfavf3229m2bZutc3FmZiYHDhxg6tSpNG7cmJ9//vmq9k2aNAHgzz//ZMuWLQ57TA8//DDVqlUjJSWFHj16sGbNGtvJ6rZt2wgPD7dldLQ5c+YQFhbGp59+etWn2RkZGaxYsYLnnnsOgPbt22f7My2o119/nZCQEC5evEj79u35+uuviY+Pt62/cOECCxYsoG/fvrZhmJ1Bjx49AOtz6NFHH7U9dxMTE/n000+55557cu1DkfUc3LhxIwcPHizSrJs3b+a1114D4K233qJp06aA9TbDb775BhcXF3766Sc+/PDDa9qGhYXh5uZGamoqu3fvzvNYWQVJp06dCpU5ISGBixcv2r6yiqG0tLSrvp/fvi2F8e9jxsbG2tZFR0dftS67wQ/KhIw0WPcG/L3K7CRSABplS5xaZEwy0Ymp+dvYyKT2zw/ik5ZIYvCNHKs+mKCYZEIDvfJu6+QOn08o1nbF6ZlnnmHXrl3Mnz+ft956i6lTpxIQEEBcXBwZGRncd999WCwWZs2aRbly5a5qO2zYMJKTk3nyySdZtmwZy5Ytw9PTE19fX+Li4q46Mfh3x/nOnTtz3XXXcejQIcLCwggKCrJ9Yj1lyhTuueeeAj0ef39/fvjhB2655RYiIiIIDw/H29sbFxcXEhIS8PPz44svvrBdSXEkwzDYsmWLrcDK+llER0fbiqCQkBDbXBSOUrVqVVavXk2fPn3466+/GDp0KC4uLgQGBpKSknLVCFPh4eEOPbaZunXrxsCBA5kzZw4ff/wxH3/8MYGBgcTHx5ORkUHr1q0ZPnw4jz/+eLbt7777bl544QUuXLhAw4YNqVixou2Kwpw5c2jXrp1DcsbExFw138i/83Tq1Inx48fz2muvMW7cODp16mQrWMD6nL799tv58ccfWbx4MW3bts3xWHFxcbZO8llXzgrqscceY+bMmdd8f8uWLVf1TalZs2aRD1qxefNmunTpku26rFtPs6xduzbHgRucVWRMMq5b3if4t0mkeVfm8N2rySgXmO/2QT4eeq83mQoScVqRMcmET11PclpG3hsDo1yX8JL7NhINT3ocv5eT037Fy92V1WM7ldkXqiAfD7zcXRkzd3eB9+Hl7kqQj0feG5rEzc2N77//nunTp/PZZ5/x559/kp6ezg033MDo0aMZNWqUbVK+rIn/rvTQQw/Ro0cPpk2bxqpVqzh27BgxMTH4+/tTt25d2rdvT+/eva+ZF8TNzY01a9YwYcIE1qxZQ2RkpO2T1oSEwhVyN9xwA3v27OHVV19l2bJlXLhwgUqVKnH33Xfz4osvXjWEriP17t2bWbNmsXbtWnbu3MmZM2eIiorCz8+P6667jl69evHYY49l+3MsrIYNG7Jnzx5mzpzJggUL2L17N1FRUXh4eFCvXj1atmzJLbfcUuBCr6SaPXs27dq1Y/r06Rw6dIiMjAyaNm3KgAEDeOqpp/juu+9ybBsUFMSGDRuYOHEiGzdu5Pz581y8eBFw7HC5o0eP5sSJEwQHB+dYjL7yyiusWbOGLVu2MHDgQLZv337VLX4PPvggP/74I99++y3//e9/cxwZb8GCBVy+fJm2bdvSvHlzhz0GKbmy3uuNtPos8ahK3aQzHJrxEGPSHsv3Psr6e31JYDGKqzebZCsuLo6AgABiY2Ntn46KY+yLjOWODzbx7oAW1Kuc++zLLikxXPdde1zTEom8+XWiGw7h8PkExszdzc+P30yT0IBiSl3y2HWVKRul/ZMnwzCoUaMGp06dYtasWdx3331mRyq0iIgI20SQx44do1atWuYGEslDZmYmDRo04MiRI6xfv97Wr+Tfunbtytq1a5k5cyZDhw69Zv2MGTMYMWJEsVzVyDJhwgQmTpxIp06drunTk1VYFddVDWf827/yvb4pf1NncV8sRiYnun1MXJ3b82yv9/qiY885rq6QiNOrV9k3Hy8yATD8J9j9HaHdHiFUQwnahAZ6leqCorC+/vprTp06hZubm1Pd7iNSmri4uPDaa68xaNAg3njjjWwLkm3btrF27VoaN27M4MGDTUgpZqpX2Ze6oZ0h6inYOJUaW8ZDy3DwLboJT8Vx1KldJEtoa7h9isY1L4Puvfde5s+fb7tdBayzfr/xxhuMHj0agKFDh1K1alWzIoqUeQMHDuTGG29k2bJl/Pbbb9esnzBhAmCd1ySvSRyPHz+OxWLBYrHQokULh2d99913bfufOHFintt36dLFtn1+Ou7bIyYmxrbvrKsjTq3Tc1ClKSRHwU9PWofylxJPV0hEpMxbtmwZc+bMAcDb2xt3d/erRrHp0KED77zzjlnxRATr7U2ffvopixYt4sKFC1etS0hIoF27dvTo0YPbbrstx314eXlRpUqVq75XsWJFh2f18fG55jjly5e/Zrt/bwPg7u7YoeZdXFyyPU5eRVup5eYBfT+BzzrDoaWw+1toqStmJZ0KEhEp895//32WLVvGrl27OH/+PAkJCVSqVIkWLVowcOBA7rvvPoefJORmy5Yt3HXXXXa1uemmm1i4cGERJSq79LsoWVq0aJHtFQ1fX19eeeWVPNsPGDCgSEaY+7fRo0fbrq7m5uzZs0Wexd/fv1iOU6IEN4EuL8CaibD8OajdEQKrm51KcqGCRMqu9BRw8zQ7hZQAQ4cOzbYDrFlSU1M5d+6cXW3smfCvVq1axTY7d2lX1L8LESkiNz1hvUJy6ndYOR76zzI7keRCBYmUTb9Og83vQ+/3ocGtZqcRuUrnzp1VMJQQ+l2IlFKubtD3U+tVkp5vmp1G8qBO7VK2GAasnQQrXoCEs3DccTNki4iISAlSoa71yohfsNlJJA+6QiJlh2FYC5GtH1n/3/VF6PAfczOJiIiIlHEqSKRsyMyAn56AXd9Y/9/zTWj7oLmZRERExByZGeDipCONlUK6ZUucniUjFeaPtBYjFhfo87GKERERkbJq/4/wRTgkXsx7WykWKkjEqZUjhRor74f9i8DFHfrNhBaDzI4lIiIiZki7DMtfgNM74aueuCWcMTuRoIJEnJgl/TIzPSbjd2oduHnBoLnQqLfZsURERMQs7uVg6I/gXw0u/kWdn+6mpqWMzdNSAqkgEadluHqyN7M2Ge5+MHQR1OtmdiQRERExW8V6MHI5lK+LR8Ip5nm8imfUQbNTlWnq1C7Oy2Lhv+lDqNHpKUJcr4fIWLuaHz6fUETBRERExJHsf8/2x7Xn94T8NIjKcYco/3M/CPoBqrUuknySOxUk4rSCfDzwcnfjgZ8vApsKtA8vd1eCfDwcG0xEREQcwvpe78qYubsL1N6fsczyfIsWKX/DrN5w73dQu6NjQ0qeLIamoDVVXFwcAQEBxMbG4u/vb3YcpxMZk0x0YmqB2wf5eBAa6OXARCI527lzJ9988w1r1qzh2LFjeHp60rBhQ55++mn69OljdjwRkRKpsO/15d3TCFk2Eo6tB1dP6D8TruvpwIRlkz3nuCpITKaCxEEid8Ke7+HW18FFXaOkdBo4cCCrVq3irrvu4oYbbiA5OZnvvvuO3377jZdeeolXX33V7IgiIs4p7bJ1ioBDS+C2KXDjaLMTlXoqSEoRFSQOELEJvh0IqfHWgqT9o2YnEimQzZs307p1a8qVK2f7XkZGBjfffDPbt2/n3LlzlC9f3sSEIiJOLCMdDq+G63qYncQp2HOOq4+SpXT7ayV8c7e1GKnVAVoNNTuRSIGFhYVdVYwAuLq6ctddd5Gens5ff/1lUjIRkTLA1U3FiElUkEjptW8BzLkX0i9Dg54weD54+pmdSsqA4cOHY7FYGD58eLEc7/Tp0wBUqlTJrnZ//PEHo0aNombNmpQrV44aNWrw8MMPc+7cuaKIKSIiUiAqSKR02jET5o+CzHRocg8M+No62ZGIk4mMjOSrr76ibdu21K1bN9/tJk2axA033MD06dM5c+YM7u7unDx5kk8++YS2bdty8eLFIkwtIuJE0i7Dts8gM9PsJE5LBYmUPls+hJ+eAAxoPQLu+gxc3c1OJWVI1apVue6666hatWqRHicpKYm+ffuSkpLCZ599lu92EydO5IUXXsDf359Zs2aRmJhIfHw8y5Ytw8/Pj+PHj/PCCy8UYXIRESdhGNbO7svGwY+PWPuZiMOpU7vJ1KndDoYB6ybB+snW/4c9CeETwWIxN5dIEUhNTaV3796sXr2a77//nrvuuitf7VasWEHPnj3x8fFh06ZNNG/e/Kr1kydP5rnnnsPf35/z58/j6elZFPFFRJzHH3Nh0cNgZMD1d8A908FNr515Uad2cU4J5+C3z63LXV9SMSJOKy0tjf79+7Ny5Uq+/PLLfBcjaWlpPProoxiGwSuvvHJNMQLQo4e1w2ZcXByHDh1yaG4REafUfID11nBXDzj4M3w7AFITzU7lVFSQSOnhFwxDFsDtU6Hjf1SMiMPMnTuXnj17UqVKFdzd3QkMDKR+/fr07t2badOmcfny5au2z6lTe+fOnbFYLEyYMAHDMPj8889p27Yt/v7++Pn50b59e7755ptcs2RkZDBo0CB+/PFHPvroI4YNG5bvx/H1119z5MgRKlSowKOPZj/8dYUKFWzLkZGR+d63iEiZdv3tMHgeuPvA0bXwdV9IjjE7ldNwMzuAiF1CW1m/RBxk5MiRfPXVV7b/+/r6kpaWxuHDhzl8+DA//fQTt99+O7Vq1cr3PjMyMujbty8//vgjbm5ueHt7Ex8fz9atW9m6dSt///03EydOvKZdZmYmw4YNY/78+bzzzjs89NBDdj2WL774AoAhQ4bg5eWV7TZpaWm2ZTc3vQWIiORbnc4w9EeYfTec3AYz74AhP4CvfSMgyrX0biRFKjImmejE1AK3D/LxIDQw+xMrkcLatGkTX331FS4uLkyaNIn777/fNvHgpUuX2LFjB99++y0eHh527XfatGlkZmYyY8YM+vfvj5eXF6dOneKRRx7hp59+4r///S9Dhgyhfv36V7UbN24cs2fPpn379lSsWPGaqyk33XQTderUyfaYx48f59dffwWgX79+OWa7dOmSbVn91kRE7FS9DQxfar1CcnYvfNWTs33mcNGl4EWJznVUkEgRioxJJnzqepLTMuxu60cSlSwxnHGrzuqxncr8H6oUjS1btgAQHh7OM888c9W6ChUq0L17d7p37273fqOjo/nll1/o0qWL7XvVqlVj3rx51KlTh9OnT/P9998zfvz4q9rt2LEDgF9//dVWXFzpq6++yrEg+eWXX2zLd911F5Ycbmm88grJvwsiERHJh+AmMHI5zLoTLv3N0S+GMyjl+QLvzsvdtcyf66ggkSITnZhKcloG7w5oQb3Kvvlu55p8iVrL7sOScJbuceOJTkwt03+khZLfTneuHtkPnZyRDhkp+duHu3f2/XrSLltHJsmLxQXci/f3HBgYCMCFCxfIyMjA1dXVIfsNCwu7qhjJ4unpya233spXX33Fnj17rlm/bt26Ah9z06ZNtuXz58/nuX2VKlVsV4NERMROFerCyOUkfP8g4470s/tcJ8vh8wmMmbu7zJ/rqCCRIlevsi9NQgPyt3FsJPwwAC79RXq5CvhwOe82krPXQ/K33W1T4MbR137/4E8wb3j+9jHuCPhUvPb7PzwA+3/Mu33Nm2HEkvwdy0G6detGuXLl2LVrFx06dGDUqFF07dqV2rVrF2q/bdu2zXFdSIj1dxIVFVWoY/zb/v37AXj66aeZOnVqjtt17NiRjRs3cvPNNzv0+CIiZU5ANSJu+5bIDzbZd64j19AoW1JyXDoC03vAxb/AP5SjveZzwKhpdipxYnXr1uWLL77A19eXX3/9lfvvv586depQuXJlBgwYwI8//khBpmry8/PLcV1WR/Irb51yhKNHjwJQvXr1HLdJSEhg69atAHTt2tWhxxcRESkoXSGRkuHcfvi6j3WukfJ1YOiPpCYGAGfMTla6vXA6f9u55tBp+/pe+d+Hu3f23+/7GfT5OO/2FnM+Hxk8eDA9e/Zk3rx5rF27li1btnDy5Em+//57vv/+ezp06MDPP/9c4juAx8XFARAQkPMndIsXLyYtLQ03Nzfuueee4oomIlL2JEeDV5DZKUoNXSER853aATNusxYjlRvDiOUQWMPsVM7Bwyd/X9n1HwFwdcv/PnKaF8a9XP7aF3P/kSuVL1+eBx98kDlz5nDixAkOHz7Mc889h8ViYePGjUyYMMG0bPmVdSUnp87s8P/DAvfq1YvKlSsXSy4RkTLnxDZ4tznsmWd2klJDBYmY69hGmNXb+klC6A0w/Gfwq2J2Kinj6taty6RJkxg0aBAAq1atMjlR3rL6ppw5k/1VxQ0bNrB27VrbxI0iIlJE9s2HlFhYOBp+/8LsNKWCChIxz5k/YPY9kJoAtTvC0EXgrVF/pPikpOQ+gljW5IIuLiX/pbJNmzaA9basf7t06RKjRo0C4IknnqBZs2bFmk1EpEzpMRnajAYMWDIWVoyHi3+bnapEK/nvsuK8KjeG+t2hQU8YNA88c+4ILFIUHnvsMfr378+CBQuuGio3ISGBTz75hFmzZgFw++23mxUx34YNGwbA1q1bGT9+vK3Y2rhxIx06dODw4cOEhYUxefJkM2OKiDg/Fxe47S3oMNb6/18/hA9vgGntYO0kOPcnFGDAFGemTu1SpGpazlLxj4+h/EPgFXj1Slc3uPtLa9+DnPowiBShtLQ05s2bx7x51vt8fX19cXNzIyYmxrbNzTfffM0EhiXRbbfd9n/t3X9UVHXeB/D3AMMwwzCsQIKYomWoCLou4ZbKFukj4mbu1vqkRnEWs308PuzqKp3NtcDTpg+Ka+dktqflHFbTNfOpziFKMRBLW20ztVKJUgYhEX/w+4cgMN/nj3m4gfxwZpzLnbnzfp0z51zm3u+H750P33vvh7k/sHjxYuzZswcbNmzA5s2bodVq0draKs3fu3cvdDqdwj0lIvIAGg0w6yUgNBo4tQswfwJcKwE+KQE++R/gronAfx29fRwPobqCpKmpCVu2bMG7774Ls9kMb29vREZGYtGiRUhLS4Ov7wB3E7LBlStXsGnTJuTn56OiogJ6vR6TJk1CSkoKli5dOujFpEq6VH8DdS03HW4/zN/X9of1CAFc+xY4l4d7v34fn+hKgH8DGDkGmLKo7/I+jueD6E69+OKLiI2NRXFxMUpKSlBdXY3m5mYMHz4cU6ZMweLFi/HMM8847YGJctu1axdiY2ORm5uLsrIy6PV6zJw5E88++ywWLlyodPeIiDxP9OPW1406oPQAUJIHnC8CTOHWf8w6wZAe58lEIxy5yb6LunjxIh5++GGUl5cDAAwGA7q6uqRTF6ZOnYqioiIMG2b/bdi+/PJLJCYmoqamBoD1P6ltbW3o7OwEACQmJiIvL8/ugqexsRGBgYFoaGiQ5bail+pvYPaWT3Cjw4YnZQ9Ar/VG4eqHBv5jFcJ6PUhJHnAuD6j58TzJTuGFtrunw5iwChg3267fe+ZSAx597Sjy02byYUNERETkchw6VmlvAlquA0Fj+7a/UQ8cehmYON/6wODbFC1DcpznIHuOcVXzDUlnZyfmz5+P8vJyjBgxAjt37sTs2bNhsViwb98+LFu2DKdOnUJycjI+/NC+p0E3NDTg0UcfRU1NDSZMmIC33noL999/P27evIm///3vWLVqFQoKCrBy5Ups375dpjV0TF3LTdzo6MKrT/4U44Yb7W5//mozVu49jbqWm/3/oX6yGTj1FlB/8cf3vH2BexLww4j/wKMHA7BrXhILCiIiIiLAes3sQNfNfnfAemeuL3IAfRAwYR4wcQFwz8P9nlUi+3HeEFFNQbJjxw588803AIB3330XDz74IADr3XGefPJJWCwWLFmyBB999BGKioowa9Ysm2NnZ2ejuroaer0eH330EcaOHQsA8PX1xYoVK9DY2Ii1a9fizTffxMqVKxEZGen8FbxD44Yb5SkK6sqtxYiPHrhvtnXQRCYCfibUX2pA/UGeH0lERERkk5BIYOrTwLcfAjdqrdefnNoF6ExA5Fwg6jHrGSe3PLtLtuO8IaKau2zt2LEDAJCQkCAVIz0tWrRIKiS675xjq+7le8boKS0tDUajEV1dXdi9e7e9XXdtlg78wusr+LRU9z9/2jLgP3cCz18AntwFTF4I+Ln2E62JiIiIXNLInwELtgFrvgeeyQPingWMYUB7I/DNO8DeZGDTPcAHK5XuqVOp4huS1tZWfPbZZwCApKSkfpfRaDSYO3cu3njjDRw8eNDm2KWlpaioqBg0ttFoRHx8PPbv34+DBw9i/fr1dq6Bi+loAy4cAkryMLHkQ+z0bUT19xog8oW+y4b/1PoaxPmrzQ51w9F2REREREPJ6cc63j7APQ9ZX0mbgR/+bb1OtyQPaKgEujruoLeuRxUFSUlJCSwWCwAgOjp6wOW651VXV6O2thZBQbd/CN+ZM2f6tB8o9v79+3Hu3Dlbu+1a2puB8x9b/9i/P2h9WCEAbwDXhAnQ2P9l2jB/X+i13li597TD3dJrvTHMn3fiIiIiItczJMc6Xl7A6Aesr8RXgKpTgNbQ/7L1FdZ/Kk94FPAPcbhPQ00VBUlVVZU0PXLkyAGX6zmvqqrKpoLE3tiNjY1obm6G0Wj/hUWK+K4AOLkTOF8IdLb9+L5pJDBxPsrumoXZ/9uOvCm/QJidoUf+RI/C1Q+5/a3oiIiIiPoz5Mc6Go31tK6BnHkXKMwE8lcBo6cDMU8A96c63LehooqCpKmpSZo2GAaoGG+Z17ONHLEHKkja29ul2xAD1gJGUZWfA9/mW6eHjQEmPgZELQDCfwZ4eaH1UgMscPzC9JE/0bOgICIiItVyqWOdgHBgxE+By6eBi0cBHx0LEupr48aNrnWNScxC6+lYEx8DwmKslTcRERERuZ8pT1pfdReBkg+A4HuV7pFNVHGXrYCAH+/l3NraOuByPef1bDOUsV944QU0NDRIr8rKSpv6IZvhE4FH1gEjJrMYISIiIlKDYRHA9P8Gxvd/QyZXo4qCJDw8XJq+dOnSgMv1nNezjTNjm0ymQa8f0el0MJlMvV5ERERERJ5KFQXJxIkT4eVlXZWed8W6Vfe8sLAwmy5oB3rfWcuW2FFRUTbFJSIiIiIilRQkBoMBM2bMAAAcOHCg32WEECgoKAAAzJkzx+bYkZGRGD169KCxW1pacOTIEbtjExERERF5OlUUJACQkpICACguLsbnn3/eZ/6+fftQVlYGAHjmmWdsjqvRaKTl3377bZSXl/dZ5vXXX0dzczO8vb3x1FNPOdB7IiIiIiLPpKqCJCYmBkIIPPHEEygqKgIAWCwW7Nu3D8uWLQNgfdr6rFmzerXNzMyERqOBRqPpt+BYs2YNwsLC0Nrail/+8pf48ssvAQA3b97EG2+8gRdffBEA8NxzzyEyMlLGtSQiIiIiUhfV3PbXx8cHeXl5SEhIQHl5OWbPng2DwQCLxYK2NusD/6ZOnYrdu3fbHTswMBD5+flITEzEuXPncP/99yMgIABtbW3o6OgAYD1Va+vWrU5dJ2c6f7V5SNsRERER0dBw9+M81RQkADBmzBh8/fXXyM7OxnvvvQez2QytVotJkyZh8eLFSEtLg6+vr0OxY2NjcfbsWWRlZSE/Px+VlZXw9/dHdHQ0UlJSkJqaKl1Y70qG+ftCr/XGyr2nHY6h13pjmL9jnxsRERERyUMtx3kaIYRQtAcerrGxEYGBgWhoaJDtFsCX6m+gruWmw+2H+fu6zhNIiYiIiEjiqsd59hzjquobEurfyJ/oWVAQERERqZAajvNc7xwjIiIiIiLyGCxIiIiIiIhIMSxIiIiIiIhIMSxIiIiIiIhIMSxIiIiIiIhIMSxIiIiIiIhIMSxIiIiIiIhIMSxIiIiIiIhIMSxIiIiIiIhIMXxSu8KEEACAxsZGhXtCREREROQc3ce23ce6g2FBorCmpiYAwKhRoxTuCRERERGRczU1NSEwMHDQZTTClrKFZGOxWFBVVYWAgABoNJoh//2NjY0YNWoUKisrYTKZhvz3U2/Mh+thTlwPc+J6mBPXw5y4Hk/LiRACTU1NCA8Ph5fX4FeJ8BsShXl5eeHuu+9WuhswmUweMTjcBfPhepgT18OcuB7mxPUwJ67Hk3Jyu29GuvGidiIiIiIiUgwLEiIiIiIiUgwLEg+n0+mQkZEBnU6ndFcIzIcrYk5cD3PiepgT18OcuB7mZGC8qJ2IiIiIiBTDb0iIiIiIiEgxLEiIiIiIiEgxLEiIiIiIiEgxLEiIiIiIiEgxLEhUoKmpCZmZmYiJiYHRaERgYCDi4uKwZcsW3Lx5845iX7lyBatXr8b48eOh1+sRFBSE+Ph45OTkgPdDGJgcOcnMzIRGo7nt6/z5805eG/fW2tqK/fv34y9/+Qsef/xxRERESJ9VZmamU34Hx4l95MwJx4ljampqkJubi+TkZERFRcHf3x86nQ533303fvWrX+H999+/498h575KjeTMyT/+8Q+bxklhYaET18j9nTx5EuvXr8djjz2GCRMmIDg4GFqtFsHBwZgxYwZeeeUV1NbW3tHv8Nj9iSC3Vl5eLsaMGSMACADCYDAInU4n/Tx16lRRW1vrUOwTJ06I4OBgKZbRaBQ+Pj7Sz4mJiaK9vd3Ja+T+5MpJRkaGACC0Wq0IDQ0d8GU2m52/Um6suLhY+uxvfWVkZNxxfI4T+8mZE44Tx/T8mwUg/Pz8hL+/f6/3kpKSREtLi0Px5dxXqZWcOcnNzRUAhJeX16Dj5NNPP5VhzdzXihUr+uQkICCg13shISHiX//6l0PxPXl/woLEjXV0dIiYmBgBQIwYMUJ8/PHHQgghurq6xNtvvy0Nknnz5tkdu76+XoSFhQkAYsKECeKLL74QQgjR3t4utm3bJrRarQAgli9f7tR1cndy5qT7QOuhhx5ycq/Vrbi4WAwbNkzMmjVLpKeniz179kh/23d68Mtx4hg5c8Jx4hgAYtq0aWL79u3iwoUL0vtms1ksXbpUOiBKTk62O7ac20U1kzMn3QVJRESEE3usfjt27BCbN28Wx44dE3V1ddL7TU1NYseOHeKuu+4SAMTw4cNFfX29XbE9fX/CgsSN5eTkSBuk/qrxf/7zn9L8wsJCu2KvW7dOABB6vV6UlZX1mb9hwwYBQHh7e4vS0lKH10Ft5MwJD7Qc09nZ2ee9iIgIpxz8cpw4Rs6ccJw45tChQ4PO/93vfidtuyoqKuyKLed2Uc3kzAkLEnkUFBRIOdm1a5ddbT19f8JrSNzYjh07AAAJCQl48MEH+8xftGgRxo4dCwDYuXOnXbG7l+8Zo6e0tDQYjUZ0dXVh9+7d9nZdteTMCTnG29tbttgcJ46RMyfkmISEhEHnL126VJo+ceKEXbG5XXSMnDkheTzwwAPS9A8//GBXW0/fn7AgcVOtra347LPPAABJSUn9LqPRaDB37lwAwMGDB22OXVpaioqKikFjG41GxMfH2x1bzeTMCbkejhPyJH5+ftJ0V1eXze24XZSPozkh+Rw5ckSavvfee21ux/0JCxK3VVJSAovFAgCIjo4ecLnuedXV1Tbf+eHMmTN92g8W+9y5czbFVTs5c9LT2bNnER0dDYPBAKPRiPHjx2PZsmU4deqUYx0nh3CcuDaOE+c6fPiwNB0TE2Nzu6HaLnoiR3PS07Vr1xAbGwuj0Qi9Xo977rkHycnJvWLT4Nrb21FeXo5t27bh6aefBgCMGzcO8+fPtzkG9ycsSNxWVVWVND1y5MgBl+s5r2cbZ8ZubGxEc3OzTbHVTM6c9HT9+nWUlJRAr9ejvb0d3333HXJychAbG4t169bZHY8cw3Hi2jhOnKe+vh4bN24EAMTHx2P8+PE2tx2q7aKnuZOc9NTa2oqTJ0/C19cXFosFZrMZu3fvRkJCAlJTU9HZ2enMbquKn58fNBoN/Pz8MHbsWKSlpaGurg4zZsxAUVERdDqdzbG4P2FB4raampqkaYPBMOByPef1bKNUbDWT+3O77777sGnTJpSWlqKtrQ01NTVoaWlBQUEBYmNjIYTAK6+8gi1btji2AmQXjhPXxHHiXBaLBU8//TQuX74MPz8/bNu2za72HCfOd6c5AYDw8HBkZGTgq6++QltbG2pra6XT62bPng0AyM3NxapVq5zdfdUICwtDaGgo/P39pfcSEhLw6quvYvTo0XbF4jhhQULkNp566imkp6cjMjISWq0WAODr64s5c+bg6NGjiIuLA2B9MFxDQ4OSXSVSDMeJc/3hD39Afn4+AOD111/H5MmTFe4ROSMnc+bMQWZmJiZPniz9J9/b2xvTp09HQUEBFixYAADYvn07vv/+e+d1XkXKy8tRXV2N5uZmXLlyBdnZ2Th9+jSmTZuGl156SenuuR0WJG4qICBAmm5tbR1wuZ7zerZRKraaKfm5+fn5YcOGDQCA5uZmFBUVOSUuDYzjxP1wnNhnzZo10n/ft27ditTUVLtjcJw4lzNycjteXl7Izs4GYP025oMPPnD671Cb4cOHY/Xq1Thw4AA0Gg1efvllqWi0BccJCxK3FR4eLk1funRpwOV6zuvZxpmxTSYTjEajTbHVTM6c2KLn7TTLysqcFpf6x3HinjhObPP8889Lp7VlZ2dj5cqVDsVReruoJs7KiS3GjRuHkJAQABwn9pg2bRpmzpwJAHjzzTdtbsf9CQsStzVx4kR4eVnT1/PuDLfqnhcWFoagoCCbYve8w4MtsaOiomyKq3Zy5oRcD8cJqVV6ejo2b94MANi0aRNWr17tcCxuF53DmTkheXVfeH7+/Hmb23B/woLEbRkMBsyYMQMAcODAgX6XEUKgoKAAgPV8UVtFRkZKF2QNFLulpUW637Y9sdVMzpzY4vjx49J0fw9VIufiOHFPHCeDW7NmjXS6zqZNm5Cenn5H8ZTeLqqBs3NiiwsXLuD69esAOE7s1f2Nkj2nVHF/AkDR58TTHcnJyREAhEajEcePH+8zf+/evQKAACAKCwvtir1u3ToBQBgMBmE2m/vMz8rKEgCEt7e3KC0tdXQVVEeunFgslkHnt7W1iZ///OcCgPD39xd1dXX2dt2jRERECAAiIyPjjuJwnDiPM3LCcXJnVq9eLW2fsrOznRZXzn2V2smRk9uNE4vFIn79618LAMLLy0t8++23Tvm97q6zs/O2n11hYaHQaDQCgHj++eftiu/p+xMWJG6so6NDxMTECABi5MiR0oa8q6tLvPPOO8JkMgkAIikpqU/bjIwMaSPX3x9+fX29CAsLEwBEVFSUOHHihBBCiPb2drF9+3bh6+srAIjly5fLuo7uRq6cHD58WMyaNUvs3LlTVFZWSu/fvHlTFBYWiri4OKltVlaWrOvojmpra8W1a9ek16hRowQAkZ6e3uv9pqamXu04TuQjR044ThyXnp4ufTZ//etf7Wqbm5srtS0uLu4z/062i55MrpyYzWYRFxcn/va3v4kLFy5IB9ldXV3i2LFjIjExUWrLbdePzGazmDJlSp/PTQghKioqxMaNG4W/v78AIIKCgsTly5d7tef+ZHAsSNyc2WwWY8aMkf7IDQaD8PPzk36eOnWqqK2t7dPudgNDCCFOnDghgoODpeUCAgKEVquVfp4zZ45oa2uTeQ3djxw5KS4uluYBEHq9XoSEhPTKh5eXl1i7du0QraV76f7v++1eKSkpvdpxnMhHjpxwnDjm4sWLvT6f0NDQQV+bN2/u1f52BYkQjm8XPZWcOTGbzb3GiU6nEyEhIUKn0/V6/7e//a3o6OgYwrV2bbd+br6+viIkJEQqQrpfY8eOFSdPnuzTnvuTwfmA3NqYMWPw9ddfIzs7G++99x7MZjO0Wi0mTZqExYsXIy0tDb6+vg7Fjo2NxdmzZ5GVlYX8/HxUVlbC398f0dHRSElJQWpqqnSxIv1IjpzExMQgOzsbx44dwzfffIPr16+jvr4eBoMBUVFRiI+Px3PPPYeYmBiZ1ooGwnHiOjhOHGOxWHpNX7lyZdDlHXlCtJz7KjWSMyehoaF47bXXcOzYMZw+fRrXrl1DXV2d9MTx6dOnIzU1Vbr2h6zCw8Oxb98+HD58GJ9//jmqqqpw/fp1eHt7Y/To0ZgyZQoWLFiAJUuWQK/XO/Q7PHl/ohFCCKU7QUREREREnkmdZRYREREREbkFFiRERERERKQYFiRERERERKQYFiRERERERKQYFiRERERERKQYFiRERERERKQYFiRERERERKQYFiRERERERKQYFiRERERERKQYFiREROQRvvrqKyxduhQRERHw8/PD6NGjsXz5cly5ckXprhEReTSNEEIo3QkiIiI5bdy4ES+99BI6Ozuh1Wqh0+nQ3NwMAIiIiMCJEycQEhKicC+JiDwTvyEhIiJVW79+PdauXQuTyYSdO3eipaUFTU1N2L9/PwICAnDx4kWsXbtW6W4SEXksfkNCRESqVVBQgKSkJPj7++Po0aOYMmVKr/lZWVn405/+BJPJhKtXr0Kn0ynUUyIiz8VvSIiISJU6OjqwYsUKCCGQkZHRpxgBgLlz5wIAGhsbUVpaOtRdJCIisCAhIiKVeuutt3DhwgUEBwdjxYoV/S4THBwsTV+6dGmoukZERD2wICEiIlXKyckBACQnJ0Ov1/e7TEdHhzTt4+MzJP0iIqLeWJAQEZHqXLx4EceOHQMALFy4cMDlampqpGmTySR7v4iIqC/+O4iIiFTn0KFD0vTjjz8OjUbT73I9vyG57777ZO8XERH1xYKEiIhU5+jRo9L01atXb7t8aGgogoKC5OwSERENgKdsERGR6pw7dw4A8Mc//hFCiAFf8fHxAICZM2cq2V0iIo/GgoSIiFSnrKwMADBq1KgBl2lubsbx48cBAI888siQ9IuIiPpiQUJERKrT2NgIAAgMDBxwmby8PHR0dMDHxwe/+c1vhqprRER0CxYkRESkOkIIABjwYnbgx9sCz58/H8OHDx+SfhERUV8sSIiISHXCw8MBAJcvX+53/qeffori4mJoNBpkZmYOYc+IiOhWLEiIiEh14uLiAFhPy7pVTU0Nli5dCgD4/e9/j8mTJw9p34iIqDcWJEREpDopKSkAgOPHj+PPf/4z2tvbAQBHjhxBfHw8zp8/jxkzZiArK0vJbhIREQCN6D7RloiISEWWLFmCPXv2AAC0Wi20Wi1aW1sBAPPmzcPevXthNBqV7CIREYEFCRERqZTFYsHWrVuRm5uLsrIyGAwGxMbG4tlnn8XChQuV7h4REf0/FiRERERERKQYXkNCRERERESKYUFCRERERESKYUFCRERERESKYUFCRERERESKYUFCRERERESKYUFCRERERESKYUFCRERERESKYUFCRERERESKYUFCRERERESKYUFCRERERESKYUFCRERERESKYUFCRERERESKYUFCRERERESKYUFCRERERESK+T9cp8S0zHC4zwAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Create a figure\n", "fig = plt.figure(figsize=(9, 6))\n", "ax = fig.add_subplot(111)\n", "# Plot the QFIM\n", "ax.plot(thetas, list_qfisher_elements, 's', markersize=11, markerfacecolor='none')\n", "# Plot sin^2 theta\n", "ax.plot(thetas, np.sin(thetas) ** 2, linestyle=(0, (5, 3)))\n", "# Set legends, labels, ticks\n", "label_font_size = 18\n", "ax.legend(['get_qfisher_matrix()[1][1]', '$\\\\sin^2\\\\theta$'], \n", " prop= {'size': label_font_size}, frameon=False) \n", "ax.set_xlabel('$\\\\theta$', fontsize=label_font_size)\n", "ax.set_ylabel('QFIM element $\\\\mathcal{F}_{\\\\phi\\\\phi}$', fontsize=label_font_size)\n", "ax.tick_params(labelsize=label_font_size)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can see that the outputs are consistent with the analytical results.\n", "\n", "Moreover, one can use the method `get_qfisher_norm()` to calculate the quantum Fisher-Rao norm in Eq.(10), i.e. the QFIM projection along a certain direction.\n", "\n", "As a different example, we exploit two qubits with a typical hardware-efficient ansatz\n", "\n", "$$\n", "|\\psi(\\boldsymbol{\\theta})\\rangle=\\left[R_{y}\\left( \\theta_{3}\\right) \\otimes R_{y}\\left( \\theta_{4}\\right)\\right] \\text{CNOT}_{0,1}\\left[ R_{y}\\left( \\theta_{1}\\right) \\otimes R_{y}\\left( \\theta_{2}\\right)\\right]|00\\rangle.\n", "\\tag{20}\n", "$$\n", "\n", "The corresponding QFIM reads\n", "\n", "$$\n", "\\mathcal{F}(\\theta_1,\\theta_2,\\theta_3,\\theta_4)=\\left(\\begin{array}{cc|cc}\n", "1 & 0 & \\sin \\theta_{2} & 0 \\\\\n", "0 & 1 & 0 & \\cos \\theta_{1} \\\\\n", "\\hline \n", "\\sin \\theta_{2} & 0 & 1 & -\\sin\\theta_1\\cos\\theta_2 \\\\\n", "0 & \\cos \\theta_{1} & -\\sin\\theta_1\\cos\\theta_2 & 1\n", "\\end{array}\\right).\n", "\\tag{21}\n", "$$\n", "\n", "Define the corresponding quantum circuit." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "def circuit_hardeff_2qubit():\n", " cir = Circuit(2)\n", " cir.ry()\n", " cir.cnot([0, 1])\n", " cir.ry()\n", "\n", " return cir" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "--Ry(5.330)----*----Ry(2.760)--\n", " | \n", "--Ry(4.243)----x----Ry(1.829)--\n", " \n" ] } ], "source": [ "cir = circuit_hardeff_2qubit()\n", "print(cir)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Define a QFIM calculator and calculate the quantum Fisher-Rao norm $\\boldsymbol{v}^T\\mathcal{F}\\boldsymbol{v}$ along the direction $\\boldsymbol{v}=(1,1,1,1)$ corresponding to different $\\theta$ (set $\\theta_1=\\theta_2=\\theta$)." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The QFI norm along [1, 1, 1, 1] at [0. 0. 2.75956345 1.82911766] is 5.99838655.\n", "The QFI norm along [1, 1, 1, 1] at [0.31415927 0.31415927 2.75956345 1.82911766] is 5.91733027.\n", "The QFI norm along [1, 1, 1, 1] at [0.62831853 0.62831853 2.75956345 1.82911766] is 5.83150589.\n", "The QFI norm along [1, 1, 1, 1] at [0.9424778 0.9424778 2.75956345 1.82911766] is 5.83627391.\n", "The QFI norm along [1, 1, 1, 1] at [1.25663706 1.25663706 2.75956345 1.82911766] is 5.93163433.\n", "The QFI norm along [1, 1, 1, 1] at [1.57079633 1.57079633 2.75956345 1.82911766] is 6.00792258.\n", "The QFI norm along [1, 1, 1, 1] at [1.88495559 1.88495559 2.75956345 1.82911766] is 5.85534601.\n", "The QFI norm along [1, 1, 1, 1] at [2.19911486 2.19911486 2.75956345 1.82911766] is 5.38331038.\n", "The QFI norm along [1, 1, 1, 1] at [2.51327412 2.51327412 2.75956345 1.82911766] is 4.49167993.\n", "The QFI norm along [1, 1, 1, 1] at [2.82743339 2.82743339 2.75956345 1.82911766] is 3.28057238.\n", "The QFI norm along [1, 1, 1, 1] at [3.14159265 3.14159265 2.75956345 1.82911766] is 1.98361799.\n", "The QFI norm along [1, 1, 1, 1] at [3.45575192 3.45575192 2.75956345 1.82911766] is 0.87737556.\n", "The QFI norm along [1, 1, 1, 1] at [3.76991118 3.76991118 2.75956345 1.82911766] is 0.25272329.\n", "The QFI norm along [1, 1, 1, 1] at [4.08407045 4.08407045 2.75956345 1.82911766] is 0.26702836.\n", "The QFI norm along [1, 1, 1, 1] at [4.39822972 4.39822972 2.75956345 1.82911766] is 0.91552211.\n", "The QFI norm along [1, 1, 1, 1] at [4.71238898 4.71238898 2.75956345 1.82911766] is 2.03130050.\n", "The QFI norm along [1, 1, 1, 1] at [5.02654825 5.02654825 2.75956345 1.82911766] is 3.31871778.\n", "The QFI norm along [1, 1, 1, 1] at [5.34070751 5.34070751 2.75956345 1.82911766] is 4.53459285.\n", "The QFI norm along [1, 1, 1, 1] at [5.65486678 5.65486678 2.75956345 1.82911766] is 5.40715063.\n", "The QFI norm along [1, 1, 1, 1] at [5.96902604 5.96902604 2.75956345 1.82911766] is 5.87441809.\n", "The QFI norm along [1, 1, 1, 1] at [6.28318531 6.28318531 2.75956345 1.82911766] is 5.99838655.\n", "The QFI norm along [1, 1, 1, 1] at [6.59734457 6.59734457 2.75956345 1.82911766] is 5.92209829.\n", "The QFI norm along [1, 1, 1, 1] at [6.91150384 6.91150384 2.75956345 1.82911766] is 5.83627391.\n", "The QFI norm along [1, 1, 1, 1] at [7.2256631 7.2256631 2.75956345 1.82911766] is 5.83627391.\n", "The QFI norm along [1, 1, 1, 1] at [7.53982237 7.53982237 2.75956345 1.82911766] is 5.93640235.\n", "The QFI norm along [1, 1, 1, 1] at [7.85398163 7.85398163 2.75956345 1.82911766] is 5.99838655.\n", "The QFI norm along [1, 1, 1, 1] at [8.1681409 8.1681409 2.75956345 1.82911766] is 5.86965007.\n", "The QFI norm along [1, 1, 1, 1] at [8.48230016 8.48230016 2.75956345 1.82911766] is 5.37854233.\n", "The QFI norm along [1, 1, 1, 1] at [8.79645943 8.79645943 2.75956345 1.82911766] is 4.49644803.\n", "The QFI norm along [1, 1, 1, 1] at [9.1106187 9.1106187 2.75956345 1.82911766] is 3.29010873.\n", "The QFI norm along [1, 1, 1, 1] at [9.42477796 9.42477796 2.75956345 1.82911766] is 1.98361799.\n", "The QFI norm along [1, 1, 1, 1] at [9.73893723 9.73893723 2.75956345 1.82911766] is 0.87737556.\n", "The QFI norm along [1, 1, 1, 1] at [10.05309649 10.05309649 2.75956345 1.82911766] is 0.24795494.\n", "The QFI norm along [1, 1, 1, 1] at [10.36725576 10.36725576 2.75956345 1.82911766] is 0.26702836.\n", "The QFI norm along [1, 1, 1, 1] at [10.68141502 10.68141502 2.75956345 1.82911766] is 0.90598547.\n", "The QFI norm along [1, 1, 1, 1] at [10.99557429 10.99557429 2.75956345 1.82911766] is 2.02653225.\n", "The QFI norm along [1, 1, 1, 1] at [11.30973355 11.30973355 2.75956345 1.82911766] is 3.32348596.\n", "The QFI norm along [1, 1, 1, 1] at [11.62389282 11.62389282 2.75956345 1.82911766] is 4.52505665.\n", "The QFI norm along [1, 1, 1, 1] at [11.93805208 11.93805208 2.75956345 1.82911766] is 5.40238258.\n", "The QFI norm along [1, 1, 1, 1] at [12.25221135 12.25221135 2.75956345 1.82911766] is 5.87441809.\n", "The QFI norm along [1, 1, 1, 1] at [12.56637061 12.56637061 2.75956345 1.82911766] is 5.98885053.\n" ] } ], "source": [ "qf = QuantumFisher(cir)\n", "v = [1, 1, 1, 1]\n", "# Record the QFI norm\n", "list_qfisher_norm = []\n", "num_thetas = 41\n", "thetas = np.linspace(0, np.pi * 4, num_thetas)\n", "for theta in thetas:\n", " list_param = cir.param.tolist()\n", " list_param[0] = theta\n", " list_param[1] = theta\n", " cir.update_param(list_param)\n", " # 计算 QFIM 投影\n", " qfisher_norm = qf.get_qfisher_norm(v)\n", " print(\n", " f'The QFI norm along {v} at {np.array(list_param)} is {qfisher_norm:.8f}.'\n", " )\n", " list_qfisher_norm.append(qfisher_norm)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAwgAAAIhCAYAAADq0Z1dAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAACbxElEQVR4nOzdd3hUZdrH8e+k90IJJXSCgPSiiAgBBCwIYkVUwIZdFwWxrQKuC7qK8q5lxS4oi72sXelgpYkgxUAgkAChJSG9nfePYwYCKTOZmZyZ5Pe5rrkymVOee9oz5z7nKTbDMAxEREREREQAP6sDEBERERER76EEQURERERE7JQgiIiIiIiInRIEERERERGxU4IgIiIiIiJ2ShBERERERMROCYKIiIiIiNgpQRAREREREbsAqwPwNqWlpaSlpREZGYnNZrM6HBERERERtzAMg2PHjtG8eXP8/Cq/TqAE4SRpaWm0bNnS6jBERERERDxiz549tGjRotLlShBOEhkZCZgvXFRUlMXRiIiIiIi4R1ZWFi1btrQf71ZGCcJJypoVRUVFKUEQERERkTqnumb06qQsIiIiIiJ2ShBERERERMROCYKIiIiIiNgpQRARERERETslCCIiIiIiYqcEQURERERE7JQgiIiIiIiInRIEERERERGxU4IgIiIiIiJ2ShBERERERMROCYKIiIiIiNgpQRARERERETslCCIiIiIiYqcEQURERERE7JQgiIiIiIiInRIEERERERGxU4IgIiIiIiJ2ShBERERERMROCYKIiIiIiNgpQRAREa+2cuVKRo4cSePGjfH398dmszFmzBgA3nzzTWw2G23atHFLWe7en3iva6+9FpvNxrvvvlvu8ZSUFIKDg0lISKCwsNCi6ESsFWB1ACIizkjNyONoTs1/tGPDg4iPCXVjRL5v2bJlLFu2jDZt2nDddddZHU45P/30E0OHDqW4uBibzUbDhg3x9/cnNjbW6tDEh61Zs4aFCxfStWtXrrzyynLLWrVqxfXXX8+8efN44YUXuOeeeyyKUsQ6ShBExGekZuQxbM5y8opKaryP0EB/vp+SqCThBMuWLWPmzJkkJiZ6XYIwd+5ciouLGTBgAJ999hkNGjQotzw6OpqOHTsSHx9vUYTii6ZMmYJhGEyfPh2bzXbK8oceeojXX3+dxx9/nOuvv56YmJjaD1LEQkoQRMRnHM0pJK+ohLlje5IQF+H09knp2Ux+dwNHcwqVIPiI33//HYCrrrrqlOQA4JJLLuGSSy6p7bDEh/3000+sWLGCpk2bVvrZadWqFRdeeCGffvopr776KlOnTq3lKEWspQRBRHxOQlwEXeOjrQ5DakFubi4AERHOJ4QiFXnppZcAM+n09/evdL1rr72WTz/9lJdffpkpU6ZUeKVBpK5SJ2URES9iGAZvvPEG/fv3JzIykujoaPr168fLL7+MYRhcd9112Gy2SpsCbdq0iZtvvpkOHToQFhZGREQE3bt35+GHH+bQoUPl1t21axc2m42ZM2cCsHz5cmw2W7nbm2++6fJzSk1N5ZZbbqFly5YEBwfTokULrr/+epKSkuwx2Gw2du3aZd/m5Meuv/76cnGVPV5dp+Kff/6Za665hrZt2xISEkJ4eDitW7cmMTGRf/zjH+zdu7fK2NeuXcuVV15Js2bNCA4Opl27dtx7770cPXq0yu2OHTvGE088Qf/+/WnQoAHBwcG0bNmSq666ih9//LHCbU5+LXbs2MHNN99M27ZtCQ4Odqnj9LJly+z7BkhKSuKGG24o955MmjSJ1NTUKvezf/9+7rvvPrp06UJ4eDjh4eF06dKFadOmceDAAZee18kxbty4kXHjxtG8eXNCQ0Pp3LkzTz/9NMXFxfZ9r169mjFjxtCsWTNCQkLo2rUrL7zwAoZhVBhLVlYW7733HgBXX311lc911KhRREZG8ueff7Js2bIq1xWpcwwpJzMz0wCMzMxMq0MRkZP8vjfDaH3/58bvezMs2d7TiouLjbFjxxqAARg2m82IjY01/Pz8DMAYN26cMXHiRAMwJk6ceMr2Tz75pH1dwAgLCzOCgoLs/zdr1sxYt26dff2UlBSjSZMmRnh4uAEYgYGBRpMmTcrdFi1a5NJzWrt2rREbG2uPITQ01IiIiDAAIyoqynj33Xfty5KTk+3blZVf9nyioqLKxZWSkmIYhmG88cYbBmC0bt36lLLffPNNw2az2fcfHBxsREVF2f8HjDfeeKPcNifu75133jECAwMNwIiOji732nbp0sU4duxYhc95/fr1RosWLezr+vv7G5GRkeXe11mzZp2yXXJysn2dd955x/46hYWFGeHh4RU+R0ctXbrUvu8lS5bY9x0ZGWkEBATYlzVv3tzYu3dvhftYtmyZERMTY183PDzc/tkBjNjYWGPlypU1fl4nxvjll18aISEh9tf+xPfxqquuMgzDMF555RXD39/fsNlsRnR0dLn39f7776/wOXz22Wf22IuLi6t93c4991wDMKZNm+bgKy3i3Rw9zlWCcBIlCCLeq64nCLNnz7Yf4Nx7773GoUOHDMMw66VZs2bZE4aKEoRXX33VAIyIiAjjn//8p7Fv3z7DMMykY82aNcbQoUMNwGjRosUpB7bTp083ACMxMdGtzycrK8to1aqVARitWrUyvv32W6O0tNQwDMP44YcfjC5dupQ74DwxQSjTunXrCg/ky1SWIOTk5NgPyq+99lojKSnJviw7O9tYs2aNcd999xlffPFFhfsLCwszgoODjZtuusmejOTk5BjPP/+8PWl45JFHToknLS3NiIuLMwDj0ksvNdasWWMUFhYahmEYBw4cMB555BH7AfnHH39cbtsTD6QjIiKMfv36Gb/++qt9+bZt2yp8DRxx4sF3bGysMXr0aGPLli2GYRhGQUGB8e6779pfr/Hjx5+yfUpKiv29Ov30041Vq1bZl61YscLo2LGjARgNGjQ4JcFw9HmdGGNMTIwxduxYY/fu3YZhmJ+lBx980L589uzZRmBgoHHXXXcZBw4cMAzDMI4cOWJcd911BmD4+flV+HpNnTrVAIyBAwc69Lo99NBDBmD069fPofVFvJ0ShBpSgiDivepygpCdnW0/u33jjTdWuE7ZgfzJCUJWVpb94O3rr7+ucNuioiKjT58+BmA8++yzFe7X3QnCk08+aQBGUFCQ8ccff5yyfN++feWuLrgzQfj555/tZ4qLioocjrlsf5VdpTEMw7j33nsNwEhISDhl2Q033GAAxtVXX11pGc8884wBGD169Cj3+IkH0q1bt670CkVNnHjwPWTIEKOkpOSUdf7973/br/Kc/Jrdeuut9uSiLPk80Z49e+yf3zvuuKNGz+vEGIcPH25PJk80cOBA+zo33XTTKcuLi4uNtm3bGoDxj3/8o9Lt77zzzgpjONn7779vAEZAQIBRUFDg0DYi3szR41z1QRAR8QLffvstWVlZADz88MMVrjNlyhTCwsJOefzDDz8kIyODXr16cd5551W4bUBAAOPGjQPgm2++cVPUVVu0aBEAV1xxBZ07dz5ledOmTbn11ls9UnbZsJSFhYUcPny4Rvv4+9//XuHjF198MWC24y/rRA2Qn5/PwoULAbj//vsr3e+ECRMA+O233yptt3/nnXd6rGP2Qw89hJ/fqT//Zc8rLy+PP//80/64YRj2dvu33norTZs2PWXbFi1a2N/Lsve9Io4+r/vvv7/CTsEnfr4ffPDBU5b7+/tz7rnnAmYfhpOlpaUB0Lhx42pjAGjUqBEAxcXFHDx40KFtROoCJQgiIl5g3bp1gDm8Ytu2bStcJzIykj59+pzy+OrVqwHYsmULTZs2rfT22GOPAbB7924PPYvjCgsL7UOUDh06tNL1qlrmivbt29OpUyeKioro168fTz75JBs2bKCkxLE5NBo0aEBCQkKFy5o3b26/f2Jn5bVr15Kfnw/AiBEjKn0funTpYt+msvdiwIABDsVZE/369avw8ROf15EjR+z3k5OT7f8PGzas0v0OHz4cgMOHD5OcnFzhOo4+rzPPPLPCx5s0aQKY70+7du2qXKeijuRlB/kVDZlbkRPXU4Ig9YmGORUR8QJlBx8nHqRVpKIJwcrOiubn59sPUKty4llvTzly5Ih9tJmqJjFr0aKFR8r39/dn0aJFXHLJJSQnJ/PAAw/wwAMPEBYWxtlnn82ll17KxIkTK7wiA2YyVpmAgOM/nUVFRfb7Ze8DUOmVgZNV9l7ExcU5tH1NVPbcKnte6enp9vuOvpfp6ekVJrqOPq/qYnTk/TnxOZQp+34EBwc7FEdo6PH5Uhz5bonUFbqCICLiRWoy1nrZWfGxY8dimH3LqrydOJxoXdajRw+2bt3Khx9+yM0330zXrl3Jy8vj+++/5/bbb6dTp072qxzucOLViby8PIfei8GDB1e4r6rG5/dlVj+vhg0bAhVfXajIiVdSyrYVqQ+UIIiIeIGyNtEnnoWuSEXj1Je1Ca+NpkOOatCggf1gsKqx9asbd99VQUFBXHrppcybN4/ff/+dgwcP8tJLL9GgQQP27NnDxIkT3VbWiW3zvem9cNWJZ/2rmjfixGWevALiirLv2YkH/lU5cT1H+y2I1AVKEEREvEDv3r0B88CysjP82dnZrF279pTHy9p1r127ln379jlddlmHVaOSyaVqIigoiO7duwOwdOnSStdbsmSJ28p0RMOGDbnlllt48sknAVi/fn2NOzGf7IwzziAoKAiA//3vf27Zpzdo27atvS3+4sWLK13v+++/B8zXuLJ+NFY7/fTTAdi5c6dD65f1pWjWrJm947tIfaAEQUTEC4wYMYKoqCgAZs2aVeE6zz77bIVt1q+44gpiYmIoKiri3nvvrfJAv7S0lIyMjHKPlZV78uOuGjt2LADvv/8+27ZtO2V5eno6L730klvLLFNQUFDl8hPbllc0ok9NhIeH22fnffLJJ0lJSalyfUfPYlvNZrPZ38t58+axf//+U9ZJS0tj3rx5APbRsrzRoEGDAPjll18cWv/nn38ut51IfeHzCcJ3333HlVdeSevWrQkJCSE0NJR27dpxzTXXsHz5cqvDExFxSHh4uH1ozFdeeYVp06bZDyCPHTvGk08+yYwZM4iNjT1l25iYGObOnQuYQ0yOHDmSn3/+mdLSUsBMCrZs2cKcOXPo0qULn3/+ebntu3btCsDmzZv54Ycf3PacbrvtNlq0aEFBQQHnn38+ixcvticvP//8M8OGDbPH6G6LFi1iwIABzJs3r9zZ4pKSEr755hseeOABAPr371/ha1pTs2bNonnz5hw6dIj+/fuzYMECjh07Zl9+8OBBPvzwQy655BKvPpA+2UMPPURMTAxHjhxh2LBh5T4nq1evZtiwYWRkZNCgQQP7a+uNyvp87N6926GO5GUJQmJioifDEvE6PjuKkWEY3HbbbfYzFnD8jFBycjLJycksXLiQe+65h2eeecaqMEXEA5LSs2t1u9oybdo01q9fzwcffMBTTz3FnDlziI6OJisri5KSEsaPH4/NZmP+/PmEhISU23bixInk5eXxt7/9ja+++oqvvvqK4OBgIiIiyMrKKjeiy8kdoQcPHkzHjh3Ztm0bAwYMIDY21n5V4emnn+byyy+v0fOJiori448/Zvjw4ezatYthw4YRFhaGn58f2dnZREZG8uqrr9rPTruTYRj88MMP9gPZstfi6NGj9qSkefPmvP76624tt1mzZnz//feMGTOG7du3M2HCBPz8/IiJiaGgoICcnBz7ulUNGeptWrRowSeffMLFF1/M5s2bGTBgAOHh4QD25xQTE8Mnn3xS5UhHVuvcuTM9evTgt99+47PPPmPSpEmVrrt9+3a2bdtGUFBQjb8DIr7KZxOEN998054cXH755cyaNYsOHToAsG3bNu6//34+/fRTnn32WQYOHMgll1xiZbgi4gax4UGEBvoz+d0NNd5HaKA/seFB7gvKjQICAnjvvfd4/fXXefnll9m8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AwJq/PNaq6p7XwAWLFjAzTffTH5+PgBBQUFERkaSkpLCzp07+eyzz+jevTs9e/Yst929997Ls88+C4DNZiM6OpqMjAyWLFnCkiVLePvtt/nkk0+IjIwst507Pgv19f2q698jfRZrkbOZR+vWrQ0/Pz/j3XffdTprOXjwoK4giIg44OWXXzYAY9iwYfbHfPkKwr///W977Fu3bi23bOXKlQZg+Pn5GU8++aRx+PBh+7JDhw4Z33zzjTFx4kQjNTW13HaOnPmMjY01oqOjjTfffNN+9m7Pnj3GqFGj7GVu3769yth37dplj33VqlWVrvfrr7/a1/vpp5+qe0kq5S3vi2EYxueff27YbDYDMAYMGGCsXLnSKCkpMQzDMAoKCoyVK1cakyZNMjZv3lxuu+eee86+35tvvtnYt2+fYRiGkZ2dbTz77LP2zrhjx44tt11NPwsnqu33qzbV5++RPovu4bFOypdeeqnh5+dn3H///U4HpU7KIvVcQbZjt+LCircvLnJ8H6WlFe+jMM+x7QsrvhRcG/bu3WtER0cboaGh5Toq+mqCcPToUaNZs2YGYAwcOPCU5U8++aQBGCNGjHBqv44c2ADGkiVLTlmen59vNG/e3ACMxx9/vMpyXn/9dfu+4uLijCZNmlR4a9CggX29Ew8mnOUt70tRUZHRtm1bAzDOOecco6CgwKH95ubm2l+LcePGVbjOiQe6a9assT9e08/CiWr7/aot9fl7pM+i+3isiVHv3r35+OOPWbdunbObikh9N6u5Y+td+DScOenUx7f+D96/zrF93LcDwhud+vjHN8Mfn1a/fetz4PovHCvLzW655RYyMzN58sknadeunSUxuEtpaSnjx49n3759hISE8Pzzz5+yTkxMDAAHDx6kpKQEf39/t5U/YMCACjt9BgcHc9555/HGG2+wcePGKvexatUq+/309PRqy2zSpAkNGjRwPtha5Mj7snTpUpKTkwF49tlnCQoKcmjf3333HUeOHAFgxowZFa5z++23M3v2bPbt28fChQvp06cP4J7PQn19v+ry90ifxdrn9EzKZS9cTRIEf39/WrVqRevWrZ3eVkSkPnj77bf54osv6NmzJ/fee6/L+3v33Xdp2rRphbenn34agKeffrrSdX744QeXyv/b3/7G559/DsALL7xQ4egc5557LiEhIaxfv56BAwfy2muv2Q8GXNWvX79KlzVvbiasZQcQlfnjjz8Asx2zYV55r/A2cOBAAM4555xq4/KF96WsjKZNm9K3b1+H971mzRoAWrZsyWmnnVbhOv7+/gwdOrTc+uCez4In3q8333wTm81W49vXX3/t1HM4WX3/HumzWPucvoKQmJjI0qVLATAMA5vN5vC2MTEx7Nq1y9kiRaSueCjNsfX8Kzk71GmU4/sIDKv48UtehjH/qX57m9PnT1x24MABJk+ejL+/P6+88opbOqvl5eVx4MCBKtfJyckhJyenwmWFhYU1Lnvq1Kn2M53PPvssN9xwQ4XrtW/fnldffZVbb72VH3/80T6Ua+PGjRkyZAhXX301o0ePdur3pszJnQ5PVPb6nthBsCI7d+4EqHJIyezsbH766ScA+8FGVXzhfdm/fz+A0yf1ys6UxsfHV7leixYtyq0P7vkseOL9spK+R/osWsHpX8DQ0FASExNJTEys0YdMROqxoHDHbv6BFW/vH+D4PiqrnwJDHNs+sOLRJjzpgQce4PDhw9x888106tSJ7OzscrcTDworeqwi1113XaVnraZPnw7A9OnTK11n8ODBNXou06ZNY86cOYB5Jnzy5MlVrn/NNdewe/duXnrpJcaOHUvLli05ePAg7733HmPGjCExMZGsrKwaxeKqsnKjo6MrXeezzz6jqKiIgIAALr/88mr36Qvvi1W/8a5+Fjzxfo0bN46DBw/W+Hbuuec6/0Kg71EZfRZrX+2fIhMRkQqVXb7+z3/+Q2Rk5Cm32bNn29cte2zatGlWhVup++67j6eeegqAf/3rX0yZMsWh7Ro0aMAtt9zCokWLSElJISkpiQceeACbzcbKlSsrbUPsaYZhAFUfpJQNZThq1Cji4uJqJS5nOfu+NG3aFIDdu3c7VU7Z89+7d2+V65Utr+j1cuWz4In3Kzg4mEaNGtX4FhhYyUmPKuh7dPx90Wex9ilBEBERt5k6daq9Df2//vUv7rvvvhrvq3379syePZurr74aMDscWqGsjfW+ffsqXL5ixQqWLl2KzWaz7OCrOjV5X84++2zAbN5xYtvs6pS1Ed+7dy/bt2+vcJ2SkhJ7c+Uzzjij2n0681mor+9XZerC90ifxdqnBEFExEssW7asyo5sZU1PAPtjc+fOtS7gk0ydOrVccwhHD2oKCgqqXF42uZCfnzU/WWUHDZ999tkpyw4fPsyNN94IwN13311h51Gr1fR9GTJkiH0UrXvuucfhfg/Dhw+nYcOGQOUjx8ybN4+0NLM/0bhx4+yPu+OzUF/fr7r8PdJnsfYpQRAREZed2Fb6mWeecbg5BMCdd97JlVdeyYcffliuk2B2djYvvfQS8+fPB2DkyJHuDdpBEydOBOCnn37i4Ycfth84rFy5koEDB5KUlMSAAQN48sknLYmvKq68L/7+/jz//PPYbDZWrVrFueeey6pVqygtLQXMjtLLli3j2muvtY/WAuaBU9nB2H//+19uvfVWe4fs3Nxc/v3vf9vb0o8dO9Y+OiK457NQX9+vuvw90mfRAg7NqlCPaKI0EfFW3jpR2u7du+1x+fn5VToZUNntqaeeKrd92URNZbeIiAgjJiam3GPnnHOOkZ2dXeF2VU3wVNVzK3v+iYmJ1T7HcePG2WMJDAw0wsLC7P9feOGFxrFjxxx5qRziLe9LmbfeessIDg627ys4ONho2LChfQZawFi/fv0p291zzz325TabzYiNjS23zZAhQ4ysrKxy29T0s3Cy2ny/3EXfo+rfF30WXeexidJEREROVHYWr+x+dcN3Zmdnl/v/kUceoU+fPixdupQtW7awf/9+srOziYuLo0ePHowbN44JEya4deInZ7399tv06dOHN954g507dxIaGso555zDTTfdxBVXXGFZXFVx9X0pM2HCBAYNGsT//d//8e2337J7927y8vJo3bo13bp147LLLqNz586nbPfMM88watQoXnjhBVavXs3hw4eJjIykZ8+ejB8/vsL31F2fhfr4ftWH75E+i7XHZhh/dbEWwBySKjo6mszMTKKioqwOR0RERETELRw9zlUfBBERERERsavVJkaPPfYYAGeddRYjRoyozaJFRERERMQBtdrEyM/Pzz5ZxMCBA5k1a5Z9bFtvoSZGIiIiIlIXeW0TI+OvsbtXrFjBwIEDueiii2o7BBERERERqUStNjFKTk4GIDU1laVLl7J48WKWLFlSmyGIiIiIiEgVLB/FqLCwkKCgICtDKEdNjERERESkLvLaJkYn86bkQERERESkvrM8QRAREREREe9RqwlCTk4ON9xwAzfeeGNtFisiIiIiIg6q1T4Ihw8fpnHjxthsNkpKSmqrWKeoD4KIiIiI1EU+0wdBRERERES8hxIEERERERGxc3oehMcee6zGheXm5tZ4WxERERER8Tyn+yD4+flhs9lqXKBhGOqDICIiIiJSyxw9zq3xTMpNmjQhODjYqW1KS0vZs2dPTYsUEREREREPczpBaNWqFXv27GHu3LlceeWVTm176NAh4uLinC1SRERERERqidOdlPv06QPAunXrnC7MlaZJIiIiIiLieU4nCL1798YwjBolCCIiIiIi4t2cbmLkyhUEf39/WrVqhZ+fRlcVEREREfFGTicIiYmJLF26FDg+IpGjYmJi2LVrl7NFioiIiIhILXE6QQgNDSUxMdETsYiIiIiIiMXU1kdEREREROyUIIiIiIiIiJ0SBBERERERsVOCICIiIiIidkoQRERERETETgmCiIiIiIjYKUEQERERERE7JQgiIiIiImLn9ERprnjssccAOOussxgxYkRtFi0iIiIiIg6wGYZh1FZhfn5+2Gw2AAYOHMisWbM4++yza6t4h2RlZREdHU1mZiZRUVFWhyMiIiIi4haOHufWehMjwzAwDIMVK1YwcOBALrrootoOQUREREREKlGrTYySk5MBSE1NZenSpSxevJglS5bUZggiIiIiIlKFWm1iVJHCwkKCgoKsDKEcNTESERERkbrIa5sYncybkgMRERERkfrO8gRBRERERES8hxIEERERERGxq9UEIScnhxtuuIEbb7yxNosVEREREREH1Won5cOHD9O4cWNsNhslJSW1VaxT1ElZREREROoin+mkLCIiIiIi3kMJgoiIiIiI2Dk9Udpjjz1W48Jyc3NrvK2IiIiIiHie030Q/Pz8sNlsNS7QMAz1QRARERERqWWOHuc6fQWhTJMmTQgODnZqm9LSUvbs2VPTIkVERERExMOcThBatWrFnj17mDt3LldeeaVT2x46dIi4uDhnixQRERERkVridCflPn36ALBu3TqnC3OlaZKIiIiIiHie0wlC7969MQyjRgmCiIiIiIh4N6ebGLlyBcHf359WrVrh56fRVUVEREREvJHTCUJiYiJLly4Fjo9I5KiYmBh27drlbJEiIiIiIlJLnE4QQkNDSUxM9EQs9UZqRh5HcwprvH1seBDxMaFujMh36LUT8T363tacXjsRsUKNhzn1JllZWfznP//h008/5c8//yQrK4vGjRvToUMHEhMTmTx5MjExMVaHCZiV/bA5y8krqvk8EKGB/nw/JbHeVfp67UR8j763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BZKkYDBoZ7TTVmJi4gk/Njqfx87xsRYsWKD09HS1tbVp5cqVJ/x73OZExyQrK0u//OUvu2z3eDyaMWOGpCPvny+++OKEfs+phALBQeFwWO+9954kady4cZ328Xg8Gjt2rCRpw4YNtmVD11JSUsx2W1ubg0ncZ/bs2QqFQnrkkUd05plnOh3HtaIfbgoLC9u9H+CcgQMHSpI++eQTtba2dmhvaWnRv/71L0nSr371Kzuj4Sg7d+5UbW2tpK7n/vT0dOXn50ti7o8Xbpv7KRAc9MUXXygSiUiShg0b1mW/aNt//vMf7d2715Zs6NrmzZvN9vDhw50L4jJLly7V22+/rSuvvFK///3vnY7jWocOHTIrZyNHjlRtba3mzJmjnJwcJScnq3fv3iooKNCbb77pcFJ3mTdvniRp165dKioq0q5du0zbzp07df3116uqqkrnnnuubr75ZqdiQtKnn35qto9n7v/888+7PRN+XHTuT05O1uDBg50NYwMKBAd9++23Zrtfv35d9otti30M7Ld//37df//9kqT8/HwNGTLE4UTuUFdXp9LSUvn9fnMgJpyxe/duc+rlqqoqDRs2TEuXLlVDQ4PS0tLU0NCgtWvXasKECZo9ezanarRJQUGBKioqlJycrD//+c8aNGiQUlNTlZqaqry8PG3evFnz5s3Thx9+qMzMTKfjutpPnfubmprYLcxh1dXVeuqppyRJkydPdsV7iALBQYFAwGynpqZ22S+2LfYxsFckEtHvfvc77dmzRykpKXrsscecjuQac+fO1YEDB1ReXm52pYAz9u3bZ7bvueceeb1erVmzRsFgUPv27VNNTY0KCwslScuWLeNYERstXLhQr776qs466yxJUnNzs5qbmyVJhw8fVjAY1IEDB5yMCDH3n2qam5tVWFiocDisXr166YEHHnA6ki0oEIDj9Ic//EFr166VJD3++OM6//zzHU7kDitWrNCbb76pCy64QLfccovTcVwvultkdPvZZ5/VpEmT5PV6JUn9+/dXZWWlRowYIUm67777Ot0nHidXOBzW5MmTNWHCBPXv318bNmzQd999p++++04bNmzQ0KFDtXz5co0aNUo7duxwOi5wSmhtbdXUqVO1fft2eb1erVy5Un379nU6li0oEByUkZFhtsPhcJf9YttiHwP7lJSUmBWDiooKczYDdK/6+notXLhQ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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Create a figure\n", "fig= plt.figure(figsize=(9, 6))\n", "ax = fig.add_subplot(111)\n", "# Plot the QFI norm\n", "ax.plot(thetas, list_qfisher_norm, 's', markersize=11, markerfacecolor='none')\n", "analytical_qfi_norm = 4 + 2 * np.sin(thetas) + 2 * np.cos(thetas) - 2 * np.cos(thetas) * np.sin(thetas)\n", "ax.plot(thetas, analytical_qfi_norm, linestyle=(0, (5, 3)))\n", "# Set legends, labels, ticks\n", "ax.legend(\n", " ['get_qfisher_norm()', '$4+2\\\\sin\\\\theta+2\\\\cos\\\\theta-2\\\\sin\\\\theta\\\\cos\\\\theta$'], \n", " loc='best', prop= {'size': label_font_size}, frameon=False,\n", ")\n", "ax.set_xlabel('$\\\\theta$', fontsize=label_font_size)\n", "ax.set_ylabel('QFI norm along $v=(1,1,1,1)$', fontsize=label_font_size)\n", "ax.set_ylim([-1, 9])\n", "ax.tick_params(labelsize=label_font_size)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can see that the outputs are consistent with the analytical results." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Calculate the effective quantum dimension\n", "\n", "With Paddle Quantum, one can obtain the effective quantum dimension (EQD) by simply using the method `get_eff_qdim()`. For example, the EQD of the hardware-efficient ansatz shown above can be calculated as follows." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "--Ry(5.171)----*----Ry(3.574)--\n", " | \n", "--Ry(5.103)----x----Ry(1.247)--\n", " \n", "The number of parameters is 4.\n", "The EQD is 3. \n", "\n" ] } ], "source": [ "cir = circuit_hardeff_2qubit()\n", "qf = QuantumFisher(cir)\n", "print(cir)\n", "print(f'The number of parameters is {len(cir.param.tolist())}.')\n", "print(f'The EQD is {qf.get_eff_qdim()}. \\n')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this example, the EQD is smaller than the number of parameters, which can be easily seen from the fact that the two $R_y$ gates on the control wire can be merged without changing anything. This inefficiency can be fixed by simply replacing one of the $R_y$ gates with a $R_x$ gate, and then the EQD will increase by one.\n", "\n", "If we continue to add gates to the circuit, can we make the EQD grow indefinitely? The answer is clearly no. Provided $n$ qubits, an obvious upper bound can be given by the real number degrees of freedom in a general quantum state, which is equal to $2\\cdot 2^n-2$. The minus two reflect the two constraints of normalization and global phase independence. This can be verified by the following example." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "--Ry(4.515)----Rx(5.898)----*----Ry(1.415)----Rx(2.717)--\n", " | \n", "--Ry(1.522)----Rx(2.778)----x----Ry(3.684)----Rx(0.956)--\n", " \n", "The number of parameters is 8.\n", "The EQD is 6. \n", "\n" ] } ], "source": [ "def circuit_hardeff_overparam():\n", " cir = Circuit(2)\n", " cir.ry()\n", " cir.rx()\n", " cir.cnot([0, 1])\n", " cir.ry()\n", " cir.rx()\n", "\n", " return cir\n", "\n", "\n", "cir = circuit_hardeff_overparam()\n", "qf = QuantumFisher(cir)\n", "print(cir)\n", "print(f'The number of parameters is {len(cir.param.tolist())}.')\n", "print(f'The EQD is {qf.get_eff_qdim()}. \\n')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Calculate the CFIM and effective dimension\n", "\n", "Here we exploit a brief example to show how to calculate the effective dimension defined in Eq.(16) with respect to a quantum neural network with Paddle Quantum." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Define our quantum neural network along with the loss function using PaddlePaddle." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "import paddle.nn as nn\n", "from paddle_quantum.ansatz.layer import ComplexEntangledLayer\n", "from paddle_quantum.gate import IQPEncoding, RX\n", "from paddle_quantum.loss import ExpecVal\n", "from paddle_quantum.hamiltonian import Hamiltonian\n", "from paddle_quantum.state import zero_state\n", "\n", "class QuantumNeuralNetwork(nn.Layer):\n", " def __init__(self, num_qubits, depth, encoding):\n", " super().__init__()\n", " self.num_qubits, self.encoding = num_qubits, encoding\n", " self.S = [[i, i + 1] for i in range(num_qubits - 1)]\n", " self.init_state = zero_state(num_qubits)\n", " self.loss_func = ExpecVal(Hamiltonian([[1.0, 'z0']]))\n", " \n", " if encoding == 'IQP':\n", " self.complex_layer = nn.LayerList([ComplexEntangledLayer(num_qubits=num_qubits, depth=depth)])\n", " elif encoding == 're-uploading':\n", " self.complex_layers = nn.LayerList([ComplexEntangledLayer(num_qubits=num_qubits) for _ in range(depth + 1)])\n", " else:\n", " raise RuntimeError('Non-existent encoding method')\n", "\n", " def forward(self, x):\n", " if not paddle.is_tensor(x):\n", " x = paddle.to_tensor(x, dtype='float32')\n", "\n", " state = self.init_state\n", " if self.encoding == 'IQP':\n", " state = IQPEncoding(x, qubits_idx=self.S)(state)\n", " state = self.complex_layer[0](state)\n", " else:\n", " for i in range(depth):\n", " state = self.complex_layers[i](state)\n", " for j in range(num_qubits):\n", " state = RX(j, param=x[j].item())(state)\n", " state = self.complex_layers[depth](state)\n", "\n", " return self.loss_func(state) * 0.5 + 0.5" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Finally, define a CFIM calculator and calculate the effective dimension corresponding to different size of training samples." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "running in get_gradient: 100%|##################################| 1000/1000 [00:26<00:00, 37.54it/s]\n" ] } ], "source": [ "from paddle_quantum import set_backend\n", "\n", "# Configure model parameters\n", "num_qubits = 4\n", "depth = 2\n", "num_inputs = 100\n", "num_thetas = 10\n", "set_backend('state_vector')\n", "# Define the CFIM calculator\n", "cfim = ClassicalFisher(model=QuantumNeuralNetwork,\n", " num_thetas=num_thetas,\n", " num_inputs=num_inputs,\n", " num_qubits=num_qubits,\n", " depth=depth,\n", " encoding='IQP')\n", "# Compute the normalized classical Fisher information\n", "fim, _ = cfim.get_normalized_cfisher()\n", "# Compute the effective dimension for different size of samples\n", "n = [5000, 8000, 10000, 40000, 60000, 100000, 150000, 200000, 500000, 1000000]\n", "effdim = cfim.get_eff_dim(fim, n)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Plot the ratio of the effective dimension over number of parameters vs. sample size." ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "the number of parameters: 24\n" ] }, { "data": { "image/png": "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/DiebBWTnJyMhIQEDBo0SOOSxQ1ZEssIExEREVE9EJScGBkZ4fLly9WOuXz5ssbleivy9vaGk5MT9u7di5iYGOV1qVSKgIAAGBkZYfr06crr6enpiI+PV9tepWiKGBgYiOzsbOX1jIwMbN68GXp6epgwYUKlMSgOws+aNavKOCUSCfz8/HDjxg189dVXyutyuRxLly4FALz22muafekGLollhImIiIioHghKToYPH47ff/8dgYGBKC4uVrlXXFyMdevW4dixY8q+JDVhYGCAHTt2oKysDIMHD8brr7+OxYsXo2fPnrh27RoCAgJUVjyWLl2Kbt264aefflKZZ+DAgVi0aBGuXr0KNzc3/N///R9ef/119OzZE7du3cJHH32ELl26qH1+cXExvv/+e7UkqDKBgYGwt7fH/PnzMXHiRLz33nsYOHAg9u3bB19fX/j5+dX4+zc0LCNMRERERPVF0J6jTz75BH/88Qfef/99bN68GX369IG1tTUyMzNx8eJFZGZmol27dli/fr2goDw9PXHmzBmsXLkSwcHBKCkpgaurKz7++OMaVc7auHEjXF1d8cUXX2DPnj0QiUR49tln8eWXX2L8+PGVvufQoUPIysrC5MmTYWlpWe38tra2OH/+PD744AP88ssv+Pnnn+Hg4IAPP/wQS5YsaRKVrVhGmIiIiIjqi0j+5IEJDWVkZOC9997DgQMHUFhYqLxuYmKCyZMnIzAwEG3bttVaoM1BTk4OzM3NIZVKlX1SdC0sPhMz90TDpa0Yv79ds4aaRERERESA5s+5gk9rt23bFnv27ME333yDhIQESKVSmJubo0uXLoLOmlDDxDLCRERERFRfal1KytDQEM8884w2YqEGSFFG2KENK3URERERUd0SdCCemg9FGeGOXDkhIiIiojrG5ISqpdjW5cDkhIiIiIjqGJMTqlLFMsId2eOEiIiIiOoYkxOqEssIExEREVF9YnJCVapYqasp9GwhIiIiooaNyQlVSVGpi2WEiYiIiKg+1LqUcGxsLOLj45Gfn49p06ZpIyZqIJIfVepiGWEiIiIiqg+CV06io6PRq1cvuLq6YtKkSfD391fei4iIQMuWLXHkyBFtxEg6cvPRygnLCBMRERFRfRCUnFy9ehVeXl64efMmFi5ciBEjRqjcf+GFF9CmTRv873//00qQpBvJLCNMRERERPVI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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = plt.figure(figsize=(9, 6))\n", "ax = fig.add_subplot(111)\n", "print('the number of parameters: %s' % cfim.num_params)\n", "ax.plot(n, np.array(effdim) / cfim.num_params)\n", "label_font_size = 14\n", "ax.set_xlabel('sample size', fontsize=label_font_size)\n", "ax.set_ylabel('effective dimension / number of parameters', fontsize=label_font_size)\n", "ax.tick_params(labelsize=label_font_size)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Conclusion\n", "\n", "This tutorial briefly introduces the concept of classical and quantum Fisher information and their relationship from a geometric point of view. Then, we illustrates their applications in quantum machine learning by taking effective dimension as an example. Finally, we show how to actually perform calculations of these quantities with Paddle Quantum." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "_______\n", "\n", "## References\n", "\n", "[1] Meyer, Johannes Jakob. \"Fisher information in noisy intermediate-scale quantum applications.\" [arXiv preprint arXiv:2103.15191 (2021).](https://arxiv.org/abs/2103.15191)\n", "\n", "[2] Haug, Tobias, Kishor Bharti, and M. S. Kim. \"Capacity and quantum geometry of parametrized quantum circuits.\" [arXiv preprint arXiv:2102.01659 (2021).](https://arxiv.org/abs/2102.01659)\n", "\n", "[3] Stokes, James, et al. \"Quantum natural gradient.\" [Quantum 4 (2020): 269.](https://quantum-journal.org/papers/q-2020-05-25-269/)\n", "\n", "[4] Mari, Andrea, Thomas R. Bromley, and Nathan Killoran. \"Estimating the gradient and higher-order derivatives on quantum hardware.\" [Physical Review A 103.1 (2021): 012405.](https://journals.aps.org/pra/abstract/10.1103/PhysRevA.103.012405)\n", "\n", "[5] Datta, Nilanjana, and Felix Leditzky. \"A limit of the quantum Rényi divergence.\" [Journal of Physics A: Mathematical and Theoretical 47.4 (2014): 045304.](https://iopscience.iop.org/article/10.1088/1751-8113/47/4/045304)\n", "\n", "[6] Abbas, Amira, et al. \"The power of quantum neural networks.\" [Nature Computational Science 1.6 (2021): 403-409.](https://www.nature.com/articles/s43588-021-00084-1)" ] } ], "metadata": { "interpreter": { "hash": "2ab84abaf8d5bbc8765aba8eb82d11e7069f2ff20e8f79b8a9cdeccefd2ac4da" }, "kernelspec": { "display_name": "Python 3.8.13 ('pq_new')", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.13" } }, "nbformat": 4, "nbformat_minor": 5 }