{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Filtering and Thresholding Design Parameters and Broadband Objective Functions\n", "\n", "While cheap gradients are always appreciated, we noticed that the optimizer and adjoint solver often produce devices that are impossible to fabricate. They tend to continuously vary the refractive index and produce small feature sizes. Furthermore, the lack of constraint often throws the optimizer into local minima, stunting the overall progress of the solver.\n", "\n", "To overcome this, the Topology Optimization (TO) community often implements linear and nonlinear functional transforms on the design parameters before projecting them onto the simulation domain. For example, we can blur many of the small design parameters together using a conic filter, and subsequently threshold using sigmoid like functions.\n", "\n", "The resulting parameters can include constraints, like minimum lengths scales, and project the cost function into a more friendly (and sometimes less friendly) design space.\n", "\n", "We'll examine how to accomplish these goals using native `autograd` functions and meep's adjoint solver." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Using MPI version 3.1, 1 processes\n" ] } ], "source": [ "import meep as mp\n", "import meep.adjoint as mpa\n", "import numpy as np\n", "from autograd import numpy as npa\n", "from autograd import tensor_jacobian_product, grad\n", "import nlopt\n", "from matplotlib import pyplot as plt\n", "from matplotlib.patches import Circle\n", "from scipy import special, signal\n", "mp.quiet(quietval=True)\n", "Si = mp.Medium(index=3.4)\n", "SiO2 = mp.Medium(index=1.44)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's choose our basic geometry parameters, along with the frequency range to simulate. If our frequency points are too close together than the resulting adjoint simulation may take longer to simulate each iteration." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "waveguide_width = 0.5\n", "design_region_width = 2.5\n", "design_region_height = 2.5\n", "\n", "waveguide_length = 0.5\n", "\n", "pml_size = 1.0\n", "\n", "resolution = 30\n", "\n", "frequencies = 1/np.linspace(1.5,1.6,10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we'll specify our smoothing filter radius (in microns). This is determined by our minimum length scale and erosion threshold point. In this example, we won't actually enforce the length scale constraints, but the following machinery is required to do so.\n", "\n", "We also need to specify the number of design parameters per meep pixel we want to set up." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.20124611797498096\n" ] } ], "source": [ "minimum_length = 0.09 # minimum length scale (microns)\n", "eta_i = 0.5 # blueprint (or intermediate) design field thresholding point (between 0 and 1)\n", "eta_e = 0.55 # erosion design field thresholding point (between 0 and 1)\n", "eta_d = 1-eta_e # dilation design field thresholding point (between 0 and 1)\n", "filter_radius = mpa.get_conic_radius_from_eta_e(minimum_length,eta_e)\n", "print(filter_radius)\n", "design_region_resolution = int(1*resolution)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As before, we'll generate our simulation cell with the specified sources, boundary layers, geometry, etc." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "Sx = 2*pml_size + 2*waveguide_length + design_region_width\n", "Sy = 2*pml_size + design_region_height + 0.5\n", "cell_size = mp.Vector3(Sx,Sy)\n", "\n", "pml_layers = [mp.PML(pml_size)]\n", "\n", "fcen = 1/1.55\n", "width = 0.2\n", "fwidth = width * fcen\n", "source_center = [-Sx/2 + pml_size + waveguide_length/3,0,0]\n", "source_size = mp.Vector3(0,Sy,0)\n", "kpoint = mp.Vector3(1,0,0)\n", "src = mp.GaussianSource(frequency=fcen,fwidth=fwidth)\n", "source = [mp.EigenModeSource(src,\n", " eig_band = 1,\n", " direction=mp.NO_DIRECTION,\n", " eig_kpoint=kpoint,\n", " size = source_size,\n", " center=source_center)]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's set up our design region. The defauly grid type behaves just like any other geometry object -- the last object in the tree overides any objects underneath it. In some cases, it's important to *average* overlapping design regions, i.e. to enforce particular symmetries. To enable this capability, we'll set our design variables to use the `U_SUM` grid type." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "Nx = int(design_region_resolution*design_region_width)\n", "Ny = int(design_region_resolution*design_region_height)\n", "\n", "design_variables = mp.MaterialGrid(mp.Vector3(Nx,Ny),SiO2,Si,grid_type='U_SUM')\n", "design_region = mpa.DesignRegion(design_variables,volume=mp.Volume(center=mp.Vector3(), size=mp.Vector3(design_region_width, design_region_height, 0)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The optimizer doesn't know anything about the geometry outside of the design region. We can \"hint\" what parts of the design must be waveguides by forcing boundry constraints. We'll build bitmasks that map the border of the design regions to either silicon or silicon dioxide." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "x_g = np.linspace(-design_region_width/2,design_region_width/2,Nx)\n", "y_g = np.linspace(-design_region_height/2,design_region_height/2,Ny)\n", "X_g, Y_g = np.meshgrid(x_g,y_g,sparse=True,indexing='ij')\n", "\n", "left_wg_mask = (X_g == -design_region_width/2) & (np.abs(Y_g) <= waveguide_width/2)\n", "top_wg_mask = (Y_g == design_region_width/2) & (np.abs(X_g) <= waveguide_width/2)\n", "Si_mask = left_wg_mask | top_wg_mask\n", "\n", "border_mask = ((X_g == -design_region_width/2) | \n", " (X_g == design_region_width/2) | \n", " (Y_g == -design_region_height/2) | \n", " (Y_g == design_region_height/2))\n", "SiO2_mask = border_mask.copy()\n", "SiO2_mask[Si_mask] = False" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Next, we'll define various filters that perform smoothing, projection, and material scaling. We'll be sure to use autograd so that we can easily backpropogate our gradient provided by the adjoint solver. We have some smoothing and thresholding filters already defined in the adjoint package that we'll use here." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "def mapping(x,eta,beta):\n", " x = npa.where(Si_mask.flatten(),1,npa.where(SiO2_mask.flatten(),0,x))\n", " # filter\n", " filtered_field = mpa.conic_filter(x,filter_radius,design_region_width,design_region_height,design_region_resolution)\n", " \n", " # projection\n", " projected_field = mpa.tanh_projection(filtered_field,beta,eta)\n", " \n", " # interpolate to actual materials\n", " return projected_field.flatten()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's build the geometry and simulation objects. We can force a rotational symmetry by adding extra blocks with the same design variables, but different basis vectors (`e1`, `e2`, etc.) In our case, we need one additional block object rotated by 90 degrees.\n", "\n", "Because our design variables are using the `U_SUM` scheme, the adjoint solver will search for all of the material grids at each point in our design region and average the overlapping design variables. This way, we can enforce our symmetry constraint." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "geometry = [\n", " mp.Block(center=mp.Vector3(x=-Sx/4), material=Si, size=mp.Vector3(Sx/2, 0.5, 0)), # horizontal waveguide\n", " mp.Block(center=mp.Vector3(y=Sy/4), material=Si, size=mp.Vector3(0.5, Sy/2, 0)), # vertical waveguide\n", " mp.Block(center=design_region.center, size=design_region.size, material=design_variables), # design region\n", " mp.Block(center=design_region.center, size=design_region.size, material=design_variables,\n", " e1=mp.Vector3(x=-1).rotate(mp.Vector3(z=1), np.pi/2), e2=mp.Vector3(y=1).rotate(mp.Vector3(z=1), np.pi/2))\n", "]\n", "\n", "sim = mp.Simulation(cell_size=cell_size,\n", " boundary_layers=pml_layers,\n", " geometry=geometry,\n", " sources=source,\n", " default_material=SiO2,\n", " resolution=resolution)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's formulate our broadband objective function. To keep it simple we'll just minimize the sum of the error, where the error is the L2 norm between the transmission and 1 (i.e. the desired profile)." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "mode = 1\n", "\n", "TE0 = mpa.EigenmodeCoefficient(sim,mp.Volume(center=mp.Vector3(x=-Sx/2 + pml_size + 2*waveguide_length/3),size=mp.Vector3(y=Sy)),mode)\n", "TE_top = mpa.EigenmodeCoefficient(sim,mp.Volume(center=mp.Vector3(0,Sx/2 - pml_size - 2*waveguide_length/3,0),size=mp.Vector3(x=Sx)),mode)\n", "ob_list = [TE0,TE_top]\n", "def J(source,top):\n", " power = npa.abs(top/source)\n", " return npa.mean(power)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "opt = mpa.OptimizationProblem(\n", " simulation = sim,\n", " objective_functions = J,\n", " objective_arguments = ob_list,\n", " design_regions = [design_region],\n", " frequencies=frequencies,\n", " decay_by = 1e-4,\n", " decay_fields=[mp.Ez]\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Next, let's see how well our filtering and projection functions work." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "rho_vector = np.random.rand(Nx*Ny)\n", "opt.update_design([mapping(rho_vector,eta_i,1e3)])\n", "opt.plot2D(True,output_plane=mp.Volume(center=(0,0,0),size=(3,3,0)))\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can increase our `beta` term, which controls the thresholding, and simultaneously sweep our perturbation term (`delta`) which is used to generate erosion and dilation geometries typically used in the literature. " ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "beta = 2048\n", "\n", "plt.figure()\n", "ax1 = plt.subplot(1,3,1)\n", "opt.update_design([mapping(rho_vector,0.498,beta)])\n", "opt.plot2D(True,ax=ax1,output_plane=mp.Volume(center=(0,0,0),size=(3,3,0)))\n", "plt.title(\"Dilation\")\n", "\n", "ax2 = plt.subplot(1,3,2)\n", "opt.update_design([mapping(rho_vector,0.5,beta)])\n", "opt.plot2D(True,ax=ax2,output_plane=mp.Volume(center=(0,0,0),size=(3,3,0)))\n", "plt.title(\"Intermediate\")\n", "\n", "ax3 = plt.subplot(1,3,3)\n", "opt.update_design([mapping(rho_vector,0.502,beta)])\n", "opt.plot2D(True,ax=ax3,output_plane=mp.Volume(center=(0,0,0),size=(3,3,0)))\n", "plt.title(\"Erosion\")\n", "\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "With our framwork in place, we can define our `nlopt` cost function wrapper that also includes our mapping layers and their corresponding gradients. We'll systematically increase our `beta` term so that the thresholding gradually turns on, as suggested by the literature." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "evaluation_history = []\n", "cur_iter = [0]\n", "def f(v, gradient, cur_beta):\n", " print(\"Current iteration: {}\".format(cur_iter[0]+1))\n", " \n", " f0, dJ_du = opt([mapping(v,eta_i,cur_beta)]) # compute objective and gradient\n", " \n", " if gradient.size > 0:\n", " gradient[:] = tensor_jacobian_product(mapping,0)(v,eta_i,cur_beta,np.sum(dJ_du,axis=1)) # backprop\n", " \n", " \n", " evaluation_history.append(np.real(f0))\n", " \n", " plt.figure()\n", " ax = plt.gca()\n", " opt.plot2D(False,ax=ax,plot_sources_flag=False,plot_monitors_flag=False,plot_boundaries_flag=False)\n", " circ = Circle((2,2),minimum_length/2)\n", " ax.add_patch(circ)\n", " ax.axis('off')\n", " plt.show()\n", " \n", " cur_iter[0] = cur_iter[0] + 1\n", " \n", " return np.real(f0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We'll now run our optimizer in loop. The loop will increase beta and reset the optimizer, which is important since the cost function changes." ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 1\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAP0AAADnCAYAAADVeFABAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAASmElEQVR4nO3dO4/jVn8G8Ifi4WVmtIvZGGvYBgwvAgSBbSCFXRs2EKSI23Tug3Rp3irfIG2+QpoF0qVx5yqVgRjwWziOt/ANeNfGvt7M7FojiZRIpjD+9BkOL4cUb9J5foCwK40uHA0fngvPOXSyLAMR2WMx9QYQ0bgYeiLLMPRElmHoiSzD0BNZRjX8nF37RyTLMvz000/47LPP8Pnnn0MpBc/zkCRJp/dzHAfr9RpvvPEGPv74Y7z77rsIw7DnraYBOWUPNoWejkCWZXAcB47jIE1TPHnyBJ9++imCIEAYhp1CL+93dXWFd955Bx988AEWC1YMTwFDf2KyLMOPP/6I7777rrf33O12WK/XcJzSgoOODA/dJ0ip34/lfQQ1CAIG/oQw9CdIr4brB4C27yGvVUox9CeE1fsT17UTL01TyBDtru9B88SS/gSlaTr1JtCMMfQniL3sVId7B5FlGHoiyzD0RJZh6Iksw9ATWYahJ7IMQ09kGYaeyDIMPZFlGHoiyzD0J4hj76kOQ3+COPae6nDvIOrRf375J3z8b/+Ff/z3/8b/3cRTb04pzqcn6smff43wh//4I/Zphv/56SVeufhf/Os//M3Um3UHS3qinmx3Cfbp7wtI/7rdT7g11Rh6op68+Rfn+KcP/xKOA7x2P8Q//+1fTb1JpVi9J+rRv/z92/jD3/01fDXf8nS+W0Z0pOYceIChJ7IOQ09kGYaeyDIMPZFlGHoiyzD0RJZh6Iksw9ATWYahJ7IMQ09kGYaeyDIMPZFlGHoiyzD0RJZh6Iksw9ATWYahJ7IMQ09kGYaeyDIMPZFlGHoiyzD0RJZh6Iksw9CfoCEuVZ1lWfOT6Cgw9CdIv1T1IZetdhzn1r86HgSOF0N/4oYo9YHyAwEdB4b+BOgBdF0XSZLk9w8Jvbw2jmM4jgPXdbtvJM0GL2DZQrFKO0UVt2wbkiSBUgpxHOPnn39GlmVQSmGxWMDzPOx2O2RZlr+26kAgTQEJuFIKq9UKr7zyCq6vr3F1dYXLy0ukaYosy7BYLG4dcKYu/ee0LXPG0BuQnVxucl9/HBjvICCfmSQJ9vs94jhGmqZ48eIFvvzySwDA+++/j9VqhfV6je12i/1+j/1+X7mtEhI5UIRhiOVyiXv37uGtt97C06dP8c033+DNN9+E4zhQSkEpBdd18/CPHTT5TLnJdiwWi/xGdzH0DfSgp2mKJEnyf+X/chsj9Pr27HY7RFGE1WqFFy9e4NmzZ3j69CmUUnjttddwdXUF3/ex2WwQRVG+vfJ6IeFYLBZwXRee5+H8/Bz379/Hw4cP8fDhQ8RxjB9++AHb7RbL5RLn5+cIggC+798K/lj0oMt26zeW9NUYegMS6v1+n5euu90uLz31MA0dfPkM+ezNZoNff/0Vv/zyC549e4btdgulFIIgwPn5OdI0heM48H3/TjVf/tVLac/zoJTCxcUFlsslLi4u4Ps+HMfBarWCUir/7DAMJwm9HngJuWy353kAfj+A0V0MfQO9Kp0kCXa7HeI4zm8Sfj34Y23PbrfDdrvFzc1NHmgJhOd5CIIAaZrCdd28CVB1YNJD5Hkezs7OsFwuEQQBlFL5ZydJgjiOsdls8v+PWZXWmyHS7+B5HpIkQRAE+e/BU4rVGPoGUhWWkEVRhCiKsN1usd1uEUVRHvyhTo/p2wIg3x5pz6/Xa2w2mzz4nufB932cnZ3lbfSmg5Jeevq+n9cUwjCE67p57SKKIiwWCyRJkpeuek1hjNJer9LLtkqNRjohGfpqDL0BqdpLKb/ZbLBer/NOsjiO89CPVdJLm16CKJ11wG+n7cIwBIC8qt/U/NADI510YRjC87w8RFKzyLIMcRzD87zRO/GKNRI98FLVH6t/5Vgx9A3KSvrtdov1eo3VapV3kkkVX14jIdDbzcWfFX8uP9P/Ffr9YhVfSnz5fKUUfN8H8Fsb3aSjUe/91qvNQRDk1WU5wKRpCqUUoii6E/a67e/y++vvUzww+b6fB162Vx6T74gdencx9AaKp8ck9HKTKv4UPfh6B6Ne4kkp3Habih1k0kknnyPfxZSn6fR2vNzf7Xa3zqawpK/G0Dcohkuq+Hq7XqrWekk/5rYlSXKrZJNTVl3atsXz3noPuHyOhG1ssl1yBgFAPiiJgTfH0BsonqeX8MsBQP4vz5li+/QqsD5IpQu9U07+X3Z+f2zye8nvqg84YtjNMfSG6gboyIFgjPP0VdsmJKh9bEdZ23vKYOmnJPUOu+KISarH0BvQd6jiUNziYJcpd7pip1ffpg6UjPfXq/FTb9MxYuhbKtvRiqXgVDviUB1rcwlW8XfTmxpz2cZjwBkJHVQFqzjLi6eLDsfvsH8s6Qc25k47VGk3dfCm/vxTw9APbMwgFh/r8tlVnXd1wRuyaj10P4WNWL23VJvmB8N2WljSz1hZqduXqvdjh9jpY0k/U32Urqaz38pK/amq8zQ8hn6GiiV8XyHrUp1v6jvgAeD4MPQzVDbCru45ZYOHqsYMlL1f2Qo6pmMO2N4/Pgz9TBVL+Krg182Pb5pKW1ViVw0+otPA0M9cU/DLftbUHq/rxCv7GUvz08Le+5kzGf1X9Vixqi6PVR1Iyha4YOBPD0M/Q2VhnaqKbRL8pj4HmheGfuaawlM2Wq3usab3LXu8bNkqOl4M/Qx1KSWrwtqXYq2jjyG/NA2G/siZlLpDLahBx4m99zOlr1XXZrTcGJo6EU3PJNA0WNLPkEnPfJMpSuO64JedMWCNYRos6WdmqJKx7ay6sRYBYU1gfCzpRzBFydZXmPoMZVUzpa+FPMkMS/qBzaV9O/Qikoe+P0v88TD0Ayub/FJXfS6Gp4+gVg2t7StoTefvTX4HlvTjYfW+g77OowPVVdu64HcJa9Xn9HEqznTufd3wXxoPQ99AL6WLV3fpurO2HdpaNpquTfDHbDubvj+DPh2G3kDZBS1Md9qqTjw9uPpz+jhd17Q9sv1zOf/PU3jjYugNSClfvKRV186ruuCNZchTg01MvjP26A+HHXkNsiy7ddFKuWiifgBoc2WbpjXr5rCjl63AMyb25A+LJX2DLMuw3+8RRVF+i+P41jXhmxamoN+ZLArC72xYRqG38Y8gO+R+v8d2u8VqtcJqtcJms8F2u82D33RN9Lr26tDtd1FsRkjVuW6BjqGaHgz69IxCb3N1y3EcxHGM6+trvHz5EtvtFuv1GtvtFrvdLm/bz1ld0Obwt53793dqWL1vkKYpbm5u8OzZM7x8+RJZliGKoltt+zZt+TISvikCqAe/bFXcru9l+hwGfny1oV+v18Y79SnJst+ugw4A3377Lb766is8ffoUURTBcZw77fhiSNquMjN1aVv39zWtDbQ9hdnmNdSv2tBfX1/jiy++wNdffw3f97FYLKz6Q6VpiqurK1xfX+cHgsViAcdxoJTK77uumz9+DNoOoGkKvk37xCloLOkfP36Mx48fAwCCIMButxtlw6a0WCzytvqjR4/w9ttv4/79+/A8D57nwfd9+L4PpRR83wdgXiWe4zpzxep9mxAfMlqQ5+KnURv6LMtwc3OT34+iaPANmgN9uO3V1RWeP3+OJEkQhiGCIMDZ2Vm+cydJkjcF6hw6lLbra5qYjoarGv/P6vrxqQ294zi4uLjI7wdBgCRJBt+oOZBTcZ7n4ebmBovFIu+tdxwHruvmN6VU50k4xfb/mJNSOPzVTo2993qpt9vt7kw6OXVRFGG9XsN1XQCA67rwfR/7/b6XKaN1s+lMZte1Lf2LzYtDJg11+RlNj6fsGuz3e8RxjCiKoJTKh+IOeVajbg37Q/sE2pxNYHhPE8feN5BhuFK1l6G3TcNviw5pi9e9dqwOwTl1PNJhGHoD+gy7snn1pkyDU5zs0rTIhv6auvcxVfUaBv80sHrfoDjjbIg+DZPqdFNw9em6TVhttxtLegN9td8PaY8X19WbashuW1MNL6ZqDP1IioE/tiCwdnA6WL0f2aEDbLq+fqrQ9nWKkPrDkn5gdUtdy8/1+ybvd6wY+Hlg6A1JeItDbg8pdW0q/Wz4HY8Fq/cGXNe91ZEmo/MOnXLaZ+k+91DZdICbO5b0DaR0lym0Mo1WDgQmry/2vLd16CIdRDqGvoHMnZdptfpEm2INoOv7E42J1fsGMmf+7Owsn1obBMGtA0AbbVbVMV24ouo04Byr0pxDP73G0OsdV57nWTe1NgxD3Lt3D/fu3cNyucRyuUQYhndKfdPFJ6uGtzYtoT3HGkFZO72q7V6cRkzT4SIaDZIkwYMHD/DgwYO8tD8/P89Xz9Gr+HVMpslWvabL1NkxtZlTQNNrtYhGGIbY7/eDb9TUZMGMLMvw6quv4vXXX8fl5WUeclkqS18zT8j49zZBkINGXWl/LL3fc98+agj9+fk5PvnkE7z33nt5ddamP2qSJFitVojjOA95GX1CTlV46y4sYfK8tj+v24auf8Oyg1vx8ap5/ybNHBpHbegvLy/x0Ucf4cMPPxxre2ZDdtDvv/8eT548wfPnz/OVg+TadjK/vq8LXsyx3S4OPTiZvL7YN8ADwzAaS3rbPXr0KF/+erVaIct+u9iFXOEG6D5vfWxz3z4x54PfKeApuwaO4yAMQ1xeXkIphTiOb+2UUvL3saP2sdrtkAtomn52X6Fl+IfBC1hW0NuiSiksl0sAwGazyYO+2+16Xe/+2HfyrvMQWJUfFy9g2cB1XQRBgDAM8/Xx4jguvarN1DvvUJ89xBr9dasA07BYvW+wWCyglMqv7hNF0Z0huCbGOHAONSKv60o/bZ/D8I+DY+8byIQbpVReure5bp3pjtz3Dt/n+w1Zgxj6M+gulvQGJOjF2XWHBr94TrtsOGvd43X6bmqUVdf7WMWHYR8fQ29An17bp7Zz7U2rw1P1wZh0VrZdrdfm/qShMPQNyna6oXfEtmcDxigth/wejmWI8algm/4IVZWobUfNTaFpzcDic6l/DP2RMQ38VLqU2izhx8XQD+yQVXWq3k9X7Ew7ZAWfqip8H6clGez5YOhH1sdBoEvIi8t6HbrMV5ttrLrfdBaEB4phMPQDq5qC2vSaqvdpG4Q+xvKPMdZgLs0TG7D3fkR9jTNve2rM5HlNa/GbnJPvMlS37LNoWCzpR9a11Dyk3V43GGYO5/RZyo+LJf0R6Sv4fTyvy+fWtfOnnqxkE4Z+ZtqEua6a3xSiocJdFmy9Gl/VeWeyoi71g9X7IzWnQFR1PJb9rO65NA6W9DNT1WHWpno+VBtZ74g0Oc3Wdf4ADwLDYuiPWF+z3tp+Xt2qtnVVc86fnweG/kiUBaZuNN5Ygao6yLQJePFAwTb9sNimP3LHVD2e63bZhiX9DDWFQ85tjz24pY/PMTlI8eAwLJb0R4rBoK4Y+iM0ZeBNR9BxpN18MfRkrNhpaNKJx/DPD0N/pOYSpjlsA7XDjryBzWE9vaF1WeO+7/cncwz9wNjhdhj9LAXD3w+Gvkdcz71//B77x9C3VLcUdNO4dOqXfh0CfufmGPqO9DXmmtZ6o37Id61fWqzsRvUY+hb0HUu/zJXrulBKIU1TpGk69WaeLAm6fOdy0y871uY6g7Zi6A0USxI96J7nIU1TOI6DJEkA8JrrfSp25MmB1vO8W7euFxi1EUNvSA+8hN33/Tzw+/0eaZoy6ANzHCf/7sMwRBiGCIIAvu/nwWdVvx5Db0AvYZRS+fXqJfBKKSRJwqr9COTvIKE/Pz9HGIbwfR+e5+W1MAa+GkPfoBh43/dxdnaWV+Fd180D32VdempHr96HYYizs7NbwVdKsXrfgKE3IOH2PA9JkuRtd6UUwjC8FXoalrTZpYofBEFexdfb9gx9NYa+QbHzSEp4qeIX2/IM/nD0MyfSryLhlxtL+mYMfQN9J5PAy30p4aUtz8APq+4MivS1SA8+Q1+NoTcgJb3+fwk7Az+usnES+ngJnrJr5jTsrNbvyVmW3Qq43Nc77Rj4cRXHTeij84oj9SxX+gUw9IY4mWa+Drnc14lj6IksUxp6rpxDZBmGnsgyDD2RZRh6Issw9ESWYeiJLMPQE1mGoSeyDENPZBmGnsgyDD2RZRh6Issw9ESWYeiJLMPQE1mGoSeyDENPZBmGnsgyDD2RZRh6Issw9ESWYeiJLMPQE1mGoSeyDENPZBmGnsgyDD2RZRh6Issw9ESWYeiJLMPQE1mGoSeyDENPZBmGnsgyDD2RZRh6Issw9ESWYeiJLMPQE1mGoSeyDENPZBmGnsgyDD2RZRh6Issw9ESWYeiJLMPQE1mGoSeyDENPZBmGnsgyDD2RZRh6Isuohp87o2wFEY2GJT2RZRh6Issw9ESWYeiJLMPQE1mGoSeyzP8D6MEbSKUfSYoAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 2\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 3\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 4\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 5\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 6\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 7\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 8\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 9\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 10\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 11\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 12\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 13\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 14\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 15\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 16\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 17\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 18\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 19\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 20\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 21\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 22\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 23\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 24\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 25\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 26\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 27\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 28\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAP0AAADnCAYAAADVeFABAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nO19SW9jWZrdoUSJpCiK86A5JEVkRlYDbqDX3V0NGF64tt713vDOm175H3jrv+BNAd55U7teeVUFd8OJqsyMQRGRoXkWB5HUQIpeFM7VeVePksiIrsyM9x2A0BDie48v3rnfdL7vxgaDAQwGQ3Qw8VNfgMFg+MvCSG8wRAxGeoMhYjDSGwwRg5HeYIgY4o/8u6X2f0EYDAbY39/HP//zP+P3v/894vE4pqam0O/3xzpeLBZDp9PBwsICfvOb3+Cv/uqvkEwmP/NVG/4NEQv75WOkN/wCMBgMEIvFEIvFcHt7izdv3uB3v/sdEokEksnkWKTn8c7Pz/GrX/0Kf/d3f4eJCXMMvwQY6b8wDAYDbG1t4cOHD5/tmDc3N+h0OojFQg2H4RcGW7q/QMTjd2v55yBqIpEwwn9BMNJ/gVA3XBeAUY/B98bjcSP9FwRz779wjJvEu729BSXa4x7D8POEWfovELe3tz/1JRh+xjDSf4GwLLvhIdjTYTBEDEZ6gyFiMNIbDBGDkd5giBiM9AZDxGCkNxgiBiO9wRAxGOkNhojBSG8wRAxGeoMhYjDSf4Ew7b3hIRjpv0CY9t7wEOzpMBg+I/73/9vFb/7H/8F//p//F2ft65/6ckJh/fQGw2fCcesK//S/vkXvdoDv95sopl/hv/+nf/dTX9Y9mKU3GD4TLm/66N3eDZBuXfZ+wqsZDiO9wfCZsFyYwX/59TpiMaA2l8R//fcvfupLCoW59wbDZ8R/+4/f4J/+w9eYjv987enP98oMhl8ofs6EB4z0BkPkYKQ3GCIGI73BEDEY6Q2GiMFIbzBEDEZ6gyFiMNIbDBGDkd5giBiM9AZDxGCkNxgiBiO9wRAxGOkNhojBSG8wRAxGeoMhYjDSGwwRg5HeYIgYjPQGQ8RgpDcYIgYjvcEQMRjpDYaIwUhvMEQMRnqDIWIw0hsMEYOR/gvEv8VW1YPB4PE/MvwiYKQ3PIpYLIZYLPZTX4bhM8FIbzBEDEb6LwBqhePxOCYmPu9/a7fbRa/389yB1TA6jPRfABjDX15eYnd3F+12+7Mcl4vJ0tISBoMBrq6uPstxDT8tjPRfAPr9PjqdDra3t/GHP/wBh4eHmJ2dRSwWGyupxxg+kUjgr//6r/G3f/u3SCaT6HQ66Pf7GAwGltj7BcO2qv6FYzAYoN/vo16v4/3793j9+jWazSaSySSurq5wc3PzpOOQ6BMTE5icnEQ8Hkcul8P6+jq+/vprFAoFTExMoNfrYWpqyhJ7v2AY6T8TRrV8PmlGfT//vt/v4/r6GmdnZ9jb28Ph4SEuLi7Q7/cdkR86NklOok9NTSGRSGBmZgbz8/PY2NjA4uIi8vk8pqen3bnHIf2/lXdgC9BoMNJ/IujqPuTyfo6HUo/Nc93e3uLm5gatVgvn5+c4Pj5Gs9lEt9t1bvgwxGKxANGTySRSqRRmZmaQyWSQy+WwtLSEtbU1lMtlzMzMBJKETyWwf916/f7vw+6T/s4/p3onRvynw0j/Cbi9vcXt7S36/T76/X4gfuYDyYfR/zoM/oMdRna69L1eD5eXlzg9PcX+/j4ODg7QarVwfX2N29vbwPmVWCT85OQkEokEUqkU5ubmkM1mkcvlkMlkUCwWsbS0hEqlgnQ6jXg8/iABw67Vv2ZdrIYtlI/dJ/17DUUmJiY+e9XiS4WRfkyQ8Dc3N7i5ucH19bUraynhaYWGLQLEMML4X3neXq+Hq6srtFotHB4e4uDgAGdnZ7i8vHTuN8/PxYjnJOGnp6eRTCadZS8Wi8jlcu77SqWCbDaLRCIRsPBcUMIsd9j3vGYukPp12ELpC4L8Y3Lhmp6eRiKRcHkGs/iPw0g/BpTwl5eX6Ha7uLy8xPX1NYA715nWhy/fFX3ooR72PQlzfX2NbreLer2Oo6MjnJ2dodPpoNfrBc7jWz9N1pE0qVQK6XQac3NzjvSFQgH5fB7pdBqTk5MBsqv3MMyC8z7pNfd6vcCLxFcvZHJy8t598s/Bv+W18+/NzX8ajPQjQmPpy8tLtNtttFotdDodXF9fYzAYOELxNTExEXBBfeI/lfA8d6/Xw/X1NdrtNprNpjt/r9fDxMQEpqamHLF9qAcQj8cDFp/xfD6fRz6fRy6XQyqVcsdRwimZ1ZLzb3QRIOHpFelLLbeGHbpY+efiZ0smkwCAqakpTE1NIR6Pj51kjBKM9CPAt7SdTgetVguNRgMXFxeuPMY4kw8wH0jf+oe5sGrN+Dv/3+ja83V9fY1+v+8IPD09jampqaE1er0OXptP+kKhgLm5OaRSKUcmzVswj3Fzc+Ostl/D5/f89+vra1dGvL6+dqQHECA8r89fXHq9Hm5vb93nBIBEImHagRFhpB8RfIivrq4c6VutFtrttiN9PB53r6mpKfR6vcDvwiy+Hn9YdjvMutKy8VzT09Pu+5ubG2cx+/0+AARcYVrMRCLh3PtisYhisYhCoYBMJoNkMhmw9OrpkMQksO+q6zVr7oPvIYmBuzyD3iOSnuEAF4l4PI5+v49EIoFer2eEHxFG+hGgpLu5uQlYWxXC+LGq/0Cq2x2WYfehC4Of6FLy0mpPTU05EunCwHPTtadbPzs7i2w2i1Kp5F65XA6zs7NIJBIuc09rr7mMTqfj8hm0uLweXqN6Rz7pddGiBac1B+A8Gy4at7e37vMxcWqEHw1G+jHgZ6Q1gRXmrj8EJf3ExMSDf8/j+3kD34MYFtNqSEELPzs7i1wuh3K5jEqlEiA8XXv1FjSJqF7O1dWVyynowqPv5WJBi8/FUWPxfr8f+Azq2pP0PJ4urIanw0g/JsIsLbPbfNjDMvi+a/1QRt8HLS2Ae+RQL8Qvi4XVwuPxOFKpFLLZLMrlMqrVKiqVSiCWJ3EBBMjGfEaz2US9Xker1cLl5aVLsiUSCSQSCUxPT7vPeHt768IAekVUDfKa/Pr9sHyHLrSG0WGkHwN+ppnxM/9Nra9aYT+rr4vCYyIeJQJdaP4NrSDdZo2XSX4Azm2mJZ6dnUWpVML8/Dzm5+dRKpWQzWYxMzMTIKwSsd/v4+rqChcXFzg/P8fJyQmazabrwJuamkIqlUIqlUIymXT188FgEIjpabW5AAF/zoX4YdFTRT2Gp8NIPyJ8C68JO5LQJ7xm833y+5n8h0jvx+dMkDGp2G63natN95mEV0xOTmJmZga5XA7VahULCwuoVCrI5XJIp9OBOJ7nAe6sPAl/fHyMo6MjpwJkTE5C397eOmGPXqsm/mKxGKampgL3TfsGfI+l3++7cMCIPx6M9CNACamWng8roWT3Ca4ufZh4J0xV5ls3Pvx0sy8uLtBoNNBqtdDtdl18rZltPXY8HsfMzAwKhQJqtZpz62dnZ5FMJgPZcxKeCbVOp+MEQfv7+zg+PsbFxYVLsM3MzAQ8EeYfNKb3LT3LbxoSKek1rtfFT/9frDb/dBjpx4TG5XTx/cUgzML7sf5D1h64X7v3Cd9sNnF+fo7z83M0Gg1n6Vne8mv1JD1d+3K5jGKxGMjUc2Hi3/Ocl5eXaDabOD4+xt7eHvb29pz0FwCSyaRLzKk0lqS/uroKqBeZA9AsPu8HFw4t2dHiUyFoln48GOlHhF8uI+HVJX0ofg9z7R8jvRKXbjKz5+fn5zg9PcXZ2RmazabLjvvJLq0QJJPJQImO9Xgm7ngNuuDQrT85OcHe3h52d3dxcHCARqPhhEHUI6inwTid2gaqGDWRl0gkAko7fk6SWxV8wF3mPuz/xvA4jPRjwM/a8xUmJfW/fyibH0Z6usD8np11mkg7OTlBvV5Hp9PB1dVVIAYmmQA4BV4ymUQ+n3cNNjMzM/cIDwSFNZ1OB2dnZ9jd3cXW1hb29vZwfHyMbreLwWCARCKBycnJewuOqvKur69xeXnpXrw25h30PvJnfa+Kn/wFzQj/dBjpx0SYMIaWy7fkYQtA2CLgk16TdvrwdzodNBoNnJ6e4vj4GGdnZ7i4uHBWniIZv4NtYmIC09PTASuvcXyYl0G3vNFoYG9vD1tbW9je3nbDOm5ubtx7ksmkIzA/kx6HlQWSnmVHvW+8DhXo8HOzmYjJvjD33sj/OIz0Y0DjXSVzmHsfVrcfZvGHqfNUCUe3/uzsDMfHxzg5OUGj0UCn0wlIYf1MP68jnU6jUCigWq26WJ4NOpp8Uyt/cXGB4+Nj7Ozs4OPHj9jf30e9XnexvJJQS4LMD+gi5LciM7OvlRDG8tQ+MLzg4jA9Pf3okBDDcBjpx0SYOEfd+zByj2LlgftNNuysUyt/fn6OdrsdkMEq4bW0mEwmkcvlsLi4iPn5eRQKhXsTcfTcTN7Ryn/8+BF7e3s4Pz93i4zvlWgPAPsAeL94TMb719fX7v1XV1eYnp7G1dWVWwh8S88koar5jPijw0j/CVCCkjS+pR+mxHtqqU6TYMzWn56euh56besdpr5jLK8jsBYWFtyADC3RERrLn5ycYGdnBzs7Ozg5OQmcj1ZZwweO3mKcz0y8fibtjGNmnl4A6/C09Fwo+v2+m+Gnklxz6UeDkf4TwYedBPA9gMcSeEp4tZqqgKOoRUUxTN4xrvb72fUapqenkclk3KDLtbU1NwZreno6cB1+xp6TeXZ2dnB0dIRGo+Gy8zwPACe/5UAOqvKAO8mwT3zVHfgaey4G2nCjIULYAA7D02Ck/4zw3ftPIbw+7JqtPzo6wuHhIU5PTx0BlfQKuvUzMzOoVCp4/vw5vvrqKywvLyOfz7u2Wd/KawKvXq+7cVz1et0RnkTm56b8dmZmBul0GjMzM0gkEo686uZzQdIyp1+hIJn9ZhuW8CymHx9G+k/AsOyxPthPUd+F1eX5sF9dXaHdbqNer+P4+BiHh4fOte92u4HpM3y/npNu/crKCr7++musr6+jXC4jnU4HynT+52I8f35+jsPDQ5ydnaHdbrt4HLgrJ7IMyJ782dlZp99n1n5YuAMgcE94XH7l+7kQTExMBCy9YXQY6ceE75r6GEZ8n+x+HK39+hSykPD7+/uuPs4SnTbWhCXvZmdnUavV8OLFC2xsbGB+fh6ZTCbQUBMWVlBye35+7oQ/1AAQurBw6s7s7CzS6bQrA3KQh/+Z1QvyB4vovdCZeirptSTe+DDSjwG/C4zfa3nsKS89nlp4xvBhhD86OkK9Xg9k7MNcXcby+Xwey8vL2NjYwNLSEnK53D19vQ8t1VHiy00sdYHjOUj4bDaLubk5Z+XVhdf7xnvEmjyz/Vo69DX3/IwPEd7i+qfBSD8mwlo8/YeaX5XkYa60T3ha+Eaj4XTuOzs72Nvbw8nJiSP8sIefVnRmZgalUgmrq6tYXl5GsVgMDMYIIwmvhYlDtfJKeLrrOoiDM/NTqZSbgAPcuenqkjOrzxKfTv3xr4fH0K9h99bwNBjpPxFKfv/h84nuW3d+DbPwTNrt7u5ie3sb29vbOD4+dgMrfLeeIJnZL7+wsIDl5WWUy2UnxPEbavzr6fV66Ha7aDQaqNfraDaboUMsma3PZrMoFAqBEVtablMxjj+rT8U8WuLTz6LQcGmY52R4GEb6MRDW6vrU9/k/D3PpSXiVvfpCHN+t13iZ+vr5+XnUajVXk3+M8Npcc3p66lx7X17LyTu5XA6lUgnFYhHZbNZN3AHgjuV31+ksPc7qY1eeqvDCPCQlfVgS0vA4jPQjwnfnh8X0/nvC3veQS7+7u4uPHz862Sv19Q+VqzSxNjs7i0ql8qjyTq+JibNut+s8jfPzc6eTV7IlEglkMhmUSiVUKpUA6dlxp5+r3W67hiBtnGHfAuN6xvP0OBhGaFjgjxQ3Sz8ajPRjYlgsH/Z3JJRaVi1HXV5e3htOsbW1ha2trcCgCn8MVpiVpwXO5/OBiThq5R8KM66urtBsNp0eoNFoONeepCfhi8UiarUaarWaa97hQAyW/LgZCJWDXEBYt/ddfJKe7bp8cdEJm0RkhB8NRvoxEJa993+v/07Ch2npKbxhlp5Ju52dnYCFpyjGF+HwgddhHnNzc6hWq1haWkK1WnWxfJgHwq90xdvttruOw8NDtFqtgPqOW0kxdFhcXES1WkU+n3dJQsbwbA7i8EwO+OCx6OLTOyHpKbdluU+n5TIcoLU30o8OI/2Y0Lg+LJGnROdXX3TT7XYDSruDgwPs7u660hxjeCbuwmJ4PvR0uUn4sIx9mBus0tZutxvomT8+Pka73XafRZt2arUalpeX3c62c3NzbhgGe9/ZK9BqtXBxcXFvrz1+BrXevEa69mxZpsyZi4OO2Db3fjQY6UeAT3LVu/s/h6ns2FBCd56jrkj4/f19HB4eunZZJu1o4X0hkApa6HJXq1Wsra1hY2PDNdWovp7XQ+hgjnq9jp2dHXz48AHb29uo1+vOtfcXlZWVFSwvL6NWq7mcQSwWc3JZJgObzSaazaZbvGjFNUPvu+skvDYu0SvQ8p659+PBSD8GtO6s9We1OtSmcxHQqbUcZMn2WEpr2SrLAZesxT9EeE2qVatVrK+v46uvvsL6+rprqqHbDAQ3zGCyjLPv9vf38eHDB7x//94NyaBlZt2/WCxieXkZz549w8rKirPyOhaLuYF2u+0sPD8PcLfDDy2+DhJl1x4/G/9O1XtKerPyo8NIPwLUmjMm13HOSnISS5N1zM5zzBVHSOuMO81w+51zhFpHTsIh4b/55hu8fPkyoL4jeQjNjjNxt7+/j3fv3uH169fY2trC+fk5rq6uHAFZAlxYWMDq6ipWV1dRq9XcOWjlueDRm2m3265H4ObmZijhfZLrZ+VCEDaByAg/Ooz0T4QqwzQJRwum1okPr06tZULr9PTUEf7k5CRAdo67orVkbVxFMVonTyQSyGazWFhYwPr6Ol6+fImvvvoKq6urKBaLgTKdWnclfKvVwsHBATY3N/Hdd9/h3bt3ODg4QKfTCUyqoVv/7NkzrK+vY2FhIVAK1MWO94fjuPmZtALABYtJOXojwyohWi60WP7TYKR/Imi1dTBls9kMbFGtTSQ6hILKtpOTE9chR7JfXFwELKGfJyCU8HTps9ksFhcX8fz5c3zzzTd48eIFlpeXA+UzLkD+ohVG+Ddv3mBvb8+VB2ldU6kUCoUCVlZWsLa2hqWlpcA5aN0Z/+s8PBKen4HJuUQigWQyeS8Tr6GMvzsvj2Fk/zQ8ifRR7mZSl94fZHF6enov7tURTxw1xTHVJycnrg+ebq/vyvvWXaF18rm5OSwuLuLFixf41a9+ha+++gpLS0soFotuOIYq1vzcQrPZxMHBAd69e4fvvvsOP/zwg3PrtZauiwvj+HK5HNjGWkuX6gkp4dW6s++egzZ0Rx0/V6ITdsLuybDfG4bjSaSP8qo6GAwc2VutFk5OTlyWnRJVWkS1VsxeK+mpY1eyqzV7qHuMC0oymcTc3BxqtZqL4TkYo1AoOMLr9tI8Nl3u8/NzR/gffvgBr1+/xs7Ojvs8dNM5SLNSqbg4vlqtYm5uLrBPHXMOfpWCCxjr7GzBnZ2dxezsLDKZjBu2oYuHDs7gwsHzhN0vI/5oMPf+EVxfX+Po6AhbW1tOpXZwcIDT01MX96qiTBNZFN1wyykdU61lOJLFf3DD6vBalnv58iVevHjxqIWn5WXX3M7ODjY3N/Hq1Stsbm5if38fjUbDzaJn7TyRSCCfz2NxcdEl7vL5fGBOPnA/dCBZ2UVHF55ju3K5HLLZLDKZjNs7D4DzeHgM7aUHEGjiCfMEDE/Dg6TvdDqRHFbApBwAbG5u4l//9V/x/v1718vO8c8qINHJrzrxhvLTMFdey3AaswLhe8mT8BsbG86lpwAnbKdZWl2W5I6OjvDx40e8efMGb968wY8//uhKc9o6y4z67OwsyuUyVlZWsLS0hHK5fG9jDL+PQHfNBeCm6rDkx468fD4fqtXX5iPdiJPVAf9lxB8dD5K+Xq/jX/7lX/DDDz84gUcUbixJf3t7i+3tbbx//95tycykmyrEaBW5UHC+nO7mQos1rAwXRnYeP5lMIpPJoFKpYGNjAy9fvsTLly+xsrLiLLxq61VWS03/3t4e3r17h1evXuHt27fY2trC6elpoPoAwB2DVn5paQnLy8uoVCrIZDKB6bm8V7rAkKi8P7TyXLTy+bxrw+UC4k/GZWceFxCdpcd/8/9dF88oh6NPwaOW/re//S1++9vfAoAbPfylQ7PIHP/EUpQ2n7BvnS+fcJrQ8q37MMvODD3LWdxSularYXV11Y290iy9T3ha3Ha7jdPTU2xvb+P169f4/vvv8fbtW+zt7QWm2vrXQitfrVaxvLyM+fn5exN3CJ/w3JX29vbPM+rT6bSz8rlcDsViEfl8PtCcoyU9DQ98Sw/ALaLdbvee9xQFg/Q58CDpB4MB2u22+5nNEl861ApzaIUfv9LtpjuqO7MwLtUylk94n+zaMJNMJh1JyuUy5ufnsby8HJC+5vP5oTH8zc0N2u02Tk5O8OHDB3z//ff405/+hLdv3+Lg4MCV5HyisNxIff3CwgLm5+dRKpWcVQ4jvPYSUFw0GAzcwsUNM+nWMxHI+8f7oElAWnHdzmowGKDb7bpWXZY7tRnJFyIZ7uNB0sdiMaTTafdzIpEIDEaMAvhQa61ZxS5KZiWexpp+/K6E17o7p9AUi0VUKhXUajXMz8+7QRjlchn5fD50l1m1uJ1OB6enp/jw4QP++Mc/4ttvv8Xbt29xdHTkSozavOMnDJmxX1paQq1Wc269P7RC43jKi7kRRiwWc3X4TCaDQqGAQqGAbDaLdDrt8h+6MaWfFyD51XWfnJx0lRQSX3fqNff+cTyavVerp7uKRBVhHXVM6GliKyy5pFZShSoke6VSweLiIpaWlrCysuL61En0mZkZRyRVpWk8zE65jx8/4rvvvsO3336LV69e4ejoyHW5hQ3hYLiiclsdwEEr7y9sOg/g4uLCiZUmJiaQSqUwOzvrdsilW59MJl0LrfYscNHyy3W8Xi4O09PTrpFHW3Z7vd69GXuG+7CS3SdAa8S6+cOwJB2/p3XnhJtSqYSVlRVsbGxgfX3dzbTjzDkSfVhnGQlIMdDu7i5ev36NP/7xj87CP4Xw09PTLpZfXFx0yTsmcfUz+zvvkIQs+zF5l8vlnJXnpFxa+Zubm4D8VvsatCSns/VYBmw2m2g0Go743W4XmUzG4vonwEj/GRFGdt/VZE2fce78/LzrjHv+/LmrudOlDusb1xZZFd5cXFzg6OjIyWo3NzdxeHj4KOEZZqRSKRSLRSwsLGBhYcENxlC33o/j2URE4dHl5aWL5+fm5jA3N4dcLuc2wWCVg4uH3/LrC260c0/1/TMzM26hYeuuufhPg5F+TIQ1fPgWOCwzz4x8oVDA4uKiU9Wtr69jfn7eEc134cOGXwB3OQeN43/44QeXtOOuNA/t567S3lqt5gZj+Fbe785TwnMWv+/ak/AMTVTA5BP+IZktCU0Xv9VqBUhPrQHlw0b64TDSjwGto2uvN38H3DXf6CBHbgpRLBYd4dfX111fejabDZTF/BwASeETvtvtol6vu9IcVXZPIbyGGeVyGcvLy87KM/bmufxyYKPRwNnZmZMYU8KbSCQCO95QZ+83AIURUwVJfs5CLbnO3mNcTz0EFX6GcBjpR4SSmXJVPpwacycSCZeRT6VSzs0tlUrOmjI7Ts28Np6EWXclPuN4Ns/s7e1hc3MTr1+/xvb2NhqNRmDctA8tE3I4BoU4pVIpkGHXZiBWB7Rr8PT0FK1Wy5UuWXLkRpaak/AXL7+MOWzarcb7JD0n7PJ7kt7i+odhpB8Bfj3dH+pAkQ4f+Lm5OadAK5VKbj58pVJBqVQK7Ajjx+48H3C/484n/MHBAd6+fYtXr17h48ePbgDGY4TXybnU11OIk0gkAhl1LQc2m01H+OPjYydLZo2fm1mGVRt4/bqQaK2eEmDW+Fn+A+52sGW1hPLmTqfjvrd6/eMw0o8A1cH7STaKUFRfXqvVUK1WUS6XXclqbm7ONZr4WXm17mGur2rcSfjDw0Nn4d+9e4eTkxO3OcWwKoISnqHGs2fPAlZexTLaoVev13F2duaGgLAzD4CL2endKOH9ZJ0SmJZeh4NQbut3C3IhY4hBcQ6VgLT0lswbDiP9CNB+cGaiVXvPxBWFNZw7XywWA8ksuvGPbdigVloz2Wyg8QdgHBwcoNVqBbT0QDAHQc8knU47bT2lvQsLC8hkMq4VlsIYzvbTuX5hcTxbf4cRngsRRTeU2ZL4unjqGG2GGVwoeG3UCFCL78uKDeEw0j8RJAuFNCQxrf7MzAzy+TxKpZJT0ZXLZRQKBaeg82vtYWU4Iizu1cEcdOn/9Kc/uTje33MuTAzE6gFjeE7OXVpacsk7AE4/ry3CJycn7kXtvtbk+TWRSAQIrxZaR2npVldhpKel96W/TCbSwqt6z99Z13AfRvonQstt+Xzeqcs4BSabzbotniqVyj1xTZhV92vufgzvC2HoXtPCf//993j16hW2trZQr9cD+8f756Cmn9td0aVfXV0NzLubmJhwajhuYkl3XqcFsR6vn4uk15HbbJZhFYFkZfKNajrdwYaNXZ1O514jk9bqeSxV7xnhH4eR/onQue9UmbEkxRi+XC6jVCoFNOZK+DCr7rvw/KrWnfHr+fk5dnd3sbm5iTdv3mBzcxO7u7uBEVdqFXVEFd15blKxvLyMxcVFlMtlVypkA4xuU310dOSGh3DzDTbUMEwA4MiqwzW4WGkikBaemXe29uqgDB1Kou3KmvwDEOhitL76p8NI/wQwHqalzGazTnTCBaBYLAZ08lqC08x1WEZeFWiasGLMymz57u4u3r9/j83NTfz44484OjoKqOB4nXSJGXYwz8BuPW5Flcvl3Fz8WCzmBm5wE839/f3AaDAKYGjhU6kUALiwwSepuu46BtzfzFJblXk8v5GIHg8Jr4lA1SIY4R+Hkf4J4EOdTqeRy+WQy+Wci6naa6MAABRrSURBVE9dOQdDsDHGz8oTYQTX0pWO1/a3rf7xxx/dLrZqdUkEneKjIcfi4qJ7VSoVFAoFF3ZwNh0tZqvVwtHREXZ2drC9ve1Gg3G3HcbeyWTSZdx115mJiQmXe/ATgTpJiDV1AENnEqg2gJZeOxpVoguEy54N9/Eo6dVd5JSTKIHDIDKZDMrlMqrVqkvS5fN5N++N2nK/5ZVQ111LVprJ1m41xtLcxfbg4ACHh4dudDbdeY2rdehGuVzGwsICFhcXsbCwgGq16ppeuLedDvHs9Xpot9s4OzvD3t4ePn78iL29PZycnKDVajkLz8YcIGjh2d2mhNeda1Ujz3o6j6UZf3bfaU8975Pq8gHcs+6aHDUMhw3ReATJZBLPnz/H8vIyXrx4gbW1Nbf9M6fqUGYaRnh9KNVysQedhGg0GgEd+9nZmdsMg0RX1ZnOswsj+9LSEhYXF1Gr1VzJUKWwTLLRitKtPzw8xN7eHvb393F0dOSGiPR6PRc6MOE2PT3t5teziUY3t9Bda+v1uht6QQvPECGdTjtCx+Nxt3CwHKcjscJyIDxW2GJruI+Rhmgkk0n3H/YlgxnswWCAly9f4u///u8DLa+cWKMbNah7C9xZdP1eG1WazWYgK65iF52eG7ZLDK/Rn583Pz+PlZUVrKysuIk32WzWlRb1+tRVZofe6empm/bLGJ4DKvgezbBzZj2tvA621E0+OBGYAzZIbopw1AuKx+Po9/su9tfJONpe6+cAWDkYtjuv4Q4Pkn5mZgb/+I//iL/5m79xq2gUEiW0gr1ez02g9cc/+9102myjFom1aV/Cur+/j93dXezu7uLw8BCnp6cBa65Zbw2p6Mpz0GShUMDCwgJWVlawurrqOuQ4TsuvHvD6tCWXbj030tSknSbaSCyWKenh8LlgCy+bcU5PT92GnOzA8916HXrJz3dzc+MGcuggUt5PQnX69Dj8ur7hPh4kfS6Xwz/8wz/g17/+9V/qen5WuL29ddaJSjqdzKLk0Zo64W+DxU0mtre3sbW1hZ2dHWdVmc2m5VMpKV/qynPTyuXlZbcRxeLiIkql0lA9vx8PM8QgQelpMEFIy+5bd25WwYQlAGeNmXz0Cc/jMfnHEIWLCWfaT05OuoVIN7/UhVQ78TQnwM9sVv5hPGrpo45MJuMeOrXmvhac32vWWUl1dnaG3d1dbG1t4ePHj9jd3cXx8bGLmeka81j+3Ht15Wndnz17hrW1NaysrKBarTrrzsXJT2qR9GGex/HxMc7OzgIyXu0c5GKTyWRc/wCtvCbsmI/gsbiYaVjIezg5OekSmDwOS4cXFxdusfDHtKngKJFIIJ1OO6GUP7zTcB9WsnsEjJ2H1dX5swpRWO+mm8uSG637/v6+2yFH41U9B6sGOjST9Xb24j979sy589w4wh++ocdTsQ8Jr3vsKeGpQCTxU6mUIzwlyKzmMCfA4zEvQZktzw3c6RR0DNb19bXL2rN8yO45nSbM9yvhuWOOViXM0j8M28DyCfDlsv5Xqs04j/3y8hKtVgvn5+c4OjrC3t4ednZ2sLu763bJ8QmvIGnpUnOTCKrp1tbWnDvPzLxWDnxLpyVCnXjD5hlu5EEXnMIeXgu7B7VDULeiooWv1+s4Pz93jTj+gkavxdcp8LqoVaByTzez4P8Dv3IoSTabdbvlUHdgeBi2geUI4IPrE54PLWvszWbTEX5/f9+VwI6Pj92ecTramfdXu+DYzUd3nmq61dVVNylXRTbDtAG0slyU/AEYek2DwSDg1bAqwfkATAwq4Xm8MMLrJpa8Hn5evrggUZ/P0GPYJha08lyEOKtgbm4uoPk3DIe59yNACQ8E3fqwUhwFNUosrbHruC2SgKVADuHQSTvcbUYltFqm0uvSBUmvjxZeB2Bwz0KSKZVK3Zv+Q7LTiwgjPF36xzwYHUZCy68ts/7OQLpY6Hgvyp+5+Ok8P8NwGOnHhCbv1Iq2Wq1AfZqJOlp2JgOnp6fvPcwsO7Evv1gsOgXg/Px8oDdf41clOXA/fmf1gAsShT+0yoPBIDC/TuW8TAr6O/L6Lr1uwa2bgxBKcnbi+Zt1aIw/TG2n7c2lUsktgBbPPx1G+jExzJpqn7gKaugqsztNH2aSS2fpsYHH79xTnYASXYUrqvrrdruO8OqCk6QAAu2wHO6hHXN0w2l9wwivevowC8/OOZbYVCykhKcnpBN1/BJdOp1GoVBAtVp1JUr1QgwPw0g/JtTSa8eXtnhqfZttr7TwWnenFDWTybjElK/rZzztu8O6z5vvedDC0/vgqGiWwnRGAAmlKkNq8ymp1Tq879KzF8DfLkvbZDk/jzkITujRxVEz/bxPwF2bcDKZdGEPRUjcQMPi+afBSD8GhnXK8WHng87WVpbfVN3GrDjdebbsMkPOLDmlrvF43CXkdGa8tp7qNs8seXG/Nw6P5PvVmuu0G3Xzddw1a+ckOwnPKoSOsuI90AoEPycXr6mpKbegAHBSX788x68MOZjAYyyv++wZngYj/YgIq9cTfMg5HJIkJ+H9JhnKWWnlSQoSne25AFz5iudVMZDu/aYde9qwonPoeGztbtMRV8BdtxyP6yvthpXlgKA7Ty9GFzM26DD8YPutWnXmP/gzFyc2FjHc0TDBrPzTYKQfA76lB+4edLqxPslICm0O8TXslLVqJ5zGuLTk/ktFQRpmaExM990/r+48o4RnnVwJrxZ+WNKO90EHiHLegG6vfXt7i2636+b6dTodJ0ZiCQ+4K9FxkWIIxGSmWfnRYaQfE757DwS7vZTkbCwBglaLlotuvlp2utbUALA6oBs7UJeu46J4Dp3DT0s+Ozsb8Ch8wnORUe+Ak3tIeJXW+nV4jeH9bbfZjsz8wfX1NVqtFvr9PrrdrlvotIznfxYuVpQAa13erPzTYaQfA0p2Xzii5S5tRVVVGd171Yn7GWtVpmkpULvP/H3ZNZfAWjt16f5Gkv5GFLwGnTnnE77RaAS2hR6WpWfczcnAnP8/NzfnhD2dTgexWMzpB7gwqQKP94sLJDfR8OcC+GGW4WEY6UdAWPLOH+7AOrxaLa2f8zjMuvP3HFLBn0l4jpjSbZlp6bX2T3KwCUZn+nGsl47z8i08s+gkPIdjhglv1KsgdMGhS0+NAeXC3CqLiUT2zWtfPhdLbcrRYR1aWQhbeA2Pw0g/BjSR5g9n1EXAr+Xz37TuTLJQfKJZeJX1+hs1aleeuvIkP+f56cBONsr4bbc8J3Bn7dmQw8WGhPcrFcAd4Vn+Y3adm35wmEcqlXJddGxbpoVXEZDG9LrFFQmv8l3/nhseh5F+RKiVV624n0gLy6jrgEdaM53rxqw143laei27MY5necxX0VGvzww3E2gcyU3Cq3pNPREV9HCCj5bltMUVCIY0Oi2Y3kU2mw303nMh5EKhC18ikXChg+7+q9l5vzSplQmdQWAYDiP9iOCDpZNr9cUHUX9m/K1jr8ISYAT/nQk8bWDRQRQq3yXZlXCc3MvEl+8e8/P4kl16GBxVzTDCV8cBwaoFE23MIegio6TV+8hj8JqmpqbcggkgMP7K72bUvIbfmmwYDiP9COBDpbVxEpsvJbtm3XULJ3oACiUSFxUm82jVdTAlcN+65/N5J1pR6z5sI0lfsusTntdLsqtHwmvWxhy24OoIcN4vLnL0JvxNKvh5NCcyrH2Z10jv56EtuQ33YaQfEb7cNaxmrsTWjRb58qe7KqH8WXYAHAFoCYG7KgDjd5Ke8l1/koyv3uPx6VGogs+fS6/NLjoGXXfQUYEP8wTaj8DrpxCHCyHd+bA2XJXkUrwTj8ddfoOk1+5Fc+8fh5F+RGhyTq2xEl0TTPqzxv5U66mrTsvIBJvGu37HmcbRJL1OtVHRCq2knstvC2ZZUON3tvrSijMW1wSizr6nB6BzAScnJ9Hr9VxDjA7jZGJS8xR+QpTXz4UE+PNUZn0v43qz9E+DkX5EqAXy5+KFPXTqCvsiEnVf9feqW6eV5bE0608yqn5fu/CYEATgkmPqReg0HWrzaTWphKPLrkMrdailxuMAXCKw0WhgMLjbR57hBX+n7b4aSqjH5M/Foyegrr2vVTA8DiP9mPCluCQ0SUoNPmvPNzc3rm2VD7O6z9qNprP0/Sy3tr+y64zkp3Wna81zXF5ehs7Mo0XVhKMm0LiYaFcgFwWV3tJzuL6+DtT8SWy9NiA4iZcWm8RnLkQXU94jLjSaxPMz94bHYaT/RPjxuC4AGkP7rjndZLquvqusmzdwEdAFQInvD7nQstdD3gWvTcuPtPLMFWjOgdfhVyFIePUcWG5kkk8bY/wRY3TT/Y09/IoBQw6//Kn/F4bHYaQfE75l54AMTnWlVdY6vN9fTtL4iTIm6HQBGGb1eWzGyjqOCwjuZKOLj16/Lgwq9kmlUgEVoS9K4u993T9fKqoZto01k5skvDbxhHUwaijlj90y0j8NRvoRobG5uvJMtlF2yxhYyamJOS1ZqTWltadV5LGV8OqqU6yiJTgd7KG75KirzOPwXP4kXW0e6vV6gYYYXzkYNjxjYmICV1dXLrzRphoujHTz1a3nNfsLlMbsep/8KTyGx2GkHwM+6f0MOy2iWj19kci0zP6IaD/21pc/Jsu3vlod8Hd85ft5zep60xKrzDUsYcnFSsMBFe/oAkZyc9GgB6TVA1Ur+tdKqDdCXYDOINDtrMzaPw4j/ZjwM+m08Bozq+XRBcGHkoxkUCixSZqwEVm+bkB3fPUXFm275YvE13CBsTmz+5pEC4vt9f6wBMmf+Vl8Oa0uIH4lRAdpsE2ZmgROzgnbX9AwHEb6EaHxrx8P+w+dxqGaeFM3XV1dEp7H9N16jV2VOKzDK+F16o2WtPhextuqKqSrH4vFnNUl4TXLThUcrb56HrwPfg5BF7Swz6zTb3XxoHXnUA5ux12r1VAul5HL5czSjwgj/Zh4KCNO+Jbffx//JkyQAiAQQ2vMrVZT3W5tRKEVDrPE7HSjTNgfhqlWWK17WLLNr49rzoNeheYQtMfAD4f8e6u9BclkMrBpJ7fzYo++JfKeDiP9J8KPqf1Y21eZDXuFkVNJ3+v1AsShpSfxtReAC4Em9DTjTqj4x++6Y0mNi4e68sNq40p2LlJM5Gm+QK/bhxKe8TstfK1Ww8rKCp49e4bFxUUUCgWk02nbtHJEGOnHRJgUV7Pxj8XbDyXcSCTG8Kz/syLg5wXCYmC9TlpuXQyGwW8bHhZv+4k2v+yoWgPV5PNzqSSYFp3JT34OWvhcLof5+Xk8e/YMGxsbWF1dDUzi0U48w+Mw0o8JJbZvZVWqS7L5rrY//EHfp6Up/3faYadlO7+Mp/EzodfqE9j/nmVAjbvDoN6HrxLkRBy63xQkUfXH70l4ah2YzyDha7Uanj17hufPn2NtbQ3z8/NuV5uwLbkND8NIPyL8OFRLWnShlXRh+nwtm9G1VqITdJNVeecnAnlNTOaxuUWlt7T0WiXwG4N84pPk6sLz2nltaqX9SbvsA9ABlpTndrtdd+2qHWASk1l6xvCrq6vY2NjA+vo6lpaW3OgtbRc20j8dRvox4YtH4vF4YOQUCcLauBJEVXnT09MBCau67n7GX2W5fmyvCT1tlb24uHCx+8XFhTuP/z7f9X+ogUXjdp2Lx6k5/q48bAdmHwA77Fgt0EEYbNWdm5tDpVLB0tIS1tbWXBxfLBbd7HzL2I8HI/2YoLXmQ894228UUY/Ab7fVsVphghTVu2sjjm/pgaDrTlkrt7TiYE22pOpQDwCuUYZ4iOx+Wy/HaufzeZRKJRSLRTd1l1aeix8XI14Te+KZJAT+HC7Mzs6iWCy67bmXlpZQrVaRz+cxOzvrFj+z8uPBSD8i1GIzUQXADZcIK9Np4stXuvkvIDi0QmNlrdX7pTslvTaykPDZbNbNvONkHDa6+OU9DVEI1dPTjedornK5jHK5jEqlgkKh4Hr6tZ2W16Uz/9gey646Zus5WLNaraJSqaBcLgc2tzDCfxqM9CNArTsnv8ZiMbeZhR//PgT/bzVUCJP5as3bd2n9siGVdDpN1x+hTZEN6+9aWQhrnaW3wW24stksCoWCI3u5XEY+n3fz+LhQAcESoE7o0fbYwWAQ2KAyl8u5Cb607qolMMKPDyP9iNDMMpVtPuH9vw/7/qHj86vfBacvRViJ0J9512q1HPnVyut+d0p49Vi0645DL4vFohuvzd11OU+flpjQ69J5gtoiq/eV+9/5G3KodTfCjw8j/QhQS0/LO4zw/kP5FPKH/c2w92l5jl+1aqAkY/KM5Ndx2jqxRsuJhJbhmJXnlN1sNuu079o6G1Y+HFb/D+sJ0JbiMO/GCP9piD3ihtookhDog/yYG6947GF96N8fe+9D5Fd5ro6PDmucITk1YcdQJmzjS2bgfbIPW5TCtAFaxvRfZtk/CaE3zUj/CRiF8KNinIdcr8dPIoapB1UNqITn+elSk/h8+RUEn5Rh4UfYdelXf7Ewon8WGOmjijAvYJgiT/GY9eXfGH62MNIb7hBmfcMwaiLS8LOCkd5giBhCSW/9iAZDxGCkNxgiBiO9wRAxGOkNhojBSG8wRAxGeoMhYjDSGwwRg5HeYIgYjPQGQ8RgpDcYIgYjvcEQMRjpDYaIwUhvMEQMRnqDIWIw0hsMEYOR3mCIGIz0BkPEYKQ3GCIGI73BEDEY6Q2GiMFIbzBEDEZ6gyFiMNIbDBGDkd5giBiM9AZDxGCkNxgiBiO9wRAxGOkNhojBSG8wRAxGeoMhYjDSGwwRg5HeYIgYjPQGQ8RgpDcYIgYjvcEQMRjpDYaIwUhvMEQMRnqDIWIw0hsMEYOR3mCIGIz0BkPEYKQ3GCIGI73BEDEY6Q2GiMFIbzBEDEZ6gyFiMNIbDBGDkd5giBiM9AZDxGCkNxgiBiO9wRAxGOkNhojBSG8wRAzxR/499he5CoPB8BeDWXqDIWIw0hsMEYOR3mCIGIz0BkPEYKQ3GCIGI73BEDH8f/aq/EM/063/AAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 29\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 30\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 31\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 32\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 33\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 34\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 35\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 36\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 37\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 38\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 39\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 40\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 41\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 42\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 43\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 44\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 45\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 46\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 47\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 48\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 49\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 50\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 51\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 52\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 53\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 54\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 55\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 56\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 57\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 58\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 59\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 60\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 61\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 62\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 63\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 64\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 65\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 66\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 67\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAP0AAADnCAYAAADVeFABAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nO29V1eU2br3/a9ABaqoQM4UIEERUcQAaqtta2vn1b26997r/B3v2Xuyj55v8Jw+X+HZe+xeY62x2s62ARURESVJECRLKkJROYe73gPHnH0XFFBFMNX1G4PRNFB33VXWf85rXlESjUZBEETqIH3TN0AQxOuFRE8QKQaJniBSDBI9QaQYJHqCSDHk2/yeXPvvENFoFGazGa2trejq6oJcLkdaWhoikciOrieRSOD1elFYWIhPPvkEdXV1UKlUe3zXxD4iiffD7URPvANEo1FIJBJIJBIIgoCxsTH8/vvvUCqVUKlUOxI9u57NZsOhQ4dw7tw5SKVkGL4PkOjfM6LRKGZnZzE9Pb1n1wyFQvB6vZBI4m4cxDsGLd3vIXL5n2v5XghVqVSS4N8jSPTvIWIzXLwAJHsN9li5XE6if48g8/49Z6dOPEEQwFK0d3oN4u2Edvr3EEEQ3vQtEG8xJPr3EPKyE1tBnw6CSDFI9ASRYpDoCSLFINETRIpBoieIFINETxApBomeIFIMEj1BpBgkeoJIMUj0BJFikOjfQyj3ntgKEv17COXeE1tBnw6C2EN+6l/AJ/+nHf/P/+2G1RN807cTF6qnJ4g9YtUVwH/+4xnCQhTPzU5kaUbxv7858qZvawO00xPEHuEPRRAW/mwg7fKH3+DdbA6JniD2iJLMdPy/5ysgkQD5OhX+v0tVb/qW4kLmPUHsIf/r2kH85+UaKORv73769t4ZQbyjvM2CB0j0BJFykOgJIsUg0RNEikGiJ4gUg0RPECkGiZ4gUgwSPUGkGCR6gkgxSPQEkWKQ6AkixSDRE0SKQaIniBSDRE8QKQaJniBSDBI9QaQYJHqCSDFI9ASRYpDoCSLFINETRIpBoieIFINETxApBomeIFIMEj1BpBgk+veQ/RhVHY1Gt/8j4p2ARE9si0wmg0QiedO3QewRJHpiW/bDciDeHCT69wy5XA6p9M9/VvH3ySKTyQAAbrcbgUCATPz3BBL9e0QgEMDi4iLcbjf/WSQS2fH1wuFXo5YPHToErVZLon9PING/B7DztsViQXd3N5aWlqBUKgHszAEnPr83Nzfjb3/7G0wm066sBuLtgf4V3xPC4TBsNhtevnwJq9W6K8cbWyjkcjlqa2vR0NCAnJwcyOU02fx9gP4V3yMCgQAsFgusViuCwWDSj5dKpdBqtZDJZEhPT0d1dTVOnjyJwsJCpKenkwf/PYFE/54gCAJ8Ph+Wl5dhsViS9rgrlUrk5OSguLgY6enpyMvLQ0tLC5qbm5GVlUW7/HsE/Uu+BwiCAJvNhpmZGczMzMDv9yf1eIPBgJKSEphMJhQUFEAmkyE3Nxd1dXUoLi6GSqXapzsn3gQk+necSCQCt9uN4eFhdHR0YH5+PqnHGwwGVFVVobq6Gnl5eVAqlVAoFCgtLUV+fj60Wi2Z9e8ZJPp3GEEQ4PV6MTs7i0ePHqG9vR1OpzPhx6tUKhQXF+PAgQMoLS2FUqlENBpFXl4eqqqqkJ2djbS0tH18BcSbgES/h4jDY69jdxQEAW63G5OTkxgYGMDU1BSPrSeCSqVCTk4O98wzwdfV1aG2thZGo3Hfw3TrQ4rbvW/RaJQ/RiKRkBWyA0j0e8T6D+PrIhKJwOv1wuVywefz8edPJD4vkUggk8kgCALkcjlyc3Nx6NAh1NTUICsr67UIPpmFkv09c1JKpVIS/Q4g0e8xr3O3l0gkUCgU0Ol0UKvVST8+Go0iGAwiFArBaDTi4MGDOHjw4GsRfLKw93X9QkEkD4l+l4g/hK/7wyiVSqFUKmEwGJCRkZH049mOmZGRgbKyMlRWVr4Wkx74831L1DpK9u+JzSHR75L1gn+d50yJRIK0tDTodDpoNBpIpdKk4vPRaBRyuRwlJSUoLy+H0Wh8bfF4Zqaz90280Kx//8SCf1ML7PsEiX6XsPPz+g/q6xK+XC6HSqWCUqnk5/NEkUgkSE9PR1FREfLz83m+fjKIRZjogsfEG4lEIAgCf8xWZ3TxWZ7dO7EzSPS7JN6H73V+IKVSKRQKBaRSaVKee+DPLLysrCxotdqkd/lIJIJAIMDLbhUKBZRKJeRy+ZbvgSAICIVCCAaDCIfD/DWkpaXxx4kfv/48T1773UGi3wPehg+g2FROlOzsbNTX16OwsDDpeHwkEoHL5cLq6iqWlpYgCAKysrKQn58PnU4HhUKx6X2GQiF4PB44nU74/X4olUpotVpoNBoolcq4PgVBEPhrZKInE39nkOjfcQRBQDAYRCAQ4D9LVBAlJSWor69HXl4eb5iRCJFIBHa7HWNjY+jr68P09DQikQhMJhNOnz6N6upqyGSyDdeMRqMIh8Nwu92Yn5/H3NwcHA4HdDodioqKUFhYCJ1Ox4XPFlNBEBAOh7klI5PJ3rrowrsEif4dh1XW2e32pB5nMBhQVlaGwsJCZGRkJGytCIIAh8OB58+fo7W1Fffu3cPi4iKCwSAqKiqgVquRnZ0NtVq9QfSsKMhsNqO/vx/Pnj2D1WqF0WjEoUOHEAqFUFpaCr1ez48sbKEIBoMIBoM8TEmi3zkk+ncYJsDh4WHMzs7ynyeyy5tMJlRXV0Or1SYsIJbnPzExgV9//RV//PEHpqam4Pf7EQ6HEQgEMD4+jiNHjiAnJwcKhYIvJtFoFKFQCFarFaOjo3jw4AF6enrg9Xqh0WiwtLQEn88HQRBgMpmQkZHBfQzBYBAejwc+nw9SqRQajQYymYzM+x1Con/HsdlsePr0KV68eMF/tpkYxGb/gQMHYtpgJbLTRyIRTE9P4/fff8eNGzcwNDQU81xOpxMWiwVOp3NDmy4merPZjL6+PvT29mJsbAzRaBRpaWlwuVwIhULcOigqKkJ6ejoAwOv1wmazwe12Q6FQcKfhZn4DYmtI9O8w7Gw9NDQEi8Wy7d+LRV9SUoIDBw4kXEUXiURgtVrx9OlT/PjjjxgeHo6JsTMn22YLTjQa5T38BgYGMDc3B7/fD4lEgkgkArPZDKlUCrVaDalUimAwyBOFHA4HVlZW4HK5+EKQnp7OvyeSg0T/jhKNRuHxeGCxWGCz2ZJ6rFwuR2ZmJjIzM/luud1u73a70dvbi7t372J0dDRuPoBEIkFGRgY3zcXXEwSB+x9mZ2d5NSA7s0ciEaysrGBoaAhpaWkIBALIz8+HTCaDzWaD2WyG0+mE0WhEWloajEYj9Hp9wlYK8Sck+neUcDiM2dlZ9Pb2JuzEEwQBCoUCDQ0NMJlMMc0xthJOOBzG0tISbt26hdbWVh4pYJYD291lMhmysrK4MIE/FxNm3rtcLthstg05BdFoFH6/H0tLSxgdHUUkEkFOTg6kUinsdjvf6XNzc6HT6VBaWkr9+HcIif4dhO3yAwMDuHPnDqxWa8KPzczMxJUrV3D48OGEzsTRaBRWqxWDg4Po6OjA6uoqgNijAvteJpPBYDBAr9fHjfuzZB7W2Wd9aJH1B1haWgIALC8vIxqNwul0wuFwwOPxwOVyoaSkBE6nE+FwmHb6HUCifwfx+XyYnZ1Fd3c3ent7eShrK282O3cbjUY0NTXBZDIlJPpQKISpqSm0trZibm6O/1z8XOx7lmTDzuViWBqtON6+HpaA4/f7YbVa4Xa7eSKP2Hu/uroKt9uNSCRCHvwdQKJ/B3E6nejs7MTjx4+37XrLFgMm+AsXLqC6uho6nS6h5xIEAXNzc7h//z6Wl5fjLi7s/wsKCjbd5VmuPfuKhzghh8Xl/X4/fD4ftxBYJp/P50MoFIIgCEklFhHU9/6dw+v1Ynx8HK2trRgaGuI/38prDrzaha9evYqvvvoKBQUFCcfmmbk9PT0NAJsKLCcnB0ePHt00u4+d6UOhUNx7lUgkkMvlMfn7LNswGAzyhSIUCsHv9/PcANrpk4d2+neIcDiMyclJ3L59G0+fPoXH40nocWq1GpcuXcI333yDkydPQq/XJ/Q4n8+HmZkZLnhg82GWhYWFaG5uRklJSUzhDtu5I5EIfD4ffD5f3BZZCoUCGRkZyMrKgk6n44lHbrebWwns+VmxDtvpieQg0b8jhMNhTE9P48aNG/jnP/+JmZmZbR/DzvF5eXn4+OOPcfLkSRgMhoSf0+l0oqurC48ePYoRHUNs6uv1etTU1CA7Oztuzn0wGITVaoXNZuPXYgsCC8FVVlaivLwcWq0Wdrsd09PTcLlc8Hq9/FrMLxAKhRAOh0n0O4BE/w4QiUSwuLiImzdv4ocffsDo6CgAbNs0QxAEaDQanDx5EidOnEBeXl5Sz+vz+TAwMICenp64zjfxjl1SUoLc3Ny4bbtYYs7CwgLm5+dj7jktLQ25ubk4fPgwmpqaUFFRgbS0NJjNZgCA3W6PCUkyZ59Y8OTBTw4S/VuOIAhYXl5GZ2cnfvjhB3R1dcX8Lh7iHbixsRGff/45SktLky6fZfPxmOA3W2Sampq4FRHPVxCJROB0OjE5OYmXL1/GNLbU6/Wor6/HpUuX0NTUhNzcXADA4uIiz+Azm80xDkvql7c7SPRvMYIgwG63o7+/H9evX0dfX19Cj2NCKCoqwvnz5/loqmR2Q1bkstm0HLlczheDpqYmnD59Gnq9fsNzCIIAp9OJ2dlZjI6OYnFxEZFIBBKJBGq1GhUVFTh79izOnDmD8vJypKenQxAEqFQquFwujI2NYWxsjBfjSKVSvrDQ7r4zSPRvKWxUVV9fH3799Ve0tbUllHnHdnmVSoUPPvgA586dQ2FhYVLFKYIgwGKxYHBwEMvLy/zn4l2VCb62thYnTpzAgQMHuGkvNrfD4TDMZjO6urowNjYWs4hkZmbi6NGjaGpqQmVlJXQ6XUz1XFlZGcrLy5Gbmwu73Y5QKMRFL5fLeYiPxJ8cFLJ7CwmHw1hZWUFvby9++ukn3Lx5k2epbQcTgFarRUtLC+rq6pKuRotEIpidnUVraysmJyf5z9eb0mVlZfjLX/6CxsZGZGRkbNiB2TCO0dFR3L17d4PzMTc3F0ePHuWltGlpaZDJZJDL5VCr1cjKykJZWRmKiop4/z4W2hOLnkgO2unfMiKRCJaWltDZ2YmffvoJ7e3tMZlw2yGuojOZTMjMzEw6eSUUCmFhYSEm7XY9Op0OLS0tuHbtGiorK+P6C3w+HyYmJvDkyRMMDw/D4/FwS0QulyM7Oxvl5eXIzs7e0BhDLpdDo9GguLgYJSUlUKlUcDgcfJdn3XNI9MlDon+LCIVCmJmZwd27d/HLL7+gs7Mz4bx6cfFLfn4+PvjgAxQXFye9ywuCgMXFRQwPD2NxcRHAnw48sSPv6NGjuHLlCmpra+P23I9Go3C5XOju7kZbWxsv/WWLUnp6OrKzs5GVlRU3bVcikUCpVCI7Oxv5+fn86CCVSrk1QN1zdgaJ/i2AVZhNT0/j5s2b+Mc//oHHjx/v+HpHjhzBlStXUFJSkpQwotEobDYbHj9+jLa2Nn5uZ0Jn/zUajTh37hxOnz696ZCNUCgEi8WC7u5u9PX18VbX4rh+dnY20tPT41oJzIzPyMiA0WiEWq2OMe1pp985JPo3CEtN9Xq9ePHiBW7cuIF//OMfGBkZSeo6YjHV1dXh8uXLOHLkCAwGQ1KisNvt6O3txc8//4wHDx7Ejc1rtVp8/vnnuHjxIkpKSuL2yo9Go3A4HJiYmMDMzAxCoRCAVym87Jqsc268XZ7BWmOzvv4KhYLv8iT6nUOif0Ow8tjZ2Vn09PTgwYMHaG9v522vkmnxzP6uuLgYX3zxBT788EPk5OQkdZYPBAKYmprC9evXYwQvNulVKhXOnTuHr7/+Gg0NDUhPT48runA4jMXFRXR2dsak8IrJy8tDcXEx38E3QyKR8HM8y80nJ97uINHvgp2MTWbNJZeXlzE2Noaenh60trait7eX59LvpKd7QUEBLl++jKtXr6KmpiapRJxQKIT5+Xk8evQId+7ciammE9/HsWPH8PXXX+PUqVPIzs7e9HqCIHBnpLhhpzixJzc3F4WFhVuKnllC4qEYaWlpFK7bJST6HRKJROD3+3ktu1wu5yGn9T3bg8EgvF4vfD4fPB4PFhcX0dHRgdbWVjx79gwOhyNGEImOmWZ/l5+fj6tXr+Lf/u3fUFtbC5VKlfBZPhgMwmKxoLOzEzdu3MD8/Hzce5DL5WhqakJLSwsyMzO3fW8cDgdmZ2c3nOXZvWdlZSE7O3vTUVriHvl2u5330xM78Cgbb2ckJPpUfnPj7SQs/rywsACz2QyJRAKdTge9Xg+1Ws1NUJZzvry8jJGREQwNDWF2dhZra2uYmZnB1NRUTHppMnPlxYL/5JNPeLw8mamzfr8f8/Pz6OzsxPXr19HZ2cln3DPY87S0tKClpQXFxcVbWhGsWSdrbyW+X3GZL3u/Nhulxd67paUlzM3NwePxbOjUQ2m4OyMh0ZMJ9eeHn3WFffHiBbq7uzE2NgZBEKDX62EwGPhoJua0YsMdBgcH0dfXh5WVlZjrigWc7Bm+oKAAH3/8Mf7617/ixIkTW4poPTabDaOjo+jo6MCdO3fw5MmTTTP+qqur8fXXX6OpqWnbM7jf78fExASGh4f5grb+9WVnZyMzMxMqlYr7HdYXzYRCIdjtdoyPj2NsbAwul4t33BUEAZFIhOrpdwiZ99vAmjl6PB4IggCPx4OxsTG0trbi4cOHmJ2d5f3ambMJ+LOclJWBRiIR7sUWk8yHNp5J/+///u9oaGiAwWBISPAsLNfd3Y0ffvgBN27cgNlsjntvwKuhGJ9++ikuXryIsrKybX0FHo8H/f396Ojo4CWx4teoUqlQVVWFgoKCmGEYYsGzOXkzMzMYGBjA+Pg4fD4fJBIJL6n1+/0IBAIIh8Mx1yG2Z8tPidfr3dFgxHedaDTKTeTJyUkMDw9jeXkZdrsdS0tLGB8fx8TEBMxmc9KTYsUTXxKB3Yf43+HgwYO4du0arl69ioaGBmRmZm4reNamilXs/f3vf8f9+/fjts8We+yrq6tx5coVmEymTQUv3qVDoRCmp6cxPDwctyLPYDDg2LFjKCsri5s4xFplLyws4NGjR+jr64PFYkEwGIRMJkMoFEIgEIDL5YLT6UROTs621gcRy5afFLvdjp6eHoyMjMTMFnvfYaIXBAGzs7OYnJzEysoKVlZWsLq6ys+qjM0+cGKBJ2vCM8TCycjIwKFDh/DZZ5/h2rVrqKmp4UeJrWCTZV68eMHDg/fu3ePFL+tLZtn3er0ejY2NqKurg0aj4fe//vWy//f5fFheXobZbI4pnxVfOysrC/X19SgqKoor+lAohKWlJfT09ODevXsYHx/nLbfZTLtwOAy73Q6r1Yri4uKU+EzuJdvu9N9//z2+//57AK8cMJuZge8T4okt6enpUCqVCIfD8Hq92zaTSOTnySKRSFBVVYUPP/wQly9fRkNDAwoKChLy0odCIczOzqKtrQ3Xr1/Ho0ePNqT2xtuRNRoNT8IxGo18YdlsgRMEAaurq+ju7o4prBG/B1KpFCUlJSgtLYXBYNiwWIXDYTgcDvT39+POnTsYHByEw+GIOdawPntOpxM2mw1+v59EnyRbip4lkDDE45DfZ8QiYO2XXwfrTf+ioiIcP34cdXV1MJlMOHToEGpra5GZmZmQh14QBExOTuKXX37B999/j+fPn2870poteGlpaWhpaeFJONsRjUZhNptx8+ZNDA8Px/2bAwcOoKmpiS9Y6++V1c/fv38f7e3tG/L12d+xNtlutxterxehUChhByaxjeglEgk364BXO/1m7YvfV15Hb/X1IS2VSoXa2lpcuHABH374Ierr62E0GqFSqZCWlpaQ4Fm/+h9//BH/8z//g8HBQQDgR7TNwl2CIEAul+Po0aOora1FdnZ2Qs/n8XgwPz+PwcFBuN3uuAtKXV0dTp06xSfXMFgSztLSEjo6OvDw4UOeL7Aeltzkdrv5jDs2notaYSfGtsujeNej7qP7gzj+bDQa8cEHH+DLL7/EqVOnUFhYuGlRymZEIhHMzMzg559/xn//93/znVcikSTUYquurg5/+ctfUFZWlpCDLBgMYnZ2FsPDw3A4HHFfW0FBARoaGnDw4EFee8/8A6y7Dtvlx8bGNn2uQCCAlZUV5OTkwGKx4OXLl8jOzuY5EsT2kE30BhG3nNJoNDh37hzOnDmDU6dOoba2FgUFBUmbrcFgEIuLi2htbcV//dd/xZjaW1ksYtEXFxejpaUFhYWFCe3yfr8f/f39aG1t5aJngo5Go9Bqtfjggw9w/PhxXjsvfs5AIID5+Xn09fVhdHR0y+NUMBjE8vIy8vPzsba2hqWlJbhcrpSzQHcDif41wnLF2W7LBG8wGHD58mV88803OHXqFPLz83lKb7IEAgH09PTgxx9/5Ca9eHHZDHZPbGhFcXHxhnN3PEKhEKxWK4aHh9Hb24tAILDhuFJVVYWPPvoIhw8f3lCkE41G4fP5MDY2hidPnmzatEOM0+mE2+1GMBhEIBCAw+GA0+mEWq0mEz8BSPSvEbEQ2A6enZ2Nzz77DN9++y1OnDgBnU634woyNu65o6MDHR0d/OfbCZ6JVKFQ4OrVqzh//nyML2crXC4XRkZGMDIyArfbDSC2hNZkMuHChQs4fvx4jOXCLIFwOMxN+6GhoYSdpiwbLxqNYmlpCVlZWdBqtcjIyKCY/TaQ6N8QR48eRUtLC+rr61FfX4+qqioYjcZdXdNqtaKzsxM9PT1cgInk8zORqtVqnDhxAg0NDQmJni0yd+/eRX9/f8zPgVcOyVOnTvGGHvEy8AKBAFZXVzE3NxfThHM73G43nE4nPB4P5ubmoNVqUVhYCK1WS6LfBhL9a0Cn0yEvLw8FBQUwGo3IysrCsWPHcOrUKRw4cABarXZXISeWWtvV1YV//vOf6O3tjfndZrAFIRwOIy0tDc3NzTh06NCWIUFxco7VakV/fz8ePnyIly9fxlwzLS0Nx48f59GHzdpju91uzMzMYH5+nufqJ7JQ2Ww2mM1mGI1GRCIReDyeTefkEbGQ6HcB6+ACbBy8oFAouNjLy8tRX1+PI0eOoLy8HAaDAVqtlo913u3O5PV6MTAwgOvXr+P27ds8T307AYh/39jYiG+//RYHDhzYtqlFNPpqZnxPTw9u3LjBJ+6Ir1leXo5PP/2U99zfbF69w+HA6OhoTN19IsJlKdHFxcXQ6/WQyWS0wycIiX6HGAwG5OXlQa/X8zgzS99VqVQoKirCkSNHUFNTw3f4nJwcGAyGPS0Q8fv9WFhYQGtrK37//XdeGrudcMTpsQcPHsRXX32FixcvoqioaEtnGBN8d3c3/vWvf+H333/fUJ1XUlKCS5cu4dy5cygvL9+0pRar5R8dHcXCwkKyLx1erxfBYDBmvBWxPST6HZCZmYnKykpUVFRAr9fzUco6nQ75+fnIyclBfn4+KisrUVRUxM+Z4ukse0EkEsHq6ioePnyIBw8e8N74W824Y/FxseD/4z/+A9euXUNhYeGW9e1sCMbTp0/xr3/9Czdv3uRZc+IhG42Njbhy5Qqqq6uh0WjiLnCRSAQ2mw3T09OYnp5OaJBHvHsS1zREIhGaV58AJPok0Wq1PCWWeaPZTLbS0lJUVlYiLy8PGo0GKpVq38o+/X4/nxzz888/8/AcsPmMO/HvJBIJGhoa8PXXX+PLL79ETU0Nb/yx/n6ZGT4/P4+enh7cunULd+7c2SB4uVyO6upqtLS04MiRI5uOxGYlyuPj43j69Clvtb1TWBTA5/MhGAwmPbMv1SDRJ4FcLkdOTg5MJhPy8/O52VpYWIiamhqUl5fzds37lQvO+snPzs6io6MDv/76Kx4+fJjUTimVSnHp0iV8++23OH/+PO+Gs94KYa25V1dX8fz5c9y9exd37tzByMhIzHgqttvqdDo0NzejqamJp8bGc965XC5MTEygo6MD7e3tCcXmN3sv2CIVCARgt9vh9Xq37LBLkOiTwmg0wmQycTNYKpUiNzcXhw4dQnV1NYxGI+Ry+a53dnFa7npsNht6e3vx22+/4f79+5ient6Q+grE1uEz8vPzcerUKRw8eBAnTpxAY2MjSktLN5RMi4taxsbGcPfuXdy6dQvPnz/H8vIyj8GLnYUKhQIVFRVobGxEZWXlhpRYZn47HA68ePECd+/exc2bNzE5ObmhRVeiRCIRXmrr8/lgt9vh8/kQiURI9FtAot8G8Qdbo9FwR5xcLudz1WtqapCdnb1nZvz6jDVxr72uri78+uuvuH37dty4NrtfcdtqNknm/PnzvPGGwWCI2d3FFX7hcBirq6sYGhrC3bt38ccff2BgYGDDc4gXitzcXDQ2NsYsfux6giDA6/ViaWkJg4ODePjwIdra2jA2NsbzCXYCOyb4fD4EAgHeVYcceltDot+G9a2etFotn7FWW1uLgwcPJj1UIlGCwSDsdjtsNhuWl5fR09ODX3/9ddNBFOvvF3g1RvrLL7/EsWPHUFJSguzs7E3nyLPnXFtbw9OnT/H999/j/v37G/r6rX8OpVKJqqoqnDhxgltBLKLh9Xpht9sxNzeHnp4e3L17F11dXbBYLLsu3goGg3C5XHC73RAEAUqlEmlpaRS624ZtRS/+cKSlpaVEYQOb28Z6sgGvzNfq6mqcPHkSFRUVKCwsRGFhYVLdZ7cjGAzC7/fz1lZsVPX9+/fR398Ps9mM1dXVDeb1em99dnY2zp07h7q6OjQ0NKC+vh5lZWVQqVRxHXUMdoZ/+vQp/v73v+Pu3bvcWSd+vvXPXVVVhdOnT+PQoUPQ6/U8Wcbj8WBqagpPnjxBR0cHnj9/jsXFRTidzj15v1jevtfrhVwuh8FgQHp6Onnvt4GaaGyC2Dw+cOAALxo5c+YMCgoKoNVqoVQqdyV4cV07y0wbHBzEwsICvF4vnE4n77ordnbFc44Br87seXl5aGlpwSeffMJbYrOe/Oyxmwnf6/VifHwct2/fxq1bt3j/vILWFcYAABWKSURBVHjmPPPWHzhwAJcuXUJLSwsKCgogk8ngcDiwuLiIoaEhPH36FE+ePMHz589jnH97BXsdSqWSi57O81uTVBMNlUqVdCPIdxGZTMYXuObmZnz33XeoqamByWRCbm7unniHw+EwbDYbVldXeXbZs2fPcOvWLTx79mxL51a8M2tFRQU+++wzXLhwAYcOHUJubi70en3c+9wsbr6wsIBbt27FNMzcLLNPLpejpqYGH3/8MZ9eq1ar+e7e0dGBW7duYWBgIK6jcS+Qy+VIT0+HSqWCSqWCWq2mcF0CbCn69PR0/O1vf0NjYyMv9UwFJwmL+4ZCIVRUVODIkSPIzc2FRqPZdShOEAT4fD6srq6iv78f9+7dw5MnT7C8vAy/34+1tbWYARjx7g34U/hSqRRnzpzh/ewqKyuh0+mSMnHZUWJwcBC//PLLtjX4LK/+2rVr+PDDD1FZWYn09HT4fD4sLi7i3r17+OWXX/DixYsde+YTQS6XQ6/Xx1hddJ7fni0/wQaDARcuXMD58+df1/28FbDdjYV+mINoN7s7C4NZLBY8e/YMDx8+xJMnTzA8PLwhBVUikUAmk/HmnGKBM1Neq9WivLwchw8fxpUrV3D27FmYTKYdLUrhcBgTExO4f/8+nj9/vuG5xGi1Whw7dgxffPEFLl26hIqKCqhUKt5eu6enB21tbRgaGoob2ttL2E7P8iWoq1NibLvTE7uHtYMym83o6enBH3/8gd9++40n1KzfvVnYLN51gFfn17Nnz+KLL75Ac3MziouLkZGRsSPBRyIRrK2toaurC/fv3+cDKuIJSK1W4/jx4/juu+/48AulUoloNAqv14uXL1+ivb0dg4ODMfe/X9Yhm23HRlnTWT4xKGS3z0QiEd4k4rfffsMff/yBFy9exHiwkxFFZmYmPv30U3z11Vc4efIkcnJydpXq63Q68fTpU9y7dw/Pnz+PO3ASeBW9OHXqFL755ht8+OGHPBoAvHLwms1m9PX1obe3N+4Ajf2AWWL5+fkoKiraNM+fiIUGWG7Dbj5EbCjD0NAQbty4gd9//x1DQ0P891u1sVrfWkuv16Oqqgpnz57FtWvXcPz4cWRlZe343oBX5amseObRo0ebVqsplUocO3YMn3/+OT766COYTCZuUrPutAMDA7h3796mXWz3g3A4jEgkgsLCQpSVlUGr1dJunwA0wHKfYCmnIyMjuHnzJn766acNXV63ioSIz/L5+flobm7GtWvX0NzczD/gu7k3u93Oy2Nv3ry5af67VCpFTU0NP8Mzk57dIyucYT6K/QjLbYZKpUJ6ejqysrKQlZWVUE8/gsz7fYEljbA59Hfv3sXLly+3tZjizbmrra3FV199hY8++gg1NTXIysracatnNvhxbW0Nvb29+PHHH3Hjxo1NBS+RSFBTU4OrV6/i4sWLKC8v551sI5EI/H4/Xr58iTt37qC9vX3D5Jz9xGAwoLy8HCaTibfUJhKDRL8PsKmrL1++xMjICF6+fMnj/nK5HJFIZMs5dwqFArW1taitrUVLSwvOnj2L2tpaaDSahLrhxCuNDQaDsFqteP78OTo6OvDo0SM8e/aMC369t16pVOLAgQO4fPkyPvroI1RUVPDFJhQK8em9t2/fxs8//xzTPed1YDAYUFtbi4aGBuTn51MWXhKQ6PcJNvvO7XYjEAhwsTKTfr14dTodr8Gvra3FxYsXcebMGVRWVkKv13OTeruj1vpiHbfbjcXFRT5pt6enBw8fPuTz5tYX6KSlpcFoNKKiogJnz57FxYsXeeJNJBKB1+vF8vIyXrx4gQcPHuDOnTsx4bnXhVKpREFBAaqrq5Gbm0tJOUlAot8HJBIJVCoVsrKyeEstt9sdVxgKhQJlZWU4fvw4mpqaYDKZeBNNlhCUrOnq8/ngcrlgt9uxsLCAp0+f4o8//sDw8DBsNlvMEFLx4qPRaFBeXo7GxkacOHEChw8fRmlpKVQqFfx+P6xWKxYWFtDT04Pbt2/j6dOnWF5efiOOXrlcDo1Gg8zMTHLgJQmJfh+QSqVIT09HWVkZLly4AI1Gg8nJSbjdbshkMmRkZPBMsoyMDOTm5qKyshJVVVU8zVcmk8VtahFvpxcEgU9zDYVCXOjt7e2YmpqC2WzG7OxsjJNNbM6rVCpUVlbi2LFjaGhoQG1tLUwmE7KysiCXy/kI6v7+fnR2dqKvrw9TU1N7VjiTLBkZGSgvL0dZWRnl2u8AEv0+wHZ65nU3mUwwm81wuVxQKBS8SaZer+cttZRKJc/8EyMWuljwLFuPhQWnp6cxNTWFlZUVzM7Ooq+vD48fP44RujgMKC7Sqa+vR0tLC06fPo0DBw7AaDQiLS0N0WgUDocDExMTePToEdra2tDT0/Pa4vDxkEqlyMvLQ319Paqrq6FWq7esHCQ2QqLfJ2QyGR88qdPpYDKZEA6HIZVKoVAouNi3a928/nfBYBButxtWqxVutxsulwvz8/Po6upCW1sbJiYmNm1Msb5Srry8nDvqDh8+jJycHGg0GqSlpfG2VvPz83jw4AGuX7+OFy9e7KrSUiKR8MWNdcMV+zsSQaFQIC8vDyaTCQUFBXvSQjzVINHvIyxvX6FQxPRzY1/xEAuA/Y0gCLzWfm1tDWNjY3j8+DEGBwdhNpvhdrthsViwsrKyIX1W/Fxic/7YsWO4cuUKzp8/z2feixtQsEzC7u5u3Lx5E2NjY7sSvE6nw8GDB3Hw4EHo9Xqsra1heHgYExMTcLlcCV9HJpNBo9EgIyODZtftEBL9ayCeyNfvbvFMeFb043Q6MTMzg6GhIYyMjPC5b/FGOrPnEocBxY0viouLcezYMVy+fBkffPABKioq+FBJsSff7XZjamoKjx8/xrNnz3acdMOes6mpCefOncORI0eg0+mwuLiInJwchEIhjI+PJ7ygsGIk4M8jDpEcJPo3xFYmKTursx18fHwcnZ2duH379rYCXG/CM9LS0lBTU4NLly7ho48+Qn19PXJycjaYx+zMbzab0dnZif7+/l2Vx5aWluLSpUv44osvcPjwYWRmZkImk6GgoACRSARLS0tYXFxMSvTAqxbgHo8HOp1u3zoPv6/Qu/WaWJ+As74LDdvVWR2/0+nE9PQ0Hj9+jAcPHvBWU+JwGyNeNxzx9ZlD8eLFizhx4gQqKyt5Y8z1sCaWMzMzaGtrw/T09I5fs8FgQEtLC7788kscP34cOTk5XKByuRwVFRU4ePAgHj9+nHA2n3iO3srKCs9hIA9+4pDo9xlmLosFzQpFIpEIF7u4iaTZbMb09DRGR0fR19cX04yCTckRF8fEW0jkcjmKi4tRXl6Oo0eP4ty5czh69CgKCgp4Q5R4hEIhzM3Noa+vD8PDw/D7/Tuqh1epVKivr8f58+dx7Ngx5OTkxCwyMpkMer0e+fn5SdURMHGvra3xWXYGgyGpe0t1SPT7iCAIPN/d4XDAYrFgbW0NTqcTXq+Xiz8cDvPOrsvLy5iamsLExAQWFhbgdrvj9qSPh1wuh1Kp5HHsM2fOoLm5GbW1tcjLy4NWq92yDJcV4vT396Ojo4OH5nZybs7IyEBTUxPq6+vjWhXie0hml2Zddu12O9bW1uB2uxEKhcihlwQk+n2A7e6hUAhutxtLS0sYGxvDwMAARkdHeUfYQCDARc/O8cxL7/f7t2ybtZ7s7GxUVVXhyJEjqKqqgslkgslkQlFREYxG45ZiZ9aCy+XC2NgY2tradl0xp9FoUFhYyBN8xMcP9lpdLhfW1taSep5wOAyHw8EzDldWVvhUXBJ+YpDo9xAmHrbDO51OzM3N8Z3z2bNnmJubg91uj3s23w6VSsWz+YxGIx95rdfrkZeXh4qKCtTW1qK0tBRGoxEqlSqmzddmk3PEs+VaW1vR1dW16wQcNt3W6XQiGAzGTP5hCUVTU1MYGRlJqnEmG/qRnZ2N1dVVzM7OIicnh4/9JraHRL8HiM/U7Pzu9/ths9kwPj6Ox48fo6OjA7OzsxuSUTbbfWUyGZRKJbRaLXQ6HQwGA7KyspCbm4uioiKUlZWhqKgIOTk50Ol0UKvVUKvVvDtsvPFa6x19giAgEAjwrLv29nbcvHkTU1NTu35PXC4Xnj17htzcXESjUeTl5UGlUvHWYZOTk3j06BH6+/uTmsPHpu/YbDY+BMThcKREl+a9gkS/S9Y70pjoxWd0s9kMp9MZd+RSvHi9OIvv8OHDqKurQ3FxMYxGIzIyMvgX293EmX3bhQKZ09Dn88Hj8WBtbY2n2ba3t2NsbCxm1sFOcbvd6OnpQSAQwOLiImpqapCZmYlwOIyFhQUMDAygu7sb09PTSR8jfD4f/H4/AoEAfD4fQqEQxeuTgES/T6xv2sgGXm41Ox74M820rq4Op0+fRmNjIyoqKnhMXS6X82KcrVo+szO0+LgRCAR47P/ly5eYnJzExMQEJicnMTk5ifn5+T1rWR0MBmE2m+HxeDAzM8NNcLbTLy0tYXV1dccLTLzhG0RikOj3GKlUyk1zNrO+pqYGi4uL8Hq9cLlccUXP8tKzsrLQ0NCAS5cu8WKdjIwMvpsnCkuyYQ4zVmnHvqanpzE2Noa5uTnYbLZ9MY8FQYDdbofdbseLFy/29NqUb79zSPR7wPqMNuDPMUsVFRXwer3weDwQBAETExPweDwxJqlMJoNMJoPBYEB1dTVOnz6NkydPory8HHq9PumhjMyM93g8sFgsmJycRG9vL7q6uvD8+XOsrq7C5/MhHA6/s2dhNkePTRCmRSBxSPS7ZP1QRwDc7E5PT+fz66PRKGQyGVQqFZ8pz0JyMpkMarUaeXl5qKmpQU1NDQoKCqDRaPjunmj5KPMp2O12flZ/9OgRXrx4gfn5+X0bMfW6iUQiUKvVKC4u5sVCRGKQ6PeAeGJkZ/r09HTk5+dDIpHwqju1Wo2XL1/Cbrfzctv09HRkZmbCaDTGiH2r51iPIAjw+/1YXl7G4OAg2tra0N7ejqGhoZizerwGnO8a4XAYWq2WzxdkDTuJ7SHR7wPiHV8ul0OtViM7OxvV1dU8C08qlWJ+fh4ulwvRaJTXmDNHm9VqhUqlgkQigUKh2NJpJ04EMpvN6O7uxq1bt9De3o7FxcUNPoR3WezAq+IhrVaLnJwc5OfnJz27L9Uh0e8zrBRUpVLBYDCgoKAApaWlsFgsPHGFhZ+sVismJiZ4Ewufz4eCggJkZGTw2LtY/OLwoMPh4LHvtrY2PHv2DMvLy2/41e8P2dnZOH78OBoaGqDX60nwSUKifw2w+Lm4aw5zzoVCIZ6O6/f74Xa7YbPZYDabMT4+jvLychQVFfHR0yxsx3LQWS7A5OQk+vv70dXVhZGRkaQaU7xLGAwGnD17lnf70Wq11C4rSUj0e8z62DELm4VCIV4D7nK54HK54Ha74fV64fV6uTef5aPPzMxgYGCAZ9+VlpZyU5YdBXw+HywWC6ampnhTjZWVlV11uHmbUSgUOHr0KL744gucOnUKubm5VEu/A+gd2yNYssj67DxxBZ3VasXy8jKWlpZ4tR0rrGHVcyyJhpXZLi4uYmRkBDqdjreIUiqVkEgkPNnGZrPxijMWEdiv8dCvG/HrOH78OL755hs0NzejoKCABL9D6F3bA9a3pmJtnFjKKzPbHQ4H1tbWYLFYYLPZ4Ha74fP5Nt2Z2WPFxS8KhQJpaWn8A88WCnEPvs2657yLMCdnQ0MD/vrXv+LKlSsoKSkhwe8Ceud2iXiHj/clrn9nZ3qNRgOtVgutVotQKMRTc9dPjRU30WQhQJbIw8Qv7hfHusuyRh1i6+F1w9KExa+DvbZIJLJlKrIYjUaDxsZGfPfdd7hy5QrKy8spJr9LSPS7RLyzs/9nMKGyarns7GxeUsvqza1WKzweDwKBADfz2TWYcJjXnolcLpfz3Z4Ji4XtWJYdszJcLhdWV1dhsVgSFtpuYOFJo9HI21iJHZks0rCysrJldZ1EIkFeXh5aWlrw+eef4+zZsygtLSXB7wGSbczA98NG3CfEgo9XPSfe6ZmX3u12w26389JQl8sFr9eLQCCAQCDABQv8mccvFjvb6cUTcFhTCnaMcLlc8Hg88Pv9cLlcsFgssFgsvFsPqwHYC4efTqdDeno6gFeCr6ysRG1tLYqKivggCr/fD6fTCZfLBafTyZtf2O12XmrMjiWsqUhWVhZOnDiBq1ev0hl+58QNaZDod8lWbZjjnfXX98oLhUIIBoN8JNV60Yu/xJV64hAVu6bX6+VOPbvdDo/HA6fTibW1NV5zHgwGYbPZMD8/j9XV1Q2iY6+JfYmfH0CMOPV6PcrLy1FeXs4djQcPHkRtbS3y8/OhUCh4p5vFxUUsLy/DarXC4XDAarVuKDdm1kxaWhqKiorQ3NyMhoYG8tLvHBL9frJVN9p4f7veEhB/rT8ibPYlvp64Tt7r9fIhlqy6bnV1lT+n2+3G6upqTP4/AN5Uw+Px8N5zbFCkVquFSqXi/odgMMjHRR89ehQmkwl6vR46nQ56vR7p6emQyWQ8/4CFKO12O5aXlzE7O4u1tTUeqmS1CsXFxSgpKUFeXh5ycnJ4qy9iR5Do32bi+QQYm+X2x3usuMMui+MzU9rpdMJisWBpaYlP0RUEIWbQRTAYhNfrhcPhgN/vh0wm44M25XI5901kZmbCYDAgLy8PZWVlyM/PjxmaIW52ySwctgBYrVYsLS3xnZ7Bio4KCwuh0+li/AHEjiDRpxrsPM28+haLBTMzM5ibm0MwGNxwRGBHDRYBYOY2awQikUiQkZHBm27q9XpIpVL++0S72m7W8UYqlUKtVkOlUlFq7d5Aok91WMLP+h2WTdNhzrZIJAKVSsXbczHBR6NRKBQKGAwGPnGXeKsh0ROIGbIBIOYowNKCBUGAWq1GRkYGn7wrnqLDogfEWw+JntgcFvZj3nQWLSCv+TsNiZ4gUoy4oqepfwSRYpDoCSLFINETRIpBoieIFINETxApBomeIFIMEj1BpBgkeoJIMUj0BJFikOgJIsUg0RNEikGiJ4gUg0RPECkGiZ4gUgwSPUGkGCR6gkgxSPQEkWKQ6AkixSDRE0SKQaIniBSDRE8QKQaJniBSDBI9QaQYJHqCSDFI9ASRYpDoCSLFINETRIpBoieIFINETxApBomeIFIMEj1BpBgkeoJIMUj0BJFikOgJIsUg0RNEikGiJ4gUg0RPECkGiZ4gUgwSPUGkGCR6gkgxSPQEkWKQ6AkixSDRE0SKQaIniBSDRE8QKQaJniBSDBI9QaQYJHqCSDFI9ASRYpDoCSLFINETRIpBoieIFINETxApBomeIFIM+Ta/l7yWuyAI4rVBOz1BpBgkeoJIMUj0BJFikOgJIsUg0RNEikGiJ4gU4/8HjFXxTv8jiJkAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 68\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 69\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 70\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 71\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Current iteration: 72\n", "Starting forward run...\n", "Starting adjoint run...\n", "Calculating gradient...\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "algorithm = nlopt.LD_MMA\n", "n = Nx * Ny # number of parameters\n", "\n", "# Initial guess\n", "x = np.ones((n,)) * 0.5\n", "x[Si_mask.flatten()] = 1 # set the edges of waveguides to silicon\n", "x[SiO2_mask.flatten()] = 0 # set the other edges to SiO2\n", "\n", "# lower and upper bounds\n", "lb = np.zeros((Nx*Ny,))\n", "lb[Si_mask.flatten()] = 1\n", "ub = np.ones((Nx*Ny,))\n", "ub[SiO2_mask.flatten()] = 0\n", "\n", "cur_beta = 4\n", "beta_scale = 2\n", "num_betas = 6\n", "update_factor = 12\n", "for iters in range(num_betas):\n", " solver = nlopt.opt(algorithm, n)\n", " solver.set_lower_bounds(lb)\n", " solver.set_upper_bounds(ub)\n", " solver.set_max_objective(lambda a,g: f(a,g,cur_beta))\n", " solver.set_maxeval(update_factor)\n", " x[:] = solver.optimize(x)\n", " cur_beta = cur_beta*beta_scale" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We'll wait for a few minutes (or longer) and visualize the results. We see that every time `beta` increases it either drives the cost function out of a local minimum or into a poorer spot. It gets harder to converge as `beta` increases. This is expected as the gradient starts to swing wildy at these thresholded transition regions. Regardless, we are still able to generate a somewhat smoothed structure after just 72 iterations." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure()\n", "plt.plot(10*np.log10(evaluation_history),'o-')\n", "plt.grid(True)\n", "plt.xlabel('Iteration')\n", "plt.ylabel('Average Insertion Loss (dB)')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To be sure, we can plot our results and see the resulting geometry." ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAP0AAADnCAYAAADVeFABAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nO2dV1eb17rv/+oFVCgSCDCmGjAxxXbAxjXuLXFWYq9kZO2RfXXGuTs35+p8g3N7vsAea+2dtneSlezYsWMwjo1xxxRjQ8DYphcJhIQKkl6Vc+ExZ16BQBLGVc9vjDVWrDLfV0L/OZ/5zKdIIpEICIJIHaSv+wYIgni1kOgJIsUg0RNEikGiJ4gUg0RPECmGPM7z5Np/i4hEIpiamkJrayvu3LkDuVwOhUKBUCi0pvEkEgm8Xi/y8vJw4sQJVFdXQ61Wr/NdEy8RSawH44meeAuIRCKQSCSQSCQIh8MYHBzEhQsXoFKpoFar1yR6Nt78/Dw2b96MPXv2QColw/BdgET/jhGJRDA6Oopnz56t25iCIMDr9UIiiblwEG8ZNHW/g8jlf87l6yFUlUpFgn+HING/g4jNcPEEkOwY7L1yuZxE/w5B5v07zlqdeOFwGCxEe61jEG8mtNK/g4TD4dd9C8QbDIn+HYS87MRq0K+DIFIMEj1BpBgkeoJIMUj0BJFikOgJIsUg0RNEikGiJ4gUg0RPECkGiZ4gUgwSPUGkGCT6dxCKvSdWg0T/DkKx98Rq0K+DINaR/+6ewIn/dx3/4987YPcEXvftxITy6QlinbC5/Pjf/9WDYDiCvqkFZKX9gf/7ac3rvq1l0EpPEOuETwghGP6zgLTLF3yNd7MyJHqCWCc2ZGrxP/eVQCIBcvVq/K+D5a/7lmJC5j1BrCP/53gV/vfhCijlb+56+ubeGUG8pbzJggdI9ASRcpDoCSLFINETRIpBoieIFINETxApBomeIFIMEj1BpBgkeoJIMUj0BJFikOgJIsUg0RNEikGiJ4gUg0RPECkGiZ4gUgwSPUGkGCR6gkgxSPQEkWKQ6AkixSDRE0SKQaIniBSDRE8QKQaJniBSDBI9QaQYJPp3kJfRqjoSicR/EfFWQKIn4iKRSCCRSF73bRDrBImeIFIMEv07hlwuh1y+Pi0K2eoeDAYhCAKZ+O8IJPp3CL/fj/Hxcdjt9nUZj/kG0tLSIJFIXoqvgHj1kOjfAdiKPDs7izt37uDJkyf8uRddnY1GI2pra2E0Gmlf/45Aon9HCAaDsNvtePbsGebn5/njLyJ6jUaDnTt34siRIygoKIBMJluPWyVeM9Sf/h1BKpVCEATMzs7C6XSueRyVSgWNRgO1Wo3c3Fzs2LEDjY2NMJvN6+YrIF4v9Fd8RwgGg1hYWMD4+PiaRa9Wq1FQUIANGzbAaDRCp9OhpKQEZrMZWq12ne+YeF2Q6N8BwuEwRkdHce/ePTx+/Dhph5vRaER2djZMJhMsFgvy8/ORlpaGSCQCjUbzku6aeF2Q6N9S2F49EAhgamoKzc3N+Oc//4mJiYmkxzKZTNi8eTPy8vKg0+mg1Wr5dsHv98PhcECn00GlUq33xyBeAyT6t5RQKASfz4eZmRl0dHTgwoULuH37NoDn3vxkHHg6nQ65ubmwWCx87GAwCACw2+0YHx+HXq9HdnY2pFLy/b7t0F/wLYV56wcGBpYd0yWLVCqFVCqNOpKTSCSQyWSYm5vjJwKhUGg9bv2FiUQiFCj0ApDo31KYQP1+P+bn5+H1evlzyQqCrezBYJD7A9gk4PV6Ybfbsbi4+EaIngmehL92yLx/S5HL5dDr9TCZTNDr9S9kdkciES5oFnkXCoUgkUigVquh0+mWHdctFd2rTMph115qnRCJQaJ/S5HJZEhPT0dOTg5yc3Oh1+vXPJZYwExEkUgECoUCOTk5KC8vR2ZmJqRSKZ8Q/H4/fD4fBEGARCKBUqmERqOBSqVKeAJaes1E30PhwC8Gif4tRi6Xw2g0YtOmTbBYLHjw4AGA5Bx5bO8uk8kQDAYRCASg0+lgsVhgNpuRm5uL3NxcZGRkQC6XIxwOw+PxwGq1Ynp6Gk6nE8FgEEajEQUFBcjJyUFaWlrcVTiWpZAIYtFLJBJyLK4BEv1bTlpaGoqLi5Gbm8sfS0b0zLSXyWQwGAzQaDTIzc1FWVkZ8vLykJ6eDoVCAYVCAeD5/t/r9WJ4eBgDAwOYmZmBy+WCWq3Gxo0bUVNTwy0D9p6lhMNhCILAtxQKhQIymSwhAbP7ZeY9kTwk+rccuVyOtLQ0qNXqNb2frbB6vR5VVVUoLCxERkYGDAYD0tPTlwlLIpHA7/djbGwMjx49wvT0NObm5uByuZCeno6hoSEcPnwY27ZtQ2ZmZpQvIBKJQBAEuN1u2O12eDweKBQKZGZmwmg0QqVSxbUOQqEQAoEAt1BWmliIlSHRv+X4fD7YbLY1h95mZWWhpqYGjY2N2LJlC8xmM5RK5YrmeSQSgc/nw9jYGHp6ejA+Pg6XywW/3w8AGB0dhdvthkKhQF1dHTIyMiCVSrng7XY7BgcH0d3djcnJSRgMBtTX1+O9996DyWRacfIKh8MIh8MIBALw+XyQSqUk+DVCon+LCYfDsNvt6OjowODgIH88UdNer9fj/fffx+HDh9HQ0IDc3NxVhRQOh+F2uzEzM4OnT59iaGgIs7OzUa8ZGxvD5cuXkZmZya0HtVqNQCCA6elpdHd34+rVq7h//z5mZmag1+sxPDwMt9uNHTt2ICcnB0qlMmpMtsILggCPx4OFhQWeGEQkD4n+LSYSiWBubg43btxAX19f1OOJkJubi+PHj6OpqQl5eXlxU2eDwSCmp6fR1dWF/v5+zM3NxXzd+Pg4rl27hqqqKpjNZuj1eszPz+Pu3bs4d+4crly5AqvVyvflk5OT8Hq90Gg02Lp1K0wmU9TkEw6H4ff74XQ6MTs7C5fLxbcERPKQ6N9iIpEIvF4vnj59Cp/Pl9B7xE6+zMxMbNmyBfn5+QnlykciETx58gSXLl3CwMDAipOLIAiYmprCxMQEbDYbfD4fhoaG0NLSgra2NszMzPDXhsNhWK1WXL9+nR/5bd26FXq9nt+T3++H3W7HyMgIJiYmEA6HoVQqKThnjZDo31LC4TBsNhuePHmSVHksJhSz2Yz3338fBQUFCSXShEIhHvZ77949uFyuuPfHTHKn04nh4WH09fXxhCBxPADw3BfQ2trKxV5VVQWdTodwOIzZ2Vn09fWhu7sbNpuNZwMSa4NE/5bi9/vx6NEjNDc3w+FwJPQeFlwDALt378bx48eRlZWV0Bm52+1Gb28v7t+/zycZ8Xhi5HI5LBYLLBYLjEYjPB4P/H5/3FDhsbExtLS0IBKJwO12IycnB6FQCE+fPsXt27fx4MEDCIKAmpoaLC4u8nEoKi85SPRvEewHHgqF4HK50NHRgfPnz8PlciV0Ni+XyxEIBAAAZWVlqK2thcFgiBp7JZxOJ37//Xe0tbXxx1aKjCsoKMCuXbtQXV0Ns9mM+fl5GAyGhHwGg4ODEAQB4+PjyM/PhyAIGB4exuDgIKanp5Geno68vDz4/X4y79cIif4tgolSEAQMDAygu7ubm9ksom41mOArKytRXV3Nj9Pi4ff7MT09jZ6enijzfGlEHft3QUEB9uzZg5KSEhiNRkQiER6pF+v1S6/FtiwGgwHBYBAOhwMulwvBYBASiQSLi4s8OYhW+uQh0b9lBINBjI6O4vLly+jp6Yl6PBHKysrw5ZdfYuvWrVEr70rCCYVCywQfC3EcfXl5OSorK3noblpaGrKyshI+YhMEATabDTabbdn4TOiCIEAQBITDYYrMSxIS/VtEOBzG2NgYmpub8fPPP+OPP/5I6v3l5eU4c+YMPvzwQ2zatGnZeXgsBEHA0NAQLl68iOHhYf54rFVaoVBg9+7d2L9/P8xmMz92UygU0Gq1SQXTrGa6M9H7/X6EQiEq2JkkNEW+JQSDQdhsNrS1teGrr77iyTXxEAuturoax44dQ2lp6aqCXyq4mZkZ3Lt3DwsLCzEtArbSRiIR7Nq1C42NjdDpdPy1MpkMcrl83SLoWFTg4uIidd5ZAyT6twSPx4Pu7m5cvHgRd+7cAYCEVjhBEAA8r3RbW1uLiooKfkSXiFgEQYDL5eKRd6s547KyslBeXo6CgoKYk4r4vS8i1GAwCI/HA4/Hk/C2hvgTEv0bTiQSgd/vx9TUFK5cuYKbN2/y5xL9wavVanz66afYvXs3dDodX5lX2sezx1nRzcnJSf5cLI99OByGXq/Hjh07UFBQsGxFX88UWHE4rtfrRTAYpJU+SWgz9AbDPNM2mw3t7e24du0axsbGkhrDbDbj4MGD+Jd/+Rds3bo1qWw8l8uFu3fv4vbt2zwNVix6sQe+sLAQR48eRXFxcUxrgAXrxHpvMrBJ0Ov1wufzUUGNNUCif8Ox2Wy4desW/vnPf+Lhw4cJvUccNFNdXY3PP/8cTU1NSVfXcbvduH//Pm7dusW3CSuRl5eH+vp65ObmctGzSYtlyMUbI1EEQYiq50ckB4n+DSUSicDpdOLmzZv47rvvcOXKFZ6+Gg+x6IuKilBbW8sFH+9cW/y8IAiYnJzksQBLI/DYSq1Wq1FYWIisrKwoS4KN4/F4MDs7C4/HE/e+2YQRz2xnjkE6rkseEv0bBhOdw+FAe3s7/v3f/x2XLl1KWPDAc8EolUrU1NRg165dyMjI4M/FC2Rhz8dbncUTQENDA3bv3h2zs204HMbk5CRu3ryJqampqM8pRqlUQq/XQ6PRIBAIYGFhgYfaLkWpVCItLQ1arRYymYyCc5KERP8GMjs7i5s3b+Krr75CS0sLXyETDbUNBoOQyWQ4efIkmpqaku5ME4lE4HA48PTp06jiHOJrM8FbLBYcPnw4avvAJi4WQ9/f34/m5maMjIyseM2srCxUV1cjJycHdrsdf/zxB8bHx5dNOhKJBCqVCnq9Hnq9ngpprAES/RsCCziZn59He3s7vvnmG1y4cAE+n48LKBHHFxOjwWDAli1bUFJSkrToQ6EQDwJarde9yWTC8ePHsX//fmzcuJEf04lr8o+MjODu3bu4d+8eL3O1dBy1Wo2KigocOXIERUVFGB8fh0wmw+zsbExLQy6XQ6fT8fp9tNInB4n+DYDVfZucnERbWxt+/PFHXLlyJeEceeBPKyAcDiM7OxsfffRR3CCclWBJLhcvXly2OrM9dDgcRlZWFg4dOoSKioqY13G73bhz5w6uXbu26mcpKChAfX09duzYgfz8fFgsFthstqjcAvH15XI51Go11Go1ReOtAfrGXjPhcBhzc3Po6+tDe3s7WltbcefOHb6fXSl9dSls9ZRKpdi7dy/OnDmDwsLChO9D7MCbnp5Gb28vD7tl98A88cDz1XnHjh3YsmVLlM9AnAnISnl1dnYuu082SUkkEpSVlaGurg7FxcXIyMiAQqFAaWkpMjMzMT4+vuxeJRIJOfJeABL9ayQYDGJiYgJ37tzBxYsXcfXq1aj4dmDl9NVYSKVSbN++HUeOHMHWrVuRmZmZ8HuZ4Fn5revXr0cluQDRE8uJEyfwySefIC8vL2q1ZWJ2Op0YGhrCwMAAd0LGMu1lMhmKi4tRVlYGvV4PlUqF9PR0ZGVlISMjAyqVKqYTk3n6ybRPHhL9a4AVehweHsZvv/2Gb775Bl1dXUl56GORk5PDa96lp6cn/X6Hw4EbN27g+++/x++//x5zP61Wq3H8+HF8+eWX2LVrF69TJ7YUmE+gtbUVT58+5e+NlYork8lgMplgNpuhUql44w21Ws2TdJZ+L6yFFgl+bZDo1wjbP7Mfe6I15oLBIFwuF4aGhtDc3IyffvopyvxdS6SaXC5HWVkZDh48iAMHDqCoqCihva5YqMyB+Pe//x2tra1c8GIzXCaToaGhAZ9//jl27969oiURCoUwMTGBtrY2jI6OrnhtAFCpVNwpx+5Z7LhcqWkmCX7tkOjXCGvvtLi4yFNHVwtxDYVCmJ2dxfDwMPr7+3H37l1cuXIFAwMDAP48aktW8CqVClu2bMGpU6dw7NgxlJWVQaPRJDQJMeE4nU7cuHEDX331FX799VcEAoGYgTgVFRU4ceIEduzYgaysrJhjMVwuF1/lY/kl2OfMysqCwWDgtfaB59+Vz+eD0+lccZUn1g6JPgmWRqvNzMxgYmICKpUKJpOJR6SxYyS/3w+32w2fzwev14sHDx7g/PnzvK6deBVbS7aYRqPBjh078Mknn2Dfvn3YuHFjzK40q8Gi/r766iv88ssvvLoOE6m4Ik91dTX27NmzTPBLEe/9V0On02Hz5s1R9fZZ2yy73Y65uTkKtX0JJCT6VM5iEq8q4j3r1NQUurq60Nvbi0gkguzsbBQUFKCoqAi5ubmQSqWYmJhAZ2cnHj16xCeIgYGBqAYRa008kUqlqKurw5kzZ3Do0CF+Th5vFVxq0rMV/tKlS/xYTbwyM8FXVVVh//79KC8vX9WiYWW5PR5P3HsxGo3Yvn07CgsL+ZGf3+/H+Pg4BgcHMT8/D2Dt3xERm4RET+bUn2IRBAEjIyNobW3F1atXMTQ0hEAgAI1GA7PZzBs/SiQSjI+P4/bt28ucdKzNU6IBN7Gorq7GiRMncPDgQS6aRP5OYsFfv34d33zzDX799Ve43e6os34xrMTWvn37YDQaV906+P1+3tySfeaVPmNBQQFqa2thsVggl8t5wc9Hjx7xoh3E+kPmfRxYEQm2ctlsNly9ehXfffcdd8CJTWH2P+DPoJulInpRkzUnJweHDx/G0aNHkZeXl3TzSofDgevXr+Pvf/87zp8/z512scRZVlaGM2fO4OTJkygvL48b9urxeNDZ2Ym2traoMtVLyc/PR0NDAz+qk0ql8Hg8vIOOeKJc+n42MVFhzLWxqui9Xi//YlMJcRvkx48f4+HDh5iensb8/DyGh4fR3d2Nx48fL9uHx0tQWcvKrlAo+JgKhQLvvfceDh06hBMnTqCsrCyqwmwi2O12tLe349/+7d9w6dKlZV564E+nIgCUlJTg8OHDKC0tXVHwYuEtLi6ir68PnZ2dK34XGo0Ge/fuxaFDh2CxWKBUKhEOhzE/P4+enh709vbGreXvcrkwPz8PlUq15o69qcqqonc4HLh//z76+/u5dzUVJgAm+kgkgqGhITx69Ahzc3O8QisTxFKvNPvhi7u3LA1wSQSxAJlwjEYjGhsbcezYMXzwwQdJO+2CwSDm5ubQ3t6Or7/+mu/hl3aaYa8Fnp/J19XVoaKiggsr3soqkUjgcrm4Q1A8gbAxGxoacPToUd6+SiqV8jLbN2/eXLXgJ/u8MzMzGBsbQ3p6epTnn4hP3JX+22+/xbfffgvg+fHQehVCeFtYbXVe6RjqRSfGpe/X6/U4e/Ys/vKXv/AGFRqNJuGa9QsLC5iensa9e/fw008/4cKFC8ui7JaSlpaGv/zlLzh48CAMBkPcEltsrFAotOIEJ5VKUVtbi88++ww7d+5EVlYWd+AFg0HMzMygs7MT09PTK16DtdC2Wq2YmJjAhg0bYDQaSfRJsKroI5FIVOGDF40YI1ZnqZe6sbERdXV1qKqqwrZt23iDikQJBoOYmppCe3s7mpub0dXVhZGRES7KWF5xtjKHw2E0NTWhvr4+7haCjeNwODAwMACr1Rr1HKOurg6ffvopt1SY4Fl1W4fDwU824nnsBUGgarhrZFXRSySSqD+4SqVaMULqXYX5NF7mD0scmGMymZCRkYHi4mKcOnUK+/fvR1FRERQKRVK544FAABMTE2hubsYPP/yA9vZ2fiS3WqouM8VZ5dxEe90BwNTUFC5evBjVhINZhpWVlfj4449x/PhxFBUVRaX7BoNB2O12TE9Px80sDIVCcLvd8Hg8cLvdmJ+fR3Z2dswCHkRs4nrvxaYa6yhCrC/iPfSxY8dw8uRJbN68GdnZ2cjIyEjaUSVu//z111/j+vXrUc/HErt4Za2pqcHnn3+OoqKihK8pCAJvQDk2NhY13oYNG3iTjfLy8mX5/WyCevz4MRf9SpMsO8c3Go2YmZnB8PAwMjIyoNVqk64bkKrQkd1rYqn5qtFo8Omnn+Jvf/sbGhsbYTAY1rxysWSen376Cffu3VvxmmLEkXd5eXnYs2cP8vPzuUNztXth+/EnT55w81zc1+7MmTM4ffo0Kisro2rui6MbR0dH8ejRo6jOtrFgdQfMZjNmZmYwMjKCjRs3Ii8vj0SfICT6V4y4CAXwvHR0Tk4OGhsbcerUKezYsYN3kmUkchYtfo3VasX9+/dx584d+Hw+fsqw2haFCd5oNKKuri6qb328awuCgEePHuHq1atRPqDs7GycPHkSZ8+eRXV19YoWSzAYxPT0NJ48ecK9/qvh9/uxuLgIv98Pj8cDu90Op9OZsHMz1SHRv2LE26OysjLu2CovL0dWVhZ0Ot2y9yQTaWe323Hjxg20tLTwPvLxtmTMAlAoFPjoo49w8ODBuM0mxZOM0+nEvXv30NrayivdaDQaHD58mJ84rDZeOByG2+3m95to2K1cLodUKsX09DQyMzORlpYGvV5Pe/s4kOhfAbHOwt977z188cUXOHnyJEpKSqDVal94lXI4HGhra8PXX3+N5ubmhI9X5XI5BEFAKBRCfX096urq4ubjs8+0sLCArq4udHR0cNECQGZmJvbu3Yu6ujpotdpVx4pEIggEAnyVT0T0rJfd4uIiRkZGoNFokJ+fH9VDj4gNif4VwH7AFosFZWVlsFgs2LNnD/bv34+qqqqE0mBXGle8wrPQ2paWlpiRdishCAIkEgmamppQVVWFjIyMFYUjviZrhvHdd9/x/nrA8y3Cnj17UFtbm1D1nljx/vGw2+2YmpqCwWCAVquF1+ul47sEIdG/ZFgBR6PRiKNHj+LkyZNcWGlpaWsWPPDnasti6f/xj3/gwoULEAQhoX28eEKora3FF198gU2bNiV0Tbfbjc7OTvz44484f/581CpfW1uLjz/+GMXFxQkXrkz2KNhut2NiYgK5ubnQarUUlZcEJPqXSGZmJhobG7F7926Ul5ejtLSUd4JZLxOUNcX4xz/+gXPnznGHXKL7eAC8+eS+fftQUFAQdyJyuVzo7OzE999/j59//jlK8Dk5OWhoaMD7778Pk8kU93OGw+E1tagKh8NwuVxYXFyMG11IREOiTxKpVAqdTseLOLJsL/HzgiBAq9Vi69atOHbsGJqammCxWKBWq3kY6VoRm9fiLjiXL19eMSdADFt5xd76o0eP8ow9FgAkrlor/vf8/Dw6Ojrw7bff4rfffosKmZXL5di5cyd27doFk8mUkBXj9/ths9niJtjEYmnIL+3lE4NEnyRKpRIFBQUoLS2FwWDg3VjF6bWRSARmsxn79u1DQ0MDLBbLst7sa/2BLi2A8fXXX+O3336Dy+XiYo8leLayiyeGjRs3oqmpCZ9++ikaGhqgVqv5vYnvLxQKwel0YnJyEl1dXbh06RJ+/fVXLlQWUZieno4dO3agpqYm7pk5K6c9OzuL7u5uPHv2LOr7SfS7EE9KzGJ4kS1TKkCiTxKVSoW8vDyUlJTAaDRywYuFlpWVhYqKCtTW1kZ1cWW86IrE9vD/8R//gfPnz/MotmRM5KamJpw9exZNTU3YsGEDDAZDzHN0n88Hq9WKhw8forW1FVeuXEFfX1/UeTqbSIqKilBaWgqz2Ry3yUYoFMLc3Bx6e3vR0tKC/v5+/lyyZrpUKo3qf0etrlaHRJ8EarUaFosFZrMZaWlpUc0W2MolCALMZjMqKyuRk5Ozpg4sS0tFi5mbm+Ne+ubm5mXx9AypVAqpVMoFGYlEkJubi4aGBpSWlvJ9d1FREWQyWdSEwfbZPp8Pjx8/RmtrK3799VcMDAxgbm6OjylOmy0oKMD+/fuXtdFaatWEw2EEAgFYrVZ0dHTg4sWLuHXrVlSSTrJIJBIsLi5idnYWZrMZWq2WOt+sAn0zScASYUwmE+Ry+bLosUgkAq1Wi6ysLBiNxjWvOEuFzs6xrVYrbty4gf/8z/9cMR9eXPIqHA5DqVTCZDJBr9fjwIED+PDDD1FTUwODwQCFQsGtEDZ5RSIRuFwuDA8Po6urC3fv3kV7ezt6e3uj7m9peer8/Hzs3r2bh+4u/SyRSITv3wcGBnjf+87OTkxMTKzpewqFQtykFwQBXq8XgUCAHHpxINEngcFggNlshsFg4LHqzDEnCAKUSiWKiopQWFgIrVb7wmZ8OBzGwsIC7HY7Jicn0dnZiV9//RUtLS0r5u6zlVV8FHf27Fls27YNGzZs4J1jVrq3xcVFDA0N4dy5c/j222/x+PHjmNdYem2LxYKSkhJkZGREiZ7V+Z+bm4PVasWjR494fcGZmZkX/n68Xi8vy8WSbsihtzpxRS/+AyoUipRLrRVnwOn1eshkMvj9ft5SSdxaSa1Wo6CgAHl5eauGna7kyGMmNQsy8fl86OvrQ2trK65fv47x8XHY7fZlq/pS095gMOCDDz5AZWUlamtrUV9fj6KiIiiVypjXFj/m8XjQ1taGb775Bo8fP+aviRVVyNi4cSPP9WfWTTAYRCAQgN1uR29vL65du4bOzk4MDw+v2Vu/FFYu2+12Qy6XIysrC+np6eTIiwMV0UiA7OxsHp7KKs8GAgGe1x0KhaBWq2E2m2EymeKGgooFxBpD+v1+TExMoLe3F0+ePIHL5YIgCHj27Blu374d1eNOLHL231KpFDk5OcjMzMTu3btx+vRp1NfX8+q1TIziiWLp/Xi9Xjx58gS3bt3igmc1+paKXRyvv23bNmzfvh1paWl8zz4zM4O+vj50d3fzJpaxOuC+aKo2+w6VSiWvKEQr/eokVURDrVavqSnD24ZE8rzraiQSQU5ODnbv3o2TJ0+irq4OGRkZCAaDmJ2dxbNnzzA6OorFxUWYzWaUlJQgMzMz4TJWs7OzsFqt8Hg8cLlcGBgYQHNzM27durXqShjLvC4pKcHHH3+Mffv2YdOmTXwbEksAsR4Lh8OYmJjA5cuX8fDhQ/74SvH77Nqsqu3mzZuhVCoxOzuL0dFRdHR0oKWlBe3t7bDZbDHHeFHBy2QyaDQaqNVqKJVKnoBDrCTBq/0AABSfSURBVM6qotdqtfjiiy+wdetW7vRJBScJ88QHg0FotVoUFhaisrISFosFGo0GwWAQmZmZyMjIQEFBAQKBAPR6PSwWC98CxIKVxGalnu/evYvLly9jYGCAd8KZm5uLsq5Wuj/x32HLli34/PPPceLECZSWliItLS2pH38oFML8/Dy6u7vx448/Rh2frYbZbMaBAwdQV1cHg8EAp9OJ+/fv49y5c7h+/Tqmp6fhdrsTvo9kkUqlSEtLI299kqz6TRmNRuzfvx/79u17VffzRrDUOy2Xy6FSqbiJLJfLYTQaodVqkZeXh1AoBKlUCqVSuex8mq1mLBClr68PHR0dGBoaQn9/P3p6eng6qhj2I2YWh/i+IpEI306UlZXhww8/xNGjR7Fp06Y1BQGFw2E8efIEv//+O69EG8v0Fk827Ldx8uRJlJaWYmFhAT09Pfjhhx/Q3NzMu9OsNNZ6wLYtbJKmqk6JEXelJ2IjkUigUqmiKsGI9+hsi8DyxKenpzE4OIirV6/i0qVLUeGrq5WhFsOeVygUqK+vx7Fjx7Bnzx5UVFQgOzt7zUFADocDd+/exdWrV1eN3WfX1+l0OHDgAD799FNuBXZ0dOCXX37BpUuX4HA4oiaIly1GhUJBCTdJQDbROsGO7Zj3PRgMcuccKzDx8OFDWK3WZSZvvC2TONBGrVbj1KlTOH36NBobG5GTk5N000oxCwsL6OjowO+//87N+tXScfV6PY4cOYKzZ89i586dUCqVGB4exrVr13D58mXui3gV28BQKASJRAKLxYINGza80PeQSlADywRIZMVkx0czMzOYnJyE1WrF9PQ0hoaGcP/+fXR1dUVVek2k4404lj4cDiMtLQ1Hjx7Fl19+iaamprjdY2MhNvldLhdPnrl27VrUa8SfXWzSf/DBB1zwGRkZGB0dRVtbG65fv46pqall73mZMCcjaxxKBTQSgxpYrhOs5NPIyAgePnyI/v5+PHz4EMPDw5ibm1tW1CIRk5dtFVQqFXQ6HY4cOYLPP/8ce/bsWVZHL1GW5sP/8MMPOHfuHDfJgWjRs//OyMjAoUOHcObMGezatQs6nQ5TU1O4d+8empub8ejRo2XvednI5XLIZDIYjUZkZmbGjfcnnkPm/ToRiUSwuLjIO6+MjIxgaGgoqi01e91qMH8AmxTy8vJw8OBBNDU1oa6ujmf3vQgulwv379/Hf/3Xf+GXX36JMsnZ9cX3WVBQgEOHDuHkyZPYvn07lEolZmZmcOvWLfz888/o6OjgUXGvCqPRyGsTKBQKcuIlAYl+HWFhofPz85idnY3plV8Ki+oTJ8ZEIhFoNBrU1NTg0KFDOHjwIDZv3ozMzMy4R1MrJeuwLYLD4eAmfXNzM6anpyGRSHidPPH7N2zYgM2bN2Pr1q3YuXMnr2j77Nkz3Lx5E83Nzbh9+/a6RNclS3Z2NjZv3oza2lqYTCbayycBiX6dkEqlUKlU0Gq1EAQBDocjocKU4hx3jUYDg8GAjIwMVFdX4/jx49i9ezcKCwsTjimP9RpBEGC1WvHs2TM8ePAA7e3t+O233/ixWiQS4XXyjEYjjzloaGhAU1MTqqurYTQasbi4iK6uLty4cQOtra3o6el55Ss8Qy6Xo6CgYFm5biI+JPp1glXUYSZnsq2w9Ho99u7diwMHDqC8vBxmsxn5+fnIzs5e0w86EolgYWEBCwsLPNHlwoULaG9vh9VqXTYhSaVSbNq0CR988AG2b9+OwsJCmEwmZGdnIy0tDU6nEz09PTh//jyuXLmCiYmJ12pSs9Dn3NxcHmpMJAaJfp1goi8qKkJdXR36+/sxMTGx6mrP2jZv2rQJJSUlqKqqwpYtW2CxWKBSqaJKay0tX7UUQRAQCAQQDAYhl8vh8Xjw8OFDXL58Gffu3cPs7CxGRkaigmaA51F1dXV1qK6uRnl5ObZs2YLS0lJkZmbyPHubzYaOjg58//33uHLlyjI/RSKst0efOe/UajUJPklI9OsIy13ftm0bZmdn4XA40NvbG2UCKxQKZGZmwmAwoKamBidOnEBjYyNyc3OhUCigVquj8vBjla8SWxHhcBgejwcjIyMYHBzE5OQkz9b7448/+Kq8FJ1Oh9LSUuzYsQMHDhzge2N2feY78Hg8GBwcxM8//4zm5ma+f09WxOJJS6lUvlBfRKPRiMrKSpSVlUGlUr1Q+bFUhES/zrCc+iNHjkClUuHixYvo6uqCy+WCTCZDSUkJ9u7di/fffx+VlZXIy8tDVlbWiib80lp1LpcLs7OzcDqdvNPt7OwsOjo6+D7b5XKtKkqj0YgjR47gww8/RF1dHXJzc6HT6WI2lmQ5Ai0tLVEOu7Ws2kajEQUFBcjIyIDD4cDY2FjSTkC2l2ddddPT00nwSUKiX2dkMhnS09NRWlrKV/66ujrY7XYoFAqUlpZi27ZtKC8v5954sec5VhVatnI7HA709/fj6tWruH//PmZnZ6FQKOD3+2G32zEzM8PTn2OJMjc3Fzt37sT27dvx/vvvo7q6Grm5uSt6vr1eLzo7O3Ht2jVezmotcfRGoxG7du1CQ0MDSkpKoFAoYLPZcPv2bVy7dg0TExMJTyJyuRwmkwl5eXnIzMwkB94aING/BCQSCbRaLYqKimAwGFBRUYG5uTnI5XKYzWbk5eVBp9PF3IsuNeNZwE9vby8P+FlaPXbp+8XjspMBi8WCDz/8EKdPn0ZdXR0yMzOjavyx67ExgsEgbDYbbt68iVu3bq05jt5kMmH//v04e/YsGhsbkZ2djXA4DKfTifz8fITDYVy8eDHhFV8mk/F9fLLOUuI5JPqXBNu7Go1GAOA19SQSCXw+HxQKBVQqVVTlHUYoFMLi4iJsNhuGhoZw69YttLS04P79+3GPyMRHgIwNGzbgs88+wyeffIItW7ZAo9GsOuFEIhHMz8/j0aNH6OzsXPM+3mAw4ODBg/jiiy/Q2NgY1fxCo9Fg+/btfMVPVPQscMnpdMJut0Oj0axLabJUgkT/EmHpuW63GxMTE7BarZBIJMjOzobZbIbRaIwp/EAggNHRUdy4cQOXL1/GgwcP4HA4lhXiXK2EFaOqqgqffPIJPv74Y1RXV8ftRgs8n3TGxsZw+fJlDA4ORn2eeLCJQaVS4cCBAzhz5gx27ty5rKuPTCaDyWRCUVFR3GaZYphlMjMzg/HxcV66mzz4iUOif0mwCraTk5O8ouzIyAhCoRBvqZyWlgaVSsX39WySYME0fX19ePjwYZTZLQ7RXU2ESqUSmzdvxieffIKPPvoIlZWVCe9//X4/RkdH0d7eziP2El3h2etycnJw4MAB7Ny5E9nZ2cvul0UBJitYlnHodDphs9ng9/tplU8SEv1LgEW42Ww23L17F+fOnUNbW1tUDv1ax01EfGq1GjU1Nfjss89w7NgxlJaWJiz4YDAIq9WKwcFBXpcvWbNeIpGgqKgIVVVVMJlMy54Ts5bjtmAwCLfbzZtbBINBSrZJAgpYfgmwGPf+/n60tLTgypUrLyz41RA749RqNXbu3Il//dd/xfHjx5MSPPC8BHZPTw9u3rzJ/QfJOu/0ej3MZnPM0GHx5CEIQtLn9T6fDzabDfPz87xdtcPhSLkqzS8CrfTrDGvqMDk5iTt37vCjNSB6lVvqpV/p8dW63Sz1qBcUFKChoQEnTpzAvn37eOXe1VZpcXXcYDCI6elp3Lx5E9evX1/mQ0iUYDDIi30uLi5Cp9PF/GxWqxX9/f1wOp0Jj+3z+TA6Ogqj0cjrFWRmZiI9PZ0qPSUIiX6dYSWgbTYbBgcHoyrBxspTX8pqAo31HCvZVVhYiD179uDEiROor69HVlYWN3njmc/MT2Cz2dDZ2Ym7d+/y9tNrCZ/1eDx49uwZurq6kJubi9LSUh5EI976XL9+Hc3NzZibm0tqfLvdDofDEbXSJ5LcRDyHRL+OiMUhlUqXnYOvNxaLBdXV1airq8OWLVtQWVmJoqIiGI3GhPe4zOFot9vR1dWFixcvYmBgIOr5tTA8PIxz585BEATs3r0bFosFcrmcxx50dnbil19+QWtr65oy9ZgVROf0yUOiX0eYd12pVCInJwf19fUYGhqC1Wp9oYw0tVqNnJwcFBQU8KO+9PR0mEwmFBcXo6KigneeZYk6wJ+NIEKhEK+qu7Rmvt/vx9TUFLq6unD58mW0tbW9UDNJhs/nQ09PD+bn59HW1gaDwcBFz2oHPn36dM2puey7ZklJ5MFPHBL9OsNEn5+fj6amJszNzcHtduOPP/6IqpGXCEqlEpmZmSguLkZdXR3q6upQVlbG011VKhU0Gg00Gk1UNdhgMMgLczocDlitVszMzGBhYQF+v5+312YCZKLv7u5+4f5yYhYXFzEwMBBlOawn7IiTfRYiMUj06ww7f9bpdCgpKcGpU6eg1Wrx3//933jw4EHcRhYMlo23fft27N+/H9u2bUNhYSGMRiM0Gg0/2xcH6Ph8PrhcLjgcDjidTszPz2NsbIyf94+MjPAgH/HKzyyBt3FfTKt88pDoXxJyuZzH3SsUCl4Vp6OjI6F8dFbwsaysDDU1Ndi0aROPlxcHszDHocfjwdTUFB48eICOjg788ccfcDgccLvdmJ+fx9zc3GurcrOSKF9kdQ6Hw0hPT0dhYSH/XojEING/RFjGXXl5eVQb5du3by8rZhGLcDiMxcVFLCwswOVyQa1W87BdtkJ7PB5MTk7i8ePHePDgATo7O9HV1bViXMBKK+PLrILzMkxvr9cLtVqNsrIy5OXlUbZdEpDoXzJSqZS3v2pqaoLL5cLMzAx8Pt+qKy9rktnT0wOFQgGHw4HCwkLo9Xpe/ZVV3+3t7cWNGzfQ3d0Nu92+qoDfFY+3TCbjtfyMRiMVxkwCEv0rQCKR8HpuJSUl2LhxI8bGxuKKfmFhAX19fZiamsLdu3dhNpuRkZEBlUqFQCDAnXTT09Ow2WzL/AWvqunEq8ZoNPLW4QaDgQSfJCT6VwjLdY+VThsLJvyFhQWMjIxAqVRCq9XynvEej2eZ800s9HdJ8OxzsTDj48ePo76+Hunp6VQuK0lI9C8ZZk6z6jZjY2OYmpqC1+tNeqxAIBA3NPZdEroY9rnKy8tx+vRp7N27FwUFBZRSuwZI9C8RFhjj9/ths9nQ29uLzs5OjIyMwOfzJWx+r5Y3v1IM/7uCXC7nRUEqKirw17/+Ffv27SPBvwAk+pcEi4ZjIa5PnjxBR0cHenp6YLPZYraiXm2stTz3LsC+p7KyMvz1r3/F6dOnUVxcHLfTD7Ey9M2tE+J9NDtOCwQCcLvdsFqtGB4exvj4OLxeL1QqVcwosqXFMZbuU1lRSrHjKtZKLz6WC4fDSU0w64U4TFb8b1bOK5nJqrKyEn/7299w+vRpVFVVkeBfEPr2XhBx4gfrF8cE7/V64XA4MD8/D0EQkJWVhYqKCphMJgQCgaiJgoXOCoLA+66z+vMymSwq+g74U+xLtwhMXEwYDocDk5OTPGvuVaDT6WAymWAwGHjij1QqhVwuh9/vh9VqxeTkZFz/hNFoRENDA06dOoWDBw+itLSUBL8OSOLMuO+27bgOMLGLk1uYeBcXF+HxeOB0OnlorNvths/ngyAI/HV+v5+/1ufzIRgMQqVSIS0tDTqdjnvsmfiB2KJnFWXsdjvcbjeCwSCcTicmJyejWlmxgJ/1iNAzGAw8jz0SiSA7OxuVlZWorKyEyWRCJBKBy+XC/Pw8FhcXueUzNTWFhYWFZdYMawKalpaG7du34+TJk9i3bx82bNhAgk+emEcaJPoXRLzSL41lDwaD/L/FE4PY/Pf5fPB4PHC73fB6vfD7/bywpE6ng8FgQHp6OtRqdVS8/VKzXiKRIBAI8EaVU1NTEAQBCwsLmJmZwfz8PN8+OJ1OTExMYHp6Gm63G8Byi4Hd61ITnT0XCASg1+tRVFSE8vJypKenQ6lUIi8vD++99x4qKythMBgQCAQwMzOD0dFRzM3NYWFhAXa7HTabDW63O2pM1gQ0HA4jOzub18rPz88np93aING/KuIVy1hqFbCjODZJsPN8ViZbqVTy3HzxCi8ej1W+YbH2brebm9JPnz7F5OQk9wd4vV7Mzs7Cbrcvy/xjRS68Xi98Ph9kMhm0Wi00Gg0XP3NQqtVqFBYWYvv27aisrERGRga0Wi3vvKtUKnlXHofDwVf68fFxDA0NwW6380KXgiBApVKhqKgIhYWFyMnJgclk4v3qiDVBon8TEa/+7N9iYYtX2kRgjjv2/3a7HdPT07BarVhYWIDNZsPU1BQWFxej6tOxa8lkMp7A43a7eRgxM+HVajXMZjOys7Oh0WiQnp6O4uJibNy4EQaDgd+7eGVm1g4AHjo8Pj6OhYUFPpGx4pb5+fm8NgC7Jwq8WTMk+lQkEAjA7/fzgpJPnjzhpbhZDD+D+RiYxQGAWxtyuRyhUIg3viwuLkZ6ejrC4TDP6090z+3z+eD1eiEIQpR5zzoDrdSMg0gaEn2qs7i4CLvdDqfTuSwpRxAEOJ1OzM3NQRAEpKenIysrC2lpaVGVeFQqFYxGY1IluYjXBomeQFTpLDGCIMDtdsPpdPKGHKx7DGvEAUTnDxBvPCR6YnVY9ZxIJMIdibSffqsh0RNEihFT9JSITBApBomeIFIMEj1BpBgkeoJIMUj0BJFikOgJIsUg0RNEikGiJ4gUg0RPECkGiZ4gUgwSPUGkGCR6gkgxSPQEkWKQ6AkixSDRE0SKQaIniBSDRE8QKQaJniBSDBI9QaQYJHqCSDFI9ASRYpDoCSLFINETRIpBoieIFINETxApBomeIFIMEj1BpBgkeoJIMUj0BJFikOgJIsUg0RNEikGiJ4gUg0RPECkGiZ4gUgwSPUGkGCR6gkgxSPQEkWKQ6AkixSDRE0SKQaIniBSDRE8QKQaJniBSDBI9QaQYJHqCSDFI9ASRYpDoCSLFINETRIpBoieIFINETxApBomeIFIMEj1BpBgkeoJIMUj0BJFikOgJIsWQx3le8krugiCIVwat9ASRYpDoCSLFINETRIpBoieIFINETxApBomeIFKM/w+DFo/4LZ/mLgAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "opt.update_design([mapping(x,eta_i,cur_beta)])\n", "plt.figure()\n", "ax = plt.gca()\n", "opt.plot2D(False,ax=ax,plot_sources_flag=False,plot_monitors_flag=False,plot_boundaries_flag=False)\n", "circ = Circle((2,2),minimum_length/2)\n", "ax.add_patch(circ)\n", "ax.axis('off')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Of course we want to check the final frequency response. We can run another forward run to pull the objective function parameters and calculate the transmisson." ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Starting forward run...\n" ] } ], "source": [ "f0, dJ_du = opt([mapping(x,eta_i,cur_beta)],need_gradient = False)\n", "frequencies = opt.frequencies\n", "source_coef, top_coef = opt.get_objective_arguments()\n", "\n", "top_profile = np.abs(top_coef/source_coef) ** 2" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure()\n", "plt.plot(1/frequencies,top_profile*100,'-o')\n", "plt.grid(True)\n", "plt.xlabel('Wavelength (microns)')\n", "plt.ylabel('Transmission (%)')\n", "plt.ylim(98,100)\n", "plt.show()\n", "\n", "plt.figure()\n", "plt.plot(1/frequencies,10*np.log10(top_profile),'-o')\n", "plt.grid(True)\n", "plt.xlabel('Wavelength (microns)')\n", "plt.ylabel('Insertion Loss (dB)')\n", "plt.ylim(-0.1,0)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In summary, it is very easy to implement design constraints and density parameter operations using the native adjoint solver interface. One could use this same design flow to implement robus optimization over many frequency points." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.7.6" } }, "nbformat": 4, "nbformat_minor": 4 }