From 035554b111bb0220f9e7c94472593e877dc53ab9 Mon Sep 17 00:00:00 2001 From: Mayank Chetan Date: Tue, 16 Jul 2024 14:34:35 +0000 Subject: [PATCH 01/11] Working nacelle drag model with z-axis included --- docs/OtherSupporting/OutListParameters.xlsx | Bin 617007 -> 617476 bytes modules/aerodyn/src/AeroDyn.f90 | 124 +++++++++++- modules/aerodyn/src/AeroDyn_IO.f90 | 71 ++++++- modules/aerodyn/src/AeroDyn_IO_Params.f90 | 213 +++++++++++--------- modules/aerodyn/src/AeroDyn_Registry.txt | 12 ++ modules/aerodyn/src/AeroDyn_Types.f90 | 104 ++++++++++ 6 files changed, 421 insertions(+), 103 deletions(-) diff --git a/docs/OtherSupporting/OutListParameters.xlsx b/docs/OtherSupporting/OutListParameters.xlsx index 2ece7d48db0d0d02bfdaf506facf4b3b36315aa4..20c6204683f3f1d9d77d266d925f082da4cf4923 100644 GIT binary patch delta 138869 zcmbrjby!tj*EUM0gh(wwxpano`3c=u6xv+V~#o3yyvbSVT<_9_8yY}e}0DMJ03O~ntIYL0&39A z{f{zvh?V12_*h@X!`8V_3f(W%?j|rt{Y3pgRL<|C`DrKQx}PwXpUxb`b@2aQnw_o1tTpNh$YkxDPUG3A8!Zz#3oF6JZ!PMZt~%nOB|U<2!Xg(EW- z7nc)D>ANeylR+9z&c3`>(#LBo`s{>Y;=*3$eHHY3USGXJ zb!no`Ebdjvd{-*o)nYUmSYR}5nd+_3Y93Mq_@+Tiod#<#qwf(n>~wqB9=%*}Tl{=INhL zmPWs?e#Q)s*9cvDo()Kd}x;Qxb1y!3_fp|@Mi@GY9*^0XlpOtcl@Np!EW{~*3 z?f1qG6oXNs0h~;JZ{)tpJj;)NGx+Sj4*E%GO6G+enNB{i{G2kr!_1SGZUM&47$~d( zKLiq~v9VU>)I8L(Wi!LYHI-8m;ukoqtI*}THm^`S9X>jJiDbd#gqr^KdFHuR z3J`_C=cy#oPyH#+G0w%;?lVUj+Y^1eDtvosA-hjM^$sUyz;T9|8uEa_ zj_3F9eEcw9SL9P@c!Y^{cCqDq=v!IZiu$Ab#Kh6`2b#{|)AeV0IBis`G|!wqrG9dt zjjbv<@`&)S>cqM4!1u#lO+8j*M533L0#oUB*+%yIq*C@QCrbuCIZQHIAXl~gYwnu{ zVub2(d1QFeJW+Vc=d;wh0Zh;=^7}gJT$G1tA92IVTQA%Et}w0+J#+)pWNq~KqC9Da zwUjV}L>VSG?A@3}7X{scA&0!b&xxjRXZ2iUSye^7IY0c&BcKER!smKc=h8m;7$};+ zWVDk$4=p&z=#C386(#@R{ji{6xVYjWZ&yP2ppL{G;}sBI{J?dXPWK5Y^Ycy5i-Hhj z$svRNn0*R(xboKS&la2Ro3?Q>`MvZaSF*dCD6Kl5Zbzp1KyCpOoj)>V3DR`G__Wu# zb_6wZ3QxC>AM^V#cmMsuGD!Gjj4p1$n$-L=X7{7Y+-=1U;pc;673=44Moqk zO#Yq1{mmb8DvT!wjz2jEe!+eP=K>2IG7B6X?g2HsXH=TH@XEMym*wnDLFP2_P8!qS#r}}0NlV5M+bky#)c5k#D#=;pf1y&Bc5?fa&DwqX9cKTp znLHdfbXQLNcTR26cB$H9n%NrfS%r|!McG-$_*aw#3A@bppBpLohVThM(KsdHGq5@E zDB{FMs3y&w>}31_aXyTj zzL~AcsdV(`X@}GKe0!vBequiA@VqUIe5>e-i5)J(QPzyG`rs;z`V-kJWsKH`hP`^a z66N8uQ-04s6-YX|q<>HnQaC41HLCMlM^bD3QF(r1m0;U~wV;ytnQ5R_*!RdoA*N*d z){|=WB>py;v?JNL7WhFirjX?w%?RJ_-*RM|e-R#wXDEgS-4A%l5ugv-C)Y3hJ4pnz z)@YUlb;@T9B3P>uC*VQC_x!hcl$I|)y!$|}5Yyi*aBE&cFagWB8IOaxaM^@bu_M=w4U7MhFokpXEel3`apT8&ipA$F zO0E64=$by{Sp3ucFICNAztU}M;zy6iV7!uD{dN~i_=gT@u1hb^JJ5}b^CzP;PVQek z5oUPdI5s+UQAmVhPcmBe_=lq3>fvaGtW`?N<+nZM85wbdo{eC&>r~^_Iid4-J6roC zmTD{8e9kQ8q-WY0x`$CIicYAJ!Nhg&d9-kFY`=q4AjvO6cvqWLSY7;guCG@eVV+QO zgBdn@)X=y%-g_-xJUZ|zy30_f2y>{L{&Wxp7BzFUThyD7*&S1NuAra%k8l0xH~a7m zO^(%TFg~$;?*0@GQC1QKp78Hb))~*ww>y`L##rPF^s&%t{wV74uLNOBldY8d&-VRt z#>UE5RKNDQ`$t#3L7rm3w)W z^Ug?2%j>g8Oyj=b46uQRy(;QtSmCG~beYK{Xy+{-+;r*>ho!4%@ zdxBy1*@g$8sS^tW(`!a6QYR<5#8(CpdfMe}tS1YZfPk zX!mD|Yj4;1r3Z+r8*cD_^!de3mLl^~6zA;ONIzOU#Y;n~+EG=Fs+NWrEE=Z?#$~}g z55o#~uJ7J%tG*o)GzW$H~Uq%F1U!%@VuEL@L$~Or#3Shx@c`aWhUt6r0vf7%-&?vmo^02k*DUU4IZ1l>us&G&W8{L7 zw^zmZ-dFJ#nhCano`3nSba3ITHQBt%ZbexG%LqF(f$<#8f(eQH_bQO@%s(aF5osda zdffbr1!uy~HI#f~cj52M#>Uxx|5^Xw6zI6K)SuQ;+4lMd+!@|!w!%`|#>najME^5-gaXv^vQaI}qvQ35O8KqWR4K%1q zrNKhklpQow#(w!IP}8*H^s48II(QTrnhJm~asnvQH8CrilUzDkWB0TLehg=8uX<6J zS7Aq+eGwuvosbh0{FWb5OPM7y#43f$@iyeQ_nj)+=;uWa5mSMjY>8C96^4%WF8tdT znGZC5Xh8hSpK{bvSFDNT=JyJmXc} zjiO+4<{A4byS20Cbj(I?kuHhb9Ptx{=WE7|O1gKh^yJ_o z7o6MfZDCh?I;#kqQLr21q~3ml4Vw@=6!yRU*`IQ$*W3K8uzp+m-7j8+Oq7O+{+Ss+ zojX1yvvOug6-`_;OG4+AkBevhzRyIo7!&O$-{2gbP9YpMPf|g60LIfbd z<6|{Hqq+iTezhddmllsP7Y1tQ9;Ddk-lg^@E4=D%H_i_8u`c{MYmR<08|U+G_6L>S z{f^&XhWrOdZvQ-B9wN@Xwc+`0;Vt#%(xvpix6ixYHsVoK!FH4s8XDTw)y>bltntK6 z#TpAR(nnHST>85!>p-(-sekqc_)_u5NI+wQ-GHIm=^1SpmL^84ku6T=XAYWI9B9?X zF_U;CuP^$oz^na1&^6?0Y`g7ZZxB4s$+PSdTUgl%k2oy1pMV&OQtfF5UP8GvdKwp{?rZYVVGf*=Yeb{_T~>&A_r{GMCtn8} zgX|wF?MOaN+a6x3c)(;u!k^`^bUaF{x=h=uSFryw2Ur%X3~D_~lW9d_`WHYJxP2*_ zi}WO7EqS)Bb73&ind7%Mt*A+&{-+E-2Za{rFFDPK(nq&?!J2{>Y{o=Jv{`EBaf4sL z?ZXGWR8)1Nxh8)vImMccnN#g#cy}N2rk0&?yBt1{BbInfz7XYBGL~LNOifJBRPjuI z-rk)1;ni9FYoK^uDf038Pwnbt^`cYDc(r||oVc?_88D&yhRscTwYGg)bXvBBOO^q2>` zQg(lrPOZ|shgk)fFT0~n!IP3p%dy?ad*|A>YJJ-5X`zV3Q}?q~vgL9W1LUSkH}((J zFQf+EaRlSEy`*qR8I4Kpsa=-Sgr8Q=HxbcX+BMgNVnTaQf4=6fh^u=T>xPJ=- ziyru4XMU`nHSzj-oPE4-_r1h$ApRQ`Gm)C4{mi4+x0I^nf9aRQ*a@%7hj56LG(%#f z$JHYo@%E|*#TrW%CuA-1!E}<7BN?UZG^`ScuI3KLE4fIS%U$fFH=0fItfSnC#g~yG z(Df+kP>b)@p1Usf;^kM!*?X9c8!R`ZFc@UZ2_E8iyy}|BcBEcx#T08cpARnQ)zKb^ zKA*@N`{+8fV|XEy@a(B(;^vNLS&%CGQ>Qe%UEdFm;W#J9xLcIr=M`e+yk$5Wi7~0m za+d>rgYtDUT|wtOWH={|+KuL-If*gJ>5Gw918(6_Cq4UU-api{adY46@`1ZBykx!F zDf@xw$t0;}j6S@-NI9v3}m^Bkm22DFOI%X6N4EBOOF$7i? z&usUZj!Jg-*`NkIF4@)c#4|lH*}0$P$jny004qy+rQ!g*u1$ETM+$m~~+yQETBi?r(p|aV5ZZ>W*Ph|ItVlT6DgJ84>;-XDR4w zN1G!zB>2`lMmkek;`>62V|bKG|4;PdLdrew+dKWw@5 zB%Uf7{_!%S|1v>YrneAM7Z?6I-HHsj*uKxWkJ4?^%gK zEv3SD5q>NDJp2|fuF8f4Tief{iM^G}a;L*9R#<=Dhx|zjIGq}7lKuUy&3|(?F%|d(!&JAB8(^ZYGGw1mg)Vh7BNd6VXbUV?`V4Uf@RAnrp}%= zgaHc?4{rgviVyQ1$*yR~tYih<*WjVaD1f!87SR|KL>%#7-rT~2wpTn~YQ9G-`%i9M}T5~0aGx*~F+c7a6YtKgZ{$z+W z=t`~C@ktcs%8W0Qa;i_q=s`)sv*PHPber#N1n^>~e&khv!Kp3@<~4@NU9!FT(~Ky=XXB{)??%?tmEA(+3qMYeVF%6k#LgvJY>>?>NYh)sijQ;BN&cA~;(2ZVE2IGiucAMgETgGi`z(rvMkzfPqWpITc7K6YBel*?Djz$1z>= zP8RKc_>DnLWRAP*cX9LAwTVTOq=oZ^L^O*mv2o85RT#*}pBKs`oP?|l&{4KlE^-h) zBj2V|_ys+J7m~!f$PefCq=c+3n}7M$2Ud5_$db-x74-ahNR%Xb9!H!#{UV&XU#saP z{tkyg_ZSXQNX>cQ<$Wx!X}HKmR&lN)_u6&-y7HX9{`CQj&nY|(MT{Mvh(s?TrR^}T z!XswK()iQZp{IHG&Wu{dGZb}Qpv7?u*JRa*-Q@r9;PY8-k0L9P^H4yBsUUdbLV1?U zG;JC6|Bj;VXW2ialQH zxr@rzO4UN+A4fm&T#cpvk}j7R*OTHrUnv!6tafy20(J8HptB9eTT{|kOtc@TMSO5#VuEG6^+bix-6|cI?y+c zb$8n`rU5#juB^lP74GulgE2odP4fF{d2}2GqRA0gcip>!=0gbZI}c)rQzJgB6cv&2 z={Tw-Ys{4`Q7ySZ*PTYIa(tW6fLFTVXR0ZIDQv2hC-M1PMmcrYQN3`kRi@XfpcFQz zYZdQ|hj};q!+U?naik6f_=r=nMr3{!aWnRlefbrn4Cbuw-5oQj+j$uu6Lsj)^*LA! z!<>u^*D+PSSsr=cfJp&;0bxeFtex76gNHfd^@etGOwa(|B!#nKSuVCIs2h>b^Qw{W z5NR(K7VydwO3Y!IKbcY$c!nYZ! zf8Y|14Y&36;m_5eKhM_Z8ri48o^f3r$P1@*g;S`p+SbIuAb&EQgzIL8^~do2zDkLS z-4aoAGDW&Yi*ms_ZXGx9y6Pvd3Ox4%P247G?}FuBY)l@yZZWdf=JXP$!ObV}(DbnD zZHN(V1lEL5b-xGEP8u=1pOeh~C+#op>km#FHA&}eS$4tXZ0m4LDrW=5_m3y|of@>u zcaHjq{znbB(0JB=&LI@MDO&m=Jy+MjRBNhoL;1-Y$?5Zk<`?@P19ufY-oNHFH^_l| zyDJUz-G-0)8mM|)8v9JUECiieb|O~9E`v%cbWaQC$q=>gbsJ}Iw_UxFT)1#5=KWr> z9ZC0v>(tvoHK$4Cj@b)?8MV)omwE(kR=ML}P7Yc!3xuCZDS<;jTG;wkM~}!<8m`_H zZcpTQN)B?aKeZguq1$Yj$o}h>m$~&<`IK>UUJ}+Vsti%_X>9p+?twsJw1Rt$yV~*a2CK#FwC{JFG*eD*osz^74CnlH zeUuOCO2ZV0x_$TESGZO%K?q?^d~?+c!rrqnv0E%#HeB>@lE?fK2aNjy zQI;h=U}wYh;Am96*u16XPLGu|9lR+i%WpA^NTxn7t)=J0bkSST`bn-rC&S6(Se?X~kWvTpl^PvlH`ZO>fD?Xm7foZVr^w%7v& zvr;*K>%Y`$KVDQ>?5$V2?g!?*_My;eXDwqI@A0HQwWlPt{v`-vzuOUcN0ChgK|~lw z`FlN=(unW)SK++=Wd1QYIprT1sih8B_X;zdK~Esyw*O)>eScs>8U_(93=CH z+pl404p!NG8~UlAof9;nZ~d7xF%>^(&lzp2_UT@`%DnQP!b5-SP12`jg+60ZMC_a^ z>v@VcpMz8S!p+1IgA@8N37^Nel#1{8;K}iEzvf{KJ>yBh^-bZmJb1^f2*OEPZ!!7b z_MhF=9vJ0)`Ht~T;NG(#4tn{!DyB;!n;X9AAHS4SZ#T?T1sWVtd&P(p3#mY_n_7xPM|)KnV(T| zd<(bQ6e>CY)h&q;=Z8`B`qSo3Qup}1@GLn5iqLI7w^$}6mXtN?@8)}`!R7wRXy@vW z9YPcqcrm;Y$KXN2Oww5Lw%Ha+o7yE&+Wc|bZ(QGcQhNZr5C>;1OZJ`zYWv4aXe_bS z;wGm)IN(nfO2wIdKSBO&=B(OF*|O_-AgO=6xW-bEs?f`^PQR@@OR-e87z%0;tSyvU zwVlO0y*xdu)&TLvBkM!bMydqd zrzAG3OMh`XpZ~M+lOB~$-zX0!jiw~MKmgih8OJ_9E_&@2p_!me=Oxt^!zjKaERsC* zmr5KQ60y!Ejhgl)HMCwM^?ntyp|W)1Hoj#WZeo7?3)&o`l{8`zyK-90gYN0ntq1zm zS!yVZe=;2suQgGa2-(85n6(~}R{)?p zaSt}MMCU~t_-2-@Z?v8A14pgn3dTM?xz1AJ`$@ z!be=A$oLlZr7$@;7!}A;P0%U5(hlPaEFWX9l^SvGhK4(M)DfLm0u6=BM3&kkhi$Lt zm}%U1G>s|l@&hJeB>(l6sAUr0MyWwdzSkV>Jls=3u5RQ;V-$h0rLu&wJqXF^B$%Yd zINH-Ax!H?y8PWPb4W7K_4_S5Ou5RFyNfoc`+po_8=Mt2d2iKM?s1Wld*_-sbpPC}s z3KgV$SoZ>?N-dy+>fH2iy!gN(*O3YHYZr#$UWTW8UsnS?L(@Z4L z24nujwlI&TC)sn-)CrNgh!=Uz-;-Hr>iNwEbevL2&F05tda`x&eac%V_?1!3KCZ&; zzwaLt3zQ%bW%Fta3H%}7Y%H>lt8kXsk*Ud>7cx2z+wUGw6>4(de=9m-_7LZ;eEN12 zenFL<%g{Z=U!?6~BRWi|2cy5f^4Xl1hRg30V#}>_w;0y!;w#+V;cvq!`^jTozN~M1 zMG8*yE>_StVTJtX3vAoP@cKi6(6nAbauI2?9c|gjk+Pw5^}7U>KzkQmrWG%_qJ;rf z9d4ot78*%8p)P~oQ&&3jub3ov;HK_O5Amw?JFA;C+ive@OG2JK>E(44fUN!^UY_2T zE&iMZSU>eKN>>w0BZUiV%BV>Mtn$#KmRO(dAmv`W{6w5hGDN2Oos=Lb1tuRkP1>u& z_vZv_lcsYsudwRx`+HYtgauVPXhA75^1fA_f=fE1!8tKFyz)n zMQ{_N=ok+^y^_3LMy9t=%`b`2_G<4*k`lCxeO+ zb6u-9rnW3PVP$gnqqr)`qmrT{e~MBBm4+|M>Yoh z;7)r$WhnTrN{fRNu{f>M)aP5`%+}Gko{4C)wad#xYRm@8;5~t)(spFtFGEszjPaT$ z)84gmgzlpXt238^4;e+8*vKCuG|AidEFQ?ZkwK+TXZac9y&kRL$+Avjy{*0R3=WSC z)sX1X!U!Eq&tRFjR?e@bjTo3kPN^dMGc?!^8nVpU&`x<2qFc$zxaAW*$bb1xHvJ6o z^9w2m+@Bl7lJXQy!X1tZV$mPX`y?-LA$Q^ZZMEWS`pCl%b?@3mn2W2WyalyZex+|U z)e^C@G6tuYs1;e+3f#ter>?GaY{zh~{_PNl%A|y|0)j6IeSH=6YUN9$j zx87;`h)=7vTF&H|jdoo7hCV>6ko%#+@*Rp#S`PR$L2UB{TBjksAja&VZlJAR!e#__ zO>XH>_+xhBFpJEqt$tR@kJ@PGCb6%-aSyLiaY_2*58c)L9V`0@t@p*XQ}C){0=I!6 zF-Tm%QS$G%MRpisHkN~IBEIj?4A#1$W9^X`@W2374|^O<{lZ2jQ4i$PwJ zo>Nu+;x9k<5}%>UuYLTXPulyZHW;Txn;eRI;hT7Q5u1tUt%LTYous zk>qTi4P{kd*)tz|=`&1CBpj%5*V}AmTl(3BSMYv+-D(tk?F!!biWIO%$0k*LILsOT zaqaH9uzJ?Q(6mpaG*dm0S266H!`%==W2r$;0j&KrpHa`mIkIP{$NqXVaEL{r5Gypi zx+=w1`KPidoVg>~OoRt<$QphTM6v88=%>tT%Jq^o6uz$Ro9Arbn#{3Kv@*rydX;@H z0+v^cjlmD@Bxj|^ach>4WZ$+a*XuJqt93qYm5ZB43u)vII^yCUrK9HdaQYRW(8^u0 zla)fWb!b0!pnys+igdW#a_P1Yc))G2T-sZ~%o1#1=#g*MdS-2S+de`8B}3Ov;zl8O zntM9Dmii4fT1lh;(lMX!P2qluO=~Tc1fR1U*XlD&nt29xHGS}fSBrBrcua#%$DbHd zNT08=e2Ojd{_0~-d%k{F{N}EO-jPpX=_0)^BEjOzrJkh!2l~IArzQq!j;{;fzjfEf z>y>-*&SgVIM=3Gdzcnr)8WEso5^9x1@$FCDhmI7iFE1EvUQcLX(1$}s9A#udvOB>3Al8FAxJ?X61W67sFu4f^X9GqaG zpy5NIHvX%Y(Cf9h{{Yh`f+flRs%PMqOFFmfh=LErnHK(0NLLB3OIma5V!TD93T34A=uKHpR$5#(#v?_x6c!UK zB0Y2LjAS78vM9JkT!4}oH{dDy(#XybTf}$Z{@~V4Q8XW&muc1Ij=seIe7tGHu~6i) z@lopIn8+nU!j`0^z7KL*eS;%k^upNI2=q8rBPk}G^WSdJEA6d%yml{`$$z~*`N*`U zB6QJl`;9(P^d>jNx7{X+4pPUg$4KDoJkzWrY8?N99+z(Nr{tD~-V~Tg5~C48z4;bTIOnK1a_Tq;2C$oqCUt#u);lMM`bDwfNMp1k{$$*7 zy_QD?4eR3uaX^5se~5twbwHwfD}qCO8y1&+#JI=k|57#8Ex?E3Ng~LRuyQ0v*eloK zvt%YDyGNrq8Qv4V=*Z4z@No?a@ScM}?ZflHHvd4X<;K)9s4vmBWR_$O^{X}PW@;;_ z9~?mSI1meW?F_h|)omV3m8|4LaoT*nH+kP0-HbuS(r7udg}TsE&4=P%n~yIoC8Bo* z@1|3~CxdUr5l=EhrlHo*J=CgzI&g`~J!%udO_F_N;zKd@QJ^+D;ICsAW-+PFs@-+1 z3`2G;l_ADD>rXOCP-Zm1hK?6O1l=W#Wpnn)UV)>_yPKhF9p>E|~ zlVXOB7-*k#WEEBTyu2IHFBu+4<{!cWg&1)*3hCNxZ;1kLLkC5*#Mn+ZuR#-2;ESKV z;jiWW=KX2E^0yE(4_1#(>r#tD&qeJLqUNkgQgv2wbM$l^HxE9o%$wNr8l28}m|2)( zg_}xgiK7y!FM`afE=tbdL^Y7kc-wU41hg58-I9nAch{01D_nHs<{R}JF*c0591j1X zKn*>6fUaq3mQVK>;~EFkd&9-l#wr6Wsji7NM+Vl|tk3O6s$|?70_QxKY}DZNjr}W$ z1Vr2>l(4o`7EiwXfvN-@v$QZylXW!-`JxQBfGDabt) z*JOhjb#I@>;ND~MBWO2AuhMMtfY)zHH`)6zgeLOezC;FS$tzKd7wKYz<9Y^r(y)W(1VgCI`EH$6E zTq^tC)cR|29`a)z62hixM=ht1BQFk{FqLAgLwU$PZ;K#yXE;acAAIMLD_Yg$)rID=fT*%dS(_m@?e zt;z#oM)EsJNh2}?Yfl*#ZEiT--h1T|V%X@7RZp=V-(F>DhYa(kz?#zCNlwG2 z210*B&K;9%3U900Y4SeOW9GqFnn{+iYGHA~rb;t0G? zb1LiQ%gaqqqnf#)GFIQ@wX6g09?L{rNU|c*GJf85?J2pb5!|YFyUg-Ab51NxGh?SE zaUw)Urv{_Mx&N6Dg7vz9lB9VJmJsa~8bjzVYTeYR@tq{K!K;4Q$9V(j!zHD*rwV<<7hF#tcNs%Lz8zslALOl2K!nG4Q7eI4MLqVM z>o6zLqR&n#hqtPFtP3ozYJKRZ=0PB3VQ^1?E}2tN;~$fQmZvk`9+JT`n2H|df7i<2 zNG3Zbt)-SW&PiMT%9gnJ5XERVt-i?*}1*q@<}+S)hbxp0}Ffw&KCrVC5FVzXXHY2_SxE;4?1n7 z*0@%!7X+%MaI-61lAmdDonJ!R*lX>Ker{)RY+Ul1bNsj_lD72j!;Pk#=OK>^UhJ=( zWrMLS$6m{OtJALvtprkqu1jdl?|VI1{j_6Zg32JjLO0? z|6!!>6<6fU7zl3?mO9Np?a7g~^t-OIV;8i9<<+q4ogL>>(S9n1;QZ6}9*pdBxPht_ z(xxW!0TV>kiux}~$U}k;*3_-kt@N!nBs~Z&c}8(HDWSi~-fm=sTF499?<&0H{ocVx ze?YFJb*((|fvEN9n6X*U>R9@vWyuLdppf7SZJea|$qfanse8bb5qs;{0F3;RdLe#f zfAm%T;cjk;@X)!nzRXN;O9RU_htg<&$b7kVW^#GWBDYDe|3iA+u8^Ok_G{j6$b>9{X7iNWwCI> zR@R52{ra7sLnp1=oqXIt9pYtkRHZIW{6YuJsNO1!Mxzf(y-BR<>?C?Y01L?g6``Y0 zdc4IK**|>zE=vu5B$Hi-95q?@6*Q6}2fj|*Y(Dyahd&a;o9uUn?l?S!m<3`J+AE*< zbd>4qrNS0fNZ3!^*l!3(FN>DtZbx*!sWOYKZ@talmXVFp7}i$D2(!f)S4~CQb&?r4 zbai8@#G4w&8N`{rW_E6Wl@A&BHNlMz@_f_Pd&I}u5qYUG7Bv+^*R$F={9y-&4S^HBaDd=hDgF~A@#2Fa zs_W~hagRVYJ~Vz?f6>UWR_G;~<+Z$JdA6Rd(F1h7=lloE&_(YtQ$^i%VCX&wv5|6Y z$KggXZ`v9CnSv6ZazDsCZ4jagXlb3s>QL46;&cs|imOPDzGl(CtPT zLhG^(y?X1QP$?X?rs!H1JY`D76ukk4gLV0*6Q$>QQcv=*CH5+fdxn?rPYg?kaFqy7 z50n0=8F&Y@QY`FoY{W*Ud1&?|J!X2ENsVI_%Cix>WqSbz=r!ez*H%%V;D)|@NhMl6 zlWu+sJpUZ;g<-REjN5$+4K07z;AM8;m!5M3&V50az7bx)nCEj6r04IF!=Wq>Vq90g zjQ-e?a8f})c+$Vf?x&|;Q$6k@Yjc3zlNd7V?XgG#FI{_ejyXi0Q?-B%#_r(8b4lVA z@JXi}V}ju?z3mF@pF9u%4NTC{O!`zbDQik>(4;HcAouh|=fP1BjlTDazgI{AOkYWA zdBkq5d;6?ye-GzTKQN3=?pXgUVT4(-3f@~`ZP(VpY5N)e7v^P;_{^5tL;noU0- z%$0p$F|~SP;*EB`+jez2CUyDb=rwrRy)8ooMl&=il1EoMA6>zBSFX+(c9oB#pJeop z7b45jLN*RN#l+}DUGk|e9kx8)Z*@{iNq!WeTL*O~CAs2Sl}&W_x-S@b$FIaLcYjKO z7e09=mg{-6?Da9R;k)kVvfOaY!7zi?%!%s-O?}DYqT4Dn}B$p2sHv z+O{X5Lf5Hl84lkc#Eo%PI_D~GWTepOT3swl=a2&c!bX@!P4&eVz1pim#_c+AA+B;~3 zjWKbZXRV3o-i3w3;Qv(+NBB1yF72!}CY?)YI1&6kI`O0Sj(-7y{}TNV&}`P4kj^D6 z{673WHgSD>2c__D4BY=BxEUIL7ycfT*r&aNSok+OuGp+KF5Q0v!GDSV&mf$bE)x@X zrM*K0{%?s??H$-~I69p<8t#9H;D0Co7estIa}3JQ8_|i~Lc?kQ&th1( z+3YN(a3eOc+rJQt`pDpLLb^!|+y;@W9zwdf~?ZNd*5JT=wf0-6SUNQG16398U7D#2qv`aWq_#_6|(= z|52=4MHBWzBc=}x$DN%;|6fI=+1cB|eptlxVd3C^C;!()4C3t2aE{qod||);pCWkU zXFod&2>am>XNQIVTOvBKWoS6n>@2ph-~Xiu{!3${*;xu9BuGJVqmy3=Joloy8RXPZ9j@+*1ZLs5H%0|45?va0748v ziUBAw045F~!~vu@fD#8_5&%L1KuQ282>>PuAS3~#B!H3xU{U}=3P4H$C@BCY4Irce zq%?q%24FG(LIyy}04Ny%CJP{B0i-N|k_BLL074Ex$^j@j045KB2zdZ051`}$m;!)M z0FVj*N&$c=0tiI_sR*DH0hkhiPy&!j07?mfDFX;)0I3Y1lmVCufKUODDga6afT;oq zRRF09pi}{v8h}s(kZJ%*4S=Zw2z3Cd4xrQlmH{c!0A>In3;?77fHDAJh5*74KpFxlLjYz3AdCQ{5r8rRV8#H#7(f~WC}RL- z0w7F40BHiCOaPcEfG`D+rU1$mfSCaZGXQA@pv(Z6Ie;(+kmdl&9DrE>2nzsd0iY}Z zm?eO)1dx^h$`XKC0SGGqX$7FH0GKs^um+IU0LmJG*#HO|0BHlDYyj9}0Pz?=J_b;a z0oW4&@dQ9V0Z>l>5M~P?YyqS#fU*T(b^yW-K-vK)I{@|+Ks*JIPXW|Z0A>#$>;a@b zfU*Z*4gkUdKso>@2LR>>ARGatBY<)QU`_zS2|zjlC?^2s3?Q5Vq%(kW24F4#!UaIO z04Ns#<_aKO0i-K{as^;+0KyGGf^GoH4S=}=2zLPK4xrot7#u*r0VEti!2y^Dfbam2 z9stS%fO!H4PXOr&pgaMX7l7~rkX``F3xIh82yX!C4WPUM7y>{b03-rHApn>Ufbap3 zJ^;!GfcXLlUjXR~pnL(CAAs-!kbVHl4}kfD0Ky+Y`U5C`02Tls0sv$HfC>O$fdC>9 zKn4P+KmZm5Ac6p75P%8-V8H+)7(fOCs9*pVGESubIL@>!E}$(gy)CY(E$&ZS+-X}J zO?#YZdz@)|TtItVdV5?`d)%M)xYPDHnvOWpjyThfxPXqh^p3cuj<`P^VBBd(98G7O zXy-R%1QAhoF|PfmtL-x>A2Xe!L$ENomg74co4%x2;KEi?-cH%8?$O6=I5Fgkv@uUb zO6oXhw+h#95zF>|D*?DmFSR*yPv!DL)=47yDy7KFOCTT{0(>A~xJ-(i`x?lE05=Gz zfq?SjOHi9L9YUT$NaD3gF=Uc*464wR>TGxI9HwL>mu-G*`s(B4p-oR@&u*i+|4g69MypA^q#cRKbH+^kE zDRga7q;c(NbL05y28Lb3Y&WpX4gCEEet2W8er?V4v-^u^F&!jP+!%CS8yNCm8=%y# z4N$t*`99siyw@;@xWPwn@Y)-k=f+(1+8jCD{pE4db-c10gVJk*6s~Ing&TvI8#wm{ z=D3Exs9gIw-oR=94{Ki?P}P?GZ-OA*-AGA`G>CwJG!oKCqrjyu4M#u;LFq055v04j zyQCXQxxl46e&_Pun|U+y-prf%{{Df(>h)P`?|tssn{%(p^w-idl!R}>?9ll9@vjAh zuLV9v@BtuvGzf`EX@nyAHT^w8ag+){#=j5CY535ahyZ^6P6d34&~LO%A;#8zRU60g;DJ4m+YP)Cmz1rIH9mlWPeLgoHXi zg3NPGmb@k_UXyXJr6my3^w(smYce+2Wi;1ahJ_Hgdo6IHgos}VArOUuAioz!=uIg7 z06_YqYdYGs_%*%qTKpl{73z$LE@MInjG`a})Se;~KVAz^Uz3p$YNa2UpKp-0Fn@L@0CT;j-M!Yj3P(V2MF+~3 ziXudp6%nZ%?b#M?Fd$;vM+iinBLwbV3sfQm5QFw6vh8g|^?o3Q;2@K=pkLRM^vQEF z8!XkUCi*=cK}Ph#UpDkF3Y3JP7o&e6|5HGK|363cCmJGb zV7Oqy|9e3HOz~*0-|@rq(6T65I!^YJhG`m$h4?;s?jx%P6wJ7r0G&;fkLeAR zgzeA7PtC z5hhLDGG=;1=8MvgH{5UORHS!GiJ#ywl^jo^Q3c=`x?3TINT32dzi5#mY=k}y&hJI& zb%1&(U#y@c=u`oZe8;UbKx?AWCx(weGp0cZ(?-&u$swX4(9|PeaFEb^q(*4|8QI^; z8??1!KZV3Y@&w1i{#tt_#PkLr^QHISYW|TQ9O)^FU+nmAhJbcY?ElQ~A8G$XlmM7s z+qc0RIHKjbFA&H*_WRG-{JGUTLuINTL0l)v46C!A-Il(b{tplV{|>sciPw+bw)9(7 zkC=mH{O@u4eWqR|Rxf|aZ(JbbbT8T6Mj{HF#5{$1mOeYW*mpB?{MpOqc_wV3Y= zJ@!V#L?UjyDngH~_AG!Y@y|qp#+W zLKeRPCw4~*XPd`+1Mtg!cKyrKWpE3jIp42*@r)95K$;aM*HDkSapkv7h5Uo4#v-ThKZvmN8wU_o3r-VZL z>@I8iI|KDADL}LMRg~W)Ip&2M#VMxHKBdc==*|GJl5*7~eii9=Ns4*lL~%+fgm)#i z%`~Dyan_mi{)*OCw34g2H^!E<*P&|>VlupVC7lrDc1{@(9vTdCxej*#I)!JVm%%Na z$L&|4e6OB>JX`>y1#vBgxTg5R*ySSW9FpYR;?V&v!{?MI+K8VZ2O;#=FR?2kL|o*Y zLz)ySrAp2nw##6l2SU>6VgCgr{{o+vtV~$@J7j=K`rpCx z8xDVpA1HuF;T3pA8;pXf0{!pN0e%PNyo%luSoRNre~0HULGmkeEt|T>|g8ukJ+PO0{-z<Xc}BC!YHeF;fD5k*xoA3UeL%hY0i z8SIVs`dXa-TAboqJY?lc`im6+eGRf7`L=)-+OVeJ!{?OCt8F23LDXfdKi`0VB(#Mb zi=qw@;ehT)#D9P;jHE%c7H9#W=a1Aopf^ssYZK!SGFPrTlBXVnzy4h6+R@)l0)J?e zZm3L(2XqMDMhkucV?Lk$3;zGf@~?*dtrEZt&nvAGf0yWg^8dG-{?R6lm8=>9-d^gm z?5q>fF7QV6clrOL?0*8wH2WGXz!CiYm(lt&uwMNJR^fjO7VwXy1#j$sL2K|2(fULG ze+m{%{a3Kuvi}sUfAarlt@SnU8m%($*Z&zTx8K031Hl6RsI>}n^}!+HY5lJ~{*N`L zv7&v6NRhMU&>J**Qu*sh_)V%WwDoG|##Q?jF{JHi{ORT5!hVM6)dJ+|=OR0Bv8R8@ zh79OmuJA;COp`LYq}cT9ow0qj?5sISYx=ad=>ufZ7NtAcui!}B*0^UbaO~0Cv(%Nk zkMx%sAFpgWb{K%Shux>he6{nKHt!=vpA?4nP`(9)Pu{FxHoTdne4B|3yj|=UZGchQ zMYBlNU!XQpVx8lwd$W5cpd@kFZ!Yn$Is>T+(P#MGYkqa%XFsFnr}DAfcWBTL@(Xaz zZ>-~*4zGeTsT6kr)9p9TbDq9y-MEQsAk)L;3-|szVz`TZU{WUXAZE319cVr}gTGP# z75(uK`}lbj?%BOK0wLv$?nKM?N0r6oHIVwJ+shUT+Zr!X>UvDT2o{C&Er3Sc1FGXA zj~a-m`2Mo3!oJ2h&FN9}u9o!g%=5CWWiRYSF~Lo#gn_B#uI~x+U<~dqtaQ#zK}R)T z?%Us+{(f$oU_kHuQuV%^Gy7P?{9VvZ_3#<-`G*rvjua>F zfp`OY*L%W%7Yckij-VE$c57hn{cKbUZ>W=R2dTtTZT*ua6gg+nl$EYYZ;-fZyl}x5 z${W)mD83|Lz_p9za*KO5AIHVcEJK#p8QbNJGlUtA7Rl@1M!I)4A%${sx1D#ECP_?&%$wBd;)5?C1&riG>R{w^f=c) zU+PR0zNaTKOEMb|zU+4yJ#}|h|MTu0(;EHs-LLknE_39r$}TL<5E?kzbxdHa*J|>s zamYYYXIIl%b%$WiRVJm}(nuZAApe71jK2qbF+aD$D*rSmYVc(vaJFNnww#!<`(S+c zo9L5eFl7)ejoQx?5~7N0@`IwQ7xBM~4Z$s$cQIRy7MzHx0piW}Mv);jkhdMAikIEd zI6@Lh4eyR{*8@6mhkfSZH1JjNdf%h3yGWTeyfVwLlthCOpsBcguZ()3=d=cAh5*eG zN2Uk^@dhSq)Ylo(?=JQAu^*AL)YJ#our|hbkW%f=(uE^GGh1Q}_rtq<=i25rJAp6{ z!G+5&qbs>U!n)iLu_GW@mS5G{trOgLisXHEm1(|naO{Y$<#O)%cwRuwWp9cc3iICI zbTp4CU5e|2isAtnI*Neke&XtBA)l(VJE4`R-)@9aFbgLHPpSQg%Y)(8>#~%n7!k78 z!IerjxXGyWTJU>a6kWQh4+BiepWr523TvvC;;d}+4q~-WzoV}2>a7I5yL>syDh}CQ zGQ+I;nR_9$zoQ{r>zHG-%_>AxT(%eM=G@vXuN3WM%z+1}JqUuAvxvklENv+k2j}b} zGskW1a9?_=$#t96$hFkJr(dL8Io|W?n_G7^zYJO&U{FS>OoFxlP(pe3XmZD*^gwq= zR}IQ=Yh}S#qo(&R)TO;!r~hthw?}|~X?3!PR)lEC&x#s83Po?Y%8^jSR4=7Jv$b=p zpdumwD6p?{ep^$x3{7T@Ci9X~`pfLX38jA#OtoHX57|%v;w-r<4hq)LBjh?gbWxcB zDzSsBCz2Q4&T4R0mDcTlgQpeqFl6;q0L9V$2FMvbDu<&okF<)^0+`evght&-}`Y1`No14^I-7F0Ce$NH14dVAx;Y2^djg@W5qB*fn7b?{ZL33P}8&LNwdApy6PWS&oz8w zYvL|t3tiUoPrgJwiPD-Rzp8|7-*`W$oMU-Ca|d zcN!#W-@Y#|W;F}!3x~Q+0O7h-msv&ILaIEr&BBzNgAblcc9TPIPle+P)Jk)H5;9g< zjlNJN5UXt^6Cbcr9&usK&bd=Sit7B2d6n!RkG_Wlx#DI+NE4$rU+b7qSK`5x6* zkhf3cf?L#YeAfv44vPDcj*ZBio1yp_gk7jhhLF$8d?Sju;^<9)u-^6~S)Qn|5eiLP z*TOiB(C54Z#W8Z~A#S89EWi5L6&g|OAYIdxd%)5m9FCs|&-|X!@xgCSS!17FKWa`{ zlJ>$;>f-!U6?vS8)Xo3{rpIcf=R*uu8K?1dhBkdxWX3VZxn`NeVm#-jY)xgJqx99R z?j~FTXkQJ$r}}g*oo`a4wTNXI9iER;;>rqabHd7rq<>M0(O?tua+;{J>u z#CAS-P}_~uOSI`n5|TM`B|jMEVr0aYm=a z(n^{~(e+Rhb2%V;wF{S5P&KJS80M~ktbC_EZnZvTh1S9O8w)8{u>ZYpl0J7{XI9b9 zSm#^;9kpAUYxX37+Uyoj@WrODRsrrCXL7YSWFN8uQ|e(J(E24k$#Egp<)k+Kk%8{! zhylrQ1N7{)E{F4Pj3^%BF01=m?|K*8og_58v}R%Ty8RPMN9|6h3+FqnDJ@Qs?8OqI z{Rc+2<|oH>TTJ5#U^&`%+?^MmsQBGM`pFF>S}7bfaNypz%uMeoh#7NF6y~LO?JN{x z)kxHfHR`-DJhUSc*<~2#a^0w{)OFyb>`Ch5Gz(v&zxW=k*D~~B&4hLD=KWxWd{ptT zPTrAgCq%ORnFJqkg!4}fHYC||{b#$xj@MjEThK+S?(m?65a7N}LifOmSWCwjQ?4Zg z3TaRGT_suP+H7udjB`-+awb}usD@Q(V&ii&abjdu#%q|GV6YdX^S|IyH4vBI_In$~ zx-RPJHrkq?C&@qZP+KpB#xbUhaM+~mXrG`e@qUxcR<`2z#UvF0*R25-nZX0@=mD=s-I5c5Sd7mqA=Fe-d9FP{>i`>>j5wfpC|5u z%;O21m>ipLi&!)&xyE+Xn3BWW7ov%l#A@K{&}#zYSe0Wl7Yvk#>6pKiwP`cnFF3wT zR$@u3%0_Uq#Mn+UvwVXIUbQ{ZE7A`WomK0N%9I$P6ZeXkaXwt;C}o65l`YQ1&?qG!G93p6yT6_MXD~`B znUg!y{dJDv()#3bSvEyq2v%hw@?xFrL_(&eM1VqO(@Is!I$c4E^*(yMOQ&b!Qi<$n zP(AYt)sf!V&#I$Txzq(ITMP24+N0wM5~GjCG8u$;G@E1FjnVfYi>!E>KCD9-D5ViR zwXb(AqH~A=wKf2?dtMRub?1|qNunMi^P;aBiq>jxlYN6=`e8J0UKWw|>x#V7Gf=n3 ziQyc0B+tt%Gn!-Y*_=dOLs6C4FIwwIHyNY%Ga_^EuY@COX&yZN?$%{CaXRJEZ>+lZ z_QBgNb`v?#glI0CwY|e;7pBEkdtfgBag{~CwH8=~lv0n7yWJpzg4m=%H?) z-Gkt*_XcxuH_y zT9*LquIja6$XJ`sv5)A{FDlF!CuAUT_ubE;Jkxz_wIIaP^Txx?Goc4|cK0hM$Pn#A znpqJL>t&XGzo&wt&AFu#l@)AmSpNLwK~!gjEYKv)cg6S0Ay8N8VqDTY*FVv9t#sDf zkQYTgQ5~mRhC|hoVYv9H`d+E^26q}9J%RW8=4;rFEmtx;T1)%%QH+fqc@5_n@oV)Y z9XroQ{j)i+9=qzT6U7ZYORzi&@*7`apRJa{xWvuu6mm-RVb4Qb`YyDHoz?`rh*v2gu(%b0z2hYCzk&+kLr}vn z7h2`s4;)d;T0S|XHAwVlJMktveTR}~EPh|}*A);DN?vW1IxF3>kll!C%8Ku7a`_I8 zSskg0FO1KFwTUP?ND}3o`Qnpq8tKLW;p41>YOHoR)jzAMWG{SOcRz6h@QHTl!nqK6 znTTUohLLVv_;`M%i2z!gD2QkN5Oig0CfFnCkv3&DUGF+cREu?0-sx?VY5B3xy=;fX z7`Nop!v5~}Fr(;UlIW||W(NkP17)+$`5TTRYhj?F#*AsQiP0#mrXx*SGOy#xcj z1b%`UWw;BBZa5k8>S}C;f>{Xk?EM(GDh$kvr~i(+x+>XzQ24@_{LLpJP&4~dIv|l_ z@tj$gA#e6%>Qcv43oxvQRk8L9E`Kk4kc`!&y9=#O)9y@NK7=seuT4O;h4iYsduDlFasGY;f+ua?6eZ-wQ<+UsP;h_fyk&) zj0qnupXt2r3=S}zS9!bv`*dlZR(m4u$u*}Zax6Zhb7&i9v!__~PCvTeokXFeRtHdf zHm5Wr&}ts0+XN_h7LHmkwHLEH&a%4a{NSB}gw3JVn(VWBI4Q=lruUh9)q3npuDm}V zH)S`SVRd((i2YU`0z?jRzkpw^!Bt!h0}}^VopN8=mTwofOh2sFOyJ?RCiam1F*CCJ+XZ80z}v8tHKQ29_C3gby*J#^gd_AU)c?iWedxlbv} z)w8DEQJ*Ej@@!5f8ajKH=5=_uO&>|Po5sg}IL+#A4DW3N1)d*(A3E!fT_XbrCEU(> z*e7a2C}CVJsnzc>N6ge`x%To^Jib?|`_{9h@J>LYk3?MY6I#Ara{*MM$ zw{UW&k@M~6SW{rl0M+CPxBDj=-$W|QJz0$&P0R}IDUMD@p1U8$F1!Ji?qGzzJ-lBH0w!K-u7me>&C~FE_ zMNkw(oJUN_THlC614+`lj~sWi*Nx&{oOevEi65Z!0SNSBAugilx|MaEmNi`zB4<4d zrHI69bP&AG+H~X5aN%mzxg|Zl3=vB+{OCOb5!K}Rp!00ixwCH5Ei&H3;PQfuPN8*t)g&VB%* zQM#R*H1!RZ9t+FcRy#;ZbrW`*=@xGI(q=<Ub~#`bt3R90tou)`yJ4NQTrz9j^&u{*5RxrX|f zCtbJt>s^R8r@-C3y|v>yVdvNR;$+XTYla<-;C|p^wn^|YTTNz@o(oJ!s~Lis)Wy=c z_mLs+&~VXzeoWOd-%0D-COdi!Q`{srBfEC5$HlWdNO308uhR3Uj-nn=c9K*eFlF#~ zt{VvpWp=%)cHWHOfYh53P)l~%xBe7P7roi4n*XV$;oYH~d`j)-Q(DpDk~tiq5!GiD z{WTRMlnO7)ogTk%TXM3_tQ;tuXRRJ%vP_UtJn8MPiJ4?@7TPm>nLNLf#jWqQbdc|K zx*r=Y2vdjt5U5?nmFigoaPgB|Y|AinJZJRbDU%$-`0>2M#i8YiWiz3WDvPs@7gqGl zjMJS1o=kQH4)BK@*!;Nbn%k+j-RM8=nM>3QJ7?wI(MM0rW5_QS9^E3AGj%KOS+#`t zUR}(aY|ienyK#;xZbQkNHHG$WH#^m8!f3PY1t*F_dEbvQnI@V6Naxz7ZZDiywc6^F zYCZ|6!-;#$>z^;kym|W~KLVNro`^@8#ha~+vdd$T+Aa+<;z$FZTILIMo*wwj6+6No zwq5#JM(0iH^&Df`c6)a$po-%1XX7Q6lC2?$+8@qw?EctDo~O2ZFm6}oC;wB^;Hg{X z*PxmMvb9LgK5obr06ySq%2q$491Hh3JpNKjaRZNkNU_1YTuv|JY|Uk5tDfH3bQfcS zQ`bVY@*q0YuL(D1!1Jka?B?B(+_^-vnHyzy6v-n&4=weg{X%$26X!3cL<>)nx%j=; z2{`)FoGwj6X+NEzP|!%}T;dAVt>1Z2e1RK%rM;cH?K%<+_t}NXSLgUmy=PP4iop7o~fZKl3)ql z^Neo7O}iQZC{Pt$?@QblThL6ql>#c7fJ%LuKkvoVC{O2G9XrNUTCfwQf-NZ%i_)Z9yz0-c%RZg zmR%~T8ZtN7@zb&BeN8T9m?+vv{>Vr4TU{NZrGg@|+Fs4>D&&3(i%2ZAm{#n$XtRUu zop~0tAOw23)*G}1iHBde=XE{HJ|Pnlu--8(iDu3Xs$s0Lu6#X6_)2*5TN>A{lJn5c zJYeJXtw+<~nVYgRPR;VR>vC3MYop^N*b{oNlv>7``#L6QrX_^$85*@C%SdZ-y0keL zVw-&I&otv6lCc#;a>fkm;U(Qc_#OPghzgP1R!^5CT-kHp4eP9I&}jSBvYLfkBYPE( zT>tsrgx=|crC7hF@CRtbE**fj7s}>x9M_b#l;12y&R%L-^E!&6fB>B{qtKgC8?WM? z1B$3S*puDhK0x-+;Rk}iC=8fSIho#!;<;^^H9BEb=G_M+z)Hg6L4hJ?acNMZpT3r)+1mbFd=@zwu8M_(UfEP39 z8QD~N>DI zHX;q^Es0*i^>gv-Ui#r(j)v z_X5eSh^BMW$N{ES+(t;+RWhVc!%eZD3$5eREqK&yFhO4Z(A-m0yBwWO7#JNTtc~l< zIcSYqlV2Rk9ilXYdDt%O-tjTH&zia_nXZ)G%U(6u{dICx?e$Ly+Yal|D!l$GedAn( zTouv{i52a3bmBAgOPAF`{g#zg?S;&Cg92|%GdUh@>rozgu6PVuM z7Fm<~L%AYH;x_kC*CzMWQ@5VBKJ2M>y)SxYAE{h5L!3-2M@dYH_5h9Cj$(D9ncQba zlpi(+WosW-*J2Cvz98$%8Pn=UGrG*8clq8)@VuO~mZ#ad&;2LAZAV@#NiDRwVwhDX z*~|xJZ#gy9F^Bw_=&A0T-7mb7EAGz}r)q+PyGBMIi^s4Nmag%RuOzmM;Ks+Y&oFTv z9(NUfBGTknpL0e{>x%{gwf0GM_WF!413>S+kE75G>P9SKo+TXmr4$ZzCDjFM^00&T zD5HFkA3vH+4t}5=#i#9taU9a1d_2i6N#f~WQ@3do!I?^n&ay(o2I)VFUSbZC%Ei<_ zhglc}%{pcm&b1t_sli@VM?%{whR^L|AYmc;6+S$c#6U+n}rF zJO4t$7)~H^^!o}?tw7uObHlUo?9t|<+Woc;QcV2{RNR&PA=gpTH0>smGkMG4*%AsZ zqc8XG$V;$68D4|7l@OjaZ-2DjA0=6=91VYf?=rV|rYE3hys`8C4aciG9n~Z^Sn^=* z;!86i2!BvkkNwO7X3zeS6Gylx4wZH}r_fKfCJ+rS6le z65aL?Z6KO{RXQ5GrV(jVO8<=aRCkKw%cewIQh)8z!R+f!1|#-@6oML@i!72nN1$a5 zYg&p<^ZFw5UtIMojqEWOo?am@o zB9=BVw*yb^!&ET%Z@fKVZ|Lv3y3c8|2YK#;`z{g?m)g@$&-cR$NC$3py=ppF3p~id ze^ws%DwpG$sTHHR|KP^}N)v*YeUO9uOw_d#20oZA(L2BZq(K|AuVY1fcx9wZX<6AU zM~g|UA-JRCj}6aq%s|s8VQca&DQD5m?-1R7(73kMN({~e!C+JlauJ6FVBtqpLBt|Q ziysr!u6+-G)voXbmj9vhS=3V0bRT+|^kmJ*)1!wcR~jH>^Rdpt zfXjpz@8_NP=7w|9jUB?gl&UFPq&MC>4x`nVs7CrM!bL(S<;E`Yeb3>x#B>9xb?IQS0PKJ$&xoPAAT}5(-P)e1`lUseVyE zl)W+Y+NsW{K__O-p9-}suHRj^w3+_7E50HTUYw z+MUdMXM_Ed2A2M_lLiT|l436Xq6YI=M#-M7Xj7uO&&?^68GD+&7~+8W6w-t7+bGr~ zk@d9OLpHgP`c7~+Q1kZbs2ds5no%6I`EofBuBQ|(EPZ!FkQWm;5 z2aqv6b_bjgyRZZBt4rWwPX8(f@H{%IcPDQ1#2&*OO%^{XfzBOhbjzSo!gvSVQH?y+ zl}FUMI0G!>Wm<8*>xNhb1Wevbo(GzT1r3Q`T-?%7<&l$<3l7Yo|61KMiGz!eDVkGS zd*@M9N*2C>p=%9&YKsG*qPAh`C;rhAAc^8Z!**o?a+eY`G$GYM(?y(hWkN&}-en=X z7QxUScO<{2Dsj8)lm(UFSX9FW(`=ZMJ%lCAlikl6C2?};rN;*xfn_Yz1@QmB#i#?; zR+&du-(5OGr@8hujRMe9WY3UFBBjS(GCqj%!E5atJ(cV^)-$X!t1WAhpl@LZ-rV+* zxH4c=C>wfcXnm<{ST)94-Xh`A%&rC7dW*M(;Ec|sh$a3nx8?`?^K$pi%rQA9bX^c=qAKQ4wU_h2IR~eNj6e_|6GF7kktnFDR}^b zqFZEGw2^!@G1;s#HjiPrng9Lse9&9DAfbDf(Pc3k$8QXvE}K+k7b56->CL#*j2a$T z<25BEN$nX)> z&#p(6VTzOM6{xi+wtZXPVNOja(RAL;51t95T&9-Wkb7gmV`CWoVeo!}{Dtu`YK+2Y zHtRzp{g=D>pLB!Z!91FKR#@2{IUmkARNHE`ZW38$9(2Nahr7m|Ok`TfDXT@1b{3;e zl)Xt_iw3vQWmlU4bHye?AhV~B;(OllYPUC`7<%aoaR2#YIM_lX%Gj<(AN;^^%2U`1 zWb2V9`+WAD^r7YqXnrdCRaXlj^N3=XPleNJ24qTB|$Ocq(>D< zr1uB76}}p~W;2;SI3z97e2tH}rJO``B+=4Q<0Q$N?!XIt)upGfeVd;=9NY6vZZ-?~ zSrWq_I~P3G^XJH=S=63(o6Kw84%2|}b5hwk?;@A}BD$FvM|_i>{Ms#P$`-22T!B*K zgf9I+651=)IBqPI)mwf6L~Z1`s@mldGuQ>h&>w=hx?%X_NWUADiRP7fD)s( z>sdlESFr4hRFfu*rwI_%-!uu@vIt?ty*;PfeLO3~O-FpGlcc=VT8)^0Ld^bAa<^RY&qF>oRM41l`! zXmeZ<5p2_5w9n=t1@|fMM3#9GbscC~tlX-jr+FS$g-UBgr-DK-?<-)h5#a20w7=0a z;pTIL>uh6vecuYJeT$dPlv5v0xbL(ZzEBuJ>b6ZmHdE9cesV6%NHLZ1dN*WV@Bb$r%51*xs!jaRs&F0cLEl{POLpQk{2a4et1ridA2@$|FtV(Tl9YKT zSlHo~EDOV(eo{9)_iysT>OlCbLzRn2!c_><$kPjXzm;`NKM{y%LbhlEtR48VFMGgS zyf(Xg??u({$R}bN8J5P}VWn}7IJ3P_^{U4zyge3W&DkxrEV*0DaKTqG<9VGy^|u(sUEtG@^^R#U!GEO`T{g=)STyNdye z5xjeqn)cauNr$tgRs4{S(DCekCrSFHzIn6(Uig;Lj9hem$h~Lds3gpEPv1XLaP(|H zXW{)ymzw9!f!`UHu^KliR0XSxKMyeG!9CiJaXG$UWj@hq_zj())A7vZ*+CnPrr3y? zGLyH6`fRw@k%~+7**Pol>8{f3_ms-rwv_%U%+)T^>)lxuufB)Pyo`{Y<-F>uy)OK_ z%&NS2T(|7R(yROjVh>qT;5aFUUAnyGbPj``&Ha`c>*T+Y@i<_|TnxZ(?U{X_Tb&YZ z4JBorH3Aw+ch*oB8SChiBc4DM^UZs#*H-W@g&gcrrKY}HasjV44g{}WC__EZJjI1^ zl~-^@WOvz#MdKiZa|8H=fyr2tSFLAahV9jJO3-X4!&Ur`ySD@njOy=qphplkZ`~$o zKsUs>ROfahb_$J!$~qeYVOQ~d>;=e$bCC;C<4n02=E%5<_lcb{4aHGb$1Ftb?~I8I5>npnDHZ|cwuGEx!5($w?D=ib>hsojXG+zC4360L zr8W3{@k`A@>>9(Xx~f{Dhth; zvKGpU;eAvxT&7Bp%57F^a?w*Z;#C{_>4Q^0J3V*klmL9$9zb1m-AcEZ*4BlD*z)d3 z_2q{{SMJYJ9_bb-^psj(xx}&?z@*d{u;{J z5AJFT^iSbO?ty_PiWcqIkLfT}<*}W}ZKRF^uTK~dJEIoyr0YL*%&PK8&nR@Gt!a@Bo4ybJvVHy2_2og}HZ2PQizz(01w+@2(N0gUmd7!B$?>$t zm|-r-X&OAHRo=t$xJ18Sci+9V0(~`iR=fTcB-0GeS6TQ1n0ERpV7sM|R3_kABVTZG z8>sl~2jn&mpq-qd^90wi-RA81rV-~%np;)=l`XHHIk~{E%4>TODc) zH7f)}4!|7GV4bq@KKHf8NP6zEk4dau1s4}j*#hKJVcXdcPw$q|okY+ZWO(s!X1RW< zBr3Vzh7O)JmYibvd2Zxd^%^P|dXe~Z_7dqh5*a%;;syzz_;ZfLv> ze{oJRxkPCwc|a|V?9q_X`J6LNrXx{+3(WlxdGeOK7M&WRD>Np+|iN%7?-pC#1jU44rkY| z-!Po>a!x~%G2(({q4wh-mAEFqYEk5xr(j+6)anole>_{iKL0g7=k$=XVspFjG^(Xz zej)a&fbn!B4NevT1^@Kt$V&B@0f5XwF}iW;F*2CJJn^Furem#p65rIFrJ+yMDO^0! zC^TlChR{7jntQvFiRZ{*ex1|*3Y%ntIzo+ICmkLJxd+rwcz zJB^*ZYEuRlK)Cgm?~&COrxx?I0Ruh!5kDaZsqVvqb>EfG#nq0^`T+E)y(1*uY_eS8 z#36ltan`vO@IyA{Y5k#3T+^<4*P=%l1q=<{e2a)l%06Es@ywzKX{Q$nGj}qhGf{Qm zNLR3i+?omrNwGgDTY+^ckUF!L)$J%toZIP}wK;}BbN9T}h!~n90yhQoyoz;ka}3uy zS*W=EfTXS~f6^KyG~#e$KlU8C zsVN_r!f!6c?sKFD1VvF=mo$J-Ji^^Qsgi(VFX?_lT#ROK8wZw8j_>iPlR&cY8Hw&hbgsKsTp%5Wv*&ufg;&#OOBn+*BDJne{%+ zA0XC8f=?y*h)gb!4v;zYvu7tc^uv|Nt5y}m(|h$&JnGP9)yZ2L=6}ZS=m5yEAJ$U> zbV_qzuKNZ3-BnEtmuK_`bkoAX^RBA%4EC#^Q|+gno?X0owd5WU`UCv9@%E;kDW(XD zhOw9NjCUDZUZXtSeuA2$Vt-+XX9d@q%daw`H{z}Z|9)xDI7016lD$}xV8w4c>{Fj} z+C4S8cOW1Vh)t7Q)tr}I2*egecyX^a24^eGmZ^aHUUT*9ZzByoDjfWb%U|wgm>_?X zCQmatVo2SJz|k-l%d@-8$S5?MxcRxY3Gx%8(|V^lWQ*$V1Gu8Z3`z<*wS^gG%@)zFmrQEld^!N zfHi09Ewutt!O3GCWQY6sGx`;IW;2cV9eLVGZJ2TjfuFFkNM~ZutqnOAcSN_FW1r6@ z6q)y>+*(wx+gpc^^37kWWpx`7d?h|r2gpAC<8I8x2%uA@Gl^M(2A zrV=U2@qsVvrQjpO;|*{k{;d1b=yrHMODK0mZ!@k%GJ{=!p}R@Ov$Zmp&o)Y51{{u5 z{CI%b-E={GiI@I2ll-q!!*lBM@tjE+rrt8-Eu}8BjO7W_k#^c0oghCX=WR}tY~_EM zB%(Czac}IVa+9TwmP{+vGyn}K9+uF7`OgQp!r*19D-XYKv zLp?kZXVz6JacP34cW5;o4HS>@cf|=`0K}PO>WjQJIIQpBdrywvR)yE+Wu7Uyl40@m zBt5=0jFr7Zr5Etz*00zqN4*nIHJc$f=}i*5QG=O1Sfd+Y(Nu_DAUR!f?(V)H(NLNHetEU_wNH6pS1D>NcPCTf3+Ded_Bs!Shdsfqf7j zo*kVYqL+7K?W|rj$qg26Jh_n)lePT(=FgV%S9fSMu+H$^I6ae9Vyo%06oQCb->Npr z4yFk_dJvm~I~d8xP&R&Y64>I|su!d}o@9}Qo5^zb3y%5+ijfp{6ld7m=TA>?O}AV4 z7LYK5aHDv{Es4|B-NxQUq)GwMu8?Adk>Ez7$iSWM5OBg0_a(DYiFgz5_|?x^+G$(d zcy7jcGb69%aiOHO60wkRhgYMZ)}9)JgvN)K&3Bj=SubjRs?9MU2jKN}&F7Y(v>5n_ zep#O)yIG~;rTA2T&}ch?nvlufT7#-!00TZJVBFD&F{cE-@sMztZ(0F38vqxojQE`7 zWBhTZ2oB@BA`*r-kudv9$dj7#Th%DDoNnOU$IsFxr{z%WnAe47I=v;YqZY?lQTrsl zk%MuOtw3xyN_&C2gv;f8H3~A&>TdR8OG$DPh1;k)xWgofIW^&XEZd-RZiAmW^YlEa zIddQKN?n`^8e7UYU`;u3Ku0HY3O|$HcssAk?I-vJd9P6fr~N%s$6rBK->f}$HgFjz zw~mEBA*S{zhmg127#iSSd@NN$WP(`Dp0H4l^s=JsU~xIKY*TmL<2XioB;`P8G6Fx& z01)d%p=}V_?5jAmSv7`7giQW@jaeZ`YcyT9F^TU}1jm3I&QvAq1aEJDKqjsMU=+#p zK9Ec&D$fswM5e2XYZ{3I38l)l6iaAKA&HOS{C5p)EQG(TXDduNq!;B;KfdP@l;S$_ z0{t!KQzS^K{4dJ|xZs?1Z$_Yl*c@Oa`>r6EAn+-b(r2k9Q%4xgA>T4DcYC2r!M8|( zcas>JIP}|M=6>a_$iFS+Me8V}5`OC~NSrR7C<9_0^Q?vUeqAu6xcpV{XsCUzakFH# zufEmqgEm_S#quGiaHc@(r6!b6KF~OL9lX92zvtWeWRD75D*g26Ff9CmCiTSKwGUbK z13K5-FEj=&KuF_MImY!0|0#y*1Nd;rFU8GIbez;~PRCM+$_K=(`H?>224p@Sv5;B| zHa@KfO$XAismvfytp{%)LJMGIIj9zI*-}$o89!x4L&+1+H8nLP%<@_RSFB&c!jZ}5?k0hfmCCH ze23|q@a9GRLUQwsE#UcbRr_XvD2}$n$`-0Nt?jVS_zd3Xto)H3)M6?Mkt; zJooB7!?m5!%}G5Yr#f&Y1tMEuRob-aFPO)K1*VlyE$hAwdp%Ge^q`|xkg3V5PVY!i zsoWYo@>Vg}lV`GhR4A(=k8gST>D%cTIhjEeYl^DA;#H~RQ^vcG!4){(sqn)VEvG8| zPE%ET3H$}K{*g1L6u69jjo^!WDR~qc!H0--#YPBBV^NYUy#ZK>e@Zx%t~($I z!y_aCAD`t8lk%t4vfJ{S~Yu>;rO>&d$H>BEkwEv2T{UaAOWo1q+q z`Z6PyFOR5okjd`v()tzU;UANz2YySz8+Rwo^9fLMplpH)l1mua1_XT4a%zBrs}G0( zxcuT~BSLi)@&8;MTG1hT*DPT{00{e=(Nc$k6VT`|M)8hI&Xb9PwnJBa5LR$)H83=p z@v9(LpI3_cIJpqfWuv>1e}sTwTcWBv{HdP%4U-Ia`Ty+7nK0GG%GtDja@Lq5V5KFcZ`}i zjf*quJME2y{yw7)IF|Ostoo8u!BYjCGyKKPqSGTzwJ;{X2foK(WXf1Zk+0&#AL=?S zD~{i#0GA@0bX6dkT8az2=T{=%6>K?7)`GGdEBPj5V;o@Y=+TYLjR}Ux0pJi)@;k>U zRF%&X%z8nd2H9hKh6FEQGwn^l?1AUM--koZoszR*ck${$WIL+7XoxTX~f-Q$akOmJ@d zK<1r3yF~inh@WGyfKdSvj^DPD1c+-qU@h=@q`3z8lfA4=k);fAPrn!xx)Jg$3%_6# zak|59^g6G(1u`by;1=A21h?Ss8a%kWJHdkcefhqB*EzfD?pybqsu|v%e%4xT z!}NN(XS(xcqyFi)y2N#E$T+0+5fg6+62-?eIRiOxzQTND19d8}SM*^N?oz?;Gy+=a zE2%x`$+;JOPh=DZVqbmdDpB23&nTz;J`5MM;coM)w*Jkc{Owhsr@r<|@B|X?B&FKB zX;=XS)wM~&zx>)_2B7CJcMk8i2kihkhF@5WhO{3nY9E*r=#kE58@|!=UT9+~ zzc3KFFhZgS%o9NELQR()JVu1RG~!D;{Pr~2?dMTt?Gp$Wn$&y`8} z*Z$KJIUkAqQ=|5KZwR>pFm0_el(Y6UFA zXg2htSbX9^{!fqt$hSZdMfxaOF47EY;Yq?cf$$0jTXnwOxf7~@U5KZ1-DgC0e@SvtTzbEYb zpu8b8uY9XUEJ$S%26)fRrK_e_?$l9f9=y28ng71uqD8qUDT>vOrB@^y!AI{*g59+& zLnfQ=V?p~oDKmGBK#3^-XDA2vx?BBgIOnY;8C?g7cngm@IPNdu|cS78=`Mc~ShFoUV4B4i!4U{eQ| zJ7N0i<0M>=uT*OMx-z6C)c27mc*$DD@*4&;KE@jG;PqHLtmtyR(|5^a_*dbk+ob2 zZg=dYGdntfR&!d=xZ+UTgEXvK>WpFXlZ;1D4(Tl(OX0?W(UOL9BoQ{CU0(9^yLd6b z?aTaF$`qAamdOd{xz263m5*)>*cED$d28ip!r(1rU z$Qgk5YTC9@_b3sPmGrD)Fb*iUG<_r6}?AQ8yA-@s#i2KC%lWTw{#XVxTIA;tEg?s?| zst^2YP>#M|bQ}aqP*JRBr%Wj~5A6aynd2d__!QpVQzAR`L(a8n_yjDRdTuYboFgdnfA02K)5f zAyoL8=IT=IacoIhcLlacM%jYkgoZ$fmVK81QWMg~sF_&o`w0zKdm_Y{$Ws)q50eU@ zcLN@oOlsNNI9dIbxE=0+4@Np={t{egy5s7ePH!-5_JpP*^ghuw#?*=^F}s%!<)Os? zw-MK4Ft#W9{9>mvJ`c`A)Y{KNb-nMjk=VFwq$%7ayO7+wh)ERHnAjPP$`irgwVVCrQswUZ?dSPkYNHiN7zk8iJ+Apu#9``G9a}ZO@07Y!^1$NpA?1S_|Oa3S}jU!(6?o z4X2qTTitv1^Z;<}Ozn(?)AV)T$o7M=KOhvO7DIy3^cnz&Xa0nTsLF*ENd0ozS7^Sy z2prHJ9gNfveQ+MU;=H6ZxZ>>>XuM*hjxV__8YuwWCU{nl0n=}42$Ybv%ocCam|2fF zj|iPg)h?RGCQMY0LEsi8J#f_+eg5y=W0IHM-k|c4roFIl7NF4NOd$V=ZR#!F2giVh z##q;K8h|U>&HiHq)P!sJAlIs`u)CaIN&u?g-_Ph$>34S|DUVeoB$i7Uw7_Mdryt`v z66BgtT2Lx!$HTGrH>FTMarq^;02ZQyXhb$Zwc=*fv8 zSn^>?Cl;C1zs-e4sFeG|Hx6m4gxsSZ0nhQ-2wUM#F9}{h5Dt`wOE>>l=hGOcCnh|3 z)(&_*Gt@WK+Org^cP93kS*Jt}_g+hYc~H8`>idh{p}W?BzjWK4epV{gzdP)eF4c}K zg0^!uj0ZXM=y!84*N}BL-n<}Z-8A_-BW|WXdZpYQ^&R%R6YOMYCnC(M=e_+-Ey&4| zB8R)DJBC>#O;Y04ui8JdE$NhPD|+@N^gSp*dh$YI~eDGO7Mp>~&jEP%~GUD8r?LnW9* z9i7M61d*aUb`IrV%>USm~?Z5ne%5V5%gZpT4>w4z8fwdTBFF3Djxmk122 zUi7uQ%wFrtgVHT0?eK$?iNrTkxp8joLx%Qf*6GKHKh6b0G_l*n6k^X?!oNZ zn$~*~yUjsk+Dda_Bcu4tk4<+6D=R_cOMm4=C!+1&2=%xZeJe z7}4F19N7m*R3Gl_n`2}UjNS*S{x=KnxSWTyEksu1S?~$c3R;!_LP6HQr8t>d1AR~Z zJ)^KKi~yQX(Ib`oof(0YWd(Ly#!#nFZ727D2)hA?Vs-ng(36-N=j$(vMbUo#@658G zYYCJw`9C~NYaJtiN)CG^{}k%I5UMhzJ}jtxK;`?jAAn@^u{9n!96DH05k#S4?3NE< z$EEi-o@}n*xP*gGa(=&Iv|(AVtzptkT7kyw#_j$Y`(!TMPO@`2-dMRjx~y82?$8F` zpiA~WpHELOz>|D@c5PB#9XOQvaq7@Ff+4^y0d z@$n7zuN49nGzAwQX+uhw!_Xh!S0*QTRsDQf`f=`V-(K{xf*4DQuk5(;NYemQwlH;A zBUmZa3642~BEn?6JkrIu!0xK^Fzwbco4HeO*pJl@FbELo?}H60VOUUp-mv!IrS=Ov zpot5I9MVORBEr-~f+r6Gfhlkvk4-5os5*3t#1Ec!__T22@qZmUL`18RKcNY{CjUy8 zjh4MqK6j6V4r-DoWW|o_;Ri~-(dlqhjr>IYdK``-;)}27=FvO6d5Qvy1!Z=DGOzCj z=Gt#Giw4~TGMpF5Hb+#ZSXV=yo!`;YInBOWEgZ;l53l7-m4jdrxD(#A`&<*s;p!%+xY59SdBX#ZURgP$v7n^N z@7-c<$2T{$qNdyFf1>gpg$IgM5R7gT6_}naiUI;R3F*Q(p#NUkg$Hh4 zR>4`Vasr5}5Nw`T!$BWD_&`E~kClO#4hml$WZD`#2zjSU;qmVbDNTzPrH=ddoZC}G z)5VqlSPwMULiqjPi8248oV-UBKB7-(qf;lebMRw$dgKxDJ#9hb<8Eo7X3MqZv%C== zn>zXjb07v`|5`+gR{_vmDRI!Dd;Y}3f$oM1YG=s*MNg9CK~+)*OYR?NlwLvj-w?TX zWRT2XPvj>-`hTg=OOu7t!g1w6IyOG3F-p4(REdKa7%~yORv{!L*Q*E_U-w7 z7r>2d{80?#)9ekQR}fLEJ}0|?S-a+JS+sP^XMX!Ox1VKl1j|dqMDi=x5Tzbv2)g2w z)7Yg@W#OgYtI(EJ*SuF;1paZ#rng4IIbZYP8z&EMznsIpqggLIi>!EeHHtVXobH%B z)76$LfcxB^hROY*q8(+n`PFWr5gC8Mrg#5q;rxv}qt9E>6g?&}0*siNhvMRM;jDvS z1l6x})@z;UHElrVr!9}S+KoL8c)dyXw3de%t@z!YRYZuK>Tg6kh7;D^NnWqAgKm}t zywyf=Mo2&Ta^~sam(5BAPudcgirJe`rV^=BU?o)>qX3>Csd_JAOQgHJdFPM8)Dtr7 zDpB1{=UNHyw7sM_i}-4SygNR{7XF#im^ABC-4@`3m zqn;qF&!@RHVKzERAkAnLOVN;#atD68#MuCeVOIrls#Uw_&A zRCmSOSTz+T7@^A^GnTGY!*$W-fpDH(o$WqDNC0Ki`(vgYKI~krs`=p0>XY}K@&^b^ zmp_U5@ZRLL)PzTON;L!A0{0dsThhp9Nl*awt0`B5BTCd#<} z?^HZT%bDlkq>^rS)`MaW&=5tgx?;znYd#>pAZv|{yrxtl*uV+%ux?Z@4{`c8%kI2) z)edX2?Q0+x(WHh~?Xj?8niqVhwLx!i7<1&LqYh@HH*S64eDG;?(9|@ykEfT+PtWt^ z6{5SUAQBVR-%1}2|1viGkts+4rp$lg@nPhG*HYW!(jT^z!>`1{vO~SjITe9(k%DGS+L|dxP<_`_!OqJjOK<_ z&-b8c;h$ot*#lf?ZCHYWvY1=M9sU)@F%I{Qq7Ft!=68ygD2%qB=*5@YcHPfkCiOf5 z=Xoc`wb&aGX`(g1Urv(wxc(mFCUWp}2@g>mL@~y%VB5)MpmFV-<8Qpe);&EYT6vJm z*RT+9?N-%W;pLMs8;k?~G%C1vPg^GAp=MRjHn_(SqmO-Xo=r*Hx%7=RSK1;EUCQ`< z3wZi157Uks%i1}nrhU(azst;$1y+7^L^Ef7u9iWzuZYpXJmclR)2w=NNIT2?Yyqce zMZ+L8AAIuVi+e|!P=a6GY1RF`-ssQ9zum?9oh^8|d@))QvLf${4OM|8LrL=z&!Ra__WYAVX$8z&~R1j;R} zC!RBXm&~%wjAvc|MU#vmR7`I_2KNu=hXT{WUGDb`3@NIj2JAT2>_&skx|#{~T~5mi zw~I1rwr0wD?M{DvX7Z~^3A{-{Z0)DiBCM(;~HVq0D%u9%godzVrj8^eB&Nb{-Gazdx|y{6^vneH$bZ zY&-Tb@7o_(4clrd*_L0$;qiUkA0pE>kGyTb>2c+Prd$5!qDF z?;X(gz~?H94hxfuDs{KNKD5#)$(KJ(w-rf60DB$4xd;!d6`whisZ3&SQm%H5TQ*0? zC&Wz61Y&;k+~m!A?fJ=%?K%yHW~H3Qdy27Zrnwq9)I|AR=^R`;H?9$=TuhCiubZ;lsn0+Grd{o)HM>3RR`(tEhnC98SIjsKf4~!H%WrV6&nol1w z*)*C?yVB!N#ZZeEo9r&ND=!b0eV6v4byrBYuStsMQI7iLd8+dl1;m}NdJ->O+4{F&I9EC7nC6hWat?sO{NBF6Qz;x_9%kNa+# zmE|08?v6oP&(5S$^b2w^rlb9q(;KtHM$SS2Lr1O0bT`V@4DClm=3lp{*EabvFuaCd zfk6dFjC>}bbgFIlG^0dQPs;ur{u7MI1)tQNoCf>vpLO1<+g_CPy<4(mW)av5d&@r= zWF0@Bh*Q<+ul&%aDk5})t7GGbF6jGftoHpoEkpTXB-_tMCLFdA+gszYkUj<&b%McP z-=}ymkMN^c4W=t!U6p0o>8wAMpl|Bt(OOFR6%pv>0wHyf7^H@wyZ0%l#KY@Di17mQ z3DQ5u!V*f*^yj3gx%B%jAtV|QEKv1*_DlVsaLzoaKE3pN_91B!no)hCPKyhLmhCgJz~%asOTU*|K8ooPqA}GmCDz^dNPFrq_aDYnf((P+ZqnV;1e4 z{?3$v7@*;Xtt6{s&kH-BqhV#jO~TU7FzAxb)LZMiexXMULv)m${3`-xKFNk1!v!zO zQQ=jV`-X#i71cUlCGZ%a%bIS3bJ9OKL$*fuGpN5_x)L{ZrZiu8hLq6ek49I<-%Jk5 zu(ZF+46v$}4#FXq>`oOr*KNfZ`h$%)R(=Vfj;Y^EKdt!Ev=f@Po&*t^ZYb@BAtBLq2&)T@(- zh~}seJ-3lr7LmAnu1V~mPVxOAvxUo?801Vh0eW1DiAe7`%3iD>wXj!?gO`dypY=Bn zeE{U{DR5RxYWQ~VqAI`2^4(Jg{#jPM@z$PFpfP7vII&c8N+2Gn^5S27#;r9pT*jSj zxYXG`j^W_{rdL&bFJG$PkMP9+#l2aVHY@r@HPZ~5~2N6+RYy9J*G-Pv>zU)Ds7JHnqi0~Wi-D+ z4+k;sRg7snyEQW zTZe+RV8wf~IOacd-X3#!o+WX-W3iy8mt%!09kND zU9j8z4%GunBKSEL!g*Zz&fXe0*hWYybveuyfP>BCb2kxkMfTO5!|Ud8Z@rC#;%+VW zvJKV!&nnE;-@${+Hj?a_y4{CY62t7>?3e8}rzGIs*auhY@^Xh!`95q1NOM7bGb8@7 z5jHwgb9-D&`aE}2to4w3)FLeC#F?a=ntCn{bMW`?8TI^1*uqiE=PIx9dN#Tot&6?C zz+aNv)1~S0CJqYAC+?-0v5(fBVIe&cl3Vaeol^s)fIqNxX>$x>uMeu8 z0A2eVZTs6$7eG~ia4hO+XgQHQ`GX-B5Y+PVX0^0^y3Djg9Z>bmc0di)en%rz&LjK* z@=Z7&Vnm-%qsvpQd!(kBI`PWWEuzv|kX4WLAQ9vyvY1xVm0V($+y!M~7iDtKlV zPX5^AjIC?OaSXm?47p`&x$P_dHpxH#RQAIracXZ>Sm3pn6;xWmAvj%J3;^QSw`#va1gWk$Dq^sO=ulW2J-Df-l`zD3i2nne z`Y$a1Kfqf5!VLcdyznn<^FP4c|H1_S1Kjiv4Cwv8!ZSTJr(S>1MWiOj!3K&efj?vC z^)ve9K0NTJE6-Meuk&18T~ElwKVYjQ#j)&78tiX)zRf#*u&hD!#Rn1Sfz+lv+&%`s5K* zM0W80G~2TwZ7CiT}c9*MkqUBN{9{mW%diI0?nyf1Nt8Esf2VUQHC!Oq$08vd4;s7 zRF{z{5w`HU$Z}Af8ug?*?`ia7=mn+-VFWl}S7_a1sFqm{lO}KG^xjR;Ezo+6gHO4D zA1HM5VmgkyW->@OpA8tCK3!b*Oent`xtsz*LSH+v)(!ujXT#rrLG68lc>V4lTc%2U zxUJ22Nt@K1@Xx;~I0A0G4^eYO5*)^C1e6=OXx5=h#9n`h;9L}0Qca+{L2??sCBxi{ zV@9XMdpb8Is?~VV{~-1qV8nc`GJ)OZ4LjzlO(k8AxY?q(>M@}=qvEW=^}Fwoq2mA_?xEy?(#3gzU+?)GB3R@ zxq=Wej=8|V=R-)tP4*vG&tI{SA;%k{x&BhK$_tzXS2-Q z?tXmJxT3{{KoUG~WImWd)H9Sf_+0%B&8KO(%^I7{0?8f=d^wmUz(FPuL!K3|Ve@$H zLG;yBq=zWp!V)zNT@E<02JN-l5aCtMfO-9J|4BOzeqv(r;NZ^;!^@HP#1FptTCmh$G( zBE#P^Nr(z7b=EnU)Z_>{2~5-&nbCIyYG|VoPu7$#Hg2xNqYm_}df9K))voiq!$I0! zx>>G@wVRm@1k*Qq`xw%`>X{ilHx0GkJH)$PZjhgBcS+9o1K-NOz2N{lxNl6g)UO9W zh!VG2WxFOvQNM>M^1p!-*(132cvJiiuD{8`CMCj)Zxmv~IhxsC4lEUpBdzhdW1bsy z#0z8HXp#xMUocWX59Z26Tc^3ZJ==6X<56Rvo0#vs%rYYZd-{=Jvu_h`*totDKdI9C zLAJB7myf%PwvjlUk}4Ni$`*`G!+bfI0%ETRn<+QfHDg=uDik{`1#5o1_*{-IH#yH_ z6l$se+$^#0$!~==oMpPNweQh#L+q^7yHH#UbhruJ;U7$2$ra2$VyYG3j=cQ7wG$N1`T}j$1p4o1Aw1->s3w9FPtRU7K8PpNzG~z1eyicv@pMnqumQiwIBi+3nLhkZ{bv)BQ`>DheM$az*kh=k z8r*#IW!CYJgT6>0$eX0=#~+<1OjW!}5?;UEfirIDUjl3zbznPHL?=v~JoPjPga}hE zc|*&^FwL)hdU3_cKY?@GiQZY$(=mMj{nYA)u8P_wC6D+uI;imDx3j26=lUVF?$2G1zZ8C|heccq6mJBV~)k z&LEw+!19HH@k~}ruQ{bLCW|$V`D6N7aF*W>hnDac!pv+Q?jMbPVYn$lpT3JR2Du^; zQ-{Ic29+ruXUkJCLPIrl%%K*iaT(Ql=SU%G{kDwC=M1%J^3rhNzM_wjU1YZ4r%^u5 zv={L9JKshG!fO_4X|#8yU1Nw+8ypO!1De8bPy-Rm|un?|DV!4lvh5 zGgF%uqIOGeel5QsGTg~m-RS5e;?v;3O7ElS?Pt@21T5aKykymOx$A9Wo#4l-<6mFjIPxvVbg_Q1NUoMmY1edOG_nh z8Hllc`c1y+cO}kmw#V8j=Ark^mz&oK4s0$msWHt`8#I^&)!jTa@vtrkFw|N%sf&2e zZ9_GSyhW8Osek@Xuc!Id{HLwj-sO!sy>j9o#pFTUG4;=)pR5?wlDT!u+9A+(JmN|P z0_D|z0HG@NdN)Kd;7Hmy?*(%=2^xnv(thmIAxF3X3; zMfqnO`sdv9Hb&H!YW*10%rhRNt5{|n(#;%>xjQY3HV`7WHC1()Hb0*{T2^czh&aA! zJQJBcMsH%gQ2P{z9qp!7Yb?S|f`i`zLZ>Bjz@wrbiM<2!&j5Ia0xu?;hK%JN_e6W^ z!A-^Pdhsi2qh)k&Ox9D8PWUuW?_|q%&0sD);zsiNn{KGw3Rr45J3&@a%aZ_jF+EfT zv}G@&z{z&OlK=I1w*AXZMXTX4Rcmxp*fl9 zkIqH!m1dQrkdV6riAn0;{8e=jD}PK!SGRU?a*3`@O1OenNaL)-HRvH`STyC+XNGNS zc{ZC&#jcE{)kiwsUl>7^~e{>@x5WXk%&1*K_DcSRIaohhG~n zX!#VuE{+L2EHAK_c#R@mpm8IHRsXu(fdIPemMnv`Zy#)%7Q z;WhdR9rN%LK!!(GpdsNta5C5vj6qepwNrtC^s5n`RE)U9%rCy4H&WHVGfsj^as6E6YI8 zV)iNjh+LWZVQ8Tx_vs#eNxLKMGunW9=k;C&WhcPm`q{_u@b8HKIWyeaV0Wxj4*`?d zV(DpOfULw_WPpRWa(OAi)?cUXQKQR*1IBO8sBQ7Oq}8SYrwI7Y2aC-!<-q~rnW?kS zY>D)5V`>-U^7S2~S`-vMc}1WvX+hSTc^b^3kCl|`U7nqk|^__mCk8HTPcsH^f=?nOn z+kTI_KS^TfBvcbIld1`kL^d!-ckw?7}In)2o7CCjD=$v3UK<`EVR)G zw)bCJ`jOzQu~BDh#JKqs1^>Rp{UZFslJ8)6<=FJ_lcC9?$l!dn`0y%IdmPMRKnsx} zwTNWujHKjuNA>S(;&$LBC}vyeh{$Hmg9exO6@MdHN)`}WBZrTzBTMxZdD%5WedoL= zbc*daI?~fDn!~w2{!&?;l@)hV+d+mfwQkRCF1; z6)$g!U3-uJ&;4EP#>>!U8>JZY{sE(N4HsvC@%PuD0PV5i8pZ?Uh6Rw8^SaT5ri(Ku z{?|1~`yGEUKuiRE-1YpJX!_k+H;s^C=|L-FjZLjSoqw?0b8Pq{!)K7-if0g!8OV_B z4svKBC_lBC+_Rru4zyFQVE89MlA!Akq4TS}DSPd?xBp%*)&T!T^jtLTkN=y6e*}!( z%i3LbZC#?~^H~kdOp2Uq;5-wT`nKcY^G24Au*43n)Y<=(bf<-eDPY2d=^jQ==Fnr3 zan?*^m9gqST@r04Zvx}lh`7e`hvdv|_IH6#OzfXDMA##htfx%dizXU|Izi;4NV6X> zS+19pjH9MB2-T2V7J&-L4W4MG(GTfY*)P-m#z8rEAz;|_N4Jo%k7W2tSe=WF0aB+r z3_oSi)R1!l2~$V#;j#v{Ep12+X=<1aRy1=mJdIi2m>8?&sxKRvy6!p0HqG>N@yC?} zsyJIoE3XMyND~BkV+SbSrB+Y!6S)%r##n{g6VqvjHWH$@vU^0fNv?o!^;9Ic4Bqrs zqmNMdW1~;tr@TeCnn(lb0a%?kuCw-$MdpXX3bY6AM6fNdiz7pl*hdfJ}y=)!8~x zJ`vvK>FneFFzbxoi!mjdxR`#SD*+W38;&RY5g5jH!x%+#P26UXq7PsB#M5t0iHx2A zLo0cQG8?%i(%>Q)Q?2O!91(P^P9@Z99*JGJC7rE%=fMo&zp{ux)?A8he6phxG4{7L z+wn{SZTg;>(`w!ts4oH^QT1idfCv;yRLDx~-+2{={37kh_=4!<-q5L$i)Rylm=?pP z>eS*v2IXEmCCxD}{pY8Kf*OMMH_l5WB{zBtWcNu#mY5$pT`H>!+8sLrq zsHX=~+lv|^@_Spi`08=NFn0koAo6!vXFMkZdMfurLQu;zEF4s(1dOKr?~~0QSun#$ z^Neby2h}9i@V*K7P;d7}E?$1pxV%=_`F>+_>x>d? zLSP7sRfVzB;)IZJGz5CF|HDt$kvNJV7~v#0mXoM0-6r3R z(0|jK*8obX+DD!lPNLNtea(H#Mz)jPc&y>8*xp7Sv6Af!bx=!dJz=WyM-ZyZvpmE@ zetyqt3fB7SgUl?F{Gc^oSduGLF$Q{xR9Ww_#r2r77md}z`mGncfupi7OaH$oSseni-Ja+7tos-cySV) zz3*EgSDJ3m*nZnL_+?o_M`KT)7r1MEu<_d?GL4k(HC*%_-2>0u?{Op~l!w6Aq{>_r0D zuNMx@y-B>Gg9C1g9ZzaO?>XH*2Vj7Q?*%C5_r z1D9wkh>@Stw@FpOUUMT86-m3&XiZ}q=hy~o70kIRrz4H^H(RXc(-oU())%9Zj-c*J zWew;u;$o{T<6bEC%#09egZktOcq9jt+8^Svv>IHIy(xfo4CIl( znrkWSBNi2K{%abz3--z_xs0W{l<4SBVq5J5CRe|vv62u?%K;>Vw@3G;2w9zP)W~@> zB!jzV!;3VjU9re#cYC!Mdl>S?_~Hv(*4C|Ux`%~`2KVzA`C%4Wc9&tPS;Mmwi!TdI zuktpnH&9$XCOOxMN56z=>MPtbWYt|hWs+PEO6`RX6V26AhTizVr+cM(j0-c>XyTi2 z3Pu$3hhGo(4fJ;>`3Pz8CaEu0!+ps&pYgCO+@Sk3Gyjxq^LtQ?@p$HVZKPp$M-XSO z)~g9HVFImD%tx55?^h8s_@#baL_M#lb*C=gqD+FxZSV^PlX}>WOMTW``Of9i5Zc_< zy{%czv6;``B8*FeW|2dPo0spVsy~yCZB-O$Eh3W|1B!@13s`LIK|0zOo%|%mabdsE zZyUm|l9M{)aF*RlI+)-L(VP4WPtAKq$J*-$Skto)VslCcd?2D_M_IL8aXB!)s@02+ zRjr-(Cs(?i3*C_phKo3A%-9a>{XvENHNJ0M;gvkXV6b?|{!bkm2|ZR&tG2Yvd=0;_ zo{3%ht52VDt7RB%Omd0!!X8a?=N;X0c33#6X7~pbxP@wmusWI!PFcyS;2M!>lob~e zps6?2cD-ljP>lfnORut6Y!MkF##T9=W{dl_H>@bnYmv5-%qMLc;@*58 zmmikoxstY7tz>_2{8Ou8ib%8*^o0#@?8^-IAOlLNBtdzabsE;pRwh1*(xFaGqb-xE=FO_k2M+~|Fi>0m2H0&VPt zpsrvcKMv_xV)mnxW}_v0 zg^u+)6mE~n<{oY`gG8lMLNw=Kq`zKSl>K=af{JE7XL2?C&|LXd`{Xzo9v9-3QZD>Q zFbW<^Kw+8uq59DVh0t}t$%cw;j;pc;T9i&Hd#_$sP{Fkts-{tTx*_a|LC13mIr$gS zFaX^!=zChW zzG$#UM0mda`^6`;+s*e{^Gnu;;uq2La`nPLRUg<4zoHFz^w@3E2&`Z*a00J4$nGh6_kALo)j3K8C+ zr_3sBnZ*VOF0#v`b{B8UBq+KwbC?KG=S3EIMja;7$VVa_kxm!5#Xwiuof7>KY`FC+ z2F5N}Y$a~TZ_9^?$Vp9-Ve{?((4+^SWzPRy9>l%h zpmhpYYRP;GD>fvqY}kB-2d5jl(uN0@{e{;n69^Fy20Hi>azr+BLC0qq71E3MgN2F~ z%@cH#XklQ1X5`=mW^LdRpol@oaWoV(1S;sb(fp6LD)~>HRC98AG~z1WK#WfT)k%Qd zg^HX6FD+Fb$ha!`NU{nD^#on&!~Y*e{akwdZ+8Fxng#y9k_x~F%{|IWH6%IE8PlN? z>p%>bNNna>7JZSAi;{yPjBopN`u_VgtB*6Vdm)=3PU)%HZ*8MlP+siZr z9pP-<9c7ZzO_rT2!-3TKu$`*;r`Y+WgWoJ9vC0>6eq8re8yh4)tYOVP`AmRp;>&Zt zT{M)XV(I6$;$_0h8D0Gq~?F%3mmg@!h?uEviSq}yi+-$tZZR}nf@4XZ?|L=90(F$njyA`>)71?@-vvx zbk(W82P{AVXHbB~@|ump%5yX#-7Di1nZ}l;i+wsYthG7od3=bVbug-l+38UGwFAGl z@a88>XyfR(X}Llp!;mL3lBuCweSS5|ZuU$)3)M%2Cshp470_HO|7$7U3gKEYo>fsi zO^iy@+r}Xk(yZIdvC4P_!p;Ir+dzw&Y&CA<$F`6Wya{cwLNls84q4I5Hg&?VQYr3C z`3=2o3V7nR3q~&_!yx6ir{#T~sp%qRR=Q5}I92FCsa8?M`F@)wBkVWC0kfq&p1eac zwRlRrOfz__(&c?Y@H1N!gz&MgG(7DlFx zZwN#VFcMbPLM0LTN15q7>FZmL$A?qtJcW-MU+jmPiqD=^Fb5Z_TCXHJ1qWKl4Rhvw z;$chKzU=XpzyQ1dNq54nBPLh4R zqd>I&Ck#sNUSSK!0kDJ9>vL`!xcQK3R42%4+;d0lhuBtEcMSp^8w_ z=Ox)!+V~mWc%(uLRI~*Kldm&g<|Hv4z_Krzpbs&8?3;H1dJ^>Py#%+hvA$5kAHh-z zNxyk{|8bI40q}FR%{!*Sh*K;`m*fseEsH0Hx87MT7DZJs20*_-aCk6xbU^|p>@d&31LKxcqtmv*GAM*S5h(1umPbZom5ZKz+j<1Fny%J2((A@E2PrBR3;WCfCU$* zK@6)wk8f+J|+tV-xJvrwyJZj9Ablr_gp=WXm{T#r9X?hy3+kEvx_U*Dze2mA|eC9$lDl5O>AIuINC5YLyDe35IyKplym)El6 zETHbLs2eQ6U9MOqXVoS$*FBRyl%`^1;rcN)UzZ9SJD4rdQHQWcbAIZLD+%`$E z?kJW0iRup-D9%#y2;uZ#U$fGfR{dL8{|YJU2$ztOP(?|L1{FpMf7}2C9k_``DcTXA zBZ5X4NLkVZ>JJ0O84Y%pfyK^nkj9kpmj97x4y zp0XtMU1cI2>P9XQLi9o>G3T@Ve`E>XOZr7I(2GGdpj(_MW+HVt-p~u@z62d@wXnEO z^nkC4v%amk_^{%qjyMRs{t2ujuuPTsBk zy(*r>Q6! ze=Ini;yVE_+Xw{O(JU0vg8Mf^SZ!iJ)d}(@f~k_A+$co@NXuC%OK?H8(mO34=tcJ) zF+lmRr}2-QVO;p13QtkNnAHQ-kuiL~D3t}6*fp1J!^5Fn`4(8t;jK13nS?`P&f$7= z2!v?(I<@Fj2LU2@7;_EeLD5fBc zApJ)hE-VBhAYi0iJRxg$@;0ZfNu4tW}E4G#jntGty|jD zy2q!v=PZ~d6}vFi3cJ?E{<2@9T(hflcV;Dx;+i(zJ?q+bB|r;$AwYP-}j(hDMjO=(*7JHj{>2&`L!Wc8A`k4Y~W3AdPq31Eh|cWfd2#axV21va*Jq z*mqMPOEz=U7WhpeKD4f@IC4 zEFQfABJFb@3>u+A_|1v`dr;?H>~0hTYfVg^Di|ap*);jgoMAV|Co7*DB=^d>Mb7h< z?)oMVKZvqz6q9MbTjFv`dIKdkK$<(>TPNOJOS%GcI%ancZ;~9GR8rmACYv6M=*N(B zdAfch@cVWX5BpO=3m{!EszQgOo)-VRYWuf_31QP9NH>BYEiEYsq6iYwT?&G9=Ryz= zkP>jy2q>U*cS}o&ba%IOeRFfpx&L$Sz0ddFd%yd=&%>JYH^=ymF=NlQV6%1*#`W{? zeOA|1(#B(r@5^w0EsOV4L|zJpyjk=*EV?g18zqB^k&7Xnm|;mFBKaN$^|i?H^f%*T_GjiZ&fyc@_iU?Wt?Q{OCU2J;;7)8s zj_1RykJ>i{QOi9R4#(e&k54=kkUE<<%ow__WLcfC?LhczcPrz$wczL^&O}DTgk#m3 zCbmS3XCj&DZoaBdHpDS%T~tk8p%*i*;0#={?W;SsUd}kH{h`R~+`Lnr@Mc`Ca?;d= z*S4CqJYmE7^23CFf{J5#Gr5hfY^e!4&%{P!T1H?(ZO<1}ks?XqwaFgn%3~VQYL^s7 zU$yPHr7U645atpQCMkSlwE@rT&mgFY4x;vR#Q6D!C<2j4@EMg^0KA~&C-^AQXR+w3 zBh;%iO}e?EqZ;K2YQ<+8S!|)96Th;5Xi~m5?~kpd4A@Sdw4YNhF2Gg4IBd_xi_#x7>Gs$Z*Wd{)N0Z0DuzF0r!Z@T) zQVn0e`b;Y#g(R^)-{c?_ys%8~nVj!CCRVz&J<*Z$Lbl&H0Li@n$0PPSYBSfU(B1~y z7*`{SdyXtCb7O%`2T9z{R_k|4%))po4Cn4|6C*F*;@#IrD-_FW~`Wh&Sg`yRU+ zrV;b0sy+8pZ%niP8RE$;CeCBD(_IUsFzeJ1+BXHJFgd35`8B2c%QsN){Rus@BP7FY zVmj})4W`=n6r#w!IY0w1kNoUPAPuSds$f!T-i-Ma0hc6D#yaW^&br}WgX8;7PKky7 zUDk~+gaQQ&tdd{f;^r{Qx@ZFFKV4pk#NL336bUPa zuq>=~S!_u>1>Zc}i%ITbSQ^1p0Q>8*c%~RKf|^~b=y~>(YwJFTF}@0iDdxr-aGCUY zhG6{J--s1}%VO`Vn}1Ux5_8~vW9U@S<7XfXm;dM^iJiwRuc^&w70EVBo!uS%hkUEz zm15H6XUhuq#}{+(7t_X>@iy(Be_MMblQUFbec_uXs09Dd8m{Ik=@ElznRmG2-#dtM z{8DSWu`aWZtJQt_%k$w!f2#7ptk2Ey+ilB{XIrwTP-0ZrvtjVjf{o(*(-FJSXPa(8 z=?Ur~PfzwG`f;-q(1rM~@+Hc&C;0K1FU?1_asH0~ymqKRK_T zYTLge#d!J^x`F>ickDjPB0yb1*%PD0xrun%&AF+I`F{YB-q1?^Ly^-Exn2nV4-oxS z1o3!+9^^2<1Kv2CWJ8RB*akbg%h#mszmZCkjSfjRG4`*_(4P5%P7%9;2{De&yzkDg zdHeQYbXub?QVB&S`&}Gf^;&FAe-X>BG=m?~Xy%4q9@4qATRiL*t1dZeuxKo-fqjKz zO`>x`G@2Yj9|81t3bAEIztqCivBMVs*b|(aT7fY5p|~zCuQfjBrkA~k?JL@e1jnNc zeZJ|LpUL{N2WcnHT*U^m8oA`uajqR)L z=li(8#2!=AAOLmd08l?J}r(XQOWn-*4p3<_ix+ zi2cQcsFSs*nN;`#M^S=$`Y351Q^K&)o#)?pOP3@U@_y-~xLZyO4{gQmF@+i&iMU(H z{4x+xPwEjel>x620Ke;o_-q+E3yd)3dfQhP>gGM{-4_(^fiK_G$;%h6D%r+Y?ZS(u zGr#bD39fXEM5)QJ5ZAhQ93sAqTC}A4;0|i?L(R-K_$Uk2Py7bLXdr)5?O_s`7p_H?2!Dyks*JN5 z?q)Le(AKxqXY2*wUSkr)SS_SWdu_pDfv{Lo0v6A3H}&U2_0&MWsU_7GSw!QXui`9L z`o&^z6uZrch~r3DN9R7K8uN}OyWfz(Qj9iMMplK3N`|AAyx+Z>b47XFuSXz!)$1Gg zeRPpjw4(A!vZ(T>PWC5S1k_9UYp2#eBxW_+=;r<9XVyLtiDxm0B@01J!deAFnR##9$H6Zl>+ z(09o@vv_y|qGV4tv`0c3KN36&=%=!Juc9NWaKbc7+UdwuJvILxHm1PPfIhC5WeStbGDXso-MnPJwDJIYSz20H^L+9f>#5x zP%!$!jpLwo7pM8NI#x4xbxaetyaRyt^#Jr;13;)Bo48rl?(C($0B@yz4mINpON+CX zHghlYM~2I7a?8I^SV&h9!HLo#qK;mjnKG5v?9s3YG-9=2$cz~?ihY;R{_2Y}*++VX zg%XfvUnTce5Bu=^Xu+B`KPTN+m(3pgpe6<}1y@lPn|{j2+)7CEb| zM$rmXqmW^bHG@gasfs|Lp0Yvb9W%BjmIS99jP%#SxfJf~1DOiHHJNalr?P`+vVY+< z_Z0t8*HvHF%B|qjr6;WCkx0wsdB;=s0yAaRS2ggvYTdV5qpIV80Zq=plv8dbu77nI)$`xLnonm~)-EpIDcx#hsol_U7W-fY99| zlM4T3qs!UjXXejSxNV1oFjhx&UE!x@R)^bO=2xlIKg@6+x-fn^srS_TG37A?)w}Ob z=boEu;`469sJ<$K8=Ol!_0CN;JyRm<>1MKawne}9#VWpIPwdzBUJ8yoWDW%`{Fpu^ zs1jOm+5C-yl5RD>^=7Jli@auL=nDaM52_l~R{|{C)8x^oA8=P+N>#HTZ%n&3UgYOp zGHnbrXTvn^c}PN8zpT@7UZmp~A~oJPvc!h87pUqhiiaFXklp`NcCV*F?)XSJH=QTIGI?xkI+=Q-;+-88tIo!FPrV^V*le;udg>rn)%}Ok zD@!=DpTftC-U&qc(f8Ny0p@3-kKg%P_Ym9!QlS-% zO>XINC7-{`%9{zSV0Zy6!1iWp0`FVM&wBvxVM#6xS=y%rUg@_$i+5@zg45sQ+DL#l znMlvz=n!Dr7YLtcv%2X*9*E7}{7^g4O3Ocw#5Un+by^D*N1BpfD~SVcLP!}Qzxl+y z;etwM-e24nF;6!-zo~IP;V)@pa>g8Hg^w(%XX}2jFb{vaQI)60S!h|HUdadz_R+vc zTJ*DZjY(hT+CTZ0D#lsJ)}UVbJ#R>R@q_9^4_#xpf3AIyUQ=l&)7OB*itl;EI*WwW zd6qFxRd6@$g7hAgbuu{@f(|}YjLj2Pf2)y7G}@HEhb@-VgAx^GGEkL`jt5n!){33S z$vaV9vZM>+K`2Vpfzv`7ZL`o(!l2!;m9`U=I-Z?~V>0}q=ySO1vSWHNMoe>nD}}=H zS2amZ%p9zyU;{M*^}}zz1-=@@Z)2*y(dD$Op&2davSP5kCOrioE%h7KCKzcvWRxGp zV!Ju?RltLR3fcF`x2Aj}CiojnWD1aJ*g|o4G#g+0v~`-JimK~U&J=!t#*xB_=g?hq zL{k>|m*a3@wW`qyye^|nIiEjr{0M#l0vr%v>4Ly91|TXRn1}{Q$5(Gyjhhh0^4=@+ z=?rfshm{9H#;rSaM>Zx4ge(=XsjE}ZLq@JQpGn5QMaI;WHE4Cb#!ifxKm^txI4^4$ z*ipuFJz3GEZt1L3pB>M}mV&^|Xhd1xaww>eb zUG9JvCF{;ri_&`~YN{%qf3WOb+K8G8|AuUC(0-O~fi$MEbE!mbyCf2!>2$}rT&A1L zAoi8}Nt1jrT0-Fj!zg^~ak4Wm)r-BIcCj~|Z-IHzsZYleW`;2BUn8qlh>(ydnDos<~ybCK! zg6c}uKd{v+YH4Y;D0k1^yMkMaiXLueNU#x$Udg+#P!%db=MUTa&~e#mN#w$Bi*D4d z;&+g>-mJ4NTs#dt{B*mTzc-plj(s=N8XVSxGdz+Pfh zK^Gin6`dTOvx<(5g_AriDpt$z+9nb{vw}|dr0-FzA2sjnSpVDga%x_Vs*;;ahHdg8 zoK|n|kL+f4;gGD*9b`bxW3m64`@iA;-o3IC;m&~=C>F4aLIGBZ4ZxiV0bu}$ z2myIE{FmI7{yFx&8;P86b=@#srd(6Xbl(o_yaXQ>T1WHzxW-T{W2dpvU4EA6?Llml zEav(>|K3|eCRntbIc>MZUucHkz1_A$ct1N?j)T?cZhY{c|#*|RPn zn~Z7M@6~)nHT^hnUPCylcK%2(YWDa=x2cdfFE4qRL9=|oybC9Q(7H^8CVsw>*j_VW zd$l=97&cA+Bw(KO(TCaN%?OZ9%t#(KefBtD9xe)?&@fY>TdJFxb{F@DhNd`XkNYfm zs8W;^0_NwlI&2}&Lq75_{P;V~yI+5r3W-a_;{>LqZ9Oj*R1|+gMbGl{lal;r$<&C) zeo{9h(fv^vaIsn*QryA{}7i-jgh zaVz+Zvr?%PXvjPOQXf7R#w&1Kg5v@L#W^^@mq0R}zU{S>we=QY{Rs)Mvc7q(dJAnd zD+|9!S(()|JvGmPzH)T#`Gap zH~{VezzhImK+)OpNTx9=Ga2gofTfyGQkKv)bDyF_+Zz_TzZU}M5Cr;;o zn47vV=jQyp|_Ih3CNY|Lef#w0l5nx*9i`C>p(8rOCRc`uxbI_6?W8W z1wm zs}0mo?9#u?wBBWP77-|iyr54*>5`J3jPZYG!G?X4U!BBQsCjXyi1E9&7{FLrv2T_> zCt+aC0HP;A6b3{@Kt$LnC4CX~7Shai2gtf9eOgn8l(b$Hu(<bp;rYC=EUXgOmBfgK1$?tnlI1Rjha zxDSGA28~4qy3_f7W7mV;Oxj2LGW4=GZ-38Ejo(+eF;5*K%{_JW_{RKX7zpM;kQ54n zUJ&TL2SK$trh2_eBu4Amtsui15fFF~f`BLz0uVlk)*}Ff3xei8!W?e{`kU`vhzJ{9 z@eu(Y2miEJ3<%lJnbh>)k^k0M?mbXlQ53xL61Yk1&-JtSEl0(*^zK)X=Xl_;fScHyz zavZz>lmnpd1O?iY3Vy628_QdtCxKTvkeLHnb6s`PWK1^IIudvnHoR2@2b zksh1dA7*2BqGn@%gX0(+=TWnoNQ}*e7>@%?=p%62j6d<~*3yB7GH5i>k%zTNOY%@* zzcm#i!R)YQzx82OlO3cRn&WD4QGkXJXt;uO>fwaemlRM8tE*#rZgA7XZr;Pz(V@El|Yw z;-xsHP z;Jej9o*2k;2YLHo3Fg6!>xvs+S|N-$!4eDrAQ=E001)m0&WS)F2o%;pF%A^P9BGHY ze>x?A0SSVc*?^hNf|<2}iG2hU6GKc4EQOPvxOZ(C0K5P|ftYDBP>4Z5;sGQlKym~m zhh1&?!w>-eoOR&IqCRQCf0(%EuRxg7_LHgT;yGs??OXHq_LUXEHTUT83Dpc~7_sU_ z+qpFsF8o9vN4vO1WUcJcDSuy-OtbFtlm7Y01*H{?|S5ilUY^c903cGW5XwG zQKMm8`wCP_Ko$R!&eC6nhS4G&01pA+1602kB-462{G?w+!GbLA;D12-;nv-a69lI| z0_PH12g)7HBK-za$s(T)UsL2L1c3bkO`e1iJC^-13Aa`RyI~QXRs*Bt(BFaPubetU zu)oNEse@3K3U)WU_=rt>LR4CjNDtm4TMJ#h&;VgfC^Ba!C93W(A@m9sM;u$_P16}@ zNR9>|VgT{Rv2Cu2;Gja)jg~~O$npmX1mrVmtUL`eucF`RWQPNQ5dbOxs5JEniSIxn z^^Zd4{KgCvO6V0eHyvp`=B4NIBB;e}ZjR3Gdq+}>ujQbMcuqYjYF@Tt0)Yt#aG62i z)!CLm9bD85EqmPs&Cf;6vb8TG3`)zr$>;XaGsX44jW^ z$X^EbikN^v0R$c|LGT6y)vuh7jl4U$NzhN!JgQq7A0~`*5b~$x;tmCs323s7jTzRO zTl(>*10WOtB4cA1`-;}}+&%cvP=tWpul2_|lsQaRRt3o=rH%1FhtMTRN=qBZK(PK4 zF!!v$vrU$AQ?f<3+M$x5^uscoc_B@QvDU__fgyBDMUWx^#OOdH{A&n29kq{YmHbVa z5+wW!FNHq~oX?72%O-;zDgw?+2XJ0af%7u=RUqvW1fM7~iZD2!;GMo2(-FkEFtd8K zEU_*J@}ogMGsu4m^20zrZd|xQKJDg?TmDaQCZvNi0enm0PzcB(23gD?>k-KEsxWu3 zludgCCL-Jq1}6gsM+ye_5&%^QKo$VB00<~4RL;K*Sy}Dqe*x@HnY?JORQPgB4i!F0dUeq;_@kKg&p(2LL!qhx$T(ZRY{=-l(GbtgCxFss>Cxd)a)>tx7qlznh7lCPp3tKWw))H>Vq9t zCMBZx411E~Gei8&wEAkOa7fcvKOY+j3#9};e=IEaHi>Ge?UU=F!aWww*5`3XdrlKt zZpuBK9R*Nycw2|pKzfIvGRc16Nm>mj=c6MY^2L4oknEyZOznHMS(g{??#rjiF@Eb3 zB(!;*L5_8`?xGX0Fkl1aom zV;_oK-^<8KG1|iCiPfD7gB9nS4WPxIoMk0O7ncX#ezIlo!s@vGDzk$82m0`$ly&X5 z10&(6JQ|+X(B(Jcg!5U6q?CTeCyt)g5#fg7*a5AHzE9p%oo8s{aJ3Eak{?9AZ!l)O zvY$o4C*{>=DIM(RNV~d7x#H&{^D?q;^i?;l*WxLdcL|a_-&u=)R~P^8EdKqO zxHK1SS_*#QIMQs`fs+0MBe=G;@~i;ymXc98)|o0x8_q)sL45HK`${8UKI*7eDEN!0 zLL=!-;>250v&V5fxCdG1I3HRzB0I$QW1~_V&nyxGokCjEx5B9>mF)8^1Rv_`~1I-iW#1KSS-v zJWzLpp41(|jLC}Gr^<5vMpzv{;in5yDY_#Hj;WFS&K>@GwzI{K%HE4qRzJfNdnfG& z>lh+@4LW5VUUKU$h8*mpY+j`5^B3*yc7)RGG`1TcE&P7$eGD(iJpkv2^Eswx6BT-Mrg(nKB-{<&ch0 z(JsGfM0xXbw7RnNh~$mCU-)rvy1%3QQqn{xMGN3P>YL6tB_X-HX9Px30wMe|Z61+w zhc_q_(|Qf}M`8jz+S0}hukLr}$BfdRGLs*%6R#E2XX8?m21rB5UE$c zrM?0mL8wK&XkTU;9QUfwt zz4PX|wlaUJfid>^ho61<)3Wt^7s+Q{H5R8Whi9&XzY{i&cE7D^3~$e?4Qzj#Zp+Rv zcvc^-5n3NAu-f6Cn_pQJl04cKP7W2EvWaX^n% zs>3*-pWbtPHbHmy<%VuC%|mF}xvw(0(4jjGCy7Y#aWuKeaL$juN^#+GOTddhT>c(v zyKrc2-Fo}J`DZGL`vDHrU7UggkyJ!EJD&qYbPL+H8dC&xVZi#7SU0vgVrS?+iD8uizZp+Nh!LrV!MjcIQ8 zZY-T4ln_GsW4jCpH;Au=Za9iQDO@6#j*qjQVEF!2^Iszl4{wvuh~D%)tlr#|%@K8_ zy0K|fT25Q|dq#_(q<(VB`}>$5OtSCtnaA195d35m$+KD@QKuC}@jW~P5_SpKOVrKn zvT}&F@N#Arzofp>;I_vC|EHGMj(3)0d&fgkylzRHv3L_End=Aj1>p(zD>$aP-Irqi zPKB8&%^W|>=xB_cH1Z69MhGw{4S*WVj>fR06(-^S8tGIb3xQ6<1o+zmeX=CJAQw zZ7ebv@{Sn$%Psf9s5P1IAN+l>YFECv-zQk0^c2;`$q%lbopYwkH_ES*v8@rTJohH7`L!<65&6~bZobzfG=XljTjlLr ziJ~!K5MCcQjT5k#QfF(E^|82mFGND4tgS_1@m(9vgb+EqRD}fXHg2HOIgag}{QbNp zv2r1*k0x%L6SWu>V>@U59#+G(_MC%egd2hVbKkP2wrkg+($N#Fyh3<+AgPAE`V0Lk z_-I?pZ)bW`K6v?D#&EbEZnW~(vgt9?(7uh*18fg*RB_5Zlp(m2i5L$kWsZ@v6B(MudvM~|Z+kK~i*M`WwSXAeDO)%h` zHklBjtSBE{Jb>WHU4nYpnf2c|!)>G$Zloo0E!66lyKtV&Yjd$4v!3bl+!{{r*sS@c zRj07{qZfTSUB^xBst_7jcF7JH=xABl8_LJGxzv1|5zNKuM7v+(UU^k~RHQG@JRfLm z>%f~Z6`nU~g<`g7Ys;3DD6)q#tfbGFx5Y#DW4U~IZ_Bz=zoK)k38{PmC%CZY**ZL- zqog8A&|@)XER-!sMxFSmXT#z1{?`U}g|~J=(}PTCgGfThyjl=P^7|fR_vf!Gu(21? zLh%(lCkyI#hki*O&7Wa59<)=KoKUtCsE54Vv3DDgUv1~dQs@1$KV~ME8UK#UF~bqp zOzx<(H+t)7@?D((-WTg2&V`FUFT*wKJhV)?JI>{nu|d`ooir@|+*yB5ewDl@dJ5pR zAm=oI_sbOotge`PqxG8Oiq6K&I=7xC-c8ve7fiTY^z^LCESS=Vv||5owd-L3?_$h$ zjZ>KZLeIE;#>i$(heP6UT}DlNQu(5M;ka8A%p>3HZ%yXfzc<&ZYWI=^1(CQk`^SJ( zE8;IH6mMLg`o{*a3pVsx`X1>3A#>lTkmWg z$QGwwMV~?Iy;Yqgc;E0G3_WDRO(*ZJvxtrT+&NeV(#rj^L_~8Bs|n1Q%YNDF{__pz zsj7UhG`yS= zLm}$MrF&Jwik!4{@uQ_)X*XyN*E51~@(YpkswtP_6Y*#ynpY{(N_xQ;7+-lw@!)J| z!@?PP{03pZc|k-o+QYv}mnfh2@!LTty5l@fxhE9FjtYrL!(|G3mUTL4dPK|(rPR-d zMRSfakRbW!%DJyTxfbfq z<~e0f?)&z7+hG6a`^$s=dOeS;_+hi(ilUfpHa2|Kv0<(DH-DMlOF(D1+%1bY-l@@= zmN6gs9r}?v+PHP7v_NlG@{TPp;@%_eN%0eIy~>^1WO6 zVli!Gd^#H9IIr(e(`_qWRdDtCrD-fdRzHqovO`Rrn?|Wl^&TdOv=EHkN(`fGvv&xa z2!bwL1vkEhLJ7Dq*iri6T*^1Lnhc^!qpp?>8#L|qN!`JN(=JPYYnsBFzv+=K?$iD@ zK{|aZuwoRlLo0!D<(m6}svPk#en>B%Kg4%a*db$G)2dgF+L?H1L;;S5KNv zZN(_cVre0aw+L+CPkbE?lLV!}ojwq*9JwZZq!m*g=qe!q_63URWw@HEAxiu+gs+SuBehSw6e4^Sc=tW{R6){%h2$3V-;nv=OuRz+R|fv(0J<@O|ILB@$VPF=US=y* z_sT;g+j>3u`RhCy8Fjmh%FHNphj7x8NiMF1wdwu2joHGEZ!rlH?`4<$MrmsvX5tIJ z*v*s>t6IKXmk2Y>eCU8X=r^a`=llvfSvfpCb{6Hjn&T9_G?;Ip#eVDb@XdM72=>_8 zA;Hk-Lv+;*G%F_$jP(urHkL!*vZ~roU#lxmxct@!CDyC^HwLVJ?pY2@)7GwL44bZ5 z_vu^J+g)rY`bQhfUKebGd&>AZBKY zE>k}ZK=ewGiYxK(tO+=q}kpH>TXc?g8C<@e_0g@2fuT4OnT>^2#)XI*Z{|^ z4`M^=Tm9+g)`8;0PRcAzLIADg(MNi zIgMt};~_}N@o2A*`DA8b(tNi5h_A9%JZjm#TaFI<=D`CJhHt*$77IGK#X(%ljM?>gym3!g~NJ4;w3`qEZ#O5>o(AO{k&;Z~8 z00M!80^G+@_y9Z@K_^d07_y_gT>PqMP9%eco*)@3d_elH!ifBi_%R9rcK8jtAxg{# z?7W0NntF^#g<0mPs@Y7SAq5)tkCBWUBapsB!t}`R79~*#vVCvRk)UEe$Uz=M8dQN$ z2zb3w2#CB;2=+Zt2nO6y2#VcM2%=n32pn8cl(^{^b3@8!bx1R5UuFtsp3RETNZ^Zm zilhgxt&iDEF2~h#(xB5W5cT?vn%l2F`vSLtk%k!0kCwu0g4+}gs+-p-i+_539rI#^ z+_h`@9YjvfjW!Zib)AJWq6GJh`)xfvwjRLd3q9%1c8QbLzh>j%b%+KaF;9A782OVl z>FQg4XrHQrF7=Jxw$;;K5dyGv#+z|my8a+#_G0?Z@=><^&Sh>*k@Nnl%-s`*F47?z zGqWz<1(!Xqomq2w13`mZi-xXhR#i}*uh2r^U=xgOAw0XCRw3d@c0Z&4F$H#`6-9{Z zL`LM}#*5wGUIW}eNQ=i)<+0+5d%5I;;;D>3y%H_L<-?Uvesje9Vh4TYvU$PPNncLu z0B^K=&&XDPDjOq0aQ2hXqY z+Z{h5;cy$PQhPSCWk172{Is^pm_@^!=}@z%*)`fvKbc!>*-`AcBU9a>)8*o-&?$-2 zZ($9dXNs~{zrS&*=un4TRSLQX#M3jL)JG3kYEtXjRmOHy4+(0dU+H;5vzJ<)5gyn} z1G`BpJ>!*KhHZ_A)MKU=iN3k`_@qhuOLK z^ZmJ$o9o!NK^<1uV;gVig3HGD1+VTfbY7~Pw??^F^}?yXNw+gmo#uS4$GiLG-szV! z|B~Rt^4hD2aa_)3Vx^CFQ$^ig*Vsxvy#$hs}0@%tq1u5>f$qSu$_o@9-3o;w6cw4OM@ck z$GVl@HvPi}y?Ia30IGP;Dl_1~qy#x!=<-+Qk7kt^OhyIim%;qiUMs+OtSDKy`tjsFj9=so&B>AQq zr@}K0P7h>1(rE?Cx}cI@wG?gDU+vc~p{3irPZZESJu`n3um~-GH#)ihQuDILMc|65 zzk#a|-CH|JWEUFAJhLiZb-a1vlH~Oq2kRte_LYgcesuBAyA`$#T#t?}6<4_|Qy z&FVhI!(43N`n2bgpOyK6y{VcQ4efb@k@wYPb=$rIrCA}g`+fIAz3aTI8nh$rdEzHH z-{t+JVSY^SYd9suc)QZ=m5J@0(-aL{qaZLvxz&El2H{$BeufK5!=s|uE0`_CU-XT^ps%n>o< z>Ysw|NjGTxq9>{=$-_+#c1VL%?TcdGK@&nB7GENsYff&O*xwC04wd6qLT zWqNUvGq#TLVUFy^$~~4olZa2flZV1NG1G0I#KR@Mw}#)xjfW&vio7vB9}Axle_M|~ zyFL8&>X+YJ$&ok&X!de9-y`~QXmW_dOC{Wh6WDW~_Od5E zRYZvF(X)c>R=>)``&m>B6pF`s3<;bWK zlGuz@w*|gjw2UD4XG8~ych>GJ{7Q_}eWqH8@=TA{0o{=}<&H&9Mc&*1B<(*dCh9XA z(`4(4kH?wLyk_un>-9$SJSxlFTGvYD2~|kO{EOd?o?$Y)J0D)oFm*RPjeoNlm=&2d z9s+7y1qvC(JYw#6z1x5N zV5a{PswG6vw)19!-fPX@@Jj{y)Tk!ImFUn#+KesgW?CEcsJV#V@y!bYQP(MKxdlzQ zM?9B?bv4YqWg!2l=xDZmg8x?IbK74p7Lpx16vrD~Srgt_)ApfGrPRg@ST){ksHJTp zVv_8rLqGlW27TH4(3g<-_ievU-k6!$$&2!A8Mbsd6wL*BC&t|TD9in38b5e?@#KZp z#US*wK1L!<^bXefW!ABklQoZbLCh0|-a_>xaZEYSw4RL1{wT(TjevILQ6s0Q36*@c z(LK-cla9!7!)>E{6}QmUJK=dKSH2&}u4ur=%3QAOk#X#Bu>|dIn`A)eM^^f7*$Qcc z1bEF(N48FoI!m9o*hw_}ss8Q}slT&t{o<^}liVc5Z11R~85{fK=C<2zbS&dOTUY8- z*`;pt&j!WrKR$339I$u|Yb0xx;i>=dP(Hj<&)=H=ampo`a$n

f^`{V&hyPe(JXu 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 C@e}d@ delta 137185 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≀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

l8VB%U)jJ`ZfrHa?tG?dNY|J)F1T&(S z&w<>dpUwM=DfkaC@LZD^PEP3hvj5tSb`00$K-C>^ydkO3wNGKq(pXoc(6@Yic~dkJ z%p%ddn4nip~POslv+$Dzs2v*MM*PyM0~)lF`gq;JKC zrSr}e^KSJXl>->%NP0j`G?$j4ni>ktkPnZL9VoV=h7S4{Soo?nGm*b{u4_{5;2c|m|vL#q2)^dA2 zP0*jujIvgSrdv7{OvEo$8I~VEr=^YBM0(vfaQb0i>|Do)ZaLh7C38n^ z>A=)*w9{=*MZP25Klhese};YBkMzwuG0K$OL^MH>t=P*Vho+i#d+l-f>iq}R+Yq03 z#nC}22}^I(U*%wCJ8K!$e$=Juq?tJnTkz$oWR_GMcq2^3?ydVu_mG;5I;q3w9Inws z+q8QQmL5CaZs_v@Q}|pFFfpFyZtxMJYM5N*$7_#htxkMHZeQdcRR&M&oU?P8dP@H% zEbPD{2#r1N%fN2>$txXM4Nd;CN<&*XFwNiuvfdU z%GnY=>Mo{rr+%&24r3nrWpsk|ISav;Akud!B$jC{)!wVt!Gkv8O$&=nA6gQ_&ym8= za@C~UM_=q&m~9}Ma_j&bl2NmtDn$gDF3RKEAl zhA|+~&Mp>C9Dz%W?RCrr9+A!2R0@GQ%@@M!Bh^gD-`T&xk6=MB3h6T-OR(paM0ux5QTwp2xwj>bN$>;$yrwJNsb-FtHKG{$E& z_vJW`7@mnR{x$2wwpif?uj9hW;!xO7k39YtYb+@&D^UfTQ<{HwcdgaX-C2@)=aRX+ z%z$KHp9}fHlPGe&`Q3wvVvdiYLheybV_xS zPooBDXBLJXmi+iC{14jw%16g{Jt%L^U4u=~F~Em??y8a`_OioXOiJ%<6df zHS^DXrghPJ(tfRNavugE{W>(s_hi68Pi0{}Ze~0qs0=l{4#8}m%1vL~%_T>XvFSc}9#IGmT4MxrV$IHXfdkBX4ETI@8lk?H0NsB3bSL z=hnwHzGUmt+$9p&1Oh6TUa>`YcsCRe_J?X%t(g>mfK&e{k6AlPr#aLb-(%0zGaRQ-TVBv8<8nx<6^Pt0oV@Fqf_vt}j{)49@VWp$pBQMDE_9iMaWGW%)5=fL3)Zu;#=BQ!pyR(vHSj=nI)= z*xgCSesH;CQsuPAXK?yk{c!SG&Jt*+jWw-F<8_i;@2`WAUf-*i^!L)A&sncb$|JYC zRx#P`6jlj+d0!U}eyLtXi0cGhh6-tC%ngKZWPGrm7J1R%UbH{w9Mozkd!4qy`odGs zEO!H{b%_FWp;Z>s$)lv$NU?Z|45=G8b-JY37vjC8zs5Ij6AFd57g6i)L*v@%TJnN# zKOt}MKcMCeD9jwlkb7CM$lp>dFoXM4ZI?~KezycMINJe+ZSoLPJ8 z_q*>M6(~OpM`r`=gR%_t<$omwfmm=$Hc&XO*BJ_fkkaD%kAS1W{B}?}oP#ak@svqR z$%f$`+d}C$teAIf+KWM;&%>l3R?t6hv^N12Gj7ZlDgmKb|7~;I0e0=qZyN>JB-Ht& zxJ%?@Y-h#W?4U4`Ogt%0#R1BU`*A7&*ZoD;>;bA>|BJ#-DO-f>Oi2U?vJr?=c7R^M z(K-O|^5H3{LkOv7&fHUHZsr-xokB&<8C-S*D)Hu%rGWyc|$pa_U&;TdReP@cmDI0MTnxJgMz{dY0lqBDX1Ch)7H-vW`Xe+l%9&jcbU zC>&x`at1-CU{ZPtw;*O^XHHIMz-d{21~$8A^+ZUlpHZHz-D_tk6X)Nbx&H4aF5xLp zHwc)YU<+)CInWs7Kn{m-0lI8OLt%7l3Q&-vmxI2y*Bu`TyE}Jqm+YWS9RIzBAs`U_ z-)#Ywt1_;^1*!<4RK@MOKouavs< This routine calculates nacelle drag loads on a turbine. +SUBROUTINE computeNacelleDrag( u, p, m, y, RotInflow, ErrStat, ErrMsg ) + + TYPE(RotInputType) , INTENT(IN ) :: u !< AD inputs - used for mesh node positions + TYPE(RotParameterType) , INTENT(IN ) :: p !< Parameters + TYPE(RotMiscVarType) , INTENT(INOUT) :: m !< Misc/optimization variables + TYPE(RotOutputType) , INTENT(INOUT) :: y !< Outputs computed at t + TYPE(RotInflowType) , INTENT(IN ) :: RotInflow !< Rotor inflow + INTEGER(IntKi) , INTENT( OUT) :: ErrStat !< Error status of the operation + CHARACTER(*) , INTENT( OUT) :: ErrMsg !< Error message if ErrStat /= ErrID_None + ! Local Vars + REAL(ReKi) :: totalAngle ! Angle between incoming wind direction and nacelle, + REAL(ReKi) :: tiltAngle ! Tilt Angle of the nacelle. + REAL(ReKi) :: yawAngle ! Current Yaw Bearing (Radians) + REAL(ReKi) :: area ! Area of the nacelle projected in the wind direction + REAL(ReKi) :: forceMag ! Drag force aligned with wind direction + Real(ReKi) :: unitDiskVec(3) ! unit vector aligned at an angle of "totalAngle" from yawed rotor disk + Real(ReKi) :: areaVec(3) ! Vec containing areas of yz, xz and xy faces of the nacelle + REAL(ReKi) :: hubHeigthWindSpeed(3) ! hubHeigthWindSpeed(1), hubHeigthWindSpeed(2), and hubHeigthWindSpeed(3) and u, v, and w wind velocities at Hub height + REAL(ReKi) :: nacelleDims(3) ! nacelleDims(1), nacelleDims(2), and nacelleDims(3) and Length(x), Width(y), and Height(z) of the Nacelle + REAL(ReKi) :: force(3) ! Forces in global c.s + REAL(ReKi) :: moment(3) ! Moments in global c.s + + ErrStat = ErrID_None + ErrMsg = "" + + ! ! Fetch nacelle inflow, and nacelle motion & Calculating the relative inflow velocity + hubHeigthWindSpeed = RotInflow%InflowOnNacelle(:,1) + hubHeigthWindSpeed = hubHeigthWindSpeed - u%NacelleMotion%TranslationVel(:,1) + + ! Calculating angles for calculations. + yawAngle = atan2(u%NacelleMotion%Orientation(1,2,1), u%NacelleMotion%Orientation(1,1,1)) + call MPi2Pi(yawAngle) + + totalAngle = atan2(hubHeigthWindSpeed(2),hubHeigthWindSpeed(1)) - yawAngle + call MPi2Pi(totalAngle) + + tiltAngle = -1 * atan2(u%NacelleMotion%Orientation(1,3,1), u%NacelleMotion%Orientation(1,1,1)) + call MPi2Pi(tiltAngle) + + ! Unit vector of incoming wind to the nacelle. + unitDiskVec(1) = abs(cos(totalAngle)) + unitDiskVec(2) = abs(sin(totalAngle)) + unitDiskVec(3) = abs(sin(tiltAngle)) + + ! Calculating Area * Cd for the respective areas. Allows for multiple Cds + areaVec(1) = p%NacArea(1) * p%NacCd(1) + areaVec(2) = p%NacArea(2) * p%NacCd(2) + areaVec(3) = p%NacArea(3) * p%NacCd(3) + + ! total nacelle area projected into incoming wind direction + area = dot_product(areaVec, unitDiskVec) + + ! Find drag force (in global X direction) Assuming dominant direction of wind. + forceMag = 0.5 * p%AirDens * (hubHeigthWindSpeed(1)**2 + hubHeigthWindSpeed(2)**2) * area + + ! Decompose along the nacelle length, width and height + force = unitDiskVec*forceMag + + force(1) = sign(force(1),cos(totalAngle)) + force(2) = sign(force(2),sin(totalAngle)) + force(3) = sign(force(3),sin(tiltAngle)) + + ! moment affect due to offset between nacelle reference position and nacelle Drag AC + moment = CROSS_PRODUCT(p%NacDragAC, force) + + ! Add drag forces and moments to nacelle node + y%NacelleLoad%Force(1:3,1) = y%NacelleLoad%Force(1:3,1) + matmul(transpose(u%NacelleMotion%Orientation(:,:,1)),force) + y%NacelleLoad%Moment(1:3,1) = y%NacelleLoad%Moment(1:3,1) + matmul(transpose(u%NacelleMotion%Orientation(:,:,1)),moment) + + ! Adding to misc vars for output in Global c.s. + m%NacDragF = matmul(transpose(u%NacelleMotion%Orientation(:,:,1)),force) + m%NacDragM = matmul(transpose(u%NacelleMotion%Orientation(:,:,1)),moment) + m%NacFi = y%NacelleLoad%Force(1:3,1) + m%NacMi = y%NacelleLoad%Moment(1:3,1) + + + +END SUBROUTINE computeNacelleDrag + +!---------------------------------------------------------------------------------------------------------------------------------- END MODULE AeroDyn diff --git a/modules/aerodyn/src/AeroDyn_IO.f90 b/modules/aerodyn/src/AeroDyn_IO.f90 index d3c01cbaa7..9524f511a1 100644 --- a/modules/aerodyn/src/AeroDyn_IO.f90 +++ b/modules/aerodyn/src/AeroDyn_IO.f90 @@ -203,7 +203,7 @@ subroutine Calc_WriteOutput_AD() m%AllOuts( HbMbz ) = tmpHubMB(3) end if - ! nacelle outputs + ! nacelle buoyancy outputs if ( p%Buoyancy ) then tmp = matmul( u%NacelleMotion%Orientation(:,:,1) , m%NacFB ) m%AllOuts( NcFbx ) = tmp(1) @@ -216,6 +216,34 @@ subroutine Calc_WriteOutput_AD() m%AllOuts( NcMbz ) = tmp(3) end if + ! nacelle drag outputs + if ( p%NacelleDrag ) then + + tmp = matmul( u%NacelleMotion%Orientation(:,:,1) , m%NacDragF ) + m%AllOuts( NcFdx ) = tmp(1) + m%AllOuts( NcFdy ) = tmp(2) + m%AllOuts( NcFdz ) = tmp(3) + + tmp = matmul( u%NacelleMotion%Orientation(:,:,1) , m%NacDragM ) + m%AllOuts( NcMdx ) = tmp(1) + m%AllOuts( NcMdy ) = tmp(2) + m%AllOuts( NcMdz ) = tmp(3) + end if + + ! nacelle total forces and moments + if ( p%Buoyancy .OR. p%NacelleDrag) then + + tmp = m%NacFi + m%AllOuts( NcFxi ) = tmp(1) + m%AllOuts( NcFyi ) = tmp(2) + m%AllOuts( NcFzi ) = tmp(3) + + tmp = m%NacMi + m%AllOuts( NcMxi ) = tmp(1) + m%AllOuts( NcMyi ) = tmp(2) + m%AllOuts( NcMzi ) = tmp(3) + end if + ! blade outputs do k=1,min(p%numBlades,AD_MaxBl_Out) ! limit this do beta=1,p%NBlOuts @@ -753,6 +781,9 @@ SUBROUTINE ParsePrimaryFileInfo( PriPath, InitInp, InputFile, RootName, NumBlade if (Failed()) return ! Buoyancy - Include buoyancy effects? (flag) call ParseVar( FileInfo_In, CurLine, "Buoyancy", InputFileData%Buoyancy, ErrStat2, ErrMsg2, UnEc ) + if (Failed()) return + ! NacelleDrag - Include Nacelle Drag effects? (flag) + call ParseVar( FileInfo_In, CurLine, "NacelleDrag", InputFileData%NacelleDrag, ErrStat2, ErrMsg2, UnEc ) if (Failed()) return ! CompAA - Flag to compute AeroAcoustics calculation [only used when WakeMod=1 or 2] call ParseVar( FileInfo_In, CurLine, "CompAA", InputFileData%CompAA, ErrStat2, ErrMsg2, UnEc ) @@ -994,6 +1025,16 @@ SUBROUTINE ParsePrimaryFileInfo( PriPath, InitInp, InputFile, RootName, NumBlade ! NacCenB - Nacelle center of buoyancy x,y,z direction offsets (m) call ParseAry( FileInfo_In, CurLine, 'NacCenB', InputFileData%rotors(iR)%NacCenB, 3 , ErrStat2, ErrMsg2, UnEc ) if (Failed()) return + + ! NacArea - Projected area of the nacelle in X, Y, Z in the nacelle coordinate system (m^2) + call ParseAry( FileInfo_In, CurLine, "NacArea", InputFileData%rotors(iR)%NacArea, 3, ErrStat2, ErrMsg2, UnEc ) + if (Failed()) return + ! NacCd - Drag cefficient for the nacelle areas defied above (-) + call ParseAry( FileInfo_In, CurLine, "NacCd", InputFileData%rotors(iR)%NacCd, 3, ErrStat2, ErrMsg2, UnEc ) + if (Failed()) return + ! NacDragAC - Position of aerodynamic center of nacelle drag in nacelle coordinates (m) + call ParseAry( FileInfo_In, CurLine, "NacDragAC", InputFileData%rotors(iR)%NacDragAC, 3, ErrStat2, ErrMsg2, UnEc ) + if (Failed()) return end do !====== Tail fin aerodynamics ======================================================================== @@ -1676,6 +1717,14 @@ SUBROUTINE AD_PrintSum( InputFileData, p, p_AD, u, y, ErrStat, ErrMsg ) end if WRITE (UnSu,Ec_LgFrmt) p%Buoyancy, 'Buoyancy', 'Include buoyancy effects? '//TRIM(Msg) + ! Nacelle Drag + if (p%NacelleDrag) then + Msg = 'Yes' + else + Msg = 'No' + end if + WRITE (UnSu,Ec_LgFrmt) p%NacelleDrag, 'NacelleDrag', 'Include NacelleDrag effects? '//TRIM(Msg) + if (p_AD%Wake_Mod/=WakeMod_none) then WRITE (UnSu,'(A)') '====== Blade-Element/Momentum Theory Options ======================================================' @@ -1959,7 +2008,27 @@ SUBROUTINE SetOutParam(OutList, p, p_AD, ErrStat, ErrMsg ) InvalidOutput( BNMbs(:,i) ) = .true. end do end if + + if (.not. p%NacelleDrag) then ! Invalid Nacelle Drag loads + InvalidOutput( NcFdx ) = .true. + InvalidOutput( NcFdy ) = .true. + InvalidOutput( NcFdz ) = .true. + InvalidOutput( NcMdx ) = .true. + InvalidOutput( NcMdy ) = .true. + InvalidOutput( NcMdz ) = .true. + end if + + if (.not. (p%NacelleDrag .OR. p%Buoyancy)) then ! Invalid Nacelle Total loads + InvalidOutput( NcFxi ) = .true. + InvalidOutput( NcFyi ) = .true. + InvalidOutput( NcFzi ) = .true. + InvalidOutput( NcMxi ) = .true. + InvalidOutput( NcMyi ) = .true. + InvalidOutput( NcMzi ) = .true. + end if + + DO i = p%NTwOuts+1,9 ! Invalid tower nodes InvalidOutput( TwNVUnd(:,i) ) = .true. diff --git a/modules/aerodyn/src/AeroDyn_IO_Params.f90 b/modules/aerodyn/src/AeroDyn_IO_Params.f90 index 3568cd8b32..d31c280d2c 100644 --- a/modules/aerodyn/src/AeroDyn_IO_Params.f90 +++ b/modules/aerodyn/src/AeroDyn_IO_Params.f90 @@ -1546,36 +1546,48 @@ module AeroDyn_IO_Params INTEGER(IntKi), PARAMETER :: NcMbx = 1496 INTEGER(IntKi), PARAMETER :: NcMby = 1497 INTEGER(IntKi), PARAMETER :: NcMbz = 1498 + INTEGER(IntKi), PARAMETER :: NcFdx = 1499 + INTEGER(IntKi), PARAMETER :: NcFdy = 1500 + INTEGER(IntKi), PARAMETER :: NcFdz = 1501 + INTEGER(IntKi), PARAMETER :: NcMdx = 1502 + INTEGER(IntKi), PARAMETER :: NcMdy = 1503 + INTEGER(IntKi), PARAMETER :: NcMdz = 1504 + INTEGER(IntKi), PARAMETER :: NcFxi = 1505 + INTEGER(IntKi), PARAMETER :: NcFyi = 1506 + INTEGER(IntKi), PARAMETER :: NcFzi = 1507 + INTEGER(IntKi), PARAMETER :: NcMxi = 1508 + INTEGER(IntKi), PARAMETER :: NcMyi = 1509 + INTEGER(IntKi), PARAMETER :: NcMzi = 1510 ! TailFin: - INTEGER(IntKi), PARAMETER :: TFAlpha = 1499 - INTEGER(IntKi), PARAMETER :: TFMach = 1500 - INTEGER(IntKi), PARAMETER :: TFRe = 1501 - INTEGER(IntKi), PARAMETER :: TFVrel = 1502 - INTEGER(IntKi), PARAMETER :: TFVundxi = 1503 - INTEGER(IntKi), PARAMETER :: TFVundyi = 1504 - INTEGER(IntKi), PARAMETER :: TFVundzi = 1505 - INTEGER(IntKi), PARAMETER :: TFVindxi = 1506 - INTEGER(IntKi), PARAMETER :: TFVindyi = 1507 - INTEGER(IntKi), PARAMETER :: TFVindzi = 1508 - INTEGER(IntKi), PARAMETER :: TFVrelxi = 1509 - INTEGER(IntKi), PARAMETER :: TFVrelyi = 1510 - INTEGER(IntKi), PARAMETER :: TFVrelzi = 1511 - INTEGER(IntKi), PARAMETER :: TFSTVxi = 1512 - INTEGER(IntKi), PARAMETER :: TFSTVyi = 1513 - INTEGER(IntKi), PARAMETER :: TFSTVzi = 1514 - INTEGER(IntKi), PARAMETER :: TFFxi = 1515 - INTEGER(IntKi), PARAMETER :: TFFyi = 1516 - INTEGER(IntKi), PARAMETER :: TFFzi = 1517 - INTEGER(IntKi), PARAMETER :: TFMxi = 1518 - INTEGER(IntKi), PARAMETER :: TFMyi = 1519 - INTEGER(IntKi), PARAMETER :: TFMzi = 1520 + INTEGER(IntKi), PARAMETER :: TFAlpha = 1511 + INTEGER(IntKi), PARAMETER :: TFMach = 1512 + INTEGER(IntKi), PARAMETER :: TFRe = 1513 + INTEGER(IntKi), PARAMETER :: TFVrel = 1514 + INTEGER(IntKi), PARAMETER :: TFVundxi = 1515 + INTEGER(IntKi), PARAMETER :: TFVundyi = 1516 + INTEGER(IntKi), PARAMETER :: TFVundzi = 1517 + INTEGER(IntKi), PARAMETER :: TFVindxi = 1518 + INTEGER(IntKi), PARAMETER :: TFVindyi = 1519 + INTEGER(IntKi), PARAMETER :: TFVindzi = 1520 + INTEGER(IntKi), PARAMETER :: TFVrelxi = 1521 + INTEGER(IntKi), PARAMETER :: TFVrelyi = 1522 + INTEGER(IntKi), PARAMETER :: TFVrelzi = 1523 + INTEGER(IntKi), PARAMETER :: TFSTVxi = 1524 + INTEGER(IntKi), PARAMETER :: TFSTVyi = 1525 + INTEGER(IntKi), PARAMETER :: TFSTVzi = 1526 + INTEGER(IntKi), PARAMETER :: TFFxi = 1527 + INTEGER(IntKi), PARAMETER :: TFFyi = 1528 + INTEGER(IntKi), PARAMETER :: TFFzi = 1529 + INTEGER(IntKi), PARAMETER :: TFMxi = 1530 + INTEGER(IntKi), PARAMETER :: TFMyi = 1531 + INTEGER(IntKi), PARAMETER :: TFMzi = 1532 ! The maximum number of output channels which can be output by the code. - INTEGER(IntKi), PARAMETER :: MaxOutPts = 1520 + INTEGER(IntKi), PARAMETER :: MaxOutPts = 1532 !End of code generated by Matlab script ! =================================================================================================== @@ -1874,7 +1886,7 @@ module AeroDyn_IO_Params - CHARACTER(OutStrLenM1), PARAMETER :: ValidParamAry(1594) = (/ & ! This lists the names of the allowed parameters, which must be sorted alphabetically + CHARACTER(OutStrLenM1), PARAMETER :: ValidParamAry(1606) = (/ & ! This lists the names of the allowed parameters, which must be sorted alphabetically "B1AEROFX ","B1AEROFXI","B1AEROFY ","B1AEROFYI","B1AEROFZ ","B1AEROFZI","B1AEROMX ","B1AEROMXI", & "B1AEROMY ","B1AEROMYI","B1AEROMZ ","B1AEROMZI","B1AEROPWR","B1AZIMUTH","B1FLDFX ","B1FLDFXI ", & "B1FLDFY ","B1FLDFYI ","B1FLDFZ ","B1FLDFZI ","B1FLDMX ","B1FLDMXI ","B1FLDMY ","B1FLDMYI ", & @@ -2045,37 +2057,38 @@ module AeroDyn_IO_Params "B4AEROMZ ","B4AEROMZI","B4AEROPWR","B4FLDFX ","B4FLDFXI ","B4FLDFY ","B4FLDFYI ","B4FLDFZ ", & "B4FLDFZI ","B4FLDMX ","B4FLDMXI ","B4FLDMY ","B4FLDMYI ","B4FLDMZ ","B4FLDMZI ","B4FLDPWR ", & "DBEMTAU1 ","HBFBX ","HBFBY ","HBFBZ ","HBMBX ","HBMBY ","HBMBZ ","NCFBX ", & - "NCFBY ","NCFBZ ","NCMBX ","NCMBY ","NCMBZ ","RTAEROCP ","RTAEROCQ ","RTAEROCT ", & - "RTAEROFXH","RTAEROFXI","RTAEROFYH","RTAEROFYI","RTAEROFZH","RTAEROFZI","RTAEROMXH","RTAEROMXI", & - "RTAEROMYH","RTAEROMYI","RTAEROMZH","RTAEROMZI","RTAEROPWR","RTAREA ","RTFLDCP ","RTFLDCQ ", & - "RTFLDCT ","RTFLDFXG ","RTFLDFXH ","RTFLDFXI ","RTFLDFYG ","RTFLDFYH ","RTFLDFYI ","RTFLDFZG ", & - "RTFLDFZH ","RTFLDFZI ","RTFLDMXG ","RTFLDMXH ","RTFLDMXI ","RTFLDMYG ","RTFLDMYH ","RTFLDMYI ", & - "RTFLDMZG ","RTFLDMZH ","RTFLDMZI ","RTFLDPWR ","RTSKEW ","RTSPEED ","RTTSR ","RTVAVGXH ", & - "RTVAVGYH ","RTVAVGZH ","TFALPHA ","TFFXI ","TFFYI ","TFFZI ","TFMACH ","TFMXI ", & - "TFMYI ","TFMZI ","TFRE ","TFSTVXI ","TFSTVYI ","TFSTVZI ","TFVINDXI ","TFVINDYI ", & - "TFVINDZI ","TFVREL ","TFVRELXI ","TFVRELYI ","TFVRELZI ","TFVUNDXI ","TFVUNDYI ","TFVUNDZI ", & - "TWN1DYNP ","TWN1FBX ","TWN1FBY ","TWN1FBZ ","TWN1FDX ","TWN1FDY ","TWN1M ","TWN1MBX ", & - "TWN1MBY ","TWN1MBZ ","TWN1RE ","TWN1STVX ","TWN1STVY ","TWN1STVZ ","TWN1VREL ","TWN1VUNDX", & - "TWN1VUNDY","TWN1VUNDZ","TWN2DYNP ","TWN2FBX ","TWN2FBY ","TWN2FBZ ","TWN2FDX ","TWN2FDY ", & - "TWN2M ","TWN2MBX ","TWN2MBY ","TWN2MBZ ","TWN2RE ","TWN2STVX ","TWN2STVY ","TWN2STVZ ", & - "TWN2VREL ","TWN2VUNDX","TWN2VUNDY","TWN2VUNDZ","TWN3DYNP ","TWN3FBX ","TWN3FBY ","TWN3FBZ ", & - "TWN3FDX ","TWN3FDY ","TWN3M ","TWN3MBX ","TWN3MBY ","TWN3MBZ ","TWN3RE ","TWN3STVX ", & - "TWN3STVY ","TWN3STVZ ","TWN3VREL ","TWN3VUNDX","TWN3VUNDY","TWN3VUNDZ","TWN4DYNP ","TWN4FBX ", & - "TWN4FBY ","TWN4FBZ ","TWN4FDX ","TWN4FDY ","TWN4M ","TWN4MBX ","TWN4MBY ","TWN4MBZ ", & - "TWN4RE ","TWN4STVX ","TWN4STVY ","TWN4STVZ ","TWN4VREL ","TWN4VUNDX","TWN4VUNDY","TWN4VUNDZ", & - "TWN5DYNP ","TWN5FBX ","TWN5FBY ","TWN5FBZ ","TWN5FDX ","TWN5FDY ","TWN5M ","TWN5MBX ", & - "TWN5MBY ","TWN5MBZ ","TWN5RE ","TWN5STVX ","TWN5STVY ","TWN5STVZ ","TWN5VREL ","TWN5VUNDX", & - "TWN5VUNDY","TWN5VUNDZ","TWN6DYNP ","TWN6FBX ","TWN6FBY ","TWN6FBZ ","TWN6FDX ","TWN6FDY ", & - "TWN6M ","TWN6MBX ","TWN6MBY ","TWN6MBZ ","TWN6RE ","TWN6STVX ","TWN6STVY ","TWN6STVZ ", & - "TWN6VREL ","TWN6VUNDX","TWN6VUNDY","TWN6VUNDZ","TWN7DYNP ","TWN7FBX ","TWN7FBY ","TWN7FBZ ", & - "TWN7FDX ","TWN7FDY ","TWN7M ","TWN7MBX ","TWN7MBY ","TWN7MBZ ","TWN7RE ","TWN7STVX ", & - "TWN7STVY ","TWN7STVZ ","TWN7VREL ","TWN7VUNDX","TWN7VUNDY","TWN7VUNDZ","TWN8DYNP ","TWN8FBX ", & - "TWN8FBY ","TWN8FBZ ","TWN8FDX ","TWN8FDY ","TWN8M ","TWN8MBX ","TWN8MBY ","TWN8MBZ ", & - "TWN8RE ","TWN8STVX ","TWN8STVY ","TWN8STVZ ","TWN8VREL ","TWN8VUNDX","TWN8VUNDY","TWN8VUNDZ", & - "TWN9DYNP ","TWN9FBX ","TWN9FBY ","TWN9FBZ ","TWN9FDX ","TWN9FDY ","TWN9M ","TWN9MBX ", & - "TWN9MBY ","TWN9MBZ ","TWN9RE ","TWN9STVX ","TWN9STVY ","TWN9STVZ ","TWN9VREL ","TWN9VUNDX", & - "TWN9VUNDY","TWN9VUNDZ"/) - INTEGER(IntKi), PARAMETER :: ParamIndxAry(1594) = (/ & ! This lists the index into AllOuts(:) of the allowed parameters ValidParamAry(:) + "NCFBY ","NCFBZ ","NCFDX ","NCFDY ","NCFDZ ","NCFXI ","NCFYI ","NCFZI ", & + "NCMBX ","NCMBY ","NCMBZ ","NCMDX ","NCMDY ","NCMDZ ","NCMXI ","NCMYI ", & + "NCMZI ","RTAEROCP ","RTAEROCQ ","RTAEROCT ","RTAEROFXH","RTAEROFXI","RTAEROFYH","RTAEROFYI", & + "RTAEROFZH","RTAEROFZI","RTAEROMXH","RTAEROMXI","RTAEROMYH","RTAEROMYI","RTAEROMZH","RTAEROMZI", & + "RTAEROPWR","RTAREA ","RTFLDCP ","RTFLDCQ ","RTFLDCT ","RTFLDFXG ","RTFLDFXH ","RTFLDFXI ", & + "RTFLDFYG ","RTFLDFYH ","RTFLDFYI ","RTFLDFZG ","RTFLDFZH ","RTFLDFZI ","RTFLDMXG ","RTFLDMXH ", & + "RTFLDMXI ","RTFLDMYG ","RTFLDMYH ","RTFLDMYI ","RTFLDMZG ","RTFLDMZH ","RTFLDMZI ","RTFLDPWR ", & + "RTSKEW ","RTSPEED ","RTTSR ","RTVAVGXH ","RTVAVGYH ","RTVAVGZH ","TFALPHA ","TFFXI ", & + "TFFYI ","TFFZI ","TFMACH ","TFMXI ","TFMYI ","TFMZI ","TFRE ","TFSTVXI ", & + "TFSTVYI ","TFSTVZI ","TFVINDXI ","TFVINDYI ","TFVINDZI ","TFVREL ","TFVRELXI ","TFVRELYI ", & + "TFVRELZI ","TFVUNDXI ","TFVUNDYI ","TFVUNDZI ","TWN1DYNP ","TWN1FBX ","TWN1FBY ","TWN1FBZ ", & + "TWN1FDX ","TWN1FDY ","TWN1M ","TWN1MBX ","TWN1MBY ","TWN1MBZ ","TWN1RE ","TWN1STVX ", & + "TWN1STVY ","TWN1STVZ ","TWN1VREL ","TWN1VUNDX","TWN1VUNDY","TWN1VUNDZ","TWN2DYNP ","TWN2FBX ", & + "TWN2FBY ","TWN2FBZ ","TWN2FDX ","TWN2FDY ","TWN2M ","TWN2MBX ","TWN2MBY ","TWN2MBZ ", & + "TWN2RE ","TWN2STVX ","TWN2STVY ","TWN2STVZ ","TWN2VREL ","TWN2VUNDX","TWN2VUNDY","TWN2VUNDZ", & + "TWN3DYNP ","TWN3FBX ","TWN3FBY ","TWN3FBZ ","TWN3FDX ","TWN3FDY ","TWN3M ","TWN3MBX ", & + "TWN3MBY ","TWN3MBZ ","TWN3RE ","TWN3STVX ","TWN3STVY ","TWN3STVZ ","TWN3VREL ","TWN3VUNDX", & + "TWN3VUNDY","TWN3VUNDZ","TWN4DYNP ","TWN4FBX ","TWN4FBY ","TWN4FBZ ","TWN4FDX ","TWN4FDY ", & + "TWN4M ","TWN4MBX ","TWN4MBY ","TWN4MBZ ","TWN4RE ","TWN4STVX ","TWN4STVY ","TWN4STVZ ", & + "TWN4VREL ","TWN4VUNDX","TWN4VUNDY","TWN4VUNDZ","TWN5DYNP ","TWN5FBX ","TWN5FBY ","TWN5FBZ ", & + "TWN5FDX ","TWN5FDY ","TWN5M ","TWN5MBX ","TWN5MBY ","TWN5MBZ ","TWN5RE ","TWN5STVX ", & + "TWN5STVY ","TWN5STVZ ","TWN5VREL ","TWN5VUNDX","TWN5VUNDY","TWN5VUNDZ","TWN6DYNP ","TWN6FBX ", & + "TWN6FBY ","TWN6FBZ ","TWN6FDX ","TWN6FDY ","TWN6M ","TWN6MBX ","TWN6MBY ","TWN6MBZ ", & + "TWN6RE ","TWN6STVX ","TWN6STVY ","TWN6STVZ ","TWN6VREL ","TWN6VUNDX","TWN6VUNDY","TWN6VUNDZ", & + "TWN7DYNP ","TWN7FBX ","TWN7FBY ","TWN7FBZ ","TWN7FDX ","TWN7FDY ","TWN7M ","TWN7MBX ", & + "TWN7MBY ","TWN7MBZ ","TWN7RE ","TWN7STVX ","TWN7STVY ","TWN7STVZ ","TWN7VREL ","TWN7VUNDX", & + "TWN7VUNDY","TWN7VUNDZ","TWN8DYNP ","TWN8FBX ","TWN8FBY ","TWN8FBZ ","TWN8FDX ","TWN8FDY ", & + "TWN8M ","TWN8MBX ","TWN8MBY ","TWN8MBZ ","TWN8RE ","TWN8STVX ","TWN8STVY ","TWN8STVZ ", & + "TWN8VREL ","TWN8VUNDX","TWN8VUNDY","TWN8VUNDZ","TWN9DYNP ","TWN9FBX ","TWN9FBY ","TWN9FBZ ", & + "TWN9FDX ","TWN9FDY ","TWN9M ","TWN9MBX ","TWN9MBY ","TWN9MBZ ","TWN9RE ","TWN9STVX ", & + "TWN9STVY ","TWN9STVZ ","TWN9VREL ","TWN9VUNDX","TWN9VUNDY","TWN9VUNDZ"/) + INTEGER(IntKi), PARAMETER :: ParamIndxAry(1606) = (/ & ! This lists the index into AllOuts(:) of the allowed parameters ValidParamAry(:) B1AeroFx , B1AeroFxi , B1AeroFy , B1AeroFyi , B1AeroFz , B1AeroFzi , B1AeroMx , B1AeroMxi , & B1AeroMy , B1AeroMyi , B1AeroMz , B1AeroMzi , B1AeroPwr , B1Azimuth , B1AeroFx , B1AeroFxi , & B1AeroFy , B1AeroFyi , B1AeroFz , B1AeroFzi , B1AeroMx , B1AeroMxi , B1AeroMy , B1AeroMyi , & @@ -2246,38 +2259,39 @@ module AeroDyn_IO_Params B4AeroMz , B4AeroMzi , B4AeroPwr , B4AeroFx , B4AeroFxi , B4AeroFy , B4AeroFyi , B4AeroFz , & B4AeroFzi , B4AeroMx , B4AeroMxi , B4AeroMy , B4AeroMyi , B4AeroMz , B4AeroMzi , B4AeroPwr , & DBEMTau1 , HbFbx , HbFby , HbFbz , HbMbx , HbMby , HbMbz , NcFbx , & - NcFby , NcFbz , NcMbx , NcMby , NcMbz , RtAeroCp , RtAeroCq , RtAeroCt , & - RtAeroFxh , RtAeroFxi , RtAeroFyh , RtAeroFyi , RtAeroFzh , RtAeroFzi , RtAeroMxh , RtAeroMxi , & - RtAeroMyh , RtAeroMyi , RtAeroMzh , RtAeroMzi , RtAeroPwr , RtArea , RtAeroCp , RtAeroCq , & - RtAeroCt , RtAeroFxi , RtAeroFxh , RtAeroFxi , RtAeroFyi , RtAeroFyh , RtAeroFyi , RtAeroFzi , & - RtAeroFzh , RtAeroFzi , RtAeroMxi , RtAeroMxh , RtAeroMxi , RtAeroMyi , RtAeroMyh , RtAeroMyi , & - RtAeroMzi , RtAeroMzh , RtAeroMzi , RtAeroPwr , RtSkew , RtSpeed , RtTSR , RtVAvgxh , & - RtVAvgyh , RtVAvgzh , TFAlpha , TFFxi , TFFyi , TFFzi , TFMach , TFMxi , & - TFMyi , TFMzi , TFRe , TFSTVxi , TFSTVyi , TFSTVzi , TFVindxi , TFVindyi , & - TFVindzi , TFVrel , TFVrelxi , TFVrelyi , TFVrelzi , TFVundxi , TFVundyi , TFVundzi , & - TwN1DynP , TwN1Fbx , TwN1Fby , TwN1Fbz , TwN1Fdx , TwN1Fdy , TwN1M , TwN1Mbx , & - TwN1Mby , TwN1Mbz , TwN1Re , TwN1STVx , TwN1STVy , TwN1STVz , TwN1Vrel , TwN1VUndx , & - TwN1VUndy , TwN1VUndz , TwN2DynP , TwN2Fbx , TwN2Fby , TwN2Fbz , TwN2Fdx , TwN2Fdy , & - TwN2M , TwN2Mbx , TwN2Mby , TwN2Mbz , TwN2Re , TwN2STVx , TwN2STVy , TwN2STVz , & - TwN2Vrel , TwN2VUndx , TwN2VUndy , TwN2VUndz , TwN3DynP , TwN3Fbx , TwN3Fby , TwN3Fbz , & - TwN3Fdx , TwN3Fdy , TwN3M , TwN3Mbx , TwN3Mby , TwN3Mbz , TwN3Re , TwN3STVx , & - TwN3STVy , TwN3STVz , TwN3Vrel , TwN3VUndx , TwN3VUndy , TwN3VUndz , TwN4DynP , TwN4Fbx , & - TwN4Fby , TwN4Fbz , TwN4Fdx , TwN4Fdy , TwN4M , TwN4Mbx , TwN4Mby , TwN4Mbz , & - TwN4Re , TwN4STVx , TwN4STVy , TwN4STVz , TwN4Vrel , TwN4VUndx , TwN4VUndy , TwN4VUndz , & - TwN5DynP , TwN5Fbx , TwN5Fby , TwN5Fbz , TwN5Fdx , TwN5Fdy , TwN5M , TwN5Mbx , & - TwN5Mby , TwN5Mbz , TwN5Re , TwN5STVx , TwN5STVy , TwN5STVz , TwN5Vrel , TwN5VUndx , & - TwN5VUndy , TwN5VUndz , TwN6DynP , TwN6Fbx , TwN6Fby , TwN6Fbz , TwN6Fdx , TwN6Fdy , & - TwN6M , TwN6Mbx , TwN6Mby , TwN6Mbz , TwN6Re , TwN6STVx , TwN6STVy , TwN6STVz , & - TwN6Vrel , TwN6VUndx , TwN6VUndy , TwN6VUndz , TwN7DynP , TwN7Fbx , TwN7Fby , TwN7Fbz , & - TwN7Fdx , TwN7Fdy , TwN7M , TwN7Mbx , TwN7Mby , TwN7Mbz , TwN7Re , TwN7STVx , & - TwN7STVy , TwN7STVz , TwN7Vrel , TwN7VUndx , TwN7VUndy , TwN7VUndz , TwN8DynP , TwN8Fbx , & - TwN8Fby , TwN8Fbz , TwN8Fdx , TwN8Fdy , TwN8M , TwN8Mbx , TwN8Mby , TwN8Mbz , & - TwN8Re , TwN8STVx , TwN8STVy , TwN8STVz , TwN8Vrel , TwN8VUndx , TwN8VUndy , TwN8VUndz , & - TwN9DynP , TwN9Fbx , TwN9Fby , TwN9Fbz , TwN9Fdx , TwN9Fdy , TwN9M , TwN9Mbx , & - TwN9Mby , TwN9Mbz , TwN9Re , TwN9STVx , TwN9STVy , TwN9STVz , TwN9Vrel , TwN9VUndx , & - TwN9VUndy , TwN9VUndz /) - CHARACTER(ChanLen), PARAMETER :: ParamUnitsAry(1594) = (/ character(ChanLen) :: & ! This lists the units corresponding to the allowed parameters - "(N) ","(N) ","(N) ","(N) ","(N) ","(N) ","(N-m) ","(N-m) ", & + NcFby , NcFbz , NcFdx , NcFdy , NcFdz , NcFxi , NcFyi , NcFzi , & + NcMbx , NcMby , NcMbz , NcMdx , NcMdy , NcMdz , NcMxi , NcMyi , & + NcMzi , RtAeroCp , RtAeroCq , RtAeroCt , RtAeroFxh , RtAeroFxi , RtAeroFyh , RtAeroFyi , & + RtAeroFzh , RtAeroFzi , RtAeroMxh , RtAeroMxi , RtAeroMyh , RtAeroMyi , RtAeroMzh , RtAeroMzi , & + RtAeroPwr , RtArea , RtAeroCp , RtAeroCq , RtAeroCt , RtAeroFxi , RtAeroFxh , RtAeroFxi , & + RtAeroFyi , RtAeroFyh , RtAeroFyi , RtAeroFzi , RtAeroFzh , RtAeroFzi , RtAeroMxi , RtAeroMxh , & + RtAeroMxi , RtAeroMyi , RtAeroMyh , RtAeroMyi , RtAeroMzi , RtAeroMzh , RtAeroMzi , RtAeroPwr , & + RtSkew , RtSpeed , RtTSR , RtVAvgxh , RtVAvgyh , RtVAvgzh , TFAlpha , TFFxi , & + TFFyi , TFFzi , TFMach , TFMxi , TFMyi , TFMzi , TFRe , TFSTVxi , & + TFSTVyi , TFSTVzi , TFVindxi , TFVindyi , TFVindzi , TFVrel , TFVrelxi , TFVrelyi , & + TFVrelzi , TFVundxi , TFVundyi , TFVundzi , TwN1DynP , TwN1Fbx , TwN1Fby , TwN1Fbz , & + TwN1Fdx , TwN1Fdy , TwN1M , TwN1Mbx , TwN1Mby , TwN1Mbz , TwN1Re , TwN1STVx , & + TwN1STVy , TwN1STVz , TwN1Vrel , TwN1VUndx , TwN1VUndy , TwN1VUndz , TwN2DynP , TwN2Fbx , & + TwN2Fby , TwN2Fbz , TwN2Fdx , TwN2Fdy , TwN2M , TwN2Mbx , TwN2Mby , TwN2Mbz , & + TwN2Re , TwN2STVx , TwN2STVy , TwN2STVz , TwN2Vrel , TwN2VUndx , TwN2VUndy , TwN2VUndz , & + TwN3DynP , TwN3Fbx , TwN3Fby , TwN3Fbz , TwN3Fdx , TwN3Fdy , TwN3M , TwN3Mbx , & + TwN3Mby , TwN3Mbz , TwN3Re , TwN3STVx , TwN3STVy , TwN3STVz , TwN3Vrel , TwN3VUndx , & + TwN3VUndy , TwN3VUndz , TwN4DynP , TwN4Fbx , TwN4Fby , TwN4Fbz , TwN4Fdx , TwN4Fdy , & + TwN4M , TwN4Mbx , TwN4Mby , TwN4Mbz , TwN4Re , TwN4STVx , TwN4STVy , TwN4STVz , & + TwN4Vrel , TwN4VUndx , TwN4VUndy , TwN4VUndz , TwN5DynP , TwN5Fbx , TwN5Fby , TwN5Fbz , & + TwN5Fdx , TwN5Fdy , TwN5M , TwN5Mbx , TwN5Mby , TwN5Mbz , TwN5Re , TwN5STVx , & + TwN5STVy , TwN5STVz , TwN5Vrel , TwN5VUndx , TwN5VUndy , TwN5VUndz , TwN6DynP , TwN6Fbx , & + TwN6Fby , TwN6Fbz , TwN6Fdx , TwN6Fdy , TwN6M , TwN6Mbx , TwN6Mby , TwN6Mbz , & + TwN6Re , TwN6STVx , TwN6STVy , TwN6STVz , TwN6Vrel , TwN6VUndx , TwN6VUndy , TwN6VUndz , & + TwN7DynP , TwN7Fbx , TwN7Fby , TwN7Fbz , TwN7Fdx , TwN7Fdy , TwN7M , TwN7Mbx , & + TwN7Mby , TwN7Mbz , TwN7Re , TwN7STVx , TwN7STVy , TwN7STVz , TwN7Vrel , TwN7VUndx , & + TwN7VUndy , TwN7VUndz , TwN8DynP , TwN8Fbx , TwN8Fby , TwN8Fbz , TwN8Fdx , TwN8Fdy , & + TwN8M , TwN8Mbx , TwN8Mby , TwN8Mbz , TwN8Re , TwN8STVx , TwN8STVy , TwN8STVz , & + TwN8Vrel , TwN8VUndx , TwN8VUndy , TwN8VUndz , TwN9DynP , TwN9Fbx , TwN9Fby , TwN9Fbz , & + TwN9Fdx , TwN9Fdy , TwN9M , TwN9Mbx , TwN9Mby , TwN9Mbz , TwN9Re , TwN9STVx , & + TwN9STVy , TwN9STVz , TwN9Vrel , TwN9VUndx , TwN9VUndy , TwN9VUndz /) +CHARACTER(ChanLen), PARAMETER :: ParamUnitsAry(1606) = (/ character(ChanLen) :: & ! This lists the units corresponding to the allowed parameters + "(N) ","(N) ","(N) ","(N) ","(N) ","(N) ","(N-m) ","(N-m) ", & "(N-m) ","(N-m) ","(N-m) ","(N-m) ","(W) ","(deg) ","(N) ","(N) ", & "(N) ","(N) ","(N) ","(N) ","(N-m) ","(N-m) ","(N-m) ","(N-m) ", & "(N-m) ","(N-m) ","(W) ","(deg) ","(-) ","(-) ","(-) ","(m) ", & @@ -2447,19 +2461,16 @@ module AeroDyn_IO_Params "(N-m) ","(N-m) ","(W) ","(N) ","(N) ","(N) ","(N) ","(N) ", & "(N) ","(N-m) ","(N-m) ","(N-m) ","(N-m) ","(N-m) ","(N-m) ","(W) ", & "(s) ","(N) ","(N) ","(N) ","(N-m) ","(N-m) ","(N-m) ","(N) ", & - "(N) ","(N) ","(N-m) ","(N-m) ","(N-m) ","(-) ","(-) ","(-) ", & - "(N) ","(N) ","(N) ","(N) ","(N) ","(N) ","(N-m) ","(N-m) ", & - "(N-m) ","(N-m) ","(N-m) ","(N-m) ","(W) ","(m^2) ","(-) ","(-) ", & - "(-) ","(N) ","(N) ","(N) ","(N) ","(N) ","(N) ","(N) ", & + "(N) ","(N) ","(N) ","(N) ","(N) ","(N) ","(N) ","(N) ", & + "(N-m) ","(N-m) ","(N-m) ","(N-m) ","(N-m) ","(N-m) ","(N-m) ","(N-m) ", & + "(N-m) ","(-) ","(-) ","(-) ","(N) ","(N) ","(N) ","(N) ", & "(N) ","(N) ","(N-m) ","(N-m) ","(N-m) ","(N-m) ","(N-m) ","(N-m) ", & - "(N-m) ","(N-m) ","(N-m) ","(W) ","(deg) ","(rpm) ","(-) ","(m/s) ", & - "(m/s) ","(m/s) ","(deg) ","(N) ","(N) ","(N) ","(-) ","(N-m) ", & - "(N-m) ","(N-m) ","(-) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ", & + "(W) ","(m^2) ","(-) ","(-) ","(-) ","(N) ","(N) ","(N) ", & + "(N) ","(N) ","(N) ","(N) ","(N) ","(N) ","(N-m) ","(N-m) ", & + "(N-m) ","(N-m) ","(N-m) ","(N-m) ","(N-m) ","(N-m) ","(N-m) ","(W) ", & + "(deg) ","(rpm) ","(-) ","(m/s) ","(m/s) ","(m/s) ","(deg) ","(N) ", & + "(N) ","(N) ","(-) ","(N-m) ","(N-m) ","(N-m) ","(-) ","(m/s) ", & "(m/s) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ", & - "(Pa) ","(N/m) ","(N/m) ","(N/m) ","(N/m) ","(N/m) ","(-) ","(N-m/m)", & - "(N-m/m)","(N-m/m)","(-) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ", & - "(m/s) ","(m/s) ","(Pa) ","(N/m) ","(N/m) ","(N/m) ","(N/m) ","(N/m) ", & - "(-) ","(N-m/m)","(N-m/m)","(N-m/m)","(-) ","(m/s) ","(m/s) ","(m/s) ", & "(m/s) ","(m/s) ","(m/s) ","(m/s) ","(Pa) ","(N/m) ","(N/m) ","(N/m) ", & "(N/m) ","(N/m) ","(-) ","(N-m/m)","(N-m/m)","(N-m/m)","(-) ","(m/s) ", & "(m/s) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ","(Pa) ","(N/m) ", & @@ -2476,7 +2487,11 @@ module AeroDyn_IO_Params "(-) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ", & "(Pa) ","(N/m) ","(N/m) ","(N/m) ","(N/m) ","(N/m) ","(-) ","(N-m/m)", & "(N-m/m)","(N-m/m)","(-) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ", & - "(m/s) ","(m/s) "/) + "(m/s) ","(m/s) ","(Pa) ","(N/m) ","(N/m) ","(N/m) ","(N/m) ","(N/m) ", & + "(-) ","(N-m/m)","(N-m/m)","(N-m/m)","(-) ","(m/s) ","(m/s) ","(m/s) ", & + "(m/s) ","(m/s) ","(m/s) ","(m/s) ","(Pa) ","(N/m) ","(N/m) ","(N/m) ", & + "(N/m) ","(N/m) ","(-) ","(N-m/m)","(N-m/m)","(N-m/m)","(-) ","(m/s) ", & + "(m/s) ","(m/s) ","(m/s) ","(m/s) ","(m/s) ","(m/s) "/) end module AeroDyn_IO_Params diff --git a/modules/aerodyn/src/AeroDyn_Registry.txt b/modules/aerodyn/src/AeroDyn_Registry.txt index 734e773cf6..87b768a5f8 100644 --- a/modules/aerodyn/src/AeroDyn_Registry.txt +++ b/modules/aerodyn/src/AeroDyn_Registry.txt @@ -169,6 +169,9 @@ typedef ^ RotInputFile ReKi HubCenBx - - - "Hub center of buoyancy x directio # Nacelle typedef ^ RotInputFile ReKi VolNac - - - "Nacelle volume" m^3 typedef ^ RotInputFile ReKi NacCenB 3 - - "Position of nacelle center of buoyancy from yaw bearing in nacelle coordinates" m +typedef ^ RotInputFile ReKi NacArea 3 - - "Projected area of the nacelle in X, Y, Z in the nacelle coordinate system" m^2 +typedef ^ RotInputFile ReKi NacCd 3 - - "Drag cefficient for the nacelle areas defied above" - +typedef ^ RotInputFile ReKi NacDragAC 3 - - "Position of aerodynamic center of nacelle drag in nacelle coordinates" m # TailFin typedef ^ RotInputFile LOGICAL TFinAero - .FALSE. - "Calculate tail fin aerodynamics model (flag)" flag typedef ^ RotInputFile CHARACTER(1024) TFinFile - - - "Input file for tail fin aerodynamics [used only when TFinAero=True]" - @@ -183,6 +186,7 @@ typedef ^ AD_InputFile IntKi TwrShadow - - - "Type of tower influence on wind ba typedef ^ AD_InputFile LOGICAL TwrAero - - - "Calculate tower aerodynamic loads?" flag typedef ^ AD_InputFile Logical CavitCheck - - - "Flag that tells us if we want to check for cavitation" - typedef ^ AD_InputFile Logical Buoyancy - - - "Include buoyancy effects?" flag +typedef ^ AD_InputFile Logical NacelleDrag - - - "Include NacelleDrag effects?" flag typedef ^ AD_InputFile Logical CompAA - - - "Compute AeroAcoustic noise" flag typedef ^ AD_InputFile CHARACTER(1024) AA_InputFile - - - "AeroAcoustics input file name" "quoted strings" typedef ^ AD_InputFile CHARACTER(1024) ADBlFile {:} - - "AD blade file (NumBl filenames)" "quoted strings" @@ -317,6 +321,10 @@ typedef ^ RotMiscVarType ReKi HubFB {:} - - "buoyant force at hub node typedef ^ RotMiscVarType ReKi HubMB {:} - - "buoyant moment at hub node" Nm typedef ^ RotMiscVarType ReKi NacFB {:} - - "buoyant force at nacelle (tower top) node" N typedef ^ RotMiscVarType ReKi NacMB {:} - - "buoyant moment at nacelle (tower top) node" Nm +typedef ^ RotMiscVarType ReKi NacDragF {:} - - "drag force at nacelle (tower top) node" N +typedef ^ RotMiscVarType ReKi NacDragM {:} - - "drag moment at nacelle (tower top) node" Nm +typedef ^ RotMiscVarType ReKi NacFi {:} - - "Total force at nacelle (tower top) node" N +typedef ^ RotMiscVarType ReKi NacMi {:} - - "Total moment at nacelle (tower top) node" Nm typedef ^ RotMiscVarType MeshType BladeRootLoad {:} - - "meshes at blade root; used to compute an integral for mapping the output blade loads to single points (for writing to file only)" - typedef ^ RotMiscVarType MeshMapType B_L_2_R_P {:} - - "mapping data structure to map each bladeLoad output mesh to corresponding MiscVar%BladeRootLoad mesh" typedef ^ RotMiscVarType MeshType BladeBuoyLoadPoint {:} - - "point mesh for lumped buoyant blade loads" - @@ -393,6 +401,9 @@ typedef ^ RotParameterType ReKi VolHub - - - "Hub volume" m^3 typedef ^ RotParameterType ReKi HubCenBx - - - "Hub center of buoyancy x direction offset" m typedef ^ RotParameterType ReKi VolNac - - - "Nacelle volume" m^3 typedef ^ RotParameterType ReKi NacCenB 3 - - "Position of nacelle center of buoyancy from yaw bearing in nacelle coordinates" m +typedef ^ RotParameterType ReKi NacArea 3 - - "Projected area of the nacelle in X, Y, Z in the nacelle coordinate system" m^2 +typedef ^ RotParameterType ReKi NacCd 3 - - "Drag cefficient for the nacelle areas defied above" - +typedef ^ RotParameterType ReKi NacDragAC 3 - - "Position of aerodynamic center of nacelle drag in nacelle coordinates" m typedef ^ RotParameterType ReKi VolBl - - - "Buoyancy volume of all blades" m^3 typedef ^ RotParameterType ReKi VolTwr - - - "Buoyancy volume of the tower" m^3 typedef ^ RotParameterType ReKi BlRad {:}{:} - - "Matrix of equivalent blade radius at each node, used in buoyancy calculation" m @@ -420,6 +431,7 @@ typedef ^ RotParameterType LOGICAL TwrAero - - - "Calculate tower aerodynamic lo typedef ^ RotParameterType Integer DBEMT_Mod - - - "DBEMT_Mod" - typedef ^ RotParameterType Logical CavitCheck - - - "Flag that tells us if we want to check for cavitation" - typedef ^ RotParameterType Logical Buoyancy - - - "Include buoyancy effects?" flag +typedef ^ RotParameterType Logical NacelleDrag - - - "Include NacelleDrag effects?" flag typedef ^ RotParameterType IntKi MHK - - - "MHK" flag typedef ^ RotParameterType Logical CompAA - - - "Compute AeroAcoustic noise" flag typedef ^ RotParameterType ReKi AirDens - - - "Air density" kg/m^3 diff --git a/modules/aerodyn/src/AeroDyn_Types.f90 b/modules/aerodyn/src/AeroDyn_Types.f90 index c1a295bdf5..11c66131cc 100644 --- a/modules/aerodyn/src/AeroDyn_Types.f90 +++ b/modules/aerodyn/src/AeroDyn_Types.f90 @@ -193,6 +193,9 @@ MODULE AeroDyn_Types REAL(ReKi) :: HubCenBx = 0.0_ReKi !< Hub center of buoyancy x direction offset [m] REAL(ReKi) :: VolNac = 0.0_ReKi !< Nacelle volume [m^3] REAL(ReKi) , DIMENSION(1:3) :: NacCenB = 0.0_ReKi !< Position of nacelle center of buoyancy from yaw bearing in nacelle coordinates [m] + REAL(ReKi) , DIMENSION(1:3) :: NacArea = 0.0_ReKi !< Projected area of the nacelle in X, Y, Z in the nacelle coordinate system [m^2] + REAL(ReKi) , DIMENSION(1:3) :: NacCd = 0.0_ReKi !< Drag cefficient for the nacelle areas defied above [-] + REAL(ReKi) , DIMENSION(1:3) :: NacDragAC = 0.0_ReKi !< Position of aerodynamic center of nacelle drag in nacelle coordinates [m] LOGICAL :: TFinAero = .FALSE. !< Calculate tail fin aerodynamics model (flag) [flag] CHARACTER(1024) :: TFinFile !< Input file for tail fin aerodynamics [used only when TFinAero=True] [-] TYPE(TFinInputFileType) :: TFin !< Input file data for tail fin [-] @@ -209,6 +212,7 @@ MODULE AeroDyn_Types LOGICAL :: TwrAero = .false. !< Calculate tower aerodynamic loads? [flag] LOGICAL :: CavitCheck = .false. !< Flag that tells us if we want to check for cavitation [-] LOGICAL :: Buoyancy = .false. !< Include buoyancy effects? [flag] + LOGICAL :: NacelleDrag = .false. !< Include NacelleDrag effects? [flag] LOGICAL :: CompAA = .false. !< Compute AeroAcoustic noise [flag] CHARACTER(1024) :: AA_InputFile !< AeroAcoustics input file name [quoted strings] CHARACTER(1024) , DIMENSION(:), ALLOCATABLE :: ADBlFile !< AD blade file (NumBl filenames) [quoted strings] @@ -355,6 +359,10 @@ MODULE AeroDyn_Types REAL(ReKi) , DIMENSION(:), ALLOCATABLE :: HubMB !< buoyant moment at hub node [Nm] REAL(ReKi) , DIMENSION(:), ALLOCATABLE :: NacFB !< buoyant force at nacelle (tower top) node [N] REAL(ReKi) , DIMENSION(:), ALLOCATABLE :: NacMB !< buoyant moment at nacelle (tower top) node [Nm] + REAL(ReKi) , DIMENSION(:), ALLOCATABLE :: NacDragF !< drag force at nacelle (tower top) node [N] + REAL(ReKi) , DIMENSION(:), ALLOCATABLE :: NacDragM !< drag moment at nacelle (tower top) node [Nm] + REAL(ReKi) , DIMENSION(:), ALLOCATABLE :: NacFi !< Total force at nacelle (tower top) node [N] + REAL(ReKi) , DIMENSION(:), ALLOCATABLE :: NacMi !< Total moment at nacelle (tower top) node [Nm] TYPE(MeshType) , DIMENSION(:), ALLOCATABLE :: BladeRootLoad !< meshes at blade root; used to compute an integral for mapping the output blade loads to single points (for writing to file only) [-] TYPE(MeshMapType) , DIMENSION(:), ALLOCATABLE :: B_L_2_R_P !< mapping data structure to map each bladeLoad output mesh to corresponding MiscVar%BladeRootLoad mesh [-] TYPE(MeshType) , DIMENSION(:), ALLOCATABLE :: BladeBuoyLoadPoint !< point mesh for lumped buoyant blade loads [-] @@ -448,6 +456,9 @@ MODULE AeroDyn_Types REAL(ReKi) :: HubCenBx = 0.0_ReKi !< Hub center of buoyancy x direction offset [m] REAL(ReKi) :: VolNac = 0.0_ReKi !< Nacelle volume [m^3] REAL(ReKi) , DIMENSION(1:3) :: NacCenB = 0.0_ReKi !< Position of nacelle center of buoyancy from yaw bearing in nacelle coordinates [m] + REAL(ReKi) , DIMENSION(1:3) :: NacArea = 0.0_ReKi !< Projected area of the nacelle in X, Y, Z in the nacelle coordinate system [m^2] + REAL(ReKi) , DIMENSION(1:3) :: NacCd = 0.0_ReKi !< Drag cefficient for the nacelle areas defied above [-] + REAL(ReKi) , DIMENSION(1:3) :: NacDragAC = 0.0_ReKi !< Position of aerodynamic center of nacelle drag in nacelle coordinates [m] REAL(ReKi) :: VolBl = 0.0_ReKi !< Buoyancy volume of all blades [m^3] REAL(ReKi) :: VolTwr = 0.0_ReKi !< Buoyancy volume of the tower [m^3] REAL(ReKi) , DIMENSION(:,:), ALLOCATABLE :: BlRad !< Matrix of equivalent blade radius at each node, used in buoyancy calculation [m] @@ -474,6 +485,7 @@ MODULE AeroDyn_Types INTEGER(IntKi) :: DBEMT_Mod = 0_IntKi !< DBEMT_Mod [-] LOGICAL :: CavitCheck = .false. !< Flag that tells us if we want to check for cavitation [-] LOGICAL :: Buoyancy = .false. !< Include buoyancy effects? [flag] + LOGICAL :: NacelleDrag = .false. !< Include NacelleDrag effects? [flag] INTEGER(IntKi) :: MHK = 0_IntKi !< MHK [flag] LOGICAL :: CompAA = .false. !< Compute AeroAcoustic noise [flag] REAL(ReKi) :: AirDens = 0.0_ReKi !< Air density [kg/m^3] @@ -1953,6 +1965,9 @@ subroutine AD_CopyRotInputFile(SrcRotInputFileData, DstRotInputFileData, CtrlCod DstRotInputFileData%HubCenBx = SrcRotInputFileData%HubCenBx DstRotInputFileData%VolNac = SrcRotInputFileData%VolNac DstRotInputFileData%NacCenB = SrcRotInputFileData%NacCenB + DstRotInputFileData%NacArea = SrcRotInputFileData%NacArea + DstRotInputFileData%NacCd = SrcRotInputFileData%NacCd + DstRotInputFileData%NacDragAC = SrcRotInputFileData%NacDragAC DstRotInputFileData%TFinAero = SrcRotInputFileData%TFinAero DstRotInputFileData%TFinFile = SrcRotInputFileData%TFinFile call AD_CopyTFinInputFileType(SrcRotInputFileData%TFin, DstRotInputFileData%TFin, CtrlCode, ErrStat2, ErrMsg2) @@ -2025,6 +2040,9 @@ subroutine AD_PackRotInputFile(RF, Indata) call RegPack(RF, InData%HubCenBx) call RegPack(RF, InData%VolNac) call RegPack(RF, InData%NacCenB) + call RegPack(RF, InData%NacArea) + call RegPack(RF, InData%NacCd) + call RegPack(RF, InData%NacDragAC) call RegPack(RF, InData%TFinAero) call RegPack(RF, InData%TFinFile) call AD_PackTFinInputFileType(RF, InData%TFin) @@ -2063,6 +2081,9 @@ subroutine AD_UnPackRotInputFile(RF, OutData) call RegUnpack(RF, OutData%HubCenBx); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%VolNac); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%NacCenB); if (RegCheckErr(RF, RoutineName)) return + call RegUnpack(RF, OutData%NacArea); if (RegCheckErr(RF, RoutineName)) return + call RegUnpack(RF, OutData%NacCd); if (RegCheckErr(RF, RoutineName)) return + call RegUnpack(RF, OutData%NacDragAC); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%TFinAero); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%TFinFile); if (RegCheckErr(RF, RoutineName)) return call AD_UnpackTFinInputFileType(RF, OutData%TFin) ! TFin @@ -2090,6 +2111,7 @@ subroutine AD_CopyInputFile(SrcInputFileData, DstInputFileData, CtrlCode, ErrSta DstInputFileData%TwrAero = SrcInputFileData%TwrAero DstInputFileData%CavitCheck = SrcInputFileData%CavitCheck DstInputFileData%Buoyancy = SrcInputFileData%Buoyancy + DstInputFileData%NacelleDrag = SrcInputFileData%NacelleDrag DstInputFileData%CompAA = SrcInputFileData%CompAA DstInputFileData%AA_InputFile = SrcInputFileData%AA_InputFile if (allocated(SrcInputFileData%ADBlFile)) then @@ -2254,6 +2276,7 @@ subroutine AD_PackInputFile(RF, Indata) call RegPack(RF, InData%TwrAero) call RegPack(RF, InData%CavitCheck) call RegPack(RF, InData%Buoyancy) + call RegPack(RF, InData%NacelleDrag) call RegPack(RF, InData%CompAA) call RegPack(RF, InData%AA_InputFile) call RegPackAlloc(RF, InData%ADBlFile) @@ -2336,6 +2359,7 @@ subroutine AD_UnPackInputFile(RF, OutData) call RegUnpack(RF, OutData%TwrAero); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%CavitCheck); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%Buoyancy); if (RegCheckErr(RF, RoutineName)) return + call RegUnpack(RF, OutData%NacelleDrag); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%CompAA); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%AA_InputFile); if (RegCheckErr(RF, RoutineName)) return call RegUnpackAlloc(RF, OutData%ADBlFile); if (RegCheckErr(RF, RoutineName)) return @@ -3438,6 +3462,54 @@ subroutine AD_CopyRotMiscVarType(SrcRotMiscVarTypeData, DstRotMiscVarTypeData, C end if DstRotMiscVarTypeData%NacMB = SrcRotMiscVarTypeData%NacMB end if + if (allocated(SrcRotMiscVarTypeData%NacDragF)) then + LB(1:1) = lbound(SrcRotMiscVarTypeData%NacDragF, kind=B8Ki) + UB(1:1) = ubound(SrcRotMiscVarTypeData%NacDragF, kind=B8Ki) + if (.not. allocated(DstRotMiscVarTypeData%NacDragF)) then + allocate(DstRotMiscVarTypeData%NacDragF(LB(1):UB(1)), stat=ErrStat2) + if (ErrStat2 /= 0) then + call SetErrStat(ErrID_Fatal, 'Error allocating DstRotMiscVarTypeData%NacDragF.', ErrStat, ErrMsg, RoutineName) + return + end if + end if + DstRotMiscVarTypeData%NacDragF = SrcRotMiscVarTypeData%NacDragF + end if + if (allocated(SrcRotMiscVarTypeData%NacDragM)) then + LB(1:1) = lbound(SrcRotMiscVarTypeData%NacDragM, kind=B8Ki) + UB(1:1) = ubound(SrcRotMiscVarTypeData%NacDragM, kind=B8Ki) + if (.not. allocated(DstRotMiscVarTypeData%NacDragM)) then + allocate(DstRotMiscVarTypeData%NacDragM(LB(1):UB(1)), stat=ErrStat2) + if (ErrStat2 /= 0) then + call SetErrStat(ErrID_Fatal, 'Error allocating DstRotMiscVarTypeData%NacDragM.', ErrStat, ErrMsg, RoutineName) + return + end if + end if + DstRotMiscVarTypeData%NacDragM = SrcRotMiscVarTypeData%NacDragM + end if + if (allocated(SrcRotMiscVarTypeData%NacFi)) then + LB(1:1) = lbound(SrcRotMiscVarTypeData%NacFi, kind=B8Ki) + UB(1:1) = ubound(SrcRotMiscVarTypeData%NacFi, kind=B8Ki) + if (.not. allocated(DstRotMiscVarTypeData%NacFi)) then + allocate(DstRotMiscVarTypeData%NacFi(LB(1):UB(1)), stat=ErrStat2) + if (ErrStat2 /= 0) then + call SetErrStat(ErrID_Fatal, 'Error allocating DstRotMiscVarTypeData%NacFi.', ErrStat, ErrMsg, RoutineName) + return + end if + end if + DstRotMiscVarTypeData%NacFi = SrcRotMiscVarTypeData%NacFi + end if + if (allocated(SrcRotMiscVarTypeData%NacMi)) then + LB(1:1) = lbound(SrcRotMiscVarTypeData%NacMi, kind=B8Ki) + UB(1:1) = ubound(SrcRotMiscVarTypeData%NacMi, kind=B8Ki) + if (.not. allocated(DstRotMiscVarTypeData%NacMi)) then + allocate(DstRotMiscVarTypeData%NacMi(LB(1):UB(1)), stat=ErrStat2) + if (ErrStat2 /= 0) then + call SetErrStat(ErrID_Fatal, 'Error allocating DstRotMiscVarTypeData%NacMi.', ErrStat, ErrMsg, RoutineName) + return + end if + end if + DstRotMiscVarTypeData%NacMi = SrcRotMiscVarTypeData%NacMi + end if if (allocated(SrcRotMiscVarTypeData%BladeRootLoad)) then LB(1:1) = lbound(SrcRotMiscVarTypeData%BladeRootLoad, kind=B8Ki) UB(1:1) = ubound(SrcRotMiscVarTypeData%BladeRootLoad, kind=B8Ki) @@ -3663,6 +3735,18 @@ subroutine AD_DestroyRotMiscVarType(RotMiscVarTypeData, ErrStat, ErrMsg) if (allocated(RotMiscVarTypeData%NacMB)) then deallocate(RotMiscVarTypeData%NacMB) end if + if (allocated(RotMiscVarTypeData%NacDragF)) then + deallocate(RotMiscVarTypeData%NacDragF) + end if + if (allocated(RotMiscVarTypeData%NacDragM)) then + deallocate(RotMiscVarTypeData%NacDragM) + end if + if (allocated(RotMiscVarTypeData%NacFi)) then + deallocate(RotMiscVarTypeData%NacFi) + end if + if (allocated(RotMiscVarTypeData%NacMi)) then + deallocate(RotMiscVarTypeData%NacMi) + end if if (allocated(RotMiscVarTypeData%BladeRootLoad)) then LB(1:1) = lbound(RotMiscVarTypeData%BladeRootLoad, kind=B8Ki) UB(1:1) = ubound(RotMiscVarTypeData%BladeRootLoad, kind=B8Ki) @@ -3775,6 +3859,10 @@ subroutine AD_PackRotMiscVarType(RF, Indata) call RegPackAlloc(RF, InData%HubMB) call RegPackAlloc(RF, InData%NacFB) call RegPackAlloc(RF, InData%NacMB) + call RegPackAlloc(RF, InData%NacDragF) + call RegPackAlloc(RF, InData%NacDragM) + call RegPackAlloc(RF, InData%NacFi) + call RegPackAlloc(RF, InData%NacMi) call RegPack(RF, allocated(InData%BladeRootLoad)) if (allocated(InData%BladeRootLoad)) then call RegPackBounds(RF, 1, lbound(InData%BladeRootLoad, kind=B8Ki), ubound(InData%BladeRootLoad, kind=B8Ki)) @@ -3903,6 +3991,10 @@ subroutine AD_UnPackRotMiscVarType(RF, OutData) call RegUnpackAlloc(RF, OutData%HubMB); if (RegCheckErr(RF, RoutineName)) return call RegUnpackAlloc(RF, OutData%NacFB); if (RegCheckErr(RF, RoutineName)) return call RegUnpackAlloc(RF, OutData%NacMB); if (RegCheckErr(RF, RoutineName)) return + call RegUnpackAlloc(RF, OutData%NacDragF); if (RegCheckErr(RF, RoutineName)) return + call RegUnpackAlloc(RF, OutData%NacDragM); if (RegCheckErr(RF, RoutineName)) return + call RegUnpackAlloc(RF, OutData%NacFi); if (RegCheckErr(RF, RoutineName)) return + call RegUnpackAlloc(RF, OutData%NacMi); if (RegCheckErr(RF, RoutineName)) return if (allocated(OutData%BladeRootLoad)) deallocate(OutData%BladeRootLoad) call RegUnpack(RF, IsAllocAssoc); if (RegCheckErr(RF, RoutineName)) return if (IsAllocAssoc) then @@ -4755,6 +4847,9 @@ subroutine AD_CopyRotParameterType(SrcRotParameterTypeData, DstRotParameterTypeD DstRotParameterTypeData%HubCenBx = SrcRotParameterTypeData%HubCenBx DstRotParameterTypeData%VolNac = SrcRotParameterTypeData%VolNac DstRotParameterTypeData%NacCenB = SrcRotParameterTypeData%NacCenB + DstRotParameterTypeData%NacArea = SrcRotParameterTypeData%NacArea + DstRotParameterTypeData%NacCd = SrcRotParameterTypeData%NacCd + DstRotParameterTypeData%NacDragAC = SrcRotParameterTypeData%NacDragAC DstRotParameterTypeData%VolBl = SrcRotParameterTypeData%VolBl DstRotParameterTypeData%VolTwr = SrcRotParameterTypeData%VolTwr if (allocated(SrcRotParameterTypeData%BlRad)) then @@ -4910,6 +5005,7 @@ subroutine AD_CopyRotParameterType(SrcRotParameterTypeData, DstRotParameterTypeD DstRotParameterTypeData%DBEMT_Mod = SrcRotParameterTypeData%DBEMT_Mod DstRotParameterTypeData%CavitCheck = SrcRotParameterTypeData%CavitCheck DstRotParameterTypeData%Buoyancy = SrcRotParameterTypeData%Buoyancy + DstRotParameterTypeData%NacelleDrag = SrcRotParameterTypeData%NacelleDrag DstRotParameterTypeData%MHK = SrcRotParameterTypeData%MHK DstRotParameterTypeData%CompAA = SrcRotParameterTypeData%CompAA DstRotParameterTypeData%AirDens = SrcRotParameterTypeData%AirDens @@ -5100,6 +5196,9 @@ subroutine AD_PackRotParameterType(RF, Indata) call RegPack(RF, InData%HubCenBx) call RegPack(RF, InData%VolNac) call RegPack(RF, InData%NacCenB) + call RegPack(RF, InData%NacArea) + call RegPack(RF, InData%NacCd) + call RegPack(RF, InData%NacDragAC) call RegPack(RF, InData%VolBl) call RegPack(RF, InData%VolTwr) call RegPackAlloc(RF, InData%BlRad) @@ -5126,6 +5225,7 @@ subroutine AD_PackRotParameterType(RF, Indata) call RegPack(RF, InData%DBEMT_Mod) call RegPack(RF, InData%CavitCheck) call RegPack(RF, InData%Buoyancy) + call RegPack(RF, InData%NacelleDrag) call RegPack(RF, InData%MHK) call RegPack(RF, InData%CompAA) call RegPack(RF, InData%AirDens) @@ -5194,6 +5294,9 @@ subroutine AD_UnPackRotParameterType(RF, OutData) call RegUnpack(RF, OutData%HubCenBx); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%VolNac); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%NacCenB); if (RegCheckErr(RF, RoutineName)) return + call RegUnpack(RF, OutData%NacArea); if (RegCheckErr(RF, RoutineName)) return + call RegUnpack(RF, OutData%NacCd); if (RegCheckErr(RF, RoutineName)) return + call RegUnpack(RF, OutData%NacDragAC); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%VolBl); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%VolTwr); if (RegCheckErr(RF, RoutineName)) return call RegUnpackAlloc(RF, OutData%BlRad); if (RegCheckErr(RF, RoutineName)) return @@ -5220,6 +5323,7 @@ subroutine AD_UnPackRotParameterType(RF, OutData) call RegUnpack(RF, OutData%DBEMT_Mod); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%CavitCheck); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%Buoyancy); if (RegCheckErr(RF, RoutineName)) return + call RegUnpack(RF, OutData%NacelleDrag); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%MHK); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%CompAA); if (RegCheckErr(RF, RoutineName)) return call RegUnpack(RF, OutData%AirDens); if (RegCheckErr(RF, RoutineName)) return From 6725541cbabfd22a4b6f8be9d9f051989a5f9434 Mon Sep 17 00:00:00 2001 From: Mayank Chetan Date: Wed, 17 Jul 2024 20:06:25 +0000 Subject: [PATCH 02/11] resolving seg fault in CalcBuoyantLoads --- modules/aerodyn/src/AeroDyn.f90 | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/modules/aerodyn/src/AeroDyn.f90 b/modules/aerodyn/src/AeroDyn.f90 index 92046e7973..c69cc268d8 100644 --- a/modules/aerodyn/src/AeroDyn.f90 +++ b/modules/aerodyn/src/AeroDyn.f90 @@ -1995,7 +1995,8 @@ subroutine AD_CalcOutput( t, u, p, x, xd, z, OtherState, y, m, ErrStat, ErrMsg, ! Cavitation check call AD_CavtCrit(u, p, m, errStat2, errMsg2) if(Failed()) return - ! initialize nacelle mesh loads + + ! initialize nacelle mesh loads do iR = 1,size(p%rotors) y%rotors(iR)%NacelleLoad%Force = 0.0_ReKi y%rotors(iR)%NacelleLoad%Moment = 0.0_ReKi @@ -2011,7 +2012,7 @@ subroutine AD_CalcOutput( t, u, p, x, xd, z, OtherState, y, m, ErrStat, ErrMsg, ! Calculate nacelle drag loads do iR = 1,size(p%rotors) - if ( p%rotors(iR)%NacelleDrag ) then ! m%Inflow(1)%RotInflow(iR) + if ( p%rotors(iR)%NacelleDrag ) then call computeNacelleDrag( u%rotors(iR), p%rotors(iR), m%rotors(iR), y%rotors(iR), m%Inflow(1)%RotInflow(iR), ErrStat, ErrMsg ) if(Failed()) return end if @@ -2594,6 +2595,11 @@ subroutine CalcBuoyantLoads( u, p, m, y, ErrStat, ErrMsg ) if ( p%VolNac == 0 ) then m%NacFB = NacFBtmp m%NacMB = NacMBtmp + + ! Passing buoyant loads to m variable, drag loads are called after buoyant loads + m%NacFi = NacFBtmp + m%NacMi = NacMBtmp + else ! Check that nacelle node does not go beneath the seabed or pierce the free surface if ( u%NacelleMotion%Position(3,1) + u%NacelleMotion%TranslationDisp(3,1) >= p%MSL2SWL .OR. u%NacelleMotion%Position(3,1) + u%NacelleMotion%TranslationDisp(3,1) <= -p%WtrDpth ) & @@ -2629,6 +2635,10 @@ subroutine CalcBuoyantLoads( u, p, m, y, ErrStat, ErrMsg ) ! Pass to m variable m%NacFB = NacFBtmp m%NacMB = NacMBtmp + + ! Passing buoyant loads to m variable, drag loads are called after buoyant loads + m%NacFi = NacFBtmp + m%NacMi = NacMBtmp end if ! Assign buoyant loads to nacelle mesh. Mesh might contain the nacelle drag force. From 8ec7580d9feee26a6c1e5458b4977483b4c671ed Mon Sep 17 00:00:00 2001 From: Mayank Chetan Date: Thu, 18 Jul 2024 17:35:40 +0000 Subject: [PATCH 03/11] adding two new tests for nacelle drag --- reg_tests/CTestList.cmake | 2 ++ 1 file changed, 2 insertions(+) diff --git a/reg_tests/CTestList.cmake b/reg_tests/CTestList.cmake index 477df33536..b4713fab42 100644 --- a/reg_tests/CTestList.cmake +++ b/reg_tests/CTestList.cmake @@ -297,6 +297,7 @@ of_regression("SWRT_YFree_VS_EDG01" "openfast;elastodyn;aerodyn15;se of_regression("SWRT_YFree_VS_EDC01" "openfast;elastodyn;aerodyn14;servodyn") # of_regression("SWRT_YFree_VS_WTurb" "openfast;elastodyn;aerodyn14;servodyn") of_regression("5MW_Land_DLL_WTurb" "openfast;elastodyn;aerodyn15;servodyn") +of_regression("5MW_Land_DLL_WTurb_wNacDrag" "openfast;elastodyn;aerodyn15;servodyn") of_regression("5MW_OC3Mnpl_DLL_WTurb_WavesIrr" "openfast;elastodyn;aerodyn15;servodyn;hydrodyn;subdyn;offshore") of_regression("5MW_OC3Mnpl_DLL_WTurb_WavesIrr_Restart" "openfast;elastodyn;aerodyn15;servodyn;hydrodyn;subdyn;offshore;restart") of_regression("5MW_OC3Trpd_DLL_WSt_WavesReg" "openfast;elastodyn;aerodyn15;servodyn;hydrodyn;subdyn;offshore") @@ -313,6 +314,7 @@ of_regression("EllipticalWing_OLAF" "openfast;aerodyn15;olaf" of_regression("StC_test_OC4Semi" "openfast;servodyn;hydrodyn;moordyn;offshore;stc") of_regression("MHK_RM1_Fixed" "openfast;elastodyn;aerodyn15;mhk") of_regression("MHK_RM1_Floating" "openfast;elastodyn;aerodyn15;hydrodyn;moordyn;mhk") +of_regression("MHK_RM1_Floating_wNacDrag" "openfast;elastodyn;aerodyn15;hydrodyn;moordyn;mhk") of_regression("Tailfin_FreeYaw1DOF_PolarBased" "openfast;elastodyn;aerodyn15") of_regression("Tailfin_FreeYaw1DOF_Unsteady" "openfast;elastodyn;aerodyn15") From 37b42b07e6bafd80a41aca50e9b04776292ef6a4 Mon Sep 17 00:00:00 2001 From: Mayank Chetan Date: Thu, 25 Jul 2024 05:17:35 +0000 Subject: [PATCH 04/11] inital update to docs --- .../aerodyn-aeroacoustics/example/AeroDyn.ipt | 1 + docs/source/user/aerodyn/appendix.rst | 2 +- docs/source/user/aerodyn/driver.rst | 28 +++++++++++-------- .../aerodyn/examples/ad_primary_example.dat | 8 ++++-- docs/source/user/aerodyn/input.rst | 16 ++++++++--- docs/source/user/aerodyn/introduction.rst | 4 +-- docs/source/user/api_change.rst | 3 ++ 7 files changed, 42 insertions(+), 20 deletions(-) diff --git a/docs/source/user/aerodyn-aeroacoustics/example/AeroDyn.ipt b/docs/source/user/aerodyn-aeroacoustics/example/AeroDyn.ipt index 57c3752e01..a7a30ffc94 100644 --- a/docs/source/user/aerodyn-aeroacoustics/example/AeroDyn.ipt +++ b/docs/source/user/aerodyn-aeroacoustics/example/AeroDyn.ipt @@ -11,6 +11,7 @@ False TwrAero - Calculate tower aerodynamic loads? (flag) False FrozenWake - Assume frozen wake during linearization? (flag False CavitCheck - Perform cavitation check? (flag) False Buoyancy - Include buoyancy effects? (flag) +False NacelleDrag - Include Nacelle Drag effects? (flag) True CompAA - Flag to compute AeroAcoustics calculation "AeroAcousticsInput.dat" AA_InputFile ====== Environmental Conditions ========================================== diff --git a/docs/source/user/aerodyn/appendix.rst b/docs/source/user/aerodyn/appendix.rst index 0f60e7cf7d..ef7a0fbd09 100644 --- a/docs/source/user/aerodyn/appendix.rst +++ b/docs/source/user/aerodyn/appendix.rst @@ -27,7 +27,7 @@ outside of OpenFAST. 3) AeroDyn Primary Input File :download:`(primary input file example) `: -The primary AeroDyn input file defines modeling options, environmental conditions (except freestream flow), airfoils, tower nodal discretization and properties, tower, hub, and nacelle buoyancy properties, as well as output file specifications. +The primary AeroDyn input file defines modeling options, environmental conditions (except freestream flow), airfoils, tower nodal discretization and properties, tower, hub, and nacelle properties, as well as output file specifications. The file is organized into several functional sections. Each section corresponds to an aspect of the aerodynamics model. diff --git a/docs/source/user/aerodyn/driver.rst b/docs/source/user/aerodyn/driver.rst index 86469839f3..dec9b71aa3 100644 --- a/docs/source/user/aerodyn/driver.rst +++ b/docs/source/user/aerodyn/driver.rst @@ -375,24 +375,30 @@ An example is given below for two turbines, the first one having 3 blades, the s **Hub and nacelle inputs** -The sections defining the hub and nacelle buoyancy parameters must also be reproduced for each turbine. +The sections defining the hub and nacelle parameters must also be reproduced for each turbine. An example is given below for two turbines: .. code:: ====== Hub Properties ============================================================================== [used only when Buoyancy=True] - 7.0 VolHub - Hub volume (m^3) - 0.0 HubCenBx - Hub center of buoyancy x direction offset (m) + 7.0 VolHub - Hub volume (m^3) + 0.0 HubCenBx - Hub center of buoyancy x direction offset (m) ====== Hub Properties ============================================================================== [used only when Buoyancy=True] - 5.0 VolHub - Hub volume (m^3) - 0.2 HubCenBx - Hub center of buoyancy x direction offset (m) - ====== Nacelle Properties ========================================================================== [used only when Buoyancy=True] - 32.0 VolNac - Nacelle volume (m^3) - 0.3, 0.0, 0.05 NacCenB - Position of nacelle center of buoyancy from yaw bearing in nacelle coordinates (m) - ====== Nacelle Properties ========================================================================== [used only when Buoyancy=True] - 30.0 VolNac - Nacelle volume (m^3) - 0.5, 0.1, 0.05 NacCenB - Position of nacelle center of buoyancy from yaw bearing in nacelle coordinates (m) + 5.0 VolHub - Hub volume (m^3) + 0.2 HubCenBx - Hub center of buoyancy x direction offset (m) + ====== Nacelle Properties ========================================================================== [used only when Buoyancy=True or NacelleDrag=True] + 32.0 VolNac - Nacelle volume (m^3) + 0.3, 0.0, 0.05 NacCenB - Position of nacelle center of buoyancy from yaw bearing in nacelle coordinates (m) + 4.67, 20.15, 20.15 NacArea - Projected area of the nacelle in X, Y, Z in the nacelle coordinate system (m^2) + 0.5, 0.5, 0.5 NacCd - Drag coefficient for the nacelle areas defined above (-) + 0.43, 0, 0 NacDragAC - Position of aerodynamic center of nacelle drag in nacelle coordinates (m) + ====== Nacelle Properties ========================================================================== [used only when Buoyancy=True or NacelleDrag=True] + 32.0 VolNac - Nacelle volume (m^3) + 0.3, 0.0, 0.05 NacCenB - Position of nacelle center of buoyancy from yaw bearing in nacelle coordinates (m) + 4.67, 20.15, 20.15 NacArea - Projected area of the nacelle in X, Y, Z in the nacelle coordinate system (m^2) + 0.5, 0.5, 0.5 NacCd - Drag coefficient for the nacelle areas defined above (-) + 0.43, 0, 0 NacDragAC - Position of aerodynamic center of nacelle drag in nacelle coordinates (m) **Aerodynamic tower inputs** diff --git a/docs/source/user/aerodyn/examples/ad_primary_example.dat b/docs/source/user/aerodyn/examples/ad_primary_example.dat index b0c4dec21f..1586aa3e5a 100644 --- a/docs/source/user/aerodyn/examples/ad_primary_example.dat +++ b/docs/source/user/aerodyn/examples/ad_primary_example.dat @@ -9,6 +9,7 @@ False Echo - Echo the input to ".AD.ech"? (flag False TwrAero - Calculate tower aerodynamic loads? (flag) False CavitCheck - Perform cavitation check? (flag) [UA_Mod must be 0 when CavitCheck=true] False Buoyancy - Include buoyancy effects? (flag) +False NacelleDrag - Include Nacelle Drag effects? (flag) False CompAA - Flag to compute AeroAcoustics calculation [used only when Wake_Mod = 1 or 2] "unused" AA_InputFile - AeroAcoustics input file [used only when CompAA=true] ====== Environmental Conditions =================================================================== @@ -75,9 +76,12 @@ True UseBlCm - Include aerodynamic pitching moment in calcul ====== Hub Properties ============================================================================== [used only when Buoyancy=True] 0 VolHub - Hub volume (m^3) 0 HubCenBx - Hub center of buoyancy x direction offset (m) -====== Nacelle Properties ========================================================================== [used only when Buoyancy=True] +====== Nacelle Properties ========================================================================== [used only when Buoyancy=True or NacelleDrag=True] 0 VolNac - Nacelle volume (m^3) - 0, 0, 0 NacCenB - Position of nacelle center of buoyancy from yaw bearing in nacelle coordinates (m) + 0, 0, 0 NacCenB - Position of nacelle center of buoyancy from yaw bearing in nacelle coordinates (m) + 0, 0, 0 NacArea - Projected area of the nacelle in X, Y, Z in the nacelle coordinate system (m^2) + 0, 0, 0 NacCd - Drag coefficient for the nacelle areas defined above (-) + 0, 0, 0 NacDragAC - Position of aerodynamic center of nacelle drag in nacelle coordinates (m) ====== Tail Fin Aerodynamics ======================================================================= False TFinAero - Calculate tail fin aerodynamics model (flag) "unused" TFinFile - Input file for tail fin aerodynamics [used only when TFinAero=True] diff --git a/docs/source/user/aerodyn/input.rst b/docs/source/user/aerodyn/input.rst index a9a6218cdc..7b9cf91882 100644 --- a/docs/source/user/aerodyn/input.rst +++ b/docs/source/user/aerodyn/input.rst @@ -45,7 +45,7 @@ AeroDyn Primary Input File The primary AeroDyn input file defines modeling options, environmental conditions (except freestream flow), airfoils, tower nodal -discretization and properties, tower, hub, and nacelle buoyancy properties, +discretization and properties, tower, hub, and nacelle properties, as well as output file specifications. The file is organized into several functional sections. Each section @@ -134,6 +134,9 @@ tower, nacelle, and hub of an MHK turbine or FALSE to disable this calculation. If ``Buoyancy`` is TRUE, the ``MHK`` flag in the AeroDyn or OpenFAST driver input file must be set to 1 or 2 to indicate an MHK turbine is being modeled. +Set the ``NacelleDrag`` flag to TRUE to calculate the drag loads on the nacelle +or FALSE to disable this calculation. + Set the ``CompAA`` flag to TRUE to run aero-acoustic calculations. This option is only available for ``Wake_Mod = 1`` and is not available for an MHK turbine. See section :numref:`AeroAcoustics` for information on how to @@ -451,13 +454,18 @@ Since the hub and blades are joined elements, hub buoyancy should be turned on i Nacelle Properties ~~~~~~~~~~~~~~~~~~ -The input parameters in this section pertain to the calculation of buoyant loads -on the nacelle and are only used when ``Buoyancy = TRUE``. +The input parameters in this section pertain to the calculation of buoyant and drag loads +on the nacelle and are only used when ``Buoyancy = TRUE`` or ``NacelleDrag = TRUE``. ``VolNac`` is the volume of the nacelle and ``NacCenB``` is the position (x,y,z vector) of the nacelle center of buoyancy from the yaw bearing in local nacelle coordinates. To neglect buoyant -loads on the nacelle, set ``VolNac`` to 0. +loads on the nacelle, set ``VolNac`` to 0. Only used when ``Buoyancy = TRUE``. + +``NacArea`` are the projected areas (x,y,z) of the nacelle in the nacelle coordinate system, +``NacCd`` is the drag coefficient for the nacelle areas defined by ``NacArea``and ``NacDragAC`` is the +position (x,y,z vector) of the nacelle aerodynamic center from +the yaw bearing in local nacelle coordinates. Only used when ``NacelleDrag = TRUE``. Tail fin AeroDynamics ~~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/source/user/aerodyn/introduction.rst b/docs/source/user/aerodyn/introduction.rst index c743fc2875..7073db43a0 100644 --- a/docs/source/user/aerodyn/introduction.rst +++ b/docs/source/user/aerodyn/introduction.rst @@ -69,7 +69,7 @@ driver code, without aero-elastic coupling. AeroDyn consists of six submodels: (1) rotor wake/induction, (2) blade airfoil aerodynamics, (3) tower influence on the fluid local to the -blade nodes, (4) tower drag, (5) aeroacoustics, +blade nodes, (4) tower and nacelle drag, (5) aeroacoustics, and (6) buoyancy on the blades, hub, nacelle, and tower (for MHK turbines). Nacelle, hub, and tail-vane fluid influence and loading (with the exception of nacelle and hub buoyant loads) and wake and array effects between @@ -181,7 +181,7 @@ flow models. The primary AeroDyn input file defines modeling options, environmental conditions (except freestream flow), airfoils, tower nodal -discretization and properties, tower, hub, and nacelle buoyancy properties, +discretization and properties, tower, hub, and nacelle properties, as well as output file specifications. Airfoil data properties are read from dedicated inputs files (one for each airfoil) and include coefficients of lift force, drag force, and optional pitching moment and minimum pressure diff --git a/docs/source/user/api_change.rst b/docs/source/user/api_change.rst index 03ebb96eb5..c32d5e60bf 100644 --- a/docs/source/user/api_change.rst +++ b/docs/source/user/api_change.rst @@ -42,6 +42,9 @@ FAST.Farm 75 WAT_DxDyDz 5.0, FAST.Farm 76 WAT_ScaleBox default WAT_ScaleBox - Flag to scale the input turbulence box to zero mean and unit standard deviation at every node [DEFAULT=False] (flag) FAST.Farm 77 WAT_k_Def default WAT_k_Def - Calibrated parameters for the influence of the maximum wake deficit on wake-added turbulence (set of 5 parameters: k_Def, FMin, DMin, DMax, Exp) (-) [>=0.0, >=0.0 and <=1.0, >=0.0, >DMin, >0.0] or DEFAULT [DEFAULT=[0.6, 0.0, 0.0, 2.0, 1.0 ]] FAST.Farm 78 WAT_k_Grad default WAT_k_Grad - Calibrated parameters for the influence of the radial velocity gradient of the wake deficit on wake-added turbulence (set of 5 parameters: k_Grad, FMin, DMin, DMax, Exp) (-) [>=0.0, >=0.0 and <=1.0, >=0.0, >DMin, >0.0] or DEFAULT [DEFAULT=[3.0, 0.0, 0.0, 12.0, 0.65] +AeroDyn 80\* NacArea 0, 0, 0 NacArea - Projected area of the nacelle in X, Y, Z in the nacelle coordinate system (m^2) +AeroDyn 81\* NacCd 0, 0, 0 NacCd - Drag coefficient for the nacelle areas defined above (-) +AeroDyn 82\* NacDragAC 0, 0, 0 NacDragAC - Position of aerodynamic center of nacelle drag in nacelle coordinates (m) ============================================= ======= ==================== ======================================================================================================================================================================================================== \*Exact line number depends on number of entries in various preceeding tables. From 4b66ecb3082a8fc1e42860caabd5e858d5feb851 Mon Sep 17 00:00:00 2001 From: Mayank Chetan Date: Thu, 25 Jul 2024 05:19:14 +0000 Subject: [PATCH 05/11] correcting spelling errors --- modules/aerodyn/src/AeroDyn_IO.f90 | 2 +- reg_tests/CTestList.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/aerodyn/src/AeroDyn_IO.f90 b/modules/aerodyn/src/AeroDyn_IO.f90 index 2d3978889d..6095490d04 100644 --- a/modules/aerodyn/src/AeroDyn_IO.f90 +++ b/modules/aerodyn/src/AeroDyn_IO.f90 @@ -1029,7 +1029,7 @@ SUBROUTINE ParsePrimaryFileInfo( PriPath, InitInp, InputFile, RootName, NumBlade ! NacArea - Projected area of the nacelle in X, Y, Z in the nacelle coordinate system (m^2) call ParseAry( FileInfo_In, CurLine, "NacArea", InputFileData%rotors(iR)%NacArea, 3, ErrStat2, ErrMsg2, UnEc ) if (Failed()) return - ! NacCd - Drag cefficient for the nacelle areas defied above (-) + ! NacCd - Drag coefficient for the nacelle areas defined above (-) call ParseAry( FileInfo_In, CurLine, "NacCd", InputFileData%rotors(iR)%NacCd, 3, ErrStat2, ErrMsg2, UnEc ) if (Failed()) return ! NacDragAC - Position of aerodynamic center of nacelle drag in nacelle coordinates (m) diff --git a/reg_tests/CTestList.cmake b/reg_tests/CTestList.cmake index 69373c0903..a906411b47 100644 --- a/reg_tests/CTestList.cmake +++ b/reg_tests/CTestList.cmake @@ -314,7 +314,7 @@ of_regression("EllipticalWing_OLAF" "openfast;aerodyn15;olaf" of_regression("StC_test_OC4Semi" "openfast;servodyn;hydrodyn;moordyn;offshore;stc") of_regression("MHK_RM1_Fixed" "openfast;elastodyn;aerodyn15;mhk") of_regression("MHK_RM1_Floating" "openfast;elastodyn;aerodyn15;hydrodyn;moordyn;mhk") -of_regression("MHK_RM1_Floating_wNacDrag" "openfast;elastodyn;aerodyn15;hydrodyn;moordyn;mhk") +of_regression("MHK_RM1_Floating_wNacDrag" "openfast;elastodyn;aerodyn15;hydrodyn;moordyn;mhk") of_regression("Tailfin_FreeYaw1DOF_PolarBased" "openfast;elastodyn;aerodyn15") of_regression("Tailfin_FreeYaw1DOF_Unsteady" "openfast;elastodyn;aerodyn15") From c0b73912e3f41cabc4da4e6986245585b5670579 Mon Sep 17 00:00:00 2001 From: Mayank Chetan Date: Thu, 25 Jul 2024 15:49:27 +0000 Subject: [PATCH 06/11] brief about nacelle drag --- docs/source/user/aerodyn/introduction.rst | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/source/user/aerodyn/introduction.rst b/docs/source/user/aerodyn/introduction.rst index 7073db43a0..d4f845f374 100644 --- a/docs/source/user/aerodyn/introduction.rst +++ b/docs/source/user/aerodyn/introduction.rst @@ -179,6 +179,12 @@ structural motion, depending on features enabled). The tower drag load calculation is quasi-steady and independent from the tower influence on flow models. +Similarly, the aerodynamics drag loads on the nacelle is calculated using the +nacelle geometry, drag coefficients, and the local relative fluid +velocity between the freestream (undisturbed) flow and nacelle. The +nacelle drag load calculation is quasi-steady and independent from the +rotors influence on flow models. + The primary AeroDyn input file defines modeling options, environmental conditions (except freestream flow), airfoils, tower nodal discretization and properties, tower, hub, and nacelle properties, From 79d35bd4cb96651f8f9cd8dc0896f2235cbfcb50 Mon Sep 17 00:00:00 2001 From: Mayank Chetan Date: Mon, 5 Aug 2024 18:00:12 +0000 Subject: [PATCH 07/11] variable name cleanup --- modules/aerodyn/src/AeroDyn.f90 | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/modules/aerodyn/src/AeroDyn.f90 b/modules/aerodyn/src/AeroDyn.f90 index c69cc268d8..fe3f034a32 100644 --- a/modules/aerodyn/src/AeroDyn.f90 +++ b/modules/aerodyn/src/AeroDyn.f90 @@ -7697,25 +7697,23 @@ SUBROUTINE computeNacelleDrag( u, p, m, y, RotInflow, ErrStat, ErrMsg ) CHARACTER(*) , INTENT( OUT) :: ErrMsg !< Error message if ErrStat /= ErrID_None ! Local Vars REAL(ReKi) :: totalAngle ! Angle between incoming wind direction and nacelle, - REAL(ReKi) :: tiltAngle ! Tilt Angle of the nacelle. - REAL(ReKi) :: yawAngle ! Current Yaw Bearing (Radians) - REAL(ReKi) :: area ! Area of the nacelle projected in the wind direction + REAL(ReKi) :: tiltAngle ! Tilt angle of the nacelle. + REAL(ReKi) :: yawAngle ! Current Yaw Bearing. + REAL(ReKi) :: areaCd ! Area*Cd of the nacelle projected in the wind direction REAL(ReKi) :: forceMag ! Drag force aligned with wind direction Real(ReKi) :: unitDiskVec(3) ! unit vector aligned at an angle of "totalAngle" from yawed rotor disk - Real(ReKi) :: areaVec(3) ! Vec containing areas of yz, xz and xy faces of the nacelle + Real(ReKi) :: areaCdVec(3) ! Vec containing areas of yz, xz and xy faces of the nacelle * respective Cd's REAL(ReKi) :: hubHeigthWindSpeed(3) ! hubHeigthWindSpeed(1), hubHeigthWindSpeed(2), and hubHeigthWindSpeed(3) and u, v, and w wind velocities at Hub height - REAL(ReKi) :: nacelleDims(3) ! nacelleDims(1), nacelleDims(2), and nacelleDims(3) and Length(x), Width(y), and Height(z) of the Nacelle - REAL(ReKi) :: force(3) ! Forces in global c.s - REAL(ReKi) :: moment(3) ! Moments in global c.s + REAL(ReKi) :: force(3) ! Forces in nacelle c.s + REAL(ReKi) :: moment(3) ! Moments in nacelle c.s ErrStat = ErrID_None ErrMsg = "" - ! ! Fetch nacelle inflow, and nacelle motion & Calculating the relative inflow velocity - hubHeigthWindSpeed = RotInflow%InflowOnNacelle(:,1) - hubHeigthWindSpeed = hubHeigthWindSpeed - u%NacelleMotion%TranslationVel(:,1) + ! ! Calculating the relative inflow velocity at nacelle + hubHeigthWindSpeed = RotInflow%InflowOnNacelle(:,1) - u%NacelleMotion%TranslationVel(:,1) - ! Calculating angles for calculations. + ! Calculating required angles. yawAngle = atan2(u%NacelleMotion%Orientation(1,2,1), u%NacelleMotion%Orientation(1,1,1)) call MPi2Pi(yawAngle) @@ -7731,15 +7729,15 @@ SUBROUTINE computeNacelleDrag( u, p, m, y, RotInflow, ErrStat, ErrMsg ) unitDiskVec(3) = abs(sin(tiltAngle)) ! Calculating Area * Cd for the respective areas. Allows for multiple Cds - areaVec(1) = p%NacArea(1) * p%NacCd(1) - areaVec(2) = p%NacArea(2) * p%NacCd(2) - areaVec(3) = p%NacArea(3) * p%NacCd(3) + areaCdVec(1) = p%NacArea(1) * p%NacCd(1) + areaCdVec(2) = p%NacArea(2) * p%NacCd(2) + areaCdVec(3) = p%NacArea(3) * p%NacCd(3) - ! total nacelle area projected into incoming wind direction - area = dot_product(areaVec, unitDiskVec) + ! total nacelle area * Cd projected into incoming wind direction + areaCd = dot_product(areaCdVec, unitDiskVec) ! Find drag force (in global X direction) Assuming dominant direction of wind. - forceMag = 0.5 * p%AirDens * (hubHeigthWindSpeed(1)**2 + hubHeigthWindSpeed(2)**2) * area + forceMag = 0.5 * p%AirDens * (hubHeigthWindSpeed(1)**2 + hubHeigthWindSpeed(2)**2) * areaCd ! Decompose along the nacelle length, width and height force = unitDiskVec*forceMag From 1775abf068859aa275328ef1be3c49e71959deea Mon Sep 17 00:00:00 2001 From: Mayank Chetan Date: Wed, 14 Aug 2024 04:22:03 +0000 Subject: [PATCH 08/11] moving 'm' var assignment outside conditional --- modules/aerodyn/src/AeroDyn.f90 | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/modules/aerodyn/src/AeroDyn.f90 b/modules/aerodyn/src/AeroDyn.f90 index fe3f034a32..85602f0e2e 100644 --- a/modules/aerodyn/src/AeroDyn.f90 +++ b/modules/aerodyn/src/AeroDyn.f90 @@ -2596,10 +2596,6 @@ subroutine CalcBuoyantLoads( u, p, m, y, ErrStat, ErrMsg ) m%NacFB = NacFBtmp m%NacMB = NacMBtmp - ! Passing buoyant loads to m variable, drag loads are called after buoyant loads - m%NacFi = NacFBtmp - m%NacMi = NacMBtmp - else ! Check that nacelle node does not go beneath the seabed or pierce the free surface if ( u%NacelleMotion%Position(3,1) + u%NacelleMotion%TranslationDisp(3,1) >= p%MSL2SWL .OR. u%NacelleMotion%Position(3,1) + u%NacelleMotion%TranslationDisp(3,1) <= -p%WtrDpth ) & @@ -2636,15 +2632,17 @@ subroutine CalcBuoyantLoads( u, p, m, y, ErrStat, ErrMsg ) m%NacFB = NacFBtmp m%NacMB = NacMBtmp - ! Passing buoyant loads to m variable, drag loads are called after buoyant loads - m%NacFi = NacFBtmp - m%NacMi = NacMBtmp end if ! Assign buoyant loads to nacelle mesh. Mesh might contain the nacelle drag force. y%NacelleLoad%Force(:,1) = y%NacelleLoad%Force(:,1) + NacFBtmp y%NacelleLoad%Moment(:,1) = y%NacelleLoad%Moment(:,1) + NacMBtmp + ! Passing buoyant loads to m variable, drag loads are called after buoyant loads + m%NacFi = y%NacelleLoad%Force(:,1) + m%NacMi = y%NacelleLoad%Moment(:,1) + + end subroutine CalcBuoyantLoads !---------------------------------------------------------------------------------------------------------------------------------- !> Tight coupling routine for solving for the residual of the constraint state equations @@ -7750,14 +7748,14 @@ SUBROUTINE computeNacelleDrag( u, p, m, y, RotInflow, ErrStat, ErrMsg ) moment = CROSS_PRODUCT(p%NacDragAC, force) ! Add drag forces and moments to nacelle node - y%NacelleLoad%Force(1:3,1) = y%NacelleLoad%Force(1:3,1) + matmul(transpose(u%NacelleMotion%Orientation(:,:,1)),force) - y%NacelleLoad%Moment(1:3,1) = y%NacelleLoad%Moment(1:3,1) + matmul(transpose(u%NacelleMotion%Orientation(:,:,1)),moment) + y%NacelleLoad%Force(:,1) = y%NacelleLoad%Force(:,1) + matmul(transpose(u%NacelleMotion%Orientation(:,:,1)),force) + y%NacelleLoad%Moment(:,1) = y%NacelleLoad%Moment(:,1) + matmul(transpose(u%NacelleMotion%Orientation(:,:,1)),moment) ! Adding to misc vars for output in Global c.s. m%NacDragF = matmul(transpose(u%NacelleMotion%Orientation(:,:,1)),force) m%NacDragM = matmul(transpose(u%NacelleMotion%Orientation(:,:,1)),moment) - m%NacFi = y%NacelleLoad%Force(1:3,1) - m%NacMi = y%NacelleLoad%Moment(1:3,1) + m%NacFi = y%NacelleLoad%Force(:,1) + m%NacMi = y%NacelleLoad%Moment(:,1) From a23788f35abca8f60ec78adfccf824babf5014ad Mon Sep 17 00:00:00 2001 From: Mayank Chetan Date: Wed, 14 Aug 2024 04:27:33 +0000 Subject: [PATCH 09/11] Clarifying that Cd's are defined for the three areas --- docs/source/user/aerodyn/input.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/source/user/aerodyn/input.rst b/docs/source/user/aerodyn/input.rst index 7b9cf91882..b901a541f4 100644 --- a/docs/source/user/aerodyn/input.rst +++ b/docs/source/user/aerodyn/input.rst @@ -462,8 +462,8 @@ position (x,y,z vector) of the nacelle center of buoyancy from the yaw bearing in local nacelle coordinates. To neglect buoyant loads on the nacelle, set ``VolNac`` to 0. Only used when ``Buoyancy = TRUE``. -``NacArea`` are the projected areas (x,y,z) of the nacelle in the nacelle coordinate system, -``NacCd`` is the drag coefficient for the nacelle areas defined by ``NacArea``and ``NacDragAC`` is the +``NacArea`` are the projected areas (Ax,Ay,Az vector) of the nacelle in the nacelle coordinate system, +``NacCd`` are the drag coefficients (Cdx, Cdy, Cdz vector) for the three nacelle areas defined by ``NacArea``and ``NacDragAC`` is the position (x,y,z vector) of the nacelle aerodynamic center from the yaw bearing in local nacelle coordinates. Only used when ``NacelleDrag = TRUE``. From 6910a52c2f3e0960fe4b4b0e974f1b2ef36c2df0 Mon Sep 17 00:00:00 2001 From: andrew-platt Date: Thu, 15 Aug 2024 15:41:52 -0600 Subject: [PATCH 10/11] Update r-test pointer for nacelle drag --- reg_tests/r-test | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reg_tests/r-test b/reg_tests/r-test index c7359bf3b9..f408f637fd 160000 --- a/reg_tests/r-test +++ b/reg_tests/r-test @@ -1 +1 @@ -Subproject commit c7359bf3b955c20cf1366bd3daadc2b6ac5ab3e6 +Subproject commit f408f637fdfb26ca53669e057e5726c8398a97bc From 200a8ef5446f27dfb5996a7f90bb6f282c251104 Mon Sep 17 00:00:00 2001 From: andrew-platt Date: Thu, 15 Aug 2024 16:16:49 -0600 Subject: [PATCH 11/11] update cpp-driver case ad input file --- reg_tests/r-test | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reg_tests/r-test b/reg_tests/r-test index f408f637fd..464683353c 160000 --- a/reg_tests/r-test +++ b/reg_tests/r-test @@ -1 +1 @@ -Subproject commit f408f637fdfb26ca53669e057e5726c8398a97bc +Subproject commit 464683353cbb323f28104cb113824297ef4e2331