Dear yt:
I am getting the following error for the script (see below). Could you let
me know what is causing it? Thank you in advance
Error:
yt.utilities.exceptions.YTUnitOperationError: The addition operator for
YTArrays with units (km) and (1) is not well defined.
Script:
import yt
import numpy as np
import matplotlib.pylab as pl
import matplotlib.pyplot as plt
import matplotlib.colors as colors
from matplotlib.colors import LogNorm
from yt.visualization.api import Streamlines
from yt.units import km
from mpl_toolkits.mplot3d import Axes3D
ms = 24000000
vector_max=ms-(ms/3)
ms1=ms-vector_max
dims = (200,200,200)
x =
np.genfromtxt("/work/jbi157/MODEL7/UPDATE_B/yo_n_t0.mtx",skip_header=2,usecols=1,
dtype="f8")
x = x.reshape((8000000, 3), order="F")
field1 = x[:,2].reshape(dims, order="F")
field2 = x[:,1].reshape(dims, order="F")
field3 = x[:,0].reshape(dims, order="F")
data = dict(cutting_plane_velocity_x = field1,
cutting_plane_velocity_y = field2,
cutting_plane_velocity_z = field3)
bbox = np.array([[-100, 99], [-100, 99], [-100, 99]])
pf = yt.load_uniform_grid(data, dims, km, bbox=bbox, nprocs=1)
L = [0,1,0] # vector normal to cutting plane
north_vector = [0,1,1]
slc = yt.OffAxisSlicePlot(pf, L, 'cutting_plane_velocity_x',
center=[0,0,0], width=(180,'km'), north_vector=north_vector)
vel = slc._frb['cutting_plane_velocity_z']
U = slc._frb['cutting_plane_velocity_x']
V = slc._frb['cutting_plane_velocity_y']
extentx = [slc.xlim[i].in_units('km') for i in (0, 1)]
extenty = [slc.ylim[i].in_units('km') for i in (0, 1)]
extent = extentx + extenty
x = np.linspace(extentx[0], extentx[1], vel.shape[0])
y = np.linspace(extenty[1], extenty[0], vel.shape[1])
X, Y = np.meshgrid(x, y)
normalize = True
if normalize is True:
N = np.sqrt(U**2+V**2)
U /= N
V /= N
norm = colors.Normalize(vmin=vel.min(), vmax=vel.max())
factor = 1
#plt.quiver(X[::factor, ::factor], Y[::factor, ::factor], U[::factor,
::factor], V[::factor, ::factor])
plt.streamplot(X,Y,U,V,norm='True')
#plt.imshow(vel.d, extent=extent)
plt.colorbar()
plt.xlabel("x")
plt.axis([-100, 99, -100, 99])
plt.savefig('L(1,0,0) N(0,1,1)')
#slc.save()
On Mon, Jan 29, 2018 at 2:52 PM,
Send yt-users mailing list submissions to yt-users@python.org
To subscribe or unsubscribe via the World Wide Web, visit https://mail.python.org/mm3/mailman3/lists/yt-users.python.org/ or, via email, send a message with subject or body 'help' to yt-users-request@python.org
You can reach the person managing the list at yt-users-owner@python.org
When replying, please edit your Subject line so it is more specific than "Re: Contents of yt-users digest..."
Today's Topics:
1. CLARIFICATION ON FIELD TYPES (Vadlamani Samhitha) 2. Re: CLARIFICATION ON FIELD TYPES (Nathan Goldbaum) 3. Re: CLARIFICATION ON FIELD TYPES (Vadlamani Samhitha) 4. Re: ROTATION CURVE PLOTS IN YT (Vadlamani Samhitha)
----------------------------------------------------------------------
Date: Mon, 29 Jan 2018 19:39:25 +0100 From: Vadlamani Samhitha
Subject: [yt-users] CLARIFICATION ON FIELD TYPES To: Discussion of the yt analysis package Message-ID: Content-Type: multipart/alternative; boundary="001a113a8b64cce13c0563ee9005" --001a113a8b64cce13c0563ee9005 Content-Type: text/plain; charset="UTF-8"
Hi yt-users,
I am a newbie in using YT. I read through the documentation of field types but I still have some confusion in understanding when to use different field types, as in:
(1) 'io' vs 'all' (from what I understand, both are used for particles but I don't get the minute difference) (2) 'ramses' vs 'index' vs 'gas' (fluids described on the grid, I suppose?)
It would be really helpful if someone could provide an elaborate explanation on these.
--001a113a8b64cce13c0563ee9005 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi yt-users,=C2=A0<div><br></div><div>I am a newbie in usi= ng YT. I read through the documentation of field types but I still have som= e confusion=C2=A0in understanding when to use different field types, as in:= =C2=A0</div><div><br></div><div>(1) 'io' vs 'all' (from wha= t I understand, both are used for particles but I don't get the minute = difference)</div><div>(2) 'ramses' vs 'index' vs 'gas= 39; (fluids described on the grid, I suppose?)</div><div><br></div><div>It = would be really helpful if someone could provide an elaborate explanation o= n these.=C2=A0 =C2=A0=C2=A0</div></div>--001a113a8b64cce13c0563ee9005--
------------------------------
Date: Mon, 29 Jan 2018 12:47:09 -0600 From: Nathan Goldbaum
Subject: [yt-users] Re: CLARIFICATION ON FIELD TYPES To: Discussion of the yt analysis package Message-ID: Content-Type: multipart/alternative; boundary="94eb2c197fcaa201900563eead13" --94eb2c197fcaa201900563eead13 Content-Type: text/plain; charset="UTF-8"
On Mon, Jan 29, 2018 at 12:39 PM, Vadlamani Samhitha < vadlamani.samhitha@gmail.com> wrote:
Hi yt-users,
I am a newbie in using YT. I read through the documentation of field types but I still have some confusion in understanding when to use different field types, as in:
(1) 'io' vs 'all' (from what I understand, both are used for particles but I don't get the minute difference)
This distinction only matters if there are multiple types of particles in a single simulation. For example, Gadget data has 5 different particle types on disk, 'halo', 'disk', 'stars', 'bulge', and 'gas'. If I load a Gadget dataset with yt I can access the particles in each of these particle types separately by prefixing the particle field I want to access with the particle type I want to access.
"all" is a particle union (see http://yt-project.org/docs/dev/analyzing/filtering.html#particle-unions) that corresponds to the union between all on-disk particle types. If you access an "all" field, you will get back the field values for the union of all of the particles in the simulation. Only fields that are defined for all particle types are defined for the "all" particle union.
Since ramses only has one particle type, we call that type "io". For RAMSES (and Enzo and several other formats where all the particles are mixed together on disk) "io" and "all" are interchangeable.
(2) 'ramses' vs 'index' vs 'gas' (fluids described on the grid, I suppose?)
The "ramses" field type corresponds to the on-disk fields in the ramses outputs. Each of these fields has a corresponding "gas" field that it is aliased to. For example, ('gas', 'density') is an alias to ("ramses", "Density").
When you access a "gas" field, by default it will be returned in CGS units. When you access a "ramses" field, by default it will be returned in code units.
The 'index' fields are fields that depend on the AMR structure or the geometry of the data but not the on-disk fields. For example, ('index', 'x'), ('index', 'grid_level'), etc.
Hope that helps,
Nathan
It would be really helpful if someone could provide an elaborate explanation on these.
_______________________________________________ yt-users mailing list -- yt-users@python.org To unsubscribe send an email to yt-users-leave@python.org
--94eb2c197fcaa201900563eead13 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
</div><div><br></div><div>Nathan<br></div><div>=C2=A0</div>
<div><br></div><div>It = would be really helpful if someone could provide an elaborate explanation o= n these.=C2=A0 =C2=A0=C2=A0</div></div> <br>______________________________<wbr>_________________<br> yt-users mailing list -- yt-users@py=<br><br>On Mon, Jan 29, 2018 at 12:39 PM, Vadlamani Samhitha = <vadla= mani.samhitha@gmail.com</a>></span> wrote:<br>Hi yt-users,=C2=A0<div><br></div> <= div>I am a newbie in using YT. I read through the documentation of field ty= pes but I still have some confusion=C2=A0in understanding when to use diffe= rent field types, as in:=C2=A0</div><div><br></div><div>(1) 'io' vs= 'all' (from what I understand, both are used for particles but I d= on't get the minute difference)</div></div> blockquote><div><br></div>= <div>This distinction only matters if there are multiple types of particles= in a single simulation. For example, Gadget data has 5 different particle = types on disk, 'halo', 'disk', 'stars', 'bulge&= #39;, and 'gas'. If I load a Gadget dataset with yt I can access th= e particles in each of these particle types separately by prefixing the par= ticle field I want to access with the particle type I want to access.<br>= div><div><br></div><div>"all" is a particle union (see http://yt-project.org/docs/dev/analyzing/filtering.html#particle-unions ">h= ttp://yt-project.org/docs/dev/analyzing/filtering.html#particle-unions </a>)= that corresponds to the union between all on-disk particle types. If you a= ccess an "all" field, you will get back the field values for the = union of all of the particles in the simulation. Only fields that are defin= ed for all particle types are defined for the "all" particle unio= n.<br></div><div><br></div><div>Since ramses only has one particle type, we= call that type "io". For RAMSES (and Enzo and several other form= ats where all the particles are mixed together on disk) "io" and = "all" are interchangeable.<br></div><div>=C2=A0</div><div>(2) 'ramses= ' vs 'index' vs 'gas' (fluids described on the grid, I = suppose?)</div></div></blockquote><div><br></div><div>The "ramses"= ; field type corresponds to the on-disk fields in the ramses outputs. Each = of these fields has a corresponding "gas" field that it is aliase= d to. For example, ('gas', 'density') is an alias to ("= ;ramses", "Density").</div><div><br></div><div>When you acce= ss a "gas" field, by default it will be returned in CGS units. Wh= en you access a "ramses" field, by default it will be returned in= code units.</div><div><br></div><div>The 'index' fields are fields= that depend on the AMR structure or the geometry of the data but not the o= n-disk fields. For example, ('index', 'x'), ('index'= ;, 'grid_level'), etc.</div><div><br></div><div>Hope that helps,
--94eb2c1c1716c1c66a0563f02a60 Content-Type: text/plain; charset="UTF-8"
Yes! Thank you
On Mon, Jan 29, 2018 at 7:47 PM, Nathan Goldbaum
wrote: On Mon, Jan 29, 2018 at 12:39 PM, Vadlamani Samhitha < vadlamani.samhitha@gmail.com> wrote:
Hi yt-users,
I am a newbie in using YT. I read through the documentation of field types but I still have some confusion in understanding when to use different field types, as in:
(1) 'io' vs 'all' (from what I understand, both are used for particles but I don't get the minute difference)
This distinction only matters if there are multiple types of particles in a single simulation. For example, Gadget data has 5 different particle types on disk, 'halo', 'disk', 'stars', 'bulge', and 'gas'. If I load a Gadget dataset with yt I can access the particles in each of these
types separately by prefixing the particle field I want to access with
particle type I want to access.
"all" is a particle union (see http://yt-project.org/docs/ dev/analyzing/filtering.html#particle-unions) that corresponds to the union between all on-disk particle types. If you access an "all" field, you will get back the field values for the union of all of the particles in
particle the the
simulation. Only fields that are defined for all particle types are defined for the "all" particle union.
Since ramses only has one particle type, we call that type "io". For RAMSES (and Enzo and several other formats where all the particles are mixed together on disk) "io" and "all" are interchangeable.
(2) 'ramses' vs 'index' vs 'gas' (fluids described on the grid, I suppose?)
The "ramses" field type corresponds to the on-disk fields in the ramses outputs. Each of these fields has a corresponding "gas" field that it is aliased to. For example, ('gas', 'density') is an alias to ("ramses", "Density").
When you access a "gas" field, by default it will be returned in CGS units. When you access a "ramses" field, by default it will be returned in code units.
The 'index' fields are fields that depend on the AMR structure or the geometry of the data but not the on-disk fields. For example, ('index', 'x'), ('index', 'grid_level'), etc.
Hope that helps,
Nathan
It would be really helpful if someone could provide an elaborate explanation on these.
_______________________________________________ yt-users mailing list -- yt-users@python.org To unsubscribe send an email to yt-users-leave@python.org
_______________________________________________ yt-users mailing list -- yt-users@python.org To unsubscribe send an email to yt-users-leave@python.org
--94eb2c1c1716c1c66a0563f02a60 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Yes! Thank you</div><br>On Mon, Jan 29, 2018 at 7:47 PM, Nathan Goldbaum <= nathan12343@gmail.com</a>></span> wrote:<br><br><br>On Mon, Jan 29, 2018 at 12:39 PM, Vadlamani Samhith= a <vadlamani.samhitha@gmail.com</a>></span> wrote:<br> Hi yt-users,= =C2=A0<div><br></div><div>I am a newbie in using YT. I read through the doc= umentation of field types but I still have some confusion=C2=A0in understan= ding when to use different field types, as in:=C2=A0</div><div><br></div>(1) 'io' vs 'all' (from what I understand, both are used= for particles but I don't get the minute difference)</div></div><div><br></div></span><div>This distinction only matters if there ar= e multiple types of particles in a single simulation. For example, Gadget d= ata has 5 different particle types on disk, 'halo', 'disk',= 'stars', 'bulge', and 'gas'. If I load a Gadget da= taset with yt I can access the particles in each of these particle types se= parately by prefixing the particle field I want to access with the particle= type I want to access.<br></div><div><br></div><div>"all" is a p= article union (see http://yt-project.org/ docs/dev/analyzing/filt= ering.html#particle-unions" target=3D"_blank">http://yt-project.org/docs/ dev/analyzing/filtering.html#<wbr>particle-unions</a>) that corresponds = to the union between all on-disk particle types. If you access an "all= " field, you will get back the field values for the union of all of th= e particles in the simulation. Only fields that are defined for all particl= e types are defined for the "all" particle union.<br></div><div><= br></div><div>Since ramses only has one particle type, we call that type &q= uot;io". For RAMSES (and Enzo and several other formats where all the = particles are mixed together on disk) "io" and "all" ar= e interchangeable.<br></div><div>=C2=A0</div> <div>(2) 'ramses&= #39; vs 'index' vs 'gas' (fluids described on the grid, I s= uppose?)</div></div></blockquote><div><br></div></span><div>The "ramse= s" field type corresponds to the on-disk fields in the ramses outputs.= Each of these fields has a corresponding "gas" field that it is = aliased to. For example, ('gas', 'density') is an alias to = ("ramses", "Density").</div><div><br></div><div>When yo= u access a "gas" field, by default it will be returned in CGS uni= ts. When you access a "ramses" field, by default it will be retur= ned in code units.</div><div><br></div><div>The 'index' fields are = fields that depend on the AMR structure or the geometry of the data but not= the on-disk fields. For example, ('index', 'x'), ('ind= ex', 'grid_level'), etc.</div><div><br></div><div>Hope that hel= ps,<br></div><div><br></div><div>Nathan<br></div><div>=C2= A0</div> = <div><br></div><div>It would be really helpful if someone could provide an = elaborate explanation on these.=C2=A0 =C2=A0=C2=A0</div></div> <br></span>______________________________<wbr>_________________<br> yt-users mailing list -- yt-users@python.org</a><br> To unsubscribe send an email to yt-users-leave@python.org</a><br> <br></blockquote></div><br></div></div> <br>______________________________<wbr>_________________<br> yt-users mailing list -- yt-users@py= thon.org</a><br> To unsubscribe send an email to--089e082788c4e88ead0563f06d0c Content-Type: multipart/alternative; boundary=" 089e082788c4e88ea90563f06d0b"
--089e082788c4e88ea90563f06d0b Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi again,
Thanks for all the responses. As Corentin suggested, I tried a ProfilePlot for just the particles using phi component of the velocity, but I still don't get a rotational curve atleast close to what is expected. Also, the velocity seems unreasonably high (10^4 km/s). Any other possible ideas? " *filename=3D"SIM001/output_00030/info_00030.txt"* *ds=3Dyt.load(filename)* *sp =3D ds.sphere('c', 100*kpc)* *plot =3D yt.ProfilePlot(sp, "particle_radius", ["particle_spherical_velocity_phi"], weight_field=3DNone)* *plot.set_unit("particle_spherical_velocity_phi", "km/s")* *plot.set_unit("particle_radius", "kpc")* *plot.save()* " [image: Inline image 1]
On Sun, Jan 28, 2018 at 4:59 PM, Eric Gentry
wrote: Remember that v_c generally depends on mass at larger radii too; it's onl= y a few special cases where you only need to know the mass enclosed in a sphere (e.g. spherical mass distribution, or a Mestel disk). This is discussed in Binney & Tremaine's book in section 2.6.1.
Unfortunately I don't know a good, general way for calculating v_c off th= e top of my head.
-- Eric Gentry PhD Candidate ISB 159 | ericsgentry.com Astronomy and Astrophysics University of California, Santa Cruz
On Sun, Jan 28, 2018 at 3:58 AM, Vadlamani Samhitha < vadlamani.samhitha@gmail.com> wrote:
Hey again, I thought of a simpler way to get the rotational curves, basically using the mass enclosed in a sphere http://yt-project.org/doc/cookbook/calculating_information.html to calculate the circular velocity. To be more precise, I do the following:
*filename=3D"output_00010/info_00010.txt" * *ds=3Dyt.simulation(filename)* *G=3Dyt.YTArray(4*np.pi**2,'au**3/yr**2/Msun')* *temp=3Dnp.arange(0.5, 40, 0.1)* *x=3Dyt.YTArray(temp,'kpc')* *V_c =3D np.array([])* *for i in x: * * sp =3D ds.sphere("c", (i, "kpc"))* * print(i)* *# This recipe constructs a sphere and then sums the total mass in particles and fluids in the sphere*
* baryon_mass, particle_mass =3D sp.quantities.total_quantity([ "cell_mas= s", "particle_mass"])* * M_total=3D(baryon_mass+particle_mass).in_units('Msun')* * circular=3Dnp.sqrt(G*M_total/i).in_units('km/s')* * V_c=3Dnp.append(V_c, circular)* *plt.plot(temp,V_c)* *plt.show()*
but ended up with a curve attached in the link below. But we expect a flat rotation curve and not keplerian decrease. Is this a valid approach= to get the rotation curves in YT?
Thanks!
On Fri, Jan 26, 2018 at 2:22 PM, Vadlamani Samhitha < vadlamani.samhitha@gmail.com> wrote:
Hey thanks, then, are these derived fields computed automatically and available to access when the data is loaded or does the user have to manually compute as in here <http://yt-project.org/doc/developing/creating_derived_ fields.html=
?
On Thu, Jan 25, 2018 at 6:06 PM, Contact
wrote: From what I see from your mail, it looks like you're only listing the field_list. You can get a much more comprehensive list using 'ds.derived_field_list' which include e.g. the angular velocity. These fields aren't directly read from your output but are computed (or deri= ved) quantities, such as the entropy, the dynamical time, =E2=80=A6 and you= an use them for 1D profiles too.
Corentin Cadiou
On 25 janv. 2018, at 16:16, Vadlamani Samhitha < vadlamani.samhitha@gmail.com> wrote:
Sorry, I didn't get what you meant.
On Thu, Jan 25, 2018 at 4:04 PM, Nathan Goldbaum < nathan12343@gmail.co= m
wrote:
You=E2=80=99re looking for the =E2=80=9Cparticle_radius=E2=80=9D fiel= d.
On Thu, Jan 25, 2018 at 9:01 AM Vadlamani Samhitha < vadlamani.samhitha@gmail.com> wrote:
> I see, How about obtaining the rotational curves for gas and matter > separately and then adding them up? Would that be simpler (even if i= ts an > approximate) instead of considering the potential directly? I modell= ed > stars and dark matter under particles and gas as fluid on the mesh a= nd I > have the following my fields_list: ( I am dealing with cartesian > coordinates. So, I don't have the spherical coordinates in my fields= _list) > > *" ('all', 'particle_extra_field_1')* > *('all', 'particle_extra_field_2')* > *('all', 'particle_extra_field_3')* > *('all', 'particle_extra_field_4')* > *('all', 'particle_extra_field_5')* > *('all', 'particle_identifier')* > *('all', 'particle_mass')* > *('all', 'particle_position_x')* > *('all', 'particle_position_y')* > *('all', 'particle_position_z')* > *('all', 'particle_refinement_level')* > *('all', 'particle_velocity_x')* > *('all', 'particle_velocity_y')* > *('all', 'particle_velocity_z')* > *('io', 'particle_extra_field_1')* > *('io', 'particle_extra_field_2')* > *('io', 'particle_extra_field_3')* > *('io', 'particle_extra_field_4')* > *('io', 'particle_extra_field_5')* > *('io', 'particle_identifier')* > *('io', 'particle_mass')* > *('io', 'particle_position_x')* > *('io', 'particle_position_y')* > *('io', 'particle_position_z')* > *('io', 'particle_refinement_level')* > *('io', 'particle_velocity_x')* > *('io', 'particle_velocity_y')* > *('io', 'particle_velocity_z')* > *('ramses', 'Density')* > *('ramses', 'Metallicity')* > *('ramses', 'Pressure')* > *('ramses', 'var6')* > *('ramses', 'x-velocity')* > *('ramses', 'y-velocity')* > *('ramses', 'z-velocity') "* > > So, I am thinking that the highlighted fields in the type 'all' coul= d > be used to compute circular velocity [sqrt(particle_velocity_x^2+ par= ticle_velocity_y^2)] > and the radius [sqrt(particle_position_x^2+particle_position_y^2)] > for particles. And for gas, 'ramses' fields could be used. However, = I am > not sure how to get the radius for the gas in this case. Would this = be a > right approach at all to begin with? > _______________________________________________ > yt-users mailing list -- yt-users@python.org > To unsubscribe send an email to yt-users-leave@python.org >
_______________________________________________ yt-users mailing list -- yt-users@python.org To unsubscribe send an email to yt-users-leave@python.org
_______________________________________________ yt-users mailing list -- yt-users@python.org To unsubscribe send an email to yt-users-leave@python.org
_______________________________________________ yt-users mailing list -- yt-users@python.org To unsubscribe send an email to yt-users-leave@python.org
_______________________________________________ yt-users mailing list -- yt-users@python.org To unsubscribe send an email to yt-users-leave@python.org
_______________________________________________ yt-users mailing list -- yt-users@python.org To unsubscribe send an email to yt-users-leave@python.org
--089e082788c4e88ea90563f06d0b Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
</div><div><b><i>plot.save()</i></b></div><div>"</div><div><br></div></div>
<br>On Sun, Jan 28, 2018 at 4:59 PM, Eric Gentry <Hi again,=C2=A0<div><br></div><div>Thanks for all the resp= onses. As Corentin suggested, I tried a ProfilePlot for just the particles = using phi component of the velocity, but I still don't get a rotational= curve atleast close to what is expected. Also, the velocity seems unreason= ably high (10^4 km/s). Any other possible ideas?=C2=A0</div><div>"< /di= v><div><b><i>filename=3D"SIM001/output_00030/info_ 00030.txt"</i><= /b></div><div><b><i>ds=3Dyt.load(filename)</i></b></div><div><b><i>sp =3D d= s.sphere('c', 100*kpc)</i></b><br></div><div><b><i>plot =3D yt.Prof= ilePlot(sp, "particle_radius", ["particle_spherical_ velocity= _phi"], weight_field=3DNone)</i></b></div><div><b><i>plot.set_unit(& qu= ot;particle_spherical_velocity_phi", "km/s")</i></b> div><b><i>plot.set_unit("particle_radius", "kpc")</i>egentry@ucsc.edu </a>>= </span> wrote:<br> Remember = that v_c generally depends on mass at larger radii too; it's only a few= special cases where you only need to know the mass enclosed in a sphere (e= .g. spherical mass distribution, or a Mestel disk).=C2=A0 This is discussed= in Binney & Tremaine's book in section 2.6.1.<div><br></div><div>U= nfortunately I don't know a good, general way for calculating v_c off t= he top of my head.</div></div>
= <div><div><div><div><br></font></div>-= -<br>Eric Gentry</font><div>PhD Candidate<br><div>ISB 159 | http://ericsgentry.com" = target=3D"_blank">ericsgentry.com</a><br></font><div>
color=3D"#888888= ">Astronomy and Astrophysics<br>University of California, Santa Cruz</font>= </div></div><div><br></div></div></div></div></div></div></ div></div></div>= <div><div class=3D"h5"> <br><div class=3D"gmail_quote">On Sun, Jan 28, 2018 at 3:58 AM, Vadlamani S= amhitha <span dir=3D"ltr"><<a href=3D"mailto:vadlamani. samhitha@gmail.co= m" target=3D"_blank">vadlamani.samhitha@gmail.com</a>></span> wrote:<br>= <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"><div dir=3D"ltr">Hey again,=C2=A0<div>I thou= ght of a simpler way to get the rotational curves, basically using the=C2= =A0<a href=3D"http://yt-project.org/doc/cookbook/calculating_ information.ht= ml" target=3D"_blank">mass enclosed in a sphere</a>=C2=A0to calculate the c= ircular velocity. To be more precise, I do the following:</div><div><br></d= iv><div><div><b><i>filename=3D"output_00010/info_00< wbr>010.txt"= =C2=A0</i></b></div><div><b><i>ds=3Dyt.simulation(filename) </i></b></div><d= iv><b><i>G=3Dyt.YTArray(4*np.pi**2,'au**3<wbr>/yr**2/ Msun')</i></b>= </div><div><b><i>temp=3Dnp.arange(0.5, 40, 0.1)</i></b></div><div><b><i>x= =3Dyt.YTArray(temp,'kpc')</i></b></div><div><b><i>V_c =3D np.array(= [])</i></b></div><div><b><i>for i in x:=C2=A0</i></b></div><div><b> <i><span= style=3D"white-space:pre-wrap"> </span>sp =3D ds.sphere("c", (i,= "kpc"))</i></b></div><div><b><i><span style=3D"white-space:pre-w= rap"> </span>print(i)</i></b></div><div><b><i># This recipe constructs a sp= here and then sums the total mass in particles and fluids in the sphere</i>= </b></div><div><b><i><br></i></b></div><div><b><i><span style=3D"white-spac= e:pre-wrap"> </span>baryon_mass, particle_mass =3D sp.quantities.total_quan= tity([<wbr>"cell_mass", "particle_mass"])</ i></b></div>= <div><b><i><span style=3D"white-space:pre-wrap"> </span>M_total=3D(baryon_m= ass+particle_<wbr>mass).in_units('Msun')</i></b>< /div><div><b><i><s= pan style=3D"white-space:pre-wrap"> </span>circular=3Dnp.sqrt(G*M_ total/i).= <wbr>in_units('km/s')</i></b></div><div><b><i><span style=3D"white-= space:pre-wrap"> </span>V_c=3Dnp.append(V_c, circular)</i></b></div><div><b= ><i>plt.plot(temp,V_c)</i></b></div><div><b><i>plt.show()</ i></b></div></di= v><div><br></div><div>but ended up with a curve attached in the link below.= But we expect a flat rotation curve and not keplerian=C2=A0decrease. Is th= is a valid approach to get the rotation curves in YT?</div><div><br></div><= div>Thanks!</div></div><div class=3D"gmail_extra"><br><div class=3D"gmail_q= uote">On Fri, Jan 26, 2018 at 2:22 PM, Vadlamani Samhitha <span dir=3D"ltr"= ><<a href=3D"mailto:vadlamani.samhitha@gmail.com" target=3D"_blank">vadl= amani.samhitha@gmail.com</a>></span> wrote:<br><blockquote class=3D"gmai= l_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left= :1ex"><div dir=3D"ltr">Hey thanks, then, are these derived fields computed = automatically and available to access when the data is loaded or does the u= ser have to manually compute as in=C2=A0<div><a href=3D" http://yt-project.o= rg/doc/developing/creating_derived_fields.html" target=3D"_blank">here</a>?= <br></div></div><div class=3D"m_-2580383644780269033m_- 8722327220951420101H= OEnZb"><div class=3D"m_-2580383644780269033m_-8722327220951420101h5"><div c= lass=3D"gmail_extra"><br><div class=3D"gmail_quote">On Thu, Jan 25, 2018 at= 6:06 PM, Contact <span dir=3D"ltr"><<a href=3D"mailto:contact@cphyc.me "= target=3D"_blank">contact@cphyc.me</a>></span> wrote:<br><blockquote cl= ass=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;p= adding-left:1ex"><div dir=3D"auto"><div>From what I see from your mail, it = looks like you're only listing the field_list. You can get a much more = comprehensive list using 'ds.derived_field_list' which include e.g.= the angular velocity. These fields aren't directly read from your outp= ut but are computed (or derived) quantities, such as the entropy, the dynam= ical time, =E2=80=A6 and you an use them for 1D profiles too.</div><div><br= ></div><div>Corentin Cadiou</div><div><div class=3D"m_- 2580383644780269033m= _-8722327220951420101m_6573092944491014774h5"><div><br>On 25 janv. 2018, at= 16:16, Vadlamani Samhitha <<a href=3D"mailto:vadlamani. samhitha@gmail.c= om" target=3D"_blank">vadlamani.samhitha@gmail.com</a>> wrote:<br><br></= div><blockquote type=3D"cite"><div><div dir=3D"ltr">Sorry, I didn't get= what you meant.</div><div class=3D"gmail_extra"><br><div class=3D"gmail_qu= ote">On Thu, Jan 25, 2018 at 4:04 PM, Nathan Goldbaum <span dir=3D"ltr"><= ;<a href=3D"mailto:nathan12343@gmail.com" target=3D"_blank">nathan12343@ gma= il.com</a>></span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"= margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div di= r=3D"auto">You=E2=80=99re looking for the =E2=80=9Cparticle_radius=E2= 80=9D= field.</div><br><div class=3D"gmail_quote"><div><div class=3D"m_-258038364= 4780269033m_-8722327220951420101m_6573092944491014774m_- 5999361843722410537= h5"><div>On Thu, Jan 25, 2018 at 9:01 AM Vadlamani Samhitha <<a href=3D"= mailto:vadlamani.samhitha@gmail.com" target=3D"_blank">vadlamani. samhitha@g= mail.com</a>> wrote:<br></div></div></div><blockquote class=3D"gmail_quo= te" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"= ><div><div class=3D"m_-2580383644780269033m_-8722327220951420101m_ 657309294= 4491014774m_-5999361843722410537h5"><div>I see, How about obtaining the rot= ational curves for gas and matter separately and then adding them up? Would= that be simpler (even if its an approximate) instead of considering the po= tential directly? I modelled stars and dark matter under particles and gas = as fluid on the mesh and I have the following my fields_list: ( I am dealin= g with cartesian coordinates. So, I don't have the spherical coordinate= s in my fields_list)<div><br></div><div><i>" ('all', 'part= icle_extra_field_1')</i><div><i>('all', 'particle_extra_fie= ld_2')</i></div><div><i>('all', 'particle_extra_field_3&# 39= ;)</i></div><div><i>('all', 'particle_extra_field_4&# 39;)</i></= div><div><i>('all', 'particle_extra_field_5&# 39;)</i></div><div= ><i>('all', 'particle_identifier') </i></div><div><i>('a= ll', 'particle_mass')</i></div><div><i><b>('all', '= particle_position_x')</b></i></div><div><i><b>('all', 'part= icle_position_y')</b></i></div><div><i>('all', 'particle_po= sition_z')</i></div><div><i>('all', 'particle_refinement_le= vel')</i></div><div><i><b>('all', 'particle_velocity_x'= )</b></i></div><div><i><b>('all', 'particle_velocity_y') </b= ></i></div><div><i>('all', 'particle_velocity_z') </i></div>= <div><i>('io', 'particle_extra_field_1&# 39;)</i></div><div><i>(= 'io', 'particle_extra_field_2')</i></div><div><i>(' io&#= 39;, 'particle_extra_field_3')</i></div><div><i>('io', '= ;particle_extra_field_4')</i></div><div><i>('io', 'particle= _extra_field_5')</i></div><div><i>('io', 'particle_identifi= er')</i></div><div><i>('io', 'particle_mass')</i></ div>= <div><i>('io', 'particle_position_x') </i></div><div><i>(= 9;io', 'particle_position_y')</i></div><div><i>('io', &= #39;particle_position_z')</i></div><div><i>('io', 'particle= _refinement_level')</i></div><div><i>('io', 'particle_veloc= ity_x')</i></div><div><i>('io', 'particle_velocity_y') <= /i></div><div><i>('io', 'particle_velocity_z') </i></div><di= v><i>('ramses', 'Density')</i></div>< div><i>('ramses= 9;, 'Metallicity')</i></div><div><i>('ramses', 'Pressur= e')</i></div><div><i>('ramses', 'var6')</i></div><div> <= i><b>('ramses', 'x-velocity')</b></i>< /div><div><i><b>('= ;ramses', 'y-velocity')</b></i></div><div><i>('ramses' ,= 'z-velocity') "</i></div><div><br></div><div>So, I am thinkin= g that the highlighted fields in the type 'all' could be used to co= mpute circular velocity [sqrt(particle_velocity_x^2+ pa<wbr>rticle_velocity_= y^2)] and the radius [sqrt(particle_position_x^2+ pa<wbr>rticle_position_y^2= )] for particles. And for gas, 'ramses' fields could be used. Howev= er, I am not sure how to get the radius for the gas in this case. Would thi= s be a right approach at all to begin with?</div></div></div></div>< /div><s= pan> ______________________________<wbr>_________________<br> yt-users mailing list -- <a href=3D"mailto:yt-users@python.org" target=3D"_= blank">yt-users@python.org</a><br> To unsubscribe send an email to <a href=3D"mailto:yt-users-leave@ python.org= " target=3D"_blank">yt-users-leave@python.org</a><br> </span></blockquote></div></div> <br>______________________________<wbr>_________________<br> yt-users mailing list -- <a href=3D"mailto:yt-users@python.org" target=3D"_= blank">yt-users@python.org</a><br> To unsubscribe send an email to <a href=3D"mailto:yt-users-leave@ python.org= " target=3D"_blank">yt-users-leave@python.org</a><br> <br></blockquote></div><br></div> </div></blockquote><blockquote type=3D"cite"><div><span>_____ ______________= ___________<wbr>_________________</span><br><span>yt-users mailing list -- = <a href=3D"mailto:yt-users@python.org" target=3D"_blank">yt-users@ python.or= g</a></span><br><span>To unsubscribe send an email to <a href=3D"mailto: yt-= users-leave@python.org" target=3D"_blank">yt-users-leave@python.org </a></sp= an><br></div></blockquote></div></div></div><br>__________ _________________= ___<wbr>_________________<br> yt-users mailing list -- <a href=3D"mailto:yt-users@python.org" target=3D"_= blank">yt-users@python.org</a><br> To unsubscribe send an email to <a href=3D"mailto:yt-users-leave@ python.org= " target=3D"_blank">yt-users-leave@python.org</a><br> <br></blockquote></div><br></div> </div></div></blockquote></div><br></div> <br>______________________________<wbr>_________________<br> yt-users mailing list -- <a href=3D"mailto:yt-users@python.org" target=3D"_= blank">yt-users@python.org</a><br> To unsubscribe send an email to <a href=3D"mailto:yt-users-leave@ python.org= " target=3D"_blank">yt-users-leave@python.org</a><br> <br></blockquote></div><br></div></div></div> <br>______________________________<wbr>_________________<br> yt-users mailing list -- <a href=3D"mailto:yt-users@python.org ">yt-users@py= thon.org</a><br> To unsubscribe send an email to <a href=3D"mailto:yt-users-leave@ python.org= ">yt-users-leave@python.org</a><br> <br></blockquote></div><br></div>
--089e082788c4e88ea90563f06d0b--
--089e082788c4e88ead0563f06d0c Content-Type: image/png; name="info_00030_1d-Profile_particle_radius_particle_ spherical_velocity_phi.png" Content-Disposition: inline; filename="info_00030_1d-Profile_particle_radius_ particle_spherical_velocity_phi.png" Content-Transfer-Encoding: base64 Content-ID:
X-Attachment-Id: ii_16143af40e0751ec iVBORw0KGgoAAAANSUhEUgAAA+gAAAMgCAYAAACwGEg9AAAABHNCSVQI CAgIfAhkiAAAAAlwSFlz AAAPYQAAD2EBqD+naQAAADl0RVh0U29mdHdhcmUAbWF0c GxvdGxpYiB2ZXJzaW9uIDIuMS4xLCBo dHRwOi8vbWF0cGxvdGxpYi5vcmcvAOZPmwAAIABJREFUeJzs3Xl43HW5/// XLNmTmSRdkybdKC2k 0KI0wAFRlsNWFQ5Q0XPwIIoCGjzIT7Dg4bC4gR7E88NvXEC+ agE5LIKAiCyiPQcVGyxdaOm+pU2b Jm2Syb7MfL5/zHwmaZt1MjOf90yej+vqdbXJzOQ+R6bNK/ f7fd8uy7IsAQAAAAAAR7mdLgAAAAAA ABDQAQAAAAAwAgEdAAAAAAADENABAAAAADAAAR0AAAAAAAMQ0AEAAAAAMAAB HQAAAAAAAxDQAQAA AAAwAAEdAAAAAAADENABAAAAADAAAR0AAAAAAAMQ0AEAAAAAMAABHQAAAAAA AxDQAQAAAAAwAAEd AAAAAAADENABAAAAADAAAR0AAAAAAAMQ0AEAAAAAMAABHQAAAAAAAxDQAQAA AAAwAAEdAAAAAAAD ENABAAAAADAAAR0AAAAAAAMQ0AEAAAAAMAABHQAAAAAAAxDQAQAAAAAwAAEd AAAAAAADENABAAAA ADAAAR0AAAAAAAMQ0AEAAAAAMAABHQAAAAAAAxDQAQAAAAAwAAEdAAAAAAAD ENABAAAAADAAAR0A AAAAAAMQ0AEAAAAAMAABHQAAAAAAAxDQAQAAAAAwAAEdAAAAAAADENABAAAA ADAAAR0AAAAAAAMQ 0AEAAAAAMAABHQAAAAAAAxDQAQAAAAAwAAEdAAAAAAADENABAAAAADAAAR0A AAAAAAMQ0AEAAAAA MAABHQAAAAAAAxDQAQAAAAAwAAEdAAAAAAADENABAAAAADAAAR0AAAAAAAMQ 0AEAAAAAMAABHQAA AAAAAxDQAQAAAAAwAAEdAAAAAAADENABAAAAADAAAR0AAAAAAAMQ0AEAAAAA MAABHQAAAAAAAxDQ AQAAAAAwAAEdAAAAAAADENABAAAAADAAAR0AAAAAAAMQ0AEAAAAAMAABHQAA AAAAAxDQAQAAAAAw AAEdAAAAAAADENABAAAAADAAAR0AAAAAAAMQ0AEAAAAAMAABHQAAAAAAAxDQ AQAAAAAwAAEdAAAA AAADENABAAAAADAAAR0AAAAAAAMQ0AEAAAAAMIDX6QLQLxQKqa6uTgUFBXK5 XE6XAwAAACCNWZal 1tZWlZaWyu2md2sCArpB6urqVF5e7nQZAAAAACaQ2tpalZWVOV0GREA3SkFB gaTwG8Tn8zlczdhV VlaqpqbG6TKOkMyaEvG14vGasb5GLM8by3NG89hAIKDy8vKUfU/ Eg4nvK4n31nheg/eWGXhv8d4a 63N4b40O763Uem/Z/83aOQTOI6AbxD7W7vP5UvIvdY/HY1zdyawpEV8rHq8Z62vE8ryxPGcsj 03V 90Q8mPi+knhvjec1eG+ZgfcW762xPof31ujw3krN9xbXa83hu eeee+5xugiEdXd36/7779cdd9yh rKwsp8uJyWmnneZ0CcdIZk2J+FrxeM1YXyOW543lOSM9Nh3eE/ Fg4vtK4r01ntfgvWUG3lu8t8b6 HN5bo8N7K3XeW/w3ax6XZVmW00UgLBAIyO/3a/78+fJ4PKqqqlJVVZXTZQGOsd8TLS0tRv4 0HkhV vLeAxOC9hVRRXV2t6upqBYNBbdmyhf9mDcIRdwPV1NTwBgEkZWVl6e677+ YnukCc8d4CEoP3FlKF 3Qi0f6gEc9BBNwg/dQUAAACQLOQP87DsDgAAAAAAAxDQAQ AAAAAwAAEdAAAAAAADENABAAAAADAA AR0AAAAAAAMQ0A1UWVmpiooKVVdXO10KAAAAgDRTXV2tiooKVVZWOl0KjsKa NYOw5gAAAABAspA/ zEMHHQAAAAAAAxDQAQAAAAAwAAEdAAAAAAADENABAAAAADAAAR0AAAAAAAMQ 0AEAAAAAMAABHQAA AAAAAxDQAQAAAAAwAAHdQJWVlaqoqFB1dbXTpQAAAABIM9XV1aqoqFBlZaXT peAoLsuyLKeLQFgg EJDf71dLS4t8Pp/T5QAAAABIY+QP89BBBwAAAADAAAR0AAAAAAAMQEAH AAAAAMAABHQAAAAAAAxA QAcAAIDjQiFLV//sbS1/dp3TpQCAYwjoAAAAcNy6fS3687ZDeu qdWqdLAQDHENABAADguGCIzb8A QEAHAAAAAMAABHQAAAAAAAxAQDdQZWWlKioqVF1d7XQpAAAAANJMdXW1Kioq VFlZ6XQpOIrLsiwu /BgiEAjI7/erpaVFPp/P6XIAAACS5u+7m3Tlj/8iSdp1/ 0cdrgaYGMgf5qGDDgAAAACAAQjoAAAA AAAYgIAOAAAAAIABCOgAAAAAABiAgA4AAAAAgAEI6AAAAAAAGICADgAAAACA AQjoAAAAAAAYgIAO AAAAAIABCOgAAAAAABiAgA4AABAHbd19au7ocboMAEAKI6ADAACMUyhk6VMP /1Vnf/ePhHQAQMwI 6AaqrKxURUWFqqurnS4FAACMQs2uw3pvX0Ct3X3adajD6XIAYFjV1dWqqKhQ ZWWl06XgKF6nC8Cx ampq5PP5nC4DAACM0nOr90V/39LZ62AlADCyqqoqVVVVKRAIyO/ 3O10OBqCDDgAAMA5dvUG9vH5/ 9M8BAjoAIEYEdAAAgHF4bWO92rr7on+mgw4AiBUBHQAAYByeW71XkuRyhf8c6 CKgAwBiQ0AHAACI 0cHWLv3PlgZJ0nkLpkqigw4AiB0BHQAAIEYvvFunkCV9cGahFpUVSpICnX0j PAsAgMExxR0AACBG v44cb7/ig2XqC4YkMSQOABA7OugAAAAx2FgX0KYDrcr0uPWxRSXy5WRI4g46ACB2BHQ AAIAY2MPh zj9xqgpzM+WPBHTuoAMAYkVABwAAGKO+YEi/WVMnKXy8XVJ/ B52ADgCIEQEdAABgjP53W6Ma27pV nJepcxZMkSQ66ACAcSOgAwAAjNFzq/dJki5dXKoMT/jbKV+ 2fQe9T5ZlOVYbACB1EdABAADGINDV q9c2HJAkXRk53i71d9CDIUvtPUFHagMApDYCOgAAwBj8bt1+ dfeFdPzUfJ00wxf9eHaGWxkelyTu oQMAYkNABwAAGAP7ePsVHyyTy+WKftzlcnEPHQAwLgR0AACAUdpzqEOr dh2WyyX90wdKj/l89B46 AR0AEAMCOgAAwCg9/264e/6heZNV4s855vM+AzroXb1Bff359frD+/ WO1QAAiA0BHQAAYBQsy9Jz 7+6VJF3xwRmDPia6C72rL2l1He1Pmxv0q7/t0bdfft+xGgAAsSGgG6iyslIVFRWqrq52uhQAA BCx ek+Tdh/qUG6mRxctnD7oY0y4g77rULskaeehdrV3O/eDAgDmqq6uVkVFhSorK50uBUfxOl0A jlVT UyOfzzfyAwEAQNL8OjIc7pKTSpSbOfi3UL7s8MedvIO++ 1CHJMmypE0HAjp1VrFjtQAwU1VVlaqq qhQIBOT3+50uBwPQQQcAABhBV29Qv11bJ0m6cojj7ZIZHfQ9h9ujv99QF3CsDgDA2BHQA QAARvCH 9w8q0NWnUn+2zpg7acjH9d9Bd/CIe2NH9PcbCegAkFII6AAAACN4bnV4 ONzlH5wht9s15OPsDrpT R9x7+kLa39IZ/TMddABILQR0AACAYTS2detPWxokSZd/oGzYx/bvQXdmONvepg6FrP4/ b65vVW8w 5EgtAICxI6ADAAAM48U1dQqGLC0uL9S8qfnDPtbpO+i7D4ePty+ YVqD8LK96+kLa0dA+wrMAAKYg oAMAAAzD3n0+3HA4m9/hO+h7IhPcZ03K1YklBZKkDXUtjtQCABg7 AjoAAMAQNh9o1Xv7AsrwuPSx RaUjPt6XE16z5lgHfUBArygJr2xlUBwApA72oAMAAAzBHg537oKpKs7LHPHx dge9oyeo3mBIGZ7k 9kJ2HwofZ585KU9Zka/NoDgASB0EdAAAgEEEQ5aef3efJOmKD w4/HM5WEBkSJ4UnuU/Kz0pIbUOx 76DPnpSrotzwDxQ27g/Isiy5XENPnwcAmIEj7gAAAIP487ZGH WztVmFuhs47YeqonuNxu1SQFe5/ BLqSO8k9FLK0JxLQZxXn6fhp+fK6XWrp7NW+5s4Rng0AMAEBHQAAYBD/ uzW8Wu2Sk6Yr0zv6b5l8 Dk1yr2/tUk9fSF63S6WF2cryeqJT57mHDgCpgYAOAAAwiLW14ennS2YVj+ l5dkAPJDmg2wPiZhTl yBu5f76w1C+Je+gAkCoI6AAAAEfpC4a0fl84oC8u94/pub5sZya52yvWZhbnRj9WURqZ5L6fg A4A qYCADgAAcJStB9vU2RtUfpZXcyfnj+m5Tu1C3xWZ4D5rUn9AX1jKqjUASCUE dAAAgKOs29ssSVpU 5pfbPbbp507dQe+f4J4X/diJkV3o+5o71dzRk9R6AABjR0AHAAA4yppa+ 3h74Zif63cooA92xN2f k6GyohxJHHMHgFRAQAcAADjK2tpwB31x2dgDui/bHhKX3DVru6NH3POO+ DjH3AEgdRDQAQAABujs CWpzfask6ZSYOuiRPehJ7KA3d/RE964P7KBLUkVJeMgdAR0AzEdABwAA GGBDXYuCIUvTfFma7s8e 8/N9DgyJs1esTS3IUk6m54jP2R10Vq0BgPkI6AAAAAOsqbUHxI29ey45cwd9sA nuNnvV2raGNnX1 BpNWEwBg7AjoAAAAA6zdGx4QF8vxdmlABz2JAd0eEHf0/ XNJKvFnqyg3Q8GQpa31bUmrCQAwdgR0 AACAAcYzIE5ypoNur1ibVXxsB93lckW76BvqWpJWEwBg7AjoAAAAEYfbe7Qn EnZPLvPH9BrRKe5d fbIsK261DSe6Ym2QI+6StLA0MiiOVWsAYDQCuoEqKytVUVGh 6upqp0sBAGBCWbs33D2fOyUv2gkf K/t5wZCl9p7k3PnefXjwFWu2ihIGxQHoV11drYqKClVWVjpdCo7idboAHKumpk Y+n8/pMgAAmHDW 1Ubun8d4vF2SsjPcyvC41Bu0FOjsVX5WYr/d6uwJqj7QLWnwI+5S/yT39/ cHFApZcrtdCa0JgNmq qqpUVVWlQCAgvz+200JIDDroAAAAEXYHfXGMA+Kk8J3vZN5Dt4/kF2R7VZg7eNd/ zuQ8ZXnd6ugJ Rie+AwDMQ0AHAACQZFlW/4C4cQR0acA99CQE9N2RwD17Up5crsE 7416PWydML5DEPXQAMBkBHQAA QNLepk4dau9RhselE0sKxvVaPgc66EMNiLNVRAbFcQ8dAMxFQAcAAFD/ 8fYTS3zK8nrG9VrRXehd feOuayS7Dw29Ym0ge9XaRgI6ABiLgA4AAKDx7z8fKJl30KM70EfooNuD4jji DgDmIqADAABIWhuZ 4D7e++eS5MsOT25Pxh30PZE76DOLB1+xZjtheoFcLqmhtVsHW7sSXhcAYOwI6 AAAYMLrC4a0fl9k xVr5+FcOJauD3hcMaW9Tp6SRO+i5mV7NnRwO8RxzBwAzEdABAMCEt/ Vgmzp7g8rP8mru5Pxxv17/ HfTEBvS65i71hSxlet2a7sse8fEMigMAsxHQAQDAhLcuMiBuUZlfbvfgq8rG wu6gJ/qI++7D9vH2 3FHVzT10ADAbAR0AAEx4ayL3zxfFYUCcNHAPemKnuI92grutooRJ7gBgMgI6 AACY8OwJ7vG4fy4l 7w76aHeg2+xVa7sOtautO/Er4AAAY0NABwAAE1pnT1Cb61slxWeC uyT5ciJT3BN8B313ZIL7aDvo k/OzNM2XJcuSNnHMHQCMQ0AHAAAT2oa6FgVDlqYWZI1q0NpoJKuDHj3iPmn4FW sDRY+5E9ABwDgE dAAAMKGtiRxvX1xeKJdr/APipP476B09QfUGQ3F5zaNZlhU94j7 SirWBFkYmuXMPHQDMQ0AHAAAT 2tq99v7z+Bxvl6SCbG/094ma5N7Q1q2OnqDcLqmsaPQB3b6Hz qo1ADAPAR0AAExo9oC4xXGa4C5J Xo9b+Vn2PfTEDGPbEzneXuLPUaZ39N/S2avWNte3Jqy7DwCIDQEdAABMWIfbe 6LHxE8ui88Ed1ui 76H33z8fffdcksqLcpWf5VVPX0jbG9oSURoAIEbekR+SPF1dXaqrq1NLS4s6OzuVl5enqVOnq qSk xOnSAABAGlq3N9w9nzs5Lxqo48U+5p6oI+67Y7h/Lklut0sVJT6t2nVYG+ sCOmG6LxHlAQBi4GhA 7+rq0iuvvKLf/OY3+tvf/qbt27crFDr2qFV2draWLFmic889V1d ddZUqKiocqBYAAKSbtbXh++fx Wq82UOI76OEVazOLRz/B3VZRGg7oG+oCuuKD8a4MABArRwJ6S0uLHnzwQT30 0EMKBoM67bTTdOml l2rOnDkqKSlRbm6uMjIy1NHRoZaWFtXW1mrjxo16+umn9Y1vfENnnXWW7rzzTl100UVOlA8 AANLE 2r32/fP4Hm+XJF8koCdqF7p9xH32GDvoUv+gOCa5A4BZkh7QX375ZV133XU688wz9 eSTT+q8885T ZmbmqJ+/Z88ePfnkk7rxxht1yimn6OGHH9aUKVMSWDEAAEhHlmX1D4hLwQ66fXd+ ZiwBvcSe5N4i y7Litl4OADA+SR0Sd9ddd+n73/++Xn/9dT333HO6+OKLxxTOJWnmzJlavny5tm7dqnPOOUf nnXee Nm7cmKCKAQBAutrb1KlD7T3K8Lh0Ykn872Hbu9ADnfGf4t7a1avD7T2SpFmT xn7E/fhp+fK6XQp0 9Wlfc2e8ywMAxChpAf3++++Xx+PRH/7wB5188snjfj2v16ubb75Zzz//vG6+ +Wbt3LkzDlUCAICJ wj7efmKJT9kZnri/fiI76Pbx9kl5mdF1bmOR5fXo+GkFkjjmDgAmSVpAP/7443X33XfH/ QjVvHnz 9Mwzz2j37t1xfV0AAJDeErH/fCBfjr0HPf4BfTzH2239x9wJ6ABgiq QF9CuvvDJhr11YWKhzzjkn Ya8PAADSjz3BfVECBsRJ/R30RKxZ2xWZ4D6rOPaAvtAeFLefgA4 ApkjqHXQAAAAT9AVDWr8vHNBP ScCAOGngHfQEdNAP2TvQx37/3MYkdwAwjxEB/Ve/+pVWrFihFStWaNWqVZKk+ vp6XXbZZcrPz9fs 2bP1wx/+0OEqAQBAutjW0KbO3qDys7yaOyU/IV/Dn5v4O+ izxnPEPRLQ9zV3qrmjJy51AQDGx4iA /u677+pLX/qS1q9fr97eXoVCIS1dulSvvfaa7r77bj3wwAN64okn9PzzzztdKgAASAP2/ fOTZ/jl cSdmxVi0g94V/ynu9h308QR0X3aGyotzJNFFBwBTJH0P+mC8Xq9effVVnXXWWZKk559/Xu+++ 66+ 9a1v6bbbbpMknX322br66qt1+eWXO1kqAABIA2si988Tsf/ cNnCKezx3jXf3BVXXEl6NNrM49iPu krSwxK/aw53auD+gM+dNjkd5AIBxMKKDvmrVqmg4l6RXX31V LpdL11xzTfRj06ZNc6K0uPnsZz+r e+65x+kyAACA+jvop5QnZkCc1D/FPRiy1NETjNvr7m3qlGVJuZkeTc7PH Ndr2cfcmeQOAGYwIqCH QqEj/rxmzRpNnTpVZWVlR3y8vb09mWXFzUsvvaQVK1Y4XQYAAJDU2RPU5vpWSYnto OdkeJThCXfN 43kPfXdkgvvM4txxd+UXMigOAIxiREDv7e1VMBj+yXJjY6NWr16t888// 4jHbN26VdOnT3eivHE5 dOiQXnnlFZWXlztdCgAAkLShrkXBkKWpBVma7stO2NdxuVwD7qHHM6CH75/ PHscEd5vdQd/W0Kau 3vh1+QEAsTEioF900UW69dZbtX79el1//fUKBoNHHG9/77339IlPfELf/ va3HawyNnfffTdH2wEA MMiayPH2RWWFcbsXPpToPfSO+Af08QyIs033ZasoN0PBkKUtkVMFAAD nGBHQly9frtraWi1evFgv v/yy7rrrLl144YXasmWLzjzzTC1evFjr1q3T1772tYTV8Mc//lEvvvhiXF/ zqaee0oc//GFNnTo1 rq8LAABit3avvf88cffPbQU58Z/kbk9wnxmHgO5yuTRvanjNnB38AQDOM WKKe2Zmpp599lm1trbK 7XYrLy98ZGvu3Ll68sknj3hcvK1evVp33HFHdKXbpZdeOuRjt2/ frnvvvVfr169XTk6Ourq69MUv flFf+MIXjnnsgQMHtHLlSv3oRz+Ke80AACB29oC4RN4/tw2c5B4v9h30WeOc4G7zusP9Gisurw YA GI+kBPT29vZo6B5OQUHBEX/2er2aNWtWQmpqbm7WI488ovr6er399 tsjPn7NmjX6yEc+oksvvVSr Vq1SRkaG/vznP+uiiy5STU2NHn744SMef+edd+r+++9PSO0AACA2Te090Q70ohmJD+i+ 7PC3WoE4 BfRgyFLt4fCKtXgccQcAmCUpR9xPP/10nXbaaXrooYfU0NCQjC85Ir/ fr9tuu00PPPCALrnkkmEf 29LSoksvvVRer1c/+tGPlJER/mn4WWedpdtuu02PPPKIfvGLX0Qf/ 4tf/EJLly7V5MnsEwUAwCRr 94a753Mn58mfm5HwrxfvDvqBQJd6giF53S6V+BM34A4A4IykBPT169fru9/ 9rtauXasTTzxRH/3o R/Xkk0+qs7MzGV9+UAOHwmRnD/8P3E9+8hPV1tZq2bJlx3T5P/ e5z0kKd8x7e8P/+P7yl7/UNddc o/z8/OivPXv26Dvf+Y7y8/P1xBNPxPn/GgAAMBpra8P3z5NxvF2SfHEO6Pbx9v LiXHk9RowSAgDE UVL+Zne5XDr33HP16KOPau/evfrMZz6jJ598UuXl5br22mv1xhtvy LLMvfn0s5/9TJJ0zjnnHPO5 8vJyzZ07V/v27dMbb7whSXr88ce1Zs2aI36Vlpbqxhtv1Jo1a4a95w4AABLH7qAvLkv8gD ipv4Me rzVreyKD3GYWc7wdANJR0n/0mp2drauuukovvviiNm/erMrKSv3Hf/ yHysvLdeutt2rt2rXJLmlY DQ0N2rZtmySpoqJi0MecdNJJkqTXXntNkjRjxgzNmzfviF9er1fFxcWaN2/ eMV14AACQHPaAuEXJ 6qDbe9Dj1UE/HL8VawAA8zh6NmrSpEmqqqrSX//6V61cuVL5+flatmyZTj75ZH33u9/ V3r17nSxP krRhw4bo72fMmDHoY0pLSyWF97UDAAAzhUKWDrX3SJJmJakDHe2gd8ZnzRod dABIb0asWZOk4447 Tvfcc4/uuecevf3223rsscd06qmnauHChfr0pz+tT3ziE450ng8fPhz9/VBf3+ fzSZIOHjw45Ovs 2rVr1F8zEAgc8eesrCxlZWWN+vkAAGB47gGzaBLJlxP+Vitud9APR1asTYrPijUAE0t3d7e6u7 uj fz46d8B5Rk4XOeOMM1RdXa19+/bplltu0e9//3vNnj1bV111lV566SUFg8Gk1dLR0RH 9/VB72O3w 3N7eHpevWV5eLr/fH/113333xeV1AQBAcsXzDrplWdrdyBF3 ALG77777jsgZ5eXlTpeEoxgZ0G1e r1cf//jH9fTTT2vnzp26+OKL9YMf/EClpaXRo/GJlpOTE/ 29PaX9aPbHc3Pj849lbW2tWlpaor/u uOOOuLwuAABILvsOejw66E0dvWrtDh+V54g7gFjccccdR+ SM2tpap0vCUYwO6AP5fD597nOf05tv vqm///3vmjlzpq6//nodf/zxuv/++xP2dadPnx79fVtb26CPsT8+ bdq0uHxNn893xC+OtwMAJpLf vLtPf3i/3uky4sLuoHf0BNUbDI3rtewVa9N92crO8Iy7NgATT1ZW1jFZA2ZJmYA+ UFlZmZYvX671 69fr6aefVl5e4u5hnXjiidGd6fv37x/0MfbHFy5cmLA6AACYCOqaO/ WVp9boul++43QpcVGQ3T/u Z7yT3PdEJrjP5Hg7AKStlAzoA33gAx/Ql7/85YS9fnFxsRYtWiRJ2rhx46CPsSe9n 3vuuQmrAwCA ieBwZMp6uvB63MrPCof0QNf4JrnvjkxwT9YEegBA8qVUQH/mmWcc+bqf+ tSnJEn/+7//e8zn6uvr tWXLFhUXF+vCCy9MdmkAAMBw9jH38d5DjwZ0OugAkLZSKqAnapp5Z2enJCkUGvxu2PXXX6 8pU6bo qaeeOmKquyT9/Oc/VygU0le/+tUjBsoBAABI/cfcx3vE3b6DPpMVawCQtozZg75// 369/PLLqq+v H3SNWiAQ0Pr16+P+dQ8dOqS33npLkvTnP/9ZfX198nqP/H9LcXGxHnvsMV1++eW66aab9NOf/ lQZ GRmqqanRfffdp6VLl2r58uVxq6myslIej0dVVVWqqqqK2+ sCAIDki1sHPXIHfTYddADjVF1drerq 6qSur8boGBHQ33rrLS1dulTt7e2yLGvIx9nD2uIhGAzq9NNP16ZNm6L7y998 802VlpbqrLPO0vPP P3/E4y+66CK9/fbb+va3v60zzjhDubm5am9v1ze+8Q3ddNNN8njiN021pqaGiYoAAKQJXx x2oXf0 9KmhtVuSNKuYDjqA8bEbgYFAQH6/3+lyMIARAf3rX/+6FixYoCuuuELTpk0bNOy2tLTEtUvt8 Xj0 zjtjmxC7aNEiPfXUU3GrAQAApL94dNDtCe7+nAz5czPiUhcAwDxGBPQDBw5o48aNxx wtP9pjjz2W pIoAAADiw5cd6aB3xj7FnQFxADAxGDEkbt68eSOGc0n6/ve/ n4RqAAAA4icuHfRIQJ/JijUASGtG BPSysjIdOHBgxMfV19cnoRoAAID48eXYe9BjD+i7IhPc6aADQHozIqDfe++ 9uvnmm7Vnz55hH5eo NWsAAACJYnfQx7Nmzb6DPosVawCQ1oy4g15SUqJ7771X55xzjpYsWaL58+ crMzPziMckas2aiViz BgAYzKNv7dTv1u/X/722Mhr6YL7+O+hx6KBzxB1AHLBmzVxGBPRVq1bp4osv VnNzs3bt2jXk4+K5 Zs1krFkDAAzm2b/v1fv7A1qSYNqRAAAgAElEQVS5pUGXL i51uhyMkj11PdY76N19Qe1t6pQkzZlC Bx3A+LFmzVxGBPTbb79d8+bN0xVXXKGpU6cmZc0aAACpxrIsSdLW +laHK8FYRDvoXbFNcd99qEOW JRVkeTUlPyuepQEADGNEQK+vr9e6desGDeYDPf7440mqCAAAc20ho KeUgVPcLcsa84nAHQ1tkqS5 U/ImzGlCAJiojBgSN2fOnBHDuRS+KwEAwES3tb7N6RIwBvYU92DIUkfP2O 977mgM3z+fM5nj7QCQ 7owI6PPmzdPu3btHfNxEGRIHAMBwdh1qV1cvg31SRU6GRxmecOc7lnvoOxrC AX3ulPy41gUAMI8R Af3ee+/VnXfeqdWrVw/7uP/6r/9KUkUAAJgrZPWHNpjP5XINuIceS0Dv P+IOAEhvRtxB/9nPfqbj jjtOH/vYx1RWVjbomrXW1lZt2LDBoQoBADDL1oOtqihl40eq8Odk6FB7j1o6xh7Qd3 LEHQAmDCMC +ve+9z01NjbKsiwdOHBA77zzzqCPYzAKAABhDIpLLQU5sU1yb2rvUVMk1BPQASD9 GRHQp0yZojPP PFM33XSTvN7BS2ppadHVV1+d5MqcUVlZKY/HE91PCADA0bYwKC6lDJzkPhY7GsP/ O5f4s5WbacS3 bQDSQHV1taqrqxUMMs/ENEb8TT916lRVVVXp/PPPH/ZxCxcuTFJFzqqpqZHPx7FFADBBKGTp z9sb dUp5oQoi94hNwC701OLLDn/LFRhrQI8OiKN7DiB+7EZgIBCQ3+ 93uhwMYMSQuEceeURnnHHGiI9b sWJFEqoBAKDfD9/cpn99dJX+/ze2Ol3KEXYf7mCSewqJvYMeCeiTmeA OABOBEQG9q6tL+fkj/8Pz ne98JwnVAAAQdrC1Sz/9n+2S+oOSKSxL2naQY+6pwpcT2xT3nQ0MiAOAicSIgL5s2bIR H9Pc3KwX XnghCdUAABD2wz9sU0dPuEvd3NHjcDX97JmpWw9yzD1VjPcOOkfcAWBiMCKg b968We+9996Qn9+y ZYvOOeccBQKBJFYFAJjIdja268lVe6J/bo5hPVaizCrOlcSguFQS3YPeOfop7s GQpV2HOiRJx03h iDsATARGBHRJ+tKXvjToFMEf/OAH+sAHPqB169Y5UBUAYKJ64LXN6gtZmhs 5Wtw8xs5nIh0/rUCS tJWAnjLsDvpYhsTVNXeqpy+kTK9bpYU5iSoNAGAQIwK6y+ VSQ0ODrr/++ujHtm/frrPPPlu33nqr ZsyYoR//+MeaPHmyg1UCACaKtbXNenndfrlc0j2XhjeINHf0KBSyHK4sbP60cDeVI+ 6pw5cTmeI+ hjvo2xvCP4CZPSlXHrcrIXUBAMxiRED/+c9/rvfff1/z58/ X7bffroceekiLFy/WX/7yF/3bv/2b 1q1bpxtuuEHvvPOO06UCANKcZVm6/5VNkqQrPlCm0+cWS5JCltTaNfrjyYk0P9JB33O4Q509 THJP BbHcQY+uWGOCOwBMGEYE9GuuuUaStHz5coVCIX3lK19RSUmJVq5cqR/ 84AfKzs6WJDU2NjpZZtJU VlaqoqJC1dXVTpcCABPOyi0N+uuOQ8r0uvX/XThfWV6PcjM9kqTmTjMGxU3Ky1JxXq Ysq7/LCrP1 30EffUDfGdkcMIcBcQDirLq6WhUVFaqsrHS6FBzF63QBR/ ve976nxsZGnXrqqfrQhz50xOduuOEG rVq1yqHKkqempkY+n8/pMgBgwgmF+rvnn/mHWZoRufdbmJOhjp6gmjp6NWuSkxX2 O35qvv6287C2 1LfqpBl+p8vBCOwOentPUL3BkDI8I/dIohPcWbEGIM6qqqpUVVWlQCAgv59/ Q0yStIDe2dmpZ555 ZlSP/dCHPqS7775bbrdbs2bNkiQ1NTVp/fr1iSwRADDBvbB2nzYdaFVBtldfOmd e9OOFuZmqa+ky atXa/GkFkYBOBz0VFGT3f8vV2tWn4rzMEZ8TPeLOBHcAmDCSFtB7e3t17bXXyuUaf siJZVlyuVyy LEtVVVXRx9sfBwAgEbr7gnrg1S2SpC+ec5yKBgSowtxw99OkVWvRQXH1DIpLB V6PW/lZXrV196ml s3fEgN7R06f9LV2S6KADwESStIDu8/nk8Xh01VVX6YILLhhz2G5padHy5csT VB0AYKJ7/O092tfc qWm+LH32zDlHfK4oNxymTOqg26vWtjDJPWX4ssMBfTT30O3750W5GUf8sAgAkN6S ege9qKhIjzzy iHJzc2N6/mOPPRbnigAACK+++j9vbpUk3fKP85UTGQpn80c66E1GddD DAb32cKc6evqUm2ncWBkc xZeTobqWrlFNco8OiKN7DgATSlKnuK9YsSLmcC5J3//+9+NYDQAAYQ+ v3KGmjl4dNyVPy04tO+bz RbljX5GVaMV5mZqcH+6sbjvIPfRU4IsMihvNLnTunwPAxJTU gH7xxReP6/kf/vCH41QJAABhBwNd +tlbOyRJyy8+Qd5BpmvbR9ybDDriLknHT40cc2dQXEoYyy70HZH1eXOTsGKNET8AYI6kBPSW lpaU fn0AQPr6rz9sVVdvSKfOKtIFFdMGfYwdrEwaEicxKC7V9O9C7xvxsfYRdwbE AcDEkpSA/vrrr+uu u+5KyGuvX79e1113XUJeGwCQ3rY3tOmpmlpJ0u2XnDDkAFMTh8RJAwbFEdBTwm g76JZlccQdACao pAT0ZcuWyefz6Z/+6Z/U2NgYt9d9+OGHdcMNN+jhhx+O22sCACaO// z9ZgVDlv7xxGmqnF085OMK DRwSJ/UPiuOIe2rw5YQH+Y10B72hrVut3X1yuaRZk2Kf3TNWlmU l7WsBAAaXtDvot956q6666iot XrxY3/zmN9XQ0BDT61iWpRdeeEGVlZX63e9+p1dffVXFxUN/ UwUAwGBW72nS7zcckNslfe3iBcM+ ttDQDrp9xH1fc6fau0c+Ng1njbaDvjPSPS8rylGW1zPsY5H+ 3t8f0Atr9jldBoAkSepOln/5l3/R WWedpVtuuUUzZ87UeeedpwsuuEBLlizRCSecoOLiYrndR/ 7MoKurSzt37tS7776rlStX6re//a2y s7P1ne98R5/85CeTWX7SVFZWyuPxqKqqSlVVVU6XAwBpx7Is3f+ 7TZKkZaeWRTvRQ7E76IGuPvUF Q4MOknNCYW6mphRkqaG1W1sPtumU8kKnSzKa0/3h/jvowwf0HdH75xxvn+ jqA1365E//qkBXn8qK cnXqrCKnS0KaqK6uVnV1tYLBoNOl4ChJX5o6a9YsPffcc1q/ fr0eeeQRfe9739OBAwei9/7y8/Pl 9/sVCoXU3t6uQCAgScrIyNAFF1ygBx98UMuWLZPHk74/Ua6pqZHP53O6DABIW3/ cfFCrdh1Wltet r/zj/BEfXxjpfErhkF6cl5nI8sbk+Kn5amjt1pb6VgK64ewO+ ogBPYkT3GEuy7L078+/p0BX+HTM 2tpmAjrixm4EBgIB+f1+p8vBAEkP6LaTTz5ZDz30kB566CFt3r xZ77zzjnbs2KGGhgZ1dHQoMzNT fr9fs2fP1sKFC1VZWamsrCynygUApAnLsvS932+WJF171myVFuaM+ Byvx62CLK9au/vU1NFjVECf P61Af9l+iEnuKcA32iPuTHCHpBfX1umN9+ujf95QF3CwGgDJ4lhAH2jBggVasGD4 +38AAMTDX7cf 0qYDrcrL9OhLH5k36ucV5mWotbvPuFVrx0fuoTMoznzRDnrX8PMCmOCOhtZu 3fPiBknSqbOK9Pfd Tdq4n4AOTARmXKIDACBJHv/bbknS5R+cIX9uxgiP7leYY+ qguPD9eTro5rOnuLd09g45Mb03GNKe wx2SpDl00Cese17coKaOXp1Y4tP3P7FYkrTtYKt6+kIOVwYg0QjoAIAJ42CgS69tCB8Z/ fQZs8b0 XHtQnGkd9PlTwwG9rqVLrSOs70K/IVbeJ5TdQQ+GLHX0DD6YqfZwh/ pClnIyPJruy05meTDEK+v3 6+X1++Vxu/SfyxZp1qRc+bK96g1a2nqQH8QB6Y6ADgCYMP67plZ 9IUtLZhXphOljG8ZZFFm11mRY B92fm6GpBeEZLVsPcszdZDkZHnnd4Z8MDHUP3T7ePmdyntxuB36KAEc1tffo P154T5L0xY8cp5Nm +OVyuVRRGv77aiP30IG0R0AHAEwIfcGQnly1R5J09Rkzx/ x8UzvoEsfcU4XL5RpwD33w/47sAXFz mOA+Id370gY1tvXo+Kn5+vL5/TMyFpaGp2xzDx1IfwR0AMCE8MfNDdr f0qWi3AxdclLJmJ9fGOmg N3ea1UGXGBSXSqKT3If4Qc+OxvD/hsdx/3zCeWNjvX6zpk5ul/ Sfn1isLG//SuGKknAHnUnuQPoj oAMAJoTH3w4Ph7tqSbmyMzwjPPpY9i70JoM76FvooBvPN8Ik9+1McJ+ QWjp79fXn10uSvnD2XJ1S XnjE5+0j7u/XBYYcMAggPRDQAQBpb8+hDv3P1gZJ0r+cPvbj7ZJUlDd859NJ8yMd9K100I3ny +6f 5D6Y6BF3OugTyrd+u1EHW7s1d3Kebrlg/jGfP25KvjI9brV292lvU6cDFQJIFgI 6ACDtPbFqtyxL +vD8KZo1KbbgY69ZM21InCTNi0xyPxDoGjL4wQzRO+iD/O/ U2tWrhtZuSdJc7qBPGCu3NOiZv++V yyV9b9miQU/4ZHrd0assHHMH0hsBHQCQ1rr7gnrmnb2SpKtj7J5LZg+J8+ dkRFdybWMNk9Gid9AH Ceh293xKQZYKsjOSWhec0drVqzt+vU6SdO2Zs7VkdvGQj11oT3JnUByQ1g joAIC09vv3Duhwe49K /Nk6/4SpMb9OdEicgR10iUFxqWK4Ke4DV6xhYrjvlU2qa+nSzOJc3XbRgmEfaw+ K21jXkozSADiE gG6gyspKVVRUqLq62ulSACDl2cPhPlU5U15P7P/sFUU66O09QfX0heJSWzwxKC41+ LKH7qDvaIhM cOd4+4Twl22N+tXfwqsf77/yZOVmeod9fIW9ao0j7oiD6upqVVRUq LKy0ulScJTh/yaAI2pqauTz +ZwuAwBG9N6+FhXnZaq0MMfpUga16UBANbua5HG79KnTysf1Wr7sDLlckmWFV61NLciOU5Xx waC4 1NB/B/3YKe47GBA3YbR392n5c+Gj7VefPlNnHjd5xOecUBL+ IVxdS5ea2ntUlJeZ0BqR3qqqqlRV VaVAICC/3+90ORiADjoAICYHWrr0T9V/1md/XuN0KUN64u1wd+ rCimma5htfoHa7XdFwZeIk9+Pp oKcEX064NzLYkDj7iPvcyaxYS3f/+epm1R7u1IzCHN2x9MRRPceXnaGZxbm SpPe5hw6kLQI6ACAm m+tb1Rey1NDW7XQpg2rv7tPz7+6TJH36jFlxec2iXHuSu4EBfWo41B1s 7TbyBwgIG+oOeihkRYfE McE9vb23r0W/+MsuSdJ9V5ys/KzRH2hlUByQ/gjoAICY7G3qcLqEYf1mzT61dfdpzuQ 8/cPcSXF5 TTtcmbhqrSA7Q6X+8CmBLUxyN9ZQd9DrW7vU2RuU1+1SeaRLivS0fl94yNs/zJ2kD8+ fMqbn2oPi WLUGpC8COgAgJnubOp0uYUiWZenxyPH2q0+fKbfbFZfXtQfFmdqh5pi7+ Ybag24fb59ZnKuMcQwz ROrIG0Pn3FZhd9AJ6EDaSql/Ad555x2nSwAARJgc0N+tbdb7+ wPK8rq17NSyuL1uYfSIu3kddIlB canA3oPe3hNUb7B/G4A9wZ3j7RiOHdC3NbSpqzfocDUAEi GlAvqNN97odAkAgIjaw+YecbdXq31s UWk0VMdDYaSD3jzIgC8T0EE3ny+7v2va2tU/yZ0J7hiN6b5sFeVmKBiy+ EEckKaSumbtr3/9q55+ +mndeOONWrBggSSpublZDz300IjPbW1t1dq1axNdIgBglEztoDe19+i36/ ZLkj59xsy4vnZhTjjs NxvbQbcDOt+4m8rrcSsv06P2nqBaOntVHFmVFZ3gPoUJ7hiay+XSwlK/ 3trWqI37W3RyGeuxgHST 1IB++eWXq6GhQatXr9bKlSslScFgUPfcc49cLpcsyxr2+S5XfO4QAgDGp6s3qEZDp7c/+/ e96ukL qaLEp1PKC+P62kV5kQ66qXfQI5PcG9u62ZNsMH9Ohtp7gkfcQ49OcKeDjhFUlPr01rZGBs UBaSqp Af3ss8/Wr3/9a5199tnRjxUVFcnlcum2227ThRdeKI/HM+ hzm5ubdfXVVyerVADAMEztnodClp74 W/h4+6fPmBX3H+yaPMVdCg+dmlGYo33NndpS36rT4zS9HvHly8lQX UtXdJJ7d18wuhVhDnfQMQJ7 kjuD4oD0lNSA/swzz+jw4cMqLi6OfsztdquwsFB33nmn8vOH P9a1cOHCRJcIABgFU1es/Xl7o3Yd 6lB+lleXnVIa99e396Cb2kGXwoPi9jV3asvBNgK6oXxH7ULffahDIUsqyPJqSn6W k6UhBdiD4t7f H1AoZMVtSwUAMyR9SNzAcG7bvn37iOFckn71q18loiQAwBjVGtpBfyKyWu2K D86IaYXRSFIjoIfv oW9lUJyx7JMYdge9//55Htf5MKK5k/OU5XWrvSeoPQYP6wQQGyOmuBcWju6O 4OrVqxNcCQBgNEzs oB9o6dLr79dLkq4+fVZCvkb/FHczj7hL0rzIPXQmuZvLl23vQg9Pcd /RGB7qxwR3jIbX49YJ08M/ iNu4n2PuQLoxIqCP1n333ed0CQAAmXkH/b9r9igYslQ5u0gLIt+ 8xpsd0Lt6Q8buILY76NsOMsnd VEN30JngjtGxj7lzDx1IP0m9gz6choYGvfbaa9q9e7f6+vqO+ XwgEND69esdqAwAcDTTAnpfMKT/ XlUrKTwcLlHys7zyul3qC1lq6uhRiT8nYV8rVvOik9x7dLi9J7rGC+bw5YS/ /bLvoO9kBzrGyB4U t6GuxeFKAMSbEQF91apVuuSSS9Tc3DzsqjXuZQGAGfYadu/xt+ v260CgS5PyMnXxSdMT9nVcLpcK czPU2Naj5o5eIwN6XpZXZUU52tsUnuR+BoPijHNsBz182mEuE9wxStEOOkfcgb RjREC//fbbNWfO HF155ZWaNm3aoKvWWlpatHz5cgeqAwAM1NHTp0Pt5tzB/v17+/ W1Z9dJkv75tJnK8g6+rjNe/Dnh gG7qqjUpfMx9b1OnthLQjdR/B71XTe09aooMHaSDjtE6YbpPLpdUH+ hWY1u3JjP9H0gbRgT0gwcP as2aNfJ6hy/nscceS1JFzqqsrJTH41FVVZWqqqqcLgcAjrDPoOPtz7xTq+W/ XqeQJV1y0nR9+fx5 Cf+a4Unu7WpxcJL7SAfKjp+Wrzc3HdSWeu6hm8juoAc6e7Ujcry9x J+t3Ewjvi1DCsjL8mrOpDzt aGzX+/sDOvv4KU6XhBRTXV2t6upqBYNmzlOZyIz4l2DWrFkjhnNJ+ uEPf5iEapxXU1Mjn8/ndBkA MCj7/nmmx62eYMixOh59a6e++duNkqSrlpTpO5efLK8n8bNP7UFxTSa vWpsaHhTHJHcz9e9B7+N4 O2J2YqlPOxrbtbGOgI6xsxuBgUBAfr/f6XIwgBFT3GfPnq3a2toRH7dt27YkV AMAGI69Yq2syJn7 15Zl6cHXt0TD+RfOnqPvXrkoKeFckgrtXegGr1qL7kJnkruRBt5BtwfEzZ3MBHeMTf+ gOO6hA+nE iID+zW9+U8uXL9fGjRuHfdwDDzyQpIoAAEOpjXTQZzgQ0EMhS/e+tFEP/WGrJOnWC+ fr60tPTOoQ 0SJ7F7rBHfR5U/PlckmH23vU2NbtdDk4SnSKe2dvdMUa988xVgyKA9JT0o64t7W16cEHHxzy82 Vl ZfrQhz6kxYsXa8GCBcrMPHItTGtrK2vWAMAA/R303KR+3b5gSF/ 79To9t3qfJOkbly3UNf8wO6k1 SAM66AYPicvJ9Ki8KFd7DndoS30rA6QMY3fQ+0KW3ousyeKIO8ZqYaSDvqOhTZ09QeV kJnZAJoDk SOod9HvuuUcul2vYVWorV67UypUrB/0ca9YAwHn2HfRkHnHv6g3q3558V69t rJfH7dIDn1ikyz9Q lrSvP1Aq3EGXpPnT8rXncIe21rfpzOMmO10OBsjJ8MjrdqkvZEXfT8dN4Yg7 xmaqL1uT87PU2Nat zfWtOqW80OmSAMRB0gJ6fn6+MjIy9JWvfEWXXHLJmMN2S0uLrr766g RVBwAYLTtQlBcnp4Pe1t2n 61e8o79sP6RMr1vV//JBXVAxLSlfezCFOeEOupNT3Efj+GkFeuP9gwyKM5DL5ZI/ JyO6rjDT61Zp oTMzHZDaKkp9+p8tDdpYFyCgA2kiqR304uJiffOb3zzm+ PpoLVy4MM4VAQDGor27T4cjoWJGEgJF U3uPrv1FjdbWNisv06NHPrPE8W5wUbSDbu4RdyncQZekraxaM5JvQECfPSlX HjenBDF2FSXhgL4h clUCQOpLakB/4403Yg7nkrRixYo4VgMAGCu7e+7PyZAvO7H/hNQHuvSvj/5NW+ rbVJSboV989jQt NqBD5E+RI+6T8sL3zlu7+xyuBIOxV61JDIhD7BgUB6SfpAb08Xb A58+fH6dKAACxSNaKtVDI0mf+ 7yptqW/TNF+WHr/udB0fWR3mtKLIkLiWzh5ZlmXsfBRDy0LEwB9wzXX4/jn/ raQue9Xapv2tCoYs TmIAaSCpAd0WCoX00ksvafv27Zo/f74++tGPGvsNDgCgX7IGxDV19GjTgfDd6Wd vPDNp991Hwx4S 1xu01N4TVH6WI/+UIsX5B3TQ59JBR4zmTM5TToZHnb1B7TrUzrBBIA0k/ buKvXv3aunSpdqwYUP0 Y0uWLNErr7yi4uLiZJcDABgDu4NensQVayaFcyk8gTvT61ZPX0jNHT0EdMRk 4BF3VqwhVh63SyeU FOjdPc3aWBcgoANpwJ3MLxYMBrV06VK99957siwr+qumpkaf/ OQnk1kKACAGTqxYM43L5YoOims2 /B46zHVkB51QhdjZx9w31HEPHUgHSQ3oK1as0K5du3TfffeppqZGW7Zs0Vtvv aVbbrlFf/rTn/Tm m28msxwAwBjVRu+gm9XVTjZ71RoBHbHyZYcDelFuhoryY h+gCzAoDkgvST2X9/TTT+uJJ57Qxz/+ 8ejH5s2bpzPPPFMzZszQU089pfPOOy+ZJQEAxiDaQS+euB10qf8euumr1nAky7KcLiHK7qAzw R3j ZXfQN9JBB9JCUjvo+/btOyKcD/T5z39e69atS2Y5AIAxaO3qjXaMJ3wH 3T7i3kkHHbE5Z8EULZlV pM+cOdvpUpDiTpjuk9slNbZ162Brl9PlABinpHbQCwqGXpHj8/ mSWAkAYKz2NYe750W5GRN+MJq9 aq25nQ46YlNamKNnv3im02UgDeRkejR3Sr62HWzTxrqApi7IdrokAOOQ1A56 VlbWsJ/PyRn+yOSm TZviWQ4AYAz2HrYHxE3s7rkk+aNH3OmgA3Aeg+KA9JHUgD5en/ vc55wuAQAmrP4BcRP7/rk0oIPe SQcdgPMYFAekj6QG9J6e2L+RCYVC2r59exyrAQCMBSvW+ hXmsGYNgDnsDvr7dNCBlJfUS4Q1NTX6 4he/OORR9i1btuiaa64Z9HP79+9XY2NjIssDAAxjLyvWogrtDjpT3AEY wO6g7zzUrvbuPuVN8Dkh QCpL6ru3t7dXDz/88JCftyxLjz/++DEfd7lcsixLLpcrkeUBAIZBB71fdIo 7HXQABpicn6VpvizV B7q16UCrTp1V5HRJAGKU9B+vXXTRRZo2bdqYn7d//369/vrrCagIADAatYfDHfTyYjro/ XfQCegA zFBR4lN9oEEb9wcI6EAKS2pAnzp1qn73u9/F9NxQKKTS0tI4VwQAGI2Wzl4FuvokS TMK6aAXRTvo PQqFLLndnPAC4KyKUp/+uLlBG+tanC4FwDgkdUjcnDlzYn6u2+0e1/ MBALHbFzneXpyXyd1G9a9Z C1lSa3efw9UgFi7xQxWkl4oSvyRpI4PigJSW1ID+y1/+0tHnAwBis5cVa0fI8nqUm+ mRxKA4AGaw B8VtOtCqvmDI4WoAxCqpAX3+/PmOPj9VVFZWqqKiQtXV1U6XAgCSGBA 3GFatATDJrOJc5WV61N0X 0s7GdqfLgeGqq6tVUVGhyspKp0vBUTinaKCamhr5fD6nywCAqNpIB72cFWtR hbmZqmvpUhMddAAG cLtdOrHEp3d2N2nj/oCOn1bgdEkwWFVVlaqqqhQIBOT3+ 50uBwMktYMOAEhNdNCPxao1AKaxj7lv 4B46kLII6ACAEfUHdDrotuiqNTroAAxRURIO6AyKA1IXAR0AMCKGxB3LnuTe RAcdgCHmTc2XJO0+ zB10IFUR0AEAw2rp7FWrvQOdgB5l70Jv6SSgAzCDfcppf3MXk9yBFEVABwAM q/ZwuHs+OT9TuZnM FrXZR9wZEgfAFFMLspThcakvZKm+tdvpcgDEwIiA/tWvftXpEgAAQ7Dvn8/g/vkR/ KxZA2AYt9ul GYXhk057Iz9cBZBajAjoP/nJT3TgwAGnywAADGKk++eWZSWzHGMwJA6Aiexj7vYPVwGkFiMC emdn pz7ykY/o2WefVTAYdLocAMAArFgbXHTNGnfQAYxBon+maf9dXdtEBx1IRUYE9KysLN1+++ 3atWuX zj33XP37v/+7du3a5XRZAACxYm0ohfYd9HY66ADGzuVKzOvaAZ0OOpCajJj28/Of/1yf+ tSnJEm3 3nqr3nzzTd1xxx1qb2/XZz/7WV166aXyeDwOVwkAE5N9xL2cDvoR7 A56oKtPwZAljztB320PMEFv EwAYg/4j7nTQgVRkRAfdDue28847T08++aR+9rOfacuWLVq0aJHuuusu7dmzx6EKAW BisiyLDvoQ CiND4iRWrQEwBx10IBYChFwAACAASURBVLUZEdAH097erhdeeEHPPPOM3n// fX3rW9/S2Wefrcsu u0wvvvii0+UBwITQ0tmrtu7wDnTuoB/J63GrICt8EI1VawBMUV4c2YXewi50I BUZEdBvueWW6O/X rVunL33pSyotLdWNN96otWvX6rLLLtMrr7yiXbt26cc//rHeffddnXfeeXrjjTccrBoA0p/ dgZmc n6XsDK4aHa0wj1VrAMwyJT9LmR63giFLBwJdTpcDYIyMuIP+ 6KOPaubMmXr66ae1atUqWZalsrIy ffWrX9XnP/95lZaWRh9bWlqqu+++W62trfr85z+vlpYWXXnllQ5WDwDpa6QVaxNdUW6ma g93smoN gDHcbpdmFOVoZ2O79jZ1puX1pIOtXXpxTZ0+WVmuguyMkZ8ApBAjAnpbW5tuvfVWuV wuXXzxxbrx xhv10Y9+VG730A3+goICrVixQueffz4BHQASpPZwuINuH5 nEkfw5dNABmKdsQEBPN+3dfbrm0VXa dKBVOxvb9e3LT3a6JCCujDjiLkk333yzduzYoZdfflkf// jHhw3nHR0duummm/Tcc8/J6zXiZwwA kJbooA+vyF61RgcdgEH6B8Wl1yR3y7J027NrtelAqyTp16v3suoSaceIgH7CCSfowQc f1MyZM0f1 +Lfffls/+tGPdN1112nJkiUJrg4AJq7+Ce4E9MHYq9aY4g7AJP2r1tKrg179x2 363foDyvC4VFaU o67ekH61ii1PSC9GtJ+/9rWvjenx55xzjn784x9r0qRJWrZsWY KqAgCwYm14hXTQARgoHTvob2ys 1/df3yJJ+uZlJykrw61bnlqrX/xllz5/9hxleRlkivRgREC/9tprB/ 14TU2Nuru7VVpaqrlz50Y/ 7na7dcMNNySpOgCYmCzLUi1H3IdVyB10AAay/86254ikum0HW/WVp9bIsqR/ PWOWPnXaTPX0hXT/ K5tUH+jWb9fu15WnljldJhAXRhxxv+666wb9+Ntvv6033nhD9913n5YuXapNmzYluTI AmLiaOnrV 0ROUJM0oJKAPpog1awAMZJ96OhBI/V3oLZ29+sKKv6utu0+nzSnWXR+ vkCRlet265h9mS5IefWun LMtysEogfozooO/YsWPQj3/5y1+O/r65uVn//M//rFdeeSVZZQHAhGYfjZxawA70oRTmOH PE3ZXU rwYg1di70HuCIe1v6UrZTRzBkKWb//td7WxsV6k/Wz+6+oPK8PT3F68+fab+ z5vbtHF/QH/dcUhn HjfZwWqB+DCig+5yjfytht/v14EDB5JQDQBAGnlA3Cj+6k579pA4OugATGLvQpdSe1DcA69t1p 82 Nyg7w62Hr1miyflZR3y+MDdTV546Q/+PvTsPj7K+/v//mskOISthx7CJGiyLmCAgVUFE1OIXpV Xk J6LiQkeBVvnxdelHqn5ERXFr0EqrCFWrWHGp0CKoKIoQpAQUkAJBwxZCtiEh 68x8/0hmIGSDMHPf 9yTPx3VxXcl9v2fm4BXDnDnv9zmS9NraLDNCBPzO8Ap6ZmamMjMza107dOiQ lixZUu/WFI/Ho9zc XH3wwQdKSEgwKkwAOCNf/HhYPxxw6tbhPdQm3BKblU7b8RFrwVl 5MYK3SVwhTeIAWMzxWejHJCWa Hc5p+zjzgF7+Yrck6anr++v8rrH1rrtteE/97duftWr7Ye3JLVavpGgjwwT8zvB3j VVVVdq7d6/W rl2r1atX+6431ChOqk7S27dvr1WrVhkQIQCcudn/2KIcZ7mWbszWczcM1KCz4s0O6bR5mw vRIK5h 8TUV9JIKlyqq3AoPtcTGNAAI6lFrPxwo0qz3qgt6d13SS9cO7Nrg2l5J0br8 vA5atf2wXvs6S4// n18YFSYQEIYn6IMHD9bgwYMlSdu3b9f111+vsrIy3XLLLfWut9vtSk5O1jXXXEMFH UBQKCqtVI6z XJK0N++YJryyTveO7KN7Luuj0JDgSeC8FfRgPbtohJjIMNlskscjFZZWqEO7SLNDAgB JJ45aC64E Pa+4XHcu/k5llW5d0jdJ//+Yc5t8zG0X99Sq7Yf13nf7dP8V5/ h2NwHByNR9l+edd55ee+01PfDA A3rkkUfMDAUA/GbvkRJJUmLbcA3v014fZR7Q86v+qy9+zNVzNwxUz/ ZtTY7w1DR1Bh3V5zxjo8JU eKxSRccqSdABWEYwzkKvdLn12zc3aX9hqXokttGLNw5SiL3phidDeyUqpXOM th106s31P8txWR8D ogUCw/RSTmpqqsaPH292GADgN1k1CXqfDtF6ceIgvXDjQLWLDNXm7EJd9cJXenvDz5 YfB+PxeE5I 0KmgNya+jbeTuzUbxVn9Zw1AYATjFvfH/7lN67Py1TY8RAsnX6jYmmNETbHZbLr 94p6SpDe+2auK quAeLYfWzfQEPSQkRNOnTz+ltRs3bgxwNABw5vbUJOi9kqor5dcO7 Kp/zfylLuqVoNJKlx54f6vu WPydjhSXmxlmo/JLKlRaWT0DvUscVeHGxEZ5O7nTKA6AdXSvqaAHyyz0dzOy9ca6nyRJz90wUG d3 bHdaj//VgC7q0C5Ch4+W65OtBwIRImAI0xP003H33XebHQIAN MlbQT9xK3vXuCi9NfUiPXTVeQoP sWvV9hxd+fyX+mxHjllhNiq7puLSMSZCEaHMQG9MPKPWEORsYmZiS9Q+ OkLhoXa53B4dLCozO5xG FZdX6Q8ffi9J+t3lfXVFv06n/RzhoXbdMqyHJOkvX2WxewhBy9Az6Ov WrdO7776ru+++W+ecc44k qbCwUC+++GKTjz169Gid8WwAYEVZR4olST3b1x71YrfbdMcve+ nis9tr5t8368eco7pt0UbdNOQs PXz1eZYax+ZrEMf29ib5Rq2VUkEHYB12u03d4qK050iJ9hWUWrrhZ0FJhcqr3IoItevekc 0/P35T 2ll66bP/6ocDTn27J19DewffeDnA0HeD48ePV25urjZt2qQ1a9ZIklwul+ bMmSObzdbkJ102W3B9 wut2u/Xkk0/q1VdfVV5eni666CK98sor6t27t9mhAQgQj8ejrNy6FfQTndc5Rh/eM1zP/ PtH/WVt lt5a/7PW7c7TgkkX6LzOMUaG2yAaxJ26uJoKulXPoANovbrGVyfo2QXHNDQIZqGH2 G2yn0JTuIbE tw3X9Rd005vrf9Zf12aRoCMoGZqgjxgxQv/4xz80YsQI37X4+ HjZbDbNmjVLV1xxhUJC6t9KWVhY qEmTJhkVql/MnTtXCQkJWr9+vbKzszVp0iTdfPPN+uabb8wODUCA5B4tV0mFS3abdFYj1Yr IsBA9 fE2KRp7bQfctzVTWkRI99a8dWnRrmoHRNsxbQadBXNPiomoq6JxBB2Axwdgo 7kzddnFPvbn+Z63e kaOsIyVBMzkF8DI0QV+6dKny8/NrzTO32+2Ki4vTww8/rOjo6EYeLfXr1y/ QIfpNaWmpzj33XF1/ /fWSpI4dO8rhcOjBBx80OTIAgeRtENc9oY3CQ5tu8zGsT3s9cNV5mv72f1Rea Z0mPlTQT118W86g BwtOpKK1CcZRa2eqd1K0Rp7bQZ/tOKzXv87So9eeb3ZIwGkxvEncicm51 +7du5tMziXprbfeCkRI Pp9//rk++ugjvzxXVFSULzn3Kigo0NVXX+2X5wdgTXvraRDXFCse3snOp4J+ quJ8Y9asVUGn8ReA 4wl666mgS9LUmpFrSzfuY3cTgo4lurjHxcXJ7XarsLCwzr3du3dr165dkhSw s9ubNm3SmDFjNHLk SG3atKnRtbt379bkyZM1aNAgDRs2TBdccIEWLlzY5Gv897//1ZYtW/SXv/ zFX2EDsKD6OrgHmxNn oHdPMKeCHkyVzrgoKugArMnbGG5/K0vQh/ZO1Lmd2qm00qW3NvxsdjjAabFEgp6d na3evXsrKSlJ y5Ytq3UvKipKTz31lB566CG/v25hYaHmzZunt956S99++ 22T6zdv3qwLLrhAHo9HGzZs0DfffKOX XnpJv/vd73TnnXfW+5jc3Fzdf//9GjRokJYtW6Y//OEP/ v5rALCQPS0gQT9SXN1N12aTOseyxb0p 8d4u7iToACzGW0E/WFSqyiCYhe4vNptNU0f0kiS98c1eVV S1nr87gp8lEvR58+YpOTlZLpdL+fn5 te516dJFCxcuVFJSkhYvXuzX142NjdWsWbP0zDPPaOzYsY2uLSoq0rhx4xQa GqoFCxYoLKy6YjJ8 +HDNmjVLCxcu1KJFi+o8LikpSY8//ri+/PJLXX311XrhhRf0z3/+069/ DwDW0RIq6N6zip1iIk/p HH1r5+3izpg1AFaTFB2hiFC73B7pkMVnofvbrwZ0VvvoCOU4y7V860GzwwFOmSXeee 3YsUMrV67U pk2bdPvtt9e7ZsaMGVq6dKlfX/fEsW2RkZGNrn3llVeUnZ2tCRMmqF27 drXu3XbbbZKkhx9+WJWV dSsokZGRuuCCC7Rs2TIlJyfrs88+80P0AKzG5fbop7yWkKDTIO50eBP0sk q3yipdJkcDAMfZbDZ1 rfldnt2KGsVJUkRoiG4ZmixJ+svaPU2OcwaswhIJusvlUnh4uAYOHNj gGpvNpmPHzPvF4j07fuml l9a51717d/Xq1Uv79+/XqlWrGnyO0NBQpaWl+arvAFqW/ QWlqnR5FB5qV5cg3hqezYi10xIdEarQ mrm9bHMHYDWtcdSa16SLkhURatf3+53akJXf9AMAC7BEgl5cXNzkmrKyMuX k5BgQTV25ubm+RnUp KSn1rjn//OoRDitXrmz0ufbv36/LL7/cvwECsIQ9R6p/l/ VMbCu7PXg7aPsaxFFBPyU2m81XRbda J3cAaK2d3CUpoW24rrugmyTpL2uzTI4GODWWSNB79+6tp556qtE1999/ v2lz0H/44Qff1127dq13 TZcuXSRJ33//vaTqkWq///3vtX79et+ajz/+WD169NDo0aMDGC0As7SE8+ fSiVvcqaCfqlg6uQOw qNY4C/1Etw7vIUlatT2HY0gICqFmByBJs2fP1pAhQ7R27VpNmTJFAwcOVHx8vAoLC7 V+/XotWLDA 1zXdDCc2rjv5/LlXTEyMJOnw4cOSpIqKCn3++edKT0/XmDFjlJaWprPOOuuUGt05nc5a30dER Cgi IqK54QMwiC9BTwr2BN27xZ0K+qmq7uRewrxdBDWO6LZMvi3u+ a2vgi5J3Wv+/h5Pda+Y1q68vFzl 5eW+70/OO2A+SyToAwYM0MKFC3XHHXdo+fLlde7b7Xa9/PLLGjx4sAnRqdbZ9/ Dw8HrXeBPokpLq N+gdO3bUf/7zn2a9Xvfu3Wt9/8gjj2jOnDnNei4AxmkJFXS320MFvRn iakatFVBBB2Axrb2Cjtrm zp2rP/7xj2aHgUZYYou7JN18881at26dxo0bp7CwMHk8Htntdo0ePVpffvmlpk6dal psUVHHq0j1 dWk/8XqbNmf+hjY7O1tFRUW+Pw888MAZPyeAwNuTW52g9wriBP1Icb kqqtyy26ROsY1Pt8BxjFoD YFXeBP2Qs4x54NADDzxQK8/Izs42OyScxBIVdK9BgwZp2bJl8ng8y s3NVWJiokJCQswOS506dfJ9 XVxcrISEhDprvI3uOnbseMavFxMT49syDyA4lFW6dKCouvIczBX07JrqOTPQ T098G86gA7Am7yz0 8iq3DhWV6axEdke1ZhydtT5Lvvuy2Wzq0KGDJZJzSTrvvPN8M9MPHjxY7xrv dbMa2QEw1095x+Tx SDGRoUpoW/9RmGDgO3+ewBu40+Hd4s4ZdABWY7PZ2OYOBBFLJehut1vv vfeeJk6cqIsvvljjx4/X q6++qrKyMlPjSkhIUP/+/SVJ27Ztq3eNt9P7ZZddZlhcAKwjyzt iLSna94FeMDp+/pwGcafj+Jg1 KugArKc1z0IHgo1lEvR9+/Zp+PDhuuGGG/TOO+/om2++0Ycffqhp06Zp8ODBvjnkZrnxxhslSV 99 9VWdezk5Odq5c6cSEhJ0xRVXGB0aAAvYcyT4z59LJ3Zwp4J+ OuKiqivoRSTowSN4P0cDThsVdCB4 WCJBLykp0dixY+V0OjV79mwtWLBACxcu1BNPPKHbbrtNeXl5Gjt2rI4ePRqwGEpLqz9RdLvrb5 5x 5513KikpSe+8806tru6S9Prrr8vtduu+++6r1VCuuVJTU5WSkqL09PQzfi4AxsjK Df4O7pKU46we vdKZBnGnJd5XQWeLOwDroYKOk6WnpyslJUWpqalmh4KTWKJJ3EsvvaT+/ fvrb3/7W71bQ91ut2bN mqXnn39ef/jDH/z++nl5eVq7dq0k6euvv1ZVVZVCQ2v/p0lISNCSJUs0fvx43XPPPfrzn/+ ssLAw ZWRkaO7cubrqqqs0e/Zsv8STkZFBkzggyLSEEWvS8RmxYSGW +Pw2aMT6urhTQQdgPccr6CToqOZw OORwOOR0OhUbG2t2ODiBJd6Bffjhh0pPT2/w3KbdbtfTTz+tzz77zK+ v63K5dOGFFyo5OVkHDhyQ JH322Wfq0qWLxo8fX2f9mDFj9O2336qkpEQXXXSRRowYobvuukuPPvqoPvro I8s0tQNgvJaSoKN5 4k9oEufxeEyOBgBqY4s7EDwsUUGPiIhQXFxco2tCQkLqVLXPVEhIiDZu3Hha j+nfv7/eeecdv8YB ILgVHatUXkn11mYS9NbJ2ySu0uXRsQqX2kZY4p9XAJB0fIu7dxY6YzQB67LE /52n2qW9vLw8wJEA wOnLyquunneMiSAxa6WiwkJ8b3g5hw7AatpHhysi1C63RzpYxDZ3wMoskaB3 795dK1asaHTN6tWr 1alTJ4MiAoBT5xuxRvW81bLZbL5GcYV0cgdgMbVnoZOgA1ZmiQR91qxZuumm m/Tqq68qLy+v1r29 e/dq3rx5uv7663XfffeZFCEANOx4B/dokyOBmbyj1kjQAVjR8U7unEMHrMwS ezHT0tL06KOPatq0 aZo2bZoiIiIUHh6uY8eOyeVySZIef/xxDRkyxORIAaCuljIDvbloiVYtjlFr ACyMCjoQHCxRQZek e++9V5988on69++vsrIyOZ1OVVVVqXfv3nrzzTf1wAMPm B2iYZiDDgQXOrhDOp6gM2oNQGM8Jn2s 2T2BWeg4jjno1mWJCrrXlVdeqSuvvFL79u3Tvn371KFDB/ Xq1cvssAzHHHQgeHg8nuMJehIJemvm G7VWQgUdQNPqHy4cOIxaw4mYg25dlqmgn6hbt2666KKL6iTn77// vkkRAUD9Dh8t17EKl0LsNnWv Od+H1inWgAq6WZU3AMHv+Bl0KuiAlVkyQW/I448/bnYIAFDLnpoGcd3jo5gr28p5K+ icQQdgRd4K uncWOgBrMmyLe3FxsebPn9/sxzudTm3dutWPEQHAmeP8Obzioqor6 EV0cQdgQYltwxUZZldZpVsH i0qVnMi/W4AVGXoGfc6cObLZbPJ4mrdFz2Yz+rQOADRubx4j1lAtjgo6AAurnoXeRrs OF2tfAQk6 YFWGJejR0dEKCwvTzJkzNXbs2NNOtouKijRp0qQARQcAzePd4k6DOMR7z6BT QQdgUd3io2oSdBrF AVZlaAU9ISFBjz32mMLDw5v1+H79+vk5IgA4M1lHiiW13hnoOM5bQWfMGgC rYhY6YH2GdjRatWpV s5NzSVq8eLEfo7Eu5qADwaHK5dbP+dVVCM6g43gFvUJuN93WAViPt5N7dj4 V9NaOOejWZWgFvakK eHl5udatW6fS0lKNHTtWkrRlyxZ1795d8fHx6tu3rxFhmo456EBw2F9YqkqX RxGhdnWKiTQ7HJjM O2bN7ZGOllcptqZpHABYBRV0eDEH3bosMxNo0aJF6tq1q0aNGiWHw+ G7XlZWpltvvVVvvPGGidEB QF17TujgbrfTxLK1iwgNUZvwEEnVVXQAsBpmoQPWZ4kE/ZNPPtHUqVM1fPhwzZ8/X+3bt/ fdS0tL 0wcffKDMzEytXr3axCgBoLasXEasoTbvqLWAN4rj8yAAzeCtoOccLVN5lcvk aADUxxIJ+rx587Rk yRJ9+OGHmjFjhqKj644revLJJzmTDcBSmIGOkzFqDYCVJbYNV1RYiDwe6WBhmdnhA KiHJRL0kpIS TZw4sdE14eHhKi1lOw4A6yBBp4x7sriac+hFdHIHYEHVs9A5hw5YmSUS9Li4uFNa l5eXF+BIAODU eRP0XsxAR414bwW9hAo6AGs6nqDTyR2wIksk6G63W7t27fJ97/HUHU/ zyiuvKDk52ciwAKBBZZUu 7S+srj70bF/3WA5aJ28nd2ahA7AqGsUB1maJBN3hcGjkyJH6+9//rtLSUtls1dsm8/ PztXz5ck2Y MEHTp0/XrFmzTI4UAKrtzauunsdGhfnmXwPHZ6GToAOwJirogLUZOge9Idddd53WrFm jm266SXa7 XXa7XW3atFF5eblvzbPPPqu0tDQTowSA407s4O79UBGIp0kcAIujgg5YmyUq 6JL0wgsvaNGiRerV q5eqqqpUVlYmj8ej/v376+OPP9bMmTPNDtEwqampSklJoWs9YGHe Gei9Wm2DONQn1qgxawDQTDSJ gySlp6crJSVFqampZoeCk1iigu41efJkTZ48WXv37lVOTo66du2qbt26mR2W 4TIyMhQTE2N2GAAa QQd31MdbQS+kgo4gwiag1uXkWegRoSEmRyTV034KAeZwOORwOOR0OhUbG2t2ODiBoRX0LVu 2nNK6 Hj16aMiQIa0yOQcQHHwJOh3ccYI4msQBsLiEE2ahH2AWOmA5hiboTc06B4Bg QQUd9YljzBoAi6s9 C51GcYDVGJqgb9++Xd99952RLwkAfld4rEL5NQlYj0QSdB znraA7y6rkcrNn02rYRgtU4xw6YF2G N4kbM2aM5s6dqwMHDhj90gDgF97qeaeYSLWNsFQrD5gsLur4yL0itrkDsKju Cd5O7lTQAasxPEF3 OBxyu90aNWqUxo4dq3fffVcVFWwFBBA82N6OhoSG2NWu5kMbRq0BsCoq6IB1 GZqg9+3bV3/84x/1 0EMPafv27Xr44Yf16aef6pxzzpHD4dDGjRuNDAcAmoUGcWhMZHh1R+ SKKrfJkQQ/D3vSgYBgFjpg XYbuzfzss89qfT98+HANHz5cpaWlev/99/XAAw/o8OHDmjx5sm6++ WZ16NDByPAA4JQwAx0AEMxo EgdYl6EV9C5dutR7PSoqSpMmTdKnn36qTz75RGVlZbr00ks1btw4vf/++ 6qqqjIyTABoVFYuW9wB AMHLW0HPcZarvMplcjTH2cwOALAAw8+gN6Vbt2566KGHtG3bNs2ePVsrVqxQr 169NHPmTG3evNns 8AC0ch6PJ2Bn0D1iOy8AIPDi24SpTc1xHGahA9ZiuQTdq6ioSFu2bFFmZqb2 7dunl156SYMHD9ZL L71kdmgAWrEcZ7lKK10Ksdt8XXDPlI2SAQDAQMxCB6zLUvOBPB6P/ v3vf2vRokX66KOPVF5e7msQ 06dPH91yyy2aOHGiyVEGXmpqqkJCQuRwOORwOMwOB8AJ9hwpliSdldBGYSGW /Ywz6NEb7MzxwQ+A xnSLb6OdOcXKzm/ZjeL4XVi/9PR0paeny+WyzhEHVDM0Qf/ iiy906aWX1rn+448/6vXXX9ff/vY3 HTx4UFJ1sh4TE6Pf/OY3mjJlioYNG2ZkqKbKyMhQTEyM2WE AqAcj1gAALQEV9NbNWwh0Op2KjY01 OxycwNAEfdasWcrIyJAkOZ1Ovf3221q0aJE2bNggqTopt9vtuuyyyzRlyhRd d911ioqKMjJEAGgU DeKMReUDAAKDWeiANRmaoH///fdavHixVqxYoQ8//LDeLeyTJ09W9+ 7djQwLAE4ZFXQAQEtwfBY6 FXTASgxN0MvLy3XrrbdKqq6Wt2vXzreFffjw4UaGAgDNkpXHDHQAQPDr7kvQ qaADVmJKkzjvFvbr r7+eLewAgkaVy62f86orDT2TSNABAMHLu8X98NFylVW6FBkWYnJEACSDE/ SwsDBt3LhRv/jFL4x8 WQDwi30FpapyexQVFqKO7SLNDgcA/Mojxie0JnFtwtQ2PEQlFS4dKCxVr6R os0MKOH7CEQwMnRGU kpJCcg4gaHnPn/do31Z2e8vuXtay/3YAgOpZ6NXb3LPZ5g5YhqEJ+ j333GPkywGAX+3xNYhrY3Ik AACcuZio6s20x8qrTI4EgJehCfrtt99u5MsBgF9lHSmWRAd3AEDLYGO/ FGA5hiboABDMjo9Ya/nn 9AAAAGA8EnQAOEVZucxAB1oKG4VDAIAFkaADwCkorXDpQFGZpJY9A50OtwAA AOYhQQeAU7A3r7p6 HtcmTPFtw02OBgAAAC0RCboFpaamKiUlRenp6WaHAqDG8fPnLbd6DgAAWof0 9HSlpKQoNTXV7FBw klCzA0BdGRkZiomJMTsMACfYceioJKl3Eg3iAABAcHM4HHI4HHI6nYqNjTU7 HJwgqCro77//vtkh AGiltu4rlCT9oiv/iAEAACAwgipBf/zxx80OAUAr5PF4tGVfkSSpfzcSdAAA AASGYVvci4uLNX/+ /GY/3ul0auvWrX6MCABOzf7CUuWVVCjUbtN5nTl+cjIPrd8BAAD8wtAz6HPmzJHNZpOnme /mbAwt BWCCrTXV83M7t1NkWIjJ0QAAghkfagJojGEJenR0tMLCwjRz5kyNHTv2tJPt oqIiTZo0KUDRAUDD MmsS9F90jTM5EgBAS0HdCUB9DK2gJyQk6LHHHlN4ePNmCPfr18/ PEQFA07bUNIgbwPlzmIzKGwAA LZuhCfqqVatOOzn/9NNPdejQIfXp00eLFy8OUGQAUD+32+ Pb4t6/GxV0AAAABI6hXdybWwF3u91a sWKF/vWvf/k5IgAtSe7Rcj2xfLsOFJb67Tn35pXoaHmVIkLtOrsjM9ABAAAQOIZW0Jtj9O jRkqS9 e/dq3Lhxmj59AD5K5wAAIABJREFUuskRAbCquSu26/1N+1VQUqF5vx7gl+ f0jlfr1yVGYSFBNZkS AAAAQcYy7zYzMjI0dOhQRUREKCQkpM6f3r17KyoqyuwwAVjU0bJKLd96UJL0 bVae3543s+b8Odvb AQAAEGiWqKBnZWXp8ssvV3l5uTp37qycnBx16tRJklRRUaFDhw7pmmuu0csv v2xypACs6pMtB1VW 6ZYkZeeX6kBhqbrEnfmHet4K+oDuNIgDAABAYFmigv7EE0/ oiiuu0KFDh7R3716lpaUpKytLWVlZ 2r9/v3bs2KHi4mIVFhaaHSoAi1r63b5a36/3QxW9yuXWDwcYsQYAAABjWCJBz8jI0 JIlSxQXV/0G ODQ0VAUFBb77Z599tpYsWaJHHnnErBABWNiuw8X67qcChdht+j8Du0iS1u/ JP+Pn/e/hYpVVutUu IlS92rc94+cDAAAAGmOJBD0xMVGRkZG+7/v161enY3uXLl2ooAOo13s11fNL+ ibpVwNqEvSsM0/Q vfPPz+8aK7vddsbPB/iLTfw8AgDQElkiQY+Li1NVVZVKS6tHI40aNUpPP/ 20qqqqfGs8Ho/27dvX 0FMAaKWqXG69v6n6d8NvLuymC3skyGaTso6U6LCz7IyeO9M3/5zz5/ WxkSMCAAD4lSUS9J49eyot LU19+vTRsWPHdOWVV+rAgQOaMGGCdu3aJafTqfvvv18xMTFm hwrAYr767xEdPlquhLbhGnluR8VG hSmlc/Xvim/PsIq+1Zegc/4cAAAAgWeJBH3ixInavn27CgsLVVFR oYiICD3zzDP66KOPdM455yg+ Pl7PP/+8pkyZYnaohkhNTVVKSorS09PNDgWwvHc3ZkuSrh3YReGh1b/ ShvRMlCSt39P8RnHlVS7t OOSURAUdAAC0LOnp6UpJSVFqaqrZoeAklhizNnjwYO3Zs0dlZWW+ RnE333yzCgoK9PTTT+vo0aOa NGmSpk2bZnKkxsjIyGC3AHAK8ksqtGp7jiTp14O7+64P6ZWg177OOqNz6NsPHlWly6OEtuH qFn/m 49oAAACswuFwyOFwyOl0KjaWQoSVWCJBl6TOnTvXuTZ9+nRNnz7dhGgABIMPN+ 9Xpcuj87vGKKXL 8Q+10nokSKru7n6kuFztoyNO+7m9DeJ+0TVWNg5bI4h5PGZHAAAATpUltrhLkt vtrrdL+549e7Rr 1y4TIgJgdUs3VjeHO7F6LknxbcN1bqd2kqQNzayib6k5fz6A7e0AAASUR3yS CHhZIkHPzs5W7969 lZSUpGXLltW6FxkZqaeeekoPPfSQSdEBsKLv9xdp20GnwkPsurZm9vmJhvSs rqI39xy6t4JOgzgA AAAYxRIJ+rx585ScnCyXy6X8/NrVri5dumjhwoVKSkrS4sWLTYoQgNV 4Z5+P7tdRcW3C69wf0qum UVwzKugl5VXadbhYEg3iAAAAYBxLJOg7duzQypUrtWnTJt1+++ 31rpkxY4aWLl1qcGQArKi8yqUP Nu+XJP16cLd616TVVNB3HDqqgpKK03r+7/cXye2ROsVEqkNM5JkFC8Ay2EYLALA6 SyToLpdL4eHh GjhwYINrbDabjh07ZmBUAKxq9fbDKjxWqU4xkRpxdlK9a9pHR6hPh2hJ0oa9 p1dF37rfO/+c6jkA AACMY4kEvbi4uMk1ZWVlysnJMSAaAFbnnX1+3QVdFWJvuMP68XPop5egZ3obxHXn/ Dmaj+7pAADg dFkiQe/du7eeeuqpRtfcf//96tevn0ERAbCqQ0Vl+nJnriTp1xd2b3Tt8XPop9co7sQRa8D pYiif //AhBwCgtbHEHPTZs2dryJAhWrt2raZMmaKBAwcqPj5ehYWFWr9+ vRYsWKANGzbom2++MTtUACZ7 /z/75PZIqT3i1bN920bXXlRTQd920Kmi0krFRoU1+fyFxyr0U171cRq2uAMAAMBIlkjQBww YoIUL F+qOO+7Q8uXL69y32+16+eWXNXjwYBOiA2AVHo+nwdnn9ekQE6me7dsq60iJNu7N16jzO jb5GO/5 8+TENvV2hwcAAAACxRJb3CXp5ptv1rp16zRu3DiFhYXJ4/HIbrdr9OjR+ vLLLzV16lSzQwRgsu9+ KlDWkRK1CQ/RVf07n9JjfOfQT3Hc2pZ93gZxnD8HAACAsSxRQfcaNGiQli1bJo/ Ho9zcXCUmJiok JMTssABYhLd6ftUvOis64tR+fQ3plaC/Z2Rr/Z5TO4eemV19/rw/ 588BAABgMMtU0E9ks9nUoUOH Osn5xo0bTYoIgNmOVVTpn1sOSGp49nl9hvSsbhT3/QGnisurmlx/ vIJOgg4AAABjWTJBb8jdd99t dggATLJ86yGVVLiUnNhGaTXb1k9Fl7godU+Iksvt0cYm5qEfdpbpkLNMNpt0PhV0A AAAGMzQLe7r 1q3Tu+++q7vvvlvnnHOOJKmwsFAvvvhik489evSoMjMzAx0iAItaWjP7/ NeDu8lmO71BVkN6Jio7 f5/WZ+Xr0nM6NLjOWz3vkxSttqe4hR4AAADwF0PfgY4fP165ubnatGmT1qxZI0lyuV yaM2eObDab PE0MPD3dN+UAWoaf845pfVa+bDbpugtOfXu715CeCXrvu31NnkP3zj +nQRwAAADMYGiCPmLECP3j H//QiBEjfNfi4+Nls9k0a9YsXXHFFQ02hSssLNSkSZOMChWAhbz3XXX1/OI+7dUlLuq0H39Rr+ pz 6Fv2FelYRZXahNf/q29LzYi1Ad3Z3g4AgNEoxgEGJ+hLly5Vfn6+EhKOnx+12+2Ki4vTww8/ rOjo 6EYf369fv0CHCMBiXG6P3vuuunv7by5sevZ5fbrFR6lLbKQOFJVp00+ Fuvjs9nXWeDwe00esNbGJ yFC8RwKA1sNC//wArZ7hTeJOTM69du/e3WRyLklvvfVWIEICYGHf7D6iA0Vli okM1eiUjs16DpvN piE1VfT1WfVvc99XUKr8kgqF2m06t1O7ZsfbHDaRDcP/+ KkCACD4WKKLe1xcnFwuV5PrevfubUA0 AKzEO/v82oFdFRlW/xGYUzGkpvP7+j31d3L3Vs/P7dzujF4H/ uGhngMAAFohSyTo8+fPV1RUlBwO h9mhALCQgpIK/euHQ5KkX194+s3hTuStoG/OLlRZZd0PBLfsp0GcFVEFBgAArYklE vQXXnhBLpdL TqfT7FAAWMjbGT+rosqtfl1i9IsznEveI7GNOrSLUIXLrf/8XFjn/ pbsmgZx3WgQBwAAAHNYIkHv 0aOHcnNztXjx4kbX3XnnnQZFBMBslS63lqz7SZJ06/CeZ9zZtbFz6G63R9/ XdHD/RVcq6AAAADCH JRL0GTNm6JFHHlFVVVWj67766iuDIgJgtn//cEgHi8rUPjpcvxrQ2S/ P2dA59D1HSnS0vEqRYXb1 7dh0w0oAABB8PFYalwI0wNAxaw1JSkpSt27dNGjQIA0bNkznn3++ YmNja1XMcnJytHPnThOjNE5q aqpCQkLkcDg4l49W6/Wv90qSbhqSrIhQ/zRtu6hXdYK+6ecClVe5fM+ 7teb8eb8usQoNscTnlgBg OHIXoPVIT09Xenr6KTXqhrEskaBfe+21Kioqksfj0bZt23zXT0zQPR7PGW9x DRYZGRmKiYkxOwzA NFv2Feq7nwoUFmLT/3fRWX573t5J0WofHa4jxRXasq9IqT2 qE/bMbO/2ds6fAwCAls9bCHQ6nYqN 5f2PlVgiQe/YsaP69eunKVOmKDS0/pCKioo0e/ZsgyMDYAZv9fya/ l3UoV2k357XZrMprWeClm89 pPV78nwJ+pZ91RX0Ad35BwoA0Iq0jtoXEFQskaB36NBBDz74oMaMGdPouiVLlhgUEQCzH HaW6Z9b DkiSbh3ew+/PP6RnYnWCnpWve1TdjO6HA9UTJBixBgAAADNZIkF/ 8skn1bdv3ybXPfvsswZEA8BM f1v/sypdHg1Ojg9IwpxW0yjuu58KVOly6785xSqvcqtdRKh6Jrb1++ sBsCYKhwAAK7JEN6ShQ4cq MTFR5eXl+uKLL7RixQrfvS1btqigoECS9Mtf/tKsEAEYoLzKpbfWe0er9QjIa5zTsZ3 i2oTpWIVL W/cX+ba3n981VnY7b9npcAsAAGAeSyTokrRo0SJ17dpVo0aNqtW5vKysTLfeeqvee OMNE6MDYISP Mw/qSHGFOsdGaky/TgF5Dbvd5jt7vn5PvjL3VTeI68/5cwAAAJjMEgn6J598oqlTp2r48OGaP 3++ 2rdv77uXlpamDz74QJmZmVq9erWJUQIIJI/Ho9e/zpIk3Tw0WWEBHHfmm4eelXe8QRznzw EAAGAy S5xBnzdvnpYsWaKJEydKkj788MM6a5588kndeOONGjVqlNHhATBAxt4C/ XDAqcgwuyam+m+0Wn0u 6pUoSdq4t0BlldXzPxmxBgAAALNZIkEvKSnxJecNCQ8PV2lpqUERATCat3o+ flBXxbcND+hrndc5 Ru0iQ3W0rEqSlNA2XN3iowL6mgAAAEBTLLHFPS7u1LaW5uXlBTgSAGbYV3BM //7hkCRpyrCeAX+9 kBPOoUtS/26xstloENdcNJYDgFPHb0wAjbFEgu52u7Vr1y7f9/ W92XvllVeUnJxsZFiAoQ4Wleqy Z77QX9dmmR2K4Zas+0lujzS8T6LO6dTOkNf0nkOXmH8OAAA Aa7BEgu5wODRy5Ej9/e9/V2lpqa+S lZ+fr+XLl2vChAmaPn26Zs2aZXKkQODM+/ePyjpSosf+uc3sUAx1rKJKb2/ 4WZJ0qwHVc68hNefQ Jak/588RJKi8AS2HTezcAlCXJc6gX3fddVqzZo1uuukm2e122e12tWnTRuXl5b41 zz77rNLS0kyM EgisSlfrfOv9/qb9cpZVKTmxjUae28Gw1z2/S4w6xUTqaFmlBp1FBR0AAADms0QFXZ JeeOEFLVq0 SL169VJVVZXKysrk8XjUv39/ffzxx5o5c6bZIQLwM4/Ho0Xf7JUk3TK0h+ x246oJoSF2vTdtqD66 92IlRkcY9roAAABAQyxRQfeaPHmyJk+erL179yonJ0ddu3ZVt27dzA4LQIB89 d8j2nW4WNERofr1 hcb/v94tvo3hrwkAAAA0xDIV9BP16NFDQ4YMqZOcL1261KSIAASCd7TahMHd1C4y zORoAAAAAHNZ MkFvyNy5c80OAYCf7Mkt1uc/5spmk6YM62F2OAAAAIDpLLPFPTc3Vy tXrtRPP/2kqqqqOvedTqe2 bt1qQmQAAuGNmrPnI8/poB7t25obDAAAAGABlkjQN2zYoLFjx 6qwsLDeGehe3vFrAIKbs6xS7323 T5J063DjRqsBLQX/HAIA0DJZIkH/v//3/6pnz566/vrr1bFjR4WEhNRZU1RUpNmzZ5sQHQB /ezcj WyUVLvXtGK3hfRKbfgAsiRwRAADAvyyRoB8+fFibN29WaGjj4SxZssSgiAAEisvt0R vr9kqSpgzr yc4YAAAAoIYlmsQlJyc3mZxL0ksvvWRANAACafX2HGXnlyquTZjGD+ pqdjgAAAtq7MgjALRklkjQ e/Tooezs7CbX7dq1y4BoAATSFztzJUnjB3VVVHjd4ywA/ MsjEh0AAIKFJRL0xx57TLNnz9a2bdsa XffMM88YFBGAQHG5qpOF9tERJkcCAJBowgvzsWECOM6wM+jFxcWaP39+g/ e7deumiy++WAMGDNA5 55yj8PDwWvePHj3KmDUAAAAAlnGsokpllW4ltA1vejFwCgxtEjdnzhzZbLZG zxWtWbNGa9asqfce n/ACAIDmokoHwN8G/vFTVbjc2vw/oxXXhiQdZ86wBD06OlphYWGaOXOmxo 4de9rJdlFRkSZNmhSg 6AAAAADg9FS43JKkHw44NbxPe5OjQUtgaAU9ISFBjz32WJ3t66eqX79+ fo4IAIDAoDkbAAA4XYY2 iVu1alWzk3NJWrx4sR+jAQDA/ziN5T98xAEAaG0MTdBPpwJeWVlZ51r fvn39GQ4AAAAAAJZhiTFr Xlu2bNGkSZOUkJCgyMhIdejQQXfccYf27NljdminraSkRL/73e+ UnJysuLg4XXnlldqxY4fZYQEA AAAALMoyCfqiRYuUlpamt99+W4WFhfJ4PDpy5Ij++te/6oILLtCqVavMDvG03H333YqJidFzzz 2n adOm6fPPP9fll1+uwsJCs0MDAAAAWgWOHSHYGNokriEbNmzQnXfeqW7duumuu+7SL3/ 5SyUmJio7 O1tff/21FixYoN/85jfavHmzzjrrLLPDbdL333+vgQMH6r777pMkXXfddUpMTNSsWbO0c uVK/eY3 vzE5QgAAAACA1Viigv7EE0/o+uuv1/bt2zV79mwNHTpUffv21ahRo/Q///M/ +vHHHzV48GA988wz AYvh888/10cffeSX5zp69KgcDketa2PGjJFUPS4OAAAAAICTWSJB37lzpxYtWqSIiIh6 78fGxuqd d97RmjVr/P7amzZt0pgxYzRy5Eht2rSp0bW7d+/W5MmTNWjQIA0bNkwXXHCBFi5cWGfd0 KFDFRkZ WetaWVmZJGnYsGH+Cx4AAAAA0GJYYot7p06dGkzOvRISEh QXF+e31ywsLNTChQuVk5Ojb7/9tsn1 mzdv1iWXXKJx48Zpw4YNCgsL09dff60xY8YoIyNDr776aqOP// zzzzV27FhmuQMAAAAA6mWJCnpM TIxcLlejazwej+z2uuF+8cUXzXrN2NhYzZo1S88884zGjh3b6N qioiKNGzdOoaGhWrBggcLCwiRJ w4cP16xZs7Rw4UItWrSowceXlJTo7bff1oIFC5oVKwAYjaY6ANB6eDxmRwDA yxIJ+uTJk5Went7o mj//+c+aMGFCneu///3vm/WathPefZ68Hf1kr7zyirKzszVhwgS1 a9eu1r3bbrtNkvTwww/XO7td kmbNmqXnn39ePXr0aFasAAAAAICWzxJb3EtKSrRo0SIVFBSoZ8+ ede5v27ZNH330kWbPnq3Fixf7 rh85ckTff/99wOP7y1/+Ikm69NJL69zr3r27evXqpT179mjVql V1qvHPPPOMxowZo0suuSTgcQIA AAAAgpclEvSZM2eqsLBQmzdvrlXZ9vLU7LvxVqtPvF7fen/ Kzc3Vrl27JEkpKSn1rjn//PO1Z88e rVy5slaC/tprr6ljx4669tprfdeKi4t15MgRqukAAAAAgFoskaAnJiaqb9++ GjNmzGkl3AUFBfrT n/4UwMikH374wfd1165d613TpUsXSapVzV+2bJnef/99TZkyRe+ 9956k6p0CH3zwgd56660ARgwA AAAACEaWSdCfe+45XXTRRaf92OY2iTtV+fn5vq9PPn/uFRMTI0k6fPiwJGnt2rWaOHGiysvL9 ckn n9RaO23aNEVFRTX6mk6ns9b3ERERTXa5BwAAAIDGlJeXq7y83Pf9yXkHzGeJ JnGPPvpog9vHm/LU U0/5OZrajh075vs6PDy83jXe5LmkpESSdPHFF6usrEwej6fOn1Pp5N69e3fFxsb 6/sydO9cPfxMA AAAArdncuXNr5Rndu3c3OyScxBIV9NGjRzf7sWPGjPFjJHWdWO2urKysN0n3 dm9v06aNX14zOzvb V5WXRPUcAAAAwBl74IEHak3BcjqdJOkWY4kE/WQ7d+7U6tWrVVxcrF69emns2LF+ S35PV6dOnXxf FxcXKyEhoc6a4uJiSVLHjh398poxMTG1EnQArQNjaAEArVlgWz9D4uhsMDAs Qf/444/13HPP1bl+ 7733avz48ZKqm7799re/1dKlS31bwqXqs99PP/207rrrLqPC9TnvvPNks9nk8Xh08ODB ehP0gwcP SpL69etndHgAAAAAgBbCsAT9V7/6lQ4ePKjf/va3SklJ0b333qvRo0f7xo2VlZVp5Mi R2rJlizwe j0aOHKkpU6aoffv2Wr9+vR588EGVl5dr+vTpRoUsSUpISFD// v2VmZmpbdu21ZuEezu9X3bZZYbG BqBlCPC0yODEdoIzx88VAABBx9At7nl5eZo2bZpeeOEF2e21+9P96U9/ UmZmpmw2m2bMmFGr2n7l lVdqypQpGjlypCZOnKikpCQjw9aNN96ozMxMffXVV/r1r39d615OTo527typhIQEXXHFFYbG BQAt 3emM3gQAAAh2hnVxz83N1b///W+99NJLdZJzSXrnnXckSbGxsfV2Zk9OT taMGTO0fPlyv8dWWloq SXK73fXev/POO5WUlKR33nmnVld3SXr99dfldrt13333NTk+ DQAAAACAhhiWoK9atUo33HBDvfeO Hj2qzZs3y2az6dJLL21wnFlKSooOHTrk17jy8vK0du1aSdLXX3+ tqqqqOmsSEhK0ZMkSHT16VPfc c4+va3tGRobmzp2rq666SrNnz/ZbTKmpqUpJSVF6errfnhMAAAAAJCk9 PV0pKSlKTU01OxScxLAt 7j///LMuuOCCeu+tXbtWLpdLNptNl1xySYPPkZ+fr/bt2/slHpfLpSFDhmjHjh2++ eWfffaZunTp ouHDh2vZsmW11o8ZM0bffvut/vd//1cXXXSR2rRpo5KSEj366KO65557FBI S4pe4pOrEny7uAADA SB56P6CF40f8OIfDIYfDIafTqdjYWLPDwQkMS9Dj4+N93c5PtnLlSt/ Xl156aYPPsW7dOt1yyy1+ iSckJEQbN248rcf079/ftxUfAAAAAAB/MmyL+6hRo/Tiiy/ 6tod77d+/X4sXL5bNZtO5556rAQMG 1Pv4wsJCbdiwQQMHDjQiXAAAAKBFow0nYD2GJei9e/fWhRdeqBEjRmjFihX68ccf9eabb+ qSSy5R QUGBbDabHnvssXofW1FRocmTJ2vu3LlGhQsAAAAAgKEMHbP24osv6q677tLV V1/tG53j8XgUFham 5557Ttddd51vbUlJiXbt2qX169fr+eef148//qhOnTopNTWVbukAAOCMMMIPAGBFhib o4eHhev31 13XPPffoo48+0qFDh9SjRw/deOON6tmzZ621X375pd59911J0pAhQ zRkyBBVVlbq66+/1uWXX25k 2AAAAAAABJyhCbrX4MGDNXjw4EbXjB07VmPHjjUoIgAAAAAAzGXYGXScOuag AwAAAAgU5qBblykV dDSOOegAgglzZQEACC7MQbcuKugAAACAUTx8rAmgYSToAAAECQ9v7IEWg0EC AOpDgg4AAAAAgAWQ oAMAAAAAYAEk6AAAAAAAWIClEvTy8nJ98cUXWrFihe/ali1bVFBQYGJUAAAAAAAEnmUS9EWLF qlr 164aNWqUHA6H73pZWZluvfVWvfHGGyZGZyzmoAMAAAAIFOagW5clEvRPPvlE U6dO1fDhwzV//ny1 b9/edy8tLU0ffPCBMjMztXr1ahOjNE5GRoa2bdtW64MKALAaGy2ITcN/ eQDAmXA4HNq2bZsyMjLM DgUnsUSCPm/ePC1ZskQffvihZsyYoejo6DprnnzySSrKAAAAAIAWyxIJeklJiSZOnNjomvD wcJWW lhoUEQAALQOj0xGM+LkF0FpZIkGPi4s7pXV5eXkBjgRAoHn Euy4AAHAc7wyA4yyRoLvdbu3atcv3 vaeej01feeUVJScnGxkWgADi+DIAWAO/jgHAOiyRoDscDo0cOVJ/// vfVVpa6ms8lJ+fr+XLl2vC hAmaPn26Zs2aZXKkAAAAAFAbxzLgL6FmByBJ1113ndasWaObbrpJdrtddrtd bdq0UXl5uW/Ns88+ q7S0NBOjBAAAAAAgcCxRQZekF154QYsWLVKvXr1UVVWlsrIyeTwe9e/fXx9/ /LFmzpxpdogAAJwy qilnrr4jbwAAtGSWSdAlafLkydq5c6f27NmjdevW6eeff9Z// vMfXXXVVZKk999/3+QIAQBonI0T vQAAoJkslaB79ejRQ0OGDFG3bt1qXX/88cdNishYqampSklJYe47AAAAAL9LT 09XSkqKUlNTzQ4F JzHsDHpxcbHmz5/f7Mc7nU5t3brVjxFZV0ZGhmJiYswOA wAAAAhq7Gqqn8PhkMPhkNPpVGxsrNnh 4ASGNombM2eObDZbs8+U2ZjLBAAAAABooQxL0KOjoxUWFqaZM 2dq7Nixp51sFxUVadKkSQGKDgAA AAAAcxlaQU9ISNBjjz2m8PDwZj2+X79+fo4IAAAAAABrMLRJ3KpVq5qdnEvS4s WL/RgNAKAhnNkD gNbDI0YaAlZhaIJ+phXwvn37+ikSAAAAAACsxTJj1txutwoLC+ tc3717t3bt2mVCRAAAAAAAGMcS CXp2drZ69+6tpKQkLVu2rNa9qKgoPfXUU3rooYdMig4AAAAAgMCzRII+b948JScny+ VyKT8/v9a9 Ll26aOHChUpKSuIMOgAAAADLYRo0/MUSCfqOHTu0cuVKbdq0Sbfffnu9a2b MmKGlS5caHBkAAAAA AMawRILucrkUHh6ugQMHNrjGZrPp2LFjBkZlntTUVKWkpCg9Pd3sUAAAAAC0 MOnp6UpJSVFqaqrZ oeAkhs5Bb0hxcXGTa8rKypSTk2NANObLyMhQTEyM2WEAAAAAaIEcDoccDoec TqdiY2PNDgcnsEQF vXfv3nrqqacaXXP//fef8Zg2AAAAAACsyhIV9NmzZ2vIkCF au3atpkyZooEDByo+Pl6FhYVav369 FixYoA0bNuibb74xO1QAAAAAAALCEgn6gAEDtHDhQt1xxx1avnx5nft2u10v v/yyBg8ebEJ0AAAA AAAEniW2uEvSzTffrHXr1mncuHEKCwuTx+OR3W7X6NGj9eWXX2rq1KlmhwgAAAAA QMBYooLuNWjQ IC1btkwej0e5ublKTExUSEiI2WEBAAAAABBwlqmgn8hms6lDhw51kvONGzea FBEAAAAAAIFlyQS9 IXfffbfZIQAAAAAAEBCGbnFft26d3n33Xd19990655xzJEmFhYV68cUXm3zs 0aNHlZmZGegQAQAA AAAwhaF0geBHAAAgAElEQVQJ+vjx45Wbm6tNmzZpzZo1kiSXy6U5c+ bIZrPJ4/E0+nibzWZEmAAA AAAAGM7QBH3EiBH6xz/+oREjRviuxcfHy2azadasWbriiisabA pXWFioSZMmGRUqABiv8c8oAQBo 2ajFAcYm6EuXLlV+fr4SEhJ81+x2u+Li4vTwww8rOjq60cf369cv0CECgOF4 P1IXn1UAAIDWyPAm cScm5167d+9uMjmXpLfeeisQIQEA0OLY+OgHAICgY4ku7nFxcfVez8jI0Nq1a7V nzx5JUu/evY0M yzSpqalKSUlRenq62aEAgKlIMQEA8L/09HSlpKQoNTXV7FBwEkO3uDfk9ttv1 1//+tc617/99lvl 5eVp//792r9/v+bPn69zzz3XhAiNlZGRoZiYGLPDAAAArQhHS9DSNdGPulVxOBxyOBxyOp2KjY 01 OxycwBIJurdCfrJ7773X93VhYaEmTpyoFStWGBUWAAAAAACGscQW91MZnxYb G6tDhw4ZEA0AAADQ 8jHBGLAewyvomZmZyszMrHXt0KFDWrJkSb1z0D0ej3Jzc/XBBx/U22AOAOA/ bP9Da0FeAgCwIsMT 9KqqKu3du1dr167V6tWrfdenTJnS4GM8Ho/at2+vVatWGRAhAAAAAADGMzxBHzx4sAYPH ixJ2r59 u66//nqVlZXplltuqXe93W5XcnKyrrnmGiroAAAAAIAWy9Qmceedd55ee+ 01PfDAA3rkkUfMDAUA 0FxsiwcAAPAL05vEpaamavz48WaHAQAAAAQcn2kCaIzpCXpISIimT58ul8tl digAAFgab+yBloMO 6gDqY3qCLknz589XVFSUHA6H2aEAAAAAAGAKSyToL7zwglwul5xOp9mhAAAA AABgCksk6D169FBu bq4WL17c6Lo777zToIgAAAAAADCWJRL0GTNm6JFHHlFVVVWj67766iuDIgIA wLpsHF4FAKBFMnXM mldSUpK6deumQYMGadiwYTr//PMVGxtb6w1ITk6Odu7caWKUAIATkSI CAAD4lyUS9GuvvVZFRUXy eDzatm2b7/qJCbrH46FiALQAHtpQA4bifzkEI35uAbRWlkjQO3bsqH79+mnKlCkKDa0/ pKKiIs2e PdvgyAAEio36KwBYAvUPmM3Dp/eAjyUS9A4dOujBBx/UmDFjGl23ZMkSgyICAAAtDTkAgEDh9 wv8 xRIJ+pNPPqm+ffvWe2/VqlU6ePCg+vTpo2effdbgyAAAAAAAMIYlurgPHTp UiYmJ9d7zeDxyu91a sWKFNm/ebHBk5khNTVVKSorS09PNDgUAcJrYLuw/FKQAIDDS09OVkpKi1NRUs0PBSSxRQW /M6NGj JUl79+7VuHHjNH36dJMjCryMjAzFxMSYHQYAAACAFsjhcMjhcMjpdCo2NtbscHACS1 TQpeqkdOjQ oYqIiFBISEidP71791ZUVJTZYQIAAAAIEuxqQrCxRAU9KytLl19+ ucrLy9W5c2fl5OSoU6dOkqSK igodOnRI11xzjV5++WWTIwUAAAAAIDAsUUF/4okndMUVV+ jQoUPau3ev0tLSlJWVpaysLO3fv187 duxQcXGxCgsLzQ4VAAAAAICAsESCnpGRoSVLliguLk6SFBoaqoKCAt/9s88+ W0uWLNEjjzxiVogA 0KqwJRAAWg9GhAHWYYkEPTExUZGRkb7v+/Xrp3/961+11nTp0oUKOgAAAACgxbJEgh4XF6eqq iqV lpZKkkaNGqWnn35aVVVVvjUej0f79u0zK0QAAAAAAALKEgl6z549lZaWpj59 +ujYsWO68sordeDA AU2YMEG7du2S0+nU/fffz+gxAAAAAECLZYku7hMnTlR6errsdrsq KioUFxenZ555Rrfccos+/vhj 37o//elPJkYJAAAAAEDgWCJBHzx4sPbs2aOysjJfo7ibb75ZBQUFevrpp3X06FFNm jRJ06ZNMzlS AAAAAAACwxIJuiR17ty5zrXp06dr+vTpJkQDAAAAAICxLHEGHQAAAACA1s6 UCrrb7dbHH3+s3bt3 q2/fvrr66qtlY+guAAAAAKAVMzxB37dvn6666ir98MMPvmsXXnihVqxYoYSEBKPDAQAAAADAEg zd 4u5yuXTVVVfp+++/l8fj8f3JyMjQDTfcYGQoAAAAAABYiq EJ+uLFi7V3717NnTtXGRkZ2rlzp9au Xavf/e53+uKLL/TZZ58ZGQ4AAAAAAJZh6Bb3d999V2+++aZ+9atf+a716dNHw4YNU9euXfXOO+ 9o 5MiRRoYEAAAAAIAlGFpB379/f63k/ERTp07Vli1bjAwHAAAAAADLMDRBb9e uXYP3YmJiDIwEAAAA AABrMTRBj4iIaPR+VFRUo/d37Njhz3AAAAAAALAMQxP0M3XbbbeZ HQIAAAAAAAFhaIJeUVHR7Me6 3W7t3r3bj9EAAAAAwJmz2cyOAC2FoV3cMzIyNG3atAa3su/cuVOTJ0+ u997Bgwd15MiRQIYHAAAA AIBpDE3QKysr9eqrrzZ43+Px6G9/+1ud6zabTR6PRzY+mgIAAAAAtFCGJuiSNGbMGHXs2PG0H3 fw 4EF9+umnAYjIelJTUxUSEiKHwyGHw2F2OAAAAABakPT0dKWnp8vlcpkdCk5iaILeo UMHLV++vFmP dbvd/6+9e4+Oorz/OP7Z3ICUJBqJIAoqKkpAkEsEwk8g0Y IoJ6Bg1dp6xVuDeMMLiOWiGFu1tByD mqggKMUrVClYjkiUi4EgRAGLAiJCwIAI2ZCQELLP7w/cLUs2IZfdncnm/ TqHw2Zndua7z86TyWdn 5hm1bdvWzxXZU15eHredAwAAABAQ7gOBTqdTcXFxVpeD4wR1kLhzzz233q8N Cwtr0OsBAAAAALCz oAb0N954w9LXAwAAAABgV0EN6B07drT09QAAAAAA2FVQAzoAAAAAAPCNgA4A NmFkrC4BAADLcENl gIAOAJZz8BdJFYbvKhqM7QoAgMaHgA4AsC1CJgAAaEoI6AAAAJDh1BWEOjZx NAIEdAAAAKAJcnDV N2A7BHQAgAcD1aGp4PIJAIAdEdABAAAAALABAjoAoEE45g4Atcel/ gBqQkAHAKCx4A97IGRw/TcA XwjoAAAAAADYAAEdAAAAAAAbIKADAOqFUbCtQ9sDABCaCOgAgopLaIHgMoxI hUaI7bZp4dMG/oeA DsASHAEEEGyGGOATv46BhuM7JfgLAR0AgADgj7WGow0BAE0NAR0AAD/ iaCQAAKgvAjoAAACAkMSX pmhsCOgAAAAAANgAAR0AAABowhjuAbAPAjoAAAAAADZAQAcAAAAAwAYI6AAA AAAA2AABHQAAAAAA GyCgAwAAAABgAwR0AAAAAABsgIAeJN9//71GjRqlhQsXWl0KAAAAAMCGCOgB5nK 5NH/+fI0ePVqv vfaaysrKrC4JAAAAAGBDEVYXEOrCwsJ0zTXXKDY2VosXL7a6HAAAAACATXEE PUjCw8OtLgEAAAAA YGME9BMsW7ZMH374odVlAAAAAACaGAL6r9atW6fBgwcrNTVV69atq3Hebdu2 6eabb1b37t2VnJys Hj16KDs7O0iVAgAAAABCUZO/Bv3gwYPKzs5WYWGhcnNzTzp/fn6+ BgwYoLS0NK1Zs0aRkZFauXKl Bg8erLy8PGVlZQWhagAAAABAqGnyR9Dj4uL0yCOP6Pnnn9eQIUNqnLeoqEhp aWmKiIjQjBkzFBkZ KUnq16+fHnnkEWVnZ2vWrFlBqBoAAAAAEGqafEB3OByex82bN69x3pdfflk7d+ 7UyJEjFRMT4zXt 9ttvlyRNmDBBFRUV/i8UAAAAABDSmnxAr4tXX31VkjRw4MA q09q1a6cOHTqooKBAn3zySZArAwAA AAA0dgT0Wtq3b5+2bt0qSUpMTPQ5T5cuXSRJS5YsqTKtv LxckuRyuQJUIQAAAACgMSOg19KmTZs8 j88880yf87Rt21aStHHjRq/nFy5cqIyMDElSVlaWFixYEKAqAQAAA ACNVZMfxb22fvnlF8/jE68/ d4uNjZUk7d271+v5oUOHaujQobVel9Pp9Pq5WbNmatasWa1fDwAAAAAnKi8v95zZK1XNHbAeR9 Br qbS01PM4KirK5zzuEF1SUtKgdbVr105xcXGef+6j7wAAAABQXxkZGV45o127dlaXhBNw BL2WWrRo 4XlcUVHhM6S7R2+Pjo5u0Lp27tzpORoviaPnAAAAABps3Lhxeuihhzw/ O51OQrrNENBrqU2bNp7H hw4dUnx8fJV5Dh06JElq3bp1g9YVGxvrFdABAAAAoKG4dNb+ OMW9ljp16uS5Z/qePXt8zuN+vnPn zkGrCwAAAAAQGgjotRQfH6+uXbtKkr755huf87hHek9JSQlaXQAAA ACA0EBAr4MbbrhBkrR8+fIq 0woLC/Xdd98pPj5egwYNCnZpAAAAAIBGjoB+nMOHD0uSXC6Xz+ l33XWXEhIS9Pbbb3uN6i5JM2fO lMvl0sMPP+w1oBwAAAAAALVBQP/V/v37tWLFCknSypUrdfTo0SrzxMfHa86 cOSouLtbo0aM9o7bn 5eUpIyNDV111lR577LEG15KUlKTExERlZmY2eFkAAAAAcLzMzEwlJiYqKSnJ 6lJwgiY/intlZaV6 9+6tzZs3e+5f/umnn6pt27bq16+f5s+f7zX/4MGDlZubq6lTp6pPnz6Kjo5WSUmJpk yZotGjRys8 PLzBNeXl5TGKOwAAAICASE9PV3p6upxOp+Li4qwuB8dp8gE9PDxca9eurdNrunbt qrfffjtAFQEA AAAAmiJOcQcAAAAAwAYI6AAAAADQAA6H1RUgVBDQAQAAAACwAQI6AAAAAAA2 QEC3IW6zBgAAACBQ uM2afTX5UdztiNusAU2TMVZXYB9GNAYANDUOLuQOGm6zZl8cQQcAy/ EHSXUctE290XKoK74WQ6jj y180BgR0AIAHR/EBoOnggDVgPwR0AECDGFI9GiHOzoBV+J0JoCYEdAAAGgn+ rAdCCN8RAfCBgA4A AAAAgA0Q0AEEFWf2hQ5OEbZOXVqeLvc//P5pPPiompZQ6Juh8B5gDwR0AJYg2iH UMVpww9GGwcGt rQDAPgjoNpSUlKTExERlZmZaXQoAoI4IOwBgH/xO9i0zM1OJiYlKSkqyuhScIMLqAlBV Xl6eYmNj rS4DQBPGHzQA0HQwsnzTk56ervT0dDmdTsXFxVldDo7DEXQAAAAAAGyAgA4A AAAAgA0Q0AEAAAAA sAECOgAAAAAANkBABwAAAADABgjoAAAAAADYAAEdAAAAAAAbIKDbUFJSkhIT E5WZmWl1KQAAAABC TGZmphITE5WUlGR1KThBhNUFoKq8vDzFxsZaXQYAAACAEJSenq709HQ5nU7F xcVZXQ6OwxF0AAAA AABsgIAOAAAAAIANENABAAAAALABrkFHtfYWl6nsiEun/ iZSMc0jrS4HAAAAAEIaR9BRrScXbFT/ 55bpX/m7rS4FAAAAAEIeAR0AAAAAABsgoAMAAAAAYAMEdAAAAAAAbICADgAAAACADR DQAQAAAACw AQK6DSUlJSkxMVGZmZlWlwIAAAAgxGRmZioxMVFJSUlWl4ITcB90G8rLy1Ns bKzVZQAAAAAIQenp 6UpPT5fT6VRcXJzV5eA4HEEHAAAAAMAGCOgAAAAAANgAAR0AAAAAABsgoAMA AAAAYAMEdAAAAAAA bICADgAAAACADRDQAQAAAACwAQI6AAAAAAA2QEAHAAAAAMAGCOgAAAAAANgA AR0AAAAAABsgoAMA AAAAYAMEdBtKSkpSYmKiMjMzrS4FAAAAQIjJzMxUYmKikpKSrC4FJ4iwugBU lZeXp9jYWKvLAAAA ABCC0tPTlZ6eLqfTqbi4OKvLwXE4gg4AAAAAgA0Q0AEAAAAAsAECOgAAAAAA NkBAB2Bb5eXlmjRp ksrLy60uBQgp9C0gMOhbABqKgA7AtsrLyzV58mT+0AH8jL4FBAZ9C0BDEdDhN3a8LVwwaw rEuvyx zPouoz6vq8trVq1aVeflN0V27FcSfashywh037LrNmM3r7zyitUl+ ETfCu666Vv+RzvZt2/x2TQO BHT4jR07PX/o2DdEENBrx479SqJvNWQZhAh7eCWLgG7XvhXMddO3/I92sm/ f4rNpHLgPuo0YYyRJ TqfT4kqOOXL4kFzlpTpcUlyrmiorK21Tu1swa2rouo6UHmtv6X/bgD/qr+ 8y6vO62rym/Nf36ao4 ctJ53dPttl35W8mhYrnKS3XkcFSV9xrsflVxuESu8lKVHqq531dWVqq42ClX eamOmjC/11jsPCxX eakqw8PkCEAbBLJvHS0rkau8TMVOp5zOqt+DN6RvHVt2qQ4VO+V0+t6Fu+ ctKT62XR09XLUP2blv Hfp1u5KkoiKnmkeG+23ZJeVHPcu24z5Lsma/5d7flxbXbn9fm2XWx4mffVRE3Y4jBW q/VZd5a9O3 Dpf8+ju/9JDl22Btf+fXRX0+h+LiY9tgpSPC/7/vXcZruwo7GuXX5buXfeiQU07nsWUHo h8Har/l /tmdQ2A9h+HTsI1du3apXbt2VpcBAAAAoAnZuXOnzjrrLKvLgAjotuJyubR7927FxMTI4X BYXQ4A AACAEGaMUXFxsdq2bauwMK5+tgMCOoCQ9f333+uZZ57R8OHDNXToUKvLAQDAC/ spACfiGnQAIcfl culf//qXsrOztXjxYl155ZVWlwQ0WrNmzVJ+fr7atGmjdevW6cknn9TFF19sdVlAo8 Z+CkB1COgA Qk5YWJiuueYaxcbGavHixVaXAzRaL774ot544w3l5uYqPDxcX375pa644gqt X79ebdu2tbo8oNFi PwWgOlxoACBkhYf7b/RnoKkpKirS+PHjdeedd3r6Us+ePXXOOedo6tSpFlcHhAb2UwBOREAHE DTL li3Thx9+aHUZQMjyZx/7+OOPVVxcrD59+ng937dvX82bN49b8qBJYf8FIFgI6AA Cbt26dRo8eLBS U1O1bt26Gufdtm2bbr75ZnXv3l3Jycnq0aOHsrOzg1Qp0DgFoo999dVXkqT2 7dt7Pd++fXv98ssv 2r59u//eAGBT7L8ABBvXoAMImIMHDyo7O1uFhYXKzc096fz5+ fkaMGCA0tLStGbNGkVGRmrlypUa PHiw8vLylJWVFYSqgcYjkH1s//79kqSYmBivZbh/3rt3rzp06ODHdwPYB/ svAFbhCDqAgImLi9Mj jzyi559/XkOGDKlx3qKiIqWlpSkiIkIzZsxQZGSkJKlfv3565JFHlJ2drVmzZnnmf+ utt9SyZUvP v86dOwfyrQC2FMg+1qxZM5/Lcd8nNyoqyj9vArChQPYtAKgJAR1Aw DgcDs/j5s2b1zjvyy+/rJ07 d2rkyJFVjtjdfvvtkqQJEyaooqJCkpSWlqb8/HzPv0WLFvm5esD+ AtnH2rRpI0k6dOiQ17zun886 66yGFQ/YWCD7FgDUhIAOwBZeffVVSdLAgQOrTGvXrp06dOiggoICffLJJ5KOnWZ7/ vnne/6dffbZ wSwXaHTq2se6d+8uSdq1a5fXvD/++KPatGmjhISEwBYMNBJ17VsAUBMCOgD L7du3T1u3bpUkJSYm +pynS5cukqQlS5bUernl5eWSJJfL1cAKgcatPn3s8ssvV1xcnFavXu01X25ur q6//nqvI4xAU9XQ /Rf7KQAnIqADsNymTZs8j88880yf87Rt21aStHHjxlotc+ HChcrIyJAkZWVlacGCBQ2sEmi86tPH oqKi9Oijjyo7O9sTHvLz87Vx40aNGTMmwBUDjUND9l/spwD4wijuACz3yy+/ eB6feP2eW2xsrKRj I0fXxtChQzV06NCGFweEgPr2sfHjxysqKkr33nuvOnTooC+// FKffPIJo7cDv2rI/ov9FABfCOgA LFdaWup5XN3I0O4RpUtKSoJSExBKGtLHxo4dG7jCgEaO/RcAf+ MUdwCWa9GihedxdaPcup+Pjo4O Sk1AKKGPAYFB3wLgbwR0AJZz385JqnpLpxOfb926dVBqAkIJfQwIDPoWAH8j oAOwXKdOnTwjQu/Z s8fnPO7nO3fuHLS6gFBBHwMCg74FwN8I6AAsFx8fr65du0qSvvnmG5/ zuEfKTUlJCVpdQKigjwGB Qd8C4G8EdAC2cMMNN0iSli9fXmVaYWGhvvvuO8XHx2vQoEHBLg0ICfQxIDDo WwD8iYAOICgOHz4s SZ77KZ/orrvuUkJCgt5++22vUXElaebMmXK5XHr44Ye9BuQB8D/ 0MSAw6FsAgomADiDg9u/frxUr VkiSVq5cqaNHj1aZJz4+XnPmzFFxcbFGjx7tGfU2Ly9PGRkZuu qqq/TYY48FtW6gsaCPAYFB3wIQ bA5jjLG6CAChqbKyUr1799bmzZu97v+akJCgfv36af78+VVe8/ XXX2vq1KnaunWroqOjVVJSoltu uUWjR49WeHh4MMsHbI8+BgQGfQuAVQjoAAAAAADYAKe4AwAAAA BgAwR0AAAAAABsgIAOAAAAAIAN ENABAAAAALABAjoAAAAAADZAQAcAAAAAwAYI6AAAAAAA2AABHQAAAAAAGyCg AwAAAABgAwR0AAAA AABsgIAOAAAAAIANENABAAAAALABAjoAAAAAADZAQAcAACHr3Xff1YEDB6wu AwCAWiGgAwCavOLi YhUXF1tdRlAZY1RUVKTS0lKrSwmY5557Tl999ZVOPfVUz3N2fN/ vvfeeMjIyrC4DAGADBHQAaEK+ /fZb9enTR61bt5bD4ZDD4VBUVJSSk5M1cOBADRw4UMnJyerSpYsGDx6s119/ XUePHrW67Cquu+46 tW7dWitXrqz3MjZu3Kg2bdooKipKsbGxeuGFF/xYoe+2joyMVN++ fTVw4ED1799f/fr104ABAzRp 0iTt2rXLr+uvzoIFC5SQkKDIyEidcsopeuedd6rM44/2tdrcuXO1fPlyPf3005KkxYsXn/ R9W2Xk yJEqLy/Xk08+aXUpAACLEdABoAm58MILlZubqz179ujKK6+ UJN16661atWqVcnJylJOTo1WrVmnD hg1KT0/X/fffr+7du2vnzp1BrXPt2rXKz8/3OW3//v167733tHfv3gaFrC5duuiHH37QAw8 8UO9l 1KS6tv7iiy+Uk5Ojzz//XCtXrtQ777yjH3/8Ueeee66mTJkiY0xA6nEbPny4vv/+ e/3ud7/zOd1f 7WulHTt2aOzYscrOzvY8N2TIEG3fvr3a9221P//5z1q+fLkWLlxodSkAAAsR0AGgCQoLC1Pr1q 0l SdHR0VWmOxwOpaWl6YknntDGjRs1ZMiQoB5J//e//11tQD/ttNM0btw4/d// /Z/uueeeBq2nefPm GjJkSIOWcTLHt/VvfvObKtNbt26t119/XUlJSZo4caIeeuihgNYjSTExMfrtb3 /rc5o/29cqDzzw gO666y5Pu7u1bNmy2vdttbCwME2fPl133HEH18wDQBNGQAcAVOuKK66QJG3a tEkfffRR0Na7YsWK Gqc/88wzWr58uTp16tTgdTkcjgYvwx/S0tIkSdOnT9fevXsDvr6a3rc/ 2zfYNmzYoEWLFunee+/1 Od0un7cvXbt2Vd++fTVt2jSrSwEAWISADgCoVlxcnOfxtm 3bgrLO//73v1q6dGlQ1mUnp512miTJ 5XJp+/btFlfTeGVlZSk1NbXK0fPG4u6779b06dNtNYgdACB4COgAgGodfyS3Y8eOAV 3X0aNHlZub qxEjRpz0OuzKykr9/PPPIXUq8O7duyVJUVFROv/88y2tpTG373vvvWfb09hrIzU1VZWVl Vq8eLHV pQAALEBABwBU64MPPpAk9ezZU1dffbXXtLVr1+rhhx/Wtddeq9TUVHXt2lWjRo3S999/ 7zXfqlWr 1L9/f1100UU69dRT9dlnn+n9999X//791b59e8/o6ZmZmXr88cc9Rw6fffZZz8jyt912m yTpwIED io+PV2RkpBISEvSPf/zDZ91fffWVbrzxRiUlJSklJUVXXHGF 7rvvPv344491fv+pqam6/PLL1atX L/Xv3z8gg3hVVFR4BmSbMGGC52j6iWrb5sfbvHmz7rzzTvXs2VOXXXaZLrvsMr 3yyis+vwSpqX2/ /fZbJScnKzo6Wg6HQ7feeqtn2po1a9S7d29FRkbK4XBo0qRJXsstLy/ XlClTPKPWp6Sk6PHHH9fY sWP15ptv1qGlarZ582b99NNP6tWrV51e98YbbygsLMwz2v6FF16oDRs2aMmS JerTp48uuOACxcfH a/bs2Xr//fc1bNgwpaSkqFOnTho2bJhWr15d7bLrui02a9ZMl156qRYsWFCn9wAACBEGA NAk3XLL LUaSuf/++6tMO3jwoHnhhRdMeHi4SUlJMfv27fOaXlBQYJo3b266detmysvLjTHGlJSUm BEjRpiY mBiTm5vrmXfv3r1m0aJFpl+/fkaSycjIMH/605/Mvn37jMPhMOHh4ebIkSOe+ SdOnGgkmZkzZ/qs u6ioyDz66KNGkpk4cWKV6bNnzzZRUVFm6tSpxuVyGWOMKSsrM/ 379zdnn322qaio8Jp/2bJlPpc1 ZswYc+aZZ5rNmzd7nnvrrbdMWFiYee2113zWVp3q2vrIkSMmJyfH9O/ f37Rs2dJMmzat2mXUpc3d 5s6da1q0aGGeeOIJTxtXVFSYZ555xpx33nk+2/lk7fvGG28YSeaWW26pMm3y5Mk+ XzdixAgzZswY r895+fLlJjo6utrPuT7mzJljJJnCwsJq55k5c6bP933hhRea5ORkk5+ f73nuwIEDZuXKlaZ3795G kunWrZuZNm2a532Ulpaa66+/3kRERPjcJuq6LbqNHTvWXHDBBXV9+ wCAEBBhybcCAADbeOedd7xG TC8rK5MxRl27dtXixYt9ni5cVlYmSfrpp59UUVGhqKgoRUdHKzs7W23atNGY MWM8RxUTEhI0ZMgQ FW+j7uIAAAuBSURBVBQUaOXKlZo9e7bWr1+vyMhI3XjjjYqJiVFkZGSt642NjdWgQ YP017/+tcq0 9evXa9SoUbr88ss1fvx4z/PffPONPv/8czkcDjmdTsXHx9e4jtmzZ2v69Ol68 803deGFF3qe//3v f6958+Zp7NixuvHGG9WiRYta1y0dO/3a3dalpaVav369jh49qttuu03z58+ vsa66tLkk5eXl6dZb b1VKSornXuCSFBERoXHjxmnr1q0+xxWoqX0lqX379tXW6Gua0+nU+++/r/ z8fK/PORCjxLvPJDjZ 53uiZ599Vn379lVWVpZXjaeccoqSk5M1ePBgrV69WmlpaV635WvRooVmzZql 1atX65577lGPHj10 ySWXSGrYtnjuuedq27ZtKi0t9XmXBQBA6CKgA0ATl5qaWufTjDt06KCCggJF RUV53Trs1FNPVZs2 bbRu3boqr4mIOLbLSU5OVrNmzSRJb731Vr1qDg8P9/n8lClTdOTIEc8p8W7du3dXVlaW4uPj axXe nn76aTkcDg0fPrzKtNTUVH300Uf64osvlJqaWqe6R44cqb///e+ en51Op8aPH6/MzExFR0dr+vTp CgvzffVZXdt88uTJOnLkiEaNGuVzee3atau2zuratz7CwsIUGRmpSZMmKSsr SwkJCZ5pw4cPr9OX Myezb98+tWzZ0rOt1cajjz4qSZo5c2a187hHfu/QoUOVac2bN9fdd9+tcePG6S9/+Yv+ +c9/SmrY tnjGGWfI5XJp9+7dlo9HAAAILgI6AKBe4uPjVVZWpgULFmjp0qXatGmTjh49qsLCwhrvmd6lS5 eA 1ONyubRo0SJJ8hzFPN6dd95Zq+Vs375dW7ZsUXh4eJXr7iXp0KFDOvvs s3X48OGGFaxjR6tffPFF bdu2TZmZmWrXrp0ee+yxauevbZtXVlbqP//5j6RjgdBKLVu21Pjx4zV58mQtXLjQc 5R58ODBGjZs mF+/DCgtLfW680BNKisrddttt2nWrFkNvq1Z//79JckzsFtDt0X3UfOioqIG1QUAaHwY JA4AUC9z 5sxR+/btNXHiRPXp00fvvvuuPv/8c7Vp06bG19U2QNXVvn37dOTIEUnHj irXV2FhoaRjR/xzcnKq /Fu7dq1++OEHn+G9vq655hpJxwbKq0lt23zfvn2ewN6QtvCXSZMmafHixbruuuv0ww8/ KCsrSyNG jFBSUpL27Nnjt/VERUXJ5XLVat4///nP6tGjh8477zyNHz9eW7Zsqfd63YP6 FRUVqby8vMHbovus An98CQQAaFwI6ACAOps+fbpuvvlm9e7dW3l5ebrpppuqHXn8RO 7Theu6vppGypaOhST30diDBw/W eR1uZ555pqRjI4///PPP9V5OXbhPdd65c6f27dvnc566tHm rVq08p3mXl5cHpmgfKisrqzxXUVGh b7/9VldeeaXmzp2rwsJC7dixQ0899ZQ2bdqku+66y2/rj4uLU0lJSa3mHTdunO677z7NnDlTZ WVl uvXWW2sd7k+0c+dOSce2wWbNmjV4W3TfyeD4SxkAAE0DAR0AUGfuAcSef/ 55RUVFeU1zHzmUpCVL lmjJkiV1Wrb7Gmxz3G3A9u/ff9KgGRERocsvv1ySqg3zBQUF2rp1a 43Ladeunbp16yZJys3N9TnP 6tWrvQbW86fNmzf7fL4ubf7pp596BvfbtGmTX+ur6QuWHTt2VHmuoKDA65Zs0rHB5CZM mKCnnnpK S5cu9Vtt55xzjpxOpyfgnmxeSbrssss0ZswYrVq1qt6nuq9atUqSlJaWJqnh 26L71PbTTz+9XvUA ABovAjoAoM6cTqckqXXr1l7Pb9myRT/99JPn5927d9f5FOazzz5bkryOJBcUF Kht27Ynfe3EiRMV Hh6uGTNm+LzP98SJE2t1lHTq1KlyOBx6/fXXfU5/5plnahxkra5iYmI8j7/ 66ivP4xUrVmj37t2S 6t7mEyZMUHh4uObMmeNznV9++aUk30e9a9KqVStJqhKCXS6X5s+ fL0lVxiBYvXq1vv766yrL6tCh g2d5/tC5c2dJx8YRqIuMjAydf/75mjBhQrVfkEjHRmA/UVFRkWbMmKGYmBiv0dobsi3u3LlTzZ s3 r9U2DwAILQR0AGiCXC6XJ9Tt2bOnziHtpptuknRspHB3yNi9e7fuvvtuz7XZ 27dv17Zt2zyjULsD pvsa7+oMHTpUrVq10oIFC+RyuXTw4EHt2rXLazRr9xHG4uJir9cm JyfrpZde0po1a5Senu65htfl cmnatGlKSEhQx44dvV7jrsv9vyRdffXVeuGFF/Thhx96Bazy8nI9+ OCDGj58eK1P6T++rY8P0ifW 7b5WecWKFZ7nX3rpJc8p23Vt8+TkZGVmZmru3LmaPn265zWHDh3SAw88 4Dkte/bs2crJyfF6/9W1 ryQlJibqkksu0RdffOE1/emnn9agQYMkHbt13/z58/XDDz9IOnY2xB/+ 8Ad99913nvkLCwv13HPP 6aGHHjp5I9ZSUlKSoqKitH79+mrncb/PAwcOeJ5r0aKFHn74YZWVlen666/ 3mnY89/bgbstffvlF I0eOVFlZmd59912vbbQ+26LbN998o169etXrchAAQCNn5U3YAQ DBtXnzZtO7d29z+umnG0mef61a tTK9e/c2mzZtqtVyKisrzYsvvmh69eplOnbsaFJTU821115rNmzYYHbt2mV69eplOn fubKZNm2Zy cnJMz549TVRUlGd9HTt2NHfccUe1y1+/fr0ZOHCg6dq1qxk0aJCnri1btpikpC TTokULI8mEhYWZ 7t27m9WrV3u9fs2aNWbkyJGmU6dOZuDAgeaqq64yM2fOrNIWl156qYmOjvYs q1u3bubdd9/1zPPF F1+YESNGmJ49e5pBgwaZYcOGmSVLljSorc844wzTt29fs2XLFq/ 5c3JyTIcOHUyzZs1Mdna2efHF F81NN91UrzY/Xm5urhk+fLjp0aOHGThwoBk+fLj57LPPzJQpU0yrVq1MYmKiGTBggN mwYUOt27ew sNDcf//9plevXiY1NdUMGTLEfPDBByYnJ8fExcWZ888/3yQnJ5u33nrLFBQUmCFDhpgNGzaYYc OG mUsvvdSkpKSYlJQUr7b2l6uvvtqMGjWqyvMnbodRUVGmZ8+ eZu3atWbHjh0mISHB8xnFxsaaP/7x j57XTpw40Ugyr7/+upk+fboZMGCAueyyy0yXLl1Menq62b59e7 X11GZbPNFFF11knnzyyfo2AQCg EXMY4+O8KwAAEHSVlZVaunSpNm/erGbNmunmm29WixYtrC6rUZk3b54ef PBB7dq1y2+3cJs0aZIm T56smTNnVrme3t927Nihc845R19//bUuvvjigK4LAGA/nOIOAIBNhIeHa9CgQRozZozuvvtuwn k9 jBw5Us2bN9eHH35odSn1Mm/ePCUnJxPOAaCJIqADAICQERERoYyMD E2dOtXn4Gx2VlFRoZdeeklP PPGE1aUAACxCQAcAACHlhhtuUNu2bZWVleWX5bnvZf7zzz/ 7ZXnVmTFjhrp166arrroqoOsBANgX 16ADAICQ43Q6NWjQIL3yyiue+9rX1ccff6zHHntMGzZskDFG4eHh6tK li/72t78pNTXVr/Vu3bpV w4YN06efflrlVnoAgKaDgA4AAELS/v37deedd+q1117z3MbOjg4cOKDrrrtO06ZN49pz AGjiCOgA AAAWWrZsmdq3b6/zzjvP6lIAABYjoAMAAAAAYAMMEgcAA AAAgA0Q0AEAAAAAsAECOgAAAAAANkBA BwAAAADABgjoAAAAAADYAAEdAAAAAAAbIKADAAAAAGADBHQAAAAAAGyAgA4A AAAAgA0Q0AEAAAAA sAECOgAAAAAANkBABwAAAADABgjoAAAAAADYAAEdAAAAAAAbIKADAAAAAGAD /w+05pgXhp4FIQAA AABJRU5ErkJggg== --089e082788c4e88ead0563f06d0c--
------------------------------
Subject: Digest Footer
_______________________________________________ yt-users mailing list -- yt-users@python.org To unsubscribe send an email to yt-users-leave@python.org
------------------------------
End of yt-users Digest, Vol 119, Issue 41 *****************************************
-- *SK2* *"**Claiming that something can move faster than light is a good conversation-stopper in physics. People edge away from you in cocktail parties; friends never return phone calls. You just don’t mess with Albert Einstein.**"*
30 Jan 30 Jan4:47 p.m.Can you pastebin the traceback you get along with the error message? The traceback will show you which line in your script is raising the error. On Mon, Jan 29, 2018 at 5:17 PM, Sushilkumar
wrote: Dear yt:
I am getting the following error for the script (see below). Could you let me know what is causing it? Thank you in advance
Error: yt.utilities.exceptions.YTUnitOperationError: The addition operator for YTArrays with units (km) and (1) is not well defined.
Script: import yt import numpy as np import matplotlib.pylab as pl import matplotlib.pyplot as plt import matplotlib.colors as colors from matplotlib.colors import LogNorm
from yt.visualization.api import Streamlines from yt.units import km from mpl_toolkits.mplot3d import Axes3D
ms = 24000000 vector_max=ms-(ms/3) ms1=ms-vector_max dims = (200,200,200)
x = np.genfromtxt("/work/jbi157/MODEL7/UPDATE_B/yo_n_t0.mtx",skip_header=2,usecols=1, dtype="f8") x = x.reshape((8000000, 3), order="F")
field1 = x[:,2].reshape(dims, order="F") field2 = x[:,1].reshape(dims, order="F") field3 = x[:,0].reshape(dims, order="F")
data = dict(cutting_plane_velocity_x = field1, cutting_plane_velocity_y = field2, cutting_plane_velocity_z = field3)
bbox = np.array([[-100, 99], [-100, 99], [-100, 99]])
pf = yt.load_uniform_grid(data, dims, km, bbox=bbox, nprocs=1)
L = [0,1,0] # vector normal to cutting plane north_vector = [0,1,1]
slc = yt.OffAxisSlicePlot(pf, L, 'cutting_plane_velocity_x', center=[0,0,0], width=(180,'km'), north_vector=north_vector)
vel = slc._frb['cutting_plane_velocity_z'] U = slc._frb['cutting_plane_velocity_x'] V = slc._frb['cutting_plane_velocity_y']
extentx = [slc.xlim[i].in_units('km') for i in (0, 1)] extenty = [slc.ylim[i].in_units('km') for i in (0, 1)] extent = extentx + extenty
x = np.linspace(extentx[0], extentx[1], vel.shape[0]) y = np.linspace(extenty[1], extenty[0], vel.shape[1])
X, Y = np.meshgrid(x, y)
normalize = True if normalize is True: N = np.sqrt(U**2+V**2) U /= N V /= N
norm = colors.Normalize(vmin=vel.min(), vmax=vel.max()) factor = 1 #plt.quiver(X[::factor, ::factor], Y[::factor, ::factor], U[::factor, ::factor], V[::factor, ::factor])
plt.streamplot(X,Y,U,V,norm='True')
#plt.imshow(vel.d, extent=extent) plt.colorbar() plt.xlabel("x") plt.axis([-100, 99, -100, 99]) plt.savefig('L(1,0,0) N(0,1,1)') #slc.save()
Download2277Age (days ago)2278Last active (days ago)
1 comments2 participantsparticipants (2)
Nathan Goldbaum Sushilkumar