From 2ebbee6e5b77c76919671d2beea3f2395b809618 Mon Sep 17 00:00:00 2001 From: Alice Barthel Date: Fri, 23 Sep 2022 14:33:38 -0500 Subject: [PATCH 01/13] mirrored woce_transects into osnap_transects --- mpas_analysis/ocean/osnap_transects.py | 201 +++++++++++++++++++++++++ 1 file changed, 201 insertions(+) create mode 100644 mpas_analysis/ocean/osnap_transects.py diff --git a/mpas_analysis/ocean/osnap_transects.py b/mpas_analysis/ocean/osnap_transects.py new file mode 100644 index 000000000..20f59decb --- /dev/null +++ b/mpas_analysis/ocean/osnap_transects.py @@ -0,0 +1,201 @@ +# This software is open source software available under the BSD-3 license. +# +# Copyright (c) 2022 Triad National Security, LLC. All rights reserved. +# Copyright (c) 2022 Lawrence Livermore National Security, LLC. All rights +# reserved. +# Copyright (c) 2022 UT-Battelle, LLC. All rights reserved. +# +# Additional copyright and license information can be found in the LICENSE file +# distributed with this code, or at +# https://raw.githubusercontent.com/MPAS-Dev/MPAS-Analysis/master/LICENSE +from mpas_analysis.shared import AnalysisTask +from mpas_analysis.ocean.compute_transects_subtask import \ + ComputeTransectsSubtask, TransectsObservations + +from mpas_analysis.ocean.plot_transect_subtask import PlotTransectSubtask + +from mpas_analysis.shared.io.utility import build_obs_path + +from collections import OrderedDict + + +class OsnapTransects(AnalysisTask): + """ + Plot model output at OSNAP transects and compare it against OSNAP + observations + """ + # Authors + # ------- + # Alice Barthel + + def __init__(self, config, mpasClimatologyTask, controlConfig=None): + """ + Construct the analysis task and adds it as a subtask of the + ``parentTask``. + + Parameters + ---------- + config : mpas_tools.config.MpasConfigParser + Configuration options + + mpasClimatologyTask : ``MpasClimatologyTask`` + The task that produced the climatology to be remapped and plotted + as a transect + + controlconfig : mpas_tools.config.MpasConfigParser, optional + Configuration options for a control run (if any) + """ + # Authors + # ------- + # Xylar Asay-Davis + + tags = ['climatology', 'transect', 'osnap', 'publicObs', 'arctic'] + + # call the constructor from the base class (AnalysisTask) + super(OsnapTransects, self).__init__( + config=config, taskName='osnapTransects', + componentName='ocean', + tags=tags) + + sectionName = self.taskName + + seasons = config.getexpression(sectionName, 'seasons') + + horizontalResolution = config.get(sectionName, 'horizontalResolution') + + verticalComparisonGridName = config.get(sectionName, + 'verticalComparisonGridName') + + if verticalComparisonGridName in ['mpas', 'obs']: + verticalComparisonGrid = None + else: + verticalComparisonGrid = config.getexpression( + sectionName, 'verticalComparisonGrid', use_numpyfunc=True) + + verticalBounds = config.getexpression(sectionName, 'verticalBounds') + + horizontalBounds = config.getexpression( + sectionName, 'horizontalBounds') + + observationsDirectory = build_obs_path( + config, 'ocean', 'osnapSubdirectory') + + origObsFileNames = \ + {'OSNAP_East': 'OSNAP_East_20220518.nc', + 'OSNAP_West': 'OSNAP_West_20220518.nc'} + + obsFileNames = {} + for transectName in horizontalBounds: + found = False + for name in origObsFileNames: + if transectName.startswith(name): + obsFileNames[transectName] = origObsFileNames[name] + found = True + break + if not found: + raise ValueError(f'Keys for horizontalBounds must start ' + f'with one of {list(origObsFileNames)}') + + for transectName in obsFileNames: + fileName = '{}/{}'.format(observationsDirectory, + obsFileNames[transectName]) + obsFileNames[transectName] = fileName + + fields = \ + {'temperature': + {'mpas': 'timeMonthly_avg_activeTracers_temperature', + 'obs': 'potentialTemperature', + 'titleName': 'Potential Temperature', + 'units': r'$\degree$C'}, + 'salinity': + {'mpas': 'timeMonthly_avg_activeTracers_salinity', + 'obs': 'salinity', + 'titleName': 'Salinity', + 'units': r'PSU'}} +# 'potentialDensity': +# {'mpas': 'timeMonthly_avg_potentialDensity', +# 'obs': 'potentialDensity', +# 'titleName': 'Potential Density', +# 'units': r'kg m$^{-3}$'}, +# 'potentialDensityContour': +# {'mpas': 'timeMonthly_avg_potentialDensity', +# 'obs': 'potentialDensity', +# 'titleName': 'Potential Density Contours', +# 'units': r'kg m$^{-3}$'}} + + transectCollectionName = 'OSNAP_transects' + if horizontalResolution not in ['obs', 'mpas']: + transectCollectionName = \ + f'{transectCollectionName}_{horizontalResolution}km' + + transectsObservations = TransectsObservations(config, obsFileNames, + horizontalResolution, + transectCollectionName) + + computeTransectsSubtask = ComputeTransectsSubtask( + mpasClimatologyTask=mpasClimatologyTask, + parentTask=self, + climatologyName='OSNAP', + transectCollectionName=transectCollectionName, + variableList=[field['mpas'] for field in fields.values()], + seasons=seasons, + obsDatasets=transectsObservations, + verticalComparisonGridName=verticalComparisonGridName, + verticalComparisonGrid=verticalComparisonGrid) + + plotObs = controlConfig is None + if plotObs: + + refTitleLabel = 'Observations (OSNAP)' + + diffTitleLabel = 'Model - Observations' + + else: + controlRunName = controlConfig.get('runs', 'mainRunName') + refTitleLabel = f'Control: {controlRunName}' + + diffTitleLabel = 'Main - Control' + + fieldNameDict = {'temperature': 'temperatureTransect', + 'salinity': 'salinityTransect'} + #'potentialDensity': 'potentialDensityTransect', + #'potentialDensityContour': + # 'potentialDensityContourTransect'} + + for fieldName in fields: + for transectName in obsFileNames: + for season in seasons: + outFileLabel = fieldNameDict[fieldName] + if plotObs: + refFieldName = fields[fieldName]['obs'] + else: + refFieldName = fields[fieldName]['mpas'] + + fieldNameUpper = fieldName[0].upper() + fieldName[1:] + titleName = fields[fieldName]['titleName'] + fieldNameInTitle = \ + f'{titleName} from {transectName.replace("_", " ")}' + + # make a new subtask for this season and comparison grid + subtask = PlotTransectSubtask( + self, season, transectName, fieldName, + computeTransectsSubtask, plotObs, controlConfig, + horizontalBounds[transectName]) + + subtask.set_plot_info( + outFileLabel=outFileLabel, + fieldNameInTitle=fieldNameInTitle, + mpasFieldName=fields[fieldName]['mpas'], + refFieldName=refFieldName, + refTitleLabel=refTitleLabel, + diffTitleLabel=diffTitleLabel, + unitsLabel=fields[fieldName]['units'], + imageCaption=f'{fieldNameInTitle} {season}', + galleryGroup='OSNAP Transects', + groupSubtitle=None, + groupLink='osnap', + galleryName=titleName, + configSectionName=f'osnap{fieldNameUpper}Transects', + verticalBounds=verticalBounds) + + self.add_subtask(subtask) From 9fa3e299b38fef2da54905092e6a7dd848ea1d69 Mon Sep 17 00:00:00 2001 From: Alice Barthel Date: Fri, 23 Sep 2022 14:35:36 -0500 Subject: [PATCH 02/13] added OSNAP ref to datasets.xml --- mpas_analysis/obs/observational_datasets.xml | 60 ++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/mpas_analysis/obs/observational_datasets.xml b/mpas_analysis/obs/observational_datasets.xml index a987d2e82..71f17d548 100755 --- a/mpas_analysis/obs/observational_datasets.xml +++ b/mpas_analysis/obs/observational_datasets.xml @@ -1479,6 +1479,66 @@ + + + OSNAP Temperature Salinity and Velocity Climatology + + + ocean + + + OSNAP is designed to provide a continuous record of the full-water + column, trans-basin fluxes of heat, mass and freshwater in the subpolar + North Atlantic. It consists of two legs: one extending from southern + Labrador to the southwestern tip of Greenland across the mouth of the + Labrador Sea (OSNAP West), and the second from the southeastern tip of + Greenland to Scotland (OSNAP East). The observing system also includes + subsurface floats (OSNAP Floats) in order to trace the pathways of + overflow waters in the basin and to assess the connectivity of currents + crossing the OSNAP line. The location of the OSNAP East and West legs + purposefully melds with a number of long-term observational efforts in + the North Atlantic: the Canadian repeat AR7W program in the Labrador + Sea; the German Labrador Sea western boundary array at 53°N; the + global Ocean Observatories Initiative node to be placed in the + southwestern Irminger Sea; the repeat A1E/AR7E hydrographic sections + across the Irminger and Iceland basins; and the Ellett line in the + Rockall region. Importantly, this observing system, in conjunction with + the RAPID/MOCHA array at 26ºN and the EU THOR/NACLIM program, will + provide a comprehensive measure of the Atlantic Meridional Overturning + Circulation (AMOC) and provide a means to evaluate intergyre + connectivity in the North Atlantic. OSNAP is a collaborative effort, + which includes several countries including US, Canada, China, France, + Germany, Netherlands and the UK. + + + [Overturning in the Subpolar North Atlantic Program (OSNAP) website] + (https://www.o-snap.org/data-access/) + + + Acknowledgment: OSNAP data were collected and made freely available by the OSNAP (Overturning in the Subpolar North Atlantic Program) project and all the national programs that contribute to it (www.o-snap.org). + + + + + + + - https://duke.app.box.com/s/4qbi9ocpvmxdv44wnx2g5rgoyy85jmz6 + + + - preprocess_observations/preprocessingOSNAP30day.ipynb + + + - climatologyMapOSNAP + + + Ocean/OSNAP + + + osnap_t_s + + + + 8`s6sK6oQ zb{X0|GMcne@2PdHoM47MSuf1i)xqM{)w}KN)IyWX-DUJMtr!V|k2(CHpd}m}>rDpc zVtv=OYlVuq%d;v1&!O5V?%+HK_VRuDl0ot1m0=;66vaZnZbs+#L9kdh#``(TP;(k? zvemgdROyssSe@SH_W<S4Yp)pUM4dH+nAJpm?)&E5q? z@)ssu@M7;!$YyBBly|zaE5?wKKPRrT{6|-fOZ^r|dNq4WigE(_T3;pL>jmJz=OYk_ zj>G3=-l-O6w8?e4?E-9U;G#vL8knpO-^$Y`mmyG9p+NV%Xmuo^$sl9xQvAw1d= zuL~6nC6-~CN7_v$M0ml&QzS;r&88u)?k!QPjLwz(I}e~hymzXn5vVyys1sg)V|=M(uaA&{+13!);KfDRf;dB{2<6^+F#6a{!V<85?G3 zkzhbVQWk}urQ!2d_^?b0Y$Q3y=pSX_K5k0{Jlr}67HV+M)cLnV7M zXRz=q+XP3r++Se9BdJ8o3h!JuYn4}|KiQ+z`g`w+BjXg&Z+{cIY+a7{(fziSp~v(z z7U$T>3s}yR76OQ$VlJ@2UN^BT?O*O(A0a`)2M!Vtj%tCtdC|(L-nTJ3;T|A6^dC=p z-LlQ4iqPljH2P)@qt*7*FA46y;l?#E;s%ER#jVL%CX$3Hix^Sm^F)M@7iTvc-?}tn z5qgI$7$MOL{37}M#?Pk^d*gcOfCG`c-95@UQOqL8-iEUkX7VQh5Sp1;>7cF1n%S(- zm7aJPAwH7T_2p0vMN)Wo{&{&MevFIK&ks|PBZgb3y|fQK{;Jpq3uPMVLU33w+5Ui_ z72Qvjj2f$`b{1Jk%&tbK-qW#(-CcFoL;+I&8`U?~L$dc7+?fO`piPRct)*yp#r)x2 z(S%#)w43pIKyJ`bZgKFTBr!1+t(IG!V*IbV1CC0~c|wxoFTK{Nv_m=z4rpMa&$@>Q^w@2~ON&rv zlz=AUkc2vACO~kEn9R`8IkK^clFxw+kmMiE53Fz04qc#`nD0z9dC{OXPF>ysw`f+mbL0(L>zK7-G1-*8hz)=}l6CTCD1 zHw1JdraWt(8)@N>DruAP9YsK7aZ`~PC7YLXU#Lqe6@4(GSB2pLw{sHO9)MQk+rqgG zq||GR;ClmB&O;k7u^|4cN5&aZsdpO#U4N|&x%J{jAYIdI~Y+kjT?5bN-MyYudtwLTYv|v z!=)l%l=kOBmc_61^n%gA{p8rZiD4YbQUA!mJ$pQ!88!&*MV$fO2C&$N81902fWVh4 z8NEy)#B2(>aK!u9eBEd2uJsl1lRV5{S<_e;|A-3CShiBf@9Y`~F1bZ8!rP!2TR;!p zzl(bEjF61$f}XU;l+gQyR?gX8%JY(P5XQ~l_F)!RbV9~Ry{Q(yQujUx#up3)^ck7 z;+-8zpJrCM%#Tj2At)(=_A=`k#|L;{Q+{mtl3=Ve>J9&EKv}qCRM>r^heGhdc0v0x z2l4XO(dtX@5%-VeH~vz=bYfDKv<0PfsB;q{;)Pu@7fL*T!k75du$tnmAdoa)8s^_} z=i((e)oJBBOVt-6?7Kj8=9gna19 z`#p|#jf6x3`4>p+2zCs{s7rVWjv?kL<&jZwsdG0y6sIHlyK^)6{#<$qs|2B9y88bY;4)My~MTGYFeaEzB({_MkcpdQbyB;g<)YnhokDpV}`I zbKso69t2(XRC3iD+8dXi#f8o>K?6N#$M-BOLB=a7_u7Cb4yUGpeXo^nS?dtZX|6Tp z+>iv?_F|@N1sQ<&+Ia|N5(iUtf#y2?tU(~|K#0PYj6b|+)zwjyF7w&CpXRcr-Ph{# z3?hZ~W(IPFp%jSlKe5J8qR&@6aTXv1yn=C!BVB*Ge%V7x$XH6+q|CJyldk4(l1qt+ ziRc8L+d)P6?wnc{KWh`Br<|y_zwi0$0Wbv9#ZTpQ%}{<2i^nStbr_(CZAbWS zzf>AdKlB>zIpmIpH|0wad$!g{$)Yep97j23`+?3HN^+5dC@+UG zggV?Xw;_FAt1D1Ay!zEG{f;o4!tRc#*rdeGMtwgho7hu2;MP#{UZ4+CS1Ih_Az2lB zAc;aiKUUh;#OsX=wc-B(oj_v07r<6;>~4Uht8DcL0E9Pr8K!#+OGH^~A%>-}k83Pp z?e~Ii(Bb!9^AN<4Jb>IZVkSCcAWoL5`U*zB({9|&_ZqQ;HF0q-b#z@@=$*LVrQHUu zYlqvd03IrTr-M8_g^kpf98xPuo(m>+AOGHFuoj7A?ND}p)wCpnc zc<*F@BA3TC-$)LYijMgJb=%U^MV?fqlahPc$D{0yetwYvA`h`4Wa`laid-cb5(BtY zWu<`RR(5p>F@B!exX(e3NOMS-c@QFvwenChXYFQlQF9|oG9PW@C1J&M$p~a&YDuo| zR|G)f$F(w$gn$s^(7eQ-<^kk;{eJ=Emp2%Ap*fl+@Tyh}{dijv{ishYTMa*DJOn;D zT+6CO79&-&w$ZL$2%lji6SE3}4%ds%%w32y#AG2|YmgAc3h6mdogdlFuVJ3bsYwHflvEZM5; zujZA_FgHM5S_?Z}w9?{7f(&dFqDBte075<1aa?cBbM|AOa#6R*udMkv{8(!9x0Jfo z&s!x!617qyGRQBEtrGQomSkGXCU$yjx*ObN=Z*8dSoMgtJ5cR*SqR~a~2tX2bj ziIs;(_1DABc_E)nWK0aJl_ejvA!efLAe5s)qIfztM#nh5h z%!ak-&DvsTR-%U##6hB@9<3ojy9x?AN$iE4&d3t5@!qLdjh-r^6&=d}PV#_L6hU{V z7tu+)LHu)&J)EwlcF(ckST|-NYibzQPl69HB~C#xsU#vZM@PX6U-~TLyfl*a~z?V$%Q%IM8xc0sRoi^Ana9zFy8?3?`j}$B^$12 z!$E52!FevGe3pQi)7Y^ARmfUbZmH+5=XKY^avtB{cutJU|q=^A(>yNZq`h)(m*fQ zG}oSW6iLbmD3X!DhFvBtTepNACH4yoLFE?dMr;HN5`O46rUQVMKVx;Z>I5v2fD-Fl zV{g23EZeb4*+bInoTR`^jKHpikt){X$o+Meu#jhPx*=Z>Sn>@Z|85EESG)%Ix`%K# z!|Xxdy8F7$^<2fx9+`#Sog|3pmm6XzS|k~6(yDngF=7aM)!F2$+RA-*uBOCys%V)* zaM=X)!KG(J*_Oc8p01m#UP0LkyRWF?2tB;5j=C&xP75^injn&_pp{Rj7uB=^6=5Or zP)#b6tA2zJMlWol;UR$_N}v|drg#tSWBz*xr}0^Z@5wB<@wYcVfIRSG+3kZ$jp3Ov zM`9^OComhtc)binl(B}OH)>|IT7 z+c*@&0tE_47nTf4@KBv{@j(m>+fWXL_q6~2FRdkte4mt*U8iez#U!rlrcN9?9L}40 z^WgS8YAd;tZEK8dZyCR_dvClit46UObkf&GxgA-8?-;!D%K-$T1HGbw$POS6Tf+Jp zvNI{nlWQAX_?hU(RWV*^_A0UWShgXpf`}3N$U@VhW2$;-fEbBLfZ7$MAvt3>_o+89 z@O|Ey15!h{tM`>9Aim16P_Nxb=*Pk*1}It{j`F{Q<@q9e0r znS8!4HV+hZ8$~!VsB3Y$00;3MS4;Sk5sc*C8!u3;R`(ht7~%aWWzrYo zBUPpS>(c|swzUJu!vaW1l5!xCS2=vwA8F^HlY5Ytm8pLSAB2e*!a^3cb%&88l=$9b zK#_};m6-?(QxD+I3PG7T)pf70GQ3K2HH7^!| zj~aE%=z*>YAc<_BHpuKtwrL`6n1U4+`WN|CZN+<`$UL|)izjynkR=_aB~~?&0Q2qp zcQuw?z{&pvKz{B3@~9ff*J=Bl25*xMX!#8g5$eo<)bu! zG$EUKQSAy6>M?RaX7c==dO?H=LL3X&@K6PO{H$3kxk%J(zUfV8BLqC4)5K%|V)q{Z z9c(Q1xRhb?pAH~e;p~M>tW?NILQ=n{B#WD=gvTWw-Oey@8s*LeQ?B&L2Wh1 zJsrwUQ}!6c-|%~`kEq+07bvnhL2D!;DP!!^qfv&=qp)6$ilo%ukWcubvhlO*s)~fc z(F2WL39Aqi&~&drdj~^m9|XCok@O?0=zZ!&SF-{P4-43^vMz0mf+2K^pFO_gP+e=J zEHa+@i}YKF2C}dJ96+WT zR#OaE(8hf%X&9=B$7`Dla1EP33=uL3Bf)kVTRHw>Q*ccYafE|R$L)~9&EHZbOXMtq z@wFj0z!>!qRQkXhI@XDY0FgQ!L0<|c@8aH%oB}x)u^RZ+Jq`{?Z)48fvG6k1lWt@> zz%~dm$l$c3iex-6ZB|7La^)u8VW3c@LrByrRtql{+TgNXys@9aKr&WN%6+cN&7@1l z=&Ny*Jc^QvBhLsRI|KRcI?+3)MPJSO$C;O}Sjz_o5UZX|jrjeiFj6UM(c0F!H_I_Z z8Il@uIkVP6$wHd!@14i|5m%O+81lNVUj!O^n5|umjZkbt&=HVtH>Cz=2_y~3;z3_L zcV>FHm#G!qRnp3Y4Z?iDLuXlCs|p`br5d-*8Ai%2D}*Cb$RP4QRn5E(fmUmoG{1_0 z6jw1|WDAyO(KMr`QR0}cZ({J{{{}#I2J*-Zgmt0KHISpMf5@|{$FheQpekX+DF2L0 zT$Qt>hl!@9Z!)2u~g$l6wT8uxvP9Be4NL-c}`tT0P)Q~&ui z{HkQpL)Ryn7}?;^%lt@BH~tj_`9R6MnbfJ($W>BeiEC?9{7He0c1x`)A{VZ;NXlp5 zqY|sO;rq7Y`@TB^De6wE+ntHSAot9?)ToF|#vhgTy@a)||6T(@Z3LwTa!vY&Q%dJT zFgFAaKDh9_RaDOsIO0XK$d=TTFie8_TMtDZ&O|(d&<=qLIA@z_Sjv(R9x{HASeT9t zA;A%j95XO^nWNhgZz;IW}A>tlPS3{A|?k@7N0C!Gxrj_ujZn>wi~9sUZ)y<2RP|LFGD^wUk^@ORS!sl!SISwPo7?iI zjN$;cEM9T~+~_iJG=Ly3IlOrCRw5M$MS>7b(A0K>KRInCSKES;xt~H@T#BFRS;HlJ zD&;0iQp+eQSwa$PwkQoIcaYckMzqXr1)RfboYWKeKt~FCBaeix*#qv+K(=MU%wtzt zI;tKZ#otkzqEw)zUhtpWe1SQ?E|4M(3Hb>;q@zdm@6d=&C)q<1bj<~2v}mB zkr-n8RlHeB>dC@bTt5y2{&ESf@uD?^I)(Qqkx{>SqH$P5h|*85(SmRN(;(PB`{S$`-N-!w;sqsUV-koTWE1NqJRKxi{sf5`o3!g?hg zS5=UxRVl^`6D#myu|Lb=NW9f*mRXn{aw8$rFn2^iJWgB8mrPF2r+z^k@)Sobbj*{u zG**Cqz8z$#%*YT>!tPuHYsej!w)62bgL>~Cnm@gp_|{=?P{i|6%ksQW)6hsWPecZ^ z&w8!x(|{Yx)Xxr9ICW#SO%QqW>QWd62~pDGf2qtigY_8S^&uml<(JmFUXaf9_nw}mO z0uE2Rws~R}5=0t=B6zFMgrh+!l56N7L>)+)IYFfN~xF(&)8vP{Tp^iZ2L&yx{R)!X}7>EcWbMKAU zpki$V)*bb>OPiW5ixMJCSqc|m4zDg*h(_P42p`{b6@4?PSiegH_K zDw`-pE!xGd#-FhBXGKl-Q(@-}y@n18BE>y`nMi{o-~%&4l{`a)8ghmHeD3>BPJ9Zk zLEc=98G)I&a_A$*9wyj$Fa->A_CB;$s*NCW02s>D$890J<;T}#5Z1C6D^GU20X(3= zluweOWjAGpB`;qUn9&Pf1U)~cgcW(6Zn1TrOf*3xL@Q@aY~=g%F_8C-8v6S?{@fiv z9$o{PHr3a+SuDUi58W>KFzvW*&?Qx=E!Yz4sz@b!anaj5@1#?0=M-?W1c4Ab3OAqi zVPq2$Fha?~tpdkzJmqZQ+mG~Z%9!WC6mT3@jwor+WG|GluT`#^0v+iwr0o5{`7LAX z4GTO*l|klLAUGloTePrgdF}tB&o%G(@HGYkPc(YksWZ>u3&TYb%2Pf|M2{LBixsnT zZnqTURFvtCPsuE;|RHz#s6b4+lCG4fv;l6jfckD&}62J+#!evWzvnJn%Nwq9}gU{pYX52JICs#hW| znz?25j49<5CD=9kIYu2~!%*e^41`niXjkwRFhrT80-^{2$ul#M<@ehKeBNHddSnJN ztH@~dpkuK~p0u3X4b-D$iLBr{RFDde5-R^oAj#mUJhiU9CyT^diK(GWW98izNt4qn=cUu^UH$qM( zlO?qwEk@DPt1`%Xgl<%`3iK3$@q15=bW4XY-Ce{&YRJLO=(E9u*s>Y0*s5 z6)cGgv*B%qf`I4{k~Y;uvTExx1Ukr&SDiZY$9&`Y3ixoyz;QhH0e|)WSRjU!vj{YG zDCMy(!{gM%GQKwD4<8wHIL&}X-MaM0Cma5`E6dP-QfgR=u{+kD+bEu0Lu!?{%I4Lv z%vM~ z(4@Yef)}1oF*e&)PE{s{t153TP;*OSNnt2My+t{4B4R2QPqOvZY*`_MKJ>SBKHtc} z>GGyw2vrzJL8~F|+3t8L+~VAi+jj`A<^}74r;K05`D!8;bAmNI!V5K>Pgs|_?epj_ zr;Gq0oe|W2<=5ucOHD-g^70balC3)m^ib7v(k55|5ToIO@ih`sTb}?RU<`>%FK*VF z-s1FPG0KqO$WtMGvh|3%tF(tW+L-Oo#@^pR7aE~E^nUFWoK`<%#F@Sf zrxiMucpP_C99Q$L-Fb#3>fK$gVByLX7RWKhpzbFY0id{fl|aqaDppilM~Q%rZC6zW zqS6YZl8`!z++9SE8%^$vf{uC>%w z!$t@x2dWkYts<1FuETtIFI30p7qhQF)I=n`Ah~V!h>?j22%P}l^cV%h`mA5>F6eDg|*oR+A#ENTu zr5dfYynaQv(vLcT_=>65uSy@E#z2hK`ajekKvXD*%||a&nJqtZk>?cA>&gea2BoYW zKpvKX%sbGjmyVr^dR~cQD2QP>ShR$Y*cRStg$pzkU1|}6x>m~aTGTh=AWA}%D?`-_ zLpU9WX`TC?gGtB`a2kR>Dn*kGNJ{V}TeEs6G#9U5@rZbgp05K)^XFyu!P9E#=FdG< zR8(huA->j1D1E%^ok3BN(23EGFrJrX0MT5%3LP}Ru7oA~q!bY-%HJkKy(hAq^~Y4p zYTM`3Kt8^90C`*uq3V*J+V*M!ufj8yjsK56Bzzx?`oP;N0Q)b!Vz=mOKn3~!GXDRKn@Ss_^{zUz5oB0 z29UZt>#HSf>#gObu@MOTApxD8l~q}r{pm2E$8n|3RcomOW$HyS<~aPCUC%>Wkzj=- z<_Ixo+JPxwPlwaqsXF)kueh>dz=<*~F%o^fJl^!WO)M$xlm!+lA=f_>(#vR0ms>w( zNSK+$l@jA^@#PJr>RIZ5uAM5@Cm`ln93saL1CaliYWf{OzBL2+`}FsJSFILZNmLLz z!Uq>U>cAoPWWtibM~Af(6VYqhe#$a4d(pF8hp@EOIfQ=pB{t+`Y#r@FOSikKau8oSxrhuGZ7@ z#?Exs1(zw%#wKTmA&Tt09Nzmf$Ngrt`D=fCR<(({m-n7`cy1*^6%anOQy_$J_gbm{ZAY)2}%!%dP&yY0pvdZ=OL^< zmDkSK$qI;$Cds$nq9Z>MDM=;*nqS(v1wTB1mfI9(XPr6}<54k=f>OrLo` zaw``R)#p3}`)6B3YlbJAmBBcVHl^3V4t)D^LtZ=t``P`fL%loz6^H zEGt+NzAcBuTKl@`*x}!EveYJY^cC*1@^4=F&hxb}#RQXHgW0TF$E3tBIM?o16X9bj z`-sq7%n^;5v}HuGIy+C|Hh(H^$ct5zy2mZPA!eF*11DQkE#DN%qN*-Q{`UU_K;G^E z@~r{HUbR922)Suj(GokFW=IohiX~jXsQ^hV8hgZaUo1AP)P*o0iB|9ITS&;t+Ia9$ zY13+=Nb8|U0h2S`x$vFC;Tp}_uciT-DmUkDS2B7Pt-gY{VMxJjUJTkDBuy_J{aPr3$e`J#W9e#I|KQNA*{7BnqzBgLqJcO1*z~= zli{O4M?#OmVsu(OD+*0S^|I?^`yp=ru8p$V+u~T&nc67NpEmNuZ5GSB%wjbqV8vcP zqk*fm#mt1wXKy3i1M_#ugpZ&Co)Konk#@%)TMZd)L0YrbRKI^V04eX__)!ok_{&yo z@y{}Evuc!z9{ zu3Z0TWgr-etyjrT1CgKu$BSejueYMd>z#otB7`NJq`dWYj>ZONJe^rb4Lou*DM=W09Ot z)==c~dp-yt71d)%P{+G7G7th=xEP|Zt51n=<)#~6-=1UKVI(u^3636Rwy9d zcd@RRBH%|1f`HsK20FqN6Hj92Wg=c4=$PN4M>`Zwvam*ynR0ENSk~n)9}5 zGiL~k*}^I3H-;TyR0mIxzYWgs^bkUM~UZwB&<)eg4I081rc=>l_C_*hr&Xqjf4p>$RvI<*kTkTi{w%!W3NSIF;gK^EhXB6;ia z4%zpKuuCMBvlY!Bi-LU=@*x$F&g!v;8G8vuU}m)if)9tV46rcQ4VTSK6K`YiXl>XN zFw|EAksv+iXqg(wfC~MW{C+iW-5JRD4`EsT9@Hl~K))NVn@ikCm!WZ5x*DS-04B;k zi%B7(h+4gOSic60nG6^*%rm z^Lxp$<}+|a`h)A%t-Jxa;W5Z01KEU8v}<6t+afiY{PIHPh0AhJ?b(nY&xE=SNW3b& z{~~5T^N1G77+2(-YxU{qWDYNylBZ<=$jyz3Jfh&NC!a~HR%0vRxkXWC00Q&<=Gs8}3HPz zq!JDCZ2IRX>9pWxxZzqD%?ThSENdkeYWy@9NPqo@^qm`M+~eXI$oW#g+wbrJq&+>I z=ft9u{z9Me-)se#>UrVv(Rfrnaa8^Nm}L~?+Q z#6bG1;d;Fm!L7B6B*BbiL1w*{LPR|?pP}Q&Y@Z;^W7Ojly0_FrbJz<-&)p`7v?^*p z3F<_$RKx&ObUTBQG8I$ELnJzO#8J(6+~S{DZS}uT$fyU$z)+Y4@ZTbF_29U}$x+DPEUFZdzfb#(zSDQ0v z9ELs5m-c|G{rPAIRzl}3!TNbp*-OJ_QPNG6y#KJBENn!M7%UVe1aHUsk=5~Y1k#2v z`WH$6M8fok0C`xI#DnYp&xf!^mI{E$a|4JAA^@j`j~1o2QcN8RgPOEh4denB{nhnG zzb$w5t?Rc3AgkTO?mT^-=gg;0GLY0!ryHL}7c=(zGf+MufIL0y+5tB92~pm!eCzy3 z{1-lS<|@xKrSTdiW+FS5eclb>ycuvnz=in2j4Tk?8#}HQ$|tXJl#no1+}o)pMcjg1 zxB_b7z|Qm{4Ijw3AoYxuPKFSi5^S4?)Uv4}{-0c^!H|?t%4>{@*I!1|%sKBM8-hBl zH#2j-02)_Crn@(zw>7ymnuS81QQbly&9gKfCS5*dbUXiZ`yf{h* zBA!~CMwc}ZK=$dtyWPXf^~QTTSLq?jueu;QFqSqqcJE~irUFoxKUV$Tx1e_a7lv| zcR+6^bKbW~_Z5UBIYglmnLplHRfN;q!0@|20zlUK-Ru-OSqy}=MQ0&F%A3b!G7v#F z-hha_$w&IF10bsm1}_gg$w1T}_ovb20?2bdnDea*73uPEo+0Hh0Leb1&3+aQp3~BQ9Wemg+SY`PKY4})U&eaHfaKeGnE>K1w``0Wolo%p?`l#l!2y1Jctf90H zCreu*Ac>_CKOEdFM^t8xj3KHMUn!y&dN!*eC;1a*SZsuxb^7l|#cNpQhe=#IEr5uq z=MaZ%;I>gb^Hl(1<)4WiY43atgsqo^u2*LuL8tj96D(kAe=L-Ni18+FzrD(5c>r?A zyyMJ8PE`g{okkZ6Al)E%lrwNF@ObJu36QfC=K6XKB#LSPk&YR8`Yy7MHA}L(aqyM8 z5JwE(tkC#jEUSWHXqNXSSA4_aw#DLXv?DHCEWGijPU54(rm;h2(J ztJCOW0i-QpIGlk($`UJs!{vd#%LkzOk`Pv~C!~(m4?^`|iTXEO@i4}A8jJu2p(w8s zvhoLy*dmRoA)(S+)>4GYRRxM`6^5k20<3|em#uSwSwyJmN($*JSy5x4F?sOTO`V-$ z79|%WPc>mcBn|&rQ9g7yhCJ{dQ5%GhPXh=79?u`st;gb=421J;%lysLK!{st4G}?M zvi7)40I3e^DQ5s#rHCUgp8+)lD&#tl-CjK|^^yex2oSH~WDHUW1hw2Fzn-7331P8M zmb4}mE1(=vLh&3J$ksuQ?O0GtG7(<19$Xc}K)WbKkw)sWz$LH4n| zes2>O*{+ALAr`(?IlbK7q*FY^{@>sei4Z5ZjAM( zDaQ_7Y?@C32xCv&@{uCXH0bxt$3VmqVy*HE^E<)t(PI9KI?sR>%s?h!hzeol0lzT% z0CIXcZC0!OA=iQYOaR$HP(2B1XA1Wm}6XszuvEqWULx?gu- zqptxWs>U$sTs|F7*U5a}IFSiIXnY`sSJMg~XY`mdf5RihRMU5qscU3|In-i$2bTI@ z7yO9}Ha6ieT|BO4{XrJ_dn`gjPgYgsT5BBE*HOgbBy=8!k1-H-4J5}VP=EAk0Fuiq zetj4u3u$D;9AROIShAKdkHpf@;PeobNHVL-f2M;vSU<^~@1 z`UnGY*IO)m+GlDY$VBxN3;rS$;|hk&IT^Nt`92xQ-Vs)ZfvEM5qcMkG+jCk#b((za5?UCi-AL z2q2dVMV~ps5>i-@w%+pQF%aXbic$Eb7>FgJFFOFFtcn~BKvWyhc*8EN=-f@d9m7zN z1nnQRJvfP34j@N^4rNa=KdE$e9AiQKt;CQ~2h(XSWFd%HjDuDoXi@@@9A4$dKIS(J zIe+M3h%oe~N|}@C(;T;Sa^^G?kwc1al5?rEiUg7j=K8N7}gv<&=#4JOtwe(gsw#HhUh_D4a z3&Fs^BWe19mZUscE?0MH zUG9Z6E2!QoWE8Q4bVovVYSqDj7KnTVo?YcNN%f2$Z{OcO5QG>cWPKW?IAe?{UB{|> zrEAf!vnY@?Dvw9Majbt$A3yMRq2y;$4`LuBhS5&Y)S+5B1HRc1@H!%ZJZ*mypYQ?1 z-$YjL=Y&@ezR5Yn?)(QK$ToK^nyi`BV=H&_3jn03NsDh5 zSn0@D0!U^nUL9t20fd%kEc?MB8ORwDy6>Olk1o!_QX=}DW?|h%8t>ojG(52a0u!8o z0lVx*5(^NpoSo5?b^f7H*RzqaSpTVUuBp63!`#Xe}`R&@5|;fdYJ1UKVGiy-@dF4#f3ULF0W?AV%NqHTB zB{{e=q>o&xfaYO+6I?_NvZSd~RW6QB?^B54~kj9j@4 zE(w`9&Hwy3e*u8hKkDZLNKwP)`lZieOzUj12f2J{U&kC_ZDPn1{NSm_Kwc>b^@03Y zrH~)r{___v65dH4$TwA#wWpDAZQc6bZzTNJ6#*o!6@+dG);YaAX!=3CLr<21x}BKflCH;c-%r-(-2MzM+|*8`Bw^G@fN+VI%`GFN9_{pvHzb{SWv z@0k{_?v;Un5_0Atdm9OVG$taVOuEPDkpbjyzyJJB^k~4x7&$pmDgo9Ode(@+dU;+6 z2rSoSK%8uiv1%0EWVRJbDI~!PZ*R45gL*VBQxkW0!N>6WUP1`Xv5*Ux3$(hqqmZ7KUxt0R#RRPKrlWyjS#i<702!ifRryg zYzJxI$Rz+$|1nf0?vMbo@n-&TZzp;cj(`07zkj^I%Kxw|{SG?OuYP^P2rG_e2bw4W z5nWLhT;z#)2yYaM|1Jkz)^=f-tg72!EETGGP#ni?1c4fAbP}npb3-^ER`h5PGSDpR ze2zF$dJI-;FQ(KhYT=YMjZqqzNd=NoVRG>jre4cs3nci*i_wPWP)mLGjVvZ>gWG{eBW^n1<0Z1EQ!Dl)ntjBdl0QoQjiS3`9j**rrCT8-L zgbRTUup`2wEBtlz^Qa(K*?H}fQ0Vz%FCM@WL+8zFvHyjQ?w&}-(4CHa$1c0P=c-XhO>;sv|&Z_qa z1@p*EQtGIxspnZbxVoK8{g&y5A!Q6jM`Th*XcLs9hECugZ%@U555f;d5jo1rEm0A1ZBN`WyyQpVT=06aZmYURw#N zyHXy22>XZ^9d~yC;t`VvfZQ~IgnD`wa}Nm7Nl_5VKr%8AA|L<^8P^QuoGV)nV4;Id zToJ-)N|6rEs2+$t??|JZ*ul*W*8*LTC01IXYaNL^8XdFKKM!$z>p^2Zxt zJ-uDeo%iccsgK{jKLF&$H4y8F(J>z9QOjg#=y`JVbGc7wD1ISOm*1HQELdqN~_ZSF>e~wS(unYv{a`9M=vmPU?+aF;i`%sBu2_*I` zSd$LE${vw*m?~;l~yJDxcCkTY4b1pyPSB9(N{WX(COT7U~{FE%{wJB`Hlc&onNl^76m_K z%BHi$?)B^7KdqN*I4A=#sRodfXYu#}AU8h3N)~#I#S5!l{aiw*76LP;URe_@Y}=U_ zRqO()puD^_msGYS5Cn|v0q@&6cj9kPIvKqmh##;zIK!~&1v*X*M+RUeykTfAg>Yx# z4hWG`ysckCbEZ)wzDQ+$ln$_#v}=#VI`b>8k8$DSt7bA^1t5)i4oU>8*IodDOrX+y zd0Yn4V1pk&H!yhyBzZ89TOVNspMlsSIyZrc<349w5TTr`Rgk9gSByE4*+F5la}^7O z1kZ})ZiSc^O;_O`N#~U5e|OLp8{I)0FWCW zVVT&G#0X2khdLCT-9fRGjwq4^q|jK)?7T(zh&=8I?gVFyaSK06acIKL7u*184&IWt zTgXS7VV%wtM%bgXT1s?f|j5a&oxltfA9*$iFGP^_L+IBy7+mAC5r{uGNFL*Ni( z#_go0dkJ;u?Tm~&m zLds8SeV>+bOHHqeMlk97ZJ1!mwp)OQ6xr6=1mq-kNUCpnvIs~PON8vhI#nn+!Q+Y~ zGaM#d7c!Zpg~l?s`?<*klFLveY0M?bT|O|-S|+B++#7nW;GM;tiRgoaA&_yBeE?C{ z+&YuXZ}DItkLxx7L~xGewrT1ttRPPY+V7B2COojPb_kiWXbFTm(s9ZYD-p4Gw8srC zd5lJGi)xO-`PFO?kW+z>YUyP(8HApW192Vr?WLeAF`)${dk|v2`GH#S8Ym+wJ*%?h zkDxM}C(Ck?Ena$O8ikeiZ?#A z6xvt4e$m$#(LMl~XY_8s3-D+F^7LRJ_o;y-JTBS};pj$T!J!Z=E3bhWA|9(ub}3y> zf(Un{Gye#he*`$g%+}jf@p1GFuEF9TR9;Ilih6b>5#&_9zkZM)Vnrp%AQ!p&-}l3| za*e64uw%Pph?lswd@hI0-4k_Jgh^}-v1|K|kfSk>lYkJ}H`W0Ve#>(x zIgx^#Uj%muAQd=HWTs#YaR3A?za_a-p~vfQbT|g`=R4jWBdmh~h*;z{_XxxGy)b6& zYAY`qOr}XH>3AES`CgpW;&%Rl4$>tdo6FsyRS*W5!JAqBQ2AHIhIOj!Lqmw%72!o? zq?5;yaPq_Fz~kl*SpLxYgH1>3AZ;sHnj4aGbL zd^`OTBdiAlIf#vS^v+pF0|{+E!%FA%We}Ojkh4)iWmQPSuwNucwMGq6(nEj!y0-!6 zSg>YG1K}W(YUVwuYY;3%j5YFXsv(;T+-{?M&}Ce~EOrDmekTzLMuK}w5HNz9GcGyY zA%Lt($p6{9f}X~iC8&{*IQW8LWW-@4j*k5D1wMkf@&A9;gCw5m>aHFe_U#ikc38+} z7Zw8Ra&=W#4J}i@##@bnbc}Q4@PmZ{$oDA71|UD5fv6Zk&_)|EEysQ|rGq3CLi7%L zvY|fWT&Z)jD#e7bO_0h2{RSY*8(~$Gu!8i~glaxsVii*3npD2J*CD?40z7N>Y#SW{Kcqo5OkFf9 z_R(ni0Sh3~3NvPybSR={FRwa!J;f4}@pH(D6+=k4ajL`@vkjUcdgXJwT@1CkR#w&R zlNdDN5RaIw0x!7)7J=5QfsAvk;=mh7%D=b8?%_xNnLE9?ULOO|ch9dj0Qu1)tf=iZ zFvwyl8l+gRGFvHwD@j12wqV(?6TXZdY$|UPR1TClxp@vF@pxeK`=A`W#TA2HgxbVg zP8lwQjKeIp7$R5*!`_7cXO(#oD?wr-{t6c`0}{y861l)ZKXc{zE_?4`j!dR0)Jipw ztfkvEpeYI=bQ1JwsN9@|j3T)|1R+VapXMiuAc)YA z5*ccdef}tN)r(F+Q&4nVj7kBP>HbY+-_a{R77-nB#Q;*wcq)wG@*Vd9L_r9$-NgdP z2@u9t@V0u}0AvXxtQ!wToHMKpbq|qQd1;LrX2cn}gblEg6UeL1chZm=loVn~h^P_? zfydQH%t7ra1L<^zNrsSCa*w|5#=_lnKoDF+ktf~+f6a;_$@6K+V%b22C7SRn?#QRw zz(@?Va|~Q~h<@t@ki7mw12(-Kk}P+0nsrFJd%a8m@o)5H1CV8FAY~$CBA8@WxAkB_ zO`$)vr;o5&!W^YY%54=1v168#mQE89b>a;|FWh%BfXs`LL0JT9S!+A;ENiP-|j>M6H>DTo*3|&H8s4NJbB1 z)sS|L2k@9-Z45+>wF(8<0Az6trD~%mOl@ zAhvo6ubQ2dj)qC;Rs{*lQ&w;U^>bk#f)p&okCw!_mqifm!|JV$4!Mh176M}|Cz%x> zrt>&S%$u537!kDO&mbfQPZvve`$J6L)(jwR@ot-dW*0!%A)w>(ao5E_+&|p_WRWAR z+XhBH4Ve6+q#>x58X*LG2X(it_Nqz(l0=wd$Z77JfC!F+8*u?=R|qtf!5k>PYK#Ro zEGdIX4P-oZFbzZvvI>O25UcZpy*phF;f=J=laT5Q>>-M<#xH|M3{*RpR|X{{~3hsVm5$e=nRPq02$Pel+AZOeYBNnAR7Z&Gy|!n z>5)BccpW`Eua}|c^w_#H`yl$lDS|YRj1@dkl$u8~?p+7h!K-C!u=3(^aQUB3WpqP9 zY{t7CVhKLzvX4Z@SgN8>?HJFe)qqip%G1llL3mJi-Osuj8Ozbp@M`bcR zpK9eRerqal>2Agi@0}1=_(&_FL5umNiA}2%)4~b~jJu*qPP~9d z@f1hgca&)azk-2?Io9~C_eWR*rW&;7!)y#>JATXvD^vq)gIokL@F5MovoIu52Uc~4 zRfc52?Mez}qp$%r#FNd5elCJ|IRi;t1!?hrz7wU$q>w?C4w>%L4hC1Ls~<^1iUN@+ z_7TD9Ys1Hk2`-vpWw3w6RKjTaLq4N%-7c(t@FJOOHmbr@4 z1!YxK*nR7e<=MojB~rAKA7Dwcv;<<{9+0h#0>`#??iMPvY8O`Z;=x4#Br3x|!f}2T z1NnCYkRJ~q!RZnYNzZ-zJyENbR85hgjxiOsNF7|G~ird)yP9~uS;1Cb&~ ztD0?P9#%Vb`mhuv<5Aa6gG6g?cBoZmUqwtYWF(F)h?6+tYwn)-F?Pb(^e!Rm|C$lj zpjJ%XcWTYgiaq+pF_5RH$M3vs3}iu@=wU`%Mm~*e6`ki-RN(_ihuRq6VSvsAs}Ze8 z@{TfHRp^Iul9?DP(rPPJkO4K2I{O&JrKMddq<8=&Rw}ABcMb7(OWCO97=5EQYPkyg ztcoj0JX6pS*+0Er2GZLk%}Etw5;{IVV!u!Z@^~T@Uwgd)$dA`R0yZ%PN7n_MQ+QoktNBivlSA$aF((qx27?hAVd|J$ltJ50E!@mfwZ<)YG`dDR_~lXz}e}{ zv06eoNST!gPU_l@ph(u%34~xWuJYVE^TqApxmh z90PegQ;N&0x%XGZKyDw7&+jiU@6X4F+ZEb)g9Hre%Cc#-a`jj&69)g}0_wObg^1P_ zBy$vlY9!>9dX1_mB$2Ux_P7K<*dmOH+jx`hB`gbKa~46AB}Zqwx4Cr)IfiJ6&}9)_ znSaS_EiH{W%j;0lVs}5aUCZJMN*;`TxWQfP9bt*n{T~4cFqzA5`h_x(6D;Hb)%5+f zXdw4*uUF!DeY;=B2?mSaw;J6tPLFGC9c#3om9Bo#>T2 zjE6+opa-9K<)l|4c~1q^tzjTuFNhpo4Y*valUfUz7^hP-nN>nYYoUc0x^SPJ?i*@s zw;2Lx#7-t*0Le$3NPS$p3#%XVZ2Ip3i1;|?m(y)=BdmWPA0MB-ep|-~YyWa(j+gx! z7|3aiWqUJ%Y6HP6MU#M}oV=lC>TFhyB@*E4V}U2BoXZtzP9<&KW+S zvtej4%cSPNZ0UY77NuK|kh#4smWbMHIrFkUUm=NfJV**?tm`0=;~2C_e#5M%f9d_3;=$G7K~-RXhDek}k3 zMH=FcHSz)nh$=;|z(=Ji9s5^P)C45rYaCsLLsZ?<-erlUmy~Ad?oO9pLOPWWX#@mm z+{Fc!UJwwF76he1I;2@ZQt2*f=@%vRYQYY3|<+*`s4lbFZ!ueISG2E1GtKK24PI3%#Kz3LFgE@>%9TGg8ACo1k+|6 zZTxAn48oS=1uFVbL&B+zyxFANk0w<{WMVmR%EeHrJM|tyQR+f&Xz4fkYKutfg?5nv zQ9LHa`PAhPtn1vY&x+B?_m01W3XtK(NgRI|e3A?LorO3A=^ZP$D0pq-xpSoWY1lB0 z+io1f_40@2MO*bR(XV3gQ#<}Nd?m0cGC5Q_>$XW*sn_}2L61!^QO9Ff4bw0A08l3#^Q*Q+SC$JGBv{mEMqPz zMo0h54Ar=JKrifsU%Z=u@xT3i?;r*6mm~0`RaJ*55HlpyipdN=kwn^DaV{QwQ^0L~ z^Gn7|@+vSuL&g79rCur*BkEj_Pe0M-oE|JWBqvd6F8pY>L~(@8@Wc=z{*BQ&Q2fy1 z48!?7T%Z_kOw&Huqik|u*vS7CiM%9Hy6M&S_)ifB<)WMse=R&sztnj&FXR;5)M!&K{_;hKZ#OBMNqtjYJ(~moIf3UjKHvT zp5o-XTtDMTX7xV_*es}0yozQ9a;iQU1$ zCj2D=BknFDL)NnfZbs)KTW;G))CEZvDd)L^8Q|0@bTs!k09)JNxfm`nyYt(&_abt& zq6x~lDWX;{Jhn+nO#D$g4=oPveylz8jV;MGWg9n}ns+8%*ij-Xpfb9@=G&8tT{HhP zTn3ug17J@WsTxAsTLJZJYp)}@08ky3Ki%Wk-{%i}8{3&FTwaG5 z=l?qZS5Q#wk%rbqJu#7dckx-DqyLldYCkK57oJC=^=}AnNp+MYQmBTvje4Gk55-W8 z47gL*pCjbD zvFK!d>tXJX^k`z1e=a8;p;WFp>&et{pm%!WIcQK?iYCYU1{ZJh-M@mXbBBq5!0SYB z-%R`2BjG^^)Yg4uX2$Fu4G@j5HaGX= zBN^0q1bq1*5L0vLp#u;X2Zf}}{fK>+@wX`U-Mi+8gYoxQbJzJ^93U)r@4)lGg=a(W zD)AN*f2s3)==baY@yBiqJ^t=h5f|P4h;8iKQu#it(Q!usd4$jJWbu&6$*D>?0q}oL zQjpD3{LO(-7SW73{~gf#2=|W)kGgvjeRMD1^nco>(pPuRq*l*FaE5CNfAadXV;sUy zL1sK0<N%lj@+TDjHz@aGqS>O)2&#j`(d&y>2*L(Li$BDi>F<;W%Ne-9DdA-; ziE|5M;+D(aD?!=8CpT~$~OL{Fd`t)7Dhiv{Eyb`<~Da#Ec2()AZUwB2!$1 zDS0LGhuJNoDIrq@7-M$PtQ4>?EQa|4?UI_VGw)seGWyHms{X#q^VP-;b;MPxE#~++ zz`Z?KCNaISGO-Y!_Qp2lJ-rPmZnTO?%#3che~UUq2%aUF8NIs7)sRZ}d{I;mfV5c{ zeqV=#ld8Mw9lJCt2CXIx*l=G^cH6)80#zyCO`!%P^f(FkP1QL0`8?!}et7%z%12{L z1z&7{;$(4E7hUs9h!c9W2yklS&H9vt58dI1o>vHxl0Uy@b_$4x%D3Jy_?(@kB0IiH zKTxEQ^m2v-xXvBhA z^0T@g%M=0S)SJJ`V|6IO;Je42+ZVHh&=*U=DqZ)=S6BJ<#Le&9fmja`Dk410@4=l16h369>|Gg<+yu>!m@VQbcY2|SQS3}*8`N3&gTqpM<|opx&9>#_hpM|neNHj4e6i@w7Zm&{hY(> zNl=B3h(n+_Ca*Zr%Uqo+`(U&9d)YAz+-CaI{wKVsN;rE96-3B=KSn^9Z z@EfQ=DRqBgNvMi%88er`eEiJ2<6+SpZf1gHEaq3_(y@QK`Cr7snHl`cf8)Yb%l0z; z`oo@3ZEU~M;nJl^%ts-4W0EhnFiy}-hP=!${ph?{T#SxXlWB{Ve8&3~y+`Kn@cpgz zuHT2-%`!LTRsY~!B3P4V2AoHTbu3RtOEDsmh3|0QEEChE&2CCUX=hzNR8Df8ip~${ z@)WfTqQ4QdS$gFw3{l88#=8=}*9R0?oD+rf{#L2i1%ry1`YWu^*>X)Pqno632fRn@ z;)k41$m&=$4KsY5hjTe}qf4;H7R%h#NR%Sz(*-~No1`3_-73}7LK2j&!k2I}7r&j) z!j)T3L+8u$41*5)Z|FcB@qj30%ov0fOD8d<+fqKGtUZx-vyKwDNZ&yDBZ)FH z4BZaKA~R#xsYD#Z19`1H_7h8w3B91TEKSPE=F8YSY6=BQSL61JS`u{$?a!%p`x|D; z7!E_GRY`$0X5jYkjirXLX?b?)GbHrHC*da&4!d9irnz~Liy7tgZifq z_Bp10qhBzR+ox!6VuZyV~Ci%zeb} zy5=RUJHINQH7#7yV_l@Y@|b9>!zbEwED>zfIv)Yhh~@(#o*Tc$vU3cplMjvH+_`^QFi92j&F$FHt=;k$pFo^ zm;to-0$$M|ubhsA5{B60;}rG#+BNVc4)@!UPV_$g>Rf$w!e4Ax=%daPI?Ai;7D&6=EV=sx`Cm$*z@9kS=sR{AzUO$zM?E?uP8Y<(dk~%1BB=e zEzA_B0YS36Nh$fxEK7pejXd^{caUuS+j3VnH@d0XyJ7$mxds zh-KSvmD=P9wg50IJFN6E=&ad>JAe>u1zku2LvS8a%Raa9y zf3`9I^Xnp8t9f@*UPuUqX=HMDu`bQLeK6 z#4nFNRS7ll!bnxwOEd~srS0_KoM?p6PR#`h7dxVZ|I^m7tV@c|9wB}h#j=UHpPt;~ zKL$W6O*KFXS3S?n*5Xh?pg)vk@c}!pCwSkQ+

)uyo@h1iSuQ;^2@AH}Yy3)eCT? zCc@E-_h%Goj6zh}qXd|h_6LW5^Od{$UD&abrI}({4}#Na1Z}&c9Or~cP&IRl^(;ia z(%;ogb?U|Y1=qosL%S8EeLg=%9oERj>6Ih zD+P6=OGq;*6-Wy8rNvE#;Z|p+UE^%b2ZQTvN|`Qe4$Ol+La1Y z5F)m#5<2)lZzUSQ9|n%`do}>deV5rPK6&9nop0n5kSE45VS@@*f`{u5uU>|&`$GQm zGREZ9^^H3sO24dOtp-&UN4tv2Ghl){%wF0aMO_0J&t6A|6I+Ivgi^uh%Fdwq_e)27 z(#k_`Bu!|J5K@?wcs)B0E9^@k)|n1_cM6Vi(^Sn_KnSV(i%1Y)MSYV1wto4Kyq4=}uw~M#s<6)Rv=8y2zt!b7) zWwGw{$N-nWLPE}UVkn|Vt@%g@b95Ff^V|LR1aIiUm3jA?LEWA2avCcIcJ@gdUg1&< za(!=(GSiEljX$8_o(=OcnwX|c{4eRTWLT!qx2T^4f!#?m7da91DiC07fCr;Z zFi}6<^_G}=&4bv(Me#TWCaDjNbC=e|GgEU1ykTSKlz5le5GeDb#yP)T+lk!e!>J*D z8ZL0gm^aWTn~U<@^YS~)s(ry#fxrn%34pS`w5F0_Yi8b-J%~Dxg6PxVRvk-I>bVXi zvyG*xOf3Iw9}Zf4to61jU!U>BTmRB-3}!u!kvXyG-xN^RY#trn%BdIr@)FbTggny3 z>FuLVdb6y#``zqscLVmbwD==|vO>Cg-WjRBB0_Q5Ub_}74{rD|PmA%jLcw(YTmS*vU zIs78b`}qmC+X6ou1G`?_O90^+8?18NJ$ZYSsw_0HN+!b(k_8vSm|+0c*2lyVTL0DE zjWKiUc|c}zR&Q1LdADzmSi3AFZAlU$7AGnOneGg`x1!c{*REJ62QT~LG1#E;sC?8u zuJGR#bb9VTv5k#NqW+ZNCtnJ^=?UBOHX#RXVtScEdF7bBv)m5 z3}sV1JuJqsH*HgzU!qdbGe`Y_diL@2o0J>Nx)|#|$3Fi3U*skj+@^DOlEY{ufLX4$ zRp-~M&w*~SjQNe93lgXH3N@VxIGs9p3n8H2Du<28 zxhmVJ_=wcjbMct#c-!+VWs8X21m^41bu_Q*PB}JmseD06to8VIS|*=A4#EmE>wKO= zJ*6MZCR09)emU?Vd>0}hxh+5a`0nA)(;pqoz1b5Tz@KrS)M-5bYI74@WJTE2!OvR9 z2r6o1aGh5c2uIWmUi7z-dmOQ!ZiJkIU8q%Uti*x;Z46WTu|y9a6_R$tHLA|{`su(s z)Q5(TW`hu6B>70$#vub`JK^U5dR4*%V*pUCR|558lXjn&Rt)0k%k}$MCkJl9NQI)! zoW*(=?%VeELZU*;EW>DD2_unD;?u~M8Xu0Js^B4ut~*ISQIu9894rF*qX9z*xklki zsZ-8Rc@%TVGz+k53=uS{hP&3EcH$lJ<6wZ5Qur1^J%G~@y8+!8=dP9O174uMy*B*l zL^UD}@A=Hm%q#`bPIqdlB<@zCu|#KTD1~k z@@FLWul%(fTOO8kXl0{!?vf5H2+x2}*hATH#O(oM2igiLNMs2C4VQUr023gJ4*es6 zW{rv13)0>q+ZO$v??o6Fvst%sXY5nG?;`A))D4LT7WEZ z4;4hcUTc#5yD#dH0>C-Y%{0MCld%zsEj^+9LjK)X{41P4e&#c;{_e_E_fOYbF?{^AE$o6hqf`#9 zYm5b997|cHMihC4VOsU`4m78>lBEr>pKdD`0`b8z5oFA$yrm?e7I}trZ^K8j*5qJ< z)3Cz9yf<*>egf(=1o4OE*V1NyqOG0pAWUu^N^P4glElVxsen1Cck!Mt{E`s*HO!7I zO?GkjP6bw8RSnY>{=GnSaky#MOKaXK>5zJ+E@?Jz1M*8AIHj;tQ8om=Z~9{B2kOTR z3JcD-&o#8ZoCrrh^z*G^31n64v{j!P&&(n9wran#prGLe|4aVPj_^OJU(TxkV??vO zzdx8Ts%oa3&4@MyA-o^&J>&aM>-rDb|M+0aCpCodz38@o*tMoDH{!AeDT@FXi=}@b z#CNaZ$mI=)=g5>f>ugruB$Mn>f~j?ovEzRyw_Lc%{TYuFMF9fy&|UJk=PNwUm&3T! zJ!T4O-*T`M)RKZ*9zwknELHFMR7_BWWZsmYEtX|cSDy&mx-iqB3zq|2p#?f5EuwG7 zNIxVlvx?00GOgt%O`}VXE^LRnQ-wlHE4qMhnT*D?H@u4h^^suM?3N2u%u|Y-k_-pt zZ*M>I^F!C9yKW~@g;)TP+ABC8)AuBZ#-_hc8BmhTl`j4I4-Oewyp$k;r)5iEe(cX2 zFkj~sttAKaiQv$vjb$3~{WloPg9h{ya@ZXSRE^((3kT)wCne}7PhKK@_LoQUwr6lM zJI`_MhQ>ugiJWp(&3l81Kou~yy=*_j42*Mts3t|0dN0dpu|1$O&qBeO7C&c|+{Iu1 zxLFwkOnZ4qJtytQv9F!MYw=jfcqsh6FkiuS4l%|}Omjx4fA+Y_Cm_Mw>fgxc3&@Ad z)uolhFiTB`vMhAj2-(?N0gIm8EHa!O{8Ig$C&WLy^+FJ`SBD=`WmeCvn@U{?TE^Ix>pAtnVRoLZ8q{P6vT<{fZ` zi4{8201VUMf+&xa_BRk^!W0M5o3 zbkwlL66n{zvytBb(>~esFnl2NXOIWM1F&=$O0G-ZWc;}bZpo{?pA_hpFQEF~w+7%Z zvb3#7z*gQ<$MuL0ElaeCvbWlh_?j{cS7hZ*_paLx4&sU!8DoGq%R!90bLg?2=EzwO zv3IrX(#mwuc|0joV(ZE(%ch#gi7Zx$^Dn5T)a$M(X`$>CBLo0)EDXXZMoCD)r-eZO zrY%?HMXT#iQp|qiBB9i`1+hWI_h>Sj|%se3>jEOL$4(e z{lEutx;H3piVkSH8jL045kUKU-z$8KCioK!H#NFafmr*uWNTs5;}5T*S@iKl=EoNtPPmI>O1Q$8SBp-J zdgb#(!2bEVmVU>U5&n>0NDVy7_g~&$V_9&e_;V!`2FgSs2psOLFvFEr|FoC6y@g(U z)ks+<)E5jd1*annv+yTWI-EDGUEyX5|PY{vaRd0tD>Pg%tdXr-v z%eX~CXo#9{JOI?^135!mgZ6tDS-#(sKvPLdzOLlL$%@WScYC$2>eZJrT-~49dL zOk=sbQkmN`RtSoo%y$YOJ+FjT-pzU93D;PBDFOBuwuVJ~%|@!@U_;db^&LN*T(|09!X&CGR0%&>I?z zH&m7RQTVPe_C-;sO!oCnHyc7Q;Ew5T^?|kg!06d2Sv?I4WyC+P)01hypN>afda7~# z6Ux>4t$v5mV=1UWn&#jiRYZy9!?s(P2iO$kOf?N<%}S%deS5;PNQx|D^6}i}moBEU zQxEPk1GZ&;_;&tf;zbBH#Lk{40XUD_TppEO04v2F5OJ3Ytl~@y+cbMUW5FSP>n3#I zZI{-T2)g_O=!f0v`oSc!(^??TGJZ?}q!;#@~`{Yvc5ruQ6 zDJtP&38G$Mo5W`|7LID_s~cBP3Te!EK30)nx{=s(9v~i!?|)E^JX&xb=GC>FtD3<7 z?yNA6zN3lcl#PVs;MoZ;o2*8fX%h*ssWbS&{=laH+*|C!z!Ih;-Lc<|%fj_2Mq>5q z9S<$oqaMx+BrrWh@$;O4t zHj?Tv9H8SmX&4)*_1Uxd%x6zt5_+bQI8WVNW<=o8J;;g&Eik@Dxz0K=CawMpa=)n= z{kop}@z(p%Uz6<5rvFlk6^*;9kN-q&mr?q>Y6i9MBmhfF)AG4aI-Nn4=Vf<%FTN_I zVpVp9yU6r^>)4vrS{~Ap7;71aM02Xz!`*5p6DZqK^6tRJnCIW5Bru;cYiY9s_*loP z>54(v17W_Sy{=UcMl)i4-#l{0-@7bNA63^Ln*x@O5@zaUZEXjdHYMK|>>QkXkOyWQ z844zhRtWJgrstbi5Z`!p**@*9&-^?#Iq%^H?d=UDL@CB0e;DKYw{AKT#E|K!SoTw! zsN}K-$^O9KDK7DIsq9OTwo;+ogiCIaK+}D z`Pr~h5%5v|Z(AA+@C6IJ5Ip8b)a#&E=d;P&AAd}L`nG`;Epj>q#-XXc9LpLA*8C&e zVVO^Bj_js~abscUH3HBtLQbDZwtag_mcm(!@Q<6O-~hQ_{{s6`MqjN>KyTSQ6aHxY z>1}?0oBHz4SN<0_pRvQpe~blHNH~b9<;DJhz@hJJ+7HkEZs-3M7R(^QVNQm#iig)~ zLk>CChDzl!)CaFA|KzN2^g6M8+9u&}nB?R_OLg7I(pM-Zzr}-wZOW6e&|54qAFW;u13F|J4P%ipK?Q2v@wzl3?QNfoiu>bKDMLw`Z zo0VPw;k?s&H?rQNCtE3o`JRWc<^vzOdbB2WdC_pO9uUJ`?f(LGR+^0skTtVxFgSI| z{t11>Si>c@i%9Kop%EY!r%6~@{^xpP{fc@HDXN%?(PV$GKO{cF{=te&l^KSZuTwbr zr$Yeuvd9?azQ)+|kQTX;k?tja{d-uG&_xe|>eUiugr44Yi&Zi?JNQwe1n#q>;E&Y1prerldy)LVm{JwzB5Gyf1dPa z>|H6^yrNt^l02XS~vk*Zmq#_g##oK-``a%NFQ8xnC%^1{+>!v?Hz>!>i*`7{Y^-C z72H9zeTS0=imjz&6U1ZB5}d~ql#_;aP={=Oa7M3t5WTD}BODIdyvgB37;c$zbs>-#i zJe7nmPr|S64x;f9lBQ6Cx6xNJ&JIbr(Tx_NYS*~c z$Sa~b$1bA&LX~yd4A^US*%)3%rCptAZR1R{5S0}#$6UDUR$r(-_?VSE5@DnxZVHjc z!2;PhOU{}qK_RV4ZL>|&VjmNg-iMYPQ@lO@uPbBE5NYWnf1oQ{5ZUn-)DHz2;__m4 zInKfbd0~1|?KC|&FF(?S!z=D`o9I$Yl5J*(2mG(SN{*Xgy;&qgC8;={ApVwm;KPam zF)OaN&>PmIvSbc#1D>OhJ4t5uu-8LnI7@e(SG^1)ATeBrrG@_rrI%l6Ri=c1aCgk( ztP4b+a`F4Sh59;FT5m3}6AJ5<(OaTvOpD-JtpzpPqIFNXbfzbb()9VktSU%J=_&Hp zMi9@RfYu8@{?6IC9?wB^W0m2{nQz+de2~TQ>qU%KI_t@D(j2OmeI?UE-CW{RkrIY3 z&3TXoT}ut;lDr(dAQMFmww$I1h_7YZ_pk0`A1kqCp!=T$g|P=u%gwDkawJZ#z^)@D zWu^j;4%RqDid_+q$ncpBt$Ux2n@8u7ZD*ecIo{12Ji8zK`T)jodW2YB`>Cuevtv{) zqw^D~DBK`@0mCPDAbjh~1%GngJ*aiJJ-E*9oDQM=Zfnv3% z`(}FOBaU${DF6an@gzq26x+?FGw3&S!jFI$bM6~ck>Vi47fXFaiGU(`e}4{x_lJB^ z1%ZMqb*eBPBPdVST>F%Y;E=lN{fB9fgW1`~slHhd^G`5Svrw~d-qhGaO3vzas)}}` zb*7)H<WaP?qbN{&2=0zcq)0%e)wHdVeIfWP*^y{=tUL2VsgsR6e z7Xy?CapF?FT=60%)Nt{GzMAy3;3S?w!Iu|T^!ruydeVBDT3mYdBGM8g((Iky(D zs?_gxB4ZySDv7`!4DkCDLz)x!7lfD^(z~o&tbFm)Z}tPupGEyV8bx#3%uTRDiaVT8 zTt{vLOjIJ-?`>~cCy0h*6?36ee7GDb0?Pf^W}8H)6lOAKOD;k>)9B9}DoBY0ta4a^ z(6Kp(X&j6Lp#G1C-^Z(nlYEPtJ!GR2t@*0&#of|Sn=Y5A%e|QM{f#n!UYM8|udd~1 zM_# z=shm7_!UBO5wg`KHB4t^$*CVL%0^<~|Ayv+zJFQ*mznD|ijVt8dt)+FDw7?8+*FC3 z{+p%C4vJlTL)9*rfj!<15AkKV_h~voy}O?tA*PFVG{xk`a~}}*@DzFxJQujy(|~MG zWdsg|LlLH$Z zS$ks*wPeI24=}5ZArw)`?^YY(vX|r%g^?_W$%(8D^(Vu1(m6O3vv5DlJmvC)>Sc^9 z11E}W@V7MF2^rDw=A4`y$NZwm|{ghWF?rY+%@G+7jjhRYggovxwDRG~* z`?QB>8wh#XD>C=zcMb{keFTmB$W0pC(Dk$iM+o#Oax%5nsMGPXr7^miSf#j#1XBk% zH}<7lQQ3M1eU#vRs4pHWB$7wP_sxziIcDaf|JlO0zN^-LyEfPX4=;-0n<}bh_G02A z4!rJUp+c7B_39&NA3p}Z^44EfI)>(&4+c=&1Wt!&;euCOUY?~1$Z@DVOp6<*_g~z0 ztov$1wBrYbKzR*6+{38T6Yy~1r?98M?b9GXBHTD)5+YlKqEAB{;Jo3fO?@%^#amb1 zG5MrNe3<$i!wf1i`kwftFtTTk14)M zb7gq3rU6Y>C|F>TF;e}*ctjnig~FKg6f*S3J5Xd6ZeGgA63R}QpQIhOC6H3k+}B6B z)BP_aR4qr1p%NhM>ZPGIO{daf&?{w@lwFzH$srSHEnPpS9jUD*{9tlR*5j~b=xqk# z$5Y<#Nu}W2x7A7zQPwH%IA{b8E4K{|JQG*!ZA1_45n)ZvK*fD%x= z)cSa_??q_n_}CMkvsLK?0(jIZ@cnty@RqkjQ9CEx?ojDfyn3OYOwKoA0Z1#9_7K&r z$s?k_il?20&z(kJLe}2&cDL><^}(hY6bPlladxr^Y&Pqbe{BdR)`4J#hzTjLp@eXO z0a@|Y5HC)6GoHA^nsY^P2b0nrg%NISeLBwYC;Sa{bj=Lmvk3Ux7RqUkg#WsGpUaE5 zjPM7EM)CU={dW^IH1zfLC=NWH>>Tqr6Bl#QaItk9+PTU?Z@YBSOM~verAv0y=)2jg z7LGqtbtYgPEUt1gB+&&A*<<99g0V-Zs5)oIY*xKd%4|+W`5$jjaEP9F#F#?eh3->@ z383$_)&k8;(rnCUB+CuJ4yhmGqsZW_KAArfilTLK;HaqRS5GsA@lst3G^%O)J1dU_ z6pc|896b$V+MdDb&7+$i?&yIJ{^wD{<(Xm0yZ+e~`Z+)YYC-)MGkSiqRqwy+2_~jE zcwy)sQ4Y4{IbOR)njpF{g+?4Lyes}HmIAok4t{Ieg0rR>Teacpi!5?WP0aS_Ht0^^ zJPHI$#Bs-_?2ZKh9L$@)2w!UcD!~4Y0EjRDQ|l*0<}KUtVp>*ZtRkkqzNvm%*C7Bq z%@r1=ATB!}v1Vjz75ik<*2iZ|smT0}+mMUpy8p_~L09Rh7YL<+O+V?|3TdE2cn!n) zOqwYU8%&@r73@bI;+A}DED5W1dmT49Z*Zmxs%^5!K2qtde`Ji=77v=lRqIDYe>rVr z_G>oTWP?AXFv1Wa$%QQ;;@mQqL9E+a4jF*ZK1XCTv2@dTaU8NVB^-}GTXcn)Ak^I! zIbOufe^AlW6p7LN#erUW`HuIt`3jGYo#r7Tqo~o8vSZT#HVj{nL;11ZY~|6wogcZkJ-zrTH-PR!b2Ztzf ztkkPbCVhT7f#i!Se3z~iabSXYY5cYbg}Wz#c5$hf6UKlvm)#kU zu)E>VTW|N57Bv%TPSV1HWP*WR{HL(HH}sfYnU%#oF>zgyJ$m?loFw4UaV z8a*UU%LXeiKa+9PB`AgGbXAtSApN~u9|TDmX7t2?nVx-E>1?Sq1bg(C#gJ2~i|T(? z0GP*NgLhNo>*;fSJF( zVH*zAd?6GsnuhzHbDnl17!xc2x8&G9%XOe40|1Gf?-gY{0~^g{t)7+nKWI~6c7mY* zwkgZIJ?+SE8pv834tF~$#h>P7&k0kcqD&eMdo!DViJk$u{JQ&~e7yhf3V&Vv6oW7@ z4G*urQYWA~(^r*>vwA3HmsXJ&Z!>(fL|Uo&In8V#nvsk075Z8#K8S%cQ=ou=oD+Zx z#D$Xy!e(=E{xsA|u1=6TY=~9Viq!1MQgO1VMeT*g%kg3?gVGX@gB+Z}3=*XSU|Bo$ zCeH7M0?njX7T;iLTd)5cFOdm+PT1!@Je@kt7(-kB=y^uc)i4wnI})>U|L^sF=w8w1 zw#9i)lDZ{MI>xs>yZz)ZI;9HRf^^^FVsIffuz;cHmBp$c7V7QDW^Z)EdpekTn__`0 z9_C3mnSct54fs4vxGnX`$v*QxQ%e z-jplCk;(9IZLk%qA{#>T zu7ybiA1XgOk{troj{*2Y3E2r6RFoe{AJk;+B{Tg>8xOE>#(xqRY9I&9iO!`iisEbbdZWC<3n!~NwRWM2sTYZUhteN z>zFKmAKt$IXYXxl_$TO>+^O=78F&Wz#V>QjNyt!|xAalacrU83@vtzD77l7UMp8Z4 z1;dob$~aI9^+7-Tj(>bNf|~Kj3Br_xFX(u8hzMU!zqKd_zML9pKmG8>{ombM0};df za$X(7Op#0uYh_xG91Q?Pfc>{rAWjj^$)ZRWAPs<{YKef%0+5b4y*HFrnPK<)?OH!h&)mZaheIPDkIb%zGd3I`~q}wBMNL zqr5r0ez2FDt5DW>qc#g12Tg!|x4LiO{bybI&Zf5cnE@X3(Gjw;o{aaq!PeMR`+Q+u z9DVcI_^2rWM?vjrB)ayAzoZiJr_|u5=6lW3c3NZ zYLV?<+Ci}yh83E%fq4+Jla>|yN2VA!NHgpwIm$o0XUd;ry0b!xsnqDlhs8Y>=X)p_ z6|h&#$_KZaRE|FQ_4SFA1{b8jIf_hi#=X`$XGl@>B);Xh$~S>Lwgv(W@(8ByMa znyJpi>Ji*Dy-^aYQ(uCt+1O=eIC=6z|2eBsVv9ME!xkkf@oPH&zYSAlOl=8+(tc6 z`n1y+38kW)rCj}W>%;zP=NAMJncYMGsz7Q*1ZT2PLLt}{L#O6B?D zU(+F23|O!mBYU__IM!##;hvqm|JlBDIvy7mp%Xyg4VtJZ&2npgqM#zDj2Ym=j0OBH z`3GvXL8N|oi-oRJ4&?MOzqcR?P577iRg^sVg%|yTHANP`TDeh5m0@h1e zd{f=JujsY$nGnH&kJVQE;j0b}2UN;thT7PA&>acE#t*&2p8a0iGp!zdU|SI+Yc~Bn4xryp-z%GtfVjYa^-pH>)vGJD7Xp%=?@tbb7&$})OPHI8{nV1wKtg5 zbH@X!ChfG4M*R@h7ElGK&`~CL7}m&%2HVvY{Gd^5?U^KXPblo#=~G?$-$7{Q+Pn7x zrx!R@o;I0>3i{6jrA6AF;`qFY>{=|ruOXW)dYt2=^D%Hs0$A_G@n{l$ zy+O_YyW;kqRrDx5u>S&wqCciSDw9V~iPx>QoZ3B0NMO2Fm@8@6nRK$v#871wSal0QrTx#+Yz zqN$@a?V%1v(O~CYm|*`!ANxJ~dTpzCmBi~Yh6=GCXc=aboIc`1{*B5+^%(|i`~@c05Ww|s zv(^6qb4ht*Iz-5x|DtH`i%;6q3I2!6Pf_OoybRWx-3+aGXL&H?7bCao8)W~bZPU?A zXXlI5hcc}O0U#%EJDaHFyzK*;Ya~+y2diT-bhsZ{dHJ_l)$*O1xwZB5uLY{ogL53= zE(a%yMAi@^FmV|4vqdNzCWp+UJ|*mX?a^EW7wi_Lqk#>+{=JO&K%;ZwTwZ z(iz+6KQbxvZ#zK=lbJuBv752za$|u)X^v6)YYD(853*2!u{TG2aT@S`68eoetSth& zA6*N}i&RX+duX%lGmSa51Zby6IHWklwopts`Tuhd2%slSy*aJ%1IPtG+rkcYjsGof zJ69|z&pHcsE8H|uT{=%;xjOOK$Im(OiCr@w2wd?uz8IA4pbb2PMY;>+3D!qWJ!>;bB?aT|ihu z6eNajP&yPAsij1^!KGWe1YD5L1t~>938g_&KmqBH4y7bT1Vp-pXZii_`{i@bzS)^M z=X~or-*e6R%sB%lX@ya~H&F>ATL^LEZul&tJkFdX4hYqn8xB-J8^e1s44gNLg>^%J ze}Q*Jcj(maGJi$&bC`uwp*}%A&~>ne$`SuyB7)fb z#T4M@hIvk$slpJ|6|czH_*Sn)y}Cu>Jk791yVvn#GNhE`hk%7F4OrSL8CkGM_&UXj z%^N(UN?k*T>>uzaJqkrT#w~~sQP>gsn2~<+RLGZvgrOVm^2go~Qn6=Jno;YQ+%%om z2er;oymy@HKda#p@qySn?%$5LbeL!}<>yt{lY93h!n{{zGdk_<^*)UAJLO)!xjDHv z<|iKm&2CVLCubj_%V4BzX^z+Gtt6nSS0&DWUPCY2mK0Ivb}0CpWT?hA4D0Siap#CP zypj@C3MraU;N^Zj>b8Ljxs^2<7<_3gSn3kTlqfc$>D+mSSwR;G|BTe5Hu?7X--YX^ zAu6uRyikqRF0Lqy>@4^Pl9^fI`E$FePJ@&(JL4Z-n_=?2T~c z)npacR#7e0F!8PL)NQKxk-j4ew~eX%{;TR>Xi4rfmPNHuKfPIq``v(mpWSrObxJ6MT+!kom6?z{`O17% z1Gg91CJgjzJ@f*BKs3(j^9{3GkOrB!1eA0%g@LKEz~}Y;~JT}BCExk`M~ZI=_8&n zdsI%%9sARB7mZv?A)8i-4_BQw7o{XH?>ne4A3O``sk_sanFN!Knb!7lcK zr$T+X;202PYK4+(fekonJr?j^3}+k;tYf!5sV`fYimR{Lyo4KTU8KFe8UuHEu%G7J zcya4lz;38*j7Y@KVP-iC$|pf;3PdZhj{_^G<=r~&nmE1#D2~~L_-!&e#7$+|u3sj% zU@4BuF4FN$;2XIhUQryN-uVfu|3FM5mt5TDH;(j!=h}2Q6R? z!^yG@y|ovnQ!8Pzez}=7kg(K489u|BZ*178N(r_6VjFPRQjQr4{~*VAelg?~pEVd4 z6<2e2SlA{o!NEDMr0Gt)?8DdRN${OP1t`1!xON7k{H&c$I}`=r09-#SnZhk3u%bgC zl-S+s*gW55;gOmm&u?ne=eu4=j_~G~LKEyB)Z*CX^b23{*ede!+KzA!DsXB_xyIaz zRAQw1{GsQ+mSQdCzOT2TLMRdJe7k1RB+*i35=2y{`WG;uIhWf z7wG%}Y#1fE@4>RkB5IDEm8MQxPf!yoyNnynWln^V^k|n=R2Le_zjGr32vA(8Y(oG? zK8TW#XyY=R4p;J|b1zaIP%t*JvpIevYrNqI^IKQ>VJ+Y!OdlpRq40YF20TzR)Z_zt z>g;!5*`IX7fL%9JJ?*#V>ZT=C);q^hz?V92%UcPBl7rF! zr8Mq`II!}9pbC8PpfX|D+3=koJ>QtV;9a1niGamasWT~t^A%r%<|pom3o~NhE3GB) z$~1ca?XI(3W;@xb+`o4JUad`S>h?kEeX;3@k{{1CkF8`zkb83K$`1{f7=@WE6^;7q zcCsG7KaB+NIOGRTn1I~|G6g7e!y097{K8E$uTmdo?UFxLUJ%$W7pfEy&NEhe+c~4v zWy}G>-yr;2@Vt!hKgqyK5^=QH_j=n0=e6ABbu)f8RAI~(VLOOtrNccaXT{B=Up237 zBo)*b>I*~#$FzNF@W@5t-QrINV*EM_2{CHTn7vPDPX!6D)Azji$ya9>bB%TI;{dy( z$oKE2HSjt&5Qu`Jcj#q_ftBaNNb|P74r@PS81B3O_d58uIys`8?F-j@A5i}oX)qqM zj12DT)d_4@c*2f{c56s$$UQGDtNR77k59AIHUYYFGihf+?i(W5gAV|>{~a^I%v5gX1?zUaF zFaZM2(eg2A8HVk!DdK?!ywlkrXf4+K`Rf3!Ji_Tivt4z~jS8{1Ws?Q%#Tu0>;4`I~ zo8g51FqFDkx6ni~dSWKM5`!jZh{cOb_5wd26TpPXU=N(5a%RPx7$UwEN5MB>Z4`lR z7W|kAjey%8D-A&b6f{sWD4->T%Pq2;C@9@JgOFK!0Y!*5Wp_K;s2eXMocqSq^)N3f zqO*uq4WDpfD5CDbc6+W>cqECJ1YY8`RPY9ylMfc|144}0z#t8k+duf6T=Z=+Q?Cah z)F09%tv1Wy9L-39-QA`G(X2)qqindliz+!ut8 z+N0?dVGUY&fEEMyephi~swB$=O?Gyu^Rln?pe|B`j>JT2`J{9O%k+po6_(X>Jj5e< zgdxggUt%?~&;b5tnOzL<4{R9Uhr^52FYXah z;bVxL2;oZQJIyfo*ms-0r%=^U6m?5>^t0S8(bCMn&kr>B{yZ%e`otuJJL0hh#fbYG z2obiOjy?sm;UDk-$R}*5>11{TS$#p0`J_AjY!c2H#%-s)+~+a)b;Fp_!e>VKC1NKN z0ZHCc$R~1K50-SH?0i6eZP>vY1SZr>8s-BlV%=B2{b7!d#`Bh#6+i8*c22g5L>#y4 z4&stfEI+VXVOTC67A?2bN8=4%K^NF%lLK(>sg>_AN^NoCKSgW&6qQzEg+0~mH1znQ zh)@?^{JeIP%NNHL3->%ikVgAFPe@)X0SZ#M$^Cm;L!pGUFA3eLcZBnmX`?1iy$Y%C z1`2*)n_y5iynMBkOydhOaxPrM6N(<$5Za?mlW^F`L*F}q&;x8>(LkjkE1%J8;vo2g zA=`=QTPc+n&!0eJ9sHXFQ)jQu=pgKf0S9gjw*cENGd+_VXypwK_!+*Og!XSwZHd4v z(HnfMZOE@Mh}?5N3`LICzvz2#D|I}y8%gu^yG$@PTJt zS8Jx-wrXamjqIt6OCM7eAundan@^@hw?98@vIEm#pJ#&%Mh)W#JlBs!DA6*O78>N{XxXFmDGS#Ko`V4cgm|2Wo3Jvpy1Y0jN< zuj6^^?$*88Kk&!7X)iKkcWuwnTVN=XmJL;98n?zM-Wl_NY)0&wV3&L38#!B02gHaavEF$$o zT$F5zq#FSePRE53_*2e0`qv!T`8IlH<1-?OaFvj-N=cWX#}=vtl&4pY4jEa4c#vVww}coFtfM60uLWtb z+=v?lVS(K9*WX3d&SujSH=8X`JXVPtZ#ZOo&mqu|lQ6a*gj1zW9CjgQ5F;WlSfr7e zMvBam<|m$}R+hhrzD~r0z_lkF=7E(Bje-ZV^o->L-xo7)7h2TWBK+mLU!{f7oqJ_y zPr1>f(;oJ^WRs1#EIC{$Vha!;7TQoGg;Ml1~R)nz#v;o*g*W&kx$peEti20QXFbJ{wY(O{<=A zl%1l#4Q3OPlkuR?IyHpSL6o3{EInwXmh3viLayhAm(B+}4C1J^pXG zTMFlcoqcvWQ9|2;HOA-}ubey&y5=$(VVM65De?ej$=LF>4!`@%Bi!`6^Y5hA+%`WO zW)ll<=ob`KGv|x@zhdU_Von)a6uvHJ_tM{{(WSW3*ItdhyvODi_%n#SV#HZhfLS~%|14Vum%vADD#rYcM z?QC&=TXqziF_+iu@sq)wt*(2n5{}fG52^h1(!_N(j$4|SKb8R3JQ;fUXP=sX%o=I; z*qAy&(X-QG`8eP2#dx#PPX>Z#oOW!pA5Ur{Bv>)i(bm2L)o&yV3FLDApkBY<-u{TN zon2`^+db=~MG&HvNVajdY&A3giUJ*)+LK-H0uZ@jm=y9= z3h&zny4-mHhv#U=Eo5@T0DY9^gWN8I{Xr%G&$1zMNcyN%S<3y7UqS#72_*nO-AL<* zXd}HKrHA7iK?1wu5LhTFG!#s!%!a_}@js|so-e3re8ovaKsY!YEBU`GMtkVE!9r2*`zzLqcH><`fCZ zEu|o$F|9Ww@cbMeszi=V_7aKWa=j} zrc|AiRgsC7&&&gGA$(l`i4kETY0JhN)rxlx6nh*DDsq`oq%)6E1c3iDj6TX$j!QY8 zr~$);=M-1^OZ6Er>k1m;$o^9s|1$cfF@5LcomT|UP*FGKZXvHbZ$Id)zTS3+HAw67 zQatP5pF>tN7w;_LyGA9&xvpi|V)s7={xD#D)E0B_VUSLiQGps7iUP3E-AaQC;UW;J zY6xIa&3M*J2?s!21zs~a@Tmc%dQ}PtdDNB*g8(Q5NeJ%h6o3$5Z&IUG5LavxL{h>L zP+(z-3J#G20TkqIm?DA%K*AAWP<$QyH8>PNgV-x+40l}YB!msXDS%8W?)J^6p_~_!R=7v4m)Q3ZuLjVB5M%hjl2_n@d6J1hu zj~3Ujm8-lVF`1}RofgOn{v$NYd!Tj`-x5p{93)Z9=#Zb;drCCAzaBM3R$`%Q`4uhB zZ;@jGj#<<_FQhh`Q39_xxeH74Y!>Wbov^L&GsNgH}%TdXf>vaHHu@!W2W9E^qaCF z0SR*m_auUi?$tnKcorhx*9Se(aQs|j>q2wWlv46m7Kyr3NL=ucj3}QtFb#KFn0A*G1 z$L-j^6PwO{>8PqnCJEO<)dEJfBP_pw`UtZHq{^F>YdUKbp?7?Co@_Y>^hn7@m_e0 zu>O@!i4O1yyqJ$Bdy!YNUurTuC33dS5&i21S}(HyL!(sfw*#N*t<&*cKQ81R=argh z#0s84%v}1wtv3!g9E(l7k7U$z%&3YJFu46!wmf1dO3K1>C&?}(Y&^@oQ!|nHI*;%k zdxi3W=g03?8l4sA{W!I8yfvG%m+jeIYLKnp@8h?6j{=c@$ri$=W{9_mOuy~46Ix}~ zHhu4F@GI2Hq}eYI9;f>)s2alRi7bBUr=V#U3DB(y%BIa@#MEzQeusKo9JFuR-N)_O zelN@;PYj4K?@qRDAfH<;AT$jp0xB|5bt@mxta}>4J~t*;F^AP9m8Tkdrs6Vd%h5(= zZ#EADf|=0mK_IaG3Ss?(?OlvBW#? z4bq#Sqvz+0>Q z%PnKlLmRE;sy(K$$0tpiY;i|tEax{8gL#~oI*D5?h zuuwqN!>`@rBIXe*?yhDL$Z>j5Ly3OzRVMhzk*rrwdJ-1ExF{Za1p>s1n97osJbqh- zw7xAU#DW5TSwYx}q3n^ue%%-PosYb6m3msAk|@kNH*R~ZebQ(Q7h=i5UFAs-#}(rB zg~H4_ZcxBiPQa%Cb(OLf=BT1nsm$PvvBCcJq+piL_5TtgoNX)FcaowY=kByyuR@25 zx7<}0#G+ISu4(be!SfJ5;j(#32f8kg;-=}P%GUm&`v>cP{->xzJ zj34DySnEr@|Vb^2EpCT&?HgO&xkyphiZOX{NUQB-6>S8X#XrR*wp#xW1)kLk3)_7WN`C zGtIUb(#=nr!jg~6BxX51QzF00)$opdQWxS1#4=KPb@GN!!F87M!tnowjwV###kN*Q zjg*4H$CbAR>)V+0Fke#q*gyn45k&Gwndmn2m;$sxO|wpHJPwF}{~5udc`H7HmLDO^ z9VD19vSZCRr{p6H#RmurwRF~ss~f^>y6@?`S5+3Z6X7z=5>Z?j0{n0w7G7EIrnR!_ z%)*g}SNduQL#Cr#^(iN*f6$6Ehl(q`g~X6>)1KQ* zM-qakB`9!`!m99bbWv)sr%mZ7qBFgk4H1UV>mZUp;;v(8oX&}(9@x!7|KXon?+m6x7C7wVkXJ|If0!okAzCzqYP%!oQ&zH@N(~1#nTBqGVm2s z%I~_eM$|@XMU>n8c3Wy()u-nuv+u_<6bSGn2ep|lV!n;(P%p?>iXH?T`axUjD~WHy zYy_M8!s`_rx&jU6*4oHa>%;TI6v?l^5`A;@NXE2>%S?d#PhvdRB(E#tf6O2XB<3Zv zsEScGW9~N{b7Bv@0s{_Z{c*By{_w81^lZ&nJAVb1|IrQ8EgXx4l>_;__|UT8|0qGS zprav4?3z>cu93`$#cXr}3QsreIql^?GC4rswv;I>`81m8{m*2Gku{0K&qX%M)f?I^ z8Rk(RS^tYX?lJLgDbuz)4|g!_bGBTwVv~2_P<+>&;Y8X&?Gg&pY&b_g>Bo5WUtI<8 zeuK{N`0Av}IFo+RzzJErr-nYj+lU4QZ2VHgZ07&be_b+m=VuvZeNq<>N8^G1UkL(u9@#9|qw?m|YZ zSFMoUJ?Fhwr3sEQ2-Z&?Y^_P11~tsip@XPHNL56qTEnzBuMUfvSruTF|N-)l~DkRb9&{>Hr;)5=FQK2lA3$mU(Cp>aiS(ko?d zbS3|#jM{G;wp$L^qU)3T6%QGr%1zexc}3Y%lRii`#`8JWv)g%-<%*jk(HGBKGs{MMt(3UNt7jh?HPF|lRo(DGVhoiXcgZ}U$USuu5Tmi#2P4cTJ5_0#ZAaBTd766jjDJ&}30vuuX_A8c_(?9!@tQ>Iq6FT}V z85M}w7;4cV+Q{JxVjVX*);~KdKl>`X-*Sl{cYej`XI&sP$}&$)eHvmyE?o9=WX)wS0$<0Ts1ZnxFrxhvvk#tF>PBOv z_)l1k3>l%&%)4}%&&*LYGJ~C)4O1|P_G@X9lIfVAFFe6hp9Ok2By`|b{D1*94#wt3 zX042hV3LSVz&;jMvJ!^u>Y}n=D=-aO&J0boH9C}CQZ2RYJYS`4w~gysWir6EzP#Xk zXH3$M=polz?yUH)(miV2sAii^VOLWO%I7rXd-|@uEb^RK%t}N|Ufn@BHRaKvd>tk7 z8@YlQ=JUGOKhz{e4}L1JKatw;B9!OYv%TW6h*-P)(tvFP4KmZm`!FG_1irGt_&G8l zmk?;xB2an5DFysLk5)DAr+K>HI7|la>#`dbQ}ld+3oFzPdChR!oNjK`*;YLnHyim$ z*p-&KPHI=zFzxW@RmMPlu1nX9c@Y{MFe{ems@+I2L{;lgDtcPXWlU8Z^Imp%`>p58 z-$NzwB_GuJ(5m&$>My zz62q>o^uP!r)kcqTMQYkkg3SBzBUsizOY>;T+!!d?v$PS9l1oGbzDs_bQpv zUtzu6yR60sMu^OwBV~Bm!@WO!f5~`9Khj4_Lv?*^%P6WnQmK`f zUqu6@Zx)v~mHw2rsOxwT^jr4FU*Qrq z1X}X!BvZWUag=`!K03^tYDovh1ky;35q2q6YXup%B$q+0Ro%-X6y-*1rsDs)6@^3$ z1#P!cI#{y&R{ygKb2=+jjED^C5@Ep+cJZF;7BfF)lrqVL^zbnTtKm&#KlAU3>> zF$GDSFb|zS>C)(Xck-1ESoppYvr7s#wSBYL{;^dOCrz+Ok6!M5Zi~^Vf`|7R98#Dq!SIxhn(HBt>-ui81 zaDCLEIJ{u2BD{7%e1xjTNZi*mD;AGax?Y3j15B#s@?4S0G^b9y@3MO0txQzXlKan>j)|EC{lDDu_vNiJl+b{!xq@}a_s{YiG*hcZz zW|X)~cIm)VNb)&~@c-HE|Nm~9#t1nY9>r2OOZ)S8%-6N|>)DSI1AwghawazOU3uRS z74G4!e`W*?wGXIC?*gq(MAq+;l%e?tT3~14m3ZL7o# zzuo1r(R*<8SkPgUyXn~{aR}R;Uj|A?0dcQVDDqE4B!YLU} zUEq7lJxD1+k5bz+~eYkvgV42%rb`d-{X`eJ7z7(DMMX*-98pg->q8td@pYO_5=b&;!H zbKg$Zi*h><8=OmZ4h4WuoRAL$-AEF2oiW9<5=fDH*+@N-Q2*@N=Y~fV(nqS!#0C=| z9%(=<_u}*@KHE@aX&t3JHHt{DcD~yO0Dq%UbmGq}(kknsKOa#r@4$zF!@C!Nr^wcBhFg{q9!)XhDXk`x|*e{su#n zzcJVM{Shw}6MUUvZK5foetRuj!u5NDc++i}ADP?+6hp{oXEeD04w>`=f@8S2pj z^XOk)`Ce{5=wHf$8!auq8$jT&MU?-&oZWjV;m>Ei57<)A&~GK?JCgELPS+q1U^^Rb zof+;uRwipPvZVkn6X^=7F>G|*gm^GvGB_a~En(ii9m_auCH~QI`yE{2ls{2V^ha)1 zg7L>2c@hwAmiGdeG7x{mtd(G@IRQ-3?q6t_h8KVpR|KUwM?T*pWufmh{6Y18x-JoF zZAYH(@6q$*MOVo;Vh;rrdYK6D(}Y?&VXoJk5xfkp^GWzT?>XDfN-)*iww^<6GSA3n z%G*Ohun02aAO2ZzkK%omQGsFZoS>R)Qe@^@eE{pta6i*R$M-3{s&WZ%c!4?q{GbR? z|A%_5Y5p*GL&CD~FN3ew=2JgD{M`FU-i4l2OG`tRWz2_AdJ1F=Hw5@312OVt+lR2| zF`XZ5=KtyPA3xFGKYZbgTz`w*9B-?#DT$LVFs!p3i?XhG{S?302aA0)$N(&aLv}xM zHtu)&X%ybG*@zeqnr~XtZBtit(>pLk`4sO=4>BIk?M;Y7s%9Rk3U(vN;qdDP0AS7q zQaq2#s&`*hIxd54BE%$FA=aby*+n*#KYA-+edsN4h3$SRz znV#RfiQ81kz6k*NF^DGq`M0veiwppuogd&~`0uVU1r`8IQ(b?nA6z%~@FM^O)ON^W l1fI3OweVf({~j%Umrg=~*>rKXhF6zV6dx*-KX@Ga{{ffGNU;C_ literal 0 HcmV?d00001 From 4de607c1580056a6d043e93d0266c867ef3e92cc Mon Sep 17 00:00:00 2001 From: Alice Barthel Date: Thu, 12 Sep 2024 09:23:20 -0500 Subject: [PATCH 13/13] added doc task --- docs/users_guide/analysis_tasks.rst | 1 + docs/users_guide/tasks/osnapTransects.rst | 3 +-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/users_guide/analysis_tasks.rst b/docs/users_guide/analysis_tasks.rst index 60e1bfb2a..31887c99e 100644 --- a/docs/users_guide/analysis_tasks.rst +++ b/docs/users_guide/analysis_tasks.rst @@ -34,6 +34,7 @@ Analysis Tasks tasks/meridionalHeatTransport tasks/streamfunctionMOC tasks/indexNino34 + tasks/osnapTransects tasks/woceTransects tasks/soseTransects tasks/geojsonTransects diff --git a/docs/users_guide/tasks/osnapTransects.rst b/docs/users_guide/tasks/osnapTransects.rst index 07eb729ab..843c5b89f 100644 --- a/docs/users_guide/tasks/osnapTransects.rst +++ b/docs/users_guide/tasks/osnapTransects.rst @@ -20,8 +20,7 @@ The following configuration options are available for this task:: [osnapTransects] ## options related to plotting model vs. OSNAP transects. - # Times for comparison times (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, - # Nov, Dec, JFM, AMJ, JAS, OND, ANN) + # Times for comparison times (JFM, JAS, ANN) seasons = ['ANN'] # The approximate horizontal resolution (in km) of each transect. Latitude/